@siberiacancode/reactuse 0.0.28 → 0.0.31

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 (280) hide show
  1. package/dist/cjs/{_rollupPluginBabelHelpers-CntznmQ7.js → _rollupPluginBabelHelpers-XknWBRG7.js} +2 -2
  2. package/dist/cjs/_rollupPluginBabelHelpers-XknWBRG7.js.map +1 -0
  3. package/dist/cjs/hooks/index.js +2 -2
  4. package/dist/cjs/hooks/useBattery/useBattery.js +2 -2
  5. package/dist/cjs/hooks/useBattery/useBattery.js.map +1 -1
  6. package/dist/cjs/hooks/useBoolean/useBoolean.js +2 -2
  7. package/dist/cjs/hooks/useBoolean/useBoolean.js.map +1 -1
  8. package/dist/cjs/hooks/useBrowserLanguage/useBrowserLanguage.js +1 -1
  9. package/dist/cjs/hooks/useClickOutside/useClickOutside.js +1 -1
  10. package/dist/cjs/hooks/useClickOutside/useClickOutside.js.map +1 -1
  11. package/dist/cjs/hooks/useCopyToClipboard/useCopyToClipboard.js +2 -2
  12. package/dist/cjs/hooks/useCopyToClipboard/useCopyToClipboard.js.map +1 -1
  13. package/dist/cjs/hooks/useCounter/useCounter.js +2 -2
  14. package/dist/cjs/hooks/useCounter/useCounter.js.map +1 -1
  15. package/dist/cjs/hooks/useDebouncedValue/useDebouncedValue.js +2 -2
  16. package/dist/cjs/hooks/useDebouncedValue/useDebouncedValue.js.map +1 -1
  17. package/dist/cjs/hooks/useDefault/useDefault.js +2 -2
  18. package/dist/cjs/hooks/useDefault/useDefault.js.map +1 -1
  19. package/dist/cjs/hooks/useDidUpdate/useDidUpdate.js +1 -1
  20. package/dist/cjs/hooks/useDidUpdate/useDidUpdate.js.map +1 -1
  21. package/dist/cjs/hooks/useDocumentEvent/useDocumentEvent.js +1 -1
  22. package/dist/cjs/hooks/useDocumentTitle/useDocumentTitle.js +2 -2
  23. package/dist/cjs/hooks/useDocumentTitle/useDocumentTitle.js.map +1 -1
  24. package/dist/cjs/hooks/useDocumentVisibility/useDocumentVisibility.js +1 -1
  25. package/dist/cjs/hooks/useDocumentVisibility/useDocumentVisibility.js.map +1 -1
  26. package/dist/cjs/hooks/useEvent/useEvent.js +1 -1
  27. package/dist/cjs/hooks/useEvent/useEvent.js.map +1 -1
  28. package/dist/cjs/hooks/useEventListener/useEventListener.js +1 -1
  29. package/dist/cjs/hooks/useEventListener/useEventListener.js.map +1 -1
  30. package/dist/cjs/hooks/useEyeDropper/useEyeDropper.js +2 -2
  31. package/dist/cjs/hooks/useEyeDropper/useEyeDropper.js.map +1 -1
  32. package/dist/cjs/hooks/useFavicon/useFavicon.js +2 -2
  33. package/dist/cjs/hooks/useFavicon/useFavicon.js.map +1 -1
  34. package/dist/cjs/hooks/useField/useField.js +3 -0
  35. package/dist/cjs/hooks/useField/useField.js.map +1 -0
  36. package/dist/cjs/hooks/useFps/useFps.js +2 -2
  37. package/dist/cjs/hooks/useFps/useFps.js.map +1 -1
  38. package/dist/cjs/hooks/useFullscreen/useFullscreen.js +2 -2
  39. package/dist/cjs/hooks/useFullscreen/useFullscreen.js.map +1 -1
  40. package/dist/cjs/hooks/useHash/useHash.js +2 -2
  41. package/dist/cjs/hooks/useHash/useHash.js.map +1 -1
  42. package/dist/cjs/hooks/useHotkeys/useHotkeys.js +2 -2
  43. package/dist/cjs/hooks/useHotkeys/useHotkeys.js.map +1 -1
  44. package/dist/cjs/hooks/useHover/useHover.js +2 -2
  45. package/dist/cjs/hooks/useHover/useHover.js.map +1 -1
  46. package/dist/cjs/hooks/useIdle/useIdle.js +2 -2
  47. package/dist/cjs/hooks/useIdle/useIdle.js.map +1 -1
  48. package/dist/cjs/hooks/useIntersectionObserver/useIntersectionObserver.js +2 -2
  49. package/dist/cjs/hooks/useIntersectionObserver/useIntersectionObserver.js.map +1 -1
  50. package/dist/cjs/hooks/useInterval/useInterval.js +2 -2
  51. package/dist/cjs/hooks/useInterval/useInterval.js.map +1 -1
  52. package/dist/cjs/hooks/useIsFirstRender/useIsFirstRender.js +1 -1
  53. package/dist/cjs/hooks/useIsFirstRender/useIsFirstRender.js.map +1 -1
  54. package/dist/cjs/hooks/useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js +1 -1
  55. package/dist/cjs/hooks/useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js.map +1 -1
  56. package/dist/cjs/hooks/useKeyPress/useKeyPress.js +2 -2
  57. package/dist/cjs/hooks/useKeyPress/useKeyPress.js.map +1 -1
  58. package/dist/cjs/hooks/useKeyPressEvent/useKeyPressEvent.js +1 -1
  59. package/dist/cjs/hooks/useKeyboard/useKeyboard.js +1 -1
  60. package/dist/cjs/hooks/useKeysPressed/useKeysPressed.js +2 -2
  61. package/dist/cjs/hooks/useKeysPressed/useKeysPressed.js.map +1 -1
  62. package/dist/cjs/hooks/useList/useList.js +2 -2
  63. package/dist/cjs/hooks/useList/useList.js.map +1 -1
  64. package/dist/cjs/hooks/useLocalStorage/useLocalStorage.js +2 -2
  65. package/dist/cjs/hooks/useLogger/useLogger.js +2 -2
  66. package/dist/cjs/hooks/useLogger/useLogger.js.map +1 -1
  67. package/dist/cjs/hooks/useLongPress/useLongPress.js +2 -2
  68. package/dist/cjs/hooks/useLongPress/useLongPress.js.map +1 -1
  69. package/dist/cjs/hooks/useMediaQuery/useMediaQuery.js +1 -1
  70. package/dist/cjs/hooks/useMediaQuery/useMediaQuery.js.map +1 -1
  71. package/dist/cjs/hooks/useMount/useMount.js +1 -1
  72. package/dist/cjs/hooks/useMount/useMount.js.map +1 -1
  73. package/dist/cjs/hooks/useMouse/useMouse.js +2 -2
  74. package/dist/cjs/hooks/useMouse/useMouse.js.map +1 -1
  75. package/dist/cjs/hooks/useMutation/useMutation.js +2 -2
  76. package/dist/cjs/hooks/useMutation/useMutation.js.map +1 -1
  77. package/dist/cjs/hooks/useMutationObserver.js +1 -1
  78. package/dist/cjs/hooks/useMutationObserver.js.map +1 -1
  79. package/dist/cjs/hooks/useNetwork/useNetwork.js +2 -2
  80. package/dist/cjs/hooks/useNetwork/useNetwork.js.map +1 -1
  81. package/dist/cjs/hooks/useOnline/useOnline.js +1 -1
  82. package/dist/cjs/hooks/useOnline/useOnline.js.map +1 -1
  83. package/dist/cjs/hooks/useOperatingSystem/useOperatingSystem.js +1 -1
  84. package/dist/cjs/hooks/useOperatingSystem/useOperatingSystem.js.map +1 -1
  85. package/dist/cjs/hooks/useOrientation/useOrientation.js +2 -2
  86. package/dist/cjs/hooks/useOrientation/useOrientation.js.map +1 -1
  87. package/dist/cjs/hooks/usePageLeave/usePageLeave.js +2 -2
  88. package/dist/cjs/hooks/usePageLeave/usePageLeave.js.map +1 -1
  89. package/dist/cjs/hooks/usePaint/usePaint.js +2 -2
  90. package/dist/cjs/hooks/usePaint/usePaint.js.map +1 -1
  91. package/dist/cjs/hooks/usePreferredColorScheme/usePreferredColorScheme.js +1 -1
  92. package/dist/cjs/hooks/usePreferredLanguages/usePreferredLanguages.js +1 -1
  93. package/dist/cjs/hooks/usePreferredLanguages/usePreferredLanguages.js.map +1 -1
  94. package/dist/cjs/hooks/usePrevious/usePrevious.js +1 -1
  95. package/dist/cjs/hooks/usePrevious/usePrevious.js.map +1 -1
  96. package/dist/cjs/hooks/useQRCode/useQRCode.js +2 -2
  97. package/dist/cjs/hooks/useQRCode/useQRCode.js.map +1 -1
  98. package/dist/cjs/hooks/useQuery/useQuery.js +2 -2
  99. package/dist/cjs/hooks/useQuery/useQuery.js.map +1 -1
  100. package/dist/cjs/hooks/useQueue/useQueue.js +2 -2
  101. package/dist/cjs/hooks/useQueue/useQueue.js.map +1 -1
  102. package/dist/cjs/hooks/useRenderCount/useRenderCount.js +1 -1
  103. package/dist/cjs/hooks/useRenderCount/useRenderCount.js.map +1 -1
  104. package/dist/cjs/hooks/useRenderInfo/useRenderInfo.js +1 -1
  105. package/dist/cjs/hooks/useRenderInfo/useRenderInfo.js.map +1 -1
  106. package/dist/cjs/hooks/useRerender/useRerender.js +2 -2
  107. package/dist/cjs/hooks/useRerender/useRerender.js.map +1 -1
  108. package/dist/cjs/hooks/useScript/useScript.js +2 -2
  109. package/dist/cjs/hooks/useScript/useScript.js.map +1 -1
  110. package/dist/cjs/hooks/useSessionStorage/useSessionStorage.js +2 -2
  111. package/dist/cjs/hooks/useSet/useSet.js +2 -2
  112. package/dist/cjs/hooks/useSet/useSet.js.map +1 -1
  113. package/dist/cjs/hooks/useStep/useStep.js +2 -2
  114. package/dist/cjs/hooks/useStep/useStep.js.map +1 -1
  115. package/dist/cjs/hooks/useStorage/useStorage.js +2 -2
  116. package/dist/cjs/hooks/useStorage/useStorage.js.map +1 -1
  117. package/dist/cjs/hooks/useTextSelection/useTextSelection.js +2 -2
  118. package/dist/cjs/hooks/useTextSelection/useTextSelection.js.map +1 -1
  119. package/dist/cjs/hooks/useTime/useTime.js +2 -2
  120. package/dist/cjs/hooks/useTime/useTime.js.map +1 -1
  121. package/dist/cjs/hooks/useTimeout/useTimeout.js +2 -2
  122. package/dist/cjs/hooks/useTimeout/useTimeout.js.map +1 -1
  123. package/dist/cjs/hooks/useToggle/useToggle.js +2 -2
  124. package/dist/cjs/hooks/useToggle/useToggle.js.map +1 -1
  125. package/dist/cjs/hooks/useUnmount/useUnmount.js +1 -1
  126. package/dist/cjs/hooks/useUnmount/useUnmount.js.map +1 -1
  127. package/dist/cjs/hooks/useWebSocket/useWebSocket.js +2 -2
  128. package/dist/cjs/hooks/useWebSocket/useWebSocket.js.map +1 -1
  129. package/dist/cjs/hooks/useWindowEvent/useWindowEvent.js +1 -1
  130. package/dist/cjs/hooks/useWindowSize/useWindowSize.js +2 -2
  131. package/dist/cjs/hooks/useWindowSize/useWindowSize.js.map +1 -1
  132. package/dist/cjs/index.js +2 -2
  133. package/dist/cjs/utils/helpers/debounce.js +1 -1
  134. package/dist/cjs/utils/helpers/getRetry.js +1 -1
  135. package/dist/cjs/utils/helpers/index.js +1 -1
  136. package/dist/cjs/utils/helpers/isClient.js +1 -1
  137. package/dist/cjs/utils/helpers/throttle.js +1 -1
  138. package/dist/cjs/utils/helpers/time/getDate.js +1 -1
  139. package/dist/esm/{_rollupPluginBabelHelpers-DsV9C8-q.js → _rollupPluginBabelHelpers-DmI4-Pc6.js} +2 -2
  140. package/dist/esm/_rollupPluginBabelHelpers-DmI4-Pc6.js.map +1 -0
  141. package/dist/esm/hooks/index.js +2 -2
  142. package/dist/esm/hooks/useBattery/useBattery.js +2 -2
  143. package/dist/esm/hooks/useBattery/useBattery.js.map +1 -1
  144. package/dist/esm/hooks/useBoolean/useBoolean.js +2 -2
  145. package/dist/esm/hooks/useBoolean/useBoolean.js.map +1 -1
  146. package/dist/esm/hooks/useBrowserLanguage/useBrowserLanguage.js +1 -1
  147. package/dist/esm/hooks/useClickOutside/useClickOutside.js +2 -2
  148. package/dist/esm/hooks/useClickOutside/useClickOutside.js.map +1 -1
  149. package/dist/esm/hooks/useCopyToClipboard/useCopyToClipboard.js +2 -2
  150. package/dist/esm/hooks/useCopyToClipboard/useCopyToClipboard.js.map +1 -1
  151. package/dist/esm/hooks/useCounter/useCounter.js +2 -2
  152. package/dist/esm/hooks/useCounter/useCounter.js.map +1 -1
  153. package/dist/esm/hooks/useDebouncedValue/useDebouncedValue.js +2 -2
  154. package/dist/esm/hooks/useDebouncedValue/useDebouncedValue.js.map +1 -1
  155. package/dist/esm/hooks/useDefault/useDefault.js +2 -2
  156. package/dist/esm/hooks/useDefault/useDefault.js.map +1 -1
  157. package/dist/esm/hooks/useDidUpdate/useDidUpdate.js +2 -2
  158. package/dist/esm/hooks/useDidUpdate/useDidUpdate.js.map +1 -1
  159. package/dist/esm/hooks/useDocumentEvent/useDocumentEvent.js +1 -1
  160. package/dist/esm/hooks/useDocumentTitle/useDocumentTitle.js +2 -2
  161. package/dist/esm/hooks/useDocumentTitle/useDocumentTitle.js.map +1 -1
  162. package/dist/esm/hooks/useDocumentVisibility/useDocumentVisibility.js +2 -2
  163. package/dist/esm/hooks/useDocumentVisibility/useDocumentVisibility.js.map +1 -1
  164. package/dist/esm/hooks/useEvent/useEvent.js +2 -2
  165. package/dist/esm/hooks/useEvent/useEvent.js.map +1 -1
  166. package/dist/esm/hooks/useEventListener/useEventListener.js +2 -2
  167. package/dist/esm/hooks/useEventListener/useEventListener.js.map +1 -1
  168. package/dist/esm/hooks/useEyeDropper/useEyeDropper.js +2 -2
  169. package/dist/esm/hooks/useEyeDropper/useEyeDropper.js.map +1 -1
  170. package/dist/esm/hooks/useFavicon/useFavicon.js +2 -2
  171. package/dist/esm/hooks/useFavicon/useFavicon.js.map +1 -1
  172. package/dist/esm/hooks/useField/useField.js +3 -0
  173. package/dist/esm/hooks/useField/useField.js.map +1 -0
  174. package/dist/esm/hooks/useFps/useFps.js +2 -2
  175. package/dist/esm/hooks/useFps/useFps.js.map +1 -1
  176. package/dist/esm/hooks/useFullscreen/useFullscreen.js +2 -2
  177. package/dist/esm/hooks/useFullscreen/useFullscreen.js.map +1 -1
  178. package/dist/esm/hooks/useHash/useHash.js +2 -2
  179. package/dist/esm/hooks/useHash/useHash.js.map +1 -1
  180. package/dist/esm/hooks/useHotkeys/useHotkeys.js +2 -2
  181. package/dist/esm/hooks/useHotkeys/useHotkeys.js.map +1 -1
  182. package/dist/esm/hooks/useHover/useHover.js +2 -2
  183. package/dist/esm/hooks/useHover/useHover.js.map +1 -1
  184. package/dist/esm/hooks/useIdle/useIdle.js +2 -2
  185. package/dist/esm/hooks/useIdle/useIdle.js.map +1 -1
  186. package/dist/esm/hooks/useIntersectionObserver/useIntersectionObserver.js +2 -2
  187. package/dist/esm/hooks/useIntersectionObserver/useIntersectionObserver.js.map +1 -1
  188. package/dist/esm/hooks/useInterval/useInterval.js +2 -2
  189. package/dist/esm/hooks/useInterval/useInterval.js.map +1 -1
  190. package/dist/esm/hooks/useIsFirstRender/useIsFirstRender.js +2 -2
  191. package/dist/esm/hooks/useIsFirstRender/useIsFirstRender.js.map +1 -1
  192. package/dist/esm/hooks/useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js +2 -2
  193. package/dist/esm/hooks/useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js.map +1 -1
  194. package/dist/esm/hooks/useKeyPress/useKeyPress.js +2 -2
  195. package/dist/esm/hooks/useKeyPress/useKeyPress.js.map +1 -1
  196. package/dist/esm/hooks/useKeyPressEvent/useKeyPressEvent.js +1 -1
  197. package/dist/esm/hooks/useKeyboard/useKeyboard.js +1 -1
  198. package/dist/esm/hooks/useKeysPressed/useKeysPressed.js +2 -2
  199. package/dist/esm/hooks/useKeysPressed/useKeysPressed.js.map +1 -1
  200. package/dist/esm/hooks/useList/useList.js +2 -2
  201. package/dist/esm/hooks/useList/useList.js.map +1 -1
  202. package/dist/esm/hooks/useLocalStorage/useLocalStorage.js +2 -2
  203. package/dist/esm/hooks/useLogger/useLogger.js +2 -2
  204. package/dist/esm/hooks/useLogger/useLogger.js.map +1 -1
  205. package/dist/esm/hooks/useLongPress/useLongPress.js +2 -2
  206. package/dist/esm/hooks/useLongPress/useLongPress.js.map +1 -1
  207. package/dist/esm/hooks/useMediaQuery/useMediaQuery.js +2 -2
  208. package/dist/esm/hooks/useMediaQuery/useMediaQuery.js.map +1 -1
  209. package/dist/esm/hooks/useMount/useMount.js +2 -2
  210. package/dist/esm/hooks/useMount/useMount.js.map +1 -1
  211. package/dist/esm/hooks/useMouse/useMouse.js +2 -2
  212. package/dist/esm/hooks/useMouse/useMouse.js.map +1 -1
  213. package/dist/esm/hooks/useMutation/useMutation.js +2 -2
  214. package/dist/esm/hooks/useMutation/useMutation.js.map +1 -1
  215. package/dist/esm/hooks/useMutationObserver.js +2 -2
  216. package/dist/esm/hooks/useMutationObserver.js.map +1 -1
  217. package/dist/esm/hooks/useNetwork/useNetwork.js +2 -2
  218. package/dist/esm/hooks/useNetwork/useNetwork.js.map +1 -1
  219. package/dist/esm/hooks/useOnline/useOnline.js +2 -2
  220. package/dist/esm/hooks/useOnline/useOnline.js.map +1 -1
  221. package/dist/esm/hooks/useOperatingSystem/useOperatingSystem.js +2 -2
  222. package/dist/esm/hooks/useOperatingSystem/useOperatingSystem.js.map +1 -1
  223. package/dist/esm/hooks/useOrientation/useOrientation.js +2 -2
  224. package/dist/esm/hooks/useOrientation/useOrientation.js.map +1 -1
  225. package/dist/esm/hooks/usePageLeave/usePageLeave.js +2 -2
  226. package/dist/esm/hooks/usePageLeave/usePageLeave.js.map +1 -1
  227. package/dist/esm/hooks/usePaint/usePaint.js +2 -2
  228. package/dist/esm/hooks/usePaint/usePaint.js.map +1 -1
  229. package/dist/esm/hooks/usePreferredColorScheme/usePreferredColorScheme.js +1 -1
  230. package/dist/esm/hooks/usePreferredLanguages/usePreferredLanguages.js +2 -2
  231. package/dist/esm/hooks/usePreferredLanguages/usePreferredLanguages.js.map +1 -1
  232. package/dist/esm/hooks/usePrevious/usePrevious.js +2 -2
  233. package/dist/esm/hooks/usePrevious/usePrevious.js.map +1 -1
  234. package/dist/esm/hooks/useQRCode/useQRCode.js +2 -2
  235. package/dist/esm/hooks/useQRCode/useQRCode.js.map +1 -1
  236. package/dist/esm/hooks/useQuery/useQuery.js +2 -2
  237. package/dist/esm/hooks/useQuery/useQuery.js.map +1 -1
  238. package/dist/esm/hooks/useQueue/useQueue.js +2 -2
  239. package/dist/esm/hooks/useQueue/useQueue.js.map +1 -1
  240. package/dist/esm/hooks/useRenderCount/useRenderCount.js +2 -2
  241. package/dist/esm/hooks/useRenderCount/useRenderCount.js.map +1 -1
  242. package/dist/esm/hooks/useRenderInfo/useRenderInfo.js +2 -2
  243. package/dist/esm/hooks/useRenderInfo/useRenderInfo.js.map +1 -1
  244. package/dist/esm/hooks/useRerender/useRerender.js +2 -2
  245. package/dist/esm/hooks/useRerender/useRerender.js.map +1 -1
  246. package/dist/esm/hooks/useScript/useScript.js +2 -2
  247. package/dist/esm/hooks/useScript/useScript.js.map +1 -1
  248. package/dist/esm/hooks/useSessionStorage/useSessionStorage.js +2 -2
  249. package/dist/esm/hooks/useSet/useSet.js +2 -2
  250. package/dist/esm/hooks/useSet/useSet.js.map +1 -1
  251. package/dist/esm/hooks/useStep/useStep.js +2 -2
  252. package/dist/esm/hooks/useStep/useStep.js.map +1 -1
  253. package/dist/esm/hooks/useStorage/useStorage.js +2 -2
  254. package/dist/esm/hooks/useStorage/useStorage.js.map +1 -1
  255. package/dist/esm/hooks/useTextSelection/useTextSelection.js +2 -2
  256. package/dist/esm/hooks/useTextSelection/useTextSelection.js.map +1 -1
  257. package/dist/esm/hooks/useTime/useTime.js +2 -2
  258. package/dist/esm/hooks/useTime/useTime.js.map +1 -1
  259. package/dist/esm/hooks/useTimeout/useTimeout.js +2 -2
  260. package/dist/esm/hooks/useTimeout/useTimeout.js.map +1 -1
  261. package/dist/esm/hooks/useToggle/useToggle.js +2 -2
  262. package/dist/esm/hooks/useToggle/useToggle.js.map +1 -1
  263. package/dist/esm/hooks/useUnmount/useUnmount.js +2 -2
  264. package/dist/esm/hooks/useUnmount/useUnmount.js.map +1 -1
  265. package/dist/esm/hooks/useWebSocket/useWebSocket.js +2 -2
  266. package/dist/esm/hooks/useWebSocket/useWebSocket.js.map +1 -1
  267. package/dist/esm/hooks/useWindowEvent/useWindowEvent.js +1 -1
  268. package/dist/esm/hooks/useWindowSize/useWindowSize.js +2 -2
  269. package/dist/esm/hooks/useWindowSize/useWindowSize.js.map +1 -1
  270. package/dist/esm/index.js +2 -2
  271. package/dist/esm/utils/helpers/debounce.js +1 -1
  272. package/dist/esm/utils/helpers/getRetry.js +1 -1
  273. package/dist/esm/utils/helpers/index.js +1 -1
  274. package/dist/esm/utils/helpers/isClient.js +1 -1
  275. package/dist/esm/utils/helpers/throttle.js +1 -1
  276. package/dist/esm/utils/helpers/time/getDate.js +1 -1
  277. package/dist/index.d.ts +186 -39
  278. package/package.json +1 -1
  279. package/dist/cjs/_rollupPluginBabelHelpers-CntznmQ7.js.map +0 -1
  280. package/dist/esm/_rollupPluginBabelHelpers-DsV9C8-q.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"useHover.js","sources":["../../../../src/hooks/useHover/useHover.ts"],"sourcesContent":["import React from 'react';\n\nimport { useEventListener } from '../useEventListener/useEventListener';\n\n//* The use hover options type */\nexport interface UseHoverOptions {\n //* The on entry callback */\n onEntry?: () => void;\n //* The on leave callback */\n onLeave?: () => void;\n}\n\n//* The use hover target type */\nexport type UseHoverTarget = React.RefObject<Element | null> | Element;\n//* The use hover return type */\nexport type UseHoverReturn<Target extends UseHoverTarget> = [React.RefObject<Target>, boolean];\n\nexport type UseHover = {\n <Target extends UseHoverTarget>(target: Target, callback?: () => void): boolean;\n\n <Target extends UseHoverTarget>(target: Target, options?: UseHoverOptions): boolean;\n\n <Target extends UseHoverTarget>(callback?: () => void, target?: never): UseHoverReturn<Target>;\n\n <Target extends UseHoverTarget>(\n options?: UseHoverOptions,\n target?: never\n ): UseHoverReturn<Target>;\n};\n\n/**\n * @name useHover\n * @description - Hook that defines the logic when hovering an element\n *\n * @overload\n * @template Target The target element\n * @param {Target} target The target element to be hovered\n * @param {() => 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 {() => void} [options.onEntry] The callback function to be invoked on mouse enter\n * @param {() => 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, {\n * onEntry: () => console.log('onEntry'),\n * onLeave: () => console.log('onLeave'),\n * });\n *\n * @overload\n * @template Target The target element\n * @param {() => 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 {() => void} [options.onEntry] The callback function to be invoked on mouse enter\n * @param {() => 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({\n * onEntry: () => console.log('onEntry'),\n * onLeave: () => console.log('onLeave'),\n * });\n */\nexport const useHover = ((...params: any[]) => {\n const target = (\n params[0] instanceof Function || !('current' in params[0]) ? undefined : params[0]\n ) 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] = React.useState(false);\n const internalRef = React.useRef<Element>(null);\n\n const onMouseEnter = () => {\n options?.onEntry?.();\n setHovering(true);\n };\n\n const onMouseLeave = () => {\n options?.onLeave?.();\n setHovering(false);\n };\n\n useEventListener(target ?? internalRef, 'mouseenter', onMouseEnter);\n useEventListener(target ?? internalRef, 'mouseleave', onMouseLeave);\n\n if (target) return hovering;\n return [internalRef, hovering] as const;\n}) as UseHover;\n"],"names":["useHover","target","arguments","length","undefined","Function","options","_typeof","onEntry","_React$useState","React","useState","_React$useState2","_slicedToArray","hovering","setHovering","internalRef","useRef","useEventListener","_options$onEntry","call","_options$onLeave","onLeave"],"mappings":";qTA4EaA,EAAY,WACvB,IAAMC,GACJC,UAAAC,QAAA,OAAAC,EAAAF,UAAqBG,cAAAA,YAAc,YAASH,UAAAC,eAAAC,EAAAF,UAAA,MAA0BA,UAAAC,QAAA,OAATC,EAASF,UACzC,GAEzBI,EACJL,EACyB,WAArBM,EAAAL,UAAAC,QAAAC,OAAAA,EAAAF,UAAA,IAA6BA,UAAAC,QAAAC,OAAAA,EAAAF,UAE3B,GAAA,CAAEM,QAAON,UAAAC,QAAAC,OAAAA,EAAAF,UAAA,IACU,WAArBK,EAAAL,UAAAC,QAAA,OAAAC,EAAAF,cAA6BA,UAAAC,eAAAC,EAAAF,UAE3B,GAAA,CAAEM,QAAON,UAAAC,QAAAC,OAAAA,EAAAF,UAAA,IAGjBO,EAAgCC,EAAMC,UAAS,GAAMC,EAAAC,EAAAJ,EAAA,GAA9CK,EAAQF,EAAA,GAAEG,EAAWH,EAAA,GACtBI,EAAcN,EAAMO,OAAgB,MAe1C,OAHAC,EAAiBjB,QAAAA,EAAUe,EAAa,cAVnB,WAAM,IAAAG,EACzBb,SAAgBa,QAATA,EAAPb,EAASE,mBAAOW,GAAhBA,EAAAC,KAAAd,GACAS,GAAY,MASdG,EAAiBjB,QAAAA,EAAUe,EAAa,cANnB,WAAM,IAAAK,EACzBf,SAAgBe,QAATA,EAAPf,EAASgB,mBAAOD,GAAhBA,EAAAD,KAAAd,GACAS,GAAY,MAMVd,EAAea,EACZ,CAACE,EAAaF,EACvB"}
1
+ {"version":3,"file":"useHover.js","sources":["../../../../src/hooks/useHover/useHover.ts"],"sourcesContent":["import type { RefObject } from 'react';\nimport { useRef, useState } from 'react';\n\nimport { useEventListener } from '../useEventListener/useEventListener';\n\n//* The use hover options type */\nexport interface UseHoverOptions {\n //* The on entry callback */\n onEntry?: () => void;\n //* The on leave callback */\n onLeave?: () => void;\n}\n\n//* The use hover target type */\nexport type UseHoverTarget = RefObject<Element | null> | Element;\n//* The use hover return type */\nexport type UseHoverReturn<Target extends UseHoverTarget> = [RefObject<Target>, boolean];\n\nexport type UseHover = {\n <Target extends UseHoverTarget>(target: Target, callback?: () => void): boolean;\n\n <Target extends UseHoverTarget>(target: Target, options?: UseHoverOptions): boolean;\n\n <Target extends UseHoverTarget>(callback?: () => void, target?: never): UseHoverReturn<Target>;\n\n <Target extends UseHoverTarget>(\n options?: UseHoverOptions,\n target?: never\n ): UseHoverReturn<Target>;\n};\n\n/**\n * @name useHover\n * @description - Hook that defines the logic when hovering an element\n *\n * @overload\n * @template Target The target element\n * @param {Target} target The target element to be hovered\n * @param {() => 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 {() => void} [options.onEntry] The callback function to be invoked on mouse enter\n * @param {() => 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, {\n * onEntry: () => console.log('onEntry'),\n * onLeave: () => console.log('onLeave'),\n * });\n *\n * @overload\n * @template Target The target element\n * @param {() => 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 {() => void} [options.onEntry] The callback function to be invoked on mouse enter\n * @param {() => 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({\n * onEntry: () => console.log('onEntry'),\n * onLeave: () => console.log('onLeave'),\n * });\n */\nexport const useHover = ((...params: any[]) => {\n const target = (\n params[0] instanceof Function || !('current' in params[0]) ? undefined : params[0]\n ) 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 = useRef<Element>(null);\n\n const onMouseEnter = () => {\n options?.onEntry?.();\n setHovering(true);\n };\n\n const onMouseLeave = () => {\n options?.onLeave?.();\n setHovering(false);\n };\n\n useEventListener(target ?? internalRef, 'mouseenter', onMouseEnter);\n useEventListener(target ?? internalRef, 'mouseleave', onMouseLeave);\n\n if (target) return hovering;\n return [internalRef, hovering] as const;\n}) as UseHover;\n"],"names":["useHover","target","arguments","length","undefined","Function","options","_typeof","onEntry","_useState","useState","_useState2","_slicedToArray","hovering","setHovering","internalRef","useRef","useEventListener","_options$onEntry","call","_options$onLeave","onLeave"],"mappings":";6UA6EaA,EAAY,WACvB,IAAMC,GACJC,UAAAC,QAAA,OAAAC,EAAAF,UAAqBG,cAAAA,YAAc,YAASH,UAAAC,eAAAC,EAAAF,UAAA,MAA0BA,UAAAC,QAAA,OAATC,EAASF,UACzC,GAEzBI,EACJL,EACyB,WAArBM,EAAAL,UAAAC,QAAAC,OAAAA,EAAAF,UAAA,IAA6BA,UAAAC,QAAAC,OAAAA,EAAAF,UAE3B,GAAA,CAAEM,QAAON,UAAAC,QAAAC,OAAAA,EAAAF,UAAA,IACU,WAArBK,EAAAL,UAAAC,QAAA,OAAAC,EAAAF,cAA6BA,UAAAC,eAAAC,EAAAF,UAE3B,GAAA,CAAEM,QAAON,UAAAC,QAAAC,OAAAA,EAAAF,UAAA,IAGjBO,EAAgCC,GAAS,GAAMC,EAAAC,EAAAH,EAAA,GAAxCI,EAAQF,EAAA,GAAEG,EAAWH,EAAA,GACtBI,EAAcC,EAAgB,MAepC,OAHAC,EAAiBhB,QAAAA,EAAUc,EAAa,cAVnB,WAAM,IAAAG,EACzBZ,SAAgBY,QAATA,EAAPZ,EAASE,mBAAOU,GAAhBA,EAAAC,KAAAb,GACAQ,GAAY,MASdG,EAAiBhB,QAAAA,EAAUc,EAAa,cANnB,WAAM,IAAAK,EACzBd,SAAgBc,QAATA,EAAPd,EAASe,mBAAOD,GAAhBA,EAAAD,KAAAb,GACAQ,GAAY,MAMVb,EAAeY,EACZ,CAACE,EAAaF,EACvB"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.28 */
2
- import{_ as e}from"../../_rollupPluginBabelHelpers-DsV9C8-q.js";import t from"react";import"../../utils/helpers/isClient.js";import{throttle as n}from"../../utils/helpers/throttle.js";var i=["mousemove","mousedown","keydown","touchstart","wheel","resize"],o=function(){var o=arguments.length>0&&void 0!==arguments[0]?arguments[0]:6e4,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},u=r.initialValue,s=void 0!==u&&u,a=r.events,l=void 0===a?i:a,c=t.useState(s),d=e(c,2),m=d[0],v=d[1],f=t.useState(Date.now()),h=e(f,2),p=h[0],w=h[1];return t.useEffect((function(){var e,t=function(){return v(!0)},i=n((function(){v(!1),w(Date.now()),clearTimeout(e),e=setTimeout(t,o)}),500),r=function(){document.hidden||i()};return e=setTimeout(t,o),l.forEach((function(e){return window.addEventListener(e,i)})),document.addEventListener("visibilitychange",r),function(){l.forEach((function(e){return window.addEventListener(e,i)})),document.removeEventListener("visibilitychange",r),clearTimeout(e)}}),[o,l]),{idle:m,lastActive:p}};export{o as useIdle};
1
+ /* @license @siberiacancode/reactuse v0.0.31 */
2
+ import{_ as e}from"../../_rollupPluginBabelHelpers-DmI4-Pc6.js";import{useState as t,useEffect as n}from"react";import"../../utils/helpers/isClient.js";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]:{},s=u.initialValue,l=void 0!==s&&s,a=u.events,c=void 0===a?o:a,d=t(l),m=e(d,2),v=m[0],f=m[1],h=t(Date.now()),p=e(h,2),w=p[0],E=p[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),c.forEach((function(e){return window.addEventListener(e,n)})),document.addEventListener("visibilitychange",o),function(){c.forEach((function(e){return window.addEventListener(e,n)})),document.removeEventListener("visibilitychange",o),clearTimeout(e)}}),[r,c]),{idle:v,lastActive:w}};export{r as useIdle};
3
3
  //# sourceMappingURL=useIdle.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useIdle.js","sources":["../../../../src/hooks/useIdle/useIdle.ts"],"sourcesContent":["import React from 'react';\n\nimport { throttle } from '@/utils/helpers';\n\ninterface UseIdleOptions {\n initialValue?: boolean;\n events?: Array<keyof DocumentEventMap>;\n}\n\nconst IDLE_EVENTS = [\n 'mousemove',\n 'mousedown',\n 'keydown',\n 'touchstart',\n 'wheel',\n 'resize'\n] satisfies Array<keyof DocumentEventMap>;\nconst ONE_MINUTE = 60e3;\n\n//* The use idle return type */\nexport interface UseIdleReturn {\n //* The idle state */\n idle: boolean;\n //* The last active time */\n lastActive: number;\n}\n\n/**\n * @name useIdle\n * @description - Hook that defines the logic when the user is idle\n *\n * @param {number} [milliseconds=ONE_MINUTE] The idle time in milliseconds\n * @param {boolean} [options.initialState=false] The options for the hook\n * @param {Array<keyof WindowEventMap>} [options.events=IDLE_EVENTS]\n * @returns {UseIdleReturn} An object containing the idle state and the last active time\n *\n * @example\n * const { idle, lastActive } = useIdle();\n */\nexport const useIdle = (\n milliseconds = ONE_MINUTE,\n { initialValue = false, events = IDLE_EVENTS }: UseIdleOptions = {}\n): UseIdleReturn => {\n const [idle, setIdle] = React.useState(initialValue);\n const [lastActive, setLastActive] = React.useState(Date.now());\n\n React.useEffect(() => {\n let timeoutId: ReturnType<typeof setTimeout>;\n const onTimeout = () => setIdle(true);\n\n const onEvent = throttle(() => {\n setIdle(false);\n setLastActive(Date.now());\n clearTimeout(timeoutId);\n timeoutId = setTimeout(onTimeout, milliseconds);\n }, 500);\n\n const onVisibilitychange = () => {\n if (!document.hidden) onEvent();\n };\n\n timeoutId = setTimeout(onTimeout, milliseconds);\n\n events.forEach((event) => window.addEventListener(event, onEvent));\n document.addEventListener('visibilitychange', onVisibilitychange);\n\n return () => {\n events.forEach((event) => window.addEventListener(event, onEvent));\n document.removeEventListener('visibilitychange', onVisibilitychange);\n clearTimeout(timeoutId);\n };\n }, [milliseconds, events]);\n\n return { idle, lastActive };\n};\n"],"names":["IDLE_EVENTS","useIdle","milliseconds","arguments","length","undefined","_ref","_ref$initialValue","initialValue","_ref$events","events","_React$useState","React","useState","_React$useState2","_slicedToArray","idle","setIdle","_React$useState3","Date","now","_React$useState4","lastActive","setLastActive","useEffect","timeoutId","onTimeout","onEvent","throttle","clearTimeout","setTimeout","onVisibilitychange","document","hidden","forEach","event","window","addEventListener","removeEventListener"],"mappings":";wLASA,IAAMA,EAAc,CAClB,YACA,YACA,UACA,aACA,QACA,UAwBWC,EAAU,WAGH,IAFlBC,EAAYC,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAvBK,IAuBQG,EAAAH,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GACwC,CAAE,EAAAI,EAAAD,EAAjEE,aAAAA,OAAe,IAAHD,GAAQA,EAAAE,EAAAH,EAAEI,OAAAA,OAASV,IAAHS,EAAGT,EAAWS,EAE5CE,EAAwBC,EAAMC,SAASL,GAAaM,EAAAC,EAAAJ,EAAA,GAA7CK,EAAIF,EAAA,GAAEG,EAAOH,EAAA,GACpBI,EAAoCN,EAAMC,SAASM,KAAKC,OAAMC,EAAAN,EAAAG,EAAA,GAAvDI,EAAUD,EAAA,GAAEE,EAAaF,EAAA,GA6BhC,OA3BAT,EAAMY,WAAU,WACd,IAAIC,EACEC,EAAY,WAAH,OAAST,GAAQ,EAAK,EAE/BU,EAAUC,GAAS,WACvBX,GAAQ,GACRM,EAAcJ,KAAKC,OACnBS,aAAaJ,GACbA,EAAYK,WAAWJ,EAAWxB,EACnC,GAAE,KAEG6B,EAAqB,WACpBC,SAASC,QAAQN,KAQxB,OALAF,EAAYK,WAAWJ,EAAWxB,GAElCQ,EAAOwB,SAAQ,SAACC,GAAK,OAAKC,OAAOC,iBAAiBF,EAAOR,MACzDK,SAASK,iBAAiB,mBAAoBN,GAEvC,WACLrB,EAAOwB,SAAQ,SAACC,GAAK,OAAKC,OAAOC,iBAAiBF,EAAOR,MACzDK,SAASM,oBAAoB,mBAAoBP,GACjDF,aAAaJ,GAEjB,GAAG,CAACvB,EAAcQ,IAEX,CAAEM,KAAAA,EAAMM,WAAAA,EACjB"}
1
+ {"version":3,"file":"useIdle.js","sources":["../../../../src/hooks/useIdle/useIdle.ts"],"sourcesContent":["import { useEffect, useState } from 'react';\n\nimport { throttle } from '@/utils/helpers';\n\ninterface UseIdleOptions {\n initialValue?: boolean;\n events?: Array<keyof DocumentEventMap>;\n}\n\nconst IDLE_EVENTS = [\n 'mousemove',\n 'mousedown',\n 'keydown',\n 'touchstart',\n 'wheel',\n 'resize'\n] satisfies Array<keyof DocumentEventMap>;\nconst ONE_MINUTE = 60e3;\n\n//* The use idle return type */\nexport interface UseIdleReturn {\n //* The idle state */\n idle: boolean;\n //* The last active time */\n lastActive: number;\n}\n\n/**\n * @name useIdle\n * @description - Hook that defines the logic when the user is idle\n *\n * @param {number} [milliseconds=ONE_MINUTE] The idle time in milliseconds\n * @param {boolean} [options.initialState=false] The options for the hook\n * @param {Array<keyof WindowEventMap>} [options.events=IDLE_EVENTS]\n * @returns {UseIdleReturn} An object containing the idle state and the last active time\n *\n * @example\n * const { idle, lastActive } = useIdle();\n */\nexport const useIdle = (\n milliseconds = ONE_MINUTE,\n { initialValue = false, events = IDLE_EVENTS }: UseIdleOptions = {}\n): UseIdleReturn => {\n const [idle, setIdle] = useState(initialValue);\n const [lastActive, setLastActive] = useState(Date.now());\n\n useEffect(() => {\n let timeoutId: ReturnType<typeof setTimeout>;\n const onTimeout = () => setIdle(true);\n\n const onEvent = throttle(() => {\n setIdle(false);\n setLastActive(Date.now());\n clearTimeout(timeoutId);\n timeoutId = setTimeout(onTimeout, milliseconds);\n }, 500);\n\n const onVisibilitychange = () => {\n if (!document.hidden) onEvent();\n };\n\n timeoutId = setTimeout(onTimeout, milliseconds);\n\n events.forEach((event) => window.addEventListener(event, onEvent));\n document.addEventListener('visibilitychange', onVisibilitychange);\n\n return () => {\n events.forEach((event) => window.addEventListener(event, onEvent));\n document.removeEventListener('visibilitychange', onVisibilitychange);\n clearTimeout(timeoutId);\n };\n }, [milliseconds, events]);\n\n return { idle, lastActive };\n};\n"],"names":["IDLE_EVENTS","useIdle","milliseconds","arguments","length","undefined","_ref","_ref$initialValue","initialValue","_ref$events","events","_useState","useState","_useState2","_slicedToArray","idle","setIdle","_useState3","Date","now","_useState4","lastActive","setLastActive","useEffect","timeoutId","onTimeout","onEvent","throttle","clearTimeout","setTimeout","onVisibilitychange","document","hidden","forEach","event","window","addEventListener","removeEventListener"],"mappings":";mNASA,IAAMA,EAAc,CAClB,YACA,YACA,UACA,aACA,QACA,UAwBWC,EAAU,WAGH,IAFlBC,EAAYC,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAvBK,IAuBQG,EAAAH,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GACwC,CAAE,EAAAI,EAAAD,EAAjEE,aAAAA,OAAe,IAAHD,GAAQA,EAAAE,EAAAH,EAAEI,OAAAA,OAASV,IAAHS,EAAGT,EAAWS,EAE5CE,EAAwBC,EAASJ,GAAaK,EAAAC,EAAAH,EAAA,GAAvCI,EAAIF,EAAA,GAAEG,EAAOH,EAAA,GACpBI,EAAoCL,EAASM,KAAKC,OAAMC,EAAAN,EAAAG,EAAA,GAAjDI,EAAUD,EAAA,GAAEE,EAAaF,EAAA,GA6BhC,OA3BAG,GAAU,WACR,IAAIC,EACEC,EAAY,WAAH,OAAST,GAAQ,EAAK,EAE/BU,EAAUC,GAAS,WACvBX,GAAQ,GACRM,EAAcJ,KAAKC,OACnBS,aAAaJ,GACbA,EAAYK,WAAWJ,EAAWvB,EACnC,GAAE,KAEG4B,EAAqB,WACpBC,SAASC,QAAQN,KAQxB,OALAF,EAAYK,WAAWJ,EAAWvB,GAElCQ,EAAOuB,SAAQ,SAACC,GAAK,OAAKC,OAAOC,iBAAiBF,EAAOR,MACzDK,SAASK,iBAAiB,mBAAoBN,GAEvC,WACLpB,EAAOuB,SAAQ,SAACC,GAAK,OAAKC,OAAOC,iBAAiBF,EAAOR,MACzDK,SAASM,oBAAoB,mBAAoBP,GACjDF,aAAaJ,GAEjB,GAAG,CAACtB,EAAcQ,IAEX,CAAEK,KAAAA,EAAMM,WAAAA,EACjB"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.28 */
2
- import{a as n,_ as e,b as t}from"../../_rollupPluginBabelHelpers-DsV9C8-q.js";import r from"react";var o=function(){var o,i="object"!==n(arguments.length<=0?void 0:arguments[0])||"current"in(arguments.length<=0?void 0:arguments[0])?arguments.length<=0?void 0:arguments[0]:void 0,l=i?arguments.length<=1?void 0:arguments[1]:arguments.length<=0?void 0:arguments[0],u=null===(o=null==l?void 0:l.enabled)||void 0===o||o,c=r.useState(),s=e(c,2),v=s[0],a=s[1],f=r.useRef(null),d=r.useRef();return d.current=null==l?void 0:l.onChange,r.useEffect((function(){if(u){var n,r=i?function(n){return"function"==typeof n?n():n instanceof Element?n:n.current}(i):f.current,o=new IntersectionObserver((function(n){var t,r=e(n,1)[0];a(r),null===(t=d.current)||void 0===t||t.call(d,r)}),t(t({},l),{},{root:(n=null==l?void 0:l.root,n?n instanceof Element||n instanceof Document?n:n.current:document)}));return o.observe(r),function(){o.disconnect()}}}),[i,null==l?void 0:l.rootMargin,null==l?void 0:l.threshold,u]),i?{entry:v,inView:!(null==v||!v.isIntersecting)}:{ref:f,entry:v,inView:!(null==v||!v.isIntersecting)}};export{o as useIntersectionObserver};
1
+ /* @license @siberiacancode/reactuse v0.0.31 */
2
+ import{a as n,_ as e,b as t}from"../../_rollupPluginBabelHelpers-DmI4-Pc6.js";import{useState as r,useRef as o,useEffect as i}from"react";var l=function(){var l,u="object"!==n(arguments.length<=0?void 0:arguments[0])||"current"in(arguments.length<=0?void 0:arguments[0])?arguments.length<=0?void 0:arguments[0]:void 0,c=u?arguments.length<=1?void 0:arguments[1]:arguments.length<=0?void 0:arguments[0],v=null===(l=null==c?void 0:c.enabled)||void 0===l||l,a=r(),d=e(a,2),s=d[0],f=d[1],g=o(null),h=o();return h.current=null==c?void 0:c.onChange,i((function(){if(v){var n,r=u?function(n){return"function"==typeof n?n():n instanceof Element?n:n.current}(u):g.current,o=new IntersectionObserver((function(n){var t,r=e(n,1)[0];f(r),null===(t=h.current)||void 0===t||t.call(h,r)}),t(t({},c),{},{root:(n=null==c?void 0:c.root,n?n instanceof Element||n instanceof Document?n:n.current:document)}));return o.observe(r),function(){o.disconnect()}}}),[u,null==c?void 0:c.rootMargin,null==c?void 0:c.threshold,v]),u?{entry:s,inView:!(null==s||!s.isIntersecting)}:{ref:g,entry:s,inView:!(null==s||!s.isIntersecting)}};export{l as useIntersectionObserver};
3
3
  //# sourceMappingURL=useIntersectionObserver.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useIntersectionObserver.js","sources":["../../../../src/hooks/useIntersectionObserver/useIntersectionObserver.ts"],"sourcesContent":["import React from 'react';\n\nexport type UseIntersectionObserverTarget =\n | React.RefObject<Element | null>\n | (() => Element)\n | Element;\n\nexport interface UseIntersectionObserverOptions extends Omit<IntersectionObserverInit, 'root'> {\n enabled?: boolean;\n onChange?: (entry: IntersectionObserverEntry) => void;\n root?: IntersectionObserverInit['root'] | React.RefObject<Element | null>;\n}\n\nconst getTargetElement = (target: UseIntersectionObserverTarget) => {\n if (typeof target === 'function') {\n return target();\n }\n\n if (target instanceof Element) {\n return target;\n }\n\n return target.current;\n};\n\nconst getRootElement = (root: UseIntersectionObserverOptions['root']) => {\n if (!root) return document;\n\n if (root instanceof Element) {\n return root;\n }\n\n if (root instanceof Document) {\n return root;\n }\n\n return root.current;\n};\n\nexport interface UseIntersectionObserverReturn {\n inView: boolean;\n entry?: IntersectionObserverEntry;\n}\n\nexport type UseIntersectionObserver = {\n <Target extends UseIntersectionObserverTarget>(\n target: Target,\n options?: UseIntersectionObserverOptions\n ): UseIntersectionObserverReturn;\n\n <Target extends UseIntersectionObserverTarget>(\n options?: UseIntersectionObserverOptions,\n target?: never\n ): UseIntersectionObserverReturn & { ref: React.RefObject<Target> };\n};\n\nexport const useIntersectionObserver = ((...params: any[]) => {\n const target = (\n typeof params[0] === 'object' && !('current' in params[0]) ? undefined : params[0]\n ) as UseIntersectionObserverTarget | undefined;\n const options = (target ? params[1] : params[0]) as UseIntersectionObserverOptions | undefined;\n const enabled = options?.enabled ?? true;\n\n const [entry, setEntry] = React.useState<IntersectionObserverEntry>();\n\n const internalRef = React.useRef<Element>(null);\n const onChangeRef = React.useRef<UseIntersectionObserverOptions['onChange']>();\n onChangeRef.current = options?.onChange;\n\n React.useEffect(() => {\n if (!enabled) return;\n\n const element = target ? getTargetElement(target) : internalRef.current;\n const observer = new IntersectionObserver(\n ([entry]) => {\n setEntry(entry);\n onChangeRef.current?.(entry);\n },\n {\n ...options,\n root: getRootElement(options?.root)\n }\n );\n\n observer.observe(element!);\n\n return () => {\n observer.disconnect();\n };\n }, [target, options?.rootMargin, options?.threshold, enabled]);\n\n if (target) return { entry, inView: !!entry?.isIntersecting };\n return { ref: internalRef, entry, inView: !!entry?.isIntersecting };\n}) as UseIntersectionObserver;\n"],"names":["useIntersectionObserver","_options$enabled","target","_typeof","arguments","length","undefined","options","enabled","_React$useState","React","useState","_React$useState2","_slicedToArray","entry","setEntry","internalRef","useRef","onChangeRef","current","onChange","useEffect","root","element","Element","getTargetElement","observer","IntersectionObserver","_ref","_onChangeRef$current","call","_objectSpread","Document","document","observe","disconnect","rootMargin","threshold","inView","isIntersecting","ref"],"mappings":";mGAaA,IA2CaA,EAA2B,WAAsB,IAAAC,EACtDC,EACiB,WAArBC,EAAAC,UAAAC,QAAA,OAAAC,EAAAF,UAAqB,KAAc,YAASA,UAAAC,eAAAC,EAAAF,UAAA,IAA0BA,UAAAC,QAAA,OAAAC,EAAAF,UAC1B,QADiBE,EAEzDC,EAAWL,EAAME,UAAAC,QAAAC,OAAAA,EAAAF,UAAA,GAAAA,UAAAC,eAAAC,EAAAF,UAAuE,GACxFI,EAA0BP,QAAnBA,EAAGM,aAAO,EAAPA,EAASC,eAAOP,IAAAA,GAAAA,EAEhCQ,EAA0BC,EAAMC,WAAqCC,EAAAC,EAAAJ,EAAA,GAA9DK,EAAKF,EAAA,GAAEG,EAAQH,EAAA,GAEhBI,EAAcN,EAAMO,OAAgB,MACpCC,EAAcR,EAAMO,SAyB1B,OAxBAC,EAAYC,QAAUZ,aAAO,EAAPA,EAASa,SAE/BV,EAAMW,WAAU,WACd,GAAKb,EAAL,CAEA,IA/CoBc,EA+CdC,EAAUrB,EA3DK,SAACA,GACxB,MAAsB,mBAAXA,EACFA,IAGLA,aAAkBsB,QACbtB,EAGFA,EAAOiB,OAChB,CAiD6BM,CAAiBvB,GAAUc,EAAYG,QAC1DO,EAAW,IAAIC,sBACnB,SAAAC,GAAa,IAAAC,EAAXf,EAAWD,EAAAe,EAAA,GAAN,GACLb,EAASD,GACUe,QAAnBA,EAAAX,EAAYC,eAAZU,IAAmBA,GAAnBA,EAAAC,KAAAZ,EAAsBJ,EACvB,GAAAiB,EAAAA,KAEIxB,GAAO,CAAA,EAAA,CACVe,MAvDgBA,EAuDKf,aAAO,EAAPA,EAASe,KAtD/BA,EAEDA,aAAgBE,SAIhBF,aAAgBU,SAHXV,EAOFA,EAAKH,QAVMc,aA4DhB,OAFAP,EAASQ,QAAQX,GAEV,WACLG,EAASS,aAjBG,IAmBb,CAACjC,EAAQK,aAAAA,EAAAA,EAAS6B,WAAY7B,aAAAA,EAAAA,EAAS8B,UAAW7B,IAEjDN,EAAe,CAAEY,MAAAA,EAAOwB,SAAUxB,UAAAA,EAAOyB,iBACtC,CAAEC,IAAKxB,EAAaF,MAAAA,EAAOwB,SAAUxB,UAAAA,EAAOyB,gBACrD"}
1
+ {"version":3,"file":"useIntersectionObserver.js","sources":["../../../../src/hooks/useIntersectionObserver/useIntersectionObserver.ts"],"sourcesContent":["import type { RefObject } from 'react';\nimport { useEffect, useRef, useState } from 'react';\n\nexport type UseIntersectionObserverTarget = RefObject<Element | null> | (() => Element) | Element;\n\nexport interface UseIntersectionObserverOptions extends Omit<IntersectionObserverInit, 'root'> {\n enabled?: boolean;\n onChange?: (entry: IntersectionObserverEntry) => void;\n root?: IntersectionObserverInit['root'] | RefObject<Element | null>;\n}\n\nconst getTargetElement = (target: UseIntersectionObserverTarget) => {\n if (typeof target === 'function') {\n return target();\n }\n\n if (target instanceof Element) {\n return target;\n }\n\n return target.current;\n};\n\nconst getRootElement = (root: UseIntersectionObserverOptions['root']) => {\n if (!root) return document;\n\n if (root instanceof Element) {\n return root;\n }\n\n if (root instanceof Document) {\n return root;\n }\n\n return root.current;\n};\n\nexport interface UseIntersectionObserverReturn {\n inView: boolean;\n entry?: IntersectionObserverEntry;\n}\n\nexport type UseIntersectionObserver = {\n <Target extends UseIntersectionObserverTarget>(\n target: Target,\n options?: UseIntersectionObserverOptions\n ): UseIntersectionObserverReturn;\n\n <Target extends UseIntersectionObserverTarget>(\n options?: UseIntersectionObserverOptions,\n target?: never\n ): UseIntersectionObserverReturn & { ref: RefObject<Target> };\n};\n\nexport const useIntersectionObserver = ((...params: any[]) => {\n const target = (\n typeof params[0] === 'object' && !('current' in params[0]) ? undefined : params[0]\n ) as UseIntersectionObserverTarget | 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 = useRef<Element>(null);\n const onChangeRef = useRef<UseIntersectionObserverOptions['onChange']>();\n onChangeRef.current = options?.onChange;\n\n useEffect(() => {\n if (!enabled) return;\n\n const element = target ? getTargetElement(target) : internalRef.current;\n const observer = new IntersectionObserver(\n ([entry]) => {\n setEntry(entry);\n onChangeRef.current?.(entry);\n },\n {\n ...options,\n root: getRootElement(options?.root)\n }\n );\n\n observer.observe(element!);\n\n return () => {\n observer.disconnect();\n };\n }, [target, options?.rootMargin, options?.threshold, enabled]);\n\n if (target) return { entry, inView: !!entry?.isIntersecting };\n return { ref: internalRef, entry, inView: !!entry?.isIntersecting };\n}) as UseIntersectionObserver;\n"],"names":["useIntersectionObserver","_options$enabled","target","_typeof","arguments","length","undefined","options","enabled","_useState","useState","_useState2","_slicedToArray","entry","setEntry","internalRef","useRef","onChangeRef","current","onChange","useEffect","root","element","Element","getTargetElement","observer","IntersectionObserver","_ref","_onChangeRef$current","call","_objectSpread","Document","document","observe","disconnect","rootMargin","threshold","inView","isIntersecting","ref"],"mappings":";0IAWA,IA2CaA,EAA2B,WAAsB,IAAAC,EACtDC,EACiB,WAArBC,EAAAC,UAAAC,QAAA,OAAAC,EAAAF,UAAqB,KAAc,YAASA,UAAAC,eAAAC,EAAAF,UAAA,IAA0BA,UAAAC,QAAA,OAAAC,EAAAF,UAC1B,QADiBE,EAEzDC,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,EAAgB,MAC9BC,EAAcD,IAyBpB,OAxBAC,EAAYC,QAAUX,aAAO,EAAPA,EAASY,SAE/BC,GAAU,WACR,GAAKZ,EAAL,CAEA,IA/CoBa,EA+CdC,EAAUpB,EA3DK,SAACA,GACxB,MAAsB,mBAAXA,EACFA,IAGLA,aAAkBqB,QACbrB,EAGFA,EAAOgB,OAChB,CAiD6BM,CAAiBtB,GAAUa,EAAYG,QAC1DO,EAAW,IAAIC,sBACnB,SAAAC,GAAa,IAAAC,EAAXf,EAAWD,EAAAe,EAAA,GAAN,GACLb,EAASD,GACUe,QAAnBA,EAAAX,EAAYC,eAAZU,IAAmBA,GAAnBA,EAAAC,KAAAZ,EAAsBJ,EACvB,GAAAiB,EAAAA,KAEIvB,GAAO,CAAA,EAAA,CACVc,MAvDgBA,EAuDKd,aAAO,EAAPA,EAASc,KAtD/BA,EAEDA,aAAgBE,SAIhBF,aAAgBU,SAHXV,EAOFA,EAAKH,QAVMc,aA4DhB,OAFAP,EAASQ,QAAQX,GAEV,WACLG,EAASS,aAjBG,IAmBb,CAAChC,EAAQK,aAAAA,EAAAA,EAAS4B,WAAY5B,aAAAA,EAAAA,EAAS6B,UAAW5B,IAEjDN,EAAe,CAAEW,MAAAA,EAAOwB,SAAUxB,UAAAA,EAAOyB,iBACtC,CAAEC,IAAKxB,EAAaF,MAAAA,EAAOwB,SAAUxB,UAAAA,EAAOyB,gBACrD"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.28 */
2
- import{a as e,_ as r}from"../../_rollupPluginBabelHelpers-DsV9C8-q.js";import t from"react";import{useEvent as n}from"../useEvent/useEvent.js";import"../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js";import"../../utils/helpers/isClient.js";var u=function(){for(var u,l,o=arguments.length,s=new Array(o),a=0;a<o;a++)s[a]=arguments[a];var i=s[0],c=null!==(u="number"==typeof s[1]?s[1]:s[1].interval)&&void 0!==u?u:1e3,f="object"===e(s[1])?s[1]:s[2],v=null===(l=null==f?void 0:f.enabled)||void 0===l||l,p=t.useState(null==v||v),m=r(p,2),I=m[0],j=m[1],E=t.useRef(),b=n(i);t.useEffect((function(){if(v)return E.current=setInterval(b,c),function(){clearInterval(E.current)}}),[v,c]);return{isActive:I,pause:function(){j(!1),clearInterval(E.current)},resume:function(){c<=0||(j(!0),clearInterval(E.current),E.current=setInterval(b,c))}}};export{u as useInterval};
1
+ /* @license @siberiacancode/reactuse v0.0.31 */
2
+ import{a as e,_ as r}from"../../_rollupPluginBabelHelpers-DmI4-Pc6.js";import{useState as t,useRef as n,useEffect as u}from"react";import{useEvent as l}from"../useEvent/useEvent.js";import"../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js";import"../../utils/helpers/isClient.js";var o=function(){for(var o,i,a=arguments.length,s=new Array(a),c=0;c<a;c++)s[c]=arguments[c];var f=s[0],v=null!==(o="number"==typeof s[1]?s[1]:s[1].interval)&&void 0!==o?o:1e3,p="object"===e(s[1])?s[1]:s[2],m=null===(i=null==p?void 0:p.enabled)||void 0===i||i,I=t(null==m||m),j=r(I,2),b=j[0],d=j[1],h=n(),y=l(f);u((function(){if(m)return h.current=setInterval(y,v),function(){clearInterval(h.current)}}),[m,v]);return{isActive:b,pause:function(){d(!1),clearInterval(h.current)},resume:function(){v<=0||(d(!0),clearInterval(h.current),h.current=setInterval(y,v))}}};export{o as useInterval};
3
3
  //# sourceMappingURL=useInterval.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useInterval.js","sources":["../../../../src/hooks/useInterval/useInterval.ts"],"sourcesContent":["import React 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 isActive: boolean;\n /** Pause the interval */\n pause: () => void;\n /** Resume the interval */\n resume: () => void;\n}\n\ntype UseInterval = {\n (callback: () => void, interval?: number, options?: UseIntervalOptions): UseIntervalReturn;\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 *\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 { isActive, 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 { isActive, 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 [isActive, setIsActive] = React.useState<boolean>(enabled ?? true);\n\n const intervalIdRef = React.useRef<ReturnType<typeof setInterval>>();\n const internalCallback = useEvent(callback);\n\n React.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 setIsActive(false);\n clearInterval(intervalIdRef.current);\n };\n\n const resume = () => {\n if (interval <= 0) return;\n setIsActive(true);\n clearInterval(intervalIdRef.current);\n intervalIdRef.current = setInterval(internalCallback, interval);\n };\n\n return {\n isActive,\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","_React$useState","React","useState","_React$useState2","_slicedToArray","isActive","setIsActive","intervalIdRef","useRef","internalCallback","useEvent","useEffect","current","setInterval","clearInterval","pause","resume"],"mappings":";6PA8CaA,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,EAAgCC,EAAMC,SAAkBH,SAAAA,GAAgBI,EAAAC,EAAAJ,EAAA,GAAjEK,EAAQF,EAAA,GAAEG,EAAWH,EAAA,GAEtBI,EAAgBN,EAAMO,SACtBC,EAAmBC,EAASf,GAElCM,EAAMU,WAAU,WACd,GAAKZ,EAGL,OADAQ,EAAcK,QAAUC,YAAYJ,EAAkBb,GAC/C,WACLkB,cAAcP,EAAcK,SAEhC,GAAG,CAACb,EAASH,IAcb,MAAO,CACLS,SAAAA,EACAU,MAdY,WACZT,GAAY,GACZQ,cAAcP,EAAcK,UAa5BI,OAVa,WACTpB,GAAY,IAChBU,GAAY,GACZQ,cAAcP,EAAcK,SAC5BL,EAAcK,QAAUC,YAAYJ,EAAkBb,KAQ1D"}
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 isActive: boolean;\n /** Pause the interval */\n pause: () => void;\n /** Resume the interval */\n resume: () => void;\n}\n\ntype UseInterval = {\n (callback: () => void, interval?: number, options?: UseIntervalOptions): UseIntervalReturn;\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 *\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 { isActive, 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 { isActive, 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 [isActive, setIsActive] = 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 setIsActive(false);\n clearInterval(intervalIdRef.current);\n };\n\n const resume = () => {\n if (interval <= 0) return;\n setIsActive(true);\n clearInterval(intervalIdRef.current);\n intervalIdRef.current = setInterval(internalCallback, interval);\n };\n\n return {\n isActive,\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","isActive","setIsActive","intervalIdRef","useRef","internalCallback","useEvent","useEffect","current","setInterval","clearInterval","pause","resume"],"mappings":";oSA8CaA,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,EAAgCC,EAAkBF,SAAAA,GAAgBG,EAAAC,EAAAH,EAAA,GAA3DI,EAAQF,EAAA,GAAEG,EAAWH,EAAA,GAEtBI,EAAgBC,IAChBC,EAAmBC,EAASd,GAElCe,GAAU,WACR,GAAKX,EAGL,OADAO,EAAcK,QAAUC,YAAYJ,EAAkBZ,GAC/C,WACLiB,cAAcP,EAAcK,SAEhC,GAAG,CAACZ,EAASH,IAcb,MAAO,CACLQ,SAAAA,EACAU,MAdY,WACZT,GAAY,GACZQ,cAAcP,EAAcK,UAa5BI,OAVa,WACTnB,GAAY,IAChBS,GAAY,GACZQ,cAAcP,EAAcK,SAC5BL,EAAcK,QAAUC,YAAYJ,EAAkBZ,KAQ1D"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.28 */
2
- import r from"react";var e=function(){var e=r.useRef(!0);return!0===e.current?(e.current=!1,!0):e.current};export{e as useIsFirstRender};
1
+ /* @license @siberiacancode/reactuse v0.0.31 */
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 +1 @@
1
- {"version":3,"file":"useIsFirstRender.js","sources":["../../../../src/hooks/useIsFirstRender/useIsFirstRender.ts"],"sourcesContent":["import React from 'react';\n\n/**\n * @name useIsFirstRender\n * @description - Hook that returns true if the component is first render\n *\n * @returns {boolean} True if the component is first render\n *\n * @example\n * const isFirstRender = useIsFirstRender();\n */\nexport const useIsFirstRender = () => {\n const renderRef = React.useRef(true);\n\n if (renderRef.current === true) {\n renderRef.current = false;\n return true;\n }\n\n return renderRef.current;\n};\n"],"names":["useIsFirstRender","renderRef","React","useRef","current"],"mappings":";yBAWaA,EAAmB,WAC9B,IAAMC,EAAYC,EAAMC,QAAO,GAE/B,OAA0B,IAAtBF,EAAUG,SACZH,EAAUG,SAAU,GACb,GAGFH,EAAUG,OACnB"}
1
+ {"version":3,"file":"useIsFirstRender.js","sources":["../../../../src/hooks/useIsFirstRender/useIsFirstRender.ts"],"sourcesContent":["import { useRef } from 'react';\n\n/**\n * @name useIsFirstRender\n * @description - Hook that returns true if the component is first render\n *\n * @returns {boolean} True if the component is first render\n *\n * @example\n * const isFirstRender = useIsFirstRender();\n */\nexport const useIsFirstRender = () => {\n const renderRef = useRef(true);\n\n if (renderRef.current === true) {\n renderRef.current = false;\n return true;\n }\n\n return renderRef.current;\n};\n"],"names":["useIsFirstRender","renderRef","useRef","current"],"mappings":";mCAWaA,EAAmB,WAC9B,IAAMC,EAAYC,GAAO,GAEzB,OAA0B,IAAtBD,EAAUE,SACZF,EAAUE,SAAU,GACb,GAGFF,EAAUE,OACnB"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.28 */
2
- import e from"react";import{isClient as t}from"../../utils/helpers/isClient.js";var r=t?e.useLayoutEffect:e.useEffect;export{r as useIsomorphicLayoutEffect};
1
+ /* @license @siberiacancode/reactuse v0.0.31 */
2
+ import{useLayoutEffect as r,useEffect as t}from"react";import{isClient as e}from"../../utils/helpers/isClient.js";var i=e?r:t;export{i as useIsomorphicLayoutEffect};
3
3
  //# sourceMappingURL=useIsomorphicLayoutEffect.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useIsomorphicLayoutEffect.js","sources":["../../../../src/hooks/useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.ts"],"sourcesContent":["import React from 'react';\n\nimport { isClient } from '@/utils/helpers';\n\n/**\n * @name useIsomorphicLayoutEffect\n * @description - Hook conditionally selects either `useLayoutEffect` or `useEffect` based on the environment\n *\n * @example\n * useIsomorphicLayoutEffect(() => console.log('effect'), [])\n */\nexport const useIsomorphicLayoutEffect = isClient ? React.useLayoutEffect : React.useEffect;\n"],"names":["useIsomorphicLayoutEffect","isClient","React","useLayoutEffect","useEffect"],"mappings":";gFAWO,IAAMA,EAA4BC,EAAWC,EAAMC,gBAAkBD,EAAME"}
1
+ {"version":3,"file":"useIsomorphicLayoutEffect.js","sources":["../../../../src/hooks/useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.ts"],"sourcesContent":["import { useEffect, useLayoutEffect } from 'react';\n\nimport { isClient } from '@/utils/helpers';\n\n/**\n * @name useIsomorphicLayoutEffect\n * @description - Hook conditionally selects either `useLayoutEffect` or `useEffect` based on the environment\n *\n * @example\n * useIsomorphicLayoutEffect(() => console.log('effect'), [])\n */\nexport const useIsomorphicLayoutEffect = isClient ? useLayoutEffect : useEffect;\n"],"names":["useIsomorphicLayoutEffect","isClient","useLayoutEffect","useEffect"],"mappings":";sHAWaA,EAA4BC,EAAWC,EAAkBC"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.28 */
2
- import{_ as e}from"../../_rollupPluginBabelHelpers-DsV9C8-q.js";import r from"react";import{useEventListener as t}from"../useEventListener/useEventListener.js";import"../useEvent/useEvent.js";import"../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js";import"../../utils/helpers/isClient.js";var i=function(i,o){var s,n,u=r.useState(!1),l=e(u,2),a=l[0],p=l[1];return t(null!==(s=null==o?void 0:o.target)&&void 0!==s?s:window,"keydown",(function(e){(Array.isArray(i)?i.includes(e.key):e.key===i)&&p(!0)})),t(null!==(n=null==o?void 0:o.target)&&void 0!==n?n:window,"keyup",(function(e){(Array.isArray(i)?i.includes(e.key):e.key===i)&&p(!1)})),a};export{i as useKeyPress};
1
+ /* @license @siberiacancode/reactuse v0.0.31 */
2
+ import{_ as e}from"../../_rollupPluginBabelHelpers-DmI4-Pc6.js";import{useState as r}from"react";import{useEventListener as t}from"../useEventListener/useEventListener.js";import"../useEvent/useEvent.js";import"../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js";import"../../utils/helpers/isClient.js";var i=function(i,o){var n,s,u=r(!1),l=e(u,2),a=l[0],p=l[1];return t(null!==(n=null==o?void 0:o.target)&&void 0!==n?n:window,"keydown",(function(e){(Array.isArray(i)?i.includes(e.key):e.key===i)&&p(!0)})),t(null!==(s=null==o?void 0:o.target)&&void 0!==s?s:window,"keyup",(function(e){(Array.isArray(i)?i.includes(e.key):e.key===i)&&p(!1)})),a};export{i as useKeyPress};
3
3
  //# sourceMappingURL=useKeyPress.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useKeyPress.js","sources":["../../../../src/hooks/useKeyPress/useKeyPress.ts"],"sourcesContent":["import React from 'react';\n\nimport type { UseEventListenerTarget } from '../useEventListener/useEventListener';\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 type 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 *\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] = React.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","_React$useState","React","useState","_React$useState2","_slicedToArray","pressed","setPressed","useEventListener","target","window","event","Array","isArray","includes"],"mappings":";0SAyBO,IAAMA,EAAc,SAACC,EAAqBC,GAAiC,IAAAC,EAAAC,EAChFC,EAA8BC,EAAMC,UAAS,GAAMC,EAAAC,EAAAJ,EAAA,GAA5CK,EAAOF,EAAA,GAAEG,EAAUH,EAAA,GAa1B,OAHAI,UAAgBT,EAACD,aAAO,EAAPA,EAASW,cAAM,IAAAV,EAAAA,EAAIW,OAAQ,WAR1B,SAACC,IACbC,MAAMC,QAAQhB,GAAOA,EAAIiB,SAASH,EAAMd,KAAOc,EAAMd,MAAQA,IAAKU,GAAW,MAQnFC,UAAgBR,EAACF,aAAO,EAAPA,EAASW,cAAM,IAAAT,EAAAA,EAAIU,OAAQ,SAL5B,SAACC,IACXC,MAAMC,QAAQhB,GAAOA,EAAIiB,SAASH,EAAMd,KAAOc,EAAMd,MAAQA,IAAKU,GAAW,MAM5ED,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';\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 type 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 *\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":";sTAyBO,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,MAQnFC,UAAgBP,EAACF,aAAO,EAAPA,EAASU,cAAM,IAAAR,EAAAA,EAAIS,OAAQ,SAL5B,SAACC,IACXC,MAAMC,QAAQf,GAAOA,EAAIgB,SAASH,EAAMb,KAAOa,EAAMb,MAAQA,IAAKS,GAAW,MAM5ED,CACT"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.28 */
1
+ /* @license @siberiacancode/reactuse v0.0.31 */
2
2
  import{useEventListener as e}from"../useEventListener/useEventListener.js";import"react";import"../useEvent/useEvent.js";import"../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js";import"../../utils/helpers/isClient.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,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.28 */
1
+ /* @license @siberiacancode/reactuse v0.0.31 */
2
2
  import{useEventListener as o}from"../useEventListener/useEventListener.js";import"react";import"../useEvent/useEvent.js";import"../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js";import"../../utils/helpers/isClient.js";var e=function(e){var n,t;o(null!==(n=null==e?void 0:e.target)&&void 0!==n?n:window,"keydown",(function(o){var n;return null==e||null===(n=e.onKeyDown)||void 0===n?void 0:n.call(e,o)})),o(null!==(t=null==e?void 0:e.target)&&void 0!==t?t:window,"keyup",(function(o){var n;return null==e||null===(n=e.onKeyUp)||void 0===n?void 0:n.call(e,o)}))};export{e as useKeyboard};
3
3
  //# sourceMappingURL=useKeyboard.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.28 */
2
- import{_ as e,c as o}from"../../_rollupPluginBabelHelpers-DsV9C8-q.js";import t 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/isClient.js";import"../useEvent/useEvent.js";var i=function(i){var u,s,c,l=null===(u=null==i?void 0:i.enabled)||void 0===u||u,d=t.useState([]),f=e(d,2),p=f[0],a=f[1];return n((function(){a([])}),[l]),r(null!==(s=null==i?void 0:i.target)&&void 0!==s?s:window,"keydown",(function(e){l&&a((function(t){return t.some((function(o){return o.code===e.code}))?t:[].concat(o(t),[{key:e.key,code:e.code}])}))})),r(null!==(c=null==i?void 0:i.target)&&void 0!==c?c:window,"keyup",(function(e){l&&a((function(o){return o.filter((function(o){return o.code!==e.code}))}))})),p};export{i as useKeysPressed};
1
+ /* @license @siberiacancode/reactuse v0.0.31 */
2
+ import{_ as e,c as o}from"../../_rollupPluginBabelHelpers-DmI4-Pc6.js";import{useState as t}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/isClient.js";import"../useEvent/useEvent.js";var i=function(i){var u,s,c,l=null===(u=null==i?void 0:i.enabled)||void 0===u||u,d=t([]),f=e(d,2),p=f[0],a=f[1];return n((function(){a([])}),[l]),r(null!==(s=null==i?void 0:i.target)&&void 0!==s?s:window,"keydown",(function(e){l&&a((function(t){return t.some((function(o){return o.code===e.code}))?t:[].concat(o(t),[{key:e.key,code:e.code}])}))})),r(null!==(c=null==i?void 0:i.target)&&void 0!==c?c:window,"keyup",(function(e){l&&a((function(o){return o.filter((function(o){return o.code!==e.code}))}))})),p};export{i as useKeysPressed};
3
3
  //# sourceMappingURL=useKeysPressed.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useKeysPressed.js","sources":["../../../../src/hooks/useKeysPressed/useKeysPressed.ts"],"sourcesContent":["import React from 'react';\n\nimport { useDidUpdate } from '../useDidUpdate/useDidUpdate';\nimport type { UseEventListenerTarget } from '../useEventListener/useEventListener';\nimport { useEventListener } from '../useEventListener/useEventListener';\n\n/** The use keys pressed params */\ninterface UseKeysPressedParams {\n /** The target to attach the event listeners to */\n target?: UseEventListenerTarget;\n\n /** Enable or disable the event listeners */\n enabled?: boolean;\n}\n\n/**\n * @name useKeysPressed\n * @description - Hook for get keys that were pressed\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] = React.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","_React$useState","React","useState","_React$useState2","_slicedToArray","keys","setKeys","useDidUpdate","useEventListener","target","window","event","prevKeys","some","_ref","code","concat","_toConsumableArray","key","filter","_ref2"],"mappings":";oXA0BaA,EAAiB,SAACC,GAAkC,IAAAC,EAAAC,EAAAC,EACzDC,EAAyBH,QAAlBA,EAAGD,aAAM,EAANA,EAAQI,eAAOH,IAAAA,GAAAA,EAC/BI,EAAwBC,EAAMC,SAA0C,IAAGC,EAAAC,EAAAJ,EAAA,GAApEK,EAAIF,EAAA,GAAEG,EAAOH,EAAA,GAsBpB,OAPAI,GAAa,WACXD,EAAQ,GACV,GAAG,CAACP,IAEJS,UAAgBX,EAACF,aAAM,EAANA,EAAQc,cAAM,IAAAZ,EAAAA,EAAIa,OAAQ,WAjBzB,SAACC,GACZZ,GACLO,GAAQ,SAACM,GACP,OAAIA,EAASC,MAAK,SAAAC,GAAO,OAAAA,EAAJC,OAAoBJ,EAAMI,QAAcH,EAC7D,GAAAI,OAAAC,EAAWL,GAAU,CAAA,CAAEM,IAAKP,EAAMO,IAAKH,KAAMJ,EAAMI,OACrD,OAaFP,UAAgBV,EAACH,aAAM,EAANA,EAAQc,cAAM,IAAAX,EAAAA,EAAIY,OAAQ,SAV3B,SAACC,GACVZ,GACLO,GAAQ,SAACM,GAAQ,OAAKA,EAASO,QAAO,SAAAC,GAAO,OAAAA,EAAJL,OAAoBJ,EAAMI,cAU9DV,CACT"}
1
+ {"version":3,"file":"useKeysPressed.js","sources":["../../../../src/hooks/useKeysPressed/useKeysPressed.ts"],"sourcesContent":["import { useState } from 'react';\n\nimport { useDidUpdate } from '../useDidUpdate/useDidUpdate';\nimport type { UseEventListenerTarget } from '../useEventListener/useEventListener';\nimport { useEventListener } from '../useEventListener/useEventListener';\n\n/** The use keys pressed params */\ninterface UseKeysPressedParams {\n /** The target to attach the event listeners to */\n target?: UseEventListenerTarget;\n\n /** Enable or disable the event listeners */\n enabled?: boolean;\n}\n\n/**\n * @name useKeysPressed\n * @description - Hook for get keys that were pressed\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":";gYA0BaA,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,QAAcH,EAC7D,GAAAI,OAAAC,EAAWL,GAAU,CAAA,CAAEM,IAAKP,EAAMO,IAAKH,KAAMJ,EAAMI,OACrD,OAaFP,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,cAU9DV,CACT"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.28 */
2
- import{_ as n,c as t}from"../../_rollupPluginBabelHelpers-DsV9C8-q.js";import r from"react";var e=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],u=r.useState(e),c=n(u,2),o=c[0],i=c[1];return{value:o,set:function(n){return i(n)},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.31 */
2
+ import{_ as n,c as t}from"../../_rollupPluginBabelHelpers-DmI4-Pc6.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:function(n){return i(n)},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 +1 @@
1
- {"version":3,"file":"useList.js","sources":["../../../../src/hooks/useList/useList.ts"],"sourcesContent":["import React from 'react';\n\n/** The use list return type */\nexport interface UseListReturn<Item> {\n /** The current list of items */\n value: Item[];\n /** Sets the list of items */\n set: (list: Item[]) => void;\n /** Adds an item to the list */\n push: (item: Item) => void;\n /** Removes an item from the list */\n removeAt: (removeAtIndex: number) => void;\n /** Inserts an item at the specified index */\n insertAt: (insertAtIndex: number, item: Item) => void;\n /** Updates an item at the specified index */\n updateAt: (updateAtIndex: number, item: Item) => void;\n /** Clears the list */\n clear: () => void;\n}\n\n/**\n * @name useList\n * @description - Hook that defines the logic when unmounting a component\n *\n * @template Item - The type of the item\n * @param {Item[] | (() => Item[])} initialList - The initial list of items\n * @returns {UseListReturn} An object containing the current list and functions to interact with the list\n *\n * @example\n * const { value, set, push, removeAt, insertAt, updateAt, clear } = useList();\n */\nexport const useList = <Item>(initialList: Item[] = []) => {\n const [list, setList] = React.useState(initialList);\n\n const set = (list: Item[]) => setList(list);\n\n const push = (item: Item) => setList((prevList) => [...prevList, item]);\n\n const removeAt = (removeAtIndex: number) =>\n setList((prevList) => [\n ...prevList.slice(0, removeAtIndex),\n ...prevList.slice(removeAtIndex + 1)\n ]);\n\n const insertAt = (insertAtIndex: number, item: Item) =>\n setList((l) => [...l.slice(0, insertAtIndex), item, ...l.slice(insertAtIndex)]);\n\n const updateAt = (updateAtIndex: number, item: Item) =>\n setList((prevList) =>\n prevList.map((element, index) => (index === updateAtIndex ? item : element))\n );\n\n const clear = () => setList([]);\n\n const reset = () => setList(initialList);\n\n return { value: list, set, push, removeAt, insertAt, updateAt, clear, reset };\n};\n"],"names":["useList","initialList","arguments","length","undefined","_React$useState","React","useState","_React$useState2","_slicedToArray","list","setList","value","set","push","item","prevList","concat","_toConsumableArray","removeAt","removeAtIndex","slice","insertAt","insertAtIndex","l","updateAt","updateAtIndex","map","element","index","clear","reset"],"mappings":";gGA+BaA,EAAU,WAAoC,IAA7BC,EAAmBC,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAG,GAClDG,EAAwBC,EAAMC,SAASN,GAAYO,EAAAC,EAAAJ,EAAA,GAA5CK,EAAIF,EAAA,GAAEG,EAAOH,EAAA,GAwBpB,MAAO,CAAEI,MAAOF,EAAMG,IAtBV,SAACH,GAAY,OAAKC,EAAQD,EAAK,EAsBhBI,KApBd,SAACC,GAAU,OAAKJ,GAAQ,SAACK,GAAQ,MAAA,GAAAC,OAAAC,EAASF,IAAUD,GAAI,GAAE,EAoBtCI,SAlBhB,SAACC,GAAqB,OACrCT,GAAQ,SAACK,GAAQ,MAAAC,GAAAA,OAAAC,EACZF,EAASK,MAAM,EAAGD,IAAcF,EAChCF,EAASK,MAAMD,EAAgB,IAAE,GACpC,EAcuCE,SAZ1B,SAACC,EAAuBR,GAAU,OACjDJ,GAAQ,SAACa,GAAC,MAAAP,GAAAA,OAAAC,EAASM,EAAEH,MAAM,EAAGE,IAAgBR,CAAAA,GAAIG,EAAKM,EAAEH,MAAME,IAAc,GAAE,EAW5BE,SATpC,SAACC,EAAuBX,GAAU,OACjDJ,GAAQ,SAACK,GAAQ,OACfA,EAASW,KAAI,SAACC,EAASC,GAAK,OAAMA,IAAUH,EAAgBX,EAAOa,CAAO,GAAE,GAC7E,EAM4DE,MAJjD,WAAH,OAASnB,EAAQ,GAAG,EAIuCoB,MAFxD,WAAH,OAASpB,EAAQV,EAAY,EAG1C"}
1
+ {"version":3,"file":"useList.js","sources":["../../../../src/hooks/useList/useList.ts"],"sourcesContent":["import { useState } from 'react';\n\n/** The use list return type */\nexport interface UseListReturn<Item> {\n /** The current list of items */\n value: Item[];\n /** Sets the list of items */\n set: (list: Item[]) => void;\n /** Adds an item to the list */\n push: (item: Item) => void;\n /** Removes an item from the list */\n removeAt: (removeAtIndex: number) => void;\n /** Inserts an item at the specified index */\n insertAt: (insertAtIndex: number, item: Item) => void;\n /** Updates an item at the specified index */\n updateAt: (updateAtIndex: number, item: Item) => void;\n /** Clears the list */\n clear: () => void;\n}\n\n/**\n * @name useList\n * @description - Hook that defines the logic when unmounting a component\n *\n * @template Item - The type of the item\n * @param {Item[] | (() => Item[])} initialList - The initial list of items\n * @returns {UseListReturn} An object containing the current list and functions to interact with the list\n *\n * @example\n * const { value, set, push, removeAt, insertAt, updateAt, clear } = useList();\n */\nexport const useList = <Item>(initialList: Item[] = []) => {\n const [list, setList] = useState(initialList);\n\n const set = (list: Item[]) => setList(list);\n\n const push = (item: Item) => setList((prevList) => [...prevList, item]);\n\n const removeAt = (removeAtIndex: number) =>\n setList((prevList) => [\n ...prevList.slice(0, removeAtIndex),\n ...prevList.slice(removeAtIndex + 1)\n ]);\n\n const insertAt = (insertAtIndex: number, item: Item) =>\n setList((l) => [...l.slice(0, insertAtIndex), item, ...l.slice(insertAtIndex)]);\n\n const updateAt = (updateAtIndex: number, item: Item) =>\n setList((prevList) =>\n prevList.map((element, index) => (index === updateAtIndex ? item : element))\n );\n\n const clear = () => setList([]);\n\n const reset = () => setList(initialList);\n\n return { value: list, set, push, removeAt, insertAt, updateAt, clear, reset };\n};\n"],"names":["useList","initialList","arguments","length","undefined","_useState","useState","_useState2","_slicedToArray","list","setList","value","set","push","item","prevList","concat","_toConsumableArray","removeAt","removeAtIndex","slice","insertAt","insertAtIndex","l","updateAt","updateAtIndex","map","element","index","clear","reset"],"mappings":";4GA+BaA,EAAU,WAAoC,IAA7BC,EAAmBC,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAG,GAClDG,EAAwBC,EAASL,GAAYM,EAAAC,EAAAH,EAAA,GAAtCI,EAAIF,EAAA,GAAEG,EAAOH,EAAA,GAwBpB,MAAO,CAAEI,MAAOF,EAAMG,IAtBV,SAACH,GAAY,OAAKC,EAAQD,EAAK,EAsBhBI,KApBd,SAACC,GAAU,OAAKJ,GAAQ,SAACK,GAAQ,MAAA,GAAAC,OAAAC,EAASF,IAAUD,GAAI,GAAE,EAoBtCI,SAlBhB,SAACC,GAAqB,OACrCT,GAAQ,SAACK,GAAQ,MAAAC,GAAAA,OAAAC,EACZF,EAASK,MAAM,EAAGD,IAAcF,EAChCF,EAASK,MAAMD,EAAgB,IAAE,GACpC,EAcuCE,SAZ1B,SAACC,EAAuBR,GAAU,OACjDJ,GAAQ,SAACa,GAAC,MAAAP,GAAAA,OAAAC,EAASM,EAAEH,MAAM,EAAGE,IAAgBR,CAAAA,GAAIG,EAAKM,EAAEH,MAAME,IAAc,GAAE,EAW5BE,SATpC,SAACC,EAAuBX,GAAU,OACjDJ,GAAQ,SAACK,GAAQ,OACfA,EAASW,KAAI,SAACC,EAASC,GAAK,OAAMA,IAAUH,EAAgBX,EAAOa,CAAO,GAAE,GAC7E,EAM4DE,MAJjD,WAAH,OAASnB,EAAQ,GAAG,EAIuCoB,MAFxD,WAAH,OAASpB,EAAQT,EAAY,EAG1C"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.28 */
2
- import{b as o}from"../../_rollupPluginBabelHelpers-DsV9C8-q.js";import{useStorage as r}from"../useStorage/useStorage.js";import"react";import"../../utils/helpers/isClient.js";import"../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js";var e=function(e,t,i){return r(e,o({initialValue:t,storage:window.localStorage},i))};export{e as useLocalStorage};
1
+ /* @license @siberiacancode/reactuse v0.0.31 */
2
+ import{b as o}from"../../_rollupPluginBabelHelpers-DmI4-Pc6.js";import{useStorage as r}from"../useStorage/useStorage.js";import"react";import"../../utils/helpers/isClient.js";import"../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js";var e=function(e,t,i){return r(e,o({initialValue:t,storage:window.localStorage},i))};export{e as useLocalStorage};
3
3
  //# sourceMappingURL=useLocalStorage.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.28 */
2
- import{c as o}from"../../_rollupPluginBabelHelpers-DsV9C8-q.js";import t from"react";import{useDidUpdate as e}from"../useDidUpdate/useDidUpdate.js";import"../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js";import"../../utils/helpers/isClient.js";var c=function(c,n){t.useEffect((function(){var t;return(t=console).log.apply(t,["".concat(c," mounted")].concat(o(n))),function(){return console.log("".concat(c," unmounted"))}}),[]),e((function(){var t;(t=console).log.apply(t,["".concat(c," updated")].concat(o(n)))}),n)};export{c as useLogger};
1
+ /* @license @siberiacancode/reactuse v0.0.31 */
2
+ import{c as o}from"../../_rollupPluginBabelHelpers-DmI4-Pc6.js";import{useEffect as t}from"react";import{useDidUpdate as e}from"../useDidUpdate/useDidUpdate.js";import"../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js";import"../../utils/helpers/isClient.js";var c=function(c,n){t((function(){var t;return(t=console).log.apply(t,["".concat(c," mounted")].concat(o(n))),function(){return console.log("".concat(c," unmounted"))}}),[]),e((function(){var t;(t=console).log.apply(t,["".concat(c," updated")].concat(o(n)))}),n)};export{c as useLogger};
3
3
  //# sourceMappingURL=useLogger.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useLogger.js","sources":["../../../../src/hooks/useLogger/useLogger.ts"],"sourcesContent":["import React from 'react';\n\nimport { useDidUpdate } from '../useDidUpdate/useDidUpdate';\n\n/**\n * @name useLogger\n * @description - Hook for debugging lifecycle\n *\n * @param {string} name The name or identifier for the logger\n * @param {unknown[]} params Additional arguments to be logged\n *\n * @example\n * useLogger('Component', [1, 2, 3]);\n */\nexport const useLogger = (name: string, params: unknown[]) => {\n React.useEffect(() => {\n console.log(`${name} mounted`, ...params);\n return () => console.log(`${name} unmounted`);\n }, []);\n\n useDidUpdate(() => {\n console.log(`${name} updated`, ...params);\n }, params);\n};\n"],"names":["useLogger","name","params","React","useEffect","_console","console","log","apply","concat","_toConsumableArray","useDidUpdate","_console2"],"mappings":";8PAcO,IAAMA,EAAY,SAACC,EAAcC,GACtCC,EAAMC,WAAU,WAAM,IAAAC,EAEpB,OADAA,EAAAC,SAAQC,IAAGC,MAAAH,MAAAI,OAAIR,EAAIQ,aAAAA,OAAAC,EAAeR,KAC3B,WAAA,OAAMI,QAAQC,IAAG,GAAAE,OAAIR,gBAAiB,CAC9C,GAAE,IAEHU,GAAa,WAAM,IAAAC,GACjBA,EAAAN,SAAQC,IAAGC,MAAAI,MAAAH,OAAIR,EAAIQ,aAAAA,OAAAC,EAAeR,IACnC,GAAEA,EACL"}
1
+ {"version":3,"file":"useLogger.js","sources":["../../../../src/hooks/useLogger/useLogger.ts"],"sourcesContent":["import { useEffect } from 'react';\n\nimport { useDidUpdate } from '../useDidUpdate/useDidUpdate';\n\n/**\n * @name useLogger\n * @description - Hook for debugging lifecycle\n *\n * @param {string} name The name or identifier for the logger\n * @param {unknown[]} params Additional arguments to be logged\n *\n * @example\n * useLogger('Component', [1, 2, 3]);\n */\nexport const useLogger = (name: string, params: unknown[]) => {\n useEffect(() => {\n console.log(`${name} mounted`, ...params);\n return () => console.log(`${name} unmounted`);\n }, []);\n\n useDidUpdate(() => {\n console.log(`${name} updated`, ...params);\n }, params);\n};\n"],"names":["useLogger","name","params","useEffect","_console","console","log","apply","concat","_toConsumableArray","useDidUpdate","_console2"],"mappings":";2QAcO,IAAMA,EAAY,SAACC,EAAcC,GACtCC,GAAU,WAAM,IAAAC,EAEd,OADAA,EAAAC,SAAQC,IAAGC,MAAAH,MAAAI,OAAIP,EAAIO,aAAAA,OAAAC,EAAeP,KAC3B,WAAA,OAAMG,QAAQC,IAAG,GAAAE,OAAIP,gBAAiB,CAC9C,GAAE,IAEHS,GAAa,WAAM,IAAAC,GACjBA,EAAAN,SAAQC,IAAGC,MAAAI,MAAAH,OAAIP,EAAIO,aAAAA,OAAAC,EAAeP,IACnC,GAAEA,EACL"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.28 */
2
- import{_ as e}from"../../_rollupPluginBabelHelpers-DsV9C8-q.js";import n from"react";import{useEventListener as t}from"../useEventListener/useEventListener.js";import"../useEvent/useEvent.js";import"../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js";import"../../utils/helpers/isClient.js";var l=function(){var l=(arguments.length<=0?void 0:arguments[0])instanceof Function||!("current"in(arguments.length<=0?void 0:arguments[0]))||arguments.length<=0?void 0:arguments[0],u=l?arguments.length<=1?void 0:arguments[1]:arguments.length<=0?void 0:arguments[0],o=l?arguments.length<=2?void 0:arguments[2]:arguments.length<=1?void 0:arguments[1],r=n.useState(!1),i=e(r,2),s=i[0],c=i[1],v=n.useRef(null),a=n.useRef(),f=n.useRef(!1),d=function(e){var n,t;null==o||null===(n=o.onStart)||void 0===n||n.call(o,e),f.current=!0,a.current=setTimeout((function(){u(e),c(!0)}),null!==(t=null==o?void 0:o.threshold)&&void 0!==t?t:400)},h=function(e){var n;if(s)null==o||null===(n=o.onFinish)||void 0===n||n.call(o,e);else if(f.current){var t;null==o||null===(t=o.onCancel)||void 0===t||t.call(o,e)}c(!1),f.current=!1,a.current&&clearTimeout(a.current)};return t(null!=l?l:v,"mousedown",d),t(null!=l?l:v,"touchstart",d),t(null!=l?l:v,"mouseup",h),t(null!=l?l:v,"touchend",h),l?s:[v,s]};export{l as useLongPress};
1
+ /* @license @siberiacancode/reactuse v0.0.31 */
2
+ import{_ as n}from"../../_rollupPluginBabelHelpers-DmI4-Pc6.js";import{useState as e,useRef as l}from"react";import{useEventListener as t}from"../useEventListener/useEventListener.js";import"../useEvent/useEvent.js";import"../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js";import"../../utils/helpers/isClient.js";var o=function(){var o=(arguments.length<=0?void 0:arguments[0])instanceof Function||!("current"in(arguments.length<=0?void 0:arguments[0]))||arguments.length<=0?void 0:arguments[0],u=o?arguments.length<=1?void 0:arguments[1]:arguments.length<=0?void 0:arguments[0],r=o?arguments.length<=2?void 0:arguments[2]:arguments.length<=1?void 0:arguments[1],i=e(!1),s=n(i,2),c=s[0],v=s[1],a=l(null),d=l(),h=l(!1),m=function(n){var e,l;null==r||null===(e=r.onStart)||void 0===e||e.call(r,n),h.current=!0,d.current=setTimeout((function(){u(n),v(!0)}),null!==(l=null==r?void 0:r.threshold)&&void 0!==l?l:400)},f=function(n){var e;if(c)null==r||null===(e=r.onFinish)||void 0===e||e.call(r,n);else if(h.current){var l;null==r||null===(l=r.onCancel)||void 0===l||l.call(r,n)}v(!1),h.current=!1,d.current&&clearTimeout(d.current)};return t(null!=o?o:a,"mousedown",m),t(null!=o?o:a,"touchstart",m),t(null!=o?o:a,"mouseup",f),t(null!=o?o:a,"touchend",f),o?c:[a,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 React from 'react';\n\nimport { useEventListener } from '../useEventListener/useEventListener';\n\n// * The use long press target type */\nexport type UseLongPressTarget = React.RefObject<Element | null> | (() => Element) | Element;\n\n// * The use long press options type */\ninterface UseLongPressOptions {\n // * The threshold time in milliseconds\n threshold?: number;\n // * The callback function to be invoked on long press start\n onStart?: (event: Event) => void;\n // * The callback function to be invoked on long press end\n onFinish?: (event: Event) => void;\n // * The callback function to be invoked on long press cancel\n onCancel?: (event: Event) => void;\n}\n\n// * The use long press return type */\nexport type UseLongPressReturn<Target extends UseLongPressTarget> = [\n React.RefObject<Target>,\n boolean\n];\n\nexport type UseLongPress = {\n <Target extends UseLongPressTarget>(\n target: Target,\n callback: (event: Event) => void,\n options?: UseLongPressOptions\n ): boolean;\n\n <Target extends UseLongPressTarget>(\n callback: (event: Event) => void,\n options?: UseLongPressOptions,\n target?: never\n ): UseLongPressReturn<Target>;\n};\n\nconst DEFAULT_THRESHOLD_TIME = 400;\n\n/**\n * @name useLongPress\n * @description - Hook that defines the logic when long pressing an element\n *\n * @overload\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 {void}\n *\n * @example\n * const longPressing = useLongPress(ref, () => console.log('callback'));\n *\n * @overload\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 [ref, longPressing] = useLongPress(() => console.log('callback'));\n */\nexport const useLongPress = ((...params: any[]) => {\n const target = (\n params[0] instanceof Function || !('current' in params[0]) ? undefined : params[0]\n ) as UseLongPressTarget | undefined;\n const callback = (target ? params[1] : params[0]) as (event: Event) => void;\n const options = (target ? params[2] : params[1]) as UseLongPressOptions | undefined;\n\n const [isLongPressActive, setIsLongPressActive] = React.useState(false);\n const internalRef = React.useRef<Element>(null);\n const timeoutIdRef = React.useRef<ReturnType<typeof setTimeout>>();\n const isPressed = React.useRef(false);\n\n const start = (event: Event) => {\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: Event) => {\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 useEventListener(target ?? internalRef, 'mousedown', start);\n useEventListener(target ?? internalRef, 'touchstart', start);\n useEventListener(target ?? internalRef, 'mouseup', cancel);\n useEventListener(target ?? internalRef, 'touchend', cancel);\n\n if (target) return isLongPressActive;\n return [internalRef, isLongPressActive];\n}) as UseLongPress;\n"],"names":["useLongPress","target","arguments","length","undefined","Function","callback","options","_React$useState","React","useState","_React$useState2","_slicedToArray","isLongPressActive","setIsLongPressActive","internalRef","useRef","timeoutIdRef","isPressed","start","event","_options$onStart","_options$threshold","onStart","call","current","setTimeout","threshold","cancel","_options$onFinish","onFinish","_options$onCancel","onCancel","clearTimeout","useEventListener"],"mappings":";0SAuCA,IAgCaA,EAAgB,WAC3B,IAAMC,GACJC,UAAAC,QAAA,OAAAC,EAAAF,UAAqBG,cAAAA,YAAc,YAASH,UAAAC,eAAAC,EAAAF,UAAA,MAA0BA,UAAAC,QAAA,OAATC,EAASF,UACrC,GAC7BI,EAAYL,EAAMC,UAAAC,QAAAC,OAAAA,EAAAF,UAAA,GAAAA,UAAAC,eAAAC,EAAAF,UAAmD,GACrEK,EAAWN,EAAMC,UAAAC,QAAAC,OAAAA,EAAAF,UAAA,GAAAA,UAAAC,eAAAC,EAAAF,UAA4D,GAEnFM,EAAkDC,EAAMC,UAAS,GAAMC,EAAAC,EAAAJ,EAAA,GAAhEK,EAAiBF,EAAA,GAAEG,EAAoBH,EAAA,GACxCI,EAAcN,EAAMO,OAAgB,MACpCC,EAAeR,EAAMO,SACrBE,EAAYT,EAAMO,QAAO,GAEzBG,EAAQ,SAACC,GAAiB,IAAAC,EAAAC,EAC9Bf,SAAgB,QAATc,EAAPd,EAASgB,eAAO,IAAAF,GAAhBA,EAAAG,KAAAjB,EAAmBa,GAEnBF,EAAUO,SAAU,EACpBR,EAAaQ,QAAUC,YAAW,WAChCpB,EAASc,GACTN,GAAqB,EACvB,WAACQ,EAAEf,aAAAA,EAAAA,EAASoB,iBAAS,IAAAL,EAAAA,EAnDM,MAsDvBM,EAAS,SAACR,GACS,IAAAS,EAAvB,GAAIhB,EACFN,SAAiB,QAAVsB,EAAPtB,EAASuB,gBAAQ,IAAAD,GAAjBA,EAAAL,KAAAjB,EAAoBa,QACf,GAAIF,EAAUO,QAAS,CAAA,IAAAM,EAC5BxB,SAAiB,QAAVwB,EAAPxB,EAASyB,gBAAQ,IAAAD,GAAjBA,EAAAP,KAAAjB,EAAoBa,EACtB,CAEAN,GAAqB,GACrBI,EAAUO,SAAU,EAEhBR,EAAaQ,SAASQ,aAAahB,EAAaQ,UAQtD,OALAS,EAAiBjC,QAAAA,EAAUc,EAAa,YAAaI,GACrDe,EAAiBjC,QAAAA,EAAUc,EAAa,aAAcI,GACtDe,EAAiBjC,QAAAA,EAAUc,EAAa,UAAWa,GACnDM,EAAiBjC,QAAAA,EAAUc,EAAa,WAAYa,GAEhD3B,EAAeY,EACZ,CAACE,EAAaF,EACvB"}
1
+ {"version":3,"file":"useLongPress.js","sources":["../../../../src/hooks/useLongPress/useLongPress.ts"],"sourcesContent":["import type { RefObject } from 'react';\nimport { useRef, useState } from 'react';\n\nimport { useEventListener } from '../useEventListener/useEventListener';\n\n// * The use long press target type */\nexport type UseLongPressTarget = RefObject<Element | null> | (() => Element) | Element;\n\n// * The use long press options type */\ninterface UseLongPressOptions {\n // * The threshold time in milliseconds\n threshold?: number;\n // * The callback function to be invoked on long press start\n onStart?: (event: Event) => void;\n // * The callback function to be invoked on long press end\n onFinish?: (event: Event) => void;\n // * The callback function to be invoked on long press cancel\n onCancel?: (event: Event) => void;\n}\n\n// * The use long press return type */\nexport type UseLongPressReturn<Target extends UseLongPressTarget> = [RefObject<Target>, boolean];\n\nexport type UseLongPress = {\n <Target extends UseLongPressTarget>(\n target: Target,\n callback: (event: Event) => void,\n options?: UseLongPressOptions\n ): boolean;\n\n <Target extends UseLongPressTarget>(\n callback: (event: Event) => void,\n options?: UseLongPressOptions,\n target?: never\n ): UseLongPressReturn<Target>;\n};\n\nconst DEFAULT_THRESHOLD_TIME = 400;\n\n/**\n * @name useLongPress\n * @description - Hook that defines the logic when long pressing an element\n *\n * @overload\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 {void}\n *\n * @example\n * const longPressing = useLongPress(ref, () => console.log('callback'));\n *\n * @overload\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 [ref, longPressing] = useLongPress(() => console.log('callback'));\n */\nexport const useLongPress = ((...params: any[]) => {\n const target = (\n params[0] instanceof Function || !('current' in params[0]) ? undefined : params[0]\n ) as UseLongPressTarget | undefined;\n const callback = (target ? params[1] : params[0]) as (event: Event) => void;\n const options = (target ? params[2] : params[1]) as UseLongPressOptions | undefined;\n\n const [isLongPressActive, setIsLongPressActive] = useState(false);\n const internalRef = useRef<Element>(null);\n const timeoutIdRef = useRef<ReturnType<typeof setTimeout>>();\n const isPressed = useRef(false);\n\n const start = (event: Event) => {\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: Event) => {\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 useEventListener(target ?? internalRef, 'mousedown', start);\n useEventListener(target ?? internalRef, 'touchstart', start);\n useEventListener(target ?? internalRef, 'mouseup', cancel);\n useEventListener(target ?? internalRef, 'touchend', cancel);\n\n if (target) return isLongPressActive;\n return [internalRef, isLongPressActive];\n}) as UseLongPress;\n"],"names":["useLongPress","target","arguments","length","undefined","Function","callback","options","_useState","useState","_useState2","_slicedToArray","isLongPressActive","setIsLongPressActive","internalRef","useRef","timeoutIdRef","isPressed","start","event","_options$onStart","_options$threshold","onStart","call","current","setTimeout","threshold","cancel","_options$onFinish","onFinish","_options$onCancel","onCancel","clearTimeout","useEventListener"],"mappings":";kUAqCA,IAgCaA,EAAgB,WAC3B,IAAMC,GACJC,UAAAC,QAAA,OAAAC,EAAAF,UAAqBG,cAAAA,YAAc,YAASH,UAAAC,eAAAC,EAAAF,UAAA,MAA0BA,UAAAC,QAAA,OAATC,EAASF,UACrC,GAC7BI,EAAYL,EAAMC,UAAAC,QAAAC,OAAAA,EAAAF,UAAA,GAAAA,UAAAC,eAAAC,EAAAF,UAAmD,GACrEK,EAAWN,EAAMC,UAAAC,QAAAC,OAAAA,EAAAF,UAAA,GAAAA,UAAAC,eAAAC,EAAAF,UAA4D,GAEnFM,EAAkDC,GAAS,GAAMC,EAAAC,EAAAH,EAAA,GAA1DI,EAAiBF,EAAA,GAAEG,EAAoBH,EAAA,GACxCI,EAAcC,EAAgB,MAC9BC,EAAeD,IACfE,EAAYF,GAAO,GAEnBG,EAAQ,SAACC,GAAiB,IAAAC,EAAAC,EAC9Bd,SAAgB,QAATa,EAAPb,EAASe,eAAO,IAAAF,GAAhBA,EAAAG,KAAAhB,EAAmBY,GAEnBF,EAAUO,SAAU,EACpBR,EAAaQ,QAAUC,YAAW,WAChCnB,EAASa,GACTN,GAAqB,EACvB,WAACQ,EAAEd,aAAAA,EAAAA,EAASmB,iBAAS,IAAAL,EAAAA,EAnDM,MAsDvBM,EAAS,SAACR,GACS,IAAAS,EAAvB,GAAIhB,EACFL,SAAiB,QAAVqB,EAAPrB,EAASsB,gBAAQ,IAAAD,GAAjBA,EAAAL,KAAAhB,EAAoBY,QACf,GAAIF,EAAUO,QAAS,CAAA,IAAAM,EAC5BvB,SAAiB,QAAVuB,EAAPvB,EAASwB,gBAAQ,IAAAD,GAAjBA,EAAAP,KAAAhB,EAAoBY,EACtB,CAEAN,GAAqB,GACrBI,EAAUO,SAAU,EAEhBR,EAAaQ,SAASQ,aAAahB,EAAaQ,UAQtD,OALAS,EAAiBhC,QAAAA,EAAUa,EAAa,YAAaI,GACrDe,EAAiBhC,QAAAA,EAAUa,EAAa,aAAcI,GACtDe,EAAiBhC,QAAAA,EAAUa,EAAa,UAAWa,GACnDM,EAAiBhC,QAAAA,EAAUa,EAAa,WAAYa,GAEhD1B,EAAeW,EACZ,CAACE,EAAaF,EACvB"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.28 */
2
- import n from"react";var e=function(){return!1},t=function(t){var r=n.useCallback((function(n){var e=window.matchMedia(t);return e.addEventListener("change",n),function(){e.removeEventListener("change",n)}}),[t]);return n.useSyncExternalStore(r,(function(){return window.matchMedia(t).matches}),e)};export{t as useMediaQuery};
1
+ /* @license @siberiacancode/reactuse v0.0.31 */
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 +1 @@
1
- {"version":3,"file":"useMediaQuery.js","sources":["../../../../src/hooks/useMediaQuery/useMediaQuery.ts"],"sourcesContent":["import React from 'react';\n\nconst getServerSnapshot = () => false;\n\n/**\n * @name useMediaQuery\n * @description - Hook that manages a media query\n *\n * @param {string} query The media query string\n * @returns {boolean} A boolean indicating if the media query matches\n *\n * @example\n * const matches = useMediaQuery('(max-width: 768px)');\n */\nexport const useMediaQuery = (query: string) => {\n const subscribe = React.useCallback(\n (callback: () => void) => {\n const matchMedia = window.matchMedia(query);\n\n matchMedia.addEventListener('change', callback);\n return () => {\n matchMedia.removeEventListener('change', callback);\n };\n },\n [query]\n );\n\n const getSnapshot = () => window.matchMedia(query).matches;\n\n return React.useSyncExternalStore(subscribe, getSnapshot, getServerSnapshot);\n};\n"],"names":["getServerSnapshot","useMediaQuery","query","subscribe","React","useCallback","callback","matchMedia","window","addEventListener","removeEventListener","useSyncExternalStore","matches"],"mappings":";qBAEA,IAAMA,EAAoB,WAAH,OAAS,CAAK,EAYxBC,EAAgB,SAACC,GAC5B,IAAMC,EAAYC,EAAMC,aACtB,SAACC,GACC,IAAMC,EAAaC,OAAOD,WAAWL,GAGrC,OADAK,EAAWE,iBAAiB,SAAUH,GAC/B,WACLC,EAAWG,oBAAoB,SAAUJ,GAE7C,GACA,CAACJ,IAKH,OAAOE,EAAMO,qBAAqBR,GAFd,WAAH,OAASK,OAAOD,WAAWL,GAAOU,OAAO,GAEAZ,EAC5D"}
1
+ {"version":3,"file":"useMediaQuery.js","sources":["../../../../src/hooks/useMediaQuery/useMediaQuery.ts"],"sourcesContent":["import { useCallback, useSyncExternalStore } from 'react';\n\nconst getServerSnapshot = () => false;\n\n/**\n * @name useMediaQuery\n * @description - Hook that manages a media query\n *\n * @param {string} query The media query string\n * @returns {boolean} A boolean indicating if the media query matches\n *\n * @example\n * const matches = useMediaQuery('(max-width: 768px)');\n */\nexport const useMediaQuery = (query: string) => {\n const subscribe = useCallback(\n (callback: () => void) => {\n const matchMedia = window.matchMedia(query);\n\n matchMedia.addEventListener('change', callback);\n return () => {\n matchMedia.removeEventListener('change', callback);\n };\n },\n [query]\n );\n\n const getSnapshot = () => window.matchMedia(query).matches;\n\n return useSyncExternalStore(subscribe, getSnapshot, getServerSnapshot);\n};\n"],"names":["getServerSnapshot","useMediaQuery","query","subscribe","useCallback","callback","matchMedia","window","addEventListener","removeEventListener","useSyncExternalStore","matches"],"mappings":";8DAEA,IAAMA,EAAoB,WAAH,OAAS,CAAK,EAYxBC,EAAgB,SAACC,GAC5B,IAAMC,EAAYC,GAChB,SAACC,GACC,IAAMC,EAAaC,OAAOD,WAAWJ,GAGrC,OADAI,EAAWE,iBAAiB,SAAUH,GAC/B,WACLC,EAAWG,oBAAoB,SAAUJ,GAE7C,GACA,CAACH,IAKH,OAAOQ,EAAqBP,GAFR,WAAH,OAASI,OAAOD,WAAWJ,GAAOS,OAAO,GAENX,EACtD"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.28 */
2
- import r from"react";var t=function(t){return r.useEffect(t,[])};export{t as useMount};
1
+ /* @license @siberiacancode/reactuse v0.0.31 */
2
+ import{useEffect as r}from"react";var t=function(t){return r(t,[])};export{t as useMount};
3
3
  //# sourceMappingURL=useMount.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useMount.js","sources":["../../../../src/hooks/useMount/useMount.ts"],"sourcesContent":["import React from 'react';\n\n/**\n * @name useMount\n * @description - Hook that executes a callback when the component mounts\n *\n * @param {React.EffectCallback} effect The callback to execute\n *\n * @example\n * useMount(() => console.log('This effect runs on the initial render'));\n */\nexport const useMount = (effect: React.EffectCallback) => React.useEffect(effect, []);\n"],"names":["useMount","effect","React","useEffect"],"mappings":";yBAWaA,EAAW,SAACC,GAA4B,OAAKC,EAAMC,UAAUF,EAAQ,GAAG"}
1
+ {"version":3,"file":"useMount.js","sources":["../../../../src/hooks/useMount/useMount.ts"],"sourcesContent":["import type { EffectCallback } from 'react';\nimport { useEffect } from 'react';\n\n/**\n * @name useMount\n * @description - Hook that executes a callback when the component mounts\n *\n * @param {EffectCallback} effect The callback to execute\n *\n * @example\n * useMount(() => console.log('This effect runs on the initial render'));\n */\nexport const useMount = (effect: EffectCallback) => useEffect(effect, []);\n"],"names":["useMount","effect","useEffect"],"mappings":";sCAYaA,EAAW,SAACC,GAAsB,OAAKC,EAAUD,EAAQ,GAAG"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.28 */
2
- import{_ as e,b as t}from"../../_rollupPluginBabelHelpers-DsV9C8-q.js";import n from"react";import{useIsomorphicLayoutEffect as o}from"../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js";import"../../utils/helpers/isClient.js";var r=function(){for(var r=arguments.length,i=new Array(r),u=0;u<r;u++)i[u]=arguments[u];var l=i[0],s=n.useState({x:0,y:0,elementX:0,elementY:0,elementPositionX:0,elementPositionY:0}),m=e(s,2),f=m[0],a=m[1],c=n.useRef(null);return o((function(){var e=function(e){var n=l?function(e){return"function"==typeof e?e():e instanceof Element?e:e.current}(l):c.current;if(n){var o={x:e.pageX,y:e.pageY},r=n.getBoundingClientRect(),i=r.left,u=r.top,s=i+window.scrollX,m=u+window.scrollY,f=e.pageX-s,p=e.pageY-m;o.elementX=f,o.elementY=p,o.elementPositionX=s,o.elementPositionY=m,a((function(e){return t(t({},e),o)}))}};return document.addEventListener("mousemove",e),function(){document.removeEventListener("mousemove",e)}}),[]),l?f:t(t({},f),{},{ref:c})};export{r as useMouse};
1
+ /* @license @siberiacancode/reactuse v0.0.31 */
2
+ import{_ as e,b as t}from"../../_rollupPluginBabelHelpers-DmI4-Pc6.js";import{useState as n,useRef as o}from"react";import{useIsomorphicLayoutEffect as r}from"../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js";import"../../utils/helpers/isClient.js";var i=function(){for(var i=arguments.length,l=new Array(i),u=0;u<i;u++)l[u]=arguments[u];var m=l[0],s=n({x:0,y:0,elementX:0,elementY:0,elementPositionX:0,elementPositionY:0}),c=e(s,2),f=c[0],a=c[1],p=o(null);return r((function(){var e=function(e){var n=m?function(e){return"function"==typeof e?e():e instanceof Element?e:e.current}(m):p.current;if(n){var o={x:e.pageX,y:e.pageY},r=n.getBoundingClientRect(),i=r.left,l=r.top,u=i+window.scrollX,s=l+window.scrollY,c=e.pageX-u,f=e.pageY-s;o.elementX=c,o.elementY=f,o.elementPositionX=u,o.elementPositionY=s,a((function(e){return t(t({},e),o)}))}};return document.addEventListener("mousemove",e),function(){document.removeEventListener("mousemove",e)}}),[]),m?f:t(t({},f),{},{ref:p})};export{i as useMouse};
3
3
  //# sourceMappingURL=useMouse.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useMouse.js","sources":["../../../../src/hooks/useMouse/useMouse.ts"],"sourcesContent":["import React from 'react';\n\nimport { useIsomorphicLayoutEffect } from '../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect';\n\n/** The use mouse target element type */\ntype UseMouseTarget = React.RefObject<Element | null> | (() => Element) | Element;\n\n/** Function to get target element based on its type */\nconst getElement = (target: UseMouseTarget) => {\n if (typeof target === 'function') {\n return target();\n }\n\n if (target instanceof Element) {\n return target;\n }\n\n return target.current;\n};\n\n/** The use mouse return type */\nexport interface UseMouseReturn {\n /** The current mouse x position */\n x: number;\n /** The current mouse y position */\n y: number;\n /** The current element x position */\n elementX: number;\n /** The current element y position */\n elementY: number;\n /** The current element position x */\n elementPositionX: number;\n /** The current element position y */\n elementPositionY: number;\n}\n\nexport type UseMouse = {\n <Target extends UseMouseTarget>(target: Target): UseMouseReturn;\n\n <Target extends UseMouseTarget>(\n target?: never\n ): UseMouseReturn & { ref: React.RefObject<Target> };\n};\n\n/**\n * @name useMouse\n * @description - Hook that manages a mouse position\n *\n * @overload\n * @template Target The target element\n * @param {Target} target The target element to manage the mouse position for\n * @returns {UseMouseReturn} An object with the current mouse position\n *\n * @example\n * const { x, y, elementX, elementY, elementPositionX, elementPositionY } = useMouse(target);\n *\n * @overload\n * @template Target The target element\n * @returns {UseMouseReturn & { ref: React.RefObject<Target> }} An object with the current mouse position and a ref\n *\n * @example\n * const { ref, x, y, elementX, elementY, elementPositionX, elementPositionY } = useMouse();\n */\nexport const useMouse = ((...params: any[]) => {\n const target = params[0] as UseMouseTarget | undefined;\n\n const [value, setValue] = React.useState({\n x: 0,\n y: 0,\n elementX: 0,\n elementY: 0,\n elementPositionX: 0,\n elementPositionY: 0\n });\n\n const internalRef = React.useRef<Element>(null);\n\n useIsomorphicLayoutEffect(() => {\n const onMouseMove = (event: MouseEvent) => {\n const element = target ? getElement(target) : internalRef.current;\n if (!element) return;\n\n const updatedValue = {\n x: event.pageX,\n y: event.pageY\n } as typeof value;\n\n const { left, top } = element.getBoundingClientRect();\n const elementPositionX = left + window.scrollX;\n const elementPositionY = top + window.scrollY;\n const elementX = event.pageX - elementPositionX;\n const elementY = event.pageY - elementPositionY;\n\n updatedValue.elementX = elementX;\n updatedValue.elementY = elementY;\n updatedValue.elementPositionX = elementPositionX;\n updatedValue.elementPositionY = elementPositionY;\n\n setValue((prevValue) => ({\n ...prevValue,\n ...updatedValue\n }));\n };\n\n document.addEventListener('mousemove', onMouseMove);\n\n return () => {\n document.removeEventListener('mousemove', onMouseMove);\n };\n }, []);\n\n if (target) return value;\n return { ...value, ref: internalRef };\n}) as UseMouse;\n"],"names":["useMouse","_len","arguments","length","params","Array","_key","target","_React$useState","React","useState","x","y","elementX","elementY","elementPositionX","elementPositionY","_React$useState2","_slicedToArray","value","setValue","internalRef","useRef","useIsomorphicLayoutEffect","onMouseMove","event","element","Element","current","getElement","updatedValue","pageX","pageY","_element$getBoundingC","getBoundingClientRect","left","top","window","scrollX","scrollY","prevValue","_objectSpread","document","addEventListener","removeEventListener","ref"],"mappings":";0OAQA,IAuDaA,EAAY,WAAsB,IAAA,IAAAC,EAAAC,UAAAC,OAAlBC,EAAMC,IAAAA,MAAAJ,GAAAK,EAAA,EAAAA,EAAAL,EAAAK,IAANF,EAAME,GAAAJ,UAAAI,GACjC,IAAMC,EAASH,EAAO,GAEtBI,EAA0BC,EAAMC,SAAS,CACvCC,EAAG,EACHC,EAAG,EACHC,SAAU,EACVC,SAAU,EACVC,iBAAkB,EAClBC,iBAAkB,IAClBC,EAAAC,EAAAV,EAAA,GAPKW,EAAKF,EAAA,GAAEG,EAAQH,EAAA,GAShBI,EAAcZ,EAAMa,OAAgB,MAoC1C,OAlCAC,GAA0B,WACxB,IAAMC,EAAc,SAACC,GACnB,IAAMC,EAAUnB,EAvEH,SAACA,GAClB,MAAsB,mBAAXA,EACFA,IAGLA,aAAkBoB,QACbpB,EAGFA,EAAOqB,OAChB,CA6D+BC,CAAWtB,GAAUc,EAAYO,QAC1D,GAAKF,EAAL,CAEA,IAAMI,EAAe,CACnBnB,EAAGc,EAAMM,MACTnB,EAAGa,EAAMO,OAGXC,EAAsBP,EAAQQ,wBAAtBC,EAAIF,EAAJE,KAAMC,EAAGH,EAAHG,IACRrB,EAAmBoB,EAAOE,OAAOC,QACjCtB,EAAmBoB,EAAMC,OAAOE,QAChC1B,EAAWY,EAAMM,MAAQhB,EACzBD,EAAWW,EAAMO,MAAQhB,EAE/Bc,EAAajB,SAAWA,EACxBiB,EAAahB,SAAWA,EACxBgB,EAAaf,iBAAmBA,EAChCe,EAAad,iBAAmBA,EAEhCI,GAAS,SAACoB,GAAS,OAAAC,EAAAA,EACdD,CAAAA,EAAAA,GACAV,EAAY,GApBH,GA0BhB,OAFAY,SAASC,iBAAiB,YAAanB,GAEhC,WACLkB,SAASE,oBAAoB,YAAapB,GAE7C,GAAE,IAECjB,EAAeY,EACnBsB,EAAAA,EAAA,CAAA,EAAYtB,GAAK,CAAA,EAAA,CAAE0B,IAAKxB,GAC1B"}
1
+ {"version":3,"file":"useMouse.js","sources":["../../../../src/hooks/useMouse/useMouse.ts"],"sourcesContent":["import type { RefObject } from 'react';\nimport { useRef, useState } from 'react';\n\nimport { useIsomorphicLayoutEffect } from '../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect';\n\n/** The use mouse target element type */\ntype UseMouseTarget = RefObject<Element | null> | (() => Element) | Element;\n\n/** Function to get target element based on its type */\nconst getElement = (target: UseMouseTarget) => {\n if (typeof target === 'function') {\n return target();\n }\n\n if (target instanceof Element) {\n return target;\n }\n\n return target.current;\n};\n\n/** The use mouse return type */\nexport interface UseMouseReturn {\n /** The current mouse x position */\n x: number;\n /** The current mouse y position */\n y: number;\n /** The current element x position */\n elementX: number;\n /** The current element y position */\n elementY: number;\n /** The current element position x */\n elementPositionX: number;\n /** The current element position y */\n elementPositionY: number;\n}\n\nexport type UseMouse = {\n <Target extends UseMouseTarget>(target: Target): UseMouseReturn;\n\n <Target extends UseMouseTarget>(target?: never): UseMouseReturn & { ref: RefObject<Target> };\n};\n\n/**\n * @name useMouse\n * @description - Hook that manages a mouse position\n *\n * @overload\n * @template Target The target element\n * @param {Target} target The target element to manage the mouse position for\n * @returns {UseMouseReturn} An object with the current mouse position\n *\n * @example\n * const { x, y, elementX, elementY, elementPositionX, elementPositionY } = useMouse(target);\n *\n * @overload\n * @template Target The target element\n * @returns {UseMouseReturn & { ref: RefObject<Target> }} An object with the current mouse position and a ref\n *\n * @example\n * const { ref, x, y, elementX, elementY, elementPositionX, elementPositionY } = useMouse();\n */\nexport const useMouse = ((...params: any[]) => {\n const target = params[0] as UseMouseTarget | undefined;\n\n const [value, setValue] = useState({\n x: 0,\n y: 0,\n elementX: 0,\n elementY: 0,\n elementPositionX: 0,\n elementPositionY: 0\n });\n\n const internalRef = useRef<Element>(null);\n\n useIsomorphicLayoutEffect(() => {\n const onMouseMove = (event: MouseEvent) => {\n const element = target ? getElement(target) : internalRef.current;\n if (!element) return;\n\n const updatedValue = {\n x: event.pageX,\n y: event.pageY\n } as typeof value;\n\n const { left, top } = element.getBoundingClientRect();\n const elementPositionX = left + window.scrollX;\n const elementPositionY = top + window.scrollY;\n const elementX = event.pageX - elementPositionX;\n const elementY = event.pageY - elementPositionY;\n\n updatedValue.elementX = elementX;\n updatedValue.elementY = elementY;\n updatedValue.elementPositionX = elementPositionX;\n updatedValue.elementPositionY = elementPositionY;\n\n setValue((prevValue) => ({\n ...prevValue,\n ...updatedValue\n }));\n };\n\n document.addEventListener('mousemove', onMouseMove);\n\n return () => {\n document.removeEventListener('mousemove', onMouseMove);\n };\n }, []);\n\n if (target) return value;\n return { ...value, ref: internalRef };\n}) as UseMouse;\n"],"names":["useMouse","_len","arguments","length","params","Array","_key","target","_useState","useState","x","y","elementX","elementY","elementPositionX","elementPositionY","_useState2","_slicedToArray","value","setValue","internalRef","useRef","useIsomorphicLayoutEffect","onMouseMove","event","element","Element","current","getElement","updatedValue","pageX","pageY","_element$getBoundingC","getBoundingClientRect","left","top","window","scrollX","scrollY","prevValue","_objectSpread","document","addEventListener","removeEventListener","ref"],"mappings":";kQASA,IAqDaA,EAAY,WAAsB,IAAA,IAAAC,EAAAC,UAAAC,OAAlBC,EAAMC,IAAAA,MAAAJ,GAAAK,EAAA,EAAAA,EAAAL,EAAAK,IAANF,EAAME,GAAAJ,UAAAI,GACjC,IAAMC,EAASH,EAAO,GAEtBI,EAA0BC,EAAS,CACjCC,EAAG,EACHC,EAAG,EACHC,SAAU,EACVC,SAAU,EACVC,iBAAkB,EAClBC,iBAAkB,IAClBC,EAAAC,EAAAT,EAAA,GAPKU,EAAKF,EAAA,GAAEG,EAAQH,EAAA,GAShBI,EAAcC,EAAgB,MAoCpC,OAlCAC,GAA0B,WACxB,IAAMC,EAAc,SAACC,GACnB,IAAMC,EAAUlB,EArEH,SAACA,GAClB,MAAsB,mBAAXA,EACFA,IAGLA,aAAkBmB,QACbnB,EAGFA,EAAOoB,OAChB,CA2D+BC,CAAWrB,GAAUa,EAAYO,QAC1D,GAAKF,EAAL,CAEA,IAAMI,EAAe,CACnBnB,EAAGc,EAAMM,MACTnB,EAAGa,EAAMO,OAGXC,EAAsBP,EAAQQ,wBAAtBC,EAAIF,EAAJE,KAAMC,EAAGH,EAAHG,IACRrB,EAAmBoB,EAAOE,OAAOC,QACjCtB,EAAmBoB,EAAMC,OAAOE,QAChC1B,EAAWY,EAAMM,MAAQhB,EACzBD,EAAWW,EAAMO,MAAQhB,EAE/Bc,EAAajB,SAAWA,EACxBiB,EAAahB,SAAWA,EACxBgB,EAAaf,iBAAmBA,EAChCe,EAAad,iBAAmBA,EAEhCI,GAAS,SAACoB,GAAS,OAAAC,EAAAA,EACdD,CAAAA,EAAAA,GACAV,EAAY,GApBH,GA0BhB,OAFAY,SAASC,iBAAiB,YAAanB,GAEhC,WACLkB,SAASE,oBAAoB,YAAapB,GAE7C,GAAE,IAEChB,EAAeW,EACnBsB,EAAAA,EAAA,CAAA,EAAYtB,GAAK,CAAA,EAAA,CAAE0B,IAAKxB,GAC1B"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.28 */
2
- import{_ as r,e as t,f as e}from"../../_rollupPluginBabelHelpers-DsV9C8-q.js";import n from"react";import{getRetry as u}from"../../utils/helpers/getRetry.js";import"../../utils/helpers/isClient.js";var l=function(l,s){var a=n.useRef(null!=s&&s.retry?u(s.retry):0),o=n.useState(!1),i=r(o,2),c=i[0],f=i[1],p=n.useState(!1),m=r(p,2),v=m[0],y=m[1],S=n.useState(!1),h=r(S,2),d=h[0],g=h[1],j=n.useState(null),b=r(j,2),w=b[0],x=b[1],E=n.useState(null),R=r(E,2),_=R[0],k=R[1],A=function r(t){return f(!0),l(t).then((function(r){var t;return null==s||null===(t=s.onSuccess)||void 0===t||t.call(s,r),k(r),g(!0),f(!1),x(null),y(!1),r})).catch((function(e){var n;if(a.current>0)return a.current-=1,r(t);null==s||null===(n=s.onError)||void 0===n||n.call(s,e),k(null),g(!1),f(!1),x(e),y(!0),a.current=null!=s&&s.retry?u(s.retry):0}))},B=function(){var r=t(e().mark((function r(t){return e().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.abrupt("return",A(t));case 1:case"end":return r.stop()}}),r)})));return function(t){return r.apply(this,arguments)}}();return{data:_,error:w,mutate:function(r){A(r)},mutateAsync:B,isLoading:c,isError:v,isSuccess:d}};export{l as useMutation};
1
+ /* @license @siberiacancode/reactuse v0.0.31 */
2
+ import{_ as r,e as n,f as t}from"../../_rollupPluginBabelHelpers-DmI4-Pc6.js";import{useRef as e,useState as u}from"react";import{getRetry as l}from"../../utils/helpers/getRetry.js";import"../../utils/helpers/isClient.js";var o=function(o,i){var c=e(null!=i&&i.retry?l(i.retry):0),s=u(!1),a=r(s,2),f=a[0],p=a[1],m=u(!1),v=r(m,2),y=v[0],h=v[1],d=u(!1),g=r(d,2),j=g[0],b=g[1],w=u(null),x=r(w,2),E=x[0],S=x[1],_=u(null),k=r(_,2),A=k[0],B=k[1],C=function r(n){return p(!0),o(n).then((function(r){var n;return null==i||null===(n=i.onSuccess)||void 0===n||n.call(i,r),B(r),b(!0),p(!1),S(null),h(!1),r})).catch((function(t){var e;if(c.current>0)return c.current-=1,r(n);null==i||null===(e=i.onError)||void 0===e||e.call(i,t),B(null),b(!1),p(!1),S(t),h(!0),c.current=null!=i&&i.retry?l(i.retry):0}))},H=function(){var r=n(t().mark((function r(n){return t().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.abrupt("return",C(n));case 1:case"end":return r.stop()}}),r)})));return function(n){return r.apply(this,arguments)}}();return{data:A,error:E,mutate:function(r){C(r)},mutateAsync:H,isLoading:f,isError:y,isSuccess:j}};export{o as useMutation};
3
3
  //# sourceMappingURL=useMutation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useMutation.js","sources":["../../../../src/hooks/useMutation/useMutation.ts"],"sourcesContent":["import React from 'react';\n\nimport { getRetry } from '@/utils/helpers';\n\n/* The type of the options */\ninterface UseMutationOptions<Data> {\n /* The retry count of requests */\n retry?: boolean | number;\n /* The callback function to be invoked on success */\n onSuccess?: (data: Data) => void;\n /* The callback function to be invoked on error */\n onError?: (error: Error) => void;\n}\n\n/* The use mutation return type */\ninterface UseMutationReturn<Body, Data> {\n /* The data of the mutation */\n data: Data | null;\n /* The error of the mutation */\n error: Error | null;\n /* The mutate function */\n mutate: (body: Body) => void;\n /* The mutate async function */\n mutateAsync: (body: Body) => Promise<Data>;\n /* The loading state of the mutation */\n isLoading: boolean;\n /* The error state of the mutation */\n isError: boolean;\n /* The success state of the mutation */\n isSuccess: boolean;\n}\n\n/**\n * @name useMutation\n * @description - Hook that defines the logic when mutate data\n *\n * @template Body - The type of the body\n * @template Data - The type of the data\n * @param {(body: Body) => Promise<Data>} callback - The callback function to be invoked\n * @param {boolean | number} [options.retry] - The retry count of requests\n * @param {(data: Data) => void} [options.onSuccess] - The callback function to be invoked on success\n * @param {(error: Error) => void} [options.onError] - The callback function to be invoked on error\n * @returns {UseMutationReturn<Data>} An object with the state of the mutation\n *\n * @example\n * const { mutate, mutateAsync, isLoading, isError, isSuccess, error, data } = useMutation((name) => Promise.resolve(name));\n */\nexport const useMutation = <Body, Data>(\n callback: (body: Body) => Promise<Data>,\n options?: UseMutationOptions<Data>\n) => {\n const retryCountRef = React.useRef(options?.retry ? getRetry(options.retry) : 0);\n\n const [isLoading, setIsLoading] = React.useState(false);\n const [isError, setIsError] = React.useState(false);\n const [isSuccess, setIsSuccess] = React.useState(false);\n\n const [error, setError] = React.useState<Error | null>(null);\n const [data, setData] = React.useState<Data | null>(null);\n\n const request = (body: Body): Promise<Data | undefined> => {\n setIsLoading(true);\n\n return callback(body)\n .then((response) => {\n options?.onSuccess?.(response);\n setData(response);\n setIsSuccess(true);\n setIsLoading(false);\n setError(null);\n setIsError(false);\n return response;\n })\n .catch((error: Error) => {\n if (retryCountRef.current > 0) {\n retryCountRef.current -= 1;\n return request(body);\n }\n\n options?.onError?.(error);\n setData(null);\n setIsSuccess(false);\n setIsLoading(false);\n setError(error);\n setIsError(true);\n retryCountRef.current = options?.retry ? getRetry(options.retry) : 0;\n });\n };\n const mutate = (body: Body): void => {\n request(body);\n };\n\n const mutateAsync = async (body: Body) => request(body) as Promise<Data>;\n\n return {\n data,\n error,\n mutate,\n mutateAsync,\n isLoading,\n isError,\n isSuccess\n } as UseMutationReturn<Body, Data>;\n};\n"],"names":["useMutation","callback","options","retryCountRef","React","useRef","retry","getRetry","_React$useState","useState","_React$useState2","_slicedToArray","isLoading","setIsLoading","_React$useState3","_React$useState4","isError","setIsError","_React$useState5","_React$useState6","isSuccess","setIsSuccess","_React$useState7","_React$useState8","error","setError","_React$useState9","_React$useState10","data","setData","request","body","then","response","_options$onSuccess","onSuccess","call","_options$onError","current","onError","mutateAsync","_ref","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_context","prev","next","abrupt","stop","_x","apply","this","arguments","mutate"],"mappings":";sMA+CO,IAAMA,EAAc,SACzBC,EACAC,GAEA,IAAMC,EAAgBC,EAAMC,OAAOH,SAAAA,EAASI,MAAQC,EAASL,EAAQI,OAAS,GAE9EE,EAAkCJ,EAAMK,UAAS,GAAMC,EAAAC,EAAAH,EAAA,GAAhDI,EAASF,EAAA,GAAEG,EAAYH,EAAA,GAC9BI,EAA8BV,EAAMK,UAAS,GAAMM,EAAAJ,EAAAG,EAAA,GAA5CE,EAAOD,EAAA,GAAEE,EAAUF,EAAA,GAC1BG,EAAkCd,EAAMK,UAAS,GAAMU,EAAAR,EAAAO,EAAA,GAAhDE,EAASD,EAAA,GAAEE,EAAYF,EAAA,GAE9BG,EAA0BlB,EAAMK,SAAuB,MAAKc,EAAAZ,EAAAW,EAAA,GAArDE,EAAKD,EAAA,GAAEE,EAAQF,EAAA,GACtBG,EAAwBtB,EAAMK,SAAsB,MAAKkB,EAAAhB,EAAAe,EAAA,GAAlDE,EAAID,EAAA,GAAEE,EAAOF,EAAA,GAEdG,EAAU,SAAVA,EAAWC,GAGf,OAFAlB,GAAa,GAENZ,EAAS8B,GACbC,MAAK,SAACC,GAAa,IAAAC,EAOlB,OANAhC,SAAkB,QAAXgC,EAAPhC,EAASiC,iBAAS,IAAAD,GAAlBA,EAAAE,KAAAlC,EAAqB+B,GACrBJ,EAAQI,GACRZ,GAAa,GACbR,GAAa,GACbY,EAAS,MACTR,GAAW,GACJgB,CACT,IAAE,OACK,SAACT,GAAiB,IAAAa,EACvB,GAAIlC,EAAcmC,QAAU,EAE1B,OADAnC,EAAcmC,SAAW,EAClBR,EAAQC,GAGjB7B,SAAgB,QAATmC,EAAPnC,EAASqC,eAAO,IAAAF,GAAhBA,EAAAD,KAAAlC,EAAmBsB,GACnBK,EAAQ,MACRR,GAAa,GACbR,GAAa,GACbY,EAASD,GACTP,GAAW,GACXd,EAAcmC,QAAUpC,SAAAA,EAASI,MAAQC,EAASL,EAAQI,OAAS,CACrE,KAMEkC,EAAW,WAAA,IAAAC,EAAAC,EAAAC,IAAAC,MAAG,SAAAC,EAAOd,GAAU,OAAAY,IAAAG,MAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,KAAA,EAAA,OAAAF,EAAAG,gBAAKpB,EAAQC,IAAK,KAAA,EAAA,IAAA,MAAA,OAAAgB,EAAAI,OAAA,GAAAN,EAAiB,KAAA,OAAlEL,SAAWY,GAAA,OAAAX,EAAAY,MAAAC,KAAAC,UAAA,EAAA,GAEjB,MAAO,CACL3B,KAAAA,EACAJ,MAAAA,EACAgC,OATa,SAACzB,GACdD,EAAQC,IASRS,YAAAA,EACA5B,UAAAA,EACAI,QAAAA,EACAI,UAAAA,EAEJ"}
1
+ {"version":3,"file":"useMutation.js","sources":["../../../../src/hooks/useMutation/useMutation.ts"],"sourcesContent":["import { useRef, useState } from 'react';\n\nimport { getRetry } from '@/utils/helpers';\n\n/* The type of the options */\ninterface UseMutationOptions<Data> {\n /* The retry count of requests */\n retry?: boolean | number;\n /* The callback function to be invoked on success */\n onSuccess?: (data: Data) => void;\n /* The callback function to be invoked on error */\n onError?: (error: Error) => void;\n}\n\n/* The use mutation return type */\ninterface UseMutationReturn<Body, Data> {\n /* The data of the mutation */\n data: Data | null;\n /* The error of the mutation */\n error: Error | null;\n /* The mutate function */\n mutate: (body: Body) => void;\n /* The mutate async function */\n mutateAsync: (body: Body) => Promise<Data>;\n /* The loading state of the mutation */\n isLoading: boolean;\n /* The error state of the mutation */\n isError: boolean;\n /* The success state of the mutation */\n isSuccess: boolean;\n}\n\n/**\n * @name useMutation\n * @description - Hook that defines the logic when mutate data\n *\n * @template Body - The type of the body\n * @template Data - The type of the data\n * @param {(body: Body) => Promise<Data>} callback - The callback function to be invoked\n * @param {boolean | number} [options.retry] - The retry count of requests\n * @param {(data: Data) => void} [options.onSuccess] - The callback function to be invoked on success\n * @param {(error: Error) => void} [options.onError] - The callback function to be invoked on error\n * @returns {UseMutationReturn<Data>} An object with the state of the mutation\n *\n * @example\n * const { mutate, mutateAsync, isLoading, isError, isSuccess, error, data } = useMutation((name) => Promise.resolve(name));\n */\nexport const useMutation = <Body, Data>(\n callback: (body: Body) => Promise<Data>,\n options?: UseMutationOptions<Data>\n) => {\n const retryCountRef = useRef(options?.retry ? getRetry(options.retry) : 0);\n\n const [isLoading, setIsLoading] = useState(false);\n const [isError, setIsError] = useState(false);\n const [isSuccess, setIsSuccess] = useState(false);\n\n const [error, setError] = useState<Error | null>(null);\n const [data, setData] = useState<Data | null>(null);\n\n const request = (body: Body): Promise<Data | undefined> => {\n setIsLoading(true);\n\n return callback(body)\n .then((response) => {\n options?.onSuccess?.(response);\n setData(response);\n setIsSuccess(true);\n setIsLoading(false);\n setError(null);\n setIsError(false);\n return response;\n })\n .catch((error: Error) => {\n if (retryCountRef.current > 0) {\n retryCountRef.current -= 1;\n return request(body);\n }\n\n options?.onError?.(error);\n setData(null);\n setIsSuccess(false);\n setIsLoading(false);\n setError(error);\n setIsError(true);\n retryCountRef.current = options?.retry ? getRetry(options.retry) : 0;\n });\n };\n const mutate = (body: Body): void => {\n request(body);\n };\n\n const mutateAsync = async (body: Body) => request(body) as Promise<Data>;\n\n return {\n data,\n error,\n mutate,\n mutateAsync,\n isLoading,\n isError,\n isSuccess\n } as UseMutationReturn<Body, Data>;\n};\n"],"names":["useMutation","callback","options","retryCountRef","useRef","retry","getRetry","_useState","useState","_useState2","_slicedToArray","isLoading","setIsLoading","_useState3","_useState4","isError","setIsError","_useState5","_useState6","isSuccess","setIsSuccess","_useState7","_useState8","error","setError","_useState9","_useState10","data","setData","request","body","then","response","_options$onSuccess","onSuccess","call","_options$onError","current","onError","mutateAsync","_ref","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_context","prev","next","abrupt","stop","_x","apply","this","arguments","mutate"],"mappings":";8NA+CO,IAAMA,EAAc,SACzBC,EACAC,GAEA,IAAMC,EAAgBC,EAAOF,SAAAA,EAASG,MAAQC,EAASJ,EAAQG,OAAS,GAExEE,EAAkCC,GAAS,GAAMC,EAAAC,EAAAH,EAAA,GAA1CI,EAASF,EAAA,GAAEG,EAAYH,EAAA,GAC9BI,EAA8BL,GAAS,GAAMM,EAAAJ,EAAAG,EAAA,GAAtCE,EAAOD,EAAA,GAAEE,EAAUF,EAAA,GAC1BG,EAAkCT,GAAS,GAAMU,EAAAR,EAAAO,EAAA,GAA1CE,EAASD,EAAA,GAAEE,EAAYF,EAAA,GAE9BG,EAA0Bb,EAAuB,MAAKc,EAAAZ,EAAAW,EAAA,GAA/CE,EAAKD,EAAA,GAAEE,EAAQF,EAAA,GACtBG,EAAwBjB,EAAsB,MAAKkB,EAAAhB,EAAAe,EAAA,GAA5CE,EAAID,EAAA,GAAEE,EAAOF,EAAA,GAEdG,EAAU,SAAVA,EAAWC,GAGf,OAFAlB,GAAa,GAENX,EAAS6B,GACbC,MAAK,SAACC,GAAa,IAAAC,EAOlB,OANA/B,SAAkB,QAAX+B,EAAP/B,EAASgC,iBAAS,IAAAD,GAAlBA,EAAAE,KAAAjC,EAAqB8B,GACrBJ,EAAQI,GACRZ,GAAa,GACbR,GAAa,GACbY,EAAS,MACTR,GAAW,GACJgB,CACT,IAAE,OACK,SAACT,GAAiB,IAAAa,EACvB,GAAIjC,EAAckC,QAAU,EAE1B,OADAlC,EAAckC,SAAW,EAClBR,EAAQC,GAGjB5B,SAAgB,QAATkC,EAAPlC,EAASoC,eAAO,IAAAF,GAAhBA,EAAAD,KAAAjC,EAAmBqB,GACnBK,EAAQ,MACRR,GAAa,GACbR,GAAa,GACbY,EAASD,GACTP,GAAW,GACXb,EAAckC,QAAUnC,SAAAA,EAASG,MAAQC,EAASJ,EAAQG,OAAS,CACrE,KAMEkC,EAAW,WAAA,IAAAC,EAAAC,EAAAC,IAAAC,MAAG,SAAAC,EAAOd,GAAU,OAAAY,IAAAG,MAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,KAAA,EAAA,OAAAF,EAAAG,gBAAKpB,EAAQC,IAAK,KAAA,EAAA,IAAA,MAAA,OAAAgB,EAAAI,OAAA,GAAAN,EAAiB,KAAA,OAAlEL,SAAWY,GAAA,OAAAX,EAAAY,MAAAC,KAAAC,UAAA,EAAA,GAEjB,MAAO,CACL3B,KAAAA,EACAJ,MAAAA,EACAgC,OATa,SAACzB,GACdD,EAAQC,IASRS,YAAAA,EACA5B,UAAAA,EACAI,QAAAA,EACAI,UAAAA,EAEJ"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.28 */
2
- import r from"react";function e(e,n,t){var u=r.useRef(),c=r.useRef(null);return r.useEffect((function(){var r="function"==typeof t?t():t;return(r||c.current)&&(u.current=new MutationObserver(e),u.current.observe(r||c.current,n)),function(){var r;null===(r=u.current)||void 0===r||r.disconnect()}}),[e,n]),c}export{e as useMutationObserver};
1
+ /* @license @siberiacancode/reactuse v0.0.31 */
2
+ import{useRef as r,useEffect as n}from"react";function t(t,e,u){var c=r(),o=r(null);return n((function(){var r="function"==typeof u?u():u;return(r||o.current)&&(c.current=new MutationObserver(t),c.current.observe(r||o.current,e)),function(){var r;null===(r=c.current)||void 0===r||r.disconnect()}}),[t,e]),o}export{t as useMutationObserver};
3
3
  //# sourceMappingURL=useMutationObserver.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useMutationObserver.js","sources":["../../../src/hooks/useMutationObserver.ts"],"sourcesContent":["import type { RefObject } from 'react';\nimport React from 'react';\n\nexport function useMutationObserver<Element extends HTMLElement>(\n callback: MutationCallback,\n options: MutationObserverInit,\n target?: HTMLElement | (() => HTMLElement) | null\n) {\n const observer = React.useRef<MutationObserver>();\n const ref: RefObject<Element> = React.useRef(null);\n\n React.useEffect(() => {\n const targetElement = typeof target === 'function' ? target() : target;\n\n if (targetElement || ref.current) {\n observer.current = new MutationObserver(callback);\n observer.current.observe(targetElement || ref.current!, options);\n }\n\n return () => {\n observer.current?.disconnect();\n };\n }, [callback, options]);\n\n return ref;\n}\n"],"names":["useMutationObserver","callback","options","target","observer","React","useRef","ref","useEffect","targetElement","current","MutationObserver","observe","_observer$current","disconnect"],"mappings":";qBAGO,SAASA,EACdC,EACAC,EACAC,GAEA,IAAMC,EAAWC,EAAMC,SACjBC,EAA0BF,EAAMC,OAAO,MAe7C,OAbAD,EAAMG,WAAU,WACd,IAAMC,EAAkC,mBAAXN,EAAwBA,IAAWA,EAOhE,OALIM,GAAiBF,EAAIG,WACvBN,EAASM,QAAU,IAAIC,iBAAiBV,GACxCG,EAASM,QAAQE,QAAQH,GAAiBF,EAAIG,QAAUR,IAGnD,WAAM,IAAAW,EACK,QAAhBA,EAAAT,EAASM,eAAO,IAAAG,GAAhBA,EAAkBC,aAEtB,GAAG,CAACb,EAAUC,IAEPK,CACT"}
1
+ {"version":3,"file":"useMutationObserver.js","sources":["../../../src/hooks/useMutationObserver.ts"],"sourcesContent":["import type { RefObject } from 'react';\nimport { useEffect, useRef } from 'react';\n\nexport function useMutationObserver<Element extends HTMLElement>(\n callback: MutationCallback,\n options: MutationObserverInit,\n target?: HTMLElement | (() => HTMLElement) | null\n) {\n const observer = useRef<MutationObserver>();\n const ref: RefObject<Element> = useRef(null);\n\n useEffect(() => {\n const targetElement = typeof target === 'function' ? target() : target;\n\n if (targetElement || ref.current) {\n observer.current = new MutationObserver(callback);\n observer.current.observe(targetElement || ref.current!, options);\n }\n\n return () => {\n observer.current?.disconnect();\n };\n }, [callback, options]);\n\n return ref;\n}\n"],"names":["useMutationObserver","callback","options","target","observer","useRef","ref","useEffect","targetElement","current","MutationObserver","observe","_observer$current","disconnect"],"mappings":";8CAGO,SAASA,EACdC,EACAC,EACAC,GAEA,IAAMC,EAAWC,IACXC,EAA0BD,EAAO,MAevC,OAbAE,GAAU,WACR,IAAMC,EAAkC,mBAAXL,EAAwBA,IAAWA,EAOhE,OALIK,GAAiBF,EAAIG,WACvBL,EAASK,QAAU,IAAIC,iBAAiBT,GACxCG,EAASK,QAAQE,QAAQH,GAAiBF,EAAIG,QAAUP,IAGnD,WAAM,IAAAU,EACK,QAAhBA,EAAAR,EAASK,eAAO,IAAAG,GAAhBA,EAAkBC,aAEtB,GAAG,CAACZ,EAAUC,IAEPI,CACT"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.28 */
2
- import{_ as n}from"../../_rollupPluginBabelHelpers-DsV9C8-q.js";import e from"react";import{isClient as i}from"../../utils/helpers/isClient.js";var o=function(){var n,e,i;return(null===(n=navigator)||void 0===n?void 0:n.connection)||(null===(e=navigator)||void 0===e?void 0:e.mozConnection)||(null===(i=navigator)||void 0===i?void 0:i.webkitConnection)},t=function(){var t=e.useState((function(){if(!i)return{online:!1,type:void 0,effectiveType:void 0,saveData:!1,downlink:0,downlinkMax:0,rtt:0};var n=navigator.onLine,e=o();return{online:n,downlink:null==e?void 0:e.downlink,downlinkMax:null==e?void 0:e.downlinkMax,effectiveType:null==e?void 0:e.effectiveType,rtt:null==e?void 0:e.rtt,saveData:null==e?void 0:e.saveData,type:null==e?void 0:e.type}})),l=n(t,2),v=l[0],a=l[1];return e.useEffect((function(){var n=function(){var n=navigator.onLine,e=o();a({online:n,downlink:null==e?void 0:e.downlink,downlinkMax:null==e?void 0:e.downlinkMax,effectiveType:null==e?void 0:e.effectiveType,rtt:null==e?void 0:e.rtt,saveData:null==e?void 0:e.saveData,type:null==e?void 0:e.type})};window.addEventListener("online",n,{passive:!0}),window.addEventListener("offline",n,{passive:!0});var e=o();return e&&e.addEventListener("change",n,{passive:!0}),function(){window.removeEventListener("online",n),window.removeEventListener("offline",n),e&&e.removeEventListener("change",n)}})),v};export{o as getConnection,t as useNetwork};
1
+ /* @license @siberiacancode/reactuse v0.0.31 */
2
+ import{_ as n}from"../../_rollupPluginBabelHelpers-DmI4-Pc6.js";import{useState as e,useEffect as i}from"react";import{isClient as o}from"../../utils/helpers/isClient.js";var t=function(){var n,e,i;return(null===(n=navigator)||void 0===n?void 0:n.connection)||(null===(e=navigator)||void 0===e?void 0:e.mozConnection)||(null===(i=navigator)||void 0===i?void 0:i.webkitConnection)},l=function(){var l=e((function(){if(!o)return{online:!1,type:void 0,effectiveType:void 0,saveData:!1,downlink:0,downlinkMax:0,rtt:0};var n=navigator.onLine,e=t();return{online:n,downlink:null==e?void 0:e.downlink,downlinkMax:null==e?void 0:e.downlinkMax,effectiveType:null==e?void 0:e.effectiveType,rtt:null==e?void 0:e.rtt,saveData:null==e?void 0:e.saveData,type:null==e?void 0:e.type}})),v=n(l,2),a=v[0],r=v[1];return i((function(){var n=function(){var n=navigator.onLine,e=t();r({online:n,downlink:null==e?void 0:e.downlink,downlinkMax:null==e?void 0:e.downlinkMax,effectiveType:null==e?void 0:e.effectiveType,rtt:null==e?void 0:e.rtt,saveData:null==e?void 0:e.saveData,type:null==e?void 0:e.type})};window.addEventListener("online",n,{passive:!0}),window.addEventListener("offline",n,{passive:!0});var e=t();return e&&e.addEventListener("change",n,{passive:!0}),function(){window.removeEventListener("online",n),window.removeEventListener("offline",n),e&&e.removeEventListener("change",n)}})),a};export{t as getConnection,l as useNetwork};
3
3
  //# sourceMappingURL=useNetwork.js.map