@hw-component/form 0.0.9-beta-v12 → 0.0.9-beta-v18
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/es/Form/FormItem/BasicItem.js +13 -7
- package/es/Form/FormItem/hooks.d.ts +2 -0
- package/es/Form/FormItem/hooks.js +13 -1
- package/es/Form/Label.d.ts +0 -1
- package/es/Form/Label.js +2 -5
- package/es/Form/index.d.ts +1 -1
- package/es/Form/index.js +11 -5
- package/es/Form/modal.d.ts +8 -4
- package/es/config.js +2 -1
- package/es/index.css +21 -0
- package/lib/Form/FormItem/BasicItem.js +12 -6
- package/lib/Form/FormItem/hooks.d.ts +2 -0
- package/lib/Form/FormItem/hooks.js +13 -0
- package/lib/Form/Label.d.ts +0 -1
- package/lib/Form/Label.js +2 -5
- package/lib/Form/index.d.ts +1 -1
- package/lib/Form/index.js +11 -5
- package/lib/Form/modal.d.ts +8 -4
- package/lib/config.js +2 -1
- package/lib/index.css +21 -0
- package/package.json +1 -1
- package/src/components/Form/FormItem/BasicItem.tsx +8 -4
- package/src/components/Form/FormItem/hooks.tsx +14 -0
- package/src/components/Form/Label.tsx +1 -3
- package/src/components/Form/index.less +32 -0
- package/src/components/Form/index.tsx +6 -2
- package/src/components/Form/modal.ts +9 -5
- package/src/components/config.ts +1 -0
- package/src/pages/Form/index.tsx +11 -153
|
@@ -14,12 +14,13 @@ import { Col, Form, Space } from 'antd';
|
|
|
14
14
|
import React from 'react';
|
|
15
15
|
import Index$2 from './Helper.js';
|
|
16
16
|
import { useClassName } from '../../hooks/index.js';
|
|
17
|
-
import { useHide } from './hooks.js';
|
|
17
|
+
import { usePositionClassName, useHide } from './hooks.js';
|
|
18
18
|
import { useFormContext } from '../Context/index.js';
|
|
19
19
|
import { useDefaultRender } from '../hooks/useDefaultRender.js';
|
|
20
20
|
import { useDefaultComponents } from '../hooks/index.js';
|
|
21
|
+
import { useFormConfigContext } from '../Context/FormConfigProvider.js';
|
|
21
22
|
|
|
22
|
-
var _excluded = ["hover", "labelWidth", "required", "colon", "label", "itemProps", "children", "helper", "hide", "render", "itemSpan", "hideLabel", "labelAlign"],
|
|
23
|
+
var _excluded = ["hover", "labelWidth", "required", "colon", "label", "itemProps", "children", "helper", "hide", "render", "itemSpan", "hideLabel", "labelAlign", "style"],
|
|
23
24
|
_excluded2 = ["labelAlign"];
|
|
24
25
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
25
26
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
@@ -64,15 +65,19 @@ var Index = function Index(props) {
|
|
|
64
65
|
span: 24
|
|
65
66
|
} : _props$itemSpan,
|
|
66
67
|
_props$hideLabel = props.hideLabel,
|
|
67
|
-
hideLabel = _props$hideLabel === void 0 ? false : _props$hideLabel
|
|
68
|
-
|
|
68
|
+
hideLabel = _props$hideLabel === void 0 ? false : _props$hideLabel;
|
|
69
|
+
props.labelAlign;
|
|
70
|
+
var style = props.style,
|
|
69
71
|
oProps = _objectWithoutProperties(props, _excluded);
|
|
70
|
-
props.labelAlign
|
|
71
|
-
|
|
72
|
+
var _props$labelAlign = props.labelAlign,
|
|
73
|
+
align = _props$labelAlign === void 0 ? "right" : _props$labelAlign,
|
|
74
|
+
inProps = _objectWithoutProperties(props, _excluded2);
|
|
72
75
|
var _useFormContext = useFormContext(),
|
|
73
76
|
form = _useFormContext.form;
|
|
74
77
|
var defaultComponent = useDefaultComponents();
|
|
78
|
+
var formItemStyle = useFormConfigContext("formItemStyle");
|
|
75
79
|
var defaultRender = useDefaultRender(inProps, defaultComponent);
|
|
80
|
+
var className = usePositionClassName(align);
|
|
76
81
|
var hideItem = useHide({
|
|
77
82
|
hide: hide,
|
|
78
83
|
form: form
|
|
@@ -82,15 +87,16 @@ var Index = function Index(props) {
|
|
|
82
87
|
}
|
|
83
88
|
return jsx(Col, _objectSpread(_objectSpread({}, itemSpan), {}, {
|
|
84
89
|
children: jsx(Form.Item, _objectSpread(_objectSpread({
|
|
90
|
+
className: className,
|
|
85
91
|
label: !hideLabel && jsx(Index$1, {
|
|
86
92
|
hover: hover,
|
|
87
93
|
labelWidth: labelWidth,
|
|
88
94
|
required: required,
|
|
89
95
|
colon: colon,
|
|
90
|
-
align: labelAlign,
|
|
91
96
|
children: label
|
|
92
97
|
})
|
|
93
98
|
}, oProps), {}, {
|
|
99
|
+
style: style || formItemStyle,
|
|
94
100
|
colon: false,
|
|
95
101
|
required: false,
|
|
96
102
|
children: jsx(Content, {
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import type { HFormInstance, HItemProps } from "../modal";
|
|
2
|
+
import type { LabelAlignModal } from "../modal";
|
|
2
3
|
export declare const useFormItemDomControl: ({ shouldUpdate, hide, dependencies, }: HItemProps) => ({ shouldUpdate, dependencies, hide, itemSpan, ...props }: import("../modal").HFormItemProps) => JSX.Element;
|
|
3
4
|
interface UseHideUpItemModal extends Omit<HItemProps, "name"> {
|
|
4
5
|
form: HFormInstance;
|
|
5
6
|
}
|
|
6
7
|
export declare const useShouldUpdate: ({ hide, shouldUpdate, }: Omit<HItemProps, "name">) => import("rc-field-form/lib/Field").ShouldUpdate<any> | undefined;
|
|
7
8
|
export declare const useHide: ({ hide, form }: UseHideUpItemModal) => boolean;
|
|
9
|
+
export declare const usePositionClassName: (position: LabelAlignModal) => string;
|
|
8
10
|
export {};
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
import UpFormItem from './UpFormItem.js';
|
|
3
3
|
import RegularFormItem from './RegularFormItem.js';
|
|
4
4
|
import { useMemo } from 'react';
|
|
5
|
+
import { useClassName } from '../../hooks/index.js';
|
|
5
6
|
|
|
6
7
|
var useFormItemDomControl = function useFormItemDomControl(_ref) {
|
|
7
8
|
var shouldUpdate = _ref.shouldUpdate,
|
|
@@ -33,6 +34,17 @@ var useHide = function useHide(_ref3) {
|
|
|
33
34
|
}
|
|
34
35
|
return !!hide;
|
|
35
36
|
};
|
|
37
|
+
var classNameData = {
|
|
38
|
+
top: "hw-form-base-item-top",
|
|
39
|
+
left: "hw-form-base-item-left",
|
|
40
|
+
right: "hw-form-base-item-right",
|
|
41
|
+
topRight: "hw-form-base-item-top-right",
|
|
42
|
+
topLeft: "hw-form-base-item-top-left"
|
|
43
|
+
};
|
|
44
|
+
var usePositionClassName = function usePositionClassName(position) {
|
|
45
|
+
var className = classNameData[position];
|
|
46
|
+
return useClassName(className);
|
|
47
|
+
};
|
|
36
48
|
|
|
37
|
-
export { useFormItemDomControl, useHide, useShouldUpdate };
|
|
49
|
+
export { useFormItemDomControl, useHide, usePositionClassName, useShouldUpdate };
|
|
38
50
|
// powered by hdj
|
package/es/Form/Label.d.ts
CHANGED
package/es/Form/Label.js
CHANGED
|
@@ -19,9 +19,7 @@ var Index = function Index(_ref2) {
|
|
|
19
19
|
children = _ref2.children,
|
|
20
20
|
colon = _ref2.colon,
|
|
21
21
|
required = _ref2.required,
|
|
22
|
-
hover = _ref2.hover
|
|
23
|
-
_ref2$align = _ref2.align,
|
|
24
|
-
align = _ref2$align === void 0 ? "right" : _ref2$align;
|
|
22
|
+
hover = _ref2.hover;
|
|
25
23
|
var _useHover = useHover({
|
|
26
24
|
hover: hover
|
|
27
25
|
}),
|
|
@@ -31,8 +29,7 @@ var Index = function Index(_ref2) {
|
|
|
31
29
|
var className = useClassName(array);
|
|
32
30
|
return jsxs("div", {
|
|
33
31
|
style: {
|
|
34
|
-
width: labelWidth
|
|
35
|
-
textAlign: align
|
|
32
|
+
width: labelWidth
|
|
36
33
|
},
|
|
37
34
|
className: className,
|
|
38
35
|
children: [children, text && jsx("span", {
|
package/es/Form/index.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import type { HFormProps } from "./modal";
|
|
2
|
-
declare const _default: ({ configData, labelWidth, form, request, onFinish, infoRequest, valueType, initialValues, params, onValuesChange, itemSpan, hideLabel: formHideLabel, gutter, submitLoading, labelAlign: formLabelAlign, ...props }: HFormProps) => JSX.Element;
|
|
2
|
+
declare const _default: ({ configData, labelWidth, form, request, onFinish, infoRequest, valueType, initialValues, params, onValuesChange, itemSpan, hideLabel: formHideLabel, gutter, submitLoading, labelAlign: formLabelAlign, formItemStyle, ...props }: HFormProps) => JSX.Element;
|
|
3
3
|
export default _default;
|
package/es/Form/index.js
CHANGED
|
@@ -9,6 +9,7 @@ import 'core-js/modules/es.object.get-own-property-descriptors.js';
|
|
|
9
9
|
import _defineProperty from '@babel/runtime-corejs3/helpers/defineProperty';
|
|
10
10
|
import _objectWithoutProperties from '@babel/runtime-corejs3/helpers/objectWithoutProperties';
|
|
11
11
|
import 'core-js/modules/es.array.map.js';
|
|
12
|
+
import 'core-js/modules/es.function.name.js';
|
|
12
13
|
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
13
14
|
import { useEffect, createElement } from 'react';
|
|
14
15
|
import { Form, Row } from 'antd';
|
|
@@ -19,7 +20,7 @@ import Index from '../PageHandler/index.js';
|
|
|
19
20
|
import useInitConfigData from './hooks/useInitConfigData.js';
|
|
20
21
|
import InitSet from './InitSet.js';
|
|
21
22
|
|
|
22
|
-
var _excluded = ["configData", "labelWidth", "form", "request", "onFinish", "infoRequest", "valueType", "initialValues", "params", "onValuesChange", "itemSpan", "hideLabel", "gutter", "submitLoading", "labelAlign"];
|
|
23
|
+
var _excluded = ["configData", "labelWidth", "form", "request", "onFinish", "infoRequest", "valueType", "initialValues", "params", "onValuesChange", "itemSpan", "hideLabel", "gutter", "submitLoading", "labelAlign", "formItemStyle"];
|
|
23
24
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
24
25
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
25
26
|
var HForm = (function (_ref) {
|
|
@@ -41,6 +42,7 @@ var HForm = (function (_ref) {
|
|
|
41
42
|
gutter = _ref.gutter,
|
|
42
43
|
submitLoading = _ref.submitLoading,
|
|
43
44
|
formLabelAlign = _ref.labelAlign,
|
|
45
|
+
formItemStyle = _ref.formItemStyle,
|
|
44
46
|
props = _objectWithoutProperties(_ref, _excluded);
|
|
45
47
|
var hForm = useCurrentForm(form);
|
|
46
48
|
var _useInitConfigData = useInitConfigData({
|
|
@@ -99,13 +101,17 @@ var HForm = (function (_ref) {
|
|
|
99
101
|
_itemData$hideLabel = itemData.hideLabel,
|
|
100
102
|
hideLabel = _itemData$hideLabel === void 0 ? formHideLabel : _itemData$hideLabel,
|
|
101
103
|
_itemData$labelAlign = itemData.labelAlign,
|
|
102
|
-
labelAlign = _itemData$labelAlign === void 0 ? formLabelAlign : _itemData$labelAlign
|
|
104
|
+
labelAlign = _itemData$labelAlign === void 0 ? formLabelAlign : _itemData$labelAlign,
|
|
105
|
+
name = itemData.name,
|
|
106
|
+
_itemData$style = itemData.style,
|
|
107
|
+
style = _itemData$style === void 0 ? formItemStyle : _itemData$style;
|
|
103
108
|
return /*#__PURE__*/createElement(Item, _objectSpread(_objectSpread({}, itemData), {}, {
|
|
104
|
-
|
|
109
|
+
labelAlign: labelAlign,
|
|
110
|
+
key: name || index,
|
|
111
|
+
style: style,
|
|
105
112
|
hideLabel: hideLabel,
|
|
106
113
|
itemSpan: itemSpan,
|
|
107
|
-
labelWidth: itemLabelWidth || labelWidth
|
|
108
|
-
labelAlign: labelAlign
|
|
114
|
+
labelWidth: itemLabelWidth || labelWidth
|
|
109
115
|
}));
|
|
110
116
|
})
|
|
111
117
|
}), jsx(InitSet, {})]
|
package/es/Form/modal.d.ts
CHANGED
|
@@ -32,7 +32,8 @@ export interface DispatchModal<T = string | string[]> {
|
|
|
32
32
|
manual?: boolean;
|
|
33
33
|
reset?: boolean;
|
|
34
34
|
}
|
|
35
|
-
export
|
|
35
|
+
export type LabelAlignModal = "left" | "right" | "topLeft" | "topRight" | "top";
|
|
36
|
+
export interface HItemProps extends Omit<FormItemProps, "name" | "labelAlign"> {
|
|
36
37
|
type?: string;
|
|
37
38
|
itemProps?: ItemPropsType;
|
|
38
39
|
render?: RenderFun;
|
|
@@ -45,8 +46,9 @@ export interface HItemProps extends Omit<FormItemProps, "name"> {
|
|
|
45
46
|
dispatch?: DispatchModal;
|
|
46
47
|
itemSpan?: ColProps;
|
|
47
48
|
hideLabel?: boolean;
|
|
49
|
+
labelAlign?: LabelAlignModal;
|
|
48
50
|
}
|
|
49
|
-
export interface HFormProps<T = any, R = any> extends Omit<FormProps, "form" | "onFinish"> {
|
|
51
|
+
export interface HFormProps<T = any, R = any> extends Omit<FormProps, "form" | "onFinish" | "labelAlign"> {
|
|
50
52
|
configData: HItemProps[];
|
|
51
53
|
labelWidth?: number;
|
|
52
54
|
request?: (values: T, params?: any) => Promise<R>;
|
|
@@ -59,7 +61,8 @@ export interface HFormProps<T = any, R = any> extends Omit<FormProps, "form" | "
|
|
|
59
61
|
hideLabel?: boolean;
|
|
60
62
|
gutter?: Gutter | [Gutter, Gutter];
|
|
61
63
|
submitLoading?: boolean;
|
|
62
|
-
labelAlign?:
|
|
64
|
+
labelAlign?: LabelAlignModal;
|
|
65
|
+
formItemStyle?: React.CSSProperties;
|
|
63
66
|
}
|
|
64
67
|
export interface HFormItemProps extends HItemProps {
|
|
65
68
|
required?: boolean;
|
|
@@ -68,7 +71,7 @@ export interface HFormItemProps extends HItemProps {
|
|
|
68
71
|
itemSpan?: ColProps;
|
|
69
72
|
initValueProvider?: AddValueFormat;
|
|
70
73
|
subProvider?: AddValueFormat;
|
|
71
|
-
labelAlign?:
|
|
74
|
+
labelAlign?: LabelAlignModal;
|
|
72
75
|
}
|
|
73
76
|
export type argsFn = (...args: any[]) => void;
|
|
74
77
|
export interface FormContextProps {
|
|
@@ -97,6 +100,7 @@ export interface IFormConfigContextProps {
|
|
|
97
100
|
dateRanges?: RangePickerProps["ranges"];
|
|
98
101
|
uploadProps?: ConfigUploadProps;
|
|
99
102
|
defaultComponent?: DefaultComponentModal;
|
|
103
|
+
formItemStyle?: React.CSSProperties;
|
|
100
104
|
}
|
|
101
105
|
interface ActionModal {
|
|
102
106
|
key: string;
|
package/es/config.js
CHANGED
package/es/index.css
CHANGED
|
@@ -33,6 +33,27 @@
|
|
|
33
33
|
align-items: center;
|
|
34
34
|
min-height: 32px;
|
|
35
35
|
}
|
|
36
|
+
.ant-hw-form-base-item-top-left .ant-form-item-label > label {
|
|
37
|
+
height: auto;
|
|
38
|
+
}
|
|
39
|
+
.ant-hw-form-base-item-top-left .ant-hw-form-item-colon {
|
|
40
|
+
text-align: left;
|
|
41
|
+
}
|
|
42
|
+
.ant-hw-form-base-item-top-right .ant-form-item-label > label {
|
|
43
|
+
height: auto;
|
|
44
|
+
}
|
|
45
|
+
.ant-hw-form-base-item-top-right .ant-hw-form-item-colon {
|
|
46
|
+
text-align: right;
|
|
47
|
+
}
|
|
48
|
+
.ant-hw-form-base-item-top .ant-form-item-label > label {
|
|
49
|
+
height: auto;
|
|
50
|
+
}
|
|
51
|
+
.ant-hw-form-base-item-right .ant-hw-form-item-colon {
|
|
52
|
+
text-align: right;
|
|
53
|
+
}
|
|
54
|
+
.ant-hw-form-base-item-left .ant-hw-form-item-colon {
|
|
55
|
+
text-align: left;
|
|
56
|
+
}
|
|
36
57
|
.ant-hw-color-box {
|
|
37
58
|
width: 22px;
|
|
38
59
|
height: 22px;
|
|
@@ -21,8 +21,9 @@ var hooks = require('./hooks.js');
|
|
|
21
21
|
var index = require('../Context/index.js');
|
|
22
22
|
var useDefaultRender = require('../hooks/useDefaultRender.js');
|
|
23
23
|
var index$1 = require('../hooks/index.js');
|
|
24
|
+
var FormConfigProvider = require('../Context/FormConfigProvider.js');
|
|
24
25
|
|
|
25
|
-
var _excluded = ["hover", "labelWidth", "required", "colon", "label", "itemProps", "children", "helper", "hide", "render", "itemSpan", "hideLabel", "labelAlign"],
|
|
26
|
+
var _excluded = ["hover", "labelWidth", "required", "colon", "label", "itemProps", "children", "helper", "hide", "render", "itemSpan", "hideLabel", "labelAlign", "style"],
|
|
26
27
|
_excluded2 = ["labelAlign"];
|
|
27
28
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
28
29
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
@@ -67,15 +68,19 @@ var Index = function Index(props) {
|
|
|
67
68
|
span: 24
|
|
68
69
|
} : _props$itemSpan,
|
|
69
70
|
_props$hideLabel = props.hideLabel,
|
|
70
|
-
hideLabel = _props$hideLabel === void 0 ? false : _props$hideLabel
|
|
71
|
-
|
|
71
|
+
hideLabel = _props$hideLabel === void 0 ? false : _props$hideLabel;
|
|
72
|
+
props.labelAlign;
|
|
73
|
+
var style = props.style,
|
|
72
74
|
oProps = _objectWithoutProperties(props, _excluded);
|
|
73
|
-
props.labelAlign
|
|
74
|
-
|
|
75
|
+
var _props$labelAlign = props.labelAlign,
|
|
76
|
+
align = _props$labelAlign === void 0 ? "right" : _props$labelAlign,
|
|
77
|
+
inProps = _objectWithoutProperties(props, _excluded2);
|
|
75
78
|
var _useFormContext = index.useFormContext(),
|
|
76
79
|
form = _useFormContext.form;
|
|
77
80
|
var defaultComponent = index$1.useDefaultComponents();
|
|
81
|
+
var formItemStyle = FormConfigProvider.useFormConfigContext("formItemStyle");
|
|
78
82
|
var defaultRender = useDefaultRender.useDefaultRender(inProps, defaultComponent);
|
|
83
|
+
var className = hooks.usePositionClassName(align);
|
|
79
84
|
var hideItem = hooks.useHide({
|
|
80
85
|
hide: hide,
|
|
81
86
|
form: form
|
|
@@ -85,15 +90,16 @@ var Index = function Index(props) {
|
|
|
85
90
|
}
|
|
86
91
|
return jsxRuntime.jsx(antd.Col, _objectSpread(_objectSpread({}, itemSpan), {}, {
|
|
87
92
|
children: jsxRuntime.jsx(antd.Form.Item, _objectSpread(_objectSpread({
|
|
93
|
+
className: className,
|
|
88
94
|
label: !hideLabel && jsxRuntime.jsx(Label.default, {
|
|
89
95
|
hover: hover,
|
|
90
96
|
labelWidth: labelWidth,
|
|
91
97
|
required: required,
|
|
92
98
|
colon: colon,
|
|
93
|
-
align: labelAlign,
|
|
94
99
|
children: label
|
|
95
100
|
})
|
|
96
101
|
}, oProps), {}, {
|
|
102
|
+
style: style || formItemStyle,
|
|
97
103
|
colon: false,
|
|
98
104
|
required: false,
|
|
99
105
|
children: jsxRuntime.jsx(Content, {
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import type { HFormInstance, HItemProps } from "../modal";
|
|
2
|
+
import type { LabelAlignModal } from "../modal";
|
|
2
3
|
export declare const useFormItemDomControl: ({ shouldUpdate, hide, dependencies, }: HItemProps) => ({ shouldUpdate, dependencies, hide, itemSpan, ...props }: import("../modal").HFormItemProps) => JSX.Element;
|
|
3
4
|
interface UseHideUpItemModal extends Omit<HItemProps, "name"> {
|
|
4
5
|
form: HFormInstance;
|
|
5
6
|
}
|
|
6
7
|
export declare const useShouldUpdate: ({ hide, shouldUpdate, }: Omit<HItemProps, "name">) => import("rc-field-form/lib/Field").ShouldUpdate<any> | undefined;
|
|
7
8
|
export declare const useHide: ({ hide, form }: UseHideUpItemModal) => boolean;
|
|
9
|
+
export declare const usePositionClassName: (position: LabelAlignModal) => string;
|
|
8
10
|
export {};
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
var UpFormItem = require('./UpFormItem.js');
|
|
4
4
|
var RegularFormItem = require('./RegularFormItem.js');
|
|
5
5
|
var React = require('react');
|
|
6
|
+
var index = require('../../hooks/index.js');
|
|
6
7
|
|
|
7
8
|
var useFormItemDomControl = function useFormItemDomControl(_ref) {
|
|
8
9
|
var shouldUpdate = _ref.shouldUpdate,
|
|
@@ -34,8 +35,20 @@ var useHide = function useHide(_ref3) {
|
|
|
34
35
|
}
|
|
35
36
|
return !!hide;
|
|
36
37
|
};
|
|
38
|
+
var classNameData = {
|
|
39
|
+
top: "hw-form-base-item-top",
|
|
40
|
+
left: "hw-form-base-item-left",
|
|
41
|
+
right: "hw-form-base-item-right",
|
|
42
|
+
topRight: "hw-form-base-item-top-right",
|
|
43
|
+
topLeft: "hw-form-base-item-top-left"
|
|
44
|
+
};
|
|
45
|
+
var usePositionClassName = function usePositionClassName(position) {
|
|
46
|
+
var className = classNameData[position];
|
|
47
|
+
return index.useClassName(className);
|
|
48
|
+
};
|
|
37
49
|
|
|
38
50
|
exports.useFormItemDomControl = useFormItemDomControl;
|
|
39
51
|
exports.useHide = useHide;
|
|
52
|
+
exports.usePositionClassName = usePositionClassName;
|
|
40
53
|
exports.useShouldUpdate = useShouldUpdate;
|
|
41
54
|
// powered by h
|
package/lib/Form/Label.d.ts
CHANGED
package/lib/Form/Label.js
CHANGED
|
@@ -22,9 +22,7 @@ var Index = function Index(_ref2) {
|
|
|
22
22
|
children = _ref2.children,
|
|
23
23
|
colon = _ref2.colon,
|
|
24
24
|
required = _ref2.required,
|
|
25
|
-
hover = _ref2.hover
|
|
26
|
-
_ref2$align = _ref2.align,
|
|
27
|
-
align = _ref2$align === void 0 ? "right" : _ref2$align;
|
|
25
|
+
hover = _ref2.hover;
|
|
28
26
|
var _useHover = useHover({
|
|
29
27
|
hover: hover
|
|
30
28
|
}),
|
|
@@ -34,8 +32,7 @@ var Index = function Index(_ref2) {
|
|
|
34
32
|
var className = index.useClassName(array);
|
|
35
33
|
return jsxRuntime.jsxs("div", {
|
|
36
34
|
style: {
|
|
37
|
-
width: labelWidth
|
|
38
|
-
textAlign: align
|
|
35
|
+
width: labelWidth
|
|
39
36
|
},
|
|
40
37
|
className: className,
|
|
41
38
|
children: [children, text && jsxRuntime.jsx("span", {
|
package/lib/Form/index.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import type { HFormProps } from "./modal";
|
|
2
|
-
declare const _default: ({ configData, labelWidth, form, request, onFinish, infoRequest, valueType, initialValues, params, onValuesChange, itemSpan, hideLabel: formHideLabel, gutter, submitLoading, labelAlign: formLabelAlign, ...props }: HFormProps) => JSX.Element;
|
|
2
|
+
declare const _default: ({ configData, labelWidth, form, request, onFinish, infoRequest, valueType, initialValues, params, onValuesChange, itemSpan, hideLabel: formHideLabel, gutter, submitLoading, labelAlign: formLabelAlign, formItemStyle, ...props }: HFormProps) => JSX.Element;
|
|
3
3
|
export default _default;
|
package/lib/Form/index.js
CHANGED
|
@@ -12,6 +12,7 @@ require('core-js/modules/es.object.get-own-property-descriptors.js');
|
|
|
12
12
|
var _defineProperty = require('@babel/runtime-corejs3/helpers/defineProperty');
|
|
13
13
|
var _objectWithoutProperties = require('@babel/runtime-corejs3/helpers/objectWithoutProperties');
|
|
14
14
|
require('core-js/modules/es.array.map.js');
|
|
15
|
+
require('core-js/modules/es.function.name.js');
|
|
15
16
|
var jsxRuntime = require('react/jsx-runtime');
|
|
16
17
|
var React = require('react');
|
|
17
18
|
var antd = require('antd');
|
|
@@ -22,7 +23,7 @@ var index$1 = require('../PageHandler/index.js');
|
|
|
22
23
|
var useInitConfigData = require('./hooks/useInitConfigData.js');
|
|
23
24
|
var InitSet = require('./InitSet.js');
|
|
24
25
|
|
|
25
|
-
var _excluded = ["configData", "labelWidth", "form", "request", "onFinish", "infoRequest", "valueType", "initialValues", "params", "onValuesChange", "itemSpan", "hideLabel", "gutter", "submitLoading", "labelAlign"];
|
|
26
|
+
var _excluded = ["configData", "labelWidth", "form", "request", "onFinish", "infoRequest", "valueType", "initialValues", "params", "onValuesChange", "itemSpan", "hideLabel", "gutter", "submitLoading", "labelAlign", "formItemStyle"];
|
|
26
27
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
27
28
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
28
29
|
var HForm = (function (_ref) {
|
|
@@ -44,6 +45,7 @@ var HForm = (function (_ref) {
|
|
|
44
45
|
gutter = _ref.gutter,
|
|
45
46
|
submitLoading = _ref.submitLoading,
|
|
46
47
|
formLabelAlign = _ref.labelAlign,
|
|
48
|
+
formItemStyle = _ref.formItemStyle,
|
|
47
49
|
props = _objectWithoutProperties(_ref, _excluded);
|
|
48
50
|
var hForm = index.useCurrentForm(form);
|
|
49
51
|
var _useInitConfigData = useInitConfigData.default({
|
|
@@ -102,13 +104,17 @@ var HForm = (function (_ref) {
|
|
|
102
104
|
_itemData$hideLabel = itemData.hideLabel,
|
|
103
105
|
hideLabel = _itemData$hideLabel === void 0 ? formHideLabel : _itemData$hideLabel,
|
|
104
106
|
_itemData$labelAlign = itemData.labelAlign,
|
|
105
|
-
labelAlign = _itemData$labelAlign === void 0 ? formLabelAlign : _itemData$labelAlign
|
|
107
|
+
labelAlign = _itemData$labelAlign === void 0 ? formLabelAlign : _itemData$labelAlign,
|
|
108
|
+
name = itemData.name,
|
|
109
|
+
_itemData$style = itemData.style,
|
|
110
|
+
style = _itemData$style === void 0 ? formItemStyle : _itemData$style;
|
|
106
111
|
return /*#__PURE__*/React.createElement(index$3.default, _objectSpread(_objectSpread({}, itemData), {}, {
|
|
107
|
-
|
|
112
|
+
labelAlign: labelAlign,
|
|
113
|
+
key: name || index,
|
|
114
|
+
style: style,
|
|
108
115
|
hideLabel: hideLabel,
|
|
109
116
|
itemSpan: itemSpan,
|
|
110
|
-
labelWidth: itemLabelWidth || labelWidth
|
|
111
|
-
labelAlign: labelAlign
|
|
117
|
+
labelWidth: itemLabelWidth || labelWidth
|
|
112
118
|
}));
|
|
113
119
|
})
|
|
114
120
|
}), jsxRuntime.jsx(InitSet.default, {})]
|
package/lib/Form/modal.d.ts
CHANGED
|
@@ -32,7 +32,8 @@ export interface DispatchModal<T = string | string[]> {
|
|
|
32
32
|
manual?: boolean;
|
|
33
33
|
reset?: boolean;
|
|
34
34
|
}
|
|
35
|
-
export
|
|
35
|
+
export type LabelAlignModal = "left" | "right" | "topLeft" | "topRight" | "top";
|
|
36
|
+
export interface HItemProps extends Omit<FormItemProps, "name" | "labelAlign"> {
|
|
36
37
|
type?: string;
|
|
37
38
|
itemProps?: ItemPropsType;
|
|
38
39
|
render?: RenderFun;
|
|
@@ -45,8 +46,9 @@ export interface HItemProps extends Omit<FormItemProps, "name"> {
|
|
|
45
46
|
dispatch?: DispatchModal;
|
|
46
47
|
itemSpan?: ColProps;
|
|
47
48
|
hideLabel?: boolean;
|
|
49
|
+
labelAlign?: LabelAlignModal;
|
|
48
50
|
}
|
|
49
|
-
export interface HFormProps<T = any, R = any> extends Omit<FormProps, "form" | "onFinish"> {
|
|
51
|
+
export interface HFormProps<T = any, R = any> extends Omit<FormProps, "form" | "onFinish" | "labelAlign"> {
|
|
50
52
|
configData: HItemProps[];
|
|
51
53
|
labelWidth?: number;
|
|
52
54
|
request?: (values: T, params?: any) => Promise<R>;
|
|
@@ -59,7 +61,8 @@ export interface HFormProps<T = any, R = any> extends Omit<FormProps, "form" | "
|
|
|
59
61
|
hideLabel?: boolean;
|
|
60
62
|
gutter?: Gutter | [Gutter, Gutter];
|
|
61
63
|
submitLoading?: boolean;
|
|
62
|
-
labelAlign?:
|
|
64
|
+
labelAlign?: LabelAlignModal;
|
|
65
|
+
formItemStyle?: React.CSSProperties;
|
|
63
66
|
}
|
|
64
67
|
export interface HFormItemProps extends HItemProps {
|
|
65
68
|
required?: boolean;
|
|
@@ -68,7 +71,7 @@ export interface HFormItemProps extends HItemProps {
|
|
|
68
71
|
itemSpan?: ColProps;
|
|
69
72
|
initValueProvider?: AddValueFormat;
|
|
70
73
|
subProvider?: AddValueFormat;
|
|
71
|
-
labelAlign?:
|
|
74
|
+
labelAlign?: LabelAlignModal;
|
|
72
75
|
}
|
|
73
76
|
export type argsFn = (...args: any[]) => void;
|
|
74
77
|
export interface FormContextProps {
|
|
@@ -97,6 +100,7 @@ export interface IFormConfigContextProps {
|
|
|
97
100
|
dateRanges?: RangePickerProps["ranges"];
|
|
98
101
|
uploadProps?: ConfigUploadProps;
|
|
99
102
|
defaultComponent?: DefaultComponentModal;
|
|
103
|
+
formItemStyle?: React.CSSProperties;
|
|
100
104
|
}
|
|
101
105
|
interface ActionModal {
|
|
102
106
|
key: string;
|
package/lib/config.js
CHANGED
package/lib/index.css
CHANGED
|
@@ -33,6 +33,27 @@
|
|
|
33
33
|
align-items: center;
|
|
34
34
|
min-height: 32px;
|
|
35
35
|
}
|
|
36
|
+
.ant-hw-form-base-item-top-left .ant-form-item-label > label {
|
|
37
|
+
height: auto;
|
|
38
|
+
}
|
|
39
|
+
.ant-hw-form-base-item-top-left .ant-hw-form-item-colon {
|
|
40
|
+
text-align: left;
|
|
41
|
+
}
|
|
42
|
+
.ant-hw-form-base-item-top-right .ant-form-item-label > label {
|
|
43
|
+
height: auto;
|
|
44
|
+
}
|
|
45
|
+
.ant-hw-form-base-item-top-right .ant-hw-form-item-colon {
|
|
46
|
+
text-align: right;
|
|
47
|
+
}
|
|
48
|
+
.ant-hw-form-base-item-top .ant-form-item-label > label {
|
|
49
|
+
height: auto;
|
|
50
|
+
}
|
|
51
|
+
.ant-hw-form-base-item-right .ant-hw-form-item-colon {
|
|
52
|
+
text-align: right;
|
|
53
|
+
}
|
|
54
|
+
.ant-hw-form-base-item-left .ant-hw-form-item-colon {
|
|
55
|
+
text-align: left;
|
|
56
|
+
}
|
|
36
57
|
.ant-hw-color-box {
|
|
37
58
|
width: 22px;
|
|
38
59
|
height: 22px;
|
package/package.json
CHANGED
|
@@ -3,12 +3,13 @@ import { Form, Space, Col } from "antd";
|
|
|
3
3
|
import React from "react";
|
|
4
4
|
import Helper from "./Helper";
|
|
5
5
|
import { useClassName } from "../../hooks";
|
|
6
|
-
import { useHide } from "./hooks";
|
|
6
|
+
import { useHide, usePositionClassName } from "./hooks";
|
|
7
7
|
import { useFormContext } from "../Context";
|
|
8
8
|
import type { HItemProps } from "../modal";
|
|
9
9
|
import { useDefaultRender } from "../hooks/useDefaultRender";
|
|
10
10
|
import type { HFormItemProps } from "../modal";
|
|
11
11
|
import { useDefaultComponents } from "../hooks";
|
|
12
|
+
import {useFormConfigContext} from "../Context/FormConfigProvider";
|
|
12
13
|
|
|
13
14
|
interface ContentProps extends Omit<HItemProps, "name"> {
|
|
14
15
|
value?: any;
|
|
@@ -30,7 +31,6 @@ const Content: React.FC<ContentProps> = ({
|
|
|
30
31
|
</Space>
|
|
31
32
|
);
|
|
32
33
|
};
|
|
33
|
-
|
|
34
34
|
const Index: React.FC<HFormItemProps> = (props) => {
|
|
35
35
|
const {
|
|
36
36
|
hover,
|
|
@@ -46,12 +46,15 @@ const Index: React.FC<HFormItemProps> = (props) => {
|
|
|
46
46
|
itemSpan = { span: 24 },
|
|
47
47
|
hideLabel = false,
|
|
48
48
|
labelAlign,
|
|
49
|
+
style,
|
|
49
50
|
...oProps
|
|
50
51
|
} = props;
|
|
51
|
-
const { labelAlign: align, ...inProps } = props;
|
|
52
|
+
const { labelAlign: align = "right", ...inProps } = props;
|
|
52
53
|
const { form } = useFormContext();
|
|
53
54
|
const defaultComponent = useDefaultComponents();
|
|
55
|
+
const formItemStyle = useFormConfigContext("formItemStyle");
|
|
54
56
|
const defaultRender = useDefaultRender(inProps, defaultComponent);
|
|
57
|
+
const className = usePositionClassName(align);
|
|
55
58
|
const hideItem = useHide({ hide, form });
|
|
56
59
|
if (hideItem) {
|
|
57
60
|
return null;
|
|
@@ -59,6 +62,7 @@ const Index: React.FC<HFormItemProps> = (props) => {
|
|
|
59
62
|
return (
|
|
60
63
|
<Col {...itemSpan}>
|
|
61
64
|
<Form.Item
|
|
65
|
+
className={className}
|
|
62
66
|
label={
|
|
63
67
|
!hideLabel && (
|
|
64
68
|
<Label
|
|
@@ -66,13 +70,13 @@ const Index: React.FC<HFormItemProps> = (props) => {
|
|
|
66
70
|
labelWidth={labelWidth}
|
|
67
71
|
required={required}
|
|
68
72
|
colon={colon}
|
|
69
|
-
align={labelAlign}
|
|
70
73
|
>
|
|
71
74
|
{label}
|
|
72
75
|
</Label>
|
|
73
76
|
)
|
|
74
77
|
}
|
|
75
78
|
{...oProps}
|
|
79
|
+
style={style||formItemStyle}
|
|
76
80
|
colon={false}
|
|
77
81
|
required={false}
|
|
78
82
|
>
|
|
@@ -2,6 +2,8 @@ import UpFormItem from "./UpFormItem";
|
|
|
2
2
|
import RegularFormItem from "./RegularFormItem";
|
|
3
3
|
import { useMemo } from "react";
|
|
4
4
|
import type { HFormInstance, HItemProps } from "../modal";
|
|
5
|
+
import type { LabelAlignModal } from "../modal";
|
|
6
|
+
import { useClassName } from "../../hooks";
|
|
5
7
|
|
|
6
8
|
export const useFormItemDomControl = ({
|
|
7
9
|
shouldUpdate,
|
|
@@ -38,3 +40,15 @@ export const useHide = ({ hide, form }: UseHideUpItemModal) => {
|
|
|
38
40
|
}
|
|
39
41
|
return !!hide;
|
|
40
42
|
};
|
|
43
|
+
|
|
44
|
+
const classNameData = {
|
|
45
|
+
top: "hw-form-base-item-top",
|
|
46
|
+
left: "hw-form-base-item-left",
|
|
47
|
+
right: "hw-form-base-item-right",
|
|
48
|
+
topRight: "hw-form-base-item-top-right",
|
|
49
|
+
topLeft: "hw-form-base-item-top-left",
|
|
50
|
+
};
|
|
51
|
+
export const usePositionClassName = (position: LabelAlignModal) => {
|
|
52
|
+
const className = classNameData[position];
|
|
53
|
+
return useClassName(className);
|
|
54
|
+
};
|
|
@@ -9,7 +9,6 @@ interface IProps {
|
|
|
9
9
|
hover?: string | HoverModal;
|
|
10
10
|
colon?: boolean;
|
|
11
11
|
required?: boolean;
|
|
12
|
-
align?: "left" | "right";
|
|
13
12
|
}
|
|
14
13
|
const useHover = ({ hover }: IProps) => {
|
|
15
14
|
if (!hover || typeof hover === "string") {
|
|
@@ -26,7 +25,6 @@ const Index: React.FC<IProps> = ({
|
|
|
26
25
|
colon,
|
|
27
26
|
required,
|
|
28
27
|
hover,
|
|
29
|
-
align = "right",
|
|
30
28
|
}) => {
|
|
31
29
|
const { text, icon } = useHover({ hover });
|
|
32
30
|
const array = [
|
|
@@ -36,7 +34,7 @@ const Index: React.FC<IProps> = ({
|
|
|
36
34
|
|
|
37
35
|
const className = useClassName(array);
|
|
38
36
|
return (
|
|
39
|
-
<div style={{ width: labelWidth
|
|
37
|
+
<div style={{ width: labelWidth }} className={className}>
|
|
40
38
|
{children}
|
|
41
39
|
{text && (
|
|
42
40
|
<span style={{ marginLeft: 4 }}>
|
|
@@ -20,3 +20,35 @@
|
|
|
20
20
|
align-items: center;
|
|
21
21
|
min-height: 32px;
|
|
22
22
|
}
|
|
23
|
+
.@{ant-prefix}-hw-form-base-item-top-left {
|
|
24
|
+
.@{ant-prefix}-form-item-label > label {
|
|
25
|
+
height: auto;
|
|
26
|
+
}
|
|
27
|
+
.@{ant-prefix}-hw-form-item-colon {
|
|
28
|
+
text-align: left;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
.@{ant-prefix}-hw-form-base-item-top-right {
|
|
32
|
+
.@{ant-prefix}-form-item-label > label {
|
|
33
|
+
height: auto;
|
|
34
|
+
}
|
|
35
|
+
.@{ant-prefix}-hw-form-item-colon {
|
|
36
|
+
text-align: right;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
.@{ant-prefix}-hw-form-base-item-top {
|
|
40
|
+
.@{ant-prefix}-form-item-label > label {
|
|
41
|
+
height: auto;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
.@{ant-prefix}-hw-form-base-item-right {
|
|
45
|
+
.@{ant-prefix}-hw-form-item-colon {
|
|
46
|
+
text-align: right;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
.@{ant-prefix}-hw-form-base-item-left {
|
|
51
|
+
.@{ant-prefix}-hw-form-item-colon {
|
|
52
|
+
text-align: left;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
@@ -24,6 +24,7 @@ export default ({
|
|
|
24
24
|
gutter,
|
|
25
25
|
submitLoading,
|
|
26
26
|
labelAlign: formLabelAlign,
|
|
27
|
+
formItemStyle,
|
|
27
28
|
...props
|
|
28
29
|
}: HFormProps) => {
|
|
29
30
|
const hForm = useCurrentForm(form);
|
|
@@ -80,15 +81,18 @@ export default ({
|
|
|
80
81
|
labelWidth: itemLabelWidth,
|
|
81
82
|
hideLabel = formHideLabel,
|
|
82
83
|
labelAlign = formLabelAlign,
|
|
84
|
+
name,
|
|
85
|
+
style=formItemStyle,
|
|
83
86
|
} = itemData;
|
|
84
87
|
return (
|
|
85
88
|
<Item
|
|
86
89
|
{...itemData}
|
|
87
|
-
|
|
90
|
+
labelAlign={labelAlign}
|
|
91
|
+
key={name||index}
|
|
92
|
+
style={style}
|
|
88
93
|
hideLabel={hideLabel}
|
|
89
94
|
itemSpan={itemSpan}
|
|
90
95
|
labelWidth={itemLabelWidth || labelWidth}
|
|
91
|
-
labelAlign={labelAlign}
|
|
92
96
|
/>
|
|
93
97
|
);
|
|
94
98
|
})}
|
|
@@ -75,7 +75,9 @@ export interface DispatchModal<T = string | string[]> {
|
|
|
75
75
|
manual?: boolean;
|
|
76
76
|
reset?: boolean;
|
|
77
77
|
}
|
|
78
|
-
export
|
|
78
|
+
export type LabelAlignModal = "left" | "right" | "topLeft" | "topRight" | "top";
|
|
79
|
+
|
|
80
|
+
export interface HItemProps extends Omit<FormItemProps, "name"|"labelAlign"> {
|
|
79
81
|
type?: string;
|
|
80
82
|
itemProps?: ItemPropsType;
|
|
81
83
|
render?: RenderFun;
|
|
@@ -90,10 +92,10 @@ export interface HItemProps extends Omit<FormItemProps, "name"> {
|
|
|
90
92
|
dispatch?: DispatchModal;
|
|
91
93
|
itemSpan?: ColProps;
|
|
92
94
|
hideLabel?: boolean;
|
|
95
|
+
labelAlign?: LabelAlignModal;
|
|
93
96
|
}
|
|
94
|
-
|
|
95
97
|
export interface HFormProps<T = any, R = any>
|
|
96
|
-
extends Omit<FormProps, "form" | "onFinish"> {
|
|
98
|
+
extends Omit<FormProps, "form" | "onFinish"|"labelAlign"> {
|
|
97
99
|
configData: HItemProps[];
|
|
98
100
|
labelWidth?: number;
|
|
99
101
|
request?: (values: T, params?: any) => Promise<R>;
|
|
@@ -106,7 +108,8 @@ export interface HFormProps<T = any, R = any>
|
|
|
106
108
|
hideLabel?: boolean;
|
|
107
109
|
gutter?: Gutter | [Gutter, Gutter];
|
|
108
110
|
submitLoading?: boolean;
|
|
109
|
-
labelAlign?:
|
|
111
|
+
labelAlign?: LabelAlignModal;
|
|
112
|
+
formItemStyle?:React.CSSProperties;
|
|
110
113
|
}
|
|
111
114
|
export interface HFormItemProps extends HItemProps {
|
|
112
115
|
required?: boolean;
|
|
@@ -115,7 +118,7 @@ export interface HFormItemProps extends HItemProps {
|
|
|
115
118
|
itemSpan?: ColProps;
|
|
116
119
|
initValueProvider?: AddValueFormat;
|
|
117
120
|
subProvider?: AddValueFormat;
|
|
118
|
-
labelAlign?:
|
|
121
|
+
labelAlign?: LabelAlignModal;
|
|
119
122
|
}
|
|
120
123
|
export type argsFn = (...args: any[]) => void;
|
|
121
124
|
export interface FormContextProps {
|
|
@@ -148,6 +151,7 @@ export interface IFormConfigContextProps {
|
|
|
148
151
|
dateRanges?: RangePickerProps["ranges"];
|
|
149
152
|
uploadProps?: ConfigUploadProps;
|
|
150
153
|
defaultComponent?: DefaultComponentModal;
|
|
154
|
+
formItemStyle?:React.CSSProperties
|
|
151
155
|
}
|
|
152
156
|
interface ActionModal {
|
|
153
157
|
key: string;
|
package/src/components/config.ts
CHANGED
package/src/pages/Form/index.tsx
CHANGED
|
@@ -14,64 +14,6 @@ const formData = (options) => {
|
|
|
14
14
|
},
|
|
15
15
|
];
|
|
16
16
|
return [
|
|
17
|
-
{
|
|
18
|
-
label: "输入框",
|
|
19
|
-
name: "name",
|
|
20
|
-
rules: [
|
|
21
|
-
() => {
|
|
22
|
-
return {
|
|
23
|
-
required: true,
|
|
24
|
-
};
|
|
25
|
-
},
|
|
26
|
-
],
|
|
27
|
-
},
|
|
28
|
-
{
|
|
29
|
-
label: "数字",
|
|
30
|
-
name: "sz",
|
|
31
|
-
type: "inputNumber",
|
|
32
|
-
rules: [{ required: true }],
|
|
33
|
-
},
|
|
34
|
-
{
|
|
35
|
-
label: "下拉框213",
|
|
36
|
-
name: "select",
|
|
37
|
-
type: "select",
|
|
38
|
-
style:{
|
|
39
|
-
marginBottom:8
|
|
40
|
-
},
|
|
41
|
-
dispatch: {
|
|
42
|
-
fnKey: "reload",
|
|
43
|
-
dependencies: ["selectInput", "sz"],
|
|
44
|
-
},
|
|
45
|
-
itemProps: {
|
|
46
|
-
options: op,
|
|
47
|
-
showSearch: true,
|
|
48
|
-
allowClear: true,
|
|
49
|
-
mode: "multiple",
|
|
50
|
-
},
|
|
51
|
-
rules: [{ required: true }],
|
|
52
|
-
},
|
|
53
|
-
{
|
|
54
|
-
label: "下拉输入框",
|
|
55
|
-
name: "selectInput",
|
|
56
|
-
type: "selectInput",
|
|
57
|
-
rules: [{ required: true }],
|
|
58
|
-
itemProps: {
|
|
59
|
-
valueName: {
|
|
60
|
-
select: "op",
|
|
61
|
-
input: "opInput",
|
|
62
|
-
},
|
|
63
|
-
selectProps: {
|
|
64
|
-
options: [{ label: "测试", value: 1 }],
|
|
65
|
-
},
|
|
66
|
-
},
|
|
67
|
-
},
|
|
68
|
-
{
|
|
69
|
-
label: "按钮输入框",
|
|
70
|
-
name: "buttonInput",
|
|
71
|
-
type: "buttonInput",
|
|
72
|
-
children: "点击",
|
|
73
|
-
rules: [{ required: true }],
|
|
74
|
-
},
|
|
75
17
|
{
|
|
76
18
|
label: "选择",
|
|
77
19
|
name: "checkboxGroup",
|
|
@@ -83,6 +25,10 @@ const formData = (options) => {
|
|
|
83
25
|
{ value: "选择2", key: "check2" },
|
|
84
26
|
],
|
|
85
27
|
direction: "vertical",
|
|
28
|
+
labelAlign: "topLeft",
|
|
29
|
+
style:{
|
|
30
|
+
marginBottom:200
|
|
31
|
+
}
|
|
86
32
|
},
|
|
87
33
|
{
|
|
88
34
|
label: "开关",
|
|
@@ -96,100 +42,6 @@ const formData = (options) => {
|
|
|
96
42
|
},
|
|
97
43
|
},
|
|
98
44
|
},
|
|
99
|
-
{
|
|
100
|
-
label: "时间",
|
|
101
|
-
name: "datePicker",
|
|
102
|
-
type: "datePicker",
|
|
103
|
-
hover: "时间选择",
|
|
104
|
-
helper: "帮助我",
|
|
105
|
-
itemProps: {
|
|
106
|
-
subProvider: (item, val) => {
|
|
107
|
-
return {
|
|
108
|
-
datePicker: "fakfjkfjsklfjskljsak",
|
|
109
|
-
};
|
|
110
|
-
},
|
|
111
|
-
},
|
|
112
|
-
rules: [{ required: true }],
|
|
113
|
-
},
|
|
114
|
-
{
|
|
115
|
-
label: "时间段",
|
|
116
|
-
name: "rangePicker",
|
|
117
|
-
type: "rangePicker",
|
|
118
|
-
helper: "帮助我",
|
|
119
|
-
rules: [{ required: true }],
|
|
120
|
-
itemProps: {
|
|
121
|
-
valueMap: {
|
|
122
|
-
start: "testStart",
|
|
123
|
-
end: "testEnd",
|
|
124
|
-
},
|
|
125
|
-
},
|
|
126
|
-
},
|
|
127
|
-
{
|
|
128
|
-
label: "时分秒",
|
|
129
|
-
name: "timePicker",
|
|
130
|
-
type: "timePicker",
|
|
131
|
-
rules: [{ required: true }],
|
|
132
|
-
},
|
|
133
|
-
{
|
|
134
|
-
label: "文件",
|
|
135
|
-
name: "upload",
|
|
136
|
-
type: "upload",
|
|
137
|
-
rules: [{ required: true }],
|
|
138
|
-
},
|
|
139
|
-
{
|
|
140
|
-
label: "地址文件",
|
|
141
|
-
name: "urlUpload",
|
|
142
|
-
type: "urlUpload",
|
|
143
|
-
itemProps: {
|
|
144
|
-
maxCount: 3,
|
|
145
|
-
},
|
|
146
|
-
rules: [{ required: true }],
|
|
147
|
-
},
|
|
148
|
-
{
|
|
149
|
-
label: "颜色",
|
|
150
|
-
name: "colorInput",
|
|
151
|
-
type: "colorInput",
|
|
152
|
-
},
|
|
153
|
-
{
|
|
154
|
-
label: "测试",
|
|
155
|
-
type: "test",
|
|
156
|
-
},
|
|
157
|
-
{
|
|
158
|
-
label: "多级",
|
|
159
|
-
type: "cascader",
|
|
160
|
-
name: "cascader",
|
|
161
|
-
itemProps: {
|
|
162
|
-
options: [
|
|
163
|
-
{
|
|
164
|
-
value: "多选1",
|
|
165
|
-
key: 1,
|
|
166
|
-
},
|
|
167
|
-
],
|
|
168
|
-
},
|
|
169
|
-
},
|
|
170
|
-
{
|
|
171
|
-
label: "验证码",
|
|
172
|
-
type: "verificationCodeInput",
|
|
173
|
-
name: "verificationCodeInput",
|
|
174
|
-
itemProps: {
|
|
175
|
-
request: () => {
|
|
176
|
-
return Promise.resolve({ code: 200 });
|
|
177
|
-
},
|
|
178
|
-
},
|
|
179
|
-
},
|
|
180
|
-
{
|
|
181
|
-
label: "去空input",
|
|
182
|
-
type: "trimInput",
|
|
183
|
-
name: "trimInput",
|
|
184
|
-
},
|
|
185
|
-
{
|
|
186
|
-
label: "去空textArea",
|
|
187
|
-
type: "trimTextArea",
|
|
188
|
-
name: "trimTextArea",
|
|
189
|
-
},
|
|
190
|
-
{
|
|
191
|
-
type: "submit",
|
|
192
|
-
},
|
|
193
45
|
{
|
|
194
46
|
type: "submit",
|
|
195
47
|
itemProps: {
|
|
@@ -261,6 +113,9 @@ export default () => {
|
|
|
261
113
|
defaultComponent={{
|
|
262
114
|
test: Test,
|
|
263
115
|
}}
|
|
116
|
+
formItemStyle={{
|
|
117
|
+
marginBottom:100
|
|
118
|
+
}}
|
|
264
119
|
fieldNames={{
|
|
265
120
|
label: "value",
|
|
266
121
|
value: "key",
|
|
@@ -270,7 +125,10 @@ export default () => {
|
|
|
270
125
|
configData={formData(options)}
|
|
271
126
|
labelWidth={200}
|
|
272
127
|
form={form}
|
|
273
|
-
|
|
128
|
+
formItemStyle={{
|
|
129
|
+
marginBottom:10
|
|
130
|
+
}}
|
|
131
|
+
labelAlign={"right"}
|
|
274
132
|
submitLoading={true}
|
|
275
133
|
onFinish={(value) => {
|
|
276
134
|
console.log(value);
|