@1money/component-ui 0.0.20 → 0.0.22
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/.claude/settings.local.json +2 -1
- package/AGENTS.md +7 -1
- package/es/components/Calendar/style/Calendar.css +1 -1
- package/es/components/ProForm/ProForm.js +93 -116
- package/es/components/ProForm/ProFormDependency.js +2 -4
- package/es/components/ProForm/ProFormItem.d.ts +4 -0
- package/es/components/ProForm/ProFormItem.js +213 -0
- package/es/components/ProForm/ProFormList.js +5 -6
- package/es/components/ProForm/Submitter.js +2 -2
- package/es/components/ProForm/context.d.ts +10 -2
- package/es/components/ProForm/context.js +17 -14
- package/es/components/{Form → ProForm/core}/constants.d.ts +1 -1
- package/es/components/ProForm/core/constants.js +18 -0
- package/es/components/ProForm/core/hooks/useForm.js +541 -0
- package/es/components/ProForm/core/hooks/useFormCore.js +347 -0
- package/es/components/ProForm/core/index.d.ts +6 -0
- package/es/components/ProForm/core/index.js +6 -0
- package/es/components/{Form → ProForm/core}/interface.d.ts +21 -60
- package/es/components/ProForm/core/interface.js +2 -0
- package/es/components/ProForm/core/useFormItem.d.ts +20 -0
- package/es/components/ProForm/core/useFormItem.js +121 -0
- package/es/components/ProForm/fields/ProFormFieldSet.js +7 -6
- package/es/components/ProForm/fields/createProFormField.js +76 -151
- package/es/components/ProForm/index.d.ts +12 -5
- package/es/components/ProForm/index.js +20 -8
- package/es/components/ProForm/interface.d.ts +76 -41
- package/es/components/ProForm/style/ProForm.css +1 -1
- package/es/index.css +1 -1
- package/es/index.d.ts +3 -4
- package/es/index.js +2 -3
- package/lib/components/Calendar/style/Calendar.css +1 -1
- package/lib/components/ProForm/ProForm.js +94 -117
- package/lib/components/ProForm/ProFormDependency.js +2 -4
- package/lib/components/ProForm/ProFormItem.d.ts +4 -0
- package/lib/components/ProForm/ProFormItem.js +222 -0
- package/lib/components/ProForm/ProFormList.js +4 -5
- package/lib/components/ProForm/Submitter.js +2 -2
- package/lib/components/ProForm/context.d.ts +10 -2
- package/lib/components/ProForm/context.js +18 -15
- package/lib/components/{Form → ProForm/core}/constants.d.ts +1 -1
- package/lib/components/ProForm/core/constants.js +24 -0
- package/lib/components/ProForm/core/hooks/useForm.js +551 -0
- package/lib/components/ProForm/core/hooks/useFormCore.js +354 -0
- package/lib/components/ProForm/core/index.d.ts +6 -0
- package/lib/components/ProForm/core/index.js +56 -0
- package/lib/components/{Form → ProForm/core}/interface.d.ts +21 -60
- package/lib/components/ProForm/core/interface.js +6 -0
- package/lib/components/ProForm/core/useFormItem.d.ts +20 -0
- package/lib/components/ProForm/core/useFormItem.js +131 -0
- package/lib/components/ProForm/fields/ProFormFieldSet.js +7 -6
- package/lib/components/ProForm/fields/createProFormField.js +76 -151
- package/lib/components/ProForm/index.d.ts +12 -5
- package/lib/components/ProForm/index.js +41 -28
- package/lib/components/ProForm/interface.d.ts +76 -41
- package/lib/components/ProForm/style/ProForm.css +1 -1
- package/lib/index.css +1 -1
- package/lib/index.d.ts +3 -4
- package/lib/index.js +49 -50
- package/package.json +1 -1
- package/es/components/Form/Form.d.ts +0 -4
- package/es/components/Form/Form.js +0 -73
- package/es/components/Form/FormItem.d.ts +0 -4
- package/es/components/Form/FormItem.js +0 -183
- package/es/components/Form/constants.js +0 -19
- package/es/components/Form/context.d.ts +0 -5
- package/es/components/Form/context.js +0 -19
- package/es/components/Form/hooks/useForm.js +0 -541
- package/es/components/Form/hooks/useFormCore.js +0 -348
- package/es/components/Form/index.d.ts +0 -10
- package/es/components/Form/index.js +0 -17
- package/es/components/Form/interface.js +0 -2
- package/es/components/Form/style/Form.css +0 -1
- package/es/components/Form/style/css.js +0 -2
- package/es/components/Form/style/index.d.ts +0 -1
- package/es/components/Form/style/index.js +0 -2
- package/lib/components/Form/Form.d.ts +0 -4
- package/lib/components/Form/Form.js +0 -80
- package/lib/components/Form/FormItem.d.ts +0 -4
- package/lib/components/Form/FormItem.js +0 -193
- package/lib/components/Form/constants.js +0 -25
- package/lib/components/Form/context.d.ts +0 -5
- package/lib/components/Form/context.js +0 -25
- package/lib/components/Form/hooks/useForm.js +0 -551
- package/lib/components/Form/hooks/useFormCore.js +0 -355
- package/lib/components/Form/index.d.ts +0 -10
- package/lib/components/Form/index.js +0 -83
- package/lib/components/Form/interface.js +0 -6
- package/lib/components/Form/style/Form.css +0 -1
- package/lib/components/Form/style/css.js +0 -4
- package/lib/components/Form/style/index.d.ts +0 -1
- package/lib/components/Form/style/index.js +0 -4
- /package/es/components/{Form → ProForm/core}/hooks/useForm.d.ts +0 -0
- /package/es/components/{Form → ProForm/core}/hooks/useFormCore.d.ts +0 -0
- /package/lib/components/{Form → ProForm/core}/hooks/useForm.d.ts +0 -0
- /package/lib/components/{Form → ProForm/core}/hooks/useFormCore.d.ts +0 -0
|
@@ -1,17 +1,27 @@
|
|
|
1
1
|
import { ProForm as ProFormBase } from './ProForm';
|
|
2
|
+
import { ProFormItem } from './ProFormItem';
|
|
2
3
|
import { ProFormDependency } from './ProFormDependency';
|
|
3
4
|
import { ProFormList } from './ProFormList';
|
|
4
5
|
import { ProFormGroup } from './ProFormGroup';
|
|
5
6
|
import { Submitter } from './Submitter';
|
|
6
|
-
import { ProFormText, ProFormPassword, ProFormTextArea, ProFormCheckbox, ProFormCheckboxGroup, ProFormSwitch, ProFormSelect, ProFormUpload, ProFormFieldSet } from './fields';
|
|
7
|
+
import { ProFormText, ProFormPassword, ProFormTextArea, ProFormCheckbox, ProFormCheckboxGroup, ProFormSwitch, ProFormSelect, ProFormRadioGroup, ProFormSlider, ProFormDatePicker, ProFormUpload, ProFormFieldSet } from './fields';
|
|
8
|
+
import { useForm } from './core/hooks/useForm';
|
|
9
|
+
import { useProFormContext, useFormInstance } from './context';
|
|
7
10
|
import './style';
|
|
8
|
-
// Compose ProForm with static sub-components
|
|
11
|
+
// Compose ProForm with static sub-components and hooks
|
|
9
12
|
var ProForm = Object.assign(ProFormBase, {
|
|
13
|
+
// Item + core hooks
|
|
14
|
+
Item: ProFormItem,
|
|
15
|
+
useForm: useForm,
|
|
16
|
+
useInstance: useFormInstance,
|
|
17
|
+
useContext: useProFormContext,
|
|
18
|
+
// Composition
|
|
10
19
|
Dependency: ProFormDependency,
|
|
11
20
|
List: ProFormList,
|
|
12
21
|
Group: ProFormGroup,
|
|
13
22
|
FieldSet: ProFormFieldSet,
|
|
14
23
|
Submitter: Submitter,
|
|
24
|
+
// Fields
|
|
15
25
|
Text: ProFormText,
|
|
16
26
|
Password: ProFormPassword,
|
|
17
27
|
TextArea: ProFormTextArea,
|
|
@@ -19,19 +29,21 @@ var ProForm = Object.assign(ProFormBase, {
|
|
|
19
29
|
CheckboxGroup: ProFormCheckboxGroup,
|
|
20
30
|
Switch: ProFormSwitch,
|
|
21
31
|
Select: ProFormSelect,
|
|
32
|
+
RadioGroup: ProFormRadioGroup,
|
|
33
|
+
Slider: ProFormSlider,
|
|
34
|
+
DatePicker: ProFormDatePicker,
|
|
22
35
|
Upload: ProFormUpload
|
|
23
36
|
});
|
|
24
|
-
export { ProForm };
|
|
37
|
+
export { ProForm, ProFormItem };
|
|
25
38
|
export default ProForm;
|
|
26
|
-
//
|
|
39
|
+
// Named exports for fields
|
|
40
|
+
export { createProFormField, ProFormText, ProFormPassword, ProFormTextArea, ProFormCheckbox, ProFormCheckboxGroup, ProFormSwitch, ProFormSelect, ProFormRadioGroup, ProFormSlider, ProFormDatePicker, ProFormUpload, ProFormFieldSet } from './fields';
|
|
41
|
+
// Composition + layouts
|
|
27
42
|
export { ProFormDependency } from './ProFormDependency';
|
|
28
43
|
export { ProFormList } from './ProFormList';
|
|
29
44
|
export { ProFormGroup } from './ProFormGroup';
|
|
30
|
-
export { Submitter } from './Submitter';
|
|
31
|
-
export { createProFormField, ProFormText, ProFormPassword, ProFormTextArea, ProFormCheckbox, ProFormCheckboxGroup, ProFormSwitch, ProFormSelect, ProFormUpload, ProFormFieldSet } from './fields';
|
|
32
45
|
export { DrawerForm } from './layouts/DrawerForm';
|
|
33
46
|
export { DialogForm } from './layouts/DialogForm';
|
|
34
47
|
export { QueryFilter } from './layouts/QueryFilter';
|
|
35
|
-
export { useProFormContext, FormListContext, useFormListContext } from './context';
|
|
36
48
|
export { CSS_PREFIX, WIDTH_SIZE_MAP, DEFAULT_COL_SPAN, DEFAULT_TEXT, PROFORM_MODES } from './constants';
|
|
37
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
|
49
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvUHJvRm9ybS9pbmRleC50cyIsImNvbXBvbmVudHMvUHJvRm9ybS9pbmRleC5qcyJdLCJuYW1lcyI6WyJQcm9Gb3JtIiwiUHJvRm9ybUJhc2UiLCJQcm9Gb3JtSXRlbSIsIlByb0Zvcm1EZXBlbmRlbmN5IiwiUHJvRm9ybUxpc3QiLCJQcm9Gb3JtR3JvdXAiLCJTdWJtaXR0ZXIiLCJQcm9Gb3JtVGV4dCIsIlByb0Zvcm1QYXNzd29yZCIsIlByb0Zvcm1UZXh0QXJlYSIsIlByb0Zvcm1DaGVja2JveCIsIlByb0Zvcm1DaGVja2JveEdyb3VwIiwiUHJvRm9ybVN3aXRjaCIsIlByb0Zvcm1TZWxlY3QiLCJQcm9Gb3JtUmFkaW9Hcm91cCIsIlByb0Zvcm1TbGlkZXIiLCJQcm9Gb3JtRGF0ZVBpY2tlciIsIlByb0Zvcm1VcGxvYWQiLCJQcm9Gb3JtRmllbGRTZXQiLCJ1c2VGb3JtIiwidXNlUHJvRm9ybUNvbnRleHQiLCJ1c2VGb3JtSW5zdGFuY2UiLCJPYmplY3QiLCJhc3NpZ24iLCJJdGVtIiwidXNlSW5zdGFuY2UiLCJ1c2VDb250ZXh0IiwiRGVwZW5kZW5jeSIsIkxpc3QiLCJHcm91cCIsIkZpZWxkU2V0IiwiVGV4dCIsIlBhc3N3b3JkIiwiVGV4dEFyZWEiLCJDaGVja2JveCIsIkNoZWNrYm94R3JvdXAiLCJTd2l0Y2giLCJTZWxlY3QiLCJSYWRpb0dyb3VwIiwiU2xpZGVyIiwiRGF0ZVBpY2tlciIsIlVwbG9hZCIsImNyZWF0ZVByb0Zvcm1GaWVsZCIsIkRyYXdlckZvcm0iLCJEaWFsb2dGb3JtIiwiUXVlcnlGaWx0ZXIiLCJDU1NfUFJFRklYIiwiV0lEVEhfU0laRV9NQVAiLCJERUZBVUxUX0NPTF9TUEFOIiwiREVGQVVMVF9URVhUIiwiUFJPRk9STV9NT0RFUyJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBU0EsT0FBTyxJQUFJQyxXQUFXLFFBQVEsV0FBVztBQUNsRCxTQUFTQyxXQUFXLFFBQVEsZUFBZTtBQUMzQyxTQUFTQyxpQkFBaUIsUUFBUSxxQkFBcUI7QUFDdkQsU0FBU0MsV0FBVyxRQUFRLGVBQWU7QUFDM0MsU0FBU0MsWUFBWSxRQUFRLGdCQUFnQjtBQUM3QyxTQUFTQyxTQUFTLFFBQVEsYUFBYTtBQUN2QyxTQUNFQyxXQUFXLEVBQ1hDLGVBQWUsRUFDZkMsZUFBZSxFQUNmQyxlQUFlLEVBQ2ZDLG9CQUFvQixFQUNwQkMsYUFBYSxFQUNiQyxhQUFhLEVBQ2JDLGlCQUFpQixFQUNqQkMsYUFBYSxFQUNiQyxpQkFBaUIsRUFDakJDLGFBQWEsRUFDYkMsZUFBZSxRQUNWLFVBQVU7QUFDakIsU0FBU0MsT0FBTyxRQUFRLHNCQUFzQjtBQUM5QyxTQUFTQyxpQkFBaUIsRUFBRUMsZUFBZSxRQUFRLFdBQVc7QUFDOUQsT0FBTyxTQUFTO0FBRWhCO0FBQ0EsSUFBTXJCLE9BQU8sR0FBR3NCLE1BQU0sQ0FBQ0MsTUFBTSxDQUFDdEIsV0FBVyxFQUFFO0VBQ3pDO0VBQ0F1QixJQUFJLEVBQUV0QixXQUFXO0VBQ2pCaUIsT0FBTyxFQUFQQSxPQUFPO0VBQ1BNLFdBQVcsRUFBRUosZUFBZTtFQUM1QkssVUFBVSxFQUFFTixpQkFBaUI7RUFDN0I7RUFDQU8sVUFBVSxFQUFFeEIsaUJBQWlCO0VBQzdCeUIsSUFBSSxFQUFFeEIsV0FBVztFQUNqQnlCLEtBQUssRUFBRXhCLFlBQVk7RUFDbkJ5QixRQUFRLEVBQUVaLGVBQWU7RUFDekJaLFNBQVMsRUFBVEEsU0FBUztFQUNUO0VBQ0F5QixJQUFJLEVBQUV4QixXQUFXO0VBQ2pCeUIsUUFBUSxFQUFFeEIsZUFBZTtFQUN6QnlCLFFBQVEsRUFBRXhCLGVBQWU7RUFDekJ5QixRQUFRLEVBQUV4QixlQUFlO0VBQ3pCeUIsYUFBYSxFQUFFeEIsb0JBQW9CO0VBQ25DeUIsTUFBTSxFQUFFeEIsYUFBYTtFQUNyQnlCLE1BQU0sRUFBRXhCLGFBQWE7RUFDckJ5QixVQUFVLEVBQUV4QixpQkFBaUI7RUFDN0J5QixNQUFNLEVBQUV4QixhQUFhO0VBQ3JCeUIsVUFBVSxFQUFFeEIsaUJBQWlCO0VBQzdCeUIsTUFBTSxFQUFFeEI7QUNiVixDRGNDLENBQUM7QUFFRixTQUFTakIsT0FBTyxFQUFFRSxXQUFXO0FBQzdCLGVBQWVGLE9BQU87QUFFdEI7QUFDQSxTQUNFMEMsa0JBQWtCLEVBQ2xCbkMsV0FBVyxFQUNYQyxlQUFlLEVBQ2ZDLGVBQWUsRUFDZkMsZUFBZSxFQUNmQyxvQkFBb0IsRUFDcEJDLGFBQWEsRUFDYkMsYUFBYSxFQUNiQyxpQkFBaUIsRUFDakJDLGFBQWEsRUFDYkMsaUJBQWlCLEVBQ2pCQyxhQUFhLEVBQ2JDLGVBQWUsUUFDVixVQUFVO0FBRWpCO0FBQ0EsU0FBU2YsaUJBQWlCLFFBQVEscUJBQXFCO0FBQ3ZELFNBQVNDLFdBQVcsUUFBUSxlQUFlO0FBQzNDLFNBQVNDLFlBQVksUUFBUSxnQkFBZ0I7QUFDN0MsU0FBU3NDLFVBQVUsUUFBUSxzQkFBc0I7QUFDakQsU0FBU0MsVUFBVSxRQUFRLHNCQUFzQjtBQUNqRCxTQUFTQyxXQUFXLFFBQVEsdUJBQXVCO0FBNEJuRCxTQUFTQyxVQUFVLEVBQUVDLGNBQWMsRUFBRUMsZ0JBQWdCLEVBQUVDLFlBQVksRUFBRUMsYUFBYSxRQUFRLGFBQWEiLCJmaWxlIjoiY29tcG9uZW50cy9Qcm9Gb3JtL2luZGV4LmpzIiwic291cmNlc0NvbnRlbnQiOltudWxsLCJpbXBvcnQgeyBQcm9Gb3JtIGFzIFByb0Zvcm1CYXNlIH0gZnJvbSAnLi9Qcm9Gb3JtJztcbmltcG9ydCB7IFByb0Zvcm1JdGVtIH0gZnJvbSAnLi9Qcm9Gb3JtSXRlbSc7XG5pbXBvcnQgeyBQcm9Gb3JtRGVwZW5kZW5jeSB9IGZyb20gJy4vUHJvRm9ybURlcGVuZGVuY3knO1xuaW1wb3J0IHsgUHJvRm9ybUxpc3QgfSBmcm9tICcuL1Byb0Zvcm1MaXN0JztcbmltcG9ydCB7IFByb0Zvcm1Hcm91cCB9IGZyb20gJy4vUHJvRm9ybUdyb3VwJztcbmltcG9ydCB7IFN1Ym1pdHRlciB9IGZyb20gJy4vU3VibWl0dGVyJztcbmltcG9ydCB7IFByb0Zvcm1UZXh0LCBQcm9Gb3JtUGFzc3dvcmQsIFByb0Zvcm1UZXh0QXJlYSwgUHJvRm9ybUNoZWNrYm94LCBQcm9Gb3JtQ2hlY2tib3hHcm91cCwgUHJvRm9ybVN3aXRjaCwgUHJvRm9ybVNlbGVjdCwgUHJvRm9ybVJhZGlvR3JvdXAsIFByb0Zvcm1TbGlkZXIsIFByb0Zvcm1EYXRlUGlja2VyLCBQcm9Gb3JtVXBsb2FkLCBQcm9Gb3JtRmllbGRTZXQsIH0gZnJvbSAnLi9maWVsZHMnO1xuaW1wb3J0IHsgdXNlRm9ybSB9IGZyb20gJy4vY29yZS9ob29rcy91c2VGb3JtJztcbmltcG9ydCB7IHVzZVByb0Zvcm1Db250ZXh0LCB1c2VGb3JtSW5zdGFuY2UgfSBmcm9tICcuL2NvbnRleHQnO1xuaW1wb3J0ICcuL3N0eWxlJztcbi8vIENvbXBvc2UgUHJvRm9ybSB3aXRoIHN0YXRpYyBzdWItY29tcG9uZW50cyBhbmQgaG9va3NcbmNvbnN0IFByb0Zvcm0gPSBPYmplY3QuYXNzaWduKFByb0Zvcm1CYXNlLCB7XG4gICAgLy8gSXRlbSArIGNvcmUgaG9va3NcbiAgICBJdGVtOiBQcm9Gb3JtSXRlbSxcbiAgICB1c2VGb3JtLFxuICAgIHVzZUluc3RhbmNlOiB1c2VGb3JtSW5zdGFuY2UsXG4gICAgdXNlQ29udGV4dDogdXNlUHJvRm9ybUNvbnRleHQsXG4gICAgLy8gQ29tcG9zaXRpb25cbiAgICBEZXBlbmRlbmN5OiBQcm9Gb3JtRGVwZW5kZW5jeSxcbiAgICBMaXN0OiBQcm9Gb3JtTGlzdCxcbiAgICBHcm91cDogUHJvRm9ybUdyb3VwLFxuICAgIEZpZWxkU2V0OiBQcm9Gb3JtRmllbGRTZXQsXG4gICAgU3VibWl0dGVyLFxuICAgIC8vIEZpZWxkc1xuICAgIFRleHQ6IFByb0Zvcm1UZXh0LFxuICAgIFBhc3N3b3JkOiBQcm9Gb3JtUGFzc3dvcmQsXG4gICAgVGV4dEFyZWE6IFByb0Zvcm1UZXh0QXJlYSxcbiAgICBDaGVja2JveDogUHJvRm9ybUNoZWNrYm94LFxuICAgIENoZWNrYm94R3JvdXA6IFByb0Zvcm1DaGVja2JveEdyb3VwLFxuICAgIFN3aXRjaDogUHJvRm9ybVN3aXRjaCxcbiAgICBTZWxlY3Q6IFByb0Zvcm1TZWxlY3QsXG4gICAgUmFkaW9Hcm91cDogUHJvRm9ybVJhZGlvR3JvdXAsXG4gICAgU2xpZGVyOiBQcm9Gb3JtU2xpZGVyLFxuICAgIERhdGVQaWNrZXI6IFByb0Zvcm1EYXRlUGlja2VyLFxuICAgIFVwbG9hZDogUHJvRm9ybVVwbG9hZCxcbn0pO1xuZXhwb3J0IHsgUHJvRm9ybSwgUHJvRm9ybUl0ZW0gfTtcbmV4cG9ydCBkZWZhdWx0IFByb0Zvcm07XG4vLyBOYW1lZCBleHBvcnRzIGZvciBmaWVsZHNcbmV4cG9ydCB7IGNyZWF0ZVByb0Zvcm1GaWVsZCwgUHJvRm9ybVRleHQsIFByb0Zvcm1QYXNzd29yZCwgUHJvRm9ybVRleHRBcmVhLCBQcm9Gb3JtQ2hlY2tib3gsIFByb0Zvcm1DaGVja2JveEdyb3VwLCBQcm9Gb3JtU3dpdGNoLCBQcm9Gb3JtU2VsZWN0LCBQcm9Gb3JtUmFkaW9Hcm91cCwgUHJvRm9ybVNsaWRlciwgUHJvRm9ybURhdGVQaWNrZXIsIFByb0Zvcm1VcGxvYWQsIFByb0Zvcm1GaWVsZFNldCwgfSBmcm9tICcuL2ZpZWxkcyc7XG4vLyBDb21wb3NpdGlvbiArIGxheW91dHNcbmV4cG9ydCB7IFByb0Zvcm1EZXBlbmRlbmN5IH0gZnJvbSAnLi9Qcm9Gb3JtRGVwZW5kZW5jeSc7XG5leHBvcnQgeyBQcm9Gb3JtTGlzdCB9IGZyb20gJy4vUHJvRm9ybUxpc3QnO1xuZXhwb3J0IHsgUHJvRm9ybUdyb3VwIH0gZnJvbSAnLi9Qcm9Gb3JtR3JvdXAnO1xuZXhwb3J0IHsgRHJhd2VyRm9ybSB9IGZyb20gJy4vbGF5b3V0cy9EcmF3ZXJGb3JtJztcbmV4cG9ydCB7IERpYWxvZ0Zvcm0gfSBmcm9tICcuL2xheW91dHMvRGlhbG9nRm9ybSc7XG5leHBvcnQgeyBRdWVyeUZpbHRlciB9IGZyb20gJy4vbGF5b3V0cy9RdWVyeUZpbHRlcic7XG5leHBvcnQgeyBDU1NfUFJFRklYLCBXSURUSF9TSVpFX01BUCwgREVGQVVMVF9DT0xfU1BBTiwgREVGQVVMVF9URVhULCBQUk9GT1JNX01PREVTIH0gZnJvbSAnLi9jb25zdGFudHMnOyJdLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjIn0=
|
|
@@ -1,13 +1,11 @@
|
|
|
1
|
-
import type { ReactNode, FC, ReactElement, MutableRefObject, CSSProperties } from 'react';
|
|
2
|
-
import type {
|
|
1
|
+
import type { ReactNode, FC, ReactElement, MutableRefObject, CSSProperties, FormHTMLAttributes } from 'react';
|
|
2
|
+
import type { FormCoreInstance, FormSize, LabelAlign, ValidateStatus, ValidateTrigger, Rule } from './core/interface';
|
|
3
3
|
import type { ButtonProps } from "../Button";
|
|
4
4
|
import type { DrawerProps, DrawerPlacement } from "../Drawer";
|
|
5
5
|
import type { GridRowProps, GridColSize } from "../Grid";
|
|
6
6
|
import type { DialogProps } from "../Dialog";
|
|
7
7
|
import type { ProFormMode } from './constants';
|
|
8
|
-
/** Transform field value before submission */
|
|
9
8
|
export type ProFormFieldTransformFn = (value: unknown, name: string, allValues: Record<string, unknown>) => unknown;
|
|
10
|
-
/** Convert stored value before displaying in the field */
|
|
11
9
|
export type ProFormFieldConvertValueFn = (value: unknown, name: string) => unknown;
|
|
12
10
|
export type ProFormValueEnumObj = Record<string | number, string | {
|
|
13
11
|
text: string;
|
|
@@ -24,29 +22,7 @@ export interface ProFormRequestOption {
|
|
|
24
22
|
value: unknown;
|
|
25
23
|
disabled?: boolean;
|
|
26
24
|
}
|
|
27
|
-
export interface
|
|
28
|
-
/** @deprecated Use `mode` instead. Kept for backward compatibility. */
|
|
29
|
-
readonly?: boolean;
|
|
30
|
-
/** Form mode: 'edit' (default), 'read' (readonly), 'update' (edit existing data) */
|
|
31
|
-
mode?: ProFormMode;
|
|
32
|
-
grid?: boolean;
|
|
33
|
-
colProps?: ProFormColProps;
|
|
34
|
-
registerTransform?: (name: string, fn: ProFormFieldTransformFn) => void;
|
|
35
|
-
unregisterTransform?: (name: string) => void;
|
|
36
|
-
formInstance?: ProFormFormInstance;
|
|
37
|
-
}
|
|
38
|
-
export interface ProFormFormInstance {
|
|
39
|
-
submit: () => {
|
|
40
|
-
success: boolean;
|
|
41
|
-
values?: Record<string, unknown>;
|
|
42
|
-
errors?: Record<string, string>;
|
|
43
|
-
};
|
|
44
|
-
resetFields: () => void;
|
|
45
|
-
getFieldValue: (name: string) => unknown;
|
|
46
|
-
getFieldsValue: () => Record<string, unknown>;
|
|
47
|
-
setFieldsValue: (values: Record<string, unknown>) => void;
|
|
48
|
-
setFieldValue: (name: string, value: unknown) => void;
|
|
49
|
-
validateFields: (fieldsRules?: Record<string, Rule[]>) => boolean;
|
|
25
|
+
export interface ProFormFormInstance extends FormCoreInstance {
|
|
50
26
|
getFieldsFormatValue: () => Record<string, unknown>;
|
|
51
27
|
validateFieldsReturnFormatValue: () => {
|
|
52
28
|
success: boolean;
|
|
@@ -54,6 +30,30 @@ export interface ProFormFormInstance {
|
|
|
54
30
|
errors?: Record<string, string>;
|
|
55
31
|
};
|
|
56
32
|
}
|
|
33
|
+
export interface ProFormContextValue {
|
|
34
|
+
values: Record<string, unknown>;
|
|
35
|
+
errors: Record<string, string>;
|
|
36
|
+
touched: Record<string, boolean>;
|
|
37
|
+
formInstance: ProFormFormInstance;
|
|
38
|
+
setFieldValue: (name: string, value: unknown) => void;
|
|
39
|
+
setFieldError: (name: string, error: string | null) => void;
|
|
40
|
+
validateField: (name: string, rules: Rule[], providedValue?: unknown) => boolean;
|
|
41
|
+
registerField: (name: string, rules: Rule[]) => void;
|
|
42
|
+
unregisterField: (name: string) => void;
|
|
43
|
+
size: FormSize;
|
|
44
|
+
labelAlign: LabelAlign;
|
|
45
|
+
disabled: boolean;
|
|
46
|
+
colon: boolean;
|
|
47
|
+
requiredMark: boolean;
|
|
48
|
+
validateTrigger: ValidateTrigger;
|
|
49
|
+
/** @deprecated Use `mode` instead. Kept for backward compatibility. */
|
|
50
|
+
readonly: boolean;
|
|
51
|
+
mode: ProFormMode;
|
|
52
|
+
grid: boolean;
|
|
53
|
+
colProps: ProFormColProps;
|
|
54
|
+
registerTransform: (name: string, fn: ProFormFieldTransformFn) => void;
|
|
55
|
+
unregisterTransform: (name: string) => void;
|
|
56
|
+
}
|
|
57
57
|
export interface ProFormFieldProps<FieldProps = Record<string, unknown>> {
|
|
58
58
|
name?: string;
|
|
59
59
|
label?: ReactNode;
|
|
@@ -72,7 +72,6 @@ export interface ProFormFieldProps<FieldProps = Record<string, unknown>> {
|
|
|
72
72
|
colon?: boolean;
|
|
73
73
|
/** @deprecated Use `mode='read'` instead */
|
|
74
74
|
readonly?: boolean;
|
|
75
|
-
/** Field-level mode override: 'edit', 'read', or 'update' */
|
|
76
75
|
mode?: ProFormMode;
|
|
77
76
|
hidden?: boolean;
|
|
78
77
|
colProps?: ProFormColProps;
|
|
@@ -82,17 +81,43 @@ export interface ProFormFieldProps<FieldProps = Record<string, unknown>> {
|
|
|
82
81
|
width?: 'sm' | 'md' | 'lg' | 'xl' | number;
|
|
83
82
|
transform?: ProFormFieldTransformFn;
|
|
84
83
|
convertValue?: ProFormFieldConvertValueFn;
|
|
85
|
-
/** Field names to watch — auto-wraps with ProFormDependency */
|
|
86
84
|
dependencies?: string[];
|
|
87
|
-
/** Async option loader (works with Select, RadioGroup, CheckboxGroup) */
|
|
88
85
|
request?: (params?: Record<string, unknown>) => Promise<ProFormRequestOption[]>;
|
|
89
|
-
/** Extra params passed to request; merged with dependency values */
|
|
90
86
|
params?: Record<string, unknown>;
|
|
91
|
-
/** Quick enum → options conversion for Select/Radio/Checkbox fields */
|
|
92
87
|
valueEnum?: ProFormValueEnumObj;
|
|
93
|
-
/** Debounce delay (ms) for field onChange */
|
|
94
88
|
debounceTime?: number;
|
|
95
89
|
}
|
|
90
|
+
export type ProFormValueType = 'text' | 'password' | 'digit' | 'date' | 'dateTime' | 'select' | 'radio' | 'switch' | 'tag';
|
|
91
|
+
export interface ProFormItemProps {
|
|
92
|
+
children?: ReactNode;
|
|
93
|
+
className?: string;
|
|
94
|
+
prefixCls?: string;
|
|
95
|
+
label?: ReactNode;
|
|
96
|
+
name?: string;
|
|
97
|
+
rules?: Rule[];
|
|
98
|
+
required?: boolean;
|
|
99
|
+
help?: ReactNode;
|
|
100
|
+
validateStatus?: ValidateStatus;
|
|
101
|
+
hasFeedback?: boolean;
|
|
102
|
+
colon?: boolean;
|
|
103
|
+
hidden?: boolean;
|
|
104
|
+
/** Transform before submit, registered into ProForm pipeline */
|
|
105
|
+
transform?: ProFormFieldTransformFn;
|
|
106
|
+
/** Convert the displayed value before rendering into children */
|
|
107
|
+
convertValue?: ProFormFieldConvertValueFn;
|
|
108
|
+
/** Built-in read-mode value type renderer */
|
|
109
|
+
valueType?: ProFormValueType;
|
|
110
|
+
/** Custom read-mode rendering; overrides valueType */
|
|
111
|
+
readonlyRender?: (value: unknown, values: Record<string, unknown>) => ReactNode;
|
|
112
|
+
/** Grid column config; falls back to ProForm.colProps */
|
|
113
|
+
colProps?: ProFormColProps;
|
|
114
|
+
/** Per-item mode override */
|
|
115
|
+
mode?: ProFormMode;
|
|
116
|
+
/** Placeholder shown in read mode when the value is empty (default: '-') */
|
|
117
|
+
emptyText?: ReactNode;
|
|
118
|
+
/** Value enum for select/radio/tag value types */
|
|
119
|
+
valueEnum?: ProFormValueEnumObj;
|
|
120
|
+
}
|
|
96
121
|
export interface SubmitterProps {
|
|
97
122
|
submitText?: ReactNode;
|
|
98
123
|
resetText?: ReactNode;
|
|
@@ -106,11 +131,27 @@ export interface SubmitterProps {
|
|
|
106
131
|
submitButtonProps?: Partial<ButtonProps>;
|
|
107
132
|
resetButtonProps?: Partial<ButtonProps>;
|
|
108
133
|
}
|
|
109
|
-
export interface ProFormProps extends Omit<
|
|
134
|
+
export interface ProFormProps extends Omit<FormHTMLAttributes<HTMLFormElement>, 'onSubmit' | 'onReset'> {
|
|
135
|
+
children?: ReactNode;
|
|
136
|
+
className?: string;
|
|
137
|
+
prefixCls?: string;
|
|
138
|
+
initialValues?: Record<string, unknown>;
|
|
139
|
+
onFinish?: (values: Record<string, unknown>) => void;
|
|
140
|
+
onFinishFailed?: (errorInfo: {
|
|
141
|
+
values: Record<string, unknown>;
|
|
142
|
+
errors: Record<string, string>;
|
|
143
|
+
}) => void;
|
|
144
|
+
onValuesChange?: (changedValues: Record<string, unknown>, allValues: Record<string, unknown>) => void;
|
|
145
|
+
onReset?: () => void;
|
|
146
|
+
size?: FormSize;
|
|
147
|
+
labelAlign?: LabelAlign;
|
|
148
|
+
disabled?: boolean;
|
|
149
|
+
colon?: boolean;
|
|
150
|
+
requiredMark?: boolean;
|
|
151
|
+
validateTrigger?: ValidateTrigger;
|
|
110
152
|
submitter?: SubmitterProps | false;
|
|
111
153
|
/** @deprecated Use `mode='read'` instead */
|
|
112
154
|
readonly?: boolean;
|
|
113
|
-
/** Form mode: 'edit' (default), 'read' (readonly), 'update' (edit existing data) */
|
|
114
155
|
mode?: ProFormMode;
|
|
115
156
|
grid?: boolean;
|
|
116
157
|
colProps?: ProFormColProps;
|
|
@@ -119,7 +160,6 @@ export interface ProFormProps extends Omit<FormProps, 'onSubmit'> {
|
|
|
119
160
|
request?: (params?: unknown) => Promise<Record<string, unknown>>;
|
|
120
161
|
params?: unknown;
|
|
121
162
|
formRef?: MutableRefObject<ProFormFormInstance | undefined>;
|
|
122
|
-
/** Strip null / undefined / empty-string values before onFinish (default: true) */
|
|
123
163
|
omitNil?: boolean;
|
|
124
164
|
}
|
|
125
165
|
export interface ProFormListAction {
|
|
@@ -134,9 +174,7 @@ export interface ProFormListProps {
|
|
|
134
174
|
label?: ReactNode;
|
|
135
175
|
min?: number;
|
|
136
176
|
max?: number;
|
|
137
|
-
/** Validate that the list is not empty on form submission */
|
|
138
177
|
required?: boolean;
|
|
139
|
-
/** Error message when list is empty (used with required) */
|
|
140
178
|
requiredMessage?: string;
|
|
141
179
|
initialValue?: Record<string, unknown>[];
|
|
142
180
|
copyIconProps?: false | Partial<ButtonProps>;
|
|
@@ -177,14 +215,12 @@ export interface ProFormFieldSetProps {
|
|
|
177
215
|
rules?: Rule[];
|
|
178
216
|
required?: boolean;
|
|
179
217
|
help?: ReactNode;
|
|
180
|
-
/** Gap between child fields in px */
|
|
181
218
|
gap?: number;
|
|
182
219
|
style?: CSSProperties;
|
|
183
220
|
children?: ReactNode;
|
|
184
221
|
}
|
|
185
222
|
export interface ProFormGroupProps {
|
|
186
223
|
title?: ReactNode;
|
|
187
|
-
/** Extra content rendered at the right of the title */
|
|
188
224
|
extra?: ReactNode;
|
|
189
225
|
collapsible?: boolean;
|
|
190
226
|
defaultCollapsed?: boolean;
|
|
@@ -227,7 +263,6 @@ export interface QueryFilterProps extends ProFormProps {
|
|
|
227
263
|
searchText?: ReactNode;
|
|
228
264
|
resetText?: ReactNode;
|
|
229
265
|
};
|
|
230
|
-
/** Sync form values to URL search params */
|
|
231
266
|
syncToUrl?: boolean | ((values: Record<string, unknown>, type: 'get' | 'set') => Record<string, unknown>);
|
|
232
267
|
}
|
|
233
268
|
export interface CreateProFormFieldConfig<FieldProps> {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.om-component-ui-proform{width:100%}.om-component-ui-proform-submitter{display:flex;gap:var(--om-spacing-200,8px);align-items:center;padding-top:var(--om-spacing-300,12px)}.om-component-ui-proform-list{display:flex;flex-direction:column;gap:var(--om-spacing-200,8px);width:100%}.om-component-ui-proform-list-label{display:block}.om-component-ui-proform-list-content{display:flex;flex-direction:column;gap:var(--om-spacing-200,8px)}.om-component-ui-proform-list-actions{display:flex;flex-direction:column;gap:var(--om-spacing-100,4px)}.om-component-ui-proform-list-row-actions{display:flex;gap:var(--om-spacing-100,4px);align-items:center}.om-component-ui-proform-dialog-form,.om-component-ui-proform-drawer-form{width:100%}.om-component-ui-proform-group{display:flex;flex-direction:column;width:100%}.om-component-ui-proform-group-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:var(--om-spacing-200,8px);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.om-component-ui-proform-group-title{display:flex;gap:var(--om-spacing-100,4px);align-items:center}.om-component-ui-proform-group-arrow{display:inline-block;transition:transform .2s}.om-component-ui-proform-group-body{display:flex;flex-direction:column;gap:var(--om-spacing-200,8px)}.om-component-ui-proform-fieldset{display:flex;align-items:flex-start}.om-component-ui-proform-query-filter{display:flex;flex-wrap:wrap;gap:var(--om-spacing-200,8px);align-items:flex-end;width:100%}.om-component-ui-proform-query-filter-actions{display:flex;gap:var(--om-spacing-200,8px);align-items:center;height:var(--om-component-height-3xl,56px);margin-left:auto}.om-component-ui-proform-query-filter-split{width:1px;height:24px;background-color:var(--om-border-default-secondary,#9fa3a3)}
|
|
1
|
+
.om-component-ui-form{width:100%}.om-component-ui-form-item{margin-bottom:var(--om-spacing-300,12px)}.om-component-ui-form-item-label-wrapper-vertical,.om-component-ui-form-item-small{margin-bottom:var(--om-spacing-200,8px)}.om-component-ui-form-item-label{display:inline;padding:0}.om-component-ui-form-item-label-required:before{margin-right:var(--om-spacing-050,2px);color:var(--om-text-danger,#ae0000);content:"*"}.om-component-ui-form-item-label-wrapper-left{text-align:left}.om-component-ui-form-item-label-wrapper-right{text-align:right}.om-component-ui-form-item-error,.om-component-ui-form-item-help{margin-top:var(--om-spacing-050,2px)}.om-component-ui-proform{width:100%}.om-component-ui-proform-submitter{display:flex;gap:var(--om-spacing-200,8px);align-items:center;padding-top:var(--om-spacing-300,12px)}.om-component-ui-proform-list{display:flex;flex-direction:column;gap:var(--om-spacing-200,8px);width:100%}.om-component-ui-proform-list-label{display:block}.om-component-ui-proform-list-content{display:flex;flex-direction:column;gap:var(--om-spacing-200,8px)}.om-component-ui-proform-list-actions{display:flex;flex-direction:column;gap:var(--om-spacing-100,4px)}.om-component-ui-proform-list-row-actions{display:flex;gap:var(--om-spacing-100,4px);align-items:center}.om-component-ui-proform-dialog-form,.om-component-ui-proform-drawer-form{width:100%}.om-component-ui-proform-group{display:flex;flex-direction:column;width:100%}.om-component-ui-proform-group-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:var(--om-spacing-200,8px);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.om-component-ui-proform-group-title{display:flex;gap:var(--om-spacing-100,4px);align-items:center}.om-component-ui-proform-group-arrow{display:inline-block;transition:transform .2s}.om-component-ui-proform-group-body{display:flex;flex-direction:column;gap:var(--om-spacing-200,8px)}.om-component-ui-proform-fieldset{display:flex;align-items:flex-start}.om-component-ui-proform-query-filter{display:flex;flex-wrap:wrap;gap:var(--om-spacing-200,8px);align-items:flex-end;width:100%}.om-component-ui-proform-query-filter-actions{display:flex;gap:var(--om-spacing-200,8px);align-items:center;height:var(--om-component-height-3xl,56px);margin-left:auto}.om-component-ui-proform-query-filter-split{width:1px;height:24px;background-color:var(--om-border-default-secondary,#9fa3a3)}
|