@sheinx/hooks 3.4.5-beta.9 → 3.4.5-fix.1

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.
@@ -1 +1 @@
1
- {"version":3,"file":"use-Input-able.d.ts","sourceRoot":"","sources":["use-Input-able.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEnE,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,CAAC,EAAE,CAAC,SAAS,UAAU,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC;;;;EAwE3F"}
1
+ {"version":3,"file":"use-Input-able.d.ts","sourceRoot":"","sources":["use-Input-able.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEnE,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,CAAC,EAAE,CAAC,SAAS,UAAU,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC;;;;EA0E3F"}
@@ -45,19 +45,18 @@ function useInputAble(props) {
45
45
  var render = (0, _useRender.useRender)(syncValue);
46
46
  var shouldUseState = delay || !control;
47
47
  var value = shouldUseState ? stateValue : valuePo;
48
- (0, _react.useEffect)(function () {
49
- if (context.timer) {
50
- clearTimeout(context.timer);
51
- context.timer = null;
52
- }
48
+ (0, _react.useLayoutEffect)(function () {
53
49
  if (delay && control && props.value !== stateValue) {
54
50
  changeStateValue(props.value);
51
+ } else if (context.timer) {
52
+ clearTimeout(context.timer);
53
+ context.timer = null;
55
54
  }
56
55
  }, [props.value, delay, control]);
57
56
  var forceDelayChange = (0, _usePersistFn.default)(function () {
58
- if (context.timer && context.delayChange) {
57
+ if (context.delayChange) context.delayChange();
58
+ if (context.timer) {
59
59
  clearTimeout(context.timer);
60
- context.delayChange();
61
60
  context.timer = null;
62
61
  context.delayChange = null;
63
62
  }
@@ -58,7 +58,7 @@ export interface BaseImageProps {
58
58
  * @en Whether to load only when in view
59
59
  * @cn 是否仅在视图内加载
60
60
  * @default false
61
- * @version 3.4.5 3.4.4-beta.83.5.0
61
+ * @version 3.4.5
62
62
  */
63
63
  inViewOnly?: boolean;
64
64
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"use-Input-able.d.ts","sourceRoot":"","sources":["use-Input-able.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEnE,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,CAAC,EAAE,CAAC,SAAS,UAAU,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC;;;;EAwE3F"}
1
+ {"version":3,"file":"use-Input-able.d.ts","sourceRoot":"","sources":["use-Input-able.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEnE,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,CAAC,EAAE,CAAC,SAAS,UAAU,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC;;;;EA0E3F"}
@@ -4,7 +4,7 @@ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o =
4
4
  function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
5
5
  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; } }
6
6
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
7
- import { useEffect, useRef, useState } from 'react';
7
+ import { useLayoutEffect, useRef, useState } from 'react';
8
8
  import { isFunc } from "../../utils/is";
9
9
  import { shallowEqual } from "../../utils/shallow-equal";
10
10
  import usePersistFn from "../use-persist-fn";
@@ -38,19 +38,18 @@ export default function useInputAble(props) {
38
38
  var render = useRender(syncValue);
39
39
  var shouldUseState = delay || !control;
40
40
  var value = shouldUseState ? stateValue : valuePo;
41
- useEffect(function () {
42
- if (context.timer) {
43
- clearTimeout(context.timer);
44
- context.timer = null;
45
- }
41
+ useLayoutEffect(function () {
46
42
  if (delay && control && props.value !== stateValue) {
47
43
  changeStateValue(props.value);
44
+ } else if (context.timer) {
45
+ clearTimeout(context.timer);
46
+ context.timer = null;
48
47
  }
49
48
  }, [props.value, delay, control]);
50
49
  var forceDelayChange = usePersistFn(function () {
51
- if (context.timer && context.delayChange) {
50
+ if (context.delayChange) context.delayChange();
51
+ if (context.timer) {
52
52
  clearTimeout(context.timer);
53
- context.delayChange();
54
53
  context.timer = null;
55
54
  context.delayChange = null;
56
55
  }
@@ -58,7 +58,7 @@ export interface BaseImageProps {
58
58
  * @en Whether to load only when in view
59
59
  * @cn 是否仅在视图内加载
60
60
  * @default false
61
- * @version 3.4.5 3.4.4-beta.83.5.0
61
+ * @version 3.4.5
62
62
  */
63
63
  inViewOnly?: boolean;
64
64
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sheinx/hooks",
3
- "version": "3.4.5-beta.9",
3
+ "version": "3.4.5-fix.1",
4
4
  "description": "",
5
5
  "keywords": [],
6
6
  "license": "MIT",