@siberiacancode/reactuse 0.0.112 → 0.0.114

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 (1249) hide show
  1. package/dist/cjs/hooks/useActiveElement/useActiveElement.cjs +2 -0
  2. package/dist/cjs/hooks/useActiveElement/useActiveElement.cjs.map +1 -0
  3. package/dist/cjs/hooks/useAsync/useAsync.cjs +2 -0
  4. package/dist/cjs/hooks/useAsync/useAsync.cjs.map +1 -0
  5. package/dist/cjs/hooks/useBattery/useBattery.cjs +2 -0
  6. package/dist/cjs/hooks/useBattery/useBattery.cjs.map +1 -0
  7. package/dist/cjs/hooks/useBluetooth/useBluetooth.cjs +2 -0
  8. package/dist/cjs/hooks/useBluetooth/useBluetooth.cjs.map +1 -0
  9. package/dist/cjs/hooks/useBoolean/useBoolean.cjs +2 -0
  10. package/dist/cjs/hooks/useBoolean/useBoolean.cjs.map +1 -0
  11. package/dist/cjs/hooks/useBreakpoints/useBreakpoints.cjs +2 -0
  12. package/dist/cjs/hooks/useBreakpoints/useBreakpoints.cjs.map +1 -0
  13. package/dist/cjs/hooks/useBrowserLanguage/useBrowserLanguage.cjs +2 -0
  14. package/dist/cjs/hooks/useBrowserLanguage/useBrowserLanguage.cjs.map +1 -0
  15. package/dist/cjs/hooks/useClickOutside/useClickOutside.cjs +2 -0
  16. package/dist/cjs/hooks/useClickOutside/useClickOutside.cjs.map +1 -0
  17. package/dist/cjs/hooks/useClipboard/useClipboard.cjs +2 -0
  18. package/dist/cjs/hooks/useClipboard/useClipboard.cjs.map +1 -0
  19. package/dist/cjs/hooks/useConst/useConst.cjs +2 -0
  20. package/dist/cjs/hooks/useConst/useConst.cjs.map +1 -0
  21. package/dist/cjs/hooks/useCookie/useCookie.cjs +2 -0
  22. package/dist/cjs/hooks/useCookie/useCookie.cjs.map +1 -0
  23. package/dist/cjs/hooks/useCookies/useCookies.cjs +2 -0
  24. package/dist/cjs/hooks/useCookies/useCookies.cjs.map +1 -0
  25. package/dist/cjs/hooks/useCopy/useCopy.cjs +2 -0
  26. package/dist/cjs/hooks/useCopy/useCopy.cjs.map +1 -0
  27. package/dist/cjs/hooks/useCounter/useCounter.cjs +2 -0
  28. package/dist/cjs/hooks/useCounter/useCounter.cjs.map +1 -0
  29. package/dist/cjs/hooks/useCssVar/useCssVar.cjs +2 -0
  30. package/dist/cjs/hooks/useCssVar/useCssVar.cjs.map +1 -0
  31. package/dist/cjs/hooks/useDebounceCallback/useDebounceCallback.cjs +2 -0
  32. package/dist/cjs/hooks/useDebounceCallback/useDebounceCallback.cjs.map +1 -0
  33. package/dist/cjs/hooks/useDebounceValue/useDebounceValue.cjs +2 -0
  34. package/dist/cjs/hooks/useDebounceValue/useDebounceValue.cjs.map +1 -0
  35. package/dist/cjs/hooks/useDefault/useDefault.cjs +2 -0
  36. package/dist/cjs/hooks/useDefault/useDefault.cjs.map +1 -0
  37. package/dist/cjs/hooks/useDeviceMotion/useDeviceMotion.cjs +2 -0
  38. package/dist/cjs/hooks/useDeviceMotion/useDeviceMotion.cjs.map +1 -0
  39. package/dist/cjs/hooks/useDeviceOrientation/useDeviceOrientation.cjs +2 -0
  40. package/dist/cjs/hooks/useDeviceOrientation/useDeviceOrientation.cjs.map +1 -0
  41. package/dist/cjs/hooks/useDevicePixelRatio/useDevicePixelRatio.cjs +2 -0
  42. package/dist/cjs/hooks/useDevicePixelRatio/useDevicePixelRatio.cjs.map +1 -0
  43. package/dist/cjs/hooks/useDidUpdate/useDidUpdate.cjs +2 -0
  44. package/dist/cjs/hooks/useDidUpdate/useDidUpdate.cjs.map +1 -0
  45. package/dist/cjs/hooks/useDisclosure/useDisclosure.cjs +2 -0
  46. package/dist/cjs/hooks/useDisclosure/useDisclosure.cjs.map +1 -0
  47. package/dist/cjs/hooks/useDisplayMedia/useDisplayMedia.cjs +2 -0
  48. package/dist/cjs/hooks/useDisplayMedia/useDisplayMedia.cjs.map +1 -0
  49. package/dist/cjs/hooks/useDocumentEvent/useDocumentEvent.cjs +2 -0
  50. package/dist/cjs/hooks/useDocumentEvent/useDocumentEvent.cjs.map +1 -0
  51. package/dist/cjs/hooks/useDocumentTitle/useDocumentTitle.cjs +2 -0
  52. package/dist/cjs/hooks/useDocumentTitle/useDocumentTitle.cjs.map +1 -0
  53. package/dist/cjs/hooks/useDocumentVisibility/useDocumentVisibility.cjs +2 -0
  54. package/dist/cjs/hooks/useDocumentVisibility/useDocumentVisibility.cjs.map +1 -0
  55. package/dist/cjs/hooks/useElementSize/useElementSize.cjs +2 -0
  56. package/dist/cjs/hooks/useElementSize/useElementSize.cjs.map +1 -0
  57. package/dist/cjs/hooks/useEvent/useEvent.cjs +2 -0
  58. package/dist/cjs/hooks/useEvent/useEvent.cjs.map +1 -0
  59. package/dist/cjs/hooks/useEventListener/useEventListener.cjs +2 -0
  60. package/dist/cjs/hooks/useEventListener/useEventListener.cjs.map +1 -0
  61. package/dist/cjs/hooks/useEyeDropper/useEyeDropper.cjs +2 -0
  62. package/dist/cjs/hooks/useEyeDropper/useEyeDropper.cjs.map +1 -0
  63. package/dist/cjs/hooks/useFavicon/useFavicon.cjs +2 -0
  64. package/dist/cjs/hooks/useFavicon/useFavicon.cjs.map +1 -0
  65. package/dist/cjs/hooks/useField/useField.cjs +2 -0
  66. package/dist/cjs/hooks/useField/useField.cjs.map +1 -0
  67. package/dist/cjs/hooks/useFileDialog/useFileDialog.cjs +2 -0
  68. package/dist/cjs/hooks/useFileDialog/useFileDialog.cjs.map +1 -0
  69. package/dist/cjs/hooks/useFocus/useFocus.cjs +2 -0
  70. package/dist/cjs/hooks/useFocus/useFocus.cjs.map +1 -0
  71. package/dist/cjs/hooks/useFps/useFps.cjs +2 -0
  72. package/dist/cjs/hooks/useFps/useFps.cjs.map +1 -0
  73. package/dist/cjs/hooks/useFullscreen/useFullscreen.cjs +2 -0
  74. package/dist/cjs/hooks/useFullscreen/useFullscreen.cjs.map +1 -0
  75. package/dist/cjs/hooks/useGamepad/useGamepad.cjs +2 -0
  76. package/dist/cjs/hooks/useGamepad/useGamepad.cjs.map +1 -0
  77. package/dist/cjs/hooks/useGeolocation/useGeolocation.cjs +2 -0
  78. package/dist/cjs/hooks/useGeolocation/useGeolocation.cjs.map +1 -0
  79. package/dist/cjs/hooks/useHash/useHash.cjs +2 -0
  80. package/dist/cjs/hooks/useHash/useHash.cjs.map +1 -0
  81. package/dist/cjs/hooks/useHotkeys/useHotkeys.cjs +2 -0
  82. package/dist/cjs/hooks/useHotkeys/useHotkeys.cjs.map +1 -0
  83. package/dist/cjs/hooks/useHover/useHover.cjs +2 -0
  84. package/dist/cjs/hooks/useHover/useHover.cjs.map +1 -0
  85. package/dist/cjs/hooks/useIdle/useIdle.cjs +2 -0
  86. package/dist/cjs/hooks/useIdle/useIdle.cjs.map +1 -0
  87. package/dist/cjs/hooks/useImage/useImage.cjs +2 -0
  88. package/dist/cjs/hooks/useImage/useImage.cjs.map +1 -0
  89. package/dist/cjs/hooks/useInfiniteScroll/useInfiniteScroll.cjs +2 -0
  90. package/dist/cjs/hooks/useInfiniteScroll/useInfiniteScroll.cjs.map +1 -0
  91. package/dist/cjs/hooks/useIntersectionObserver/useIntersectionObserver.cjs +2 -0
  92. package/dist/cjs/hooks/useIntersectionObserver/useIntersectionObserver.cjs.map +1 -0
  93. package/dist/cjs/hooks/useInterval/useInterval.cjs +2 -0
  94. package/dist/cjs/hooks/useInterval/useInterval.cjs.map +1 -0
  95. package/dist/cjs/hooks/useIsFirstRender/useIsFirstRender.cjs +2 -0
  96. package/dist/cjs/hooks/useIsFirstRender/useIsFirstRender.cjs.map +1 -0
  97. package/dist/cjs/hooks/useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.cjs +2 -0
  98. package/dist/cjs/hooks/useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.cjs.map +1 -0
  99. package/dist/cjs/hooks/useKeyPress/useKeyPress.cjs +2 -0
  100. package/dist/cjs/hooks/useKeyPress/useKeyPress.cjs.map +1 -0
  101. package/dist/cjs/hooks/useKeyPressEvent/useKeyPressEvent.cjs +2 -0
  102. package/dist/cjs/hooks/useKeyPressEvent/useKeyPressEvent.cjs.map +1 -0
  103. package/dist/cjs/hooks/useKeyboard/useKeyboard.cjs +2 -0
  104. package/dist/cjs/hooks/useKeyboard/useKeyboard.cjs.map +1 -0
  105. package/dist/cjs/hooks/useKeysPressed/useKeysPressed.cjs +2 -0
  106. package/dist/cjs/hooks/useKeysPressed/useKeysPressed.cjs.map +1 -0
  107. package/dist/cjs/hooks/useLastChanged/useLastChanged.cjs +2 -0
  108. package/dist/cjs/hooks/useLastChanged/useLastChanged.cjs.map +1 -0
  109. package/dist/cjs/hooks/useLatest/useLatest.cjs +2 -0
  110. package/dist/cjs/hooks/useLatest/useLatest.cjs.map +1 -0
  111. package/dist/cjs/hooks/useLess/useLess.cjs +2 -0
  112. package/dist/cjs/hooks/useLess/useLess.cjs.map +1 -0
  113. package/dist/cjs/hooks/useList/useList.cjs +2 -0
  114. package/dist/cjs/hooks/useList/useList.cjs.map +1 -0
  115. package/dist/cjs/hooks/useLocalStorage/useLocalStorage.cjs +2 -0
  116. package/dist/cjs/hooks/useLocalStorage/useLocalStorage.cjs.map +1 -0
  117. package/dist/cjs/hooks/useLockCallback/useLockCallback.cjs +2 -0
  118. package/dist/cjs/hooks/useLockCallback/useLockCallback.cjs.map +1 -0
  119. package/dist/cjs/hooks/useLogger/useLogger.cjs +2 -0
  120. package/dist/cjs/hooks/useLogger/useLogger.cjs.map +1 -0
  121. package/dist/cjs/hooks/useLongPress/useLongPress.cjs +2 -0
  122. package/dist/cjs/hooks/useLongPress/useLongPress.cjs.map +1 -0
  123. package/dist/cjs/hooks/useMap/useMap.cjs +2 -0
  124. package/dist/cjs/hooks/useMap/useMap.cjs.map +1 -0
  125. package/dist/cjs/hooks/useMeasure/useMeasure.cjs +2 -0
  126. package/dist/cjs/hooks/useMeasure/useMeasure.cjs.map +1 -0
  127. package/dist/cjs/hooks/useMediaQuery/useMediaQuery.cjs +2 -0
  128. package/dist/cjs/hooks/useMediaQuery/useMediaQuery.cjs.map +1 -0
  129. package/dist/cjs/hooks/useMemory/useMemory.cjs +2 -0
  130. package/dist/cjs/hooks/useMemory/useMemory.cjs.map +1 -0
  131. package/dist/cjs/hooks/useMount/useMount.cjs +2 -0
  132. package/dist/cjs/hooks/useMount/useMount.cjs.map +1 -0
  133. package/dist/cjs/hooks/useMouse/useMouse.cjs +2 -0
  134. package/dist/cjs/hooks/useMouse/useMouse.cjs.map +1 -0
  135. package/dist/cjs/hooks/useMutation/useMutation.cjs +2 -0
  136. package/dist/cjs/hooks/useMutation/useMutation.cjs.map +1 -0
  137. package/dist/cjs/hooks/useMutationObserver/useMutationObserver.cjs +2 -0
  138. package/dist/cjs/hooks/useMutationObserver/useMutationObserver.cjs.map +1 -0
  139. package/dist/cjs/hooks/useNetwork/useNetwork.cjs +2 -0
  140. package/dist/cjs/hooks/useNetwork/useNetwork.cjs.map +1 -0
  141. package/dist/cjs/hooks/useOffsetPagination/useOffsetPagination.cjs +2 -0
  142. package/dist/cjs/hooks/useOffsetPagination/useOffsetPagination.cjs.map +1 -0
  143. package/dist/cjs/hooks/useOnce/useOnce.cjs +2 -0
  144. package/dist/cjs/hooks/useOnce/useOnce.cjs.map +1 -0
  145. package/dist/cjs/hooks/useOnline/useOnline.cjs +2 -0
  146. package/dist/cjs/hooks/useOnline/useOnline.cjs.map +1 -0
  147. package/dist/cjs/hooks/useOperatingSystem/useOperatingSystem.cjs +2 -0
  148. package/dist/cjs/hooks/useOperatingSystem/useOperatingSystem.cjs.map +1 -0
  149. package/dist/cjs/hooks/useOptimistic/useOptimistic.cjs +2 -0
  150. package/dist/cjs/hooks/useOptimistic/useOptimistic.cjs.map +1 -0
  151. package/dist/cjs/hooks/useOrientation/useOrientation.cjs +2 -0
  152. package/dist/cjs/hooks/useOrientation/useOrientation.cjs.map +1 -0
  153. package/dist/cjs/hooks/useOtpCredential/useOtpCredential.cjs +2 -0
  154. package/dist/cjs/hooks/useOtpCredential/useOtpCredential.cjs.map +1 -0
  155. package/dist/cjs/hooks/usePageLeave/usePageLeave.cjs +2 -0
  156. package/dist/cjs/hooks/usePageLeave/usePageLeave.cjs.map +1 -0
  157. package/dist/cjs/hooks/usePaint/usePaint.cjs +2 -0
  158. package/dist/cjs/hooks/usePaint/usePaint.cjs.map +1 -0
  159. package/dist/cjs/hooks/useParallax/useParallax.cjs +2 -0
  160. package/dist/cjs/hooks/useParallax/useParallax.cjs.map +1 -0
  161. package/dist/cjs/hooks/usePerformanceObserver/usePerformanceObserver.cjs +2 -0
  162. package/dist/cjs/hooks/usePerformanceObserver/usePerformanceObserver.cjs.map +1 -0
  163. package/dist/cjs/hooks/usePermission/usePermission.cjs +2 -0
  164. package/dist/cjs/hooks/usePermission/usePermission.cjs.map +1 -0
  165. package/dist/cjs/hooks/usePointerLock/usePointerLock.cjs +2 -0
  166. package/dist/cjs/hooks/usePointerLock/usePointerLock.cjs.map +1 -0
  167. package/dist/cjs/hooks/usePostMessage/usePostMessage.cjs +2 -0
  168. package/dist/cjs/hooks/usePostMessage/usePostMessage.cjs.map +1 -0
  169. package/dist/cjs/hooks/usePreferredColorScheme/usePreferredColorScheme.cjs +2 -0
  170. package/dist/cjs/hooks/usePreferredColorScheme/usePreferredColorScheme.cjs.map +1 -0
  171. package/dist/cjs/hooks/usePreferredContrast/usePreferredContrast.cjs +2 -0
  172. package/dist/cjs/hooks/usePreferredContrast/usePreferredContrast.cjs.map +1 -0
  173. package/dist/cjs/hooks/usePreferredDark/usePreferredDark.cjs +2 -0
  174. package/dist/cjs/hooks/usePreferredDark/usePreferredDark.cjs.map +1 -0
  175. package/dist/cjs/hooks/usePreferredLanguages/usePreferredLanguages.cjs +2 -0
  176. package/dist/cjs/hooks/usePreferredLanguages/usePreferredLanguages.cjs.map +1 -0
  177. package/dist/cjs/hooks/usePreferredReducedMotion/usePreferredReducedMotion.cjs +2 -0
  178. package/dist/cjs/hooks/usePreferredReducedMotion/usePreferredReducedMotion.cjs.map +1 -0
  179. package/dist/cjs/hooks/usePrevious/usePrevious.cjs +2 -0
  180. package/dist/cjs/hooks/usePrevious/usePrevious.cjs.map +1 -0
  181. package/dist/cjs/hooks/useQuery/useQuery.cjs +2 -0
  182. package/dist/cjs/hooks/useQuery/useQuery.cjs.map +1 -0
  183. package/dist/cjs/hooks/useQueue/useQueue.cjs +2 -0
  184. package/dist/cjs/hooks/useQueue/useQueue.cjs.map +1 -0
  185. package/dist/cjs/hooks/useRaf/useRaf.cjs +2 -0
  186. package/dist/cjs/hooks/useRaf/useRaf.cjs.map +1 -0
  187. package/dist/cjs/hooks/useRafValue/useRafValue.cjs +2 -0
  188. package/dist/cjs/hooks/useRafValue/useRafValue.cjs.map +1 -0
  189. package/dist/cjs/hooks/useRefState/useRefState.cjs +2 -0
  190. package/dist/cjs/hooks/useRefState/useRefState.cjs.map +1 -0
  191. package/dist/cjs/hooks/useRenderCount/useRenderCount.cjs +2 -0
  192. package/dist/cjs/hooks/useRenderCount/useRenderCount.cjs.map +1 -0
  193. package/dist/cjs/hooks/useRenderInfo/useRenderInfo.cjs +2 -0
  194. package/dist/cjs/hooks/useRenderInfo/useRenderInfo.cjs.map +1 -0
  195. package/dist/cjs/hooks/useRerender/useRerender.cjs +2 -0
  196. package/dist/cjs/hooks/useRerender/useRerender.cjs.map +1 -0
  197. package/dist/cjs/hooks/useResizeObserver/useResizeObserver.cjs +2 -0
  198. package/dist/cjs/hooks/useResizeObserver/useResizeObserver.cjs.map +1 -0
  199. package/dist/cjs/hooks/useScreenOrientation/useScreenOrientation.cjs +2 -0
  200. package/dist/cjs/hooks/useScreenOrientation/useScreenOrientation.cjs.map +1 -0
  201. package/dist/cjs/hooks/useScript/useScript.cjs +2 -0
  202. package/dist/cjs/hooks/useScript/useScript.cjs.map +1 -0
  203. package/dist/cjs/hooks/useScroll/useScroll.cjs +2 -0
  204. package/dist/cjs/hooks/useScroll/useScroll.cjs.map +1 -0
  205. package/dist/cjs/hooks/useScrollIntoView/useScrollIntoView.cjs +2 -0
  206. package/dist/cjs/hooks/useScrollIntoView/useScrollIntoView.cjs.map +1 -0
  207. package/dist/cjs/hooks/useScrollTo/useScrollTo.cjs +2 -0
  208. package/dist/cjs/hooks/useScrollTo/useScrollTo.cjs.map +1 -0
  209. package/dist/cjs/hooks/useSessionStorage/useSessionStorage.cjs +2 -0
  210. package/dist/cjs/hooks/useSessionStorage/useSessionStorage.cjs.map +1 -0
  211. package/dist/cjs/hooks/useSet/useSet.cjs +2 -0
  212. package/dist/cjs/hooks/useSet/useSet.cjs.map +1 -0
  213. package/dist/cjs/hooks/useShare/useShare.cjs +2 -0
  214. package/dist/cjs/hooks/useShare/useShare.cjs.map +1 -0
  215. package/dist/cjs/hooks/useSpeechRecognition/useSpeechRecognition.cjs +2 -0
  216. package/dist/cjs/hooks/useSpeechRecognition/useSpeechRecognition.cjs.map +1 -0
  217. package/dist/cjs/hooks/useStateHistory/useStateHistory.cjs +2 -0
  218. package/dist/cjs/hooks/useStateHistory/useStateHistory.cjs.map +1 -0
  219. package/dist/cjs/hooks/useStep/useStep.cjs +2 -0
  220. package/dist/cjs/hooks/useStep/useStep.cjs.map +1 -0
  221. package/dist/cjs/hooks/useSticky/useSticky.cjs +2 -0
  222. package/dist/cjs/hooks/useSticky/useSticky.cjs.map +1 -0
  223. package/dist/cjs/hooks/useStopwatch/useStopwatch.cjs +2 -0
  224. package/dist/cjs/hooks/useStopwatch/useStopwatch.cjs.map +1 -0
  225. package/dist/cjs/hooks/useStorage/useStorage.cjs +2 -0
  226. package/dist/cjs/hooks/useStorage/useStorage.cjs.map +1 -0
  227. package/dist/cjs/hooks/useTextDirection/useTextDirection.cjs +2 -0
  228. package/dist/cjs/hooks/useTextDirection/useTextDirection.cjs.map +1 -0
  229. package/dist/cjs/hooks/useTextSelection/useTextSelection.cjs +2 -0
  230. package/dist/cjs/hooks/useTextSelection/useTextSelection.cjs.map +1 -0
  231. package/dist/cjs/hooks/useThrottleCallback/useThrottleCallback.cjs +2 -0
  232. package/dist/cjs/hooks/useThrottleCallback/useThrottleCallback.cjs.map +1 -0
  233. package/dist/cjs/hooks/useThrottleValue/useThrottleValue.cjs +2 -0
  234. package/dist/cjs/hooks/useThrottleValue/useThrottleValue.cjs.map +1 -0
  235. package/dist/cjs/hooks/useTime/useTime.cjs +2 -0
  236. package/dist/cjs/hooks/useTime/useTime.cjs.map +1 -0
  237. package/dist/cjs/hooks/useTimeout/useTimeout.cjs +2 -0
  238. package/dist/cjs/hooks/useTimeout/useTimeout.cjs.map +1 -0
  239. package/dist/cjs/hooks/useTimer/useTimer.cjs +2 -0
  240. package/dist/cjs/hooks/useTimer/useTimer.cjs.map +1 -0
  241. package/dist/cjs/hooks/useToggle/useToggle.cjs +2 -0
  242. package/dist/cjs/hooks/useToggle/useToggle.cjs.map +1 -0
  243. package/dist/cjs/hooks/useUnmount/useUnmount.cjs +2 -0
  244. package/dist/cjs/hooks/useUnmount/useUnmount.cjs.map +1 -0
  245. package/dist/cjs/hooks/useVibrate/useVibrate.cjs +2 -0
  246. package/dist/cjs/hooks/useVibrate/useVibrate.cjs.map +1 -0
  247. package/dist/cjs/hooks/useWebSocket/useWebSocket.cjs +2 -0
  248. package/dist/cjs/hooks/useWebSocket/useWebSocket.cjs.map +1 -0
  249. package/dist/cjs/hooks/useWindowEvent/useWindowEvent.cjs +2 -0
  250. package/dist/cjs/hooks/useWindowEvent/useWindowEvent.cjs.map +1 -0
  251. package/dist/cjs/hooks/useWindowFocus/useWindowFocus.cjs +2 -0
  252. package/dist/cjs/hooks/useWindowFocus/useWindowFocus.cjs.map +1 -0
  253. package/dist/cjs/hooks/useWindowScroll/useWindowScroll.cjs +2 -0
  254. package/dist/cjs/hooks/useWindowScroll/useWindowScroll.cjs.map +1 -0
  255. package/dist/cjs/hooks/useWindowSize/useWindowSize.cjs +2 -0
  256. package/dist/cjs/hooks/useWindowSize/useWindowSize.cjs.map +1 -0
  257. package/dist/cjs/hooks/useWizard/useWizard.cjs +2 -0
  258. package/dist/cjs/hooks/useWizard/useWizard.cjs.map +1 -0
  259. package/dist/cjs/index.cjs +2 -0
  260. package/dist/cjs/index.cjs.map +1 -0
  261. package/dist/cjs/utils/helpers/copy.cjs +2 -0
  262. package/dist/cjs/utils/helpers/copy.cjs.map +1 -0
  263. package/dist/cjs/utils/helpers/debounce.cjs +2 -0
  264. package/dist/cjs/utils/helpers/debounce.cjs.map +1 -0
  265. package/dist/cjs/utils/helpers/getDate.cjs +2 -0
  266. package/dist/cjs/utils/helpers/getDate.cjs.map +1 -0
  267. package/dist/cjs/utils/helpers/getElement.cjs +2 -0
  268. package/dist/cjs/utils/helpers/getElement.cjs.map +1 -0
  269. package/dist/cjs/utils/helpers/getRetry.cjs +2 -0
  270. package/dist/cjs/utils/helpers/getRetry.cjs.map +1 -0
  271. package/dist/cjs/utils/helpers/isTarget.cjs +2 -0
  272. package/dist/cjs/utils/helpers/isTarget.cjs.map +1 -0
  273. package/dist/cjs/utils/helpers/throttle.cjs +2 -0
  274. package/dist/cjs/utils/helpers/throttle.cjs.map +1 -0
  275. package/dist/esm/hooks/useActiveElement/useActiveElement.mjs +26 -0
  276. package/dist/esm/hooks/useActiveElement/useActiveElement.mjs.map +1 -0
  277. package/dist/esm/hooks/useAsync/useAsync.mjs +22 -0
  278. package/dist/esm/hooks/useAsync/useAsync.mjs.map +1 -0
  279. package/dist/esm/hooks/useBattery/useBattery.mjs +30 -0
  280. package/dist/esm/hooks/useBattery/useBattery.mjs.map +1 -0
  281. package/dist/esm/hooks/useBluetooth/useBluetooth.mjs +37 -0
  282. package/dist/esm/hooks/useBluetooth/useBluetooth.mjs.map +1 -0
  283. package/dist/esm/hooks/useBoolean/useBoolean.mjs +9 -0
  284. package/dist/esm/hooks/useBoolean/useBoolean.mjs.map +1 -0
  285. package/dist/esm/hooks/useBreakpoints/useBreakpoints.mjs +111 -0
  286. package/dist/esm/hooks/useBreakpoints/useBreakpoints.mjs.map +1 -0
  287. package/dist/esm/hooks/useBrowserLanguage/useBrowserLanguage.mjs +6 -0
  288. package/dist/esm/hooks/useBrowserLanguage/useBrowserLanguage.mjs.map +1 -0
  289. package/dist/esm/hooks/useClickOutside/useClickOutside.mjs +22 -0
  290. package/dist/esm/hooks/useClickOutside/useClickOutside.mjs.map +1 -0
  291. package/dist/esm/hooks/useClipboard/useClipboard.mjs +25 -0
  292. package/dist/esm/hooks/useClipboard/useClipboard.mjs.map +1 -0
  293. package/dist/esm/hooks/useConst/useConst.mjs +6 -0
  294. package/dist/esm/hooks/useConst/useConst.mjs.map +1 -0
  295. package/dist/esm/hooks/useCookie/useCookie.mjs +57 -0
  296. package/dist/esm/hooks/useCookie/useCookie.mjs.map +1 -0
  297. package/dist/esm/hooks/useCookies/useCookies.mjs +42 -0
  298. package/dist/esm/hooks/useCookies/useCookies.mjs.map +1 -0
  299. package/dist/esm/hooks/useCopy/useCopy.mjs +12 -0
  300. package/dist/esm/hooks/useCopy/useCopy.mjs.map +1 -0
  301. package/dist/esm/hooks/useCounter/useCounter.mjs +24 -0
  302. package/dist/esm/hooks/useCounter/useCounter.mjs.map +1 -0
  303. package/dist/esm/hooks/useCssVar/useCssVar.mjs +35 -0
  304. package/dist/esm/hooks/useCssVar/useCssVar.mjs.map +1 -0
  305. package/dist/esm/hooks/useDebounceCallback/useDebounceCallback.mjs +11 -0
  306. package/dist/esm/hooks/useDebounceCallback/useDebounceCallback.mjs.map +1 -0
  307. package/dist/esm/hooks/useDebounceValue/useDebounceValue.mjs +12 -0
  308. package/dist/esm/hooks/useDebounceValue/useDebounceValue.mjs.map +1 -0
  309. package/dist/esm/hooks/useDefault/useDefault.mjs +9 -0
  310. package/dist/esm/hooks/useDefault/useDefault.mjs.map +1 -0
  311. package/dist/esm/hooks/useDeviceMotion/useDeviceMotion.mjs +38 -0
  312. package/dist/esm/hooks/useDeviceMotion/useDeviceMotion.mjs.map +1 -0
  313. package/dist/esm/hooks/useDeviceOrientation/useDeviceOrientation.mjs +28 -0
  314. package/dist/esm/hooks/useDeviceOrientation/useDeviceOrientation.mjs.map +1 -0
  315. package/dist/esm/hooks/useDevicePixelRatio/useDevicePixelRatio.mjs +15 -0
  316. package/dist/esm/hooks/useDevicePixelRatio/useDevicePixelRatio.mjs.map +1 -0
  317. package/dist/esm/hooks/useDidUpdate/useDidUpdate.mjs +18 -0
  318. package/dist/esm/hooks/useDidUpdate/useDidUpdate.mjs.map +1 -0
  319. package/dist/esm/hooks/useDisclosure/useDisclosure.mjs +15 -0
  320. package/dist/esm/hooks/useDisclosure/useDisclosure.mjs.map +1 -0
  321. package/dist/esm/hooks/useDisplayMedia/useDisplayMedia.mjs +43 -0
  322. package/dist/esm/hooks/useDisplayMedia/useDisplayMedia.mjs.map +1 -0
  323. package/dist/esm/hooks/useDocumentEvent/useDocumentEvent.mjs +7 -0
  324. package/dist/esm/hooks/useDocumentEvent/useDocumentEvent.mjs.map +1 -0
  325. package/dist/esm/hooks/useDocumentTitle/useDocumentTitle.mjs +26 -0
  326. package/dist/esm/hooks/useDocumentTitle/useDocumentTitle.mjs.map +1 -0
  327. package/dist/esm/hooks/useDocumentVisibility/useDocumentVisibility.mjs +8 -0
  328. package/dist/esm/hooks/useDocumentVisibility/useDocumentVisibility.mjs.map +1 -0
  329. package/dist/esm/hooks/useElementSize/useElementSize.mjs +30 -0
  330. package/dist/esm/hooks/useElementSize/useElementSize.mjs.map +1 -0
  331. package/dist/esm/hooks/useEvent/useEvent.mjs +12 -0
  332. package/dist/esm/hooks/useEvent/useEvent.mjs.map +1 -0
  333. package/dist/esm/hooks/useEventListener/useEventListener.mjs +21 -0
  334. package/dist/esm/hooks/useEventListener/useEventListener.mjs.map +1 -0
  335. package/dist/esm/hooks/useEyeDropper/useEyeDropper.mjs +17 -0
  336. package/dist/esm/hooks/useEyeDropper/useEyeDropper.mjs.map +1 -0
  337. package/dist/esm/hooks/useFavicon/useFavicon.mjs +23 -0
  338. package/dist/esm/hooks/useFavicon/useFavicon.mjs.map +1 -0
  339. package/dist/esm/hooks/useField/useField.mjs +73 -0
  340. package/dist/esm/hooks/useField/useField.mjs.map +1 -0
  341. package/dist/esm/hooks/useFileDialog/useFileDialog.mjs +36 -0
  342. package/dist/esm/hooks/useFileDialog/useFileDialog.mjs.map +1 -0
  343. package/dist/esm/hooks/useFocus/useFocus.mjs +40 -0
  344. package/dist/esm/hooks/useFocus/useFocus.mjs.map +1 -0
  345. package/dist/esm/hooks/useFps/useFps.mjs +23 -0
  346. package/dist/esm/hooks/useFps/useFps.mjs.map +1 -0
  347. package/dist/esm/hooks/useFullscreen/useFullscreen.mjs +45 -0
  348. package/dist/esm/hooks/useFullscreen/useFullscreen.mjs.map +1 -0
  349. package/dist/esm/hooks/useGamepad/useGamepad.mjs +79 -0
  350. package/dist/esm/hooks/useGamepad/useGamepad.mjs.map +1 -0
  351. package/dist/esm/hooks/useGeolocation/useGeolocation.mjs +46 -0
  352. package/dist/esm/hooks/useGeolocation/useGeolocation.mjs.map +1 -0
  353. package/dist/esm/hooks/useHash/useHash.mjs +16 -0
  354. package/dist/esm/hooks/useHash/useHash.mjs.map +1 -0
  355. package/dist/esm/hooks/useHotkeys/useHotkeys.mjs +33 -0
  356. package/dist/esm/hooks/useHotkeys/useHotkeys.mjs.map +1 -0
  357. package/dist/esm/hooks/useHover/useHover.mjs +26 -0
  358. package/dist/esm/hooks/useHover/useHover.mjs.map +1 -0
  359. package/dist/esm/hooks/useIdle/useIdle.mjs +27 -0
  360. package/dist/esm/hooks/useIdle/useIdle.mjs.map +1 -0
  361. package/dist/esm/hooks/useImage/useImage.mjs +12 -0
  362. package/dist/esm/hooks/useImage/useImage.mjs.map +1 -0
  363. package/dist/esm/hooks/useInfiniteScroll/useInfiniteScroll.mjs +34 -0
  364. package/dist/esm/hooks/useInfiniteScroll/useInfiniteScroll.mjs.map +1 -0
  365. package/dist/esm/hooks/useIntersectionObserver/useIntersectionObserver.mjs +33 -0
  366. package/dist/esm/hooks/useIntersectionObserver/useIntersectionObserver.mjs.map +1 -0
  367. package/dist/esm/hooks/useInterval/useInterval.mjs +21 -0
  368. package/dist/esm/hooks/useInterval/useInterval.mjs.map +1 -0
  369. package/dist/esm/hooks/useIsFirstRender/useIsFirstRender.mjs +9 -0
  370. package/dist/esm/hooks/useIsFirstRender/useIsFirstRender.mjs.map +1 -0
  371. package/dist/esm/hooks/useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.mjs +6 -0
  372. package/dist/esm/hooks/useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.mjs.map +1 -0
  373. package/dist/esm/hooks/useKeyPress/useKeyPress.mjs +30 -0
  374. package/dist/esm/hooks/useKeyPress/useKeyPress.mjs.map +1 -0
  375. package/dist/esm/hooks/useKeyPressEvent/useKeyPressEvent.mjs +31 -0
  376. package/dist/esm/hooks/useKeyPressEvent/useKeyPressEvent.mjs.map +1 -0
  377. package/dist/esm/hooks/useKeyboard/useKeyboard.mjs +27 -0
  378. package/dist/esm/hooks/useKeyboard/useKeyboard.mjs.map +1 -0
  379. package/dist/esm/hooks/useKeysPressed/useKeysPressed.mjs +27 -0
  380. package/dist/esm/hooks/useKeysPressed/useKeysPressed.mjs.map +1 -0
  381. package/dist/esm/hooks/useLastChanged/useLastChanged.mjs +10 -0
  382. package/dist/esm/hooks/useLastChanged/useLastChanged.mjs.map +1 -0
  383. package/dist/esm/hooks/useLatest/useLatest.mjs +9 -0
  384. package/dist/esm/hooks/useLatest/useLatest.mjs.map +1 -0
  385. package/dist/esm/hooks/useLess/useLess.mjs +8 -0
  386. package/dist/esm/hooks/useLess/useLess.mjs.map +1 -0
  387. package/dist/esm/hooks/useList/useList.mjs +14 -0
  388. package/dist/esm/hooks/useList/useList.mjs.map +1 -0
  389. package/dist/esm/hooks/useLocalStorage/useLocalStorage.mjs +10 -0
  390. package/dist/esm/hooks/useLocalStorage/useLocalStorage.mjs.map +1 -0
  391. package/dist/esm/hooks/useLockCallback/useLockCallback.mjs +18 -0
  392. package/dist/esm/hooks/useLockCallback/useLockCallback.mjs.map +1 -0
  393. package/dist/esm/hooks/useLogger/useLogger.mjs +11 -0
  394. package/dist/esm/hooks/useLogger/useLogger.mjs.map +1 -0
  395. package/dist/esm/hooks/useLongPress/useLongPress.mjs +22 -0
  396. package/dist/esm/hooks/useLongPress/useLongPress.mjs.map +1 -0
  397. package/dist/esm/hooks/useMap/useMap.mjs +21 -0
  398. package/dist/esm/hooks/useMap/useMap.mjs.map +1 -0
  399. package/dist/esm/hooks/useMeasure/useMeasure.mjs +34 -0
  400. package/dist/esm/hooks/useMeasure/useMeasure.mjs.map +1 -0
  401. package/dist/esm/hooks/useMediaQuery/useMediaQuery.mjs +17 -0
  402. package/dist/esm/hooks/useMediaQuery/useMediaQuery.mjs.map +1 -0
  403. package/dist/esm/hooks/useMemory/useMemory.mjs +14 -0
  404. package/dist/esm/hooks/useMemory/useMemory.mjs.map +1 -0
  405. package/dist/esm/hooks/useMount/useMount.mjs +6 -0
  406. package/dist/esm/hooks/useMount/useMount.mjs.map +1 -0
  407. package/dist/esm/hooks/useMouse/useMouse.mjs +40 -0
  408. package/dist/esm/hooks/useMouse/useMouse.mjs.map +1 -0
  409. package/dist/esm/hooks/useMutation/useMutation.mjs +64 -0
  410. package/dist/esm/hooks/useMutation/useMutation.mjs.map +1 -0
  411. package/dist/esm/hooks/useMutationObserver/useMutationObserver.mjs +28 -0
  412. package/dist/esm/hooks/useMutationObserver/useMutationObserver.mjs.map +1 -0
  413. package/dist/esm/hooks/useNetwork/useNetwork.mjs +49 -0
  414. package/dist/esm/hooks/useNetwork/useNetwork.mjs.map +1 -0
  415. package/dist/esm/hooks/useOffsetPagination/useOffsetPagination.mjs +48 -0
  416. package/dist/esm/hooks/useOffsetPagination/useOffsetPagination.mjs.map +1 -0
  417. package/dist/esm/hooks/useOnce/useOnce.mjs +14 -0
  418. package/dist/esm/hooks/useOnce/useOnce.mjs.map +1 -0
  419. package/dist/esm/hooks/useOnline/useOnline.mjs +8 -0
  420. package/dist/esm/hooks/useOnline/useOnline.mjs.map +1 -0
  421. package/dist/esm/hooks/useOperatingSystem/useOperatingSystem.mjs +14 -0
  422. package/dist/esm/hooks/useOperatingSystem/useOperatingSystem.mjs.map +1 -0
  423. package/dist/esm/hooks/useOptimistic/useOptimistic.mjs +14 -0
  424. package/dist/esm/hooks/useOptimistic/useOptimistic.mjs.map +1 -0
  425. package/dist/esm/hooks/useOrientation/useOrientation.mjs +14 -0
  426. package/dist/esm/hooks/useOrientation/useOrientation.mjs.map +1 -0
  427. package/dist/esm/hooks/useOtpCredential/useOtpCredential.mjs +25 -0
  428. package/dist/esm/hooks/useOtpCredential/useOtpCredential.mjs.map +1 -0
  429. package/dist/esm/hooks/usePageLeave/usePageLeave.mjs +15 -0
  430. package/dist/esm/hooks/usePageLeave/usePageLeave.mjs.map +1 -0
  431. package/dist/esm/hooks/usePaint/usePaint.mjs +147 -0
  432. package/dist/esm/hooks/usePaint/usePaint.mjs.map +1 -0
  433. package/dist/esm/hooks/useParallax/useParallax.mjs +94 -0
  434. package/dist/esm/hooks/useParallax/useParallax.mjs.map +1 -0
  435. package/dist/esm/hooks/usePerformanceObserver/usePerformanceObserver.mjs +26 -0
  436. package/dist/esm/hooks/usePerformanceObserver/usePerformanceObserver.mjs.map +1 -0
  437. package/dist/esm/hooks/usePermission/usePermission.mjs +28 -0
  438. package/dist/esm/hooks/usePermission/usePermission.mjs.map +1 -0
  439. package/dist/esm/hooks/usePointerLock/usePointerLock.mjs +31 -0
  440. package/dist/esm/hooks/usePointerLock/usePointerLock.mjs.map +1 -0
  441. package/dist/esm/hooks/usePostMessage/usePostMessage.mjs +20 -0
  442. package/dist/esm/hooks/usePostMessage/usePostMessage.mjs.map +1 -0
  443. package/dist/esm/hooks/usePreferredColorScheme/usePreferredColorScheme.mjs +9 -0
  444. package/dist/esm/hooks/usePreferredColorScheme/usePreferredColorScheme.mjs.map +1 -0
  445. package/dist/esm/hooks/usePreferredContrast/usePreferredContrast.mjs +9 -0
  446. package/dist/esm/hooks/usePreferredContrast/usePreferredContrast.mjs.map +1 -0
  447. package/dist/esm/hooks/usePreferredDark/usePreferredDark.mjs +6 -0
  448. package/dist/esm/hooks/usePreferredDark/usePreferredDark.mjs.map +1 -0
  449. package/dist/esm/hooks/usePreferredLanguages/usePreferredLanguages.mjs +8 -0
  450. package/dist/esm/hooks/usePreferredLanguages/usePreferredLanguages.mjs.map +1 -0
  451. package/dist/esm/hooks/usePreferredReducedMotion/usePreferredReducedMotion.mjs +6 -0
  452. package/dist/esm/hooks/usePreferredReducedMotion/usePreferredReducedMotion.mjs.map +1 -0
  453. package/dist/esm/hooks/usePrevious/usePrevious.mjs +9 -0
  454. package/dist/esm/hooks/usePrevious/usePrevious.mjs.map +1 -0
  455. package/dist/esm/hooks/useQuery/useQuery.mjs +57 -0
  456. package/dist/esm/hooks/useQuery/useQuery.mjs.map +1 -0
  457. package/dist/esm/hooks/useQueue/useQueue.mjs +23 -0
  458. package/dist/esm/hooks/useQueue/useQueue.mjs.map +1 -0
  459. package/dist/esm/hooks/useRaf/useRaf.mjs +30 -0
  460. package/dist/esm/hooks/useRaf/useRaf.mjs.map +1 -0
  461. package/dist/esm/hooks/useRafValue/useRafValue.mjs +12 -0
  462. package/dist/esm/hooks/useRafValue/useRafValue.mjs.map +1 -0
  463. package/dist/esm/hooks/useRefState/useRefState.mjs +24 -0
  464. package/dist/esm/hooks/useRefState/useRefState.mjs.map +1 -0
  465. package/dist/esm/hooks/useRenderCount/useRenderCount.mjs +11 -0
  466. package/dist/esm/hooks/useRenderCount/useRenderCount.mjs.map +1 -0
  467. package/dist/esm/hooks/useRenderInfo/useRenderInfo.mjs +14 -0
  468. package/dist/esm/hooks/useRenderInfo/useRenderInfo.mjs.map +1 -0
  469. package/dist/esm/hooks/useRerender/useRerender.mjs +6 -0
  470. package/dist/esm/hooks/useRerender/useRerender.mjs.map +1 -0
  471. package/dist/esm/hooks/useResizeObserver/useResizeObserver.mjs +26 -0
  472. package/dist/esm/hooks/useResizeObserver/useResizeObserver.mjs.map +1 -0
  473. package/dist/esm/hooks/useScreenOrientation/useScreenOrientation.mjs +31 -0
  474. package/dist/esm/hooks/useScreenOrientation/useScreenOrientation.mjs.map +1 -0
  475. package/dist/esm/hooks/useScript/useScript.mjs +32 -0
  476. package/dist/esm/hooks/useScript/useScript.mjs.map +1 -0
  477. package/dist/esm/hooks/useScroll/useScroll.mjs +51 -0
  478. package/dist/esm/hooks/useScroll/useScroll.mjs.map +1 -0
  479. package/dist/esm/hooks/useScrollIntoView/useScrollIntoView.mjs +36 -0
  480. package/dist/esm/hooks/useScrollIntoView/useScrollIntoView.mjs.map +1 -0
  481. package/dist/esm/hooks/useScrollTo/useScrollTo.mjs +23 -0
  482. package/dist/esm/hooks/useScrollTo/useScrollTo.mjs.map +1 -0
  483. package/dist/esm/hooks/useSessionStorage/useSessionStorage.mjs +10 -0
  484. package/dist/esm/hooks/useSessionStorage/useSessionStorage.mjs.map +1 -0
  485. package/dist/esm/hooks/useSet/useSet.mjs +30 -0
  486. package/dist/esm/hooks/useSet/useSet.mjs.map +1 -0
  487. package/dist/esm/hooks/useShare/useShare.mjs +15 -0
  488. package/dist/esm/hooks/useShare/useShare.mjs.map +1 -0
  489. package/dist/esm/hooks/useSpeechRecognition/useSpeechRecognition.mjs +41 -0
  490. package/dist/esm/hooks/useSpeechRecognition/useSpeechRecognition.mjs.map +1 -0
  491. package/dist/esm/hooks/useStateHistory/useStateHistory.mjs +31 -0
  492. package/dist/esm/hooks/useStateHistory/useStateHistory.mjs.map +1 -0
  493. package/dist/esm/hooks/useStep/useStep.mjs +29 -0
  494. package/dist/esm/hooks/useStep/useStep.mjs.map +1 -0
  495. package/dist/esm/hooks/useSticky/useSticky.mjs +32 -0
  496. package/dist/esm/hooks/useSticky/useSticky.mjs.map +1 -0
  497. package/dist/esm/hooks/useStopwatch/useStopwatch.mjs +59 -0
  498. package/dist/esm/hooks/useStopwatch/useStopwatch.mjs.map +1 -0
  499. package/dist/esm/hooks/useStorage/useStorage.mjs +51 -0
  500. package/dist/esm/hooks/useStorage/useStorage.mjs.map +1 -0
  501. package/dist/esm/hooks/useTextDirection/useTextDirection.mjs +37 -0
  502. package/dist/esm/hooks/useTextDirection/useTextDirection.mjs.map +1 -0
  503. package/dist/esm/hooks/useTextSelection/useTextSelection.mjs +28 -0
  504. package/dist/esm/hooks/useTextSelection/useTextSelection.mjs.map +1 -0
  505. package/dist/esm/hooks/useThrottleCallback/useThrottleCallback.mjs +11 -0
  506. package/dist/esm/hooks/useThrottleCallback/useThrottleCallback.mjs.map +1 -0
  507. package/dist/esm/hooks/useThrottleValue/useThrottleValue.mjs +12 -0
  508. package/dist/esm/hooks/useThrottleValue/useThrottleValue.mjs.map +1 -0
  509. package/dist/esm/hooks/useTime/useTime.mjs +11 -0
  510. package/dist/esm/hooks/useTime/useTime.mjs.map +1 -0
  511. package/dist/esm/hooks/useTimeout/useTimeout.mjs +16 -0
  512. package/dist/esm/hooks/useTimeout/useTimeout.mjs.map +1 -0
  513. package/dist/esm/hooks/useTimer/useTimer.mjs +69 -0
  514. package/dist/esm/hooks/useTimer/useTimer.mjs.map +1 -0
  515. package/dist/esm/hooks/useToggle/useToggle.mjs +12 -0
  516. package/dist/esm/hooks/useToggle/useToggle.mjs.map +1 -0
  517. package/dist/esm/hooks/useUnmount/useUnmount.mjs +14 -0
  518. package/dist/esm/hooks/useUnmount/useUnmount.mjs.map +1 -0
  519. package/dist/esm/hooks/useVibrate/useVibrate.mjs +22 -0
  520. package/dist/esm/hooks/useVibrate/useVibrate.mjs.map +1 -0
  521. package/dist/esm/hooks/useWebSocket/useWebSocket.mjs +46 -0
  522. package/dist/esm/hooks/useWebSocket/useWebSocket.mjs.map +1 -0
  523. package/dist/esm/hooks/useWindowEvent/useWindowEvent.mjs +7 -0
  524. package/dist/esm/hooks/useWindowEvent/useWindowEvent.mjs.map +1 -0
  525. package/dist/esm/hooks/useWindowFocus/useWindowFocus.mjs +14 -0
  526. package/dist/esm/hooks/useWindowFocus/useWindowFocus.mjs.map +1 -0
  527. package/dist/esm/hooks/useWindowScroll/useWindowScroll.mjs +25 -0
  528. package/dist/esm/hooks/useWindowScroll/useWindowScroll.mjs.map +1 -0
  529. package/dist/esm/hooks/useWindowSize/useWindowSize.mjs +28 -0
  530. package/dist/esm/hooks/useWindowSize/useWindowSize.mjs.map +1 -0
  531. package/dist/esm/hooks/useWizard/useWizard.mjs +23 -0
  532. package/dist/esm/hooks/useWizard/useWizard.mjs.map +1 -0
  533. package/dist/esm/index.mjs +310 -0
  534. package/dist/esm/index.mjs.map +1 -0
  535. package/dist/esm/utils/helpers/copy.mjs +19 -0
  536. package/dist/esm/utils/helpers/copy.mjs.map +1 -0
  537. package/dist/esm/utils/helpers/debounce.mjs +10 -0
  538. package/dist/esm/utils/helpers/debounce.mjs.map +1 -0
  539. package/dist/esm/utils/helpers/getDate.mjs +17 -0
  540. package/dist/esm/utils/helpers/getDate.mjs.map +1 -0
  541. package/dist/esm/utils/helpers/getElement.mjs +10 -0
  542. package/dist/esm/utils/helpers/getElement.mjs.map +1 -0
  543. package/dist/esm/utils/helpers/getRetry.mjs +5 -0
  544. package/dist/esm/utils/helpers/getRetry.mjs.map +1 -0
  545. package/dist/esm/utils/helpers/isTarget.mjs +6 -0
  546. package/dist/esm/utils/helpers/isTarget.mjs.map +1 -0
  547. package/dist/esm/utils/helpers/throttle.mjs +21 -0
  548. package/dist/esm/utils/helpers/throttle.mjs.map +1 -0
  549. package/dist/types/hooks/index.d.ts +129 -0
  550. package/dist/types/hooks/useActiveElement/useActiveElement.d.ts +11 -0
  551. package/dist/types/hooks/useAsync/useAsync.d.ts +20 -0
  552. package/dist/types/hooks/useBattery/useBattery.d.ts +44 -0
  553. package/dist/types/hooks/useBluetooth/useBluetooth.d.ts +38 -0
  554. package/dist/types/hooks/useBoolean/useBoolean.d.ts +19 -0
  555. package/dist/types/hooks/useBreakpoints/useBreakpoints.d.ts +125 -0
  556. package/dist/types/hooks/useBrowserLanguage/useBrowserLanguage.d.ts +13 -0
  557. package/dist/types/hooks/useClickOutside/useClickOutside.d.ts +30 -0
  558. package/dist/types/hooks/useClipboard/useClipboard.d.ts +26 -0
  559. package/dist/types/hooks/useConst/useConst.d.ts +13 -0
  560. package/dist/types/hooks/useCookie/useCookie.d.ts +65 -0
  561. package/dist/types/hooks/useCookies/useCookies.d.ts +27 -0
  562. package/dist/types/hooks/useCopy/useCopy.d.ts +28 -0
  563. package/dist/types/hooks/useCounter/useCounter.d.ts +51 -0
  564. package/dist/types/hooks/useCssVar/useCssVar.d.ts +38 -0
  565. package/dist/types/hooks/useDebounceCallback/useDebounceCallback.d.ts +15 -0
  566. package/dist/types/hooks/useDebounceValue/useDebounceValue.d.ts +14 -0
  567. package/dist/types/hooks/useDefault/useDefault.d.ts +14 -0
  568. package/dist/types/hooks/useDeviceMotion/useDeviceMotion.d.ts +30 -0
  569. package/dist/types/hooks/useDeviceOrientation/useDeviceOrientation.d.ts +29 -0
  570. package/dist/types/hooks/useDevicePixelRatio/useDevicePixelRatio.d.ts +20 -0
  571. package/dist/types/hooks/useDidUpdate/useDidUpdate.d.ts +13 -0
  572. package/dist/types/hooks/useDisclosure/useDisclosure.d.ts +32 -0
  573. package/dist/types/hooks/useDisplayMedia/useDisplayMedia.d.ts +58 -0
  574. package/dist/types/hooks/useDocumentEvent/useDocumentEvent.d.ts +16 -0
  575. package/dist/types/hooks/useDocumentTitle/useDocumentTitle.d.ts +25 -0
  576. package/dist/types/hooks/useDocumentVisibility/useDocumentVisibility.d.ts +11 -0
  577. package/dist/types/hooks/useElementSize/useElementSize.d.ts +38 -0
  578. package/dist/types/hooks/useEvent/useEvent.d.ts +14 -0
  579. package/dist/types/hooks/useEventListener/useEventListener.d.ts +64 -0
  580. package/dist/types/hooks/useEyeDropper/useEyeDropper.d.ts +40 -0
  581. package/dist/types/hooks/useFavicon/useFavicon.d.ts +18 -0
  582. package/dist/types/hooks/useField/useField.d.ts +95 -0
  583. package/dist/types/hooks/useFileDialog/useFileDialog.d.ts +46 -0
  584. package/dist/types/hooks/useFocus/useFocus.d.ts +52 -0
  585. package/dist/types/hooks/useFps/useFps.d.ts +13 -0
  586. package/dist/types/hooks/useFul/useFul.d.ts +15 -0
  587. package/dist/types/hooks/useFullscreen/useFullscreen.d.ts +54 -0
  588. package/dist/types/hooks/useGamepad/useGamepad.d.ts +67 -0
  589. package/dist/types/hooks/useGeolocation/useGeolocation.d.ts +41 -0
  590. package/dist/types/hooks/useHash/useHash.d.ts +14 -0
  591. package/dist/types/hooks/useHotkeys/useHotkeys.d.ts +58 -0
  592. package/dist/types/hooks/useHover/useHover.d.ts +55 -0
  593. package/dist/types/hooks/useIdle/useIdle.d.ts +28 -0
  594. package/dist/types/hooks/useImage/useImage.d.ts +44 -0
  595. package/dist/types/hooks/useInfiniteScroll/useInfiniteScroll.d.ts +42 -0
  596. package/dist/types/hooks/useIntersectionObserver/useIntersectionObserver.d.ts +45 -0
  597. package/dist/types/hooks/useInterval/useInterval.d.ts +46 -0
  598. package/dist/types/hooks/useIsFirstRender/useIsFirstRender.d.ts +11 -0
  599. package/dist/types/hooks/useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.d.ts +10 -0
  600. package/dist/types/hooks/useKeyPress/useKeyPress.d.ts +37 -0
  601. package/dist/types/hooks/useKeyPressEvent/useKeyPressEvent.d.ts +45 -0
  602. package/dist/types/hooks/useKeyboard/useKeyboard.d.ts +39 -0
  603. package/dist/types/hooks/useKeysPressed/useKeysPressed.d.ts +44 -0
  604. package/dist/types/hooks/useLastChanged/useLastChanged.d.ts +17 -0
  605. package/dist/types/hooks/useLatest/useLatest.d.ts +13 -0
  606. package/dist/types/hooks/useLess/useLess.d.ts +15 -0
  607. package/dist/types/hooks/useList/useList.d.ts +39 -0
  608. package/dist/types/hooks/useLocalStorage/useLocalStorage.d.ts +21 -0
  609. package/dist/types/hooks/useLockCallback/useLockCallback.d.ts +12 -0
  610. package/dist/types/hooks/useLogger/useLogger.d.ts +12 -0
  611. package/dist/types/hooks/useLongPress/useLongPress.d.ts +38 -0
  612. package/dist/types/hooks/useMap/useMap.d.ts +30 -0
  613. package/dist/types/hooks/useMeasure/useMeasure.d.ts +30 -0
  614. package/dist/types/hooks/useMediaQuery/useMediaQuery.d.ts +14 -0
  615. package/dist/types/hooks/useMemory/useMemory.d.ts +29 -0
  616. package/dist/types/hooks/useMount/useMount.d.ts +12 -0
  617. package/dist/types/hooks/useMouse/useMouse.d.ts +45 -0
  618. package/dist/types/hooks/useMutation/useMutation.d.ts +36 -0
  619. package/dist/types/hooks/useMutationObserver/useMutationObserver.d.ts +60 -0
  620. package/dist/types/hooks/useNetwork/useNetwork.d.ts +51 -0
  621. package/dist/types/hooks/useOffsetPagination/useOffsetPagination.d.ts +68 -0
  622. package/dist/types/hooks/useOnce/useOnce.d.ts +14 -0
  623. package/dist/types/hooks/useOnline/useOnline.d.ts +13 -0
  624. package/dist/types/hooks/useOperatingSystem/useOperatingSystem.d.ts +14 -0
  625. package/dist/types/hooks/useOptimistic/useOptimistic.d.ts +18 -0
  626. package/dist/types/hooks/useOrientation/useOrientation.d.ts +20 -0
  627. package/dist/types/hooks/useOtpCredential/useOtpCredential.d.ts +49 -0
  628. package/dist/types/hooks/usePageLeave/usePageLeave.d.ts +12 -0
  629. package/dist/types/hooks/usePaint/usePaint.d.ts +97 -0
  630. package/dist/types/hooks/useParallax/useParallax.d.ts +54 -0
  631. package/dist/types/hooks/usePerformanceObserver/usePerformanceObserver.d.ts +25 -0
  632. package/dist/types/hooks/usePermission/usePermission.d.ts +35 -0
  633. package/dist/types/hooks/usePointerLock/usePointerLock.d.ts +26 -0
  634. package/dist/types/hooks/usePostMessage/usePostMessage.d.ts +16 -0
  635. package/dist/types/hooks/usePreferredColorScheme/usePreferredColorScheme.d.ts +13 -0
  636. package/dist/types/hooks/usePreferredContrast/usePreferredContrast.d.ts +13 -0
  637. package/dist/types/hooks/usePreferredDark/usePreferredDark.d.ts +9 -0
  638. package/dist/types/hooks/usePreferredLanguages/usePreferredLanguages.d.ts +13 -0
  639. package/dist/types/hooks/usePreferredReducedMotion/usePreferredReducedMotion.d.ts +13 -0
  640. package/dist/types/hooks/usePrevious/usePrevious.d.ts +17 -0
  641. package/dist/types/hooks/useQuery/useQuery.d.ts +50 -0
  642. package/dist/types/hooks/useQueue/useQueue.d.ts +30 -0
  643. package/dist/types/hooks/useRaf/useRaf.d.ts +37 -0
  644. package/dist/types/hooks/useRafValue/useRafValue.d.ts +14 -0
  645. package/dist/types/hooks/useRefState/useRefState.d.ts +18 -0
  646. package/dist/types/hooks/useRenderCount/useRenderCount.d.ts +11 -0
  647. package/dist/types/hooks/useRenderInfo/useRenderInfo.d.ts +19 -0
  648. package/dist/types/hooks/useRerender/useRerender.d.ts +14 -0
  649. package/dist/types/hooks/useResizeObserver/useResizeObserver.d.ts +49 -0
  650. package/dist/types/hooks/useScreenOrientation/useScreenOrientation.d.ts +35 -0
  651. package/dist/types/hooks/useScript/useScript.d.ts +24 -0
  652. package/dist/types/hooks/useScroll/useScroll.d.ts +99 -0
  653. package/dist/types/hooks/useScrollIntoView/useScrollIntoView.d.ts +48 -0
  654. package/dist/types/hooks/useScrollTo/useScrollTo.d.ts +50 -0
  655. package/dist/types/hooks/useSessionStorage/useSessionStorage.d.ts +21 -0
  656. package/dist/types/hooks/useSet/useSet.d.ts +41 -0
  657. package/dist/types/hooks/useShare/useShare.d.ts +33 -0
  658. package/dist/types/hooks/useSpeechRecognition/useSpeechRecognition.d.ts +69 -0
  659. package/dist/types/hooks/useStateHistory/useStateHistory.d.ts +33 -0
  660. package/dist/types/hooks/useStep/useStep.d.ts +48 -0
  661. package/dist/types/hooks/useSticky/useSticky.d.ts +42 -0
  662. package/dist/types/hooks/useStopwatch/useStopwatch.d.ts +59 -0
  663. package/dist/types/hooks/useStorage/useStorage.d.ts +40 -0
  664. package/dist/types/hooks/useTextDirection/useTextDirection.d.ts +41 -0
  665. package/dist/types/hooks/useTextSelection/useTextSelection.d.ts +25 -0
  666. package/dist/types/hooks/useThrottleCallback/useThrottleCallback.d.ts +15 -0
  667. package/dist/types/hooks/useThrottleValue/useThrottleValue.d.ts +14 -0
  668. package/dist/types/hooks/useTime/useTime.d.ts +24 -0
  669. package/dist/types/hooks/useTimeout/useTimeout.d.ts +21 -0
  670. package/dist/types/hooks/useTimer/useTimer.d.ts +84 -0
  671. package/dist/types/hooks/useToggle/useToggle.d.ts +18 -0
  672. package/dist/types/hooks/useUnmount/useUnmount.d.ts +12 -0
  673. package/dist/types/hooks/useVibrate/useVibrate.d.ts +40 -0
  674. package/dist/types/hooks/useWebSocket/useWebSocket.d.ts +35 -0
  675. package/dist/types/hooks/useWindowEvent/useWindowEvent.d.ts +16 -0
  676. package/dist/types/hooks/useWindowFocus/useWindowFocus.d.ts +11 -0
  677. package/dist/types/hooks/useWindowScroll/useWindowScroll.d.ts +19 -0
  678. package/dist/types/hooks/useWindowSize/useWindowSize.d.ts +29 -0
  679. package/dist/types/hooks/useWizard/useWizard.d.ts +27 -0
  680. package/dist/types/index.d.ts +2 -4229
  681. package/dist/types/utils/helpers/copy.d.ts +2 -0
  682. package/dist/types/utils/helpers/debounce.d.ts +1 -0
  683. package/dist/types/utils/helpers/getDate.d.ts +13 -0
  684. package/dist/types/utils/helpers/getElement.d.ts +12 -0
  685. package/dist/types/utils/helpers/getRetry.d.ts +1 -0
  686. package/dist/types/utils/helpers/index.d.ts +7 -0
  687. package/dist/types/utils/helpers/isTarget.d.ts +2 -0
  688. package/dist/types/utils/helpers/throttle.d.ts +1 -0
  689. package/package.json +8 -6
  690. package/dist/cjs/_rollupPluginBabelHelpers-Blbnc4c2.js +0 -3
  691. package/dist/cjs/_rollupPluginBabelHelpers-Blbnc4c2.js.map +0 -1
  692. package/dist/cjs/hooks/index.js +0 -3
  693. package/dist/cjs/hooks/index.js.map +0 -1
  694. package/dist/cjs/hooks/useActiveElement/useActiveElement.js +0 -3
  695. package/dist/cjs/hooks/useActiveElement/useActiveElement.js.map +0 -1
  696. package/dist/cjs/hooks/useAsync/useAsync.js +0 -3
  697. package/dist/cjs/hooks/useAsync/useAsync.js.map +0 -1
  698. package/dist/cjs/hooks/useBattery/useBattery.js +0 -3
  699. package/dist/cjs/hooks/useBattery/useBattery.js.map +0 -1
  700. package/dist/cjs/hooks/useBluetooth/useBluetooth.js +0 -3
  701. package/dist/cjs/hooks/useBluetooth/useBluetooth.js.map +0 -1
  702. package/dist/cjs/hooks/useBoolean/useBoolean.js +0 -3
  703. package/dist/cjs/hooks/useBoolean/useBoolean.js.map +0 -1
  704. package/dist/cjs/hooks/useBreakpoints/useBreakpoints.js +0 -3
  705. package/dist/cjs/hooks/useBreakpoints/useBreakpoints.js.map +0 -1
  706. package/dist/cjs/hooks/useBrowserLanguage/useBrowserLanguage.js +0 -3
  707. package/dist/cjs/hooks/useBrowserLanguage/useBrowserLanguage.js.map +0 -1
  708. package/dist/cjs/hooks/useClickOutside/useClickOutside.js +0 -3
  709. package/dist/cjs/hooks/useClickOutside/useClickOutside.js.map +0 -1
  710. package/dist/cjs/hooks/useClipboard/useClipboard.js +0 -3
  711. package/dist/cjs/hooks/useClipboard/useClipboard.js.map +0 -1
  712. package/dist/cjs/hooks/useConst/useConst.js +0 -3
  713. package/dist/cjs/hooks/useConst/useConst.js.map +0 -1
  714. package/dist/cjs/hooks/useCookie/useCookie.js +0 -3
  715. package/dist/cjs/hooks/useCookie/useCookie.js.map +0 -1
  716. package/dist/cjs/hooks/useCookies/useCookies.js +0 -3
  717. package/dist/cjs/hooks/useCookies/useCookies.js.map +0 -1
  718. package/dist/cjs/hooks/useCopy/useCopy.js +0 -3
  719. package/dist/cjs/hooks/useCopy/useCopy.js.map +0 -1
  720. package/dist/cjs/hooks/useCounter/useCounter.js +0 -3
  721. package/dist/cjs/hooks/useCounter/useCounter.js.map +0 -1
  722. package/dist/cjs/hooks/useCssVar/useCssVar.js +0 -3
  723. package/dist/cjs/hooks/useCssVar/useCssVar.js.map +0 -1
  724. package/dist/cjs/hooks/useDebounceCallback/useDebounceCallback.js +0 -3
  725. package/dist/cjs/hooks/useDebounceCallback/useDebounceCallback.js.map +0 -1
  726. package/dist/cjs/hooks/useDebounceValue/useDebounceValue.js +0 -3
  727. package/dist/cjs/hooks/useDebounceValue/useDebounceValue.js.map +0 -1
  728. package/dist/cjs/hooks/useDefault/useDefault.js +0 -3
  729. package/dist/cjs/hooks/useDefault/useDefault.js.map +0 -1
  730. package/dist/cjs/hooks/useDeviceMotion/useDeviceMotion.js +0 -3
  731. package/dist/cjs/hooks/useDeviceMotion/useDeviceMotion.js.map +0 -1
  732. package/dist/cjs/hooks/useDeviceOrientation/useDeviceOrientation.js +0 -3
  733. package/dist/cjs/hooks/useDeviceOrientation/useDeviceOrientation.js.map +0 -1
  734. package/dist/cjs/hooks/useDevicePixelRatio/useDevicePixelRatio.js +0 -3
  735. package/dist/cjs/hooks/useDevicePixelRatio/useDevicePixelRatio.js.map +0 -1
  736. package/dist/cjs/hooks/useDidUpdate/useDidUpdate.js +0 -3
  737. package/dist/cjs/hooks/useDidUpdate/useDidUpdate.js.map +0 -1
  738. package/dist/cjs/hooks/useDisclosure/useDisclosure.js +0 -3
  739. package/dist/cjs/hooks/useDisclosure/useDisclosure.js.map +0 -1
  740. package/dist/cjs/hooks/useDisplayMedia/useDisplayMedia.js +0 -3
  741. package/dist/cjs/hooks/useDisplayMedia/useDisplayMedia.js.map +0 -1
  742. package/dist/cjs/hooks/useDocumentEvent/useDocumentEvent.js +0 -3
  743. package/dist/cjs/hooks/useDocumentEvent/useDocumentEvent.js.map +0 -1
  744. package/dist/cjs/hooks/useDocumentTitle/useDocumentTitle.js +0 -3
  745. package/dist/cjs/hooks/useDocumentTitle/useDocumentTitle.js.map +0 -1
  746. package/dist/cjs/hooks/useDocumentVisibility/useDocumentVisibility.js +0 -3
  747. package/dist/cjs/hooks/useDocumentVisibility/useDocumentVisibility.js.map +0 -1
  748. package/dist/cjs/hooks/useElementSize/useElementSize.js +0 -3
  749. package/dist/cjs/hooks/useElementSize/useElementSize.js.map +0 -1
  750. package/dist/cjs/hooks/useEvent/useEvent.js +0 -3
  751. package/dist/cjs/hooks/useEvent/useEvent.js.map +0 -1
  752. package/dist/cjs/hooks/useEventListener/useEventListener.js +0 -3
  753. package/dist/cjs/hooks/useEventListener/useEventListener.js.map +0 -1
  754. package/dist/cjs/hooks/useEyeDropper/useEyeDropper.js +0 -3
  755. package/dist/cjs/hooks/useEyeDropper/useEyeDropper.js.map +0 -1
  756. package/dist/cjs/hooks/useFavicon/useFavicon.js +0 -3
  757. package/dist/cjs/hooks/useFavicon/useFavicon.js.map +0 -1
  758. package/dist/cjs/hooks/useField/useField.js +0 -3
  759. package/dist/cjs/hooks/useField/useField.js.map +0 -1
  760. package/dist/cjs/hooks/useFileDialog/useFileDialog.js +0 -3
  761. package/dist/cjs/hooks/useFileDialog/useFileDialog.js.map +0 -1
  762. package/dist/cjs/hooks/useFocus/useFocus.js +0 -3
  763. package/dist/cjs/hooks/useFocus/useFocus.js.map +0 -1
  764. package/dist/cjs/hooks/useFps/useFps.js +0 -3
  765. package/dist/cjs/hooks/useFps/useFps.js.map +0 -1
  766. package/dist/cjs/hooks/useFul/useFul.js +0 -3
  767. package/dist/cjs/hooks/useFul/useFul.js.map +0 -1
  768. package/dist/cjs/hooks/useFullscreen/useFullscreen.js +0 -3
  769. package/dist/cjs/hooks/useFullscreen/useFullscreen.js.map +0 -1
  770. package/dist/cjs/hooks/useGamepad/useGamepad.js +0 -3
  771. package/dist/cjs/hooks/useGamepad/useGamepad.js.map +0 -1
  772. package/dist/cjs/hooks/useGeolocation/useGeolocation.js +0 -3
  773. package/dist/cjs/hooks/useGeolocation/useGeolocation.js.map +0 -1
  774. package/dist/cjs/hooks/useHash/useHash.js +0 -3
  775. package/dist/cjs/hooks/useHash/useHash.js.map +0 -1
  776. package/dist/cjs/hooks/useHotkeys/useHotkeys.js +0 -3
  777. package/dist/cjs/hooks/useHotkeys/useHotkeys.js.map +0 -1
  778. package/dist/cjs/hooks/useHover/useHover.js +0 -3
  779. package/dist/cjs/hooks/useHover/useHover.js.map +0 -1
  780. package/dist/cjs/hooks/useIdle/useIdle.js +0 -3
  781. package/dist/cjs/hooks/useIdle/useIdle.js.map +0 -1
  782. package/dist/cjs/hooks/useImage/useImage.js +0 -3
  783. package/dist/cjs/hooks/useImage/useImage.js.map +0 -1
  784. package/dist/cjs/hooks/useInfiniteScroll/useInfiniteScroll.js +0 -3
  785. package/dist/cjs/hooks/useInfiniteScroll/useInfiniteScroll.js.map +0 -1
  786. package/dist/cjs/hooks/useIntersectionObserver/useIntersectionObserver.js +0 -3
  787. package/dist/cjs/hooks/useIntersectionObserver/useIntersectionObserver.js.map +0 -1
  788. package/dist/cjs/hooks/useInterval/useInterval.js +0 -3
  789. package/dist/cjs/hooks/useInterval/useInterval.js.map +0 -1
  790. package/dist/cjs/hooks/useIsFirstRender/useIsFirstRender.js +0 -3
  791. package/dist/cjs/hooks/useIsFirstRender/useIsFirstRender.js.map +0 -1
  792. package/dist/cjs/hooks/useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js +0 -3
  793. package/dist/cjs/hooks/useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js.map +0 -1
  794. package/dist/cjs/hooks/useKeyPress/useKeyPress.js +0 -3
  795. package/dist/cjs/hooks/useKeyPress/useKeyPress.js.map +0 -1
  796. package/dist/cjs/hooks/useKeyPressEvent/useKeyPressEvent.js +0 -3
  797. package/dist/cjs/hooks/useKeyPressEvent/useKeyPressEvent.js.map +0 -1
  798. package/dist/cjs/hooks/useKeyboard/useKeyboard.js +0 -3
  799. package/dist/cjs/hooks/useKeyboard/useKeyboard.js.map +0 -1
  800. package/dist/cjs/hooks/useKeysPressed/useKeysPressed.js +0 -3
  801. package/dist/cjs/hooks/useKeysPressed/useKeysPressed.js.map +0 -1
  802. package/dist/cjs/hooks/useLastChanged/useLastChanged.js +0 -3
  803. package/dist/cjs/hooks/useLastChanged/useLastChanged.js.map +0 -1
  804. package/dist/cjs/hooks/useLatest/useLatest.js +0 -3
  805. package/dist/cjs/hooks/useLatest/useLatest.js.map +0 -1
  806. package/dist/cjs/hooks/useLess/useLess.js +0 -3
  807. package/dist/cjs/hooks/useLess/useLess.js.map +0 -1
  808. package/dist/cjs/hooks/useList/useList.js +0 -3
  809. package/dist/cjs/hooks/useList/useList.js.map +0 -1
  810. package/dist/cjs/hooks/useLocalStorage/useLocalStorage.js +0 -3
  811. package/dist/cjs/hooks/useLocalStorage/useLocalStorage.js.map +0 -1
  812. package/dist/cjs/hooks/useLockCallback/useLockCallback.js +0 -3
  813. package/dist/cjs/hooks/useLockCallback/useLockCallback.js.map +0 -1
  814. package/dist/cjs/hooks/useLogger/useLogger.js +0 -3
  815. package/dist/cjs/hooks/useLogger/useLogger.js.map +0 -1
  816. package/dist/cjs/hooks/useLongPress/useLongPress.js +0 -3
  817. package/dist/cjs/hooks/useLongPress/useLongPress.js.map +0 -1
  818. package/dist/cjs/hooks/useMap/useMap.js +0 -3
  819. package/dist/cjs/hooks/useMap/useMap.js.map +0 -1
  820. package/dist/cjs/hooks/useMeasure/useMeasure.js +0 -3
  821. package/dist/cjs/hooks/useMeasure/useMeasure.js.map +0 -1
  822. package/dist/cjs/hooks/useMediaQuery/useMediaQuery.js +0 -3
  823. package/dist/cjs/hooks/useMediaQuery/useMediaQuery.js.map +0 -1
  824. package/dist/cjs/hooks/useMemory/useMemory.js +0 -3
  825. package/dist/cjs/hooks/useMemory/useMemory.js.map +0 -1
  826. package/dist/cjs/hooks/useMount/useMount.js +0 -3
  827. package/dist/cjs/hooks/useMount/useMount.js.map +0 -1
  828. package/dist/cjs/hooks/useMouse/useMouse.js +0 -3
  829. package/dist/cjs/hooks/useMouse/useMouse.js.map +0 -1
  830. package/dist/cjs/hooks/useMutation/useMutation.js +0 -3
  831. package/dist/cjs/hooks/useMutation/useMutation.js.map +0 -1
  832. package/dist/cjs/hooks/useMutationObserver/useMutationObserver.js +0 -3
  833. package/dist/cjs/hooks/useMutationObserver/useMutationObserver.js.map +0 -1
  834. package/dist/cjs/hooks/useNetwork/useNetwork.js +0 -3
  835. package/dist/cjs/hooks/useNetwork/useNetwork.js.map +0 -1
  836. package/dist/cjs/hooks/useOffsetPagination/useOffsetPagination.js +0 -3
  837. package/dist/cjs/hooks/useOffsetPagination/useOffsetPagination.js.map +0 -1
  838. package/dist/cjs/hooks/useOnce/useOnce.js +0 -3
  839. package/dist/cjs/hooks/useOnce/useOnce.js.map +0 -1
  840. package/dist/cjs/hooks/useOnline/useOnline.js +0 -3
  841. package/dist/cjs/hooks/useOnline/useOnline.js.map +0 -1
  842. package/dist/cjs/hooks/useOperatingSystem/useOperatingSystem.js +0 -3
  843. package/dist/cjs/hooks/useOperatingSystem/useOperatingSystem.js.map +0 -1
  844. package/dist/cjs/hooks/useOptimistic/useOptimistic.js +0 -3
  845. package/dist/cjs/hooks/useOptimistic/useOptimistic.js.map +0 -1
  846. package/dist/cjs/hooks/useOrientation/useOrientation.js +0 -3
  847. package/dist/cjs/hooks/useOrientation/useOrientation.js.map +0 -1
  848. package/dist/cjs/hooks/useOtpCredential/useOtpCredential.js +0 -3
  849. package/dist/cjs/hooks/useOtpCredential/useOtpCredential.js.map +0 -1
  850. package/dist/cjs/hooks/usePageLeave/usePageLeave.js +0 -3
  851. package/dist/cjs/hooks/usePageLeave/usePageLeave.js.map +0 -1
  852. package/dist/cjs/hooks/usePaint/usePaint.js +0 -3
  853. package/dist/cjs/hooks/usePaint/usePaint.js.map +0 -1
  854. package/dist/cjs/hooks/useParallax/useParallax.js +0 -3
  855. package/dist/cjs/hooks/useParallax/useParallax.js.map +0 -1
  856. package/dist/cjs/hooks/usePerformanceObserver/usePerformanceObserver.js +0 -3
  857. package/dist/cjs/hooks/usePerformanceObserver/usePerformanceObserver.js.map +0 -1
  858. package/dist/cjs/hooks/usePermission/usePermission.js +0 -3
  859. package/dist/cjs/hooks/usePermission/usePermission.js.map +0 -1
  860. package/dist/cjs/hooks/usePointerLock/usePointerLock.js +0 -3
  861. package/dist/cjs/hooks/usePointerLock/usePointerLock.js.map +0 -1
  862. package/dist/cjs/hooks/usePostMessage/usePostMessage.js +0 -3
  863. package/dist/cjs/hooks/usePostMessage/usePostMessage.js.map +0 -1
  864. package/dist/cjs/hooks/usePreferredColorScheme/usePreferredColorScheme.js +0 -3
  865. package/dist/cjs/hooks/usePreferredColorScheme/usePreferredColorScheme.js.map +0 -1
  866. package/dist/cjs/hooks/usePreferredContrast/usePreferredContrast.js +0 -3
  867. package/dist/cjs/hooks/usePreferredContrast/usePreferredContrast.js.map +0 -1
  868. package/dist/cjs/hooks/usePreferredDark/usePreferredDark.js +0 -3
  869. package/dist/cjs/hooks/usePreferredDark/usePreferredDark.js.map +0 -1
  870. package/dist/cjs/hooks/usePreferredLanguages/usePreferredLanguages.js +0 -3
  871. package/dist/cjs/hooks/usePreferredLanguages/usePreferredLanguages.js.map +0 -1
  872. package/dist/cjs/hooks/usePreferredReducedMotion/usePreferredReducedMotion.js +0 -3
  873. package/dist/cjs/hooks/usePreferredReducedMotion/usePreferredReducedMotion.js.map +0 -1
  874. package/dist/cjs/hooks/usePrevious/usePrevious.js +0 -3
  875. package/dist/cjs/hooks/usePrevious/usePrevious.js.map +0 -1
  876. package/dist/cjs/hooks/useQuery/useQuery.js +0 -3
  877. package/dist/cjs/hooks/useQuery/useQuery.js.map +0 -1
  878. package/dist/cjs/hooks/useQueue/useQueue.js +0 -3
  879. package/dist/cjs/hooks/useQueue/useQueue.js.map +0 -1
  880. package/dist/cjs/hooks/useRaf/useRaf.js +0 -3
  881. package/dist/cjs/hooks/useRaf/useRaf.js.map +0 -1
  882. package/dist/cjs/hooks/useRafValue/useRafValue.js +0 -3
  883. package/dist/cjs/hooks/useRafValue/useRafValue.js.map +0 -1
  884. package/dist/cjs/hooks/useRefState/useRefState.js +0 -3
  885. package/dist/cjs/hooks/useRefState/useRefState.js.map +0 -1
  886. package/dist/cjs/hooks/useRenderCount/useRenderCount.js +0 -3
  887. package/dist/cjs/hooks/useRenderCount/useRenderCount.js.map +0 -1
  888. package/dist/cjs/hooks/useRenderInfo/useRenderInfo.js +0 -3
  889. package/dist/cjs/hooks/useRenderInfo/useRenderInfo.js.map +0 -1
  890. package/dist/cjs/hooks/useRerender/useRerender.js +0 -3
  891. package/dist/cjs/hooks/useRerender/useRerender.js.map +0 -1
  892. package/dist/cjs/hooks/useResizeObserver/useResizeObserver.js +0 -3
  893. package/dist/cjs/hooks/useResizeObserver/useResizeObserver.js.map +0 -1
  894. package/dist/cjs/hooks/useScreenOrientation/useScreenOrientation.js +0 -3
  895. package/dist/cjs/hooks/useScreenOrientation/useScreenOrientation.js.map +0 -1
  896. package/dist/cjs/hooks/useScript/useScript.js +0 -3
  897. package/dist/cjs/hooks/useScript/useScript.js.map +0 -1
  898. package/dist/cjs/hooks/useScroll/useScroll.js +0 -3
  899. package/dist/cjs/hooks/useScroll/useScroll.js.map +0 -1
  900. package/dist/cjs/hooks/useScrollIntoView/useScrollIntoView.js +0 -3
  901. package/dist/cjs/hooks/useScrollIntoView/useScrollIntoView.js.map +0 -1
  902. package/dist/cjs/hooks/useScrollTo/useScrollTo.js +0 -3
  903. package/dist/cjs/hooks/useScrollTo/useScrollTo.js.map +0 -1
  904. package/dist/cjs/hooks/useSessionStorage/useSessionStorage.js +0 -3
  905. package/dist/cjs/hooks/useSessionStorage/useSessionStorage.js.map +0 -1
  906. package/dist/cjs/hooks/useSet/useSet.js +0 -3
  907. package/dist/cjs/hooks/useSet/useSet.js.map +0 -1
  908. package/dist/cjs/hooks/useShare/useShare.js +0 -3
  909. package/dist/cjs/hooks/useShare/useShare.js.map +0 -1
  910. package/dist/cjs/hooks/useStateHistory/useStateHistory.js +0 -3
  911. package/dist/cjs/hooks/useStateHistory/useStateHistory.js.map +0 -1
  912. package/dist/cjs/hooks/useStep/useStep.js +0 -3
  913. package/dist/cjs/hooks/useStep/useStep.js.map +0 -1
  914. package/dist/cjs/hooks/useSticky/useSticky.js +0 -3
  915. package/dist/cjs/hooks/useSticky/useSticky.js.map +0 -1
  916. package/dist/cjs/hooks/useStopwatch/useStopwatch.js +0 -3
  917. package/dist/cjs/hooks/useStopwatch/useStopwatch.js.map +0 -1
  918. package/dist/cjs/hooks/useStorage/useStorage.js +0 -3
  919. package/dist/cjs/hooks/useStorage/useStorage.js.map +0 -1
  920. package/dist/cjs/hooks/useTextDirection/useTextDirection.js +0 -3
  921. package/dist/cjs/hooks/useTextDirection/useTextDirection.js.map +0 -1
  922. package/dist/cjs/hooks/useTextSelection/useTextSelection.js +0 -3
  923. package/dist/cjs/hooks/useTextSelection/useTextSelection.js.map +0 -1
  924. package/dist/cjs/hooks/useThrottleCallback/useThrottleCallback.js +0 -3
  925. package/dist/cjs/hooks/useThrottleCallback/useThrottleCallback.js.map +0 -1
  926. package/dist/cjs/hooks/useThrottleValue/useThrottleValue.js +0 -3
  927. package/dist/cjs/hooks/useThrottleValue/useThrottleValue.js.map +0 -1
  928. package/dist/cjs/hooks/useTime/useTime.js +0 -3
  929. package/dist/cjs/hooks/useTime/useTime.js.map +0 -1
  930. package/dist/cjs/hooks/useTimeout/useTimeout.js +0 -3
  931. package/dist/cjs/hooks/useTimeout/useTimeout.js.map +0 -1
  932. package/dist/cjs/hooks/useTimer/useTimer.js +0 -3
  933. package/dist/cjs/hooks/useTimer/useTimer.js.map +0 -1
  934. package/dist/cjs/hooks/useToggle/useToggle.js +0 -3
  935. package/dist/cjs/hooks/useToggle/useToggle.js.map +0 -1
  936. package/dist/cjs/hooks/useUnmount/useUnmount.js +0 -3
  937. package/dist/cjs/hooks/useUnmount/useUnmount.js.map +0 -1
  938. package/dist/cjs/hooks/useVibrate/useVibrate.js +0 -3
  939. package/dist/cjs/hooks/useVibrate/useVibrate.js.map +0 -1
  940. package/dist/cjs/hooks/useWebSocket/useWebSocket.js +0 -3
  941. package/dist/cjs/hooks/useWebSocket/useWebSocket.js.map +0 -1
  942. package/dist/cjs/hooks/useWindowEvent/useWindowEvent.js +0 -3
  943. package/dist/cjs/hooks/useWindowEvent/useWindowEvent.js.map +0 -1
  944. package/dist/cjs/hooks/useWindowFocus/useWindowFocus.js +0 -3
  945. package/dist/cjs/hooks/useWindowFocus/useWindowFocus.js.map +0 -1
  946. package/dist/cjs/hooks/useWindowScroll/useWindowScroll.js +0 -3
  947. package/dist/cjs/hooks/useWindowScroll/useWindowScroll.js.map +0 -1
  948. package/dist/cjs/hooks/useWindowSize/useWindowSize.js +0 -3
  949. package/dist/cjs/hooks/useWindowSize/useWindowSize.js.map +0 -1
  950. package/dist/cjs/hooks/useWizard/useWizard.js +0 -3
  951. package/dist/cjs/hooks/useWizard/useWizard.js.map +0 -1
  952. package/dist/cjs/index.js +0 -3
  953. package/dist/cjs/index.js.map +0 -1
  954. package/dist/cjs/utils/helpers/copy.js +0 -3
  955. package/dist/cjs/utils/helpers/copy.js.map +0 -1
  956. package/dist/cjs/utils/helpers/debounce.js +0 -3
  957. package/dist/cjs/utils/helpers/debounce.js.map +0 -1
  958. package/dist/cjs/utils/helpers/getDate.js +0 -3
  959. package/dist/cjs/utils/helpers/getDate.js.map +0 -1
  960. package/dist/cjs/utils/helpers/getElement.js +0 -3
  961. package/dist/cjs/utils/helpers/getElement.js.map +0 -1
  962. package/dist/cjs/utils/helpers/getRetry.js +0 -3
  963. package/dist/cjs/utils/helpers/getRetry.js.map +0 -1
  964. package/dist/cjs/utils/helpers/index.js +0 -3
  965. package/dist/cjs/utils/helpers/index.js.map +0 -1
  966. package/dist/cjs/utils/helpers/isTarget.js +0 -3
  967. package/dist/cjs/utils/helpers/isTarget.js.map +0 -1
  968. package/dist/cjs/utils/helpers/throttle.js +0 -3
  969. package/dist/cjs/utils/helpers/throttle.js.map +0 -1
  970. package/dist/esm/_rollupPluginBabelHelpers-BKlpIEEg.js +0 -3
  971. package/dist/esm/_rollupPluginBabelHelpers-BKlpIEEg.js.map +0 -1
  972. package/dist/esm/hooks/index.js +0 -3
  973. package/dist/esm/hooks/index.js.map +0 -1
  974. package/dist/esm/hooks/useActiveElement/useActiveElement.js +0 -3
  975. package/dist/esm/hooks/useActiveElement/useActiveElement.js.map +0 -1
  976. package/dist/esm/hooks/useAsync/useAsync.js +0 -3
  977. package/dist/esm/hooks/useAsync/useAsync.js.map +0 -1
  978. package/dist/esm/hooks/useBattery/useBattery.js +0 -3
  979. package/dist/esm/hooks/useBattery/useBattery.js.map +0 -1
  980. package/dist/esm/hooks/useBluetooth/useBluetooth.js +0 -3
  981. package/dist/esm/hooks/useBluetooth/useBluetooth.js.map +0 -1
  982. package/dist/esm/hooks/useBoolean/useBoolean.js +0 -3
  983. package/dist/esm/hooks/useBoolean/useBoolean.js.map +0 -1
  984. package/dist/esm/hooks/useBreakpoints/useBreakpoints.js +0 -3
  985. package/dist/esm/hooks/useBreakpoints/useBreakpoints.js.map +0 -1
  986. package/dist/esm/hooks/useBrowserLanguage/useBrowserLanguage.js +0 -3
  987. package/dist/esm/hooks/useBrowserLanguage/useBrowserLanguage.js.map +0 -1
  988. package/dist/esm/hooks/useClickOutside/useClickOutside.js +0 -3
  989. package/dist/esm/hooks/useClickOutside/useClickOutside.js.map +0 -1
  990. package/dist/esm/hooks/useClipboard/useClipboard.js +0 -3
  991. package/dist/esm/hooks/useClipboard/useClipboard.js.map +0 -1
  992. package/dist/esm/hooks/useConst/useConst.js +0 -3
  993. package/dist/esm/hooks/useConst/useConst.js.map +0 -1
  994. package/dist/esm/hooks/useCookie/useCookie.js +0 -3
  995. package/dist/esm/hooks/useCookie/useCookie.js.map +0 -1
  996. package/dist/esm/hooks/useCookies/useCookies.js +0 -3
  997. package/dist/esm/hooks/useCookies/useCookies.js.map +0 -1
  998. package/dist/esm/hooks/useCopy/useCopy.js +0 -3
  999. package/dist/esm/hooks/useCopy/useCopy.js.map +0 -1
  1000. package/dist/esm/hooks/useCounter/useCounter.js +0 -3
  1001. package/dist/esm/hooks/useCounter/useCounter.js.map +0 -1
  1002. package/dist/esm/hooks/useCssVar/useCssVar.js +0 -3
  1003. package/dist/esm/hooks/useCssVar/useCssVar.js.map +0 -1
  1004. package/dist/esm/hooks/useDebounceCallback/useDebounceCallback.js +0 -3
  1005. package/dist/esm/hooks/useDebounceCallback/useDebounceCallback.js.map +0 -1
  1006. package/dist/esm/hooks/useDebounceValue/useDebounceValue.js +0 -3
  1007. package/dist/esm/hooks/useDebounceValue/useDebounceValue.js.map +0 -1
  1008. package/dist/esm/hooks/useDefault/useDefault.js +0 -3
  1009. package/dist/esm/hooks/useDefault/useDefault.js.map +0 -1
  1010. package/dist/esm/hooks/useDeviceMotion/useDeviceMotion.js +0 -3
  1011. package/dist/esm/hooks/useDeviceMotion/useDeviceMotion.js.map +0 -1
  1012. package/dist/esm/hooks/useDeviceOrientation/useDeviceOrientation.js +0 -3
  1013. package/dist/esm/hooks/useDeviceOrientation/useDeviceOrientation.js.map +0 -1
  1014. package/dist/esm/hooks/useDevicePixelRatio/useDevicePixelRatio.js +0 -3
  1015. package/dist/esm/hooks/useDevicePixelRatio/useDevicePixelRatio.js.map +0 -1
  1016. package/dist/esm/hooks/useDidUpdate/useDidUpdate.js +0 -3
  1017. package/dist/esm/hooks/useDidUpdate/useDidUpdate.js.map +0 -1
  1018. package/dist/esm/hooks/useDisclosure/useDisclosure.js +0 -3
  1019. package/dist/esm/hooks/useDisclosure/useDisclosure.js.map +0 -1
  1020. package/dist/esm/hooks/useDisplayMedia/useDisplayMedia.js +0 -3
  1021. package/dist/esm/hooks/useDisplayMedia/useDisplayMedia.js.map +0 -1
  1022. package/dist/esm/hooks/useDocumentEvent/useDocumentEvent.js +0 -3
  1023. package/dist/esm/hooks/useDocumentEvent/useDocumentEvent.js.map +0 -1
  1024. package/dist/esm/hooks/useDocumentTitle/useDocumentTitle.js +0 -3
  1025. package/dist/esm/hooks/useDocumentTitle/useDocumentTitle.js.map +0 -1
  1026. package/dist/esm/hooks/useDocumentVisibility/useDocumentVisibility.js +0 -3
  1027. package/dist/esm/hooks/useDocumentVisibility/useDocumentVisibility.js.map +0 -1
  1028. package/dist/esm/hooks/useElementSize/useElementSize.js +0 -3
  1029. package/dist/esm/hooks/useElementSize/useElementSize.js.map +0 -1
  1030. package/dist/esm/hooks/useEvent/useEvent.js +0 -3
  1031. package/dist/esm/hooks/useEvent/useEvent.js.map +0 -1
  1032. package/dist/esm/hooks/useEventListener/useEventListener.js +0 -3
  1033. package/dist/esm/hooks/useEventListener/useEventListener.js.map +0 -1
  1034. package/dist/esm/hooks/useEyeDropper/useEyeDropper.js +0 -3
  1035. package/dist/esm/hooks/useEyeDropper/useEyeDropper.js.map +0 -1
  1036. package/dist/esm/hooks/useFavicon/useFavicon.js +0 -3
  1037. package/dist/esm/hooks/useFavicon/useFavicon.js.map +0 -1
  1038. package/dist/esm/hooks/useField/useField.js +0 -3
  1039. package/dist/esm/hooks/useField/useField.js.map +0 -1
  1040. package/dist/esm/hooks/useFileDialog/useFileDialog.js +0 -3
  1041. package/dist/esm/hooks/useFileDialog/useFileDialog.js.map +0 -1
  1042. package/dist/esm/hooks/useFocus/useFocus.js +0 -3
  1043. package/dist/esm/hooks/useFocus/useFocus.js.map +0 -1
  1044. package/dist/esm/hooks/useFps/useFps.js +0 -3
  1045. package/dist/esm/hooks/useFps/useFps.js.map +0 -1
  1046. package/dist/esm/hooks/useFul/useFul.js +0 -3
  1047. package/dist/esm/hooks/useFul/useFul.js.map +0 -1
  1048. package/dist/esm/hooks/useFullscreen/useFullscreen.js +0 -3
  1049. package/dist/esm/hooks/useFullscreen/useFullscreen.js.map +0 -1
  1050. package/dist/esm/hooks/useGamepad/useGamepad.js +0 -3
  1051. package/dist/esm/hooks/useGamepad/useGamepad.js.map +0 -1
  1052. package/dist/esm/hooks/useGeolocation/useGeolocation.js +0 -3
  1053. package/dist/esm/hooks/useGeolocation/useGeolocation.js.map +0 -1
  1054. package/dist/esm/hooks/useHash/useHash.js +0 -3
  1055. package/dist/esm/hooks/useHash/useHash.js.map +0 -1
  1056. package/dist/esm/hooks/useHotkeys/useHotkeys.js +0 -3
  1057. package/dist/esm/hooks/useHotkeys/useHotkeys.js.map +0 -1
  1058. package/dist/esm/hooks/useHover/useHover.js +0 -3
  1059. package/dist/esm/hooks/useHover/useHover.js.map +0 -1
  1060. package/dist/esm/hooks/useIdle/useIdle.js +0 -3
  1061. package/dist/esm/hooks/useIdle/useIdle.js.map +0 -1
  1062. package/dist/esm/hooks/useImage/useImage.js +0 -3
  1063. package/dist/esm/hooks/useImage/useImage.js.map +0 -1
  1064. package/dist/esm/hooks/useInfiniteScroll/useInfiniteScroll.js +0 -3
  1065. package/dist/esm/hooks/useInfiniteScroll/useInfiniteScroll.js.map +0 -1
  1066. package/dist/esm/hooks/useIntersectionObserver/useIntersectionObserver.js +0 -3
  1067. package/dist/esm/hooks/useIntersectionObserver/useIntersectionObserver.js.map +0 -1
  1068. package/dist/esm/hooks/useInterval/useInterval.js +0 -3
  1069. package/dist/esm/hooks/useInterval/useInterval.js.map +0 -1
  1070. package/dist/esm/hooks/useIsFirstRender/useIsFirstRender.js +0 -3
  1071. package/dist/esm/hooks/useIsFirstRender/useIsFirstRender.js.map +0 -1
  1072. package/dist/esm/hooks/useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js +0 -3
  1073. package/dist/esm/hooks/useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js.map +0 -1
  1074. package/dist/esm/hooks/useKeyPress/useKeyPress.js +0 -3
  1075. package/dist/esm/hooks/useKeyPress/useKeyPress.js.map +0 -1
  1076. package/dist/esm/hooks/useKeyPressEvent/useKeyPressEvent.js +0 -3
  1077. package/dist/esm/hooks/useKeyPressEvent/useKeyPressEvent.js.map +0 -1
  1078. package/dist/esm/hooks/useKeyboard/useKeyboard.js +0 -3
  1079. package/dist/esm/hooks/useKeyboard/useKeyboard.js.map +0 -1
  1080. package/dist/esm/hooks/useKeysPressed/useKeysPressed.js +0 -3
  1081. package/dist/esm/hooks/useKeysPressed/useKeysPressed.js.map +0 -1
  1082. package/dist/esm/hooks/useLastChanged/useLastChanged.js +0 -3
  1083. package/dist/esm/hooks/useLastChanged/useLastChanged.js.map +0 -1
  1084. package/dist/esm/hooks/useLatest/useLatest.js +0 -3
  1085. package/dist/esm/hooks/useLatest/useLatest.js.map +0 -1
  1086. package/dist/esm/hooks/useLess/useLess.js +0 -3
  1087. package/dist/esm/hooks/useLess/useLess.js.map +0 -1
  1088. package/dist/esm/hooks/useList/useList.js +0 -3
  1089. package/dist/esm/hooks/useList/useList.js.map +0 -1
  1090. package/dist/esm/hooks/useLocalStorage/useLocalStorage.js +0 -3
  1091. package/dist/esm/hooks/useLocalStorage/useLocalStorage.js.map +0 -1
  1092. package/dist/esm/hooks/useLockCallback/useLockCallback.js +0 -3
  1093. package/dist/esm/hooks/useLockCallback/useLockCallback.js.map +0 -1
  1094. package/dist/esm/hooks/useLogger/useLogger.js +0 -3
  1095. package/dist/esm/hooks/useLogger/useLogger.js.map +0 -1
  1096. package/dist/esm/hooks/useLongPress/useLongPress.js +0 -3
  1097. package/dist/esm/hooks/useLongPress/useLongPress.js.map +0 -1
  1098. package/dist/esm/hooks/useMap/useMap.js +0 -3
  1099. package/dist/esm/hooks/useMap/useMap.js.map +0 -1
  1100. package/dist/esm/hooks/useMeasure/useMeasure.js +0 -3
  1101. package/dist/esm/hooks/useMeasure/useMeasure.js.map +0 -1
  1102. package/dist/esm/hooks/useMediaQuery/useMediaQuery.js +0 -3
  1103. package/dist/esm/hooks/useMediaQuery/useMediaQuery.js.map +0 -1
  1104. package/dist/esm/hooks/useMemory/useMemory.js +0 -3
  1105. package/dist/esm/hooks/useMemory/useMemory.js.map +0 -1
  1106. package/dist/esm/hooks/useMount/useMount.js +0 -3
  1107. package/dist/esm/hooks/useMount/useMount.js.map +0 -1
  1108. package/dist/esm/hooks/useMouse/useMouse.js +0 -3
  1109. package/dist/esm/hooks/useMouse/useMouse.js.map +0 -1
  1110. package/dist/esm/hooks/useMutation/useMutation.js +0 -3
  1111. package/dist/esm/hooks/useMutation/useMutation.js.map +0 -1
  1112. package/dist/esm/hooks/useMutationObserver/useMutationObserver.js +0 -3
  1113. package/dist/esm/hooks/useMutationObserver/useMutationObserver.js.map +0 -1
  1114. package/dist/esm/hooks/useNetwork/useNetwork.js +0 -3
  1115. package/dist/esm/hooks/useNetwork/useNetwork.js.map +0 -1
  1116. package/dist/esm/hooks/useOffsetPagination/useOffsetPagination.js +0 -3
  1117. package/dist/esm/hooks/useOffsetPagination/useOffsetPagination.js.map +0 -1
  1118. package/dist/esm/hooks/useOnce/useOnce.js +0 -3
  1119. package/dist/esm/hooks/useOnce/useOnce.js.map +0 -1
  1120. package/dist/esm/hooks/useOnline/useOnline.js +0 -3
  1121. package/dist/esm/hooks/useOnline/useOnline.js.map +0 -1
  1122. package/dist/esm/hooks/useOperatingSystem/useOperatingSystem.js +0 -3
  1123. package/dist/esm/hooks/useOperatingSystem/useOperatingSystem.js.map +0 -1
  1124. package/dist/esm/hooks/useOptimistic/useOptimistic.js +0 -3
  1125. package/dist/esm/hooks/useOptimistic/useOptimistic.js.map +0 -1
  1126. package/dist/esm/hooks/useOrientation/useOrientation.js +0 -3
  1127. package/dist/esm/hooks/useOrientation/useOrientation.js.map +0 -1
  1128. package/dist/esm/hooks/useOtpCredential/useOtpCredential.js +0 -3
  1129. package/dist/esm/hooks/useOtpCredential/useOtpCredential.js.map +0 -1
  1130. package/dist/esm/hooks/usePageLeave/usePageLeave.js +0 -3
  1131. package/dist/esm/hooks/usePageLeave/usePageLeave.js.map +0 -1
  1132. package/dist/esm/hooks/usePaint/usePaint.js +0 -3
  1133. package/dist/esm/hooks/usePaint/usePaint.js.map +0 -1
  1134. package/dist/esm/hooks/useParallax/useParallax.js +0 -3
  1135. package/dist/esm/hooks/useParallax/useParallax.js.map +0 -1
  1136. package/dist/esm/hooks/usePerformanceObserver/usePerformanceObserver.js +0 -3
  1137. package/dist/esm/hooks/usePerformanceObserver/usePerformanceObserver.js.map +0 -1
  1138. package/dist/esm/hooks/usePermission/usePermission.js +0 -3
  1139. package/dist/esm/hooks/usePermission/usePermission.js.map +0 -1
  1140. package/dist/esm/hooks/usePointerLock/usePointerLock.js +0 -3
  1141. package/dist/esm/hooks/usePointerLock/usePointerLock.js.map +0 -1
  1142. package/dist/esm/hooks/usePostMessage/usePostMessage.js +0 -3
  1143. package/dist/esm/hooks/usePostMessage/usePostMessage.js.map +0 -1
  1144. package/dist/esm/hooks/usePreferredColorScheme/usePreferredColorScheme.js +0 -3
  1145. package/dist/esm/hooks/usePreferredColorScheme/usePreferredColorScheme.js.map +0 -1
  1146. package/dist/esm/hooks/usePreferredContrast/usePreferredContrast.js +0 -3
  1147. package/dist/esm/hooks/usePreferredContrast/usePreferredContrast.js.map +0 -1
  1148. package/dist/esm/hooks/usePreferredDark/usePreferredDark.js +0 -3
  1149. package/dist/esm/hooks/usePreferredDark/usePreferredDark.js.map +0 -1
  1150. package/dist/esm/hooks/usePreferredLanguages/usePreferredLanguages.js +0 -3
  1151. package/dist/esm/hooks/usePreferredLanguages/usePreferredLanguages.js.map +0 -1
  1152. package/dist/esm/hooks/usePreferredReducedMotion/usePreferredReducedMotion.js +0 -3
  1153. package/dist/esm/hooks/usePreferredReducedMotion/usePreferredReducedMotion.js.map +0 -1
  1154. package/dist/esm/hooks/usePrevious/usePrevious.js +0 -3
  1155. package/dist/esm/hooks/usePrevious/usePrevious.js.map +0 -1
  1156. package/dist/esm/hooks/useQuery/useQuery.js +0 -3
  1157. package/dist/esm/hooks/useQuery/useQuery.js.map +0 -1
  1158. package/dist/esm/hooks/useQueue/useQueue.js +0 -3
  1159. package/dist/esm/hooks/useQueue/useQueue.js.map +0 -1
  1160. package/dist/esm/hooks/useRaf/useRaf.js +0 -3
  1161. package/dist/esm/hooks/useRaf/useRaf.js.map +0 -1
  1162. package/dist/esm/hooks/useRafValue/useRafValue.js +0 -3
  1163. package/dist/esm/hooks/useRafValue/useRafValue.js.map +0 -1
  1164. package/dist/esm/hooks/useRefState/useRefState.js +0 -3
  1165. package/dist/esm/hooks/useRefState/useRefState.js.map +0 -1
  1166. package/dist/esm/hooks/useRenderCount/useRenderCount.js +0 -3
  1167. package/dist/esm/hooks/useRenderCount/useRenderCount.js.map +0 -1
  1168. package/dist/esm/hooks/useRenderInfo/useRenderInfo.js +0 -3
  1169. package/dist/esm/hooks/useRenderInfo/useRenderInfo.js.map +0 -1
  1170. package/dist/esm/hooks/useRerender/useRerender.js +0 -3
  1171. package/dist/esm/hooks/useRerender/useRerender.js.map +0 -1
  1172. package/dist/esm/hooks/useResizeObserver/useResizeObserver.js +0 -3
  1173. package/dist/esm/hooks/useResizeObserver/useResizeObserver.js.map +0 -1
  1174. package/dist/esm/hooks/useScreenOrientation/useScreenOrientation.js +0 -3
  1175. package/dist/esm/hooks/useScreenOrientation/useScreenOrientation.js.map +0 -1
  1176. package/dist/esm/hooks/useScript/useScript.js +0 -3
  1177. package/dist/esm/hooks/useScript/useScript.js.map +0 -1
  1178. package/dist/esm/hooks/useScroll/useScroll.js +0 -3
  1179. package/dist/esm/hooks/useScroll/useScroll.js.map +0 -1
  1180. package/dist/esm/hooks/useScrollIntoView/useScrollIntoView.js +0 -3
  1181. package/dist/esm/hooks/useScrollIntoView/useScrollIntoView.js.map +0 -1
  1182. package/dist/esm/hooks/useScrollTo/useScrollTo.js +0 -3
  1183. package/dist/esm/hooks/useScrollTo/useScrollTo.js.map +0 -1
  1184. package/dist/esm/hooks/useSessionStorage/useSessionStorage.js +0 -3
  1185. package/dist/esm/hooks/useSessionStorage/useSessionStorage.js.map +0 -1
  1186. package/dist/esm/hooks/useSet/useSet.js +0 -3
  1187. package/dist/esm/hooks/useSet/useSet.js.map +0 -1
  1188. package/dist/esm/hooks/useShare/useShare.js +0 -3
  1189. package/dist/esm/hooks/useShare/useShare.js.map +0 -1
  1190. package/dist/esm/hooks/useStateHistory/useStateHistory.js +0 -3
  1191. package/dist/esm/hooks/useStateHistory/useStateHistory.js.map +0 -1
  1192. package/dist/esm/hooks/useStep/useStep.js +0 -3
  1193. package/dist/esm/hooks/useStep/useStep.js.map +0 -1
  1194. package/dist/esm/hooks/useSticky/useSticky.js +0 -3
  1195. package/dist/esm/hooks/useSticky/useSticky.js.map +0 -1
  1196. package/dist/esm/hooks/useStopwatch/useStopwatch.js +0 -3
  1197. package/dist/esm/hooks/useStopwatch/useStopwatch.js.map +0 -1
  1198. package/dist/esm/hooks/useStorage/useStorage.js +0 -3
  1199. package/dist/esm/hooks/useStorage/useStorage.js.map +0 -1
  1200. package/dist/esm/hooks/useTextDirection/useTextDirection.js +0 -3
  1201. package/dist/esm/hooks/useTextDirection/useTextDirection.js.map +0 -1
  1202. package/dist/esm/hooks/useTextSelection/useTextSelection.js +0 -3
  1203. package/dist/esm/hooks/useTextSelection/useTextSelection.js.map +0 -1
  1204. package/dist/esm/hooks/useThrottleCallback/useThrottleCallback.js +0 -3
  1205. package/dist/esm/hooks/useThrottleCallback/useThrottleCallback.js.map +0 -1
  1206. package/dist/esm/hooks/useThrottleValue/useThrottleValue.js +0 -3
  1207. package/dist/esm/hooks/useThrottleValue/useThrottleValue.js.map +0 -1
  1208. package/dist/esm/hooks/useTime/useTime.js +0 -3
  1209. package/dist/esm/hooks/useTime/useTime.js.map +0 -1
  1210. package/dist/esm/hooks/useTimeout/useTimeout.js +0 -3
  1211. package/dist/esm/hooks/useTimeout/useTimeout.js.map +0 -1
  1212. package/dist/esm/hooks/useTimer/useTimer.js +0 -3
  1213. package/dist/esm/hooks/useTimer/useTimer.js.map +0 -1
  1214. package/dist/esm/hooks/useToggle/useToggle.js +0 -3
  1215. package/dist/esm/hooks/useToggle/useToggle.js.map +0 -1
  1216. package/dist/esm/hooks/useUnmount/useUnmount.js +0 -3
  1217. package/dist/esm/hooks/useUnmount/useUnmount.js.map +0 -1
  1218. package/dist/esm/hooks/useVibrate/useVibrate.js +0 -3
  1219. package/dist/esm/hooks/useVibrate/useVibrate.js.map +0 -1
  1220. package/dist/esm/hooks/useWebSocket/useWebSocket.js +0 -3
  1221. package/dist/esm/hooks/useWebSocket/useWebSocket.js.map +0 -1
  1222. package/dist/esm/hooks/useWindowEvent/useWindowEvent.js +0 -3
  1223. package/dist/esm/hooks/useWindowEvent/useWindowEvent.js.map +0 -1
  1224. package/dist/esm/hooks/useWindowFocus/useWindowFocus.js +0 -3
  1225. package/dist/esm/hooks/useWindowFocus/useWindowFocus.js.map +0 -1
  1226. package/dist/esm/hooks/useWindowScroll/useWindowScroll.js +0 -3
  1227. package/dist/esm/hooks/useWindowScroll/useWindowScroll.js.map +0 -1
  1228. package/dist/esm/hooks/useWindowSize/useWindowSize.js +0 -3
  1229. package/dist/esm/hooks/useWindowSize/useWindowSize.js.map +0 -1
  1230. package/dist/esm/hooks/useWizard/useWizard.js +0 -3
  1231. package/dist/esm/hooks/useWizard/useWizard.js.map +0 -1
  1232. package/dist/esm/index.js +0 -3
  1233. package/dist/esm/index.js.map +0 -1
  1234. package/dist/esm/utils/helpers/copy.js +0 -3
  1235. package/dist/esm/utils/helpers/copy.js.map +0 -1
  1236. package/dist/esm/utils/helpers/debounce.js +0 -3
  1237. package/dist/esm/utils/helpers/debounce.js.map +0 -1
  1238. package/dist/esm/utils/helpers/getDate.js +0 -3
  1239. package/dist/esm/utils/helpers/getDate.js.map +0 -1
  1240. package/dist/esm/utils/helpers/getElement.js +0 -3
  1241. package/dist/esm/utils/helpers/getElement.js.map +0 -1
  1242. package/dist/esm/utils/helpers/getRetry.js +0 -3
  1243. package/dist/esm/utils/helpers/getRetry.js.map +0 -1
  1244. package/dist/esm/utils/helpers/index.js +0 -3
  1245. package/dist/esm/utils/helpers/index.js.map +0 -1
  1246. package/dist/esm/utils/helpers/isTarget.js +0 -3
  1247. package/dist/esm/utils/helpers/isTarget.js.map +0 -1
  1248. package/dist/esm/utils/helpers/throttle.js +0 -3
  1249. package/dist/esm/utils/helpers/throttle.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useField.cjs","sources":["../../../../src/hooks/useField/useField.ts"],"sourcesContent":["import { useRef, useState } from 'react';\n\nimport { useRerender } from '../useRerender/useRerender';\n\n/** The use field params type */\nexport interface UseFieldParams<Value> {\n /** The auto focus */\n autoFocus?: boolean;\n /** The initial touched */\n initialTouched?: boolean;\n /** The initial value */\n initialValue?: Value;\n /** The validate on blur */\n validateOnBlur?: boolean;\n /** The validate on mount */\n validateOnChange?: boolean;\n /** The validate on mount */\n validateOnMount?: boolean;\n}\n\n/** The use field register params type */\nexport interface UseFieldRegisterParams {\n /** The required validation */\n required?: string;\n /** The custom validation */\n validate?: (value: string) => Promise<string | true>;\n /** The min value validation */\n max?: {\n value: number;\n message: string;\n };\n /** The max length validation */\n maxLength?: {\n value: number;\n message: string;\n };\n /** The max value validation */\n min?: {\n value: number;\n message: string;\n };\n /** The min length validation */\n minLength?: {\n value: number;\n message: string;\n };\n /** The pattern validation */\n pattern?: {\n value: RegExp;\n message: string;\n };\n}\n\n/** The use field return type */\nexport interface UseFieldReturn<Value> {\n /** The dirty state */\n dirty: boolean;\n /** The error state */\n error?: string;\n /** The set error function */\n touched: boolean;\n /** The set error function */\n clearError: () => void;\n /** The focus function */\n focus: () => void;\n /** The get value function */\n getValue: () => Value;\n /** The register function */\n register: (params?: UseFieldRegisterParams) => {\n onBlur: () => void;\n onChange: () => void;\n ref: (\n node: HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement | null | undefined\n ) => void;\n };\n /** The reset function */\n reset: () => void;\n /** The set error function */\n setError: (error: string) => void;\n /** The set value function */\n setValue: (value: Value) => void;\n /** The watch function */\n watch: () => Value;\n}\n\n/**\n * @name useField\n * @description - Hook to manage a form field\n * @category Utilities\n *\n * @template Value The input value\n * @template Type The input value type\n * @param {Value} [params.initialValue] Initial value\n * @param {boolean} [params.initialTouched=false] Initial touched state\n * @param {boolean} [params.autoFocus=false] Auto focus\n * @param {boolean} [params.validateOnChange=false] Validate on change\n * @param {boolean} [params.validateOnBlur=false] Validate on blur\n * @param {boolean} [params.validateOnMount=false] Validate on mount\n * @returns {UseFieldReturn<Value>} An object containing input information\n *\n * @example\n * const { register, getValue, setValue, reset, dirty, error, setError, clearError, touched, focus, watch } = useField();\n */\nexport const useField = <\n Value extends boolean | number | string = string,\n Type = Value extends string ? string : Value extends boolean ? boolean : number\n>(\n params?: UseFieldParams<Value>\n): UseFieldReturn<Type> => {\n const initialValue = (params?.initialValue ?? '') as Value;\n\n const inputRef = useRef<HTMLInputElement | null>(null);\n const watchingRef = useRef(false);\n const rerender = useRerender();\n\n const [dirty, setDirty] = useState(false);\n const [touched, setTouched] = useState(params?.initialTouched ?? false);\n const [error, setError] = useState<string | undefined>(undefined);\n\n const getValue = () => {\n if (inputRef.current?.type === 'radio' || inputRef.current?.type === 'checkbox')\n return inputRef.current.checked as Type;\n return (inputRef.current?.value ?? initialValue) as Type;\n };\n\n const setValue = (value: Type) => {\n if (inputRef.current?.type === 'radio' || inputRef.current?.type === 'checkbox') {\n inputRef.current.checked = value as boolean;\n if (watchingRef.current) return rerender();\n return;\n }\n\n inputRef.current!.value = value as string;\n if (watchingRef.current) return rerender();\n };\n\n const reset = () => {\n setValue(initialValue as unknown as Type);\n setDirty(false);\n setTouched(false);\n setError(undefined);\n };\n\n const focus = () => {\n inputRef.current!.focus();\n };\n\n const validate = (params: UseFieldRegisterParams) => {\n if (params.required && !inputRef.current!.value) {\n return setError(params.required);\n }\n\n if (params.minLength && inputRef.current!.value.length < params.minLength.value) {\n return setError(params.minLength.message);\n }\n\n if (params.maxLength && inputRef.current!.value.length > params.maxLength.value) {\n return setError(params.maxLength.message);\n }\n\n if (params.min && Number(inputRef.current!.value) < params.min.value) {\n return setError(params.min.message);\n }\n\n if (params.max && Number(inputRef.current!.value) > params.max.value) {\n return setError(params.max.message);\n }\n\n if (params.pattern && !params.pattern.value.test(inputRef.current!.value)) {\n return setError(params.pattern.message);\n }\n\n if (params.validate) {\n const error = params.validate(inputRef.current!.value);\n if (typeof error === 'string') return setError(error);\n }\n\n setError(undefined);\n };\n\n const register = (registerParams?: UseFieldRegisterParams) => ({\n ref: (node: HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement | null | undefined) => {\n if (!inputRef.current && node) {\n if (params?.autoFocus) node.focus();\n inputRef.current = node as HTMLInputElement;\n if (inputRef.current.type === 'radio') {\n inputRef.current.defaultChecked = params?.initialValue === node.value;\n return;\n }\n if (inputRef.current.type === 'checkbox') {\n inputRef.current.defaultChecked = !!params?.initialValue;\n return;\n }\n inputRef.current.defaultValue = String(initialValue);\n\n if (registerParams && params?.validateOnMount) validate(registerParams);\n }\n },\n onChange: async () => {\n if (watchingRef.current) return rerender();\n if (inputRef.current!.value !== initialValue) setDirty(true);\n if (dirty && inputRef.current!.value === initialValue) setDirty(false);\n if (registerParams && params?.validateOnChange) await validate(registerParams);\n if (registerParams && params?.validateOnBlur) setError(undefined);\n },\n onBlur: async () => {\n if (registerParams && params?.validateOnBlur) await validate(registerParams);\n setTouched(true);\n }\n });\n\n const watch = () => {\n watchingRef.current = true;\n return getValue();\n };\n\n const clearError = () => setError(undefined);\n\n return {\n register,\n dirty,\n touched,\n error,\n setError,\n clearError,\n getValue,\n setValue,\n reset,\n watch,\n focus\n };\n};\n"],"names":["useField","params","initialValue","inputRef","useRef","watchingRef","rerender","useRerender","dirty","setDirty","useState","touched","setTouched","error","setError","getValue","_a","_b","_c","setValue","value","reset","focus","validate","registerParams","node"],"mappings":"qJAuGaA,EAIXC,GACyB,CACnB,MAAAC,GAAgBD,GAAA,YAAAA,EAAQ,eAAgB,GAExCE,EAAWC,SAAgC,IAAI,EAC/CC,EAAcD,SAAO,EAAK,EAC1BE,EAAWC,EAAAA,YAAY,EAEvB,CAACC,EAAOC,CAAQ,EAAIC,EAAAA,SAAS,EAAK,EAClC,CAACC,EAASC,CAAU,EAAIF,EAAS,UAAAT,GAAA,YAAAA,EAAQ,iBAAkB,EAAK,EAChE,CAACY,EAAOC,CAAQ,EAAIJ,EAAAA,SAA6B,MAAS,EAE1DK,EAAW,IAAM,WACrB,QAAIC,EAAAb,EAAS,UAAT,YAAAa,EAAkB,QAAS,WAAWC,EAAAd,EAAS,UAAT,YAAAc,EAAkB,QAAS,WAC5Dd,EAAS,QAAQ,UAClBe,EAAAf,EAAS,UAAT,YAAAe,EAAkB,QAAShB,CACrC,EAEMiB,EAAYC,GAAgB,SAChC,KAAIJ,EAAAb,EAAS,UAAT,YAAAa,EAAkB,QAAS,WAAWC,EAAAd,EAAS,UAAT,YAAAc,EAAkB,QAAS,WAE/D,OADJd,EAAS,QAAQ,QAAUiB,EACvBf,EAAY,QAAgBC,EAAS,EACzC,OAIE,GADJH,EAAS,QAAS,MAAQiB,EACtBf,EAAY,QAAS,OAAOC,EAAS,CAC3C,EAEMe,EAAQ,IAAM,CAClBF,EAASjB,CAA+B,EACxCO,EAAS,EAAK,EACdG,EAAW,EAAK,EAChBE,EAAS,MAAS,CACpB,EAEMQ,EAAQ,IAAM,CAClBnB,EAAS,QAAS,MAAM,CAC1B,EAEMoB,EAAYtB,GAAmC,CACnD,GAAIA,EAAO,UAAY,CAACE,EAAS,QAAS,MACjC,OAAAW,EAASb,EAAO,QAAQ,EAG7BA,GAAAA,EAAO,WAAaE,EAAS,QAAS,MAAM,OAASF,EAAO,UAAU,MACjE,OAAAa,EAASb,EAAO,UAAU,OAAO,EAGtCA,GAAAA,EAAO,WAAaE,EAAS,QAAS,MAAM,OAASF,EAAO,UAAU,MACjE,OAAAa,EAASb,EAAO,UAAU,OAAO,EAGtCA,GAAAA,EAAO,KAAO,OAAOE,EAAS,QAAS,KAAK,EAAIF,EAAO,IAAI,MACtD,OAAAa,EAASb,EAAO,IAAI,OAAO,EAGhCA,GAAAA,EAAO,KAAO,OAAOE,EAAS,QAAS,KAAK,EAAIF,EAAO,IAAI,MACtD,OAAAa,EAASb,EAAO,IAAI,OAAO,EAGhCA,GAAAA,EAAO,SAAW,CAACA,EAAO,QAAQ,MAAM,KAAKE,EAAS,QAAS,KAAK,EAC/D,OAAAW,EAASb,EAAO,QAAQ,OAAO,EAGxC,GAAIA,EAAO,SAAU,CACnB,MAAMY,EAAQZ,EAAO,SAASE,EAAS,QAAS,KAAK,EACrD,GAAI,OAAOU,GAAU,SAAU,OAAOC,EAASD,CAAK,CAAA,CAGtDC,EAAS,MAAS,CACpB,EAwCO,MAAA,CACL,SAvCgBU,IAA6C,CAC7D,IAAMC,GAAwF,CACxF,GAAA,CAACtB,EAAS,SAAWsB,EAAM,CAGzB,GAFAxB,GAAA,MAAAA,EAAQ,WAAWwB,EAAK,MAAM,EAClCtB,EAAS,QAAUsB,EACftB,EAAS,QAAQ,OAAS,QAAS,CACrCA,EAAS,QAAQ,gBAAiBF,GAAA,YAAAA,EAAQ,gBAAiBwB,EAAK,MAChE,MAAA,CAEE,GAAAtB,EAAS,QAAQ,OAAS,WAAY,CACxCA,EAAS,QAAQ,eAAiB,CAAC,EAACF,GAAA,MAAAA,EAAQ,cAC5C,MAAA,CAEOE,EAAA,QAAQ,aAAe,OAAOD,CAAY,EAE/CsB,IAAkBvB,GAAA,MAAAA,EAAQ,kBAAiBsB,EAASC,CAAc,CAAA,CAE1E,EACA,SAAU,SAAY,CAChB,GAAAnB,EAAY,QAAS,OAAOC,EAAS,EACrCH,EAAS,QAAS,QAAUD,KAAuB,EAAI,EACvDM,GAASL,EAAS,QAAS,QAAUD,KAAuB,EAAK,EACjEsB,IAAkBvB,GAAA,MAAAA,EAAQ,mBAAkB,MAAMsB,EAASC,CAAc,EACzEA,IAAkBvB,GAAA,MAAAA,EAAQ,iBAAgBa,EAAS,MAAS,CAClE,EACA,OAAQ,SAAY,CACdU,IAAkBvB,GAAA,MAAAA,EAAQ,iBAAgB,MAAMsB,EAASC,CAAc,EAC3EZ,EAAW,EAAI,CAAA,CACjB,GAYA,MAAAJ,EACA,QAAAG,EACA,MAAAE,EACA,SAAAC,EACA,WARiB,IAAMA,EAAS,MAAS,EASzC,SAAAC,EACA,SAAAI,EACA,MAAAE,EACA,MAjBY,KACZhB,EAAY,QAAU,GACfU,EAAS,GAgBhB,MAAAO,CACF,CACF"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const f=require("react"),n={multiple:!0,accept:"*",reset:!1},F=(...l)=>{const i=typeof l[0]=="function"?l[0]:void 0,e=i?l[0]:l[1],[S,g]=f.useState(null),c=f.useRef(null),r=f.useRef(i);r.current=i;const v=()=>{var t;g(null),(t=r.current)==null||t.call(r,null),c.current&&(c.current.value="")},D=t=>{if(!c.current)return;c.current.multiple=(t==null?void 0:t.multiple)??(e==null?void 0:e.multiple)??n.multiple,c.current.accept=(t==null?void 0:t.accept)??(e==null?void 0:e.accept)??n.accept;const u=(t==null?void 0:t.capture)??(e==null?void 0:e.capture);u&&(c.current.capture=u),((t==null?void 0:t.reset)??(e==null?void 0:e.reset)??n.reset)&&v(),c.current.click()};return f.useEffect(()=>{const t=()=>{const u=document.createElement("input");return u.type="file",u.onchange=E=>{var y;const{files:d}=E.target;g(d),(y=r.current)==null||y.call(r,d)},u};return c.current=t(),()=>{var u;(u=c.current)==null||u.remove()}},[e==null?void 0:e.multiple,e==null?void 0:e.accept,e==null?void 0:e.capture,e==null?void 0:e.reset]),{value:S,open:D,reset:v}};exports.useFileDialog=F;
2
+ //# sourceMappingURL=useFileDialog.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useFileDialog.cjs","sources":["../../../../src/hooks/useFileDialog/useFileDialog.ts"],"sourcesContent":["import type { ComponentProps } from 'react';\n\nimport { useEffect, useRef, useState } from 'react';\n\n/* The use file dialog options */\nexport interface UseFileDialogOptions extends Pick<ComponentProps<'input'>, 'accept' | 'multiple'> {\n /** The capture value */\n capture?: string;\n /** The reset value */\n reset?: boolean;\n}\n\nconst DEFAULT_OPTIONS = {\n multiple: true,\n accept: '*',\n reset: false\n} satisfies UseFileDialogOptions;\n\n/* The use file dialog return type */\nexport interface UseFileDialogReturn {\n /** The selected files */\n value: FileList | null;\n /** The open function */\n open: (openParams?: UseFileDialogOptions) => void;\n /** The reset function */\n reset: () => void;\n}\n\nexport interface UseFileDialog {\n (\n callback?: (value: FileList | null) => void,\n options?: UseFileDialogOptions\n ): UseFileDialogReturn;\n\n (options?: UseFileDialogOptions, callback?: never): UseFileDialogReturn;\n}\n\n/**\n * @name useFileDialog\n * @description - Hook to handle file input\n * @category Browser\n *\n * @overload\n * @param {(value: FileList | null) => void} callback The callback to execute when a file is selected\n * @param {boolean} [options.multiple=true] Whether multiple files can be selected\n * @param {string} [options.accept='*'] The accepted file types\n * @param {boolean} [options.reset=false] Whether the input should be reset when the callback is called\n * @param {string} [options.capture] The capture value\n * @returns {UseFileDialogReturn} An object containing the selected files\n *\n * @example\n * const { values, open, reset } = useFileDialog((value) => console.log(value));\n *\n * @overload\n * @param {boolean} [options.multiple=true] Whether multiple files can be selected\n * @param {string} [options.accept='*'] The accepted file types\n * @param {boolean} [options.reset=false] Whether the input should be reset when the callback is called\n * @param {string} [options.capture] The capture value\n * @returns {UseFileDialogReturn} An object containing the selected files\n *\n * @example\n * const { values, open, reset } = useFileDialog({ accept: 'image/*' });\n */\nexport const useFileDialog = ((...params: any[]) => {\n const callback = (typeof params[0] === 'function' ? params[0] : undefined) as\n | ((value: FileList | null) => void)\n | undefined;\n const options = (callback ? params[0] : params[1]) as UseFileDialogOptions | undefined;\n\n const [value, setValue] = useState<FileList | null>(null);\n const inputRef = useRef<HTMLInputElement | null>(null);\n const internalCallbackRef = useRef(callback);\n internalCallbackRef.current = callback;\n\n const reset = () => {\n setValue(null);\n internalCallbackRef.current?.(null);\n if (inputRef.current) inputRef.current.value = '';\n };\n\n const open = (openParams?: UseFileDialogOptions) => {\n if (!inputRef.current) return;\n\n inputRef.current.multiple =\n openParams?.multiple ?? options?.multiple ?? DEFAULT_OPTIONS.multiple;\n inputRef.current.accept = openParams?.accept ?? options?.accept ?? DEFAULT_OPTIONS.accept;\n\n const capture = openParams?.capture ?? options?.capture;\n if (capture) inputRef.current.capture = capture;\n\n if (openParams?.reset ?? options?.reset ?? DEFAULT_OPTIONS.reset) reset();\n\n inputRef.current.click();\n };\n\n useEffect(() => {\n const init = () => {\n const input = document.createElement('input');\n input.type = 'file';\n\n input.onchange = (event: Event) => {\n const { files } = event.target as HTMLInputElement;\n setValue(files);\n internalCallbackRef.current?.(files);\n };\n return input;\n };\n\n inputRef.current = init();\n return () => {\n inputRef.current?.remove();\n };\n }, [options?.multiple, options?.accept, options?.capture, options?.reset]);\n\n return { value, open, reset };\n}) as UseFileDialog;\n"],"names":["DEFAULT_OPTIONS","useFileDialog","params","callback","options","value","setValue","useState","inputRef","useRef","internalCallbackRef","reset","_a","open","openParams","capture","useEffect","init","input","event","files"],"mappings":"yGAYMA,EAAkB,CACtB,SAAU,GACV,OAAQ,IACR,MAAO,EACT,EA+CaC,EAAiB,IAAIC,IAAkB,CAC5C,MAAAC,EAAY,OAAOD,EAAO,CAAC,GAAM,WAAaA,EAAO,CAAC,EAAI,OAG1DE,EAAWD,EAAWD,EAAO,CAAC,EAAIA,EAAO,CAAC,EAE1C,CAACG,EAAOC,CAAQ,EAAIC,EAAAA,SAA0B,IAAI,EAClDC,EAAWC,SAAgC,IAAI,EAC/CC,EAAsBD,SAAON,CAAQ,EAC3CO,EAAoB,QAAUP,EAE9B,MAAMQ,EAAQ,IAAM,OAClBL,EAAS,IAAI,GACbM,EAAAF,EAAoB,UAApB,MAAAE,EAAA,KAAAF,EAA8B,MAC1BF,EAAS,UAAkBA,EAAA,QAAQ,MAAQ,GACjD,EAEMK,EAAQC,GAAsC,CAC9C,GAAA,CAACN,EAAS,QAAS,OAEvBA,EAAS,QAAQ,UACfM,GAAA,YAAAA,EAAY,YAAYV,GAAA,YAAAA,EAAS,WAAYJ,EAAgB,SAC/DQ,EAAS,QAAQ,QAASM,GAAA,YAAAA,EAAY,UAAUV,GAAA,YAAAA,EAAS,SAAUJ,EAAgB,OAE7E,MAAAe,GAAUD,GAAA,YAAAA,EAAY,WAAWV,GAAA,YAAAA,EAAS,SAC5CW,IAAkBP,EAAA,QAAQ,QAAUO,KAEpCD,GAAA,YAAAA,EAAY,SAASV,GAAA,YAAAA,EAAS,QAASJ,EAAgB,QAAaW,EAAA,EAExEH,EAAS,QAAQ,MAAM,CACzB,EAEAQ,OAAAA,EAAAA,UAAU,IAAM,CACd,MAAMC,EAAO,IAAM,CACX,MAAAC,EAAQ,SAAS,cAAc,OAAO,EAC5C,OAAAA,EAAM,KAAO,OAEPA,EAAA,SAAYC,GAAiB,OAC3B,KAAA,CAAE,MAAAC,GAAUD,EAAM,OACxBb,EAASc,CAAK,GACdR,EAAAF,EAAoB,UAApB,MAAAE,EAAA,KAAAF,EAA8BU,EAChC,EACOF,CACT,EAEA,OAAAV,EAAS,QAAUS,EAAK,EACjB,IAAM,QACXL,EAAAJ,EAAS,UAAT,MAAAI,EAAkB,QACpB,CAAA,EACC,CAACR,GAAA,YAAAA,EAAS,SAAUA,GAAA,YAAAA,EAAS,OAAQA,GAAA,YAAAA,EAAS,QAASA,GAAA,YAAAA,EAAS,KAAK,CAAC,EAElE,CAAE,MAAAC,EAAO,KAAAQ,EAAM,MAAAF,CAAM,CAC9B"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("react"),S=require("../useRefState/useRefState.cjs"),q=require("../../utils/helpers/isTarget.cjs"),L=require("../../utils/helpers/getElement.cjs"),T=(...s)=>{const n=q.isTarget(s[0])?s[0]:void 0,i=(n?s[1]:s[0])??{},d=i.initialValue??!1,[g,v]=c.useState(d),u=S.useRefState(),f=c.useRef(i);f.current=i;const l=c.useRef(null),a=()=>{var e;return(e=l.current)==null?void 0:e.focus()},b=()=>{var e;return(e=l.current)==null?void 0:e.blur()};return c.useEffect(()=>{if(!n&&!u.state)return;const e=n?L.getElement(n):u.current;if(!e)return;l.current=e;const E=o=>{var t,r,m,F;(r=(t=f.current)==null?void 0:t.onFocus)==null||r.call(t,o),(!a||(F=(m=o.target).matches)!=null&&F.call(m,":focus-visible"))&&v(!0)},R=o=>{var t,r;(r=(t=f.current)==null?void 0:t.onBlur)==null||r.call(t,o),v(!1)};return d&&e.focus(),e.addEventListener("focus",E),e.addEventListener("blur",R),()=>{e.removeEventListener("focus",E),e.removeEventListener("blur",R)}},[n,u.state]),n?{focus:a,blur:b,focused:g}:{ref:u,focus:a,blur:b,focused:g}};exports.useFocus=T;
2
+ //# sourceMappingURL=useFocus.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useFocus.cjs","sources":["../../../../src/hooks/useFocus/useFocus.ts"],"sourcesContent":["import { useEffect, useRef, useState } from 'react';\n\nimport type { HookTarget } from '@/utils/helpers';\n\nimport { getElement, isTarget } from '@/utils/helpers';\n\nimport type { StateRef } from '../useRefState/useRefState';\n\nimport { useRefState } from '../useRefState/useRefState';\n\n/** The use focus options type */\nexport interface UseFocusOptions {\n /** The initial focus state of the target */\n initialValue?: boolean;\n /** The on blur callback */\n onBlur?: (event: FocusEvent) => void;\n /** The on focus callback */\n onFocus?: (event: FocusEvent) => void;\n}\n\n/** The use focus return type */\nexport interface UseFocusReturn {\n /** The boolean state value of the target */\n focused: boolean;\n /** Blur the target */\n blur: () => void;\n /** Focus the target */\n focus: () => void;\n}\n\nexport interface UseFocus {\n (target: HookTarget, options?: UseFocusOptions): UseFocusReturn;\n\n <Target extends Element>(\n options?: UseFocusOptions,\n target?: never\n ): UseFocusReturn & { ref: StateRef<Target> };\n}\n\n/**\n * @name useFocus\n * @description - Hook that allows you to focus on a specific element\n * @category Browser\n *\n * @overload\n * @param {HookTarget} target The target element to focus\n * @param {boolean} [options.initialValue=false] The initial focus state of the target\n * @param {(event: FocusEvent) => void} [options.onFocus] The callback function to be invoked on focus\n * @param {(event: FocusEvent) => void} [options.onBlur] The callback function to be invoked on blur\n * @returns {UseFocusReturn} An object with focus state and methods\n *\n * @example\n * const { focus, blur, focused } = useFocus(ref);\n *\n * @overload\n * @template Target The target element\n * @param {boolean} [options.initialValue=false] The initial focus state of the target\n * @param {(event: FocusEvent) => void} [options.onFocus] The callback function to be invoked on focus\n * @param {(event: FocusEvent) => void} [options.onBlur] The callback function to be invoked on blur\n * @returns {UseFocusReturn & { ref: StateRef<Target> }} An object with focus state, methods and ref\n *\n * @example\n * const { ref, focus, blur, focused } = useFocus();\n */\nexport const useFocus = ((...params: any[]) => {\n const target = (isTarget(params[0]) ? params[0] : undefined) as HookTarget | undefined;\n const options = ((target ? params[1] : params[0]) as UseFocusOptions) ?? {};\n const initialValue = options.initialValue ?? false;\n\n const [focused, setFocused] = useState(initialValue);\n const internalRef = useRefState<Element>();\n const internalOptionsRef = useRef(options);\n internalOptionsRef.current = options;\n\n const elementRef = useRef<HTMLElement | null>(null);\n\n const focus = () => elementRef.current?.focus();\n const blur = () => elementRef.current?.blur();\n\n useEffect(() => {\n if (!target && !internalRef.state) return;\n const element = (target ? getElement(target) : internalRef.current) as HTMLElement;\n if (!element) return;\n\n elementRef.current = element;\n\n const onFocus = (event: FocusEvent) => {\n internalOptionsRef.current?.onFocus?.(event);\n if (!focus || (event.target as HTMLElement).matches?.(':focus-visible')) setFocused(true);\n };\n\n const onBlur = (event: FocusEvent) => {\n internalOptionsRef.current?.onBlur?.(event);\n setFocused(false);\n };\n\n if (initialValue) element.focus();\n\n element.addEventListener('focus', onFocus);\n element.addEventListener('blur', onBlur);\n\n return () => {\n element.removeEventListener('focus', onFocus);\n element.removeEventListener('blur', onBlur);\n };\n }, [target, internalRef.state]);\n\n if (target) return { focus, blur, focused };\n return {\n ref: internalRef,\n focus,\n blur,\n focused\n };\n}) as UseFocus;\n"],"names":["useFocus","params","target","isTarget","options","initialValue","focused","setFocused","useState","internalRef","useRefState","internalOptionsRef","useRef","elementRef","focus","_a","blur","useEffect","element","getElement","onFocus","event","_b","_d","_c","onBlur"],"mappings":"mPAgEaA,EAAY,IAAIC,IAAkB,CACvC,MAAAC,EAAUC,WAASF,EAAO,CAAC,CAAC,EAAIA,EAAO,CAAC,EAAI,OAC5CG,GAAYF,EAASD,EAAO,CAAC,EAAIA,EAAO,CAAC,IAA0B,CAAC,EACpEI,EAAeD,EAAQ,cAAgB,GAEvC,CAACE,EAASC,CAAU,EAAIC,EAAAA,SAASH,CAAY,EAC7CI,EAAcC,EAAAA,YAAqB,EACnCC,EAAqBC,SAAOR,CAAO,EACzCO,EAAmB,QAAUP,EAEvB,MAAAS,EAAaD,SAA2B,IAAI,EAE5CE,EAAQ,IAAA,OAAM,OAAAC,EAAAF,EAAW,UAAX,YAAAE,EAAoB,SAClCC,EAAO,IAAA,OAAM,OAAAD,EAAAF,EAAW,UAAX,YAAAE,EAAoB,QA8BvC,OA5BAE,EAAAA,UAAU,IAAM,CACd,GAAI,CAACf,GAAU,CAACO,EAAY,MAAO,OACnC,MAAMS,EAAWhB,EAASiB,EAAAA,WAAWjB,CAAM,EAAIO,EAAY,QAC3D,GAAI,CAACS,EAAS,OAEdL,EAAW,QAAUK,EAEf,MAAAE,EAAWC,GAAsB,cAClBC,GAAAP,EAAAJ,EAAA,UAAA,YAAAI,EAAS,UAAT,MAAAO,EAAA,KAAAP,EAAmBM,IAClC,CAACP,IAAUS,GAAAC,EAAAH,EAAM,QAAuB,UAA7B,MAAAE,EAAA,KAAAC,EAAuC,sBAA8B,EAAI,CAC1F,EAEMC,EAAUJ,GAAsB,UACjBC,GAAAP,EAAAJ,EAAA,UAAA,YAAAI,EAAS,SAAT,MAAAO,EAAA,KAAAP,EAAkBM,GACrCd,EAAW,EAAK,CAClB,EAEI,OAAAF,KAAsB,MAAM,EAExBa,EAAA,iBAAiB,QAASE,CAAO,EACjCF,EAAA,iBAAiB,OAAQO,CAAM,EAEhC,IAAM,CACHP,EAAA,oBAAoB,QAASE,CAAO,EACpCF,EAAA,oBAAoB,OAAQO,CAAM,CAC5C,CACC,EAAA,CAACvB,EAAQO,EAAY,KAAK,CAAC,EAE1BP,EAAe,CAAE,MAAAY,EAAO,KAAAE,EAAM,QAAAV,CAAQ,EACnC,CACL,IAAKG,EACL,MAAAK,EACA,KAAAE,EACA,QAAAV,CACF,CACF"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("react"),m=()=>{const[c,u]=o.useState(0);return o.useEffect(()=>{let e=0,n=performance.now(),t;const r=()=>{e+=1;const s=performance.now(),a=s-n;if(a>=1e3){const i=Math.round(e*1e3/a);u(i),e=0,n=s}t=requestAnimationFrame(r)};return t=requestAnimationFrame(r),()=>{cancelAnimationFrame(t)}},[]),c};exports.useFps=m;
2
+ //# sourceMappingURL=useFps.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useFps.cjs","sources":["../../../../src/hooks/useFps/useFps.ts"],"sourcesContent":["import { useEffect, useState } from 'react';\n\n/**\n * @name useFps\n * @description - Hook that measures frames per second\n * @category Sensors\n *\n * @browserapi requestAnimationFrame https://developer.mozilla.org/en-US/docs/Web/API/window/requestAnimationFrame\n *\n * @returns {number} A number which determines frames per second\n *\n * @example\n * const fps = useFps();\n */\nexport const useFps = () => {\n const [fps, setFps] = useState(0);\n\n useEffect(() => {\n let frameCount = 0;\n let startTime = performance.now();\n let rafId: number;\n\n const onRequestAnimationFrame = () => {\n frameCount += 1;\n const currentTime = performance.now();\n const elapsedTime = currentTime - startTime;\n\n if (elapsedTime >= 1000) {\n const calculatedFps = Math.round((frameCount * 1000) / elapsedTime);\n setFps(calculatedFps);\n frameCount = 0;\n startTime = currentTime;\n }\n\n rafId = requestAnimationFrame(onRequestAnimationFrame);\n };\n\n rafId = requestAnimationFrame(onRequestAnimationFrame);\n\n return () => {\n cancelAnimationFrame(rafId);\n };\n }, []);\n\n return fps;\n};\n"],"names":["useFps","fps","setFps","useState","useEffect","frameCount","startTime","rafId","onRequestAnimationFrame","currentTime","elapsedTime","calculatedFps"],"mappings":"yGAcaA,EAAS,IAAM,CAC1B,KAAM,CAACC,EAAKC,CAAM,EAAIC,EAAAA,SAAS,CAAC,EAEhCC,OAAAA,EAAAA,UAAU,IAAM,CACd,IAAIC,EAAa,EACbC,EAAY,YAAY,IAAI,EAC5BC,EAEJ,MAAMC,EAA0B,IAAM,CACtBH,GAAA,EACR,MAAAI,EAAc,YAAY,IAAI,EAC9BC,EAAcD,EAAcH,EAElC,GAAII,GAAe,IAAM,CACvB,MAAMC,EAAgB,KAAK,MAAON,EAAa,IAAQK,CAAW,EAClER,EAAOS,CAAa,EACPN,EAAA,EACDC,EAAAG,CAAA,CAGdF,EAAQ,sBAAsBC,CAAuB,CACvD,EAEA,OAAAD,EAAQ,sBAAsBC,CAAuB,EAE9C,IAAM,CACX,qBAAqBD,CAAK,CAC5B,CACF,EAAG,EAAE,EAEEN,CACT"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("react"),t=require("screenfull"),d=require("../useRefState/useRefState.cjs"),b=require("../../utils/helpers/isTarget.cjs"),q=require("../../utils/helpers/getElement.cjs"),h=(...n)=>{const c=b.isTarget(n[0])?n[0]:void 0,e=c?n[1]:n[0],[s,E]=o.useState((e==null?void 0:e.initialValue)??!1),a=d.useRefState(),u=()=>{var r,l;t.isEnabled&&(t.isFullscreen?(r=e==null?void 0:e.onEnter)==null||r.call(e):(t.off("change",u),(l=e==null?void 0:e.onExit)==null||l.call(e)),E(t.isFullscreen))},i=()=>{const r=c?q.getElement(c):a.current;if(r&&t.isEnabled)try{t.request(r),t.on("change",u)}catch(l){console.error(l)}},f=()=>{t.isEnabled&&t.exit()},g=()=>{if(s)return f();i()};return o.useEffect(()=>()=>{t.isEnabled&&t.off("change",u)},[]),c?{enter:i,exit:f,toggle:g,value:s}:{ref:a,enter:i,exit:f,toggle:g,value:s}};exports.useFullscreen=h;
2
+ //# sourceMappingURL=useFullscreen.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useFullscreen.cjs","sources":["../../../../src/hooks/useFullscreen/useFullscreen.ts"],"sourcesContent":["import { useEffect, useState } from 'react';\nimport screenfull from 'screenfull';\n\nimport type { HookTarget } from '@/utils/helpers';\n\nimport { getElement, isTarget } from '@/utils/helpers';\n\nimport type { StateRef } from '../useRefState/useRefState';\n\nimport { useRefState } from '../useRefState/useRefState';\n\n/** The use fullscreen options type */\nexport interface UseFullScreenOptions {\n /** initial value */\n initialValue?: boolean;\n /** on enter fullscreen */\n onEnter?: () => void;\n /** on exit fullscreen */\n onExit?: () => void;\n}\n\n/** The use click outside return type */\nexport interface UseFullScreenReturn {\n /** The fullscreen state */\n value: boolean;\n /** The fullscreen enter method */\n enter: () => void;\n /** The fullscreen exit method */\n exit: () => void;\n /** The fullscreen toggle method */\n toggle: () => void;\n}\n\nexport interface UseFullScreen {\n (target: HookTarget, options?: UseFullScreenOptions): UseFullScreenReturn;\n\n <Target extends Element>(\n options?: UseFullScreenOptions,\n target?: never\n ): UseFullScreenReturn & { ref: StateRef<Target> };\n}\n\n/**\n * @name useFullscreen\n * @description - Hook to handle fullscreen events\n * @category Browser\n *\n * @overload\n * @param {HookTarget} target The target element for fullscreen\n * @param {boolean} [options.initialValue=false] initial value of fullscreen\n * @param {() => void} [options.onEnter] on enter fullscreen\n * @param {() => void} [options.onExit] on exit fullscreen\n * @returns {UseFullScreenReturn} An object with the fullscreen state and methods\n *\n * @example\n * const { enter, exit, toggle, value } = useFullscreen(ref);\n *\n * @overload\n * @template Target The target element for fullscreen\n * @param {boolean} [options.initialValue=false] initial value of fullscreen\n * @param {() => void} [options.onEnter] on enter fullscreen\n * @param {() => void} [options.onExit] on exit fullscreen\n * @returns {UseFullScreenReturn & { ref: RefObject<Target> }} An object with the fullscreen state and methods\n *\n * @example\n * const { ref, enter, exit, toggle, value } = useFullscreen();\n */\nexport const useFullscreen = ((...params: any[]) => {\n const target = (isTarget(params[0]) ? params[0] : undefined) as HookTarget | undefined;\n const options = (target ? params[1] : params[0]) as UseFullScreenOptions | undefined;\n\n const [value, setValue] = useState(options?.initialValue ?? false);\n const internalRef = useRefState<Element>();\n\n const onChange = () => {\n if (!screenfull.isEnabled) return;\n\n if (screenfull.isFullscreen) {\n options?.onEnter?.();\n } else {\n screenfull.off('change', onChange);\n options?.onExit?.();\n }\n\n setValue(screenfull.isFullscreen);\n };\n\n const enter = () => {\n const element = (target ? getElement(target) : internalRef.current) as Element;\n if (!element) return;\n\n if (screenfull.isEnabled) {\n try {\n screenfull.request(element);\n screenfull.on('change', onChange);\n } catch (error) {\n console.error(error);\n }\n }\n };\n\n const exit = () => {\n if (screenfull.isEnabled) screenfull.exit();\n };\n\n const toggle = () => {\n if (value) return exit();\n enter();\n };\n\n useEffect(\n () => () => {\n if (screenfull.isEnabled) screenfull.off('change', onChange);\n },\n []\n );\n\n if (target)\n return {\n enter,\n exit,\n toggle,\n value\n };\n return {\n ref: internalRef,\n enter,\n exit,\n toggle,\n value\n };\n}) as UseFullScreen;\n"],"names":["useFullscreen","params","target","isTarget","options","value","setValue","useState","internalRef","useRefState","onChange","screenfull","_a","_b","enter","element","getElement","error","exit","toggle","useEffect"],"mappings":"2QAmEaA,EAAiB,IAAIC,IAAkB,CAC5C,MAAAC,EAAUC,WAASF,EAAO,CAAC,CAAC,EAAIA,EAAO,CAAC,EAAI,OAC5CG,EAAWF,EAASD,EAAO,CAAC,EAAIA,EAAO,CAAC,EAExC,CAACI,EAAOC,CAAQ,EAAIC,EAAS,UAAAH,GAAA,YAAAA,EAAS,eAAgB,EAAK,EAC3DI,EAAcC,EAAAA,YAAqB,EAEnCC,EAAW,IAAM,SAChBC,EAAW,YAEZA,EAAW,cACbC,EAAAR,GAAA,YAAAA,EAAS,UAAT,MAAAQ,EAAA,KAAAR,IAEWO,EAAA,IAAI,SAAUD,CAAQ,GACjCG,EAAAT,GAAA,YAAAA,EAAS,SAAT,MAAAS,EAAA,KAAAT,IAGFE,EAASK,EAAW,YAAY,EAClC,EAEMG,EAAQ,IAAM,CAClB,MAAMC,EAAWb,EAASc,EAAAA,WAAWd,CAAM,EAAIM,EAAY,QAC3D,GAAKO,GAEDJ,EAAW,UACT,GAAA,CACFA,EAAW,QAAQI,CAAO,EACfJ,EAAA,GAAG,SAAUD,CAAQ,QACzBO,EAAO,CACd,QAAQ,MAAMA,CAAK,CAAA,CAGzB,EAEMC,EAAO,IAAM,CACbP,EAAW,WAAWA,EAAW,KAAK,CAC5C,EAEMQ,EAAS,IAAM,CACf,GAAAd,SAAca,EAAK,EACjBJ,EAAA,CACR,EASI,OAPJM,EAAA,UACE,IAAM,IAAM,CACNT,EAAW,WAAsBA,EAAA,IAAI,SAAUD,CAAQ,CAC7D,EACA,CAAA,CACF,EAEIR,EACK,CACL,MAAAY,EACA,KAAAI,EACA,OAAAC,EACA,MAAAd,CACF,EACK,CACL,IAAKG,EACL,MAAAM,EACA,KAAAI,EACA,OAAAC,EACA,MAAAd,CACF,CACF"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("react"),l=require("../useRaf/useRaf.cjs"),f=()=>{const t=typeof navigator<"u"&&"getGamepads"in navigator,[s,r]=i.useState({}),u=e=>{const o=[],n="vibrationActuator"in e?e.vibrationActuator:null;return n&&o.push(n),e.hapticActuators&&o.push(...e.hapticActuators),{...e,hapticActuators:o}},b=()=>{for(const e of navigator.getGamepads()??[])e&&s[e.index]&&(s[e.index]=u(e))},{active:d}=l.useRaf(b,{enabled:!!Object.keys(s).length});return i.useEffect(()=>{if(!t)return;const e=navigator.getGamepads();r(e.reduce((o,n)=>({...o,...n&&{[n.index]:u(n)}}),{}))},[]),i.useEffect(()=>{const e=n=>{const{gamepad:c}=n;r({...s,[c.index]:u(c)})},o=n=>{const{gamepad:c}=n,a={...s};delete a[c.index],r(a)};return document.addEventListener("gamepadconnected",e),document.addEventListener("gamepaddisconnected",o),()=>{document.removeEventListener("gamepadconnected",e),document.removeEventListener("gamepaddisconnected",o)}},[]),{active:d,supported:t,gamepads:Object.values(s)}},v=t=>({buttons:{a:t.buttons[0],b:t.buttons[1],x:t.buttons[2],y:t.buttons[3]},bumper:{left:t.buttons[4],right:t.buttons[5]},triggers:{left:t.buttons[6],right:t.buttons[7]},stick:{left:{horizontal:t.axes[0],vertical:t.axes[1],button:t.buttons[10]},right:{horizontal:t.axes[2],vertical:t.axes[3],button:t.buttons[11]}},dpad:{up:t.buttons[12],down:t.buttons[13],left:t.buttons[14],right:t.buttons[15]},back:t.buttons[8],start:t.buttons[9]});exports.mapGamepadToXbox360Controller=v;exports.useGamepad=f;
2
+ //# sourceMappingURL=useGamepad.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useGamepad.cjs","sources":["../../../../src/hooks/useGamepad/useGamepad.ts"],"sourcesContent":["import { useEffect, useState } from 'react';\n\nimport { useRaf } from '../useRaf/useRaf';\n\ndeclare global {\n interface Gamepad {\n hapticActuators?: GamepadHapticActuator[];\n }\n}\n\n/** The use gamepad return type */\nexport interface UseGamepadStateReturn {\n /** The gamepad active status */\n active: boolean;\n /** The gamepad state */\n gamepads: Gamepad[];\n /** The gamepad supported status */\n supported: boolean;\n}\n\n/**\n * @name useGamepad\n * @description - Hook for getting information about gamepad\n * @category Browser\n *\n * @browserapi navigator.getGamepads https://developer.mozilla.org/en-US/docs/Web/API/Navigator/getGamepads\n *\n * @returns {UseGamepadStateReturn} An object containing the gamepad information\n *\n * @example\n * const { supported, gamepads, active } = useGamepad();\n */\nexport const useGamepad = () => {\n const supported = typeof navigator !== 'undefined' && 'getGamepads' in navigator;\n const [gamepads, setGamepads] = useState<Record<number, Gamepad>>({});\n\n const createGamepad = (gamepad: Gamepad) => {\n const hapticActuators = [];\n const vibrationActuator = 'vibrationActuator' in gamepad ? gamepad.vibrationActuator : null;\n\n if (vibrationActuator) hapticActuators.push(vibrationActuator);\n if (gamepad.hapticActuators) hapticActuators.push(...gamepad.hapticActuators);\n\n return {\n ...gamepad,\n hapticActuators\n } as Gamepad;\n };\n\n const updateGamepadState = () => {\n for (const gamepad of navigator.getGamepads() ?? []) {\n if (gamepad && gamepads[gamepad.index]) gamepads[gamepad.index] = createGamepad(gamepad);\n }\n };\n\n const { active } = useRaf(updateGamepadState, { enabled: !!Object.keys(gamepads).length });\n\n useEffect(() => {\n if (!supported) return;\n const gamepads = navigator.getGamepads();\n setGamepads(\n gamepads.reduce(\n (acc, gamepad) => ({ ...acc, ...(gamepad && { [gamepad.index]: createGamepad(gamepad) }) }),\n {}\n )\n );\n }, []);\n\n useEffect(() => {\n const onConnected = (event: Event) => {\n const { gamepad } = event as GamepadEvent;\n setGamepads({ ...gamepads, [gamepad.index]: createGamepad(gamepad) });\n };\n\n const onDisconnected = (event: Event) => {\n const { gamepad } = event as GamepadEvent;\n const updatedGamepads = { ...gamepads };\n delete updatedGamepads[gamepad.index];\n setGamepads(updatedGamepads);\n };\n\n document.addEventListener('gamepadconnected', onConnected);\n document.addEventListener('gamepaddisconnected', onDisconnected);\n\n return () => {\n document.removeEventListener('gamepadconnected', onConnected);\n document.removeEventListener('gamepaddisconnected', onDisconnected);\n };\n }, []);\n\n return {\n active,\n supported,\n gamepads: Object.values(gamepads)\n };\n};\n\nexport const mapGamepadToXbox360Controller = (gamepad: Gamepad) => ({\n buttons: {\n a: gamepad.buttons[0],\n b: gamepad.buttons[1],\n x: gamepad.buttons[2],\n y: gamepad.buttons[3]\n },\n bumper: {\n left: gamepad.buttons[4],\n right: gamepad.buttons[5]\n },\n triggers: {\n left: gamepad.buttons[6],\n right: gamepad.buttons[7]\n },\n stick: {\n left: {\n horizontal: gamepad.axes[0],\n vertical: gamepad.axes[1],\n button: gamepad.buttons[10]\n },\n right: {\n horizontal: gamepad.axes[2],\n vertical: gamepad.axes[3],\n button: gamepad.buttons[11]\n }\n },\n dpad: {\n up: gamepad.buttons[12],\n down: gamepad.buttons[13],\n left: gamepad.buttons[14],\n right: gamepad.buttons[15]\n },\n back: gamepad.buttons[8],\n start: gamepad.buttons[9]\n});\n"],"names":["useGamepad","supported","gamepads","setGamepads","useState","createGamepad","gamepad","hapticActuators","vibrationActuator","updateGamepadState","active","useRaf","useEffect","acc","onConnected","event","onDisconnected","updatedGamepads","mapGamepadToXbox360Controller"],"mappings":"2IAgCaA,EAAa,IAAM,CAC9B,MAAMC,EAAY,OAAO,UAAc,KAAe,gBAAiB,UACjE,CAACC,EAAUC,CAAW,EAAIC,EAAAA,SAAkC,CAAA,CAAE,EAE9DC,EAAiBC,GAAqB,CAC1C,MAAMC,EAAkB,CAAC,EACnBC,EAAoB,sBAAuBF,EAAUA,EAAQ,kBAAoB,KAEnF,OAAAE,GAAmCD,EAAA,KAAKC,CAAiB,EACzDF,EAAQ,iBAAiBC,EAAgB,KAAK,GAAGD,EAAQ,eAAe,EAErE,CACL,GAAGA,EACH,gBAAAC,CACF,CACF,EAEME,EAAqB,IAAM,CAC/B,UAAWH,KAAW,UAAU,YAAY,GAAK,CAAA,EAC3CA,GAAWJ,EAASI,EAAQ,KAAK,MAAYA,EAAQ,KAAK,EAAID,EAAcC,CAAO,EAE3F,EAEM,CAAE,OAAAI,CAAA,EAAWC,EAAA,OAAOF,EAAoB,CAAE,QAAS,CAAC,CAAC,OAAO,KAAKP,CAAQ,EAAE,OAAQ,EAEzFU,OAAAA,EAAAA,UAAU,IAAM,CACd,GAAI,CAACX,EAAW,OACVC,MAAAA,EAAW,UAAU,YAAY,EACvCC,EACED,EAAS,OACP,CAACW,EAAKP,KAAa,CAAE,GAAGO,EAAK,GAAIP,GAAW,CAAE,CAACA,EAAQ,KAAK,EAAGD,EAAcC,CAAO,CAAK,CAAA,GACzF,CAAA,CAAC,CAEL,CACF,EAAG,EAAE,EAELM,EAAAA,UAAU,IAAM,CACR,MAAAE,EAAeC,GAAiB,CAC9B,KAAA,CAAE,QAAAT,GAAYS,EACRZ,EAAA,CAAE,GAAGD,EAAU,CAACI,EAAQ,KAAK,EAAGD,EAAcC,CAAO,EAAG,CACtE,EAEMU,EAAkBD,GAAiB,CACjC,KAAA,CAAE,QAAAT,GAAYS,EACdE,EAAkB,CAAE,GAAGf,CAAS,EAC/B,OAAAe,EAAgBX,EAAQ,KAAK,EACpCH,EAAYc,CAAe,CAC7B,EAES,gBAAA,iBAAiB,mBAAoBH,CAAW,EAChD,SAAA,iBAAiB,sBAAuBE,CAAc,EAExD,IAAM,CACF,SAAA,oBAAoB,mBAAoBF,CAAW,EACnD,SAAA,oBAAoB,sBAAuBE,CAAc,CACpE,CACF,EAAG,EAAE,EAEE,CACL,OAAAN,EACA,UAAAT,EACA,SAAU,OAAO,OAAOC,CAAQ,CAClC,CACF,EAEagB,EAAiCZ,IAAsB,CAClE,QAAS,CACP,EAAGA,EAAQ,QAAQ,CAAC,EACpB,EAAGA,EAAQ,QAAQ,CAAC,EACpB,EAAGA,EAAQ,QAAQ,CAAC,EACpB,EAAGA,EAAQ,QAAQ,CAAC,CACtB,EACA,OAAQ,CACN,KAAMA,EAAQ,QAAQ,CAAC,EACvB,MAAOA,EAAQ,QAAQ,CAAC,CAC1B,EACA,SAAU,CACR,KAAMA,EAAQ,QAAQ,CAAC,EACvB,MAAOA,EAAQ,QAAQ,CAAC,CAC1B,EACA,MAAO,CACL,KAAM,CACJ,WAAYA,EAAQ,KAAK,CAAC,EAC1B,SAAUA,EAAQ,KAAK,CAAC,EACxB,OAAQA,EAAQ,QAAQ,EAAE,CAC5B,EACA,MAAO,CACL,WAAYA,EAAQ,KAAK,CAAC,EAC1B,SAAUA,EAAQ,KAAK,CAAC,EACxB,OAAQA,EAAQ,QAAQ,EAAE,CAAA,CAE9B,EACA,KAAM,CACJ,GAAIA,EAAQ,QAAQ,EAAE,EACtB,KAAMA,EAAQ,QAAQ,EAAE,EACxB,KAAMA,EAAQ,QAAQ,EAAE,EACxB,MAAOA,EAAQ,QAAQ,EAAE,CAC3B,EACA,KAAMA,EAAQ,QAAQ,CAAC,EACvB,MAAOA,EAAQ,QAAQ,CAAC,CAC1B"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("react"),g=e=>{const[u,n]=c.useState({loading:!0,error:null,timestamp:Date.now(),accuracy:0,latitude:Number.POSITIVE_INFINITY,longitude:Number.POSITIVE_INFINITY,altitude:null,altitudeAccuracy:null,heading:null,speed:null});return c.useEffect(()=>{const l=({coords:t,timestamp:a})=>{n({...u,loading:!1,timestamp:a,latitude:t.latitude,longitude:t.longitude,altitude:t.altitude,accuracy:t.accuracy,altitudeAccuracy:t.altitudeAccuracy,heading:t.heading,speed:t.speed})},i=t=>{n({...u,loading:!1,error:t})};navigator.geolocation.getCurrentPosition(l,i,e);const o=navigator.geolocation.watchPosition(l,i,e);return()=>{navigator.geolocation.clearWatch(o)}},[e==null?void 0:e.enableHighAccuracy,e==null?void 0:e.maximumAge,e==null?void 0:e.timeout]),u};exports.useGeolocation=g;
2
+ //# sourceMappingURL=useGeolocation.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useGeolocation.cjs","sources":["../../../../src/hooks/useGeolocation/useGeolocation.ts"],"sourcesContent":["import { useEffect, useState } from 'react';\n\n/** The use geolocation return type */\nexport interface UseGeolocationReturn {\n /** The accuracy of the last position update */\n accuracy: number | null;\n /** The altitude of the last position update */\n altitude: number | null;\n /** The altitude accuracy of the last position update */\n altitudeAccuracy: number | null;\n /** The error of the last position update */\n error: GeolocationPositionError | null;\n /** The heading of the last position update */\n heading: number | null;\n /** The latitude of the last position update */\n latitude: number | null;\n /** The loading state */\n loading: boolean;\n /** The longitude of the last position update */\n longitude: number | null;\n /** The speed of the last position update */\n speed: number | null;\n /** The timestamp of the last position update */\n timestamp: number | null;\n}\n\n/** The use geolocation params type */\nexport type UseGeolocationParams = PositionOptions;\n\n/**\n * @name useGeolocation\n * @description - Hook that returns the current geolocation\n * @category Browser\n *\n * @browserapi navigator.geolocation https://developer.mozilla.org/en-US/docs/Web/API/Navigator/geolocation\n *\n * @param {boolean} [params.enableHighAccuracy] Enable high accuracy\n * @param {number} [params.maximumAge] Maximum age\n * @param {number} [params.timeout] Timeout\n * @returns {UseGeolocationReturn}\n *\n * @example\n * const { loading, error, timestamp, accuracy, latitude, longitude, altitude, altitudeAccuracy, heading, speed } = useGeolocation();\n */\nexport const useGeolocation = (params?: UseGeolocationParams): UseGeolocationReturn => {\n const [value, setValue] = useState<UseGeolocationReturn>({\n loading: true,\n error: null,\n timestamp: Date.now(),\n accuracy: 0,\n latitude: Number.POSITIVE_INFINITY,\n longitude: Number.POSITIVE_INFINITY,\n altitude: null,\n altitudeAccuracy: null,\n heading: null,\n speed: null\n });\n\n useEffect(() => {\n const onEvent = ({ coords, timestamp }: GeolocationPosition) => {\n setValue({\n ...value,\n loading: false,\n timestamp,\n latitude: coords.latitude,\n longitude: coords.longitude,\n altitude: coords.altitude,\n accuracy: coords.accuracy,\n altitudeAccuracy: coords.altitudeAccuracy,\n heading: coords.heading,\n speed: coords.speed\n });\n };\n\n const onEventError = (error: GeolocationPositionError) => {\n setValue({\n ...value,\n loading: false,\n error\n });\n };\n\n navigator.geolocation.getCurrentPosition(onEvent, onEventError, params);\n const watchId = navigator.geolocation.watchPosition(onEvent, onEventError, params);\n\n return () => {\n navigator.geolocation.clearWatch(watchId);\n };\n }, [params?.enableHighAccuracy, params?.maximumAge, params?.timeout]);\n\n return value;\n};\n"],"names":["useGeolocation","params","value","setValue","useState","useEffect","onEvent","coords","timestamp","onEventError","error","watchId"],"mappings":"yGA4CaA,EAAkBC,GAAwD,CACrF,KAAM,CAACC,EAAOC,CAAQ,EAAIC,WAA+B,CACvD,QAAS,GACT,MAAO,KACP,UAAW,KAAK,IAAI,EACpB,SAAU,EACV,SAAU,OAAO,kBACjB,UAAW,OAAO,kBAClB,SAAU,KACV,iBAAkB,KAClB,QAAS,KACT,MAAO,IAAA,CACR,EAEDC,OAAAA,EAAAA,UAAU,IAAM,CACd,MAAMC,EAAU,CAAC,CAAE,OAAAC,EAAQ,UAAAC,KAAqC,CACrDL,EAAA,CACP,GAAGD,EACH,QAAS,GACT,UAAAM,EACA,SAAUD,EAAO,SACjB,UAAWA,EAAO,UAClB,SAAUA,EAAO,SACjB,SAAUA,EAAO,SACjB,iBAAkBA,EAAO,iBACzB,QAASA,EAAO,QAChB,MAAOA,EAAO,KAAA,CACf,CACH,EAEME,EAAgBC,GAAoC,CAC/CP,EAAA,CACP,GAAGD,EACH,QAAS,GACT,MAAAQ,CAAA,CACD,CACH,EAEA,UAAU,YAAY,mBAAmBJ,EAASG,EAAcR,CAAM,EACtE,MAAMU,EAAU,UAAU,YAAY,cAAcL,EAASG,EAAcR,CAAM,EAEjF,MAAO,IAAM,CACD,UAAA,YAAY,WAAWU,CAAO,CAC1C,CAAA,EACC,CAACV,GAAA,YAAAA,EAAQ,mBAAoBA,GAAA,YAAAA,EAAQ,WAAYA,GAAA,YAAAA,EAAQ,OAAO,CAAC,EAE7DC,CACT"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react"),s=()=>decodeURIComponent(window.location.hash.replace("#","")),h=()=>{const[o,t]=n.useState(window?s():""),a=e=>{window.location.hash=e,t(e)};return n.useEffect(()=>{const e=()=>t(s());return window.addEventListener("hashchange",e),()=>{window.removeEventListener("hashchange",e)}}),[o,a]};exports.useHash=h;
2
+ //# sourceMappingURL=useHash.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useHash.cjs","sources":["../../../../src/hooks/useHash/useHash.ts"],"sourcesContent":["import { useEffect, useState } from 'react';\n\nconst getHash = () => decodeURIComponent(window.location.hash.replace('#', ''));\n\n/** The use hash return type */\ntype UseHashReturn = [string, (value: string) => void];\n\n/**\n * @name useHash\n * @description - Hook that manages the hash value\n * @category Browser\n *\n * @returns {UseHashReturn} An array containing the hash value and a function to set the hash value\n *\n * @example\n * const [hash, setHash] = useHash();\n */\nexport const useHash = (): UseHashReturn => {\n const [hash, setHash] = useState(window ? getHash() : '');\n\n const set = (value: string) => {\n window.location.hash = value;\n setHash(value);\n };\n\n useEffect(() => {\n const onHashChange = () => setHash(getHash());\n window.addEventListener('hashchange', onHashChange);\n return () => {\n window.removeEventListener('hashchange', onHashChange);\n };\n });\n\n return [hash, set] as const;\n};\n"],"names":["getHash","useHash","hash","setHash","useState","set","value","useEffect","onHashChange"],"mappings":"yGAEMA,EAAU,IAAM,mBAAmB,OAAO,SAAS,KAAK,QAAQ,IAAK,EAAE,CAAC,EAejEC,EAAU,IAAqB,CACpC,KAAA,CAACC,EAAMC,CAAO,EAAIC,WAAS,OAASJ,IAAY,EAAE,EAElDK,EAAOC,GAAkB,CAC7B,OAAO,SAAS,KAAOA,EACvBH,EAAQG,CAAK,CACf,EAEAC,OAAAA,EAAAA,UAAU,IAAM,CACd,MAAMC,EAAe,IAAML,EAAQH,GAAS,EACrC,cAAA,iBAAiB,aAAcQ,CAAY,EAC3C,IAAM,CACJ,OAAA,oBAAoB,aAAcA,CAAY,CACvD,CAAA,CACD,EAEM,CAACN,EAAMG,CAAG,CACnB"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const L=require("react"),E=require("../useEvent/useEvent.cjs"),g=require("../useRefState/useRefState.cjs"),h=require("../../utils/helpers/isTarget.cjs"),v=require("../../utils/helpers/getElement.cjs"),w=(t,r)=>t.toLowerCase().split(/[+_,\-]/g).map(n=>n.trim()).every(n=>r.find(c=>n===c.code.toLocaleLowerCase()||n===c.key.toLocaleLowerCase()||n===c.alias.toLocaleLowerCase())),b=(...t)=>{const r=h.isTarget(t[0])?t[0]:void 0,n=r?t[1]:t[0],c=r?t[2]:t[1],o=r?t[3]:t[2],u=g.useRefState(window),s=L.useRef([]),a=(o==null?void 0:o.enabled)??!0,l=E.useEvent(e=>{var k;if(!a||s.current.some(({code:i})=>i===e.code))return;const y=((k=o==null?void 0:o.alias)==null?void 0:k[e.key])??e.code,d=[...s.current,{key:e.key,code:e.code,alias:y}];s.current=d,n.split(",").map(i=>i.trim()).some(i=>w(i,d))&&(e.preventDefault(),c(e))}),f=E.useEvent(e=>{a&&(s.current=s.current.filter(({code:y})=>y!==e.code))});if(L.useEffect(()=>{if(s.current=[],!r&&!u.state&&!a)return;const e=r?v.getElement(r):u.current;if(e)return e.addEventListener("keydown",l),e.addEventListener("keyup",f),()=>{e.removeEventListener("keydown",l),e.removeEventListener("keyup",f)}},[r,u.state,a,n,l,f]),!r)return u};exports.isHotkeyMatch=w;exports.useHotkeys=b;
2
+ //# sourceMappingURL=useHotkeys.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useHotkeys.cjs","sources":["../../../../src/hooks/useHotkeys/useHotkeys.ts"],"sourcesContent":["import { useEffect, useRef } from 'react';\n\nimport type { HookTarget } from '@/utils/helpers';\n\nimport { getElement, isTarget } from '@/utils/helpers';\n\nimport type { StateRef } from '../useRefState/useRefState';\n\nimport { useEvent } from '../useEvent/useEvent';\nimport { useRefState } from '../useRefState/useRefState';\n\n/** The use hotkeys params type */\nexport interface UseHotkeysOptions {\n /** Alias map for hotkeys */\n alias?: Record<string, string>;\n /** Enable or disable the event listeners */\n enabled?: boolean;\n}\n\nexport const isHotkeyMatch = (hotkey: string, keys: UseHotkeysKey[]) =>\n hotkey\n .toLowerCase()\n .split(/[+_,\\-]/g)\n .map((key) => key.trim())\n .every((key) =>\n keys.find(\n (updatedKey) =>\n key === updatedKey.code.toLocaleLowerCase() ||\n key === updatedKey.key.toLocaleLowerCase() ||\n key === updatedKey.alias.toLocaleLowerCase()\n )\n );\n\n/** The hotkeys string type */\nexport type UseHotkeysHotkeys = string;\n\n/** The hotkey key information */\nexport interface UseHotkeysKey {\n /** The alias for the key */\n alias: string;\n /** The key code */\n code: string;\n /** The key value */\n key: string;\n}\n\n/** The use hotkeys target type */\nexport type UseHotkeysTarget = Element | React.RefObject<Element | null | undefined>;\n\nexport interface UseHotkeys {\n (\n target: UseHotkeysTarget,\n hotkeys: UseHotkeysHotkeys,\n callback: (event: KeyboardEvent) => void,\n options?: UseHotkeysOptions\n ): void;\n\n <Target extends Element>(\n hotkeys: UseHotkeysHotkeys,\n callback: (event: KeyboardEvent) => void,\n options?: UseHotkeysOptions,\n target?: never\n ): StateRef<Target>;\n}\n\n/**\n * @name useHotkeys\n * @description - Hook that listens for hotkeys\n * @category Sensors\n *\n * @overload\n * @param {HookTarget} [target=window] The target element to attach the event listener to\n * @param {string} hotkeys The hotkey to listen for\n * @param {(event: KeyboardEvent) => void} callback The callback function to execute when hotkey is pressed\n * @param {Record<string, string>} [options.alias] Alias map for hotkeys\n * @param {boolean} [options.enabled=true] Enable or disable the event listeners\n * @returns {void}\n *\n * @example\n * useHotkeys(ref, 'ctrl+a', () => console.log('hotkey pressed'));\n * @example\n * useHotkeys(ref, 'ctrl+a, ctrl+b', () => console.log('hotkey pressed'));\n *\n * @overload\n * @template Target The target element\n * @param {string} hotkeys The hotkey to listen for\n * @param {(event: KeyboardEvent) => void} callback The callback function to execute when hotkey is pressed\n * @param {Record<string, string>} [options.alias] Alias map for hotkeys\n * @param {boolean} [options.enabled=true] Enable or disable the event listeners\n * @returns {StateRef<Target>} A reference to the target element\n *\n * @example\n * const ref = useHotkeys('ctrl+a', () => console.log('hotkey pressed'));\n * @example\n * const ref = useHotkeys('ctrl+a, ctrl+b', () => console.log('hotkey pressed'));\n */\nexport const useHotkeys = ((...params: any[]) => {\n const target = (isTarget(params[0]) ? params[0] : undefined) as HookTarget | undefined;\n const hotkeys = (target ? params[1] : params[0]) as UseHotkeysHotkeys;\n const callback = (target ? params[2] : params[1]) as (event: KeyboardEvent) => void;\n const options = (target ? params[3] : params[2]) as UseHotkeysOptions | undefined;\n\n const internalRef = useRefState(window);\n const keysRef = useRef<UseHotkeysKey[]>([]);\n const enabled = options?.enabled ?? true;\n\n const onKeyDown = useEvent((event: KeyboardEvent) => {\n if (!enabled) return;\n\n if (keysRef.current.some(({ code }) => code === event.code)) return;\n\n const alias = options?.alias?.[event.key] ?? event.code;\n const updatedKeys = [...keysRef.current, { key: event.key, code: event.code, alias }];\n keysRef.current = updatedKeys;\n\n const hotkeysList = hotkeys.split(',').map((h) => h.trim());\n const isMatch = hotkeysList.some((hotkey) => isHotkeyMatch(hotkey, updatedKeys));\n if (!isMatch) return;\n event.preventDefault();\n callback(event);\n });\n\n const onKeyUp = useEvent((event: KeyboardEvent) => {\n if (!enabled) return;\n keysRef.current = keysRef.current.filter(({ code }) => code !== event.code);\n });\n\n useEffect(() => {\n keysRef.current = [];\n if (!target && !internalRef.state && !enabled) return;\n\n const element = (target ? getElement(target) : internalRef.current) as Element;\n if (!element) return;\n\n element.addEventListener('keydown', onKeyDown as EventListener);\n element.addEventListener('keyup', onKeyUp as EventListener);\n\n return () => {\n element.removeEventListener('keydown', onKeyDown as EventListener);\n element.removeEventListener('keyup', onKeyUp as EventListener);\n };\n }, [target, internalRef.state, enabled, hotkeys, onKeyDown, onKeyUp]);\n\n if (target) return;\n return internalRef;\n}) as UseHotkeys;\n"],"names":["isHotkeyMatch","hotkey","keys","key","updatedKey","useHotkeys","params","target","isTarget","hotkeys","callback","options","internalRef","useRefState","keysRef","useRef","enabled","onKeyDown","useEvent","event","code","alias","_a","updatedKeys","h","onKeyUp","useEffect","element","getElement"],"mappings":"yRAmBaA,EAAgB,CAACC,EAAgBC,IAC5CD,EACG,YACA,EAAA,MAAM,UAAU,EAChB,IAAKE,GAAQA,EAAI,KAAA,CAAM,EACvB,MAAOA,GACND,EAAK,KACFE,GACCD,IAAQC,EAAW,KAAK,kBAAkB,GAC1CD,IAAQC,EAAW,IAAI,kBAAkB,GACzCD,IAAQC,EAAW,MAAM,kBAAkB,CAAA,CAEjD,EAiESC,EAAc,IAAIC,IAAkB,CACzC,MAAAC,EAAUC,WAASF,EAAO,CAAC,CAAC,EAAIA,EAAO,CAAC,EAAI,OAC5CG,EAAWF,EAASD,EAAO,CAAC,EAAIA,EAAO,CAAC,EACxCI,EAAYH,EAASD,EAAO,CAAC,EAAIA,EAAO,CAAC,EACzCK,EAAWJ,EAASD,EAAO,CAAC,EAAIA,EAAO,CAAC,EAExCM,EAAcC,cAAY,MAAM,EAChCC,EAAUC,EAAwB,OAAA,EAAE,EACpCC,GAAUL,GAAA,YAAAA,EAAS,UAAW,GAE9BM,EAAYC,WAAUC,GAAyB,OAG/C,GAFA,CAACH,GAEDF,EAAQ,QAAQ,KAAK,CAAC,CAAE,KAAAM,KAAWA,IAASD,EAAM,IAAI,EAAG,OAE7D,MAAME,IAAQC,EAAAX,GAAA,YAAAA,EAAS,QAAT,YAAAW,EAAiBH,EAAM,OAAQA,EAAM,KAC7CI,EAAc,CAAC,GAAGT,EAAQ,QAAS,CAAE,IAAKK,EAAM,IAAK,KAAMA,EAAM,KAAM,MAAAE,EAAO,EACpFP,EAAQ,QAAUS,EAEEd,EAAQ,MAAM,GAAG,EAAE,IAAKe,GAAMA,EAAE,MAAM,EAC9B,KAAMvB,GAAWD,EAAcC,EAAQsB,CAAW,CAAC,IAE/EJ,EAAM,eAAe,EACrBT,EAASS,CAAK,EAAA,CACf,EAEKM,EAAUP,WAAUC,GAAyB,CAC5CH,IACGF,EAAA,QAAUA,EAAQ,QAAQ,OAAO,CAAC,CAAE,KAAAM,KAAWA,IAASD,EAAM,IAAI,EAAA,CAC3E,EAkBD,GAhBAO,EAAAA,UAAU,IAAM,CAEd,GADAZ,EAAQ,QAAU,CAAC,EACf,CAACP,GAAU,CAACK,EAAY,OAAS,CAACI,EAAS,OAE/C,MAAMW,EAAWpB,EAASqB,EAAAA,WAAWrB,CAAM,EAAIK,EAAY,QAC3D,GAAKe,EAEG,OAAAA,EAAA,iBAAiB,UAAWV,CAA0B,EACtDU,EAAA,iBAAiB,QAASF,CAAwB,EAEnD,IAAM,CACHE,EAAA,oBAAoB,UAAWV,CAA0B,EACzDU,EAAA,oBAAoB,QAASF,CAAwB,CAC/D,CAAA,EACC,CAAClB,EAAQK,EAAY,MAAOI,EAASP,EAASQ,EAAWQ,CAAO,CAAC,EAEhE,CAAAlB,EACG,OAAAK,CACT"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("react"),a=require("../useRefState/useRefState.cjs"),d=require("../../utils/helpers/isTarget.cjs"),y=require("../../utils/helpers/getElement.cjs"),L=(...t)=>{const n=d.isTarget(t[0])?t[0]:void 0,v=n?typeof t[1]=="object"?t[1]:{onEntry:t[1]}:typeof t[0]=="object"?t[0]:{onEntry:t[0]},[f,l]=i.useState(!1),s=a.useRefState(),u=i.useRef(v);return u.current=v,i.useEffect(()=>{if(!n&&!s.state)return;const r=n?y.getElement(n):s.current;if(!r)return;const E=c=>{var e,o;(o=(e=u.current)==null?void 0:e.onEntry)==null||o.call(e,c),l(!0)},g=c=>{var e,o;(o=(e=u.current)==null?void 0:e.onLeave)==null||o.call(e,c),l(!1)};return r.addEventListener("mouseenter",E),r.addEventListener("mouseleave",g),()=>{r.removeEventListener("mouseenter",E),r.removeEventListener("mouseleave",g)}},[n,s.state]),n?f:[s,f]};exports.useHover=L;
2
+ //# sourceMappingURL=useHover.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useHover.cjs","sources":["../../../../src/hooks/useHover/useHover.ts"],"sourcesContent":["import { useEffect, useRef, useState } from 'react';\n\nimport type { HookTarget } from '@/utils/helpers';\n\nimport { getElement, isTarget } from '@/utils/helpers';\n\nimport type { StateRef } from '../useRefState/useRefState';\n\nimport { useRefState } from '../useRefState/useRefState';\n\n/** The use hover options type */\nexport interface UseHoverOptions {\n /** The on entry callback */\n onEntry?: (event: Event) => void;\n /** The on leave callback */\n onLeave?: (event: Event) => void;\n}\n\nexport interface UseHover {\n (target: HookTarget, callback?: (event: Event) => void): boolean;\n\n (target: HookTarget, options?: UseHoverOptions): boolean;\n\n <Target extends Element>(\n callback?: (event: Event) => void,\n target?: never\n ): [StateRef<Target>, boolean];\n\n <Target extends Element>(options?: UseHoverOptions, target?: never): [StateRef<Target>, boolean];\n}\n\n/**\n * @name useHover\n * @description - Hook that defines the logic when hovering an element\n * @category Sensors\n *\n * @overload\n * @param {HookTarget} target The target element to be hovered\n * @param {(event: Event) => void} [callback] The callback function to be invoked on mouse enter\n * @returns {boolean} The state of the hover\n *\n * @example\n * const hovering = useHover(ref, () => console.log('callback'));\n *\n * @overload\n * @param {HookTarget} target The target element to be hovered\n * @param {(event: Event) => void} [options.onEntry] The callback function to be invoked on mouse enter\n * @param {(event: Event) => void} [options.onLeave] The callback function to be invoked on mouse leave\n * @returns {boolean} The state of the hover\n *\n * @example\n * const hovering = useHover(ref, options);\n *\n * @overload\n * @template Target The target element\n * @param {(event: Event) => void} [callback] The callback function to be invoked on mouse enter\n * @returns {UseHoverReturn<Target>} The state of the hover\n *\n * @example\n * const [ref, hovering] = useHover(() => console.log('callback'));\n *\n * @overload\n * @template Target The target element\n * @param {(event: Event) => void} [options.onEntry] The callback function to be invoked on mouse enter\n * @param {(event: Event) => void} [options.onLeave] The callback function to be invoked on mouse leave\n * @returns {UseHoverReturn<Target>} The state of the hover\n *\n * @example\n * const [ref, hovering] = useHover(options);\n */\nexport const useHover = ((...params: any[]) => {\n const target = (isTarget(params[0]) ? params[0] : undefined) as HookTarget | undefined;\n\n const options = (\n target\n ? typeof params[1] === 'object'\n ? params[1]\n : { onEntry: params[1] }\n : typeof params[0] === 'object'\n ? params[0]\n : { onEntry: params[0] }\n ) as UseHoverOptions | undefined;\n\n const [hovering, setHovering] = useState(false);\n const internalRef = useRefState<Element>();\n const internalOptionsRef = useRef(options);\n internalOptionsRef.current = options;\n\n useEffect(() => {\n if (!target && !internalRef.state) return;\n const element = (target ? getElement(target) : internalRef.current) as Element;\n\n if (!element) return;\n\n const onMouseEnter = (event: Event) => {\n internalOptionsRef.current?.onEntry?.(event);\n setHovering(true);\n };\n\n const onMouseLeave = (event: Event) => {\n internalOptionsRef.current?.onLeave?.(event);\n setHovering(false);\n };\n\n element.addEventListener('mouseenter', onMouseEnter);\n element.addEventListener('mouseleave', onMouseLeave);\n\n return () => {\n element.removeEventListener('mouseenter', onMouseEnter);\n element.removeEventListener('mouseleave', onMouseLeave);\n };\n }, [target, internalRef.state]);\n\n if (target) return hovering;\n return [internalRef, hovering] as const;\n}) as UseHover;\n"],"names":["useHover","params","target","isTarget","options","hovering","setHovering","useState","internalRef","useRefState","internalOptionsRef","useRef","useEffect","element","getElement","onMouseEnter","event","_b","_a","onMouseLeave"],"mappings":"mPAsEaA,EAAY,IAAIC,IAAkB,CACvC,MAAAC,EAAUC,WAASF,EAAO,CAAC,CAAC,EAAIA,EAAO,CAAC,EAAI,OAE5CG,EACJF,EACI,OAAOD,EAAO,CAAC,GAAM,SACnBA,EAAO,CAAC,EACR,CAAE,QAASA,EAAO,CAAC,CAAE,EACvB,OAAOA,EAAO,CAAC,GAAM,SACnBA,EAAO,CAAC,EACR,CAAE,QAASA,EAAO,CAAC,CAAE,EAGvB,CAACI,EAAUC,CAAW,EAAIC,EAAAA,SAAS,EAAK,EACxCC,EAAcC,EAAAA,YAAqB,EACnCC,EAAqBC,SAAOP,CAAO,EA4BzC,OA3BAM,EAAmB,QAAUN,EAE7BQ,EAAAA,UAAU,IAAM,CACd,GAAI,CAACV,GAAU,CAACM,EAAY,MAAO,OACnC,MAAMK,EAAWX,EAASY,EAAAA,WAAWZ,CAAM,EAAIM,EAAY,QAE3D,GAAI,CAACK,EAAS,OAER,MAAAE,EAAgBC,GAAiB,UAClBC,GAAAC,EAAAR,EAAA,UAAA,YAAAQ,EAAS,UAAT,MAAAD,EAAA,KAAAC,EAAmBF,GACtCV,EAAY,EAAI,CAClB,EAEMa,EAAgBH,GAAiB,UAClBC,GAAAC,EAAAR,EAAA,UAAA,YAAAQ,EAAS,UAAT,MAAAD,EAAA,KAAAC,EAAmBF,GACtCV,EAAY,EAAK,CACnB,EAEQ,OAAAO,EAAA,iBAAiB,aAAcE,CAAY,EAC3CF,EAAA,iBAAiB,aAAcM,CAAY,EAE5C,IAAM,CACHN,EAAA,oBAAoB,aAAcE,CAAY,EAC9CF,EAAA,oBAAoB,aAAcM,CAAY,CACxD,CACC,EAAA,CAACjB,EAAQM,EAAY,KAAK,CAAC,EAE1BN,EAAeG,EACZ,CAACG,EAAaH,CAAQ,CAC/B"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react"),m=require("../../utils/helpers/throttle.cjs"),h=["mousemove","mousedown","keydown","touchstart","wheel","resize"],v=6e4,w=(t=v,{initialValue:a=!1,events:o=h}={})=>{const[d,r]=s.useState(a),[l,E]=s.useState(Date.now());return s.useEffect(()=>{let e;const c=()=>r(!0),n=m.throttle(()=>{r(!1),E(Date.now()),clearTimeout(e),e=setTimeout(c,t)},500),u=()=>{document.hidden||n()};return e=setTimeout(c,t),o.forEach(i=>window.addEventListener(i,n)),document.addEventListener("visibilitychange",u),()=>{o.forEach(i=>window.addEventListener(i,n)),document.removeEventListener("visibilitychange",u),clearTimeout(e)}},[t,o]),{idle:d,lastActive:l}};exports.useIdle=w;
2
+ //# sourceMappingURL=useIdle.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useIdle.cjs","sources":["../../../../src/hooks/useIdle/useIdle.ts"],"sourcesContent":["import { useEffect, useState } from 'react';\n\nimport { throttle } from '@/utils/helpers';\n\n/** The use idle options type */\nexport interface UseIdleOptions {\n /** The idle events */\n events?: Array<keyof DocumentEventMap>;\n /** The idle state */\n initialValue?: boolean;\n}\n\nconst IDLE_EVENTS = [\n 'mousemove',\n 'mousedown',\n 'keydown',\n 'touchstart',\n 'wheel',\n 'resize'\n] satisfies Array<keyof DocumentEventMap>;\nconst ONE_MINUTE = 60e3;\n\n/** The use idle return type */\nexport interface UseIdleReturn {\n /** The idle state */\n idle: boolean;\n /** The last active time */\n lastActive: number;\n}\n\n/**\n * @name useIdle\n * @description - Hook that defines the logic when the user is idle\n * @category Sensors\n *\n * @param {number} [milliseconds=ONE_MINUTE] The idle time in milliseconds\n * @param {boolean} [options.initialState=false] The options for the hook\n * @param {Array<keyof WindowEventMap>} [options.events=IDLE_EVENTS]\n * @returns {UseIdleReturn} An object containing the idle state and the last active time\n *\n * @example\n * const { idle, lastActive } = useIdle();\n */\nexport const useIdle = (\n milliseconds = ONE_MINUTE,\n { initialValue = false, events = IDLE_EVENTS }: UseIdleOptions = {}\n): UseIdleReturn => {\n const [idle, setIdle] = useState(initialValue);\n const [lastActive, setLastActive] = useState(Date.now());\n\n useEffect(() => {\n let timeoutId: ReturnType<typeof setTimeout>;\n const onTimeout = () => setIdle(true);\n\n const onEvent = throttle(() => {\n setIdle(false);\n setLastActive(Date.now());\n clearTimeout(timeoutId);\n timeoutId = setTimeout(onTimeout, milliseconds);\n }, 500);\n\n const onVisibilitychange = () => {\n if (!document.hidden) onEvent();\n };\n\n timeoutId = setTimeout(onTimeout, milliseconds);\n\n events.forEach((event) => window.addEventListener(event, onEvent));\n document.addEventListener('visibilitychange', onVisibilitychange);\n\n return () => {\n events.forEach((event) => window.addEventListener(event, onEvent));\n document.removeEventListener('visibilitychange', onVisibilitychange);\n clearTimeout(timeoutId);\n };\n }, [milliseconds, events]);\n\n return { idle, lastActive };\n};\n"],"names":["IDLE_EVENTS","ONE_MINUTE","useIdle","milliseconds","initialValue","events","idle","setIdle","useState","lastActive","setLastActive","useEffect","timeoutId","onTimeout","onEvent","throttle","onVisibilitychange","event"],"mappings":"uJAYMA,EAAc,CAClB,YACA,YACA,UACA,aACA,QACA,QACF,EACMC,EAAa,IAuBNC,EAAU,CACrBC,EAAeF,EACf,CAAE,aAAAG,EAAe,GAAO,OAAAC,EAASL,CAAgC,EAAA,KAC/C,CAClB,KAAM,CAACM,EAAMC,CAAO,EAAIC,EAAAA,SAASJ,CAAY,EACvC,CAACK,EAAYC,CAAa,EAAIF,EAAAA,SAAS,KAAK,KAAK,EAEvDG,OAAAA,EAAAA,UAAU,IAAM,CACV,IAAAC,EACE,MAAAC,EAAY,IAAMN,EAAQ,EAAI,EAE9BO,EAAUC,EAAAA,SAAS,IAAM,CAC7BR,EAAQ,EAAK,EACCG,EAAA,KAAK,KAAK,EACxB,aAAaE,CAAS,EACVA,EAAA,WAAWC,EAAWV,CAAY,GAC7C,GAAG,EAEAa,EAAqB,IAAM,CAC1B,SAAS,QAAgBF,EAAA,CAChC,EAEY,OAAAF,EAAA,WAAWC,EAAWV,CAAY,EAE9CE,EAAO,QAASY,GAAU,OAAO,iBAAiBA,EAAOH,CAAO,CAAC,EACxD,SAAA,iBAAiB,mBAAoBE,CAAkB,EAEzD,IAAM,CACXX,EAAO,QAASY,GAAU,OAAO,iBAAiBA,EAAOH,CAAO,CAAC,EACxD,SAAA,oBAAoB,mBAAoBE,CAAkB,EACnE,aAAaJ,CAAS,CACxB,CAAA,EACC,CAACT,EAAcE,CAAM,CAAC,EAElB,CAAE,KAAAC,EAAM,WAAAG,CAAW,CAC5B"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const f=require("../useQuery/useQuery.cjs"),m=async(s,i={})=>new Promise((r,g)=>{const e=new Image,{srcset:o,sizes:c,class:a,loading:n,crossorigin:l,referrerPolicy:t}=i;e.src=s,o&&(e.srcset=o),c&&(e.sizes=c),a&&(e.className=a),n&&(e.loading=n),l&&(e.crossOrigin=l),t&&(e.referrerPolicy=t),e.onload=()=>r(e),e.onerror=g}),u=(s,i,r={})=>f.useQuery(()=>m(s,i),{keys:[s,...r.keys??[]],...r});exports.useImage=u;
2
+ //# sourceMappingURL=useImage.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useImage.cjs","sources":["../../../../src/hooks/useImage/useImage.ts"],"sourcesContent":["import type { UseQueryOptions, UseQueryReturn } from '../useQuery/useQuery';\n\nimport { useQuery } from '../useQuery/useQuery';\n\n/** The use image options */\nexport interface UseImageOptions {\n /** The alt of the image */\n alt?: string;\n /** The class of the image */\n class?: string;\n /** The crossorigin of the image */\n crossorigin?: string;\n /** The loading of the image */\n loading?: HTMLImageElement['loading'];\n /** The referrer policy of the image */\n referrerPolicy?: HTMLImageElement['referrerPolicy'];\n /** The sizes of the image */\n sizes?: string;\n /** The srcset of the image */\n srcset?: string;\n}\n\n/** The use image return type */\nexport type UseImageReturn = UseQueryReturn<HTMLImageElement>;\n\nconst loadImage = async (src: string, options: UseImageOptions = {}): Promise<HTMLImageElement> =>\n new Promise((resolve, reject) => {\n const img = new Image();\n const { srcset, sizes, class: className, loading, crossorigin, referrerPolicy } = options;\n\n img.src = src;\n if (srcset) img.srcset = srcset;\n if (sizes) img.sizes = sizes;\n if (className) img.className = className;\n if (loading) img.loading = loading;\n if (crossorigin) img.crossOrigin = crossorigin;\n\n if (referrerPolicy) img.referrerPolicy = referrerPolicy;\n\n img.onload = () => resolve(img);\n img.onerror = reject;\n });\n\n/**\n * @name useImage\n * @description - Hook that load an image in the browser\n * @category Browser\n *\n * @param {string} src The source of the image\n * @param {string} [options.srcset] The srcset of the image\n * @param {string} [options.sizes] The sizes of the image\n * @param {string} [options.alt] The alt of the image\n * @param {string} [options.class] The class of the image\n * @param {HTMLImageElement['loading']} [options.loading] The loading of the image\n * @param {string} [options.crossorigin] The crossorigin of the image\n * @param {HTMLImageElement['referrerPolicy']} [options.referrerPolicy] The referrerPolicy of the image\n * @param {DependencyList} [useQueryOptions.keys] The dependencies for the hook\n * @param {(data: Data) => void} [useQueryOptions.onSuccess] The callback function to be invoked on success\n * @param {(error: Error) => void} [useQueryOptions.onError] The callback function to be invoked on error\n * @param {number} [useQueryOptions.refetchInterval] The refetch interval\n * @param {boolean | number} [useQueryOptions.retry] The retry count of requests\n * @returns {UseImageReturn} An object with the state of the image\n *\n * @example\n * const { data, isLoading, isError, isSuccess, error, refetch, isRefetching } = useImage('https://example.com/image.png');\n */\nexport const useImage = (\n src: string,\n options?: UseImageOptions,\n useQueryOptions: Omit<\n UseQueryOptions<HTMLImageElement, HTMLImageElement>,\n 'initialData' | 'placeholderData' | 'select'\n > = {}\n) =>\n useQuery(() => loadImage(src, options), {\n keys: [src, ...(useQueryOptions.keys ?? [])],\n ...useQueryOptions\n });\n"],"names":["loadImage","src","options","resolve","reject","img","srcset","sizes","className","loading","crossorigin","referrerPolicy","useImage","useQueryOptions","useQuery"],"mappings":"4HAyBMA,EAAY,MAAOC,EAAaC,EAA2B,CAAA,IAC/D,IAAI,QAAQ,CAACC,EAASC,IAAW,CACzB,MAAAC,EAAM,IAAI,MACV,CAAE,OAAAC,EAAQ,MAAAC,EAAO,MAAOC,EAAW,QAAAC,EAAS,YAAAC,EAAa,eAAAC,GAAmBT,EAElFG,EAAI,IAAMJ,EACNK,MAAY,OAASA,GACrBC,MAAW,MAAQA,GACnBC,MAAe,UAAYA,GAC3BC,MAAa,QAAUA,GACvBC,MAAiB,YAAcA,GAE/BC,MAAoB,eAAiBA,GAErCN,EAAA,OAAS,IAAMF,EAAQE,CAAG,EAC9BA,EAAI,QAAUD,CAChB,CAAC,EAyBUQ,EAAW,CACtBX,EACAC,EACAW,EAGI,CAAA,IAEJC,EAAA,SAAS,IAAMd,EAAUC,EAAKC,CAAO,EAAG,CACtC,KAAM,CAACD,EAAK,GAAIY,EAAgB,MAAQ,CAAA,CAAG,EAC3C,GAAGA,CACL,CAAC"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("react"),L=require("../useEvent/useEvent.cjs"),T=require("../useRefState/useRefState.cjs"),m=require("../../utils/helpers/isTarget.cjs"),y=require("../../utils/helpers/getElement.cjs"),I=(...t)=>{const e=m.isTarget(t[0])?t[0]:void 0,i=e?t[1]:t[0],n=e?t[2]:t[1],l=(n==null?void 0:n.direction)??"bottom",u=(n==null?void 0:n.distance)??10,[s,a]=o.useState(!1),c=T.useRefState(),f=o.useRef(i);f.current=i;const d=L.useEvent(async r=>{if(s)return;const{clientHeight:S,scrollHeight:b,scrollTop:g,clientWidth:h,scrollWidth:v,scrollLeft:E}=r.target,R=b-(g+S),q=v-(E+h);({bottom:R,top:g,right:q,left:E})[l]<=u&&(a(!0),await f.current(r),a(!1))});return o.useEffect(()=>{if(!e&&!c.state)return;const r=e?y.getElement(e):c.current;if(r)return r.addEventListener("scroll",d),()=>{r.removeEventListener("scroll",d)}},[e,c.state,l,u]),e?s:{ref:c,loading:s}};exports.useInfiniteScroll=I;
2
+ //# sourceMappingURL=useInfiniteScroll.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useInfiniteScroll.cjs","sources":["../../../../src/hooks/useInfiniteScroll/useInfiniteScroll.ts"],"sourcesContent":["import { useEffect, useRef, useState } from 'react';\n\nimport type { HookTarget } from '@/utils/helpers';\n\nimport { getElement, isTarget } from '@/utils/helpers';\n\nimport type { StateRef } from '../useRefState/useRefState';\n\nimport { useEvent } from '../useEvent/useEvent';\nimport { useRefState } from '../useRefState/useRefState';\n\n/** The use infinite scroll options type */\nexport interface UseInfiniteScrollOptions {\n /** The direction to trigger the callback */\n direction?: 'bottom' | 'left' | 'right' | 'top';\n /** The distance in pixels to trigger the callback */\n distance?: number;\n}\n\nexport interface UseInfiniteScroll {\n (\n target: HookTarget,\n callback: (event: Event) => void,\n options?: UseInfiniteScrollOptions\n ): boolean;\n\n <Target extends Element>(\n callback: (event: Event) => void,\n options?: UseInfiniteScrollOptions,\n target?: never\n ): {\n ref: StateRef<Target>;\n loading: boolean;\n };\n}\n\n/**\n * @name useInfiniteScroll\n * @description - Hook that defines the logic for infinite scroll\n * @category Sensors\n *\n * @overload\n * @template Target The target element\n * @param {(event: Event) => void} callback The callback to execute when a click outside the target is detected\n * @param {number} [options.distance=10] The distance in pixels to trigger the callback\n * @param {string} [options.direction='bottom'] The direction to trigger the callback\n * @returns {{ ref: StateRef<Target>, loading: boolean }} An object containing the ref and loading\n *\n * @example\n * const { ref, loading } = useInfiniteScroll(() => console.log('infinite scroll'));\n *\n * @overload\n * @param {HookTarget} target The target element to detect infinite scroll for\n * @param {(event: Event) => void} callback The callback to execute when a click outside the target is detected\n * @param {number} [options.distance=10] The distance in pixels to trigger the callback\n * @param {string} [options.direction='bottom'] The direction to trigger the callback\n * @returns {boolean} A loading indicator of the infinite scroll\n *\n * @example\n * const loading = useInfiniteScroll(ref, () => console.log('infinite scroll'));\n */\nexport const useInfiniteScroll = ((...params: any[]) => {\n const target = (isTarget(params[0]) ? params[0] : undefined) as HookTarget | undefined;\n const callback = (target ? params[1] : params[0]) as (event: Event) => void;\n const options = (target ? params[2] : params[1]) as UseInfiniteScrollOptions | undefined;\n\n const direction = options?.direction ?? 'bottom';\n const distance = options?.distance ?? 10;\n\n const [loading, setIsLoading] = useState(false);\n\n const internalRef = useRefState<Element>();\n const internalCallbackRef = useRef(callback);\n internalCallbackRef.current = callback;\n\n const onLoadMore = useEvent(async (event: Event) => {\n if (loading) return;\n const { clientHeight, scrollHeight, scrollTop, clientWidth, scrollWidth, scrollLeft } =\n event.target as Element;\n const scrollBottom = scrollHeight - (scrollTop + clientHeight);\n const scrollRight = scrollWidth - (scrollLeft + clientWidth);\n\n const distances = {\n bottom: scrollBottom,\n top: scrollTop,\n right: scrollRight,\n left: scrollLeft\n };\n\n if (distances[direction] <= distance) {\n setIsLoading(true);\n await internalCallbackRef.current(event);\n setIsLoading(false);\n }\n });\n\n useEffect(() => {\n if (!target && !internalRef.state) return;\n const element = (target ? getElement(target) : internalRef.current) as Element;\n if (!element) return;\n\n element.addEventListener('scroll', onLoadMore);\n\n return () => {\n element.removeEventListener('scroll', onLoadMore);\n };\n }, [target, internalRef.state, direction, distance]);\n\n if (target) return loading;\n return {\n ref: internalRef,\n loading\n };\n}) as UseInfiniteScroll;\n"],"names":["useInfiniteScroll","params","target","isTarget","callback","options","direction","distance","loading","setIsLoading","useState","internalRef","useRefState","internalCallbackRef","useRef","onLoadMore","useEvent","event","clientHeight","scrollHeight","scrollTop","clientWidth","scrollWidth","scrollLeft","scrollBottom","scrollRight","useEffect","element","getElement"],"mappings":"yRA6DaA,EAAqB,IAAIC,IAAkB,CAChD,MAAAC,EAAUC,WAASF,EAAO,CAAC,CAAC,EAAIA,EAAO,CAAC,EAAI,OAC5CG,EAAYF,EAASD,EAAO,CAAC,EAAIA,EAAO,CAAC,EACzCI,EAAWH,EAASD,EAAO,CAAC,EAAIA,EAAO,CAAC,EAExCK,GAAYD,GAAA,YAAAA,EAAS,YAAa,SAClCE,GAAWF,GAAA,YAAAA,EAAS,WAAY,GAEhC,CAACG,EAASC,CAAY,EAAIC,EAAAA,SAAS,EAAK,EAExCC,EAAcC,EAAAA,YAAqB,EACnCC,EAAsBC,SAAOV,CAAQ,EAC3CS,EAAoB,QAAUT,EAExB,MAAAW,EAAaC,WAAS,MAAOC,GAAiB,CAClD,GAAIT,EAAS,OACP,KAAA,CAAE,aAAAU,EAAc,aAAAC,EAAc,UAAAC,EAAW,YAAAC,EAAa,YAAAC,EAAa,WAAAC,GACvEN,EAAM,OACFO,EAAeL,GAAgBC,EAAYF,GAC3CO,EAAcH,GAAeC,EAAaF,IAE9B,CAChB,OAAQG,EACR,IAAKJ,EACL,MAAOK,EACP,KAAMF,CACR,GAEcjB,CAAS,GAAKC,IAC1BE,EAAa,EAAI,EACX,MAAAI,EAAoB,QAAQI,CAAK,EACvCR,EAAa,EAAK,EACpB,CACD,EAcD,OAZAiB,EAAAA,UAAU,IAAM,CACd,GAAI,CAACxB,GAAU,CAACS,EAAY,MAAO,OACnC,MAAMgB,EAAWzB,EAAS0B,EAAAA,WAAW1B,CAAM,EAAIS,EAAY,QAC3D,GAAKgB,EAEG,OAAAA,EAAA,iBAAiB,SAAUZ,CAAU,EAEtC,IAAM,CACHY,EAAA,oBAAoB,SAAUZ,CAAU,CAClD,CAAA,EACC,CAACb,EAAQS,EAAY,MAAOL,EAAWC,CAAQ,CAAC,EAE/CL,EAAeM,EACZ,CACL,IAAKG,EACL,QAAAH,CACF,CACF"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("react"),d=require("../useRefState/useRefState.cjs"),v=require("../../utils/helpers/isTarget.cjs"),a=require("../../utils/helpers/getElement.cjs"),E=(...n)=>{const r=v.isTarget(n[0])?n[0]:void 0,e=r?n[1]:n[0],i=(e==null?void 0:e.enabled)??!0,[t,b]=u.useState(),c=d.useRefState(),s=u.useRef(e==null?void 0:e.onChange);return s.current=e==null?void 0:e.onChange,u.useEffect(()=>{if(!i&&!r&&!c.state)return;const g=r?a.getElement(r):c.current;if(!g)return;const o=new IntersectionObserver(([f])=>{var l;b(f),(l=s.current)==null||l.call(s,f)},{...e,root:e!=null&&e.root?a.getElement(e.root):document});return o.observe(g),()=>{o.disconnect()}},[r,c.state,e==null?void 0:e.rootMargin,e==null?void 0:e.threshold,e==null?void 0:e.root,i]),r?{entry:t,inView:!!(t!=null&&t.isIntersecting)}:{ref:c,entry:t,inView:!!(t!=null&&t.isIntersecting)}};exports.useIntersectionObserver=E;
2
+ //# sourceMappingURL=useIntersectionObserver.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useIntersectionObserver.cjs","sources":["../../../../src/hooks/useIntersectionObserver/useIntersectionObserver.ts"],"sourcesContent":["import { useEffect, useRef, useState } from 'react';\n\nimport type { HookTarget } from '@/utils/helpers';\n\nimport { getElement, isTarget } from '@/utils/helpers';\n\nimport type { StateRef } from '../useRefState/useRefState';\n\nimport { useRefState } from '../useRefState/useRefState';\n\n/** The intersection observer options type */\nexport interface UseIntersectionObserverOptions extends Omit<IntersectionObserverInit, 'root'> {\n enabled?: boolean;\n root?: HookTarget;\n onChange?: (entry: IntersectionObserverEntry) => void;\n}\n\n/** The intersection observer return type */\nexport interface UseIntersectionObserverReturn {\n entry?: IntersectionObserverEntry;\n inView: boolean;\n}\n\nexport interface UseIntersectionObserver {\n <Target extends Element>(\n options?: UseIntersectionObserverOptions,\n target?: never\n ): UseIntersectionObserverReturn & { ref: StateRef<Target> };\n\n (target: HookTarget, options?: UseIntersectionObserverOptions): UseIntersectionObserverReturn;\n}\n\n/**\n * @name useIntersectionObserver\n * @description - Hook that gives you intersection observer state\n * @category Browser\n *\n * @overload\n * @param {HookTarget} target The target element to detect intersection\n * @param {boolean} [options.enabled=true] The IntersectionObserver options\n * @param {((entries: IntersectionObserverEntry[], observer: IntersectionObserver) => void) | undefined} [options.onChange] The callback to execute when intersection is detected\n * @param {HookTarget} [options.root] The root element to observe\n * @returns {UseIntersectionObserverReturn} An object containing the state and the supported status\n *\n * @example\n * const { ref, entry, inView } = useIntersectionObserver();\n *\n * @overload\n * @template Target The target element\n * @param {boolean} [options.enabled=true] The IntersectionObserver options\n * @param {((entries: IntersectionObserverEntry[], observer: IntersectionObserver) => void) | undefined} [options.onChange] The callback to execute when intersection is detected\n * @param {HookTarget} [options.root] The root element to observe\n * @returns {UseIntersectionObserverReturn & { ref: StateRef<Target> }} A React ref to attach to the target element\n *\n * @example\n * const { entry, inView } = useIntersectionObserver(ref);\n */\nexport const useIntersectionObserver = ((...params: any[]) => {\n const target = (isTarget(params[0]) ? params[0] : undefined) as HookTarget | undefined;\n const options = (target ? params[1] : params[0]) as UseIntersectionObserverOptions | undefined;\n const enabled = options?.enabled ?? true;\n\n const [entry, setEntry] = useState<IntersectionObserverEntry>();\n\n const internalRef = useRefState<Element>();\n const internalOnChangeRef = useRef<UseIntersectionObserverOptions['onChange']>(options?.onChange);\n internalOnChangeRef.current = options?.onChange;\n\n useEffect(() => {\n if (!enabled && !target && !internalRef.state) return;\n\n const element = target ? getElement(target) : internalRef.current;\n if (!element) return;\n\n const observer = new IntersectionObserver(\n ([entry]) => {\n setEntry(entry);\n internalOnChangeRef.current?.(entry);\n },\n {\n ...options,\n root: options?.root ? (getElement(options.root) as Document | Element) : document\n }\n );\n\n observer.observe(element as Element);\n\n return () => {\n observer.disconnect();\n };\n }, [target, internalRef.state, options?.rootMargin, options?.threshold, options?.root, enabled]);\n\n if (target) return { entry, inView: !!entry?.isIntersecting };\n return {\n ref: internalRef,\n entry,\n inView: !!entry?.isIntersecting\n };\n}) as UseIntersectionObserver;\n"],"names":["useIntersectionObserver","params","target","isTarget","options","enabled","entry","setEntry","useState","internalRef","useRefState","internalOnChangeRef","useRef","useEffect","element","getElement","observer","_a"],"mappings":"mPAyDaA,EAA2B,IAAIC,IAAkB,CACtD,MAAAC,EAAUC,WAASF,EAAO,CAAC,CAAC,EAAIA,EAAO,CAAC,EAAI,OAC5CG,EAAWF,EAASD,EAAO,CAAC,EAAIA,EAAO,CAAC,EACxCI,GAAUD,GAAA,YAAAA,EAAS,UAAW,GAE9B,CAACE,EAAOC,CAAQ,EAAIC,WAAoC,EAExDC,EAAcC,EAAAA,YAAqB,EACnCC,EAAsBC,EAAAA,OAAmDR,GAAA,YAAAA,EAAS,QAAQ,EA2B5F,OA1BJO,EAAoB,QAAUP,GAAA,YAAAA,EAAS,SAEvCS,EAAAA,UAAU,IAAM,CACd,GAAI,CAACR,GAAW,CAACH,GAAU,CAACO,EAAY,MAAO,OAE/C,MAAMK,EAAUZ,EAASa,EAAAA,WAAWb,CAAM,EAAIO,EAAY,QAC1D,GAAI,CAACK,EAAS,OAEd,MAAME,EAAW,IAAI,qBACnB,CAAC,CAACV,CAAK,IAAM,OACXC,EAASD,CAAK,GACdW,EAAAN,EAAoB,UAApB,MAAAM,EAAA,KAAAN,EAA8BL,EAChC,EACA,CACE,GAAGF,EACH,KAAMA,GAAA,MAAAA,EAAS,KAAQW,EAAW,WAAAX,EAAQ,IAAI,EAA2B,QAAA,CAE7E,EAEA,OAAAY,EAAS,QAAQF,CAAkB,EAE5B,IAAM,CACXE,EAAS,WAAW,CACtB,CACC,EAAA,CAACd,EAAQO,EAAY,MAAOL,GAAA,YAAAA,EAAS,WAAYA,GAAA,YAAAA,EAAS,UAAWA,GAAA,YAAAA,EAAS,KAAMC,CAAO,CAAC,EAE3FH,EAAe,CAAE,MAAAI,EAAO,OAAQ,CAAC,EAACA,GAAA,MAAAA,EAAO,eAAe,EACrD,CACL,IAAKG,EACL,MAAAH,EACA,OAAQ,CAAC,EAACA,GAAA,MAAAA,EAAO,eACnB,CACF"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react"),f=(...e)=>{const l=e[0],n=(typeof e[1]=="number"?e[1]:e[1].interval)??1e3,c=typeof e[1]=="object"?e[1]:e[2],i=(c==null?void 0:c.immediately)??!0,[t,u]=r.useState(i??!0),s=r.useRef(),o=r.useRef(l);return o.current=l,r.useEffect(()=>{if(t)return s.current=setInterval(()=>o.current(),n),()=>{clearInterval(s.current)}},[t,n]),{active:t,pause:()=>u(!1),resume:()=>{n<=0||u(!0)},toggle:()=>u(!t)}};exports.useInterval=f;
2
+ //# sourceMappingURL=useInterval.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useInterval.cjs","sources":["../../../../src/hooks/useInterval/useInterval.ts"],"sourcesContent":["import { useEffect, useRef, useState } from 'react';\n\n/** The use interval options */\nexport interface UseIntervalOptions {\n /** Start the interval immediately */\n immediately?: boolean;\n}\n\n/** The use interval return type */\nexport interface UseIntervalReturn {\n /** Is the interval active */\n active: boolean;\n /** Pause the interval */\n pause: () => void;\n /** Resume the interval */\n resume: () => void;\n /** Toggle the interval */\n toggle: () => void;\n}\n\ninterface UseInterval {\n (callback: () => void, interval?: number, options?: UseIntervalOptions): UseIntervalReturn;\n\n (callback: () => void, options?: UseIntervalOptions & { interval?: number }): UseIntervalReturn;\n}\n\n/**\n * @name useInterval\n * @description - Hook that makes and interval and returns controlling functions\n * @category Time\n *\n * @overload\n * @param {() => void} callback Any callback function\n * @param {number} [interval=1000] Time in milliseconds\n * @param {boolean} [options.immediately=true] Start the interval immediately\n * @returns {UseIntervalReturn}\n *\n * @example\n * const { active, pause, resume, toggle } = useInterval(() => console.log('inside interval'), 2500);\n *\n * @overload\n * @param {() => void} callback Any callback function\n * @param {number} [options.interval=1000] Time in milliseconds\n * @param {boolean} [options.immediately=true] Start the interval immediately\n *\n * @example\n * const { active, pause, resume, toggle } = useInterval(() => console.log('inside interval'), { interval: 2500 });\n */\nexport const useInterval = ((...params: any[]): UseIntervalReturn => {\n const callback = params[0] as () => void;\n const interval =\n ((typeof params[1] === 'number'\n ? params[1]\n : (params[1] as UseIntervalOptions & { interval?: number }).interval) as number) ?? 1000;\n const options =\n typeof params[1] === 'object'\n ? (params[1] as (UseIntervalOptions & { interval?: number }) | undefined)\n : (params[2] as UseIntervalOptions | undefined);\n const immediately = options?.immediately ?? true;\n\n const [active, setActive] = useState<boolean>(immediately ?? true);\n\n const intervalIdRef = useRef<ReturnType<typeof setInterval>>();\n const internalCallbackRef = useRef(callback);\n internalCallbackRef.current = callback;\n\n useEffect(() => {\n if (!active) return;\n\n intervalIdRef.current = setInterval(() => internalCallbackRef.current(), interval);\n return () => {\n clearInterval(intervalIdRef.current);\n };\n }, [active, interval]);\n\n const pause = () => setActive(false);\n\n const resume = () => {\n if (interval <= 0) return;\n setActive(true);\n };\n\n const toggle = () => setActive(!active);\n\n return {\n active,\n pause,\n resume,\n toggle\n };\n}) as UseInterval;\n"],"names":["useInterval","params","callback","interval","options","immediately","active","setActive","useState","intervalIdRef","useRef","internalCallbackRef","useEffect"],"mappings":"yGAgDaA,EAAe,IAAIC,IAAqC,CAC7D,MAAAC,EAAWD,EAAO,CAAC,EACnBE,GACF,OAAOF,EAAO,CAAC,GAAM,SACnBA,EAAO,CAAC,EACPA,EAAO,CAAC,EAAiD,WAAwB,IAClFG,EACJ,OAAOH,EAAO,CAAC,GAAM,SAChBA,EAAO,CAAC,EACRA,EAAO,CAAC,EACTI,GAAcD,GAAA,YAAAA,EAAS,cAAe,GAEtC,CAACE,EAAQC,CAAS,EAAIC,EAAAA,SAAkBH,GAAe,EAAI,EAE3DI,EAAgBC,EAAAA,OAAuC,EACvDC,EAAsBD,SAAOR,CAAQ,EAC3C,OAAAS,EAAoB,QAAUT,EAE9BU,EAAAA,UAAU,IAAM,CACd,GAAKN,EAEL,OAAAG,EAAc,QAAU,YAAY,IAAME,EAAoB,UAAWR,CAAQ,EAC1E,IAAM,CACX,cAAcM,EAAc,OAAO,CACrC,CAAA,EACC,CAACH,EAAQH,CAAQ,CAAC,EAWd,CACL,OAAAG,EACA,MAXY,IAAMC,EAAU,EAAK,EAYjC,OAVa,IAAM,CACfJ,GAAY,GAChBI,EAAU,EAAI,CAChB,EAQE,OANa,IAAMA,EAAU,CAACD,CAAM,CAOtC,CACF"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react"),t=()=>{const e=r.useRef(!0);return e.current===!0?(e.current=!1,!0):e.current};exports.useIsFirstRender=t;
2
+ //# sourceMappingURL=useIsFirstRender.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useIsFirstRender.cjs","sources":["../../../../src/hooks/useIsFirstRender/useIsFirstRender.ts"],"sourcesContent":["import { useRef } from 'react';\n\n/**\n * @name useIsFirstRender\n * @description - Hook that returns true if the component is first render\n * @category Lifecycle\n *\n * @returns {boolean} True if the component is first render\n *\n * @example\n * const isFirstRender = useIsFirstRender();\n */\nexport const useIsFirstRender = () => {\n const renderRef = useRef(true);\n\n if (renderRef.current === true) {\n renderRef.current = false;\n return true;\n }\n\n return renderRef.current;\n};\n"],"names":["useIsFirstRender","renderRef","useRef"],"mappings":"yGAYaA,EAAmB,IAAM,CAC9B,MAAAC,EAAYC,SAAO,EAAI,EAEzB,OAAAD,EAAU,UAAY,IACxBA,EAAU,QAAU,GACb,IAGFA,EAAU,OACnB"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react"),t=typeof window<"u"?e.useLayoutEffect:e.useEffect;exports.useIsomorphicLayoutEffect=t;
2
+ //# sourceMappingURL=useIsomorphicLayoutEffect.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useIsomorphicLayoutEffect.cjs","sources":["../../../../src/hooks/useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.ts"],"sourcesContent":["import { useEffect, useLayoutEffect } from 'react';\n\n/**\n * @name useIsomorphicLayoutEffect\n * @description - Hook conditionally selects either `useLayoutEffect` or `useEffect` based on the environment\n * @category Lifecycle\n *\n * @example\n * useIsomorphicLayoutEffect(() => console.log('effect'), [])\n */\nexport const useIsomorphicLayoutEffect =\n typeof window !== 'undefined' ? useLayoutEffect : useEffect;\n"],"names":["useIsomorphicLayoutEffect","useLayoutEffect","useEffect"],"mappings":"yGAUaA,EACX,OAAO,OAAW,IAAcC,kBAAkBC,EAAAA"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("react"),l=require("../useRefState/useRefState.cjs"),g=require("../../utils/helpers/isTarget.cjs"),w=require("../../utils/helpers/getElement.cjs"),S=(...s)=>{const e=g.isTarget(s[0])?s[0]:void 0,d=e?s[1]:s[0],f=e?s[2]:s[1],[k,v]=i.useState(!1),c=l.useRefState(window),t=i.useRef(d);t.current=d;const r=i.useRef(f);return r.current=f,i.useEffect(()=>{if(!e&&!c.state)return;const u=e?w.getElement(e):c.current;if(!u)return;const a=y=>{var o;const n=y;(Array.isArray(t.current)?t.current.includes(n.key):n.key===t.current)&&(v(!0),(o=r.current)==null||o.call(r,!0,n))},E=y=>{var o;const n=y;(Array.isArray(t.current)?t.current.includes(n.key):n.key===t.current)&&(v(!1),(o=r.current)==null||o.call(r,!1,n))};return u.addEventListener("keydown",a),u.addEventListener("keyup",E),()=>{u.removeEventListener("keydown",a),u.removeEventListener("keyup",E)}},[e,c.state]),e?k:{pressed:k,ref:c}};exports.useKeyPress=S;
2
+ //# sourceMappingURL=useKeyPress.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useKeyPress.cjs","sources":["../../../../src/hooks/useKeyPress/useKeyPress.ts"],"sourcesContent":["import { useEffect, useRef, useState } from 'react';\n\nimport type { HookTarget } from '@/utils/helpers';\n\nimport { getElement, isTarget } from '@/utils/helpers';\n\nimport type { StateRef } from '../useRefState/useRefState';\n\nimport { useRefState } from '../useRefState/useRefState';\n\n/** The key or keys to listen for */\nexport type UseKeyPressKey = string | string[];\n\n/** The callback function to be invoked when key is pressed */\nexport type UseKeyPressCallback = (pressed: boolean, event: KeyboardEvent) => void;\n\nexport interface UseKeyPress {\n (target: HookTarget | Window, key: UseKeyPressKey, callback?: UseKeyPressCallback): boolean;\n\n <Target extends Element>(\n key: UseKeyPressKey,\n callback?: UseKeyPressCallback,\n target?: never\n ): { pressed: boolean; ref: StateRef<Target> };\n}\n\n/**\n * @name useKeyPress\n * @description - Hook that listens for key press events\n * @category Sensors\n *\n * @overload\n * @param {HookTarget} [target=window] The target to attach the event listeners to\n * @param {UseKeyPressKey} key The key or keys to listen for\n * @param {(pressed: boolean, event: KeyboardEvent) => void} [callback] Callback function invoked when key is pressed\n * @returns {boolean} The pressed state of the key\n *\n * @example\n * const isKeyPressed = useKeyPress('a', window);\n *\n * @overload\n * @template Target The target element type\n * @param {UseKeyPressKey} key The key or keys to listen for\n * @param {(pressed: boolean, event: KeyboardEvent) => void} [callback] Callback function invoked when key is pressed\n * @returns {{ pressed: boolean; ref: StateRef<Target> }} An object containing the pressed state and ref\n *\n * @example\n * const { pressed, ref } = useKeyPress('a');\n */\nexport const useKeyPress = ((...params: any[]) => {\n const target = isTarget(params[0]) ? params[0] : undefined;\n const key = (target ? params[1] : params[0]) as UseKeyPressKey;\n const callback = (target ? params[2] : params[1]) as UseKeyPressCallback | undefined;\n\n const [pressed, setPressed] = useState(false);\n const internalRef = useRefState(window);\n\n const keyRef = useRef(key);\n keyRef.current = key;\n const callbackRef = useRef(callback);\n callbackRef.current = callback;\n\n useEffect(() => {\n if (!target && !internalRef.state) return;\n\n const element = (target ? getElement(target) : internalRef.current) as Element;\n if (!element) return;\n\n const onKeyDown = (event: Event) => {\n const keyboardEvent = event as KeyboardEvent;\n if (\n Array.isArray(keyRef.current)\n ? keyRef.current.includes(keyboardEvent.key)\n : keyboardEvent.key === keyRef.current\n ) {\n setPressed(true);\n callbackRef.current?.(true, keyboardEvent);\n }\n };\n\n const onKeyUp = (event: Event) => {\n const keyboardEvent = event as KeyboardEvent;\n if (\n Array.isArray(keyRef.current)\n ? keyRef.current.includes(keyboardEvent.key)\n : keyboardEvent.key === keyRef.current\n ) {\n setPressed(false);\n callbackRef.current?.(false, keyboardEvent);\n }\n };\n\n element.addEventListener('keydown', onKeyDown);\n element.addEventListener('keyup', onKeyUp);\n\n return () => {\n element.removeEventListener('keydown', onKeyDown);\n element.removeEventListener('keyup', onKeyUp);\n };\n }, [target, internalRef.state]);\n\n if (target) return pressed;\n return { pressed, ref: internalRef };\n}) as UseKeyPress;\n"],"names":["useKeyPress","params","target","isTarget","key","callback","pressed","setPressed","useState","internalRef","useRefState","keyRef","useRef","callbackRef","useEffect","element","getElement","onKeyDown","event","keyboardEvent","_a","onKeyUp"],"mappings":"mPAiDaA,EAAe,IAAIC,IAAkB,CAC1C,MAAAC,EAASC,WAASF,EAAO,CAAC,CAAC,EAAIA,EAAO,CAAC,EAAI,OAC3CG,EAAOF,EAASD,EAAO,CAAC,EAAIA,EAAO,CAAC,EACpCI,EAAYH,EAASD,EAAO,CAAC,EAAIA,EAAO,CAAC,EAEzC,CAACK,EAASC,CAAU,EAAIC,EAAAA,SAAS,EAAK,EACtCC,EAAcC,cAAY,MAAM,EAEhCC,EAASC,SAAOR,CAAG,EACzBO,EAAO,QAAUP,EACX,MAAAS,EAAcD,SAAOP,CAAQ,EA0CnC,OAzCAQ,EAAY,QAAUR,EAEtBS,EAAAA,UAAU,IAAM,CACd,GAAI,CAACZ,GAAU,CAACO,EAAY,MAAO,OAEnC,MAAMM,EAAWb,EAASc,EAAAA,WAAWd,CAAM,EAAIO,EAAY,QAC3D,GAAI,CAACM,EAAS,OAER,MAAAE,EAAaC,GAAiB,OAClC,MAAMC,EAAgBD,GAEpB,MAAM,QAAQP,EAAO,OAAO,EACxBA,EAAO,QAAQ,SAASQ,EAAc,GAAG,EACzCA,EAAc,MAAQR,EAAO,WAEjCJ,EAAW,EAAI,GACHa,EAAAP,EAAA,UAAA,MAAAO,EAAA,KAAAP,EAAU,GAAMM,GAEhC,EAEME,EAAWH,GAAiB,OAChC,MAAMC,EAAgBD,GAEpB,MAAM,QAAQP,EAAO,OAAO,EACxBA,EAAO,QAAQ,SAASQ,EAAc,GAAG,EACzCA,EAAc,MAAQR,EAAO,WAEjCJ,EAAW,EAAK,GACJa,EAAAP,EAAA,UAAA,MAAAO,EAAA,KAAAP,EAAU,GAAOM,GAEjC,EAEQ,OAAAJ,EAAA,iBAAiB,UAAWE,CAAS,EACrCF,EAAA,iBAAiB,QAASM,CAAO,EAElC,IAAM,CACHN,EAAA,oBAAoB,UAAWE,CAAS,EACxCF,EAAA,oBAAoB,QAASM,CAAO,CAC9C,CACC,EAAA,CAACnB,EAAQO,EAAY,KAAK,CAAC,EAE1BP,EAAeI,EACZ,CAAE,QAAAA,EAAS,IAAKG,CAAY,CACrC"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react"),a=require("../useRefState/useRefState.cjs"),k=require("../../utils/helpers/isTarget.cjs"),E=require("../../utils/helpers/getElement.cjs"),g=(...t)=>{const r=k.isTarget(t[0])?t[0]:void 0,y=r?t[1]:t[0],f=r?t[2]:t[1],e=r?t[3]:t[2],c=a.useRefState(window),n=s.useRef(y);n.current=y;const i=s.useRef(f);if(i.current=f,s.useEffect(()=>{const u=r?E.getElement(r):c.current;if(!u)return;const v=l=>{const d=l;(Array.isArray(n.current)?n.current:[n.current]).includes(d.key)&&i.current(d)};return u.addEventListener("keydown",v,{capture:e==null?void 0:e.capture,passive:e==null?void 0:e.passive,once:e==null?void 0:e.once}),()=>{u.removeEventListener("keydown",v,{capture:e==null?void 0:e.capture})}},[r,c.state,e==null?void 0:e.capture,e==null?void 0:e.passive,e==null?void 0:e.once]),!r)return c};exports.useKeyPressEvent=g;
2
+ //# sourceMappingURL=useKeyPressEvent.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useKeyPressEvent.cjs","sources":["../../../../src/hooks/useKeyPressEvent/useKeyPressEvent.ts"],"sourcesContent":["import { useEffect, useRef } from 'react';\n\nimport type { HookTarget } from '@/utils/helpers';\n\nimport { getElement, isTarget } from '@/utils/helpers';\n\nimport type { StateRef } from '../useRefState/useRefState';\n\nimport { useRefState } from '../useRefState/useRefState';\n\n/** The key or keys to listen for */\nexport type UseKeyPressEventKey = string | string[];\n\n/** The use key press event options type */\nexport interface UseKeyPressEventOptions {\n /** Whether the event should be captured */\n capture?: boolean;\n /** Whether the event listener should only be triggered once */\n once?: boolean;\n /** Whether the event listener should be passive */\n passive?: boolean;\n}\n\nexport interface UseKeyPressEvent {\n (\n target: HookTarget | Window,\n key: UseKeyPressEventKey,\n listener: (event: KeyboardEvent) => void,\n options?: UseKeyPressEventOptions\n ): void;\n\n <Target extends Element>(\n key: UseKeyPressEventKey,\n listener: (event: KeyboardEvent) => void,\n options?: UseKeyPressEventOptions,\n target?: never\n ): { ref: StateRef<Target> };\n}\n\n/**\n * @name useKeyPressEvent\n * @description - Hook that listens for key press events on specified targets\n * @category Sensors\n *\n * @overload\n * @param {UseKeyPressEventKey} key The key or array of keys to listen for.\n * @param {HookTarget | Window} target The target to attach the event listener to.\n * @param {(event: KeyboardEvent) => void} listener The callback function to be executed when the specified key or keys are pressed.\n * @param {UseKeyPressEventOptions} [options] The options for the event listener.\n * @returns {void}\n *\n * @example\n * useKeyPressEvent(ref, 'Enter', () => console.log('pressed'));\n *\n * @overload\n * @template Target extends Element\n * @param {UseKeyPressEventKey} key The key or array of keys to listen for.\n * @param {(event: KeyboardEvent) => void} listener The callback function to be executed when the specified key or keys are pressed.\n * @param {UseKeyPressEventOptions} [options] The options for the event listener.\n * @returns {{ ref: StateRef<Target> }} An object containing the ref\n *\n * @example\n * const ref = useKeyPressEvent('Enter', (event) => console.log('pressed'));\n */\nexport const useKeyPressEvent = ((...params: any[]) => {\n const target = isTarget(params[0]) ? params[0] : undefined;\n const key = (target ? params[1] : params[0]) as UseKeyPressEventKey;\n const listener = (target ? params[2] : params[1]) as (event: KeyboardEvent) => void;\n const options = (target ? params[3] : params[2]) as UseKeyPressEventOptions | undefined;\n\n const internalRef = useRefState(window);\n\n const keyRef = useRef(key);\n keyRef.current = key;\n const listenerRef = useRef(listener);\n listenerRef.current = listener;\n\n useEffect(() => {\n const element = (target ? getElement(target) : internalRef.current) as Element;\n if (!element) return;\n\n const onKeyDown = (event: Event) => {\n const keyboardEvent = event as KeyboardEvent;\n const keys = Array.isArray(keyRef.current) ? keyRef.current : [keyRef.current];\n if (keys.includes(keyboardEvent.key)) {\n listenerRef.current(keyboardEvent);\n }\n };\n\n element.addEventListener('keydown', onKeyDown, {\n capture: options?.capture,\n passive: options?.passive,\n once: options?.once\n });\n\n return () => {\n element.removeEventListener('keydown', onKeyDown, {\n capture: options?.capture\n });\n };\n }, [target, internalRef.state, options?.capture, options?.passive, options?.once]);\n\n if (target) return;\n return internalRef;\n}) as UseKeyPressEvent;\n"],"names":["useKeyPressEvent","params","target","isTarget","key","listener","options","internalRef","useRefState","keyRef","useRef","listenerRef","useEffect","element","getElement","onKeyDown","event","keyboardEvent"],"mappings":"mPAgEaA,EAAoB,IAAIC,IAAkB,CAC/C,MAAAC,EAASC,WAASF,EAAO,CAAC,CAAC,EAAIA,EAAO,CAAC,EAAI,OAC3CG,EAAOF,EAASD,EAAO,CAAC,EAAIA,EAAO,CAAC,EACpCI,EAAYH,EAASD,EAAO,CAAC,EAAIA,EAAO,CAAC,EACzCK,EAAWJ,EAASD,EAAO,CAAC,EAAIA,EAAO,CAAC,EAExCM,EAAcC,cAAY,MAAM,EAEhCC,EAASC,SAAON,CAAG,EACzBK,EAAO,QAAUL,EACX,MAAAO,EAAcD,SAAOL,CAAQ,EA4BnC,GA3BAM,EAAY,QAAUN,EAEtBO,EAAAA,UAAU,IAAM,CACd,MAAMC,EAAWX,EAASY,EAAAA,WAAWZ,CAAM,EAAIK,EAAY,QAC3D,GAAI,CAACM,EAAS,OAER,MAAAE,EAAaC,GAAiB,CAClC,MAAMC,EAAgBD,GACT,MAAM,QAAQP,EAAO,OAAO,EAAIA,EAAO,QAAU,CAACA,EAAO,OAAO,GACpE,SAASQ,EAAc,GAAG,GACjCN,EAAY,QAAQM,CAAa,CAErC,EAEQ,OAAAJ,EAAA,iBAAiB,UAAWE,EAAW,CAC7C,QAAST,GAAA,YAAAA,EAAS,QAClB,QAASA,GAAA,YAAAA,EAAS,QAClB,KAAMA,GAAA,YAAAA,EAAS,IAAA,CAChB,EAEM,IAAM,CACHO,EAAA,oBAAoB,UAAWE,EAAW,CAChD,QAAST,GAAA,YAAAA,EAAS,OAAA,CACnB,CACH,CACF,EAAG,CAACJ,EAAQK,EAAY,MAAOD,GAAA,YAAAA,EAAS,QAASA,GAAA,YAAAA,EAAS,QAASA,GAAA,YAAAA,EAAS,IAAI,CAAC,EAE7E,CAAAJ,EACG,OAAAK,CACT"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("react"),y=require("../useRefState/useRefState.cjs"),a=require("../../utils/helpers/isTarget.cjs"),f=require("../../utils/helpers/getElement.cjs"),v=(...u)=>{const t=a.isTarget(u[0])?u[0]:void 0,e=t?u[1]:u[0],c=y.useRefState(window);if(i.useEffect(()=>{if(!t&&!c.state)return;const n=t?f.getElement(t):c.current;if(!n)return;const o=s=>{var r;return(r=e==null?void 0:e.onKeyDown)==null?void 0:r.call(e,s)},d=s=>{var r;return(r=e==null?void 0:e.onKeyUp)==null?void 0:r.call(e,s)};return n.addEventListener("keydown",o),n.addEventListener("keyup",d),()=>{n.removeEventListener("keydown",o),n.removeEventListener("keyup",d)}},[t,c.state]),!t)return c};exports.useKeyboard=v;
2
+ //# sourceMappingURL=useKeyboard.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useKeyboard.cjs","sources":["../../../../src/hooks/useKeyboard/useKeyboard.ts"],"sourcesContent":["import { useEffect } from 'react';\n\nimport type { HookTarget } from '@/utils/helpers';\n\nimport { getElement, isTarget } from '@/utils/helpers';\n\nimport type { StateRef } from '../useRefState/useRefState';\n\nimport { useRefState } from '../useRefState/useRefState';\n\n/** The keyboard event handler type */\nexport type KeyboardEventHandler = (event: KeyboardEvent) => void;\n\n/** The use keyboard options type */\nexport interface UseKeyboardOptions {\n /** The callback function to be invoked on key down */\n onKeyDown?: KeyboardEventHandler;\n /** The callback function to be invoked on key up */\n onKeyUp?: KeyboardEventHandler;\n}\n\nexport interface UseKeyboard {\n (target: HookTarget | Window, options: UseKeyboardOptions): void;\n\n <Target extends Element>(options: UseKeyboardOptions, target?: never): { ref: StateRef<Target> };\n}\n\n/**\n * @name useKeyboard\n * @description - Hook that helps to listen for keyboard events\n * @category Sensors\n *\n * @overload\n * @param {HookTarget | Window} target The target to attach the event listeners to\n * @param {UseKeyboardOptions} [options] The keyboard event options\n * @returns {void}\n *\n * @example\n * useKeyboard(ref, { onKeyDown: (event) => console.log('key down'), onKeyUp: (event) => console.log('key up') });\n *\n * @overload\n * @template Target The target element type\n * @param {UseKeyboardOptions} [options] The keyboard event options\n * @returns {{ ref: StateRef<Target> }} An object containing the ref\n *\n * @example\n * const ref = useKeyboard({ onKeyDown: (event) => console.log('key down'), onKeyUp: (event) => console.log('key up') });\n */\nexport const useKeyboard = ((...params: any[]) => {\n const target = isTarget(params[0]) ? params[0] : undefined;\n const options = (target ? params[1] : params[0]) as UseKeyboardOptions;\n\n const internalRef = useRefState(window);\n\n useEffect(() => {\n if (!target && !internalRef.state) return;\n\n const element = (target ? getElement(target) : internalRef.current) as Element;\n if (!element) return;\n\n const onKeyDown = (event: Event) => options?.onKeyDown?.(event as KeyboardEvent);\n const onKeyUp = (event: Event) => options?.onKeyUp?.(event as KeyboardEvent);\n\n element.addEventListener('keydown', onKeyDown);\n element.addEventListener('keyup', onKeyUp);\n\n return () => {\n element.removeEventListener('keydown', onKeyDown);\n element.removeEventListener('keyup', onKeyUp);\n };\n }, [target, internalRef.state]);\n\n if (target) return;\n return internalRef;\n}) as UseKeyboard;\n"],"names":["useKeyboard","params","target","isTarget","options","internalRef","useRefState","useEffect","element","getElement","onKeyDown","event","_a","onKeyUp"],"mappings":"mPAgDaA,EAAe,IAAIC,IAAkB,CAC1C,MAAAC,EAASC,WAASF,EAAO,CAAC,CAAC,EAAIA,EAAO,CAAC,EAAI,OAC3CG,EAAWF,EAASD,EAAO,CAAC,EAAIA,EAAO,CAAC,EAExCI,EAAcC,cAAY,MAAM,EAoBtC,GAlBAC,EAAAA,UAAU,IAAM,CACd,GAAI,CAACL,GAAU,CAACG,EAAY,MAAO,OAEnC,MAAMG,EAAWN,EAASO,EAAAA,WAAWP,CAAM,EAAIG,EAAY,QAC3D,GAAI,CAACG,EAAS,OAEd,MAAME,EAAaC,GAAiB,OAAA,OAAAC,EAAAR,GAAA,YAAAA,EAAS,YAAT,YAAAQ,EAAA,KAAAR,EAAqBO,IACnDE,EAAWF,GAAiB,OAAA,OAAAC,EAAAR,GAAA,YAAAA,EAAS,UAAT,YAAAQ,EAAA,KAAAR,EAAmBO,IAE7C,OAAAH,EAAA,iBAAiB,UAAWE,CAAS,EACrCF,EAAA,iBAAiB,QAASK,CAAO,EAElC,IAAM,CACHL,EAAA,oBAAoB,UAAWE,CAAS,EACxCF,EAAA,oBAAoB,QAASK,CAAO,CAC9C,CACC,EAAA,CAACX,EAAQG,EAAY,KAAK,CAAC,EAE1B,CAAAH,EACG,OAAAG,CACT"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const v=require("react"),E=require("../useRefState/useRefState.cjs"),k=require("../../utils/helpers/isTarget.cjs"),g=require("../../utils/helpers/getElement.cjs"),b=(...s)=>{const e=k.isTarget(s[0])?s[0]:void 0,o=e?s[1]:s[0],y=(o==null?void 0:o.enabled)??!0,[f,c]=v.useState([]),u=E.useRefState(window);return v.useEffect(()=>{if(!y)return;c([]);const t=e?g.getElement(e):u.current;if(!t)return;const a=d=>{const n=d;c(r=>r.some(({code:i})=>i===n.code)?r:[...r,{key:n.key,code:n.code}])},l=d=>{const n=d;c(r=>r.filter(({code:i})=>i!==n.code))};return t.addEventListener("keydown",a),t.addEventListener("keyup",l),()=>{t.removeEventListener("keydown",a),t.removeEventListener("keyup",l)}},[y,u.state,e]),e?f:{value:f,ref:u}};exports.useKeysPressed=b;
2
+ //# sourceMappingURL=useKeysPressed.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useKeysPressed.cjs","sources":["../../../../src/hooks/useKeysPressed/useKeysPressed.ts"],"sourcesContent":["import { useEffect, useState } from 'react';\n\nimport type { HookTarget } from '@/utils/helpers';\n\nimport { getElement, isTarget } from '@/utils/helpers';\n\nimport type { StateRef } from '../useRefState/useRefState';\n\nimport { useRefState } from '../useRefState/useRefState';\n\n/** The use keys pressed options type */\nexport interface UseKeysPressedOptions {\n /** Enable or disable the event listeners */\n enabled?: boolean;\n}\n\nexport interface UseKeysPressed {\n (\n target: HookTarget | Window,\n options?: UseKeysPressedOptions\n ): Array<{ key: string; code: string }>;\n\n <Target extends Element>(\n options?: UseKeysPressedOptions\n ): {\n value: Array<{ key: string; code: string }>;\n ref: StateRef<Target>;\n };\n}\n\n/**\n * Hook that tracks which keyboard keys are currently pressed\n *\n * @name useKeysPressed\n * @description Tracks all currently pressed keyboard keys and their codes\n * @category Sensors\n *\n * @overload\n * @param {HookTarget | Window} target DOM element or ref to attach keyboard listeners to\n * @param {UseKeysPressedOptions} [options.enabled=true] Enable or disable the event listeners\n * @returns {Array<{ key: string; code: string }>} Array of currently pressed keys with their key and code values\n *\n * @example\n * const pressedKeys = useKeysPressed(ref);\n *\n * @overload\n * @template Target - Type of the target DOM element\n * @param {UseKeysPressedOptions} [options] - Optional configuration options\n * @returns {{ keys: Array<{ key: string; code: string }>; ref: StateRef<Target> }} Object containing pressed keys array and ref to attach to a DOM element\n *\n * @example\n * const { value, ref } = useKeysPressed();\n */\nexport const useKeysPressed = ((...params: any[]) => {\n const target = (isTarget(params[0]) ? params[0] : undefined) as HookTarget | undefined;\n const options = (target ? params[1] : params[0]) as UseKeysPressedOptions | undefined;\n\n const enabled = options?.enabled ?? true;\n const [value, setValue] = useState<{ key: string; code: string }[]>([]);\n const internalRef = useRefState(window);\n\n useEffect(() => {\n if (!enabled) return;\n setValue([]);\n\n const element = (target ? getElement(target) : internalRef.current) as Element;\n if (!element) return;\n\n const onKeyDown = (event: Event) => {\n const keyboardEvent = event as KeyboardEvent;\n setValue((prevValue) => {\n if (prevValue.some(({ code }) => code === keyboardEvent.code)) return prevValue;\n return [...prevValue, { key: keyboardEvent.key, code: keyboardEvent.code }];\n });\n };\n\n const onKeyUp = (event: Event) => {\n const keyboardEvent = event as KeyboardEvent;\n setValue((prevValue) => prevValue.filter(({ code }) => code !== keyboardEvent.code));\n };\n\n element.addEventListener('keydown', onKeyDown);\n element.addEventListener('keyup', onKeyUp);\n\n return () => {\n element.removeEventListener('keydown', onKeyDown);\n element.removeEventListener('keyup', onKeyUp);\n };\n }, [enabled, internalRef.state, target]);\n\n if (target) return value;\n return { value, ref: internalRef };\n}) as UseKeysPressed;\n"],"names":["useKeysPressed","params","target","isTarget","options","enabled","value","setValue","useState","internalRef","useRefState","useEffect","element","getElement","onKeyDown","event","keyboardEvent","prevValue","code","onKeyUp"],"mappings":"mPAqDaA,EAAkB,IAAIC,IAAkB,CAC7C,MAAAC,EAAUC,WAASF,EAAO,CAAC,CAAC,EAAIA,EAAO,CAAC,EAAI,OAC5CG,EAAWF,EAASD,EAAO,CAAC,EAAIA,EAAO,CAAC,EAExCI,GAAUD,GAAA,YAAAA,EAAS,UAAW,GAC9B,CAACE,EAAOC,CAAQ,EAAIC,EAAAA,SAA0C,CAAA,CAAE,EAChEC,EAAcC,cAAY,MAAM,EA+BtC,OA7BAC,EAAAA,UAAU,IAAM,CACd,GAAI,CAACN,EAAS,OACdE,EAAS,CAAA,CAAE,EAEX,MAAMK,EAAWV,EAASW,EAAAA,WAAWX,CAAM,EAAIO,EAAY,QAC3D,GAAI,CAACG,EAAS,OAER,MAAAE,EAAaC,GAAiB,CAClC,MAAMC,EAAgBD,EACtBR,EAAUU,GACJA,EAAU,KAAK,CAAC,CAAE,KAAAC,CAAA,IAAWA,IAASF,EAAc,IAAI,EAAUC,EAC/D,CAAC,GAAGA,EAAW,CAAE,IAAKD,EAAc,IAAK,KAAMA,EAAc,KAAM,CAC3E,CACH,EAEMG,EAAWJ,GAAiB,CAChC,MAAMC,EAAgBD,EACbR,EAACU,GAAcA,EAAU,OAAO,CAAC,CAAE,KAAAC,CAAA,IAAWA,IAASF,EAAc,IAAI,CAAC,CACrF,EAEQ,OAAAJ,EAAA,iBAAiB,UAAWE,CAAS,EACrCF,EAAA,iBAAiB,QAASO,CAAO,EAElC,IAAM,CACHP,EAAA,oBAAoB,UAAWE,CAAS,EACxCF,EAAA,oBAAoB,QAASO,CAAO,CAC9C,GACC,CAACd,EAASI,EAAY,MAAOP,CAAM,CAAC,EAEnCA,EAAeI,EACZ,CAAE,MAAAA,EAAO,IAAKG,CAAY,CACnC"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react"),r=require("../useDidUpdate/useDidUpdate.cjs"),d=(t,e)=>{const[a,u]=s.useState((e==null?void 0:e.initialValue)??null);return r.useDidUpdate(()=>u(Date.now()),[t]),a};exports.useLastChanged=d;
2
+ //# sourceMappingURL=useLastChanged.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useLastChanged.cjs","sources":["../../../../src/hooks/useLastChanged/useLastChanged.ts"],"sourcesContent":["import { useState } from 'react';\n\nimport { useDidUpdate } from '../useDidUpdate/useDidUpdate';\n\n/** The use last changed options type */\nexport interface UseLastChangedOptions {\n initialValue?: number;\n}\n\n/**\n * @name useLastChanged\n * @description - Hook for records the timestamp of the last change\n * @category Time\n *\n * @param {any} source The source of the last change\n * @param {number | null} [options.initialValue=null] The initial value\n * @returns {number | null} Return timestamp of the last change\n *\n * @example\n * const lastChanged = useLastChanged(source);\n */\nexport const useLastChanged = (source: any, options?: UseLastChangedOptions): number | null => {\n const [lastChanged, setLastChanged] = useState(options?.initialValue ?? null);\n\n useDidUpdate(() => setLastChanged(Date.now()), [source]);\n\n return lastChanged;\n};\n"],"names":["useLastChanged","source","options","lastChanged","setLastChanged","useState","useDidUpdate"],"mappings":"uJAqBaA,EAAiB,CAACC,EAAaC,IAAmD,CAC7F,KAAM,CAACC,EAAaC,CAAc,EAAIC,EAAS,UAAAH,GAAA,YAAAA,EAAS,eAAgB,IAAI,EAE/DI,OAAAA,EAAA,aAAA,IAAMF,EAAe,KAAK,IAAA,CAAK,EAAG,CAACH,CAAM,CAAC,EAEhDE,CACT"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react"),s=e=>{const t=r.useRef(e);return t.current=e,t.current};exports.useLatest=s;
2
+ //# sourceMappingURL=useLatest.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useLatest.cjs","sources":["../../../../src/hooks/useLatest/useLatest.ts"],"sourcesContent":["import { useRef } from 'react';\n\n/**\n * @name useLatest\n * @description - Hook that returns the stable reference of the value\n * @category Utilities\n *\n * @template Value The type of the value\n * @param {Value} value The value to get the previous value\n * @returns {Value} The previous value\n *\n * @example\n * const latestValue = useLatest(value);\n */\nexport const useLatest = <Value>(value: Value) => {\n const valueRef = useRef<Value>(value);\n valueRef.current = value;\n return valueRef.current;\n};\n"],"names":["useLatest","value","valueRef","useRef"],"mappings":"yGAcaA,EAAoBC,GAAiB,CAC1C,MAAAC,EAAWC,SAAcF,CAAK,EACpC,OAAAC,EAAS,QAAUD,EACZC,EAAS,OAClB"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react"),t=e=>(s.useEffect(()=>{console.warn("Warning: You forgot to delete the 'useLess' hook.")},[]),e);exports.useLess=t;
2
+ //# sourceMappingURL=useLess.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useLess.cjs","sources":["../../../../src/hooks/useLess/useLess.ts"],"sourcesContent":["import { useEffect } from 'react';\n\n/**\n * @name useLess\n * @description - Hook that can be so useless\n * @category Humor\n *\n * @warning - This hook is a joke. Please do not use it in production code!\n *\n * @template Value The type of the value\n * @param {Value} [value] The value to be returned\n * @returns {Value} The value passed to the hook\n *\n * @example\n * const value = useLess(state);\n */\nexport const useLess = <Value>(value?: Value) => {\n useEffect(() => {\n console.warn(\"Warning: You forgot to delete the 'useLess' hook.\");\n }, []);\n\n return value;\n};\n"],"names":["useLess","value","useEffect"],"mappings":"yGAgBaA,EAAkBC,IAC7BC,EAAAA,UAAU,IAAM,CACd,QAAQ,KAAK,mDAAmD,CAClE,EAAG,EAAE,EAEED"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react"),l=(o=[])=>{const[r,s]=a.useState(o);return{value:r,set:s,push:t=>s(e=>[...e,t]),removeAt:t=>s(e=>[...e.slice(0,t),...e.slice(t+1)]),insertAt:(t,e)=>s(c=>[...c.slice(0,t),e,...c.slice(t)]),updateAt:(t,e)=>s(c=>c.map((u,n)=>n===t?e:u)),clear:()=>s([]),reset:()=>s(o)}};exports.useList=l;
2
+ //# sourceMappingURL=useList.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useList.cjs","sources":["../../../../src/hooks/useList/useList.ts"],"sourcesContent":["import { useState } from 'react';\n\n/** The use list return type */\nexport interface UseListReturn<Item> {\n /** The current list of items */\n value: Item[];\n /** Clears the list */\n clear: () => void;\n /** Inserts an item at the specified index */\n insertAt: (insertAtIndex: number, item: Item) => void;\n /** Adds an item to the list */\n push: (item: Item) => void;\n /** Removes an item from the list */\n removeAt: (removeAtIndex: number) => void;\n /** Sets the list of items */\n set: (list: Item[]) => void;\n /** Updates an item at the specified index */\n updateAt: (updateAtIndex: number, item: Item) => void;\n}\n\n/**\n * @name useList\n * @description - Hook that provides state and helper methods to manage a list of items\n * @category Utilities\n *\n * @template Item The type of the item\n * @param {Item[] | (() => Item[])} initialList The initial list of items\n * @returns {UseListReturn} An object containing the current list and functions to interact with the list\n *\n * @example\n * const { value, set, push, removeAt, insertAt, updateAt, clear } = useList();\n */\nexport const useList = <Item>(initialList: Item[] = []) => {\n const [list, setList] = useState(initialList);\n\n const push = (item: Item) => setList((prevList) => [...prevList, item]);\n\n const removeAt = (removeAtIndex: number) =>\n setList((prevList) => [\n ...prevList.slice(0, removeAtIndex),\n ...prevList.slice(removeAtIndex + 1)\n ]);\n\n const insertAt = (insertAtIndex: number, item: Item) =>\n setList((l) => [...l.slice(0, insertAtIndex), item, ...l.slice(insertAtIndex)]);\n\n const updateAt = (updateAtIndex: number, item: Item) =>\n setList((prevList) =>\n prevList.map((element, index) => (index === updateAtIndex ? item : element))\n );\n\n const clear = () => setList([]);\n\n const reset = () => setList(initialList);\n\n return { value: list, set: setList, push, removeAt, insertAt, updateAt, clear, reset };\n};\n"],"names":["useList","initialList","list","setList","useState","item","prevList","removeAtIndex","insertAtIndex","l","updateAtIndex","element","index"],"mappings":"yGAgCaA,EAAU,CAAOC,EAAsB,KAAO,CACzD,KAAM,CAACC,EAAMC,CAAO,EAAIC,EAAAA,SAASH,CAAW,EAsBrC,MAAA,CAAE,MAAOC,EAAM,IAAKC,EAAS,KApBtBE,GAAeF,EAASG,GAAa,CAAC,GAAGA,EAAUD,CAAI,CAAC,EAoB5B,SAlBxBE,GAChBJ,EAASG,GAAa,CACpB,GAAGA,EAAS,MAAM,EAAGC,CAAa,EAClC,GAAGD,EAAS,MAAMC,EAAgB,CAAC,CAAA,CACpC,EAciD,SAZnC,CAACC,EAAuBH,IACvCF,EAASM,GAAM,CAAC,GAAGA,EAAE,MAAM,EAAGD,CAAa,EAAGH,EAAM,GAAGI,EAAE,MAAMD,CAAa,CAAC,CAAC,EAWlB,SAT7C,CAACE,EAAuBL,IACvCF,EAASG,GACPA,EAAS,IAAI,CAACK,EAASC,IAAWA,IAAUF,EAAgBL,EAAOM,CAAQ,CAC7E,EAMsE,MAJ1D,IAAMR,EAAQ,EAAE,EAIiD,MAFjE,IAAMA,EAAQF,CAAW,CAE8C,CACvF"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("../useStorage/useStorage.cjs"),a=(e,o,t)=>r.useStorage(e,{...t,initialValue:o,storage:typeof window<"u"?window.localStorage:void 0});exports.useLocalStorage=a;
2
+ //# sourceMappingURL=useLocalStorage.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useLocalStorage.cjs","sources":["../../../../src/hooks/useLocalStorage/useLocalStorage.ts"],"sourcesContent":["import type { UseStorageInitialValue, UseStorageOptions } from '../useStorage/useStorage';\n\nimport { useStorage } from '../useStorage/useStorage';\n\n/**\n * @name useLocalStorage\n * @description - Hook that manages local storage value\n * @category Browser\n *\n * @browserapi localStorage https://developer.mozilla.org/en-US/docs/Web/API/Window/localStorage\n *\n * @template Value The type of the value\n * @param {string} key The key of the storage\n * @param {UseStorageInitialValue<Value>} [initialValue] The initial value of the storage\n * @param {UseStorageOptions<Value>} [options] The options of the storage\n *\n * @example\n * const { value, set, remove } = useLocalStorage('key', 'value');\n */\nexport const useLocalStorage = <Value>(\n key: string,\n initialValue?: UseStorageInitialValue<Value>,\n options?: Omit<UseStorageOptions<Value>, 'initialValue' | 'storage'>\n) =>\n useStorage(key, {\n ...options,\n initialValue,\n storage: typeof window !== 'undefined' ? window.localStorage : undefined\n });\n"],"names":["useLocalStorage","key","initialValue","options","useStorage"],"mappings":"gIAmBaA,EAAkB,CAC7BC,EACAC,EACAC,IAEAC,EAAAA,WAAWH,EAAK,CACd,GAAGE,EACH,aAAAD,EACA,QAAS,OAAO,OAAW,IAAc,OAAO,aAAe,MACjE,CAAC"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("react"),n=r=>{const e=c.useRef(!1),t=c.useRef(r);return t.current=r,async(...u)=>{if(!e.current){e.current=!0;try{return await t.current(...u)}finally{e.current=!1}}}};exports.useLockCallback=n;
2
+ //# sourceMappingURL=useLockCallback.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useLockCallback.cjs","sources":["../../../../src/hooks/useLockCallback/useLockCallback.ts"],"sourcesContent":["import { useRef } from 'react';\n\n/**\n * @name useLockCallback\n * @description - Hook that prevents a callback from being executed multiple times simultaneously\n * @category Utilities\n *\n * @param {Function} callback The callback to be locked\n * @returns {Function} The locked callback\n *\n * @example\n * const lockedCallback = useLockCallback(() => promise());\n */\nexport const useLockCallback = <Callback extends (...args: any[]) => any>(callback: Callback) => {\n const lockRef = useRef(false);\n const callbackRef = useRef(callback);\n callbackRef.current = callback;\n\n return async (...args: Parameters<Callback>) => {\n if (lockRef.current) return;\n lockRef.current = true;\n\n try {\n return await callbackRef.current(...args);\n } finally {\n lockRef.current = false;\n }\n };\n};\n"],"names":["useLockCallback","callback","lockRef","useRef","callbackRef","args"],"mappings":"yGAaaA,EAA6DC,GAAuB,CACzF,MAAAC,EAAUC,SAAO,EAAK,EACtBC,EAAcD,SAAOF,CAAQ,EACnC,OAAAG,EAAY,QAAUH,EAEf,SAAUI,IAA+B,CAC9C,GAAI,CAAAH,EAAQ,QACZ,CAAAA,EAAQ,QAAU,GAEd,GAAA,CACF,OAAO,MAAME,EAAY,QAAQ,GAAGC,CAAI,CAAA,QACxC,CACAH,EAAQ,QAAU,EAAA,EAEtB,CACF"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react"),u=require("../useDidUpdate/useDidUpdate.cjs"),r=(e,o)=>{t.useEffect(()=>(console.log(`${e} mounted`,...o),()=>console.log(`${e} unmounted`)),[]),u.useDidUpdate(()=>{console.log(`${e} updated`,...o)},o)};exports.useLogger=r;
2
+ //# sourceMappingURL=useLogger.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useLogger.cjs","sources":["../../../../src/hooks/useLogger/useLogger.ts"],"sourcesContent":["import { useEffect } from 'react';\n\nimport { useDidUpdate } from '../useDidUpdate/useDidUpdate';\n\n/**\n * @name useLogger\n * @description - Hook for debugging lifecycle\n * @category Lifecycle\n *\n * @param {string} name The name or identifier for the logger\n * @param {unknown[]} params Additional arguments to be logged\n *\n * @example\n * useLogger('Component', [1, 2, 3]);\n */\nexport const useLogger = (name: string, params: unknown[]) => {\n useEffect(() => {\n console.log(`${name} mounted`, ...params);\n return () => console.log(`${name} unmounted`);\n }, []);\n\n useDidUpdate(() => {\n console.log(`${name} updated`, ...params);\n }, params);\n};\n"],"names":["useLogger","name","params","useEffect","useDidUpdate"],"mappings":"uJAeaA,EAAY,CAACC,EAAcC,IAAsB,CAC5DC,EAAAA,UAAU,KACR,QAAQ,IAAI,GAAGF,CAAI,WAAY,GAAGC,CAAM,EACjC,IAAM,QAAQ,IAAI,GAAGD,CAAI,YAAY,GAC3C,EAAE,EAELG,EAAAA,aAAa,IAAM,CACjB,QAAQ,IAAI,GAAGH,CAAI,WAAY,GAAGC,CAAM,GACvCA,CAAM,CACX"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("react"),L=400,P=(g,e)=>{const[f,s]=l.useState(!1),u=l.useRef(),a=l.useRef(!1),t=r=>{var c;(c=e==null?void 0:e.onStart)==null||c.call(e,r),a.current=!0,u.current=setTimeout(()=>{g(r),s(!0)},(e==null?void 0:e.threshold)??L)},d=r=>{var c,T;f?(c=e==null?void 0:e.onFinish)==null||c.call(e,r):a.current&&((T=e==null?void 0:e.onCancel)==null||T.call(e,r)),s(!1),a.current=!1,u.current&&clearTimeout(u.current)};return[{onMouseDown:t,onTouchStart:t,onMouseUp:d,onTouchEnd:d},f]};exports.useLongPress=P;
2
+ //# sourceMappingURL=useLongPress.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useLongPress.cjs","sources":["../../../../src/hooks/useLongPress/useLongPress.ts"],"sourcesContent":["import type { MouseEventHandler, RefObject, TouchEventHandler } from 'react';\n\nimport { useRef, useState } from 'react';\n\n// * The use long press target type */\nexport type UseLongPressTarget = (() => Element) | Element | RefObject<Element | null | undefined>;\n\nexport type LongPressReactEvents<Target extends Element = Element> =\n | MouseEventHandler<Target>\n | TouchEventHandler<Target>;\n\n// * The use long press options type */\nexport interface UseLongPressOptions {\n // * The threshold time in milliseconds\n threshold?: number;\n // * The callback function to be invoked on long press cancel\n onCancel?: (event: LongPressReactEvents) => void;\n // * The callback function to be invoked on long press end\n onFinish?: (event: LongPressReactEvents) => void;\n // * The callback function to be invoked on long press start\n onStart?: (event: LongPressReactEvents) => void;\n}\n\n// * The use long press bind type */\nexport interface UseLongPressBind {\n /** The callback function to be invoked on mouse down */\n onMouseDown: MouseEventHandler<Element>;\n /** The callback function to be invoked on mouse up */\n onMouseUp: MouseEventHandler<Element>;\n /** The callback function to be invoked on touch end */\n onTouchEnd: TouchEventHandler<Element>;\n /** The callback function to be invoked on touch start */\n onTouchStart: TouchEventHandler<Element>;\n}\n\n// * The use long press return type */\nexport type UseLongPressReturn = [UseLongPressBind, boolean];\n\nconst DEFAULT_THRESHOLD_TIME = 400;\n\n/**\n * @name useLongPress\n * @description - Hook that defines the logic when long pressing an element\n * @category Sensors\n *\n * @template Target The target element\n * @param {Target} target The target element to be long pressed\n * @param {(event: Event) => void} callback The callback function to be invoked on long press\n * @param {number} [options.threshold=400] The threshold time in milliseconds\n * @param {(event: Event) => void} [options.onStart] The callback function to be invoked on long press start\n * @param {(event: Event) => void} [options.onFinish] The callback function to be invoked on long press finish\n * @param {(event: Event) => void} [options.onCancel] The callback function to be invoked on long press cancel\n * @returns {UseLongPressReturn<Target>} The ref of the target element\n *\n * @example\n * const [bind, longPressing] = useLongPress(() => console.log('callback'));\n */\nexport const useLongPress = (\n callback: (event: LongPressReactEvents) => void,\n options?: UseLongPressOptions\n): UseLongPressReturn => {\n const [isLongPressActive, setIsLongPressActive] = useState(false);\n const timeoutIdRef = useRef<ReturnType<typeof setTimeout>>();\n const isPressed = useRef(false);\n\n const start = (event: LongPressReactEvents) => {\n options?.onStart?.(event);\n\n isPressed.current = true;\n timeoutIdRef.current = setTimeout(() => {\n callback(event);\n setIsLongPressActive(true);\n }, options?.threshold ?? DEFAULT_THRESHOLD_TIME);\n };\n\n const cancel = (event: LongPressReactEvents) => {\n if (isLongPressActive) {\n options?.onFinish?.(event);\n } else if (isPressed.current) {\n options?.onCancel?.(event);\n }\n\n setIsLongPressActive(false);\n isPressed.current = false;\n\n if (timeoutIdRef.current) clearTimeout(timeoutIdRef.current);\n };\n\n const bind = {\n onMouseDown: start,\n onTouchStart: start,\n onMouseUp: cancel,\n onTouchEnd: cancel\n } as unknown as UseLongPressBind;\n\n return [bind, isLongPressActive];\n};\n"],"names":["DEFAULT_THRESHOLD_TIME","useLongPress","callback","options","isLongPressActive","setIsLongPressActive","useState","timeoutIdRef","useRef","isPressed","start","event","_a","cancel","_b"],"mappings":"yGAsCMA,EAAyB,IAmBlBC,EAAe,CAC1BC,EACAC,IACuB,CACvB,KAAM,CAACC,EAAmBC,CAAoB,EAAIC,EAAAA,SAAS,EAAK,EAC1DC,EAAeC,EAAAA,OAAsC,EACrDC,EAAYD,SAAO,EAAK,EAExBE,EAASC,GAAgC,QAC7CC,EAAAT,GAAA,YAAAA,EAAS,UAAT,MAAAS,EAAA,KAAAT,EAAmBQ,GAEnBF,EAAU,QAAU,GACPF,EAAA,QAAU,WAAW,IAAM,CACtCL,EAASS,CAAK,EACdN,EAAqB,EAAI,CAAA,GACxBF,GAAA,YAAAA,EAAS,YAAaH,CAAsB,CACjD,EAEMa,EAAUF,GAAgC,SAC1CP,GACFQ,EAAAT,GAAA,YAAAA,EAAS,WAAT,MAAAS,EAAA,KAAAT,EAAoBQ,GACXF,EAAU,WACnBK,EAAAX,GAAA,YAAAA,EAAS,WAAT,MAAAW,EAAA,KAAAX,EAAoBQ,IAGtBN,EAAqB,EAAK,EAC1BI,EAAU,QAAU,GAEhBF,EAAa,SAAsB,aAAAA,EAAa,OAAO,CAC7D,EASO,MAAA,CAPM,CACX,YAAaG,EACb,aAAcA,EACd,UAAWG,EACX,WAAYA,CACd,EAEcT,CAAiB,CACjC"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const p=require("react"),w=o=>{const[a,s]=p.useState(new Map(o)),r=(e,t)=>s(n=>new Map(n).set(e,t)),c=e=>s(t=>{if(!t.has(e))return t;const n=new Map(t);return n.delete(e),n}),u=()=>s(new Map),M=()=>s(new Map(o)),i=e=>a.has(e);return{value:a,size:a.size,set:r,has:i,remove:c,clear:u,reset:M}};exports.useMap=w;
2
+ //# sourceMappingURL=useMap.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useMap.cjs","sources":["../../../../src/hooks/useMap/useMap.ts"],"sourcesContent":["import { useState } from 'react';\n\n/** The use map return type */\nexport interface UseMapReturn<Key, Value> {\n /** The size of the map */\n size: number;\n /** The current map */\n value: Map<Key, Value>;\n /** Function to clear the map */\n clear: () => void;\n /** Function to check if a value exists in the map */\n has: (key: Key) => boolean;\n /** Function to remove a value from the map */\n remove: (key: Key) => void;\n /** Function to toggle a value in the map */\n reset: () => void;\n /** Function to add a value to the map */\n set: (key: Key, value: Value) => void;\n}\n\n/**\n * @name useMap\n * @description - Hook that manages a map structure\n * @category Utilities\n *\n * @template Value The type of the value\n * @param {Value[]} [values] The initial array of the map\n * @returns {UseMapReturn<Key, Value>} An object containing the current map and functions to interact with the map\n *\n * @example\n * const { value, set, remove, clear, reset, size, has } = useMap([1, 'one'], [2, 'two']);\n */\nexport const useMap = <Key, Value>(values?: [Key, Value][]): UseMapReturn<Key, Value> => {\n const [map, setMap] = useState(new Map(values));\n\n const set = (key: Key, value: Value) => setMap((prevMap) => new Map(prevMap).set(key, value));\n const remove = (key: Key) =>\n setMap((prevMap) => {\n if (!prevMap.has(key)) return prevMap;\n const newMap = new Map(prevMap);\n newMap.delete(key);\n return newMap;\n });\n const clear = () => setMap(new Map());\n const reset = () => setMap(new Map(values));\n const has = (key: Key) => map.has(key);\n\n return {\n value: map,\n size: map.size,\n set,\n has,\n remove,\n clear,\n reset\n };\n};\n"],"names":["useMap","values","map","setMap","useState","set","key","value","prevMap","remove","newMap","clear","reset","has"],"mappings":"yGAgCaA,EAAsBC,GAAsD,CACjF,KAAA,CAACC,EAAKC,CAAM,EAAIC,WAAS,IAAI,IAAIH,CAAM,CAAC,EAExCI,EAAM,CAACC,EAAUC,IAAiBJ,EAAQK,GAAY,IAAI,IAAIA,CAAO,EAAE,IAAIF,EAAKC,CAAK,CAAC,EACtFE,EAAUH,GACdH,EAAQK,GAAY,CAClB,GAAI,CAACA,EAAQ,IAAIF,CAAG,EAAU,OAAAE,EACxB,MAAAE,EAAS,IAAI,IAAIF,CAAO,EAC9B,OAAAE,EAAO,OAAOJ,CAAG,EACVI,CAAA,CACR,EACGC,EAAQ,IAAMR,EAAO,IAAI,GAAK,EAC9BS,EAAQ,IAAMT,EAAO,IAAI,IAAIF,CAAM,CAAC,EACpCY,EAAOP,GAAaJ,EAAI,IAAII,CAAG,EAE9B,MAAA,CACL,MAAOJ,EACP,KAAMA,EAAI,KACV,IAAAG,EACA,IAAAQ,EACA,OAAAJ,EACA,MAAAE,EACA,MAAAC,CACF,CACF"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("react"),v=require("../useRefState/useRefState.cjs"),y=require("../../utils/helpers/isTarget.cjs"),S=require("../../utils/helpers/getElement.cjs"),q=(...r)=>{const e=y.isTarget(r[0])?r[0]:void 0,t=v.useRefState(),[n,u]=c.useState({x:0,y:0,width:0,height:0,top:0,left:0,bottom:0,right:0});return c.useEffect(()=>{if(!e&&!t.state)return;const s=e?S.getElement(e):t.current;if(!s)return;const o=new ResizeObserver(f=>{const i=f[0];if(!i)return;const{x:a,y:g,width:l,height:h,top:b,left:d,bottom:R,right:m}=i.contentRect;u({x:a,y:g,width:l,height:h,top:b,left:d,bottom:R,right:m})});return o.observe(s),()=>{o.disconnect()}},[e,t.state]),e?n:{ref:t,...n}};exports.useMeasure=q;
2
+ //# sourceMappingURL=useMeasure.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useMeasure.cjs","sources":["../../../../src/hooks/useMeasure/useMeasure.ts"],"sourcesContent":["import { useEffect, useState } from 'react';\n\nimport type { HookTarget } from '@/utils/helpers';\n\nimport { getElement, isTarget } from '@/utils/helpers';\n\nimport type { StateRef } from '../useRefState/useRefState';\n\nimport { useRefState } from '../useRefState/useRefState';\n\n/** The use measure return type */\nexport type UseMeasureReturn = Pick<\n DOMRectReadOnly,\n 'bottom' | 'height' | 'left' | 'right' | 'top' | 'width' | 'x' | 'y'\n>;\n\nexport interface UseMeasure {\n (target: HookTarget): UseMeasureReturn;\n\n <Target extends Element>(\n target?: never\n ): UseMeasureReturn & {\n ref: StateRef<Target>;\n };\n}\n\n/**\n * @name useMeasure\n * @description - Hook to measure the size and position of an element\n * @category Browser\n *\n * @overload\n * @param {HookTarget} target The element to measure\n * @returns {UseMeasureReturn} The element's size and position\n *\n * @example\n * const { x, y, width, height, top, left, bottom, right } = useMeasure(ref);\n *\n * @overload\n * @template Target The element to measure\n * @returns {UseMeasureReturn & { ref: StateRef<Target> }} The element's size and position\n *\n * @example\n * const { ref, x, y, width, height, top, left, bottom, right } = useMeasure();\n */\nexport const useMeasure = ((...params: any[]) => {\n const target = (isTarget(params[0]) ? params[0] : undefined) as HookTarget | undefined;\n\n const internalRef = useRefState<Element>();\n const [rect, setRect] = useState({\n x: 0,\n y: 0,\n width: 0,\n height: 0,\n top: 0,\n left: 0,\n bottom: 0,\n right: 0\n });\n\n useEffect(() => {\n if (!target && !internalRef.state) return;\n\n const element = (target ? getElement(target) : internalRef.current) as Element;\n if (!element) return;\n\n const resizeObserver = new ResizeObserver((entries) => {\n const entry = entries[0];\n if (!entry) return;\n\n const { x, y, width, height, top, left, bottom, right } = entry.contentRect;\n setRect({ x, y, width, height, top, left, bottom, right });\n });\n\n resizeObserver.observe(element);\n\n return () => {\n resizeObserver.disconnect();\n };\n }, [target, internalRef.state]);\n\n if (target) return rect;\n return { ref: internalRef, ...rect };\n}) as UseMeasure;\n"],"names":["useMeasure","params","target","isTarget","internalRef","useRefState","rect","setRect","useState","useEffect","element","getElement","resizeObserver","entries","entry","x","y","width","height","top","left","bottom","right"],"mappings":"mPA6CaA,EAAc,IAAIC,IAAkB,CACzC,MAAAC,EAAUC,WAASF,EAAO,CAAC,CAAC,EAAIA,EAAO,CAAC,EAAI,OAE5CG,EAAcC,EAAAA,YAAqB,EACnC,CAACC,EAAMC,CAAO,EAAIC,WAAS,CAC/B,EAAG,EACH,EAAG,EACH,MAAO,EACP,OAAQ,EACR,IAAK,EACL,KAAM,EACN,OAAQ,EACR,MAAO,CAAA,CACR,EAuBD,OArBAC,EAAAA,UAAU,IAAM,CACd,GAAI,CAACP,GAAU,CAACE,EAAY,MAAO,OAEnC,MAAMM,EAAWR,EAASS,EAAAA,WAAWT,CAAM,EAAIE,EAAY,QAC3D,GAAI,CAACM,EAAS,OAEd,MAAME,EAAiB,IAAI,eAAgBC,GAAY,CAC/C,MAAAC,EAAQD,EAAQ,CAAC,EACvB,GAAI,CAACC,EAAO,OAEN,KAAA,CAAE,EAAAC,EAAG,EAAAC,EAAG,MAAAC,EAAO,OAAAC,EAAQ,IAAAC,EAAK,KAAAC,EAAM,OAAAC,EAAQ,MAAAC,CAAM,EAAIR,EAAM,YACxDP,EAAA,CAAE,EAAAQ,EAAG,EAAAC,EAAG,MAAAC,EAAO,OAAAC,EAAQ,IAAAC,EAAK,KAAAC,EAAM,OAAAC,EAAQ,MAAAC,EAAO,CAAA,CAC1D,EAED,OAAAV,EAAe,QAAQF,CAAO,EAEvB,IAAM,CACXE,EAAe,WAAW,CAC5B,CACC,EAAA,CAACV,EAAQE,EAAY,KAAK,CAAC,EAE1BF,EAAeI,EACZ,CAAE,IAAKF,EAAa,GAAGE,CAAK,CACrC"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react"),c=()=>!1,o=e=>{const a=s.useCallback(t=>{const n=window.matchMedia(e);return n.addEventListener("change",t),()=>{n.removeEventListener("change",t)}},[e]),r=()=>window.matchMedia(e).matches;return s.useSyncExternalStore(a,r,c)};exports.useMediaQuery=o;
2
+ //# sourceMappingURL=useMediaQuery.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useMediaQuery.cjs","sources":["../../../../src/hooks/useMediaQuery/useMediaQuery.ts"],"sourcesContent":["import { useCallback, useSyncExternalStore } from 'react';\n\nconst getServerSnapshot = () => false;\n\n/**\n * @name useMediaQuery\n * @description - Hook that manages a media query\n * @category Browser\n *\n * @browserapi window.matchMedia https://developer.mozilla.org/en-US/docs/Web/API/Window/matchMedia\n *\n * @param {string} query The media query string\n * @returns {boolean} A boolean indicating if the media query matches\n *\n * @example\n * const matches = useMediaQuery('(max-width: 768px)');\n */\nexport const useMediaQuery = (query: string) => {\n const subscribe = useCallback(\n (callback: () => void) => {\n const matchMedia = window.matchMedia(query);\n\n matchMedia.addEventListener('change', callback);\n return () => {\n matchMedia.removeEventListener('change', callback);\n };\n },\n [query]\n );\n\n const getSnapshot = () => window.matchMedia(query).matches;\n\n return useSyncExternalStore(subscribe, getSnapshot, getServerSnapshot);\n};\n"],"names":["getServerSnapshot","useMediaQuery","query","subscribe","useCallback","callback","matchMedia","getSnapshot","useSyncExternalStore"],"mappings":"yGAEMA,EAAoB,IAAM,GAenBC,EAAiBC,GAAkB,CAC9C,MAAMC,EAAYC,EAAA,YACfC,GAAyB,CAClB,MAAAC,EAAa,OAAO,WAAWJ,CAAK,EAE/B,OAAAI,EAAA,iBAAiB,SAAUD,CAAQ,EACvC,IAAM,CACAC,EAAA,oBAAoB,SAAUD,CAAQ,CACnD,CACF,EACA,CAACH,CAAK,CACR,EAEMK,EAAc,IAAM,OAAO,WAAWL,CAAK,EAAE,QAE5C,OAAAM,uBAAqBL,EAAWI,EAAaP,CAAiB,CACvE"}