@siberiacancode/reactuse 0.0.97 → 0.0.99

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 (325) hide show
  1. package/dist/cjs/{_rollupPluginBabelHelpers-B6-9bMtn.js → _rollupPluginBabelHelpers-C-GU1yny.js} +3 -3
  2. package/dist/cjs/_rollupPluginBabelHelpers-C-GU1yny.js.map +1 -0
  3. package/dist/cjs/hooks/index.js +2 -2
  4. package/dist/cjs/hooks/useActiveElement/useActiveElement.js +2 -2
  5. package/dist/cjs/hooks/useAsync/useAsync.js +2 -2
  6. package/dist/cjs/hooks/useBattery/useBattery.js +2 -2
  7. package/dist/cjs/hooks/useBluetooth/useBluetooth.js +2 -2
  8. package/dist/cjs/hooks/useBoolean/useBoolean.js +2 -2
  9. package/dist/cjs/hooks/useBreakpoints/useBreakpoints.js +2 -2
  10. package/dist/cjs/hooks/useBreakpoints/useBreakpoints.js.map +1 -1
  11. package/dist/cjs/hooks/useBrowserLanguage/useBrowserLanguage.js +1 -1
  12. package/dist/cjs/hooks/useClickOutside/useClickOutside.js +2 -2
  13. package/dist/cjs/hooks/useClipboard/useClipboard.js +2 -2
  14. package/dist/cjs/hooks/useConst/useConst.js +1 -1
  15. package/dist/cjs/hooks/useCookie/useCookie.js +2 -2
  16. package/dist/cjs/hooks/useCookie/useCookie.js.map +1 -1
  17. package/dist/cjs/hooks/useCookies/useCookies.js +3 -0
  18. package/dist/cjs/hooks/useCookies/useCookies.js.map +1 -0
  19. package/dist/cjs/hooks/useCounter/useCounter.js +2 -2
  20. package/dist/cjs/hooks/useCssVar/useCssVar.js +2 -2
  21. package/dist/cjs/hooks/useDebounceCallback/useDebounceCallback.js +2 -2
  22. package/dist/cjs/hooks/useDebounceValue/useDebounceValue.js +2 -2
  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/useDevicePixelRatio/useDevicePixelRatio.js +2 -2
  28. package/dist/cjs/hooks/useDidUpdate/useDidUpdate.js +1 -1
  29. package/dist/cjs/hooks/useDisclosure/useDisclosure.js +2 -2
  30. package/dist/cjs/hooks/useDisplayMedia/useDisplayMedia.js +2 -2
  31. package/dist/cjs/hooks/useDocumentEvent/useDocumentEvent.js +2 -2
  32. package/dist/cjs/hooks/useDocumentTitle/useDocumentTitle.js +2 -2
  33. package/dist/cjs/hooks/useDocumentVisibility/useDocumentVisibility.js +1 -1
  34. package/dist/cjs/hooks/useElementSize/useElementSize.js +2 -2
  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/useEyeDropper/useEyeDropper.js +2 -2
  38. package/dist/cjs/hooks/useFavicon/useFavicon.js +2 -2
  39. package/dist/cjs/hooks/useField/useField.js +2 -2
  40. package/dist/cjs/hooks/useField/useField.js.map +1 -1
  41. package/dist/cjs/hooks/useFileDialog/useFileDialog.js +2 -2
  42. package/dist/cjs/hooks/useFileDialog/useFileDialog.js.map +1 -1
  43. package/dist/cjs/hooks/useFocus/useFocus.js +2 -2
  44. package/dist/cjs/hooks/useFocus/useFocus.js.map +1 -1
  45. package/dist/cjs/hooks/useFps/useFps.js +2 -2
  46. package/dist/cjs/hooks/useFullscreen/useFullscreen.js +2 -2
  47. package/dist/cjs/hooks/useGamepad/helpers/index.js +1 -1
  48. package/dist/cjs/hooks/useGamepad/helpers/mapGamepadToXbox360Controller.js +1 -1
  49. package/dist/cjs/hooks/useGamepad/useGamepad.js +2 -2
  50. package/dist/cjs/hooks/useGeolocation/useGeolocation.js +2 -2
  51. package/dist/cjs/hooks/useHash/useHash.js +2 -2
  52. package/dist/cjs/hooks/useHotkeys/useHotkeys.js +2 -2
  53. package/dist/cjs/hooks/useHover/useHover.js +2 -2
  54. package/dist/cjs/hooks/useIdle/useIdle.js +2 -2
  55. package/dist/cjs/hooks/useImage/useImage.js +2 -2
  56. package/dist/cjs/hooks/useInfiniteScroll/useInfiniteScroll.js +2 -2
  57. package/dist/cjs/hooks/useIntersectionObserver/useIntersectionObserver.js +2 -2
  58. package/dist/cjs/hooks/useIntersectionObserver/useIntersectionObserver.js.map +1 -1
  59. package/dist/cjs/hooks/useInterval/useInterval.js +2 -2
  60. package/dist/cjs/hooks/useIsFirstRender/useIsFirstRender.js +1 -1
  61. package/dist/cjs/hooks/useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js +1 -1
  62. package/dist/cjs/hooks/useKeyPress/useKeyPress.js +2 -2
  63. package/dist/cjs/hooks/useKeyPressEvent/useKeyPressEvent.js +2 -2
  64. package/dist/cjs/hooks/useKeyPressEvent/useKeyPressEvent.js.map +1 -1
  65. package/dist/cjs/hooks/useKeyboard/useKeyboard.js +2 -2
  66. package/dist/cjs/hooks/useKeysPressed/useKeysPressed.js +2 -2
  67. package/dist/cjs/hooks/useLastChanged/useLastChanged.js +2 -2
  68. package/dist/cjs/hooks/useLatest/useLatest.js +1 -1
  69. package/dist/cjs/hooks/useLess/useLess.js +3 -0
  70. package/dist/cjs/hooks/useLess/useLess.js.map +1 -0
  71. package/dist/cjs/hooks/useList/useList.js +2 -2
  72. package/dist/cjs/hooks/useLocalStorage/useLocalStorage.js +2 -2
  73. package/dist/cjs/hooks/useLogger/useLogger.js +2 -2
  74. package/dist/cjs/hooks/useLongPress/useLongPress.js +2 -2
  75. package/dist/cjs/hooks/useLongPress/useLongPress.js.map +1 -1
  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/useMutation/useMutation.js +2 -2
  84. package/dist/cjs/hooks/useMutationObserver/useMutationObserver.js +2 -2
  85. package/dist/cjs/hooks/useNetwork/useNetwork.js +2 -2
  86. package/dist/cjs/hooks/useOffsetPagination/useOffsetPagination.js +2 -2
  87. package/dist/cjs/hooks/useOnline/useOnline.js +1 -1
  88. package/dist/cjs/hooks/useOperatingSystem/useOperatingSystem.js +2 -2
  89. package/dist/cjs/hooks/useOperatingSystem/useOperatingSystem.js.map +1 -1
  90. package/dist/cjs/hooks/useOptimistic/useOptimistic.js +2 -2
  91. package/dist/cjs/hooks/useOrientation/useOrientation.js +2 -2
  92. package/dist/cjs/hooks/useOtpCredential/useOtpCredential.js +2 -2
  93. package/dist/cjs/hooks/usePageLeave/usePageLeave.js +2 -2
  94. package/dist/cjs/hooks/usePaint/usePaint.js +2 -2
  95. package/dist/cjs/hooks/usePaint/usePaint.js.map +1 -1
  96. package/dist/cjs/hooks/useParallax/useParallax.js +2 -2
  97. package/dist/cjs/hooks/usePerformanceObserver/usePerformanceObserver.js +3 -0
  98. package/dist/cjs/hooks/usePerformanceObserver/usePerformanceObserver.js.map +1 -0
  99. package/dist/cjs/hooks/usePermission/usePermission.js +2 -2
  100. package/dist/cjs/hooks/usePointerLock/usePointerLock.js +2 -2
  101. package/dist/cjs/hooks/usePostMessage/usePostMessage.js +1 -1
  102. package/dist/cjs/hooks/usePreferredColorScheme/usePreferredColorScheme.js +1 -1
  103. package/dist/cjs/hooks/usePreferredContrast/usePreferredContrast.js +1 -1
  104. package/dist/cjs/hooks/usePreferredDark/usePreferredDark.js +1 -1
  105. package/dist/cjs/hooks/usePreferredLanguages/usePreferredLanguages.js +1 -1
  106. package/dist/cjs/hooks/usePreferredReducedMotion/usePreferredReducedMotion.js +1 -1
  107. package/dist/cjs/hooks/usePrevious/usePrevious.js +1 -1
  108. package/dist/cjs/hooks/useQuery/useQuery.js +2 -2
  109. package/dist/cjs/hooks/useQuery/useQuery.js.map +1 -1
  110. package/dist/cjs/hooks/useQueue/useQueue.js +2 -2
  111. package/dist/cjs/hooks/useRaf/useRaf.js +2 -2
  112. package/dist/cjs/hooks/useRaf/useRaf.js.map +1 -1
  113. package/dist/cjs/hooks/useRafValue/useRafValue.js +2 -2
  114. package/dist/cjs/hooks/useRefState/useRefState.js +2 -2
  115. package/dist/cjs/hooks/useRenderCount/useRenderCount.js +1 -1
  116. package/dist/cjs/hooks/useRenderInfo/useRenderInfo.js +1 -1
  117. package/dist/cjs/hooks/useRerender/useRerender.js +1 -1
  118. package/dist/cjs/hooks/useResizeObserver/useResizeObserver.js +2 -2
  119. package/dist/cjs/hooks/useScreenOrientation/useScreenOrientation.js +2 -2
  120. package/dist/cjs/hooks/useScript/useScript.js +2 -2
  121. package/dist/cjs/hooks/useScroll/useScroll.js +2 -2
  122. package/dist/cjs/hooks/useScroll/useScroll.js.map +1 -1
  123. package/dist/cjs/hooks/useScrollIntoView/useScrollIntoView.js +2 -2
  124. package/dist/cjs/hooks/useScrollTo/useScrollTo.js +2 -2
  125. package/dist/cjs/hooks/useSessionStorage/useSessionStorage.js +2 -2
  126. package/dist/cjs/hooks/useSet/useSet.js +2 -2
  127. package/dist/cjs/hooks/useShare/useShare.js +2 -2
  128. package/dist/cjs/hooks/useStateHistory/useStateHistory.js +2 -2
  129. package/dist/cjs/hooks/useStep/useStep.js +2 -2
  130. package/dist/cjs/hooks/useStopwatch/useStopwatch.js +2 -2
  131. package/dist/cjs/hooks/useStorage/useStorage.js +2 -2
  132. package/dist/cjs/hooks/useTextDirection/useTextDirection.js +2 -2
  133. package/dist/cjs/hooks/useTextSelection/useTextSelection.js +2 -2
  134. package/dist/cjs/hooks/useThrottleCallback/useThrottleCallback.js +2 -2
  135. package/dist/cjs/hooks/useThrottleValue/useThrottleValue.js +2 -2
  136. package/dist/cjs/hooks/useTime/useTime.js +2 -2
  137. package/dist/cjs/hooks/useTimeout/useTimeout.js +2 -2
  138. package/dist/cjs/hooks/useTimer/useTimer.js +2 -2
  139. package/dist/cjs/hooks/useToggle/useToggle.js +2 -2
  140. package/dist/cjs/hooks/useUnmount/useUnmount.js +1 -1
  141. package/dist/cjs/hooks/useVibrate/useVibrate.js +2 -2
  142. package/dist/cjs/hooks/useWebSocket/useWebSocket.js +2 -2
  143. package/dist/cjs/hooks/useWindowEvent/useWindowEvent.js +2 -2
  144. package/dist/cjs/hooks/useWindowFocus/useWindowFocus.js +2 -2
  145. package/dist/cjs/hooks/useWindowScroll/useWindowScroll.js +2 -2
  146. package/dist/cjs/hooks/useWindowSize/useWindowSize.js +2 -2
  147. package/dist/cjs/hooks/useWizard/useWizard.js +2 -2
  148. package/dist/cjs/hooks/useWizard/useWizard.js.map +1 -1
  149. package/dist/cjs/index.js +2 -2
  150. package/dist/cjs/utils/helpers/debounce.js +1 -1
  151. package/dist/cjs/utils/helpers/getDate.js +1 -1
  152. package/dist/cjs/utils/helpers/getElement.js +1 -1
  153. package/dist/cjs/utils/helpers/getRetry.js +1 -1
  154. package/dist/cjs/utils/helpers/index.js +2 -2
  155. package/dist/cjs/utils/helpers/isTarget.js +2 -2
  156. package/dist/cjs/utils/helpers/throttle.js +1 -1
  157. package/dist/esm/{_rollupPluginBabelHelpers-WrSliisk.js → _rollupPluginBabelHelpers-D_XDB4a1.js} +3 -3
  158. package/dist/esm/_rollupPluginBabelHelpers-D_XDB4a1.js.map +1 -0
  159. package/dist/esm/hooks/index.js +2 -2
  160. package/dist/esm/hooks/useActiveElement/useActiveElement.js +2 -2
  161. package/dist/esm/hooks/useAsync/useAsync.js +2 -2
  162. package/dist/esm/hooks/useBattery/useBattery.js +2 -2
  163. package/dist/esm/hooks/useBluetooth/useBluetooth.js +2 -2
  164. package/dist/esm/hooks/useBoolean/useBoolean.js +2 -2
  165. package/dist/esm/hooks/useBreakpoints/useBreakpoints.js +2 -2
  166. package/dist/esm/hooks/useBreakpoints/useBreakpoints.js.map +1 -1
  167. package/dist/esm/hooks/useBrowserLanguage/useBrowserLanguage.js +1 -1
  168. package/dist/esm/hooks/useClickOutside/useClickOutside.js +2 -2
  169. package/dist/esm/hooks/useClipboard/useClipboard.js +2 -2
  170. package/dist/esm/hooks/useConst/useConst.js +1 -1
  171. package/dist/esm/hooks/useCookie/useCookie.js +2 -2
  172. package/dist/esm/hooks/useCookie/useCookie.js.map +1 -1
  173. package/dist/esm/hooks/useCookies/useCookies.js +3 -0
  174. package/dist/esm/hooks/useCookies/useCookies.js.map +1 -0
  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/useDebounceCallback/useDebounceCallback.js +2 -2
  178. package/dist/esm/hooks/useDebounceValue/useDebounceValue.js +2 -2
  179. package/dist/esm/hooks/useDefault/useDefault.js +2 -2
  180. package/dist/esm/hooks/useDeviceMotion/useDeviceMotion.js +2 -2
  181. package/dist/esm/hooks/useDeviceOrientation/useDeviceOrientation.js +2 -2
  182. package/dist/esm/hooks/useDevicePixelRatio/useDevicePixelRatio.js +2 -2
  183. package/dist/esm/hooks/useDidUpdate/useDidUpdate.js +1 -1
  184. package/dist/esm/hooks/useDisclosure/useDisclosure.js +2 -2
  185. package/dist/esm/hooks/useDisplayMedia/useDisplayMedia.js +2 -2
  186. package/dist/esm/hooks/useDocumentEvent/useDocumentEvent.js +2 -2
  187. package/dist/esm/hooks/useDocumentTitle/useDocumentTitle.js +2 -2
  188. package/dist/esm/hooks/useDocumentVisibility/useDocumentVisibility.js +1 -1
  189. package/dist/esm/hooks/useElementSize/useElementSize.js +2 -2
  190. package/dist/esm/hooks/useEvent/useEvent.js +1 -1
  191. package/dist/esm/hooks/useEventListener/useEventListener.js +2 -2
  192. package/dist/esm/hooks/useEyeDropper/useEyeDropper.js +2 -2
  193. package/dist/esm/hooks/useFavicon/useFavicon.js +2 -2
  194. package/dist/esm/hooks/useField/useField.js +2 -2
  195. package/dist/esm/hooks/useField/useField.js.map +1 -1
  196. package/dist/esm/hooks/useFileDialog/useFileDialog.js +2 -2
  197. package/dist/esm/hooks/useFileDialog/useFileDialog.js.map +1 -1
  198. package/dist/esm/hooks/useFocus/useFocus.js +2 -2
  199. package/dist/esm/hooks/useFocus/useFocus.js.map +1 -1
  200. package/dist/esm/hooks/useFps/useFps.js +2 -2
  201. package/dist/esm/hooks/useFullscreen/useFullscreen.js +2 -2
  202. package/dist/esm/hooks/useGamepad/helpers/index.js +1 -1
  203. package/dist/esm/hooks/useGamepad/helpers/mapGamepadToXbox360Controller.js +1 -1
  204. package/dist/esm/hooks/useGamepad/useGamepad.js +2 -2
  205. package/dist/esm/hooks/useGeolocation/useGeolocation.js +2 -2
  206. package/dist/esm/hooks/useHash/useHash.js +2 -2
  207. package/dist/esm/hooks/useHotkeys/useHotkeys.js +2 -2
  208. package/dist/esm/hooks/useHover/useHover.js +2 -2
  209. package/dist/esm/hooks/useIdle/useIdle.js +2 -2
  210. package/dist/esm/hooks/useImage/useImage.js +2 -2
  211. package/dist/esm/hooks/useInfiniteScroll/useInfiniteScroll.js +2 -2
  212. package/dist/esm/hooks/useIntersectionObserver/useIntersectionObserver.js +2 -2
  213. package/dist/esm/hooks/useIntersectionObserver/useIntersectionObserver.js.map +1 -1
  214. package/dist/esm/hooks/useInterval/useInterval.js +2 -2
  215. package/dist/esm/hooks/useIsFirstRender/useIsFirstRender.js +1 -1
  216. package/dist/esm/hooks/useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js +1 -1
  217. package/dist/esm/hooks/useKeyPress/useKeyPress.js +2 -2
  218. package/dist/esm/hooks/useKeyPressEvent/useKeyPressEvent.js +2 -2
  219. package/dist/esm/hooks/useKeyboard/useKeyboard.js +2 -2
  220. package/dist/esm/hooks/useKeysPressed/useKeysPressed.js +2 -2
  221. package/dist/esm/hooks/useLastChanged/useLastChanged.js +2 -2
  222. package/dist/esm/hooks/useLatest/useLatest.js +1 -1
  223. package/dist/esm/hooks/useLess/useLess.js +3 -0
  224. package/dist/esm/hooks/useLess/useLess.js.map +1 -0
  225. package/dist/esm/hooks/useList/useList.js +2 -2
  226. package/dist/esm/hooks/useLocalStorage/useLocalStorage.js +2 -2
  227. package/dist/esm/hooks/useLogger/useLogger.js +2 -2
  228. package/dist/esm/hooks/useLongPress/useLongPress.js +2 -2
  229. package/dist/esm/hooks/useLongPress/useLongPress.js.map +1 -1
  230. package/dist/esm/hooks/useMap/useMap.js +2 -2
  231. package/dist/esm/hooks/useMeasure/useMeasure.js +2 -2
  232. package/dist/esm/hooks/useMediaQuery/useMediaQuery.js +1 -1
  233. package/dist/esm/hooks/useMemory/useMemory.js +2 -2
  234. package/dist/esm/hooks/useMount/useMount.js +1 -1
  235. package/dist/esm/hooks/useMouse/useMouse.js +2 -2
  236. package/dist/esm/hooks/useMutation/useMutation.js +2 -2
  237. package/dist/esm/hooks/useMutationObserver/useMutationObserver.js +2 -2
  238. package/dist/esm/hooks/useNetwork/useNetwork.js +2 -2
  239. package/dist/esm/hooks/useOffsetPagination/useOffsetPagination.js +2 -2
  240. package/dist/esm/hooks/useOnline/useOnline.js +1 -1
  241. package/dist/esm/hooks/useOperatingSystem/useOperatingSystem.js +2 -2
  242. package/dist/esm/hooks/useOperatingSystem/useOperatingSystem.js.map +1 -1
  243. package/dist/esm/hooks/useOptimistic/useOptimistic.js +2 -2
  244. package/dist/esm/hooks/useOrientation/useOrientation.js +2 -2
  245. package/dist/esm/hooks/useOtpCredential/useOtpCredential.js +2 -2
  246. package/dist/esm/hooks/usePageLeave/usePageLeave.js +2 -2
  247. package/dist/esm/hooks/usePaint/usePaint.js +2 -2
  248. package/dist/esm/hooks/usePaint/usePaint.js.map +1 -1
  249. package/dist/esm/hooks/useParallax/useParallax.js +2 -2
  250. package/dist/esm/hooks/usePerformanceObserver/usePerformanceObserver.js +3 -0
  251. package/dist/esm/hooks/usePerformanceObserver/usePerformanceObserver.js.map +1 -0
  252. package/dist/esm/hooks/usePermission/usePermission.js +2 -2
  253. package/dist/esm/hooks/usePointerLock/usePointerLock.js +2 -2
  254. package/dist/esm/hooks/usePostMessage/usePostMessage.js +1 -1
  255. package/dist/esm/hooks/usePreferredColorScheme/usePreferredColorScheme.js +1 -1
  256. package/dist/esm/hooks/usePreferredContrast/usePreferredContrast.js +1 -1
  257. package/dist/esm/hooks/usePreferredDark/usePreferredDark.js +1 -1
  258. package/dist/esm/hooks/usePreferredLanguages/usePreferredLanguages.js +1 -1
  259. package/dist/esm/hooks/usePreferredReducedMotion/usePreferredReducedMotion.js +1 -1
  260. package/dist/esm/hooks/usePrevious/usePrevious.js +1 -1
  261. package/dist/esm/hooks/useQuery/useQuery.js +2 -2
  262. package/dist/esm/hooks/useQuery/useQuery.js.map +1 -1
  263. package/dist/esm/hooks/useQueue/useQueue.js +2 -2
  264. package/dist/esm/hooks/useRaf/useRaf.js +2 -2
  265. package/dist/esm/hooks/useRaf/useRaf.js.map +1 -1
  266. package/dist/esm/hooks/useRafValue/useRafValue.js +2 -2
  267. package/dist/esm/hooks/useRefState/useRefState.js +2 -2
  268. package/dist/esm/hooks/useRenderCount/useRenderCount.js +1 -1
  269. package/dist/esm/hooks/useRenderInfo/useRenderInfo.js +1 -1
  270. package/dist/esm/hooks/useRerender/useRerender.js +1 -1
  271. package/dist/esm/hooks/useResizeObserver/useResizeObserver.js +2 -2
  272. package/dist/esm/hooks/useScreenOrientation/useScreenOrientation.js +2 -2
  273. package/dist/esm/hooks/useScript/useScript.js +2 -2
  274. package/dist/esm/hooks/useScroll/useScroll.js +2 -2
  275. package/dist/esm/hooks/useScroll/useScroll.js.map +1 -1
  276. package/dist/esm/hooks/useScrollIntoView/useScrollIntoView.js +2 -2
  277. package/dist/esm/hooks/useScrollTo/useScrollTo.js +2 -2
  278. package/dist/esm/hooks/useSessionStorage/useSessionStorage.js +2 -2
  279. package/dist/esm/hooks/useSet/useSet.js +2 -2
  280. package/dist/esm/hooks/useShare/useShare.js +2 -2
  281. package/dist/esm/hooks/useStateHistory/useStateHistory.js +2 -2
  282. package/dist/esm/hooks/useStep/useStep.js +2 -2
  283. package/dist/esm/hooks/useStopwatch/useStopwatch.js +2 -2
  284. package/dist/esm/hooks/useStorage/useStorage.js +2 -2
  285. package/dist/esm/hooks/useTextDirection/useTextDirection.js +2 -2
  286. package/dist/esm/hooks/useTextSelection/useTextSelection.js +2 -2
  287. package/dist/esm/hooks/useThrottleCallback/useThrottleCallback.js +2 -2
  288. package/dist/esm/hooks/useThrottleValue/useThrottleValue.js +2 -2
  289. package/dist/esm/hooks/useTime/useTime.js +2 -2
  290. package/dist/esm/hooks/useTimeout/useTimeout.js +2 -2
  291. package/dist/esm/hooks/useTimer/useTimer.js +2 -2
  292. package/dist/esm/hooks/useToggle/useToggle.js +2 -2
  293. package/dist/esm/hooks/useUnmount/useUnmount.js +1 -1
  294. package/dist/esm/hooks/useVibrate/useVibrate.js +2 -2
  295. package/dist/esm/hooks/useWebSocket/useWebSocket.js +2 -2
  296. package/dist/esm/hooks/useWindowEvent/useWindowEvent.js +2 -2
  297. package/dist/esm/hooks/useWindowFocus/useWindowFocus.js +2 -2
  298. package/dist/esm/hooks/useWindowScroll/useWindowScroll.js +2 -2
  299. package/dist/esm/hooks/useWindowSize/useWindowSize.js +2 -2
  300. package/dist/esm/hooks/useWizard/useWizard.js +2 -2
  301. package/dist/esm/hooks/useWizard/useWizard.js.map +1 -1
  302. package/dist/esm/index.js +2 -2
  303. package/dist/esm/utils/helpers/debounce.js +1 -1
  304. package/dist/esm/utils/helpers/getDate.js +1 -1
  305. package/dist/esm/utils/helpers/getElement.js +1 -1
  306. package/dist/esm/utils/helpers/getRetry.js +1 -1
  307. package/dist/esm/utils/helpers/index.js +2 -2
  308. package/dist/esm/utils/helpers/isTarget.js +2 -2
  309. package/dist/esm/utils/helpers/throttle.js +1 -1
  310. package/dist/types/index.d.ts +100 -30
  311. package/package.json +1 -1
  312. package/dist/cjs/_rollupPluginBabelHelpers-B6-9bMtn.js.map +0 -1
  313. package/dist/cjs/hooks/usePaint/helpers/Paint.js +0 -3
  314. package/dist/cjs/hooks/usePaint/helpers/Paint.js.map +0 -1
  315. package/dist/cjs/hooks/usePaint/helpers/index.js +0 -3
  316. package/dist/cjs/hooks/usePaint/helpers/index.js.map +0 -1
  317. package/dist/cjs/utils/helpers/cookie.js +0 -3
  318. package/dist/cjs/utils/helpers/cookie.js.map +0 -1
  319. package/dist/esm/_rollupPluginBabelHelpers-WrSliisk.js.map +0 -1
  320. package/dist/esm/hooks/usePaint/helpers/Paint.js +0 -3
  321. package/dist/esm/hooks/usePaint/helpers/Paint.js.map +0 -1
  322. package/dist/esm/hooks/usePaint/helpers/index.js +0 -3
  323. package/dist/esm/hooks/usePaint/helpers/index.js.map +0 -1
  324. package/dist/esm/utils/helpers/cookie.js +0 -3
  325. package/dist/esm/utils/helpers/cookie.js.map +0 -1
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.97 */
2
- "use strict";var e=require("../../_rollupPluginBabelHelpers-B6-9bMtn.js"),o=require("react"),t=require("../useDidUpdate/useDidUpdate.js");require("../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js");exports.useLogger=function(u,r){o.useEffect((function(){var o;return(o=console).log.apply(o,["".concat(u," mounted")].concat(e._toConsumableArray(r))),function(){return console.log("".concat(u," unmounted"))}}),[]),t.useDidUpdate((function(){var o;(o=console).log.apply(o,["".concat(u," updated")].concat(e._toConsumableArray(r)))}),r)};
1
+ /* @license @siberiacancode/reactuse v0.0.99 */
2
+ "use strict";var e=require("../../_rollupPluginBabelHelpers-C-GU1yny.js"),o=require("react"),t=require("../useDidUpdate/useDidUpdate.js");require("../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js");exports.useLogger=function(u,r){o.useEffect((function(){var o;return(o=console).log.apply(o,["".concat(u," mounted")].concat(e._toConsumableArray(r))),function(){return console.log("".concat(u," unmounted"))}}),[]),t.useDidUpdate((function(){var o;(o=console).log.apply(o,["".concat(u," updated")].concat(e._toConsumableArray(r)))}),r)};
3
3
  //# sourceMappingURL=useLogger.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.97 */
2
- "use strict";var e=require("../../_rollupPluginBabelHelpers-B6-9bMtn.js"),n=require("react");exports.useLongPress=function(r,u){var l=n.useState(!1),o=e._slicedToArray(l,2),t=o[0],c=o[1],i=n.useRef(),s=n.useRef(!1),a=function(e){var n,l;null==u||null===(n=u.onStart)||void 0===n||n.call(u,e),s.current=!0,i.current=setTimeout((function(){r(e),c(!0)}),null!==(l=null==u?void 0:u.threshold)&&void 0!==l?l:400)},v=function(e){var n;if(t)null==u||null===(n=u.onFinish)||void 0===n||n.call(u,e);else if(s.current){var r;null==u||null===(r=u.onCancel)||void 0===r||r.call(u,e)}c(!1),s.current=!1,i.current&&clearTimeout(i.current)};return[{onMouseDown:a,onTouchStart:a,onMouseUp:v,onTouchEnd:v},t]};
1
+ /* @license @siberiacancode/reactuse v0.0.99 */
2
+ "use strict";var e=require("../../_rollupPluginBabelHelpers-C-GU1yny.js"),n=require("react");exports.useLongPress=function(r,u){var l=n.useState(!1),o=e._slicedToArray(l,2),t=o[0],c=o[1],i=n.useRef(),s=n.useRef(!1),a=function(e){var n,l;null==u||null===(n=u.onStart)||void 0===n||n.call(u,e),s.current=!0,i.current=setTimeout((function(){r(e),c(!0)}),null!==(l=null==u?void 0:u.threshold)&&void 0!==l?l:400)},v=function(e){var n;if(t)null==u||null===(n=u.onFinish)||void 0===n||n.call(u,e);else if(s.current){var r;null==u||null===(r=u.onCancel)||void 0===r||r.call(u,e)}c(!1),s.current=!1,i.current&&clearTimeout(i.current)};return[{onMouseDown:a,onTouchStart:a,onMouseUp:v,onTouchEnd:v},t]};
3
3
  //# sourceMappingURL=useLongPress.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useLongPress.js","sources":["../../../../src/hooks/useLongPress/useLongPress.ts"],"sourcesContent":["import type { MouseEventHandler, RefObject, TouchEventHandler } from 'react';\n\nimport { useRef, useState } from 'react';\n\n// * The use long press target type */\nexport type UseLongPressTarget = (() => Element) | Element | RefObject<Element | null | undefined>;\n\nexport type LongPressReactEvents<Target extends Element = Element> =\n | MouseEventHandler<Target>\n | TouchEventHandler<Target>;\n\n// * The use long press options type */\nexport interface UseLongPressOptions {\n // * The threshold time in milliseconds\n threshold?: number;\n // * The callback function to be invoked on long press cancel\n onCancel?: (event: LongPressReactEvents) => void;\n // * The callback function to be invoked on long press end\n onFinish?: (event: LongPressReactEvents) => void;\n // * The callback function to be invoked on long press start\n onStart?: (event: LongPressReactEvents) => void;\n}\n\n// * The use long press bind type */\nexport interface UseLongPressBind {\n /** The callback function to be invoked on mouse down */\n onMouseDown: MouseEventHandler<Element>;\n /** The callback function to be invoked on mouse up */\n onMouseUp: MouseEventHandler<Element>;\n /** The callback function to be invoked on touch end */\n onTouchEnd: TouchEventHandler<Element>;\n /** The callback function to be invoked on touch start */\n onTouchStart: TouchEventHandler<Element>;\n}\n\n// * The use long press return type */\nexport type UseLongPressReturn = [UseLongPressBind, boolean];\n\nconst DEFAULT_THRESHOLD_TIME = 400;\n\n/**\n * @name useLongPress\n * @description - Hook that defines the logic when long pressing an element\n * @category Sensors\n *\n * @template Target The target element\n * @param {Target} target The target element to be long pressed\n * @param {(event: Event) => void} callback The callback function to be invoked on long press\n * @param {number} [options.threshold=400] The threshold time in milliseconds\n * @param {(event: Event) => void} [options.onStart] The callback function to be invoked on long press start\n * @param {(event: Event) => void} [options.onFinish] The callback function to be invoked on long press finish\n * @param {(event: Event) => void} [options.onCancel] The callback function to be invoked on long press cancel\n * @returns {UseLongPressReturn<Target>} The ref of the target element\n *\n * @example\n * const [bind, longPressing] = useLongPress(() => console.log('callback'));\n */\nexport const useLongPress = (\n callback: (event: LongPressReactEvents) => void,\n options?: UseLongPressOptions\n): UseLongPressReturn => {\n const [isLongPressActive, setIsLongPressActive] = useState(false);\n const timeoutIdRef = useRef<ReturnType<typeof setTimeout>>();\n const isPressed = useRef(false);\n\n const start = (event: LongPressReactEvents) => {\n options?.onStart?.(event);\n\n isPressed.current = true;\n timeoutIdRef.current = setTimeout(() => {\n callback(event);\n setIsLongPressActive(true);\n }, options?.threshold ?? DEFAULT_THRESHOLD_TIME);\n };\n\n const cancel = (event: LongPressReactEvents) => {\n if (isLongPressActive) {\n options?.onFinish?.(event);\n } else if (isPressed.current) {\n options?.onCancel?.(event);\n }\n\n setIsLongPressActive(false);\n isPressed.current = false;\n\n if (timeoutIdRef.current) clearTimeout(timeoutIdRef.current);\n };\n\n const bind = {\n onMouseDown: start,\n onTouchStart: start,\n onMouseUp: cancel,\n onTouchEnd: cancel\n } as unknown as UseLongPressBind;\n\n return [bind, isLongPressActive];\n};\n"],"names":["callback","options","_useState","useState","_useState2","_slicedToArray","isLongPressActive","setIsLongPressActive","timeoutIdRef","useRef","isPressed","start","event","_options$onStart","_options$threshold","onStart","call","current","setTimeout","threshold","cancel","_options$onFinish","onFinish","_options$onCancel","onCancel","clearTimeout","onMouseDown","onTouchStart","onMouseUp","onTouchEnd"],"mappings":";kHAyD4B,SAC1BA,EACAC,GAEA,IAAAC,EAAkDC,EAAQA,UAAC,GAAMC,EAAAC,EAAAA,eAAAH,EAAA,GAA1DI,EAAiBF,EAAA,GAAEG,EAAoBH,EAAA,GACxCI,EAAeC,EAAAA,SACfC,EAAYD,EAAMA,QAAC,GAEnBE,EAAQ,SAACC,GAAgC,IAAAC,EAAAC,EAC7Cb,SAAgB,QAATY,EAAPZ,EAASc,eAAO,IAAAF,GAAhBA,EAAAG,KAAAf,EAAmBW,GAEnBF,EAAUO,SAAU,EACpBT,EAAaS,QAAUC,YAAW,WAChClB,EAASY,GACTL,GAAqB,EACvB,WAACO,EAAEb,aAAAA,EAAAA,EAASkB,iBAAS,IAAAL,EAAAA,EAlCM,IAmC5B,EAEKM,EAAS,SAACR,GACS,IAAAS,EAAvB,GAAIf,EACFL,SAAiB,QAAVoB,EAAPpB,EAASqB,gBAAQ,IAAAD,GAAjBA,EAAAL,KAAAf,EAAoBW,QACf,GAAIF,EAAUO,QAAS,CAAA,IAAAM,EAC5BtB,SAAiB,QAAVsB,EAAPtB,EAASuB,gBAAQ,IAAAD,GAAjBA,EAAAP,KAAAf,EAAoBW,EACtB,CAEAL,GAAqB,GACrBG,EAAUO,SAAU,EAEhBT,EAAaS,SAASQ,aAAajB,EAAaS,QACrD,EASD,MAAO,CAPM,CACXS,YAAaf,EACbgB,aAAchB,EACdiB,UAAWR,EACXS,WAAYT,GAGAd,EAChB"}
1
+ {"version":3,"file":"useLongPress.js","sources":["../../../../src/hooks/useLongPress/useLongPress.ts"],"sourcesContent":["import type { MouseEventHandler, RefObject, TouchEventHandler } from 'react';\n\nimport { useRef, useState } from 'react';\n\n// * The use long press target type */\nexport type UseLongPressTarget = (() => Element) | Element | RefObject<Element | null | undefined>;\n\nexport type LongPressReactEvents<Target extends Element = Element> =\n | MouseEventHandler<Target>\n | TouchEventHandler<Target>;\n\n// * The use long press options type */\nexport interface UseLongPressOptions {\n // * The threshold time in milliseconds\n threshold?: number;\n // * The callback function to be invoked on long press cancel\n onCancel?: (event: LongPressReactEvents) => void;\n // * The callback function to be invoked on long press end\n onFinish?: (event: LongPressReactEvents) => void;\n // * The callback function to be invoked on long press start\n onStart?: (event: LongPressReactEvents) => void;\n}\n\n// * The use long press bind type */\nexport interface UseLongPressBind {\n /** The callback function to be invoked on mouse down */\n onMouseDown: MouseEventHandler<Element>;\n /** The callback function to be invoked on mouse up */\n onMouseUp: MouseEventHandler<Element>;\n /** The callback function to be invoked on touch end */\n onTouchEnd: TouchEventHandler<Element>;\n /** The callback function to be invoked on touch start */\n onTouchStart: TouchEventHandler<Element>;\n}\n\n// * The use long press return type */\nexport type UseLongPressReturn = [UseLongPressBind, boolean];\n\nconst DEFAULT_THRESHOLD_TIME = 400;\n\n/**\n * @name useLongPress\n * @description - Hook that defines the logic when long pressing an element\n * @category Sensors\n *\n * @template Target The target element\n * @param {Target} target The target element to be long pressed\n * @param {(event: Event) => void} callback The callback function to be invoked on long press\n * @param {number} [options.threshold=400] The threshold time in milliseconds\n * @param {(event: Event) => void} [options.onStart] The callback function to be invoked on long press start\n * @param {(event: Event) => void} [options.onFinish] The callback function to be invoked on long press finish\n * @param {(event: Event) => void} [options.onCancel] The callback function to be invoked on long press cancel\n * @returns {UseLongPressReturn<Target>} The ref of the target element\n *\n * @example\n * const [bind, longPressing] = useLongPress(() => console.log('callback'));\n */\nexport const useLongPress = (\n callback: (event: LongPressReactEvents) => void,\n options?: UseLongPressOptions\n): UseLongPressReturn => {\n const [isLongPressActive, setIsLongPressActive] = useState(false);\n const timeoutIdRef = useRef<ReturnType<typeof setTimeout>>();\n const isPressed = useRef(false);\n\n const start = (event: LongPressReactEvents) => {\n options?.onStart?.(event);\n\n isPressed.current = true;\n timeoutIdRef.current = setTimeout(() => {\n callback(event);\n setIsLongPressActive(true);\n }, options?.threshold ?? DEFAULT_THRESHOLD_TIME);\n };\n\n const cancel = (event: LongPressReactEvents) => {\n if (isLongPressActive) {\n options?.onFinish?.(event);\n } else if (isPressed.current) {\n options?.onCancel?.(event);\n }\n\n setIsLongPressActive(false);\n isPressed.current = false;\n\n if (timeoutIdRef.current) clearTimeout(timeoutIdRef.current);\n };\n\n const bind = {\n onMouseDown: start,\n onTouchStart: start,\n onMouseUp: cancel,\n onTouchEnd: cancel\n } as unknown as UseLongPressBind;\n\n return [bind, isLongPressActive];\n};\n"],"names":["callback","options","_useState","useState","_useState2","_slicedToArray","isLongPressActive","setIsLongPressActive","timeoutIdRef","useRef","isPressed","start","event","_options$onStart","_options$threshold","onStart","call","current","setTimeout","threshold","cancel","_options$onFinish","onFinish","_options$onCancel","onCancel","clearTimeout","onMouseDown","onTouchStart","onMouseUp","onTouchEnd"],"mappings":";kHAyD4B,SAC1BA,EACAC,GAEA,IAAAC,EAAkDC,EAAQA,UAAC,GAAMC,EAAAC,EAAAA,eAAAH,EAAA,GAA1DI,EAAiBF,EAAA,GAAEG,EAAoBH,EAAA,GACxCI,EAAeC,EAAAA,SACfC,EAAYD,EAAMA,QAAC,GAEnBE,EAAQ,SAACC,GAAgC,IAAAC,EAAAC,EAC7Cb,SAAgB,QAATY,EAAPZ,EAASc,eAAO,IAAAF,GAAhBA,EAAAG,KAAAf,EAAmBW,GAEnBF,EAAUO,SAAU,EACpBT,EAAaS,QAAUC,YAAW,WAChClB,EAASY,GACTL,GAAqB,EACtB,WAAAO,EAAEb,aAAAA,EAAAA,EAASkB,iBAAS,IAAAL,EAAAA,EAlCM,IAmC5B,EAEKM,EAAS,SAACR,GACS,IAAAS,EAAvB,GAAIf,EACFL,SAAiB,QAAVoB,EAAPpB,EAASqB,gBAAQ,IAAAD,GAAjBA,EAAAL,KAAAf,EAAoBW,QACf,GAAIF,EAAUO,QAAS,CAAA,IAAAM,EAC5BtB,SAAiB,QAAVsB,EAAPtB,EAASuB,gBAAQ,IAAAD,GAAjBA,EAAAP,KAAAf,EAAoBW,EACtB,CAEAL,GAAqB,GACrBG,EAAUO,SAAU,EAEhBT,EAAaS,SAASQ,aAAajB,EAAaS,QACrD,EASD,MAAO,CAPM,CACXS,YAAaf,EACbgB,aAAchB,EACdiB,UAAWR,EACXS,WAAYT,GAGAd,EAChB"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.97 */
2
- "use strict";var e=require("../../_rollupPluginBabelHelpers-B6-9bMtn.js"),r=require("react");exports.useMap=function(n){var t=r.useState(new Map(n)),u=e._slicedToArray(t,2),a=u[0],i=u[1];return{value:a,size:a.size,set:function(e,r){return i((function(n){return new Map(n).set(e,r)}))},has:function(e){return a.has(e)},remove:function(e){return i((function(r){if(!r.has(e))return r;var n=new Map(r);return n.delete(e),n}))},clear:function(){return i(new Map)},reset:function(){return i(new Map(n))}}};
1
+ /* @license @siberiacancode/reactuse v0.0.99 */
2
+ "use strict";var e=require("../../_rollupPluginBabelHelpers-C-GU1yny.js"),r=require("react");exports.useMap=function(n){var t=r.useState(new Map(n)),u=e._slicedToArray(t,2),a=u[0],i=u[1];return{value:a,size:a.size,set:function(e,r){return i((function(n){return new Map(n).set(e,r)}))},has:function(e){return a.has(e)},remove:function(e){return i((function(r){if(!r.has(e))return r;var n=new Map(r);return n.delete(e),n}))},clear:function(){return i(new Map)},reset:function(){return i(new Map(n))}}};
3
3
  //# sourceMappingURL=useMap.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.97 */
2
- "use strict";var e=require("../../_rollupPluginBabelHelpers-B6-9bMtn.js"),t=require("react"),r=require("../useRefState/useRefState.js"),s=require("../useResizeObserver/useResizeObserver.js");require("../../utils/helpers/getElement.js");exports.useMeasure=function(i){var u=r.useRefState(),o=t.useState({x:0,y:0,width:0,height:0,top:0,left:0,bottom:0,right:0}),a=e._slicedToArray(o,2),l=a[0],h=a[1];return s.useResizeObserver(null!=i?i:u.current,{onChange:function(t){var r=e._slicedToArray(t,1)[0];if(r){var s=r.contentRect,i=s.x,u=s.y,o=s.width,a=s.height,l=s.top,n=s.left,c=s.bottom,f=s.right;h({x:i,y:u,width:o,height:a,top:l,left:n,bottom:c,right:f})}}}),i?l:e._objectSpread2({ref:u},l)};
1
+ /* @license @siberiacancode/reactuse v0.0.99 */
2
+ "use strict";var e=require("../../_rollupPluginBabelHelpers-C-GU1yny.js"),t=require("react"),r=require("../useRefState/useRefState.js"),s=require("../useResizeObserver/useResizeObserver.js");require("../../utils/helpers/getElement.js");exports.useMeasure=function(i){var u=r.useRefState(),o=t.useState({x:0,y:0,width:0,height:0,top:0,left:0,bottom:0,right:0}),a=e._slicedToArray(o,2),l=a[0],h=a[1];return s.useResizeObserver(null!=i?i:u.current,{onChange:function(t){var r=e._slicedToArray(t,1)[0];if(r){var s=r.contentRect,i=s.x,u=s.y,o=s.width,a=s.height,l=s.top,n=s.left,c=s.bottom,f=s.right;h({x:i,y:u,width:o,height:a,top:l,left:n,bottom:c,right:f})}}}),i?l:e._objectSpread2({ref:u},l)};
3
3
  //# sourceMappingURL=useMeasure.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useMeasure.js","sources":["../../../../src/hooks/useMeasure/useMeasure.ts"],"sourcesContent":["import type { RefObject } from 'react';\n\nimport { useState } from 'react';\n\nimport { useRefState } from '../useRefState/useRefState';\nimport { useResizeObserver } from '../useResizeObserver/useResizeObserver';\n\n/** The use measure target element type */\nexport type UseMeasureTarget = (() => Element) | Element | RefObject<Element | null | undefined>;\n\n/** The use measure return type */\nexport type UseMeasureReturn = Pick<\n DOMRectReadOnly,\n 'bottom' | 'height' | 'left' | 'right' | 'top' | 'width' | 'x' | 'y'\n>;\n\nexport interface UseMeasureScreen {\n <Target extends UseMeasureTarget>(target: Target): UseMeasureReturn;\n\n <Target extends UseMeasureTarget>(target?: never): UseMeasureReturn & { ref: RefObject<Target> };\n}\n\n/**\n * @name useMeasure\n * @description - Hook to measure the size and position of an element\n * @category Browser\n *\n * @overload\n * @template Target The element to measure\n * @param {Target} [target] The element to measure\n * @returns {UseMeasureReturn} The element's size and position\n *\n * @example\n * const { x, y, width, height, top, left, bottom, right } = useMeasure(ref);\n *\n * @overload\n * @template Target The element to measure\n * @returns {UseMeasureReturn & { ref: RefObject<Target> }} The element's size and position\n *\n * @example\n * const { ref, x, y, width, height, top, left, bottom, right } = useMeasure();\n */\nexport const useMeasure = (<Target extends UseMeasureTarget>(target?: Target) => {\n const internalRef = useRefState<Element>();\n const [rect, setRect] = useState({\n x: 0,\n y: 0,\n width: 0,\n height: 0,\n top: 0,\n left: 0,\n bottom: 0,\n right: 0\n });\n\n useResizeObserver((target ?? internalRef.current) as Element, {\n onChange: ([entry]) => {\n if (!entry) return;\n\n const { x, y, width, height, top, left, bottom, right } = entry.contentRect;\n setRect({ x, y, width, height, top, left, bottom, right });\n }\n });\n\n if (target) return rect;\n return { ref: internalRef, ...rect };\n}) as UseMeasureScreen;\n"],"names":["target","internalRef","useRefState","_useState","useState","x","y","width","height","top","left","bottom","right","_useState2","_slicedToArray","rect","setRect","useResizeObserver","current","onChange","_ref","entry","_entry$contentRect","contentRect","_objectSpread","ref"],"mappings":";+PA0C2B,SAAkCA,GAC3D,IAAMC,EAAcC,EAAAA,cACpBC,EAAwBC,EAAAA,SAAS,CAC/BC,EAAG,EACHC,EAAG,EACHC,MAAO,EACPC,OAAQ,EACRC,IAAK,EACLC,KAAM,EACNC,OAAQ,EACRC,MAAO,IACPC,EAAAC,EAAAA,eAAAX,EAAA,GATKY,EAAIF,EAAA,GAAEG,EAAOH,EAAA,GAoBpB,OATAI,oBAAmBjB,QAAAA,EAAUC,EAAYiB,QAAqB,CAC5DC,SAAU,SAAFC,GAAe,IAAXC,EAAWP,EAAAA,eAAAM,EAAA,GAAN,GACf,GAAKC,EAAL,CAEA,IAAAC,EAA0DD,EAAME,YAAxDlB,EAACiB,EAADjB,EAAGC,EAACgB,EAADhB,EAAGC,EAAKe,EAALf,MAAOC,EAAMc,EAANd,OAAQC,EAAGa,EAAHb,IAAKC,EAAIY,EAAJZ,KAAMC,EAAMW,EAANX,OAAQC,EAAKU,EAALV,MAChDI,EAAQ,CAAEX,EAAAA,EAAGC,EAAAA,EAAGC,MAAAA,EAAOC,OAAAA,EAAQC,IAAAA,EAAKC,KAAAA,EAAMC,OAAAA,EAAQC,MAAAA,GAHtC,CAId,IAGEZ,EAAee,EACnBS,iBAAA,CAASC,IAAKxB,GAAgBc,EAChC"}
1
+ {"version":3,"file":"useMeasure.js","sources":["../../../../src/hooks/useMeasure/useMeasure.ts"],"sourcesContent":["import type { RefObject } from 'react';\n\nimport { useState } from 'react';\n\nimport { useRefState } from '../useRefState/useRefState';\nimport { useResizeObserver } from '../useResizeObserver/useResizeObserver';\n\n/** The use measure target element type */\nexport type UseMeasureTarget = (() => Element) | Element | RefObject<Element | null | undefined>;\n\n/** The use measure return type */\nexport type UseMeasureReturn = Pick<\n DOMRectReadOnly,\n 'bottom' | 'height' | 'left' | 'right' | 'top' | 'width' | 'x' | 'y'\n>;\n\nexport interface UseMeasureScreen {\n <Target extends UseMeasureTarget>(target: Target): UseMeasureReturn;\n\n <Target extends UseMeasureTarget>(target?: never): UseMeasureReturn & { ref: RefObject<Target> };\n}\n\n/**\n * @name useMeasure\n * @description - Hook to measure the size and position of an element\n * @category Browser\n *\n * @overload\n * @template Target The element to measure\n * @param {Target} [target] The element to measure\n * @returns {UseMeasureReturn} The element's size and position\n *\n * @example\n * const { x, y, width, height, top, left, bottom, right } = useMeasure(ref);\n *\n * @overload\n * @template Target The element to measure\n * @returns {UseMeasureReturn & { ref: RefObject<Target> }} The element's size and position\n *\n * @example\n * const { ref, x, y, width, height, top, left, bottom, right } = useMeasure();\n */\nexport const useMeasure = (<Target extends UseMeasureTarget>(target?: Target) => {\n const internalRef = useRefState<Element>();\n const [rect, setRect] = useState({\n x: 0,\n y: 0,\n width: 0,\n height: 0,\n top: 0,\n left: 0,\n bottom: 0,\n right: 0\n });\n\n useResizeObserver((target ?? internalRef.current) as Element, {\n onChange: ([entry]) => {\n if (!entry) return;\n\n const { x, y, width, height, top, left, bottom, right } = entry.contentRect;\n setRect({ x, y, width, height, top, left, bottom, right });\n }\n });\n\n if (target) return rect;\n return { ref: internalRef, ...rect };\n}) as UseMeasureScreen;\n"],"names":["target","internalRef","useRefState","_useState","useState","x","y","width","height","top","left","bottom","right","_useState2","_slicedToArray","rect","setRect","useResizeObserver","current","onChange","_ref","entry","_entry$contentRect","contentRect","_objectSpread","ref"],"mappings":";+PA0C2B,SAAkCA,GAC3D,IAAMC,EAAcC,EAAAA,cACpBC,EAAwBC,EAAAA,SAAS,CAC/BC,EAAG,EACHC,EAAG,EACHC,MAAO,EACPC,OAAQ,EACRC,IAAK,EACLC,KAAM,EACNC,OAAQ,EACRC,MAAO,IACPC,EAAAC,EAAAA,eAAAX,EAAA,GATKY,EAAIF,EAAA,GAAEG,EAAOH,EAAA,GAoBpB,OATAI,EAAiBA,kBAAEjB,QAAAA,EAAUC,EAAYiB,QAAqB,CAC5DC,SAAU,SAAFC,GAAe,IAAXC,EAAWP,EAAAA,eAAAM,EAAA,GAAN,GACf,GAAKC,EAAL,CAEA,IAAAC,EAA0DD,EAAME,YAAxDlB,EAACiB,EAADjB,EAAGC,EAACgB,EAADhB,EAAGC,EAAKe,EAALf,MAAOC,EAAMc,EAANd,OAAQC,EAAGa,EAAHb,IAAKC,EAAIY,EAAJZ,KAAMC,EAAMW,EAANX,OAAQC,EAAKU,EAALV,MAChDI,EAAQ,CAAEX,EAAAA,EAAGC,EAAAA,EAAGC,MAAAA,EAAOC,OAAAA,EAAQC,IAAAA,EAAKC,KAAAA,EAAMC,OAAAA,EAAQC,MAAAA,GAHtC,CAId,IAGEZ,EAAee,EACnBS,iBAAA,CAASC,IAAKxB,GAAgBc,EAChC"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.97 */
1
+ /* @license @siberiacancode/reactuse v0.0.99 */
2
2
  "use strict";var e=require("react"),n=function(){return!1};exports.useMediaQuery=function(r){var t=e.useCallback((function(e){var n=window.matchMedia(r);return n.addEventListener("change",e),function(){n.removeEventListener("change",e)}}),[r]);return e.useSyncExternalStore(t,(function(){return window.matchMedia(r).matches}),n)};
3
3
  //# sourceMappingURL=useMediaQuery.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.97 */
2
- "use strict";var e=require("../../_rollupPluginBabelHelpers-B6-9bMtn.js"),r=require("react"),a=require("../useInterval/useInterval.js");exports.useMemory=function(){var u=performance&&"memory"in performance,t=r.useState({jsHeapSizeLimit:0,totalJSHeapSize:0,usedJSHeapSize:0}),n=e._slicedToArray(t,2),s=n[0],i=n[1];return a.useInterval((function(){return i(performance.memory)}),1e3,{enabled:u}),{supported:u,value:s}};
1
+ /* @license @siberiacancode/reactuse v0.0.99 */
2
+ "use strict";var e=require("../../_rollupPluginBabelHelpers-C-GU1yny.js"),r=require("react"),a=require("../useInterval/useInterval.js");exports.useMemory=function(){var u=performance&&"memory"in performance,t=r.useState({jsHeapSizeLimit:0,totalJSHeapSize:0,usedJSHeapSize:0}),n=e._slicedToArray(t,2),s=n[0],i=n[1];return a.useInterval((function(){return i(performance.memory)}),1e3,{enabled:u}),{supported:u,value:s}};
3
3
  //# sourceMappingURL=useMemory.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.97 */
1
+ /* @license @siberiacancode/reactuse v0.0.99 */
2
2
  "use strict";var e=require("react");exports.useMount=function(r){return e.useEffect(r,[])};
3
3
  //# sourceMappingURL=useMount.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.97 */
2
- "use strict";var e=require("../../_rollupPluginBabelHelpers-B6-9bMtn.js"),t=require("react"),n=require("../useRefState/useRefState.js"),r=require("../../utils/helpers/getElement.js");exports.useMouse=function(o){var u=t.useState({x:0,y:0,element:void 0,elementX:0,elementY:0,elementPositionX:0,elementPositionY:0}),i=e._slicedToArray(u,2),s=i[0],l=i[1],a=n.useRefState();return t.useEffect((function(){if(o||a.current){var t=function(t){var n=o?r.getElement(o):a.current;if(n){var u={x:t.pageX,y:t.pageY},i=n.getBoundingClientRect(),s=i.left,c=i.top,m=s+window.scrollX,f=c+window.scrollY,d=t.pageX-m,p=t.pageY-f;u.element=n,u.elementX=d,u.elementY=p,u.elementPositionX=m,u.elementPositionY=f,l((function(t){return e._objectSpread2(e._objectSpread2({},t),u)}))}};return document.addEventListener("mousemove",t),function(){document.removeEventListener("mousemove",t)}}}),[a.current,o]),o?s:e._objectSpread2({ref:a},s)};
1
+ /* @license @siberiacancode/reactuse v0.0.99 */
2
+ "use strict";var e=require("../../_rollupPluginBabelHelpers-C-GU1yny.js"),t=require("react"),n=require("../../utils/helpers/getElement.js"),r=require("../useRefState/useRefState.js");exports.useMouse=function(o){var u=t.useState({x:0,y:0,element:void 0,elementX:0,elementY:0,elementPositionX:0,elementPositionY:0}),i=e._slicedToArray(u,2),s=i[0],l=i[1],a=r.useRefState();return t.useEffect((function(){if(o||a.current){var t=function(t){var r=o?n.getElement(o):a.current;if(r){var u={x:t.pageX,y:t.pageY},i=r.getBoundingClientRect(),s=i.left,c=i.top,m=s+window.scrollX,f=c+window.scrollY,d=t.pageX-m,p=t.pageY-f;u.element=r,u.elementX=d,u.elementY=p,u.elementPositionX=m,u.elementPositionY=f,l((function(t){return e._objectSpread2(e._objectSpread2({},t),u)}))}};return document.addEventListener("mousemove",t),function(){document.removeEventListener("mousemove",t)}}}),[a.current,o]),o?s:e._objectSpread2({ref:a},s)};
3
3
  //# sourceMappingURL=useMouse.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.97 */
2
- "use strict";var r=require("../../_rollupPluginBabelHelpers-B6-9bMtn.js"),e=require("react");exports.useMutation=function(l,n){var o=e.useState(!1),t=r._slicedToArray(o,2),u=t[0],i=t[1],a=e.useState(!1),c=r._slicedToArray(a,2),d=c[0],v=c[1],s=e.useState(!1),y=r._slicedToArray(s,2),p=y[0],S=y[1],f=e.useState(null),_=r._slicedToArray(f,2),m=_[0],D=_[1],E=e.useState(null),b=r._slicedToArray(E,2),T=b[0],A=b[1],j=function(e,n){var o;i(!0);var t=null!==(o=null==n?void 0:n.attempt)&&void 0!==o?o:0;return l(e).then((function(r){var e;return null==n||null===(e=n.onSuccess)||void 0===e||e.call(n,r),A(r),S(!0),i(!1),D(null),v(!1),r})).catch((function(l){var o,u="function"==typeof(null==n?void 0:n.retry)?null==n?void 0:n.retry(t,l):null==n?void 0:n.retry,a="function"==typeof(null==n?void 0:n.retryDelay)?null==n?void 0:n.retryDelay(t,l):null==n?void 0:n.retryDelay;return"boolean"==typeof u&&u||u&&u>t?a?void setTimeout((function(){return j(e,r._objectSpread2(r._objectSpread2({},n),{},{attempt:t+1}))}),a):j(e,r._objectSpread2(r._objectSpread2({},n),{},{attempt:t+1})):(null==n||null===(o=n.onError)||void 0===o||o.call(n,l),A(null),S(!1),i(!1),D(l),void v(!0))}))},g=function(){var e=r._asyncToGenerator(r._regeneratorRuntime().mark((function e(l,o){var t,u,i,a,c;return r._regeneratorRuntime().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return c={retry:null!==(t=null==o?void 0:o.retry)&&void 0!==t?t:null==n?void 0:n.retry,retryDelay:null!==(u=null==o?void 0:o.retryDelay)&&void 0!==u?u:null==n?void 0:n.retryDelay,onSuccess:null!==(i=null==o?void 0:o.onSuccess)&&void 0!==i?i:null==n?void 0:n.onSuccess,onError:null!==(a=null==o?void 0:o.onError)&&void 0!==a?a:null==n?void 0:n.onError},r.abrupt("return",j(l,c));case 2:case"end":return r.stop()}}),e)})));return function(r,l){return e.apply(this,arguments)}}();return{data:T,error:m,mutate:function(r,e){var l,o,t,u,i={retry:null!==(l=null==e?void 0:e.retry)&&void 0!==l?l:null==n?void 0:n.retry,retryDelay:null!==(o=null==e?void 0:e.retryDelay)&&void 0!==o?o:null==n?void 0:n.retryDelay,onSuccess:null!==(t=null==e?void 0:e.onSuccess)&&void 0!==t?t:null==n?void 0:n.onSuccess,onError:null!==(u=null==e?void 0:e.onError)&&void 0!==u?u:null==n?void 0:n.onError};j(r,i)},mutateAsync:g,isLoading:u,isError:d,isSuccess:p}};
1
+ /* @license @siberiacancode/reactuse v0.0.99 */
2
+ "use strict";var r=require("../../_rollupPluginBabelHelpers-C-GU1yny.js"),e=require("react");exports.useMutation=function(l,n){var o=e.useState(!1),t=r._slicedToArray(o,2),u=t[0],i=t[1],a=e.useState(!1),c=r._slicedToArray(a,2),d=c[0],v=c[1],s=e.useState(!1),y=r._slicedToArray(s,2),p=y[0],S=y[1],f=e.useState(null),_=r._slicedToArray(f,2),m=_[0],D=_[1],E=e.useState(null),b=r._slicedToArray(E,2),T=b[0],A=b[1],j=function(e,n){var o;i(!0);var t=null!==(o=null==n?void 0:n.attempt)&&void 0!==o?o:0;return l(e).then((function(r){var e;return null==n||null===(e=n.onSuccess)||void 0===e||e.call(n,r),A(r),S(!0),i(!1),D(null),v(!1),r})).catch((function(l){var o,u="function"==typeof(null==n?void 0:n.retry)?null==n?void 0:n.retry(t,l):null==n?void 0:n.retry,a="function"==typeof(null==n?void 0:n.retryDelay)?null==n?void 0:n.retryDelay(t,l):null==n?void 0:n.retryDelay;return"boolean"==typeof u&&u||u&&u>t?a?void setTimeout((function(){return j(e,r._objectSpread2(r._objectSpread2({},n),{},{attempt:t+1}))}),a):j(e,r._objectSpread2(r._objectSpread2({},n),{},{attempt:t+1})):(null==n||null===(o=n.onError)||void 0===o||o.call(n,l),A(null),S(!1),i(!1),D(l),void v(!0))}))},g=function(){var e=r._asyncToGenerator(r._regeneratorRuntime().mark((function e(l,o){var t,u,i,a,c;return r._regeneratorRuntime().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return c={retry:null!==(t=null==o?void 0:o.retry)&&void 0!==t?t:null==n?void 0:n.retry,retryDelay:null!==(u=null==o?void 0:o.retryDelay)&&void 0!==u?u:null==n?void 0:n.retryDelay,onSuccess:null!==(i=null==o?void 0:o.onSuccess)&&void 0!==i?i:null==n?void 0:n.onSuccess,onError:null!==(a=null==o?void 0:o.onError)&&void 0!==a?a:null==n?void 0:n.onError},r.abrupt("return",j(l,c));case 2:case"end":return r.stop()}}),e)})));return function(r,l){return e.apply(this,arguments)}}();return{data:T,error:m,mutate:function(r,e){var l,o,t,u,i={retry:null!==(l=null==e?void 0:e.retry)&&void 0!==l?l:null==n?void 0:n.retry,retryDelay:null!==(o=null==e?void 0:e.retryDelay)&&void 0!==o?o:null==n?void 0:n.retryDelay,onSuccess:null!==(t=null==e?void 0:e.onSuccess)&&void 0!==t?t:null==n?void 0:n.onSuccess,onError:null!==(u=null==e?void 0:e.onError)&&void 0!==u?u:null==n?void 0:n.onError};j(r,i)},mutateAsync:g,isLoading:u,isError:d,isSuccess:p}};
3
3
  //# sourceMappingURL=useMutation.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.97 */
2
- "use strict";var e=require("../../_rollupPluginBabelHelpers-B6-9bMtn.js"),t=require("react"),r=require("../useRefState/useRefState.js"),n=require("../../utils/helpers/isTarget.js"),u=require("../../utils/helpers/getElement.js");exports.useMutationObserver=function(){var s,i=n.isTarget(arguments.length<=0?void 0:arguments[0])?arguments.length<=0?void 0:arguments[0]:void 0,o=i?arguments.length<=1?void 0:arguments[1]:arguments.length<=0?void 0:arguments[0],l=i?arguments.length<=2?void 0:arguments[2]:arguments.length<=1?void 0:arguments[1],v=t.useState(),a=e._slicedToArray(v,2),c=a[0],d=a[1],f=null===(s=null==l?void 0:l.enabled)||void 0===s||s,g=r.useRefState(window.document.documentElement),h=t.useRef(o);h.current=o;var b=t.useRef(l);b.current=l,t.useEffect((function(){if(f||i||g.state){var e=i?u.getElement(i):g.current;if(e){var t=new MutationObserver(h.current);return d(t),t.observe(e,b.current),function(){t.disconnect()}}}}),[i,g.state]);var p=function(){return null==c?void 0:c.disconnect()};return i?{stop:p,observer:c}:{ref:g,stop:p,observer:c}};
1
+ /* @license @siberiacancode/reactuse v0.0.99 */
2
+ "use strict";var e=require("../../_rollupPluginBabelHelpers-C-GU1yny.js"),t=require("react"),r=require("../../utils/helpers/getElement.js"),n=require("../../utils/helpers/isTarget.js"),u=require("../useRefState/useRefState.js");exports.useMutationObserver=function(){var s,i=n.isTarget(arguments.length<=0?void 0:arguments[0])?arguments.length<=0?void 0:arguments[0]:void 0,o=i?arguments.length<=1?void 0:arguments[1]:arguments.length<=0?void 0:arguments[0],l=i?arguments.length<=2?void 0:arguments[2]:arguments.length<=1?void 0:arguments[1],v=t.useState(),a=e._slicedToArray(v,2),c=a[0],d=a[1],f=null===(s=null==l?void 0:l.enabled)||void 0===s||s,g=u.useRefState(window.document.documentElement),h=t.useRef(o);h.current=o;var b=t.useRef(l);b.current=l,t.useEffect((function(){if(f||i||g.state){var e=i?r.getElement(i):g.current;if(e){var t=new MutationObserver(h.current);return d(t),t.observe(e,b.current),function(){t.disconnect()}}}}),[i,g.state]);var p=function(){return null==c?void 0:c.disconnect()};return i?{stop:p,observer:c}:{ref:g,stop:p,observer:c}};
3
3
  //# sourceMappingURL=useMutationObserver.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.97 */
2
- "use strict";var n=require("../../_rollupPluginBabelHelpers-B6-9bMtn.js"),e=require("react"),i=function(){var n,e,i;return(null===(n=navigator)||void 0===n?void 0:n.connection)||(null===(e=navigator)||void 0===e?void 0:e.mozConnection)||(null===(i=navigator)||void 0===i?void 0:i.webkitConnection)};exports.getConnection=i,exports.useNetwork=function(){var o=e.useState((function(){if("undefined"==typeof navigator)return{online:!1,type:void 0,effectiveType:void 0,saveData:!1,downlink:0,downlinkMax:0,rtt:0};var n=navigator.onLine,e=i();return{online:n,downlink:null==e?void 0:e.downlink,downlinkMax:null==e?void 0:e.downlinkMax,effectiveType:null==e?void 0:e.effectiveType,rtt:null==e?void 0:e.rtt,saveData:null==e?void 0:e.saveData,type:null==e?void 0:e.type}})),t=n._slicedToArray(o,2),v=t[0],l=t[1];return e.useEffect((function(){var n=function(){var n=navigator.onLine,e=i();l({online:n,downlink:null==e?void 0:e.downlink,downlinkMax:null==e?void 0:e.downlinkMax,effectiveType:null==e?void 0:e.effectiveType,rtt:null==e?void 0:e.rtt,saveData:null==e?void 0:e.saveData,type:null==e?void 0:e.type})};window.addEventListener("online",n,{passive:!0}),window.addEventListener("offline",n,{passive:!0});var e=i();return e&&e.addEventListener("change",n,{passive:!0}),function(){window.removeEventListener("online",n),window.removeEventListener("offline",n),e&&e.removeEventListener("change",n)}})),v};
1
+ /* @license @siberiacancode/reactuse v0.0.99 */
2
+ "use strict";var n=require("../../_rollupPluginBabelHelpers-C-GU1yny.js"),e=require("react"),i=function(){var n,e,i;return(null===(n=navigator)||void 0===n?void 0:n.connection)||(null===(e=navigator)||void 0===e?void 0:e.mozConnection)||(null===(i=navigator)||void 0===i?void 0:i.webkitConnection)};exports.getConnection=i,exports.useNetwork=function(){var o=e.useState((function(){if("undefined"==typeof navigator)return{online:!1,type:void 0,effectiveType:void 0,saveData:!1,downlink:0,downlinkMax:0,rtt:0};var n=navigator.onLine,e=i();return{online:n,downlink:null==e?void 0:e.downlink,downlinkMax:null==e?void 0:e.downlinkMax,effectiveType:null==e?void 0:e.effectiveType,rtt:null==e?void 0:e.rtt,saveData:null==e?void 0:e.saveData,type:null==e?void 0:e.type}})),t=n._slicedToArray(o,2),v=t[0],l=t[1];return e.useEffect((function(){var n=function(){var n=navigator.onLine,e=i();l({online:n,downlink:null==e?void 0:e.downlink,downlinkMax:null==e?void 0:e.downlinkMax,effectiveType:null==e?void 0:e.effectiveType,rtt:null==e?void 0:e.rtt,saveData:null==e?void 0:e.saveData,type:null==e?void 0:e.type})};window.addEventListener("online",n,{passive:!0}),window.addEventListener("offline",n,{passive:!0});var e=i();return e&&e.addEventListener("change",n,{passive:!0}),function(){window.removeEventListener("online",n),window.removeEventListener("offline",n),e&&e.removeEventListener("change",n)}})),v};
3
3
  //# sourceMappingURL=useNetwork.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.97 */
2
- "use strict";var e=require("../../_rollupPluginBabelHelpers-B6-9bMtn.js"),n=require("react");exports.useOffsetPagination=function(){var a=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},i=a.total,t=void 0===i?Number.POSITIVE_INFINITY:i,r=a.pageSize,u=void 0===r?10:r,g=a.initialPage,o=void 0===g?1:g,c=a.onPageChange,f=void 0===c?function(){}:c,p=a.onPageCountChange,s=void 0===p?function(){}:p,v=a.onPageSizeChange,S=void 0===v?function(){}:v,l=n.useState(o),z=e._slicedToArray(l,2),P=z[0],d=z[1],h=n.useRef(f),C=n.useRef(s),I=n.useRef(S);h.current=f,C.current=s,I.current=S;var x=Math.max(1,Math.ceil(t/u)),E=1===P,N=P===x;return n.useEffect((function(){C.current({page:P,pageSize:u})}),[x]),n.useEffect((function(){I.current({page:P,pageSize:u})}),[u]),{page:P,set:function(e){d(e),f({page:e,pageSize:u})},currentPageSize:u,isFirstPage:E,isLastPage:N,pageCount:x,next:function(){if(N)return f({page:x,pageSize:u});d((function(e){var n=e+1;return f({page:n,pageSize:u}),n}))},prev:function(){if(E)return f({page:1,pageSize:u});d((function(e){var n=e-1;return f({page:n,pageSize:u}),n}))}}};
1
+ /* @license @siberiacancode/reactuse v0.0.99 */
2
+ "use strict";var e=require("../../_rollupPluginBabelHelpers-C-GU1yny.js"),n=require("react");exports.useOffsetPagination=function(){var a=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},i=a.total,t=void 0===i?Number.POSITIVE_INFINITY:i,r=a.pageSize,u=void 0===r?10:r,g=a.initialPage,o=void 0===g?1:g,c=a.onPageChange,f=void 0===c?function(){}:c,p=a.onPageCountChange,s=void 0===p?function(){}:p,v=a.onPageSizeChange,S=void 0===v?function(){}:v,l=n.useState(o),z=e._slicedToArray(l,2),P=z[0],d=z[1],h=n.useRef(f),C=n.useRef(s),I=n.useRef(S);h.current=f,C.current=s,I.current=S;var x=Math.max(1,Math.ceil(t/u)),E=1===P,N=P===x;return n.useEffect((function(){C.current({page:P,pageSize:u})}),[x]),n.useEffect((function(){I.current({page:P,pageSize:u})}),[u]),{page:P,set:function(e){d(e),f({page:e,pageSize:u})},currentPageSize:u,isFirstPage:E,isLastPage:N,pageCount:x,next:function(){if(N)return f({page:x,pageSize:u});d((function(e){var n=e+1;return f({page:n,pageSize:u}),n}))},prev:function(){if(E)return f({page:1,pageSize:u});d((function(e){var n=e-1;return f({page:n,pageSize:u}),n}))}}};
3
3
  //# sourceMappingURL=useOffsetPagination.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.97 */
1
+ /* @license @siberiacancode/reactuse v0.0.99 */
2
2
  "use strict";var n=require("react"),e=function(){return navigator.onLine},t=function(){return!1},r=function(n){return window.addEventListener("online",n),window.addEventListener("offline",n),function(){window.removeEventListener("online",n),window.removeEventListener("offline",n)}};exports.useOnline=function(){return n.useSyncExternalStore(r,e,t)};
3
3
  //# sourceMappingURL=useOnline.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.97 */
2
- "use strict";var e=require("react"),t=function(){if("undefined"==typeof window)return"undetermined";var e=window.navigator.userAgent;return/Macintosh|MacIntel|MacPPC|Mac68K/i.test(e)?"macos":/iPhone|iPad|iPod/i.test(e)?"ios":/Win32|Win64|Windows|WinCE/i.test(e)?"windows":/Android/i.test(e)?"android":/Linux/i.test(e)?"linux":"undetermined"};exports.getOperatingSystem=t,exports.useOperatingSystem=function(){return e.useRef(t()).current};
1
+ /* @license @siberiacancode/reactuse v0.0.99 */
2
+ "use strict";var e=require("../../_rollupPluginBabelHelpers-C-GU1yny.js"),i=require("react"),t=function(){if("undefined"==typeof window)return"undetermined";var e=window.navigator.userAgent;return/Macintosh|MacIntel|MacPPC|Mac68K/i.test(e)?"macos":/iPhone|iPad|iPod/i.test(e)?"ios":/Win32|Win64|Windows|WinCE/i.test(e)?"windows":/Android/i.test(e)?"android":/Linux/i.test(e)?"linux":"undetermined"};exports.getOperatingSystem=t,exports.useOperatingSystem=function(){var n=i.useState(t());return e._slicedToArray(n,1)[0]};
3
3
  //# sourceMappingURL=useOperatingSystem.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useOperatingSystem.js","sources":["../../../../src/hooks/useOperatingSystem/useOperatingSystem.ts"],"sourcesContent":["import { useRef } from 'react';\n\n/** The operating system type */\nexport type OperatingSystem = 'android' | 'ios' | 'linux' | 'macos' | 'undetermined' | 'windows';\n\nexport const getOperatingSystem = (): OperatingSystem => {\n if (typeof window === 'undefined') return 'undetermined';\n\n const { userAgent } = window.navigator;\n\n if (/Macintosh|MacIntel|MacPPC|Mac68K/i.test(userAgent)) return 'macos';\n if (/iPhone|iPad|iPod/i.test(userAgent)) return 'ios';\n if (/Win32|Win64|Windows|WinCE/i.test(userAgent)) return 'windows';\n if (/Android/i.test(userAgent)) return 'android';\n if (/Linux/i.test(userAgent)) return 'linux';\n\n return 'undetermined';\n};\n\n/**\n * @name useOperatingSystem\n * @description - Hook that returns the operating system of the current browser\n * @category Browser\n *\n * @returns {OperatingSystem} The operating system\n *\n * @example\n * const operatingSystem = useOperatingSystem();\n */\nexport const useOperatingSystem = () => {\n const osOperatingSystemRef = useRef<OperatingSystem>(getOperatingSystem());\n return osOperatingSystemRef.current;\n};\n"],"names":["getOperatingSystem","window","userAgent","navigator","test","useRef","current"],"mappings":";oCAKaA,EAAqB,WAChC,GAAsB,oBAAXC,OAAwB,MAAO,eAE1C,IAAQC,EAAcD,OAAOE,UAArBD,UAER,MAAI,oCAAoCE,KAAKF,GAAmB,QAC5D,oBAAoBE,KAAKF,GAAmB,MAC5C,6BAA6BE,KAAKF,GAAmB,UACrD,WAAWE,KAAKF,GAAmB,UACnC,SAASE,KAAKF,GAAmB,QAE9B,cACT,0DAYkC,WAEhC,OAD6BG,SAAwBL,KACzBM,OAC9B"}
1
+ {"version":3,"file":"useOperatingSystem.js","sources":["../../../../src/hooks/useOperatingSystem/useOperatingSystem.ts"],"sourcesContent":["import { useState } from 'react';\n\n/** The operating system type */\nexport type OperatingSystem = 'android' | 'ios' | 'linux' | 'macos' | 'undetermined' | 'windows';\n\nexport const getOperatingSystem = (): OperatingSystem => {\n if (typeof window === 'undefined') return 'undetermined';\n\n const { userAgent } = window.navigator;\n\n if (/Macintosh|MacIntel|MacPPC|Mac68K/i.test(userAgent)) return 'macos';\n if (/iPhone|iPad|iPod/i.test(userAgent)) return 'ios';\n if (/Win32|Win64|Windows|WinCE/i.test(userAgent)) return 'windows';\n if (/Android/i.test(userAgent)) return 'android';\n if (/Linux/i.test(userAgent)) return 'linux';\n\n return 'undetermined';\n};\n\n/**\n * @name useOperatingSystem\n * @description - Hook that returns the operating system of the current browser\n * @category Browser\n *\n * @returns {OperatingSystem} The operating system\n *\n * @example\n * const operatingSystem = useOperatingSystem();\n */\nexport const useOperatingSystem = () => {\n const [osOperatingSystem] = useState<OperatingSystem>(getOperatingSystem());\n return osOperatingSystem;\n};\n"],"names":["getOperatingSystem","window","userAgent","navigator","test","_useState","useState","_slicedToArray"],"mappings":";6FAKaA,EAAqB,WAChC,GAAsB,oBAAXC,OAAwB,MAAO,eAE1C,IAAQC,EAAcD,OAAOE,UAArBD,UAER,MAAI,oCAAoCE,KAAKF,GAAmB,QAC5D,oBAAoBE,KAAKF,GAAmB,MAC5C,6BAA6BE,KAAKF,GAAmB,UACrD,WAAWE,KAAKF,GAAmB,UACnC,SAASE,KAAKF,GAAmB,QAE9B,cACT,0DAYkC,WAChC,IAAAG,EAA4BC,WAA0BN,KACtD,OAD2EO,EAAAA,eAAAF,EAAA,GAAnD,EAE1B"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.97 */
2
- "use strict";var e=require("../../_rollupPluginBabelHelpers-B6-9bMtn.js"),r=require("react"),u=require("../useDidUpdate/useDidUpdate.js");require("../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js");exports.useOptimistic=function(t,i){var s=r.useState(t),n=e._slicedToArray(s,2),c=n[0],a=n[1],o=r.useRef(i);o.current=i;var f=r.useState(!1),l=e._slicedToArray(f,2),p=l[0],d=l[1];u.useDidUpdate((function(){p&&(a(t),d(!1))}),[p]);return[c,function(e,r){return a((function(r){return o.current(r,e)})),r.finally((function(){return d(!0)}))}]};
1
+ /* @license @siberiacancode/reactuse v0.0.99 */
2
+ "use strict";var e=require("../../_rollupPluginBabelHelpers-C-GU1yny.js"),r=require("react"),u=require("../useDidUpdate/useDidUpdate.js");require("../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js");exports.useOptimistic=function(t,i){var s=r.useState(t),n=e._slicedToArray(s,2),c=n[0],a=n[1],o=r.useRef(i);o.current=i;var f=r.useState(!1),l=e._slicedToArray(f,2),p=l[0],d=l[1];u.useDidUpdate((function(){p&&(a(t),d(!1))}),[p]);return[c,function(e,r){return a((function(r){return o.current(r,e)})),r.finally((function(){return d(!0)}))}]};
3
3
  //# sourceMappingURL=useOptimistic.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.97 */
2
- "use strict";var e=require("../../_rollupPluginBabelHelpers-B6-9bMtn.js"),n=require("react");exports.useOrientation=function(){var r=n.useState({angle:0,type:"landscape-primary"}),t=e._slicedToArray(r,2),i=t[0],a=t[1];return n.useEffect((function(){var e=function(){var e=window.screen.orientation,n=e.angle,r=e.type;a({angle:n,type:r})};return window.screen.orientation.addEventListener("change",e),function(){return window.screen.orientation.removeEventListener("change",e)}}),[]),i};
1
+ /* @license @siberiacancode/reactuse v0.0.99 */
2
+ "use strict";var e=require("../../_rollupPluginBabelHelpers-C-GU1yny.js"),n=require("react");exports.useOrientation=function(){var r=n.useState({angle:0,type:"landscape-primary"}),t=e._slicedToArray(r,2),i=t[0],a=t[1];return n.useEffect((function(){var e=function(){var e=window.screen.orientation,n=e.angle,r=e.type;a({angle:n,type:r})};return window.screen.orientation.addEventListener("change",e),function(){return window.screen.orientation.removeEventListener("change",e)}}),[]),i};
3
3
  //# sourceMappingURL=useOrientation.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.97 */
2
- "use strict";var r=require("../../_rollupPluginBabelHelpers-B6-9bMtn.js"),e=require("react");exports.useOtpCredential=function(){for(var n,t,o=arguments.length,u=new Array(o),a=0;a<o;a++)u[a]=arguments[a];var i=u[0]instanceof Function?u[0]:null===(n=u[0])||void 0===n?void 0:n.onSuccess,c=u[0]instanceof Function?null===(t=u[0])||void 0===t?void 0:t.onError:void 0,s="undefined"!=typeof navigator&&"OTPCredential"in window,l=e.useState(!1),p=r._slicedToArray(l,2),d=p[0],f=p[1],v=e.useRef(new AbortController),b=function(){var e=r._asyncToGenerator(r._regeneratorRuntime().mark((function e(){var n;return r._regeneratorRuntime().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:if(s){r.next=2;break}return r.abrupt("return");case 2:return v.current=new AbortController,r.prev=3,r.next=6,navigator.credentials.get({otp:{transport:["sms"]},signal:v.current.signal});case 6:return n=r.sent,null==i||i(n),f(!1),r.abrupt("return",n);case 12:r.prev=12,r.t0=r.catch(3),null==c||c(r.t0);case 15:case"end":return r.stop()}}),e,null,[[3,12]])})));return function(){return e.apply(this,arguments)}}();return{supported:s,abort:function(){v.current.abort(),v.current=new AbortController,v.current.signal.onabort=function(){return f(!0)}},aborted:d,get:b}};
1
+ /* @license @siberiacancode/reactuse v0.0.99 */
2
+ "use strict";var r=require("../../_rollupPluginBabelHelpers-C-GU1yny.js"),e=require("react");exports.useOtpCredential=function(){for(var n,t,o=arguments.length,u=new Array(o),a=0;a<o;a++)u[a]=arguments[a];var i=u[0]instanceof Function?u[0]:null===(n=u[0])||void 0===n?void 0:n.onSuccess,c=u[0]instanceof Function?null===(t=u[0])||void 0===t?void 0:t.onError:void 0,s="undefined"!=typeof navigator&&"OTPCredential"in window,l=e.useState(!1),p=r._slicedToArray(l,2),d=p[0],f=p[1],v=e.useRef(new AbortController),b=function(){var e=r._asyncToGenerator(r._regeneratorRuntime().mark((function e(){var n;return r._regeneratorRuntime().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:if(s){r.next=2;break}return r.abrupt("return");case 2:return v.current=new AbortController,r.prev=3,r.next=6,navigator.credentials.get({otp:{transport:["sms"]},signal:v.current.signal});case 6:return n=r.sent,null==i||i(n),f(!1),r.abrupt("return",n);case 12:r.prev=12,r.t0=r.catch(3),null==c||c(r.t0);case 15:case"end":return r.stop()}}),e,null,[[3,12]])})));return function(){return e.apply(this,arguments)}}();return{supported:s,abort:function(){v.current.abort(),v.current=new AbortController,v.current.signal.onabort=function(){return f(!0)}},aborted:d,get:b}};
3
3
  //# sourceMappingURL=useOtpCredential.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.97 */
2
- "use strict";var e=require("../../_rollupPluginBabelHelpers-B6-9bMtn.js"),t=require("react"),n=require("../useEvent/useEvent.js");exports.usePageLeave=function(r){var u=t.useState(!1),s=e._slicedToArray(u,2),i=s[0],o=s[1],v=n.useEvent((function(){if(i)return o(!1);null==r||r(),o(!0)}));return t.useEffect((function(){return document.addEventListener("mouseleave",v,{passive:!0}),document.addEventListener("mouseenter",v,{passive:!0}),function(){document.removeEventListener("mouseenter",v),document.removeEventListener("mouseleave",v)}}),[]),i};
1
+ /* @license @siberiacancode/reactuse v0.0.99 */
2
+ "use strict";var e=require("../../_rollupPluginBabelHelpers-C-GU1yny.js"),t=require("react"),n=require("../useEvent/useEvent.js");exports.usePageLeave=function(r){var u=t.useState(!1),s=e._slicedToArray(u,2),i=s[0],o=s[1],v=n.useEvent((function(){if(i)return o(!1);null==r||r(),o(!0)}));return t.useEffect((function(){return document.addEventListener("mouseleave",v,{passive:!0}),document.addEventListener("mouseenter",v,{passive:!0}),function(){document.removeEventListener("mouseenter",v),document.removeEventListener("mouseleave",v)}}),[]),i};
3
3
  //# sourceMappingURL=usePageLeave.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.97 */
2
- "use strict";var e=require("../../_rollupPluginBabelHelpers-B6-9bMtn.js"),n=require("react"),r=require("../useEvent/useEvent.js"),t=require("./helpers/Paint.js"),u=require("../../utils/helpers/getElement.js");exports.usePaint=function(){var i,o,l,c,s,a="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,v=a?arguments.length<=1?void 0:arguments[1]:arguments.length<=0?void 0:arguments[0],d=null!==(i=null==v?void 0:v.color)&&void 0!==i?i:"black",f=null!==(o=null==v?void 0:v.opacity)&&void 0!==o?o:1,p=null!==(l=null==v?void 0:v.radius)&&void 0!==l?l:10,h=n.useRef(new t.Paint({x:0,y:0,radius:null!==(c=null==v?void 0:v.radius)&&void 0!==c?c:10,smooth:null!==(s=null==v?void 0:v.smooth)&&void 0!==s&&s})),y=n.useState(!1),g=e._slicedToArray(y,2),E=g[0],m=g[1],x=n.useRef(null),w=n.useRef(null),L=function(e,n,r,t){if(w.current){w.current.globalAlpha=r,w.current.strokeStyle=n,w.current.lineWidth=2*t,w.current.lineCap="round",w.current.lineJoin="round";var u=e[0],i=e[1];w.current.beginPath();for(var o=1;o<e.length;o+=1){var l={x:u.x+(i.x-u.x)/2,y:u.y+(i.y-u.y)/2};w.current.quadraticCurveTo(u.x,u.y,l.x,l.y),u=e[o],i=e[o+1]}w.current.lineTo(u.x,u.y),w.current.stroke()}},b=function(){w.current&&w.current.clearRect(0,0,w.current.canvas.width,w.current.canvas.height)},q=r.useEvent((function(e){var n;if(E){null==v||null===(n=v.onMouseMove)||void 0===n||n.call(v,e,h.current);var r={x:e.offsetX,y:e.offsetY};h.current.update(r)&&w.current&&(b(),w.current.clearRect(0,0,w.current.canvas.width,w.current.canvas.height),h.current.lines.forEach((function(e){var n=e.points,r=e.color,t=e.opacity,u=e.radius;return L(n,r,t,u)})),L(h.current.points,d,f,p))}})),j=r.useEvent((function(e){var n;if(w.current){var r={x:e.offsetX,y:e.offsetY};h.current.brush.update(r),h.current.points.push(r),L(h.current.points,d,f,p),null==v||null===(n=v.onMouseDown)||void 0===n||n.call(v,e,h.current),m(!0)}})),P=r.useEvent((function(e){var n;w.current&&(h.current.points.length&&(h.current.lines.push({points:h.current.points,color:d,opacity:f,radius:p}),h.current.points=[]),null==v||null===(n=v.onMouseUp)||void 0===n||n.call(v,e,h.current),m(!1))})),R=function(){w.current&&(b(),h.current.lines=[],h.current.points=[])},M=function(){w.current&&(b(),h.current.lines.pop(),h.current.lines.forEach((function(e){var n=e.points,r=e.color,t=e.opacity,u=e.radius;return L(n,r,t,u)})))};return n.useEffect((function(){var e=a?u.getElement(a):x.current;if(e)return w.current=e.getContext("2d"),null!=v&&v.initialLines&&(h.current.lines=v.initialLines,v.initialLines.forEach((function(e){var n=e.points,r=e.color,t=e.opacity,u=e.radius;return L(n,r,t,u)}))),e.addEventListener("mousedown",j),e.addEventListener("mousemove",q),e.addEventListener("mouseup",P),function(){e&&(e.removeEventListener("mousedown",j),e.removeEventListener("mousemove",q),e.removeEventListener("mouseup",P))}}),[]),a?{drawing:E,clear:R,undo:M,draw:L,lines:h.current.lines}:{ref:x,drawing:E,clear:R,undo:M,draw:L,lines:h.current.lines}};
1
+ /* @license @siberiacancode/reactuse v0.0.99 */
2
+ "use strict";var e=require("../../_rollupPluginBabelHelpers-C-GU1yny.js"),t=require("react"),n=require("../../utils/helpers/getElement.js"),r=require("../useEvent/useEvent.js"),i=function(){function t(n,r){e._classCallCheck(this,t),this.x=n,this.y=r}return e._createClass(t,[{key:"update",value:function(e){this.x=e.x,this.y=e.y}},{key:"getDifferenceTo",value:function(e){return new t(this.x-e.x,this.y-e.y)}},{key:"getDistanceTo",value:function(e){var t=this.getDifferenceTo(e);return Math.sqrt(Math.pow(t.x,2)+Math.pow(t.y,2))}},{key:"getAngleTo",value:function(e){var t=this.getDifferenceTo(e);return Math.atan2(t.y,t.x)}},{key:"equalsTo",value:function(e){return this.x===e.x&&this.y===e.y}},{key:"moveByAngle",value:function(e,t){var n=e+Math.PI/2;return this.x+=Math.sin(n)*t,this.y-=Math.cos(n)*t,this}}])}(),u=function(){return e._createClass((function t(n){var r=n.x,u=n.y,s=n.radius,o=n.smooth;e._classCallCheck(this,t),e._defineProperty(this,"smooth",!1),e._defineProperty(this,"points",[]),e._defineProperty(this,"lines",[]),this.smooth=o,this.pointer=new i(r,u),this.brush=new i(r,u),this.radius=s,this.points=[],this.lines=[]}),[{key:"getBrushCoordinates",value:function(){return{x:this.brush.x,y:this.brush.y}}},{key:"getPointerCoordinates",value:function(){return{x:this.pointer.x,y:this.pointer.y}}},{key:"update",value:function(e){if(this.pointer.equalsTo(e))return!1;if(this.pointer.update(e),!this.smooth)return this.brush.update(e),this.points.push(this.getBrushCoordinates()),!0;var t=this.pointer.getDistanceTo(this.brush),n=this.pointer.getAngleTo(this.brush);if(Math.round(10*(t-this.radius))/10>0){var r=n+Math.PI/2;return this.brush.update({x:this.brush.x+Math.sin(r)*(t-this.radius),y:this.brush.y-Math.cos(r)*(t-this.radius)}),this.points.push(this.getBrushCoordinates()),!0}return!1}}])}();exports.Paint=u,exports.Pointer=i,exports.usePaint=function(){var i,s,o,a,c,l="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,h=l?arguments.length<=1?void 0:arguments[1]:arguments.length<=0?void 0:arguments[0],v=null!==(i=null==h?void 0:h.color)&&void 0!==i?i:"black",d=null!==(s=null==h?void 0:h.opacity)&&void 0!==s?s:1,f=null!==(o=null==h?void 0:h.radius)&&void 0!==o?o:10,p=t.useRef(new u({x:0,y:0,radius:null!==(a=null==h?void 0:h.radius)&&void 0!==a?a:10,smooth:null!==(c=null==h?void 0:h.smooth)&&void 0!==c&&c})),y=t.useState(!1),g=e._slicedToArray(y,2),x=g[0],m=g[1],E=t.useRef(null),b=t.useRef(null),w=function(e,t,n,r){if(b.current){b.current.globalAlpha=n,b.current.strokeStyle=t,b.current.lineWidth=2*r,b.current.lineCap="round",b.current.lineJoin="round";var i=e[0],u=e[1];b.current.beginPath();for(var s=1;s<e.length;s+=1){var o={x:i.x+(u.x-i.x)/2,y:i.y+(u.y-i.y)/2};b.current.quadraticCurveTo(i.x,i.y,o.x,o.y),i=e[s],u=e[s+1]}b.current.lineTo(i.x,i.y),b.current.stroke()}},M=function(){b.current&&b.current.clearRect(0,0,b.current.canvas.width,b.current.canvas.height)},k=r.useEvent((function(e){var t;if(x){null==h||null===(t=h.onMouseMove)||void 0===t||t.call(h,e,p.current);var n={x:e.offsetX,y:e.offsetY};p.current.update(n)&&b.current&&(M(),b.current.clearRect(0,0,b.current.canvas.width,b.current.canvas.height),p.current.lines.forEach((function(e){var t=e.points,n=e.color,r=e.opacity,i=e.radius;return w(t,n,r,i)})),w(p.current.points,v,d,f))}})),C=r.useEvent((function(e){var t;if(b.current){var n={x:e.offsetX,y:e.offsetY};p.current.brush.update(n),p.current.points.push(n),w(p.current.points,v,d,f),null==h||null===(t=h.onMouseDown)||void 0===t||t.call(h,e,p.current),m(!0)}})),T=r.useEvent((function(e){var t;b.current&&(p.current.points.length&&(p.current.lines.push({points:p.current.points,color:v,opacity:d,radius:f}),p.current.points=[]),null==h||null===(t=h.onMouseUp)||void 0===t||t.call(h,e,p.current),m(!1))})),P=function(){b.current&&(M(),p.current.lines=[],p.current.points=[])},_=function(){b.current&&(M(),p.current.lines.pop(),p.current.lines.forEach((function(e){var t=e.points,n=e.color,r=e.opacity,i=e.radius;return w(t,n,r,i)})))};return t.useEffect((function(){var e=l?n.getElement(l):E.current;if(e)return b.current=e.getContext("2d"),null!=h&&h.initialLines&&(p.current.lines=h.initialLines,h.initialLines.forEach((function(e){var t=e.points,n=e.color,r=e.opacity,i=e.radius;return w(t,n,r,i)}))),e.addEventListener("mousedown",C),e.addEventListener("mousemove",k),e.addEventListener("mouseup",T),function(){e&&(e.removeEventListener("mousedown",C),e.removeEventListener("mousemove",k),e.removeEventListener("mouseup",T))}}),[]),l?{drawing:x,clear:P,undo:_,draw:w,lines:p.current.lines}:{ref:E,drawing:x,clear:P,undo:_,draw:w,lines:p.current.lines}};
3
3
  //# sourceMappingURL=usePaint.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"usePaint.js","sources":["../../../../src/hooks/usePaint/usePaint.ts"],"sourcesContent":["import type { RefObject } from 'react';\n\nimport { useEffect, useRef, useState } from 'react';\n\nimport { getElement } from '@/utils/helpers';\n\nimport type { Point } from './helpers';\n\nimport { useEvent } from '../useEvent/useEvent';\nimport { Paint } from './helpers';\n\nconst DEFAULT_BRUSH_RADIUS = 10;\n\nexport interface UsePaintOptions {\n /** Brush color */\n color?: string;\n /** Initial lines */\n initialLines?: Paint['lines'];\n /** Brush opacity */\n opacity?: number;\n /** Brush radius */\n radius?: number;\n /** Smooth brush movement */\n smooth?: boolean;\n /** Callback when the mouse is down */\n onMouseDown?: (event: MouseEvent, paint: Paint) => void;\n /** Callback when the mouse is moved */\n onMouseMove?: (event: MouseEvent, paint: Paint) => void;\n /** Callback when the mouse is up */\n onMouseUp?: (event: MouseEvent, paint: Paint) => void;\n}\n\nexport interface UsePaintReturn {\n drawing: boolean;\n lines: Paint['lines'];\n clear: () => void;\n draw: (points: Point[], color: string, opacity: number, radius: number) => void;\n undo: () => void;\n}\n\n/** The use paint return type */\nexport type UsePaintTarget =\n | (() => HTMLCanvasElement)\n | HTMLCanvasElement\n | RefObject<HTMLCanvasElement>;\n\nexport interface UsePaint {\n <Target extends UsePaintTarget>(target: Target, options?: UsePaintOptions): UsePaintReturn;\n\n (\n options?: UsePaintOptions,\n target?: never\n ): { ref: RefObject<HTMLCanvasElement> } & UsePaintReturn;\n}\n\n/**\n * @name usePaint\n * @description - Hook that allows you to draw in a specific area\n * @category Browser\n *\n * @overload\n * @template Target The target element\n * @param {Target} target The target element to be painted\n * @param {UsePaintOptions} [options] The options to be used\n * @returns {UsePaintReturn} An object containing the current pencil options and functions to interact with the paint\n *\n * @example\n * const drawing = usePaint(canvasRef);\n *\n * @overload\n * @param {UsePaintOptions} [options] The options to be used\n * @returns {UsePaintReturn & { ref: RefObject<HTMLCanvasElement> }} An object containing the current pencil options and functions to interact with the paint\n *\n * @example\n * const { ref, drawing } = usePaint();\n */\nexport const usePaint = ((...params: any[]) => {\n const target = (\n typeof params[0] === 'object' && !('current' in params[0]) ? undefined : params[0]\n ) as UsePaintTarget | undefined;\n const options = (target ? params[1] : params[0]) as UsePaintOptions | undefined;\n\n const color = options?.color ?? 'black';\n const opacity = options?.opacity ?? 1;\n const radius = options?.radius ?? DEFAULT_BRUSH_RADIUS;\n\n const paintRef = useRef<Paint>(\n new Paint({\n x: 0,\n y: 0,\n radius: options?.radius ?? DEFAULT_BRUSH_RADIUS,\n smooth: options?.smooth ?? false\n })\n );\n const [drawing, setIsDrawing] = useState(false);\n const internalRef = useRef<HTMLCanvasElement>(null);\n const contextRef = useRef<CanvasRenderingContext2D | null>(null);\n\n const draw = (points: Point[], color: string, opacity: number, radius: number) => {\n if (!contextRef.current) return;\n\n contextRef.current.globalAlpha = opacity;\n contextRef.current.strokeStyle = color;\n contextRef.current.lineWidth = radius * 2;\n contextRef.current.lineCap = 'round';\n contextRef.current.lineJoin = 'round';\n\n let p1 = points[0];\n let p2 = points[1];\n\n contextRef.current.beginPath();\n\n for (let i = 1; i < points.length; i += 1) {\n const midPoint = {\n x: p1.x + (p2.x - p1.x) / 2,\n y: p1.y + (p2.y - p1.y) / 2\n };\n contextRef.current.quadraticCurveTo(p1.x, p1.y, midPoint.x, midPoint.y);\n p1 = points[i];\n p2 = points[i + 1];\n }\n contextRef.current.lineTo(p1.x, p1.y);\n contextRef.current.stroke();\n };\n\n const clearCanvas = () => {\n if (!contextRef.current) return;\n contextRef.current.clearRect(\n 0,\n 0,\n contextRef.current.canvas.width,\n contextRef.current.canvas.height\n );\n };\n\n const onMouseMove = useEvent((event: MouseEvent) => {\n if (!drawing) return;\n options?.onMouseMove?.(event, paintRef.current);\n\n const point = { x: event.offsetX, y: event.offsetY };\n\n const isUpdated = paintRef.current.update(point);\n\n if (!isUpdated) return;\n if (!contextRef.current) return;\n clearCanvas();\n contextRef.current.clearRect(\n 0,\n 0,\n contextRef.current.canvas.width,\n contextRef.current.canvas.height\n );\n\n // const brush = paintRef.current.getBrushCoordinates();\n // // Draw brush point\n // contextRef.current.beginPath();\n // contextRef.current.fillStyle = 'red';\n // contextRef.current.arc(brush.x, brush.y, radius, 0, Math.PI * 2, true);\n // contextRef.current.fill();\n\n // // Draw the lazy radius.\n // contextRef.current.beginPath();\n // contextRef.current.strokeStyle = '#ccc';\n // contextRef.current.arc(brush.x, brush.y, radius * 2, 0, Math.PI * 2, true);\n // contextRef.current.stroke();\n\n paintRef.current.lines.forEach(({ points, color, opacity, radius }) =>\n draw(points, color, opacity, radius)\n );\n draw(paintRef.current.points, color, opacity, radius);\n });\n\n const onMouseDown = useEvent((event: MouseEvent) => {\n if (!contextRef.current) return;\n\n const point = { x: event.offsetX, y: event.offsetY };\n paintRef.current.brush.update(point);\n paintRef.current.points.push(point);\n draw(paintRef.current.points, color, opacity, radius);\n\n options?.onMouseDown?.(event, paintRef.current);\n setIsDrawing(true);\n });\n\n const onMouseUp = useEvent((event: MouseEvent) => {\n if (!contextRef.current) return;\n\n if (paintRef.current.points.length) {\n paintRef.current.lines.push({ points: paintRef.current.points, color, opacity, radius });\n paintRef.current.points = [];\n }\n\n options?.onMouseUp?.(event, paintRef.current);\n setIsDrawing(false);\n });\n\n const clear = () => {\n if (!contextRef.current) return;\n clearCanvas();\n paintRef.current.lines = [];\n paintRef.current.points = [];\n };\n\n const undo = () => {\n if (!contextRef.current) return;\n clearCanvas();\n\n paintRef.current.lines.pop();\n paintRef.current.lines.forEach(({ points, color, opacity, radius }) =>\n draw(points, color, opacity, radius)\n );\n };\n\n useEffect(() => {\n const element = (target ? getElement(target) : internalRef.current) as HTMLCanvasElement;\n if (!element) return;\n contextRef.current = element.getContext('2d');\n\n if (options?.initialLines) {\n paintRef.current.lines = options.initialLines;\n options.initialLines.forEach(({ points, color, opacity, radius }) =>\n draw(points, color, opacity, radius)\n );\n }\n\n element.addEventListener('mousedown', onMouseDown);\n element.addEventListener('mousemove', onMouseMove);\n element.addEventListener('mouseup', onMouseUp);\n\n return () => {\n if (!element) return;\n element.removeEventListener('mousedown', onMouseDown);\n element.removeEventListener('mousemove', onMouseMove);\n element.removeEventListener('mouseup', onMouseUp);\n };\n }, []);\n\n if (target) return { drawing, clear, undo, draw, lines: paintRef.current.lines };\n return { ref: internalRef, drawing, clear, undo, draw, lines: paintRef.current.lines };\n}) as UsePaint;\n"],"names":["_options$color","_options$opacity","_options$radius","_options$radius2","_options$smooth","target","_typeof","arguments","length","undefined","options","color","opacity","radius","paintRef","useRef","Paint","x","y","smooth","_useState","useState","_useState2","_slicedToArray","drawing","setIsDrawing","internalRef","contextRef","draw","points","current","globalAlpha","strokeStyle","lineWidth","lineCap","lineJoin","p1","p2","beginPath","i","midPoint","quadraticCurveTo","lineTo","stroke","clearCanvas","clearRect","canvas","width","height","onMouseMove","useEvent","event","_options$onMouseMove","call","point","offsetX","offsetY","update","lines","forEach","_ref","onMouseDown","_options$onMouseDown","brush","push","onMouseUp","_options$onMouseUp","clear","undo","pop","_ref2","useEffect","element","getElement","getContext","initialLines","_ref3","addEventListener","removeEventListener","ref"],"mappings":"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"}
1
+ {"version":3,"file":"usePaint.js","sources":["../../../../src/hooks/usePaint/usePaint.ts"],"sourcesContent":["import type { RefObject } from 'react';\n\nimport { useEffect, useRef, useState } from 'react';\n\nimport { getElement } from '@/utils/helpers';\n\nimport { useEvent } from '../useEvent/useEvent';\n\nconst DEFAULT_BRUSH_RADIUS = 10;\n\nexport interface Point {\n x: number;\n y: number;\n}\n\nexport class Pointer implements Point {\n x: number;\n\n y: number;\n\n constructor(x: number, y: number) {\n this.x = x;\n this.y = y;\n }\n\n update(point: Point) {\n this.x = point.x;\n this.y = point.y;\n }\n\n getDifferenceTo(point: Point) {\n return new Pointer(this.x - point.x, this.y - point.y);\n }\n\n getDistanceTo(point: Point) {\n const diff = this.getDifferenceTo(point);\n return Math.sqrt(diff.x ** 2 + diff.y ** 2);\n }\n\n getAngleTo(point: Point) {\n const diff = this.getDifferenceTo(point);\n return Math.atan2(diff.y, diff.x);\n }\n\n equalsTo(point: Point) {\n return this.x === point.x && this.y === point.y;\n }\n\n moveByAngle(\n // The angle in radians\n angle: number,\n // How much the point should be moved\n distance: number\n ) {\n // Rotate the angle based on the browser coordinate system ([0,0] in the top left)\n const angleRotated = angle + Math.PI / 2;\n\n this.x += Math.sin(angleRotated) * distance;\n this.y -= Math.cos(angleRotated) * distance;\n\n return this;\n }\n}\n\nexport class Paint {\n pointer: Pointer;\n\n brush: Pointer;\n\n radius: number;\n\n smooth: boolean = false;\n\n points: Point[] = [];\n\n lines: { points: Point[]; color: string; radius: number; opacity: number }[] = [];\n\n constructor({ x, y, radius, smooth }: { x: number; y: number; radius: number; smooth: boolean }) {\n this.smooth = smooth;\n this.pointer = new Pointer(x, y);\n this.brush = new Pointer(x, y);\n this.radius = radius;\n this.points = [];\n this.lines = [];\n }\n\n getBrushCoordinates() {\n return {\n x: this.brush.x,\n y: this.brush.y\n };\n }\n\n getPointerCoordinates() {\n return {\n x: this.pointer.x,\n y: this.pointer.y\n };\n }\n\n update(point: Point) {\n if (this.pointer.equalsTo(point)) return false;\n this.pointer.update(point);\n\n if (!this.smooth) {\n this.brush.update(point);\n this.points.push(this.getBrushCoordinates());\n return true;\n }\n\n const distance = this.pointer.getDistanceTo(this.brush);\n const angle = this.pointer.getAngleTo(this.brush);\n const isOutside = Math.round((distance - this.radius) * 10) / 10 > 0;\n\n if (isOutside) {\n const angleRotated = angle + Math.PI / 2;\n this.brush.update({\n x: this.brush.x + Math.sin(angleRotated) * (distance - this.radius),\n y: this.brush.y - Math.cos(angleRotated) * (distance - this.radius)\n });\n this.points.push(this.getBrushCoordinates());\n return true;\n }\n\n return false;\n }\n}\n\nexport interface UsePaintOptions {\n /** Brush color */\n color?: string;\n /** Initial lines */\n initialLines?: Paint['lines'];\n /** Brush opacity */\n opacity?: number;\n /** Brush radius */\n radius?: number;\n /** Smooth brush movement */\n smooth?: boolean;\n /** Callback when the mouse is down */\n onMouseDown?: (event: MouseEvent, paint: Paint) => void;\n /** Callback when the mouse is moved */\n onMouseMove?: (event: MouseEvent, paint: Paint) => void;\n /** Callback when the mouse is up */\n onMouseUp?: (event: MouseEvent, paint: Paint) => void;\n}\n\nexport interface UsePaintReturn {\n drawing: boolean;\n lines: Paint['lines'];\n clear: () => void;\n draw: (points: Point[], color: string, opacity: number, radius: number) => void;\n undo: () => void;\n}\n\n/** The use paint return type */\nexport type UsePaintTarget =\n | (() => HTMLCanvasElement)\n | HTMLCanvasElement\n | RefObject<HTMLCanvasElement>;\n\nexport interface UsePaint {\n <Target extends UsePaintTarget>(target: Target, options?: UsePaintOptions): UsePaintReturn;\n\n (\n options?: UsePaintOptions,\n target?: never\n ): { ref: RefObject<HTMLCanvasElement> } & UsePaintReturn;\n}\n\n/**\n * @name usePaint\n * @description - Hook that allows you to draw in a specific area\n * @category Browser\n *\n * @overload\n * @template Target The target element\n * @param {Target} target The target element to be painted\n * @param {UsePaintOptions} [options] The options to be used\n * @returns {UsePaintReturn} An object containing the current pencil options and functions to interact with the paint\n *\n * @example\n * const drawing = usePaint(canvasRef);\n *\n * @overload\n * @param {UsePaintOptions} [options] The options to be used\n * @returns {UsePaintReturn & { ref: RefObject<HTMLCanvasElement> }} An object containing the current pencil options and functions to interact with the paint\n *\n * @example\n * const { ref, drawing } = usePaint();\n */\nexport const usePaint = ((...params: any[]) => {\n const target = (\n typeof params[0] === 'object' && !('current' in params[0]) ? undefined : params[0]\n ) as UsePaintTarget | undefined;\n const options = (target ? params[1] : params[0]) as UsePaintOptions | undefined;\n\n const color = options?.color ?? 'black';\n const opacity = options?.opacity ?? 1;\n const radius = options?.radius ?? DEFAULT_BRUSH_RADIUS;\n\n const paintRef = useRef<Paint>(\n new Paint({\n x: 0,\n y: 0,\n radius: options?.radius ?? DEFAULT_BRUSH_RADIUS,\n smooth: options?.smooth ?? false\n })\n );\n const [drawing, setIsDrawing] = useState(false);\n const internalRef = useRef<HTMLCanvasElement>(null);\n const contextRef = useRef<CanvasRenderingContext2D | null>(null);\n\n const draw = (points: Point[], color: string, opacity: number, radius: number) => {\n if (!contextRef.current) return;\n\n contextRef.current.globalAlpha = opacity;\n contextRef.current.strokeStyle = color;\n contextRef.current.lineWidth = radius * 2;\n contextRef.current.lineCap = 'round';\n contextRef.current.lineJoin = 'round';\n\n let p1 = points[0];\n let p2 = points[1];\n\n contextRef.current.beginPath();\n\n for (let i = 1; i < points.length; i += 1) {\n const midPoint = {\n x: p1.x + (p2.x - p1.x) / 2,\n y: p1.y + (p2.y - p1.y) / 2\n };\n contextRef.current.quadraticCurveTo(p1.x, p1.y, midPoint.x, midPoint.y);\n p1 = points[i];\n p2 = points[i + 1];\n }\n contextRef.current.lineTo(p1.x, p1.y);\n contextRef.current.stroke();\n };\n\n const clearCanvas = () => {\n if (!contextRef.current) return;\n contextRef.current.clearRect(\n 0,\n 0,\n contextRef.current.canvas.width,\n contextRef.current.canvas.height\n );\n };\n\n const onMouseMove = useEvent((event: MouseEvent) => {\n if (!drawing) return;\n options?.onMouseMove?.(event, paintRef.current);\n\n const point = { x: event.offsetX, y: event.offsetY };\n\n const isUpdated = paintRef.current.update(point);\n\n if (!isUpdated) return;\n if (!contextRef.current) return;\n clearCanvas();\n contextRef.current.clearRect(\n 0,\n 0,\n contextRef.current.canvas.width,\n contextRef.current.canvas.height\n );\n\n // const brush = paintRef.current.getBrushCoordinates();\n // // Draw brush point\n // contextRef.current.beginPath();\n // contextRef.current.fillStyle = 'red';\n // contextRef.current.arc(brush.x, brush.y, radius, 0, Math.PI * 2, true);\n // contextRef.current.fill();\n\n // // Draw the lazy radius.\n // contextRef.current.beginPath();\n // contextRef.current.strokeStyle = '#ccc';\n // contextRef.current.arc(brush.x, brush.y, radius * 2, 0, Math.PI * 2, true);\n // contextRef.current.stroke();\n\n paintRef.current.lines.forEach(({ points, color, opacity, radius }) =>\n draw(points, color, opacity, radius)\n );\n draw(paintRef.current.points, color, opacity, radius);\n });\n\n const onMouseDown = useEvent((event: MouseEvent) => {\n if (!contextRef.current) return;\n\n const point = { x: event.offsetX, y: event.offsetY };\n paintRef.current.brush.update(point);\n paintRef.current.points.push(point);\n draw(paintRef.current.points, color, opacity, radius);\n\n options?.onMouseDown?.(event, paintRef.current);\n setIsDrawing(true);\n });\n\n const onMouseUp = useEvent((event: MouseEvent) => {\n if (!contextRef.current) return;\n\n if (paintRef.current.points.length) {\n paintRef.current.lines.push({ points: paintRef.current.points, color, opacity, radius });\n paintRef.current.points = [];\n }\n\n options?.onMouseUp?.(event, paintRef.current);\n setIsDrawing(false);\n });\n\n const clear = () => {\n if (!contextRef.current) return;\n clearCanvas();\n paintRef.current.lines = [];\n paintRef.current.points = [];\n };\n\n const undo = () => {\n if (!contextRef.current) return;\n clearCanvas();\n\n paintRef.current.lines.pop();\n paintRef.current.lines.forEach(({ points, color, opacity, radius }) =>\n draw(points, color, opacity, radius)\n );\n };\n\n useEffect(() => {\n const element = (target ? getElement(target) : internalRef.current) as HTMLCanvasElement;\n if (!element) return;\n contextRef.current = element.getContext('2d');\n\n if (options?.initialLines) {\n paintRef.current.lines = options.initialLines;\n options.initialLines.forEach(({ points, color, opacity, radius }) =>\n draw(points, color, opacity, radius)\n );\n }\n\n element.addEventListener('mousedown', onMouseDown);\n element.addEventListener('mousemove', onMouseMove);\n element.addEventListener('mouseup', onMouseUp);\n\n return () => {\n if (!element) return;\n element.removeEventListener('mousedown', onMouseDown);\n element.removeEventListener('mousemove', onMouseMove);\n element.removeEventListener('mouseup', onMouseUp);\n };\n }, []);\n\n if (target) return { drawing, clear, undo, draw, lines: paintRef.current.lines };\n return { ref: internalRef, drawing, clear, undo, draw, lines: paintRef.current.lines };\n}) as UsePaint;\n"],"names":["Pointer","x","y","_classCallCheck","this","_createClass","key","value","point","diff","getDifferenceTo","Math","sqrt","pow","atan2","angle","distance","angleRotated","PI","sin","cos","Paint","_ref","radius","smooth","_defineProperty","pointer","brush","points","lines","equalsTo","update","push","getBrushCoordinates","getDistanceTo","getAngleTo","round","_options$color","_options$opacity","_options$radius","_options$radius2","_options$smooth","target","_typeof","arguments","length","undefined","options","color","opacity","paintRef","useRef","_useState","useState","_useState2","_slicedToArray","drawing","setIsDrawing","internalRef","contextRef","draw","current","globalAlpha","strokeStyle","lineWidth","lineCap","lineJoin","p1","p2","beginPath","i","midPoint","quadraticCurveTo","lineTo","stroke","clearCanvas","clearRect","canvas","width","height","onMouseMove","useEvent","event","_options$onMouseMove","call","offsetX","offsetY","forEach","_ref2","onMouseDown","_options$onMouseDown","onMouseUp","_options$onMouseUp","clear","undo","pop","_ref3","useEffect","element","getElement","getContext","initialLines","_ref4","addEventListener","removeEventListener","ref"],"mappings":"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"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.97 */
2
- "use strict";var e=require("../../_rollupPluginBabelHelpers-B6-9bMtn.js"),t=require("react"),a=require("../useDeviceOrientation/useDeviceOrientation.js"),n=require("../useMouse/useMouse.js"),r=require("../useRefState/useRefState.js"),i=require("../useScreenOrientation/useScreenOrientation.js");require("../../utils/helpers/getElement.js");exports.useParallax=function(){var u,l=(arguments.length<=0?void 0:arguments[0])instanceof Function||(arguments.length<=0?void 0:arguments[0])&&"current"in(arguments.length<=0?void 0:arguments[0])||(arguments.length<=0?void 0:arguments[0])instanceof Element?arguments.length<=0?void 0:arguments[0]:void 0,o=r.useRefState(),s=n.useMouse(null!=l?l:o.current),c=i.useScreenOrientation(),v=a.useDeviceOrientation(),d=null!==(u=l?arguments.length<=1?void 0:arguments[1]:arguments.length<=0?void 0:arguments[0])&&void 0!==u?u:{},m=d.deviceOrientationRollAdjust,f=void 0===m?function(e){return e}:m,p=d.deviceOrientationTiltAdjust,g=void 0===p?function(e){return e}:p,h=d.mouseRollAdjust,y=void 0===h?function(e){return e}:h,b=d.mouseTiltAdjust,O=void 0===b?function(e){return e}:b,j=t.useState({roll:0,tilt:0,source:"mouse"}),q=e._slicedToArray(j,2),R=q[0],S=q[1],k=function(){return v.supported&&(v.value.alpha||v.value.gamma)?"deviceOrientation":"mouse"};return t.useEffect((function(){if(s.element){var e=k(),t=function(){if("deviceOrientation"===k()){var e;switch(c.value.orientationType){case"landscape-primary":e=v.value.gamma/90;break;case"landscape-secondary":e=-v.value.gamma/90;break;case"portrait-primary":default:e=-v.value.beta/90;break;case"portrait-secondary":e=v.value.beta/90}return f(e)}if(!s.element)return 0;var t=s.y-s.elementPositionY,a=s.element.getBoundingClientRect().height;return y(-(t-a/2)/a)}(),a=function(){if("deviceOrientation"===k()){var e;switch(c.value.orientationType){case"landscape-primary":e=v.value.beta/90;break;case"landscape-secondary":e=-v.value.beta/90;break;case"portrait-primary":default:e=v.value.gamma/90;break;case"portrait-secondary":e=-v.value.gamma/90}return g(e)}if(!s.element)return 0;var t=s.x-s.elementPositionX,a=s.element.getBoundingClientRect().width;return O((t-a/2)/a)}();S({roll:t,source:e,tilt:a})}}),[c.value.angle,c.value.orientationType,v.value.gamma,v.value.beta,v.value.alpha,v.value.absolute,s.x,s.y,s.element]),l?{value:R}:{ref:o,value:R}};
1
+ /* @license @siberiacancode/reactuse v0.0.99 */
2
+ "use strict";var e=require("../../_rollupPluginBabelHelpers-C-GU1yny.js"),t=require("react"),a=require("../useDeviceOrientation/useDeviceOrientation.js"),n=require("../useMouse/useMouse.js"),r=require("../useRefState/useRefState.js"),i=require("../useScreenOrientation/useScreenOrientation.js");require("../../utils/helpers/getElement.js");exports.useParallax=function(){var u,l=(arguments.length<=0?void 0:arguments[0])instanceof Function||(arguments.length<=0?void 0:arguments[0])&&"current"in(arguments.length<=0?void 0:arguments[0])||(arguments.length<=0?void 0:arguments[0])instanceof Element?arguments.length<=0?void 0:arguments[0]:void 0,o=r.useRefState(),s=n.useMouse(null!=l?l:o.current),c=i.useScreenOrientation(),v=a.useDeviceOrientation(),d=null!==(u=l?arguments.length<=1?void 0:arguments[1]:arguments.length<=0?void 0:arguments[0])&&void 0!==u?u:{},m=d.deviceOrientationRollAdjust,f=void 0===m?function(e){return e}:m,p=d.deviceOrientationTiltAdjust,g=void 0===p?function(e){return e}:p,h=d.mouseRollAdjust,y=void 0===h?function(e){return e}:h,b=d.mouseTiltAdjust,O=void 0===b?function(e){return e}:b,j=t.useState({roll:0,tilt:0,source:"mouse"}),q=e._slicedToArray(j,2),R=q[0],S=q[1],k=function(){return v.supported&&(v.value.alpha||v.value.gamma)?"deviceOrientation":"mouse"};return t.useEffect((function(){if(s.element){var e=k(),t=function(){if("deviceOrientation"===k()){var e;switch(c.value.orientationType){case"landscape-primary":e=v.value.gamma/90;break;case"landscape-secondary":e=-v.value.gamma/90;break;case"portrait-primary":default:e=-v.value.beta/90;break;case"portrait-secondary":e=v.value.beta/90}return f(e)}if(!s.element)return 0;var t=s.y-s.elementPositionY,a=s.element.getBoundingClientRect().height;return y(-(t-a/2)/a)}(),a=function(){if("deviceOrientation"===k()){var e;switch(c.value.orientationType){case"landscape-primary":e=v.value.beta/90;break;case"landscape-secondary":e=-v.value.beta/90;break;case"portrait-primary":default:e=v.value.gamma/90;break;case"portrait-secondary":e=-v.value.gamma/90}return g(e)}if(!s.element)return 0;var t=s.x-s.elementPositionX,a=s.element.getBoundingClientRect().width;return O((t-a/2)/a)}();S({roll:t,source:e,tilt:a})}}),[c.value.angle,c.value.orientationType,v.value.gamma,v.value.beta,v.value.alpha,v.value.absolute,s.x,s.y,s.element]),l?{value:R}:{ref:o,value:R}};
3
3
  //# sourceMappingURL=useParallax.js.map
@@ -0,0 +1,3 @@
1
+ /* @license @siberiacancode/reactuse v0.0.99 */
2
+ "use strict";var e=require("../../_rollupPluginBabelHelpers-C-GU1yny.js"),r=require("react");exports.usePerformanceObserver=function(n,t){var u="undefined"!=typeof window&&"undefined"!=typeof PerformanceObserver,i=r.useState([]),c=e._slicedToArray(i,2),o=c[0],s=c[1],f=r.useRef(null),a=r.useRef();a.current=t;var l=function(){if(u){var e=new PerformanceObserver((function(e,r){var n;s(e.getEntries()),null===(n=a.current)||void 0===n||n.call(a,e,r)}));e.observe(n),f.current=e}},v=function(){var e;u&&(null===(e=f.current)||void 0===e||e.disconnect(),f.current=null)};return r.useEffect((function(){if(u)return n.immediate&&l(),function(){v()}}),[]),{supported:u,entries:o,start:l,stop:v}};
3
+ //# sourceMappingURL=usePerformanceObserver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usePerformanceObserver.js","sources":["../../../../src/hooks/usePerformanceObserver/usePerformanceObserver.ts"],"sourcesContent":["import { useEffect, useRef, useState } from 'react';\n\n/** The use performance observer options type */\nexport type UsePerformanceObserverOptions = PerformanceObserverInit & {\n /** Whether to start the observer immediately */\n immediate?: boolean;\n};\n\n/**\n * @name usePerformanceObserver\n * @description - Hook that allows you to observe performance entries\n * @category Sensor\n *\n * @param {UsePerformanceObserverOptions} options The options for the performance observer\n * @param {PerformanceObserverCallback} callback The function to handle performance entries\n * @returns {object} An object containing the observer's support status and methods to start and stop the observer\n *\n * @example\n * const { supported, entries, start, stop } = usePerformanceObserver();\n */\nexport const usePerformanceObserver = (\n options: UsePerformanceObserverOptions,\n callback?: PerformanceObserverCallback\n) => {\n const supported = typeof window !== 'undefined' && typeof PerformanceObserver !== 'undefined';\n const [entries, setEntries] = useState<PerformanceEntry[]>([]);\n\n const observerRef = useRef<PerformanceObserver | null>(null);\n const internalCallback = useRef<PerformanceObserverCallback | null>();\n internalCallback.current = callback;\n\n const start = () => {\n if (!supported) return;\n const observer = new PerformanceObserver((entryList, observer) => {\n setEntries(entryList.getEntries());\n internalCallback.current?.(entryList, observer);\n });\n observer.observe(options);\n observerRef.current = observer;\n };\n\n const stop = () => {\n if (!supported) return;\n observerRef.current?.disconnect();\n observerRef.current = null;\n };\n\n useEffect(() => {\n if (!supported) return;\n if (options.immediate) start();\n\n return () => {\n stop();\n };\n }, []);\n\n return { supported, entries, start, stop };\n};\n"],"names":["options","callback","supported","window","PerformanceObserver","_useState","useState","_useState2","_slicedToArray","entries","setEntries","observerRef","useRef","internalCallback","current","start","observer","entryList","_internalCallback$cur","getEntries","call","observe","stop","_observerRef$current","disconnect","useEffect","immediate"],"mappings":";4HAoBsC,SACpCA,EACAC,GAEA,IAAMC,EAA8B,oBAAXC,QAAyD,oBAAxBC,oBAC1DC,EAA8BC,EAAQA,SAAqB,IAAGC,EAAAC,EAAAA,eAAAH,EAAA,GAAvDI,EAAOF,EAAA,GAAEG,EAAUH,EAAA,GAEpBI,EAAcC,EAAMA,OAA6B,MACjDC,EAAmBD,EAAAA,SACzBC,EAAiBC,QAAUb,EAE3B,IAAMc,EAAQ,WACZ,GAAKb,EAAL,CACA,IAAMc,EAAW,IAAIZ,qBAAoB,SAACa,EAAWD,GAAa,IAAAE,EAChER,EAAWO,EAAUE,sBACrBD,EAAAL,EAAiBC,eAAO,IAAAI,GAAxBA,EAAAE,KAAAP,EAA2BI,EAAWD,EACxC,IACAA,EAASK,QAAQrB,GACjBW,EAAYG,QAAUE,CANN,CAOjB,EAEKM,EAAO,WAAM,IAAAC,EACZrB,IACc,QAAnBqB,EAAAZ,EAAYG,eAAO,IAAAS,GAAnBA,EAAqBC,aACrBb,EAAYG,QAAU,KACvB,EAWD,OATAW,EAAAA,WAAU,WACR,GAAKvB,EAGL,OAFIF,EAAQ0B,WAAWX,IAEhB,WACLO,GACD,CACF,GAAE,IAEI,CAAEpB,UAAAA,EAAWO,QAAAA,EAASM,MAAAA,EAAOO,KAAAA,EACtC"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.97 */
2
- "use strict";var e=require("../../_rollupPluginBabelHelpers-B6-9bMtn.js"),r=require("react"),t=require("../useEvent/useEvent.js");exports.usePermission=function(n,u){var s,a=r.useState("prompt"),i=e._slicedToArray(a,2),o=i[0],p=i[1],c="undefined"!=typeof navigator&&"permissions"in navigator,v=null===(s=null==u?void 0:u.enabled)||void 0===s||s,l={name:n},d=t.useEvent(e._asyncToGenerator(e._regeneratorRuntime().mark((function r(){var t;return e._regeneratorRuntime().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,navigator.permissions.query(l);case 3:return t=e.sent,p(t.state),e.abrupt("return",t.state);case 8:return e.prev=8,e.t0=e.catch(0),p("prompt"),e.abrupt("return","prompt");case 12:case"end":return e.stop()}}),r,null,[[0,8]])}))));return r.useEffect((function(){if(c&&v)return d(),window.addEventListener("change",d),function(){window.removeEventListener("change",d)}}),[n,v]),{state:o,supported:c,query:d}};
1
+ /* @license @siberiacancode/reactuse v0.0.99 */
2
+ "use strict";var e=require("../../_rollupPluginBabelHelpers-C-GU1yny.js"),r=require("react"),t=require("../useEvent/useEvent.js");exports.usePermission=function(n,u){var s,a=r.useState("prompt"),i=e._slicedToArray(a,2),o=i[0],p=i[1],c="undefined"!=typeof navigator&&"permissions"in navigator,v=null===(s=null==u?void 0:u.enabled)||void 0===s||s,l={name:n},d=t.useEvent(e._asyncToGenerator(e._regeneratorRuntime().mark((function r(){var t;return e._regeneratorRuntime().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,navigator.permissions.query(l);case 3:return t=e.sent,p(t.state),e.abrupt("return",t.state);case 8:return e.prev=8,e.t0=e.catch(0),p("prompt"),e.abrupt("return","prompt");case 12:case"end":return e.stop()}}),r,null,[[0,8]])}))));return r.useEffect((function(){if(c&&v)return d(),window.addEventListener("change",d),function(){window.removeEventListener("change",d)}}),[n,v]),{state:o,supported:c,query:d}};
3
3
  //# sourceMappingURL=usePermission.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.97 */
2
- "use strict";var e=require("../../_rollupPluginBabelHelpers-B6-9bMtn.js"),n=require("react");exports.usePointerLock=function(){var t="undefined"!=typeof document&&"pointerLockElement"in document,r=n.useState(),o=e._slicedToArray(r,2),c=o[0],i=o[1];n.useEffect((function(){if(t){var e=function(){var e;if(t){var n=null!==(e=document.pointerLockElement)&&void 0!==e?e:c;n&&n===c&&i(document.pointerLockElement)}},n=function(){var e;if(t){var n=null!==(e=document.pointerLockElement)&&void 0!==e?e:c;if(n&&n===c){var r=document.pointerLockElement?"release":"acquire";throw new Error("Failed to ".concat(r," pointer lock."))}}};return document.addEventListener("pointerlockchange",e),document.addEventListener("pointerlockerror",n),function(){document.removeEventListener("pointerlockchange",e),document.removeEventListener("pointerlockerror",n)}}}),[]);return{supported:t,element:c,lock:function(e){return!!t&&(!(e instanceof Event)&&(e.currentTarget.requestPointerLock(),i(e.currentTarget),!0))},unlock:function(){return!!t&&(!!c&&(document.exitPointerLock(),i(void 0),!0))}}};
1
+ /* @license @siberiacancode/reactuse v0.0.99 */
2
+ "use strict";var e=require("../../_rollupPluginBabelHelpers-C-GU1yny.js"),n=require("react");exports.usePointerLock=function(){var t="undefined"!=typeof document&&"pointerLockElement"in document,r=n.useState(),o=e._slicedToArray(r,2),c=o[0],i=o[1];n.useEffect((function(){if(t){var e=function(){var e;if(t){var n=null!==(e=document.pointerLockElement)&&void 0!==e?e:c;n&&n===c&&i(document.pointerLockElement)}},n=function(){var e;if(t){var n=null!==(e=document.pointerLockElement)&&void 0!==e?e:c;if(n&&n===c){var r=document.pointerLockElement?"release":"acquire";throw new Error("Failed to ".concat(r," pointer lock."))}}};return document.addEventListener("pointerlockchange",e),document.addEventListener("pointerlockerror",n),function(){document.removeEventListener("pointerlockchange",e),document.removeEventListener("pointerlockerror",n)}}}),[]);return{supported:t,element:c,lock:function(e){return!!t&&(!(e instanceof Event)&&(e.currentTarget.requestPointerLock(),i(e.currentTarget),!0))},unlock:function(){return!!t&&(!!c&&(document.exitPointerLock(),i(void 0),!0))}}};
3
3
  //# sourceMappingURL=usePointerLock.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.97 */
1
+ /* @license @siberiacancode/reactuse v0.0.99 */
2
2
  "use strict";var e=require("react");exports.usePostMessage=function(r,n){var s=e.useRef(n);s.current=n,e.useEffect((function(){var e=function(e){!(!Array.isArray(r)||r.includes(e.origin)&&r.includes("*"))||e.origin!==r&&"*"!==r||s.current(e.data,e)};return window.addEventListener("message",e),function(){return window.removeEventListener("message",e)}}),[]);return function(e){Array.isArray(r)?r.forEach((function(r){return window.postMessage(e,r)})):window.postMessage(e,r)}};
3
3
  //# sourceMappingURL=usePostMessage.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.97 */
1
+ /* @license @siberiacancode/reactuse v0.0.99 */
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.97 */
1
+ /* @license @siberiacancode/reactuse v0.0.99 */
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.97 */
1
+ /* @license @siberiacancode/reactuse v0.0.99 */
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.97 */
1
+ /* @license @siberiacancode/reactuse v0.0.99 */
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.97 */
1
+ /* @license @siberiacancode/reactuse v0.0.99 */
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.97 */
1
+ /* @license @siberiacancode/reactuse v0.0.99 */
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.97 */
2
- "use strict";var e=require("../../_rollupPluginBabelHelpers-B6-9bMtn.js"),r=require("react"),t=require("../useDidUpdate/useDidUpdate.js"),n=require("../useMount/useMount.js"),l=require("../../utils/helpers/getRetry.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?l.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)),E=e._slicedToArray(m,2),C=E[0],L=E[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 t;if(s.current>0){s.current-=1;var n="function"==typeof(null==i?void 0:i.retryDelay)?null==i?void 0:i.retryDelay(s.current,r):null==i?void 0:i.retryDelay;return n?void setTimeout((function(){return J(e)}),n):J(e)}null==i||null===(t=i.onError)||void 0===t||t.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?l.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}}))};n.useMount((function(){c&&J("init")})),t.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:C,isRefetching:q}};
1
+ /* @license @siberiacancode/reactuse v0.0.99 */
2
+ "use strict";var e=require("../../_rollupPluginBabelHelpers-C-GU1yny.js"),r=require("react"),t=require("../../utils/helpers/getRetry.js"),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)),E=e._slicedToArray(m,2),C=E[0],L=E[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:C,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 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":"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"}
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":"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"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.97 */
2
- "use strict";var r=require("../../_rollupPluginBabelHelpers-B6-9bMtn.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.99 */
2
+ "use strict";var r=require("../../_rollupPluginBabelHelpers-C-GU1yny.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.97 */
2
- "use strict";var e=require("../../_rollupPluginBabelHelpers-B6-9bMtn.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.99 */
2
+ "use strict";var e=require("../../_rollupPluginBabelHelpers-C-GU1yny.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