@siberiacancode/reactuse 0.0.66 → 0.0.68

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 (264) hide show
  1. package/dist/cjs/{_rollupPluginBabelHelpers-DA8CS73W.js → _rollupPluginBabelHelpers-BNLoYKdA.js} +2 -2
  2. package/dist/cjs/_rollupPluginBabelHelpers-BNLoYKdA.js.map +1 -0
  3. package/dist/cjs/hooks/index.js +2 -2
  4. package/dist/cjs/hooks/useAsync/useAsync.js +2 -2
  5. package/dist/cjs/hooks/useAsync/useAsync.js.map +1 -1
  6. package/dist/cjs/hooks/useBattery/useBattery.js +2 -2
  7. package/dist/cjs/hooks/useBoolean/useBoolean.js +2 -2
  8. package/dist/cjs/hooks/useBreakpoints/constants/breakpoints.js +1 -1
  9. package/dist/cjs/hooks/useBreakpoints/useBreakpoints.js +2 -2
  10. package/dist/cjs/hooks/useBrowserLanguage/useBrowserLanguage.js +1 -1
  11. package/dist/cjs/hooks/useClickOutside/useClickOutside.js +2 -2
  12. package/dist/cjs/hooks/useClickOutside/useClickOutside.js.map +1 -1
  13. package/dist/cjs/hooks/useClipboard/useClipboard.js +2 -2
  14. package/dist/cjs/hooks/useCounter/useCounter.js +2 -2
  15. package/dist/cjs/hooks/useCssVar/useCssVar.js +2 -2
  16. package/dist/cjs/hooks/useDebounceCallback/useDebounceCallback.js +1 -1
  17. package/dist/cjs/hooks/useDebounceValue/useDebounceValue.js +2 -2
  18. package/dist/cjs/hooks/useDefault/useDefault.js +2 -2
  19. package/dist/cjs/hooks/useDeviceMotion/useDeviceMotion.js +2 -2
  20. package/dist/cjs/hooks/useDeviceMotion/useDeviceMotion.js.map +1 -1
  21. package/dist/cjs/hooks/useDeviceOrientation/useDeviceOrientation.js +2 -2
  22. package/dist/cjs/hooks/useDeviceOrientation/useDeviceOrientation.js.map +1 -1
  23. package/dist/cjs/hooks/useDidUpdate/useDidUpdate.js +1 -1
  24. package/dist/cjs/hooks/useDisclosure/useDisclosure.js +2 -2
  25. package/dist/cjs/hooks/useDocumentEvent/useDocumentEvent.js +2 -2
  26. package/dist/cjs/hooks/useDocumentTitle/useDocumentTitle.js +2 -2
  27. package/dist/cjs/hooks/useDocumentVisibility/useDocumentVisibility.js +1 -1
  28. package/dist/cjs/hooks/useEvent/useEvent.js +1 -1
  29. package/dist/cjs/hooks/useEventListener/useEventListener.js +2 -2
  30. package/dist/cjs/hooks/useEyeDropper/useEyeDropper.js +2 -2
  31. package/dist/cjs/hooks/useFavicon/useFavicon.js +2 -2
  32. package/dist/cjs/hooks/useField/useField.js +2 -2
  33. package/dist/cjs/hooks/useFileDialog/useFileDialog.js +2 -2
  34. package/dist/cjs/hooks/useFocus/useFocus.js +3 -0
  35. package/dist/cjs/hooks/useFocus/useFocus.js.map +1 -0
  36. package/dist/cjs/hooks/useFps/useFps.js +2 -2
  37. package/dist/cjs/hooks/useFullscreen/useFullscreen.js +2 -2
  38. package/dist/cjs/hooks/useGamepad/helpers/mapGamepadToXbox360Controller.js +1 -1
  39. package/dist/cjs/hooks/useGamepad/useGamepad.js +2 -2
  40. package/dist/cjs/hooks/useGeolocation/useGeolocation.js +2 -2
  41. package/dist/cjs/hooks/useHash/useHash.js +2 -2
  42. package/dist/cjs/hooks/useHotkeys/useHotkeys.js +2 -2
  43. package/dist/cjs/hooks/useHover/useHover.js +2 -2
  44. package/dist/cjs/hooks/useIdle/useIdle.js +2 -2
  45. package/dist/cjs/hooks/useImage/useImage.js +2 -2
  46. package/dist/cjs/hooks/useInfiniteScroll/useInfiniteScroll.js +2 -2
  47. package/dist/cjs/hooks/useIntersectionObserver/useIntersectionObserver.js +2 -2
  48. package/dist/cjs/hooks/useInterval/useInterval.js +2 -2
  49. package/dist/cjs/hooks/useInterval/useInterval.js.map +1 -1
  50. package/dist/cjs/hooks/useIsFirstRender/useIsFirstRender.js +1 -1
  51. package/dist/cjs/hooks/useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js +1 -1
  52. package/dist/cjs/hooks/useKeyPress/useKeyPress.js +2 -2
  53. package/dist/cjs/hooks/useKeyPressEvent/useKeyPressEvent.js +2 -2
  54. package/dist/cjs/hooks/useKeyboard/useKeyboard.js +2 -2
  55. package/dist/cjs/hooks/useKeysPressed/useKeysPressed.js +2 -2
  56. package/dist/cjs/hooks/useList/useList.js +2 -2
  57. package/dist/cjs/hooks/useLocalStorage/useLocalStorage.js +2 -2
  58. package/dist/cjs/hooks/useLogger/useLogger.js +2 -2
  59. package/dist/cjs/hooks/useLongPress/useLongPress.js +2 -2
  60. package/dist/cjs/hooks/useMap/useMap.js +2 -2
  61. package/dist/cjs/hooks/useMeasure/useMeasure.js +2 -2
  62. package/dist/cjs/hooks/useMediaQuery/useMediaQuery.js +1 -1
  63. package/dist/cjs/hooks/useMemory/useMemory.js +2 -2
  64. package/dist/cjs/hooks/useMount/useMount.js +1 -1
  65. package/dist/cjs/hooks/useMouse/useMouse.js +2 -2
  66. package/dist/cjs/hooks/useMutation/useMutation.js +2 -2
  67. package/dist/cjs/hooks/useMutation/useMutation.js.map +1 -1
  68. package/dist/cjs/hooks/useMutationObserver/useMutationObserver.js +2 -2
  69. package/dist/cjs/hooks/useNetwork/useNetwork.js +2 -2
  70. package/dist/cjs/hooks/useOffsetPagination/useOffsetPagination.js +2 -2
  71. package/dist/cjs/hooks/useOnline/useOnline.js +1 -1
  72. package/dist/cjs/hooks/useOperatingSystem/useOperatingSystem.js +1 -1
  73. package/dist/cjs/hooks/useOptimistic/useOptimistic.js +2 -2
  74. package/dist/cjs/hooks/useOptimistic/useOptimistic.js.map +1 -1
  75. package/dist/cjs/hooks/useOrientation/useOrientation.js +2 -2
  76. package/dist/cjs/hooks/useOtpCredential/useOtpCredential.js +2 -2
  77. package/dist/cjs/hooks/usePageLeave/usePageLeave.js +2 -2
  78. package/dist/cjs/hooks/usePaint/helpers/Paint.js +2 -2
  79. package/dist/cjs/hooks/usePaint/helpers/Pointer.js +2 -2
  80. package/dist/cjs/hooks/usePaint/usePaint.js +2 -2
  81. package/dist/cjs/hooks/useParallax/useParallax.js +2 -2
  82. package/dist/cjs/hooks/useParallax/useParallax.js.map +1 -1
  83. package/dist/cjs/hooks/usePermission/usePermission.js +2 -2
  84. package/dist/cjs/hooks/usePreferredColorScheme/usePreferredColorScheme.js +1 -1
  85. package/dist/cjs/hooks/usePreferredContrast/usePreferredContrast.js +1 -1
  86. package/dist/cjs/hooks/usePreferredDark/usePreferredDark.js +1 -1
  87. package/dist/cjs/hooks/usePreferredLanguages/usePreferredLanguages.js +1 -1
  88. package/dist/cjs/hooks/usePreferredReducedMotion/usePreferredReducedMotion.js +1 -1
  89. package/dist/cjs/hooks/usePrevious/usePrevious.js +1 -1
  90. package/dist/cjs/hooks/useQuery/useQuery.js +2 -2
  91. package/dist/cjs/hooks/useQueue/useQueue.js +2 -2
  92. package/dist/cjs/hooks/useRaf/useRaf.js +2 -2
  93. package/dist/cjs/hooks/useRafValue/useRafValue.js +2 -2
  94. package/dist/cjs/hooks/useRenderCount/useRenderCount.js +1 -1
  95. package/dist/cjs/hooks/useRenderInfo/useRenderInfo.js +1 -1
  96. package/dist/cjs/hooks/useRerender/useRerender.js +2 -2
  97. package/dist/cjs/hooks/useResizeObserver/useResizeObserver.js +2 -2
  98. package/dist/cjs/hooks/useScreenOrientation/useScreenOrientation.js +2 -2
  99. package/dist/cjs/hooks/useScreenOrientation/useScreenOrientation.js.map +1 -1
  100. package/dist/cjs/hooks/useScript/useScript.js +2 -2
  101. package/dist/cjs/hooks/useSessionStorage/useSessionStorage.js +2 -2
  102. package/dist/cjs/hooks/useSet/useSet.js +2 -2
  103. package/dist/cjs/hooks/useShare/useShare.js +2 -2
  104. package/dist/cjs/hooks/useStep/useStep.js +2 -2
  105. package/dist/cjs/hooks/useStopwatch/useStopwatch.js +2 -2
  106. package/dist/cjs/hooks/useStorage/useStorage.js +2 -2
  107. package/dist/cjs/hooks/useTextSelection/useTextSelection.js +2 -2
  108. package/dist/cjs/hooks/useTime/useTime.js +2 -2
  109. package/dist/cjs/hooks/useTimeout/useTimeout.js +2 -2
  110. package/dist/cjs/hooks/useTimer/useTimer.js +3 -0
  111. package/dist/cjs/hooks/useTimer/useTimer.js.map +1 -0
  112. package/dist/cjs/hooks/useToggle/useToggle.js +2 -2
  113. package/dist/cjs/hooks/useUnmount/useUnmount.js +1 -1
  114. package/dist/cjs/hooks/useWebSocket/useWebSocket.js +2 -2
  115. package/dist/cjs/hooks/useWindowEvent/useWindowEvent.js +2 -2
  116. package/dist/cjs/hooks/useWindowScroll/useWindowScroll.js +2 -2
  117. package/dist/cjs/hooks/useWindowSize/useWindowSize.js +2 -2
  118. package/dist/cjs/hooks/useWizard/useWizard.js +2 -2
  119. package/dist/cjs/{index-DNTtg9NP.js → index-Dr1FAPr5.js} +2 -2
  120. package/dist/cjs/{index-DNTtg9NP.js.map → index-Dr1FAPr5.js.map} +1 -1
  121. package/dist/cjs/index.js +2 -2
  122. package/dist/cjs/utils/helpers/debounce.js +2 -2
  123. package/dist/cjs/utils/helpers/debounce.js.map +1 -1
  124. package/dist/cjs/utils/helpers/getElement.js +1 -1
  125. package/dist/cjs/utils/helpers/getRetry.js +1 -1
  126. package/dist/cjs/utils/helpers/index.js +1 -1
  127. package/dist/cjs/utils/helpers/isClient.js +1 -1
  128. package/dist/cjs/utils/helpers/throttle.js +2 -2
  129. package/dist/cjs/utils/helpers/throttle.js.map +1 -1
  130. package/dist/cjs/utils/helpers/time/getDate.js +1 -1
  131. package/dist/esm/{_rollupPluginBabelHelpers-CWXiPzDd.js → _rollupPluginBabelHelpers-CfvNaX0r.js} +2 -2
  132. package/dist/esm/_rollupPluginBabelHelpers-CfvNaX0r.js.map +1 -0
  133. package/dist/esm/hooks/index.js +2 -2
  134. package/dist/esm/hooks/useAsync/useAsync.js +2 -2
  135. package/dist/esm/hooks/useAsync/useAsync.js.map +1 -1
  136. package/dist/esm/hooks/useBattery/useBattery.js +2 -2
  137. package/dist/esm/hooks/useBoolean/useBoolean.js +2 -2
  138. package/dist/esm/hooks/useBreakpoints/constants/breakpoints.js +1 -1
  139. package/dist/esm/hooks/useBreakpoints/useBreakpoints.js +2 -2
  140. package/dist/esm/hooks/useBrowserLanguage/useBrowserLanguage.js +1 -1
  141. package/dist/esm/hooks/useClickOutside/useClickOutside.js +2 -2
  142. package/dist/esm/hooks/useClickOutside/useClickOutside.js.map +1 -1
  143. package/dist/esm/hooks/useClipboard/useClipboard.js +2 -2
  144. package/dist/esm/hooks/useCounter/useCounter.js +2 -2
  145. package/dist/esm/hooks/useCssVar/useCssVar.js +2 -2
  146. package/dist/esm/hooks/useDebounceCallback/useDebounceCallback.js +1 -1
  147. package/dist/esm/hooks/useDebounceValue/useDebounceValue.js +2 -2
  148. package/dist/esm/hooks/useDefault/useDefault.js +2 -2
  149. package/dist/esm/hooks/useDeviceMotion/useDeviceMotion.js +2 -2
  150. package/dist/esm/hooks/useDeviceMotion/useDeviceMotion.js.map +1 -1
  151. package/dist/esm/hooks/useDeviceOrientation/useDeviceOrientation.js +2 -2
  152. package/dist/esm/hooks/useDeviceOrientation/useDeviceOrientation.js.map +1 -1
  153. package/dist/esm/hooks/useDidUpdate/useDidUpdate.js +1 -1
  154. package/dist/esm/hooks/useDisclosure/useDisclosure.js +2 -2
  155. package/dist/esm/hooks/useDocumentEvent/useDocumentEvent.js +2 -2
  156. package/dist/esm/hooks/useDocumentTitle/useDocumentTitle.js +2 -2
  157. package/dist/esm/hooks/useDocumentVisibility/useDocumentVisibility.js +1 -1
  158. package/dist/esm/hooks/useEvent/useEvent.js +1 -1
  159. package/dist/esm/hooks/useEventListener/useEventListener.js +2 -2
  160. package/dist/esm/hooks/useEyeDropper/useEyeDropper.js +2 -2
  161. package/dist/esm/hooks/useFavicon/useFavicon.js +2 -2
  162. package/dist/esm/hooks/useField/useField.js +2 -2
  163. package/dist/esm/hooks/useFileDialog/useFileDialog.js +2 -2
  164. package/dist/esm/hooks/useFocus/useFocus.js +3 -0
  165. package/dist/esm/hooks/useFocus/useFocus.js.map +1 -0
  166. package/dist/esm/hooks/useFps/useFps.js +2 -2
  167. package/dist/esm/hooks/useFullscreen/useFullscreen.js +2 -2
  168. package/dist/esm/hooks/useGamepad/helpers/mapGamepadToXbox360Controller.js +1 -1
  169. package/dist/esm/hooks/useGamepad/useGamepad.js +2 -2
  170. package/dist/esm/hooks/useGeolocation/useGeolocation.js +2 -2
  171. package/dist/esm/hooks/useHash/useHash.js +2 -2
  172. package/dist/esm/hooks/useHotkeys/useHotkeys.js +2 -2
  173. package/dist/esm/hooks/useHover/useHover.js +2 -2
  174. package/dist/esm/hooks/useIdle/useIdle.js +2 -2
  175. package/dist/esm/hooks/useImage/useImage.js +2 -2
  176. package/dist/esm/hooks/useInfiniteScroll/useInfiniteScroll.js +2 -2
  177. package/dist/esm/hooks/useIntersectionObserver/useIntersectionObserver.js +2 -2
  178. package/dist/esm/hooks/useInterval/useInterval.js +2 -2
  179. package/dist/esm/hooks/useInterval/useInterval.js.map +1 -1
  180. package/dist/esm/hooks/useIsFirstRender/useIsFirstRender.js +1 -1
  181. package/dist/esm/hooks/useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js +1 -1
  182. package/dist/esm/hooks/useKeyPress/useKeyPress.js +2 -2
  183. package/dist/esm/hooks/useKeyPressEvent/useKeyPressEvent.js +2 -2
  184. package/dist/esm/hooks/useKeyboard/useKeyboard.js +2 -2
  185. package/dist/esm/hooks/useKeysPressed/useKeysPressed.js +2 -2
  186. package/dist/esm/hooks/useList/useList.js +2 -2
  187. package/dist/esm/hooks/useLocalStorage/useLocalStorage.js +2 -2
  188. package/dist/esm/hooks/useLogger/useLogger.js +2 -2
  189. package/dist/esm/hooks/useLongPress/useLongPress.js +2 -2
  190. package/dist/esm/hooks/useMap/useMap.js +2 -2
  191. package/dist/esm/hooks/useMeasure/useMeasure.js +2 -2
  192. package/dist/esm/hooks/useMediaQuery/useMediaQuery.js +1 -1
  193. package/dist/esm/hooks/useMemory/useMemory.js +2 -2
  194. package/dist/esm/hooks/useMount/useMount.js +1 -1
  195. package/dist/esm/hooks/useMouse/useMouse.js +2 -2
  196. package/dist/esm/hooks/useMutation/useMutation.js +2 -2
  197. package/dist/esm/hooks/useMutation/useMutation.js.map +1 -1
  198. package/dist/esm/hooks/useMutationObserver/useMutationObserver.js +2 -2
  199. package/dist/esm/hooks/useNetwork/useNetwork.js +2 -2
  200. package/dist/esm/hooks/useOffsetPagination/useOffsetPagination.js +2 -2
  201. package/dist/esm/hooks/useOnline/useOnline.js +1 -1
  202. package/dist/esm/hooks/useOperatingSystem/useOperatingSystem.js +1 -1
  203. package/dist/esm/hooks/useOptimistic/useOptimistic.js +2 -2
  204. package/dist/esm/hooks/useOptimistic/useOptimistic.js.map +1 -1
  205. package/dist/esm/hooks/useOrientation/useOrientation.js +2 -2
  206. package/dist/esm/hooks/useOtpCredential/useOtpCredential.js +2 -2
  207. package/dist/esm/hooks/usePageLeave/usePageLeave.js +2 -2
  208. package/dist/esm/hooks/usePaint/helpers/Paint.js +2 -2
  209. package/dist/esm/hooks/usePaint/helpers/Pointer.js +2 -2
  210. package/dist/esm/hooks/usePaint/usePaint.js +2 -2
  211. package/dist/esm/hooks/useParallax/useParallax.js +2 -2
  212. package/dist/esm/hooks/useParallax/useParallax.js.map +1 -1
  213. package/dist/esm/hooks/usePermission/usePermission.js +2 -2
  214. package/dist/esm/hooks/usePreferredColorScheme/usePreferredColorScheme.js +1 -1
  215. package/dist/esm/hooks/usePreferredContrast/usePreferredContrast.js +1 -1
  216. package/dist/esm/hooks/usePreferredDark/usePreferredDark.js +1 -1
  217. package/dist/esm/hooks/usePreferredLanguages/usePreferredLanguages.js +1 -1
  218. package/dist/esm/hooks/usePreferredReducedMotion/usePreferredReducedMotion.js +1 -1
  219. package/dist/esm/hooks/usePrevious/usePrevious.js +1 -1
  220. package/dist/esm/hooks/useQuery/useQuery.js +2 -2
  221. package/dist/esm/hooks/useQueue/useQueue.js +2 -2
  222. package/dist/esm/hooks/useRaf/useRaf.js +2 -2
  223. package/dist/esm/hooks/useRafValue/useRafValue.js +2 -2
  224. package/dist/esm/hooks/useRenderCount/useRenderCount.js +1 -1
  225. package/dist/esm/hooks/useRenderInfo/useRenderInfo.js +1 -1
  226. package/dist/esm/hooks/useRerender/useRerender.js +2 -2
  227. package/dist/esm/hooks/useResizeObserver/useResizeObserver.js +2 -2
  228. package/dist/esm/hooks/useScreenOrientation/useScreenOrientation.js +2 -2
  229. package/dist/esm/hooks/useScreenOrientation/useScreenOrientation.js.map +1 -1
  230. package/dist/esm/hooks/useScript/useScript.js +2 -2
  231. package/dist/esm/hooks/useSessionStorage/useSessionStorage.js +2 -2
  232. package/dist/esm/hooks/useSet/useSet.js +2 -2
  233. package/dist/esm/hooks/useShare/useShare.js +2 -2
  234. package/dist/esm/hooks/useStep/useStep.js +2 -2
  235. package/dist/esm/hooks/useStopwatch/useStopwatch.js +2 -2
  236. package/dist/esm/hooks/useStorage/useStorage.js +2 -2
  237. package/dist/esm/hooks/useTextSelection/useTextSelection.js +2 -2
  238. package/dist/esm/hooks/useTime/useTime.js +2 -2
  239. package/dist/esm/hooks/useTimeout/useTimeout.js +2 -2
  240. package/dist/esm/hooks/useTimer/useTimer.js +3 -0
  241. package/dist/esm/hooks/useTimer/useTimer.js.map +1 -0
  242. package/dist/esm/hooks/useToggle/useToggle.js +2 -2
  243. package/dist/esm/hooks/useUnmount/useUnmount.js +1 -1
  244. package/dist/esm/hooks/useWebSocket/useWebSocket.js +2 -2
  245. package/dist/esm/hooks/useWindowEvent/useWindowEvent.js +2 -2
  246. package/dist/esm/hooks/useWindowScroll/useWindowScroll.js +2 -2
  247. package/dist/esm/hooks/useWindowSize/useWindowSize.js +2 -2
  248. package/dist/esm/hooks/useWizard/useWizard.js +2 -2
  249. package/dist/esm/{index-CNvEQA9K.js → index-D19QVrSm.js} +2 -2
  250. package/dist/esm/{index-CNvEQA9K.js.map → index-D19QVrSm.js.map} +1 -1
  251. package/dist/esm/index.js +2 -2
  252. package/dist/esm/utils/helpers/debounce.js +2 -2
  253. package/dist/esm/utils/helpers/debounce.js.map +1 -1
  254. package/dist/esm/utils/helpers/getElement.js +1 -1
  255. package/dist/esm/utils/helpers/getRetry.js +1 -1
  256. package/dist/esm/utils/helpers/index.js +1 -1
  257. package/dist/esm/utils/helpers/isClient.js +1 -1
  258. package/dist/esm/utils/helpers/throttle.js +2 -2
  259. package/dist/esm/utils/helpers/throttle.js.map +1 -1
  260. package/dist/esm/utils/helpers/time/getDate.js +1 -1
  261. package/dist/index.d.ts +147 -2
  262. package/package.json +8 -4
  263. package/dist/cjs/_rollupPluginBabelHelpers-DA8CS73W.js.map +0 -1
  264. package/dist/esm/_rollupPluginBabelHelpers-CWXiPzDd.js.map +0 -1
package/dist/index.d.ts CHANGED
@@ -795,6 +795,50 @@ interface UseFileDialog {
795
795
  */
796
796
  declare const useFileDialog: UseFileDialog;
797
797
 
798
+ type UseFocusTarget = RefObject<Element | null | undefined> | (() => Element) | Element;
799
+ /** The use focus options type */
800
+ interface UseFocusOptions {
801
+ /** The initial focus state of the target */
802
+ initialFocus?: boolean;
803
+ }
804
+ /** The use focus return type */
805
+ interface UseFocusReturn {
806
+ /** Is the target focused */
807
+ focus: () => void;
808
+ /** Is the target focused */
809
+ blur: () => void;
810
+ /** The boolean state value of the target */
811
+ focused: boolean;
812
+ }
813
+ interface UseFocus {
814
+ <Target extends UseFocusTarget>(target: Target, options?: UseFocusOptions): UseFocusReturn;
815
+ <Target extends UseFocusTarget>(options?: UseFocusOptions): UseFocusReturn & {
816
+ ref: (node: Target) => void;
817
+ };
818
+ }
819
+ /**
820
+ * @name useFocus
821
+ * @description - Hook that allows you to focus on a specific element
822
+ * @category Browser
823
+ *
824
+ * @overload
825
+ * @template Target The target element
826
+ * @param {Target} target The target element to focus
827
+ * @param {boolean} [options.initialFocus=false] The initial focus state of the target
828
+ * @returns {UseFocusReturn} An object with a `focus` boolean state value
829
+ *
830
+ * @example
831
+ * const { focus, blur, focused } = useFocus(target);
832
+ *
833
+ * @overload
834
+ * @param {boolean} [options.initialFocus=false] The initial focus state of the target
835
+ * @returns {UseFocusReturn} An object with a `focus` boolean state value
836
+ *
837
+ * @example
838
+ * const { ref, focus, blur, focused } = useFocus();
839
+ */
840
+ declare const useFocus: UseFocus;
841
+
798
842
  /**
799
843
  * @name useFps
800
844
  * @description - Hook that measures frames per second
@@ -2177,6 +2221,58 @@ interface UsePaint {
2177
2221
  */
2178
2222
  declare const usePaint: UsePaint;
2179
2223
 
2224
+ /** The use parallax value type */
2225
+ interface UseParallaxValue {
2226
+ /** Roll value. Scaled to `-0.5 ~ 0.5` */
2227
+ roll: number;
2228
+ /** Tilt value. Scaled to `-0.5 ~ 0.5` */
2229
+ tilt: number;
2230
+ /** Sensor source, can be `mouse` or `deviceOrientation` */
2231
+ source: 'deviceOrientation' | 'mouse';
2232
+ }
2233
+ /** The use parallax options type */
2234
+ interface UseParallaxOptions {
2235
+ /** Device orientation tilt adjust function */
2236
+ deviceOrientationTiltAdjust?: (value: number) => number;
2237
+ /** Device orientation roll adjust function */
2238
+ deviceOrientationRollAdjust?: (value: number) => number;
2239
+ /** Mouse tilt adjust function */
2240
+ mouseTiltAdjust?: (value: number) => number;
2241
+ /** Mouse roll adjust function */
2242
+ mouseRollAdjust?: (value: number) => number;
2243
+ }
2244
+ interface UseParallaxReturn {
2245
+ value: UseParallaxValue;
2246
+ }
2247
+ interface UseParallax {
2248
+ <Target extends UseMouseTarget>(target: Target, options?: UseParallaxOptions): UseParallaxReturn;
2249
+ <Target extends UseMouseTarget>(params?: UseParallaxOptions): UseParallaxReturn & {
2250
+ ref: (node: Target) => void;
2251
+ };
2252
+ }
2253
+ /**
2254
+ * @name useParallax
2255
+ * @description - Hook to help create parallax effect
2256
+ * @category Sensors
2257
+ *
2258
+ * @overload
2259
+ * @template Target The target element for the parallax effect
2260
+ * @param {Target} target The target element for the parallax effect
2261
+ * @param {UseParallaxOptions} options The options for the parallax effect
2262
+ * @returns {UseParallaxReturn} An object with the current mouse position
2263
+ *
2264
+ * @example
2265
+ * const { roll, tilt, source } = useParallax(target);
2266
+ *
2267
+ * @overload
2268
+ * @template Target The target element for the parallax effect
2269
+ * @param {UseParallaxOptions} options The options for the parallax effect
2270
+ *
2271
+ * @example
2272
+ * const { ref, roll, tilt, source } = useParallax();
2273
+ */
2274
+ declare const useParallax: UseParallax;
2275
+
2180
2276
  /** The permission name */
2181
2277
  type UsePermissionName = PermissionName | 'accelerometer' | 'accessibility-events' | 'ambient-light-sensor' | 'background-sync' | 'camera' | 'clipboard-read' | 'clipboard-write' | 'gyroscope' | 'magnetometer' | 'microphone' | 'notifications' | 'payment-handler' | 'persistent-storage' | 'push' | 'speaker';
2182
2278
  /** The use permission return type */
@@ -2789,6 +2885,55 @@ interface UseTimeoutReturn {
2789
2885
  */
2790
2886
  declare function useTimeout(callback: () => void, delay: number): UseTimeoutReturn;
2791
2887
 
2888
+ declare const getTimeFromSeconds: (timestamp: number) => {
2889
+ seconds: number;
2890
+ minutes: number;
2891
+ hours: number;
2892
+ days: number;
2893
+ };
2894
+ /** The use timer options type */
2895
+ interface UseTimerOptions {
2896
+ /** Whether the timer should start automatically */
2897
+ autostart?: boolean;
2898
+ /** Callback function to be executed on each tick of the timer */
2899
+ onTick?: (seconds: number) => void;
2900
+ }
2901
+ /** The use timer return type */
2902
+ interface UseTimerReturn {
2903
+ /** flag to indicate if timer is running or not */
2904
+ running: boolean;
2905
+ /** The day count of the timer */
2906
+ days: number;
2907
+ /** The hour count of the timer */
2908
+ hours: number;
2909
+ /** The minute count of the timer */
2910
+ minutes: number;
2911
+ /** The second count of the timer */
2912
+ seconds: number;
2913
+ /** The function to pause the timer */
2914
+ pause: () => void;
2915
+ /** The function to start the timer */
2916
+ start: () => void;
2917
+ /** The function to restart the timer */
2918
+ restart: (time: number, autostart?: boolean) => void;
2919
+ /** The function to toggle the timer */
2920
+ toggle: () => void;
2921
+ }
2922
+ /**
2923
+ * @name useTimer
2924
+ * @description - Hook that creates a timer functionality
2925
+ * @category Time
2926
+ *
2927
+ * @param {number} timestamp The timestamp value that define for how long the timer will be running
2928
+ * @param {() => void} callback The function to be executed once countdown timer is expired
2929
+ * @param {boolean} options.autostart The flag to decide if timer should start automatically
2930
+ * @param {(timestamp: number) => void} options.onTick The function to be executed on each tick of the timer
2931
+ *
2932
+ * @example
2933
+ * const { days, hours, minutes, seconds, toggle, pause, start, restart, running } = useTimer(1000, () => console.log('ready'));
2934
+ */
2935
+ declare const useTimer: (timestamp: number, callback: () => void, options?: UseTimerOptions) => UseTimerReturn;
2936
+
2792
2937
  /** The use toggle return type */
2793
2938
  type UseToggleReturn<Value> = readonly [Value, (value?: Value) => void];
2794
2939
  /**
@@ -2949,7 +3094,7 @@ declare const useWizard: <WizardStepId extends string>(map: WizardItem<WizardSte
2949
3094
  history: WizardStepId[];
2950
3095
  };
2951
3096
 
2952
- declare const debounce: <Params extends unknown[]>(callback: (...args: Params) => void, delay: number) => ((...args: Params) => void);
3097
+ declare function debounce<Params extends unknown[]>(callback: (...args: Params) => void, delay: number): ((...args: Params) => void);
2953
3098
 
2954
3099
  type GetElementTarget = RefObject<Element | null | undefined> | (() => Element) | Element | Window | Document;
2955
3100
  declare const getElement: <Target extends GetElementTarget>(target: Target) => Element | (Target & Document) | (Target & Window) | null | undefined;
@@ -2974,4 +3119,4 @@ declare const getDate: (now?: Date) => {
2974
3119
  timestamp: number;
2975
3120
  };
2976
3121
 
2977
- export { BREAKPOINTS_ANT_DESIGN, BREAKPOINTS_BOOTSTRAP_V5, BREAKPOINTS_MANTINE, BREAKPOINTS_MASTER_CSS, BREAKPOINTS_MATERIAL_UI, BREAKPOINTS_PRIME_FLEX, BREAKPOINTS_QUASAR_V2, BREAKPOINTS_SEMANTIC, BREAKPOINTS_TAILWIND, type BatteryManager, type Breakpoints, type ColorSelectionOptions, type ColorSelectionResult, type Connection, type ConnectionEffectiveType, type ConnectionType, type EyeDropper, type EyeDropperConstructor, type GetElementTarget, type LongPressReactEvents, type OperatingSystem, type OrientationLockType, type RequestOptions, SCRIPT_STATUS_ATTRIBUTE_NAME, type ScrollPosition, type UseAsyncReturn, type UseBatteryStateReturn, type UseBooleanReturn, type UseBreakpointsReturn, type UseBreakpointsStrategy, type UseClickOutside, type UseCopyToClipboardParams, type UseCopyToClipboardReturn, type UseCounter, type UseCounterOptions, type UseCounterReturn, type UseCssVar, type UseCssVarReturn, type UseCssVarTarget, type UseDeviceMotionParams, type UseDeviceMotionReturn, type UseDeviceOrientationReturn, type UseDeviceOrientationValue, type UseDisclosureOptions, type UseDisclosureReturn, type UseDocumentTitleOptions, type UseDocumentTitleReturn, type UseEventListener, type UseEventListenerOptions, type UseEventListenerReturn, type UseEventListenerTarget, type UseEyeDropperReturn, type UseFaviconReturn, type UseFieldParams, type UseFieldRegisterParams, type UseFieldReturn, type UseFileDialog, type UseFileDialogOptions, type UseFileDialogReturn, type UseFullScreen, type UseFullScreenOptions, type UseFullScreenReturn, type UseFullScreenTarget, type UseGamepadStateReturn, type UseGeolocationParams, type UseGeolocationReturn, type UseHotkeysHotkeys, type UseHotkeysKey, type UseHotkeysOptions, type UseHover, type UseHoverOptions, type UseHoverTarget, type UseIdleOptions, type UseIdleReturn, type UseImageOptions, type UseImageReturn, type UseInfiniteScroll, type UseInfiniteScrollOptions, type UseInfiniteScrollTarget, type UseIntersectionObserver, type UseIntersectionObserverOptions, type UseIntersectionObserverReturn, type UseIntersectionObserverTarget, type UseIntervalOptions, type UseIntervalReturn, type UseKeyPressEvent, type UseKeyPressEventKey, type UseKeyPressKey, type UseKeyPressOptions, type UseKeyboardParams, type UseKeysPressedParams, type UseListReturn, type UseLongPressBind, type UseLongPressOptions, type UseLongPressReturn, type UseLongPressTarget, type UseMapReturn, type UseMeasureReturn, type UseMeasureScreen, type UseMeasureTarget, type UseMemoryReturn, type UseMouse, type UseMouseReturn, type UseMouseTarget, type UseMutationObserver, type UseMutationObserverOptions, type UseMutationObserverReturn, type UseMutationObserverTarget, type UseNetworkReturn, type UseOffsetPaginationOptions, type UseOffsetPaginationReturn, type UseOptimisticReturn, type UseOrientationReturn, type UseOtpCredential, type UseOtpCredentialCallback, type UseOtpCredentialParams, type UseOtpCredentialReturn, type UsePaint, type UsePaintOptions, type UsePaintReturn, type UsePaintTarget, type UsePermissionName, type UsePermissionReturn, type UsePreferredColorSchemeReturn, type UsePreferredContrastReturn, type UsePreferredReducedMotionReturn, type UseQueryOptions, type UseQueryReturn, type UseQueueReturn, type UseRafCallback, type UseRafOptions, type UseRafParams, type UseRafReturn, type UseRafValueReturn, type UseRenderInfoReturn, type UseResizeObserver, type UseResizeObserverOptions, type UseResizeObserverReturn, type UseResizeObserverTarget, type UseScreenOrientationValue, type UseScriptOptions, type UseScriptStatus, type UseShareParams, type UseShareReturn, type UseStopwatchOptions, type UseStopwatchReturn, type UseStorageInitialValue, type UseStorageOptions, type UseStorageReturn, type UseTextSelectionReturn, type UseTimeReturn, type UseToggleReturn, type UseWebSocketOptions, type UseWebSocketReturn, type UseWebSocketStatus, type UseWebSocketUrl, type UseWindowSizeReturn, type WizardItem, debounce, dispatchStorageEvent, getConnection, getDate, getElement, getOperatingSystem, getRangesSelection, getRetry, isClient, isHotkeyMatch, isPermissionAllowed, legacyCopyToClipboard, mapGamepadToXbox360Controller, scrollTo, throttle, useAsync, useBattery, useBoolean, useBreakpoints, useBrowserLanguage, useClickOutside, useClipboard, useCounter, useCssVar, useDebounceCallback, useDebounceValue, useDefault, useDeviceMotion, useDeviceOrientation, useDidUpdate, useDisclosure, useDocumentEvent, useDocumentTitle, useDocumentVisibility, useEvent, useEventListener, useEyeDropper, useFavicon, useField, useFileDialog, useFps, useFullscreen, useGamepad, useGeolocation, useHash, useHotkeys, useHover, useIdle, useImage, useInfiniteScroll, useIntersectionObserver, useInterval, useIsFirstRender, useIsomorphicLayoutEffect, useKeyPress, useKeyPressEvent, useKeyboard, useKeysPressed, useList, useLocalStorage, useLogger, useLongPress, useMap, useMeasure, useMediaQuery, useMemory, useMount, useMouse, useMutation, useMutationObserver, useNetwork, useOffsetPagination, useOnline, useOperatingSystem, useOptimistic, useOrientation, useOtpCredential, usePageLeave, usePaint, usePermission, usePreferredColorScheme, usePreferredContrast, usePreferredDark, usePreferredLanguages, usePreferredReducedMotion, usePrevious, useQuery, useQueue, useRaf, useRafValue, useRenderCount, useRenderInfo, useRerender, useResizeObserver, useScreenOrientation, type useScreenOrientationReturn, useScript, useSessionStorage, useSet, useShare, useStep, useStopwatch, useStorage, useTextSelection, useTime, useTimeout, useToggle, useUnmount, useWebSocket, useWindowEvent, useWindowScroll, useWindowSize, useWizard };
3122
+ export { BREAKPOINTS_ANT_DESIGN, BREAKPOINTS_BOOTSTRAP_V5, BREAKPOINTS_MANTINE, BREAKPOINTS_MASTER_CSS, BREAKPOINTS_MATERIAL_UI, BREAKPOINTS_PRIME_FLEX, BREAKPOINTS_QUASAR_V2, BREAKPOINTS_SEMANTIC, BREAKPOINTS_TAILWIND, type BatteryManager, type Breakpoints, type ColorSelectionOptions, type ColorSelectionResult, type Connection, type ConnectionEffectiveType, type ConnectionType, type EyeDropper, type EyeDropperConstructor, type GetElementTarget, type LongPressReactEvents, type OperatingSystem, type OrientationLockType, type RequestOptions, SCRIPT_STATUS_ATTRIBUTE_NAME, type ScrollPosition, type UseAsyncReturn, type UseBatteryStateReturn, type UseBooleanReturn, type UseBreakpointsReturn, type UseBreakpointsStrategy, type UseClickOutside, type UseClickOutsideTarget, type UseCopyToClipboardParams, type UseCopyToClipboardReturn, type UseCounter, type UseCounterOptions, type UseCounterReturn, type UseCssVar, type UseCssVarReturn, type UseCssVarTarget, type UseDeviceMotionParams, type UseDeviceMotionReturn, type UseDeviceOrientationReturn, type UseDeviceOrientationValue, type UseDisclosureOptions, type UseDisclosureReturn, type UseDocumentTitleOptions, type UseDocumentTitleReturn, type UseEventListener, type UseEventListenerOptions, type UseEventListenerReturn, type UseEventListenerTarget, type UseEyeDropperReturn, type UseFaviconReturn, type UseFieldParams, type UseFieldRegisterParams, type UseFieldReturn, type UseFileDialog, type UseFileDialogOptions, type UseFileDialogReturn, type UseFocus, type UseFocusOptions, type UseFocusReturn, type UseFocusTarget, type UseFullScreen, type UseFullScreenOptions, type UseFullScreenReturn, type UseFullScreenTarget, type UseGamepadStateReturn, type UseGeolocationParams, type UseGeolocationReturn, type UseHotkeysHotkeys, type UseHotkeysKey, type UseHotkeysOptions, type UseHover, type UseHoverOptions, type UseHoverTarget, type UseIdleOptions, type UseIdleReturn, type UseImageOptions, type UseImageReturn, type UseInfiniteScroll, type UseInfiniteScrollOptions, type UseInfiniteScrollTarget, type UseIntersectionObserver, type UseIntersectionObserverOptions, type UseIntersectionObserverReturn, type UseIntersectionObserverTarget, type UseIntervalOptions, type UseIntervalReturn, type UseKeyPressEvent, type UseKeyPressEventKey, type UseKeyPressKey, type UseKeyPressOptions, type UseKeyboardParams, type UseKeysPressedParams, type UseListReturn, type UseLongPressBind, type UseLongPressOptions, type UseLongPressReturn, type UseLongPressTarget, type UseMapReturn, type UseMeasureReturn, type UseMeasureScreen, type UseMeasureTarget, type UseMemoryReturn, type UseMouse, type UseMouseReturn, type UseMouseTarget, type UseMutationObserver, type UseMutationObserverOptions, type UseMutationObserverReturn, type UseMutationObserverTarget, type UseNetworkReturn, type UseOffsetPaginationOptions, type UseOffsetPaginationReturn, type UseOptimisticReturn, type UseOrientationReturn, type UseOtpCredential, type UseOtpCredentialCallback, type UseOtpCredentialParams, type UseOtpCredentialReturn, type UsePaint, type UsePaintOptions, type UsePaintReturn, type UsePaintTarget, type UseParallax, type UseParallaxOptions, type UseParallaxValue, type UsePermissionName, type UsePermissionReturn, type UsePreferredColorSchemeReturn, type UsePreferredContrastReturn, type UsePreferredReducedMotionReturn, type UseQueryOptions, type UseQueryReturn, type UseQueueReturn, type UseRafCallback, type UseRafOptions, type UseRafParams, type UseRafReturn, type UseRafValueReturn, type UseRenderInfoReturn, type UseResizeObserver, type UseResizeObserverOptions, type UseResizeObserverReturn, type UseResizeObserverTarget, type UseScreenOrientationValue, type UseScriptOptions, type UseScriptStatus, type UseShareParams, type UseShareReturn, type UseStopwatchOptions, type UseStopwatchReturn, type UseStorageInitialValue, type UseStorageOptions, type UseStorageReturn, type UseTextSelectionReturn, type UseTimeReturn, type UseTimerOptions, type UseTimerReturn, type UseToggleReturn, type UseWebSocketOptions, type UseWebSocketReturn, type UseWebSocketStatus, type UseWebSocketUrl, type UseWindowSizeReturn, type WizardItem, debounce, dispatchStorageEvent, getConnection, getDate, getElement, getOperatingSystem, getRangesSelection, getRetry, getTimeFromSeconds, isClient, isHotkeyMatch, isPermissionAllowed, legacyCopyToClipboard, mapGamepadToXbox360Controller, scrollTo, throttle, useAsync, useBattery, useBoolean, useBreakpoints, useBrowserLanguage, useClickOutside, useClipboard, useCounter, useCssVar, useDebounceCallback, useDebounceValue, useDefault, useDeviceMotion, useDeviceOrientation, useDidUpdate, useDisclosure, useDocumentEvent, useDocumentTitle, useDocumentVisibility, useEvent, useEventListener, useEyeDropper, useFavicon, useField, useFileDialog, useFocus, useFps, useFullscreen, useGamepad, useGeolocation, useHash, useHotkeys, useHover, useIdle, useImage, useInfiniteScroll, useIntersectionObserver, useInterval, useIsFirstRender, useIsomorphicLayoutEffect, useKeyPress, useKeyPressEvent, useKeyboard, useKeysPressed, useList, useLocalStorage, useLogger, useLongPress, useMap, useMeasure, useMediaQuery, useMemory, useMount, useMouse, useMutation, useMutationObserver, useNetwork, useOffsetPagination, useOnline, useOperatingSystem, useOptimistic, useOrientation, useOtpCredential, usePageLeave, usePaint, useParallax, usePermission, usePreferredColorScheme, usePreferredContrast, usePreferredDark, usePreferredLanguages, usePreferredReducedMotion, usePrevious, useQuery, useQueue, useRaf, useRafValue, useRenderCount, useRenderInfo, useRerender, useResizeObserver, useScreenOrientation, type useScreenOrientationReturn, useScript, useSessionStorage, useSet, useShare, useStep, useStopwatch, useStorage, useTextSelection, useTime, useTimeout, useTimer, useToggle, useUnmount, useWebSocket, useWindowEvent, useWindowScroll, useWindowSize, useWizard };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@siberiacancode/reactuse",
3
3
  "type": "module",
4
- "version": "0.0.66",
4
+ "version": "0.0.68",
5
5
  "description": "Ultimate tool",
6
6
  "author": {
7
7
  "name": "SIBERIA CAN CODE 🧊",
@@ -44,7 +44,8 @@
44
44
  "build": "shx rm -rf dist && rollup -c --bundleConfigAsCjs",
45
45
  "lint": "eslint . --fix",
46
46
  "type": "tsc --noEmit",
47
- "pretty": "yarn type && yarn lint",
47
+ "format": "prettier --write .",
48
+ "pretty": "yarn type && yarn lint && yarn format",
48
49
  "prepare": "husky",
49
50
  "unit-test": "vitest",
50
51
  "docs:dev": "vitepress dev docs",
@@ -67,6 +68,7 @@
67
68
  "devDependencies": {
68
69
  "@siberiacancode/builder": "^1.3.0",
69
70
  "@siberiacancode/eslint": "^2.1.0",
71
+ "@siberiacancode/prettier": "^1.1.1",
70
72
  "@siberiacancode/vitest": "^1.2.4",
71
73
  "@testing-library/dom": "^10.4.0",
72
74
  "@testing-library/react": "^16.0.0",
@@ -89,10 +91,12 @@
89
91
  },
90
92
  "lint-staged": {
91
93
  "*.js": [
92
- "eslint --fix"
94
+ "eslint --fix",
95
+ "prettier --write"
93
96
  ],
94
97
  "*.ts": [
95
- "eslint --fix"
98
+ "eslint --fix",
99
+ "prettier --write"
96
100
  ]
97
101
  }
98
102
  }
@@ -1 +0,0 @@
1
- {"version":3,"file":"_rollupPluginBabelHelpers-DA8CS73W.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"_rollupPluginBabelHelpers-CWXiPzDd.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}