@hw-component/form 1.9.4 → 1.9.5
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 +9 -1
- package/es/Form/FormItem/UpFormItem.d.ts +1 -1
- package/es/Form/FormItem/UpFormItem.js +6 -3
- package/es/Form/FormItem/hooks.d.ts +2 -2
- package/es/Form/FormItem/hooks.js +8 -3
- package/es/Form/modal.d.ts +2 -1
- package/lib/Form/FormItem/BasicItem.js +9 -1
- package/lib/Form/FormItem/UpFormItem.d.ts +1 -1
- package/lib/Form/FormItem/UpFormItem.js +6 -3
- package/lib/Form/FormItem/hooks.d.ts +2 -2
- package/lib/Form/FormItem/hooks.js +8 -3
- package/lib/Form/modal.d.ts +2 -1
- package/package.json +1 -1
- package/src/components/Form/FormItem/BasicItem.tsx +8 -1
- package/src/components/Form/FormItem/UpFormItem.tsx +3 -2
- package/src/components/Form/FormItem/hooks.tsx +6 -1
- package/src/components/Form/index.tsx +1 -2
- package/src/components/Form/modal.ts +2 -1
- package/src/pages/Form/index.tsx +22 -2
|
@@ -21,7 +21,7 @@ import { useDefaultRender } from '../hooks/useDefaultRender.js';
|
|
|
21
21
|
import { useDefaultComponents } from '../hooks/index.js';
|
|
22
22
|
import { useFormConfigContext } from '../Context/FormConfigProvider.js';
|
|
23
23
|
|
|
24
|
-
var _excluded = ["hover", "labelWidth", "required", "colon", "label", "itemProps", "children", "helper", "hide", "render", "itemSpan", "hideLabel", "labelAlign", "style", "className", "noStyle"],
|
|
24
|
+
var _excluded = ["hover", "labelWidth", "required", "colon", "label", "itemProps", "children", "helper", "hide", "render", "itemSpan", "hideLabel", "labelAlign", "style", "className", "noStyle", "hidden"],
|
|
25
25
|
_excluded2 = ["labelAlign", "itemProps"];
|
|
26
26
|
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
27
|
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; }
|
|
@@ -72,6 +72,7 @@ var Index = function Index(props) {
|
|
|
72
72
|
colClassName = props.className,
|
|
73
73
|
_props$noStyle = props.noStyle,
|
|
74
74
|
noStyle = _props$noStyle === void 0 ? false : _props$noStyle,
|
|
75
|
+
hidden = props.hidden,
|
|
75
76
|
oProps = _objectWithoutProperties(props, _excluded);
|
|
76
77
|
var _props$labelAlign = props.labelAlign,
|
|
77
78
|
align = _props$labelAlign === void 0 ? "right" : _props$labelAlign,
|
|
@@ -92,6 +93,10 @@ var Index = function Index(props) {
|
|
|
92
93
|
hide: hide,
|
|
93
94
|
form: form
|
|
94
95
|
});
|
|
96
|
+
var disHide = useHide({
|
|
97
|
+
hide: hidden,
|
|
98
|
+
form: form
|
|
99
|
+
});
|
|
95
100
|
var formItemLabel = useFormItemLabel(form, label);
|
|
96
101
|
var itemHover = useFormItemHover(form, hover);
|
|
97
102
|
if (hideItem) {
|
|
@@ -99,6 +104,9 @@ var Index = function Index(props) {
|
|
|
99
104
|
}
|
|
100
105
|
return jsx(Col, _objectSpread(_objectSpread({}, itemSpan), {}, {
|
|
101
106
|
className: "".concat(colClassName, " ").concat(itemClassName),
|
|
107
|
+
style: {
|
|
108
|
+
display: disHide ? "none" : "block"
|
|
109
|
+
},
|
|
102
110
|
children: jsx(Form.Item, _objectSpread(_objectSpread({
|
|
103
111
|
className: className,
|
|
104
112
|
label: !hideLabel && jsx(Index$1, {
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import type { HFormItemProps } from "../modal";
|
|
2
|
-
declare const _default: ({ shouldUpdate, dependencies, hide, itemSpan, ...props }: HFormItemProps) => JSX.Element;
|
|
2
|
+
declare const _default: ({ shouldUpdate, dependencies, hide, itemSpan, hidden, ...props }: HFormItemProps) => JSX.Element;
|
|
3
3
|
export default _default;
|
|
@@ -13,7 +13,7 @@ import { Form } from 'antd';
|
|
|
13
13
|
import Index from './BasicItem.js';
|
|
14
14
|
import { useShouldUpdate } from './hooks.js';
|
|
15
15
|
|
|
16
|
-
var _excluded = ["shouldUpdate", "dependencies", "hide", "itemSpan"];
|
|
16
|
+
var _excluded = ["shouldUpdate", "dependencies", "hide", "itemSpan", "hidden"];
|
|
17
17
|
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; }
|
|
18
18
|
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; }
|
|
19
19
|
var Item = Form.Item;
|
|
@@ -22,10 +22,12 @@ var UpFormItem = (function (_ref) {
|
|
|
22
22
|
dependencies = _ref.dependencies,
|
|
23
23
|
hide = _ref.hide,
|
|
24
24
|
itemSpan = _ref.itemSpan,
|
|
25
|
+
hidden = _ref.hidden,
|
|
25
26
|
props = _objectWithoutProperties(_ref, _excluded);
|
|
26
27
|
var resultShouldUpdate = useShouldUpdate({
|
|
27
28
|
shouldUpdate: shouldUpdate,
|
|
28
|
-
hide: hide
|
|
29
|
+
hide: hide,
|
|
30
|
+
hidden: hidden
|
|
29
31
|
});
|
|
30
32
|
return jsx(Item, {
|
|
31
33
|
shouldUpdate: resultShouldUpdate,
|
|
@@ -34,7 +36,8 @@ var UpFormItem = (function (_ref) {
|
|
|
34
36
|
children: function children() {
|
|
35
37
|
return jsx(Index, _objectSpread({
|
|
36
38
|
hide: hide,
|
|
37
|
-
itemSpan: itemSpan
|
|
39
|
+
itemSpan: itemSpan,
|
|
40
|
+
hidden: hidden
|
|
38
41
|
}, props));
|
|
39
42
|
}
|
|
40
43
|
});
|
|
@@ -2,11 +2,11 @@ import type React from "react";
|
|
|
2
2
|
import type { HFormInstance, HItemProps, HoverFn, HoverModal } from "../modal";
|
|
3
3
|
import type { LabelAlignModal } from "../modal";
|
|
4
4
|
import type { HelperModal } from "../modal";
|
|
5
|
-
export declare const useFormItemDomControl: ({ shouldUpdate, hide, dependencies, }: HItemProps) => ({ shouldUpdate, dependencies, hide, itemSpan, ...props }: import("../modal").HFormItemProps) => JSX.Element;
|
|
5
|
+
export declare const useFormItemDomControl: ({ shouldUpdate, hide, dependencies, hidden, }: HItemProps) => ({ shouldUpdate, dependencies, hide, itemSpan, hidden, ...props }: import("../modal").HFormItemProps) => JSX.Element;
|
|
6
6
|
interface UseHideUpItemModal extends Omit<HItemProps, "name"> {
|
|
7
7
|
form: HFormInstance;
|
|
8
8
|
}
|
|
9
|
-
export declare const useShouldUpdate: ({ hide, shouldUpdate, }: Omit<HItemProps, "name">) => import("rc-field-form/lib/Field").ShouldUpdate<any> | undefined;
|
|
9
|
+
export declare const useShouldUpdate: ({ hide, shouldUpdate, hidden }: Omit<HItemProps, "name">) => import("rc-field-form/lib/Field").ShouldUpdate<any> | undefined;
|
|
10
10
|
export declare const useHide: ({ hide, form }: UseHideUpItemModal) => boolean;
|
|
11
11
|
export declare const usePositionClassName: (position: LabelAlignModal) => string;
|
|
12
12
|
export declare const useFormItemLabel: (form: HFormInstance, label?: React.ReactNode | HelperModal) => any;
|
|
@@ -7,9 +7,10 @@ import { useClassName } from '../../hooks/index.js';
|
|
|
7
7
|
var useFormItemDomControl = function useFormItemDomControl(_ref) {
|
|
8
8
|
var shouldUpdate = _ref.shouldUpdate,
|
|
9
9
|
hide = _ref.hide,
|
|
10
|
-
dependencies = _ref.dependencies
|
|
10
|
+
dependencies = _ref.dependencies,
|
|
11
|
+
hidden = _ref.hidden;
|
|
11
12
|
return useMemo(function () {
|
|
12
|
-
if (shouldUpdate || typeof hide === "function" || dependencies) {
|
|
13
|
+
if (shouldUpdate || typeof hide === "function" || dependencies || typeof hidden === "function") {
|
|
13
14
|
return UpFormItem;
|
|
14
15
|
}
|
|
15
16
|
return RegularFormItem;
|
|
@@ -17,10 +18,14 @@ var useFormItemDomControl = function useFormItemDomControl(_ref) {
|
|
|
17
18
|
};
|
|
18
19
|
var useShouldUpdate = function useShouldUpdate(_ref2) {
|
|
19
20
|
var hide = _ref2.hide,
|
|
20
|
-
shouldUpdate = _ref2.shouldUpdate
|
|
21
|
+
shouldUpdate = _ref2.shouldUpdate,
|
|
22
|
+
hidden = _ref2.hidden;
|
|
21
23
|
if (typeof hide === "function" && !shouldUpdate) {
|
|
22
24
|
return true;
|
|
23
25
|
}
|
|
26
|
+
if (typeof hidden === "function" && !shouldUpdate) {
|
|
27
|
+
return true;
|
|
28
|
+
}
|
|
24
29
|
return shouldUpdate;
|
|
25
30
|
};
|
|
26
31
|
var useHide = function useHide(_ref3) {
|
package/es/Form/modal.d.ts
CHANGED
|
@@ -35,7 +35,7 @@ export interface DispatchModal<T = string | string[]> {
|
|
|
35
35
|
reset?: boolean;
|
|
36
36
|
}
|
|
37
37
|
export type LabelAlignModal = "left" | "right" | "topLeft" | "topRight" | "top";
|
|
38
|
-
export interface HItemProps extends Omit<FormItemProps, "name" | "labelAlign" | "label"> {
|
|
38
|
+
export interface HItemProps extends Omit<FormItemProps, "name" | "labelAlign" | "label" | "hidden"> {
|
|
39
39
|
type?: string;
|
|
40
40
|
itemProps?: ItemPropsType;
|
|
41
41
|
render?: RenderFun;
|
|
@@ -50,6 +50,7 @@ export interface HItemProps extends Omit<FormItemProps, "name" | "labelAlign" |
|
|
|
50
50
|
hideLabel?: boolean;
|
|
51
51
|
labelAlign?: LabelAlignModal;
|
|
52
52
|
label?: React.ReactNode | HelperModal;
|
|
53
|
+
hidden?: boolean | HideModal;
|
|
53
54
|
}
|
|
54
55
|
export interface HFormProps<T = any, R = any> extends Omit<FormProps, "form" | "onFinish" | "labelAlign"> {
|
|
55
56
|
configData: HItemProps[];
|
|
@@ -24,7 +24,7 @@ var useDefaultRender = require('../hooks/useDefaultRender.js');
|
|
|
24
24
|
var index$1 = require('../hooks/index.js');
|
|
25
25
|
var FormConfigProvider = require('../Context/FormConfigProvider.js');
|
|
26
26
|
|
|
27
|
-
var _excluded = ["hover", "labelWidth", "required", "colon", "label", "itemProps", "children", "helper", "hide", "render", "itemSpan", "hideLabel", "labelAlign", "style", "className", "noStyle"],
|
|
27
|
+
var _excluded = ["hover", "labelWidth", "required", "colon", "label", "itemProps", "children", "helper", "hide", "render", "itemSpan", "hideLabel", "labelAlign", "style", "className", "noStyle", "hidden"],
|
|
28
28
|
_excluded2 = ["labelAlign", "itemProps"];
|
|
29
29
|
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; }
|
|
30
30
|
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; }
|
|
@@ -75,6 +75,7 @@ var Index = function Index(props) {
|
|
|
75
75
|
colClassName = props.className,
|
|
76
76
|
_props$noStyle = props.noStyle,
|
|
77
77
|
noStyle = _props$noStyle === void 0 ? false : _props$noStyle,
|
|
78
|
+
hidden = props.hidden,
|
|
78
79
|
oProps = _objectWithoutProperties(props, _excluded);
|
|
79
80
|
var _props$labelAlign = props.labelAlign,
|
|
80
81
|
align = _props$labelAlign === void 0 ? "right" : _props$labelAlign,
|
|
@@ -95,6 +96,10 @@ var Index = function Index(props) {
|
|
|
95
96
|
hide: hide,
|
|
96
97
|
form: form
|
|
97
98
|
});
|
|
99
|
+
var disHide = hooks.useHide({
|
|
100
|
+
hide: hidden,
|
|
101
|
+
form: form
|
|
102
|
+
});
|
|
98
103
|
var formItemLabel = hooks.useFormItemLabel(form, label);
|
|
99
104
|
var itemHover = hooks.useFormItemHover(form, hover);
|
|
100
105
|
if (hideItem) {
|
|
@@ -102,6 +107,9 @@ var Index = function Index(props) {
|
|
|
102
107
|
}
|
|
103
108
|
return jsxRuntime.jsx(antd.Col, _objectSpread(_objectSpread({}, itemSpan), {}, {
|
|
104
109
|
className: "".concat(colClassName, " ").concat(itemClassName),
|
|
110
|
+
style: {
|
|
111
|
+
display: disHide ? "none" : "block"
|
|
112
|
+
},
|
|
105
113
|
children: jsxRuntime.jsx(antd.Form.Item, _objectSpread(_objectSpread({
|
|
106
114
|
className: className,
|
|
107
115
|
label: !hideLabel && jsxRuntime.jsx(Label.default, {
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import type { HFormItemProps } from "../modal";
|
|
2
|
-
declare const _default: ({ shouldUpdate, dependencies, hide, itemSpan, ...props }: HFormItemProps) => JSX.Element;
|
|
2
|
+
declare const _default: ({ shouldUpdate, dependencies, hide, itemSpan, hidden, ...props }: HFormItemProps) => JSX.Element;
|
|
3
3
|
export default _default;
|
|
@@ -16,7 +16,7 @@ var antd = require('antd');
|
|
|
16
16
|
var BasicItem = require('./BasicItem.js');
|
|
17
17
|
var hooks = require('./hooks.js');
|
|
18
18
|
|
|
19
|
-
var _excluded = ["shouldUpdate", "dependencies", "hide", "itemSpan"];
|
|
19
|
+
var _excluded = ["shouldUpdate", "dependencies", "hide", "itemSpan", "hidden"];
|
|
20
20
|
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; }
|
|
21
21
|
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; }
|
|
22
22
|
var Item = antd.Form.Item;
|
|
@@ -25,10 +25,12 @@ var UpFormItem = (function (_ref) {
|
|
|
25
25
|
dependencies = _ref.dependencies,
|
|
26
26
|
hide = _ref.hide,
|
|
27
27
|
itemSpan = _ref.itemSpan,
|
|
28
|
+
hidden = _ref.hidden,
|
|
28
29
|
props = _objectWithoutProperties(_ref, _excluded);
|
|
29
30
|
var resultShouldUpdate = hooks.useShouldUpdate({
|
|
30
31
|
shouldUpdate: shouldUpdate,
|
|
31
|
-
hide: hide
|
|
32
|
+
hide: hide,
|
|
33
|
+
hidden: hidden
|
|
32
34
|
});
|
|
33
35
|
return jsxRuntime.jsx(Item, {
|
|
34
36
|
shouldUpdate: resultShouldUpdate,
|
|
@@ -37,7 +39,8 @@ var UpFormItem = (function (_ref) {
|
|
|
37
39
|
children: function children() {
|
|
38
40
|
return jsxRuntime.jsx(BasicItem.default, _objectSpread({
|
|
39
41
|
hide: hide,
|
|
40
|
-
itemSpan: itemSpan
|
|
42
|
+
itemSpan: itemSpan,
|
|
43
|
+
hidden: hidden
|
|
41
44
|
}, props));
|
|
42
45
|
}
|
|
43
46
|
});
|
|
@@ -2,11 +2,11 @@ import type React from "react";
|
|
|
2
2
|
import type { HFormInstance, HItemProps, HoverFn, HoverModal } from "../modal";
|
|
3
3
|
import type { LabelAlignModal } from "../modal";
|
|
4
4
|
import type { HelperModal } from "../modal";
|
|
5
|
-
export declare const useFormItemDomControl: ({ shouldUpdate, hide, dependencies, }: HItemProps) => ({ shouldUpdate, dependencies, hide, itemSpan, ...props }: import("../modal").HFormItemProps) => JSX.Element;
|
|
5
|
+
export declare const useFormItemDomControl: ({ shouldUpdate, hide, dependencies, hidden, }: HItemProps) => ({ shouldUpdate, dependencies, hide, itemSpan, hidden, ...props }: import("../modal").HFormItemProps) => JSX.Element;
|
|
6
6
|
interface UseHideUpItemModal extends Omit<HItemProps, "name"> {
|
|
7
7
|
form: HFormInstance;
|
|
8
8
|
}
|
|
9
|
-
export declare const useShouldUpdate: ({ hide, shouldUpdate, }: Omit<HItemProps, "name">) => import("rc-field-form/lib/Field").ShouldUpdate<any> | undefined;
|
|
9
|
+
export declare const useShouldUpdate: ({ hide, shouldUpdate, hidden }: Omit<HItemProps, "name">) => import("rc-field-form/lib/Field").ShouldUpdate<any> | undefined;
|
|
10
10
|
export declare const useHide: ({ hide, form }: UseHideUpItemModal) => boolean;
|
|
11
11
|
export declare const usePositionClassName: (position: LabelAlignModal) => string;
|
|
12
12
|
export declare const useFormItemLabel: (form: HFormInstance, label?: React.ReactNode | HelperModal) => any;
|
|
@@ -8,9 +8,10 @@ var index = require('../../hooks/index.js');
|
|
|
8
8
|
var useFormItemDomControl = function useFormItemDomControl(_ref) {
|
|
9
9
|
var shouldUpdate = _ref.shouldUpdate,
|
|
10
10
|
hide = _ref.hide,
|
|
11
|
-
dependencies = _ref.dependencies
|
|
11
|
+
dependencies = _ref.dependencies,
|
|
12
|
+
hidden = _ref.hidden;
|
|
12
13
|
return React.useMemo(function () {
|
|
13
|
-
if (shouldUpdate || typeof hide === "function" || dependencies) {
|
|
14
|
+
if (shouldUpdate || typeof hide === "function" || dependencies || typeof hidden === "function") {
|
|
14
15
|
return UpFormItem.default;
|
|
15
16
|
}
|
|
16
17
|
return RegularFormItem.default;
|
|
@@ -18,10 +19,14 @@ var useFormItemDomControl = function useFormItemDomControl(_ref) {
|
|
|
18
19
|
};
|
|
19
20
|
var useShouldUpdate = function useShouldUpdate(_ref2) {
|
|
20
21
|
var hide = _ref2.hide,
|
|
21
|
-
shouldUpdate = _ref2.shouldUpdate
|
|
22
|
+
shouldUpdate = _ref2.shouldUpdate,
|
|
23
|
+
hidden = _ref2.hidden;
|
|
22
24
|
if (typeof hide === "function" && !shouldUpdate) {
|
|
23
25
|
return true;
|
|
24
26
|
}
|
|
27
|
+
if (typeof hidden === "function" && !shouldUpdate) {
|
|
28
|
+
return true;
|
|
29
|
+
}
|
|
25
30
|
return shouldUpdate;
|
|
26
31
|
};
|
|
27
32
|
var useHide = function useHide(_ref3) {
|
package/lib/Form/modal.d.ts
CHANGED
|
@@ -35,7 +35,7 @@ export interface DispatchModal<T = string | string[]> {
|
|
|
35
35
|
reset?: boolean;
|
|
36
36
|
}
|
|
37
37
|
export type LabelAlignModal = "left" | "right" | "topLeft" | "topRight" | "top";
|
|
38
|
-
export interface HItemProps extends Omit<FormItemProps, "name" | "labelAlign" | "label"> {
|
|
38
|
+
export interface HItemProps extends Omit<FormItemProps, "name" | "labelAlign" | "label" | "hidden"> {
|
|
39
39
|
type?: string;
|
|
40
40
|
itemProps?: ItemPropsType;
|
|
41
41
|
render?: RenderFun;
|
|
@@ -50,6 +50,7 @@ export interface HItemProps extends Omit<FormItemProps, "name" | "labelAlign" |
|
|
|
50
50
|
hideLabel?: boolean;
|
|
51
51
|
labelAlign?: LabelAlignModal;
|
|
52
52
|
label?: React.ReactNode | HelperModal;
|
|
53
|
+
hidden?: boolean | HideModal;
|
|
53
54
|
}
|
|
54
55
|
export interface HFormProps<T = any, R = any> extends Omit<FormProps, "form" | "onFinish" | "labelAlign"> {
|
|
55
56
|
configData: HItemProps[];
|
package/package.json
CHANGED
|
@@ -54,6 +54,7 @@ const Index: React.FC<HFormItemProps> = (props) => {
|
|
|
54
54
|
style,
|
|
55
55
|
className: colClassName,
|
|
56
56
|
noStyle = false,
|
|
57
|
+
hidden,
|
|
57
58
|
...oProps
|
|
58
59
|
} = props;
|
|
59
60
|
const { labelAlign: align = "right", itemProps, ...inProps } = props;
|
|
@@ -72,13 +73,19 @@ const Index: React.FC<HFormItemProps> = (props) => {
|
|
|
72
73
|
);
|
|
73
74
|
const className = usePositionClassName(align);
|
|
74
75
|
const hideItem = useHide({ hide, form });
|
|
76
|
+
const disHide=useHide({hide:hidden,form});
|
|
75
77
|
const formItemLabel = useFormItemLabel(form, label);
|
|
76
78
|
const itemHover = useFormItemHover(form, hover);
|
|
77
79
|
if (hideItem) {
|
|
78
80
|
return null;
|
|
79
81
|
}
|
|
80
82
|
return (
|
|
81
|
-
<Col {...itemSpan}
|
|
83
|
+
<Col {...itemSpan}
|
|
84
|
+
className={`${colClassName} ${itemClassName}`}
|
|
85
|
+
style={{
|
|
86
|
+
display:disHide?"none":"block"
|
|
87
|
+
}}
|
|
88
|
+
>
|
|
82
89
|
<Form.Item
|
|
83
90
|
className={className}
|
|
84
91
|
label={
|
|
@@ -8,13 +8,14 @@ export default ({
|
|
|
8
8
|
dependencies,
|
|
9
9
|
hide,
|
|
10
10
|
itemSpan,
|
|
11
|
+
hidden,
|
|
11
12
|
...props
|
|
12
13
|
}: HFormItemProps) => {
|
|
13
|
-
const resultShouldUpdate = useShouldUpdate({ shouldUpdate, hide });
|
|
14
|
+
const resultShouldUpdate = useShouldUpdate({ shouldUpdate, hide,hidden });
|
|
14
15
|
return (
|
|
15
16
|
<Item shouldUpdate={resultShouldUpdate} dependencies={dependencies} noStyle>
|
|
16
17
|
{() => {
|
|
17
|
-
return <BasicItem hide={hide} itemSpan={itemSpan} {...props} />;
|
|
18
|
+
return <BasicItem hide={hide} itemSpan={itemSpan} hidden={hidden} {...props} />;
|
|
18
19
|
}}
|
|
19
20
|
</Item>
|
|
20
21
|
);
|
|
@@ -11,9 +11,10 @@ export const useFormItemDomControl = ({
|
|
|
11
11
|
shouldUpdate,
|
|
12
12
|
hide,
|
|
13
13
|
dependencies,
|
|
14
|
+
hidden,
|
|
14
15
|
}: HItemProps) => {
|
|
15
16
|
return useMemo(() => {
|
|
16
|
-
if (shouldUpdate || typeof hide === "function" || dependencies) {
|
|
17
|
+
if (shouldUpdate || typeof hide === "function" || dependencies||typeof hidden === "function" ) {
|
|
17
18
|
return UpFormItem;
|
|
18
19
|
}
|
|
19
20
|
return RegularFormItem;
|
|
@@ -26,10 +27,14 @@ interface UseHideUpItemModal extends Omit<HItemProps, "name"> {
|
|
|
26
27
|
export const useShouldUpdate = ({
|
|
27
28
|
hide,
|
|
28
29
|
shouldUpdate,
|
|
30
|
+
hidden
|
|
29
31
|
}: Omit<HItemProps, "name">) => {
|
|
30
32
|
if (typeof hide === "function" && !shouldUpdate) {
|
|
31
33
|
return true;
|
|
32
34
|
}
|
|
35
|
+
if (typeof hidden==="function"&&!shouldUpdate){
|
|
36
|
+
return true
|
|
37
|
+
}
|
|
33
38
|
return shouldUpdate;
|
|
34
39
|
};
|
|
35
40
|
|
|
@@ -3,8 +3,7 @@ import type { HFormProps } from "./modal";
|
|
|
3
3
|
import { useCurrentForm, useInfoReq, useValuesChange } from "./hooks";
|
|
4
4
|
import { FormContext } from "./Context";
|
|
5
5
|
import PageHandler from "../PageHandler";
|
|
6
|
-
import
|
|
7
|
-
import { useEffect, useMemo, useState } from "react";
|
|
6
|
+
import { useEffect, useState } from "react";
|
|
8
7
|
import InitSet from "./InitSet";
|
|
9
8
|
import Basic from "./Basic";
|
|
10
9
|
|
|
@@ -81,7 +81,7 @@ export interface DispatchModal<T = string | string[]> {
|
|
|
81
81
|
export type LabelAlignModal = "left" | "right" | "topLeft" | "topRight" | "top";
|
|
82
82
|
|
|
83
83
|
export interface HItemProps
|
|
84
|
-
extends Omit<FormItemProps, "name" | "labelAlign" | "label"> {
|
|
84
|
+
extends Omit<FormItemProps, "name" | "labelAlign" | "label"|"hidden"> {
|
|
85
85
|
type?: string;
|
|
86
86
|
itemProps?: ItemPropsType;
|
|
87
87
|
render?: RenderFun;
|
|
@@ -98,6 +98,7 @@ export interface HItemProps
|
|
|
98
98
|
hideLabel?: boolean;
|
|
99
99
|
labelAlign?: LabelAlignModal;
|
|
100
100
|
label?: React.ReactNode | HelperModal;
|
|
101
|
+
hidden?:boolean|HideModal
|
|
101
102
|
}
|
|
102
103
|
export interface HFormProps<T = any, R = any>
|
|
103
104
|
extends Omit<FormProps, "form" | "onFinish" | "labelAlign"> {
|
package/src/pages/Form/index.tsx
CHANGED
|
@@ -68,13 +68,29 @@ const formData = (options) => {
|
|
|
68
68
|
return [
|
|
69
69
|
{
|
|
70
70
|
name:"name",
|
|
71
|
-
label:"输入框"
|
|
71
|
+
label:"输入框",
|
|
72
|
+
hidden:(form)=>{
|
|
73
|
+
const {check}=form.getFieldsValue();
|
|
74
|
+
console.log(check,"name")
|
|
75
|
+
return !check?.vv
|
|
76
|
+
}
|
|
72
77
|
},
|
|
73
78
|
{
|
|
74
79
|
name:"url",
|
|
75
80
|
type:"urlUpload",
|
|
76
81
|
label:"文本"
|
|
77
82
|
},
|
|
83
|
+
{
|
|
84
|
+
label:"输入框",
|
|
85
|
+
type:"checkboxGroup",
|
|
86
|
+
name:"check",
|
|
87
|
+
itemProps:{
|
|
88
|
+
options:[{
|
|
89
|
+
key:"vv",
|
|
90
|
+
value:"测试"
|
|
91
|
+
}]
|
|
92
|
+
}
|
|
93
|
+
}
|
|
78
94
|
];
|
|
79
95
|
};
|
|
80
96
|
function Ttta({ form }) {
|
|
@@ -119,6 +135,10 @@ export default () => {
|
|
|
119
135
|
labelWidth={300}
|
|
120
136
|
dismissOnPressEnter={false}
|
|
121
137
|
form={form}
|
|
138
|
+
layout={"vertical"}
|
|
139
|
+
itemSpan={{
|
|
140
|
+
span:12
|
|
141
|
+
}}
|
|
122
142
|
labelAlign={"left"}
|
|
123
143
|
onFinish={(value) => {
|
|
124
144
|
console.log(value, "onFinish");
|
|
@@ -148,7 +168,7 @@ export default () => {
|
|
|
148
168
|
</div>
|
|
149
169
|
<div
|
|
150
170
|
onClick={() => {
|
|
151
|
-
form.
|
|
171
|
+
console.log(form.formatValues())
|
|
152
172
|
}}
|
|
153
173
|
>
|
|
154
174
|
提交
|