@sheinx/hooks 3.4.3 → 3.4.4-beta.10
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 +31 -8
- package/cjs/components/use-form/use-form.d.ts.map +1 -1
- package/cjs/components/use-form/use-form.js +10 -6
- package/cjs/utils/object.d.ts +1 -0
- package/cjs/utils/object.d.ts.map +1 -1
- package/cjs/utils/object.js +12 -1
- 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 +31 -8
- package/esm/components/use-form/use-form.d.ts.map +1 -1
- package/esm/components/use-form/use-form.js +11 -7
- package/esm/utils/object.d.ts +1 -0
- package/esm/utils/object.d.ts.map +1 -1
- package/esm/utils/object.js +11 -0
- 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,14 +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
|
-
|
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;
|
130
|
+
}
|
108
131
|
}
|
109
132
|
});
|
110
133
|
var validateFiled = (0, _usePersistFn.default)(function (name, v, formV) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"use-form.d.ts","sourceRoot":"","sources":["use-form.ts"],"names":[],"mappings":";
|
1
|
+
{"version":3,"file":"use-form.d.ts","sourceRoot":"","sources":["use-form.ts"],"names":[],"mappings":";AA0BA,OAAO,EAEL,aAAa,EACb,YAAY,EACZ,gBAAgB,EAGjB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAe,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAI5D,QAAA,MAAM,OAAO;;;;;;;;;wBAyKC;gBAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;gBAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;aAAE;8BAVd,MAAM;oCAkED,OAAO;;6BAfb,MAAM,KAAK,KAAK,GAAG,SAAS;;oCAdrB,MAAM,EAAE;sCAlFN,MAAM,GAAG,MAAM,EAAE,mBAAgB,QAAQ,IAAI,CAAC;qCAgJ5D,MAAM;gCA3CE,MAAM,SAAS,MAAM,UAAU,KAAK;gCAKpC,MAAM,SAAS,MAAM;;;;;;oBAnDjD;YAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;YAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;SAAE;0BAVd,MAAM;gCAkED,OAAO;;yBAfb,MAAM,KAAK,KAAK,GAAG,SAAS;;gCAdrB,MAAM,EAAE;kCAlFN,MAAM,GAAG,MAAM,EAAE,mBAAgB,QAAQ,IAAI,CAAC;iCAgJ5D,MAAM;4BA3CE,MAAM,SAAS,MAAM,UAAU,KAAK;4BAKpC,MAAM,SAAS,MAAM;;CAiQ9D,CAAC;AAEF,eAAe,OAAO,CAAC"}
|
@@ -205,11 +205,13 @@ var useForm = function useForm(props) {
|
|
205
205
|
}
|
206
206
|
});
|
207
207
|
});
|
208
|
-
|
209
|
-
|
208
|
+
|
209
|
+
// 获取vals的所有key,包括嵌套对象的key
|
210
|
+
var fullKeyPaths = (0, _utils.getAllKeyPaths)(vals);
|
211
|
+
fullKeyPaths.forEach(function (key) {
|
210
212
|
delete context.serverErrors[key];
|
211
213
|
});
|
212
|
-
update(
|
214
|
+
update(fullKeyPaths);
|
213
215
|
});
|
214
216
|
var getErrors = (0, _usePersistFn.default)(function () {
|
215
217
|
return context.errors;
|
@@ -291,10 +293,12 @@ var useForm = function useForm(props) {
|
|
291
293
|
});
|
292
294
|
var handleSubmit = function handleSubmit(other) {
|
293
295
|
return function (e) {
|
294
|
-
var _other$onSubmit;
|
295
296
|
e.preventDefault();
|
296
|
-
|
297
|
-
|
297
|
+
setTimeout(function () {
|
298
|
+
var _other$onSubmit;
|
299
|
+
submit();
|
300
|
+
other === null || other === void 0 || (_other$onSubmit = other.onSubmit) === null || _other$onSubmit === void 0 || _other$onSubmit.call(other, e);
|
301
|
+
}, 10);
|
298
302
|
};
|
299
303
|
};
|
300
304
|
var validateFieldset = function validateFieldset(name) {
|
package/cjs/utils/object.d.ts
CHANGED
@@ -22,5 +22,6 @@ export declare const deepRemove: (target: ObjectType, path: string) => ObjectTyp
|
|
22
22
|
export declare const deepHas: (target: ObjectType, path: string) => boolean;
|
23
23
|
export declare const entries: (obj: ObjectType) => any[][];
|
24
24
|
export declare const removeProps: <T extends ObjectType, K extends ObjectType>(target: T, remove: K) => Omit<T, keyof K>;
|
25
|
+
export declare const getAllKeyPaths: (obj: ObjectType, parentKey?: string) => string[];
|
25
26
|
export {};
|
26
27
|
//# sourceMappingURL=object.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"object.d.ts","sourceRoot":"","sources":["object.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,UAGvC;AASD,UAAU,WAAW;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAGD,eAAO,MAAM,YAAY,QAAS,UAAU,UAG3C,CAAC;AAGF,eAAO,MAAM,SAAS,2CAEZ,UAAU,YACT,WAAW,eAwBrB,CAAC;AAEF,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,+DA4BxC;AAED,UAAU,cAAc;IACtB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,eAAO,MAAM,OAAO,WACV,UAAU,QACZ,MAAM,SACL,GAAG,YACD,cAAc,eAiDxB,CAAC;AAEF,eAAO,MAAM,OAAO,WAAY,UAAU,QAAQ,MAAM,YAAW,WAAW,YAyB7E,CAAC;AAEF,eAAO,MAAM,UAAU,WAAY,UAAU,QAAQ,MAAM,eA0B1D,CAAC;AAEF,eAAO,MAAM,OAAO,WAAY,UAAU,QAAQ,MAAM,YAavD,CAAC;AAEF,eAAO,MAAM,OAAO,QAAS,UAAU,YAItC,CAAC;AAEF,eAAO,MAAM,WAAW,wFAQvB,CAAC"}
|
1
|
+
{"version":3,"file":"object.d.ts","sourceRoot":"","sources":["object.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,UAGvC;AASD,UAAU,WAAW;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAGD,eAAO,MAAM,YAAY,QAAS,UAAU,UAG3C,CAAC;AAGF,eAAO,MAAM,SAAS,2CAEZ,UAAU,YACT,WAAW,eAwBrB,CAAC;AAEF,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,+DA4BxC;AAED,UAAU,cAAc;IACtB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,eAAO,MAAM,OAAO,WACV,UAAU,QACZ,MAAM,SACL,GAAG,YACD,cAAc,eAiDxB,CAAC;AAEF,eAAO,MAAM,OAAO,WAAY,UAAU,QAAQ,MAAM,YAAW,WAAW,YAyB7E,CAAC;AAEF,eAAO,MAAM,UAAU,WAAY,UAAU,QAAQ,MAAM,eA0B1D,CAAC;AAEF,eAAO,MAAM,OAAO,WAAY,UAAU,QAAQ,MAAM,YAavD,CAAC;AAEF,eAAO,MAAM,OAAO,QAAS,UAAU,YAItC,CAAC;AAEF,eAAO,MAAM,WAAW,wFAQvB,CAAC;AAEF,eAAO,MAAM,cAAc,QAAS,UAAU,cAAa,MAAM,KAAQ,MAAM,EAU9E,CAAC"}
|
package/cjs/utils/object.js
CHANGED
@@ -3,12 +3,13 @@
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
4
4
|
value: true
|
5
5
|
});
|
6
|
-
exports.entries = exports.deepSet = exports.deepRemove = exports.deepMerge = exports.deepHas = exports.deepGet = void 0;
|
6
|
+
exports.getAllKeyPaths = exports.entries = exports.deepSet = exports.deepRemove = exports.deepMerge = exports.deepHas = exports.deepGet = void 0;
|
7
7
|
exports.insertPoint = insertPoint;
|
8
8
|
exports.objectValues = void 0;
|
9
9
|
exports.pathGenerator = pathGenerator;
|
10
10
|
exports.removeProps = void 0;
|
11
11
|
var _is = require("./is");
|
12
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
12
13
|
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
13
14
|
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
14
15
|
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
@@ -268,4 +269,14 @@ var removeProps = exports.removeProps = function removeProps(target, remove) {
|
|
268
269
|
_iterator5.f();
|
269
270
|
}
|
270
271
|
return a;
|
272
|
+
};
|
273
|
+
var getAllKeyPaths = exports.getAllKeyPaths = function getAllKeyPaths(obj) {
|
274
|
+
var parentKey = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
|
275
|
+
return Object.keys(obj).reduce(function (keys, key) {
|
276
|
+
var newKey = parentKey ? "".concat(parentKey, ".").concat(key) : key;
|
277
|
+
if (Array.isArray(obj[key])) {
|
278
|
+
return keys.concat(newKey);
|
279
|
+
}
|
280
|
+
return keys.concat(obj[key] !== null && _typeof(obj[key]) === 'object' ? getAllKeyPaths(obj[key], newKey) : newKey);
|
281
|
+
}, []);
|
271
282
|
};
|
@@ -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,14 +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
|
-
|
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;
|
121
|
+
}
|
99
122
|
}
|
100
123
|
});
|
101
124
|
var validateFiled = usePersistFn(function (name, v, formV) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"use-form.d.ts","sourceRoot":"","sources":["use-form.ts"],"names":[],"mappings":";
|
1
|
+
{"version":3,"file":"use-form.d.ts","sourceRoot":"","sources":["use-form.ts"],"names":[],"mappings":";AA0BA,OAAO,EAEL,aAAa,EACb,YAAY,EACZ,gBAAgB,EAGjB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAe,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAI5D,QAAA,MAAM,OAAO;;;;;;;;;wBAyKC;gBAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;gBAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;aAAE;8BAVd,MAAM;oCAkED,OAAO;;6BAfb,MAAM,KAAK,KAAK,GAAG,SAAS;;oCAdrB,MAAM,EAAE;sCAlFN,MAAM,GAAG,MAAM,EAAE,mBAAgB,QAAQ,IAAI,CAAC;qCAgJ5D,MAAM;gCA3CE,MAAM,SAAS,MAAM,UAAU,KAAK;gCAKpC,MAAM,SAAS,MAAM;;;;;;oBAnDjD;YAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;YAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;SAAE;0BAVd,MAAM;gCAkED,OAAO;;yBAfb,MAAM,KAAK,KAAK,GAAG,SAAS;;gCAdrB,MAAM,EAAE;kCAlFN,MAAM,GAAG,MAAM,EAAE,mBAAgB,QAAQ,IAAI,CAAC;iCAgJ5D,MAAM;4BA3CE,MAAM,SAAS,MAAM,UAAU,KAAK;4BAKpC,MAAM,SAAS,MAAM;;CAiQ9D,CAAC;AAEF,eAAe,OAAO,CAAC"}
|
@@ -16,7 +16,7 @@ import { insertValue, spliceValue } from "../../utils/flat";
|
|
16
16
|
import { usePrevious } from "../../common/use-default-value";
|
17
17
|
var globalKey = '__global__&&@@';
|
18
18
|
import { current, produce } from "../../utils/immer";
|
19
|
-
import { deepGet, deepRemove, deepSet, docScroll, extractEventHandlers, isArray, isObject, shallowEqual, wrapFormError, deepClone } from "../../utils";
|
19
|
+
import { deepGet, deepRemove, deepSet, docScroll, extractEventHandlers, isArray, isObject, shallowEqual, wrapFormError, deepClone, getAllKeyPaths } from "../../utils";
|
20
20
|
var emptyObj = {};
|
21
21
|
var useForm = function useForm(props) {
|
22
22
|
var _props$defaultValue = props.defaultValue,
|
@@ -196,11 +196,13 @@ var useForm = function useForm(props) {
|
|
196
196
|
}
|
197
197
|
});
|
198
198
|
});
|
199
|
-
|
200
|
-
|
199
|
+
|
200
|
+
// 获取vals的所有key,包括嵌套对象的key
|
201
|
+
var fullKeyPaths = getAllKeyPaths(vals);
|
202
|
+
fullKeyPaths.forEach(function (key) {
|
201
203
|
delete context.serverErrors[key];
|
202
204
|
});
|
203
|
-
update(
|
205
|
+
update(fullKeyPaths);
|
204
206
|
});
|
205
207
|
var getErrors = usePersistFn(function () {
|
206
208
|
return context.errors;
|
@@ -282,10 +284,12 @@ var useForm = function useForm(props) {
|
|
282
284
|
});
|
283
285
|
var handleSubmit = function handleSubmit(other) {
|
284
286
|
return function (e) {
|
285
|
-
var _other$onSubmit;
|
286
287
|
e.preventDefault();
|
287
|
-
|
288
|
-
|
288
|
+
setTimeout(function () {
|
289
|
+
var _other$onSubmit;
|
290
|
+
submit();
|
291
|
+
other === null || other === void 0 || (_other$onSubmit = other.onSubmit) === null || _other$onSubmit === void 0 || _other$onSubmit.call(other, e);
|
292
|
+
}, 10);
|
289
293
|
};
|
290
294
|
};
|
291
295
|
var validateFieldset = function validateFieldset(name) {
|
package/esm/utils/object.d.ts
CHANGED
@@ -22,5 +22,6 @@ export declare const deepRemove: (target: ObjectType, path: string) => ObjectTyp
|
|
22
22
|
export declare const deepHas: (target: ObjectType, path: string) => boolean;
|
23
23
|
export declare const entries: (obj: ObjectType) => any[][];
|
24
24
|
export declare const removeProps: <T extends ObjectType, K extends ObjectType>(target: T, remove: K) => Omit<T, keyof K>;
|
25
|
+
export declare const getAllKeyPaths: (obj: ObjectType, parentKey?: string) => string[];
|
25
26
|
export {};
|
26
27
|
//# sourceMappingURL=object.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"object.d.ts","sourceRoot":"","sources":["object.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,UAGvC;AASD,UAAU,WAAW;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAGD,eAAO,MAAM,YAAY,QAAS,UAAU,UAG3C,CAAC;AAGF,eAAO,MAAM,SAAS,2CAEZ,UAAU,YACT,WAAW,eAwBrB,CAAC;AAEF,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,+DA4BxC;AAED,UAAU,cAAc;IACtB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,eAAO,MAAM,OAAO,WACV,UAAU,QACZ,MAAM,SACL,GAAG,YACD,cAAc,eAiDxB,CAAC;AAEF,eAAO,MAAM,OAAO,WAAY,UAAU,QAAQ,MAAM,YAAW,WAAW,YAyB7E,CAAC;AAEF,eAAO,MAAM,UAAU,WAAY,UAAU,QAAQ,MAAM,eA0B1D,CAAC;AAEF,eAAO,MAAM,OAAO,WAAY,UAAU,QAAQ,MAAM,YAavD,CAAC;AAEF,eAAO,MAAM,OAAO,QAAS,UAAU,YAItC,CAAC;AAEF,eAAO,MAAM,WAAW,wFAQvB,CAAC"}
|
1
|
+
{"version":3,"file":"object.d.ts","sourceRoot":"","sources":["object.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,UAGvC;AASD,UAAU,WAAW;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAGD,eAAO,MAAM,YAAY,QAAS,UAAU,UAG3C,CAAC;AAGF,eAAO,MAAM,SAAS,2CAEZ,UAAU,YACT,WAAW,eAwBrB,CAAC;AAEF,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,+DA4BxC;AAED,UAAU,cAAc;IACtB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,eAAO,MAAM,OAAO,WACV,UAAU,QACZ,MAAM,SACL,GAAG,YACD,cAAc,eAiDxB,CAAC;AAEF,eAAO,MAAM,OAAO,WAAY,UAAU,QAAQ,MAAM,YAAW,WAAW,YAyB7E,CAAC;AAEF,eAAO,MAAM,UAAU,WAAY,UAAU,QAAQ,MAAM,eA0B1D,CAAC;AAEF,eAAO,MAAM,OAAO,WAAY,UAAU,QAAQ,MAAM,YAavD,CAAC;AAEF,eAAO,MAAM,OAAO,QAAS,UAAU,YAItC,CAAC;AAEF,eAAO,MAAM,WAAW,wFAQvB,CAAC;AAEF,eAAO,MAAM,cAAc,QAAS,UAAU,cAAa,MAAM,KAAQ,MAAM,EAU9E,CAAC"}
|
package/esm/utils/object.js
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
1
2
|
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
2
3
|
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
3
4
|
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
@@ -258,4 +259,14 @@ export var removeProps = function removeProps(target, remove) {
|
|
258
259
|
_iterator5.f();
|
259
260
|
}
|
260
261
|
return a;
|
262
|
+
};
|
263
|
+
export var getAllKeyPaths = function getAllKeyPaths(obj) {
|
264
|
+
var parentKey = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
|
265
|
+
return Object.keys(obj).reduce(function (keys, key) {
|
266
|
+
var newKey = parentKey ? "".concat(parentKey, ".").concat(key) : key;
|
267
|
+
if (Array.isArray(obj[key])) {
|
268
|
+
return keys.concat(newKey);
|
269
|
+
}
|
270
|
+
return keys.concat(obj[key] !== null && _typeof(obj[key]) === 'object' ? getAllKeyPaths(obj[key], newKey) : newKey);
|
271
|
+
}, []);
|
261
272
|
};
|
@@ -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
|
};
|