@siberiacancode/reactuse 0.0.75 → 0.0.77

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 (323) hide show
  1. package/LICENSE +21 -21
  2. package/dist/cjs/{_rollupPluginBabelHelpers-DQxhXgk7.js → _rollupPluginBabelHelpers-n1mTP8al.js} +2 -2
  3. package/dist/cjs/_rollupPluginBabelHelpers-n1mTP8al.js.map +1 -0
  4. package/dist/cjs/hooks/index.js +2 -2
  5. package/dist/cjs/hooks/useActiveElement/useActiveElement.js +2 -2
  6. package/dist/cjs/hooks/useActiveElement/useActiveElement.js.map +1 -1
  7. package/dist/cjs/hooks/useAsync/useAsync.js +2 -2
  8. package/dist/cjs/hooks/useBattery/useBattery.js +2 -2
  9. package/dist/cjs/hooks/useBoolean/useBoolean.js +2 -2
  10. package/dist/cjs/hooks/useBreakpoints/constants/breakpoints.js +1 -1
  11. package/dist/cjs/hooks/useBreakpoints/useBreakpoints.js +2 -2
  12. package/dist/cjs/hooks/useBrowserLanguage/useBrowserLanguage.js +1 -1
  13. package/dist/cjs/hooks/useClickOutside/useClickOutside.js +2 -2
  14. package/dist/cjs/hooks/useClickOutside/useClickOutside.js.map +1 -1
  15. package/dist/cjs/hooks/useClipboard/useClipboard.js +2 -2
  16. package/dist/cjs/hooks/useCounter/useCounter.js +2 -2
  17. package/dist/cjs/hooks/useCssVar/useCssVar.js +2 -2
  18. package/dist/cjs/hooks/useCssVar/useCssVar.js.map +1 -1
  19. package/dist/cjs/hooks/useDebounceCallback/useDebounceCallback.js +2 -2
  20. package/dist/cjs/hooks/useDebounceCallback/useDebounceCallback.js.map +1 -1
  21. package/dist/cjs/hooks/useDebounceValue/useDebounceValue.js +2 -2
  22. package/dist/cjs/hooks/useDebounceValue/useDebounceValue.js.map +1 -1
  23. package/dist/cjs/hooks/useDefault/useDefault.js +2 -2
  24. package/dist/cjs/hooks/useDeviceMotion/useDeviceMotion.js +2 -2
  25. package/dist/cjs/hooks/useDeviceMotion/useDeviceMotion.js.map +1 -1
  26. package/dist/cjs/hooks/useDeviceOrientation/useDeviceOrientation.js +2 -2
  27. package/dist/cjs/hooks/useDidUpdate/useDidUpdate.js +1 -1
  28. package/dist/cjs/hooks/useDisclosure/useDisclosure.js +2 -2
  29. package/dist/cjs/hooks/useDocumentEvent/useDocumentEvent.js +2 -2
  30. package/dist/cjs/hooks/useDocumentEvent/useDocumentEvent.js.map +1 -1
  31. package/dist/cjs/hooks/useDocumentTitle/useDocumentTitle.js +2 -2
  32. package/dist/cjs/hooks/useDocumentVisibility/useDocumentVisibility.js +1 -1
  33. package/dist/cjs/hooks/useElementSize/useElementSize.js +2 -2
  34. package/dist/cjs/hooks/useElementSize/useElementSize.js.map +1 -1
  35. package/dist/cjs/hooks/useEvent/useEvent.js +1 -1
  36. package/dist/cjs/hooks/useEventListener/useEventListener.js +2 -2
  37. package/dist/cjs/hooks/useEventListener/useEventListener.js.map +1 -1
  38. package/dist/cjs/hooks/useEyeDropper/useEyeDropper.js +2 -2
  39. package/dist/cjs/hooks/useFavicon/useFavicon.js +2 -2
  40. package/dist/cjs/hooks/useField/useField.js +2 -2
  41. package/dist/cjs/hooks/useFileDialog/useFileDialog.js +2 -2
  42. package/dist/cjs/hooks/useFocus/useFocus.js +2 -2
  43. package/dist/cjs/hooks/useFocus/useFocus.js.map +1 -1
  44. package/dist/cjs/hooks/useFps/useFps.js +2 -2
  45. package/dist/cjs/hooks/useFullscreen/useFullscreen.js +2 -2
  46. package/dist/cjs/hooks/useFullscreen/useFullscreen.js.map +1 -1
  47. package/dist/cjs/hooks/useGamepad/helpers/mapGamepadToXbox360Controller.js +1 -1
  48. package/dist/cjs/hooks/useGamepad/useGamepad.js +2 -2
  49. package/dist/cjs/hooks/useGeolocation/useGeolocation.js +2 -2
  50. package/dist/cjs/hooks/useHash/useHash.js +2 -2
  51. package/dist/cjs/hooks/useHotkeys/useHotkeys.js +2 -2
  52. package/dist/cjs/hooks/useHover/useHover.js +2 -2
  53. package/dist/cjs/hooks/useHover/useHover.js.map +1 -1
  54. package/dist/cjs/hooks/useIdle/useIdle.js +2 -2
  55. package/dist/cjs/hooks/useIdle/useIdle.js.map +1 -1
  56. package/dist/cjs/hooks/useImage/useImage.js +2 -2
  57. package/dist/cjs/hooks/useInfiniteScroll/useInfiniteScroll.js +2 -2
  58. package/dist/cjs/hooks/useInfiniteScroll/useInfiniteScroll.js.map +1 -1
  59. package/dist/cjs/hooks/useIntersectionObserver/useIntersectionObserver.js +2 -2
  60. package/dist/cjs/hooks/useIntersectionObserver/useIntersectionObserver.js.map +1 -1
  61. package/dist/cjs/hooks/useInterval/useInterval.js +2 -2
  62. package/dist/cjs/hooks/useIsFirstRender/useIsFirstRender.js +1 -1
  63. package/dist/cjs/hooks/useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js +1 -1
  64. package/dist/cjs/hooks/useKeyPress/useKeyPress.js +2 -2
  65. package/dist/cjs/hooks/useKeyPress/useKeyPress.js.map +1 -1
  66. package/dist/cjs/hooks/useKeyPressEvent/useKeyPressEvent.js +2 -2
  67. package/dist/cjs/hooks/useKeyPressEvent/useKeyPressEvent.js.map +1 -1
  68. package/dist/cjs/hooks/useKeyboard/useKeyboard.js +2 -2
  69. package/dist/cjs/hooks/useKeyboard/useKeyboard.js.map +1 -1
  70. package/dist/cjs/hooks/useKeysPressed/useKeysPressed.js +2 -2
  71. package/dist/cjs/hooks/useLastChanged/useLastChanged.js +2 -2
  72. package/dist/cjs/hooks/useList/useList.js +2 -2
  73. package/dist/cjs/hooks/useLocalStorage/useLocalStorage.js +2 -2
  74. package/dist/cjs/hooks/useLogger/useLogger.js +2 -2
  75. package/dist/cjs/hooks/useLongPress/useLongPress.js +2 -2
  76. package/dist/cjs/hooks/useMap/useMap.js +2 -2
  77. package/dist/cjs/hooks/useMeasure/useMeasure.js +2 -2
  78. package/dist/cjs/hooks/useMeasure/useMeasure.js.map +1 -1
  79. package/dist/cjs/hooks/useMediaQuery/useMediaQuery.js +1 -1
  80. package/dist/cjs/hooks/useMemory/useMemory.js +2 -2
  81. package/dist/cjs/hooks/useMount/useMount.js +1 -1
  82. package/dist/cjs/hooks/useMouse/useMouse.js +2 -2
  83. package/dist/cjs/hooks/useMouse/useMouse.js.map +1 -1
  84. package/dist/cjs/hooks/useMutation/useMutation.js +2 -2
  85. package/dist/cjs/hooks/useMutationObserver/useMutationObserver.js +2 -2
  86. package/dist/cjs/hooks/useMutationObserver/useMutationObserver.js.map +1 -1
  87. package/dist/cjs/hooks/useNetwork/useNetwork.js +2 -2
  88. package/dist/cjs/hooks/useOffsetPagination/useOffsetPagination.js +2 -2
  89. package/dist/cjs/hooks/useOnline/useOnline.js +1 -1
  90. package/dist/cjs/hooks/useOperatingSystem/useOperatingSystem.js +1 -1
  91. package/dist/cjs/hooks/useOptimistic/useOptimistic.js +2 -2
  92. package/dist/cjs/hooks/useOrientation/useOrientation.js +2 -2
  93. package/dist/cjs/hooks/useOtpCredential/useOtpCredential.js +2 -2
  94. package/dist/cjs/hooks/usePageLeave/usePageLeave.js +2 -2
  95. package/dist/cjs/hooks/usePaint/helpers/Paint.js +2 -2
  96. package/dist/cjs/hooks/usePaint/helpers/Pointer.js +2 -2
  97. package/dist/cjs/hooks/usePaint/usePaint.js +2 -2
  98. package/dist/cjs/hooks/usePaint/usePaint.js.map +1 -1
  99. package/dist/cjs/hooks/useParallax/useParallax.js +2 -2
  100. package/dist/cjs/hooks/useParallax/useParallax.js.map +1 -1
  101. package/dist/cjs/hooks/usePermission/usePermission.js +2 -2
  102. package/dist/cjs/hooks/usePointerLock/usePointerLock.js +2 -2
  103. package/dist/cjs/hooks/usePostMessage/usePostMessage.js +3 -0
  104. package/dist/cjs/hooks/usePostMessage/usePostMessage.js.map +1 -0
  105. package/dist/cjs/hooks/usePreferredColorScheme/usePreferredColorScheme.js +1 -1
  106. package/dist/cjs/hooks/usePreferredContrast/usePreferredContrast.js +1 -1
  107. package/dist/cjs/hooks/usePreferredDark/usePreferredDark.js +1 -1
  108. package/dist/cjs/hooks/usePreferredLanguages/usePreferredLanguages.js +1 -1
  109. package/dist/cjs/hooks/usePreferredReducedMotion/usePreferredReducedMotion.js +1 -1
  110. package/dist/cjs/hooks/usePrevious/usePrevious.js +1 -1
  111. package/dist/cjs/hooks/useQuery/useQuery.js +2 -2
  112. package/dist/cjs/hooks/useQuery/useQuery.js.map +1 -1
  113. package/dist/cjs/hooks/useQueue/useQueue.js +2 -2
  114. package/dist/cjs/hooks/useRaf/useRaf.js +2 -2
  115. package/dist/cjs/hooks/useRafValue/useRafValue.js +2 -2
  116. package/dist/cjs/hooks/useRenderCount/useRenderCount.js +1 -1
  117. package/dist/cjs/hooks/useRenderInfo/useRenderInfo.js +1 -1
  118. package/dist/cjs/hooks/useRerender/useRerender.js +2 -2
  119. package/dist/cjs/hooks/useResizeObserver/useResizeObserver.js +2 -2
  120. package/dist/cjs/hooks/useResizeObserver/useResizeObserver.js.map +1 -1
  121. package/dist/cjs/hooks/useScreenOrientation/useScreenOrientation.js +2 -2
  122. package/dist/cjs/hooks/useScript/useScript.js +2 -2
  123. package/dist/cjs/hooks/useSessionStorage/useSessionStorage.js +2 -2
  124. package/dist/cjs/hooks/useSet/useSet.js +2 -2
  125. package/dist/cjs/hooks/useShare/useShare.js +2 -2
  126. package/dist/cjs/hooks/useStep/useStep.js +2 -2
  127. package/dist/cjs/hooks/useStopwatch/useStopwatch.js +2 -2
  128. package/dist/cjs/hooks/useStopwatch/useStopwatch.js.map +1 -1
  129. package/dist/cjs/hooks/useStorage/useStorage.js +2 -2
  130. package/dist/cjs/hooks/useTextDirection/useTextDirection.js +3 -0
  131. package/dist/cjs/hooks/useTextDirection/useTextDirection.js.map +1 -0
  132. package/dist/cjs/hooks/useTextSelection/useTextSelection.js +2 -2
  133. package/dist/cjs/hooks/useTime/useTime.js +2 -2
  134. package/dist/cjs/hooks/useTime/useTime.js.map +1 -1
  135. package/dist/cjs/hooks/useTimeout/useTimeout.js +2 -2
  136. package/dist/cjs/hooks/useTimer/useTimer.js +2 -2
  137. package/dist/cjs/hooks/useTimer/useTimer.js.map +1 -1
  138. package/dist/cjs/hooks/useToggle/useToggle.js +2 -2
  139. package/dist/cjs/hooks/useUnmount/useUnmount.js +1 -1
  140. package/dist/cjs/hooks/useVibrate/useVibrate.js +3 -0
  141. package/dist/cjs/hooks/useVibrate/useVibrate.js.map +1 -0
  142. package/dist/cjs/hooks/useWebSocket/useWebSocket.js +2 -2
  143. package/dist/cjs/hooks/useWebSocket/useWebSocket.js.map +1 -1
  144. package/dist/cjs/hooks/useWindowEvent/useWindowEvent.js +2 -2
  145. package/dist/cjs/hooks/useWindowEvent/useWindowEvent.js.map +1 -1
  146. package/dist/cjs/hooks/useWindowFocus/useWindowFocus.js +2 -2
  147. package/dist/cjs/hooks/useWindowScroll/useWindowScroll.js +2 -2
  148. package/dist/cjs/hooks/useWindowSize/useWindowSize.js +2 -2
  149. package/dist/cjs/hooks/useWizard/useWizard.js +2 -2
  150. package/dist/cjs/index-TsTLayBH.js +3 -0
  151. package/dist/cjs/index-TsTLayBH.js.map +1 -0
  152. package/dist/cjs/index.js +2 -2
  153. package/dist/cjs/utils/helpers/debounce.js +1 -1
  154. package/dist/cjs/utils/helpers/getElement.js +2 -2
  155. package/dist/cjs/utils/helpers/getElement.js.map +1 -1
  156. package/dist/cjs/utils/helpers/getRetry.js +1 -1
  157. package/dist/cjs/utils/helpers/index.js +1 -1
  158. package/dist/cjs/utils/helpers/isClient.js +1 -1
  159. package/dist/cjs/utils/helpers/throttle.js +1 -1
  160. package/dist/cjs/utils/helpers/time/getDate.js +1 -1
  161. package/dist/esm/{_rollupPluginBabelHelpers-YojYudsU.js → _rollupPluginBabelHelpers-C57zWxrj.js} +3 -3
  162. package/dist/esm/_rollupPluginBabelHelpers-C57zWxrj.js.map +1 -0
  163. package/dist/esm/hooks/index.js +2 -2
  164. package/dist/esm/hooks/useActiveElement/useActiveElement.js +2 -2
  165. package/dist/esm/hooks/useActiveElement/useActiveElement.js.map +1 -1
  166. package/dist/esm/hooks/useAsync/useAsync.js +2 -2
  167. package/dist/esm/hooks/useBattery/useBattery.js +2 -2
  168. package/dist/esm/hooks/useBoolean/useBoolean.js +2 -2
  169. package/dist/esm/hooks/useBreakpoints/constants/breakpoints.js +1 -1
  170. package/dist/esm/hooks/useBreakpoints/useBreakpoints.js +2 -2
  171. package/dist/esm/hooks/useBrowserLanguage/useBrowserLanguage.js +1 -1
  172. package/dist/esm/hooks/useClickOutside/useClickOutside.js +2 -2
  173. package/dist/esm/hooks/useClickOutside/useClickOutside.js.map +1 -1
  174. package/dist/esm/hooks/useClipboard/useClipboard.js +2 -2
  175. package/dist/esm/hooks/useCounter/useCounter.js +2 -2
  176. package/dist/esm/hooks/useCssVar/useCssVar.js +2 -2
  177. package/dist/esm/hooks/useCssVar/useCssVar.js.map +1 -1
  178. package/dist/esm/hooks/useDebounceCallback/useDebounceCallback.js +2 -2
  179. package/dist/esm/hooks/useDebounceCallback/useDebounceCallback.js.map +1 -1
  180. package/dist/esm/hooks/useDebounceValue/useDebounceValue.js +2 -2
  181. package/dist/esm/hooks/useDebounceValue/useDebounceValue.js.map +1 -1
  182. package/dist/esm/hooks/useDefault/useDefault.js +2 -2
  183. package/dist/esm/hooks/useDeviceMotion/useDeviceMotion.js +2 -2
  184. package/dist/esm/hooks/useDeviceMotion/useDeviceMotion.js.map +1 -1
  185. package/dist/esm/hooks/useDeviceOrientation/useDeviceOrientation.js +2 -2
  186. package/dist/esm/hooks/useDidUpdate/useDidUpdate.js +1 -1
  187. package/dist/esm/hooks/useDisclosure/useDisclosure.js +2 -2
  188. package/dist/esm/hooks/useDocumentEvent/useDocumentEvent.js +2 -2
  189. package/dist/esm/hooks/useDocumentEvent/useDocumentEvent.js.map +1 -1
  190. package/dist/esm/hooks/useDocumentTitle/useDocumentTitle.js +2 -2
  191. package/dist/esm/hooks/useDocumentVisibility/useDocumentVisibility.js +1 -1
  192. package/dist/esm/hooks/useElementSize/useElementSize.js +2 -2
  193. package/dist/esm/hooks/useElementSize/useElementSize.js.map +1 -1
  194. package/dist/esm/hooks/useEvent/useEvent.js +1 -1
  195. package/dist/esm/hooks/useEventListener/useEventListener.js +2 -2
  196. package/dist/esm/hooks/useEventListener/useEventListener.js.map +1 -1
  197. package/dist/esm/hooks/useEyeDropper/useEyeDropper.js +2 -2
  198. package/dist/esm/hooks/useFavicon/useFavicon.js +2 -2
  199. package/dist/esm/hooks/useField/useField.js +2 -2
  200. package/dist/esm/hooks/useFileDialog/useFileDialog.js +2 -2
  201. package/dist/esm/hooks/useFocus/useFocus.js +2 -2
  202. package/dist/esm/hooks/useFocus/useFocus.js.map +1 -1
  203. package/dist/esm/hooks/useFps/useFps.js +2 -2
  204. package/dist/esm/hooks/useFullscreen/useFullscreen.js +2 -2
  205. package/dist/esm/hooks/useFullscreen/useFullscreen.js.map +1 -1
  206. package/dist/esm/hooks/useGamepad/helpers/mapGamepadToXbox360Controller.js +1 -1
  207. package/dist/esm/hooks/useGamepad/useGamepad.js +2 -2
  208. package/dist/esm/hooks/useGeolocation/useGeolocation.js +2 -2
  209. package/dist/esm/hooks/useHash/useHash.js +2 -2
  210. package/dist/esm/hooks/useHotkeys/useHotkeys.js +2 -2
  211. package/dist/esm/hooks/useHover/useHover.js +2 -2
  212. package/dist/esm/hooks/useHover/useHover.js.map +1 -1
  213. package/dist/esm/hooks/useIdle/useIdle.js +2 -2
  214. package/dist/esm/hooks/useIdle/useIdle.js.map +1 -1
  215. package/dist/esm/hooks/useImage/useImage.js +2 -2
  216. package/dist/esm/hooks/useInfiniteScroll/useInfiniteScroll.js +2 -2
  217. package/dist/esm/hooks/useInfiniteScroll/useInfiniteScroll.js.map +1 -1
  218. package/dist/esm/hooks/useIntersectionObserver/useIntersectionObserver.js +2 -2
  219. package/dist/esm/hooks/useIntersectionObserver/useIntersectionObserver.js.map +1 -1
  220. package/dist/esm/hooks/useInterval/useInterval.js +2 -2
  221. package/dist/esm/hooks/useIsFirstRender/useIsFirstRender.js +1 -1
  222. package/dist/esm/hooks/useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js +1 -1
  223. package/dist/esm/hooks/useKeyPress/useKeyPress.js +2 -2
  224. package/dist/esm/hooks/useKeyPress/useKeyPress.js.map +1 -1
  225. package/dist/esm/hooks/useKeyPressEvent/useKeyPressEvent.js +2 -2
  226. package/dist/esm/hooks/useKeyPressEvent/useKeyPressEvent.js.map +1 -1
  227. package/dist/esm/hooks/useKeyboard/useKeyboard.js +2 -2
  228. package/dist/esm/hooks/useKeyboard/useKeyboard.js.map +1 -1
  229. package/dist/esm/hooks/useKeysPressed/useKeysPressed.js +2 -2
  230. package/dist/esm/hooks/useLastChanged/useLastChanged.js +2 -2
  231. package/dist/esm/hooks/useList/useList.js +2 -2
  232. package/dist/esm/hooks/useLocalStorage/useLocalStorage.js +2 -2
  233. package/dist/esm/hooks/useLogger/useLogger.js +2 -2
  234. package/dist/esm/hooks/useLongPress/useLongPress.js +2 -2
  235. package/dist/esm/hooks/useMap/useMap.js +2 -2
  236. package/dist/esm/hooks/useMeasure/useMeasure.js +2 -2
  237. package/dist/esm/hooks/useMeasure/useMeasure.js.map +1 -1
  238. package/dist/esm/hooks/useMediaQuery/useMediaQuery.js +1 -1
  239. package/dist/esm/hooks/useMemory/useMemory.js +2 -2
  240. package/dist/esm/hooks/useMount/useMount.js +1 -1
  241. package/dist/esm/hooks/useMouse/useMouse.js +2 -2
  242. package/dist/esm/hooks/useMouse/useMouse.js.map +1 -1
  243. package/dist/esm/hooks/useMutation/useMutation.js +2 -2
  244. package/dist/esm/hooks/useMutationObserver/useMutationObserver.js +2 -2
  245. package/dist/esm/hooks/useMutationObserver/useMutationObserver.js.map +1 -1
  246. package/dist/esm/hooks/useNetwork/useNetwork.js +2 -2
  247. package/dist/esm/hooks/useOffsetPagination/useOffsetPagination.js +2 -2
  248. package/dist/esm/hooks/useOnline/useOnline.js +1 -1
  249. package/dist/esm/hooks/useOperatingSystem/useOperatingSystem.js +1 -1
  250. package/dist/esm/hooks/useOptimistic/useOptimistic.js +2 -2
  251. package/dist/esm/hooks/useOrientation/useOrientation.js +2 -2
  252. package/dist/esm/hooks/useOtpCredential/useOtpCredential.js +2 -2
  253. package/dist/esm/hooks/usePageLeave/usePageLeave.js +2 -2
  254. package/dist/esm/hooks/usePaint/helpers/Paint.js +2 -2
  255. package/dist/esm/hooks/usePaint/helpers/Pointer.js +2 -2
  256. package/dist/esm/hooks/usePaint/usePaint.js +2 -2
  257. package/dist/esm/hooks/usePaint/usePaint.js.map +1 -1
  258. package/dist/esm/hooks/useParallax/useParallax.js +2 -2
  259. package/dist/esm/hooks/useParallax/useParallax.js.map +1 -1
  260. package/dist/esm/hooks/usePermission/usePermission.js +2 -2
  261. package/dist/esm/hooks/usePointerLock/usePointerLock.js +2 -2
  262. package/dist/esm/hooks/usePostMessage/usePostMessage.js +3 -0
  263. package/dist/esm/hooks/usePostMessage/usePostMessage.js.map +1 -0
  264. package/dist/esm/hooks/usePreferredColorScheme/usePreferredColorScheme.js +1 -1
  265. package/dist/esm/hooks/usePreferredContrast/usePreferredContrast.js +1 -1
  266. package/dist/esm/hooks/usePreferredDark/usePreferredDark.js +1 -1
  267. package/dist/esm/hooks/usePreferredLanguages/usePreferredLanguages.js +1 -1
  268. package/dist/esm/hooks/usePreferredReducedMotion/usePreferredReducedMotion.js +1 -1
  269. package/dist/esm/hooks/usePrevious/usePrevious.js +1 -1
  270. package/dist/esm/hooks/useQuery/useQuery.js +2 -2
  271. package/dist/esm/hooks/useQuery/useQuery.js.map +1 -1
  272. package/dist/esm/hooks/useQueue/useQueue.js +2 -2
  273. package/dist/esm/hooks/useRaf/useRaf.js +2 -2
  274. package/dist/esm/hooks/useRafValue/useRafValue.js +2 -2
  275. package/dist/esm/hooks/useRenderCount/useRenderCount.js +1 -1
  276. package/dist/esm/hooks/useRenderInfo/useRenderInfo.js +1 -1
  277. package/dist/esm/hooks/useRerender/useRerender.js +2 -2
  278. package/dist/esm/hooks/useResizeObserver/useResizeObserver.js +2 -2
  279. package/dist/esm/hooks/useResizeObserver/useResizeObserver.js.map +1 -1
  280. package/dist/esm/hooks/useScreenOrientation/useScreenOrientation.js +2 -2
  281. package/dist/esm/hooks/useScript/useScript.js +2 -2
  282. package/dist/esm/hooks/useSessionStorage/useSessionStorage.js +2 -2
  283. package/dist/esm/hooks/useSet/useSet.js +2 -2
  284. package/dist/esm/hooks/useShare/useShare.js +2 -2
  285. package/dist/esm/hooks/useStep/useStep.js +2 -2
  286. package/dist/esm/hooks/useStopwatch/useStopwatch.js +2 -2
  287. package/dist/esm/hooks/useStopwatch/useStopwatch.js.map +1 -1
  288. package/dist/esm/hooks/useStorage/useStorage.js +2 -2
  289. package/dist/esm/hooks/useTextDirection/useTextDirection.js +3 -0
  290. package/dist/esm/hooks/useTextDirection/useTextDirection.js.map +1 -0
  291. package/dist/esm/hooks/useTextSelection/useTextSelection.js +2 -2
  292. package/dist/esm/hooks/useTime/useTime.js +2 -2
  293. package/dist/esm/hooks/useTime/useTime.js.map +1 -1
  294. package/dist/esm/hooks/useTimeout/useTimeout.js +2 -2
  295. package/dist/esm/hooks/useTimer/useTimer.js +2 -2
  296. package/dist/esm/hooks/useTimer/useTimer.js.map +1 -1
  297. package/dist/esm/hooks/useToggle/useToggle.js +2 -2
  298. package/dist/esm/hooks/useUnmount/useUnmount.js +1 -1
  299. package/dist/esm/hooks/useVibrate/useVibrate.js +3 -0
  300. package/dist/esm/hooks/useVibrate/useVibrate.js.map +1 -0
  301. package/dist/esm/hooks/useWebSocket/useWebSocket.js +2 -2
  302. package/dist/esm/hooks/useWebSocket/useWebSocket.js.map +1 -1
  303. package/dist/esm/hooks/useWindowEvent/useWindowEvent.js +2 -2
  304. package/dist/esm/hooks/useWindowEvent/useWindowEvent.js.map +1 -1
  305. package/dist/esm/hooks/useWindowFocus/useWindowFocus.js +2 -2
  306. package/dist/esm/hooks/useWindowScroll/useWindowScroll.js +2 -2
  307. package/dist/esm/hooks/useWindowSize/useWindowSize.js +2 -2
  308. package/dist/esm/hooks/useWizard/useWizard.js +2 -2
  309. package/dist/esm/index-DPoFdKd5.js +3 -0
  310. package/dist/esm/index-DPoFdKd5.js.map +1 -0
  311. package/dist/esm/index.js +2 -2
  312. package/dist/esm/utils/helpers/debounce.js +1 -1
  313. package/dist/esm/utils/helpers/getElement.js +2 -2
  314. package/dist/esm/utils/helpers/getElement.js.map +1 -1
  315. package/dist/esm/utils/helpers/getRetry.js +1 -1
  316. package/dist/esm/utils/helpers/index.js +1 -1
  317. package/dist/esm/utils/helpers/isClient.js +1 -1
  318. package/dist/esm/utils/helpers/throttle.js +1 -1
  319. package/dist/esm/utils/helpers/time/getDate.js +1 -1
  320. package/dist/index.d.ts +138 -25
  321. package/package.json +1 -1
  322. package/dist/cjs/_rollupPluginBabelHelpers-DQxhXgk7.js.map +0 -1
  323. package/dist/esm/_rollupPluginBabelHelpers-YojYudsU.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usePostMessage.js","sources":["../../../../src/hooks/usePostMessage/usePostMessage.ts"],"sourcesContent":["import { useEffect, useRef } from 'react';\n\nexport type UsePostMessageReturn<Message> = (message: Message) => void;\n\n/**\n * @name usePostMessage\n * @description - Hook that allows you to receive messages from other origins\n * @category Browser\n *\n * @overload\n * @template Message The message data type\n * @param {string | string[]} origin The origin of the message\n * @param {(message: Message) => Message} callback callback to get received message\n * @returns {(message: Message) => void} An object containing the current message\n *\n * @example\n * const postMessage = usePostMessage();\n */\nexport const usePostMessage = <Message>(\n origin: string | '*' | string[],\n callback: (message: Message, event: MessageEvent<Message>) => void\n): UsePostMessageReturn<Message> => {\n const internalCallbackRef = useRef(callback);\n internalCallbackRef.current = callback;\n\n useEffect(() => {\n const onMessage = (event: MessageEvent<Message>) => {\n if (\n (Array.isArray(origin) && (!origin.includes(event.origin) || !origin.includes('*'))) ||\n (event.origin !== origin && origin !== '*')\n )\n return;\n\n internalCallbackRef.current(event.data as Message, event);\n };\n\n window.addEventListener('message', onMessage);\n return () => window.removeEventListener('message', onMessage);\n }, []);\n\n const postMessage = (message: Message) => {\n if (Array.isArray(origin)) {\n origin.forEach((origin) => window.postMessage(message, origin));\n return;\n }\n\n window.postMessage(message, origin);\n };\n\n return postMessage;\n};\n"],"names":["origin","callback","internalCallbackRef","useRef","current","useEffect","onMessage","event","Array","isArray","includes","data","window","addEventListener","removeEventListener","message","forEach","postMessage"],"mappings":";2DAkB8B,SAC5BA,EACAC,GAEA,IAAMC,EAAsBC,EAAMA,OAACF,GACnCC,EAAoBE,QAAUH,EAE9BI,EAAAA,WAAU,WACR,IAAMC,EAAY,SAACC,MAEdC,MAAMC,QAAQT,IAAaA,EAAOU,SAASH,EAAMP,SAAYA,EAAOU,SAAS,OAC7EH,EAAMP,SAAWA,GAAqB,MAAXA,GAI9BE,EAAoBE,QAAQG,EAAMI,KAAiBJ,EACpD,EAGD,OADAK,OAAOC,iBAAiB,UAAWP,GAC5B,WAAA,OAAMM,OAAOE,oBAAoB,UAAWR,EAAU,CAC9D,GAAE,IAWH,OAToB,SAACS,GACfP,MAAMC,QAAQT,GAChBA,EAAOgB,SAAQ,SAAChB,GAAM,OAAKY,OAAOK,YAAYF,EAASf,MAIzDY,OAAOK,YAAYF,EAASf,EAC7B,CAGH"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.75 */
1
+ /* @license @siberiacancode/reactuse v0.0.77 */
2
2
  "use strict";var e=require("../useMediaQuery/useMediaQuery.js");require("react");exports.usePreferredColorScheme=function(){var r=e.useMediaQuery("(prefers-color-scheme: light)"),u=e.useMediaQuery("(prefers-color-scheme: dark)");return r?"light":u?"dark":"no-preference"};
3
3
  //# sourceMappingURL=usePreferredColorScheme.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.75 */
1
+ /* @license @siberiacancode/reactuse v0.0.77 */
2
2
  "use strict";var e=require("../useMediaQuery/useMediaQuery.js");require("react");exports.usePreferredContrast=function(){var r=e.useMediaQuery("(prefers-contrast: more)"),s=e.useMediaQuery("(prefers-contrast: less)"),u=e.useMediaQuery("(prefers-contrast: custom)");return r?"more":s?"less":u?"custom":"no-preference"};
3
3
  //# sourceMappingURL=usePreferredContrast.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.75 */
1
+ /* @license @siberiacancode/reactuse v0.0.77 */
2
2
  "use strict";var e=require("../useMediaQuery/useMediaQuery.js");require("react");exports.usePreferredDark=function(){return e.useMediaQuery("(prefers-color-scheme: dark)")};
3
3
  //# sourceMappingURL=usePreferredDark.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.75 */
1
+ /* @license @siberiacancode/reactuse v0.0.77 */
2
2
  "use strict";var e=require("react"),n=function(){return window.navigator.languages},r=function(){return[]},t=function(e){return window.addEventListener("languagechange",e),function(){window.removeEventListener("languagechange",e)}};exports.usePreferredLanguages=function(){return e.useSyncExternalStore(t,n,r)};
3
3
  //# sourceMappingURL=usePreferredLanguages.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.75 */
1
+ /* @license @siberiacancode/reactuse v0.0.77 */
2
2
  "use strict";var e=require("../useMediaQuery/useMediaQuery.js");require("react");exports.usePreferredReducedMotion=function(){return e.useMediaQuery("(prefers-reduced-motion: reduce)")?"reduce":"no-preference"};
3
3
  //# sourceMappingURL=usePreferredReducedMotion.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.75 */
1
+ /* @license @siberiacancode/reactuse v0.0.77 */
2
2
  "use strict";var r=require("react");exports.usePrevious=function(e,u){var t,n=r.useRef(e),c=r.useRef();return(null!==(t=null==u?void 0:u.equality)&&void 0!==t?t:Object.is)(e,n.current)||(c.current=n.current,n.current=e),c.current};
3
3
  //# sourceMappingURL=usePrevious.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.75 */
2
- "use strict";var e=require("../../_rollupPluginBabelHelpers-DQxhXgk7.js"),r=require("react"),t=require("../useDidUpdate/useDidUpdate.js"),n=require("../useMount/useMount.js"),l=require("../../utils/helpers/getRetry.js");require("../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js"),require("../../utils/helpers/isClient.js");exports.useQuery=function(u,i){var o,a,c=null===(o=null==i?void 0:i.enabled)||void 0===o||o,s=r.useRef(null!=i&&i.retry?l.getRetry(i.retry):0),d=r.useState(!1),f=e._slicedToArray(d,2),v=f[0],y=f[1],h=r.useState(!1),p=e._slicedToArray(h,2),A=p[0],b=p[1],_=r.useState(!1),g=e._slicedToArray(_,2),D=g[0],S=g[1],I=r.useState(!(null==i||!i.initialData)),q=e._slicedToArray(I,2),R=q[0],T=q[1],j=r.useState(!(null==i||!i.initialData)),C=e._slicedToArray(j,2),E=C[0],m=C[1],L=r.useState(void 0),M=e._slicedToArray(L,2),U=M[0],k=M[1],w=r.useState(null==i?void 0:i.initialData),x=e._slicedToArray(w,2),B=x[0],F=x[1],H=r.useRef(new AbortController),P=r.useRef(),Q=null!==(a=null==i?void 0:i.keys)&&void 0!==a?a:[],z=function(){H.current.abort(),H.current=new AbortController,H.current.signal.onabort=function(){return m(!0)}},G=function(e){z(),y(!0),"refetch"===e&&S(!0),u({signal:H.current.signal,keys:Q}).then((function(r){var t,n=null!=i&&i.select?null==i?void 0:i.select(r):r;null==i||null===(t=i.onSuccess)||void 0===t||t.call(i,n),F(n),T(!0),y(!1),k(void 0),b(!1),m(!1),"refetch"===e&&S(!1)})).catch((function(r){var t;if(s.current>0)return s.current-=1,G(e);null==i||null===(t=i.onError)||void 0===t||t.call(i,r),F(void 0),T(!1),y(!1),m(!1),k(r),b(!0),"refetch"===e&&S(!1),s.current=null!=i&&i.retry?l.getRetry(i.retry):0})).finally((function(){if(null!=i&&i.refetchInterval){var e=setInterval((function(){clearInterval(e),G("refetch")}),null==i?void 0:i.refetchInterval);P.current=e}}))};n.useMount((function(){c&&G("init")})),t.useDidUpdate((function(){c&&G("refetch")}),[c].concat(e._toConsumableArray(Q))),r.useEffect((function(){return function(){clearInterval(P.current)}}),[c,null==i?void 0:i.refetchInterval,null==i?void 0:i.retry].concat(e._toConsumableArray(Q)));var J=(null==i?void 0:i.placeholderData)instanceof Function?null==i?void 0:i.placeholderData():null==i?void 0:i.placeholderData;return{abort:z,data:null!=B?B:J,error:U,refetch:function(){return G("refetch")},isLoading:v,isError:A,isSuccess:R,isRefetching:D,aborted:E}};
1
+ /* @license @siberiacancode/reactuse v0.0.77 */
2
+ "use strict";var e=require("../../_rollupPluginBabelHelpers-n1mTP8al.js"),r=require("react"),t=require("../../utils/helpers/getRetry.js");require("../../utils/helpers/isClient.js");var n=require("../useDidUpdate/useDidUpdate.js"),l=require("../useMount/useMount.js");require("../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js");exports.useQuery=function(u,i){var o,a,c=null===(o=null==i?void 0:i.enabled)||void 0===o||o,s=r.useRef(null!=i&&i.retry?t.getRetry(i.retry):0),d=r.useRef(!1),f=r.useState(!1),v=e._slicedToArray(f,2),y=v[0],h=v[1],p=r.useState(!1),A=e._slicedToArray(p,2),D=A[0],_=A[1],g=r.useState(!1),S=e._slicedToArray(g,2),b=S[0],I=S[1],R=r.useState(!1),T=e._slicedToArray(R,2),q=T[0],j=T[1],m=r.useState(!(null==i||!i.initialData)),C=e._slicedToArray(m,2),E=C[0],L=C[1],M=r.useState(void 0),U=e._slicedToArray(M,2),k=U[0],w=U[1],F=r.useState(null==i?void 0:i.initialData),x=e._slicedToArray(F,2),B=x[0],H=x[1],P=r.useRef(new AbortController),Q=r.useRef(),z=null!==(a=null==i?void 0:i.keys)&&void 0!==a?a:[],G=function(){P.current.abort(),P.current=new AbortController},J=function(e){G(),h(!0),"init"===e&&(d.current=!0,_(!0)),"refetch"===e&&j(!0),u({signal:P.current.signal,keys:z}).then((function(r){var t,n=null!=i&&i.select?null==i?void 0:i.select(r):r;null==i||null===(t=i.onSuccess)||void 0===t||t.call(i,n),H(n),L(!0),w(void 0),I(!1),h(!1),"init"===e&&_(!1),"refetch"===e&&j(!1)})).catch((function(r){var n;if(s.current>0){s.current-=1;var l="function"==typeof(null==i?void 0:i.retryDelay)?null==i?void 0:i.retryDelay(s.current,r):null==i?void 0:i.retryDelay;return l?void setTimeout((function(){return J(e)}),l):J(e)}null==i||null===(n=i.onError)||void 0===n||n.call(i,r),H(void 0),L(!1),w(r),I(!0),h(!1),"init"===e&&_(!1),"refetch"===e&&j(!1),s.current=null!=i&&i.retry?t.getRetry(i.retry):0})).finally((function(){if(null!=i&&i.refetchInterval){var e=setInterval((function(){clearInterval(e),J("refetch")}),null==i?void 0:i.refetchInterval);Q.current=e}}))};l.useMount((function(){c&&J("init")})),n.useDidUpdate((function(){c&&J(d.current?"refetch":"init")}),[c].concat(e._toConsumableArray(z))),r.useEffect((function(){return function(){clearInterval(Q.current)}}),[c,null==i?void 0:i.refetchInterval,null==i?void 0:i.retry].concat(e._toConsumableArray(z)));var K=(null==i?void 0:i.placeholderData)instanceof Function?null==i?void 0:i.placeholderData():null==i?void 0:i.placeholderData;return{abort:G,data:null!=B?B:K,error:k,refetch:function(){return J("refetch")},isFetching:y,isLoading:D,isError:b,isSuccess:E,isRefetching:q}};
3
3
  //# sourceMappingURL=useQuery.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useQuery.js","sources":["../../../../src/hooks/useQuery/useQuery.ts"],"sourcesContent":["import type { DependencyList } from 'react';\n\nimport { useEffect, useRef, useState } from 'react';\n\nimport { getRetry } from '@/utils/helpers';\n\nimport { useDidUpdate } from '../useDidUpdate/useDidUpdate';\nimport { useMount } from '../useMount/useMount';\n\n/* The use query return type */\nexport interface UseQueryOptions<QueryData, Data> {\n /* The enabled state of the query */\n enabled?: boolean;\n /* The initial data for the hook */\n initialData?: (() => Data) | Data;\n /* The depends for the hook */\n keys?: DependencyList;\n /* The placeholder data for the hook */\n placeholderData?: (() => Data) | Data;\n /* The refetch interval */\n refetchInterval?: number;\n /* The retry count of requests */\n retry?: boolean | number;\n /* The callback function to be invoked on error */\n onError?: (error: Error) => void;\n /* The callback function to be invoked on success */\n onSuccess?: (data: Data) => void;\n /* The select function to be invoked */\n select?: (data: QueryData) => Data;\n}\n\ninterface UseQueryCallbackParams {\n /* The depends for the hook */\n keys: DependencyList;\n /* The abort signal */\n signal: AbortSignal;\n}\n\n/* The use query return type */\nexport interface UseQueryReturn<Data> {\n /* The abort function */\n abort: AbortController['abort'];\n /* The aborted state of the query */\n aborted: boolean;\n /* The state of the query */\n data?: Data;\n /* The success state of the query */\n error?: Error;\n /* The error state of the query */\n isError: boolean;\n /* The loading state of the query */\n isLoading: boolean;\n /* The refetching state of the query */\n isRefetching: boolean;\n /* The success state of the query */\n isSuccess: boolean;\n /* The refetch function */\n refetch: () => void;\n}\n\n/**\n * @name useQuery\n * @description - Hook that defines the logic when query data\n * @category Utilities\n *\n * @template Data The type of the data\n * @param {() => Promise<Data>} callback The callback function to be invoked\n * @param {DependencyList} [options.keys] The dependencies for the hook\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 * @param {UseQueryOptionsSelect<Data>} [options.select] The select function to be invoked\n * @param {Data | (() => Data)} [options.initialData] The initial data for the hook\n * @param {Data | (() => Data)} [options.placeholderData] The placeholder data for the hook\n * @param {number} [options.refetchInterval] The refetch interval\n * @param {boolean | number} [options.retry] The retry count of requests\n * @returns {UseQueryReturn<Data>} An object with the state of the query\n *\n * @example\n * const { data, isLoading, isError, isSuccess, error, refetch, isRefetching, abort, aborted } = useQuery(() => fetch('url'));\n */\nexport const useQuery = <QueryData, Data = QueryData>(\n callback: (params: UseQueryCallbackParams) => Promise<QueryData>,\n options?: UseQueryOptions<QueryData, Data>\n): UseQueryReturn<Data> => {\n const enabled = options?.enabled ?? true;\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 [isRefetching, setIsRefetching] = useState(false);\n const [isSuccess, setIsSuccess] = useState(!!options?.initialData);\n const [aborted, setAborted] = useState(!!options?.initialData);\n\n const [error, setError] = useState<Error | undefined>(undefined);\n const [data, setData] = useState<Data | undefined>(options?.initialData);\n\n const abortControllerRef = useRef<AbortController>(new AbortController());\n const intervalIdRef = useRef<ReturnType<typeof setInterval>>();\n\n const keys = options?.keys ?? [];\n\n const abort = () => {\n abortControllerRef.current.abort();\n abortControllerRef.current = new AbortController();\n abortControllerRef.current.signal.onabort = () => setAborted(true);\n };\n\n const request = (action: 'init' | 'refetch') => {\n abort();\n setIsLoading(true);\n\n if (action === 'refetch') setIsRefetching(true);\n callback({ signal: abortControllerRef.current.signal, keys })\n .then((response) => {\n const data = options?.select ? options?.select(response) : response;\n options?.onSuccess?.(data as Data);\n setData(data as Data);\n setIsSuccess(true);\n setIsLoading(false);\n setError(undefined);\n setIsError(false);\n setAborted(false);\n if (action === 'refetch') setIsRefetching(false);\n })\n .catch((error: Error) => {\n if (retryCountRef.current > 0) {\n retryCountRef.current -= 1;\n return request(action);\n }\n options?.onError?.(error);\n setData(undefined);\n setIsSuccess(false);\n setIsLoading(false);\n setAborted(false);\n setError(error);\n setIsError(true);\n if (action === 'refetch') setIsRefetching(false);\n retryCountRef.current = options?.retry ? getRetry(options.retry) : 0;\n })\n .finally(() => {\n if (options?.refetchInterval) {\n const interval = setInterval(() => {\n clearInterval(interval);\n request('refetch');\n }, options?.refetchInterval);\n intervalIdRef.current = interval;\n }\n });\n };\n\n useMount(() => {\n if (!enabled) return;\n request('init');\n });\n\n useDidUpdate(() => {\n if (!enabled) return;\n request('refetch');\n }, [enabled, ...keys]);\n\n useEffect(() => {\n return () => {\n clearInterval(intervalIdRef.current);\n };\n }, [enabled, options?.refetchInterval, options?.retry, ...keys]);\n\n const refetch = () => request('refetch');\n\n const placeholderData =\n options?.placeholderData instanceof Function\n ? options?.placeholderData()\n : options?.placeholderData;\n\n return {\n abort,\n data: data ?? placeholderData,\n error,\n refetch,\n isLoading,\n isError,\n isSuccess,\n isRefetching,\n aborted\n };\n};\n"],"names":["callback","options","_options$enabled","_options$keys","enabled","retryCountRef","useRef","retry","getRetry","_useState","useState","_useState2","_slicedToArray","isLoading","setIsLoading","_useState3","_useState4","isError","setIsError","_useState5","_useState6","isRefetching","setIsRefetching","_useState7","initialData","_useState8","isSuccess","setIsSuccess","_useState9","_useState10","aborted","setAborted","_useState11","undefined","_useState12","error","setError","_useState13","_useState14","data","setData","abortControllerRef","AbortController","intervalIdRef","keys","abort","current","signal","onabort","request","action","then","response","_options$onSuccess","select","onSuccess","call","_options$onError","onError","refetchInterval","interval","setInterval","clearInterval","useMount","useDidUpdate","concat","_toConsumableArray","useEffect","placeholderData","Function","refetch"],"mappings":";6VAgFwB,SACtBA,EACAC,GACyB,IAAAC,EAAAC,EACnBC,EAA0BF,QAAnBA,EAAGD,aAAO,EAAPA,EAASG,eAAOF,IAAAA,GAAAA,EAC1BG,EAAgBC,EAAMA,OAACL,SAAAA,EAASM,MAAQC,EAAQA,SAACP,EAAQM,OAAS,GAExEE,EAAkCC,EAAQA,UAAC,GAAMC,EAAAC,EAAAA,eAAAH,EAAA,GAA1CI,EAASF,EAAA,GAAEG,EAAYH,EAAA,GAC9BI,EAA8BL,EAAQA,UAAC,GAAMM,EAAAJ,EAAAA,eAAAG,EAAA,GAAtCE,EAAOD,EAAA,GAAEE,EAAUF,EAAA,GAC1BG,EAAwCT,EAAQA,UAAC,GAAMU,EAAAR,EAAAA,eAAAO,EAAA,GAAhDE,EAAYD,EAAA,GAAEE,EAAeF,EAAA,GACpCG,EAAkCb,EAAAA,WAAWT,UAAAA,EAASuB,cAAYC,EAAAb,EAAAA,eAAAW,EAAA,GAA3DG,EAASD,EAAA,GAAEE,EAAYF,EAAA,GAC9BG,EAA8BlB,EAAAA,WAAWT,UAAAA,EAASuB,cAAYK,EAAAjB,EAAAA,eAAAgB,EAAA,GAAvDE,EAAOD,EAAA,GAAEE,EAAUF,EAAA,GAE1BG,EAA0BtB,EAAQA,cAAoBuB,GAAUC,EAAAtB,EAAAA,eAAAoB,EAAA,GAAzDG,EAAKD,EAAA,GAAEE,EAAQF,EAAA,GACtBG,EAAwB3B,EAAAA,SAA2BT,aAAAA,EAAAA,EAASuB,aAAYc,EAAA1B,EAAAA,eAAAyB,EAAA,GAAjEE,EAAID,EAAA,GAAEE,EAAOF,EAAA,GAEdG,EAAqBnC,EAAAA,OAAwB,IAAIoC,iBACjDC,EAAgBrC,EAAAA,SAEhBsC,EAAoBzC,QAAhBA,EAAGF,aAAO,EAAPA,EAAS2C,YAAIzC,IAAAA,EAAAA,EAAI,GAExB0C,EAAQ,WACZJ,EAAmBK,QAAQD,QAC3BJ,EAAmBK,QAAU,IAAIJ,gBACjCD,EAAmBK,QAAQC,OAAOC,QAAU,WAAA,OAAMjB,GAAW,EAAK,CACnE,EAEKkB,EAAU,SAACC,GACfL,IACA/B,GAAa,GAEE,YAAXoC,GAAsB5B,GAAgB,GAC1CtB,EAAS,CAAE+C,OAAQN,EAAmBK,QAAQC,OAAQH,KAAAA,IACnDO,MAAK,SAACC,GAAa,IAAAC,EACZd,EAAOtC,SAAAA,EAASqD,OAASrD,eAAAA,EAASqD,OAAOF,GAAYA,EAC3DnD,SAAkB,QAAXoD,EAAPpD,EAASsD,iBAAS,IAAAF,GAAlBA,EAAAG,KAAAvD,EAAqBsC,GACrBC,EAAQD,GACRZ,GAAa,GACbb,GAAa,GACbsB,OAASH,GACTf,GAAW,GACXa,GAAW,GACI,YAAXmB,GAAsB5B,GAAgB,EAC5C,IAAE,OACK,SAACa,GAAiB,IAAAsB,EACvB,GAAIpD,EAAcyC,QAAU,EAE1B,OADAzC,EAAcyC,SAAW,EAClBG,EAAQC,GAEjBjD,SAAgB,QAATwD,EAAPxD,EAASyD,eAAO,IAAAD,GAAhBA,EAAAD,KAAAvD,EAAmBkC,GACnBK,OAAQP,GACRN,GAAa,GACbb,GAAa,GACbiB,GAAW,GACXK,EAASD,GACTjB,GAAW,GACI,YAAXgC,GAAsB5B,GAAgB,GAC1CjB,EAAcyC,QAAU7C,SAAAA,EAASM,MAAQC,EAAQA,SAACP,EAAQM,OAAS,KAE7D,SAAC,WACP,GAAIN,SAAAA,EAAS0D,gBAAiB,CAC5B,IAAMC,EAAWC,aAAY,WAC3BC,cAAcF,GACdX,EAAQ,aACPhD,eAAAA,EAAS0D,iBACZhB,EAAcG,QAAUc,CAC1B,CACF,GACH,EAEDG,EAAAA,UAAS,WACF3D,GACL6C,EAAQ,OACV,IAEAe,EAAAA,cAAa,WACN5D,GACL6C,EAAQ,aACT,CAAG7C,GAAO6D,OAAAC,EAAAA,mBAAKtB,KAEhBuB,EAAAA,WAAU,WACR,OAAO,WACLL,cAAcnB,EAAcG,QAC7B,CACF,GAAA,CAAG1C,EAASH,aAAAA,EAAAA,EAAS0D,gBAAiB1D,aAAO,EAAPA,EAASM,OAAK0D,OAAAC,EAAAA,mBAAKtB,KAE1D,IAEMwB,GACJnE,aAAAA,EAAAA,EAASmE,2BAA2BC,SAChCpE,aAAAA,EAAAA,EAASmE,kBACTnE,aAAAA,EAAAA,EAASmE,gBAEf,MAAO,CACLvB,MAAAA,EACAN,KAAMA,QAAAA,EAAQ6B,EACdjC,MAAAA,EACAmC,QAXc,WAAH,OAASrB,EAAQ,UAAU,EAYtCpC,UAAAA,EACAI,QAAAA,EACAS,UAAAA,EACAL,aAAAA,EACAS,QAAAA,EAEJ"}
1
+ {"version":3,"file":"useQuery.js","sources":["../../../../src/hooks/useQuery/useQuery.ts"],"sourcesContent":["import type { DependencyList } from 'react';\n\nimport { useEffect, useRef, useState } from 'react';\n\nimport { getRetry } from '@/utils/helpers';\n\nimport { useDidUpdate } from '../useDidUpdate/useDidUpdate';\nimport { useMount } from '../useMount/useMount';\n\n/* The use query return type */\nexport interface UseQueryOptions<QueryData, Data> {\n /* The enabled state of the query */\n enabled?: boolean;\n /* The initial data for the hook */\n initialData?: (() => Data) | Data;\n /* The depends for the hook */\n keys?: DependencyList;\n /* The placeholder data for the hook */\n placeholderData?: (() => Data) | Data;\n /* The refetch interval */\n refetchInterval?: number;\n /* The retry count of requests */\n retry?: boolean | number;\n /* The retry delay of requests */\n retryDelay?: ((retry: number, error: Error) => number) | number;\n /* The callback function to be invoked on error */\n onError?: (error: Error) => void;\n /* The callback function to be invoked on success */\n onSuccess?: (data: Data) => void;\n /* The select function to be invoked */\n select?: (data: QueryData) => Data;\n}\n\ninterface UseQueryCallbackParams {\n /* The depends for the hook */\n keys: DependencyList;\n /* The abort signal */\n signal: AbortSignal;\n}\n\n/* The use query return type */\nexport interface UseQueryReturn<Data> {\n /* The abort function */\n abort: AbortController['abort'];\n /* The state of the query */\n data?: Data;\n /* The success state of the query */\n error?: Error;\n /* The error state of the query */\n isError: boolean;\n /* The fetching state of the query */\n isFetching: boolean;\n /* The loading state of the query */\n isLoading: boolean;\n /* The refetching state of the query */\n isRefetching: boolean;\n /* The success state of the query */\n isSuccess: boolean;\n /* The refetch function */\n refetch: () => void;\n}\n\n/**\n * @name useQuery\n * @description - Hook that defines the logic when query data\n * @category Utilities\n *\n * @template Data The type of the data\n * @param {() => Promise<Data>} callback The callback function to be invoked\n * @param {DependencyList} [options.keys] The dependencies for the hook\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 * @param {UseQueryOptionsSelect<Data>} [options.select] The select function to be invoked\n * @param {Data | (() => Data)} [options.initialData] The initial data for the hook\n * @param {Data | (() => Data)} [options.placeholderData] The placeholder data for the hook\n * @param {number} [options.refetchInterval] The refetch interval\n * @param {boolean | number} [options.retry] The retry count of requests\n * @returns {UseQueryReturn<Data>} An object with the state of the query\n *\n * @example\n * const { data, isFetching, isLoading, isError, isSuccess, error, refetch, isRefetching, abort, aborted } = useQuery(() => fetch('url'));\n */\nexport const useQuery = <QueryData, Data = QueryData>(\n callback: (params: UseQueryCallbackParams) => Promise<QueryData>,\n options?: UseQueryOptions<QueryData, Data>\n): UseQueryReturn<Data> => {\n const enabled = options?.enabled ?? true;\n const retryCountRef = useRef(options?.retry ? getRetry(options.retry) : 0);\n const alreadyRequested = useRef(false);\n\n const [isFetching, setIsFetching] = useState(false);\n const [isLoading, setIsLoading] = useState(false);\n const [isError, setIsError] = useState(false);\n const [isRefetching, setIsRefetching] = useState(false);\n const [isSuccess, setIsSuccess] = useState(!!options?.initialData);\n\n const [error, setError] = useState<Error | undefined>(undefined);\n const [data, setData] = useState<Data | undefined>(options?.initialData);\n\n const abortControllerRef = useRef<AbortController>(new AbortController());\n const intervalIdRef = useRef<ReturnType<typeof setInterval>>();\n\n const keys = options?.keys ?? [];\n\n const abort = () => {\n abortControllerRef.current.abort();\n abortControllerRef.current = new AbortController();\n };\n\n const request = (action: 'init' | 'refetch') => {\n abort();\n\n setIsFetching(true);\n if (action === 'init') {\n alreadyRequested.current = true;\n setIsLoading(true);\n }\n if (action === 'refetch') setIsRefetching(true);\n callback({ signal: abortControllerRef.current.signal, keys })\n .then((response) => {\n const data = options?.select ? options?.select(response) : response;\n options?.onSuccess?.(data as Data);\n setData(data as Data);\n setIsSuccess(true);\n setError(undefined);\n setIsError(false);\n setIsFetching(false);\n if (action === 'init') setIsLoading(false);\n if (action === 'refetch') setIsRefetching(false);\n })\n .catch((error: Error) => {\n if (retryCountRef.current > 0) {\n retryCountRef.current -= 1;\n const retryDelay =\n typeof options?.retryDelay === 'function'\n ? options?.retryDelay(retryCountRef.current, error)\n : options?.retryDelay;\n\n if (retryDelay) {\n setTimeout(() => request(action), retryDelay);\n return;\n }\n\n return request(action);\n }\n options?.onError?.(error);\n setData(undefined);\n setIsSuccess(false);\n setError(error);\n setIsError(true);\n setIsFetching(false);\n if (action === 'init') setIsLoading(false);\n if (action === 'refetch') setIsRefetching(false);\n retryCountRef.current = options?.retry ? getRetry(options.retry) : 0;\n })\n .finally(() => {\n if (options?.refetchInterval) {\n const interval = setInterval(() => {\n clearInterval(interval);\n request('refetch');\n }, options?.refetchInterval);\n intervalIdRef.current = interval;\n }\n });\n };\n\n useMount(() => {\n if (!enabled) return;\n request('init');\n });\n\n useDidUpdate(() => {\n if (!enabled) return;\n request(alreadyRequested.current ? 'refetch' : 'init');\n }, [enabled, ...keys]);\n\n useEffect(() => {\n return () => {\n clearInterval(intervalIdRef.current);\n };\n }, [enabled, options?.refetchInterval, options?.retry, ...keys]);\n\n const refetch = () => request('refetch');\n\n const placeholderData =\n options?.placeholderData instanceof Function\n ? options?.placeholderData()\n : options?.placeholderData;\n\n return {\n abort,\n data: data ?? placeholderData,\n error,\n refetch,\n isFetching,\n isLoading,\n isError,\n isSuccess,\n isRefetching\n };\n};\n"],"names":["callback","options","_options$enabled","_options$keys","enabled","retryCountRef","useRef","retry","getRetry","alreadyRequested","_useState","useState","_useState2","_slicedToArray","isFetching","setIsFetching","_useState3","_useState4","isLoading","setIsLoading","_useState5","_useState6","isError","setIsError","_useState7","_useState8","isRefetching","setIsRefetching","_useState9","initialData","_useState10","isSuccess","setIsSuccess","_useState11","undefined","_useState12","error","setError","_useState13","_useState14","data","setData","abortControllerRef","AbortController","intervalIdRef","keys","abort","current","request","action","signal","then","response","_options$onSuccess","select","onSuccess","call","_options$onError","retryDelay","setTimeout","onError","refetchInterval","interval","setInterval","clearInterval","useMount","useDidUpdate","concat","_toConsumableArray","useEffect","placeholderData","Function","refetch"],"mappings":";iWAkFwB,SACtBA,EACAC,GACyB,IAAAC,EAAAC,EACnBC,EAA0BF,QAAnBA,EAAGD,aAAO,EAAPA,EAASG,eAAOF,IAAAA,GAAAA,EAC1BG,EAAgBC,EAAMA,OAACL,SAAAA,EAASM,MAAQC,EAAQA,SAACP,EAAQM,OAAS,GAClEE,EAAmBH,EAAMA,QAAC,GAEhCI,EAAoCC,EAAQA,UAAC,GAAMC,EAAAC,EAAAA,eAAAH,EAAA,GAA5CI,EAAUF,EAAA,GAAEG,EAAaH,EAAA,GAChCI,EAAkCL,EAAQA,UAAC,GAAMM,EAAAJ,EAAAA,eAAAG,EAAA,GAA1CE,EAASD,EAAA,GAAEE,EAAYF,EAAA,GAC9BG,EAA8BT,EAAQA,UAAC,GAAMU,EAAAR,EAAAA,eAAAO,EAAA,GAAtCE,EAAOD,EAAA,GAAEE,EAAUF,EAAA,GAC1BG,EAAwCb,EAAQA,UAAC,GAAMc,EAAAZ,EAAAA,eAAAW,EAAA,GAAhDE,EAAYD,EAAA,GAAEE,EAAeF,EAAA,GACpCG,EAAkCjB,EAAAA,WAAWV,UAAAA,EAAS4B,cAAYC,EAAAjB,EAAAA,eAAAe,EAAA,GAA3DG,EAASD,EAAA,GAAEE,EAAYF,EAAA,GAE9BG,EAA0BtB,EAAQA,cAAoBuB,GAAUC,EAAAtB,EAAAA,eAAAoB,EAAA,GAAzDG,EAAKD,EAAA,GAAEE,EAAQF,EAAA,GACtBG,EAAwB3B,EAAAA,SAA2BV,aAAAA,EAAAA,EAAS4B,aAAYU,EAAA1B,EAAAA,eAAAyB,EAAA,GAAjEE,EAAID,EAAA,GAAEE,EAAOF,EAAA,GAEdG,EAAqBpC,EAAAA,OAAwB,IAAIqC,iBACjDC,EAAgBtC,EAAAA,SAEhBuC,EAAoB1C,QAAhBA,EAAGF,aAAO,EAAPA,EAAS4C,YAAI1C,IAAAA,EAAAA,EAAI,GAExB2C,EAAQ,WACZJ,EAAmBK,QAAQD,QAC3BJ,EAAmBK,QAAU,IAAIJ,eAClC,EAEKK,EAAU,SAACC,GACfH,IAEA/B,GAAc,GACC,SAAXkC,IACFxC,EAAiBsC,SAAU,EAC3B5B,GAAa,IAEA,YAAX8B,GAAsBtB,GAAgB,GAC1C3B,EAAS,CAAEkD,OAAQR,EAAmBK,QAAQG,OAAQL,KAAAA,IACnDM,MAAK,SAACC,GAAa,IAAAC,EACZb,EAAOvC,SAAAA,EAASqD,OAASrD,eAAAA,EAASqD,OAAOF,GAAYA,EAC3DnD,SAAkB,QAAXoD,EAAPpD,EAASsD,iBAAS,IAAAF,GAAlBA,EAAAG,KAAAvD,EAAqBuC,GACrBC,EAAQD,GACRR,GAAa,GACbK,OAASH,GACTX,GAAW,GACXR,GAAc,GACC,SAAXkC,GAAmB9B,GAAa,GACrB,YAAX8B,GAAsBtB,GAAgB,EAC5C,IAAE,OACK,SAACS,GAAiB,IAAAqB,EACvB,GAAIpD,EAAc0C,QAAU,EAAG,CAC7B1C,EAAc0C,SAAW,EACzB,IAAMW,EAC2B,mBAAxBzD,aAAO,EAAPA,EAASyD,YACZzD,aAAO,EAAPA,EAASyD,WAAWrD,EAAc0C,QAASX,GAC3CnC,aAAAA,EAAAA,EAASyD,WAEf,OAAIA,OACFC,YAAW,WAAA,OAAMX,EAAQC,EAAO,GAAES,GAI7BV,EAAQC,EACjB,CACAhD,SAAgB,QAATwD,EAAPxD,EAAS2D,eAAO,IAAAH,GAAhBA,EAAAD,KAAAvD,EAAmBmC,GACnBK,OAAQP,GACRF,GAAa,GACbK,EAASD,GACTb,GAAW,GACXR,GAAc,GACC,SAAXkC,GAAmB9B,GAAa,GACrB,YAAX8B,GAAsBtB,GAAgB,GAC1CtB,EAAc0C,QAAU9C,SAAAA,EAASM,MAAQC,EAAQA,SAACP,EAAQM,OAAS,KAE7D,SAAC,WACP,GAAIN,SAAAA,EAAS4D,gBAAiB,CAC5B,IAAMC,EAAWC,aAAY,WAC3BC,cAAcF,GACdd,EAAQ,aACP/C,eAAAA,EAAS4D,iBACZjB,EAAcG,QAAUe,CAC1B,CACF,GACH,EAEDG,EAAAA,UAAS,WACF7D,GACL4C,EAAQ,OACV,IAEAkB,EAAAA,cAAa,WACN9D,GACL4C,EAAQvC,EAAiBsC,QAAU,UAAY,UAChD,CAAG3C,GAAO+D,OAAAC,EAAAA,mBAAKvB,KAEhBwB,EAAAA,WAAU,WACR,OAAO,WACLL,cAAcpB,EAAcG,QAC7B,CACF,GAAA,CAAG3C,EAASH,aAAAA,EAAAA,EAAS4D,gBAAiB5D,aAAO,EAAPA,EAASM,OAAK4D,OAAAC,EAAAA,mBAAKvB,KAE1D,IAEMyB,GACJrE,aAAAA,EAAAA,EAASqE,2BAA2BC,SAChCtE,aAAAA,EAAAA,EAASqE,kBACTrE,aAAAA,EAAAA,EAASqE,gBAEf,MAAO,CACLxB,MAAAA,EACAN,KAAMA,QAAAA,EAAQ8B,EACdlC,MAAAA,EACAoC,QAXc,WAAH,OAASxB,EAAQ,UAAU,EAYtClC,WAAAA,EACAI,UAAAA,EACAI,QAAAA,EACAS,UAAAA,EACAL,aAAAA,EAEJ"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.75 */
2
- "use strict";var r=require("../../_rollupPluginBabelHelpers-DQxhXgk7.js"),e=require("react"),t=require("react-dom");exports.useQueue=function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],u=e.useState(n),i=r._slicedToArray(u,2),o=i[0],a=i[1];return{add:function(e){return a((function(t){return[].concat(r._toConsumableArray(t),[e])}))},remove:function(){var e;return t.flushSync((function(){a((function(t){var n=r._toArray(t),u=n[0],i=n.slice(1);return e=u,i}))})),e},clear:function(){return a([])},first:o[0],last:o[o.length-1],size:o.length,queue:o}};
1
+ /* @license @siberiacancode/reactuse v0.0.77 */
2
+ "use strict";var r=require("../../_rollupPluginBabelHelpers-n1mTP8al.js"),e=require("react"),t=require("react-dom");exports.useQueue=function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],u=e.useState(n),i=r._slicedToArray(u,2),o=i[0],a=i[1];return{add:function(e){return a((function(t){return[].concat(r._toConsumableArray(t),[e])}))},remove:function(){var e;return t.flushSync((function(){a((function(t){var n=r._toArray(t),u=n[0],i=n.slice(1);return e=u,i}))})),e},clear:function(){return a([])},first:o[0],last:o[o.length-1],size:o.length,queue:o}};
3
3
  //# sourceMappingURL=useQueue.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.75 */
2
- "use strict";var e=require("../../_rollupPluginBabelHelpers-DQxhXgk7.js"),r=require("react");exports.useRaf=function(n,u){var t,i=r.useRef(null),l=r.useRef(0),a=r.useState(!1),c=e._slicedToArray(a,2),o=c[0],s=c[1],d=null===(t=null==u?void 0:u.enabled)||void 0===t||t,f=r.useRef(n);f.current=n;var m=function(e){var r=e-l.current;null!=u&&u.delay&&r<(null==u?void 0:u.delay)||(l.current=e,f.current({delta:r,timestamp:e})),i.current=window.requestAnimationFrame(m)},v=function(){o||(s(!0),l.current=0,i.current=window.requestAnimationFrame(m))};function w(){i.current&&(s(!1),window.cancelAnimationFrame(i.current),i.current=null)}return r.useEffect((function(){if(d)return v(),w}),[d,null==u?void 0:u.delay]),{active:o,pause:w,resume:v}};
1
+ /* @license @siberiacancode/reactuse v0.0.77 */
2
+ "use strict";var e=require("../../_rollupPluginBabelHelpers-n1mTP8al.js"),r=require("react");exports.useRaf=function(n,u){var t,i=r.useRef(null),l=r.useRef(0),a=r.useState(!1),c=e._slicedToArray(a,2),o=c[0],s=c[1],d=null===(t=null==u?void 0:u.enabled)||void 0===t||t,f=r.useRef(n);f.current=n;var m=function(e){var r=e-l.current;null!=u&&u.delay&&r<(null==u?void 0:u.delay)||(l.current=e,f.current({delta:r,timestamp:e})),i.current=window.requestAnimationFrame(m)},v=function(){o||(s(!0),l.current=0,i.current=window.requestAnimationFrame(m))};function w(){i.current&&(s(!1),window.cancelAnimationFrame(i.current),i.current=null)}return r.useEffect((function(){if(d)return v(),w}),[d,null==u?void 0:u.delay]),{active:o,pause:w,resume:v}};
3
3
  //# sourceMappingURL=useRaf.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.75 */
2
- "use strict";var e=require("../../_rollupPluginBabelHelpers-DQxhXgk7.js"),r=require("react"),n=require("../useUnmount/useUnmount.js");exports.useRafValue=function(u){var t=r.useRef(0),a=r.useState(u),i=e._slicedToArray(a,2),c=i[0],s=i[1];return n.useUnmount((function(){return cancelAnimationFrame(t.current)})),[c,function(e){cancelAnimationFrame(t.current),t.current=requestAnimationFrame((function(){return s(e)}))}]};
1
+ /* @license @siberiacancode/reactuse v0.0.77 */
2
+ "use strict";var e=require("../../_rollupPluginBabelHelpers-n1mTP8al.js"),r=require("react"),n=require("../useUnmount/useUnmount.js");exports.useRafValue=function(u){var t=r.useRef(0),a=r.useState(u),i=e._slicedToArray(a,2),c=i[0],s=i[1];return n.useUnmount((function(){return cancelAnimationFrame(t.current)})),[c,function(e){cancelAnimationFrame(t.current),t.current=requestAnimationFrame((function(){return s(e)}))}]};
3
3
  //# sourceMappingURL=useRafValue.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.75 */
1
+ /* @license @siberiacancode/reactuse v0.0.77 */
2
2
  "use strict";var e=require("react");exports.useRenderCount=function(){var r=e.useRef(0);return e.useEffect((function(){r.current+=1})),r.current};
3
3
  //# sourceMappingURL=useRenderCount.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.75 */
1
+ /* @license @siberiacancode/reactuse v0.0.77 */
2
2
  "use strict";var e=require("react");exports.useRenderInfo=function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"Unknown",r=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],t=e.useRef({component:n,renders:0,timestamp:Date.now(),sinceLast:0}),c=Date.now();return t.current.renders+=1,t.current.sinceLast=t.current.timestamp?c-t.current.timestamp:0,t.current.timestamp=c,r&&(console.group("".concat(n," info, render number: ").concat(t.current.renders)),console.log("Timestamp: ".concat(t.current.timestamp)),console.log("Since last render: ".concat(t.current.sinceLast)),console.log("Renders: ".concat(t.current.renders)),console.dir(t.current),console.groupEnd()),t.current};
3
3
  //# sourceMappingURL=useRenderInfo.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.75 */
2
- "use strict";var e=require("../../_rollupPluginBabelHelpers-DQxhXgk7.js"),r=require("react");exports.useRerender=function(){var t=r.useId(),u=r.useState(t),n=e._slicedToArray(u,2),a=n[0],i=n[1];return{id:a,update:function(){return i(Math.random().toString())}}};
1
+ /* @license @siberiacancode/reactuse v0.0.77 */
2
+ "use strict";var e=require("../../_rollupPluginBabelHelpers-n1mTP8al.js"),r=require("react");exports.useRerender=function(){var t=r.useId(),u=r.useState(t),n=e._slicedToArray(u,2),a=n[0],i=n[1];return{id:a,update:function(){return i(Math.random().toString())}}};
3
3
  //# sourceMappingURL=useRerender.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.75 */
2
- "use strict";var e=require("../../_rollupPluginBabelHelpers-DQxhXgk7.js"),r=require("react"),n=require("../../utils/helpers/getElement.js");exports.useResizeObserver=function(){var t,i="object"!==e._typeof(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===(t=null==l?void 0:l.enabled)||void 0===t||t,o=r.useState([]),s=e._slicedToArray(o,2),v=s[0],c=s[1],a=r.useState(),d=e._slicedToArray(a,2),f=d[0],g=d[1],b=r.useRef();return b.current=null==l?void 0:l.onChange,r.useEffect((function(){if(u||i||f){if(Array.isArray(i)){if(!i.length)return;var e=new ResizeObserver((function(r){var n;c(r),null===(n=b.current)||void 0===n||n.call(b,r,e)}));return i.forEach((function(r){var t=n.getElement(r);t&&e.observe(t,l)})),function(){e.disconnect()}}var r=i?n.getElement(i):f;if(r){var t=new ResizeObserver((function(e){var r;c(e),null===(r=b.current)||void 0===r||r.call(b,e,t)}));return t.observe(r,l),function(){t.disconnect()}}}}),[f,i,null==l?void 0:l.box,u]),i?{entries:v}:{ref:g,entries:v}};
1
+ /* @license @siberiacancode/reactuse v0.0.77 */
2
+ "use strict";var e=require("../../_rollupPluginBabelHelpers-n1mTP8al.js"),r=require("react"),n=require("../../utils/helpers/getElement.js");require("../../utils/helpers/isClient.js");exports.useResizeObserver=function(){var t,i="object"!==e._typeof(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===(t=null==l?void 0:l.enabled)||void 0===t||t,o=r.useState([]),s=e._slicedToArray(o,2),v=s[0],c=s[1],a=r.useState(),d=e._slicedToArray(a,2),f=d[0],g=d[1],h=r.useRef();return h.current=null==l?void 0:l.onChange,r.useEffect((function(){if(u||i||f){if(Array.isArray(i)){if(!i.length)return;var e=new ResizeObserver((function(r){var n;c(r),null===(n=h.current)||void 0===n||n.call(h,r,e)}));return i.forEach((function(r){var t=n.getElement(r);t&&e.observe(t,l)})),function(){e.disconnect()}}var r=i?n.getElement(i):f;if(r){var t=new ResizeObserver((function(e){var r;c(e),null===(r=h.current)||void 0===r||r.call(h,e,t)}));return t.observe(r,l),function(){t.disconnect()}}}}),[f,i,null==l?void 0:l.box,u]),i?{entries:v}:{ref:g,entries:v}};
3
3
  //# sourceMappingURL=useResizeObserver.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useResizeObserver.js","sources":["../../../../src/hooks/useResizeObserver/useResizeObserver.ts"],"sourcesContent":["import type { RefObject } from 'react';\n\nimport { useEffect, useRef, useState } from 'react';\n\nimport { getElement } from '@/utils/helpers';\n\n/** The resize observer target element type */\nexport type UseResizeObserverTarget =\n | (() => Element)\n | Element\n | RefObject<Element | null | undefined>;\n\n/** The resize observer options type */\nexport interface UseResizeObserverOptions extends ResizeObserverOptions {\n enabled?: boolean;\n onChange?: (entries: ResizeObserverEntry[], observer: ResizeObserver) => void;\n}\n\n/** The resize observer return type */\nexport interface UseResizeObserverReturn {\n entries: ResizeObserverEntry[];\n}\n\nexport interface UseResizeObserver {\n <Target extends UseResizeObserverTarget | UseResizeObserverTarget[]>(\n target: Target,\n options?: UseResizeObserverOptions\n ): UseResizeObserverReturn;\n\n <Target extends UseResizeObserverTarget | UseResizeObserverTarget[]>(\n options?: UseResizeObserverOptions,\n target?: never\n ): UseResizeObserverReturn & { ref: (node: Target) => void };\n}\n\n/**\n * @name useResizeObserver\n * @description - Hook that gives you resize observer state\n * @category Browser\n *\n * @overload\n * @template Target The target element\n * @param {boolean} [options.enabled=true] The IntersectionObserver options\n * @param {boolean} [options.box] The IntersectionObserver options\n * @param {(entries: ResizeObserverEntry[], observer: ResizeObserver) => void} [options.onChange] The callback to execute when resize is detected\n * @returns {UseResizeObserverReturn & { ref: (node: Target) => void }} An object containing the resize observer state\n *\n * @example\n * const { ref, entries } = useResizeObserver();\n *\n * @overload\n * @template Target The target element\n * @param {Target} target The target element to observe\n * @param {boolean} [options.enabled=true] The IntersectionObserver options\n * @param {boolean} [options.box] The IntersectionObserver options\n * @param {(entries: ResizeObserverEntry[], observer: ResizeObserver) => void} [options.onChange] The callback to execute when resize is detected\n * @returns {UseResizeObserverReturn} An object containing the resize observer state\n *\n * @example\n * const { entries } = useResizeObserver(ref);\n */\nexport const useResizeObserver = ((...params: any[]) => {\n const target = (\n typeof params[0] === 'object' && !('current' in params[0]) ? undefined : params[0]\n ) as UseResizeObserverTarget | UseResizeObserverTarget[] | undefined;\n const options = (target ? params[1] : params[0]) as UseResizeObserverOptions | undefined;\n const enabled = options?.enabled ?? true;\n\n const [entries, setEntries] = useState<ResizeObserverEntry[]>([]);\n\n const [internalRef, setInternalRef] = useState<Element>();\n const internalOnChangeRef = useRef<UseResizeObserverOptions['onChange']>();\n internalOnChangeRef.current = options?.onChange;\n\n useEffect(() => {\n if (!enabled && !target && !internalRef) return;\n\n if (Array.isArray(target)) {\n if (!target.length) return;\n const observer = new ResizeObserver((entries) => {\n setEntries(entries);\n internalOnChangeRef.current?.(entries, observer);\n });\n\n target.forEach((target) => {\n const element = getElement(target);\n if (!element) return;\n observer.observe(element as Element, options);\n });\n\n return () => {\n observer.disconnect();\n };\n }\n\n const element = target ? getElement(target) : internalRef;\n if (!element) return;\n\n const observer = new ResizeObserver((entries) => {\n setEntries(entries);\n internalOnChangeRef.current?.(entries, observer);\n });\n observer.observe(element as Element, options);\n\n return () => {\n observer.disconnect();\n };\n }, [internalRef, target, options?.box, enabled]);\n\n if (target) return { entries };\n return {\n ref: setInternalRef,\n entries\n };\n}) as UseResizeObserver;\n"],"names":["_options$enabled","target","_typeof","arguments","length","undefined","options","enabled","_useState","useState","_useState2","_slicedToArray","entries","setEntries","_useState3","_useState4","internalRef","setInternalRef","internalOnChangeRef","useRef","current","onChange","useEffect","Array","isArray","observer","ResizeObserver","_internalOnChangeRef$","call","forEach","element","getElement","observe","disconnect","_internalOnChangeRef$2","box","ref"],"mappings":";sKA6DkC,WAAsB,IAAAA,EAChDC,EACiB,WAArBC,EAAAA,QAAAC,UAAAC,QAAA,OAAAC,EAAAF,UAAqB,KAAc,YAASA,UAAAC,eAAAC,EAAAF,UAAA,IAA0BA,UAAAC,QAAA,OAAAC,EAAAF,UACJ,QADLE,EAEzDC,EAAWL,EAAME,UAAAC,QAAAC,OAAAA,EAAAF,UAAA,GAAAA,UAAAC,eAAAC,EAAAF,UAAiE,GAClFI,EAA0BP,QAAnBA,EAAGM,aAAO,EAAPA,EAASC,eAAOP,IAAAA,GAAAA,EAEhCQ,EAA8BC,EAAQA,SAAwB,IAAGC,EAAAC,EAAAA,eAAAH,EAAA,GAA1DI,EAAOF,EAAA,GAAEG,EAAUH,EAAA,GAE1BI,EAAsCL,EAAAA,WAAmBM,EAAAJ,EAAAA,eAAAG,EAAA,GAAlDE,EAAWD,EAAA,GAAEE,EAAcF,EAAA,GAC5BG,EAAsBC,EAAAA,SAsC5B,OArCAD,EAAoBE,QAAUd,aAAO,EAAPA,EAASe,SAEvCC,EAAAA,WAAU,WACR,GAAKf,GAAYN,GAAWe,EAA5B,CAEA,GAAIO,MAAMC,QAAQvB,GAAS,CACzB,IAAKA,EAAOG,OAAQ,OACpB,IAAMqB,EAAW,IAAIC,gBAAe,SAACd,GAAY,IAAAe,EAC/Cd,EAAWD,WACXe,EAAAT,EAAoBE,eAAO,IAAAO,GAA3BA,EAAAC,KAAAV,EAA8BN,EAASa,EACzC,IAQA,OANAxB,EAAO4B,SAAQ,SAAC5B,GACd,IAAM6B,EAAUC,EAAUA,WAAC9B,GACtB6B,GACLL,EAASO,QAAQF,EAAoBxB,EACvC,IAEO,WACLmB,EAASQ,YACV,CACH,CAEA,IAAMH,EAAU7B,EAAS8B,aAAW9B,GAAUe,EAC9C,GAAKc,EAAL,CAEA,IAAML,EAAW,IAAIC,gBAAe,SAACd,GAAY,IAAAsB,EAC/CrB,EAAWD,WACXsB,EAAAhB,EAAoBE,eAAO,IAAAc,GAA3BA,EAAAN,KAAAV,EAA8BN,EAASa,EACzC,IAGA,OAFAA,EAASO,QAAQF,EAAoBxB,GAE9B,WACLmB,EAASQ,YACV,CAVa,CArB2B,CAgC1C,GAAE,CAACjB,EAAaf,EAAQK,aAAO,EAAPA,EAAS6B,IAAK5B,IAEnCN,EAAe,CAAEW,QAAAA,GACd,CACLwB,IAAKnB,EACLL,QAAAA,EAEJ"}
1
+ {"version":3,"file":"useResizeObserver.js","sources":["../../../../src/hooks/useResizeObserver/useResizeObserver.ts"],"sourcesContent":["import type { RefObject } from 'react';\n\nimport { useEffect, useRef, useState } from 'react';\n\nimport { getElement } from '@/utils/helpers';\n\n/** The resize observer target element type */\nexport type UseResizeObserverTarget =\n | (() => Element)\n | Element\n | RefObject<Element | null | undefined>;\n\n/** The resize observer options type */\nexport interface UseResizeObserverOptions extends ResizeObserverOptions {\n enabled?: boolean;\n onChange?: (entries: ResizeObserverEntry[], observer: ResizeObserver) => void;\n}\n\n/** The resize observer return type */\nexport interface UseResizeObserverReturn {\n entries: ResizeObserverEntry[];\n}\n\nexport interface UseResizeObserver {\n <Target extends UseResizeObserverTarget | UseResizeObserverTarget[]>(\n target: Target,\n options?: UseResizeObserverOptions\n ): UseResizeObserverReturn;\n\n <Target extends UseResizeObserverTarget | UseResizeObserverTarget[]>(\n options?: UseResizeObserverOptions,\n target?: never\n ): UseResizeObserverReturn & { ref: (node: Target) => void };\n}\n\n/**\n * @name useResizeObserver\n * @description - Hook that gives you resize observer state\n * @category Browser\n *\n * @overload\n * @template Target The target element\n * @param {boolean} [options.enabled=true] The IntersectionObserver options\n * @param {boolean} [options.box] The IntersectionObserver options\n * @param {(entries: ResizeObserverEntry[], observer: ResizeObserver) => void} [options.onChange] The callback to execute when resize is detected\n * @returns {UseResizeObserverReturn & { ref: (node: Target) => void }} An object containing the resize observer state\n *\n * @example\n * const { ref, entries } = useResizeObserver();\n *\n * @overload\n * @template Target The target element\n * @param {Target} target The target element to observe\n * @param {boolean} [options.enabled=true] The IntersectionObserver options\n * @param {boolean} [options.box] The IntersectionObserver options\n * @param {(entries: ResizeObserverEntry[], observer: ResizeObserver) => void} [options.onChange] The callback to execute when resize is detected\n * @returns {UseResizeObserverReturn} An object containing the resize observer state\n *\n * @example\n * const { entries } = useResizeObserver(ref);\n */\nexport const useResizeObserver = ((...params: any[]) => {\n const target = (\n typeof params[0] === 'object' && !('current' in params[0]) ? undefined : params[0]\n ) as UseResizeObserverTarget | UseResizeObserverTarget[] | undefined;\n const options = (target ? params[1] : params[0]) as UseResizeObserverOptions | undefined;\n const enabled = options?.enabled ?? true;\n\n const [entries, setEntries] = useState<ResizeObserverEntry[]>([]);\n\n const [internalRef, setInternalRef] = useState<Element>();\n const internalOnChangeRef = useRef<UseResizeObserverOptions['onChange']>();\n internalOnChangeRef.current = options?.onChange;\n\n useEffect(() => {\n if (!enabled && !target && !internalRef) return;\n\n if (Array.isArray(target)) {\n if (!target.length) return;\n const observer = new ResizeObserver((entries) => {\n setEntries(entries);\n internalOnChangeRef.current?.(entries, observer);\n });\n\n target.forEach((target) => {\n const element = getElement(target);\n if (!element) return;\n observer.observe(element as Element, options);\n });\n\n return () => {\n observer.disconnect();\n };\n }\n\n const element = target ? getElement(target) : internalRef;\n if (!element) return;\n\n const observer = new ResizeObserver((entries) => {\n setEntries(entries);\n internalOnChangeRef.current?.(entries, observer);\n });\n observer.observe(element as Element, options);\n\n return () => {\n observer.disconnect();\n };\n }, [internalRef, target, options?.box, enabled]);\n\n if (target) return { entries };\n return {\n ref: setInternalRef,\n entries\n };\n}) as UseResizeObserver;\n"],"names":["_options$enabled","target","_typeof","arguments","length","undefined","options","enabled","_useState","useState","_useState2","_slicedToArray","entries","setEntries","_useState3","_useState4","internalRef","setInternalRef","internalOnChangeRef","useRef","current","onChange","useEffect","Array","isArray","observer","ResizeObserver","_internalOnChangeRef$","call","forEach","element","getElement","observe","disconnect","_internalOnChangeRef$2","box","ref"],"mappings":";iNA6DkC,WAAsB,IAAAA,EAChDC,EACiB,WAArBC,EAAAA,QAAAC,UAAAC,QAAA,OAAAC,EAAAF,UAAqB,KAAc,YAASA,UAAAC,eAAAC,EAAAF,UAAA,IAA0BA,UAAAC,QAAA,OAAAC,EAAAF,UACJ,QADLE,EAEzDC,EAAWL,EAAME,UAAAC,QAAAC,OAAAA,EAAAF,UAAA,GAAAA,UAAAC,eAAAC,EAAAF,UAAiE,GAClFI,EAA0BP,QAAnBA,EAAGM,aAAO,EAAPA,EAASC,eAAOP,IAAAA,GAAAA,EAEhCQ,EAA8BC,EAAQA,SAAwB,IAAGC,EAAAC,EAAAA,eAAAH,EAAA,GAA1DI,EAAOF,EAAA,GAAEG,EAAUH,EAAA,GAE1BI,EAAsCL,EAAAA,WAAmBM,EAAAJ,EAAAA,eAAAG,EAAA,GAAlDE,EAAWD,EAAA,GAAEE,EAAcF,EAAA,GAC5BG,EAAsBC,EAAAA,SAsC5B,OArCAD,EAAoBE,QAAUd,aAAO,EAAPA,EAASe,SAEvCC,EAAAA,WAAU,WACR,GAAKf,GAAYN,GAAWe,EAA5B,CAEA,GAAIO,MAAMC,QAAQvB,GAAS,CACzB,IAAKA,EAAOG,OAAQ,OACpB,IAAMqB,EAAW,IAAIC,gBAAe,SAACd,GAAY,IAAAe,EAC/Cd,EAAWD,WACXe,EAAAT,EAAoBE,eAAO,IAAAO,GAA3BA,EAAAC,KAAAV,EAA8BN,EAASa,EACzC,IAQA,OANAxB,EAAO4B,SAAQ,SAAC5B,GACd,IAAM6B,EAAUC,EAAUA,WAAC9B,GACtB6B,GACLL,EAASO,QAAQF,EAAoBxB,EACvC,IAEO,WACLmB,EAASQ,YACV,CACH,CAEA,IAAMH,EAAU7B,EAAS8B,aAAW9B,GAAUe,EAC9C,GAAKc,EAAL,CAEA,IAAML,EAAW,IAAIC,gBAAe,SAACd,GAAY,IAAAsB,EAC/CrB,EAAWD,WACXsB,EAAAhB,EAAoBE,eAAO,IAAAc,GAA3BA,EAAAN,KAAAV,EAA8BN,EAASa,EACzC,IAGA,OAFAA,EAASO,QAAQF,EAAoBxB,GAE9B,WACLmB,EAASQ,YACV,CAVa,CArB2B,CAgC1C,GAAE,CAACjB,EAAaf,EAAQK,aAAO,EAAPA,EAAS6B,IAAK5B,IAEnCN,EAAe,CAAEW,QAAAA,GACd,CACLwB,IAAKnB,EACLL,QAAAA,EAEJ"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.75 */
2
- "use strict";var n=require("../../_rollupPluginBabelHelpers-DQxhXgk7.js"),e=require("react");exports.useScreenOrientation=function(){var o="undefined"!=typeof window&&"screen"in window&&"orientation"in window.screen,t=o?window.screen.orientation:{},i=e.useState((function(){var n;return{angle:null!==(n=null==t?void 0:t.angle)&&void 0!==n?n:0,orientationType:null==t?void 0:t.type}})),r=n._slicedToArray(i,2),u=r[0],c=r[1];e.useEffect((function(){if(o){var n=function(){return c({angle:t.angle,orientationType:t.type})};return window.addEventListener("orientationchange",n),function(){window.removeEventListener("orientationchange",n)}}}));return{supported:o,value:u,lock:function(n){if(o&&"function"==typeof t.lock)return t.lock(n)},unlock:function(){o&&"function"==typeof t.unlock&&t.unlock()}}};
1
+ /* @license @siberiacancode/reactuse v0.0.77 */
2
+ "use strict";var n=require("../../_rollupPluginBabelHelpers-n1mTP8al.js"),e=require("react");exports.useScreenOrientation=function(){var o="undefined"!=typeof window&&"screen"in window&&"orientation"in window.screen,t=o?window.screen.orientation:{},i=e.useState((function(){var n;return{angle:null!==(n=null==t?void 0:t.angle)&&void 0!==n?n:0,orientationType:null==t?void 0:t.type}})),r=n._slicedToArray(i,2),u=r[0],c=r[1];e.useEffect((function(){if(o){var n=function(){return c({angle:t.angle,orientationType:t.type})};return window.addEventListener("orientationchange",n),function(){window.removeEventListener("orientationchange",n)}}}));return{supported:o,value:u,lock:function(n){if(o&&"function"==typeof t.lock)return t.lock(n)},unlock:function(){o&&"function"==typeof t.unlock&&t.unlock()}}};
3
3
  //# sourceMappingURL=useScreenOrientation.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.75 */
2
- "use strict";var e=require("../../_rollupPluginBabelHelpers-DQxhXgk7.js"),r=require("react"),t="script-status";exports.SCRIPT_STATUS_ATTRIBUTE_NAME=t,exports.useScript=function(n){var o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=r.useState((function(){var e=document.querySelector('script[src="'.concat(n,'"]')),r=null==e?void 0:e.getAttribute(t);return r||(e?"unknown":"loading")})),u=e._slicedToArray(i,2),c=u[0],s=u[1],a=o.removeOnUnmount,d=void 0===a||a,l=o.async,v=void 0===l||l;return r.useEffect((function(){var r=document.querySelector('script[src="'.concat(n,'"]')),i=null==r?void 0:r.getAttribute(t);if(i)return s(i);if(r)return s("unknown");var u=document.createElement("script");u.src=n,u.async=v;for(var c=0,a=Object.entries(o);c<a.length;c++){var l=e._slicedToArray(a[c],2),f=l[0],p=l[1];u.setAttribute(f,String(p))}u.setAttribute(t,"loading"),document.body.appendChild(u);var A=function(){u.setAttribute(t,"ready"),s("ready")},m=function(){u.setAttribute(t,"error"),s("error")};return u.addEventListener("load",A),u.addEventListener("error",m),function(){d&&u.remove(),u.removeEventListener("load",A),u.removeEventListener("error",m)}}),[n,d]),c};
1
+ /* @license @siberiacancode/reactuse v0.0.77 */
2
+ "use strict";var e=require("../../_rollupPluginBabelHelpers-n1mTP8al.js"),r=require("react"),t="script-status";exports.SCRIPT_STATUS_ATTRIBUTE_NAME=t,exports.useScript=function(n){var o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=r.useState((function(){var e=document.querySelector('script[src="'.concat(n,'"]')),r=null==e?void 0:e.getAttribute(t);return r||(e?"unknown":"loading")})),u=e._slicedToArray(i,2),c=u[0],s=u[1],a=o.removeOnUnmount,d=void 0===a||a,l=o.async,v=void 0===l||l;return r.useEffect((function(){var r=document.querySelector('script[src="'.concat(n,'"]')),i=null==r?void 0:r.getAttribute(t);if(i)return s(i);if(r)return s("unknown");var u=document.createElement("script");u.src=n,u.async=v;for(var c=0,a=Object.entries(o);c<a.length;c++){var l=e._slicedToArray(a[c],2),f=l[0],p=l[1];u.setAttribute(f,String(p))}u.setAttribute(t,"loading"),document.body.appendChild(u);var A=function(){u.setAttribute(t,"ready"),s("ready")},m=function(){u.setAttribute(t,"error"),s("error")};return u.addEventListener("load",A),u.addEventListener("error",m),function(){d&&u.remove(),u.removeEventListener("load",A),u.removeEventListener("error",m)}}),[n,d]),c};
3
3
  //# sourceMappingURL=useScript.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.75 */
2
- "use strict";var e=require("../../_rollupPluginBabelHelpers-DQxhXgk7.js"),r=require("../useStorage/useStorage.js");require("react"),require("../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js"),require("../../utils/helpers/isClient.js");exports.useSessionStorage=function(s,t,u){return r.useStorage(s,e._objectSpread2({initialValue:t,storage:window.sessionStorage},u))};
1
+ /* @license @siberiacancode/reactuse v0.0.77 */
2
+ "use strict";var e=require("../../_rollupPluginBabelHelpers-n1mTP8al.js"),r=require("../useStorage/useStorage.js");require("react"),require("../../utils/helpers/isClient.js"),require("../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js");exports.useSessionStorage=function(s,t,u){return r.useStorage(s,e._objectSpread2({initialValue:t,storage:window.sessionStorage},u))};
3
3
  //# sourceMappingURL=useSessionStorage.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.75 */
2
- "use strict";var e=require("../../_rollupPluginBabelHelpers-DQxhXgk7.js"),n=require("react");exports.useSet=function(r){var t=n.useState(new Set(r)),u=e._slicedToArray(t,2),i=u[0],c=u[1];return{value:i,size:i.size,has:function(e){return i.has(e)},add:function(e){return c((function(n){return new Set(n).add(e)}))},remove:function(e){return c((function(n){if(!n.has(e))return n;var r=new Set(n);return r.delete(e),r}))},clear:function(){return c(new Set)},reset:function(){return c(new Set(r))},toggle:function(e){return c((function(n){if(!n.has(e))return new Set(n).add(e);var r=new Set(n);return r.delete(e),r}))},union:function(e){return c(i.union(e))},difference:function(e){return c(i.difference(e))},symmetricDifference:function(e){return c(i.symmetricDifference(e))},intersection:function(e){return c(i.intersection(e))}}};
1
+ /* @license @siberiacancode/reactuse v0.0.77 */
2
+ "use strict";var e=require("../../_rollupPluginBabelHelpers-n1mTP8al.js"),n=require("react");exports.useSet=function(r){var t=n.useState(new Set(r)),u=e._slicedToArray(t,2),i=u[0],c=u[1];return{value:i,size:i.size,has:function(e){return i.has(e)},add:function(e){return c((function(n){return new Set(n).add(e)}))},remove:function(e){return c((function(n){if(!n.has(e))return n;var r=new Set(n);return r.delete(e),r}))},clear:function(){return c(new Set)},reset:function(){return c(new Set(r))},toggle:function(e){return c((function(n){if(!n.has(e))return new Set(n).add(e);var r=new Set(n);return r.delete(e),r}))},union:function(e){return c(i.union(e))},difference:function(e){return c(i.difference(e))},symmetricDifference:function(e){return c(i.symmetricDifference(e))},intersection:function(e){return c(i.intersection(e))}}};
3
3
  //# sourceMappingURL=useSet.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.75 */
2
- "use strict";var r=require("../../_rollupPluginBabelHelpers-DQxhXgk7.js");exports.useShare=function(e){var a="undefined"!=typeof navigator&&"share"in navigator,n=function(){var n=r._asyncToGenerator(r._regeneratorRuntime().mark((function n(t){var u;return r._regeneratorRuntime().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(a){n.next=2;break}return n.abrupt("return");case 2:return(u=r._objectSpread2(r._objectSpread2({},e),t)).files&&navigator.canShare({files:u.files})&&navigator.share(u),n.abrupt("return",navigator.share(u));case 5:case"end":return n.stop()}}),n)})));return function(r){return n.apply(this,arguments)}}();return{share:n,supported:a}};
1
+ /* @license @siberiacancode/reactuse v0.0.77 */
2
+ "use strict";var r=require("../../_rollupPluginBabelHelpers-n1mTP8al.js");exports.useShare=function(e){var a="undefined"!=typeof navigator&&"share"in navigator,n=function(){var n=r._asyncToGenerator(r._regeneratorRuntime().mark((function n(t){var u;return r._regeneratorRuntime().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(a){n.next=2;break}return n.abrupt("return");case 2:return(u=r._objectSpread2(r._objectSpread2({},e),t)).files&&navigator.canShare({files:u.files})&&navigator.share(u),n.abrupt("return",navigator.share(u));case 5:case"end":return n.stop()}}),n)})));return function(r){return n.apply(this,arguments)}}();return{share:n,supported:a}};
3
3
  //# sourceMappingURL=useShare.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.75 */
2
- "use strict";var t=require("../../_rollupPluginBabelHelpers-DQxhXgk7.js"),e=require("react");exports.useStep=function(r){var n="object"===t._typeof(r)?r.max:r,u="object"===t._typeof(r)?r.initial:1,i=e.useRef(u>n||u<1?1:u),s=e.useState(u),c=t._slicedToArray(s,2),o=c[0],a=c[1],f=1===o,l=o===n;return{counts:n,currentStep:o,isFirst:f,isLast:l,next:function(){l||a((function(t){return t+1}))},back:function(){f||a((function(t){return t-1}))},reset:function(){return a(i.current)},set:function(t){return"first"===t?a(i.current):"last"===t||t>=n?a(n):t<=1?a(1):void a(t)}}};
1
+ /* @license @siberiacancode/reactuse v0.0.77 */
2
+ "use strict";var t=require("../../_rollupPluginBabelHelpers-n1mTP8al.js"),e=require("react");exports.useStep=function(r){var n="object"===t._typeof(r)?r.max:r,u="object"===t._typeof(r)?r.initial:1,i=e.useRef(u>n||u<1?1:u),s=e.useState(u),c=t._slicedToArray(s,2),o=c[0],a=c[1],f=1===o,l=o===n;return{counts:n,currentStep:o,isFirst:f,isLast:l,next:function(){l||a((function(t){return t+1}))},back:function(){f||a((function(t){return t-1}))},reset:function(){return a(i.current)},set:function(t){return"first"===t?a(i.current):"last"===t||t>=n?a(n):t<=1?a(1):void a(t)}}};
3
3
  //# sourceMappingURL=useStep.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.75 */
2
- "use strict";var e=require("../../_rollupPluginBabelHelpers-DQxhXgk7.js"),t=require("react"),r=require("../useEvent/useEvent.js"),n=function(e){return e?{days:Math.floor(e/86400),hours:Math.floor(e%86400/3600),minutes:Math.floor(e%3600/60),seconds:Math.floor(e%60),count:e}:{days:0,hours:0,minutes:0,seconds:0,count:0}};exports.useStopwatch=function(){for(var o,u,s=arguments.length,c=new Array(s),a=0;a<s;a++)c[a]=arguments[a];var i=null!==(o="number"==typeof c[0]?c[0]:null===(u=c[0])||void 0===u?void 0:u.initialTime)&&void 0!==o?o:0,d="number"==typeof c[0]?c[1]:c[0],l=t.useState(n(i)),f=e._slicedToArray(l,2),p=f[0],b=f[1],v=t.useState(!(null!=d&&d.enabled)),S=e._slicedToArray(v,2),_=S[0],j=S[1],h=r.useEvent((function(){var t=p.count+1;return t%60==0?b(e._objectSpread2(e._objectSpread2({},p),{},{minutes:p.minutes+1,seconds:0,count:t})):t%3600==0?b(e._objectSpread2(e._objectSpread2({},p),{},{hours:p.hours+1,minutes:0,seconds:0,count:t})):t%86400==0?b(e._objectSpread2(e._objectSpread2({},p),{},{days:p.days+1,hours:0,minutes:0,seconds:0,count:t})):void b(e._objectSpread2(e._objectSpread2({},p),{},{seconds:p.seconds+1,count:t}))}));return t.useEffect((function(){if(!_){var e=setInterval((function(){return h()}),1e3);return function(){return clearInterval(e)}}}),[_]),e._objectSpread2(e._objectSpread2({},p),{},{paused:_,pause:function(){return j(!0)},start:function(){return j(!1)},reset:function(){return b(n(i))},toggle:function(){return j((function(e){return!e}))}})};
1
+ /* @license @siberiacancode/reactuse v0.0.77 */
2
+ "use strict";var e=require("../../_rollupPluginBabelHelpers-n1mTP8al.js"),r=require("react");require("../../utils/helpers/isClient.js");var t=require("../useEvent/useEvent.js");require("../../index-TsTLayBH.js"),require("react-dom");var n=function(e){return e?{days:Math.floor(e/86400),hours:Math.floor(e%86400/3600),minutes:Math.floor(e%3600/60),seconds:Math.floor(e%60),count:e}:{days:0,hours:0,minutes:0,seconds:0,count:0}};exports.useStopwatch=function(){for(var u,o,s=arguments.length,c=new Array(s),a=0;a<s;a++)c[a]=arguments[a];var i=null!==(u="number"==typeof c[0]?c[0]:null===(o=c[0])||void 0===o?void 0:o.initialTime)&&void 0!==u?u:0,d="number"==typeof c[0]?c[1]:c[0],l=r.useState(n(i)),f=e._slicedToArray(l,2),p=f[0],v=f[1],b=r.useState(!(null!=d&&d.enabled)),j=e._slicedToArray(b,2),S=j[0],_=j[1],h=t.useEvent((function(){var r=p.count+1;return r%60==0?v(e._objectSpread2(e._objectSpread2({},p),{},{minutes:p.minutes+1,seconds:0,count:r})):r%3600==0?v(e._objectSpread2(e._objectSpread2({},p),{},{hours:p.hours+1,minutes:0,seconds:0,count:r})):r%86400==0?v(e._objectSpread2(e._objectSpread2({},p),{},{days:p.days+1,hours:0,minutes:0,seconds:0,count:r})):void v(e._objectSpread2(e._objectSpread2({},p),{},{seconds:p.seconds+1,count:r}))}));return r.useEffect((function(){if(!S){var e=setInterval((function(){return h()}),1e3);return function(){return clearInterval(e)}}}),[S]),e._objectSpread2(e._objectSpread2({},p),{},{paused:S,pause:function(){return _(!0)},start:function(){return _(!1)},reset:function(){return v(n(i))},toggle:function(){return _((function(e){return!e}))}})};
3
3
  //# sourceMappingURL=useStopwatch.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useStopwatch.js","sources":["../../../../src/hooks/useStopwatch/useStopwatch.ts"],"sourcesContent":["import { useEffect, useState } from 'react';\n\nimport { useEvent } from '@/hooks';\n\nconst getStopwatchTime = (time: number) => {\n if (!time)\n return {\n days: 0,\n hours: 0,\n minutes: 0,\n seconds: 0,\n count: 0\n };\n\n const days = Math.floor(time / 86400);\n const hours = Math.floor((time % 86400) / 3600);\n const minutes = Math.floor((time % 3600) / 60);\n const seconds = Math.floor(time % 60);\n\n return { days, hours, minutes, seconds, count: time };\n};\n\n/** The use stopwatch return type */\nexport interface UseStopwatchReturn {\n /** The total count of the stopwatch */\n count: number;\n /** The day count of the stopwatch */\n days: number;\n /** The hour count of the stopwatch */\n hours: number;\n /** The minute count of the stopwatch */\n minutes: number;\n /** The over state of the stopwatch */\n over: boolean;\n /** The paused state of the stopwatch */\n paused: boolean;\n /** The second count of the stopwatch */\n seconds: number;\n /** The function to pause the stopwatch */\n pause: () => void;\n /** The function to reset the stopwatch */\n reset: () => void;\n /** The function to start the stopwatch */\n start: () => void;\n /** The function to toggle the stopwatch */\n toggle: () => void;\n}\n\n/** The use stopwatch options */\nexport interface UseStopwatchOptions {\n /** The enabled state of the timer */\n enabled?: boolean;\n}\n\ninterface UseStopwatch {\n (initialTime?: number, options?: UseStopwatchOptions): UseStopwatchReturn;\n (options?: UseStopwatchOptions & { initialTime?: number }): UseStopwatchReturn;\n}\n/**\n * @name useStopwatch\n * @description - Hook that creates a stopwatch functionality\n * @category Time\n *\n * @overload\n * @param {number} [initialTime=0] The initial time of the timer\n * @param {boolean} [options.enabled=true] The enabled state of the timer\n * @returns {UseStopwatchReturn} An object containing the current time and functions to interact with the timer\n *\n * @example\n * const { seconds, minutes, start, pause, reset } = useStopwatch(1000, { enabled: false });\n *\n * @overload\n * @param {number} [options.initialTime=0] -The initial time of the timer\n * @param {boolean} [options.enabled=true] The enabled state of the timer\n * @returns {UseStopwatchReturn} An object containing the current time and functions to interact with the timer\n *\n * @example\n * const { seconds, minutes, start, pause, reset } = useStopwatch({ initialTime: 1000, enabled: false });\n */\nexport const useStopwatch = ((...params: any[]) => {\n const initialTime =\n (typeof params[0] === 'number'\n ? (params[0] as number | undefined)\n : (params[0] as UseStopwatchOptions & { initialTime?: number })?.initialTime) ?? 0;\n\n const options =\n typeof params[0] === 'number'\n ? (params[1] as UseStopwatchOptions | undefined)\n : (params[0] as (UseStopwatchOptions & { initialTime?: number }) | undefined);\n\n const [time, setTime] = useState(getStopwatchTime(initialTime));\n const [paused, setPaused] = useState(!options?.enabled);\n\n const onInterval = useEvent(() => {\n const updatedCount = time.count + 1;\n\n if (updatedCount % 60 === 0) {\n return setTime({\n ...time,\n minutes: time.minutes + 1,\n seconds: 0,\n count: updatedCount\n });\n }\n\n if (updatedCount % (60 * 60) === 0) {\n return setTime({\n ...time,\n hours: time.hours + 1,\n minutes: 0,\n seconds: 0,\n count: updatedCount\n });\n }\n\n if (updatedCount % (60 * 60 * 24) === 0) {\n return setTime({\n ...time,\n days: time.days + 1,\n hours: 0,\n minutes: 0,\n seconds: 0,\n count: updatedCount\n });\n }\n\n setTime({\n ...time,\n seconds: time.seconds + 1,\n count: updatedCount\n });\n });\n\n useEffect(() => {\n if (paused) return;\n const interval = setInterval(() => onInterval(), 1000);\n return () => clearInterval(interval);\n }, [paused]);\n\n return {\n ...time,\n paused,\n pause: () => setPaused(true),\n start: () => setPaused(false),\n reset: () => setTime(getStopwatchTime(initialTime)),\n toggle: () => setPaused((prevPause) => !prevPause)\n };\n}) as UseStopwatch;\n"],"names":["getStopwatchTime","time","days","Math","floor","hours","minutes","seconds","count","_ref","_params$","_len","arguments","length","params","Array","_key","initialTime","options","_useState","useState","_useState2","_slicedToArray","setTime","_useState3","enabled","_useState4","paused","setPaused","onInterval","useEvent","updatedCount","_objectSpread","_objectSpread2","useEffect","interval","setInterval","clearInterval","pause","start","reset","toggle","prevPause"],"mappings":";kIAIMA,EAAmB,SAACC,GACxB,OAAKA,EAcE,CAAEC,KALIC,KAAKC,MAAMH,EAAO,OAKhBI,MAJDF,KAAKC,MAAOH,EAAO,MAAS,MAIpBK,QAHNH,KAAKC,MAAOH,EAAO,KAAQ,IAGZM,QAFfJ,KAAKC,MAAMH,EAAO,IAEMO,MAAOP,GAbtC,CACLC,KAAM,EACNG,MAAO,EACPC,QAAS,EACTC,QAAS,EACTC,MAAO,EASb,uBA2D6B,WAAsB,IAAA,IAAAC,EAAAC,EAAAC,EAAAC,UAAAC,OAAlBC,EAAMC,IAAAA,MAAAJ,GAAAK,EAAA,EAAAA,EAAAL,EAAAK,IAANF,EAAME,GAAAJ,UAAAI,GACrC,IAAMC,EAG0ER,QAH/DA,EACO,iBAAdK,EAAO,GACVA,EAAO,WAAEJ,EACTI,EAAO,UAAE,IAAAJ,OAAA,EAAVA,EAA+DO,mBAAWR,IAAAA,EAAAA,EAAK,EAE/ES,EACiB,iBAAdJ,EAAO,GACTA,EAAO,GACPA,EAAO,GAEdK,EAAwBC,EAAAA,SAASpB,EAAiBiB,IAAaI,EAAAC,EAAAA,eAAAH,EAAA,GAAxDlB,EAAIoB,EAAA,GAAEE,EAAOF,EAAA,GACpBG,EAA4BJ,aAAUF,SAAAA,EAASO,UAAQC,EAAAJ,EAAAA,eAAAE,EAAA,GAAhDG,EAAMD,EAAA,GAAEE,EAASF,EAAA,GAElBG,EAAaC,EAAAA,UAAS,WAC1B,IAAMC,EAAe9B,EAAKO,MAAQ,EAElC,OAAIuB,EAAe,IAAO,EACjBR,EAAOS,EAAAA,eAAAA,EAAAA,kBACT/B,GAAI,GAAA,CACPK,QAASL,EAAKK,QAAU,EACxBC,QAAS,EACTC,MAAOuB,KAIPA,EAAgB,MAAa,EACxBR,EAAOS,EAAAA,eAAAA,EAAAA,kBACT/B,GAAI,GAAA,CACPI,MAAOJ,EAAKI,MAAQ,EACpBC,QAAS,EACTC,QAAS,EACTC,MAAOuB,KAIPA,EAAY,OAAsB,EAC7BR,EAAOS,EAAAA,eAAAA,EAAAA,kBACT/B,GAAI,GAAA,CACPC,KAAMD,EAAKC,KAAO,EAClBG,MAAO,EACPC,QAAS,EACTC,QAAS,EACTC,MAAOuB,UAIXR,EAAOS,EAAAC,eAAAD,EAAAC,kBACFhC,GAAI,CAAA,EAAA,CACPM,QAASN,EAAKM,QAAU,EACxBC,MAAOuB,IAEX,IAQA,OANAG,EAAAA,WAAU,WACR,IAAIP,EAAJ,CACA,IAAMQ,EAAWC,aAAY,WAAA,OAAMP,GAAY,GAAE,KACjD,OAAO,WAAA,OAAMQ,cAAcF,EAAS,CAFxB,CAGd,GAAG,CAACR,IAEJK,EAAAC,eAAAD,EAAAC,eAAA,CAAA,EACKhC,GAAI,CAAA,EAAA,CACP0B,OAAAA,EACAW,MAAO,WAAF,OAAQV,GAAU,EAAK,EAC5BW,MAAO,WAAF,OAAQX,GAAU,EAAM,EAC7BY,MAAO,WAAF,OAAQjB,EAAQvB,EAAiBiB,GAAa,EACnDwB,OAAQ,WAAF,OAAQb,GAAU,SAACc,GAAS,OAAMA,IAAU,GAEtD"}
1
+ {"version":3,"file":"useStopwatch.js","sources":["../../../../src/hooks/useStopwatch/useStopwatch.ts"],"sourcesContent":["import { useEffect, useState } from 'react';\n\nimport { useEvent } from '@/hooks';\n\nconst getStopwatchTime = (time: number) => {\n if (!time)\n return {\n days: 0,\n hours: 0,\n minutes: 0,\n seconds: 0,\n count: 0\n };\n\n const days = Math.floor(time / 86400);\n const hours = Math.floor((time % 86400) / 3600);\n const minutes = Math.floor((time % 3600) / 60);\n const seconds = Math.floor(time % 60);\n\n return { days, hours, minutes, seconds, count: time };\n};\n\n/** The use stopwatch return type */\nexport interface UseStopwatchReturn {\n /** The total count of the stopwatch */\n count: number;\n /** The day count of the stopwatch */\n days: number;\n /** The hour count of the stopwatch */\n hours: number;\n /** The minute count of the stopwatch */\n minutes: number;\n /** The over state of the stopwatch */\n over: boolean;\n /** The paused state of the stopwatch */\n paused: boolean;\n /** The second count of the stopwatch */\n seconds: number;\n /** The function to pause the stopwatch */\n pause: () => void;\n /** The function to reset the stopwatch */\n reset: () => void;\n /** The function to start the stopwatch */\n start: () => void;\n /** The function to toggle the stopwatch */\n toggle: () => void;\n}\n\n/** The use stopwatch options */\nexport interface UseStopwatchOptions {\n /** The enabled state of the timer */\n enabled?: boolean;\n}\n\ninterface UseStopwatch {\n (initialTime?: number, options?: UseStopwatchOptions): UseStopwatchReturn;\n (options?: UseStopwatchOptions & { initialTime?: number }): UseStopwatchReturn;\n}\n/**\n * @name useStopwatch\n * @description - Hook that creates a stopwatch functionality\n * @category Time\n *\n * @overload\n * @param {number} [initialTime=0] The initial time of the timer\n * @param {boolean} [options.enabled=true] The enabled state of the timer\n * @returns {UseStopwatchReturn} An object containing the current time and functions to interact with the timer\n *\n * @example\n * const { seconds, minutes, start, pause, reset } = useStopwatch(1000, { enabled: false });\n *\n * @overload\n * @param {number} [options.initialTime=0] -The initial time of the timer\n * @param {boolean} [options.enabled=true] The enabled state of the timer\n * @returns {UseStopwatchReturn} An object containing the current time and functions to interact with the timer\n *\n * @example\n * const { seconds, minutes, start, pause, reset } = useStopwatch({ initialTime: 1000, enabled: false });\n */\nexport const useStopwatch = ((...params: any[]) => {\n const initialTime =\n (typeof params[0] === 'number'\n ? (params[0] as number | undefined)\n : (params[0] as UseStopwatchOptions & { initialTime?: number })?.initialTime) ?? 0;\n\n const options =\n typeof params[0] === 'number'\n ? (params[1] as UseStopwatchOptions | undefined)\n : (params[0] as (UseStopwatchOptions & { initialTime?: number }) | undefined);\n\n const [time, setTime] = useState(getStopwatchTime(initialTime));\n const [paused, setPaused] = useState(!options?.enabled);\n\n const onInterval = useEvent(() => {\n const updatedCount = time.count + 1;\n\n if (updatedCount % 60 === 0) {\n return setTime({\n ...time,\n minutes: time.minutes + 1,\n seconds: 0,\n count: updatedCount\n });\n }\n\n if (updatedCount % (60 * 60) === 0) {\n return setTime({\n ...time,\n hours: time.hours + 1,\n minutes: 0,\n seconds: 0,\n count: updatedCount\n });\n }\n\n if (updatedCount % (60 * 60 * 24) === 0) {\n return setTime({\n ...time,\n days: time.days + 1,\n hours: 0,\n minutes: 0,\n seconds: 0,\n count: updatedCount\n });\n }\n\n setTime({\n ...time,\n seconds: time.seconds + 1,\n count: updatedCount\n });\n });\n\n useEffect(() => {\n if (paused) return;\n const interval = setInterval(() => onInterval(), 1000);\n return () => clearInterval(interval);\n }, [paused]);\n\n return {\n ...time,\n paused,\n pause: () => setPaused(true),\n start: () => setPaused(false),\n reset: () => setTime(getStopwatchTime(initialTime)),\n toggle: () => setPaused((prevPause) => !prevPause)\n };\n}) as UseStopwatch;\n"],"names":["getStopwatchTime","time","days","Math","floor","hours","minutes","seconds","count","_ref","_params$","_len","arguments","length","params","Array","_key","initialTime","options","_useState","useState","_useState2","_slicedToArray","setTime","_useState3","enabled","_useState4","paused","setPaused","onInterval","useEvent","updatedCount","_objectSpread","_objectSpread2","useEffect","interval","setInterval","clearInterval","pause","start","reset","toggle","prevPause"],"mappings":";yOAIA,IAAMA,EAAmB,SAACC,GACxB,OAAKA,EAcE,CAAEC,KALIC,KAAKC,MAAMH,EAAO,OAKhBI,MAJDF,KAAKC,MAAOH,EAAO,MAAS,MAIpBK,QAHNH,KAAKC,MAAOH,EAAO,KAAQ,IAGZM,QAFfJ,KAAKC,MAAMH,EAAO,IAEMO,MAAOP,GAbtC,CACLC,KAAM,EACNG,MAAO,EACPC,QAAS,EACTC,QAAS,EACTC,MAAO,EASb,uBA2D6B,WAAsB,IAAA,IAAAC,EAAAC,EAAAC,EAAAC,UAAAC,OAAlBC,EAAMC,IAAAA,MAAAJ,GAAAK,EAAA,EAAAA,EAAAL,EAAAK,IAANF,EAAME,GAAAJ,UAAAI,GACrC,IAAMC,EAG0ER,QAH/DA,EACO,iBAAdK,EAAO,GACVA,EAAO,WAAEJ,EACTI,EAAO,UAAE,IAAAJ,OAAA,EAAVA,EAA+DO,mBAAWR,IAAAA,EAAAA,EAAK,EAE/ES,EACiB,iBAAdJ,EAAO,GACTA,EAAO,GACPA,EAAO,GAEdK,EAAwBC,EAAAA,SAASpB,EAAiBiB,IAAaI,EAAAC,EAAAA,eAAAH,EAAA,GAAxDlB,EAAIoB,EAAA,GAAEE,EAAOF,EAAA,GACpBG,EAA4BJ,aAAUF,SAAAA,EAASO,UAAQC,EAAAJ,EAAAA,eAAAE,EAAA,GAAhDG,EAAMD,EAAA,GAAEE,EAASF,EAAA,GAElBG,EAAaC,EAAAA,UAAS,WAC1B,IAAMC,EAAe9B,EAAKO,MAAQ,EAElC,OAAIuB,EAAe,IAAO,EACjBR,EAAOS,EAAAA,eAAAA,EAAAA,kBACT/B,GAAI,GAAA,CACPK,QAASL,EAAKK,QAAU,EACxBC,QAAS,EACTC,MAAOuB,KAIPA,EAAgB,MAAa,EACxBR,EAAOS,EAAAA,eAAAA,EAAAA,kBACT/B,GAAI,GAAA,CACPI,MAAOJ,EAAKI,MAAQ,EACpBC,QAAS,EACTC,QAAS,EACTC,MAAOuB,KAIPA,EAAY,OAAsB,EAC7BR,EAAOS,EAAAA,eAAAA,EAAAA,kBACT/B,GAAI,GAAA,CACPC,KAAMD,EAAKC,KAAO,EAClBG,MAAO,EACPC,QAAS,EACTC,QAAS,EACTC,MAAOuB,UAIXR,EAAOS,EAAAC,eAAAD,EAAAC,kBACFhC,GAAI,CAAA,EAAA,CACPM,QAASN,EAAKM,QAAU,EACxBC,MAAOuB,IAEX,IAQA,OANAG,EAAAA,WAAU,WACR,IAAIP,EAAJ,CACA,IAAMQ,EAAWC,aAAY,WAAA,OAAMP,GAAY,GAAE,KACjD,OAAO,WAAA,OAAMQ,cAAcF,EAAS,CAFxB,CAGd,GAAG,CAACR,IAEJK,EAAAC,eAAAD,EAAAC,eAAA,CAAA,EACKhC,GAAI,CAAA,EAAA,CACP0B,OAAAA,EACAW,MAAO,WAAF,OAAQV,GAAU,EAAK,EAC5BW,MAAO,WAAF,OAAQX,GAAU,EAAM,EAC7BY,MAAO,WAAF,OAAQjB,EAAQvB,EAAiBiB,GAAa,EACnDwB,OAAQ,WAAF,OAAQb,GAAU,SAACc,GAAS,OAAMA,IAAU,GAEtD"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.75 */
2
- "use strict";var e=require("../../_rollupPluginBabelHelpers-DQxhXgk7.js"),t=require("react"),n=require("../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js"),r=require("../../utils/helpers/isClient.js"),i=function(e){return window.dispatchEvent(new StorageEvent("storage",e))},o=function(e,t,n){var r=e.getItem(t);e.setItem(t,n),i({key:t,oldValue:r,newValue:n,storageArea:e})},u=function(e,t){var n=e.getItem(t);e.removeItem(t),i({key:t,oldValue:n,newValue:null,storageArea:e})},a=function(e,t){var n=e.getItem(t);if(n)return n},l=function(e){return window.addEventListener("storage",e),function(){return window.removeEventListener("storage",e)}},s=function(){};exports.dispatchStorageEvent=i,exports.useStorage=function(i,c){var f,v,d="object"===e._typeof(c)?c:void 0,g=d?null==d?void 0:d.initialValue:c,m=function(e){return null!=d&&d.serializer?d.serializer(e):JSON.stringify(e)},p=null!==(f=null==d?void 0:d.storage)&&void 0!==f?f:null===(v=window)||void 0===v?void 0:v.localStorage,w=function(e){if(null===e)return u(p,i);o(p,i,m(e))},y=function(){return u(p,i)},E=t.useSyncExternalStore(l,(function(){return a(p,i)}),s);return n.useIsomorphicLayoutEffect((function(){void 0===a(p,i)&&void 0!==g&&o(p,i,m(g instanceof Function?g():g))}),[i]),r.isClient?{value:E?function(e){if(null!=d&&d.deserializer)return d.deserializer(e);if("undefined"!==e)try{return JSON.parse(e)}catch(t){return e}}(E):void 0,set:w,remove:y}:{value:g instanceof Function?g():g,set:w,remove:y}};
1
+ /* @license @siberiacancode/reactuse v0.0.77 */
2
+ "use strict";var e=require("../../_rollupPluginBabelHelpers-n1mTP8al.js"),t=require("react"),n=require("../../utils/helpers/isClient.js"),r=require("../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js"),i=function(e){return window.dispatchEvent(new StorageEvent("storage",e))},o=function(e,t,n){var r=e.getItem(t);e.setItem(t,n),i({key:t,oldValue:r,newValue:n,storageArea:e})},u=function(e,t){var n=e.getItem(t);e.removeItem(t),i({key:t,oldValue:n,newValue:null,storageArea:e})},a=function(e,t){var n=e.getItem(t);if(n)return n},l=function(e){return window.addEventListener("storage",e),function(){return window.removeEventListener("storage",e)}},s=function(){};exports.dispatchStorageEvent=i,exports.useStorage=function(i,c){var f,v,d="object"===e._typeof(c)?c:void 0,g=d?null==d?void 0:d.initialValue:c,m=function(e){return null!=d&&d.serializer?d.serializer(e):JSON.stringify(e)},p=null!==(f=null==d?void 0:d.storage)&&void 0!==f?f:null===(v=window)||void 0===v?void 0:v.localStorage,w=function(e){if(null===e)return u(p,i);o(p,i,m(e))},y=function(){return u(p,i)},E=t.useSyncExternalStore(l,(function(){return a(p,i)}),s);return r.useIsomorphicLayoutEffect((function(){void 0===a(p,i)&&void 0!==g&&o(p,i,m(g instanceof Function?g():g))}),[i]),n.isClient?{value:E?function(e){if(null!=d&&d.deserializer)return d.deserializer(e);if("undefined"!==e)try{return JSON.parse(e)}catch(t){return e}}(E):void 0,set:w,remove:y}:{value:g instanceof Function?g():g,set:w,remove:y}};
3
3
  //# sourceMappingURL=useStorage.js.map
@@ -0,0 +1,3 @@
1
+ /* @license @siberiacancode/reactuse v0.0.77 */
2
+ "use strict";var e=require("../../_rollupPluginBabelHelpers-n1mTP8al.js"),t=require("react"),r=require("../../utils/helpers/getElement.js");require("../../utils/helpers/isClient.js");exports.useTextDirection=function(){var i,n="string"==typeof(arguments.length<=0?void 0:arguments[0])&&["auto","ltr","rtl"].includes(arguments.length<=0?void 0:arguments[0])||arguments.length<=0?void 0:arguments[0],l=null!==(i=n?arguments.length<=1?void 0:arguments[1]:arguments.length<=0?void 0:arguments[0])&&void 0!==i?i:"ltr",u=t.useState(),o=e._slicedToArray(u,2),s=o[0],v=o[1],a=function(){var e,t=n?r.getElement(n):s;return null!==(e=null==t?void 0:t.getAttribute("dir"))&&void 0!==e?e:l},c=t.useState(a()),d=e._slicedToArray(c,2),f=d[0],g=d[1],m=function(){var e=n?r.getElement(n):s;e&&(null==e||e.removeAttribute("dir"))},b=function(e){var t=n?r.getElement(n):s;t&&(g(e),null==t||t.setAttribute("dir",e))};return t.useEffect((function(){if(n||s){var e=n?r.getElement(n):s;if(e){var t=new MutationObserver((function(){a()}));return t.observe(e,{attributes:!0}),function(){t.disconnect()}}}}),[s,n]),n?{value:f,set:b,remove:m}:{ref:v,value:f,set:b,remove:m}};
3
+ //# sourceMappingURL=useTextDirection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useTextDirection.js","sources":["../../../../src/hooks/useTextDirection/useTextDirection.ts"],"sourcesContent":["import type { RefObject } from 'react';\n\nimport { useEffect, useState } from 'react';\n\nimport { getElement } from '@/utils/helpers';\n\n/** The use text direction target element type */\nexport type UseTextDirectionTarget =\n | (() => Element)\n | string\n | Element\n | RefObject<Element | null | undefined>;\n\n/** The use text direction value type */\nexport type UseTextDirectionValue = 'auto' | 'ltr' | 'rtl';\n\n/** The use text direction return type */\nexport interface UseTextDirectionReturn {\n /** The current direction */\n value: UseTextDirectionValue;\n //** The function to remove the direction */\n remove: () => void;\n //** The function to set the direction */\n set: (value: UseTextDirectionValue | null) => void;\n}\n\nexport interface UseTextDirection {\n <Target extends UseTextDirectionTarget>(\n target: Target,\n initialValue?: UseTextDirectionValue\n ): UseTextDirectionReturn;\n\n <Target extends UseTextDirectionTarget>(\n initialValue?: UseTextDirectionValue,\n target?: never\n ): UseTextDirectionReturn & { ref: (node: Target) => void };\n}\n\n/**\n * @name useTextDirection\n * @description - Hook that can get and set the direction of the element\n * @category Browser\n *\n * @overload\n * @template Target The target element type.\n * @param {UseTextDirectionTarget} target The target element to observe.\n * @param {UseTextDirectionValue} [initialValue = 'ltr'] The initial direction of the element.\n * @returns {UseTextDirectionReturn} An object containing the current text direction of the element.\n *\n * @example\n * const { value, set, remove } = useTextDirection(elementRef);\n *\n * @overload\n * @template Target The target element type.\n * @param {UseTextDirectionValue} [initialValue = 'ltr'] The initial direction of the element.\n * @returns { { ref: (node: Target) => void } & UseTextDirectionReturn } An object containing the current text direction of the element.\n *\n * @example\n * const { ref, value, set, remove } = useTextDirection();\n */\n\nexport const useTextDirection = ((...params: any[]) => {\n const target = (\n typeof params[0] !== 'string' || !['auto', 'ltr', 'rtl'].includes(params[0])\n ? params[0]\n : undefined\n ) as UseTextDirectionTarget | undefined;\n const initialValue = ((target ? params[1] : params[0]) as UseTextDirectionValue) ?? 'ltr';\n\n const [internalRef, setInternalRef] = useState<Element>();\n\n const getDir = () => {\n const element = (target ? getElement(target) : internalRef) as Element;\n return (element?.getAttribute('dir') as UseTextDirectionValue) ?? initialValue;\n };\n\n const [value, setValue] = useState<UseTextDirectionValue>(getDir());\n\n const remove = () => {\n const element = (target ? getElement(target) : internalRef) as Element;\n if (!element) return;\n\n element?.removeAttribute('dir');\n };\n\n const set = (value: UseTextDirectionValue) => {\n const element = (target ? getElement(target) : internalRef) as Element;\n if (!element) return;\n\n setValue(value);\n element?.setAttribute('dir', value);\n };\n\n useEffect(() => {\n if (!target && !internalRef) return;\n\n const element = (target ? getElement(target) : internalRef) as Element;\n if (!element) return;\n\n const observer = new MutationObserver(() => {\n getDir();\n });\n\n observer.observe(element, { attributes: true });\n\n return () => {\n observer.disconnect();\n };\n }, [internalRef, target]);\n\n if (target) return { value, set, remove };\n return {\n ref: setInternalRef,\n value,\n set,\n remove\n };\n}) as UseTextDirection;\n"],"names":["_ref","target","arguments","length","undefined","includes","initialValue","_useState","useState","_useState2","_slicedToArray","internalRef","setInternalRef","getDir","_ref2","element","getElement","getAttribute","_useState3","_useState4","value","setValue","remove","removeAttribute","set","setAttribute","useEffect","observer","MutationObserver","observe","attributes","disconnect","ref"],"mappings":";gNA6DiC,WAAsB,IAAAA,EAC/CC,EACiB,iBAArBC,UAAAC,eAAAC,EAAAF,UAAgB,KAAkB,CAAC,OAAQ,MAAO,OAAOG,SAAQH,UAAAC,QAAAC,OAAAA,EAAAF,UAAA,KAAWA,UAAAC,QAAA,OAExEC,EAFwEF,aAIxEI,EAA+C,QAAnCN,EAAKC,EAAMC,UAAAC,QAAAC,OAAAA,EAAAF,UAAAA,GAAAA,UAAAC,QAAAC,OAAAA,EAAAF,UAAwB,UAAA,IAAAF,EAAAA,EAA+B,MAEpFO,EAAsCC,EAAAA,WAAmBC,EAAAC,EAAAA,eAAAH,EAAA,GAAlDI,EAAWF,EAAA,GAAEG,EAAcH,EAAA,GAE5BI,EAAS,WAAM,IAAAC,EACbC,EAAWd,EAASe,aAAWf,GAAUU,EAC/C,OAAoC,QAApCG,EAAQC,eAAAA,EAASE,aAAa,cAAMH,IAAAA,EAAAA,EAA8BR,CACnE,EAEDY,EAA0BV,WAAgCK,KAASM,EAAAT,EAAAA,eAAAQ,EAAA,GAA5DE,EAAKD,EAAA,GAAEE,EAAQF,EAAA,GAEhBG,EAAS,WACb,IAAMP,EAAWd,EAASe,aAAWf,GAAUU,EAC1CI,IAELA,SAAAA,EAASQ,gBAAgB,OAC1B,EAEKC,EAAM,SAACJ,GACX,IAAML,EAAWd,EAASe,aAAWf,GAAUU,EAC1CI,IAELM,EAASD,GACTL,SAAAA,EAASU,aAAa,MAAOL,GAC9B,EAmBD,OAjBAM,EAAAA,WAAU,WACR,GAAKzB,GAAWU,EAAhB,CAEA,IAAMI,EAAWd,EAASe,aAAWf,GAAUU,EAC/C,GAAKI,EAAL,CAEA,IAAMY,EAAW,IAAIC,kBAAiB,WACpCf,GACF,IAIA,OAFAc,EAASE,QAAQd,EAAS,CAAEe,YAAY,IAEjC,WACLH,EAASI,YACV,CAVa,CAHe,CAc/B,GAAG,CAACpB,EAAaV,IAEbA,EAAe,CAAEmB,MAAAA,EAAOI,IAAAA,EAAKF,OAAAA,GAC1B,CACLU,IAAKpB,EACLQ,MAAAA,EACAI,IAAAA,EACAF,OAAAA,EAEJ"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.75 */
2
- "use strict";var e=require("../../_rollupPluginBabelHelpers-DQxhXgk7.js"),n=require("react"),t=require("../useRerender/useRerender.js"),r=require("../../utils/helpers/isClient.js"),u=function(e){var n,t=null!==(n=e.rangeCount)&&void 0!==n?n:0;return Array.from({length:t},(function(n,t){return e.getRangeAt(t)}))};exports.getRangesSelection=u,exports.useTextSelection=function(){var i,o=t.useRerender(),l=n.useState(r.isClient?document.getSelection():null),s=e._slicedToArray(l,2),c=s[0],a=s[1];n.useEffect((function(){var e=function(){a(document.getSelection()),o.update()};return document.addEventListener("selectionchange",e),function(){return document.removeEventListener("selectionchange",e)}}),[]);var d=null!==(i=null==c?void 0:c.toString())&&void 0!==i?i:"",g=c?u(c):[],v=g.map((function(e){return e.getBoundingClientRect()}));return{text:d,ranges:g,rects:v,selection:c}};
1
+ /* @license @siberiacancode/reactuse v0.0.77 */
2
+ "use strict";var e=require("../../_rollupPluginBabelHelpers-n1mTP8al.js"),n=require("react"),t=require("../../utils/helpers/isClient.js"),r=require("../useRerender/useRerender.js"),u=function(e){var n,t=null!==(n=e.rangeCount)&&void 0!==n?n:0;return Array.from({length:t},(function(n,t){return e.getRangeAt(t)}))};exports.getRangesSelection=u,exports.useTextSelection=function(){var i,o=r.useRerender(),l=n.useState(t.isClient?document.getSelection():null),s=e._slicedToArray(l,2),c=s[0],a=s[1];n.useEffect((function(){var e=function(){a(document.getSelection()),o.update()};return document.addEventListener("selectionchange",e),function(){return document.removeEventListener("selectionchange",e)}}),[]);var d=null!==(i=null==c?void 0:c.toString())&&void 0!==i?i:"",g=c?u(c):[],v=g.map((function(e){return e.getBoundingClientRect()}));return{text:d,ranges:g,rects:v,selection:c}};
3
3
  //# sourceMappingURL=useTextSelection.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.75 */
2
- "use strict";var e=require("../../_rollupPluginBabelHelpers-DQxhXgk7.js"),r=require("react"),t=require("../useInterval/useInterval.js"),u=require("../../utils/helpers/time/getDate.js");require("../useEvent/useEvent.js");exports.useTime=function(){var s=r.useState(u.getDate()),i=e._slicedToArray(s,2),a=i[0],n=i[1];return t.useInterval((function(){return n(u.getDate())}),1e3),a};
1
+ /* @license @siberiacancode/reactuse v0.0.77 */
2
+ "use strict";var e=require("../../_rollupPluginBabelHelpers-n1mTP8al.js"),r=require("react");require("../../utils/helpers/isClient.js");var t=require("../../utils/helpers/time/getDate.js"),s=require("../useInterval/useInterval.js");require("../useEvent/useEvent.js");exports.useTime=function(){var u=r.useState(t.getDate()),i=e._slicedToArray(u,2),l=i[0],a=i[1];return s.useInterval((function(){return a(t.getDate())}),1e3),l};
3
3
  //# sourceMappingURL=useTime.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useTime.js","sources":["../../../../src/hooks/useTime/useTime.ts"],"sourcesContent":["import { useState } from 'react';\n\nimport { getDate } from '@/utils/helpers';\n\nimport { useInterval } from '../useInterval/useInterval';\n\nexport interface UseTimeReturn {\n day: number;\n hours: number;\n meridiemHours: { value: number; type: string };\n minutes: number;\n month: number;\n seconds: number;\n timestamp: number;\n year: number;\n}\n\n/**\n * @name useTime\n * @description - Hook that gives you current time in different values\n * @category Time\n *\n * @returns {UseTimeReturn} An object containing the current time\n *\n * @example\n * const { seconds, minutes, hours, meridiemHours, day, month, year, timestamp } = useTime();\n */\nexport const useTime = (): UseTimeReturn => {\n const [time, setTime] = useState(getDate());\n useInterval(() => setTime(getDate()), 1000);\n return time;\n};\n"],"names":["_useState","useState","getDate","_useState2","_slicedToArray","time","setTime","useInterval"],"mappings":";4OA2BuB,WACrB,IAAAA,EAAwBC,WAASC,EAAAA,WAAUC,EAAAC,EAAAA,eAAAJ,EAAA,GAApCK,EAAIF,EAAA,GAAEG,EAAOH,EAAA,GAEpB,OADAI,EAAAA,aAAY,WAAA,OAAMD,EAAQJ,EAAAA,UAAU,GAAE,KAC/BG,CACT"}
1
+ {"version":3,"file":"useTime.js","sources":["../../../../src/hooks/useTime/useTime.ts"],"sourcesContent":["import { useState } from 'react';\n\nimport { getDate } from '@/utils/helpers';\n\nimport { useInterval } from '../useInterval/useInterval';\n\nexport interface UseTimeReturn {\n day: number;\n hours: number;\n meridiemHours: { value: number; type: string };\n minutes: number;\n month: number;\n seconds: number;\n timestamp: number;\n year: number;\n}\n\n/**\n * @name useTime\n * @description - Hook that gives you current time in different values\n * @category Time\n *\n * @returns {UseTimeReturn} An object containing the current time\n *\n * @example\n * const { seconds, minutes, hours, meridiemHours, day, month, year, timestamp } = useTime();\n */\nexport const useTime = (): UseTimeReturn => {\n const [time, setTime] = useState(getDate());\n useInterval(() => setTime(getDate()), 1000);\n return time;\n};\n"],"names":["_useState","useState","getDate","_useState2","_slicedToArray","time","setTime","useInterval"],"mappings":";2RA2BuB,WACrB,IAAAA,EAAwBC,WAASC,EAAAA,WAAUC,EAAAC,EAAAA,eAAAJ,EAAA,GAApCK,EAAIF,EAAA,GAAEG,EAAOH,EAAA,GAEpB,OADAI,EAAAA,aAAY,WAAA,OAAMD,EAAQJ,EAAAA,UAAU,GAAE,KAC/BG,CACT"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.75 */
2
- "use strict";var e=require("../../_rollupPluginBabelHelpers-DQxhXgk7.js"),r=require("react"),u=require("../useEvent/useEvent.js");exports.useTimeout=function(t,n){var c=r.useState(!1),i=e._slicedToArray(c,2),s=i[0],o=i[1],a=r.useRef(),l=u.useEvent(t);return r.useEffect((function(){return a.current=setTimeout((function(){l(),o(!0)}),n),function(){clearTimeout(a.current)}}),[n]),{ready:s,clear:function(){clearTimeout(a.current),o(!0)}}};
1
+ /* @license @siberiacancode/reactuse v0.0.77 */
2
+ "use strict";var e=require("../../_rollupPluginBabelHelpers-n1mTP8al.js"),r=require("react"),u=require("../useEvent/useEvent.js");exports.useTimeout=function(t,n){var c=r.useState(!1),i=e._slicedToArray(c,2),s=i[0],o=i[1],a=r.useRef(),l=u.useEvent(t);return r.useEffect((function(){return a.current=setTimeout((function(){l(),o(!0)}),n),function(){clearTimeout(a.current)}}),[n]),{ready:s,clear:function(){clearTimeout(a.current),o(!0)}}};
3
3
  //# sourceMappingURL=useTimeout.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.75 */
2
- "use strict";var e=require("../../_rollupPluginBabelHelpers-DQxhXgk7.js"),r=require("react"),t=require("../useInterval/useInterval.js");require("../useEvent/useEvent.js");var n=function(e){var r=Math.ceil(e),t=Math.floor(r/86400),n=Math.floor(r%86400/3600),u=Math.floor(r%3600/60);return{seconds:Math.floor(r%60),minutes:u,hours:n,days:t}};exports.getTimeFromSeconds=n,exports.useTimer=function(u,a,o){var l,i=null===(l=null==o?void 0:o.autostart)||void 0===l||l,s=r.useState(Math.ceil(u/1e3)),c=e._slicedToArray(s,2),v=c[0],d=c[1],f=r.useState(i),h=e._slicedToArray(f,2),M=h[0],p=h[1];return t.useInterval((function(){var e,r=v-1;null==o||null===(e=o.onTick)||void 0===e||e.call(o,v),d(r),0===r&&(p(!1),a())}),1e3,{enabled:M}),e._objectSpread2(e._objectSpread2({},n(v)),{},{pause:function(){return p(!1)},toggle:function(){return p(!M)},start:function(){p(!0),d(Math.ceil(u/1e3))},restart:function(e){var r=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];d(Math.ceil(e/1e3)),p(r)},running:M})};
1
+ /* @license @siberiacancode/reactuse v0.0.77 */
2
+ "use strict";var e=require("../../_rollupPluginBabelHelpers-n1mTP8al.js"),t=require("react"),r=require("../useInterval/useInterval.js");require("../useEvent/useEvent.js");var n=function(e){var t=Math.ceil(e),r=Math.floor(t/86400),n=Math.floor(t%86400/3600),o=Math.floor(t%3600/60);return{seconds:Math.floor(t%60),minutes:o,hours:n,days:r}};exports.getTimeFromSeconds=n,exports.useTimer=function(){var o,l=arguments.length<=0?void 0:arguments[0],u="object"===e._typeof(arguments.length<=1?void 0:arguments[1])?arguments.length<=1?void 0:arguments[1]:{onExpire:arguments.length<=1?void 0:arguments[1]},i=null===(o=null==u?void 0:u.autostart)||void 0===o||o,a=t.useState(Math.ceil(l/1e3)),s=e._slicedToArray(a,2),c=s[0],v=s[1],d=t.useState(i),h=e._slicedToArray(d,2),f=h[0],g=h[1];return r.useInterval((function(){var e,t,r=c-1;(null==u||null===(e=u.onTick)||void 0===e||e.call(u,c),v(r),0===r)&&(g(!1),null==u||null===(t=u.onExpire)||void 0===t||t.call(u))}),1e3,{enabled:f}),e._objectSpread2(e._objectSpread2({},n(c)),{},{pause:function(){return g(!1)},toggle:function(){return g(!f)},start:function(){g(!0),v(Math.ceil(l/1e3))},restart:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];v(Math.ceil(e/1e3)),g(t)},running:f})};
3
3
  //# sourceMappingURL=useTimer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useTimer.js","sources":["../../../../src/hooks/useTimer/useTimer.ts"],"sourcesContent":["import { useState } from 'react';\n\nimport { useInterval } from '../useInterval/useInterval';\n\nexport const getTimeFromSeconds = (timestamp: number) => {\n const roundedTimestamp = Math.ceil(timestamp);\n const days = Math.floor(roundedTimestamp / (60 * 60 * 24));\n const hours = Math.floor((roundedTimestamp % (60 * 60 * 24)) / (60 * 60));\n const minutes = Math.floor((roundedTimestamp % (60 * 60)) / 60);\n const seconds = Math.floor(roundedTimestamp % 60);\n\n return {\n seconds,\n minutes,\n hours,\n days\n };\n};\n\n/** The use timer options type */\nexport interface UseTimerOptions {\n /** Whether the timer should start automatically */\n autostart?: boolean;\n /** Callback function to be executed on each tick of the timer */\n onTick?: (seconds: number) => void;\n}\n\n/** The use timer return type */\nexport interface UseTimerReturn {\n /** The day count of the timer */\n days: number;\n /** The hour count of the timer */\n hours: number;\n /** The minute count of the timer */\n minutes: number;\n /** flag to indicate if timer is running or not */\n running: boolean;\n /** The second count of the timer */\n seconds: number;\n /** The function to pause the timer */\n pause: () => void;\n /** The function to restart the timer */\n restart: (time: number, autostart?: boolean) => void;\n /** The function to start the timer */\n start: () => void;\n /** The function to toggle the timer */\n toggle: () => void;\n}\n\n/**\n * @name useTimer\n * @description - Hook that creates a timer functionality\n * @category Time\n *\n * @param {number} timestamp The timestamp value that define for how long the timer will be running\n * @param {() => void} callback The function to be executed once countdown timer is expired\n * @param {boolean} options.autostart The flag to decide if timer should start automatically\n * @param {(timestamp: number) => void} options.onTick The function to be executed on each tick of the timer\n *\n * @example\n * const { days, hours, minutes, seconds, toggle, pause, start, restart, running } = useTimer(1000, () => console.log('ready'));\n */\nexport const useTimer = (\n timestamp: number,\n callback: () => void,\n options?: UseTimerOptions\n): UseTimerReturn => {\n const autostart = options?.autostart ?? true;\n\n const [seconds, setSeconds] = useState(Math.ceil(timestamp / 1000));\n const [running, setRunning] = useState(autostart);\n\n const restart = (timestamp: number, autostart = true) => {\n setSeconds(Math.ceil(timestamp / 1000));\n setRunning(autostart);\n };\n\n const start = () => {\n setRunning(true);\n setSeconds(Math.ceil(timestamp / 1000));\n };\n\n useInterval(\n () => {\n const updatedSeconds = seconds - 1;\n options?.onTick?.(seconds);\n setSeconds(updatedSeconds);\n\n if (updatedSeconds === 0) {\n setRunning(false);\n callback();\n }\n },\n 1000,\n { enabled: running }\n );\n\n return {\n ...getTimeFromSeconds(seconds),\n pause: () => setRunning(false),\n toggle: () => setRunning(!running),\n start,\n restart,\n running\n };\n};\n"],"names":["getTimeFromSeconds","timestamp","roundedTimestamp","Math","ceil","days","floor","hours","minutes","seconds","callback","options","_options$autostart","autostart","_useState","useState","_useState2","_slicedToArray","setSeconds","_useState3","_useState4","running","setRunning","useInterval","_options$onTick","updatedSeconds","onTick","call","enabled","_objectSpread","pause","toggle","start","restart","arguments","length","undefined"],"mappings":";+KAIaA,EAAqB,SAACC,GACjC,IAAMC,EAAmBC,KAAKC,KAAKH,GAC7BI,EAAOF,KAAKG,MAAMJ,EAAgB,OAClCK,EAAQJ,KAAKG,MAAOJ,EAAoB,MAAa,MACrDM,EAAUL,KAAKG,MAAOJ,EAAgB,KAAgB,IAG5D,MAAO,CACLO,QAHcN,KAAKG,MAAMJ,EAAmB,IAI5CM,QAAAA,EACAD,MAAAA,EACAF,KAAAA,EAEJ,gDA6CwB,SACtBJ,EACAS,EACAC,GACmB,IAAAC,EACbC,EAA8BD,QAArBA,EAAGD,aAAO,EAAPA,EAASE,iBAASD,IAAAA,GAAAA,EAEpCE,EAA8BC,EAAAA,SAASZ,KAAKC,KAAKH,EAAY,MAAMe,EAAAC,EAAAA,eAAAH,EAAA,GAA5DL,EAAOO,EAAA,GAAEE,EAAUF,EAAA,GAC1BG,EAA8BJ,EAAQA,SAACF,GAAUO,EAAAH,EAAAA,eAAAE,EAAA,GAA1CE,EAAOD,EAAA,GAAEE,EAAUF,EAAA,GA2B1B,OAfAG,EAAAA,aACE,WAAM,IAAAC,EACEC,EAAiBhB,EAAU,EACjCE,SAAe,QAARa,EAAPb,EAASe,cAAM,IAAAF,GAAfA,EAAAG,KAAAhB,EAAkBF,GAClBS,EAAWO,GAEY,IAAnBA,IACFH,GAAW,GACXZ,IAEH,GACD,IACA,CAAEkB,QAASP,IAGbQ,EAAAA,eAAAA,EAAAA,kBACK7B,EAAmBS,IAAQ,GAAA,CAC9BqB,MAAO,WAAF,OAAQR,GAAW,EAAM,EAC9BS,OAAQ,WAAF,OAAQT,GAAYD,EAAQ,EAClCW,MAxBY,WACZV,GAAW,GACXJ,EAAWf,KAAKC,KAAKH,EAAY,KAClC,EAsBCgC,QA9Bc,SAAChC,GAAwC,IAArBY,IAASqB,UAAAC,OAAA,QAAAC,IAAAF,UAAA,KAAAA,UAAA,GAC3ChB,EAAWf,KAAKC,KAAKH,EAAY,MACjCqB,EAAWT,EACZ,EA4BCQ,QAAAA,GAEJ"}
1
+ {"version":3,"file":"useTimer.js","sources":["../../../../src/hooks/useTimer/useTimer.ts"],"sourcesContent":["import { useState } from 'react';\n\nimport { useInterval } from '../useInterval/useInterval';\n\nexport const getTimeFromSeconds = (timestamp: number) => {\n const roundedTimestamp = Math.ceil(timestamp);\n const days = Math.floor(roundedTimestamp / (60 * 60 * 24));\n const hours = Math.floor((roundedTimestamp % (60 * 60 * 24)) / (60 * 60));\n const minutes = Math.floor((roundedTimestamp % (60 * 60)) / 60);\n const seconds = Math.floor(roundedTimestamp % 60);\n\n return {\n seconds,\n minutes,\n hours,\n days\n };\n};\n\n/** The use timer options type */\nexport interface UseTimerOptions {\n /** Whether the timer should start automatically */\n autostart?: boolean;\n /** The function to be executed when the timer is expired */\n onExpire?: () => void;\n /** Callback function to be executed on each tick of the timer */\n onTick?: (seconds: number) => void;\n}\n\n/** The use timer return type */\nexport interface UseTimerReturn {\n /** The day count of the timer */\n days: number;\n /** The hour count of the timer */\n hours: number;\n /** The minute count of the timer */\n minutes: number;\n /** flag to indicate if timer is running or not */\n running: boolean;\n /** The second count of the timer */\n seconds: number;\n /** The function to pause the timer */\n pause: () => void;\n /** The function to restart the timer */\n restart: (time: number, autostart?: boolean) => void;\n /** The function to start the timer */\n start: () => void;\n /** The function to toggle the timer */\n toggle: () => void;\n}\n\nexport interface UseTimer {\n (timestamp: number, callback: () => void): UseTimerReturn;\n (timestamp: number, options?: UseTimerOptions): UseTimerReturn;\n}\n\n/**\n * @name useTimer\n * @description - Hook that creates a timer functionality\n * @category Time\n *\n * @overload\n * @param {number} timestamp The timestamp value that define for how long the timer will be running\n * @param {() => void} callback The function to be executed once countdown timer is expired\n *\n * @example\n * const { days, hours, minutes, seconds, toggle, pause, start, restart, running } = useTimer(1000, () => console.log('ready'));\n *\n * @overload\n * @param {number} timestamp The timestamp value that define for how long the timer will be running\n * @param {boolean} options.autostart The flag to decide if timer should start automatically\n * @param {() => void} options.onExpire The function to be executed when the timer is expired\n * @param {(timestamp: number) => void} options.onTick The function to be executed on each tick of the timer\n *\n * @example\n * const { days, hours, minutes, seconds, toggle, pause, start, restart, running } = useTimer(1000);\n */\nexport const useTimer = ((...params: any[]) => {\n const timestamp = params[0];\n const options = (typeof params[1] === 'object' ? params[1] : { onExpire: params[1] }) as\n | UseTimerOptions\n | undefined;\n\n const autostart = options?.autostart ?? true;\n\n const [seconds, setSeconds] = useState(Math.ceil(timestamp / 1000));\n const [running, setRunning] = useState(autostart);\n\n const restart = (timestamp: number, autostart = true) => {\n setSeconds(Math.ceil(timestamp / 1000));\n setRunning(autostart);\n };\n\n const start = () => {\n setRunning(true);\n setSeconds(Math.ceil(timestamp / 1000));\n };\n\n useInterval(\n () => {\n const updatedSeconds = seconds - 1;\n options?.onTick?.(seconds);\n setSeconds(updatedSeconds);\n\n if (updatedSeconds === 0) {\n setRunning(false);\n options?.onExpire?.();\n }\n },\n 1000,\n { enabled: running }\n );\n\n return {\n ...getTimeFromSeconds(seconds),\n pause: () => setRunning(false),\n toggle: () => setRunning(!running),\n start,\n restart,\n running\n };\n}) as UseTimer;\n"],"names":["getTimeFromSeconds","timestamp","roundedTimestamp","Math","ceil","days","floor","hours","minutes","seconds","_options$autostart","arguments","length","undefined","options","_typeof","onExpire","autostart","_useState","useState","_useState2","_slicedToArray","setSeconds","_useState3","_useState4","running","setRunning","useInterval","_options$onTick","_options$onExpire","updatedSeconds","onTick","call","enabled","_objectSpread","pause","toggle","start","restart"],"mappings":";+KAIaA,EAAqB,SAACC,GACjC,IAAMC,EAAmBC,KAAKC,KAAKH,GAC7BI,EAAOF,KAAKG,MAAMJ,EAAgB,OAClCK,EAAQJ,KAAKG,MAAOJ,EAAoB,MAAa,MACrDM,EAAUL,KAAKG,MAAOJ,EAAgB,KAAgB,IAG5D,MAAO,CACLO,QAHcN,KAAKG,MAAMJ,EAAmB,IAI5CM,QAAAA,EACAD,MAAAA,EACAF,KAAAA,EAEJ,gDA4DyB,WAAsB,IAAAK,EACvCT,EAASU,UAAAC,QAAAC,OAAAA,EAAAF,UAAY,GACrBG,EAAgC,WAArBC,EAAAA,QAAAJ,UAAAC,eAAAC,EAAAF,UAAqB,IAAQA,UAAAC,QAAAC,OAAAA,EAAAF,UAAe,GAAA,CAAEK,SAAQL,UAAAC,QAAAC,OAAAA,EAAAF,UAAA,IAIjEM,EAA8BP,QAArBA,EAAGI,aAAO,EAAPA,EAASG,iBAASP,IAAAA,GAAAA,EAEpCQ,EAA8BC,EAAAA,SAAShB,KAAKC,KAAKH,EAAY,MAAMmB,EAAAC,EAAAA,eAAAH,EAAA,GAA5DT,EAAOW,EAAA,GAAEE,EAAUF,EAAA,GAC1BG,EAA8BJ,EAAQA,SAACF,GAAUO,EAAAH,EAAAA,eAAAE,EAAA,GAA1CE,EAAOD,EAAA,GAAEE,EAAUF,EAAA,GA2B1B,OAfAG,EAAAA,aACE,WAAM,IAAAC,EAKsBC,EAJpBC,EAAiBrB,EAAU,GACjCK,SAAe,QAARc,EAAPd,EAASiB,cAAM,IAAAH,GAAfA,EAAAI,KAAAlB,EAAkBL,GAClBa,EAAWQ,GAEY,IAAnBA,KACFJ,GAAW,GACXZ,SAAiBe,QAAVA,EAAPf,EAASE,oBAAQa,GAAjBA,EAAAG,KAAAlB,GAEH,GACD,IACA,CAAEmB,QAASR,IAGbS,EAAAA,eAAAA,EAAAA,kBACKlC,EAAmBS,IAAQ,GAAA,CAC9B0B,MAAO,WAAF,OAAQT,GAAW,EAAM,EAC9BU,OAAQ,WAAF,OAAQV,GAAYD,EAAQ,EAClCY,MAxBY,WACZX,GAAW,GACXJ,EAAWnB,KAAKC,KAAKH,EAAY,KAClC,EAsBCqC,QA9Bc,SAACrC,GAAwC,IAArBgB,IAASN,UAAAC,OAAA,QAAAC,IAAAF,UAAA,KAAAA,UAAA,GAC3CW,EAAWnB,KAAKC,KAAKH,EAAY,MACjCyB,EAAWT,EACZ,EA4BCQ,QAAAA,GAEJ"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.75 */
2
- "use strict";var e=require("../../_rollupPluginBabelHelpers-DQxhXgk7.js"),r=require("react");exports.useToggle=function(){var i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[!1,!0],n=r.useReducer((function(e,r){var i=r instanceof Function?r(e[0]):r,n=Math.abs(e.indexOf(i));return e.slice(n).concat(e.slice(0,n))}),i),c=e._slicedToArray(n,2);return[e._slicedToArray(c[0],1)[0],c[1]]};
1
+ /* @license @siberiacancode/reactuse v0.0.77 */
2
+ "use strict";var e=require("../../_rollupPluginBabelHelpers-n1mTP8al.js"),r=require("react");exports.useToggle=function(){var i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[!1,!0],n=r.useReducer((function(e,r){var i=r instanceof Function?r(e[0]):r,n=Math.abs(e.indexOf(i));return e.slice(n).concat(e.slice(0,n))}),i),c=e._slicedToArray(n,2);return[e._slicedToArray(c[0],1)[0],c[1]]};
3
3
  //# sourceMappingURL=useToggle.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.75 */
1
+ /* @license @siberiacancode/reactuse v0.0.77 */
2
2
  "use strict";var e=require("react");exports.useUnmount=function(r){var t=e.useRef(r);t.current=r,e.useEffect((function(){return function(){t.current()}}),[])};
3
3
  //# sourceMappingURL=useUnmount.js.map
@@ -0,0 +1,3 @@
1
+ /* @license @siberiacancode/reactuse v0.0.77 */
2
+ "use strict";var r=require("../../_rollupPluginBabelHelpers-n1mTP8al.js"),e=require("react");exports.useVibrate=function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,a="undefined"!=typeof navigator&&"vibrate"in navigator,u=e.useRef(),i=e.useState(!1),c=r._slicedToArray(i,2),o=c[0],v=c[1],l=function(){var r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:t;a&&navigator.vibrate(r)},s=function(){a&&(navigator.vibrate(0),v(!1),u.current&&clearInterval(u.current))},f=function(){var r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:n;a&&(u.current&&clearInterval(u.current),v(!0),u.current=setInterval(l,r))};return e.useEffect((function(){if(a&&!(n<=0))return f(n),function(){s()}}),[n,t]),{supported:a,trigger:l,stop:s,active:o,pause:function(){a&&(v(!1),u.current&&clearInterval(u.current))},resume:f}};
3
+ //# sourceMappingURL=useVibrate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useVibrate.js","sources":["../../../../src/hooks/useVibrate/useVibrate.ts"],"sourcesContent":["import { useEffect, useRef, useState } from 'react';\n\n/** The use vibrate pattern type */\nexport type UseVibratePattern = number | number[];\n\n/** The use vibrate return type */\nexport interface UseVibrateReturn {\n /** The support indicator */\n supported: boolean;\n /** The vibrating indicator */\n vibrating: boolean;\n /** The pause function */\n pause: () => void;\n /** The resume function */\n resume: () => void;\n /** The start function */\n start: (interval: number) => void;\n /** The vibrate function */\n trigger: (pattern?: UseVibratePattern) => void;\n}\n\n/**\n * @name useVibrate\n * @description - Hook that provides vibrate api\n * @category Browser\n *\n * @overload\n * @param {UseVibratePattern} options.pattern The pattern for vibration\n * @param {number} [options.interval = 0] Time in milliseconds between vibrations\n * @returns {UseVibrateReturn} An object containing support indicator, start vibration and stop vibration functions\n *\n * @example\n * const { supported, active, vibrate, stop, pause, resume } = useVibrate(1000);\n */\nexport const useVibrate = (pattern: UseVibratePattern, interval: number = 0) => {\n const supported = typeof navigator !== 'undefined' && 'vibrate' in navigator;\n\n const intervalIdRef = useRef<ReturnType<typeof setInterval>>();\n const [active, setActive] = useState(false);\n\n const trigger = (internalPattern: UseVibratePattern = pattern) => {\n if (!supported) return;\n navigator.vibrate(internalPattern);\n };\n\n const stop = () => {\n if (!supported) return;\n navigator.vibrate(0);\n setActive(false);\n if (intervalIdRef.current) clearInterval(intervalIdRef.current);\n };\n\n const pause = () => {\n if (!supported) return;\n setActive(false);\n if (intervalIdRef.current) clearInterval(intervalIdRef.current);\n };\n\n const resume = (intervalInterval: number = interval) => {\n if (!supported) return;\n if (intervalIdRef.current) clearInterval(intervalIdRef.current);\n setActive(true);\n intervalIdRef.current = setInterval(trigger, intervalInterval);\n };\n\n useEffect(() => {\n if (!supported || interval <= 0) return;\n resume(interval);\n return () => {\n stop();\n };\n }, [interval, pattern]);\n\n return { supported, trigger, stop, active, pause, resume };\n};\n"],"names":["pattern","interval","arguments","length","undefined","supported","navigator","intervalIdRef","useRef","_useState","useState","_useState2","_slicedToArray","active","setActive","trigger","internalPattern","vibrate","stop","current","clearInterval","resume","intervalInterval","setInterval","useEffect","pause"],"mappings":";gHAkC0B,SAACA,GAAqD,IAAzBC,EAAgBC,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAG,EAClEG,EAAiC,oBAAdC,WAA6B,YAAaA,UAE7DC,EAAgBC,EAAAA,SACtBC,EAA4BC,EAAQA,UAAC,GAAMC,EAAAC,EAAAA,eAAAH,EAAA,GAApCI,EAAMF,EAAA,GAAEG,EAASH,EAAA,GAElBI,EAAU,WAAkD,IAAjDC,EAAkCd,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAGF,EAC/CK,GACLC,UAAUW,QAAQD,EACnB,EAEKE,EAAO,WACNb,IACLC,UAAUW,QAAQ,GAClBH,GAAU,GACNP,EAAcY,SAASC,cAAcb,EAAcY,SACxD,EAQKE,EAAS,WAAyC,IAAxCC,EAAwBpB,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAGD,EACpCI,IACDE,EAAcY,SAASC,cAAcb,EAAcY,SACvDL,GAAU,GACVP,EAAcY,QAAUI,YAAYR,EAASO,GAC9C,EAUD,OARAE,EAAAA,WAAU,WACR,GAAKnB,KAAaJ,GAAY,GAE9B,OADAoB,EAAOpB,GACA,WACLiB,GACD,CACH,GAAG,CAACjB,EAAUD,IAEP,CAAEK,UAAAA,EAAWU,QAAAA,EAASG,KAAAA,EAAML,OAAAA,EAAQY,MArB7B,WACPpB,IACLS,GAAU,GACNP,EAAcY,SAASC,cAAcb,EAAcY,SACxD,EAiBiDE,OAAAA,EACpD"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.75 */
2
- "use strict";var e=require("../../_rollupPluginBabelHelpers-DQxhXgk7.js"),n=require("react"),r=require("../useEvent/useEvent.js"),t=require("../../utils/helpers/getRetry.js");exports.useWebSocket=function(u,o){var c=n.useRef(),l=n.useRef(null!=o&&o.retry?t.getRetry(o.retry):0),i=n.useRef(!1),s=n.useState("connecting"),v=e._slicedToArray(s,2),a=v[0],d=v[1],f=r.useEvent((function(){c.current=new WebSocket("function"==typeof u?u():u,null==o?void 0:o.protocols),d("connecting");var e=c.current;e&&(e.onopen=function(){var n;d("connected"),null==o||null===(n=o.onConnected)||void 0===n||n.call(o,e)},e.onerror=function(n){var r;d("failed"),null==o||null===(r=o.onError)||void 0===r||r.call(o,n,e)},e.onmessage=function(n){var r;return null==o||null===(r=o.onMessage)||void 0===r?void 0:r.call(o,n,e)},e.onclose=function(n){var r;if(d("disconnected"),null==o||null===(r=o.onDisconnected)||void 0===r||r.call(o,n,e),!i.current)return l.current>0?(l.current-=1,f()):void(l.current=null!=o&&o.retry?t.getRetry(o.retry):0)})}));n.useEffect((function(){return f(),function(){c.current&&(c.current.close(),c.current=void 0)}}),[u]);return{client:c.current,close:function(){var e;i.current=!0,null===(e=c.current)||void 0===e||e.close()},open:function(){i.current=!1,f()},send:function(e){var n;return null===(n=c.current)||void 0===n?void 0:n.send(e)},status:a}};
1
+ /* @license @siberiacancode/reactuse v0.0.77 */
2
+ "use strict";var e=require("../../_rollupPluginBabelHelpers-n1mTP8al.js"),n=require("react"),r=require("../../utils/helpers/getRetry.js");require("../../utils/helpers/isClient.js");var t=require("../useEvent/useEvent.js");exports.useWebSocket=function(u,o){var c=n.useRef(),l=n.useRef(null!=o&&o.retry?r.getRetry(o.retry):0),i=n.useRef(!1),s=n.useState("connecting"),v=e._slicedToArray(s,2),a=v[0],d=v[1],f=t.useEvent((function(){c.current=new WebSocket("function"==typeof u?u():u,null==o?void 0:o.protocols),d("connecting");var e=c.current;e&&(e.onopen=function(){var n;d("connected"),null==o||null===(n=o.onConnected)||void 0===n||n.call(o,e)},e.onerror=function(n){var r;d("failed"),null==o||null===(r=o.onError)||void 0===r||r.call(o,n,e)},e.onmessage=function(n){var r;return null==o||null===(r=o.onMessage)||void 0===r?void 0:r.call(o,n,e)},e.onclose=function(n){var t;if(d("disconnected"),null==o||null===(t=o.onDisconnected)||void 0===t||t.call(o,n,e),!i.current)return l.current>0?(l.current-=1,f()):void(l.current=null!=o&&o.retry?r.getRetry(o.retry):0)})}));n.useEffect((function(){return f(),function(){c.current&&(c.current.close(),c.current=void 0)}}),[u]);return{client:c.current,close:function(){var e;i.current=!0,null===(e=c.current)||void 0===e||e.close()},open:function(){i.current=!1,f()},send:function(e){var n;return null===(n=c.current)||void 0===n?void 0:n.send(e)},status:a}};
3
3
  //# sourceMappingURL=useWebSocket.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useWebSocket.js","sources":["../../../../src/hooks/useWebSocket/useWebSocket.ts"],"sourcesContent":["import { useEffect, useRef, useState } from 'react';\n\nimport { getRetry } from '@/utils/helpers';\n\nimport { useEvent } from '../useEvent/useEvent';\n\nexport type UseWebSocketUrl = (() => string) | string;\n\nexport interface UseWebSocketOptions {\n protocols?: Array<'soap' | 'wasm'>;\n retry?: boolean | number;\n onConnected?: (webSocket: WebSocket) => void;\n onDisconnected?: (event: CloseEvent, webSocket: WebSocket) => void;\n onError?: (event: Event, webSocket: WebSocket) => void;\n onMessage?: (event: MessageEvent, webSocket: WebSocket) => void;\n}\n\nexport type UseWebSocketStatus = 'connected' | 'connecting' | 'disconnected' | 'failed';\n\nexport interface UseWebSocketReturn {\n client?: WebSocket;\n close: WebSocket['close'];\n send: WebSocket['send'];\n status: UseWebSocketStatus;\n open: () => void;\n}\n\n/**\n * @name useWebSocket\n * @description - Hook that connects to a WebSocket server and handles incoming and outgoing messages\n * @category Network\n *\n * @param {UseWebSocketUrl} url The URL of the WebSocket server\n * @param {(webSocket: WebSocket) => void} [options.onConnected] The callback function that is called when the WebSocket connection is established\n * @param {(event: CloseEvent, webSocket: WebSocket) => void} [options.onDisconnected] The callback function that is called when the WebSocket connection is closed\n * @param {(event: Event, webSocket: WebSocket) => void} [options.onError] The callback function that is called when an error occurs\n * @param {(event: MessageEvent, webSocket: WebSocket) => void} [options.onMessage] The callback function that is called when a message is received\n * @param {boolean | number} [options.retry] The number of times to retry the connection\n * @param {Array<'soap' | 'wasm'>} [options.protocols] The list of protocols to use\n * @returns {UseWebSocketReturn} An object with the status, close, send, open, and ws properties\n *\n * @example\n * const { status, close, send, open, client } = useWebSocket('url');\n */\nexport const useWebSocket = (\n url: UseWebSocketUrl,\n options?: UseWebSocketOptions\n): UseWebSocketReturn => {\n const webSocketRef = useRef<WebSocket>();\n const retryCountRef = useRef(options?.retry ? getRetry(options.retry) : 0);\n const explicityCloseRef = useRef(false);\n\n const [status, setStatus] = useState<UseWebSocketStatus>('connecting');\n\n const send = (data: string | ArrayBufferLike | ArrayBufferView | Blob) =>\n webSocketRef.current?.send(data);\n\n const close = () => {\n explicityCloseRef.current = true;\n webSocketRef.current?.close();\n };\n\n const init = useEvent(() => {\n webSocketRef.current = new WebSocket(\n typeof url === 'function' ? url() : url,\n options?.protocols\n );\n setStatus('connecting');\n\n const webSocket = webSocketRef.current;\n if (!webSocket) return;\n\n webSocket.onopen = () => {\n setStatus('connected');\n options?.onConnected?.(webSocket);\n };\n\n webSocket.onerror = (event) => {\n setStatus('failed');\n options?.onError?.(event, webSocket);\n };\n\n webSocket.onmessage = (event) => options?.onMessage?.(event, webSocket);\n\n webSocket.onclose = (event) => {\n setStatus('disconnected');\n options?.onDisconnected?.(event, webSocket);\n if (explicityCloseRef.current) return;\n\n if (retryCountRef.current > 0) {\n retryCountRef.current -= 1;\n return init();\n }\n retryCountRef.current = options?.retry ? getRetry(options.retry) : 0;\n };\n });\n\n useEffect(() => {\n init();\n\n return () => {\n if (!webSocketRef.current) return;\n webSocketRef.current.close();\n webSocketRef.current = undefined;\n };\n }, [url]);\n\n const open = () => {\n explicityCloseRef.current = false;\n init();\n };\n\n return { client: webSocketRef.current, close, open, send, status };\n};\n"],"names":["url","options","webSocketRef","useRef","retryCountRef","retry","getRetry","explicityCloseRef","_useState","useState","_useState2","_slicedToArray","status","setStatus","init","useEvent","current","WebSocket","protocols","webSocket","onopen","_options$onConnected","onConnected","call","onerror","event","_options$onError","onError","onmessage","_options$onMessage","onMessage","onclose","_options$onDisconnect","onDisconnected","useEffect","close","undefined","client","_webSocketRef$current2","open","send","data","_webSocketRef$current"],"mappings":";oMA4C4B,SAC1BA,EACAC,GAEA,IAAMC,EAAeC,EAAAA,SACfC,EAAgBD,EAAMA,OAACF,SAAAA,EAASI,MAAQC,EAAQA,SAACL,EAAQI,OAAS,GAClEE,EAAoBJ,EAAMA,QAAC,GAEjCK,EAA4BC,EAAQA,SAAqB,cAAaC,EAAAC,EAAAA,eAAAH,EAAA,GAA/DI,EAAMF,EAAA,GAAEG,EAASH,EAAA,GAUlBI,EAAOC,EAAAA,UAAS,WACpBb,EAAac,QAAU,IAAIC,UACV,mBAARjB,EAAqBA,IAAQA,EACpCC,aAAAA,EAAAA,EAASiB,WAEXL,EAAU,cAEV,IAAMM,EAAYjB,EAAac,QAC1BG,IAELA,EAAUC,OAAS,WAAM,IAAAC,EACvBR,EAAU,aACVZ,SAAoB,QAAboB,EAAPpB,EAASqB,mBAAW,IAAAD,GAApBA,EAAAE,KAAAtB,EAAuBkB,EACxB,EAEDA,EAAUK,QAAU,SAACC,GAAU,IAAAC,EAC7Bb,EAAU,UACVZ,SAAgByB,QAATA,EAAPzB,EAAS0B,mBAAOD,GAAhBA,EAAAH,KAAAtB,EAAmBwB,EAAON,EAC3B,EAEDA,EAAUS,UAAY,SAACH,GAAK,IAAAI,EAAA,OAAK5B,SAAkB,QAAX4B,EAAP5B,EAAS6B,iBAATD,IAAkBA,OAAlBA,EAAAA,EAAAN,KAAAtB,EAAqBwB,EAAON,EAAU,EAEvEA,EAAUY,QAAU,SAACN,GAAU,IAAAO,EAG7B,GAFAnB,EAAU,gBACVZ,SAAuB+B,QAAhBA,EAAP/B,EAASgC,0BAAcD,GAAvBA,EAAAT,KAAAtB,EAA0BwB,EAAON,IAC7BZ,EAAkBS,QAEtB,OAAIZ,EAAcY,QAAU,GAC1BZ,EAAcY,SAAW,EAClBF,UAETV,EAAcY,QAAUf,SAAAA,EAASI,MAAQC,EAAQA,SAACL,EAAQI,OAAS,EACpE,EACH,IAEA6B,EAAAA,WAAU,WAGR,OAFApB,IAEO,WACAZ,EAAac,UAClBd,EAAac,QAAQmB,QACrBjC,EAAac,aAAUoB,EACxB,CACH,GAAG,CAACpC,IAOJ,MAAO,CAAEqC,OAAQnC,EAAac,QAASmB,MAvDzB,WAAM,IAAAG,EAClB/B,EAAkBS,SAAU,EACR,QAApBsB,EAAApC,EAAac,eAAO,IAAAsB,GAApBA,EAAsBH,OACvB,EAoD6CI,KALjC,WACXhC,EAAkBS,SAAU,EAC5BF,GACD,EAEmD0B,KA1DvC,SAACC,GAAuD,IAAAC,EAAA,OAC/C,QAD+CA,EACnExC,EAAac,eAAO,IAAA0B,OAAA,EAApBA,EAAsBF,KAAKC,EAAK,EAyDwB7B,OAAAA,EAC5D"}
1
+ {"version":3,"file":"useWebSocket.js","sources":["../../../../src/hooks/useWebSocket/useWebSocket.ts"],"sourcesContent":["import { useEffect, useRef, useState } from 'react';\n\nimport { getRetry } from '@/utils/helpers';\n\nimport { useEvent } from '../useEvent/useEvent';\n\nexport type UseWebSocketUrl = (() => string) | string;\n\nexport interface UseWebSocketOptions {\n protocols?: Array<'soap' | 'wasm'>;\n retry?: boolean | number;\n onConnected?: (webSocket: WebSocket) => void;\n onDisconnected?: (event: CloseEvent, webSocket: WebSocket) => void;\n onError?: (event: Event, webSocket: WebSocket) => void;\n onMessage?: (event: MessageEvent, webSocket: WebSocket) => void;\n}\n\nexport type UseWebSocketStatus = 'connected' | 'connecting' | 'disconnected' | 'failed';\n\nexport interface UseWebSocketReturn {\n client?: WebSocket;\n close: WebSocket['close'];\n send: WebSocket['send'];\n status: UseWebSocketStatus;\n open: () => void;\n}\n\n/**\n * @name useWebSocket\n * @description - Hook that connects to a WebSocket server and handles incoming and outgoing messages\n * @category Network\n *\n * @param {UseWebSocketUrl} url The URL of the WebSocket server\n * @param {(webSocket: WebSocket) => void} [options.onConnected] The callback function that is called when the WebSocket connection is established\n * @param {(event: CloseEvent, webSocket: WebSocket) => void} [options.onDisconnected] The callback function that is called when the WebSocket connection is closed\n * @param {(event: Event, webSocket: WebSocket) => void} [options.onError] The callback function that is called when an error occurs\n * @param {(event: MessageEvent, webSocket: WebSocket) => void} [options.onMessage] The callback function that is called when a message is received\n * @param {boolean | number} [options.retry] The number of times to retry the connection\n * @param {Array<'soap' | 'wasm'>} [options.protocols] The list of protocols to use\n * @returns {UseWebSocketReturn} An object with the status, close, send, open, and ws properties\n *\n * @example\n * const { status, close, send, open, client } = useWebSocket('url');\n */\nexport const useWebSocket = (\n url: UseWebSocketUrl,\n options?: UseWebSocketOptions\n): UseWebSocketReturn => {\n const webSocketRef = useRef<WebSocket>();\n const retryCountRef = useRef(options?.retry ? getRetry(options.retry) : 0);\n const explicityCloseRef = useRef(false);\n\n const [status, setStatus] = useState<UseWebSocketStatus>('connecting');\n\n const send = (data: string | ArrayBufferLike | ArrayBufferView | Blob) =>\n webSocketRef.current?.send(data);\n\n const close = () => {\n explicityCloseRef.current = true;\n webSocketRef.current?.close();\n };\n\n const init = useEvent(() => {\n webSocketRef.current = new WebSocket(\n typeof url === 'function' ? url() : url,\n options?.protocols\n );\n setStatus('connecting');\n\n const webSocket = webSocketRef.current;\n if (!webSocket) return;\n\n webSocket.onopen = () => {\n setStatus('connected');\n options?.onConnected?.(webSocket);\n };\n\n webSocket.onerror = (event) => {\n setStatus('failed');\n options?.onError?.(event, webSocket);\n };\n\n webSocket.onmessage = (event) => options?.onMessage?.(event, webSocket);\n\n webSocket.onclose = (event) => {\n setStatus('disconnected');\n options?.onDisconnected?.(event, webSocket);\n if (explicityCloseRef.current) return;\n\n if (retryCountRef.current > 0) {\n retryCountRef.current -= 1;\n return init();\n }\n retryCountRef.current = options?.retry ? getRetry(options.retry) : 0;\n };\n });\n\n useEffect(() => {\n init();\n\n return () => {\n if (!webSocketRef.current) return;\n webSocketRef.current.close();\n webSocketRef.current = undefined;\n };\n }, [url]);\n\n const open = () => {\n explicityCloseRef.current = false;\n init();\n };\n\n return { client: webSocketRef.current, close, open, send, status };\n};\n"],"names":["url","options","webSocketRef","useRef","retryCountRef","retry","getRetry","explicityCloseRef","_useState","useState","_useState2","_slicedToArray","status","setStatus","init","useEvent","current","WebSocket","protocols","webSocket","onopen","_options$onConnected","onConnected","call","onerror","event","_options$onError","onError","onmessage","_options$onMessage","onMessage","onclose","_options$onDisconnect","onDisconnected","useEffect","close","undefined","client","_webSocketRef$current2","open","send","data","_webSocketRef$current"],"mappings":";mPA4C4B,SAC1BA,EACAC,GAEA,IAAMC,EAAeC,EAAAA,SACfC,EAAgBD,EAAMA,OAACF,SAAAA,EAASI,MAAQC,EAAQA,SAACL,EAAQI,OAAS,GAClEE,EAAoBJ,EAAMA,QAAC,GAEjCK,EAA4BC,EAAQA,SAAqB,cAAaC,EAAAC,EAAAA,eAAAH,EAAA,GAA/DI,EAAMF,EAAA,GAAEG,EAASH,EAAA,GAUlBI,EAAOC,EAAAA,UAAS,WACpBb,EAAac,QAAU,IAAIC,UACV,mBAARjB,EAAqBA,IAAQA,EACpCC,aAAAA,EAAAA,EAASiB,WAEXL,EAAU,cAEV,IAAMM,EAAYjB,EAAac,QAC1BG,IAELA,EAAUC,OAAS,WAAM,IAAAC,EACvBR,EAAU,aACVZ,SAAoB,QAAboB,EAAPpB,EAASqB,mBAAW,IAAAD,GAApBA,EAAAE,KAAAtB,EAAuBkB,EACxB,EAEDA,EAAUK,QAAU,SAACC,GAAU,IAAAC,EAC7Bb,EAAU,UACVZ,SAAgByB,QAATA,EAAPzB,EAAS0B,mBAAOD,GAAhBA,EAAAH,KAAAtB,EAAmBwB,EAAON,EAC3B,EAEDA,EAAUS,UAAY,SAACH,GAAK,IAAAI,EAAA,OAAK5B,SAAkB,QAAX4B,EAAP5B,EAAS6B,iBAATD,IAAkBA,OAAlBA,EAAAA,EAAAN,KAAAtB,EAAqBwB,EAAON,EAAU,EAEvEA,EAAUY,QAAU,SAACN,GAAU,IAAAO,EAG7B,GAFAnB,EAAU,gBACVZ,SAAuB+B,QAAhBA,EAAP/B,EAASgC,0BAAcD,GAAvBA,EAAAT,KAAAtB,EAA0BwB,EAAON,IAC7BZ,EAAkBS,QAEtB,OAAIZ,EAAcY,QAAU,GAC1BZ,EAAcY,SAAW,EAClBF,UAETV,EAAcY,QAAUf,SAAAA,EAASI,MAAQC,EAAQA,SAACL,EAAQI,OAAS,EACpE,EACH,IAEA6B,EAAAA,WAAU,WAGR,OAFApB,IAEO,WACAZ,EAAac,UAClBd,EAAac,QAAQmB,QACrBjC,EAAac,aAAUoB,EACxB,CACH,GAAG,CAACpC,IAOJ,MAAO,CAAEqC,OAAQnC,EAAac,QAASmB,MAvDzB,WAAM,IAAAG,EAClB/B,EAAkBS,SAAU,EACR,QAApBsB,EAAApC,EAAac,eAAO,IAAAsB,GAApBA,EAAsBH,OACvB,EAoD6CI,KALjC,WACXhC,EAAkBS,SAAU,EAC5BF,GACD,EAEmD0B,KA1DvC,SAACC,GAAuD,IAAAC,EAAA,OAC/C,QAD+CA,EACnExC,EAAac,eAAO,IAAA0B,OAAA,EAApBA,EAAsBF,KAAKC,EAAK,EAyDwB7B,OAAAA,EAC5D"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.75 */
2
- "use strict";var e=require("../useEventListener/useEventListener.js");require("../../_rollupPluginBabelHelpers-DQxhXgk7.js"),require("react"),require("../useEvent/useEvent.js"),require("../../utils/helpers/getElement.js");exports.useWindowEvent=function(r,s,t){return e.useEventListener(window,r,s,t)};
1
+ /* @license @siberiacancode/reactuse v0.0.77 */
2
+ "use strict";var e=require("../useEventListener/useEventListener.js");require("../../_rollupPluginBabelHelpers-n1mTP8al.js"),require("react"),require("../../utils/helpers/getElement.js"),require("../../utils/helpers/isClient.js"),require("../useEvent/useEvent.js");exports.useWindowEvent=function(r,s,t){return e.useEventListener(window,r,s,t)};
3
3
  //# sourceMappingURL=useWindowEvent.js.map