@siberiacancode/reactuse 0.0.31 → 0.0.33

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.
Files changed (170) hide show
  1. package/dist/cjs/{_rollupPluginBabelHelpers-XknWBRG7.js → _rollupPluginBabelHelpers-Do53xSKt.js} +2 -2
  2. package/dist/cjs/_rollupPluginBabelHelpers-Do53xSKt.js.map +1 -0
  3. package/dist/cjs/hooks/index.js +2 -2
  4. package/dist/cjs/hooks/useBattery/useBattery.js +2 -2
  5. package/dist/cjs/hooks/useBoolean/useBoolean.js +2 -2
  6. package/dist/cjs/hooks/useBrowserLanguage/useBrowserLanguage.js +1 -1
  7. package/dist/cjs/hooks/useClickOutside/useClickOutside.js +1 -1
  8. package/dist/cjs/hooks/useCopyToClipboard/useCopyToClipboard.js +2 -2
  9. package/dist/cjs/hooks/useCounter/useCounter.js +2 -2
  10. package/dist/cjs/hooks/useDebounceCallback/useDebounceCallback.js +3 -0
  11. package/dist/cjs/hooks/useDebounceCallback/useDebounceCallback.js.map +1 -0
  12. package/dist/cjs/hooks/useDebounceValue/useDebounceValue.js +3 -0
  13. package/dist/cjs/hooks/useDebounceValue/useDebounceValue.js.map +1 -0
  14. package/dist/cjs/hooks/useDefault/useDefault.js +2 -2
  15. package/dist/cjs/hooks/useDidUpdate/useDidUpdate.js +1 -1
  16. package/dist/cjs/hooks/useDocumentEvent/useDocumentEvent.js +1 -1
  17. package/dist/cjs/hooks/useDocumentTitle/useDocumentTitle.js +2 -2
  18. package/dist/cjs/hooks/useDocumentVisibility/useDocumentVisibility.js +1 -1
  19. package/dist/cjs/hooks/useEvent/useEvent.js +1 -1
  20. package/dist/cjs/hooks/useEventListener/useEventListener.js +1 -1
  21. package/dist/cjs/hooks/useEyeDropper/useEyeDropper.js +2 -2
  22. package/dist/cjs/hooks/useFavicon/useFavicon.js +2 -2
  23. package/dist/cjs/hooks/useField/useField.js +2 -2
  24. package/dist/cjs/hooks/useFps/useFps.js +2 -2
  25. package/dist/cjs/hooks/useFullscreen/useFullscreen.js +2 -2
  26. package/dist/cjs/hooks/useHash/useHash.js +2 -2
  27. package/dist/cjs/hooks/useHotkeys/useHotkeys.js +2 -2
  28. package/dist/cjs/hooks/useHover/useHover.js +2 -2
  29. package/dist/cjs/hooks/useIdle/useIdle.js +2 -2
  30. package/dist/cjs/hooks/useIntersectionObserver/useIntersectionObserver.js +2 -2
  31. package/dist/cjs/hooks/useInterval/useInterval.js +2 -2
  32. package/dist/cjs/hooks/useIsFirstRender/useIsFirstRender.js +1 -1
  33. package/dist/cjs/hooks/useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js +1 -1
  34. package/dist/cjs/hooks/useKeyPress/useKeyPress.js +2 -2
  35. package/dist/cjs/hooks/useKeyPressEvent/useKeyPressEvent.js +1 -1
  36. package/dist/cjs/hooks/useKeyboard/useKeyboard.js +1 -1
  37. package/dist/cjs/hooks/useKeysPressed/useKeysPressed.js +2 -2
  38. package/dist/cjs/hooks/useList/useList.js +2 -2
  39. package/dist/cjs/hooks/useLocalStorage/useLocalStorage.js +2 -2
  40. package/dist/cjs/hooks/useLogger/useLogger.js +2 -2
  41. package/dist/cjs/hooks/useLongPress/useLongPress.js +2 -2
  42. package/dist/cjs/hooks/useMediaQuery/useMediaQuery.js +1 -1
  43. package/dist/cjs/hooks/useMount/useMount.js +1 -1
  44. package/dist/cjs/hooks/useMouse/useMouse.js +2 -2
  45. package/dist/cjs/hooks/useMutation/useMutation.js +2 -2
  46. package/dist/cjs/hooks/useMutationObserver.js +1 -1
  47. package/dist/cjs/hooks/useNetwork/useNetwork.js +2 -2
  48. package/dist/cjs/hooks/useOnline/useOnline.js +1 -1
  49. package/dist/cjs/hooks/useOperatingSystem/useOperatingSystem.js +1 -1
  50. package/dist/cjs/hooks/useOrientation/useOrientation.js +2 -2
  51. package/dist/cjs/hooks/usePageLeave/usePageLeave.js +2 -2
  52. package/dist/cjs/hooks/usePaint/usePaint.js +2 -2
  53. package/dist/cjs/hooks/usePreferredColorScheme/usePreferredColorScheme.js +1 -1
  54. package/dist/cjs/hooks/usePreferredLanguages/usePreferredLanguages.js +1 -1
  55. package/dist/cjs/hooks/usePrevious/usePrevious.js +1 -1
  56. package/dist/cjs/hooks/useQRCode/useQRCode.js +2 -2
  57. package/dist/cjs/hooks/useQuery/useQuery.js +2 -2
  58. package/dist/cjs/hooks/useQueue/useQueue.js +2 -2
  59. package/dist/cjs/hooks/useRenderCount/useRenderCount.js +1 -1
  60. package/dist/cjs/hooks/useRenderInfo/useRenderInfo.js +1 -1
  61. package/dist/cjs/hooks/useRerender/useRerender.js +2 -2
  62. package/dist/cjs/hooks/useScript/useScript.js +2 -2
  63. package/dist/cjs/hooks/useSessionStorage/useSessionStorage.js +2 -2
  64. package/dist/cjs/hooks/useSet/useSet.js +2 -2
  65. package/dist/cjs/hooks/useStep/useStep.js +2 -2
  66. package/dist/cjs/hooks/useStorage/useStorage.js +2 -2
  67. package/dist/cjs/hooks/useTextSelection/useTextSelection.js +2 -2
  68. package/dist/cjs/hooks/useTime/useTime.js +2 -2
  69. package/dist/cjs/hooks/useTimeout/useTimeout.js +2 -2
  70. package/dist/cjs/hooks/useToggle/useToggle.js +2 -2
  71. package/dist/cjs/hooks/useUnmount/useUnmount.js +1 -1
  72. package/dist/cjs/hooks/useWebSocket/useWebSocket.js +2 -2
  73. package/dist/cjs/hooks/useWindowEvent/useWindowEvent.js +1 -1
  74. package/dist/cjs/hooks/useWindowSize/useWindowSize.js +2 -2
  75. package/dist/cjs/index.js +2 -2
  76. package/dist/cjs/utils/helpers/debounce.js +1 -1
  77. package/dist/cjs/utils/helpers/getRetry.js +1 -1
  78. package/dist/cjs/utils/helpers/index.js +1 -1
  79. package/dist/cjs/utils/helpers/isClient.js +1 -1
  80. package/dist/cjs/utils/helpers/throttle.js +1 -1
  81. package/dist/cjs/utils/helpers/time/getDate.js +1 -1
  82. package/dist/esm/{_rollupPluginBabelHelpers-DmI4-Pc6.js → _rollupPluginBabelHelpers-1W2OVgdr.js} +2 -2
  83. package/dist/esm/_rollupPluginBabelHelpers-1W2OVgdr.js.map +1 -0
  84. package/dist/esm/hooks/index.js +2 -2
  85. package/dist/esm/hooks/useBattery/useBattery.js +2 -2
  86. package/dist/esm/hooks/useBoolean/useBoolean.js +2 -2
  87. package/dist/esm/hooks/useBrowserLanguage/useBrowserLanguage.js +1 -1
  88. package/dist/esm/hooks/useClickOutside/useClickOutside.js +1 -1
  89. package/dist/esm/hooks/useCopyToClipboard/useCopyToClipboard.js +2 -2
  90. package/dist/esm/hooks/useCounter/useCounter.js +2 -2
  91. package/dist/esm/hooks/useDebounceCallback/useDebounceCallback.js +3 -0
  92. package/dist/esm/hooks/useDebounceCallback/useDebounceCallback.js.map +1 -0
  93. package/dist/esm/hooks/useDebounceValue/useDebounceValue.js +3 -0
  94. package/dist/esm/hooks/useDebounceValue/useDebounceValue.js.map +1 -0
  95. package/dist/esm/hooks/useDefault/useDefault.js +2 -2
  96. package/dist/esm/hooks/useDidUpdate/useDidUpdate.js +1 -1
  97. package/dist/esm/hooks/useDocumentEvent/useDocumentEvent.js +1 -1
  98. package/dist/esm/hooks/useDocumentTitle/useDocumentTitle.js +2 -2
  99. package/dist/esm/hooks/useDocumentVisibility/useDocumentVisibility.js +1 -1
  100. package/dist/esm/hooks/useEvent/useEvent.js +1 -1
  101. package/dist/esm/hooks/useEventListener/useEventListener.js +1 -1
  102. package/dist/esm/hooks/useEyeDropper/useEyeDropper.js +2 -2
  103. package/dist/esm/hooks/useFavicon/useFavicon.js +2 -2
  104. package/dist/esm/hooks/useField/useField.js +2 -2
  105. package/dist/esm/hooks/useFps/useFps.js +2 -2
  106. package/dist/esm/hooks/useFullscreen/useFullscreen.js +2 -2
  107. package/dist/esm/hooks/useHash/useHash.js +2 -2
  108. package/dist/esm/hooks/useHotkeys/useHotkeys.js +2 -2
  109. package/dist/esm/hooks/useHover/useHover.js +2 -2
  110. package/dist/esm/hooks/useIdle/useIdle.js +2 -2
  111. package/dist/esm/hooks/useIntersectionObserver/useIntersectionObserver.js +2 -2
  112. package/dist/esm/hooks/useInterval/useInterval.js +2 -2
  113. package/dist/esm/hooks/useIsFirstRender/useIsFirstRender.js +1 -1
  114. package/dist/esm/hooks/useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js +1 -1
  115. package/dist/esm/hooks/useKeyPress/useKeyPress.js +2 -2
  116. package/dist/esm/hooks/useKeyPressEvent/useKeyPressEvent.js +1 -1
  117. package/dist/esm/hooks/useKeyboard/useKeyboard.js +1 -1
  118. package/dist/esm/hooks/useKeysPressed/useKeysPressed.js +2 -2
  119. package/dist/esm/hooks/useList/useList.js +2 -2
  120. package/dist/esm/hooks/useLocalStorage/useLocalStorage.js +2 -2
  121. package/dist/esm/hooks/useLogger/useLogger.js +2 -2
  122. package/dist/esm/hooks/useLongPress/useLongPress.js +2 -2
  123. package/dist/esm/hooks/useMediaQuery/useMediaQuery.js +1 -1
  124. package/dist/esm/hooks/useMount/useMount.js +1 -1
  125. package/dist/esm/hooks/useMouse/useMouse.js +2 -2
  126. package/dist/esm/hooks/useMutation/useMutation.js +2 -2
  127. package/dist/esm/hooks/useMutationObserver.js +1 -1
  128. package/dist/esm/hooks/useNetwork/useNetwork.js +2 -2
  129. package/dist/esm/hooks/useOnline/useOnline.js +1 -1
  130. package/dist/esm/hooks/useOperatingSystem/useOperatingSystem.js +1 -1
  131. package/dist/esm/hooks/useOrientation/useOrientation.js +2 -2
  132. package/dist/esm/hooks/usePageLeave/usePageLeave.js +2 -2
  133. package/dist/esm/hooks/usePaint/usePaint.js +2 -2
  134. package/dist/esm/hooks/usePreferredColorScheme/usePreferredColorScheme.js +1 -1
  135. package/dist/esm/hooks/usePreferredLanguages/usePreferredLanguages.js +1 -1
  136. package/dist/esm/hooks/usePrevious/usePrevious.js +1 -1
  137. package/dist/esm/hooks/useQRCode/useQRCode.js +2 -2
  138. package/dist/esm/hooks/useQuery/useQuery.js +2 -2
  139. package/dist/esm/hooks/useQueue/useQueue.js +2 -2
  140. package/dist/esm/hooks/useRenderCount/useRenderCount.js +1 -1
  141. package/dist/esm/hooks/useRenderInfo/useRenderInfo.js +1 -1
  142. package/dist/esm/hooks/useRerender/useRerender.js +2 -2
  143. package/dist/esm/hooks/useScript/useScript.js +2 -2
  144. package/dist/esm/hooks/useSessionStorage/useSessionStorage.js +2 -2
  145. package/dist/esm/hooks/useSet/useSet.js +2 -2
  146. package/dist/esm/hooks/useStep/useStep.js +2 -2
  147. package/dist/esm/hooks/useStorage/useStorage.js +2 -2
  148. package/dist/esm/hooks/useTextSelection/useTextSelection.js +2 -2
  149. package/dist/esm/hooks/useTime/useTime.js +2 -2
  150. package/dist/esm/hooks/useTimeout/useTimeout.js +2 -2
  151. package/dist/esm/hooks/useToggle/useToggle.js +2 -2
  152. package/dist/esm/hooks/useUnmount/useUnmount.js +1 -1
  153. package/dist/esm/hooks/useWebSocket/useWebSocket.js +2 -2
  154. package/dist/esm/hooks/useWindowEvent/useWindowEvent.js +1 -1
  155. package/dist/esm/hooks/useWindowSize/useWindowSize.js +2 -2
  156. package/dist/esm/index.js +2 -2
  157. package/dist/esm/utils/helpers/debounce.js +1 -1
  158. package/dist/esm/utils/helpers/getRetry.js +1 -1
  159. package/dist/esm/utils/helpers/index.js +1 -1
  160. package/dist/esm/utils/helpers/isClient.js +1 -1
  161. package/dist/esm/utils/helpers/throttle.js +1 -1
  162. package/dist/esm/utils/helpers/time/getDate.js +1 -1
  163. package/dist/index.d.ts +29 -5
  164. package/package.json +1 -1
  165. package/dist/cjs/_rollupPluginBabelHelpers-XknWBRG7.js.map +0 -1
  166. package/dist/cjs/hooks/useDebouncedValue/useDebouncedValue.js +0 -3
  167. package/dist/cjs/hooks/useDebouncedValue/useDebouncedValue.js.map +0 -1
  168. package/dist/esm/_rollupPluginBabelHelpers-DmI4-Pc6.js.map +0 -1
  169. package/dist/esm/hooks/useDebouncedValue/useDebouncedValue.js +0 -3
  170. package/dist/esm/hooks/useDebouncedValue/useDebouncedValue.js.map +0 -1
package/dist/index.d.ts CHANGED
@@ -164,10 +164,34 @@ type UseCounter = {
164
164
  */
165
165
  declare const useCounter: UseCounter;
166
166
 
167
- interface UseDebouncedValueOptions {
168
- maxWait?: number;
169
- }
170
- declare const useDebouncedValue: <Value>(value: Value, delay: number, options?: UseDebouncedValueOptions) => readonly [Value, (value: Value) => void];
167
+ /**
168
+ * @name useDebounceCallback
169
+ * @description - Hook that creates a debounced callback and returns a stable reference of it
170
+ *
171
+ * @template Params The type of the params
172
+ * @template Return The type of the return
173
+ * @param {(...args: Params) => Return} callback The callback function
174
+ * @param {number} delay The delay in milliseconds
175
+ * @returns {(...args: Params) => Return} The callback with debounce
176
+ *
177
+ * @example
178
+ * const debounced = useDebounceCallback(() => console.log('callback'), 500);
179
+ */
180
+ declare const useDebounceCallback: <Params extends unknown[], Return>(callback: (...args: Params) => Return, delay: number) => (...args: Params) => void;
181
+
182
+ /**
183
+ * @name useDebounceValue
184
+ * @description - Hook that creates a debounced value and returns a stable reference of it
185
+ *
186
+ * @template Value The type of the value
187
+ * @param {Value} value The value to be debounced
188
+ * @param {number} delay The delay in milliseconds
189
+ * @returns {Value} The debounced value
190
+ *
191
+ * @example
192
+ * const debouncedValue = useDebounceValue(value, 500);
193
+ */
194
+ declare const useDebounceValue: <Value>(value: Value, delay: number) => Value;
171
195
 
172
196
  /**
173
197
  * @name useDefault
@@ -1609,4 +1633,4 @@ declare const getDate: (now?: Date) => {
1609
1633
  timestamp: number;
1610
1634
  };
1611
1635
 
1612
- export { type ConnectionEffectiveType, type ConnectionType, type OperatingSystem, SCRIPT_STATUS_ATTRIBUTE_NAME, type UseClickOutside, type UseClickOutsideReturn, type UseCounter, type UseCounterOptions, type UseCounterParams, type UseCounterReturn, type UseDocumentTitleOptions, type UseDocumentTitleReturn, type UseEventListener, type UseEventListenerOptions, type UseEventListenerReturn, type UseEventListenerTarget, type UseEyeDropperReturn, type UseFaviconReturn, type UseFieldParams, type UseFieldRegisterParams, type UseFieldReturn, type UseFullScreen, type UseFullScreenOptions, type UseFullScreenReturn, type UseHotkeysHotkeys, type UseHotkeysKey, type UseHotkeysOptions, type UseHover, type UseHoverOptions, type UseHoverReturn, type UseHoverTarget, type UseIdleReturn, type UseIntersectionObserver, type UseIntersectionObserverOptions, type UseIntersectionObserverReturn, type UseIntersectionObserverTarget, type UseIntervalOptions, type UseIntervalReturn, type UseKeyPressEvent, type UseKeyPressEventKey, type UseKeyPressKey, type UseKeyPressOptions, type UseKeyboardParams, type UseListReturn, type UseLongPress, type UseLongPressReturn, type UseLongPressTarget, type UseMouse, type UseMouseReturn, type UseNetworkReturn, type UseOrientationReturn, type UsePaint, type UsePaintOptions, type UsePaintPencil, type UsePaintReturn, type UsePaintTarget, type UsePreferredColorSchemeReturn, type UseQueueReturn, type UseRenderInfoReturn, type UseScriptOptions, type UseScriptStatus, type UseStorageInitialValue, type UseStorageOptions, type UseStorageReturn, type UseTextSelectionReturn, type UseTimeReturn, type UseToggleReturn, type UseWebSocketOptions, type UseWebSocketReturn, type UseWebSocketStatus, type UseWebSocketUrl, type UseWindowSizeReturn, debounce, dispatchStorageEvent, getConnection, getDate, getOperatingSystem, getRangesSelection, getRetry, getTargetElement, isClient, isHotkeyMatch, legacyCopyToClipboard, throttle, useBattery, useBoolean, useBrowserLanguage, useClickOutside, useCopyToClipboard, useCounter, useDebouncedValue, useDefault, useDidUpdate, useDocumentEvent, useDocumentTitle, useDocumentVisibility, useEvent, useEventListener, useEyeDropper, useFavicon, useField, useFps, useFullscreen, useHash, useHotkeys, useHover, useIdle, useIntersectionObserver, useInterval, useIsFirstRender, useIsomorphicLayoutEffect, useKeyPress, useKeyPressEvent, useKeyboard, useKeysPressed, useList, useLocalStorage, useLogger, useLongPress, useMediaQuery, useMount, useMouse, useMutation, useNetwork, useOnline, useOperatingSystem, useOrientation, usePageLeave, usePaint, usePreferredColorScheme, usePreferredLanguages, usePrevious, useQRCode, useQuery, useQueue, useRenderCount, useRenderInfo, useRerender, useScript, useSessionStorage, useSet, useStep, useStorage, useTextSelection, useTime, useTimeout, useToggle, useUnmount, useWebSocket, useWindowEvent, useWindowSize };
1636
+ export { type ConnectionEffectiveType, type ConnectionType, type OperatingSystem, SCRIPT_STATUS_ATTRIBUTE_NAME, type UseClickOutside, type UseClickOutsideReturn, type UseCounter, type UseCounterOptions, type UseCounterParams, type UseCounterReturn, type UseDocumentTitleOptions, type UseDocumentTitleReturn, type UseEventListener, type UseEventListenerOptions, type UseEventListenerReturn, type UseEventListenerTarget, type UseEyeDropperReturn, type UseFaviconReturn, type UseFieldParams, type UseFieldRegisterParams, type UseFieldReturn, type UseFullScreen, type UseFullScreenOptions, type UseFullScreenReturn, type UseHotkeysHotkeys, type UseHotkeysKey, type UseHotkeysOptions, type UseHover, type UseHoverOptions, type UseHoverReturn, type UseHoverTarget, type UseIdleReturn, type UseIntersectionObserver, type UseIntersectionObserverOptions, type UseIntersectionObserverReturn, type UseIntersectionObserverTarget, type UseIntervalOptions, type UseIntervalReturn, type UseKeyPressEvent, type UseKeyPressEventKey, type UseKeyPressKey, type UseKeyPressOptions, type UseKeyboardParams, type UseListReturn, type UseLongPress, type UseLongPressReturn, type UseLongPressTarget, type UseMouse, type UseMouseReturn, type UseNetworkReturn, type UseOrientationReturn, type UsePaint, type UsePaintOptions, type UsePaintPencil, type UsePaintReturn, type UsePaintTarget, type UsePreferredColorSchemeReturn, type UseQueueReturn, type UseRenderInfoReturn, type UseScriptOptions, type UseScriptStatus, type UseStorageInitialValue, type UseStorageOptions, type UseStorageReturn, type UseTextSelectionReturn, type UseTimeReturn, type UseToggleReturn, type UseWebSocketOptions, type UseWebSocketReturn, type UseWebSocketStatus, type UseWebSocketUrl, type UseWindowSizeReturn, debounce, dispatchStorageEvent, getConnection, getDate, getOperatingSystem, getRangesSelection, getRetry, getTargetElement, isClient, isHotkeyMatch, legacyCopyToClipboard, throttle, useBattery, useBoolean, useBrowserLanguage, useClickOutside, useCopyToClipboard, useCounter, useDebounceCallback, useDebounceValue, useDefault, useDidUpdate, useDocumentEvent, useDocumentTitle, useDocumentVisibility, useEvent, useEventListener, useEyeDropper, useFavicon, useField, useFps, useFullscreen, useHash, useHotkeys, useHover, useIdle, useIntersectionObserver, useInterval, useIsFirstRender, useIsomorphicLayoutEffect, useKeyPress, useKeyPressEvent, useKeyboard, useKeysPressed, useList, useLocalStorage, useLogger, useLongPress, useMediaQuery, useMount, useMouse, useMutation, useNetwork, useOnline, useOperatingSystem, useOrientation, usePageLeave, usePaint, usePreferredColorScheme, usePreferredLanguages, usePrevious, useQRCode, useQuery, useQueue, useRenderCount, useRenderInfo, useRerender, useScript, useSessionStorage, useSet, useStep, useStorage, useTextSelection, useTime, useTimeout, useToggle, useUnmount, useWebSocket, useWindowEvent, useWindowSize };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@siberiacancode/reactuse",
3
- "version": "0.0.31",
3
+ "version": "0.0.33",
4
4
  "description": "Ultimate tool",
5
5
  "license": "MIT",
6
6
  "author": {
@@ -1 +0,0 @@
1
- {"version":3,"file":"_rollupPluginBabelHelpers-XknWBRG7.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
@@ -1,3 +0,0 @@
1
- /* @license @siberiacancode/reactuse v0.0.31 */
2
- "use strict";var e=require("../../_rollupPluginBabelHelpers-XknWBRG7.js"),r=require("react"),u=require("../../utils/helpers/debounce.js");require("../../utils/helpers/isClient.js");exports.useDebouncedValue=function(n,s,t){console.log("@",t);var i=r.useRef(n),c=r.useState(n),l=e._slicedToArray(c,2),o=l[0],a=l[1],f=r.useMemo((function(){return u.debounce((function(e){return a(e)}),s)}),[s]);return r.useEffect((function(){i.current!==n&&(f(n),i.current=n)}),[n]),[o,f]};
3
- //# sourceMappingURL=useDebouncedValue.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useDebouncedValue.js","sources":["../../../../src/hooks/useDebouncedValue/useDebouncedValue.ts"],"sourcesContent":["import { useEffect, useMemo, useRef, useState } from 'react';\n\nimport { debounce } from '@/utils/helpers';\n\n// делаем value и state\n// усложняем ли хуки value и state\n\ninterface UseDebouncedValueOptions {\n maxWait?: number;\n}\n\nexport const useDebouncedValue = <Value>(\n value: Value,\n delay: number,\n options?: UseDebouncedValueOptions\n) => {\n console.log('@', options);\n const previousValueRef = useRef(value);\n const [state, setState] = useState(value);\n\n const debouncedSetState = useMemo(\n () => debounce((value: Value) => setState(value), delay),\n [delay]\n );\n\n useEffect(() => {\n if (previousValueRef.current === value) return;\n debouncedSetState(value);\n previousValueRef.current = value;\n }, [value]);\n\n return [state, debouncedSetState] as const;\n};\n"],"names":["value","delay","options","console","log","previousValueRef","useRef","_useState","useState","_useState2","_slicedToArray","state","setState","debouncedSetState","useMemo","debounce","useEffect","current"],"mappings":";+MAWiC,SAC/BA,EACAC,EACAC,GAEAC,QAAQC,IAAI,IAAKF,GACjB,IAAMG,EAAmBC,SAAON,GAChCO,EAA0BC,EAAQA,SAACR,GAAMS,EAAAC,EAAAA,eAAAH,EAAA,GAAlCI,EAAKF,EAAA,GAAEG,EAAQH,EAAA,GAEhBI,EAAoBC,EAAAA,SACxB,WAAA,OAAMC,EAAAA,UAAS,SAACf,GAAY,OAAKY,EAASZ,EAAM,GAAEC,KAClD,CAACA,IASH,OANAe,EAAAA,WAAU,WACJX,EAAiBY,UAAYjB,IACjCa,EAAkBb,GAClBK,EAAiBY,QAAUjB,EAC7B,GAAG,CAACA,IAEG,CAACW,EAAOE,EACjB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"_rollupPluginBabelHelpers-DmI4-Pc6.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
@@ -1,3 +0,0 @@
1
- /* @license @siberiacancode/reactuse v0.0.31 */
2
- import{_ as r}from"../../_rollupPluginBabelHelpers-DmI4-Pc6.js";import{useRef as e,useState as t,useMemo as n,useEffect as o}from"react";import{debounce as u}from"../../utils/helpers/debounce.js";import"../../utils/helpers/isClient.js";var i=function(i,l,s){console.log("@",s);var c=e(i),p=t(i),f=r(p,2),m=f[0],a=f[1],j=n((function(){return u((function(r){return a(r)}),l)}),[l]);return o((function(){c.current!==i&&(j(i),c.current=i)}),[i]),[m,j]};export{i as useDebouncedValue};
3
- //# sourceMappingURL=useDebouncedValue.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useDebouncedValue.js","sources":["../../../../src/hooks/useDebouncedValue/useDebouncedValue.ts"],"sourcesContent":["import { useEffect, useMemo, useRef, useState } from 'react';\n\nimport { debounce } from '@/utils/helpers';\n\n// делаем value и state\n// усложняем ли хуки value и state\n\ninterface UseDebouncedValueOptions {\n maxWait?: number;\n}\n\nexport const useDebouncedValue = <Value>(\n value: Value,\n delay: number,\n options?: UseDebouncedValueOptions\n) => {\n console.log('@', options);\n const previousValueRef = useRef(value);\n const [state, setState] = useState(value);\n\n const debouncedSetState = useMemo(\n () => debounce((value: Value) => setState(value), delay),\n [delay]\n );\n\n useEffect(() => {\n if (previousValueRef.current === value) return;\n debouncedSetState(value);\n previousValueRef.current = value;\n }, [value]);\n\n return [state, debouncedSetState] as const;\n};\n"],"names":["useDebouncedValue","value","delay","options","console","log","previousValueRef","useRef","_useState","useState","_useState2","_slicedToArray","state","setState","debouncedSetState","useMemo","debounce","useEffect","current"],"mappings":";4OAWO,IAAMA,EAAoB,SAC/BC,EACAC,EACAC,GAEAC,QAAQC,IAAI,IAAKF,GACjB,IAAMG,EAAmBC,EAAON,GAChCO,EAA0BC,EAASR,GAAMS,EAAAC,EAAAH,EAAA,GAAlCI,EAAKF,EAAA,GAAEG,EAAQH,EAAA,GAEhBI,EAAoBC,GACxB,WAAA,OAAMC,GAAS,SAACf,GAAY,OAAKY,EAASZ,EAAM,GAAEC,KAClD,CAACA,IASH,OANAe,GAAU,WACJX,EAAiBY,UAAYjB,IACjCa,EAAkBb,GAClBK,EAAiBY,QAAUjB,EAC7B,GAAG,CAACA,IAEG,CAACW,EAAOE,EACjB"}