@siberiacancode/reactuse 0.0.91 → 0.0.94

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 (393) hide show
  1. package/README.md +1 -1
  2. package/dist/cjs/_rollupPluginBabelHelpers-EWRwz6fS.js +3 -0
  3. package/dist/cjs/_rollupPluginBabelHelpers-EWRwz6fS.js.map +1 -0
  4. package/dist/cjs/hooks/index.js +2 -2
  5. package/dist/cjs/hooks/useActiveElement/useActiveElement.js +2 -2
  6. package/dist/cjs/hooks/useAsync/useAsync.js +2 -2
  7. package/dist/cjs/hooks/useBattery/useBattery.js +2 -2
  8. package/dist/cjs/hooks/useBluetooth/useBluetooth.js +2 -2
  9. package/dist/cjs/hooks/useBoolean/useBoolean.js +2 -2
  10. package/dist/cjs/hooks/useBreakpoints/{constants → helpers}/breakpoints.js +1 -1
  11. package/dist/cjs/hooks/useBreakpoints/helpers/breakpoints.js.map +1 -0
  12. package/dist/cjs/hooks/useBreakpoints/helpers/index.js +3 -0
  13. package/dist/cjs/hooks/useBreakpoints/helpers/index.js.map +1 -0
  14. package/dist/cjs/hooks/useBreakpoints/useBreakpoints.js +2 -2
  15. package/dist/cjs/hooks/useBreakpoints/useBreakpoints.js.map +1 -1
  16. package/dist/cjs/hooks/useBrowserLanguage/useBrowserLanguage.js +1 -1
  17. package/dist/cjs/hooks/useClickOutside/useClickOutside.js +2 -2
  18. package/dist/cjs/hooks/useClickOutside/useClickOutside.js.map +1 -1
  19. package/dist/cjs/hooks/useClipboard/useClipboard.js +2 -2
  20. package/dist/cjs/hooks/useConst/useConst.js +1 -1
  21. package/dist/cjs/hooks/useCounter/useCounter.js +2 -2
  22. package/dist/cjs/hooks/useCssVar/useCssVar.js +2 -2
  23. package/dist/cjs/hooks/useCssVar/useCssVar.js.map +1 -1
  24. package/dist/cjs/hooks/useDebounceCallback/useDebounceCallback.js +1 -1
  25. package/dist/cjs/hooks/useDebounceValue/useDebounceValue.js +2 -2
  26. package/dist/cjs/hooks/useDefault/useDefault.js +2 -2
  27. package/dist/cjs/hooks/useDeviceMotion/useDeviceMotion.js +2 -2
  28. package/dist/cjs/hooks/useDeviceMotion/useDeviceMotion.js.map +1 -1
  29. package/dist/cjs/hooks/useDeviceOrientation/useDeviceOrientation.js +2 -2
  30. package/dist/cjs/hooks/useDevicePixelRatio/useDevicePixelRatio.js +2 -2
  31. package/dist/cjs/hooks/useDidUpdate/useDidUpdate.js +1 -1
  32. package/dist/cjs/hooks/useDisclosure/useDisclosure.js +2 -2
  33. package/dist/cjs/hooks/useDisplayMedia/useDisplayMedia.js +3 -0
  34. package/dist/cjs/hooks/useDisplayMedia/useDisplayMedia.js.map +1 -0
  35. package/dist/cjs/hooks/useDocumentEvent/useDocumentEvent.js +2 -2
  36. package/dist/cjs/hooks/useDocumentEvent/useDocumentEvent.js.map +1 -1
  37. package/dist/cjs/hooks/useDocumentTitle/useDocumentTitle.js +2 -2
  38. package/dist/cjs/hooks/useDocumentVisibility/useDocumentVisibility.js +1 -1
  39. package/dist/cjs/hooks/useElementSize/useElementSize.js +2 -2
  40. package/dist/cjs/hooks/useElementSize/useElementSize.js.map +1 -1
  41. package/dist/cjs/hooks/useEvent/useEvent.js +1 -1
  42. package/dist/cjs/hooks/useEventListener/useEventListener.js +2 -2
  43. package/dist/cjs/hooks/useEventListener/useEventListener.js.map +1 -1
  44. package/dist/cjs/hooks/useEyeDropper/useEyeDropper.js +2 -2
  45. package/dist/cjs/hooks/useFavicon/useFavicon.js +2 -2
  46. package/dist/cjs/hooks/useField/useField.js +2 -2
  47. package/dist/cjs/hooks/useFileDialog/useFileDialog.js +2 -2
  48. package/dist/cjs/hooks/useFileDialog/useFileDialog.js.map +1 -1
  49. package/dist/cjs/hooks/useFocus/useFocus.js +2 -2
  50. package/dist/cjs/hooks/useFocus/useFocus.js.map +1 -1
  51. package/dist/cjs/hooks/useFps/useFps.js +2 -2
  52. package/dist/cjs/hooks/useFullscreen/useFullscreen.js +2 -2
  53. package/dist/cjs/hooks/useFullscreen/useFullscreen.js.map +1 -1
  54. package/dist/cjs/hooks/useGamepad/helpers/index.js +3 -0
  55. package/dist/cjs/hooks/useGamepad/helpers/index.js.map +1 -0
  56. package/dist/cjs/hooks/useGamepad/helpers/mapGamepadToXbox360Controller.js +1 -1
  57. package/dist/cjs/hooks/useGamepad/useGamepad.js +2 -2
  58. package/dist/cjs/hooks/useGamepad/useGamepad.js.map +1 -1
  59. package/dist/cjs/hooks/useGeolocation/useGeolocation.js +2 -2
  60. package/dist/cjs/hooks/useHash/useHash.js +2 -2
  61. package/dist/cjs/hooks/useHotkeys/useHotkeys.js +2 -2
  62. package/dist/cjs/hooks/useHotkeys/useHotkeys.js.map +1 -1
  63. package/dist/cjs/hooks/useHover/useHover.js +2 -2
  64. package/dist/cjs/hooks/useHover/useHover.js.map +1 -1
  65. package/dist/cjs/hooks/useIdle/useIdle.js +2 -2
  66. package/dist/cjs/hooks/useImage/useImage.js +2 -2
  67. package/dist/cjs/hooks/useInfiniteScroll/useInfiniteScroll.js +2 -2
  68. package/dist/cjs/hooks/useInfiniteScroll/useInfiniteScroll.js.map +1 -1
  69. package/dist/cjs/hooks/useIntersectionObserver/useIntersectionObserver.js +2 -2
  70. package/dist/cjs/hooks/useIntersectionObserver/useIntersectionObserver.js.map +1 -1
  71. package/dist/cjs/hooks/useInterval/useInterval.js +2 -2
  72. package/dist/cjs/hooks/useInterval/useInterval.js.map +1 -1
  73. package/dist/cjs/hooks/useIsFirstRender/useIsFirstRender.js +1 -1
  74. package/dist/cjs/hooks/useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js +1 -1
  75. package/dist/cjs/hooks/useKeyPress/useKeyPress.js +2 -2
  76. package/dist/cjs/hooks/useKeyPress/useKeyPress.js.map +1 -1
  77. package/dist/cjs/hooks/useKeyPressEvent/useKeyPressEvent.js +2 -2
  78. package/dist/cjs/hooks/useKeyPressEvent/useKeyPressEvent.js.map +1 -1
  79. package/dist/cjs/hooks/useKeyboard/useKeyboard.js +2 -2
  80. package/dist/cjs/hooks/useKeyboard/useKeyboard.js.map +1 -1
  81. package/dist/cjs/hooks/useKeysPressed/useKeysPressed.js +2 -2
  82. package/dist/cjs/hooks/useKeysPressed/useKeysPressed.js.map +1 -1
  83. package/dist/cjs/hooks/useLastChanged/useLastChanged.js +2 -2
  84. package/dist/cjs/hooks/useLatest/useLatest.js +1 -1
  85. package/dist/cjs/hooks/useList/useList.js +2 -2
  86. package/dist/cjs/hooks/useLocalStorage/useLocalStorage.js +2 -2
  87. package/dist/cjs/hooks/useLocalStorage/useLocalStorage.js.map +1 -1
  88. package/dist/cjs/hooks/useLogger/useLogger.js +2 -2
  89. package/dist/cjs/hooks/useLongPress/useLongPress.js +2 -2
  90. package/dist/cjs/hooks/useLongPress/useLongPress.js.map +1 -1
  91. package/dist/cjs/hooks/useMap/useMap.js +2 -2
  92. package/dist/cjs/hooks/useMeasure/useMeasure.js +2 -2
  93. package/dist/cjs/hooks/useMeasure/useMeasure.js.map +1 -1
  94. package/dist/cjs/hooks/useMediaQuery/useMediaQuery.js +1 -1
  95. package/dist/cjs/hooks/useMemory/useMemory.js +2 -2
  96. package/dist/cjs/hooks/useMemory/useMemory.js.map +1 -1
  97. package/dist/cjs/hooks/useMount/useMount.js +1 -1
  98. package/dist/cjs/hooks/useMouse/useMouse.js +2 -2
  99. package/dist/cjs/hooks/useMouse/useMouse.js.map +1 -1
  100. package/dist/cjs/hooks/useMutation/useMutation.js +2 -2
  101. package/dist/cjs/hooks/useMutationObserver/useMutationObserver.js +2 -2
  102. package/dist/cjs/hooks/useMutationObserver/useMutationObserver.js.map +1 -1
  103. package/dist/cjs/hooks/useNetwork/useNetwork.js +2 -2
  104. package/dist/cjs/hooks/useOffsetPagination/useOffsetPagination.js +2 -2
  105. package/dist/cjs/hooks/useOnline/useOnline.js +1 -1
  106. package/dist/cjs/hooks/useOperatingSystem/useOperatingSystem.js +1 -1
  107. package/dist/cjs/hooks/useOptimistic/useOptimistic.js +2 -2
  108. package/dist/cjs/hooks/useOrientation/useOrientation.js +2 -2
  109. package/dist/cjs/hooks/useOrientation/useOrientation.js.map +1 -1
  110. package/dist/cjs/hooks/useOtpCredential/useOtpCredential.js +2 -2
  111. package/dist/cjs/hooks/usePageLeave/usePageLeave.js +2 -2
  112. package/dist/cjs/hooks/usePaint/helpers/Paint.js +2 -2
  113. package/dist/cjs/hooks/usePaint/helpers/Pointer.js +2 -2
  114. package/dist/cjs/hooks/usePaint/usePaint.js +2 -2
  115. package/dist/cjs/hooks/useParallax/useParallax.js +2 -2
  116. package/dist/cjs/hooks/useParallax/useParallax.js.map +1 -1
  117. package/dist/cjs/hooks/usePermission/usePermission.js +2 -2
  118. package/dist/cjs/hooks/usePointerLock/usePointerLock.js +2 -2
  119. package/dist/cjs/hooks/usePostMessage/usePostMessage.js +1 -1
  120. package/dist/cjs/hooks/usePreferredColorScheme/usePreferredColorScheme.js +1 -1
  121. package/dist/cjs/hooks/usePreferredContrast/usePreferredContrast.js +1 -1
  122. package/dist/cjs/hooks/usePreferredDark/usePreferredDark.js +1 -1
  123. package/dist/cjs/hooks/usePreferredLanguages/usePreferredLanguages.js +1 -1
  124. package/dist/cjs/hooks/usePreferredReducedMotion/usePreferredReducedMotion.js +1 -1
  125. package/dist/cjs/hooks/usePrevious/usePrevious.js +1 -1
  126. package/dist/cjs/hooks/useQuery/useQuery.js +2 -2
  127. package/dist/cjs/hooks/useQuery/useQuery.js.map +1 -1
  128. package/dist/cjs/hooks/useQueue/useQueue.js +2 -2
  129. package/dist/cjs/hooks/useRaf/useRaf.js +2 -2
  130. package/dist/cjs/hooks/useRaf/useRaf.js.map +1 -1
  131. package/dist/cjs/hooks/useRafValue/useRafValue.js +2 -2
  132. package/dist/cjs/hooks/useRefState/useRefState.js +2 -2
  133. package/dist/cjs/hooks/useRefState/useRefState.js.map +1 -1
  134. package/dist/cjs/hooks/useRenderCount/useRenderCount.js +1 -1
  135. package/dist/cjs/hooks/useRenderInfo/useRenderInfo.js +1 -1
  136. package/dist/cjs/hooks/useRerender/useRerender.js +1 -1
  137. package/dist/cjs/hooks/useResizeObserver/useResizeObserver.js +2 -2
  138. package/dist/cjs/hooks/useResizeObserver/useResizeObserver.js.map +1 -1
  139. package/dist/cjs/hooks/useScreenOrientation/useScreenOrientation.js +2 -2
  140. package/dist/cjs/hooks/useScript/useScript.js +2 -2
  141. package/dist/cjs/hooks/useScroll/useScroll.js +2 -2
  142. package/dist/cjs/hooks/useScroll/useScroll.js.map +1 -1
  143. package/dist/cjs/hooks/useScrollIntoView/useScrollIntoView.js +3 -0
  144. package/dist/cjs/hooks/useScrollIntoView/useScrollIntoView.js.map +1 -0
  145. package/dist/cjs/hooks/useScrollTo/useScrollTo.js +2 -2
  146. package/dist/cjs/hooks/useScrollTo/useScrollTo.js.map +1 -1
  147. package/dist/cjs/hooks/useSessionStorage/useSessionStorage.js +2 -2
  148. package/dist/cjs/hooks/useSessionStorage/useSessionStorage.js.map +1 -1
  149. package/dist/cjs/hooks/useSet/useSet.js +2 -2
  150. package/dist/cjs/hooks/useShare/useShare.js +2 -2
  151. package/dist/cjs/hooks/useShare/useShare.js.map +1 -1
  152. package/dist/cjs/hooks/useStateHistory/useStateHistory.js +3 -0
  153. package/dist/cjs/hooks/useStateHistory/useStateHistory.js.map +1 -0
  154. package/dist/cjs/hooks/useStep/useStep.js +2 -2
  155. package/dist/cjs/hooks/useStopwatch/useStopwatch.js +2 -2
  156. package/dist/cjs/hooks/useStorage/useStorage.js +2 -2
  157. package/dist/cjs/hooks/useStorage/useStorage.js.map +1 -1
  158. package/dist/cjs/hooks/useTextDirection/useTextDirection.js +2 -2
  159. package/dist/cjs/hooks/useTextDirection/useTextDirection.js.map +1 -1
  160. package/dist/cjs/hooks/useTextSelection/useTextSelection.js +2 -2
  161. package/dist/cjs/hooks/useThrottleCallback/useThrottleCallback.js +1 -1
  162. package/dist/cjs/hooks/useThrottleCallback/useThrottleCallback.js.map +1 -1
  163. package/dist/cjs/hooks/useThrottleValue/useThrottleValue.js +2 -2
  164. package/dist/cjs/hooks/useThrottleValue/useThrottleValue.js.map +1 -1
  165. package/dist/cjs/hooks/useTime/useTime.js +2 -2
  166. package/dist/cjs/hooks/useTime/useTime.js.map +1 -1
  167. package/dist/cjs/hooks/useTimeout/useTimeout.js +2 -2
  168. package/dist/cjs/hooks/useTimer/useTimer.js +2 -2
  169. package/dist/cjs/hooks/useTimer/useTimer.js.map +1 -1
  170. package/dist/cjs/hooks/useToggle/useToggle.js +2 -2
  171. package/dist/cjs/hooks/useUnmount/useUnmount.js +1 -1
  172. package/dist/cjs/hooks/useVibrate/useVibrate.js +2 -2
  173. package/dist/cjs/hooks/useVibrate/useVibrate.js.map +1 -1
  174. package/dist/cjs/hooks/useWebSocket/useWebSocket.js +2 -2
  175. package/dist/cjs/hooks/useWindowEvent/useWindowEvent.js +2 -2
  176. package/dist/cjs/hooks/useWindowEvent/useWindowEvent.js.map +1 -1
  177. package/dist/cjs/hooks/useWindowFocus/useWindowFocus.js +2 -2
  178. package/dist/cjs/hooks/useWindowScroll/useWindowScroll.js +2 -2
  179. package/dist/cjs/hooks/useWindowSize/useWindowSize.js +2 -2
  180. package/dist/cjs/hooks/useWizard/useWizard.js +2 -2
  181. package/dist/cjs/hooks/useWizard/useWizard.js.map +1 -1
  182. package/dist/cjs/index.js +2 -2
  183. package/dist/cjs/utils/helpers/debounce.js +1 -1
  184. package/dist/cjs/utils/helpers/{time/getDate.js → getDate.js} +1 -1
  185. package/dist/cjs/utils/helpers/getDate.js.map +1 -0
  186. package/dist/cjs/utils/helpers/getElement.js +1 -1
  187. package/dist/cjs/utils/helpers/getRetry.js +1 -1
  188. package/dist/cjs/utils/helpers/index.js +2 -2
  189. package/dist/cjs/utils/helpers/isTarget.js +2 -2
  190. package/dist/cjs/utils/helpers/isTarget.js.map +1 -1
  191. package/dist/cjs/utils/helpers/throttle.js +1 -1
  192. package/dist/cjs/utils/helpers/throttle.js.map +1 -1
  193. package/dist/esm/_rollupPluginBabelHelpers-Dp_7XWBJ.js +3 -0
  194. package/dist/esm/_rollupPluginBabelHelpers-Dp_7XWBJ.js.map +1 -0
  195. package/dist/esm/hooks/index.js +2 -2
  196. package/dist/esm/hooks/useActiveElement/useActiveElement.js +2 -2
  197. package/dist/esm/hooks/useAsync/useAsync.js +2 -2
  198. package/dist/esm/hooks/useBattery/useBattery.js +2 -2
  199. package/dist/esm/hooks/useBluetooth/useBluetooth.js +2 -2
  200. package/dist/esm/hooks/useBoolean/useBoolean.js +2 -2
  201. package/dist/esm/hooks/useBreakpoints/{constants → helpers}/breakpoints.js +1 -1
  202. package/dist/esm/hooks/useBreakpoints/helpers/breakpoints.js.map +1 -0
  203. package/dist/esm/hooks/useBreakpoints/helpers/index.js +3 -0
  204. package/dist/esm/hooks/useBreakpoints/helpers/index.js.map +1 -0
  205. package/dist/esm/hooks/useBreakpoints/useBreakpoints.js +2 -2
  206. package/dist/esm/hooks/useBreakpoints/useBreakpoints.js.map +1 -1
  207. package/dist/esm/hooks/useBrowserLanguage/useBrowserLanguage.js +1 -1
  208. package/dist/esm/hooks/useClickOutside/useClickOutside.js +2 -2
  209. package/dist/esm/hooks/useClickOutside/useClickOutside.js.map +1 -1
  210. package/dist/esm/hooks/useClipboard/useClipboard.js +2 -2
  211. package/dist/esm/hooks/useConst/useConst.js +1 -1
  212. package/dist/esm/hooks/useCounter/useCounter.js +2 -2
  213. package/dist/esm/hooks/useCssVar/useCssVar.js +2 -2
  214. package/dist/esm/hooks/useCssVar/useCssVar.js.map +1 -1
  215. package/dist/esm/hooks/useDebounceCallback/useDebounceCallback.js +1 -1
  216. package/dist/esm/hooks/useDebounceValue/useDebounceValue.js +2 -2
  217. package/dist/esm/hooks/useDefault/useDefault.js +2 -2
  218. package/dist/esm/hooks/useDeviceMotion/useDeviceMotion.js +2 -2
  219. package/dist/esm/hooks/useDeviceOrientation/useDeviceOrientation.js +2 -2
  220. package/dist/esm/hooks/useDevicePixelRatio/useDevicePixelRatio.js +2 -2
  221. package/dist/esm/hooks/useDidUpdate/useDidUpdate.js +1 -1
  222. package/dist/esm/hooks/useDisclosure/useDisclosure.js +2 -2
  223. package/dist/esm/hooks/useDisplayMedia/useDisplayMedia.js +3 -0
  224. package/dist/esm/hooks/useDisplayMedia/useDisplayMedia.js.map +1 -0
  225. package/dist/esm/hooks/useDocumentEvent/useDocumentEvent.js +2 -2
  226. package/dist/esm/hooks/useDocumentEvent/useDocumentEvent.js.map +1 -1
  227. package/dist/esm/hooks/useDocumentTitle/useDocumentTitle.js +2 -2
  228. package/dist/esm/hooks/useDocumentVisibility/useDocumentVisibility.js +1 -1
  229. package/dist/esm/hooks/useElementSize/useElementSize.js +2 -2
  230. package/dist/esm/hooks/useElementSize/useElementSize.js.map +1 -1
  231. package/dist/esm/hooks/useEvent/useEvent.js +1 -1
  232. package/dist/esm/hooks/useEventListener/useEventListener.js +2 -2
  233. package/dist/esm/hooks/useEventListener/useEventListener.js.map +1 -1
  234. package/dist/esm/hooks/useEyeDropper/useEyeDropper.js +2 -2
  235. package/dist/esm/hooks/useFavicon/useFavicon.js +2 -2
  236. package/dist/esm/hooks/useField/useField.js +2 -2
  237. package/dist/esm/hooks/useFileDialog/useFileDialog.js +2 -2
  238. package/dist/esm/hooks/useFileDialog/useFileDialog.js.map +1 -1
  239. package/dist/esm/hooks/useFocus/useFocus.js +2 -2
  240. package/dist/esm/hooks/useFocus/useFocus.js.map +1 -1
  241. package/dist/esm/hooks/useFps/useFps.js +2 -2
  242. package/dist/esm/hooks/useFullscreen/useFullscreen.js +2 -2
  243. package/dist/esm/hooks/useFullscreen/useFullscreen.js.map +1 -1
  244. package/dist/esm/hooks/useGamepad/helpers/index.js +3 -0
  245. package/dist/esm/hooks/useGamepad/helpers/index.js.map +1 -0
  246. package/dist/esm/hooks/useGamepad/helpers/mapGamepadToXbox360Controller.js +1 -1
  247. package/dist/esm/hooks/useGamepad/useGamepad.js +2 -2
  248. package/dist/esm/hooks/useGamepad/useGamepad.js.map +1 -1
  249. package/dist/esm/hooks/useGeolocation/useGeolocation.js +2 -2
  250. package/dist/esm/hooks/useHash/useHash.js +2 -2
  251. package/dist/esm/hooks/useHotkeys/useHotkeys.js +2 -2
  252. package/dist/esm/hooks/useHotkeys/useHotkeys.js.map +1 -1
  253. package/dist/esm/hooks/useHover/useHover.js +2 -2
  254. package/dist/esm/hooks/useHover/useHover.js.map +1 -1
  255. package/dist/esm/hooks/useIdle/useIdle.js +2 -2
  256. package/dist/esm/hooks/useImage/useImage.js +2 -2
  257. package/dist/esm/hooks/useInfiniteScroll/useInfiniteScroll.js +2 -2
  258. package/dist/esm/hooks/useInfiniteScroll/useInfiniteScroll.js.map +1 -1
  259. package/dist/esm/hooks/useIntersectionObserver/useIntersectionObserver.js +2 -2
  260. package/dist/esm/hooks/useIntersectionObserver/useIntersectionObserver.js.map +1 -1
  261. package/dist/esm/hooks/useInterval/useInterval.js +2 -2
  262. package/dist/esm/hooks/useInterval/useInterval.js.map +1 -1
  263. package/dist/esm/hooks/useIsFirstRender/useIsFirstRender.js +1 -1
  264. package/dist/esm/hooks/useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js +1 -1
  265. package/dist/esm/hooks/useKeyPress/useKeyPress.js +2 -2
  266. package/dist/esm/hooks/useKeyPress/useKeyPress.js.map +1 -1
  267. package/dist/esm/hooks/useKeyPressEvent/useKeyPressEvent.js +2 -2
  268. package/dist/esm/hooks/useKeyPressEvent/useKeyPressEvent.js.map +1 -1
  269. package/dist/esm/hooks/useKeyboard/useKeyboard.js +2 -2
  270. package/dist/esm/hooks/useKeyboard/useKeyboard.js.map +1 -1
  271. package/dist/esm/hooks/useKeysPressed/useKeysPressed.js +2 -2
  272. package/dist/esm/hooks/useKeysPressed/useKeysPressed.js.map +1 -1
  273. package/dist/esm/hooks/useLastChanged/useLastChanged.js +2 -2
  274. package/dist/esm/hooks/useLatest/useLatest.js +1 -1
  275. package/dist/esm/hooks/useList/useList.js +2 -2
  276. package/dist/esm/hooks/useLocalStorage/useLocalStorage.js +2 -2
  277. package/dist/esm/hooks/useLocalStorage/useLocalStorage.js.map +1 -1
  278. package/dist/esm/hooks/useLogger/useLogger.js +2 -2
  279. package/dist/esm/hooks/useLongPress/useLongPress.js +2 -2
  280. package/dist/esm/hooks/useLongPress/useLongPress.js.map +1 -1
  281. package/dist/esm/hooks/useMap/useMap.js +2 -2
  282. package/dist/esm/hooks/useMeasure/useMeasure.js +2 -2
  283. package/dist/esm/hooks/useMeasure/useMeasure.js.map +1 -1
  284. package/dist/esm/hooks/useMediaQuery/useMediaQuery.js +1 -1
  285. package/dist/esm/hooks/useMemory/useMemory.js +2 -2
  286. package/dist/esm/hooks/useMemory/useMemory.js.map +1 -1
  287. package/dist/esm/hooks/useMount/useMount.js +1 -1
  288. package/dist/esm/hooks/useMouse/useMouse.js +2 -2
  289. package/dist/esm/hooks/useMouse/useMouse.js.map +1 -1
  290. package/dist/esm/hooks/useMutation/useMutation.js +2 -2
  291. package/dist/esm/hooks/useMutationObserver/useMutationObserver.js +2 -2
  292. package/dist/esm/hooks/useMutationObserver/useMutationObserver.js.map +1 -1
  293. package/dist/esm/hooks/useNetwork/useNetwork.js +2 -2
  294. package/dist/esm/hooks/useOffsetPagination/useOffsetPagination.js +2 -2
  295. package/dist/esm/hooks/useOnline/useOnline.js +1 -1
  296. package/dist/esm/hooks/useOperatingSystem/useOperatingSystem.js +1 -1
  297. package/dist/esm/hooks/useOptimistic/useOptimistic.js +2 -2
  298. package/dist/esm/hooks/useOrientation/useOrientation.js +2 -2
  299. package/dist/esm/hooks/useOrientation/useOrientation.js.map +1 -1
  300. package/dist/esm/hooks/useOtpCredential/useOtpCredential.js +2 -2
  301. package/dist/esm/hooks/usePageLeave/usePageLeave.js +2 -2
  302. package/dist/esm/hooks/usePaint/helpers/Paint.js +2 -2
  303. package/dist/esm/hooks/usePaint/helpers/Pointer.js +2 -2
  304. package/dist/esm/hooks/usePaint/usePaint.js +2 -2
  305. package/dist/esm/hooks/useParallax/useParallax.js +2 -2
  306. package/dist/esm/hooks/useParallax/useParallax.js.map +1 -1
  307. package/dist/esm/hooks/usePermission/usePermission.js +2 -2
  308. package/dist/esm/hooks/usePointerLock/usePointerLock.js +2 -2
  309. package/dist/esm/hooks/usePostMessage/usePostMessage.js +1 -1
  310. package/dist/esm/hooks/usePreferredColorScheme/usePreferredColorScheme.js +1 -1
  311. package/dist/esm/hooks/usePreferredContrast/usePreferredContrast.js +1 -1
  312. package/dist/esm/hooks/usePreferredDark/usePreferredDark.js +1 -1
  313. package/dist/esm/hooks/usePreferredLanguages/usePreferredLanguages.js +1 -1
  314. package/dist/esm/hooks/usePreferredReducedMotion/usePreferredReducedMotion.js +1 -1
  315. package/dist/esm/hooks/usePrevious/usePrevious.js +1 -1
  316. package/dist/esm/hooks/useQuery/useQuery.js +2 -2
  317. package/dist/esm/hooks/useQuery/useQuery.js.map +1 -1
  318. package/dist/esm/hooks/useQueue/useQueue.js +2 -2
  319. package/dist/esm/hooks/useRaf/useRaf.js +2 -2
  320. package/dist/esm/hooks/useRaf/useRaf.js.map +1 -1
  321. package/dist/esm/hooks/useRafValue/useRafValue.js +2 -2
  322. package/dist/esm/hooks/useRefState/useRefState.js +2 -2
  323. package/dist/esm/hooks/useRefState/useRefState.js.map +1 -1
  324. package/dist/esm/hooks/useRenderCount/useRenderCount.js +1 -1
  325. package/dist/esm/hooks/useRenderInfo/useRenderInfo.js +1 -1
  326. package/dist/esm/hooks/useRerender/useRerender.js +1 -1
  327. package/dist/esm/hooks/useResizeObserver/useResizeObserver.js +2 -2
  328. package/dist/esm/hooks/useResizeObserver/useResizeObserver.js.map +1 -1
  329. package/dist/esm/hooks/useScreenOrientation/useScreenOrientation.js +2 -2
  330. package/dist/esm/hooks/useScript/useScript.js +2 -2
  331. package/dist/esm/hooks/useScroll/useScroll.js +2 -2
  332. package/dist/esm/hooks/useScroll/useScroll.js.map +1 -1
  333. package/dist/esm/hooks/useScrollIntoView/useScrollIntoView.js +3 -0
  334. package/dist/esm/hooks/useScrollIntoView/useScrollIntoView.js.map +1 -0
  335. package/dist/esm/hooks/useScrollTo/useScrollTo.js +2 -2
  336. package/dist/esm/hooks/useScrollTo/useScrollTo.js.map +1 -1
  337. package/dist/esm/hooks/useSessionStorage/useSessionStorage.js +2 -2
  338. package/dist/esm/hooks/useSessionStorage/useSessionStorage.js.map +1 -1
  339. package/dist/esm/hooks/useSet/useSet.js +2 -2
  340. package/dist/esm/hooks/useShare/useShare.js +2 -2
  341. package/dist/esm/hooks/useShare/useShare.js.map +1 -1
  342. package/dist/esm/hooks/useStateHistory/useStateHistory.js +3 -0
  343. package/dist/esm/hooks/useStateHistory/useStateHistory.js.map +1 -0
  344. package/dist/esm/hooks/useStep/useStep.js +2 -2
  345. package/dist/esm/hooks/useStopwatch/useStopwatch.js +2 -2
  346. package/dist/esm/hooks/useStorage/useStorage.js +2 -2
  347. package/dist/esm/hooks/useStorage/useStorage.js.map +1 -1
  348. package/dist/esm/hooks/useTextDirection/useTextDirection.js +2 -2
  349. package/dist/esm/hooks/useTextDirection/useTextDirection.js.map +1 -1
  350. package/dist/esm/hooks/useTextSelection/useTextSelection.js +2 -2
  351. package/dist/esm/hooks/useThrottleCallback/useThrottleCallback.js +1 -1
  352. package/dist/esm/hooks/useThrottleCallback/useThrottleCallback.js.map +1 -1
  353. package/dist/esm/hooks/useThrottleValue/useThrottleValue.js +2 -2
  354. package/dist/esm/hooks/useThrottleValue/useThrottleValue.js.map +1 -1
  355. package/dist/esm/hooks/useTime/useTime.js +2 -2
  356. package/dist/esm/hooks/useTime/useTime.js.map +1 -1
  357. package/dist/esm/hooks/useTimeout/useTimeout.js +2 -2
  358. package/dist/esm/hooks/useTimer/useTimer.js +2 -2
  359. package/dist/esm/hooks/useTimer/useTimer.js.map +1 -1
  360. package/dist/esm/hooks/useToggle/useToggle.js +2 -2
  361. package/dist/esm/hooks/useUnmount/useUnmount.js +1 -1
  362. package/dist/esm/hooks/useVibrate/useVibrate.js +2 -2
  363. package/dist/esm/hooks/useVibrate/useVibrate.js.map +1 -1
  364. package/dist/esm/hooks/useWebSocket/useWebSocket.js +2 -2
  365. package/dist/esm/hooks/useWindowEvent/useWindowEvent.js +2 -2
  366. package/dist/esm/hooks/useWindowEvent/useWindowEvent.js.map +1 -1
  367. package/dist/esm/hooks/useWindowFocus/useWindowFocus.js +2 -2
  368. package/dist/esm/hooks/useWindowScroll/useWindowScroll.js +2 -2
  369. package/dist/esm/hooks/useWindowSize/useWindowSize.js +2 -2
  370. package/dist/esm/hooks/useWizard/useWizard.js +2 -2
  371. package/dist/esm/hooks/useWizard/useWizard.js.map +1 -1
  372. package/dist/esm/index.js +2 -2
  373. package/dist/esm/utils/helpers/debounce.js +1 -1
  374. package/dist/esm/utils/helpers/{time/getDate.js → getDate.js} +1 -1
  375. package/dist/esm/utils/helpers/getDate.js.map +1 -0
  376. package/dist/esm/utils/helpers/getElement.js +1 -1
  377. package/dist/esm/utils/helpers/getRetry.js +1 -1
  378. package/dist/esm/utils/helpers/index.js +2 -2
  379. package/dist/esm/utils/helpers/isTarget.js +2 -2
  380. package/dist/esm/utils/helpers/isTarget.js.map +1 -1
  381. package/dist/esm/utils/helpers/throttle.js +1 -1
  382. package/dist/esm/utils/helpers/throttle.js.map +1 -1
  383. package/dist/types/index.d.ts +202 -38
  384. package/package.json +91 -114
  385. package/LICENSE +0 -21
  386. package/dist/cjs/_rollupPluginBabelHelpers-Cyl0H0H0.js +0 -3
  387. package/dist/cjs/_rollupPluginBabelHelpers-Cyl0H0H0.js.map +0 -1
  388. package/dist/cjs/hooks/useBreakpoints/constants/breakpoints.js.map +0 -1
  389. package/dist/cjs/utils/helpers/time/getDate.js.map +0 -1
  390. package/dist/esm/_rollupPluginBabelHelpers-USgtHx7z.js +0 -3
  391. package/dist/esm/_rollupPluginBabelHelpers-USgtHx7z.js.map +0 -1
  392. package/dist/esm/hooks/useBreakpoints/constants/breakpoints.js.map +0 -1
  393. package/dist/esm/utils/helpers/time/getDate.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"useHotkeys.js","sources":["../../../../src/hooks/useHotkeys/useHotkeys.ts"],"sourcesContent":["import { useState } from 'react';\n\nimport type { UseEventListenerTarget } from '../useEventListener/useEventListener';\n\nimport { useDidUpdate } from '../useDidUpdate/useDidUpdate';\nimport { useEventListener } from '../useEventListener/useEventListener';\n\n/** The use hotkeys params type */\nexport interface UseHotkeysOptions {\n /** Alias map for hotkeys */\n aliasMap?: Record<string, string>;\n /** Enable or disable the event listeners */\n enabled?: boolean;\n /** Whether to prevent the default behavior of the event */\n preventDefault?: boolean;\n /** The target to attach the event listeners to */\n target?: UseEventListenerTarget;\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\nexport type UseHotkeysHotkeys = string | string[];\nexport interface UseHotkeysKey {\n alias: string;\n code: string;\n key: string;\n}\n\n/**\n * @name useHotkeys\n * @description - Hook that listens for hotkeys\n * @category Sensors\n *\n * @param {UseHotkeysHotkeys} hotkeys The key or keys to listen for\n * @param {(event: KeyboardEvent) => void} callback The callback function to be called when the hotkey is pressed\n * @param {UseEventListenerTarget} [options.target=window] The target to attach the event listeners to\n * @param {boolean} [options.enabled=true] The enable or disable the event listeners\n * @param {boolean} [options.preventDefault=true] Whether to prevent the default behavior of the event\n * @param {Record<string, string>} [options.aliasMap] Alias map for hotkeys\n * @returns {useKeysPressedReturns} Array of strings with keys that were press\n *\n * @example\n * useHotkeys('control+a', () => console.log('hotkey pressed'));\n *\n * @example\n * useHotkeys('ControlLeft+KeyA', () => console.log('hotkey pressed'));\n */\nexport const useHotkeys = (\n hotkeys: UseHotkeysHotkeys,\n callback: (event: KeyboardEvent) => void,\n options?: UseHotkeysOptions\n) => {\n const enabled = options?.enabled ?? true;\n const preventDefault = options?.preventDefault ?? true;\n const [, setKeys] = useState<UseHotkeysKey[]>([]);\n\n const onKeyDown = (event: KeyboardEvent) => {\n if (preventDefault) event.preventDefault();\n\n if (!enabled) return;\n\n setKeys((prevKeys) => {\n if (prevKeys.some(({ code }) => code === event.code)) return prevKeys;\n const alias = options?.aliasMap?.[event.key] ?? options?.aliasMap?.[event.key] ?? event.code;\n const updatedKeys = [...prevKeys, { key: event.key, code: event.code, alias }];\n\n if (Array.isArray(hotkeys)) {\n hotkeys.forEach((hotkey) => {\n const isMatch = isHotkeyMatch(hotkey, updatedKeys);\n if (isMatch) callback(event);\n });\n } else {\n const isMatch = isHotkeyMatch(hotkeys, updatedKeys);\n if (isMatch) callback(event);\n }\n\n return updatedKeys;\n });\n };\n\n const onKeyUp = (event: KeyboardEvent) => {\n if (!enabled) return;\n setKeys((prevKeys) => prevKeys.filter(({ code }) => code !== event.code));\n };\n\n useDidUpdate(() => {\n setKeys([]);\n }, [enabled]);\n\n useEventListener(options?.target ?? window, 'keydown', onKeyDown);\n useEventListener(options?.target ?? window, 'keyup', onKeyUp);\n};\n"],"names":["isHotkeyMatch","hotkey","keys","toLowerCase","split","map","key","trim","every","find","updatedKey","code","toLocaleLowerCase","alias","useHotkeys","hotkeys","callback","options","_options$enabled","_options$preventDefau","_options$target","_options$target2","enabled","preventDefault","_useState","useState","setKeys","_slicedToArray","useDidUpdate","useEventListener","target","window","event","prevKeys","_ref2","_options$aliasMap$eve","_options$aliasMap","_options$aliasMap2","some","_ref","aliasMap","updatedKeys","concat","_toConsumableArray","Array","isArray","forEach","filter","_ref3"],"mappings":";0cAmBO,IAAMA,EAAgB,SAACC,EAAgBC,GAAqB,OACjED,EACGE,cACAC,MAAM,UACNC,KAAI,SAACC,GAAG,OAAKA,EAAIC,MAAM,IACvBC,OAAM,SAACF,GAAG,OACTJ,EAAKO,MACH,SAACC,GAAU,OACTJ,IAAQI,EAAWC,KAAKC,qBACxBN,IAAQI,EAAWJ,IAAIM,qBACvBN,IAAQI,EAAWG,MAAMD,mBAAmB,GAC/C,GACF,EA4BQE,EAAa,SACxBC,EACAC,EACAC,GACG,IAAAC,EAAAC,EAAAC,EAAAC,EACGC,EAA0BJ,QAAnBA,EAAGD,aAAO,EAAPA,EAASK,eAAOJ,IAAAA,GAAAA,EAC1BK,EAAwCJ,QAA1BA,EAAGF,aAAO,EAAPA,EAASM,sBAAcJ,IAAAA,GAAAA,EAC9CK,EAAoBC,EAA0B,IAArCC,EAAwCC,EAAAH,EAAA,GAAjC,GA+BhBI,GAAa,WACXF,EAAQ,GACV,GAAG,CAACJ,IAEJO,UAAgBT,EAACH,aAAO,EAAPA,EAASa,cAAM,IAAAV,EAAAA,EAAIW,OAAQ,WAjC1B,SAACC,GACbT,GAAgBS,EAAMT,iBAErBD,GAELI,GAAQ,SAACO,GAAa,IAAAC,EAAAC,EAAAC,EAAAC,EACpB,GAAIJ,EAASK,MAAK,SAAAC,GAAO,OAAAA,EAAJ5B,OAAoBqB,EAAMrB,IAAK,IAAE,OAAOsB,EAC7D,IAAMpB,EAAwE,QAAnEqB,EAAiC,QAAjCC,EAAGlB,SAAiBmB,QAAVA,EAAPnB,EAASuB,gBAATJ,IAAiBA,OAAjBA,EAAAA,EAAoBJ,EAAM1B,YAAI,IAAA6B,EAAAA,EAAIlB,SAAiB,QAAVoB,EAAPpB,EAASuB,gBAAQ,IAAAH,OAAA,EAAjBA,EAAoBL,EAAM1B,YAAI,IAAA4B,EAAAA,EAAIF,EAAMrB,KAClF8B,EAAWC,GAAAA,OAAAC,EAAOV,GAAU,CAAA,CAAE3B,IAAK0B,EAAM1B,IAAKK,KAAMqB,EAAMrB,KAAME,MAAAA,KAElE+B,MAAMC,QAAQ9B,GAChBA,EAAQ+B,SAAQ,SAAC7C,GACCD,EAAcC,EAAQwC,IACzBzB,EAASgB,EACxB,IAEgBhC,EAAce,EAAS0B,IAC1BzB,EAASgB,GAGxB,OAAOS,CACT,GACD,IAYDZ,UAAgBR,EAACJ,aAAO,EAAPA,EAASa,cAAM,IAAAT,EAAAA,EAAIU,OAAQ,SAV5B,SAACC,GACVV,GACLI,GAAQ,SAACO,GAAQ,OAAKA,EAASc,QAAO,SAAAC,GAAO,OAAAA,EAAJrC,OAAoBqB,EAAMrB,UACpE,GAQH"}
1
+ {"version":3,"file":"useHotkeys.js","sources":["../../../../src/hooks/useHotkeys/useHotkeys.ts"],"sourcesContent":["import { useEffect, useRef } from 'react';\n\nimport { getElement } from '@/utils/helpers';\n\nimport type { StateRef } from '../useRefState/useRefState';\n\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 <Target extends UseHotkeysTarget>(\n target: Target,\n hotkeys: UseHotkeysHotkeys,\n callback: (event: KeyboardEvent) => void,\n options?: UseHotkeysOptions\n ): void;\n\n <Target extends UseHotkeysTarget>(\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 * @template Target The target element\n * @param {Target} [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 =\n params[0] instanceof Element ||\n (params[0] && typeof params[0] === 'object' && 'current' in params[0])\n ? params[0]\n : 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 callbackRef = useRef(callback);\n callbackRef.current = callback;\n\n const enabled = options?.enabled ?? true;\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 const onKeyDown = (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 callbackRef.current(event);\n };\n\n const onKeyUp = (event: KeyboardEvent) => {\n if (!enabled) return;\n keysRef.current = keysRef.current.filter(({ code }) => code !== event.code);\n };\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]);\n\n if (target) return;\n return internalRef;\n}) as UseHotkeys;\n"],"names":["isHotkeyMatch","hotkey","keys","toLowerCase","split","map","key","trim","every","find","updatedKey","code","toLocaleLowerCase","alias","useHotkeys","_options$enabled","target","arguments","length","undefined","Element","_typeof","hotkeys","callback","options","internalRef","useRefState","window","keysRef","useRef","callbackRef","current","enabled","useEffect","state","element","getElement","onKeyDown","event","_options$alias$event$","_options$alias","some","_ref","updatedKeys","concat","_toConsumableArray","h","preventDefault","onKeyUp","filter","_ref2","addEventListener","removeEventListener"],"mappings":";gPAgBO,IAAMA,EAAgB,SAACC,EAAgBC,GAAqB,OACjED,EACGE,cACAC,MAAM,YACNC,KAAI,SAACC,GAAG,OAAKA,EAAIC,MAAM,IACvBC,OAAM,SAACF,GAAG,OACTJ,EAAKO,MACH,SAACC,GAAU,OACTJ,IAAQI,EAAWC,KAAKC,qBACxBN,IAAQI,EAAWJ,IAAIM,qBACvBN,IAAQI,EAAWG,MAAMD,mBAAmB,GAC/C,GACF,EAkEQE,EAAc,WAAsB,IAAAC,EACzCC,GACJC,UAAAC,QAAAC,OAAAA,EAAAF,UAAqBG,cAAAA,UACpBH,UAAAC,QAAAC,OAAAA,EAAAF,UAAA,KAAkC,WAArBI,EAAAJ,UAAAC,QAAAC,OAAAA,EAAAF,UAAqB,KAAY,YAASA,UAAAC,QAAA,OAAAC,EAAAF,UAAc,IAAAA,UAAAC,QAAA,OAAAC,EAAAF,UAAA,QAElEE,EACAG,EAAWN,EAAMC,UAAAC,QAAAC,OAAAA,EAAAF,UAAA,GAAAA,UAAAC,eAAAC,EAAAF,UAA8C,GAC/DM,EAAYP,EAAMC,UAAAC,QAAAC,OAAAA,EAAAF,UAAA,GAAAA,UAAAC,eAAAC,EAAAF,UAA2D,GAC7EO,EAAWR,EAAMC,UAAAC,QAAAC,OAAAA,EAAAF,UAAA,GAAAA,UAAAC,eAAAC,EAAAF,UAA0D,GAE3EQ,EAAcC,EAAYC,QAC1BC,EAAUC,EAAwB,IAClCC,EAAcD,EAAON,GAC3BO,EAAYC,QAAUR,EAEtB,IAAMS,EAA0BjB,QAAnBA,EAAGS,aAAO,EAAPA,EAASQ,eAAOjB,IAAAA,GAAAA,EAuChC,GArCAkB,GAAU,WAER,GADAL,EAAQG,QAAU,GACbf,GAAWS,EAAYS,OAAUF,EAAtC,CAEA,IAAMG,EAAWnB,EAASoB,EAAWpB,GAAUS,EAAYM,QAC3D,GAAKI,EAAL,CAEA,IAAME,EAAY,SAACC,GAAyB,IAAAC,EAAAC,EAC1C,GAAKR,IAEDJ,EAAQG,QAAQU,MAAK,SAAAC,GAAO,OAAAA,EAAJ/B,OAAoB2B,EAAM3B,IAAI,IAA1D,CAEA,IAAME,EAAmC0B,QAA9BA,EAAGf,SAAc,QAAPgB,EAAPhB,EAASX,aAAK,IAAA2B,OAAA,EAAdA,EAAiBF,EAAMhC,YAAIiC,IAAAA,EAAAA,EAAID,EAAM3B,KAC7CgC,KAAWC,OAAAC,EAAOjB,EAAQG,SAAS,CAAA,CAAEzB,IAAKgC,EAAMhC,IAAKK,KAAM2B,EAAM3B,KAAME,MAAAA,KAC7Ee,EAAQG,QAAUY,EAEErB,EAAQlB,MAAM,KAAKC,KAAI,SAACyC,GAAC,OAAKA,EAAEvC,UACxBkC,MAAK,SAACxC,GAAM,OAAKD,EAAcC,EAAQ0C,QAEnEL,EAAMS,iBACNjB,EAAYC,QAAQO,GAVyC,CAW9D,EAEKU,EAAU,SAACV,GACVN,IACLJ,EAAQG,QAAUH,EAAQG,QAAQkB,QAAO,SAAAC,GAAO,OAAAA,EAAJvC,OAAoB2B,EAAM3B,QACvE,EAKD,OAHAwB,EAAQgB,iBAAiB,UAAWd,GACpCF,EAAQgB,iBAAiB,QAASH,GAE3B,WACLb,EAAQiB,oBAAoB,UAAWf,GACvCF,EAAQiB,oBAAoB,QAASJ,EACtC,CA7Ba,CAHiC,CAiCjD,GAAG,CAAChC,EAAQS,EAAYS,MAAOF,EAASV,KAEpCN,EACJ,OAAOS,CACT"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.91 */
2
- import{b as e,_ as r}from"../../_rollupPluginBabelHelpers-USgtHx7z.js";import{useState as t,useRef as n,useEffect as o}from"react";import{getElement as i}from"../../utils/helpers/getElement.js";import{isTarget as l}from"../../utils/helpers/isTarget.js";import{useRefState as u}from"../useRefState/useRefState.js";import"../useRerender/useRerender.js";var v=function(){var v=l(arguments.length<=0?void 0:arguments[0])?arguments.length<=0?void 0:arguments[0]:void 0,s=v?"object"===e(arguments.length<=1?void 0:arguments[1])?arguments.length<=1?void 0:arguments[1]:{onEntry:arguments.length<=1?void 0:arguments[1]}:"object"===e(arguments.length<=0?void 0:arguments[0])?arguments.length<=0?void 0:arguments[0]:{onEntry:arguments.length<=0?void 0:arguments[0]},a=t(!1),d=r(a,2),m=d[0],c=d[1],f=u(),g=n(s);return g.current=s,o((function(){if(v||f.current){var e=v?i(v):f.current;if(e){var r=function(e){var r,t;null===(r=g.current)||void 0===r||null===(t=r.onEntry)||void 0===t||t.call(r,e),c(!0)},t=function(e){var r,t;null===(r=g.current)||void 0===r||null===(t=r.onLeave)||void 0===t||t.call(r,e),c(!1)};return e.addEventListener("mouseenter",r),e.addEventListener("mouseleave",t),function(){e.removeEventListener("mouseenter",r),e.removeEventListener("mouseleave",t)}}}}),[v,f.current]),v?m:[f,m]};export{v as useHover};
1
+ /* @license @siberiacancode/reactuse v0.0.94 */
2
+ import{b as e,_ as t}from"../../_rollupPluginBabelHelpers-Dp_7XWBJ.js";import{useState as n,useRef as r,useEffect as o}from"react";import{getElement as i}from"../../utils/helpers/getElement.js";import{isTarget as l}from"../../utils/helpers/isTarget.js";import{useRefState as v}from"../useRefState/useRefState.js";var u=function(){var u=l(arguments.length<=0?void 0:arguments[0])?arguments.length<=0?void 0:arguments[0]:void 0,s=u?"object"===e(arguments.length<=1?void 0:arguments[1])?arguments.length<=1?void 0:arguments[1]:{onEntry:arguments.length<=1?void 0:arguments[1]}:"object"===e(arguments.length<=0?void 0:arguments[0])?arguments.length<=0?void 0:arguments[0]:{onEntry:arguments.length<=0?void 0:arguments[0]},a=n(!1),d=t(a,2),m=d[0],c=d[1],f=v(),g=r(s);return g.current=s,o((function(){if(u||f.state){var e=u?i(u):f.current;if(e){var t=function(e){var t,n;null===(t=g.current)||void 0===t||null===(n=t.onEntry)||void 0===n||n.call(t,e),c(!0)},n=function(e){var t,n;null===(t=g.current)||void 0===t||null===(n=t.onLeave)||void 0===n||n.call(t,e),c(!1)};return e.addEventListener("mouseenter",t),e.addEventListener("mouseleave",n),function(){e.removeEventListener("mouseenter",t),e.removeEventListener("mouseleave",n)}}}}),[u,f.state]),u?m:[f,m]};export{u as useHover};
3
3
  //# sourceMappingURL=useHover.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useHover.js","sources":["../../../../src/hooks/useHover/useHover.ts"],"sourcesContent":["import type { RefObject } from 'react';\n\nimport { useEffect, useRef, useState } from 'react';\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 target type */\nexport type UseHoverTarget = string | Element | RefObject<Element | null | undefined>;\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 extends UseHoverTarget>(target: Target, callback?: (event: Event) => void): boolean;\n\n <Target extends UseHoverTarget>(target: Target, options?: UseHoverOptions): boolean;\n\n <Target extends UseHoverTarget>(\n callback?: (event: Event) => void,\n target?: never\n ): [StateRef<Target>, boolean];\n\n <Target extends UseHoverTarget>(\n options?: UseHoverOptions,\n target?: never\n ): [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 * @template Target The target element\n * @param {Target} 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 * @template Target The target element\n * @param {Target} 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 UseHoverTarget | 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.current) 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.current]);\n\n if (target) return hovering;\n return [internalRef, hovering] as const;\n}) as UseHover;\n"],"names":["useHover","target","isTarget","arguments","length","undefined","options","_typeof","onEntry","_useState","useState","_useState2","_slicedToArray","hovering","setHovering","internalRef","useRefState","internalOptionsRef","useRef","current","useEffect","element","getElement","onMouseEnter","event","_internalOptionsRef$c","_internalOptionsRef$c2","call","onMouseLeave","_internalOptionsRef$c3","_internalOptionsRef$c4","onLeave","addEventListener","removeEventListener"],"mappings":";mWA8EaA,EAAY,WACvB,IAAMC,EAAUC,EAAQC,UAAAC,QAAAC,OAAAA,EAAAF,cAAWA,UAAAC,eAAAC,EAAAF,UAAA,QAAeE,EAE5CC,EACJL,EACyB,WAArBM,EAAAJ,UAAAC,QAAAC,OAAAA,EAAAF,UAAA,IAA6BA,UAAAC,QAAAC,OAAAA,EAAAF,UAE3B,GAAA,CAAEK,QAAOL,UAAAC,QAAAC,OAAAA,EAAAF,UAAA,IACU,WAArBI,EAAAJ,UAAAC,QAAA,OAAAC,EAAAF,cAA6BA,UAAAC,eAAAC,EAAAF,UAE3B,GAAA,CAAEK,QAAOL,UAAAC,QAAAC,OAAAA,EAAAF,UAAA,IAGjBM,EAAgCC,GAAS,GAAMC,EAAAC,EAAAH,EAAA,GAAxCI,EAAQF,EAAA,GAAEG,EAAWH,EAAA,GACtBI,EAAcC,IACdC,EAAqBC,EAAOZ,GA4BlC,OA3BAW,EAAmBE,QAAUb,EAE7Bc,GAAU,WACR,GAAKnB,GAAWc,EAAYI,QAA5B,CACA,IAAME,EAAWpB,EAASqB,EAAWrB,GAAUc,EAAYI,QAE3D,GAAKE,EAAL,CAEA,IAAME,EAAe,SAACC,GAAiB,IAAAC,EAAAC,EACXD,QAA1BA,EAAAR,EAAmBE,eAAOO,IAAAD,GAAS,QAATC,EAA1BD,EAA4BjB,eAAO,IAAAkB,GAAnCA,EAAAC,KAAAF,EAAsCD,GACtCV,GAAY,EACb,EAEKc,EAAe,SAACJ,GAAiB,IAAAK,EAAAC,EACXD,QAA1BA,EAAAZ,EAAmBE,eAAOW,IAAAD,GAAS,QAATC,EAA1BD,EAA4BE,eAAO,IAAAD,GAAnCA,EAAAH,KAAAE,EAAsCL,GACtCV,GAAY,EACb,EAKD,OAHAO,EAAQW,iBAAiB,aAAcT,GACvCF,EAAQW,iBAAiB,aAAcJ,GAEhC,WACLP,EAAQY,oBAAoB,aAAcV,GAC1CF,EAAQY,oBAAoB,aAAcL,EAC3C,CAlBa,CAHuB,CAsBtC,GAAE,CAAC3B,EAAQc,EAAYI,UAEpBlB,EAAeY,EACZ,CAACE,EAAaF,EACvB"}
1
+ {"version":3,"file":"useHover.js","sources":["../../../../src/hooks/useHover/useHover.ts"],"sourcesContent":["import type { RefObject } from 'react';\n\nimport { useEffect, useRef, useState } from 'react';\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 target type */\nexport type UseHoverTarget = string | Element | RefObject<Element | null | undefined>;\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 extends UseHoverTarget>(target: Target, callback?: (event: Event) => void): boolean;\n\n <Target extends UseHoverTarget>(target: Target, options?: UseHoverOptions): boolean;\n\n <Target extends UseHoverTarget>(\n callback?: (event: Event) => void,\n target?: never\n ): [StateRef<Target>, boolean];\n\n <Target extends UseHoverTarget>(\n options?: UseHoverOptions,\n target?: never\n ): [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 * @template Target The target element\n * @param {Target} 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 * @template Target The target element\n * @param {Target} 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 UseHoverTarget | 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","target","isTarget","arguments","length","undefined","options","_typeof","onEntry","_useState","useState","_useState2","_slicedToArray","hovering","setHovering","internalRef","useRefState","internalOptionsRef","useRef","current","useEffect","state","element","getElement","onMouseEnter","event","_internalOptionsRef$c","_internalOptionsRef$c2","call","onMouseLeave","_internalOptionsRef$c3","_internalOptionsRef$c4","onLeave","addEventListener","removeEventListener"],"mappings":";6TA8EaA,EAAY,WACvB,IAAMC,EAAUC,EAAQC,UAAAC,QAAAC,OAAAA,EAAAF,cAAWA,UAAAC,eAAAC,EAAAF,UAAA,QAAeE,EAE5CC,EACJL,EACyB,WAArBM,EAAAJ,UAAAC,QAAAC,OAAAA,EAAAF,UAAA,IAA6BA,UAAAC,QAAAC,OAAAA,EAAAF,UAE3B,GAAA,CAAEK,QAAOL,UAAAC,QAAAC,OAAAA,EAAAF,UAAA,IACU,WAArBI,EAAAJ,UAAAC,QAAA,OAAAC,EAAAF,cAA6BA,UAAAC,eAAAC,EAAAF,UAE3B,GAAA,CAAEK,QAAOL,UAAAC,QAAAC,OAAAA,EAAAF,UAAA,IAGjBM,EAAgCC,GAAS,GAAMC,EAAAC,EAAAH,EAAA,GAAxCI,EAAQF,EAAA,GAAEG,EAAWH,EAAA,GACtBI,EAAcC,IACdC,EAAqBC,EAAOZ,GA4BlC,OA3BAW,EAAmBE,QAAUb,EAE7Bc,GAAU,WACR,GAAKnB,GAAWc,EAAYM,MAA5B,CACA,IAAMC,EAAWrB,EAASsB,EAAWtB,GAAUc,EAAYI,QAE3D,GAAKG,EAAL,CAEA,IAAME,EAAe,SAACC,GAAiB,IAAAC,EAAAC,EACXD,QAA1BA,EAAAT,EAAmBE,eAAOQ,IAAAD,GAAS,QAATC,EAA1BD,EAA4BlB,eAAO,IAAAmB,GAAnCA,EAAAC,KAAAF,EAAsCD,GACtCX,GAAY,EACb,EAEKe,EAAe,SAACJ,GAAiB,IAAAK,EAAAC,EACXD,QAA1BA,EAAAb,EAAmBE,eAAOY,IAAAD,GAAS,QAATC,EAA1BD,EAA4BE,eAAO,IAAAD,GAAnCA,EAAAH,KAAAE,EAAsCL,GACtCX,GAAY,EACb,EAKD,OAHAQ,EAAQW,iBAAiB,aAAcT,GACvCF,EAAQW,iBAAiB,aAAcJ,GAEhC,WACLP,EAAQY,oBAAoB,aAAcV,GAC1CF,EAAQY,oBAAoB,aAAcL,EAC3C,CAlBa,CAHqB,CAsBpC,GAAE,CAAC5B,EAAQc,EAAYM,QAEpBpB,EAAeY,EACZ,CAACE,EAAaF,EACvB"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.91 */
2
- import{_ as e}from"../../_rollupPluginBabelHelpers-USgtHx7z.js";import{useState as t,useEffect as n}from"react";import{throttle as i}from"../../utils/helpers/throttle.js";var o=["mousemove","mousedown","keydown","touchstart","wheel","resize"],r=function(){var r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:6e4,u=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=u.initialValue,c=void 0!==a&&a,d=u.events,s=void 0===d?o:d,l=t(c),m=e(l,2),v=m[0],f=m[1],h=t(Date.now()),w=e(h,2),p=w[0],E=w[1];return n((function(){var e,t=function(){return f(!0)},n=i((function(){f(!1),E(Date.now()),clearTimeout(e),e=setTimeout(t,r)}),500),o=function(){document.hidden||n()};return e=setTimeout(t,r),s.forEach((function(e){return window.addEventListener(e,n)})),document.addEventListener("visibilitychange",o),function(){s.forEach((function(e){return window.addEventListener(e,n)})),document.removeEventListener("visibilitychange",o),clearTimeout(e)}}),[r,s]),{idle:v,lastActive:p}};export{r as useIdle};
1
+ /* @license @siberiacancode/reactuse v0.0.94 */
2
+ import{_ as e}from"../../_rollupPluginBabelHelpers-Dp_7XWBJ.js";import{useState as t,useEffect as n}from"react";import{throttle as i}from"../../utils/helpers/throttle.js";var o=["mousemove","mousedown","keydown","touchstart","wheel","resize"],r=function(){var r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:6e4,u=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=u.initialValue,c=void 0!==a&&a,d=u.events,s=void 0===d?o:d,l=t(c),m=e(l,2),v=m[0],f=m[1],h=t(Date.now()),w=e(h,2),p=w[0],E=w[1];return n((function(){var e,t=function(){return f(!0)},n=i((function(){f(!1),E(Date.now()),clearTimeout(e),e=setTimeout(t,r)}),500),o=function(){document.hidden||n()};return e=setTimeout(t,r),s.forEach((function(e){return window.addEventListener(e,n)})),document.addEventListener("visibilitychange",o),function(){s.forEach((function(e){return window.addEventListener(e,n)})),document.removeEventListener("visibilitychange",o),clearTimeout(e)}}),[r,s]),{idle:v,lastActive:p}};export{r as useIdle};
3
3
  //# sourceMappingURL=useIdle.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.91 */
2
- import{c as r,a as e,d as s,e as t}from"../../_rollupPluginBabelHelpers-USgtHx7z.js";import{useQuery as o}from"../useQuery/useQuery.js";import"react";import"../../utils/helpers/getRetry.js";import"../useDidUpdate/useDidUpdate.js";import"../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js";import"../useMount/useMount.js";var n=function(){var r=s(t().mark((function r(e){var s,o=arguments;return t().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return s=o.length>1&&void 0!==o[1]?o[1]:{},r.abrupt("return",new Promise((function(r,t){var o=new Image,n=s.srcset,i=s.sizes,u=s.class,a=s.loading,c=s.crossorigin,p=s.referrerPolicy;o.src=e,n&&(o.srcset=n),i&&(o.sizes=i),u&&(o.className=u),a&&(o.loading=a),c&&(o.crossOrigin=c),p&&(o.referrerPolicy=p),o.onload=function(){return r(o)},o.onerror=t})));case 2:case"end":return r.stop()}}),r)})));return function(e){return r.apply(this,arguments)}}(),i=function(s,t){var i,u=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return o((function(){return n(s,t)}),r({keys:[s].concat(e(null!==(i=u.keys)&&void 0!==i?i:[]))},u))};export{i as useImage};
1
+ /* @license @siberiacancode/reactuse v0.0.94 */
2
+ import{c as r,a as e,d as s,e as t}from"../../_rollupPluginBabelHelpers-Dp_7XWBJ.js";import{useQuery as o}from"../useQuery/useQuery.js";import"react";import"../../utils/helpers/getRetry.js";import"../useDidUpdate/useDidUpdate.js";import"../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js";import"../useMount/useMount.js";var n=function(){var r=s(t().mark((function r(e){var s,o=arguments;return t().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return s=o.length>1&&void 0!==o[1]?o[1]:{},r.abrupt("return",new Promise((function(r,t){var o=new Image,n=s.srcset,i=s.sizes,u=s.class,a=s.loading,c=s.crossorigin,p=s.referrerPolicy;o.src=e,n&&(o.srcset=n),i&&(o.sizes=i),u&&(o.className=u),a&&(o.loading=a),c&&(o.crossOrigin=c),p&&(o.referrerPolicy=p),o.onload=function(){return r(o)},o.onerror=t})));case 2:case"end":return r.stop()}}),r)})));return function(e){return r.apply(this,arguments)}}(),i=function(s,t){var i,u=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return o((function(){return n(s,t)}),r({keys:[s].concat(e(null!==(i=u.keys)&&void 0!==i?i:[]))},u))};export{i as useImage};
3
3
  //# sourceMappingURL=useImage.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.91 */
2
- import{_ as e,d as r,e as t}from"../../_rollupPluginBabelHelpers-USgtHx7z.js";import{useState as n,useRef as o,useEffect as i}from"react";import{getElement as l}from"../../utils/helpers/getElement.js";import{isTarget as s}from"../../utils/helpers/isTarget.js";import{useEvent as u}from"../useEvent/useEvent.js";import{useRefState as a}from"../useRefState/useRefState.js";import"../useRerender/useRerender.js";var c=function(){var c,f,v=s(arguments.length<=0?void 0:arguments[0])?arguments.length<=0?void 0:arguments[0]:void 0,d=v?arguments.length<=1?void 0:arguments[1]:arguments.length<=0?void 0:arguments[0],p=v?arguments.length<=2?void 0:arguments[2]:arguments.length<=1?void 0:arguments[1],m=null!==(c=null==p?void 0:p.direction)&&void 0!==c?c:"bottom",h=null!==(f=null==p?void 0:p.distance)&&void 0!==f?f:10,g=n(!1),b=e(g,2),j=b[0],x=b[1],E=a(),R=o(d);R.current=d;var k=u(function(){var e=r(t().mark((function e(r){var n,o,i,l,s,u,a;return t().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!j){e.next=2;break}return e.abrupt("return");case 2:if(n=r.target,o=n.clientHeight,i=n.scrollHeight,l=n.scrollTop,s=n.clientWidth,u=n.scrollWidth,a=n.scrollLeft,!({bottom:i-(l+o),top:l,right:u-(a+s),left:a}[m]<=h)){e.next=11;break}return x(!0),e.next=10,R.current(r);case 10:x(!1);case 11:case"end":return e.stop()}}),e)})));return function(r){return e.apply(this,arguments)}}());return i((function(){if(v||E.current){var e=v?l(v):E.current;if(e)return e.addEventListener("scroll",k),function(){e.removeEventListener("scroll",k)}}}),[v,E.current,m,h]),v?j:{ref:E,loading:j}};export{c as useInfiniteScroll};
1
+ /* @license @siberiacancode/reactuse v0.0.94 */
2
+ import{_ as t,d as e,e as r}from"../../_rollupPluginBabelHelpers-Dp_7XWBJ.js";import{useState as n,useRef as o,useEffect as i}from"react";import{getElement as l}from"../../utils/helpers/getElement.js";import{isTarget as s}from"../../utils/helpers/isTarget.js";import{useEvent as u}from"../useEvent/useEvent.js";import{useRefState as a}from"../useRefState/useRefState.js";var c=function(){var c,f,v=s(arguments.length<=0?void 0:arguments[0])?arguments.length<=0?void 0:arguments[0]:void 0,d=v?arguments.length<=1?void 0:arguments[1]:arguments.length<=0?void 0:arguments[0],p=v?arguments.length<=2?void 0:arguments[2]:arguments.length<=1?void 0:arguments[1],m=null!==(c=null==p?void 0:p.direction)&&void 0!==c?c:"bottom",h=null!==(f=null==p?void 0:p.distance)&&void 0!==f?f:10,g=n(!1),b=t(g,2),j=b[0],x=b[1],E=a(),k=o(d);k.current=d;var H=u(function(){var t=e(r().mark((function t(e){var n,o,i,l,s,u,a;return r().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(!j){t.next=2;break}return t.abrupt("return");case 2:if(n=e.target,o=n.clientHeight,i=n.scrollHeight,l=n.scrollTop,s=n.clientWidth,u=n.scrollWidth,a=n.scrollLeft,!({bottom:i-(l+o),top:l,right:u-(a+s),left:a}[m]<=h)){t.next=11;break}return x(!0),t.next=10,k.current(e);case 10:x(!1);case 11:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}());return i((function(){if(v||E.state){var t=v?l(v):E.current;if(t)return t.addEventListener("scroll",H),function(){t.removeEventListener("scroll",H)}}}),[v,E.state,m,h]),v?j:{ref:E,loading:j}};export{c as useInfiniteScroll};
3
3
  //# sourceMappingURL=useInfiniteScroll.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useInfiniteScroll.js","sources":["../../../../src/hooks/useInfiniteScroll/useInfiniteScroll.ts"],"sourcesContent":["import type { RefObject } from 'react';\n\nimport { useEffect, useRef, useState } from 'react';\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 target element type */\nexport type UseInfiniteScrollTarget = string | Element | RefObject<Element | null>;\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 <Target extends UseInfiniteScrollTarget>(\n callback: (event: Event) => void,\n options?: UseInfiniteScrollOptions,\n target?: never\n ): {\n ref: StateRef<Target>;\n loading: boolean;\n };\n\n <Target extends UseInfiniteScrollTarget>(\n target: Target,\n callback: (event: Event) => void,\n options?: UseInfiniteScrollOptions\n ): boolean;\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 * @template Target The target element\n * @param {Target} 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) => {\n const target = (isTarget(params[0]) ? params[0] : undefined) as\n | UseInfiniteScrollTarget\n | undefined;\n const callback = (target ? params[1] : params[0]) as (event: Event) => void;\n const options = (target ? params[2] : params[1]) as UseInfiniteScrollOptions;\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.current) 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.current, direction, distance]);\n\n if (target) return loading;\n return {\n ref: internalRef,\n loading\n };\n}) as UseInfiniteScroll;\n"],"names":["useInfiniteScroll","_options$direction","_options$distance","target","isTarget","arguments","length","undefined","callback","options","direction","distance","_useState","useState","_useState2","_slicedToArray","loading","setIsLoading","internalRef","useRefState","internalCallbackRef","useRef","current","onLoadMore","useEvent","_ref","_asyncToGenerator","_regeneratorRuntime","mark","_callee","event","_ref2","clientHeight","scrollHeight","scrollTop","clientWidth","scrollWidth","scrollLeft","wrap","_context","prev","next","abrupt","bottom","top","right","left","stop","_x","apply","this","useEffect","element","getElement","addEventListener","removeEventListener","ref"],"mappings":";6ZAiEaA,EAAqB,WAAe,IAAAC,EAAAC,EACzCC,EAAUC,EAAQC,UAAAC,QAAAC,OAAAA,EAAAF,cAAWA,UAAAC,eAAAC,EAAAF,UAAA,QAAeE,EAG5CC,EAAYL,EAAME,UAAAC,QAAAC,OAAAA,EAAAF,UAAA,GAAAA,UAAAC,eAAAC,EAAAF,UAAmD,GACrEI,EAAWN,EAAME,UAAAC,QAAAC,OAAAA,EAAAF,UAAA,GAAAA,UAAAC,eAAAC,EAAAF,UAAqD,GAEtEK,EAA8BT,QAArBA,EAAGQ,aAAO,EAAPA,EAASC,iBAAST,IAAAA,EAAAA,EAAI,SAClCU,EAA4BT,QAApBA,EAAGO,aAAO,EAAPA,EAASE,gBAAQT,IAAAA,EAAAA,EAAI,GAEtCU,EAAgCC,GAAS,GAAMC,EAAAC,EAAAH,EAAA,GAAxCI,EAAOF,EAAA,GAAEG,EAAYH,EAAA,GAEtBI,EAAcC,IACdC,EAAsBC,EAAOb,GACnCY,EAAoBE,QAAUd,EAE9B,IAAMe,EAAaC,EAAQ,WAAA,IAAAC,EAAAC,EAAAC,IAAAC,MAAC,SAAAC,EAAOC,GAAY,IAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAA,OAAAV,IAAAW,MAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,KAAA,EAAA,IACzCzB,EAAO,CAAAuB,EAAAE,KAAA,EAAA,KAAA,CAAA,OAAAF,EAAAG,OAAA,UAAA,KAAA,EAWV,GAXUX,EAETD,EAAM3B,OADA6B,EAAYD,EAAZC,aAAcC,EAAYF,EAAZE,aAAcC,EAASH,EAATG,UAAWC,EAAWJ,EAAXI,YAAaC,EAAWL,EAAXK,YAAaC,EAAUN,EAAVM,aAKvD,CAChBM,OAJmBV,GAAgBC,EAAYF,GAK/CY,IAAKV,EACLW,MALkBT,GAAeC,EAAaF,GAM9CW,KAAMT,GAGM3B,IAAcC,GAAQ,CAAA4B,EAAAE,KAAA,GAAA,KAAA,CACf,OAAnBxB,GAAa,GAAMsB,EAAAE,KAAA,GACbrB,EAAoBE,QAAQQ,GAAM,KAAA,GACxCb,GAAa,GAAO,KAAA,GAAA,IAAA,MAAA,OAAAsB,EAAAQ,OAAA,GAAAlB,OAEvB,OAAA,SAAAmB,GAAA,OAAAvB,EAAAwB,MAAAC,KAAA7C,UAAA,EAnB0B,IAiC3B,OAZA8C,GAAU,WACR,GAAKhD,GAAWe,EAAYI,QAA5B,CACA,IAAM8B,EAAWjD,EAASkD,EAAWlD,GAAUe,EAAYI,QAC3D,GAAK8B,EAIL,OAFAA,EAAQE,iBAAiB,SAAU/B,GAE5B,WACL6B,EAAQG,oBAAoB,SAAUhC,EACvC,CARoC,CASvC,GAAG,CAACpB,EAAQe,EAAYI,QAASZ,EAAWC,IAExCR,EAAea,EACZ,CACLwC,IAAKtC,EACLF,QAAAA,EAEJ"}
1
+ {"version":3,"file":"useInfiniteScroll.js","sources":["../../../../src/hooks/useInfiniteScroll/useInfiniteScroll.ts"],"sourcesContent":["import type { RefObject } from 'react';\n\nimport { useEffect, useRef, useState } from 'react';\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 target element type */\nexport type UseInfiniteScrollTarget = string | Element | RefObject<Element | null>;\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 <Target extends UseInfiniteScrollTarget>(\n callback: (event: Event) => void,\n options?: UseInfiniteScrollOptions,\n target?: never\n ): {\n ref: StateRef<Target>;\n loading: boolean;\n };\n\n <Target extends UseInfiniteScrollTarget>(\n target: Target,\n callback: (event: Event) => void,\n options?: UseInfiniteScrollOptions\n ): boolean;\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 * @template Target The target element\n * @param {Target} 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) => {\n const target = (isTarget(params[0]) ? params[0] : undefined) as\n | UseInfiniteScrollTarget\n | undefined;\n const callback = (target ? params[1] : params[0]) as (event: Event) => void;\n const options = (target ? params[2] : params[1]) as UseInfiniteScrollOptions;\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","_options$direction","_options$distance","target","isTarget","arguments","length","undefined","callback","options","direction","distance","_useState","useState","_useState2","_slicedToArray","loading","setIsLoading","internalRef","useRefState","internalCallbackRef","useRef","current","onLoadMore","useEvent","_ref","_asyncToGenerator","_regeneratorRuntime","mark","_callee","event","_ref2","clientHeight","scrollHeight","scrollTop","clientWidth","scrollWidth","scrollLeft","wrap","_context","prev","next","abrupt","bottom","top","right","left","stop","_x","apply","this","useEffect","state","element","getElement","addEventListener","removeEventListener","ref"],"mappings":";uXAiEaA,EAAqB,WAAe,IAAAC,EAAAC,EACzCC,EAAUC,EAAQC,UAAAC,QAAAC,OAAAA,EAAAF,cAAWA,UAAAC,eAAAC,EAAAF,UAAA,QAAeE,EAG5CC,EAAYL,EAAME,UAAAC,QAAAC,OAAAA,EAAAF,UAAA,GAAAA,UAAAC,eAAAC,EAAAF,UAAmD,GACrEI,EAAWN,EAAME,UAAAC,QAAAC,OAAAA,EAAAF,UAAA,GAAAA,UAAAC,eAAAC,EAAAF,UAAqD,GAEtEK,EAA8BT,QAArBA,EAAGQ,aAAO,EAAPA,EAASC,iBAAST,IAAAA,EAAAA,EAAI,SAClCU,EAA4BT,QAApBA,EAAGO,aAAO,EAAPA,EAASE,gBAAQT,IAAAA,EAAAA,EAAI,GAEtCU,EAAgCC,GAAS,GAAMC,EAAAC,EAAAH,EAAA,GAAxCI,EAAOF,EAAA,GAAEG,EAAYH,EAAA,GAEtBI,EAAcC,IACdC,EAAsBC,EAAOb,GACnCY,EAAoBE,QAAUd,EAE9B,IAAMe,EAAaC,EAAQ,WAAA,IAAAC,EAAAC,EAAAC,IAAAC,MAAC,SAAAC,EAAOC,GAAY,IAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAA,OAAAV,IAAAW,MAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,KAAA,EAAA,IACzCzB,EAAO,CAAAuB,EAAAE,KAAA,EAAA,KAAA,CAAA,OAAAF,EAAAG,OAAA,UAAA,KAAA,EAWV,GAXUX,EAETD,EAAM3B,OADA6B,EAAYD,EAAZC,aAAcC,EAAYF,EAAZE,aAAcC,EAASH,EAATG,UAAWC,EAAWJ,EAAXI,YAAaC,EAAWL,EAAXK,YAAaC,EAAUN,EAAVM,aAKvD,CAChBM,OAJmBV,GAAgBC,EAAYF,GAK/CY,IAAKV,EACLW,MALkBT,GAAeC,EAAaF,GAM9CW,KAAMT,GAGM3B,IAAcC,GAAQ,CAAA4B,EAAAE,KAAA,GAAA,KAAA,CACf,OAAnBxB,GAAa,GAAMsB,EAAAE,KAAA,GACbrB,EAAoBE,QAAQQ,GAAM,KAAA,GACxCb,GAAa,GAAO,KAAA,GAAA,IAAA,MAAA,OAAAsB,EAAAQ,OAAA,GAAAlB,OAEvB,OAAA,SAAAmB,GAAA,OAAAvB,EAAAwB,MAAAC,KAAA7C,UAAA,EAnB0B,IAiC3B,OAZA8C,GAAU,WACR,GAAKhD,GAAWe,EAAYkC,MAA5B,CACA,IAAMC,EAAWlD,EAASmD,EAAWnD,GAAUe,EAAYI,QAC3D,GAAK+B,EAIL,OAFAA,EAAQE,iBAAiB,SAAUhC,GAE5B,WACL8B,EAAQG,oBAAoB,SAAUjC,EACvC,CARkC,CASrC,GAAG,CAACpB,EAAQe,EAAYkC,MAAO1C,EAAWC,IAEtCR,EAAea,EACZ,CACLyC,IAAKvC,EACLF,QAAAA,EAEJ"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.91 */
2
- import{_ as e,c as r}from"../../_rollupPluginBabelHelpers-USgtHx7z.js";import{useState as n,useRef as t,useEffect as o}from"react";import{getElement as i}from"../../utils/helpers/getElement.js";import{isTarget as l}from"../../utils/helpers/isTarget.js";import{useRefState as u}from"../useRefState/useRefState.js";import"../useRerender/useRerender.js";var s=function(){var s,v=l(arguments.length<=0?void 0:arguments[0])?arguments.length<=0?void 0:arguments[0]:void 0,d=v?arguments.length<=1?void 0:arguments[1]:arguments.length<=0?void 0:arguments[0],c=null===(s=null==d?void 0:d.enabled)||void 0===s||s,a=n(),f=e(a,2),m=f[0],g=f[1],p=u(),h=t();return h.current=null==d?void 0:d.onChange,o((function(){if(c||v||p.current){var n=v?i(v):p.current;if(n){var t=new IntersectionObserver((function(r){var n,t=e(r,1)[0];g(t),null===(n=h.current)||void 0===n||n.call(h,t)}),r(r({},d),{},{root:null!=d&&d.root?i(null==d?void 0:d.root):document}));return t.observe(n),function(){t.disconnect()}}}}),[v,p.current,null==d?void 0:d.rootMargin,null==d?void 0:d.threshold,null==d?void 0:d.root,c]),v?{entry:m,inView:!(null==m||!m.isIntersecting)}:{ref:p,entry:m,inView:!(null==m||!m.isIntersecting)}};export{s as useIntersectionObserver};
1
+ /* @license @siberiacancode/reactuse v0.0.94 */
2
+ import{_ as e,c as t}from"../../_rollupPluginBabelHelpers-Dp_7XWBJ.js";import{useState as n,useRef as r,useEffect as o}from"react";import{getElement as l}from"../../utils/helpers/getElement.js";import{isTarget as i}from"../../utils/helpers/isTarget.js";import{useRefState as u}from"../useRefState/useRefState.js";var s=function(){var s,v=i(arguments.length<=0?void 0:arguments[0])?arguments.length<=0?void 0:arguments[0]:void 0,a=v?arguments.length<=1?void 0:arguments[1]:arguments.length<=0?void 0:arguments[0],d=null===(s=null==a?void 0:a.enabled)||void 0===s||s,c=n(),f=e(c,2),m=f[0],g=f[1],p=u(),h=r();return h.current=null==a?void 0:a.onChange,o((function(){if(d||v||p.state){var n=v?l(v):p.current;if(n){var r=new IntersectionObserver((function(t){var n,r=e(t,1)[0];g(r),null===(n=h.current)||void 0===n||n.call(h,r)}),t(t({},a),{},{root:null!=a&&a.root?l(null==a?void 0:a.root):document}));return r.observe(n),function(){r.disconnect()}}}}),[v,p.state,null==a?void 0:a.rootMargin,null==a?void 0:a.threshold,null==a?void 0:a.root,d]),v?{entry:m,inView:!(null==m||!m.isIntersecting)}:{ref:p,entry:m,inView:!(null==m||!m.isIntersecting)}};export{s as useIntersectionObserver};
3
3
  //# sourceMappingURL=useIntersectionObserver.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useIntersectionObserver.js","sources":["../../../../src/hooks/useIntersectionObserver/useIntersectionObserver.ts"],"sourcesContent":["import type { RefObject } from 'react';\n\nimport { useEffect, useRef, useState } from 'react';\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 target element type */\nexport type UseIntersectionObserverTarget =\n | string\n | Element\n | RefObject<Element | null | undefined>;\n\n/** The intersection observer options type */\nexport interface UseIntersectionObserverOptions extends Omit<IntersectionObserverInit, 'root'> {\n enabled?: boolean;\n root?: string | IntersectionObserverInit['root'] | RefObject<Element | null | undefined>;\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 UseIntersectionObserverTarget>(\n options?: UseIntersectionObserverOptions,\n target?: never\n ): UseIntersectionObserverReturn & { ref: StateRef<Target> };\n\n <Target extends UseIntersectionObserverTarget>(\n target: Target,\n options?: UseIntersectionObserverOptions\n ): UseIntersectionObserverReturn;\n}\n\n/**\n * @name useIntersectionObserver\n * @description - Hook that gives you intersection observer state\n * @category Browser\n *\n * @overload\n * @template Target The target element\n * @param {Target} 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 {IntersectionObserverInit['root'] | RefObject<Element | null | undefined>} [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 {IntersectionObserverInit['root'] | RefObject<Element | null | undefined>} [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\n | UseIntersectionObserverTarget\n | 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']>();\n internalOnChangeRef.current = options?.onChange;\n\n useEffect(() => {\n if (!enabled && !target && !internalRef.current) return;\n const element = target ? getElement(target) : internalRef.current;\n if (!element) return;\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 }, [\n target,\n internalRef.current,\n options?.rootMargin,\n options?.threshold,\n options?.root,\n enabled\n ]);\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","_options$enabled","target","isTarget","arguments","length","undefined","options","enabled","_useState","useState","_useState2","_slicedToArray","entry","setEntry","internalRef","useRefState","internalOnChangeRef","useRef","current","onChange","useEffect","element","getElement","observer","IntersectionObserver","_ref","_internalOnChangeRef$","call","_objectSpread","root","document","observe","disconnect","rootMargin","threshold","inView","isIntersecting","ref"],"mappings":";mWAmEaA,EAA2B,WAAsB,IAAAC,EACtDC,EAAUC,EAAQC,UAAAC,QAAAC,OAAAA,EAAAF,cAAWA,UAAAC,eAAAC,EAAAF,UAAA,QAAeE,EAG5CC,EAAWL,EAAME,UAAAC,QAAAC,OAAAA,EAAAF,UAAA,GAAAA,UAAAC,eAAAC,EAAAF,UAAuE,GACxFI,EAA0BP,QAAnBA,EAAGM,aAAO,EAAPA,EAASC,eAAOP,IAAAA,GAAAA,EAEhCQ,EAA0BC,IAAqCC,EAAAC,EAAAH,EAAA,GAAxDI,EAAKF,EAAA,GAAEG,EAAQH,EAAA,GAEhBI,EAAcC,IACdC,EAAsBC,IAgC5B,OA/BAD,EAAoBE,QAAUZ,aAAO,EAAPA,EAASa,SAEvCC,GAAU,WACR,GAAKb,GAAYN,GAAWa,EAAYI,QAAxC,CACA,IAAMG,EAAUpB,EAASqB,EAAWrB,GAAUa,EAAYI,QAC1D,GAAKG,EAAL,CACA,IAAME,EAAW,IAAIC,sBACnB,SAAAC,GAAa,IAAAC,EAAXd,EAAWD,EAAAc,EAAA,GAAN,GACLZ,EAASD,GACkBc,QAA3BA,EAAAV,EAAoBE,eAApBQ,IAA2BA,GAA3BA,EAAAC,KAAAX,EAA8BJ,EAC/B,GAAAgB,EAAAA,KAEItB,GAAO,CAAA,EAAA,CACVuB,KAAMvB,SAAAA,EAASuB,KAAQP,EAAWhB,aAAO,EAAPA,EAASuB,MAA+BC,YAM9E,OAFAP,EAASQ,QAAQV,GAEV,WACLE,EAASS,YACV,CAhBa,CAFmC,CAmBlD,GAAE,CACD/B,EACAa,EAAYI,QACZZ,aAAO,EAAPA,EAAS2B,WACT3B,aAAAA,EAAAA,EAAS4B,UACT5B,aAAO,EAAPA,EAASuB,KACTtB,IAGEN,EAAe,CAAEW,MAAAA,EAAOuB,SAAUvB,UAAAA,EAAOwB,iBACtC,CACLC,IAAKvB,EACLF,MAAAA,EACAuB,SAAUvB,UAAAA,EAAOwB,gBAErB"}
1
+ {"version":3,"file":"useIntersectionObserver.js","sources":["../../../../src/hooks/useIntersectionObserver/useIntersectionObserver.ts"],"sourcesContent":["import type { RefObject } from 'react';\n\nimport { useEffect, useRef, useState } from 'react';\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 target element type */\nexport type UseIntersectionObserverTarget =\n | string\n | Element\n | RefObject<Element | null | undefined>;\n\n/** The intersection observer options type */\nexport interface UseIntersectionObserverOptions extends Omit<IntersectionObserverInit, 'root'> {\n enabled?: boolean;\n root?: string | IntersectionObserverInit['root'] | RefObject<Element | null | undefined>;\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 UseIntersectionObserverTarget>(\n options?: UseIntersectionObserverOptions,\n target?: never\n ): UseIntersectionObserverReturn & { ref: StateRef<Target> };\n\n <Target extends UseIntersectionObserverTarget>(\n target: Target,\n options?: UseIntersectionObserverOptions\n ): UseIntersectionObserverReturn;\n}\n\n/**\n * @name useIntersectionObserver\n * @description - Hook that gives you intersection observer state\n * @category Browser\n *\n * @overload\n * @template Target The target element\n * @param {Target} 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 {IntersectionObserverInit['root'] | RefObject<Element | null | undefined>} [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 {IntersectionObserverInit['root'] | RefObject<Element | null | undefined>} [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\n | UseIntersectionObserverTarget\n | 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']>();\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","_options$enabled","target","isTarget","arguments","length","undefined","options","enabled","_useState","useState","_useState2","_slicedToArray","entry","setEntry","internalRef","useRefState","internalOnChangeRef","useRef","current","onChange","useEffect","state","element","getElement","observer","IntersectionObserver","_ref","_internalOnChangeRef$","call","_objectSpread","root","document","observe","disconnect","rootMargin","threshold","inView","isIntersecting","ref"],"mappings":";6TAmEaA,EAA2B,WAAsB,IAAAC,EACtDC,EAAUC,EAAQC,UAAAC,QAAAC,OAAAA,EAAAF,cAAWA,UAAAC,eAAAC,EAAAF,UAAA,QAAeE,EAG5CC,EAAWL,EAAME,UAAAC,QAAAC,OAAAA,EAAAF,UAAA,GAAAA,UAAAC,eAAAC,EAAAF,UAAuE,GACxFI,EAA0BP,QAAnBA,EAAGM,aAAO,EAAPA,EAASC,eAAOP,IAAAA,GAAAA,EAEhCQ,EAA0BC,IAAqCC,EAAAC,EAAAH,EAAA,GAAxDI,EAAKF,EAAA,GAAEG,EAAQH,EAAA,GAEhBI,EAAcC,IACdC,EAAsBC,IA2B5B,OA1BAD,EAAoBE,QAAUZ,aAAO,EAAPA,EAASa,SAEvCC,GAAU,WACR,GAAKb,GAAYN,GAAWa,EAAYO,MAAxC,CAEA,IAAMC,EAAUrB,EAASsB,EAAWtB,GAAUa,EAAYI,QAC1D,GAAKI,EAAL,CAEA,IAAME,EAAW,IAAIC,sBACnB,SAAAC,GAAa,IAAAC,EAAXf,EAAWD,EAAAe,EAAA,GAAN,GACLb,EAASD,GACkBe,QAA3BA,EAAAX,EAAoBE,eAApBS,IAA2BA,GAA3BA,EAAAC,KAAAZ,EAA8BJ,EAC/B,GAAAiB,EAAAA,KAEIvB,GAAO,CAAA,EAAA,CACVwB,KAAMxB,SAAAA,EAASwB,KAAQP,EAAWjB,aAAO,EAAPA,EAASwB,MAA+BC,YAM9E,OAFAP,EAASQ,QAAQV,GAEV,WACLE,EAASS,YACV,CAjBa,CAHiC,CAqBhD,GAAE,CAAChC,EAAQa,EAAYO,MAAOf,aAAO,EAAPA,EAAS4B,WAAY5B,aAAAA,EAAAA,EAAS6B,UAAW7B,aAAO,EAAPA,EAASwB,KAAMvB,IAEnFN,EAAe,CAAEW,MAAAA,EAAOwB,SAAUxB,UAAAA,EAAOyB,iBACtC,CACLC,IAAKxB,EACLF,MAAAA,EACAwB,SAAUxB,UAAAA,EAAOyB,gBAErB"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.91 */
2
- import{b as r,_ as e}from"../../_rollupPluginBabelHelpers-USgtHx7z.js";import{useState as n,useRef as t,useEffect as l}from"react";import{useEvent as u}from"../useEvent/useEvent.js";var a=function(){for(var a,o,c=arguments.length,i=new Array(c),v=0;v<c;v++)i[v]=arguments[v];var f=i[0],s=null!==(a="number"==typeof i[1]?i[1]:i[1].interval)&&void 0!==a?a:1e3,m="object"===r(i[1])?i[1]:i[2],p=null===(o=null==m?void 0:m.enabled)||void 0===o||o,b=n(null==p||p),I=e(b,2),d=I[0],j=I[1],g=t(),y=u(f);l((function(){if(p)return g.current=setInterval(y,s),function(){clearInterval(g.current)}}),[p,s]);return{active:d,pause:function(){j(!1),clearInterval(g.current)},resume:function(){s<=0||(j(!0),clearInterval(g.current),g.current=setInterval(y,s))}}};export{a as useInterval};
1
+ /* @license @siberiacancode/reactuse v0.0.94 */
2
+ import{b as r,_ as e}from"../../_rollupPluginBabelHelpers-Dp_7XWBJ.js";import{useState as n,useRef as t,useEffect as l}from"react";var u=function(){for(var u,a,c=arguments.length,o=new Array(c),i=0;i<c;i++)o[i]=arguments[i];var v=o[0],f=null!==(u="number"==typeof o[1]?o[1]:o[1].interval)&&void 0!==u?u:1e3,s="object"===r(o[1])?o[1]:o[2],p=null===(a=null==s?void 0:s.enabled)||void 0===a||a,m=n(null==p||p),b=e(m,2),I=b[0],d=b[1],g=t(),j=t(v);j.current=v,l((function(){if(p)return g.current=setInterval(j.current,f),function(){clearInterval(g.current)}}),[p,f]);return{active:I,pause:function(){d(!1),clearInterval(g.current)},resume:function(){f<=0||(d(!0),clearInterval(g.current),g.current=setInterval(j.current,f))}}};export{u as useInterval};
3
3
  //# sourceMappingURL=useInterval.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useInterval.js","sources":["../../../../src/hooks/useInterval/useInterval.ts"],"sourcesContent":["import { useEffect, useRef, useState } from 'react';\n\nimport { useEvent } from '../useEvent/useEvent';\n\n/** The use interval options */\nexport interface UseIntervalOptions {\n /** Start the interval immediately */\n enabled?: 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}\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.immediate=true] Start the interval immediately\n * @returns {UseIntervalReturn}\n *\n * @example\n * const { active, pause, resume } = 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.immediate=true] Start the interval immediately\n *\n * @example\n * const { active, pause, resume } = 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 enabled = options?.enabled ?? true;\n\n const [active, setActive] = useState<boolean>(enabled ?? true);\n\n const intervalIdRef = useRef<ReturnType<typeof setInterval>>();\n const internalCallback = useEvent(callback);\n\n useEffect(() => {\n if (!enabled) return;\n\n intervalIdRef.current = setInterval(internalCallback, interval);\n return () => {\n clearInterval(intervalIdRef.current);\n };\n }, [enabled, interval]);\n\n const pause = () => {\n setActive(false);\n clearInterval(intervalIdRef.current);\n };\n\n const resume = () => {\n if (interval <= 0) return;\n setActive(true);\n clearInterval(intervalIdRef.current);\n intervalIdRef.current = setInterval(internalCallback, interval);\n };\n\n return {\n active,\n pause,\n resume\n };\n}) as UseInterval;\n"],"names":["useInterval","_ref","_options$enabled","_len","arguments","length","params","Array","_key","callback","interval","options","_typeof","enabled","_useState","useState","_useState2","_slicedToArray","active","setActive","intervalIdRef","useRef","internalCallback","useEvent","useEffect","current","setInterval","clearInterval","pause","resume"],"mappings":";0LAgDaA,EAAe,WAAyC,IAAA,IAAAC,EAAAC,EAAAC,EAAAC,UAAAC,OAArCC,EAAMC,IAAAA,MAAAJ,GAAAK,EAAA,EAAAA,EAAAL,EAAAK,IAANF,EAAME,GAAAJ,UAAAI,GACpC,IAAMC,EAAWH,EAAO,GAClBI,EAGkE,QAH1DT,EACW,iBAAdK,EAAO,GACZA,EAAO,GACNA,EAAO,GAAkDI,gBAAQ,IAAAT,EAAAA,EAAgB,IAClFU,EACiB,WAArBC,EAAON,EAAO,IACTA,EAAO,GACPA,EAAO,GACRO,EAA0BX,QAAnBA,EAAGS,aAAO,EAAPA,EAASE,eAAOX,IAAAA,GAAAA,EAEhCY,EAA4BC,EAAkBF,SAAAA,GAAgBG,EAAAC,EAAAH,EAAA,GAAvDI,EAAMF,EAAA,GAAEG,EAASH,EAAA,GAElBI,EAAgBC,IAChBC,EAAmBC,EAASd,GAElCe,GAAU,WACR,GAAKX,EAGL,OADAO,EAAcK,QAAUC,YAAYJ,EAAkBZ,GAC/C,WACLiB,cAAcP,EAAcK,QAC7B,CACH,GAAG,CAACZ,EAASH,IAcb,MAAO,CACLQ,OAAAA,EACAU,MAdY,WACZT,GAAU,GACVQ,cAAcP,EAAcK,QAC7B,EAYCI,OAVa,WACTnB,GAAY,IAChBS,GAAU,GACVQ,cAAcP,EAAcK,SAC5BL,EAAcK,QAAUC,YAAYJ,EAAkBZ,GACvD,EAOH"}
1
+ {"version":3,"file":"useInterval.js","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 enabled?: 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}\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.enabled=true] Start the interval immediately\n * @returns {UseIntervalReturn}\n *\n * @example\n * const { active, pause, resume } = 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.enabled=true] Start the interval immediately\n *\n * @example\n * const { active, pause, resume } = 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 enabled = options?.enabled ?? true;\n\n const [active, setActive] = useState<boolean>(enabled ?? true);\n\n const intervalIdRef = useRef<ReturnType<typeof setInterval>>();\n const internalCallbackRef = useRef(callback);\n internalCallbackRef.current = callback;\n\n useEffect(() => {\n if (!enabled) return;\n\n intervalIdRef.current = setInterval(internalCallbackRef.current, interval);\n return () => {\n clearInterval(intervalIdRef.current);\n };\n }, [enabled, interval]);\n\n const pause = () => {\n setActive(false);\n clearInterval(intervalIdRef.current);\n };\n\n const resume = () => {\n if (interval <= 0) return;\n setActive(true);\n clearInterval(intervalIdRef.current);\n intervalIdRef.current = setInterval(internalCallbackRef.current, interval);\n };\n\n return {\n active,\n pause,\n resume\n };\n}) as UseInterval;\n"],"names":["useInterval","_ref","_options$enabled","_len","arguments","length","params","Array","_key","callback","interval","options","_typeof","enabled","_useState","useState","_useState2","_slicedToArray","active","setActive","intervalIdRef","useRef","internalCallbackRef","current","useEffect","setInterval","clearInterval","pause","resume"],"mappings":";uIA8CaA,EAAe,WAAyC,IAAA,IAAAC,EAAAC,EAAAC,EAAAC,UAAAC,OAArCC,EAAMC,IAAAA,MAAAJ,GAAAK,EAAA,EAAAA,EAAAL,EAAAK,IAANF,EAAME,GAAAJ,UAAAI,GACpC,IAAMC,EAAWH,EAAO,GAClBI,EAGkE,QAH1DT,EACW,iBAAdK,EAAO,GACZA,EAAO,GACNA,EAAO,GAAkDI,gBAAQ,IAAAT,EAAAA,EAAgB,IAClFU,EACiB,WAArBC,EAAON,EAAO,IACTA,EAAO,GACPA,EAAO,GACRO,EAA0BX,QAAnBA,EAAGS,aAAO,EAAPA,EAASE,eAAOX,IAAAA,GAAAA,EAEhCY,EAA4BC,EAAkBF,SAAAA,GAAgBG,EAAAC,EAAAH,EAAA,GAAvDI,EAAMF,EAAA,GAAEG,EAASH,EAAA,GAElBI,EAAgBC,IAChBC,EAAsBD,EAAOZ,GACnCa,EAAoBC,QAAUd,EAE9Be,GAAU,WACR,GAAKX,EAGL,OADAO,EAAcG,QAAUE,YAAYH,EAAoBC,QAASb,GAC1D,WACLgB,cAAcN,EAAcG,QAC7B,CACH,GAAG,CAACV,EAASH,IAcb,MAAO,CACLQ,OAAAA,EACAS,MAdY,WACZR,GAAU,GACVO,cAAcN,EAAcG,QAC7B,EAYCK,OAVa,WACTlB,GAAY,IAChBS,GAAU,GACVO,cAAcN,EAAcG,SAC5BH,EAAcG,QAAUE,YAAYH,EAAoBC,QAASb,GAClE,EAOH"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.91 */
1
+ /* @license @siberiacancode/reactuse v0.0.94 */
2
2
  import{useRef as r}from"react";var t=function(){var t=r(!0);return!0===t.current?(t.current=!1,!0):t.current};export{t as useIsFirstRender};
3
3
  //# sourceMappingURL=useIsFirstRender.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.91 */
1
+ /* @license @siberiacancode/reactuse v0.0.94 */
2
2
  import{useLayoutEffect as e,useEffect as o}from"react";var r="undefined"!=typeof window?e:o;export{r as useIsomorphicLayoutEffect};
3
3
  //# sourceMappingURL=useIsomorphicLayoutEffect.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.91 */
2
- import{_ as e}from"../../_rollupPluginBabelHelpers-USgtHx7z.js";import{useState as r}from"react";import{useEventListener as t}from"../useEventListener/useEventListener.js";import"../../utils/helpers/getElement.js";import"../useEvent/useEvent.js";import"../useRefState/useRefState.js";import"../useRerender/useRerender.js";var n=function(n,i){var s,o,u=r(!1),l=e(u,2),a=l[0],p=l[1];return t(null!==(s=null==i?void 0:i.target)&&void 0!==s?s:window,"keydown",(function(e){(Array.isArray(n)?n.includes(e.key):e.key===n)&&p(!0)})),t(null!==(o=null==i?void 0:i.target)&&void 0!==o?o:window,"keyup",(function(e){(Array.isArray(n)?n.includes(e.key):e.key===n)&&p(!1)})),a};export{n as useKeyPress};
1
+ /* @license @siberiacancode/reactuse v0.0.94 */
2
+ import{_ as e}from"../../_rollupPluginBabelHelpers-Dp_7XWBJ.js";import{useState as r}from"react";import{useEventListener as t}from"../useEventListener/useEventListener.js";import"../../utils/helpers/getElement.js";import"../useEvent/useEvent.js";import"../useRefState/useRefState.js";var n=function(n,i){var o,s,u=r(!1),l=e(u,2),a=l[0],p=l[1];return t(null!==(o=null==i?void 0:i.target)&&void 0!==o?o:window,"keydown",(function(e){(Array.isArray(n)?n.includes(e.key):e.key===n)&&p(!0)})),t(null!==(s=null==i?void 0:i.target)&&void 0!==s?s:window,"keyup",(function(e){(Array.isArray(n)?n.includes(e.key):e.key===n)&&p(!1)})),a};export{n as useKeyPress};
3
3
  //# sourceMappingURL=useKeyPress.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useKeyPress.js","sources":["../../../../src/hooks/useKeyPress/useKeyPress.ts"],"sourcesContent":["import { useState } from 'react';\n\nimport type { UseEventListenerTarget } from '../useEventListener/useEventListener';\n\nimport { useEventListener } from '../useEventListener/useEventListener';\n\n/** The key or keys to listen for */\nexport type UseKeyPressKey = string | string[];\n\n/** The use key press options type */\nexport interface UseKeyPressOptions {\n /** The target to attach the event listeners to */\n target?: UseEventListenerTarget;\n}\n\n/**\n * @name useKeyPress\n * @description - Hook that listens for key press events\n * @category Sensors\n *\n * @param {UseKeyPressKey} key The key or keys to listen for\n * @param {UseEventListenerTarget} [options.target=window] The target to attach the event listeners to\n * @returns {useKeyPressReturns} Return boolean type (`true` if the specified keys are currently pressed)\n *\n * @example\n * const isKeyPressed = useKeyPress('a');\n */\nexport const useKeyPress = (key: UseKeyPressKey, options?: UseKeyPressOptions) => {\n const [pressed, setPressed] = useState(false);\n\n const onKeyDown = (event: KeyboardEvent) => {\n if (Array.isArray(key) ? key.includes(event.key) : event.key === key) setPressed(true);\n };\n\n const onKeyUp = (event: KeyboardEvent) => {\n if (Array.isArray(key) ? key.includes(event.key) : event.key === key) setPressed(false);\n };\n\n useEventListener(options?.target ?? window, 'keydown', onKeyDown);\n useEventListener(options?.target ?? window, 'keyup', onKeyUp);\n\n return pressed;\n};\n"],"names":["useKeyPress","key","options","_options$target","_options$target2","_useState","useState","_useState2","_slicedToArray","pressed","setPressed","useEventListener","target","window","event","Array","isArray","includes"],"mappings":";kUA2BO,IAAMA,EAAc,SAACC,EAAqBC,GAAiC,IAAAC,EAAAC,EAChFC,EAA8BC,GAAS,GAAMC,EAAAC,EAAAH,EAAA,GAAtCI,EAAOF,EAAA,GAAEG,EAAUH,EAAA,GAa1B,OAHAI,UAAgBR,EAACD,aAAO,EAAPA,EAASU,cAAM,IAAAT,EAAAA,EAAIU,OAAQ,WAR1B,SAACC,IACbC,MAAMC,QAAQf,GAAOA,EAAIgB,SAASH,EAAMb,KAAOa,EAAMb,MAAQA,IAAKS,GAAW,EAClF,IAODC,UAAgBP,EAACF,aAAO,EAAPA,EAASU,cAAM,IAAAR,EAAAA,EAAIS,OAAQ,SAL5B,SAACC,IACXC,MAAMC,QAAQf,GAAOA,EAAIgB,SAASH,EAAMb,KAAOa,EAAMb,MAAQA,IAAKS,GAAW,EAClF,IAKMD,CACT"}
1
+ {"version":3,"file":"useKeyPress.js","sources":["../../../../src/hooks/useKeyPress/useKeyPress.ts"],"sourcesContent":["import { useState } from 'react';\n\nimport type { UseEventListenerTarget } from '../useEventListener/useEventListener';\n\nimport { useEventListener } from '../useEventListener/useEventListener';\n\n/** The key or keys to listen for */\nexport type UseKeyPressKey = string | string[];\n\n/** The use key press options type */\nexport interface UseKeyPressOptions {\n /** The target to attach the event listeners to */\n target?: UseEventListenerTarget;\n}\n\n/**\n * @name useKeyPress\n * @description - Hook that listens for key press events\n * @category Sensors\n *\n * @param {UseKeyPressKey} key The key or keys to listen for\n * @param {UseEventListenerTarget} [options.target=window] The target to attach the event listeners to\n * @returns {useKeyPressReturns} Return boolean type (`true` if the specified keys are currently pressed)\n *\n * @example\n * const isKeyPressed = useKeyPress('a');\n */\nexport const useKeyPress = (key: UseKeyPressKey, options?: UseKeyPressOptions) => {\n const [pressed, setPressed] = useState(false);\n\n const onKeyDown = (event: KeyboardEvent) => {\n if (Array.isArray(key) ? key.includes(event.key) : event.key === key) setPressed(true);\n };\n\n const onKeyUp = (event: KeyboardEvent) => {\n if (Array.isArray(key) ? key.includes(event.key) : event.key === key) setPressed(false);\n };\n\n useEventListener(options?.target ?? window, 'keydown', onKeyDown);\n useEventListener(options?.target ?? window, 'keyup', onKeyUp);\n\n return pressed;\n};\n"],"names":["useKeyPress","key","options","_options$target","_options$target2","_useState","useState","_useState2","_slicedToArray","pressed","setPressed","useEventListener","target","window","event","Array","isArray","includes"],"mappings":";4RA2BO,IAAMA,EAAc,SAACC,EAAqBC,GAAiC,IAAAC,EAAAC,EAChFC,EAA8BC,GAAS,GAAMC,EAAAC,EAAAH,EAAA,GAAtCI,EAAOF,EAAA,GAAEG,EAAUH,EAAA,GAa1B,OAHAI,UAAgBR,EAACD,aAAO,EAAPA,EAASU,cAAM,IAAAT,EAAAA,EAAIU,OAAQ,WAR1B,SAACC,IACbC,MAAMC,QAAQf,GAAOA,EAAIgB,SAASH,EAAMb,KAAOa,EAAMb,MAAQA,IAAKS,GAAW,EAClF,IAODC,UAAgBP,EAACF,aAAO,EAAPA,EAASU,cAAM,IAAAR,EAAAA,EAAIS,OAAQ,SAL5B,SAACC,IACXC,MAAMC,QAAQf,GAAOA,EAAIgB,SAASH,EAAMb,KAAOa,EAAMb,MAAQA,IAAKS,GAAW,EAClF,IAKMD,CACT"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.91 */
2
- import{useEventListener as e}from"../useEventListener/useEventListener.js";import"react";import"../../utils/helpers/getElement.js";import"../useEvent/useEvent.js";import"../useRefState/useRefState.js";import"../../_rollupPluginBabelHelpers-USgtHx7z.js";import"../useRerender/useRerender.js";var t=function(){var t=Array.isArray(arguments.length<=0?void 0:arguments[0])?arguments.length<=0?void 0:arguments[0]:[arguments.length<=0?void 0:arguments[0]],n=(arguments.length<=1?void 0:arguments[1])instanceof Function?null:arguments.length<=1?void 0:arguments[1],i=n?arguments.length<=2?void 0:arguments[2]:arguments.length<=1?void 0:arguments[1];e(null!=n?n:window,"keydown",(function(e){t.includes(e.key)&&i(e)}),n?arguments.length<=3?void 0:arguments[3]:arguments.length<=2?void 0:arguments[2])};export{t as useKeyPressEvent};
1
+ /* @license @siberiacancode/reactuse v0.0.94 */
2
+ import{useEventListener as e}from"../useEventListener/useEventListener.js";import"react";import"../../utils/helpers/getElement.js";import"../useEvent/useEvent.js";import"../useRefState/useRefState.js";import"../../_rollupPluginBabelHelpers-Dp_7XWBJ.js";var t=function(){var t=Array.isArray(arguments.length<=0?void 0:arguments[0])?arguments.length<=0?void 0:arguments[0]:[arguments.length<=0?void 0:arguments[0]],n=(arguments.length<=1?void 0:arguments[1])instanceof Function?null:arguments.length<=1?void 0:arguments[1],i=n?arguments.length<=2?void 0:arguments[2]:arguments.length<=1?void 0:arguments[1];e(null!=n?n:window,"keydown",(function(e){t.includes(e.key)&&i(e)}),n?arguments.length<=3?void 0:arguments[3]:arguments.length<=2?void 0:arguments[2])};export{t as useKeyPressEvent};
3
3
  //# sourceMappingURL=useKeyPressEvent.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useKeyPressEvent.js","sources":["../../../../src/hooks/useKeyPressEvent/useKeyPressEvent.ts"],"sourcesContent":["import type {\n UseEventListenerOptions,\n UseEventListenerTarget\n} from '../useEventListener/useEventListener';\n\nimport { useEventListener } from '../useEventListener/useEventListener';\n\nexport type UseKeyPressEventKey = string | string[];\n\nexport interface UseKeyPressEvent {\n (\n key: UseKeyPressEventKey,\n target: Window,\n listener: (this: Window, event: WindowEventMap['keydown']) => void,\n options?: UseEventListenerOptions\n ): void;\n\n (\n key: UseKeyPressEventKey,\n target: Document,\n listener: (this: Document, event: DocumentEventMap['keydown']) => void,\n options?: UseEventListenerOptions\n ): void;\n\n <Target extends UseEventListenerTarget>(\n key: UseKeyPressEventKey,\n target: Target,\n listener: (this: Target, event: HTMLElementEventMap['keydown']) => void,\n options?: UseEventListenerOptions\n ): void;\n\n <Target extends Element>(\n key: UseKeyPressEventKey,\n listener: (this: Target, event: HTMLElementEventMap['keydown']) => void,\n options?: UseEventListenerOptions,\n target?: never\n ): void;\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 {Window} target The window object 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 {UseEventListenerOptions} [options] The options for the event listener.\n * @returns {void}\n *\n * @example\n * useKeyPressEvent('Enter', window, () => console.log('Enter key pressed'));\n *\n * @overload\n * @param {UseKeyPressEventKey} key The key or array of keys to listen for.\n * @param {Document} target The document object 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 {UseEventListenerOptions} [options] The options for the event listener.\n * @returns {void}\n *\n * @example\n * useKeyPressEvent('Enter', document, () => console.log('Enter key pressed'));\n *\n * @overload\n * @template Target The target element type.\n * @param {UseKeyPressEventKey} key The key or array of keys to listen for.\n * @param {Target} target The target element 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 {UseEventListenerOptions} [options] The options for the event listener.\n * @returns {void}\n *\n * @example\n * useKeyPressEvent('Enter', ref, () => console.log('Enter key 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 {UseEventListenerOptions} [options] The options for the event listener.\n * @returns {void}\n *\n * @example\n * useKeyPressEvent('Enter', (event) => console.log('Enter key pressed'));\n */\nexport const useKeyPressEvent = ((...params: any[]) => {\n const keys = (Array.isArray(params[0]) ? params[0] : [params[0]]) as UseKeyPressEventKey;\n const target = (params[1] instanceof Function ? null : params[1]) as\n | UseEventListenerTarget\n | undefined;\n const callback = (target ? params[2] : params[1]) as (...arg: any[]) => void;\n const options: UseEventListenerOptions | undefined = target ? params[3] : params[2];\n\n const onKeyDown = (event: KeyboardEvent) => {\n if (keys.includes(event.key)) callback(event);\n };\n\n useEventListener(target ?? window, 'keydown', onKeyDown, options);\n}) as UseKeyPressEvent;\n"],"names":["useKeyPressEvent","keys","Array","isArray","arguments","length","undefined","target","Function","callback","useEventListener","window","event","includes","key"],"mappings":";uSAqFaA,EAAoB,WAC/B,IAAMC,EAAQC,MAAMC,QAAOC,UAAAC,QAAAC,OAAAA,EAAAF,cAAWA,UAAAC,QAAA,OAAAC,EAAAF,UAAe,GAAA,CAAAA,UAAAC,QAAA,OAAAC,EAAAF,UAAmC,IAClFG,GAAUH,UAAAC,QAAA,OAAAC,EAAAF,UAAA,cAAqBI,SAAW,KAAIJ,UAAAC,QAAAC,OAAAA,EAAAF,UAEvC,GACPK,EAAYF,EAAMH,UAAAC,QAAAC,OAAAA,EAAAF,UAAA,GAAAA,UAAAC,eAAAC,EAAAF,UAAoD,GAO5EM,EAAiBH,QAAAA,EAAUI,OAAQ,WAJjB,SAACC,GACbX,EAAKY,SAASD,EAAME,MAAML,EAASG,EACxC,GAJoDL,EAAMH,UAAAC,QAAAC,OAAAA,EAAAF,UAAA,GAAAA,UAAAC,eAAAC,EAAAF,UAAwB,GAOrF"}
1
+ {"version":3,"file":"useKeyPressEvent.js","sources":["../../../../src/hooks/useKeyPressEvent/useKeyPressEvent.ts"],"sourcesContent":["import type {\n UseEventListenerOptions,\n UseEventListenerTarget\n} from '../useEventListener/useEventListener';\n\nimport { useEventListener } from '../useEventListener/useEventListener';\n\nexport type UseKeyPressEventKey = string | string[];\n\nexport interface UseKeyPressEvent {\n (\n key: UseKeyPressEventKey,\n target: Window,\n listener: (this: Window, event: WindowEventMap['keydown']) => void,\n options?: UseEventListenerOptions\n ): void;\n\n (\n key: UseKeyPressEventKey,\n target: Document,\n listener: (this: Document, event: DocumentEventMap['keydown']) => void,\n options?: UseEventListenerOptions\n ): void;\n\n <Target extends UseEventListenerTarget>(\n key: UseKeyPressEventKey,\n target: Target,\n listener: (this: Target, event: HTMLElementEventMap['keydown']) => void,\n options?: UseEventListenerOptions\n ): void;\n\n <Target extends Element>(\n key: UseKeyPressEventKey,\n listener: (this: Target, event: HTMLElementEventMap['keydown']) => void,\n options?: UseEventListenerOptions,\n target?: never\n ): void;\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 {Window} target The window object 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 {UseEventListenerOptions} [options] The options for the event listener.\n * @returns {void}\n *\n * @example\n * useKeyPressEvent('Enter', window, () => console.log('Enter key pressed'));\n *\n * @overload\n * @param {UseKeyPressEventKey} key The key or array of keys to listen for.\n * @param {Document} target The document object 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 {UseEventListenerOptions} [options] The options for the event listener.\n * @returns {void}\n *\n * @example\n * useKeyPressEvent('Enter', document, () => console.log('Enter key pressed'));\n *\n * @overload\n * @template Target The target element type.\n * @param {UseKeyPressEventKey} key The key or array of keys to listen for.\n * @param {Target} target The target element 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 {UseEventListenerOptions} [options] The options for the event listener.\n * @returns {void}\n *\n * @example\n * useKeyPressEvent('Enter', ref, () => console.log('Enter key 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 {UseEventListenerOptions} [options] The options for the event listener.\n * @returns {void}\n *\n * @example\n * useKeyPressEvent('Enter', (event) => console.log('Enter key pressed'));\n */\nexport const useKeyPressEvent = ((...params: any[]) => {\n const keys = (Array.isArray(params[0]) ? params[0] : [params[0]]) as UseKeyPressEventKey;\n const target = (params[1] instanceof Function ? null : params[1]) as\n | UseEventListenerTarget\n | undefined;\n const callback = (target ? params[2] : params[1]) as (...arg: any[]) => void;\n const options: UseEventListenerOptions | undefined = target ? params[3] : params[2];\n\n const onKeyDown = (event: KeyboardEvent) => {\n if (keys.includes(event.key)) callback(event);\n };\n\n useEventListener(target ?? window, 'keydown', onKeyDown, options);\n}) as UseKeyPressEvent;\n"],"names":["useKeyPressEvent","keys","Array","isArray","arguments","length","undefined","target","Function","callback","useEventListener","window","event","includes","key"],"mappings":";iQAqFaA,EAAoB,WAC/B,IAAMC,EAAQC,MAAMC,QAAOC,UAAAC,QAAAC,OAAAA,EAAAF,cAAWA,UAAAC,QAAA,OAAAC,EAAAF,UAAe,GAAA,CAAAA,UAAAC,QAAA,OAAAC,EAAAF,UAAmC,IAClFG,GAAUH,UAAAC,QAAA,OAAAC,EAAAF,UAAA,cAAqBI,SAAW,KAAIJ,UAAAC,QAAAC,OAAAA,EAAAF,UAEvC,GACPK,EAAYF,EAAMH,UAAAC,QAAAC,OAAAA,EAAAF,UAAA,GAAAA,UAAAC,eAAAC,EAAAF,UAAoD,GAO5EM,EAAiBH,QAAAA,EAAUI,OAAQ,WAJjB,SAACC,GACbX,EAAKY,SAASD,EAAME,MAAML,EAASG,EACxC,GAJoDL,EAAMH,UAAAC,QAAAC,OAAAA,EAAAF,UAAA,GAAAA,UAAAC,eAAAC,EAAAF,UAAwB,GAOrF"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.91 */
2
- import{useEventListener as e}from"../useEventListener/useEventListener.js";import"react";import"../../utils/helpers/getElement.js";import"../useEvent/useEvent.js";import"../useRefState/useRefState.js";import"../../_rollupPluginBabelHelpers-USgtHx7z.js";import"../useRerender/useRerender.js";var n=function(n){var t,r;e(null!==(t=null==n?void 0:n.target)&&void 0!==t?t:window,"keydown",(function(e){var t;return null==n||null===(t=n.onKeyDown)||void 0===t?void 0:t.call(n,e)})),e(null!==(r=null==n?void 0:n.target)&&void 0!==r?r:window,"keyup",(function(e){var t;return null==n||null===(t=n.onKeyUp)||void 0===t?void 0:t.call(n,e)}))};export{n as useKeyboard};
1
+ /* @license @siberiacancode/reactuse v0.0.94 */
2
+ import{useEventListener as e}from"../useEventListener/useEventListener.js";import"react";import"../../utils/helpers/getElement.js";import"../useEvent/useEvent.js";import"../useRefState/useRefState.js";import"../../_rollupPluginBabelHelpers-Dp_7XWBJ.js";var n=function(n){var t,l;e(null!==(t=null==n?void 0:n.target)&&void 0!==t?t:window,"keydown",(function(e){var t;return null==n||null===(t=n.onKeyDown)||void 0===t?void 0:t.call(n,e)})),e(null!==(l=null==n?void 0:n.target)&&void 0!==l?l:window,"keyup",(function(e){var t;return null==n||null===(t=n.onKeyUp)||void 0===t?void 0:t.call(n,e)}))};export{n as useKeyboard};
3
3
  //# sourceMappingURL=useKeyboard.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useKeyboard.js","sources":["../../../../src/hooks/useKeyboard/useKeyboard.ts"],"sourcesContent":["import type { UseEventListenerTarget } from '../useEventListener/useEventListener';\n\nimport { useEventListener } from '../useEventListener/useEventListener';\n\n/** The use key press options type */\nexport interface UseKeyboardParams {\n /** The target to attach the event listeners to */\n target?: UseEventListenerTarget;\n /** The callback function to be invoked on key down */\n onKeyDown?: (event: KeyboardEvent) => void;\n /** The callback function to be invoked on key up */\n onKeyUp?: (event: KeyboardEvent) => void;\n}\n\n/**\n * @name useKeyboard\n * @description - Hook that help to listen for keyboard events\n * @category Sensors\n *\n * @param {UseEventListenerTarget} [target=window] The target to attach the event listeners to\n * @param {(event: KeyboardEvent) => void} [onKeyDown] The callback function to be invoked on key down\n * @param {(event: KeyboardEvent) => void} [onKeyUp] The callback function to be invoked on key up\n *\n * @example\n * useKeyboard({ onKeyDown: () => console.log('key down'), onKeyUp: () => console.log('key up') })\n */\nexport const useKeyboard = (params?: UseKeyboardParams) => {\n const onKeyDown = (event: KeyboardEvent) => params?.onKeyDown?.(event);\n const onKeyUp = (event: KeyboardEvent) => params?.onKeyUp?.(event);\n\n useEventListener(params?.target ?? window, 'keydown', onKeyDown);\n useEventListener(params?.target ?? window, 'keyup', onKeyUp);\n};\n"],"names":["useKeyboard","params","_params$target","_params$target2","useEventListener","target","window","event","_params$onKeyDown","onKeyDown","call","_params$onKeyUp","onKeyUp"],"mappings":";uSA0BaA,EAAc,SAACC,GAA+B,IAAAC,EAAAC,EAIzDC,UAAgBF,EAACD,aAAM,EAANA,EAAQI,cAAM,IAAAH,EAAAA,EAAII,OAAQ,WAHzB,SAACC,GAAoB,IAAAC,EAAA,OAAKP,iBAAMO,EAANP,EAAQQ,iBAAS,IAAAD,OAAA,EAAjBA,EAAAE,KAAAT,EAAoBM,EAAM,IAItEH,UAAgBD,EAACF,aAAM,EAANA,EAAQI,cAAM,IAAAF,EAAAA,EAAIG,OAAQ,SAH3B,SAACC,GAAoB,IAAAI,EAAA,OAAKV,iBAAMU,EAANV,EAAQW,eAAO,IAAAD,OAAA,EAAfA,EAAAD,KAAAT,EAAkBM,EAAM,GAIpE"}
1
+ {"version":3,"file":"useKeyboard.js","sources":["../../../../src/hooks/useKeyboard/useKeyboard.ts"],"sourcesContent":["import type { UseEventListenerTarget } from '../useEventListener/useEventListener';\n\nimport { useEventListener } from '../useEventListener/useEventListener';\n\n/** The use key press options type */\nexport interface UseKeyboardParams {\n /** The target to attach the event listeners to */\n target?: UseEventListenerTarget;\n /** The callback function to be invoked on key down */\n onKeyDown?: (event: KeyboardEvent) => void;\n /** The callback function to be invoked on key up */\n onKeyUp?: (event: KeyboardEvent) => void;\n}\n\n/**\n * @name useKeyboard\n * @description - Hook that help to listen for keyboard events\n * @category Sensors\n *\n * @param {UseEventListenerTarget} [target=window] The target to attach the event listeners to\n * @param {(event: KeyboardEvent) => void} [onKeyDown] The callback function to be invoked on key down\n * @param {(event: KeyboardEvent) => void} [onKeyUp] The callback function to be invoked on key up\n *\n * @example\n * useKeyboard({ onKeyDown: () => console.log('key down'), onKeyUp: () => console.log('key up') })\n */\nexport const useKeyboard = (params?: UseKeyboardParams) => {\n const onKeyDown = (event: KeyboardEvent) => params?.onKeyDown?.(event);\n const onKeyUp = (event: KeyboardEvent) => params?.onKeyUp?.(event);\n\n useEventListener(params?.target ?? window, 'keydown', onKeyDown);\n useEventListener(params?.target ?? window, 'keyup', onKeyUp);\n};\n"],"names":["useKeyboard","params","_params$target","_params$target2","useEventListener","target","window","event","_params$onKeyDown","onKeyDown","call","_params$onKeyUp","onKeyUp"],"mappings":";iQA0BaA,EAAc,SAACC,GAA+B,IAAAC,EAAAC,EAIzDC,UAAgBF,EAACD,aAAM,EAANA,EAAQI,cAAM,IAAAH,EAAAA,EAAII,OAAQ,WAHzB,SAACC,GAAoB,IAAAC,EAAA,OAAKP,iBAAMO,EAANP,EAAQQ,iBAAS,IAAAD,OAAA,EAAjBA,EAAAE,KAAAT,EAAoBM,EAAM,IAItEH,UAAgBD,EAACF,aAAM,EAANA,EAAQI,cAAM,IAAAF,EAAAA,EAAIG,OAAQ,SAH3B,SAACC,GAAoB,IAAAI,EAAA,OAAKV,iBAAMU,EAANV,EAAQW,eAAO,IAAAD,OAAA,EAAfA,EAAAD,KAAAT,EAAkBM,EAAM,GAIpE"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.91 */
2
- import{_ as e,a as t}from"../../_rollupPluginBabelHelpers-USgtHx7z.js";import{useState as o}from"react";import{useDidUpdate as n}from"../useDidUpdate/useDidUpdate.js";import{useEventListener as r}from"../useEventListener/useEventListener.js";import"../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js";import"../../utils/helpers/getElement.js";import"../useEvent/useEvent.js";import"../useRefState/useRefState.js";import"../useRerender/useRerender.js";var u=function(u){var i,s,d,l=null===(i=null==u?void 0:u.enabled)||void 0===i||i,c=o([]),f=e(c,2),p=f[0],a=f[1];return n((function(){a([])}),[l]),r(null!==(s=null==u?void 0:u.target)&&void 0!==s?s:window,"keydown",(function(e){l&&a((function(o){return o.some((function(t){return t.code===e.code}))?o:[].concat(t(o),[{key:e.key,code:e.code}])}))})),r(null!==(d=null==u?void 0:u.target)&&void 0!==d?d:window,"keyup",(function(e){l&&a((function(t){return t.filter((function(t){return t.code!==e.code}))}))})),p};export{u as useKeysPressed};
1
+ /* @license @siberiacancode/reactuse v0.0.94 */
2
+ import{_ as e,a as t}from"../../_rollupPluginBabelHelpers-Dp_7XWBJ.js";import{useState as o}from"react";import{useDidUpdate as n}from"../useDidUpdate/useDidUpdate.js";import{useEventListener as r}from"../useEventListener/useEventListener.js";import"../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js";import"../../utils/helpers/getElement.js";import"../useEvent/useEvent.js";import"../useRefState/useRefState.js";var u=function(u){var i,s,l,c=null===(i=null==u?void 0:u.enabled)||void 0===i||i,d=o([]),f=e(d,2),a=f[0],p=f[1];return n((function(){p([])}),[c]),r(null!==(s=null==u?void 0:u.target)&&void 0!==s?s:window,"keydown",(function(e){c&&p((function(o){return o.some((function(t){return t.code===e.code}))?o:[].concat(t(o),[{key:e.key,code:e.code}])}))})),r(null!==(l=null==u?void 0:u.target)&&void 0!==l?l:window,"keyup",(function(e){c&&p((function(t){return t.filter((function(t){return t.code!==e.code}))}))})),a};export{u as useKeysPressed};
3
3
  //# sourceMappingURL=useKeysPressed.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useKeysPressed.js","sources":["../../../../src/hooks/useKeysPressed/useKeysPressed.ts"],"sourcesContent":["import { useState } from 'react';\n\nimport type { UseEventListenerTarget } from '../useEventListener/useEventListener';\n\nimport { useDidUpdate } from '../useDidUpdate/useDidUpdate';\nimport { useEventListener } from '../useEventListener/useEventListener';\n\n/** The use keys pressed params type */\nexport interface UseKeysPressedParams {\n /** Enable or disable the event listeners */\n enabled?: boolean;\n /** The target to attach the event listeners to */\n target?: UseEventListenerTarget;\n}\n\n/**\n * @name useKeysPressed\n * @description - Hook for get keys that were pressed\n * @category Sensors\n *\n * @param {UseEventListenerTarget} [params.target=window] The target to attach the event listeners to\n * @param {boolean} [params.enabled=bollean] Enable or disable the event listeners\n * @returns {useKeysPressedReturns} Array of strings with keys that were press\n *\n * @example\n * const pressedKeys = useKeysPressed();\n */\nexport const useKeysPressed = (params?: UseKeysPressedParams) => {\n const enabled = params?.enabled ?? true;\n const [keys, setKeys] = useState<{ key: string; code: string }[]>([]);\n\n const onKeyDown = (event: KeyboardEvent) => {\n if (!enabled) return;\n setKeys((prevKeys) => {\n if (prevKeys.some(({ code }) => code === event.code)) return prevKeys;\n return [...prevKeys, { key: event.key, code: event.code }];\n });\n };\n\n const onKeyUp = (event: KeyboardEvent) => {\n if (!enabled) return;\n setKeys((prevKeys) => prevKeys.filter(({ code }) => code !== event.code));\n };\n\n useDidUpdate(() => {\n setKeys([]);\n }, [enabled]);\n\n useEventListener(params?.target ?? window, 'keydown', onKeyDown);\n useEventListener(params?.target ?? window, 'keyup', onKeyUp);\n\n return keys;\n};\n"],"names":["useKeysPressed","params","_params$enabled","_params$target","_params$target2","enabled","_useState","useState","_useState2","_slicedToArray","keys","setKeys","useDidUpdate","useEventListener","target","window","event","prevKeys","some","_ref","code","concat","_toConsumableArray","key","filter","_ref2"],"mappings":";8cA2BaA,EAAiB,SAACC,GAAkC,IAAAC,EAAAC,EAAAC,EACzDC,EAAyBH,QAAlBA,EAAGD,aAAM,EAANA,EAAQI,eAAOH,IAAAA,GAAAA,EAC/BI,EAAwBC,EAA0C,IAAGC,EAAAC,EAAAH,EAAA,GAA9DI,EAAIF,EAAA,GAAEG,EAAOH,EAAA,GAsBpB,OAPAI,GAAa,WACXD,EAAQ,GACV,GAAG,CAACN,IAEJQ,UAAgBV,EAACF,aAAM,EAANA,EAAQa,cAAM,IAAAX,EAAAA,EAAIY,OAAQ,WAjBzB,SAACC,GACZX,GACLM,GAAQ,SAACM,GACP,OAAIA,EAASC,MAAK,SAAAC,GAAO,OAAAA,EAAJC,OAAoBJ,EAAMI,IAAK,IAASH,EAC7D,GAAAI,OAAAC,EAAWL,GAAU,CAAA,CAAEM,IAAKP,EAAMO,IAAKH,KAAMJ,EAAMI,OACrD,GACD,IAYDP,UAAgBT,EAACH,aAAM,EAANA,EAAQa,cAAM,IAAAV,EAAAA,EAAIW,OAAQ,SAV3B,SAACC,GACVX,GACLM,GAAQ,SAACM,GAAQ,OAAKA,EAASO,QAAO,SAAAC,GAAO,OAAAA,EAAJL,OAAoBJ,EAAMI,UACpE,IASMV,CACT"}
1
+ {"version":3,"file":"useKeysPressed.js","sources":["../../../../src/hooks/useKeysPressed/useKeysPressed.ts"],"sourcesContent":["import { useState } from 'react';\n\nimport type { UseEventListenerTarget } from '../useEventListener/useEventListener';\n\nimport { useDidUpdate } from '../useDidUpdate/useDidUpdate';\nimport { useEventListener } from '../useEventListener/useEventListener';\n\n/** The use keys pressed params type */\nexport interface UseKeysPressedParams {\n /** Enable or disable the event listeners */\n enabled?: boolean;\n /** The target to attach the event listeners to */\n target?: UseEventListenerTarget;\n}\n\n/**\n * @name useKeysPressed\n * @description - Hook for get keys that were pressed\n * @category Sensors\n *\n * @param {UseEventListenerTarget} [params.target=window] The target to attach the event listeners to\n * @param {boolean} [params.enabled=bollean] Enable or disable the event listeners\n * @returns {useKeysPressedReturns} Array of strings with keys that were press\n *\n * @example\n * const pressedKeys = useKeysPressed();\n */\nexport const useKeysPressed = (params?: UseKeysPressedParams) => {\n const enabled = params?.enabled ?? true;\n const [keys, setKeys] = useState<{ key: string; code: string }[]>([]);\n\n const onKeyDown = (event: KeyboardEvent) => {\n if (!enabled) return;\n setKeys((prevKeys) => {\n if (prevKeys.some(({ code }) => code === event.code)) return prevKeys;\n return [...prevKeys, { key: event.key, code: event.code }];\n });\n };\n\n const onKeyUp = (event: KeyboardEvent) => {\n if (!enabled) return;\n setKeys((prevKeys) => prevKeys.filter(({ code }) => code !== event.code));\n };\n\n useDidUpdate(() => {\n setKeys([]);\n }, [enabled]);\n\n useEventListener(params?.target ?? window, 'keydown', onKeyDown);\n useEventListener(params?.target ?? window, 'keyup', onKeyUp);\n\n return keys;\n};\n"],"names":["useKeysPressed","params","_params$enabled","_params$target","_params$target2","enabled","_useState","useState","_useState2","_slicedToArray","keys","setKeys","useDidUpdate","useEventListener","target","window","event","prevKeys","some","_ref","code","concat","_toConsumableArray","key","filter","_ref2"],"mappings":";waA2BaA,EAAiB,SAACC,GAAkC,IAAAC,EAAAC,EAAAC,EACzDC,EAAyBH,QAAlBA,EAAGD,aAAM,EAANA,EAAQI,eAAOH,IAAAA,GAAAA,EAC/BI,EAAwBC,EAA0C,IAAGC,EAAAC,EAAAH,EAAA,GAA9DI,EAAIF,EAAA,GAAEG,EAAOH,EAAA,GAsBpB,OAPAI,GAAa,WACXD,EAAQ,GACV,GAAG,CAACN,IAEJQ,UAAgBV,EAACF,aAAM,EAANA,EAAQa,cAAM,IAAAX,EAAAA,EAAIY,OAAQ,WAjBzB,SAACC,GACZX,GACLM,GAAQ,SAACM,GACP,OAAIA,EAASC,MAAK,SAAAC,GAAO,OAAAA,EAAJC,OAAoBJ,EAAMI,IAAK,IAASH,EAC7D,GAAAI,OAAAC,EAAWL,GAAU,CAAA,CAAEM,IAAKP,EAAMO,IAAKH,KAAMJ,EAAMI,OACrD,GACD,IAYDP,UAAgBT,EAACH,aAAM,EAANA,EAAQa,cAAM,IAAAV,EAAAA,EAAIW,OAAQ,SAV3B,SAACC,GACVX,GACLM,GAAQ,SAACM,GAAQ,OAAKA,EAASO,QAAO,SAAAC,GAAO,OAAAA,EAAJL,OAAoBJ,EAAMI,UACpE,IASMV,CACT"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.91 */
2
- import{_ as o}from"../../_rollupPluginBabelHelpers-USgtHx7z.js";import{useState as r}from"react";import{useDidUpdate as t}from"../useDidUpdate/useDidUpdate.js";import"../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js";var e=function(e,i){var u,l=r(null!==(u=null==i?void 0:i.initialValue)&&void 0!==u?u:null),a=o(l,2),n=a[0],p=a[1];return t((function(){return p(Date.now())}),[e]),n};export{e as useLastChanged};
1
+ /* @license @siberiacancode/reactuse v0.0.94 */
2
+ import{_ as o}from"../../_rollupPluginBabelHelpers-Dp_7XWBJ.js";import{useState as r}from"react";import{useDidUpdate as t}from"../useDidUpdate/useDidUpdate.js";import"../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js";var e=function(e,i){var u,l=r(null!==(u=null==i?void 0:i.initialValue)&&void 0!==u?u:null),a=o(l,2),n=a[0],p=a[1];return t((function(){return p(Date.now())}),[e]),n};export{e as useLastChanged};
3
3
  //# sourceMappingURL=useLastChanged.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.91 */
1
+ /* @license @siberiacancode/reactuse v0.0.94 */
2
2
  import{useRef as r}from"react";var t=function(t){var e=r(t);return e.current=t,e.current};export{t as useLatest};
3
3
  //# sourceMappingURL=useLatest.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.91 */
2
- import{_ as n,a as t}from"../../_rollupPluginBabelHelpers-USgtHx7z.js";import{useState as r}from"react";var e=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],u=r(e),c=n(u,2),o=c[0],i=c[1];return{value:o,set:i,push:function(n){return i((function(r){return[].concat(t(r),[n])}))},removeAt:function(n){return i((function(r){return[].concat(t(r.slice(0,n)),t(r.slice(n+1)))}))},insertAt:function(n,r){return i((function(e){return[].concat(t(e.slice(0,n)),[r],t(e.slice(n)))}))},updateAt:function(n,t){return i((function(r){return r.map((function(r,e){return e===n?t:r}))}))},clear:function(){return i([])},reset:function(){return i(e)}}};export{e as useList};
1
+ /* @license @siberiacancode/reactuse v0.0.94 */
2
+ import{_ as n,a as t}from"../../_rollupPluginBabelHelpers-Dp_7XWBJ.js";import{useState as r}from"react";var e=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],u=r(e),c=n(u,2),o=c[0],i=c[1];return{value:o,set:i,push:function(n){return i((function(r){return[].concat(t(r),[n])}))},removeAt:function(n){return i((function(r){return[].concat(t(r.slice(0,n)),t(r.slice(n+1)))}))},insertAt:function(n,r){return i((function(e){return[].concat(t(e.slice(0,n)),[r],t(e.slice(n)))}))},updateAt:function(n,t){return i((function(r){return r.map((function(r,e){return e===n?t:r}))}))},clear:function(){return i([])},reset:function(){return i(e)}}};export{e as useList};
3
3
  //# sourceMappingURL=useList.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.91 */
2
- import{c as o}from"../../_rollupPluginBabelHelpers-USgtHx7z.js";import{useStorage as r}from"../useStorage/useStorage.js";import"react";import"../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js";var e=function(e,t,a){return r(e,o({initialValue:t,storage:window.localStorage},a))};export{e as useLocalStorage};
1
+ /* @license @siberiacancode/reactuse v0.0.94 */
2
+ import{c as o}from"../../_rollupPluginBabelHelpers-Dp_7XWBJ.js";import{useStorage as e}from"../useStorage/useStorage.js";import"react";import"../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js";var r=function(r,t,i){return e(r,o(o({},i),{},{initialValue:t,storage:"undefined"!=typeof window?window.localStorage:void 0}))};export{r as useLocalStorage};
3
3
  //# sourceMappingURL=useLocalStorage.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useLocalStorage.js","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 * @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?: UseStorageOptions<Value>\n) => useStorage(key, { initialValue, storage: window.localStorage, ...options });\n"],"names":["useLocalStorage","key","initialValue","options","useStorage","_objectSpread","storage","window","localStorage"],"mappings":";yMAiBO,IAAMA,EAAkB,SAC7BC,EACAC,EACAC,GAAkC,OAC/BC,EAAWH,EAAGI,EAAA,CAAIH,aAAAA,EAAcI,QAASC,OAAOC,cAAiBL,GAAU"}
1
+ {"version":3,"file":"useLocalStorage.js","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 * @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?: UseStorageOptions<Value>\n) =>\n useStorage(key, {\n ...options,\n initialValue,\n storage: typeof window !== 'undefined' ? window.localStorage : undefined\n });\n"],"names":["useLocalStorage","key","initialValue","options","useStorage","_objectSpread","storage","window","localStorage","undefined"],"mappings":";yMAiBO,IAAMA,EAAkB,SAC7BC,EACAC,EACAC,GAAkC,OAElCC,EAAWH,EAAGI,EAAAA,KACTF,GAAO,GAAA,CACVD,aAAAA,EACAI,QAA2B,oBAAXC,OAAyBA,OAAOC,kBAAeC,IAC/D"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.91 */
2
- import{a as o}from"../../_rollupPluginBabelHelpers-USgtHx7z.js";import{useEffect as t}from"react";import{useDidUpdate as c}from"../useDidUpdate/useDidUpdate.js";import"../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js";var n=function(n,e){t((function(){var t;return(t=console).log.apply(t,["".concat(n," mounted")].concat(o(e))),function(){return console.log("".concat(n," unmounted"))}}),[]),c((function(){var t;(t=console).log.apply(t,["".concat(n," updated")].concat(o(e)))}),e)};export{n as useLogger};
1
+ /* @license @siberiacancode/reactuse v0.0.94 */
2
+ import{a as o}from"../../_rollupPluginBabelHelpers-Dp_7XWBJ.js";import{useEffect as t}from"react";import{useDidUpdate as c}from"../useDidUpdate/useDidUpdate.js";import"../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js";var n=function(n,e){t((function(){var t;return(t=console).log.apply(t,["".concat(n," mounted")].concat(o(e))),function(){return console.log("".concat(n," unmounted"))}}),[]),c((function(){var t;(t=console).log.apply(t,["".concat(n," updated")].concat(o(e)))}),e)};export{n as useLogger};
3
3
  //# sourceMappingURL=useLogger.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.91 */
2
- import{_ as n}from"../../_rollupPluginBabelHelpers-USgtHx7z.js";import{useState as l,useRef as r}from"react";var o=function(o,u){var t=l(!1),e=n(t,2),c=e[0],i=e[1],a=r(),v=r(!1),s=function(n){var l,r;null==u||null===(l=u.onStart)||void 0===l||l.call(u,n),v.current=!0,a.current=setTimeout((function(){o(n),i(!0)}),null!==(r=null==u?void 0:u.threshold)&&void 0!==r?r:400)},f=function(n){var l;if(c)null==u||null===(l=u.onFinish)||void 0===l||l.call(u,n);else if(v.current){var r;null==u||null===(r=u.onCancel)||void 0===r||r.call(u,n)}i(!1),v.current=!1,a.current&&clearTimeout(a.current)};return[{onMouseDown:s,onTouchStart:s,onMouseUp:f,onTouchEnd:f},c]};export{o as useLongPress};
1
+ /* @license @siberiacancode/reactuse v0.0.94 */
2
+ import{_ as n}from"../../_rollupPluginBabelHelpers-Dp_7XWBJ.js";import{useState as l,useRef as r}from"react";var o=function(o,u){var t=l(!1),e=n(t,2),c=e[0],i=e[1],a=r(),v=r(!1),s=function(n){var l,r;null==u||null===(l=u.onStart)||void 0===l||l.call(u,n),v.current=!0,a.current=setTimeout((function(){o(n),i(!0)}),null!==(r=null==u?void 0:u.threshold)&&void 0!==r?r:400)},f=function(n){var l;if(c)null==u||null===(l=u.onFinish)||void 0===l||l.call(u,n);else if(v.current){var r;null==u||null===(r=u.onCancel)||void 0===r||r.call(u,n)}i(!1),v.current=!1,a.current&&clearTimeout(a.current)};return[{onMouseDown:s,onTouchStart:s,onMouseUp:f,onTouchEnd:f},c]};export{o as useLongPress};
3
3
  //# sourceMappingURL=useLongPress.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useLongPress.js","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":["useLongPress","callback","options","_useState","useState","_useState2","_slicedToArray","isLongPressActive","setIsLongPressActive","timeoutIdRef","useRef","isPressed","start","event","_options$onStart","_options$threshold","onStart","call","current","setTimeout","threshold","cancel","_options$onFinish","onFinish","_options$onCancel","onCancel","clearTimeout","onMouseDown","onTouchStart","onMouseUp","onTouchEnd"],"mappings":";6GAsCA,IAmBaA,EAAe,SAC1BC,EACAC,GAEA,IAAAC,EAAkDC,GAAS,GAAMC,EAAAC,EAAAH,EAAA,GAA1DI,EAAiBF,EAAA,GAAEG,EAAoBH,EAAA,GACxCI,EAAeC,IACfC,EAAYD,GAAO,GAEnBE,EAAQ,SAACC,GAAgC,IAAAC,EAAAC,EAC7Cb,SAAgB,QAATY,EAAPZ,EAASc,eAAO,IAAAF,GAAhBA,EAAAG,KAAAf,EAAmBW,GAEnBF,EAAUO,SAAU,EACpBT,EAAaS,QAAUC,YAAW,WAChClB,EAASY,GACTL,GAAqB,EACvB,WAACO,EAAEb,aAAAA,EAAAA,EAASkB,iBAAS,IAAAL,EAAAA,EAlCM,IAmC5B,EAEKM,EAAS,SAACR,GACS,IAAAS,EAAvB,GAAIf,EACFL,SAAiB,QAAVoB,EAAPpB,EAASqB,gBAAQ,IAAAD,GAAjBA,EAAAL,KAAAf,EAAoBW,QACf,GAAIF,EAAUO,QAAS,CAAA,IAAAM,EAC5BtB,SAAiB,QAAVsB,EAAPtB,EAASuB,gBAAQ,IAAAD,GAAjBA,EAAAP,KAAAf,EAAoBW,EACtB,CAEAL,GAAqB,GACrBG,EAAUO,SAAU,EAEhBT,EAAaS,SAASQ,aAAajB,EAAaS,QACrD,EASD,MAAO,CAPM,CACXS,YAAaf,EACbgB,aAAchB,EACdiB,UAAWR,EACXS,WAAYT,GAGAd,EAChB"}
1
+ {"version":3,"file":"useLongPress.js","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":["useLongPress","callback","options","_useState","useState","_useState2","_slicedToArray","isLongPressActive","setIsLongPressActive","timeoutIdRef","useRef","isPressed","start","event","_options$onStart","_options$threshold","onStart","call","current","setTimeout","threshold","cancel","_options$onFinish","onFinish","_options$onCancel","onCancel","clearTimeout","onMouseDown","onTouchStart","onMouseUp","onTouchEnd"],"mappings":";6GAsCA,IAmBaA,EAAe,SAC1BC,EACAC,GAEA,IAAAC,EAAkDC,GAAS,GAAMC,EAAAC,EAAAH,EAAA,GAA1DI,EAAiBF,EAAA,GAAEG,EAAoBH,EAAA,GACxCI,EAAeC,IACfC,EAAYD,GAAO,GAEnBE,EAAQ,SAACC,GAAgC,IAAAC,EAAAC,EAC7Cb,SAAgB,QAATY,EAAPZ,EAASc,eAAO,IAAAF,GAAhBA,EAAAG,KAAAf,EAAmBW,GAEnBF,EAAUO,SAAU,EACpBT,EAAaS,QAAUC,YAAW,WAChClB,EAASY,GACTL,GAAqB,EACtB,WAAAO,EAAEb,aAAAA,EAAAA,EAASkB,iBAAS,IAAAL,EAAAA,EAlCM,IAmC5B,EAEKM,EAAS,SAACR,GACS,IAAAS,EAAvB,GAAIf,EACFL,SAAiB,QAAVoB,EAAPpB,EAASqB,gBAAQ,IAAAD,GAAjBA,EAAAL,KAAAf,EAAoBW,QACf,GAAIF,EAAUO,QAAS,CAAA,IAAAM,EAC5BtB,SAAiB,QAAVsB,EAAPtB,EAASuB,gBAAQ,IAAAD,GAAjBA,EAAAP,KAAAf,EAAoBW,EACtB,CAEAL,GAAqB,GACrBG,EAAUO,SAAU,EAEhBT,EAAaS,SAASQ,aAAajB,EAAaS,QACrD,EASD,MAAO,CAPM,CACXS,YAAaf,EACbgB,aAAchB,EACdiB,UAAWR,EACXS,WAAYT,GAGAd,EAChB"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.91 */
2
- import{_ as e}from"../../_rollupPluginBabelHelpers-USgtHx7z.js";import{useState as r}from"react";var n=function(n){var t=r(new Map(n)),u=e(t,2),a=u[0],o=u[1];return{value:a,size:a.size,set:function(e,r){return o((function(n){return new Map(n).set(e,r)}))},has:function(e){return a.has(e)},remove:function(e){return o((function(r){if(!r.has(e))return r;var n=new Map(r);return n.delete(e),n}))},clear:function(){return o(new Map)},reset:function(){return o(new Map(n))}}};export{n as useMap};
1
+ /* @license @siberiacancode/reactuse v0.0.94 */
2
+ import{_ as e}from"../../_rollupPluginBabelHelpers-Dp_7XWBJ.js";import{useState as r}from"react";var n=function(n){var t=r(new Map(n)),u=e(t,2),a=u[0],o=u[1];return{value:a,size:a.size,set:function(e,r){return o((function(n){return new Map(n).set(e,r)}))},has:function(e){return a.has(e)},remove:function(e){return o((function(r){if(!r.has(e))return r;var n=new Map(r);return n.delete(e),n}))},clear:function(){return o(new Map)},reset:function(){return o(new Map(n))}}};export{n as useMap};
3
3
  //# sourceMappingURL=useMap.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.91 */
2
- import{_ as e,c as t}from"../../_rollupPluginBabelHelpers-USgtHx7z.js";import{useState as r}from"react";import{useRefState as o}from"../useRefState/useRefState.js";import{useResizeObserver as i}from"../useResizeObserver/useResizeObserver.js";import"../useRerender/useRerender.js";import"../../utils/helpers/getElement.js";var s=function(s){var n=o(),h=r({x:0,y:0,width:0,height:0,top:0,left:0,bottom:0,right:0}),m=e(h,2),u=m[0],f=m[1];return i(null!=s?s:n.current,{onChange:function(t){var r=e(t,1)[0];if(r){var o=r.contentRect,i=o.x,s=o.y,n=o.width,h=o.height,m=o.top,u=o.left,l=o.bottom,p=o.right;f({x:i,y:s,width:n,height:h,top:m,left:u,bottom:l,right:p})}}}),s?u:t({ref:n},u)};export{s as useMeasure};
1
+ /* @license @siberiacancode/reactuse v0.0.94 */
2
+ import{_ as t,c as e}from"../../_rollupPluginBabelHelpers-Dp_7XWBJ.js";import{useState as r}from"react";import{useRefState as o}from"../useRefState/useRefState.js";import{useResizeObserver as i}from"../useResizeObserver/useResizeObserver.js";import"../../utils/helpers/getElement.js";var s=function(s){var h=o(),f=r({x:0,y:0,width:0,height:0,top:0,left:0,bottom:0,right:0}),l=t(f,2),m=l[0],n=l[1];return i(null!=s?s:h.current,{onChange:function(e){var r=t(e,1)[0];if(r){var o=r.contentRect,i=o.x,s=o.y,h=o.width,f=o.height,l=o.top,m=o.left,p=o.bottom,u=o.right;n({x:i,y:s,width:h,height:f,top:l,left:m,bottom:p,right:u})}}}),s?m:e({ref:h},m)};export{s as useMeasure};
3
3
  //# sourceMappingURL=useMeasure.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useMeasure.js","sources":["../../../../src/hooks/useMeasure/useMeasure.ts"],"sourcesContent":["import type { RefObject } from 'react';\n\nimport { useState } from 'react';\n\nimport { useRefState } from '../useRefState/useRefState';\nimport { useResizeObserver } from '../useResizeObserver/useResizeObserver';\n\n/** The use measure target element type */\nexport type UseMeasureTarget = (() => Element) | Element | RefObject<Element | null | undefined>;\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 UseMeasureScreen {\n <Target extends UseMeasureTarget>(target: Target): UseMeasureReturn;\n\n <Target extends UseMeasureTarget>(target?: never): UseMeasureReturn & { ref: RefObject<Target> };\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 * @template Target The element to measure\n * @param {Target} [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: RefObject<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 = (<Target extends UseMeasureTarget>(target?: Target) => {\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 useResizeObserver((target ?? internalRef.current) as Element, {\n onChange: ([entry]) => {\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\n if (target) return rect;\n return { ref: internalRef, ...rect };\n}) as UseMeasureScreen;\n"],"names":["useMeasure","target","internalRef","useRefState","_useState","useState","x","y","width","height","top","left","bottom","right","_useState2","_slicedToArray","rect","setRect","useResizeObserver","current","onChange","_ref","entry","_entry$contentRect","contentRect","_objectSpread","ref"],"mappings":";sUA0CaA,EAAc,SAAkCC,GAC3D,IAAMC,EAAcC,IACpBC,EAAwBC,EAAS,CAC/BC,EAAG,EACHC,EAAG,EACHC,MAAO,EACPC,OAAQ,EACRC,IAAK,EACLC,KAAM,EACNC,OAAQ,EACRC,MAAO,IACPC,EAAAC,EAAAX,EAAA,GATKY,EAAIF,EAAA,GAAEG,EAAOH,EAAA,GAoBpB,OATAI,EAAmBjB,QAAAA,EAAUC,EAAYiB,QAAqB,CAC5DC,SAAU,SAAFC,GAAe,IAAXC,EAAWP,EAAAM,EAAA,GAAN,GACf,GAAKC,EAAL,CAEA,IAAAC,EAA0DD,EAAME,YAAxDlB,EAACiB,EAADjB,EAAGC,EAACgB,EAADhB,EAAGC,EAAKe,EAALf,MAAOC,EAAMc,EAANd,OAAQC,EAAGa,EAAHb,IAAKC,EAAIY,EAAJZ,KAAMC,EAAMW,EAANX,OAAQC,EAAKU,EAALV,MAChDI,EAAQ,CAAEX,EAAAA,EAAGC,EAAAA,EAAGC,MAAAA,EAAOC,OAAAA,EAAQC,IAAAA,EAAKC,KAAAA,EAAMC,OAAAA,EAAQC,MAAAA,GAHtC,CAId,IAGEZ,EAAee,EACnBS,EAAA,CAASC,IAAKxB,GAAgBc,EAChC"}
1
+ {"version":3,"file":"useMeasure.js","sources":["../../../../src/hooks/useMeasure/useMeasure.ts"],"sourcesContent":["import type { RefObject } from 'react';\n\nimport { useState } from 'react';\n\nimport { useRefState } from '../useRefState/useRefState';\nimport { useResizeObserver } from '../useResizeObserver/useResizeObserver';\n\n/** The use measure target element type */\nexport type UseMeasureTarget = (() => Element) | Element | RefObject<Element | null | undefined>;\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 UseMeasureScreen {\n <Target extends UseMeasureTarget>(target: Target): UseMeasureReturn;\n\n <Target extends UseMeasureTarget>(target?: never): UseMeasureReturn & { ref: RefObject<Target> };\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 * @template Target The element to measure\n * @param {Target} [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: RefObject<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 = (<Target extends UseMeasureTarget>(target?: Target) => {\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 useResizeObserver((target ?? internalRef.current) as Element, {\n onChange: ([entry]) => {\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\n if (target) return rect;\n return { ref: internalRef, ...rect };\n}) as UseMeasureScreen;\n"],"names":["useMeasure","target","internalRef","useRefState","_useState","useState","x","y","width","height","top","left","bottom","right","_useState2","_slicedToArray","rect","setRect","useResizeObserver","current","onChange","_ref","entry","_entry$contentRect","contentRect","_objectSpread","ref"],"mappings":";gSA0CaA,EAAc,SAAkCC,GAC3D,IAAMC,EAAcC,IACpBC,EAAwBC,EAAS,CAC/BC,EAAG,EACHC,EAAG,EACHC,MAAO,EACPC,OAAQ,EACRC,IAAK,EACLC,KAAM,EACNC,OAAQ,EACRC,MAAO,IACPC,EAAAC,EAAAX,EAAA,GATKY,EAAIF,EAAA,GAAEG,EAAOH,EAAA,GAoBpB,OATAI,EAAmBjB,QAAAA,EAAUC,EAAYiB,QAAqB,CAC5DC,SAAU,SAAFC,GAAe,IAAXC,EAAWP,EAAAM,EAAA,GAAN,GACf,GAAKC,EAAL,CAEA,IAAAC,EAA0DD,EAAME,YAAxDlB,EAACiB,EAADjB,EAAGC,EAACgB,EAADhB,EAAGC,EAAKe,EAALf,MAAOC,EAAMc,EAANd,OAAQC,EAAGa,EAAHb,IAAKC,EAAIY,EAAJZ,KAAMC,EAAMW,EAANX,OAAQC,EAAKU,EAALV,MAChDI,EAAQ,CAAEX,EAAAA,EAAGC,EAAAA,EAAGC,MAAAA,EAAOC,OAAAA,EAAQC,IAAAA,EAAKC,KAAAA,EAAMC,OAAAA,EAAQC,MAAAA,GAHtC,CAId,IAGEZ,EAAee,EACnBS,EAAA,CAASC,IAAKxB,GAAgBc,EAChC"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.91 */
1
+ /* @license @siberiacancode/reactuse v0.0.94 */
2
2
  import{useCallback as n,useSyncExternalStore as e}from"react";var t=function(){return!1},r=function(r){var a=n((function(n){var e=window.matchMedia(r);return e.addEventListener("change",n),function(){e.removeEventListener("change",n)}}),[r]);return e(a,(function(){return window.matchMedia(r).matches}),t)};export{r as useMediaQuery};
3
3
  //# sourceMappingURL=useMediaQuery.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.91 */
2
- import{_ as e}from"../../_rollupPluginBabelHelpers-USgtHx7z.js";import{useState as r}from"react";import{useInterval as o}from"../useInterval/useInterval.js";import"../useEvent/useEvent.js";var t=function(){var t=performance&&"memory"in performance,a=r({jsHeapSizeLimit:0,totalJSHeapSize:0,usedJSHeapSize:0}),n=e(a,2),m=n[0],p=n[1];return o((function(){return p(performance.memory)}),1e3,{enabled:t}),{supported:t,value:m}};export{t as useMemory};
1
+ /* @license @siberiacancode/reactuse v0.0.94 */
2
+ import{_ as e}from"../../_rollupPluginBabelHelpers-Dp_7XWBJ.js";import{useState as r}from"react";import{useInterval as o}from"../useInterval/useInterval.js";var a=function(){var a=performance&&"memory"in performance,t=r({jsHeapSizeLimit:0,totalJSHeapSize:0,usedJSHeapSize:0}),m=e(t,2),n=m[0],p=m[1];return o((function(){return p(performance.memory)}),1e3,{enabled:a}),{supported:a,value:n}};export{a as useMemory};
3
3
  //# sourceMappingURL=useMemory.js.map