@sheinx/hooks 3.4.4-beta.7 → 3.4.4-beta.9
Sign up to get free protection for your applications and to get access to all the features.
- package/cjs/common/use-position-style/index.js +1 -1
- package/cjs/components/use-form/use-form-control/use-form-control.d.ts.map +1 -1
- package/cjs/components/use-form/use-form-control/use-form-control.js +30 -11
- package/cjs/utils/position.d.ts.map +1 -1
- package/cjs/utils/position.js +15 -14
- package/esm/common/use-position-style/index.js +1 -1
- package/esm/components/use-form/use-form-control/use-form-control.d.ts.map +1 -1
- package/esm/components/use-form/use-form-control/use-form-control.js +30 -11
- package/esm/utils/position.d.ts.map +1 -1
- package/esm/utils/position.js +15 -14
- package/package.json +1 -1
@@ -139,7 +139,7 @@ var usePositionStyle = exports.usePositionStyle = function usePositionStyle(conf
|
|
139
139
|
}
|
140
140
|
var targetPosition = position;
|
141
141
|
var rootContainer = getContainer() || document.body;
|
142
|
-
var closestScrollContainer = (0, _element.getClosestScrollContainer)(parentElRef.current);
|
142
|
+
var closestScrollContainer = absolute ? null : (0, _element.getClosestScrollContainer)(parentElRef.current);
|
143
143
|
var containerRect = rootContainer.getBoundingClientRect();
|
144
144
|
var bodyRect = (document.documentElement || document.body).getBoundingClientRect();
|
145
145
|
var containerScrollBarWidth = rootContainer.offsetWidth - rootContainer.clientWidth;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"use-form-control.d.ts","sourceRoot":"","sources":["use-form-control.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAyB/D,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,CAAC,EAAE,KAAK,EAAE,oBAAoB,CAAC,CAAC,CAAC;;
|
1
|
+
{"version":3,"file":"use-form-control.d.ts","sourceRoot":"","sources":["use-form-control.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAyB/D,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,CAAC,EAAE,KAAK,EAAE,oBAAoB,CAAC,CAAC,CAAC;;kBA2IpC,CAAC,YAAY,GAAG,EAAE;;;;;EAiDrD"}
|
@@ -97,18 +97,37 @@ function useFormControl(props) {
|
|
97
97
|
var errors = arguments.length > 1 ? arguments[1] : undefined;
|
98
98
|
var severErrors = arguments.length > 2 ? arguments[2] : undefined;
|
99
99
|
if (!name) return;
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
100
|
+
if ((0, _is.isArray)(name)) {
|
101
|
+
var _value = getValue(name, formValue);
|
102
|
+
var _error = getError(name, errors, severErrors);
|
103
|
+
if (_error !== errorState) {
|
104
|
+
setErrorState(_error);
|
105
|
+
}
|
106
|
+
// format defaultValue
|
107
|
+
var dv = (0, _is.isArray)(defaultValue) ? defaultValue : [];
|
108
|
+
var nextValue = [];
|
109
|
+
name.forEach(function (n, index) {
|
110
|
+
if (_value[index] === undefined && dv[index] !== undefined) {
|
111
|
+
nextValue[index] = dv[index];
|
112
|
+
} else {
|
113
|
+
nextValue[index] = _value[index];
|
114
|
+
}
|
115
|
+
});
|
116
|
+
setValueState(nextValue);
|
117
|
+
} else {
|
118
|
+
var _value2 = getValue(name, formValue);
|
119
|
+
var _error2 = getError(name, errors, severErrors);
|
120
|
+
if (_error2 !== errorState) {
|
121
|
+
setErrorState(_error2);
|
122
|
+
}
|
123
|
+
if (!(0, _shallowEqual.shallowEqual)(_value2, latestInfo.valueState)) {
|
124
|
+
if (_value2 === undefined && defaultValue !== undefined) {
|
125
|
+
setValueState(defaultValue);
|
126
|
+
} else {
|
127
|
+
setValueState(_value2);
|
128
|
+
}
|
129
|
+
latestInfo.valueState = _value2;
|
110
130
|
}
|
111
|
-
latestInfo.valueState = value;
|
112
131
|
}
|
113
132
|
});
|
114
133
|
var validateFiled = (0, _usePersistFn.default)(function (name, v, formV) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"position.d.ts","sourceRoot":"","sources":["position.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"position.d.ts","sourceRoot":"","sources":["position.ts"],"names":[],"mappings":"AAkGA,eAAO,MAAM,WAAW,WACd,WAAW,GAAG,IAAI,2EAEpB,SAAS,GAAG,MAAM,GAAG,MAAM,UACzB,WAAW,gKAKpB,CAAC"}
|
package/cjs/utils/position.js
CHANGED
@@ -66,22 +66,23 @@ var getPopoverPosition = function getPopoverPosition(target) {
|
|
66
66
|
var popupRect = popup === null || popup === void 0 ? void 0 : popup.getBoundingClientRect();
|
67
67
|
if (verticalPoint > windowHeight / 2) position = 'top';else position = 'bottom';
|
68
68
|
|
69
|
+
// TODO: 暂时移除,另考虑方案
|
69
70
|
// 如果渲染了弹出内容,则根据弹出内容宽度计算是否自动调整位置
|
70
|
-
if (popupRect) {
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
} else {
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
}
|
71
|
+
// if (popupRect && popupRect?.width) {
|
72
|
+
// if (popupRect?.width / 2 > rect.left) {
|
73
|
+
// position += '-left';
|
74
|
+
// }
|
75
|
+
// if (popupRect?.width / 2 > windowWidth - rect.right) {
|
76
|
+
// position += '-right';
|
77
|
+
// }
|
78
|
+
// } else {
|
79
|
+
// 兜底计算
|
80
|
+
if (horizontalPoint > windowWidth * 0.6) {
|
81
|
+
position += '-right';
|
82
|
+
} else if (horizontalPoint < windowWidth * 0.4) {
|
83
|
+
position += '-left';
|
84
84
|
}
|
85
|
+
// }
|
85
86
|
}
|
86
87
|
return position;
|
87
88
|
};
|
@@ -129,7 +129,7 @@ export var usePositionStyle = function usePositionStyle(config) {
|
|
129
129
|
}
|
130
130
|
var targetPosition = position;
|
131
131
|
var rootContainer = getContainer() || document.body;
|
132
|
-
var closestScrollContainer = getClosestScrollContainer(parentElRef.current);
|
132
|
+
var closestScrollContainer = absolute ? null : getClosestScrollContainer(parentElRef.current);
|
133
133
|
var containerRect = rootContainer.getBoundingClientRect();
|
134
134
|
var bodyRect = (document.documentElement || document.body).getBoundingClientRect();
|
135
135
|
var containerScrollBarWidth = rootContainer.offsetWidth - rootContainer.clientWidth;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"use-form-control.d.ts","sourceRoot":"","sources":["use-form-control.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAyB/D,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,CAAC,EAAE,KAAK,EAAE,oBAAoB,CAAC,CAAC,CAAC;;
|
1
|
+
{"version":3,"file":"use-form-control.d.ts","sourceRoot":"","sources":["use-form-control.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAyB/D,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,CAAC,EAAE,KAAK,EAAE,oBAAoB,CAAC,CAAC,CAAC;;kBA2IpC,CAAC,YAAY,GAAG,EAAE;;;;;EAiDrD"}
|
@@ -88,18 +88,37 @@ export default function useFormControl(props) {
|
|
88
88
|
var errors = arguments.length > 1 ? arguments[1] : undefined;
|
89
89
|
var severErrors = arguments.length > 2 ? arguments[2] : undefined;
|
90
90
|
if (!name) return;
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
91
|
+
if (isArray(name)) {
|
92
|
+
var _value = getValue(name, formValue);
|
93
|
+
var _error = getError(name, errors, severErrors);
|
94
|
+
if (_error !== errorState) {
|
95
|
+
setErrorState(_error);
|
96
|
+
}
|
97
|
+
// format defaultValue
|
98
|
+
var dv = isArray(defaultValue) ? defaultValue : [];
|
99
|
+
var nextValue = [];
|
100
|
+
name.forEach(function (n, index) {
|
101
|
+
if (_value[index] === undefined && dv[index] !== undefined) {
|
102
|
+
nextValue[index] = dv[index];
|
103
|
+
} else {
|
104
|
+
nextValue[index] = _value[index];
|
105
|
+
}
|
106
|
+
});
|
107
|
+
setValueState(nextValue);
|
108
|
+
} else {
|
109
|
+
var _value2 = getValue(name, formValue);
|
110
|
+
var _error2 = getError(name, errors, severErrors);
|
111
|
+
if (_error2 !== errorState) {
|
112
|
+
setErrorState(_error2);
|
113
|
+
}
|
114
|
+
if (!shallowEqual(_value2, latestInfo.valueState)) {
|
115
|
+
if (_value2 === undefined && defaultValue !== undefined) {
|
116
|
+
setValueState(defaultValue);
|
117
|
+
} else {
|
118
|
+
setValueState(_value2);
|
119
|
+
}
|
120
|
+
latestInfo.valueState = _value2;
|
101
121
|
}
|
102
|
-
latestInfo.valueState = value;
|
103
122
|
}
|
104
123
|
});
|
105
124
|
var validateFiled = usePersistFn(function (name, v, formV) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"position.d.ts","sourceRoot":"","sources":["position.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"position.d.ts","sourceRoot":"","sources":["position.ts"],"names":[],"mappings":"AAkGA,eAAO,MAAM,WAAW,WACd,WAAW,GAAG,IAAI,2EAEpB,SAAS,GAAG,MAAM,GAAG,MAAM,UACzB,WAAW,gKAKpB,CAAC"}
|
package/esm/utils/position.js
CHANGED
@@ -60,22 +60,23 @@ var getPopoverPosition = function getPopoverPosition(target) {
|
|
60
60
|
var popupRect = popup === null || popup === void 0 ? void 0 : popup.getBoundingClientRect();
|
61
61
|
if (verticalPoint > windowHeight / 2) position = 'top';else position = 'bottom';
|
62
62
|
|
63
|
+
// TODO: 暂时移除,另考虑方案
|
63
64
|
// 如果渲染了弹出内容,则根据弹出内容宽度计算是否自动调整位置
|
64
|
-
if (popupRect) {
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
} else {
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
}
|
65
|
+
// if (popupRect && popupRect?.width) {
|
66
|
+
// if (popupRect?.width / 2 > rect.left) {
|
67
|
+
// position += '-left';
|
68
|
+
// }
|
69
|
+
// if (popupRect?.width / 2 > windowWidth - rect.right) {
|
70
|
+
// position += '-right';
|
71
|
+
// }
|
72
|
+
// } else {
|
73
|
+
// 兜底计算
|
74
|
+
if (horizontalPoint > windowWidth * 0.6) {
|
75
|
+
position += '-right';
|
76
|
+
} else if (horizontalPoint < windowWidth * 0.4) {
|
77
|
+
position += '-left';
|
78
78
|
}
|
79
|
+
// }
|
79
80
|
}
|
80
81
|
return position;
|
81
82
|
};
|