@1money/react-ui 1.15.3 → 1.17.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/AGENTS.md +393 -0
- package/es/components/CheckboxGroup/CheckboxGroup.d.ts +3 -3
- package/es/components/CheckboxGroup/CheckboxGroup.js +94 -91
- package/es/components/CheckboxGroup/interface.d.ts +21 -15
- package/es/components/CheckboxGroup/style/CheckboxGroup.scss +0 -7
- package/es/components/Flex/Flex.d.ts +5 -0
- package/es/components/Flex/Flex.js +50 -0
- package/es/components/Flex/constants.d.ts +41 -0
- package/es/components/Flex/constants.js +45 -0
- package/es/components/Flex/index.d.ts +5 -0
- package/es/components/Flex/index.js +6 -0
- package/es/components/Flex/interface.d.ts +13 -0
- package/es/components/Flex/interface.js +2 -0
- package/es/components/Flex/style/Flex.css +1 -0
- package/es/components/Flex/style/Flex.scss +70 -0
- package/es/components/Flex/style/css.js +2 -0
- package/es/components/Flex/style/index.d.ts +1 -0
- package/es/components/Flex/style/index.js +2 -0
- package/es/components/Form/Form.d.ts +29 -0
- package/es/components/Form/Form.js +188 -0
- package/es/components/Form/FormItem.d.ts +4 -0
- package/es/components/Form/FormItem.js +165 -0
- package/es/components/Form/FormItemContent.d.ts +18 -0
- package/es/components/Form/FormItemContent.js +146 -0
- package/es/components/Form/constants.d.ts +46 -0
- package/es/components/Form/constants.js +65 -0
- package/es/components/Form/helper.d.ts +120 -0
- package/es/components/Form/helper.js +284 -0
- package/es/components/Form/index.d.ts +20 -0
- package/es/components/Form/index.js +21 -0
- package/es/components/Form/interface.d.ts +238 -0
- package/es/components/Form/interface.js +2 -0
- package/es/components/Form/style/Form.css +1 -0
- package/es/components/Form/style/Form.scss +167 -0
- package/es/components/Form/style/css.js +2 -0
- package/es/components/Form/style/index.d.ts +1 -0
- package/es/components/Form/style/index.js +2 -0
- package/es/components/Form/useFormItemContext.d.ts +32 -0
- package/es/components/Form/useFormItemContext.js +55 -0
- package/es/components/Form/useFormItemWatch.d.ts +51 -0
- package/es/components/Form/useFormItemWatch.js +69 -0
- package/es/components/Form/useValidationTrigger.d.ts +40 -0
- package/es/components/Form/useValidationTrigger.js +74 -0
- package/es/components/Grid/Col.d.ts +5 -0
- package/es/components/Grid/Col.js +97 -0
- package/es/components/Grid/Grid.d.ts +12 -0
- package/es/components/Grid/Grid.js +12 -0
- package/es/components/Grid/Row.d.ts +5 -0
- package/es/components/Grid/Row.js +48 -0
- package/es/components/Grid/constants.d.ts +55 -0
- package/es/components/Grid/constants.js +66 -0
- package/es/components/Grid/helper.d.ts +10 -0
- package/es/components/Grid/helper.js +44 -0
- package/es/components/Grid/index.d.ts +7 -0
- package/es/components/Grid/index.js +8 -0
- package/es/components/Grid/interface.d.ts +38 -0
- package/es/components/Grid/interface.js +2 -0
- package/es/components/Grid/style/Grid.css +1 -0
- package/es/components/Grid/style/Grid.scss +196 -0
- package/es/components/Grid/style/css.js +2 -0
- package/es/components/Grid/style/index.d.ts +1 -0
- package/es/components/Grid/style/index.js +2 -0
- package/es/components/Input/Input.js +72 -74
- package/es/components/Input/interface.d.ts +9 -9
- package/es/components/InputAmount/InputAmount.js +228 -276
- package/es/components/InputAmount/helper.d.ts +46 -0
- package/es/components/InputAmount/helper.js +115 -0
- package/es/components/InputAmount/style/normal.css +1 -1
- package/es/components/InputAmount/style/normal.scss +2 -2
- package/es/components/InputAmount/style/primary.css +1 -1
- package/es/components/InputAmount/style/primary.scss +2 -2
- package/es/components/Message/style/Message.css +1 -1
- package/es/components/Message/style/Message.scss +3 -3
- package/es/components/ProForm/ProForm.d.ts +33 -0
- package/es/components/ProForm/ProForm.js +208 -0
- package/es/components/ProForm/ProFormDependency.d.ts +12 -0
- package/es/components/ProForm/ProFormDependency.js +61 -0
- package/es/components/ProForm/ProFormList.d.ts +19 -0
- package/es/components/ProForm/ProFormList.js +348 -0
- package/es/components/ProForm/Submitter.d.ts +21 -0
- package/es/components/ProForm/Submitter.js +76 -0
- package/es/components/ProForm/constants.d.ts +34 -0
- package/es/components/ProForm/constants.js +40 -0
- package/es/components/ProForm/fields/ProFormCheckbox.d.ts +6 -0
- package/es/components/ProForm/fields/ProFormCheckbox.js +11 -0
- package/es/components/ProForm/fields/ProFormCheckboxGroup.d.ts +6 -0
- package/es/components/ProForm/fields/ProFormCheckboxGroup.js +46 -0
- package/es/components/ProForm/fields/ProFormDigit.d.ts +6 -0
- package/es/components/ProForm/fields/ProFormDigit.js +15 -0
- package/es/components/ProForm/fields/ProFormMoney.d.ts +6 -0
- package/es/components/ProForm/fields/ProFormMoney.js +10 -0
- package/es/components/ProForm/fields/ProFormMultiSelect.d.ts +6 -0
- package/es/components/ProForm/fields/ProFormMultiSelect.js +27 -0
- package/es/components/ProForm/fields/ProFormPassword.d.ts +6 -0
- package/es/components/ProForm/fields/ProFormPassword.js +16 -0
- package/es/components/ProForm/fields/ProFormRadio.d.ts +6 -0
- package/es/components/ProForm/fields/ProFormRadio.js +13 -0
- package/es/components/ProForm/fields/ProFormSelect.d.ts +6 -0
- package/es/components/ProForm/fields/ProFormSelect.js +13 -0
- package/es/components/ProForm/fields/ProFormSwitch.d.ts +6 -0
- package/es/components/ProForm/fields/ProFormSwitch.js +11 -0
- package/es/components/ProForm/fields/ProFormText.d.ts +6 -0
- package/es/components/ProForm/fields/ProFormText.js +15 -0
- package/es/components/ProForm/fields/ProFormTextArea.d.ts +6 -0
- package/es/components/ProForm/fields/ProFormTextArea.js +16 -0
- package/es/components/ProForm/fields/createProFormField.d.ts +43 -0
- package/es/components/ProForm/fields/createProFormField.js +200 -0
- package/es/components/ProForm/fields/index.d.ts +12 -0
- package/es/components/ProForm/fields/index.js +13 -0
- package/es/components/ProForm/index.d.ts +7 -0
- package/es/components/ProForm/index.js +7 -0
- package/es/components/ProForm/interface.d.ts +306 -0
- package/es/components/ProForm/interface.js +2 -0
- package/es/components/ProForm/layouts/DrawerForm.d.ts +16 -0
- package/es/components/ProForm/layouts/DrawerForm.js +79 -0
- package/es/components/ProForm/layouts/ModalForm.d.ts +16 -0
- package/es/components/ProForm/layouts/ModalForm.js +89 -0
- package/es/components/ProForm/layouts/QueryFilter.d.ts +21 -0
- package/es/components/ProForm/layouts/QueryFilter.js +132 -0
- package/es/components/ProForm/layouts/StepsForm.d.ts +13 -0
- package/es/components/ProForm/layouts/StepsForm.js +295 -0
- package/es/components/ProForm/layouts/index.d.ts +4 -0
- package/es/components/ProForm/layouts/index.js +5 -0
- package/es/components/ProForm/layouts/useOverlayForm.d.ts +53 -0
- package/es/components/ProForm/layouts/useOverlayForm.js +143 -0
- package/es/components/ProForm/style/ProForm.module.css +1 -0
- package/es/components/ProForm/style/ProForm.module.scss +59 -0
- package/es/components/ProForm/style/css.js +3 -0
- package/es/components/ProForm/style/index.d.ts +1 -0
- package/es/components/ProForm/style/index.js +3 -0
- package/es/components/ProForm/utils.d.ts +72 -0
- package/es/components/ProForm/utils.js +206 -0
- package/es/components/RadioGroup/RadioGroup.js +46 -23
- package/es/components/RadioGroup/interface.d.ts +3 -1
- package/es/components/Select/Select.d.ts +1 -1
- package/es/components/Select/Select.js +113 -106
- package/es/components/Select/constants.d.ts +18 -0
- package/es/components/Select/constants.js +19 -0
- package/es/components/Sidebar/Sidebar.js +21 -23
- package/es/components/Sidebar/SidebarLogo.d.ts +7 -0
- package/es/components/Sidebar/SidebarLogo.js +33 -0
- package/es/components/Sidebar/SimplySidebar.d.ts +2 -2
- package/es/components/Sidebar/SimplySidebar.js +18 -22
- package/es/components/Sidebar/Stepper.js +14 -14
- package/es/components/Sidebar/constants.d.ts +16 -0
- package/es/components/Sidebar/constants.js +17 -0
- package/es/components/Sidebar/style/Sidebar.css +1 -1
- package/es/components/Sidebar/style/Sidebar.scss +1 -1
- package/es/components/Sidebar/style/SimplySidebar.css +1 -1
- package/es/components/Sidebar/style/SimplySidebar.scss +1 -1
- package/es/components/Sidebar/style/Stepper.css +1 -1
- package/es/components/Sidebar/style/Stepper.scss +11 -1
- package/es/components/Space/Space.d.ts +5 -0
- package/es/components/Space/Space.js +71 -0
- package/es/components/Space/constants.d.ts +33 -0
- package/es/components/Space/constants.js +37 -0
- package/es/components/Space/index.d.ts +5 -0
- package/es/components/Space/index.js +6 -0
- package/es/components/Space/interface.d.ts +12 -0
- package/es/components/Space/interface.js +2 -0
- package/es/components/Space/style/Space.css +1 -0
- package/es/components/Space/style/Space.scss +40 -0
- package/es/components/Space/style/css.js +2 -0
- package/es/components/Space/style/index.d.ts +1 -0
- package/es/components/Space/style/index.js +2 -0
- package/es/components/Switch/Switch.js +28 -25
- package/es/components/Switch/interface.d.ts +9 -4
- package/es/components/useControlledState/index.d.ts +14 -0
- package/es/components/useControlledState/index.js +32 -0
- package/es/components/useEventCallback/index.d.ts +11 -0
- package/es/components/useEventCallback/index.js +17 -0
- package/es/components/useLayoutEffect/index.d.ts +11 -0
- package/es/components/useLayoutEffect/index.js +17 -0
- package/es/components/useLayoutState/index.d.ts +13 -0
- package/es/components/useLayoutState/index.js +71 -0
- package/es/components/useMemoizedFn/index.d.ts +12 -0
- package/es/components/useMemoizedFn/index.js +27 -0
- package/es/components/usePrevious/index.d.ts +11 -0
- package/es/components/usePrevious/index.js +19 -0
- package/es/components/useSafeState/index.d.ts +12 -0
- package/es/components/useSafeState/index.js +24 -0
- package/es/components/useSyncState/index.d.ts +14 -0
- package/es/components/useSyncState/index.js +37 -0
- package/es/components/useUpdateEffect/index.d.ts +9 -0
- package/es/components/useUpdateEffect/index.js +19 -0
- package/es/index.css +1 -1
- package/es/index.d.ts +32 -2
- package/es/index.js +30 -1
- package/jest.setup.d.ts +1 -0
- package/jest.setup.ts +1 -0
- package/lib/components/CheckboxGroup/CheckboxGroup.d.ts +3 -3
- package/lib/components/CheckboxGroup/CheckboxGroup.js +92 -89
- package/lib/components/CheckboxGroup/interface.d.ts +21 -15
- package/lib/components/CheckboxGroup/style/CheckboxGroup.scss +0 -7
- package/lib/components/Flex/Flex.d.ts +5 -0
- package/lib/components/Flex/Flex.js +60 -0
- package/lib/components/Flex/constants.d.ts +41 -0
- package/lib/components/Flex/constants.js +51 -0
- package/lib/components/Flex/index.d.ts +5 -0
- package/lib/components/Flex/index.js +60 -0
- package/lib/components/Flex/interface.d.ts +13 -0
- package/lib/components/Flex/interface.js +6 -0
- package/lib/components/Flex/style/Flex.css +1 -0
- package/lib/components/Flex/style/Flex.scss +70 -0
- package/lib/components/Flex/style/css.js +4 -0
- package/lib/components/Flex/style/index.d.ts +1 -0
- package/lib/components/Flex/style/index.js +4 -0
- package/lib/components/Form/Form.d.ts +29 -0
- package/lib/components/Form/Form.js +199 -0
- package/lib/components/Form/FormItem.d.ts +4 -0
- package/lib/components/Form/FormItem.js +176 -0
- package/lib/components/Form/FormItemContent.d.ts +18 -0
- package/lib/components/Form/FormItemContent.js +156 -0
- package/lib/components/Form/constants.d.ts +46 -0
- package/lib/components/Form/constants.js +71 -0
- package/lib/components/Form/helper.d.ts +120 -0
- package/lib/components/Form/helper.js +290 -0
- package/lib/components/Form/index.d.ts +20 -0
- package/lib/components/Form/index.js +45 -0
- package/lib/components/Form/interface.d.ts +238 -0
- package/lib/components/Form/interface.js +6 -0
- package/lib/components/Form/style/Form.css +1 -0
- package/lib/components/Form/style/Form.scss +167 -0
- package/lib/components/Form/style/css.js +4 -0
- package/lib/components/Form/style/index.d.ts +1 -0
- package/lib/components/Form/style/index.js +4 -0
- package/lib/components/Form/useFormItemContext.d.ts +32 -0
- package/lib/components/Form/useFormItemContext.js +62 -0
- package/lib/components/Form/useFormItemWatch.d.ts +51 -0
- package/lib/components/Form/useFormItemWatch.js +76 -0
- package/lib/components/Form/useValidationTrigger.d.ts +40 -0
- package/lib/components/Form/useValidationTrigger.js +81 -0
- package/lib/components/Grid/Col.d.ts +5 -0
- package/lib/components/Grid/Col.js +107 -0
- package/lib/components/Grid/Grid.d.ts +12 -0
- package/lib/components/Grid/Grid.js +18 -0
- package/lib/components/Grid/Row.d.ts +5 -0
- package/lib/components/Grid/Row.js +58 -0
- package/lib/components/Grid/constants.d.ts +55 -0
- package/lib/components/Grid/constants.js +72 -0
- package/lib/components/Grid/helper.d.ts +10 -0
- package/lib/components/Grid/helper.js +51 -0
- package/lib/components/Grid/index.d.ts +7 -0
- package/lib/components/Grid/index.js +62 -0
- package/lib/components/Grid/interface.d.ts +38 -0
- package/lib/components/Grid/interface.js +6 -0
- package/lib/components/Grid/style/Grid.css +1 -0
- package/lib/components/Grid/style/Grid.scss +196 -0
- package/lib/components/Grid/style/css.js +4 -0
- package/lib/components/Grid/style/index.d.ts +1 -0
- package/lib/components/Grid/style/index.js +4 -0
- package/lib/components/Input/Input.js +71 -73
- package/lib/components/Input/interface.d.ts +9 -9
- package/lib/components/InputAmount/InputAmount.js +230 -278
- package/lib/components/InputAmount/helper.d.ts +46 -0
- package/lib/components/InputAmount/helper.js +122 -0
- package/lib/components/InputAmount/style/normal.css +1 -1
- package/lib/components/InputAmount/style/normal.scss +2 -2
- package/lib/components/InputAmount/style/primary.css +1 -1
- package/lib/components/InputAmount/style/primary.scss +2 -2
- package/lib/components/Message/style/Message.css +1 -1
- package/lib/components/Message/style/Message.scss +3 -3
- package/lib/components/ProForm/ProForm.d.ts +33 -0
- package/lib/components/ProForm/ProForm.js +216 -0
- package/lib/components/ProForm/ProFormDependency.d.ts +12 -0
- package/lib/components/ProForm/ProFormDependency.js +67 -0
- package/lib/components/ProForm/ProFormList.d.ts +19 -0
- package/lib/components/ProForm/ProFormList.js +355 -0
- package/lib/components/ProForm/Submitter.d.ts +21 -0
- package/lib/components/ProForm/Submitter.js +83 -0
- package/lib/components/ProForm/constants.d.ts +34 -0
- package/lib/components/ProForm/constants.js +46 -0
- package/lib/components/ProForm/fields/ProFormCheckbox.d.ts +6 -0
- package/lib/components/ProForm/fields/ProFormCheckbox.js +18 -0
- package/lib/components/ProForm/fields/ProFormCheckboxGroup.d.ts +6 -0
- package/lib/components/ProForm/fields/ProFormCheckboxGroup.js +53 -0
- package/lib/components/ProForm/fields/ProFormDigit.d.ts +6 -0
- package/lib/components/ProForm/fields/ProFormDigit.js +22 -0
- package/lib/components/ProForm/fields/ProFormMoney.d.ts +6 -0
- package/lib/components/ProForm/fields/ProFormMoney.js +17 -0
- package/lib/components/ProForm/fields/ProFormMultiSelect.d.ts +6 -0
- package/lib/components/ProForm/fields/ProFormMultiSelect.js +34 -0
- package/lib/components/ProForm/fields/ProFormPassword.d.ts +6 -0
- package/lib/components/ProForm/fields/ProFormPassword.js +23 -0
- package/lib/components/ProForm/fields/ProFormRadio.d.ts +6 -0
- package/lib/components/ProForm/fields/ProFormRadio.js +20 -0
- package/lib/components/ProForm/fields/ProFormSelect.d.ts +6 -0
- package/lib/components/ProForm/fields/ProFormSelect.js +20 -0
- package/lib/components/ProForm/fields/ProFormSwitch.d.ts +6 -0
- package/lib/components/ProForm/fields/ProFormSwitch.js +18 -0
- package/lib/components/ProForm/fields/ProFormText.d.ts +6 -0
- package/lib/components/ProForm/fields/ProFormText.js +22 -0
- package/lib/components/ProForm/fields/ProFormTextArea.d.ts +6 -0
- package/lib/components/ProForm/fields/ProFormTextArea.js +23 -0
- package/lib/components/ProForm/fields/createProFormField.d.ts +43 -0
- package/lib/components/ProForm/fields/createProFormField.js +208 -0
- package/lib/components/ProForm/fields/index.d.ts +12 -0
- package/lib/components/ProForm/fields/index.js +90 -0
- package/lib/components/ProForm/index.d.ts +7 -0
- package/lib/components/ProForm/index.js +73 -0
- package/lib/components/ProForm/interface.d.ts +306 -0
- package/lib/components/ProForm/interface.js +6 -0
- package/lib/components/ProForm/layouts/DrawerForm.d.ts +16 -0
- package/lib/components/ProForm/layouts/DrawerForm.js +86 -0
- package/lib/components/ProForm/layouts/ModalForm.d.ts +16 -0
- package/lib/components/ProForm/layouts/ModalForm.js +96 -0
- package/lib/components/ProForm/layouts/QueryFilter.d.ts +21 -0
- package/lib/components/ProForm/layouts/QueryFilter.js +139 -0
- package/lib/components/ProForm/layouts/StepsForm.d.ts +13 -0
- package/lib/components/ProForm/layouts/StepsForm.js +302 -0
- package/lib/components/ProForm/layouts/index.d.ts +4 -0
- package/lib/components/ProForm/layouts/index.js +40 -0
- package/lib/components/ProForm/layouts/useOverlayForm.d.ts +53 -0
- package/lib/components/ProForm/layouts/useOverlayForm.js +150 -0
- package/lib/components/ProForm/style/ProForm.module.css +1 -0
- package/lib/components/ProForm/style/ProForm.module.scss +59 -0
- package/lib/components/ProForm/style/css.js +4 -0
- package/lib/components/ProForm/style/index.d.ts +1 -0
- package/lib/components/ProForm/style/index.js +4 -0
- package/lib/components/ProForm/utils.d.ts +72 -0
- package/lib/components/ProForm/utils.js +213 -0
- package/lib/components/RadioGroup/RadioGroup.js +45 -22
- package/lib/components/RadioGroup/interface.d.ts +3 -1
- package/lib/components/Select/Select.d.ts +1 -1
- package/lib/components/Select/Select.js +114 -107
- package/lib/components/Select/constants.d.ts +18 -0
- package/lib/components/Select/constants.js +25 -0
- package/lib/components/Sidebar/Sidebar.js +21 -23
- package/lib/components/Sidebar/SidebarLogo.d.ts +7 -0
- package/lib/components/Sidebar/SidebarLogo.js +39 -0
- package/lib/components/Sidebar/SimplySidebar.d.ts +2 -2
- package/lib/components/Sidebar/SimplySidebar.js +17 -21
- package/lib/components/Sidebar/Stepper.js +14 -14
- package/lib/components/Sidebar/constants.d.ts +16 -0
- package/lib/components/Sidebar/constants.js +23 -0
- package/lib/components/Sidebar/style/Sidebar.css +1 -1
- package/lib/components/Sidebar/style/Sidebar.scss +1 -1
- package/lib/components/Sidebar/style/SimplySidebar.css +1 -1
- package/lib/components/Sidebar/style/SimplySidebar.scss +1 -1
- package/lib/components/Sidebar/style/Stepper.css +1 -1
- package/lib/components/Sidebar/style/Stepper.scss +11 -1
- package/lib/components/Space/Space.d.ts +5 -0
- package/lib/components/Space/Space.js +81 -0
- package/lib/components/Space/constants.d.ts +33 -0
- package/lib/components/Space/constants.js +43 -0
- package/lib/components/Space/index.d.ts +5 -0
- package/lib/components/Space/index.js +53 -0
- package/lib/components/Space/interface.d.ts +12 -0
- package/lib/components/Space/interface.js +6 -0
- package/lib/components/Space/style/Space.css +1 -0
- package/lib/components/Space/style/Space.scss +40 -0
- package/lib/components/Space/style/css.js +4 -0
- package/lib/components/Space/style/index.d.ts +1 -0
- package/lib/components/Space/style/index.js +4 -0
- package/lib/components/Switch/Switch.js +27 -24
- package/lib/components/Switch/interface.d.ts +9 -4
- package/lib/components/useControlledState/index.d.ts +14 -0
- package/lib/components/useControlledState/index.js +39 -0
- package/lib/components/useEventCallback/index.d.ts +11 -0
- package/lib/components/useEventCallback/index.js +24 -0
- package/lib/components/useLayoutEffect/index.d.ts +11 -0
- package/lib/components/useLayoutEffect/index.js +23 -0
- package/lib/components/useLayoutState/index.d.ts +13 -0
- package/lib/components/useLayoutState/index.js +79 -0
- package/lib/components/useMemoizedFn/index.d.ts +12 -0
- package/lib/components/useMemoizedFn/index.js +33 -0
- package/lib/components/usePrevious/index.d.ts +11 -0
- package/lib/components/usePrevious/index.js +25 -0
- package/lib/components/useSafeState/index.d.ts +12 -0
- package/lib/components/useSafeState/index.js +31 -0
- package/lib/components/useSyncState/index.d.ts +14 -0
- package/lib/components/useSyncState/index.js +44 -0
- package/lib/components/useUpdateEffect/index.d.ts +9 -0
- package/lib/components/useUpdateEffect/index.js +25 -0
- package/lib/index.css +1 -1
- package/lib/index.d.ts +32 -2
- package/lib/index.js +251 -1
- package/package.json +31 -1
|
@@ -10,26 +10,32 @@ interface CheckboxGroupBaseProps {
|
|
|
10
10
|
labelCls?: string;
|
|
11
11
|
size?: 'sm' | 'md' | 'lg';
|
|
12
12
|
}
|
|
13
|
+
interface CheckboxGroupNormalItem {
|
|
14
|
+
key: string;
|
|
15
|
+
label?: ReactNode;
|
|
16
|
+
defaultChecked?: boolean;
|
|
17
|
+
onChange?: (checked: boolean) => any;
|
|
18
|
+
}
|
|
19
|
+
interface CheckboxGroupTriStateItem {
|
|
20
|
+
key: string;
|
|
21
|
+
label?: ReactNode;
|
|
22
|
+
defaultValue?: boolean | null;
|
|
23
|
+
onChange?: (state: boolean | null) => any;
|
|
24
|
+
}
|
|
25
|
+
type NormalItem = CheckboxGroupNormalItem & Omit<PrimeCheckboxProps, 'key' | 'className' | 'checked' | 'value' | 'inputId' | 'onChange'>;
|
|
26
|
+
type TriStateItem = CheckboxGroupTriStateItem & Omit<TriStateCheckboxProps, 'key' | 'className' | 'checked' | 'value' | 'inputId' | 'onChange' | 'defaultValue'>;
|
|
27
|
+
export type CheckboxGroupItem = NormalItem | TriStateItem;
|
|
13
28
|
interface CheckboxGroupNormalProps extends CheckboxGroupBaseProps {
|
|
14
29
|
tristate?: false;
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
label?: ReactNode;
|
|
19
|
-
checked?: boolean;
|
|
20
|
-
onChange?: (checked: boolean) => any;
|
|
21
|
-
} & Omit<PrimeCheckboxProps, 'key' | 'className' | 'checked' | 'value' | 'inputId' | 'onChange'>)[];
|
|
30
|
+
value?: string[];
|
|
31
|
+
onChange?: (checkedList: string[]) => void;
|
|
32
|
+
items: NormalItem[];
|
|
22
33
|
}
|
|
23
34
|
interface CheckboxGroupTriStateProps extends CheckboxGroupBaseProps {
|
|
24
35
|
tristate: true;
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
label?: ReactNode;
|
|
29
|
-
checked?: boolean;
|
|
30
|
-
defaultValue?: boolean | null;
|
|
31
|
-
onChange?: (state: boolean | null) => any;
|
|
32
|
-
} & Omit<TriStateCheckboxProps, 'key' | 'className' | 'checked' | 'value' | 'inputId' | 'onChange' | 'defaultValue'>)[];
|
|
36
|
+
value?: Record<string, boolean | null>;
|
|
37
|
+
onChange?: (itemsState: Record<string, boolean | null>) => void;
|
|
38
|
+
items: TriStateItem[];
|
|
33
39
|
}
|
|
34
40
|
export type CheckboxGroupProps = CheckboxGroupNormalProps | CheckboxGroupTriStateProps;
|
|
35
41
|
export {};
|
|
@@ -75,13 +75,6 @@ $component: 'checkboxgroup';
|
|
|
75
75
|
border: 2px solid $color-primary;
|
|
76
76
|
box-shadow: none;
|
|
77
77
|
}
|
|
78
|
-
|
|
79
|
-
// &:has(.p-checkbox-input:checked) {
|
|
80
|
-
// .p-checkbox-box {
|
|
81
|
-
// // background-color: $color-primary-active;
|
|
82
|
-
// // border-color: $color-primary-active;
|
|
83
|
-
// }
|
|
84
|
-
// }
|
|
85
78
|
}
|
|
86
79
|
|
|
87
80
|
// 选中状态
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { FC, PropsWithChildren } from 'react';
|
|
2
|
+
import type { FlexProps } from './interface';
|
|
3
|
+
export declare const Flex: FC<PropsWithChildren<FlexProps>>;
|
|
4
|
+
declare const _default: import("react").NamedExoticComponent<PropsWithChildren<FlexProps>>;
|
|
5
|
+
export default _default;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
2
|
+
var __rest = this && this.__rest || function (s, e) {
|
|
3
|
+
var t = {};
|
|
4
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
|
|
5
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
6
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
|
|
7
|
+
}
|
|
8
|
+
return t;
|
|
9
|
+
};
|
|
10
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
11
|
+
import { memo } from 'react';
|
|
12
|
+
import classnames, { joinCls } from '../../utils/classnames';
|
|
13
|
+
import { FLEX_CLASS, FLEX_CSS_VARS, FLEX_GAP_DEFAULT, FLEX_GAP_MAP, FLEX_PREFIX, FLEX_WRAP } from './constants';
|
|
14
|
+
var normalizeGap = function normalizeGap(gap) {
|
|
15
|
+
var _a;
|
|
16
|
+
if (gap === undefined || gap === null) return FLEX_GAP_DEFAULT;
|
|
17
|
+
if (typeof gap === 'number') return gap;
|
|
18
|
+
return (_a = FLEX_GAP_MAP[gap]) !== null && _a !== void 0 ? _a : FLEX_GAP_DEFAULT;
|
|
19
|
+
};
|
|
20
|
+
var normalizeWrap = function normalizeWrap(wrap) {
|
|
21
|
+
if (wrap === true) return FLEX_WRAP.wrap;
|
|
22
|
+
if (wrap === false) return FLEX_WRAP.nowrap;
|
|
23
|
+
return wrap;
|
|
24
|
+
};
|
|
25
|
+
export var Flex = function Flex(props) {
|
|
26
|
+
var children = props.children,
|
|
27
|
+
vertical = props.vertical,
|
|
28
|
+
wrap = props.wrap,
|
|
29
|
+
align = props.align,
|
|
30
|
+
justify = props.justify,
|
|
31
|
+
gap = props.gap,
|
|
32
|
+
className = props.className,
|
|
33
|
+
style = props.style,
|
|
34
|
+
_props$prefixCls = props.prefixCls,
|
|
35
|
+
prefixCls = _props$prefixCls === void 0 ? FLEX_PREFIX : _props$prefixCls,
|
|
36
|
+
rest = __rest(props, ["children", "vertical", "wrap", "align", "justify", "gap", "className", "style", "prefixCls"]);
|
|
37
|
+
var classes = classnames(prefixCls);
|
|
38
|
+
var gapValue = normalizeGap(gap);
|
|
39
|
+
var wrapValue = normalizeWrap(wrap);
|
|
40
|
+
var wrapClass = wrapValue ? classes("".concat(FLEX_CLASS.wrap, "-").concat(wrapValue)) : undefined;
|
|
41
|
+
var mergedStyle = Object.assign(Object.assign({}, style), _defineProperty({}, FLEX_CSS_VARS.gap, "".concat(gapValue, "px")));
|
|
42
|
+
var classNameValue = classes(void 0, joinCls(vertical && classes(FLEX_CLASS.vertical), wrapClass, align && classes("".concat(FLEX_CLASS.align, "-").concat(align)), justify && classes("".concat(FLEX_CLASS.justify, "-").concat(justify)), className));
|
|
43
|
+
return _jsx("div", Object.assign({}, rest, {
|
|
44
|
+
style: mergedStyle,
|
|
45
|
+
className: classNameValue,
|
|
46
|
+
children: children
|
|
47
|
+
}));
|
|
48
|
+
};
|
|
49
|
+
export default /*#__PURE__*/memo(Flex);
|
|
50
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvRmxleC9GbGV4LmpzIiwiY29tcG9uZW50cy9zcmMvY29tcG9uZW50cy9GbGV4L0ZsZXgudHN4Il0sIm5hbWVzIjpbIl9fcmVzdCIsInMiLCJlIiwidCIsInAiLCJPYmplY3QiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpbmRleE9mIiwiZ2V0T3duUHJvcGVydHlTeW1ib2xzIiwiaSIsImxlbmd0aCIsInByb3BlcnR5SXNFbnVtZXJhYmxlIiwianN4IiwiX2pzeCIsIm1lbW8iLCJjbGFzc25hbWVzIiwiam9pbkNscyIsIkZMRVhfQ0xBU1MiLCJGTEVYX0NTU19WQVJTIiwiRkxFWF9HQVBfREVGQVVMVCIsIkZMRVhfR0FQX01BUCIsIkZMRVhfUFJFRklYIiwiRkxFWF9XUkFQIiwibm9ybWFsaXplR2FwIiwiZ2FwIiwiX2EiLCJ1bmRlZmluZWQiLCJub3JtYWxpemVXcmFwIiwid3JhcCIsIm5vd3JhcCIsIkZsZXgiLCJwcm9wcyIsImNoaWxkcmVuIiwidmVydGljYWwiLCJhbGlnbiIsImp1c3RpZnkiLCJjbGFzc05hbWUiLCJzdHlsZSIsIl9wcm9wcyRwcmVmaXhDbHMiLCJwcmVmaXhDbHMiLCJyZXN0IiwiY2xhc3NlcyIsImdhcFZhbHVlIiwid3JhcFZhbHVlIiwid3JhcENsYXNzIiwiY29uY2F0IiwibWVyZ2VkU3R5bGUiLCJhc3NpZ24iLCJfZGVmaW5lUHJvcGVydHkiLCJjbGFzc05hbWVWYWx1ZSJdLCJtYXBwaW5ncyI6IjtBQUFBLElBQUlBLE1BQU0sR0FBSSxJQUFJLElBQUksSUFBSSxDQUFDQSxNQUFNLElBQUssVUFBVUMsQ0FBQyxFQUFFQyxDQUFDLEVBQUU7RUFDbEQsSUFBSUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztFQUNWLEtBQUssSUFBSUMsQ0FBQyxJQUFJSCxDQUFDLEVBQUUsSUFBSUksTUFBTSxDQUFDQyxTQUFTLENBQUNDLGNBQWMsQ0FBQ0MsSUFBSSxDQUFDUCxDQUFDLEVBQUVHLENBQUMsQ0FB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QVEsQ0FBQSxDQUFBLENBQ0w7QUFFVixDQUFDO0FBRUQsNEJBQWVsQixJQUFJLENBQUNnQixJQUFJLENBQUMiLCJmaWxlIjoiY29tcG9uZW50cy9GbGV4L0ZsZXguanMiLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgX19yZXN0ID0gKHRoaXMgJiYgdGhpcy5fX3Jlc3QpIHx8IGZ1bmN0aW9uIChzLCBlKSB7XG4gICAgdmFyIHQgPSB7fTtcbiAgICBmb3IgKHZhciBwIGluIHMpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocywgcCkgJiYgZS5pbmRleE9mKHApIDwgMClcbiAgICAgICAgdFtwXSA9IHNbcF07XG4gICAgaWYgKHMgIT0gbnVsbCAmJiB0eXBlb2YgT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyA9PT0gXCJmdW5jdGlvblwiKVxuICAgICAgICBmb3IgKHZhciBpID0gMCwgcCA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMocyk7IGkgPCBwLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBpZiAoZS5pbmRleE9mKHBbaV0pIDwgMCAmJiBPYmplY3QucHJvdG90eXBlLnByb3BlcnR5SXNFbnVtZXJhYmxlLmNhbGwocywgcFtpXSkpXG4gICAgICAgICAgICAgICAgdFtwW2ldXSA9IHNbcFtpXV07XG4gICAgICAgIH1cbiAgICByZXR1cm4gdDtcbn07XG5pbXBvcnQgeyBqc3ggYXMgX2pzeCB9IGZyb20gXCJyZWFjdC9qc3gtcnVudGltZVwiO1xuaW1wb3J0IHsgbWVtbyB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBjbGFzc25hbWVzLCB7IGpvaW5DbHMgfSBmcm9tICcuLi8uLi91dGlscy9jbGFzc25hbWVzJztcbmltcG9ydCB7IEZMRVhfQ0xBU1MsIEZMRVhfQ1NTX1ZBUlMsIEZMRVhfR0FQX0RFRkFVTFQsIEZMRVhfR0FQX01BUCwgRkxFWF9QUkVGSVgsIEZMRVhfV1JBUCB9IGZyb20gJy4vY29uc3RhbnRzJztcbmNvbnN0IG5vcm1hbGl6ZUdhcCA9IChnYXApID0+IHtcbiAgICB2YXIgX2E7XG4gICAgaWYgKGdhcCA9PT0gdW5kZWZpbmVkIHx8IGdhcCA9PT0gbnVsbClcbiAgICAgICAgcmV0dXJuIEZMRVhfR0FQX0RFRkFVTFQ7XG4gICAgaWYgKHR5cGVvZiBnYXAgPT09ICdudW1iZXInKVxuICAgICAgICByZXR1cm4gZ2FwO1xuICAgIHJldHVybiAoX2EgPSBGTEVYX0dBUF9NQVBbZ2FwXSkgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogRkxFWF9HQVBfREVGQVVMVDtcbn07XG5jb25zdCBub3JtYWxpemVXcmFwID0gKHdyYXApID0+IHtcbiAgICBpZiAod3JhcCA9PT0gdHJ1ZSlcbiAgICAgICAgcmV0dXJuIEZMRVhfV1JBUC53cmFwO1xuICAgIGlmICh3cmFwID09PSBmYWxzZSlcbiAgICAgICAgcmV0dXJuIEZMRVhfV1JBUC5ub3dyYXA7XG4gICAgcmV0dXJuIHdyYXA7XG59O1xuZXhwb3J0IGNvbnN0IEZsZXggPSBwcm9wcyA9PiB7XG4gICAgY29uc3QgeyBjaGlsZHJlbiwgdmVydGljYWwsIHdyYXAsIGFsaWduLCBqdXN0aWZ5LCBnYXAsIGNsYXNzTmFtZSwgc3R5bGUsIHByZWZpeENscyA9IEZMRVhfUFJFRklYIH0gPSBwcm9wcywgcmVzdCA9IF9fcmVzdChwcm9wcywgW1wiY2hpbGRyZW5cIiwgXCJ2ZXJ0aWNhbFwiLCBcIndyYXBcIiwgXCJhbGlnblwiLCBcImp1c3RpZnlcIiwgXCJnYXBcIiwgXCJjbGFzc05hbWVcIiwgXCJzdHlsZVwiLCBcInByZWZpeENsc1wiXSk7XG4gICAgY29uc3QgY2xhc3NlcyA9IGNsYXNzbmFtZXMocHJlZml4Q2xzKTtcbiAgICBjb25zdCBnYXBWYWx1ZSA9IG5vcm1hbGl6ZUdhcChnYXApO1xuICAgIGNvbnN0IHdyYXBWYWx1ZSA9IG5vcm1hbGl6ZVdyYXAod3JhcCk7XG4gICAgY29uc3Qgd3JhcENsYXNzID0gd3JhcFZhbHVlID8gY2xhc3NlcyhgJHtGTEVYX0NMQVNTLndyYXB9LSR7d3JhcFZhbHVlfWApIDogdW5kZWZpbmVkO1xuICAgIGNvbnN0IG1lcmdlZFN0eWxlID0gT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LCBzdHlsZSksIHsgW0ZMRVhfQ1NTX1ZBUlMuZ2FwXTogYCR7Z2FwVmFsdWV9cHhgIH0pO1xuICAgIGNvbnN0IGNsYXNzTmFtZVZhbHVlID0gY2xhc3Nlcyh2b2lkIDAsIGpvaW5DbHModmVydGljYWwgJiYgY2xhc3NlcyhGTEVYX0NMQVNTLnZlcnRpY2FsKSwgd3JhcENsYXNzLCBhbGlnbiAmJiBjbGFzc2VzKGAke0ZMRVhfQ0xBU1MuYWxpZ259LSR7YWxpZ259YCksIGp1c3RpZnkgJiYgY2xhc3NlcyhgJHtGTEVYX0NMQVNTLmp1c3RpZnl9LSR7anVzdGlmeX1gKSwgY2xhc3NOYW1lKSk7XG4gICAgcmV0dXJuIChfanN4KFwiZGl2XCIsIE9iamVjdC5hc3NpZ24oe30sIHJlc3QsIHsgc3R5bGU6IG1lcmdlZFN0eWxlLCBjbGFzc05hbWU6IGNsYXNzTmFtZVZhbHVlLCBjaGlsZHJlbjogY2hpbGRyZW4gfSkpKTtcbn07XG5leHBvcnQgZGVmYXVsdCBtZW1vKEZsZXgpOyIsbnVsbF0sInNvdXJjZVJvb3QiOiIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMifQ==
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import type { FlexGap } from './interface';
|
|
2
|
+
export declare const FLEX_ALIGN: {
|
|
3
|
+
readonly start: "start";
|
|
4
|
+
readonly end: "end";
|
|
5
|
+
readonly center: "center";
|
|
6
|
+
readonly baseline: "baseline";
|
|
7
|
+
readonly stretch: "stretch";
|
|
8
|
+
};
|
|
9
|
+
export declare const FLEX_JUSTIFY: {
|
|
10
|
+
readonly start: "start";
|
|
11
|
+
readonly end: "end";
|
|
12
|
+
readonly center: "center";
|
|
13
|
+
readonly spaceAround: "space-around";
|
|
14
|
+
readonly spaceBetween: "space-between";
|
|
15
|
+
readonly spaceEvenly: "space-evenly";
|
|
16
|
+
};
|
|
17
|
+
export declare const FLEX_WRAP: {
|
|
18
|
+
readonly nowrap: "nowrap";
|
|
19
|
+
readonly wrap: "wrap";
|
|
20
|
+
readonly wrapReverse: "wrap-reverse";
|
|
21
|
+
};
|
|
22
|
+
export declare const FLEX_GAP: {
|
|
23
|
+
readonly small: "small";
|
|
24
|
+
readonly middle: "middle";
|
|
25
|
+
readonly large: "large";
|
|
26
|
+
};
|
|
27
|
+
export declare const FLEX_PREFIX = "flex";
|
|
28
|
+
export declare const FLEX_GAP_DEFAULT = 0;
|
|
29
|
+
export declare const FLEX_GAP_SMALL = 8;
|
|
30
|
+
export declare const FLEX_GAP_MIDDLE = 16;
|
|
31
|
+
export declare const FLEX_GAP_LARGE = 24;
|
|
32
|
+
export declare const FLEX_CSS_VARS: {
|
|
33
|
+
readonly gap: "--om-flex-gap";
|
|
34
|
+
};
|
|
35
|
+
export declare const FLEX_CLASS: {
|
|
36
|
+
readonly vertical: "vertical";
|
|
37
|
+
readonly wrap: "wrap";
|
|
38
|
+
readonly align: "align";
|
|
39
|
+
readonly justify: "justify";
|
|
40
|
+
};
|
|
41
|
+
export declare const FLEX_GAP_MAP: Record<Exclude<FlexGap, number>, number>;
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
export var FLEX_ALIGN = {
|
|
2
|
+
start: 'start',
|
|
3
|
+
end: 'end',
|
|
4
|
+
center: 'center',
|
|
5
|
+
baseline: 'baseline',
|
|
6
|
+
stretch: 'stretch'
|
|
7
|
+
};
|
|
8
|
+
export var FLEX_JUSTIFY = {
|
|
9
|
+
start: 'start',
|
|
10
|
+
end: 'end',
|
|
11
|
+
center: 'center',
|
|
12
|
+
spaceAround: 'space-around',
|
|
13
|
+
spaceBetween: 'space-between',
|
|
14
|
+
spaceEvenly: 'space-evenly'
|
|
15
|
+
};
|
|
16
|
+
export var FLEX_WRAP = {
|
|
17
|
+
nowrap: 'nowrap',
|
|
18
|
+
wrap: 'wrap',
|
|
19
|
+
wrapReverse: 'wrap-reverse'
|
|
20
|
+
};
|
|
21
|
+
export var FLEX_GAP = {
|
|
22
|
+
small: 'small',
|
|
23
|
+
middle: 'middle',
|
|
24
|
+
large: 'large'
|
|
25
|
+
};
|
|
26
|
+
export var FLEX_PREFIX = 'flex';
|
|
27
|
+
export var FLEX_GAP_DEFAULT = 0;
|
|
28
|
+
export var FLEX_GAP_SMALL = 8;
|
|
29
|
+
export var FLEX_GAP_MIDDLE = 16;
|
|
30
|
+
export var FLEX_GAP_LARGE = 24;
|
|
31
|
+
export var FLEX_CSS_VARS = {
|
|
32
|
+
gap: '--om-flex-gap'
|
|
33
|
+
};
|
|
34
|
+
export var FLEX_CLASS = {
|
|
35
|
+
vertical: 'vertical',
|
|
36
|
+
wrap: 'wrap',
|
|
37
|
+
align: 'align',
|
|
38
|
+
justify: 'justify'
|
|
39
|
+
};
|
|
40
|
+
export var FLEX_GAP_MAP = {
|
|
41
|
+
small: FLEX_GAP_SMALL,
|
|
42
|
+
middle: FLEX_GAP_MIDDLE,
|
|
43
|
+
large: FLEX_GAP_LARGE
|
|
44
|
+
};
|
|
45
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvRmxleC9jb25zdGFudHMudHMiLCJjb21wb25lbnRzL0ZsZXgvY29uc3RhbnRzLmpzIl0sIm5hbWVzIjpbIkZMRVhfQUxJR04iLCJzdGFydCIsImVuZCIsImNlbnRlciIsImJhc2VsaW5lIiwic3RyZXRjaCIsIkZMRVhfSlVTVElGWSIsInNwYWNlQXJvdW5kIiwic3BhY2VCZXR3ZWVuIiwic3BhY2VFdmVubHkiLCJGTEVYX1dSQVAiLCJub3dyYXAiLCJ3cmFwIiwid3JhcFJldmVyc2UiLCJGTEVYX0dBUCIsInNtYWxsIiwibWlkZGxlIiwibGFyZ2UiLCJGTEVYX1BSRUZJWCIsIkZMRVhfR0FQX0RFRkFVTFQiLCJGTEVYX0dBUF9TTUFMTCIsIkZMRVhfR0FQX01JRERMRSIsIkZMRVhfR0FQX0xBUkdFIiwiRkxFWF9DU1NfVkFSUyIsImdhcCIsIkZMRVhfQ0xBU1MiLCJ2ZXJ0aWNhbCIsImFsaWduIiwianVzdGlmeSIsIkZMRVhfR0FQX01BUCJdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxJQUFNQSxVQUFVLEdBQUc7RUFDeEJDLEtBQUssRUFBRSxPQUFPO0VBQ2RDLEdBQUcsRUFBRSxLQUFLO0VBQ1ZDLE1BQU0sRUFBRSxRQUFRO0VBQ2hCQyxRQUFRLEVBQUUsVUFBVTtFQUNwQkMsT0FBTyxFQUFFO0FDRFgsQ0RFVTtBQUVWLE9BQU8sSUFBTUMsWUFBWSxHQUFHO0VBQzFCTCxLQUFLLEVBQUUsT0FBTztFQUNkQyxHQUFHLEVBQUUsS0FBSztFQUNWQyxNQUFNLEVBQUUsUUFBUTtFQUNoQkksV0FBVyxFQUFFLGNBQWM7RUFDM0JDLFlBQVksRUFBRSxlQUFlO0VBQzdCQyxXQUFXLEVBQUU7QUNGZixDREdVO0FBRVYsT0FBTyxJQUFNQyxTQUFTLEdBQUc7RUFDdkJDLE1BQU0sRUFBRSxRQUFRO0VBQ2hCQyxJQUFJLEVBQUUsTUFBTTtFQUNaQyxXQUFXLEVBQUU7QUNIZixDRElVO0FBRVYsT0FBTyxJQUFNQyxRQUFRLEdBQUc7RUFDdEJDLEtBQUssRUFBRSxPQUFPO0VBQ2RDLE1BQU0sRUFBRSxRQUFRO0VBQ2hCQyxLQUFLLEVBQUU7QUNKVCxDREtVO0FBRVYsT0FBTyxJQUFNQyxXQUFXLEdBQUcsTUFBTTtBQUNqQyxPQUFPLElBQU1DLGdCQUFnQixHQUFHLENBQUM7QUFDakMsT0FBTyxJQUFNQyxjQUFjLEdBQUcsQ0FBQztBQUMvQixPQUFPLElBQU1DLGVBQWUsR0FBRyxFQUFFO0FBQ2pDLE9BQU8sSUFBTUMsY0FBYyxHQUFHLEVBQUU7QUFFaEMsT0FBTyxJQUFNQyxhQUFhLEdBQUc7RUFDM0JDLEdBQUcsRUFBRTtBQ05QLENET1U7QUFFVixPQUFPLElBQU1DLFVBQVUsR0FBRztFQUN4QkMsUUFBUSxFQUFFLFVBQVU7RUFDcEJkLElBQUksRUFBRSxNQUFNO0VBQ1plLEtBQUssRUFBRSxPQUFPO0VBQ2RDLE9BQU8sRUFBRTtBQ1BYLENEUVU7QUFFVixPQUFPLElBQU1DLFlBQVksR0FBNkM7RUFDcEVkLEtBQUssRUFBRUssY0FBYztFQUNyQkosTUFBTSxFQUFFSyxlQUFlO0VBQ3ZCSixLQUFLLEVBQUVLO0FDUlQsQ0RTQyIsImZpbGUiOiJjb21wb25lbnRzL0ZsZXgvY29uc3RhbnRzLmpzIiwic291cmNlc0NvbnRlbnQiOltudWxsLCJleHBvcnQgY29uc3QgRkxFWF9BTElHTiA9IHtcbiAgICBzdGFydDogJ3N0YXJ0JyxcbiAgICBlbmQ6ICdlbmQnLFxuICAgIGNlbnRlcjogJ2NlbnRlcicsXG4gICAgYmFzZWxpbmU6ICdiYXNlbGluZScsXG4gICAgc3RyZXRjaDogJ3N0cmV0Y2gnXG59O1xuZXhwb3J0IGNvbnN0IEZMRVhfSlVTVElGWSA9IHtcbiAgICBzdGFydDogJ3N0YXJ0JyxcbiAgICBlbmQ6ICdlbmQnLFxuICAgIGNlbnRlcjogJ2NlbnRlcicsXG4gICAgc3BhY2VBcm91bmQ6ICdzcGFjZS1hcm91bmQnLFxuICAgIHNwYWNlQmV0d2VlbjogJ3NwYWNlLWJldHdlZW4nLFxuICAgIHNwYWNlRXZlbmx5OiAnc3BhY2UtZXZlbmx5J1xufTtcbmV4cG9ydCBjb25zdCBGTEVYX1dSQVAgPSB7XG4gICAgbm93cmFwOiAnbm93cmFwJyxcbiAgICB3cmFwOiAnd3JhcCcsXG4gICAgd3JhcFJldmVyc2U6ICd3cmFwLXJldmVyc2UnXG59O1xuZXhwb3J0IGNvbnN0IEZMRVhfR0FQID0ge1xuICAgIHNtYWxsOiAnc21hbGwnLFxuICAgIG1pZGRsZTogJ21pZGRsZScsXG4gICAgbGFyZ2U6ICdsYXJnZSdcbn07XG5leHBvcnQgY29uc3QgRkxFWF9QUkVGSVggPSAnZmxleCc7XG5leHBvcnQgY29uc3QgRkxFWF9HQVBfREVGQVVMVCA9IDA7XG5leHBvcnQgY29uc3QgRkxFWF9HQVBfU01BTEwgPSA4O1xuZXhwb3J0IGNvbnN0IEZMRVhfR0FQX01JRERMRSA9IDE2O1xuZXhwb3J0IGNvbnN0IEZMRVhfR0FQX0xBUkdFID0gMjQ7XG5leHBvcnQgY29uc3QgRkxFWF9DU1NfVkFSUyA9IHtcbiAgICBnYXA6ICctLW9tLWZsZXgtZ2FwJ1xufTtcbmV4cG9ydCBjb25zdCBGTEVYX0NMQVNTID0ge1xuICAgIHZlcnRpY2FsOiAndmVydGljYWwnLFxuICAgIHdyYXA6ICd3cmFwJyxcbiAgICBhbGlnbjogJ2FsaWduJyxcbiAgICBqdXN0aWZ5OiAnanVzdGlmeSdcbn07XG5leHBvcnQgY29uc3QgRkxFWF9HQVBfTUFQID0ge1xuICAgIHNtYWxsOiBGTEVYX0dBUF9TTUFMTCxcbiAgICBtaWRkbGU6IEZMRVhfR0FQX01JRERMRSxcbiAgICBsYXJnZTogRkxFWF9HQVBfTEFSR0Vcbn07Il0sInNvdXJjZVJvb3QiOiIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMifQ==
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import Flex from './Flex';
|
|
2
|
+
export { Flex };
|
|
3
|
+
export default Flex;
|
|
4
|
+
export * from './interface';
|
|
5
|
+
export { FLEX_ALIGN, FLEX_GAP, FLEX_JUSTIFY, FLEX_WRAP } from './constants';
|
|
6
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvRmxleC9pbmRleC50cyJdLCJuYW1lcyI6WyJGbGV4IiwiRkxFWF9BTElHTiIsIkZMRVhfR0FQIiwiRkxFWF9KVVNUSUZZIiwiRkxFWF9XUkFQIl0sIm1hcHBpbmdzIjoiQUFBQSxPQUFPQSxJQUFJLE1BQU0sUUFBUTtBQUV6QixTQUFTQSxJQUFJO0FBQ2IsZUFBZUEsSUFBSTtBQUNuQixjQUFjLGFBQWE7QUFDM0IsU0FBU0MsVUFBVSxFQUFFQyxRQUFRLEVBQUVDLFlBQVksRUFBRUMsU0FBUyxRQUFRLGFBQWEiLCJmaWxlIjoiY29tcG9uZW50cy9GbGV4L2luZGV4LmpzIiwic291cmNlc0NvbnRlbnQiOltudWxsXSwic291cmNlUm9vdCI6Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYyJ9
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { HTMLAttributes } from 'react';
|
|
2
|
+
export type FlexAlign = 'start' | 'end' | 'center' | 'baseline' | 'stretch';
|
|
3
|
+
export type FlexJustify = 'start' | 'end' | 'center' | 'space-around' | 'space-between' | 'space-evenly';
|
|
4
|
+
export type FlexWrap = 'nowrap' | 'wrap' | 'wrap-reverse';
|
|
5
|
+
export type FlexGap = 'small' | 'middle' | 'large' | number;
|
|
6
|
+
export interface FlexProps extends HTMLAttributes<HTMLDivElement> {
|
|
7
|
+
vertical?: boolean;
|
|
8
|
+
wrap?: boolean | FlexWrap;
|
|
9
|
+
align?: FlexAlign;
|
|
10
|
+
justify?: FlexJustify;
|
|
11
|
+
gap?: FlexGap;
|
|
12
|
+
prefixCls?: string;
|
|
13
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50cy9GbGV4L2ludGVyZmFjZS5qcyIsIm5hbWVzIjpbXSwic291cmNlUm9vdCI6Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYyIsInNvdXJjZXMiOlsiY29tcG9uZW50cy9GbGV4L2ludGVyZmFjZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQge307Il0sIm1hcHBpbmdzIjoiQUFBQSIsImlnbm9yZUxpc3QiOltdfQ==
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.om-react-ui-flex{display:flex;gap:var(--om-flex-gap,0)}.om-react-ui-flex-vertical{flex-direction:column}.om-react-ui-flex-wrap-wrap{flex-wrap:wrap}.om-react-ui-flex-wrap-nowrap{flex-wrap:nowrap}.om-react-ui-flex-wrap-wrap-reverse{flex-wrap:wrap-reverse}.om-react-ui-flex-justify-start{justify-content:flex-start}.om-react-ui-flex-justify-end{justify-content:flex-end}.om-react-ui-flex-justify-center{justify-content:center}.om-react-ui-flex-justify-space-between{justify-content:space-between}.om-react-ui-flex-justify-space-around{justify-content:space-around}.om-react-ui-flex-justify-space-evenly{justify-content:space-evenly}.om-react-ui-flex-align-start{align-items:flex-start}.om-react-ui-flex-align-end{align-items:flex-end}.om-react-ui-flex-align-center{align-items:center}.om-react-ui-flex-align-baseline{align-items:baseline}.om-react-ui-flex-align-stretch{align-items:stretch}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
@use '../../../variable.scss' as *;
|
|
2
|
+
|
|
3
|
+
$component: 'flex';
|
|
4
|
+
$flex-gap-fallback: 0px;
|
|
5
|
+
$flex-var-gap: '--om-flex-gap';
|
|
6
|
+
|
|
7
|
+
.#{$prefix}-#{$component} {
|
|
8
|
+
display: flex;
|
|
9
|
+
gap: var(#{$flex-var-gap}, #{$flex-gap-fallback});
|
|
10
|
+
|
|
11
|
+
&-vertical {
|
|
12
|
+
flex-direction: column;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
&-wrap-wrap {
|
|
16
|
+
flex-wrap: wrap;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
&-wrap-nowrap {
|
|
20
|
+
flex-wrap: nowrap;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
&-wrap-wrap-reverse {
|
|
24
|
+
flex-wrap: wrap-reverse;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
&-justify-start {
|
|
28
|
+
justify-content: flex-start;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
&-justify-end {
|
|
32
|
+
justify-content: flex-end;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
&-justify-center {
|
|
36
|
+
justify-content: center;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
&-justify-space-between {
|
|
40
|
+
justify-content: space-between;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
&-justify-space-around {
|
|
44
|
+
justify-content: space-around;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
&-justify-space-evenly {
|
|
48
|
+
justify-content: space-evenly;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
&-align-start {
|
|
52
|
+
align-items: flex-start;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
&-align-end {
|
|
56
|
+
align-items: flex-end;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
&-align-center {
|
|
60
|
+
align-items: center;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
&-align-baseline {
|
|
64
|
+
align-items: baseline;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
&-align-stretch {
|
|
68
|
+
align-items: stretch;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import './Flex.css';
|
|
2
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvRmxleC9zcmMvY29tcG9uZW50cy9GbGV4L3N0eWxlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sYUFBYSIsImZpbGUiOiJjb21wb25lbnRzL0ZsZXgvc3R5bGUvY3NzLmpzIiwic291cmNlc0NvbnRlbnQiOltudWxsXSwic291cmNlUm9vdCI6Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYyJ9
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import './Flex.scss';
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import './Flex.scss';
|
|
2
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvRmxleC9zcmMvY29tcG9uZW50cy9GbGV4L3N0eWxlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sYUFBYSIsImZpbGUiOiJjb21wb25lbnRzL0ZsZXgvc3R5bGUvaW5kZXguanMiLCJzb3VyY2VzQ29udGVudCI6W251bGxdLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjIn0=
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { FieldValues } from 'react-hook-form';
|
|
3
|
+
import type { FormContextValue, FormProps } from './interface';
|
|
4
|
+
/** React context that distributes form layout and state to descendant `<FormItem>` components. */
|
|
5
|
+
export declare const FormContext: React.Context<FormContextValue | null>;
|
|
6
|
+
/**
|
|
7
|
+
* Form component that wraps `react-hook-form` with layout, context distribution,
|
|
8
|
+
* value-change subscriptions, and scroll-to-error behavior.
|
|
9
|
+
*
|
|
10
|
+
* Renders a `<FormProvider>` and native `<form>` element. All `<FormItem>` children
|
|
11
|
+
* receive form methods and layout configuration via {@link FormContext}.
|
|
12
|
+
*
|
|
13
|
+
* Supports both controlled mode (pass an external `form` instance) and uncontrolled
|
|
14
|
+
* mode (internal `useForm` is created automatically).
|
|
15
|
+
*
|
|
16
|
+
* @template TFieldValues - The shape of the form values.
|
|
17
|
+
* @param props - {@link FormProps}
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* ```tsx
|
|
21
|
+
* <Form defaultValues={{ name: '' }} onFinish={(values) => save(values)}>
|
|
22
|
+
* <FormItem name="name" label="Name" rules={{ required: true }}>
|
|
23
|
+
* <Input />
|
|
24
|
+
* </FormItem>
|
|
25
|
+
* </Form>
|
|
26
|
+
* ```
|
|
27
|
+
*/
|
|
28
|
+
export declare function Form<TFieldValues extends FieldValues = FieldValues>(props: FormProps<TFieldValues>): import("react/jsx-runtime").JSX.Element;
|
|
29
|
+
export default Form;
|
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
import _regeneratorRuntime from "@babel/runtime/regenerator";
|
|
2
|
+
var __awaiter = this && this.__awaiter || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) {
|
|
4
|
+
return value instanceof P ? value : new P(function (resolve) {
|
|
5
|
+
resolve(value);
|
|
6
|
+
});
|
|
7
|
+
}
|
|
8
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
9
|
+
function fulfilled(value) {
|
|
10
|
+
try {
|
|
11
|
+
step(generator.next(value));
|
|
12
|
+
} catch (e) {
|
|
13
|
+
reject(e);
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
function rejected(value) {
|
|
17
|
+
try {
|
|
18
|
+
step(generator["throw"](value));
|
|
19
|
+
} catch (e) {
|
|
20
|
+
reject(e);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
function step(result) {
|
|
24
|
+
result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);
|
|
25
|
+
}
|
|
26
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
27
|
+
});
|
|
28
|
+
};
|
|
29
|
+
var __rest = this && this.__rest || function (s, e) {
|
|
30
|
+
var t = {};
|
|
31
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
|
|
32
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
33
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
|
|
34
|
+
}
|
|
35
|
+
return t;
|
|
36
|
+
};
|
|
37
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
38
|
+
import React, { createContext, useEffect, useMemo } from 'react';
|
|
39
|
+
import { FormProvider, useForm } from 'react-hook-form';
|
|
40
|
+
import { default as classnames, joinCls } from '../../utils/classnames';
|
|
41
|
+
import useLatest from '../useLatest';
|
|
42
|
+
import useMemoizedFn from '../useMemoizedFn';
|
|
43
|
+
import { DEFAULT_LABEL_ALIGN, DEFAULT_LABEL_COL, DEFAULT_LAYOUT, DEFAULT_SIZE, DEFAULT_WRAPPER_COL } from './constants';
|
|
44
|
+
import { getFirstErrorPath, scrollToField } from './helper';
|
|
45
|
+
/** React context that distributes form layout and state to descendant `<FormItem>` components. */
|
|
46
|
+
export var FormContext = /*#__PURE__*/createContext(null);
|
|
47
|
+
/**
|
|
48
|
+
* Form component that wraps `react-hook-form` with layout, context distribution,
|
|
49
|
+
* value-change subscriptions, and scroll-to-error behavior.
|
|
50
|
+
*
|
|
51
|
+
* Renders a `<FormProvider>` and native `<form>` element. All `<FormItem>` children
|
|
52
|
+
* receive form methods and layout configuration via {@link FormContext}.
|
|
53
|
+
*
|
|
54
|
+
* Supports both controlled mode (pass an external `form` instance) and uncontrolled
|
|
55
|
+
* mode (internal `useForm` is created automatically).
|
|
56
|
+
*
|
|
57
|
+
* @template TFieldValues - The shape of the form values.
|
|
58
|
+
* @param props - {@link FormProps}
|
|
59
|
+
*
|
|
60
|
+
* @example
|
|
61
|
+
* ```tsx
|
|
62
|
+
* <Form defaultValues={{ name: '' }} onFinish={(values) => save(values)}>
|
|
63
|
+
* <FormItem name="name" label="Name" rules={{ required: true }}>
|
|
64
|
+
* <Input />
|
|
65
|
+
* </FormItem>
|
|
66
|
+
* </Form>
|
|
67
|
+
* ```
|
|
68
|
+
*/
|
|
69
|
+
export function Form(props) {
|
|
70
|
+
var _this = this;
|
|
71
|
+
// Form is a thin wrapper over react-hook-form with layout + UX helpers.
|
|
72
|
+
var form = props.form,
|
|
73
|
+
defaultValues = props.defaultValues,
|
|
74
|
+
onFinish = props.onFinish,
|
|
75
|
+
onFinishFailed = props.onFinishFailed,
|
|
76
|
+
onValuesChange = props.onValuesChange,
|
|
77
|
+
watchNames = props.watchNames,
|
|
78
|
+
scrollToFirstError = props.scrollToFirstError,
|
|
79
|
+
_props$layout = props.layout,
|
|
80
|
+
layout = _props$layout === void 0 ? DEFAULT_LAYOUT : _props$layout,
|
|
81
|
+
_props$labelAlign = props.labelAlign,
|
|
82
|
+
labelAlign = _props$labelAlign === void 0 ? DEFAULT_LABEL_ALIGN : _props$labelAlign,
|
|
83
|
+
_props$labelCol = props.labelCol,
|
|
84
|
+
labelCol = _props$labelCol === void 0 ? DEFAULT_LABEL_COL : _props$labelCol,
|
|
85
|
+
_props$wrapperCol = props.wrapperCol,
|
|
86
|
+
wrapperCol = _props$wrapperCol === void 0 ? DEFAULT_WRAPPER_COL : _props$wrapperCol,
|
|
87
|
+
_props$size = props.size,
|
|
88
|
+
size = _props$size === void 0 ? DEFAULT_SIZE : _props$size,
|
|
89
|
+
disabled = props.disabled,
|
|
90
|
+
_props$colon = props.colon,
|
|
91
|
+
colon = _props$colon === void 0 ? true : _props$colon,
|
|
92
|
+
_props$requiredMark = props.requiredMark,
|
|
93
|
+
requiredMark = _props$requiredMark === void 0 ? true : _props$requiredMark,
|
|
94
|
+
className = props.className,
|
|
95
|
+
style = props.style,
|
|
96
|
+
children = props.children,
|
|
97
|
+
useFormProps = __rest(props, ["form", "defaultValues", "onFinish", "onFinishFailed", "onValuesChange", "watchNames", "scrollToFirstError", "layout", "labelAlign", "labelCol", "wrapperCol", "size", "disabled", "colon", "requiredMark", "className", "style", "children"]);
|
|
98
|
+
// Always create an internal form to keep hook ordering stable.
|
|
99
|
+
// When an external `form` is passed via the `form` prop, this instance is
|
|
100
|
+
// unused but must remain so that React's hook call order is consistent
|
|
101
|
+
// across renders. We pass `shouldUnregister: true` to minimize overhead
|
|
102
|
+
// of the unused form instance.
|
|
103
|
+
var internalMethods = useForm(Object.assign({
|
|
104
|
+
defaultValues: defaultValues,
|
|
105
|
+
shouldUnregister: true
|
|
106
|
+
}, useFormProps));
|
|
107
|
+
// Use provided form methods when controlled; otherwise use internal form state.
|
|
108
|
+
var methods = form !== null && form !== void 0 ? form : internalMethods;
|
|
109
|
+
var valuesChangeRef = useLatest(onValuesChange);
|
|
110
|
+
var watchNamesRef = useLatest((watchNames === null || watchNames === void 0 ? void 0 : watchNames.length) ? new Set(watchNames) : null);
|
|
111
|
+
// Provide layout + disabled state + form methods to FormItem via context.
|
|
112
|
+
var ctx = useMemo(function () {
|
|
113
|
+
return {
|
|
114
|
+
layout: layout,
|
|
115
|
+
labelAlign: labelAlign,
|
|
116
|
+
labelCol: labelCol,
|
|
117
|
+
wrapperCol: wrapperCol,
|
|
118
|
+
size: size,
|
|
119
|
+
disabled: disabled,
|
|
120
|
+
colon: colon,
|
|
121
|
+
requiredMark: requiredMark,
|
|
122
|
+
methods: methods
|
|
123
|
+
};
|
|
124
|
+
}, [layout, labelAlign, labelCol, wrapperCol, size, disabled, colon, requiredMark, methods]);
|
|
125
|
+
// Subscribe to all value changes when handler provided.
|
|
126
|
+
useEffect(function () {
|
|
127
|
+
if (!onValuesChange) return;
|
|
128
|
+
var subscription = methods.watch(function (values, info) {
|
|
129
|
+
var _a;
|
|
130
|
+
var watchSet = watchNamesRef.current;
|
|
131
|
+
if (watchSet) {
|
|
132
|
+
var name = info.name;
|
|
133
|
+
if (!name || !watchSet.has(name)) return;
|
|
134
|
+
}
|
|
135
|
+
(_a = valuesChangeRef.current) === null || _a === void 0 ? void 0 : _a.call(valuesChangeRef, values, {
|
|
136
|
+
name: info.name,
|
|
137
|
+
type: info.type
|
|
138
|
+
});
|
|
139
|
+
});
|
|
140
|
+
return function () {
|
|
141
|
+
return subscription.unsubscribe();
|
|
142
|
+
};
|
|
143
|
+
// `valuesChangeRef` and `watchNamesRef` are stable refs accessed via `.current`
|
|
144
|
+
// so they do not need to be in the dependency array.
|
|
145
|
+
}, [methods, onValuesChange]);
|
|
146
|
+
// Submit success handler.
|
|
147
|
+
var handleFinish = useMemoizedFn(function (values) {
|
|
148
|
+
return __awaiter(_this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
|
|
149
|
+
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
150
|
+
while (1) switch (_context.prev = _context.next) {
|
|
151
|
+
case 0:
|
|
152
|
+
_context.next = 2;
|
|
153
|
+
return onFinish === null || onFinish === void 0 ? void 0 : onFinish(values);
|
|
154
|
+
case 2:
|
|
155
|
+
case "end":
|
|
156
|
+
return _context.stop();
|
|
157
|
+
}
|
|
158
|
+
}, _callee);
|
|
159
|
+
}));
|
|
160
|
+
});
|
|
161
|
+
// Submit failure handler with optional scroll-to-error.
|
|
162
|
+
var handleFinishFailed = useMemoizedFn(function (errors) {
|
|
163
|
+
var _a;
|
|
164
|
+
if (scrollToFirstError) {
|
|
165
|
+
var first = getFirstErrorPath(errors);
|
|
166
|
+
if (first) {
|
|
167
|
+
(_a = methods.setFocus) === null || _a === void 0 ? void 0 : _a.call(methods, first);
|
|
168
|
+
scrollToField(first, scrollToFirstError);
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
onFinishFailed === null || onFinishFailed === void 0 ? void 0 : onFinishFailed(errors);
|
|
172
|
+
});
|
|
173
|
+
var classes = classnames('form');
|
|
174
|
+
return _jsx(FormProvider, Object.assign({}, methods, {
|
|
175
|
+
children: _jsx(FormContext.Provider, {
|
|
176
|
+
value: ctx,
|
|
177
|
+
children: _jsx("form", {
|
|
178
|
+
className: classes('root', joinCls(className, classes("layout-".concat(layout)), classes("size-".concat(size)), labelAlign === 'left' && classes('label-left'))),
|
|
179
|
+
style: style,
|
|
180
|
+
onSubmit: methods.handleSubmit(handleFinish, handleFinishFailed),
|
|
181
|
+
noValidate: true,
|
|
182
|
+
children: children
|
|
183
|
+
})
|
|
184
|
+
})
|
|
185
|
+
}));
|
|
186
|
+
}
|
|
187
|
+
export default Form;
|
|
188
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvRm9ybS9Gb3JtLmpzIiwiY29tcG9uZW50cy9zcmMvY29tcG9uZW50cy9Gb3JtL0Zvcm0udHN4Il0sIm5hbWVzIjpbIl9fYXdhaXRlciIsInRoaXNBcmciLCJfYXJndW1lbnRzIiwiUCIsImdlbmVyYXRvciIsImFkb3B0IiwidmFsdWUiLCJyZXNvbHZlIiwiUHJvbWlzZSIsInJlamVjdCIsImZ1bGZpbGxlZCIsInN0ZXAiLCJuZXh0IiwiZSIsInJlamVjdGVkIiwicmVzdWx0IiwiZG9uZSIsInRoZW4iLCJhcHBseSIsIl9fcmVzdCIsInMiLCJ0IiwicCIsIk9iamVjdCIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImluZGV4T2YiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJpIiwibGVuZ3RoIiwicHJvcGVydHlJc0VudW1lcmFibGUiLCJqc3giLCJfanN4IiwiUmVhY3QiLCJjcmVhdGVDb250ZXh0IiwidXNlRWZmZWN0IiwidXNlTWVtbyIsIkZvcm1Qcm92aWRlciIsInVzZUZvcm0iLCJkZWZhdWx0IiwiY2xhc3NuYW1lcyIsImpvaW5DbHMiLCJ1c2VMYXRlc3QiLCJ1c2VNZW1vaXplZEZuIiwiREVGQVVMVF9MQUJFTF9BTElHTiIsIkRFRkFVTFRfTEFCRUxfQ09MIiwiREVGQVVMVF9MQVlPVVQiLCJERUZBVUxUX1NJWkUiLCJERUZBVUxUX1dSQVBQRVJfQ09MIiwiZ2V0Rmlyc3RFcnJvclBhdGgiLCJzY3JvbGxUb0ZpZWxkIiwiRm9ybUNvbnRleHQiLCJGb3JtIiwicHJvcHMiLCJfdGhpcyIsImZvcm0iLCJkZWZhdWx0VmFsdWVzIiwib25GaW5pc2giLCJvbkZpbmlzaEZhaWxlZCIsIm9uVmFsdWVzQ2hhbmdlIiwid2F0Y2hOYW1lcyIsInNjcm9sbFRvRmlyc3RFcnJvciIsIl9wcm9wcyRsYXlvdXQiLCJsYXlvdXQiLCJfcHJvcHMkbGFiZWxBbGlnbiIsImxhYmVsQWxpZ24iLCJfcHJvcHMkbGFiZWxDb2wiLCJsYWJlbENvbCIsIl9wcm9wcyR3cmFwcGVyQ29sIiwid3JhcHBlckNvbCIsIl9wcm9wcyRzaXplIiwic2l6ZSIsImRpc2FibGVkIiwiX3Byb3BzJGNvbG9uIiwiY29sb24iLCJfcHJvcHMkcmVxdWlyZWRNYXJrIiwicmVxdWlyZWRNYXJrIiwiY2xhc3NOYW1lIiwic3R5bGUiLCJjaGlsZHJlbiIsInVzZUZvcm1Qcm9wcyIsImludGVybmFsTWV0aG9kcyIsImFzc2lnbiIsInNob3VsZFVucmVnaXN0ZXIiLCJtZXRob2RzIiwidmFsdWVzQ2hhbmdlUmVmIiwid2F0Y2hOYW1lc1JlZiIsIlNldCIsImN0eCIsInN1YnNjcmlwdGlvbiIsIndhdGNoIiwidmFsdWVzIiwiaW5mbyIsIl9hIiwid2F0Y2hTZXQiLCJjdXJyZW50IiwibmFtZSIsImhhcyIsInR5cGUiLCJ1bnN1YnNjcmliZSIsImhhbmRsZUZpbmlzaCIsIl9yZWdlbmVyYXRvclJ1bnRpbWUiLCJtYXJrIiwiX2NhbGxlZSIsIndyYXAiLCJfY2FsbGVlJCIsIl9jb250ZXh0IiwicHJldiIsInN0b3AiLCJoYW5kbGVGaW5pc2hGYWlsZWQiLCJlcnJvcnMiLCJmaXJzdCIsInNldEZvY3VzIiwiY2xhc3NlcyIsIlByb3ZpZGVyIiwiY29uY2F0Iiwib25TdWJtaXQiLCJoYW5kbGVTdWJtaXQiLCJub1ZhbGlkYXRlIl0sIm1hcHBpbmdzIjoiO0FBQUEsSUFBSUEsU0FBUyxHQUFJLElBQUksSUFBSSxJQUFJLENBQUNBLFNBQVMsSUFBSyxVQUFVQyxPQUFPLEVBQUVDLFVBQVUsRUFBRUMsQ0FBQyxFQUFFQyxTQUFTLEVBQUU7RUFDckYsU0FBU0MsS0FBS0EsQ0FBQ0MsS0FBSyxFQUFFO0lBQUUsT0FBT0EsS0FBSyxZQUFZSCxDQUFDLEdBQUdHLEtBQUssR0FBRyxJQUFJSCxDQUFDLENBQUMsVUFBVUksT0FBTyxFQUFFO01BQUVBLE9BQU8sQ0FBQ0QsS0FBSyxDQUFDO0lBQUUsQ0FBQyxDQUFDO0VBQUU7RUFDM0csT0FBTyxLQUFLSCxDQUFDLEtBQUtBLENBQUMs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LEVBQUEsSUFBQTtRQUFBdkMsUUFBQSxFQUVUQTtNQUFRLENBQUE7SUFDSixDQUFBO0VBQ2MsQ0FBQSxDQUFBLENBQ1Y7QUFFbkI7QUFFQSxlQUFlM0IsSUFBSSIsImZpbGUiOiJjb21wb25lbnRzL0Zvcm0vRm9ybS5qcyIsInNvdXJjZXNDb250ZW50IjpbInZhciBfX2F3YWl0ZXIgPSAodGhpcyAmJiB0aGlzLl9fYXdhaXRlcikgfHwgZnVuY3Rpb24gKHRoaXNBcmcsIF9hcmd1bWVudHMsIFAsIGdlbmVyYXRvcikge1xuICAgIGZ1bmN0aW9uIGFkb3B0KHZhbHVlKSB7IHJldHVybiB2YWx1ZSBpbnN0YW5jZW9mIFAgPyB2YWx1ZSA6IG5ldyBQKGZ1bmN0aW9uIChyZXNvbHZlKSB7IHJlc29sdmUodmFsdWUpOyB9KTsgfVxuICAgIHJldHVybiBuZXcgKFAgfHwgKFAgPSBQcm9taXNlKSkoZnVuY3Rpb24gKHJlc29sdmUsIHJlamVjdCkge1xuICAgICAgICBmdW5jdGlvbiBmdWxmaWxsZWQodmFsdWUpIHsgdHJ5IHsgc3RlcChnZW5lcmF0b3IubmV4dCh2YWx1ZSkpOyB9IGNhdGNoIChlKSB7IHJlamVjdChlKTsgfSB9XG4gICAgICAgIGZ1bmN0aW9uIHJlamVjdGVkKHZhbHVlKSB7IHRyeSB7IHN0ZXAoZ2VuZXJhdG9yW1widGhyb3dcIl0odmFsdWUpKTsgfSBjYXRjaCAoZSkgeyByZWplY3QoZSk7IH0gfVxuICAgICAgICBmdW5jdGlvbiBzdGVwKHJlc3VsdCkgeyByZXN1bHQuZG9uZSA/IHJlc29sdmUocmVzdWx0LnZhbHVlKSA6IGFkb3B0KHJlc3VsdC52YWx1ZSkudGhlbihmdWxmaWxsZWQsIHJlamVjdGVkKTsgfVxuICAgICAgICBzdGVwKChnZW5lcmF0b3IgPSBnZW5lcmF0b3IuYXBwbHkodGhpc0FyZywgX2FyZ3VtZW50cyB8fCBbXSkpLm5leHQoKSk7XG4gICAgfSk7XG59O1xudmFyIF9fcmVzdCA9ICh0aGlzICYmIHRoaXMuX19yZXN0KSB8fCBmdW5jdGlvbiAocywgZSkge1xuICAgIHZhciB0ID0ge307XG4gICAgZm9yICh2YXIgcCBpbiBzKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHMsIHApICYmIGUuaW5kZXhPZihwKSA8IDApXG4gICAgICAgIHRbcF0gPSBzW3BdO1xuICAgIGlmIChzICE9IG51bGwgJiYgdHlwZW9mIE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMgPT09IFwiZnVuY3Rpb25cIilcbiAgICAgICAgZm9yICh2YXIgaSA9IDAsIHAgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKHMpOyBpIDwgcC5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgaWYgKGUuaW5kZXhPZihwW2ldKSA8IDAgJiYgT2JqZWN0LnByb3RvdHlwZS5wcm9wZXJ0eUlzRW51bWVyYWJsZS5jYWxsKHMsIHBbaV0pKVxuICAgICAgICAgICAgICAgIHRbcFtpXV0gPSBzW3BbaV1dO1xuICAgICAgICB9XG4gICAgcmV0dXJuIHQ7XG59O1xuaW1wb3J0IHsganN4IGFzIF9qc3ggfSBmcm9tIFwicmVhY3QvanN4LXJ1bnRpbWVcIjtcbmltcG9ydCBSZWFjdCwgeyBjcmVhdGVDb250ZXh0LCB1c2VFZmZlY3QsIHVzZU1lbW8gfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBGb3JtUHJvdmlkZXIsIHVzZUZvcm0gfSBmcm9tICdyZWFjdC1ob29rLWZvcm0nO1xuaW1wb3J0IHsgZGVmYXVsdCBhcyBjbGFzc25hbWVzLCBqb2luQ2xzIH0gZnJvbSAnLi4vLi4vdXRpbHMvY2xhc3NuYW1lcyc7XG5pbXBvcnQgdXNlTGF0ZXN0IGZyb20gJy4uL3VzZUxhdGVzdCc7XG5pbXBvcnQgdXNlTWVtb2l6ZWRGbiBmcm9tICcuLi91c2VNZW1vaXplZEZuJztcbmltcG9ydCB7IERFRkFVTFRfTEFCRUxfQUxJR04sIERFRkFVTFRfTEFCRUxfQ09MLCBERUZBVUxUX0xBWU9VVCwgREVGQVVMVF9TSVpFLCBERUZBVUxUX1dSQVBQRVJfQ09MLCB9IGZyb20gJy4vY29uc3RhbnRzJztcbmltcG9ydCB7IGdldEZpcnN0RXJyb3JQYXRoLCBzY3JvbGxUb0ZpZWxkIH0gZnJvbSAnLi9oZWxwZXInO1xuLyoqIFJlYWN0IGNvbnRleHQgdGhhdCBkaXN0cmlidXRlcyBmb3JtIGxheW91dCBhbmQgc3RhdGUgdG8gZGVzY2VuZGFudCBgPEZvcm1JdGVtPmAgY29tcG9uZW50cy4gKi9cbmV4cG9ydCBjb25zdCBGb3JtQ29udGV4dCA9IGNyZWF0ZUNvbnRleHQobnVsbCk7XG4vKipcbiAqIEZvcm0gY29tcG9uZW50IHRoYXQgd3JhcHMgYHJlYWN0LWhvb2stZm9ybWAgd2l0aCBsYXlvdXQsIGNvbnRleHQgZGlzdHJpYnV0aW9uLFxuICogdmFsdWUtY2hhbmdlIHN1YnNjcmlwdGlvbnMsIGFuZCBzY3JvbGwtdG8tZXJyb3IgYmVoYXZpb3IuXG4gKlxuICogUmVuZGVycyBhIGA8Rm9ybVByb3ZpZGVyPmAgYW5kIG5hdGl2ZSBgPGZvcm0+YCBlbGVtZW50LiBBbGwgYDxGb3JtSXRlbT5gIGNoaWxkcmVuXG4gKiByZWNlaXZlIGZvcm0gbWV0aG9kcyBhbmQgbGF5b3V0IGNvbmZpZ3VyYXRpb24gdmlhIHtAbGluayBGb3JtQ29udGV4dH0uXG4gKlxuICogU3VwcG9ydHMgYm90aCBjb250cm9sbGVkIG1vZGUgKHBhc3MgYW4gZXh0ZXJuYWwgYGZvcm1gIGluc3RhbmNlKSBhbmQgdW5jb250cm9sbGVkXG4gKiBtb2RlIChpbnRlcm5hbCBgdXNlRm9ybWAgaXMgY3JlYXRlZCBhdXRvbWF0aWNhbGx5KS5cbiAqXG4gKiBAdGVtcGxhdGUgVEZpZWxkVmFsdWVzIC0gVGhlIHNoYXBlIG9mIHRoZSBmb3JtIHZhbHVlcy5cbiAqIEBwYXJhbSBwcm9wcyAtIHtAbGluayBGb3JtUHJvcHN9XG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzeFxuICogPEZvcm0gZGVmYXVsdFZhbHVlcz17eyBuYW1lOiAnJyB9fSBvbkZpbmlzaD17KHZhbHVlcykgPT4gc2F2ZSh2YWx1ZXMpfT5cbiAqICAgPEZvcm1JdGVtIG5hbWU9XCJuYW1lXCIgbGFiZWw9XCJOYW1lXCIgcnVsZXM9e3sgcmVxdWlyZWQ6IHRydWUgfX0+XG4gKiAgICAgPElucHV0IC8+XG4gKiAgIDwvRm9ybUl0ZW0+XG4gKiA8L0Zvcm0+XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIEZvcm0ocHJvcHMpIHtcbiAgICAvLyBGb3JtIGlzIGEgdGhpbiB3cmFwcGVyIG92ZXIgcmVhY3QtaG9vay1mb3JtIHdpdGggbGF5b3V0ICsgVVggaGVscGVycy5cbiAgICBjb25zdCB7IGZvcm0sIGRlZmF1bHRWYWx1ZXMsIG9uRmluaXNoLCBvbkZpbmlzaEZhaWxlZCwgb25WYWx1ZXNDaGFuZ2UsIHdhdGNoTmFtZXMsIHNjcm9sbFRvRmlyc3RFcnJvciwgbGF5b3V0ID0gREVGQVVMVF9MQVlPVVQsIGxhYmVsQWxpZ24gPSBERUZBVUxUX0xBQkVMX0FMSUdOLCBsYWJlbENvbCA9IERFRkFVTFRfTEFCRUxfQ09MLCB3cmFwcGVyQ29sID0gREVGQVVMVF9XUkFQUEVSX0NPTCwgc2l6ZSA9IERFRkFVTFRfU0laRSwgZGlzYWJsZWQsIGNvbG9uID0gdHJ1ZSwgcmVxdWlyZWRNYXJrID0gdHJ1ZSwgY2xhc3NOYW1lLCBzdHlsZSwgY2hpbGRyZW4gfSA9IHByb3BzLCB1c2VGb3JtUHJvcHMgPSBfX3Jlc3QocHJvcHMsIFtcImZvcm1cIiwgXCJkZWZhdWx0VmFsdWVzXCIsIFwib25GaW5pc2hcIiwgXCJvbkZpbmlzaEZhaWxlZFwiLCBcIm9uVmFsdWVzQ2hhbmdlXCIsIFwid2F0Y2hOYW1lc1wiLCBcInNjcm9sbFRvRmlyc3RFcnJvclwiLCBcImxheW91dFwiLCBcImxhYmVsQWxpZ25cIiwgXCJsYWJlbENvbFwiLCBcIndyYXBwZXJDb2xcIiwgXCJzaXplXCIsIFwiZGlzYWJsZWRcIiwgXCJjb2xvblwiLCBcInJlcXVpcmVkTWFya1wiLCBcImNsYXNzTmFtZVwiLCBcInN0eWxlXCIsIFwiY2hpbGRyZW5cIl0pO1xuICAgIC8vIEFsd2F5cyBjcmVhdGUgYW4gaW50ZXJuYWwgZm9ybSB0byBrZWVwIGhvb2sgb3JkZXJpbmcgc3RhYmxlLlxuICAgIC8vIFdoZW4gYW4gZXh0ZXJuYWwgYGZvcm1gIGlzIHBhc3NlZCB2aWEgdGhlIGBmb3JtYCBwcm9wLCB0aGlzIGluc3RhbmNlIGlzXG4gICAgLy8gdW51c2VkIGJ1dCBtdXN0IHJlbWFpbiBzbyB0aGF0IFJlYWN0J3MgaG9vayBjYWxsIG9yZGVyIGlzIGNvbnNpc3RlbnRcbiAgICAvLyBhY3Jvc3MgcmVuZGVycy4gV2UgcGFzcyBgc2hvdWxkVW5yZWdpc3RlcjogdHJ1ZWAgdG8gbWluaW1pemUgb3ZlcmhlYWRcbiAgICAvLyBvZiB0aGUgdW51c2VkIGZvcm0gaW5zdGFuY2UuXG4gICAgY29uc3QgaW50ZXJuYWxNZXRob2RzID0gdXNlRm9ybShPYmplY3QuYXNzaWduKHsgZGVmYXVsdFZhbHVlcywgc2hvdWxkVW5yZWdpc3RlcjogdHJ1ZSB9LCB1c2VGb3JtUHJvcHMpKTtcbiAgICAvLyBVc2UgcHJvdmlkZWQgZm9ybSBtZXRob2RzIHdoZW4gY29udHJvbGxlZDsgb3RoZXJ3aXNlIHVzZSBpbnRlcm5hbCBmb3JtIHN0YXRlLlxuICAgIGNvbnN0IG1ldGhvZHMgPSBmb3JtICE9PSBudWxsICYmIGZvcm0gIT09IHZvaWQgMCA/IGZvcm0gOiBpbnRlcm5hbE1ldGhvZHM7XG4gICAgY29uc3QgdmFsdWVzQ2hhbmdlUmVmID0gdXNlTGF0ZXN0KG9uVmFsdWVzQ2hhbmdlKTtcbiAgICBjb25zdCB3YXRjaE5hbWVzUmVmID0gdXNlTGF0ZXN0KCh3YXRjaE5hbWVzID09PSBudWxsIHx8IHdhdGNoTmFtZXMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHdhdGNoTmFtZXMubGVuZ3RoKSA/IG5ldyBTZXQod2F0Y2hOYW1lcykgOiBudWxsKTtcbiAgICAvLyBQcm92aWRlIGxheW91dCArIGRpc2FibGVkIHN0YXRlICsgZm9ybSBtZXRob2RzIHRvIEZvcm1JdGVtIHZpYSBjb250ZXh0LlxuICAgIGNvbnN0IGN0eCA9IHVzZU1lbW8oKCkgPT4gKHtcbiAgICAgICAgbGF5b3V0LFxuICAgICAgICBsYWJlbEFsaWduLFxuICAgICAgICBsYWJlbENvbCxcbiAgICAgICAgd3JhcHBlckNvbCxcbiAgICAgICAgc2l6ZSxcbiAgICAgICAgZGlzYWJsZWQsXG4gICAgICAgIGNvbG9uLFxuICAgICAgICByZXF1aXJlZE1hcmssXG4gICAgICAgIG1ldGhvZHM6IG1ldGhvZHMsXG4gICAgfSksIFtsYXlvdXQsIGxhYmVsQWxpZ24sIGxhYmVsQ29sLCB3cmFwcGVyQ29sLCBzaXplLCBkaXNhYmxlZCwgY29sb24sIHJlcXVpcmVkTWFyaywgbWV0aG9kc10pO1xuICAgIC8vIFN1YnNjcmliZSB0byBhbGwgdmFsdWUgY2hhbmdlcyB3aGVuIGhhbmRsZXIgcHJvdmlkZWQuXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgaWYgKCFvblZhbHVlc0NoYW5nZSlcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgY29uc3Qgc3Vic2NyaXB0aW9uID0gbWV0aG9kcy53YXRjaCgodmFsdWVzLCBpbmZvKSA9PiB7XG4gICAgICAgICAgICB2YXIgX2E7XG4gICAgICAgICAgICBjb25zdCB3YXRjaFNldCA9IHdhdGNoTmFtZXNSZWYuY3VycmVudDtcbiAgICAgICAgICAgIGlmICh3YXRjaFNldCkge1xuICAgICAgICAgICAgICAgIGNvbnN0IG5hbWUgPSBpbmZvLm5hbWU7XG4gICAgICAgICAgICAgICAgaWYgKCFuYW1lIHx8ICF3YXRjaFNldC5oYXMobmFtZSkpXG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIChfYSA9IHZhbHVlc0NoYW5nZVJlZi5jdXJyZW50KSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuY2FsbCh2YWx1ZXNDaGFuZ2VSZWYsIHZhbHVlcywgeyBuYW1lOiBpbmZvLm5hbWUsIHR5cGU6IGluZm8udHlwZSB9KTtcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiAoKSA9PiBzdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgLy8gYHZhbHVlc0NoYW5nZVJlZmAgYW5kIGB3YXRjaE5hbWVzUmVmYCBhcmUgc3RhYmxlIHJlZnMgYWNjZXNzZWQgdmlhIGAuY3VycmVudGBcbiAgICAgICAgLy8gc28gdGhleSBkbyBub3QgbmVlZCB0byBiZSBpbiB0aGUgZGVwZW5kZW5jeSBhcnJheS5cbiAgICB9LCBbbWV0aG9kcywgb25WYWx1ZXNDaGFuZ2VdKTtcbiAgICAvLyBTdWJtaXQgc3VjY2VzcyBoYW5kbGVyLlxuICAgIGNvbnN0IGhhbmRsZUZpbmlzaCA9IHVzZU1lbW9pemVkRm4oKHZhbHVlcykgPT4gX19hd2FpdGVyKHRoaXMsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbiogKCkge1xuICAgICAgICB5aWVsZCAob25GaW5pc2ggPT09IG51bGwgfHwgb25GaW5pc2ggPT09IHZvaWQgMCA/IHZvaWQgMCA6IG9uRmluaXNoKHZhbHVlcykpO1xuICAgIH0pKTtcbiAgICAvLyBTdWJtaXQgZmFpbHVyZSBoYW5kbGVyIHdpdGggb3B0aW9uYWwgc2Nyb2xsLXRvLWVycm9yLlxuICAgIGNvbnN0IGhhbmRsZUZpbmlzaEZhaWxlZCA9IHVzZU1lbW9pemVkRm4oKGVycm9ycykgPT4ge1xuICAgICAgICB2YXIgX2E7XG4gICAgICAgIGlmIChzY3JvbGxUb0ZpcnN0RXJyb3IpIHtcbiAgICAgICAgICAgIGNvbnN0IGZpcnN0ID0gZ2V0Rmlyc3RFcnJvclBhdGgoZXJyb3JzKTtcbiAgICAgICAgICAgIGlmIChmaXJzdCkge1xuICAgICAgICAgICAgICAgIChfYSA9IG1ldGhvZHMuc2V0Rm9jdXMpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5jYWxsKG1ldGhvZHMsIGZpcnN0KTtcbiAgICAgICAgICAgICAgICBzY3JvbGxUb0ZpZWxkKGZpcnN0LCBzY3JvbGxUb0ZpcnN0RXJyb3IpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIG9uRmluaXNoRmFpbGVkID09PSBudWxsIHx8IG9uRmluaXNoRmFpbGVkID09PSB2b2lkIDAgPyB2b2lkIDAgOiBvbkZpbmlzaEZhaWxlZChlcnJvcnMpO1xuICAgIH0pO1xuICAgIGNvbnN0IGNsYXNzZXMgPSBjbGFzc25hbWVzKCdmb3JtJyk7XG4gICAgcmV0dXJuIChfanN4KEZvcm1Qcm92aWRlciwgT2JqZWN0LmFzc2lnbih7fSwgbWV0aG9kcywgeyBjaGlsZHJlbjogX2pzeChGb3JtQ29udGV4dC5Qcm92aWRlciwgeyB2YWx1ZTogY3R4LCBjaGlsZHJlbjogX2pzeChcImZvcm1cIiwgeyBjbGFzc05hbWU6IGNsYXNzZXMoJ3Jvb3QnLCBqb2luQ2xzKGNsYXNzTmFtZSwgY2xhc3NlcyhgbGF5b3V0LSR7bGF5b3V0fWApLCBjbGFzc2VzKGBzaXplLSR7c2l6ZX1gKSwgbGFiZWxBbGlnbiA9PT0gJ2xlZnQnICYmIGNsYXNzZXMoJ2xhYmVsLWxlZnQnKSkpLCBzdHlsZTogc3R5bGUsIG9uU3VibWl0OiBtZXRob2RzLmhhbmRsZVN1Ym1pdChoYW5kbGVGaW5pc2gsIGhhbmRsZUZpbmlzaEZhaWxlZCksIG5vVmFsaWRhdGU6IHRydWUsIGNoaWxkcmVuOiBjaGlsZHJlbiB9KSB9KSB9KSkpO1xufVxuZXhwb3J0IGRlZmF1bHQgRm9ybTsiLG51bGxdLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjIn0=
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { FieldValues } from 'react-hook-form';
|
|
2
|
+
import type { FormItemProps } from './interface';
|
|
3
|
+
export declare function FormItem<TFieldValues extends FieldValues = FieldValues>(props: FormItemProps<TFieldValues>): import("react/jsx-runtime").JSX.Element;
|
|
4
|
+
export default FormItem;
|