@sheinx/hooks 3.3.0-beta.6 → 3.3.0-beta.7
Sign up to get free protection for your applications and to get access to all the features.
- package/cjs/components/use-button/use-button.d.ts +1 -1
- package/cjs/components/use-datepicker/use-datepicker-format.d.ts +1 -1
- package/cjs/components/use-form/use-form.d.ts.map +1 -1
- package/cjs/components/use-form/use-form.js +4 -3
- package/cjs/components/use-image/use-image.d.ts +1 -1
- package/cjs/components/use-table/use-table.type.d.ts +2 -2
- package/esm/components/use-button/use-button.d.ts +1 -1
- package/esm/components/use-datepicker/use-datepicker-format.d.ts +1 -1
- package/esm/components/use-form/use-form.d.ts.map +1 -1
- package/esm/components/use-form/use-form.js +4 -3
- package/esm/components/use-image/use-image.d.ts +1 -1
- package/esm/components/use-table/use-table.type.d.ts +2 -2
- package/package.json +1 -1
@@ -28,7 +28,7 @@ declare const useButton: (props?: BaseButtonProps) => {
|
|
28
28
|
buttonRef?: React.Ref<HTMLButtonElement> | undefined;
|
29
29
|
} & TOther_1 & {
|
30
30
|
disabled: boolean | undefined;
|
31
|
-
htmlType: "button" | "
|
31
|
+
htmlType: "button" | "submit" | "reset" | undefined;
|
32
32
|
onClick: (event: React.MouseEvent<HTMLButtonElement> | React.MouseEvent<HTMLAnchorElement>) => void;
|
33
33
|
};
|
34
34
|
getSpaceChildren: (children: React.ReactNode, space?: boolean, className?: string) => React.ReactNode;
|
@@ -4,7 +4,7 @@ declare const useDatePickerFormat: <Value extends DatePickerValueType>(props: Us
|
|
4
4
|
resultArr: (string | undefined)[];
|
5
5
|
targetResultArr: (string | undefined)[];
|
6
6
|
dateArr: (Date | undefined)[];
|
7
|
-
disabledStatus: "
|
7
|
+
disabledStatus: "left" | "right" | "all" | undefined;
|
8
8
|
currentArr: Date[];
|
9
9
|
mode: DatePickerModeType[];
|
10
10
|
isEmpty: boolean;
|
@@ -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":";AAyBA,OAAO,EAAe,aAAa,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAC7F,OAAO,EAAe,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAI5D,QAAA,MAAM,OAAO;;;;;;;;;wBAmK8B;gBAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;aAAE;8BARzB,MAAM;oCAuDD,OAAO;;6BAfb,MAAM,KAAK,KAAK,GAAG,SAAS;;oCAdrB,MAAM,EAAE;sCArEN,MAAM,GAAG,MAAM,EAAE,mBAAgB,QAAQ,IAAI,CAAC;qCAiI5D,MAAM;gCAzCE,MAAM,SAAS,MAAM,UAAU,KAAK;gCAKpC,MAAM,SAAS,MAAM;;;;;;oBA1CpB;YAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;SAAE;0BARzB,MAAM;gCAuDD,OAAO;;yBAfb,MAAM,KAAK,KAAK,GAAG,SAAS;;gCAdrB,MAAM,EAAE;kCArEN,MAAM,GAAG,MAAM,EAAE,mBAAgB,QAAQ,IAAI,CAAC;iCAiI5D,MAAM;4BAzCE,MAAM,SAAS,MAAM,UAAU,KAAK;4BAKpC,MAAM,SAAS,MAAM;;CA4P9D,CAAC;AAEF,eAAe,OAAO,CAAC"}
|
@@ -11,6 +11,7 @@ var _useLatestObj = _interopRequireDefault(require("../../common/use-latest-obj"
|
|
11
11
|
var _usePersistFn = _interopRequireDefault(require("../../common/use-persist-fn"));
|
12
12
|
var _attribute = require("../../utils/attribute");
|
13
13
|
var _flat = require("../../utils/flat");
|
14
|
+
var _useDefaultValue = require("../../common/use-default-value");
|
14
15
|
var _immer = require("../../utils/immer");
|
15
16
|
var _utils = require("../../utils");
|
16
17
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
@@ -49,6 +50,7 @@ var useForm = function useForm(props) {
|
|
49
50
|
removeUndefined: removeUndefined,
|
50
51
|
forceSet: true
|
51
52
|
};
|
53
|
+
var preValue = (0, _useDefaultValue.usePrevious)(props.value);
|
52
54
|
var formRef = React.useRef();
|
53
55
|
var _React$useRef = React.useRef({
|
54
56
|
defaultValues: {},
|
@@ -419,8 +421,8 @@ var useForm = function useForm(props) {
|
|
419
421
|
var updateValue = function updateValue() {
|
420
422
|
if (props.value !== context.lastValue && props.value !== context.value) {
|
421
423
|
context.value = (0, _utils.deepClone)(props.value) || emptyObj;
|
422
|
-
context.lastValue = props.value;
|
423
424
|
}
|
425
|
+
context.lastValue = props.value;
|
424
426
|
};
|
425
427
|
updateValue();
|
426
428
|
React.useEffect(function () {
|
@@ -443,14 +445,13 @@ var useForm = function useForm(props) {
|
|
443
445
|
if (props.value === context.value) return;
|
444
446
|
if (initValidate && !context.resetTime) {
|
445
447
|
var keys = Object.keys(context.validateMap).filter(function (key) {
|
446
|
-
var oldValue = (0, _utils.deepGet)(
|
448
|
+
var oldValue = (0, _utils.deepGet)(preValue || emptyObj, key);
|
447
449
|
var newValue = (0, _utils.deepGet)(context.value || emptyObj, key);
|
448
450
|
return !(0, _utils.shallowEqual)(oldValue, newValue);
|
449
451
|
});
|
450
452
|
validateFields(keys).catch(function () {});
|
451
453
|
}
|
452
454
|
update();
|
453
|
-
context.lastValue = props.value;
|
454
455
|
context.resetTime = 0;
|
455
456
|
}, [props.value]);
|
456
457
|
React.useEffect(function () {
|
@@ -10,7 +10,7 @@ declare const useImage: (props?: BaseImageProps) => {
|
|
10
10
|
getRootProps: <TOther extends ObjectType = ObjectType>(externalProps?: TOther) => {
|
11
11
|
[x: string]: (event: any) => void;
|
12
12
|
} & TOther & {
|
13
|
-
ref: React.RefObject<
|
13
|
+
ref: React.RefObject<HTMLAnchorElement | HTMLDivElement>;
|
14
14
|
onClick: (event: React.MouseEvent<HTMLImageElement | HTMLDivElement>) => void;
|
15
15
|
};
|
16
16
|
getImageProps: <TOther_1 extends ObjectType = ObjectType>(externalProps?: TOther_1) => {
|
@@ -239,8 +239,8 @@ export interface TableColumnItem<DataItem> {
|
|
239
239
|
*/
|
240
240
|
style?: React.CSSProperties;
|
241
241
|
/**
|
242
|
-
* @cn
|
243
|
-
* @en Click event of column
|
242
|
+
* @cn 可展开元素点击事件仅当(仅该列为行展开列,并且传入 expandKeys 的时候生效)
|
243
|
+
* @en Click event of expandable element only when (only this column is row-expand column and expandKeys is passed in)
|
244
244
|
*/
|
245
245
|
onClick?: (d: DataItem, isExpand: boolean) => void;
|
246
246
|
/**
|
@@ -28,7 +28,7 @@ declare const useButton: (props?: BaseButtonProps) => {
|
|
28
28
|
buttonRef?: React.Ref<HTMLButtonElement> | undefined;
|
29
29
|
} & TOther_1 & {
|
30
30
|
disabled: boolean | undefined;
|
31
|
-
htmlType: "button" | "
|
31
|
+
htmlType: "button" | "submit" | "reset" | undefined;
|
32
32
|
onClick: (event: React.MouseEvent<HTMLButtonElement> | React.MouseEvent<HTMLAnchorElement>) => void;
|
33
33
|
};
|
34
34
|
getSpaceChildren: (children: React.ReactNode, space?: boolean, className?: string) => React.ReactNode;
|
@@ -4,7 +4,7 @@ declare const useDatePickerFormat: <Value extends DatePickerValueType>(props: Us
|
|
4
4
|
resultArr: (string | undefined)[];
|
5
5
|
targetResultArr: (string | undefined)[];
|
6
6
|
dateArr: (Date | undefined)[];
|
7
|
-
disabledStatus: "
|
7
|
+
disabledStatus: "left" | "right" | "all" | undefined;
|
8
8
|
currentArr: Date[];
|
9
9
|
mode: DatePickerModeType[];
|
10
10
|
isEmpty: boolean;
|
@@ -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":";AAyBA,OAAO,EAAe,aAAa,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAC7F,OAAO,EAAe,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAI5D,QAAA,MAAM,OAAO;;;;;;;;;wBAmK8B;gBAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;aAAE;8BARzB,MAAM;oCAuDD,OAAO;;6BAfb,MAAM,KAAK,KAAK,GAAG,SAAS;;oCAdrB,MAAM,EAAE;sCArEN,MAAM,GAAG,MAAM,EAAE,mBAAgB,QAAQ,IAAI,CAAC;qCAiI5D,MAAM;gCAzCE,MAAM,SAAS,MAAM,UAAU,KAAK;gCAKpC,MAAM,SAAS,MAAM;;;;;;oBA1CpB;YAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;SAAE;0BARzB,MAAM;gCAuDD,OAAO;;yBAfb,MAAM,KAAK,KAAK,GAAG,SAAS;;gCAdrB,MAAM,EAAE;kCArEN,MAAM,GAAG,MAAM,EAAE,mBAAgB,QAAQ,IAAI,CAAC;iCAiI5D,MAAM;4BAzCE,MAAM,SAAS,MAAM,UAAU,KAAK;4BAKpC,MAAM,SAAS,MAAM;;CA4P9D,CAAC;AAEF,eAAe,OAAO,CAAC"}
|
@@ -13,6 +13,7 @@ import useLatestObj from "../../common/use-latest-obj";
|
|
13
13
|
import usePersistFn from "../../common/use-persist-fn";
|
14
14
|
import { getDataAttributeName } from "../../utils/attribute";
|
15
15
|
import { insertValue, spliceValue } from "../../utils/flat";
|
16
|
+
import { usePrevious } from "../../common/use-default-value";
|
16
17
|
var globalKey = '__global__&&@@';
|
17
18
|
import { current, produce } from "../../utils/immer";
|
18
19
|
import { deepGet, deepRemove, deepSet, docScroll, extractEventHandlers, isArray, isObject, shallowEqual, wrapFormError, deepClone } from "../../utils";
|
@@ -40,6 +41,7 @@ var useForm = function useForm(props) {
|
|
40
41
|
removeUndefined: removeUndefined,
|
41
42
|
forceSet: true
|
42
43
|
};
|
44
|
+
var preValue = usePrevious(props.value);
|
43
45
|
var formRef = React.useRef();
|
44
46
|
var _React$useRef = React.useRef({
|
45
47
|
defaultValues: {},
|
@@ -410,8 +412,8 @@ var useForm = function useForm(props) {
|
|
410
412
|
var updateValue = function updateValue() {
|
411
413
|
if (props.value !== context.lastValue && props.value !== context.value) {
|
412
414
|
context.value = deepClone(props.value) || emptyObj;
|
413
|
-
context.lastValue = props.value;
|
414
415
|
}
|
416
|
+
context.lastValue = props.value;
|
415
417
|
};
|
416
418
|
updateValue();
|
417
419
|
React.useEffect(function () {
|
@@ -434,14 +436,13 @@ var useForm = function useForm(props) {
|
|
434
436
|
if (props.value === context.value) return;
|
435
437
|
if (initValidate && !context.resetTime) {
|
436
438
|
var keys = Object.keys(context.validateMap).filter(function (key) {
|
437
|
-
var oldValue = deepGet(
|
439
|
+
var oldValue = deepGet(preValue || emptyObj, key);
|
438
440
|
var newValue = deepGet(context.value || emptyObj, key);
|
439
441
|
return !shallowEqual(oldValue, newValue);
|
440
442
|
});
|
441
443
|
validateFields(keys).catch(function () {});
|
442
444
|
}
|
443
445
|
update();
|
444
|
-
context.lastValue = props.value;
|
445
446
|
context.resetTime = 0;
|
446
447
|
}, [props.value]);
|
447
448
|
React.useEffect(function () {
|
@@ -10,7 +10,7 @@ declare const useImage: (props?: BaseImageProps) => {
|
|
10
10
|
getRootProps: <TOther extends ObjectType = ObjectType>(externalProps?: TOther) => {
|
11
11
|
[x: string]: (event: any) => void;
|
12
12
|
} & TOther & {
|
13
|
-
ref: React.RefObject<
|
13
|
+
ref: React.RefObject<HTMLAnchorElement | HTMLDivElement>;
|
14
14
|
onClick: (event: React.MouseEvent<HTMLImageElement | HTMLDivElement>) => void;
|
15
15
|
};
|
16
16
|
getImageProps: <TOther_1 extends ObjectType = ObjectType>(externalProps?: TOther_1) => {
|
@@ -239,8 +239,8 @@ export interface TableColumnItem<DataItem> {
|
|
239
239
|
*/
|
240
240
|
style?: React.CSSProperties;
|
241
241
|
/**
|
242
|
-
* @cn
|
243
|
-
* @en Click event of column
|
242
|
+
* @cn 可展开元素点击事件仅当(仅该列为行展开列,并且传入 expandKeys 的时候生效)
|
243
|
+
* @en Click event of expandable element only when (only this column is row-expand column and expandKeys is passed in)
|
244
244
|
*/
|
245
245
|
onClick?: (d: DataItem, isExpand: boolean) => void;
|
246
246
|
/**
|