@siberiacancode/reactuse 0.0.60 → 0.0.62

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 (266) hide show
  1. package/dist/cjs/{_rollupPluginBabelHelpers-DaULt_UR.js → _rollupPluginBabelHelpers-CfqOPZw3.js} +2 -2
  2. package/dist/cjs/_rollupPluginBabelHelpers-CfqOPZw3.js.map +1 -0
  3. package/dist/cjs/hooks/index.js +2 -2
  4. package/dist/cjs/hooks/useAsync/useAsync.js +2 -2
  5. package/dist/cjs/hooks/useBattery/useBattery.js +2 -2
  6. package/dist/cjs/hooks/useBattery/useBattery.js.map +1 -1
  7. package/dist/cjs/hooks/useBoolean/useBoolean.js +2 -2
  8. package/dist/cjs/hooks/useBoolean/useBoolean.js.map +1 -1
  9. package/dist/cjs/hooks/useBreakpoints/constants/breakpoints.js +1 -1
  10. package/dist/cjs/hooks/useBreakpoints/useBreakpoints.js +2 -2
  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/useClickOutside/useClickOutside.js.map +1 -1
  14. package/dist/cjs/hooks/useClipboard/useClipboard.js +2 -2
  15. package/dist/cjs/hooks/useClipboard/useClipboard.js.map +1 -1
  16. package/dist/cjs/hooks/useCounter/useCounter.js +2 -2
  17. package/dist/cjs/hooks/useCssVar/useCssVar.js +3 -0
  18. package/dist/cjs/hooks/useCssVar/useCssVar.js.map +1 -0
  19. package/dist/cjs/hooks/useDebounceCallback/useDebounceCallback.js +1 -1
  20. package/dist/cjs/hooks/useDebounceValue/useDebounceValue.js +2 -2
  21. package/dist/cjs/hooks/useDefault/useDefault.js +2 -2
  22. package/dist/cjs/hooks/useDidUpdate/useDidUpdate.js +1 -1
  23. package/dist/cjs/hooks/useDisclosure/useDisclosure.js +2 -2
  24. package/dist/cjs/hooks/useDocumentEvent/useDocumentEvent.js +2 -2
  25. package/dist/cjs/hooks/useDocumentTitle/useDocumentTitle.js +2 -2
  26. package/dist/cjs/hooks/useDocumentTitle/useDocumentTitle.js.map +1 -1
  27. package/dist/cjs/hooks/useDocumentVisibility/useDocumentVisibility.js +1 -1
  28. package/dist/cjs/hooks/useEvent/useEvent.js +1 -1
  29. package/dist/cjs/hooks/useEventListener/useEventListener.js +2 -2
  30. package/dist/cjs/hooks/useEyeDropper/useEyeDropper.js +2 -2
  31. package/dist/cjs/hooks/useEyeDropper/useEyeDropper.js.map +1 -1
  32. package/dist/cjs/hooks/useFavicon/useFavicon.js +2 -2
  33. package/dist/cjs/hooks/useField/useField.js +2 -2
  34. package/dist/cjs/hooks/useFileDialog/useFileDialog.js +2 -2
  35. package/dist/cjs/hooks/useFps/useFps.js +2 -2
  36. package/dist/cjs/hooks/useFullscreen/useFullscreen.js +2 -2
  37. package/dist/cjs/hooks/useFullscreen/useFullscreen.js.map +1 -1
  38. package/dist/cjs/hooks/useGamepad/helpers/mapGamepadToXbox360Controller.js +1 -1
  39. package/dist/cjs/hooks/useGamepad/useGamepad.js +2 -2
  40. package/dist/cjs/hooks/useGeolocation/useGeolocation.js +2 -2
  41. package/dist/cjs/hooks/useHash/useHash.js +2 -2
  42. package/dist/cjs/hooks/useHotkeys/useHotkeys.js +2 -2
  43. package/dist/cjs/hooks/useHotkeys/useHotkeys.js.map +1 -1
  44. package/dist/cjs/hooks/useHover/useHover.js +2 -2
  45. package/dist/cjs/hooks/useIdle/useIdle.js +2 -2
  46. package/dist/cjs/hooks/useImage/useImage.js +2 -2
  47. package/dist/cjs/hooks/useInfiniteScroll/useInfiniteScroll.js +2 -2
  48. package/dist/cjs/hooks/useInfiniteScroll/useInfiniteScroll.js.map +1 -1
  49. package/dist/cjs/hooks/useIntersectionObserver/useIntersectionObserver.js +2 -2
  50. package/dist/cjs/hooks/useInterval/useInterval.js +2 -2
  51. package/dist/cjs/hooks/useIsFirstRender/useIsFirstRender.js +1 -1
  52. package/dist/cjs/hooks/useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js +1 -1
  53. package/dist/cjs/hooks/useKeyPress/useKeyPress.js +2 -2
  54. package/dist/cjs/hooks/useKeyPressEvent/useKeyPressEvent.js +2 -2
  55. package/dist/cjs/hooks/useKeyboard/useKeyboard.js +2 -2
  56. package/dist/cjs/hooks/useKeysPressed/useKeysPressed.js +2 -2
  57. package/dist/cjs/hooks/useList/useList.js +2 -2
  58. package/dist/cjs/hooks/useLocalStorage/useLocalStorage.js +2 -2
  59. package/dist/cjs/hooks/useLogger/useLogger.js +2 -2
  60. package/dist/cjs/hooks/useLongPress/useLongPress.js +2 -2
  61. package/dist/cjs/hooks/useMap/useMap.js +2 -2
  62. package/dist/cjs/hooks/useMeasure/useMeasure.js +2 -2
  63. package/dist/cjs/hooks/useMeasure/useMeasure.js.map +1 -1
  64. package/dist/cjs/hooks/useMediaQuery/useMediaQuery.js +1 -1
  65. package/dist/cjs/hooks/useMemory/useMemory.js +2 -2
  66. package/dist/cjs/hooks/useMount/useMount.js +1 -1
  67. package/dist/cjs/hooks/useMouse/useMouse.js +2 -2
  68. package/dist/cjs/hooks/useMouse/useMouse.js.map +1 -1
  69. package/dist/cjs/hooks/useMutation/useMutation.js +2 -2
  70. package/dist/cjs/hooks/useMutationObserver/useMutationObserver.js +3 -0
  71. package/dist/cjs/hooks/useMutationObserver/useMutationObserver.js.map +1 -0
  72. package/dist/cjs/hooks/useNetwork/useNetwork.js +2 -2
  73. package/dist/cjs/hooks/useNetwork/useNetwork.js.map +1 -1
  74. package/dist/cjs/hooks/useOffsetPagination/useOffsetPagination.js +2 -2
  75. package/dist/cjs/hooks/useOnline/useOnline.js +1 -1
  76. package/dist/cjs/hooks/useOperatingSystem/useOperatingSystem.js +1 -1
  77. package/dist/cjs/hooks/useOrientation/useOrientation.js +2 -2
  78. package/dist/cjs/hooks/usePageLeave/usePageLeave.js +2 -2
  79. package/dist/cjs/hooks/usePaint/helpers/Paint.js +2 -2
  80. package/dist/cjs/hooks/usePaint/helpers/Pointer.js +2 -2
  81. package/dist/cjs/hooks/usePaint/usePaint.js +2 -2
  82. package/dist/cjs/hooks/usePaint/usePaint.js.map +1 -1
  83. package/dist/cjs/hooks/usePermission/usePermission.js +2 -2
  84. package/dist/cjs/hooks/usePreferredColorScheme/usePreferredColorScheme.js +1 -1
  85. package/dist/cjs/hooks/usePreferredContrast/usePreferredContrast.js +1 -1
  86. package/dist/cjs/hooks/usePreferredDark/usePreferredDark.js +1 -1
  87. package/dist/cjs/hooks/usePreferredLanguages/usePreferredLanguages.js +1 -1
  88. package/dist/cjs/hooks/usePreferredReducedMotion/usePreferredReducedMotion.js +1 -1
  89. package/dist/cjs/hooks/usePrevious/usePrevious.js +1 -1
  90. package/dist/cjs/hooks/useQuery/useQuery.js +2 -2
  91. package/dist/cjs/hooks/useQueue/useQueue.js +2 -2
  92. package/dist/cjs/hooks/useRaf/useRaf.js +2 -2
  93. package/dist/cjs/hooks/useRafValue/useRafValue.js +2 -2
  94. package/dist/cjs/hooks/useRenderCount/useRenderCount.js +1 -1
  95. package/dist/cjs/hooks/useRenderInfo/useRenderInfo.js +1 -1
  96. package/dist/cjs/hooks/useRerender/useRerender.js +2 -2
  97. package/dist/cjs/hooks/useResizeObserver/useResizeObserver.js +2 -2
  98. package/dist/cjs/hooks/useResizeObserver/useResizeObserver.js.map +1 -1
  99. package/dist/cjs/hooks/useScript/useScript.js +2 -2
  100. package/dist/cjs/hooks/useSessionStorage/useSessionStorage.js +2 -2
  101. package/dist/cjs/hooks/useSet/useSet.js +2 -2
  102. package/dist/cjs/hooks/useShare/useShare.js +2 -2
  103. package/dist/cjs/hooks/useStep/useStep.js +2 -2
  104. package/dist/cjs/hooks/useStopwatch/useStopwatch.js +2 -2
  105. package/dist/cjs/hooks/useStorage/useStorage.js +2 -2
  106. package/dist/cjs/hooks/useTextSelection/useTextSelection.js +2 -2
  107. package/dist/cjs/hooks/useTime/useTime.js +2 -2
  108. package/dist/cjs/hooks/useTimeout/useTimeout.js +2 -2
  109. package/dist/cjs/hooks/useToggle/useToggle.js +2 -2
  110. package/dist/cjs/hooks/useUnmount/useUnmount.js +1 -1
  111. package/dist/cjs/hooks/useWebSocket/useWebSocket.js +2 -2
  112. package/dist/cjs/hooks/useWindowEvent/useWindowEvent.js +2 -2
  113. package/dist/cjs/hooks/useWindowScroll/useWindowScroll.js +2 -2
  114. package/dist/cjs/hooks/useWindowSize/useWindowSize.js +2 -2
  115. package/dist/cjs/hooks/useWizard/useWizard.js +2 -2
  116. package/dist/cjs/{index-BNXI2awt.js → index-DcGHqxfo.js} +2 -2
  117. package/dist/cjs/{index-BNXI2awt.js.map → index-DcGHqxfo.js.map} +1 -1
  118. package/dist/cjs/index.js +2 -2
  119. package/dist/cjs/utils/helpers/debounce.js +1 -1
  120. package/dist/cjs/utils/helpers/getElement.js +1 -1
  121. package/dist/cjs/utils/helpers/getRetry.js +1 -1
  122. package/dist/cjs/utils/helpers/index.js +2 -2
  123. package/dist/cjs/utils/helpers/isClient.js +1 -1
  124. package/dist/cjs/utils/helpers/throttle.js +1 -1
  125. package/dist/cjs/utils/helpers/time/getDate.js +1 -1
  126. package/dist/esm/{_rollupPluginBabelHelpers-BdfjLHhW.js → _rollupPluginBabelHelpers-BWkML700.js} +2 -2
  127. package/dist/esm/_rollupPluginBabelHelpers-BWkML700.js.map +1 -0
  128. package/dist/esm/hooks/index.js +2 -2
  129. package/dist/esm/hooks/useAsync/useAsync.js +2 -2
  130. package/dist/esm/hooks/useBattery/useBattery.js +2 -2
  131. package/dist/esm/hooks/useBattery/useBattery.js.map +1 -1
  132. package/dist/esm/hooks/useBoolean/useBoolean.js +2 -2
  133. package/dist/esm/hooks/useBoolean/useBoolean.js.map +1 -1
  134. package/dist/esm/hooks/useBreakpoints/constants/breakpoints.js +1 -1
  135. package/dist/esm/hooks/useBreakpoints/useBreakpoints.js +2 -2
  136. package/dist/esm/hooks/useBrowserLanguage/useBrowserLanguage.js +1 -1
  137. package/dist/esm/hooks/useClickOutside/useClickOutside.js +2 -2
  138. package/dist/esm/hooks/useClickOutside/useClickOutside.js.map +1 -1
  139. package/dist/esm/hooks/useClipboard/useClipboard.js +2 -2
  140. package/dist/esm/hooks/useClipboard/useClipboard.js.map +1 -1
  141. package/dist/esm/hooks/useCounter/useCounter.js +2 -2
  142. package/dist/esm/hooks/useCssVar/useCssVar.js +3 -0
  143. package/dist/esm/hooks/useCssVar/useCssVar.js.map +1 -0
  144. package/dist/esm/hooks/useDebounceCallback/useDebounceCallback.js +1 -1
  145. package/dist/esm/hooks/useDebounceValue/useDebounceValue.js +2 -2
  146. package/dist/esm/hooks/useDefault/useDefault.js +2 -2
  147. package/dist/esm/hooks/useDidUpdate/useDidUpdate.js +1 -1
  148. package/dist/esm/hooks/useDisclosure/useDisclosure.js +2 -2
  149. package/dist/esm/hooks/useDocumentEvent/useDocumentEvent.js +2 -2
  150. package/dist/esm/hooks/useDocumentTitle/useDocumentTitle.js +2 -2
  151. package/dist/esm/hooks/useDocumentTitle/useDocumentTitle.js.map +1 -1
  152. package/dist/esm/hooks/useDocumentVisibility/useDocumentVisibility.js +1 -1
  153. package/dist/esm/hooks/useEvent/useEvent.js +1 -1
  154. package/dist/esm/hooks/useEventListener/useEventListener.js +2 -2
  155. package/dist/esm/hooks/useEyeDropper/useEyeDropper.js +2 -2
  156. package/dist/esm/hooks/useEyeDropper/useEyeDropper.js.map +1 -1
  157. package/dist/esm/hooks/useFavicon/useFavicon.js +2 -2
  158. package/dist/esm/hooks/useField/useField.js +2 -2
  159. package/dist/esm/hooks/useFileDialog/useFileDialog.js +2 -2
  160. package/dist/esm/hooks/useFps/useFps.js +2 -2
  161. package/dist/esm/hooks/useFullscreen/useFullscreen.js +2 -2
  162. package/dist/esm/hooks/useFullscreen/useFullscreen.js.map +1 -1
  163. package/dist/esm/hooks/useGamepad/helpers/mapGamepadToXbox360Controller.js +1 -1
  164. package/dist/esm/hooks/useGamepad/useGamepad.js +2 -2
  165. package/dist/esm/hooks/useGeolocation/useGeolocation.js +2 -2
  166. package/dist/esm/hooks/useHash/useHash.js +2 -2
  167. package/dist/esm/hooks/useHotkeys/useHotkeys.js +2 -2
  168. package/dist/esm/hooks/useHotkeys/useHotkeys.js.map +1 -1
  169. package/dist/esm/hooks/useHover/useHover.js +2 -2
  170. package/dist/esm/hooks/useIdle/useIdle.js +2 -2
  171. package/dist/esm/hooks/useImage/useImage.js +2 -2
  172. package/dist/esm/hooks/useInfiniteScroll/useInfiniteScroll.js +2 -2
  173. package/dist/esm/hooks/useInfiniteScroll/useInfiniteScroll.js.map +1 -1
  174. package/dist/esm/hooks/useIntersectionObserver/useIntersectionObserver.js +2 -2
  175. package/dist/esm/hooks/useInterval/useInterval.js +2 -2
  176. package/dist/esm/hooks/useIsFirstRender/useIsFirstRender.js +1 -1
  177. package/dist/esm/hooks/useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js +1 -1
  178. package/dist/esm/hooks/useKeyPress/useKeyPress.js +2 -2
  179. package/dist/esm/hooks/useKeyPressEvent/useKeyPressEvent.js +2 -2
  180. package/dist/esm/hooks/useKeyboard/useKeyboard.js +2 -2
  181. package/dist/esm/hooks/useKeysPressed/useKeysPressed.js +2 -2
  182. package/dist/esm/hooks/useList/useList.js +2 -2
  183. package/dist/esm/hooks/useLocalStorage/useLocalStorage.js +2 -2
  184. package/dist/esm/hooks/useLogger/useLogger.js +2 -2
  185. package/dist/esm/hooks/useLongPress/useLongPress.js +2 -2
  186. package/dist/esm/hooks/useMap/useMap.js +2 -2
  187. package/dist/esm/hooks/useMeasure/useMeasure.js +2 -2
  188. package/dist/esm/hooks/useMeasure/useMeasure.js.map +1 -1
  189. package/dist/esm/hooks/useMediaQuery/useMediaQuery.js +1 -1
  190. package/dist/esm/hooks/useMemory/useMemory.js +2 -2
  191. package/dist/esm/hooks/useMount/useMount.js +1 -1
  192. package/dist/esm/hooks/useMouse/useMouse.js +2 -2
  193. package/dist/esm/hooks/useMouse/useMouse.js.map +1 -1
  194. package/dist/esm/hooks/useMutation/useMutation.js +2 -2
  195. package/dist/esm/hooks/useMutationObserver/useMutationObserver.js +3 -0
  196. package/dist/esm/hooks/useMutationObserver/useMutationObserver.js.map +1 -0
  197. package/dist/esm/hooks/useNetwork/useNetwork.js +2 -2
  198. package/dist/esm/hooks/useNetwork/useNetwork.js.map +1 -1
  199. package/dist/esm/hooks/useOffsetPagination/useOffsetPagination.js +2 -2
  200. package/dist/esm/hooks/useOnline/useOnline.js +1 -1
  201. package/dist/esm/hooks/useOperatingSystem/useOperatingSystem.js +1 -1
  202. package/dist/esm/hooks/useOrientation/useOrientation.js +2 -2
  203. package/dist/esm/hooks/usePageLeave/usePageLeave.js +2 -2
  204. package/dist/esm/hooks/usePaint/helpers/Paint.js +2 -2
  205. package/dist/esm/hooks/usePaint/helpers/Pointer.js +2 -2
  206. package/dist/esm/hooks/usePaint/usePaint.js +2 -2
  207. package/dist/esm/hooks/usePaint/usePaint.js.map +1 -1
  208. package/dist/esm/hooks/usePermission/usePermission.js +2 -2
  209. package/dist/esm/hooks/usePreferredColorScheme/usePreferredColorScheme.js +1 -1
  210. package/dist/esm/hooks/usePreferredContrast/usePreferredContrast.js +1 -1
  211. package/dist/esm/hooks/usePreferredDark/usePreferredDark.js +1 -1
  212. package/dist/esm/hooks/usePreferredLanguages/usePreferredLanguages.js +1 -1
  213. package/dist/esm/hooks/usePreferredReducedMotion/usePreferredReducedMotion.js +1 -1
  214. package/dist/esm/hooks/usePrevious/usePrevious.js +1 -1
  215. package/dist/esm/hooks/useQuery/useQuery.js +2 -2
  216. package/dist/esm/hooks/useQueue/useQueue.js +2 -2
  217. package/dist/esm/hooks/useRaf/useRaf.js +2 -2
  218. package/dist/esm/hooks/useRafValue/useRafValue.js +2 -2
  219. package/dist/esm/hooks/useRenderCount/useRenderCount.js +1 -1
  220. package/dist/esm/hooks/useRenderInfo/useRenderInfo.js +1 -1
  221. package/dist/esm/hooks/useRerender/useRerender.js +2 -2
  222. package/dist/esm/hooks/useResizeObserver/useResizeObserver.js +2 -2
  223. package/dist/esm/hooks/useResizeObserver/useResizeObserver.js.map +1 -1
  224. package/dist/esm/hooks/useScript/useScript.js +2 -2
  225. package/dist/esm/hooks/useSessionStorage/useSessionStorage.js +2 -2
  226. package/dist/esm/hooks/useSet/useSet.js +2 -2
  227. package/dist/esm/hooks/useShare/useShare.js +2 -2
  228. package/dist/esm/hooks/useStep/useStep.js +2 -2
  229. package/dist/esm/hooks/useStopwatch/useStopwatch.js +2 -2
  230. package/dist/esm/hooks/useStorage/useStorage.js +2 -2
  231. package/dist/esm/hooks/useTextSelection/useTextSelection.js +2 -2
  232. package/dist/esm/hooks/useTime/useTime.js +2 -2
  233. package/dist/esm/hooks/useTimeout/useTimeout.js +2 -2
  234. package/dist/esm/hooks/useToggle/useToggle.js +2 -2
  235. package/dist/esm/hooks/useUnmount/useUnmount.js +1 -1
  236. package/dist/esm/hooks/useWebSocket/useWebSocket.js +2 -2
  237. package/dist/esm/hooks/useWindowEvent/useWindowEvent.js +2 -2
  238. package/dist/esm/hooks/useWindowScroll/useWindowScroll.js +2 -2
  239. package/dist/esm/hooks/useWindowSize/useWindowSize.js +2 -2
  240. package/dist/esm/hooks/useWizard/useWizard.js +2 -2
  241. package/dist/esm/{index-Iv79yzFW.js → index-BMDqbrm3.js} +2 -2
  242. package/dist/esm/{index-Iv79yzFW.js.map → index-BMDqbrm3.js.map} +1 -1
  243. package/dist/esm/index.js +2 -2
  244. package/dist/esm/utils/helpers/debounce.js +1 -1
  245. package/dist/esm/utils/helpers/getElement.js +1 -1
  246. package/dist/esm/utils/helpers/getRetry.js +1 -1
  247. package/dist/esm/utils/helpers/index.js +2 -2
  248. package/dist/esm/utils/helpers/isClient.js +1 -1
  249. package/dist/esm/utils/helpers/throttle.js +1 -1
  250. package/dist/esm/utils/helpers/time/getDate.js +1 -1
  251. package/dist/index.d.ts +308 -36
  252. package/package.json +1 -1
  253. package/dist/cjs/_rollupPluginBabelHelpers-DaULt_UR.js.map +0 -1
  254. package/dist/cjs/hooks/useMutationObserver.js +0 -3
  255. package/dist/cjs/hooks/useMutationObserver.js.map +0 -1
  256. package/dist/cjs/utils/helpers/isPermissionAllowed.js +0 -3
  257. package/dist/cjs/utils/helpers/isPermissionAllowed.js.map +0 -1
  258. package/dist/cjs/utils/types/index.js +0 -3
  259. package/dist/cjs/utils/types/index.js.map +0 -1
  260. package/dist/esm/_rollupPluginBabelHelpers-BdfjLHhW.js.map +0 -1
  261. package/dist/esm/hooks/useMutationObserver.js +0 -3
  262. package/dist/esm/hooks/useMutationObserver.js.map +0 -1
  263. package/dist/esm/utils/helpers/isPermissionAllowed.js +0 -3
  264. package/dist/esm/utils/helpers/isPermissionAllowed.js.map +0 -1
  265. package/dist/esm/utils/types/index.js +0 -2
  266. package/dist/esm/utils/types/index.js.map +0 -1
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.60 */
2
- import{_ as n}from"../../_rollupPluginBabelHelpers-BdfjLHhW.js";import{useState as e,useEffect as i}from"react";import{isClient as o}from"../../utils/helpers/isClient.js";var t=function(){var n,e,i;return(null===(n=navigator)||void 0===n?void 0:n.connection)||(null===(e=navigator)||void 0===e?void 0:e.mozConnection)||(null===(i=navigator)||void 0===i?void 0:i.webkitConnection)},l=function(){var l=e((function(){if(!o)return{online:!1,type:void 0,effectiveType:void 0,saveData:!1,downlink:0,downlinkMax:0,rtt:0};var n=navigator.onLine,e=t();return{online:n,downlink:null==e?void 0:e.downlink,downlinkMax:null==e?void 0:e.downlinkMax,effectiveType:null==e?void 0:e.effectiveType,rtt:null==e?void 0:e.rtt,saveData:null==e?void 0:e.saveData,type:null==e?void 0:e.type}})),v=n(l,2),a=v[0],r=v[1];return i((function(){var n=function(){var n=navigator.onLine,e=t();r({online:n,downlink:null==e?void 0:e.downlink,downlinkMax:null==e?void 0:e.downlinkMax,effectiveType:null==e?void 0:e.effectiveType,rtt:null==e?void 0:e.rtt,saveData:null==e?void 0:e.saveData,type:null==e?void 0:e.type})};window.addEventListener("online",n,{passive:!0}),window.addEventListener("offline",n,{passive:!0});var e=t();return e&&e.addEventListener("change",n,{passive:!0}),function(){window.removeEventListener("online",n),window.removeEventListener("offline",n),e&&e.removeEventListener("change",n)}})),a};export{t as getConnection,l as useNetwork};
1
+ /* @license @siberiacancode/reactuse v0.0.62 */
2
+ import{_ as n}from"../../_rollupPluginBabelHelpers-BWkML700.js";import{useState as e,useEffect as i}from"react";import{isClient as o}from"../../utils/helpers/isClient.js";var t=function(){var n,e,i;return(null===(n=navigator)||void 0===n?void 0:n.connection)||(null===(e=navigator)||void 0===e?void 0:e.mozConnection)||(null===(i=navigator)||void 0===i?void 0:i.webkitConnection)},l=function(){var l=e((function(){if(!o)return{online:!1,type:void 0,effectiveType:void 0,saveData:!1,downlink:0,downlinkMax:0,rtt:0};var n=navigator.onLine,e=t();return{online:n,downlink:null==e?void 0:e.downlink,downlinkMax:null==e?void 0:e.downlinkMax,effectiveType:null==e?void 0:e.effectiveType,rtt:null==e?void 0:e.rtt,saveData:null==e?void 0:e.saveData,type:null==e?void 0:e.type}})),v=n(l,2),a=v[0],r=v[1];return i((function(){var n=function(){var n=navigator.onLine,e=t();r({online:n,downlink:null==e?void 0:e.downlink,downlinkMax:null==e?void 0:e.downlinkMax,effectiveType:null==e?void 0:e.effectiveType,rtt:null==e?void 0:e.rtt,saveData:null==e?void 0:e.saveData,type:null==e?void 0:e.type})};window.addEventListener("online",n,{passive:!0}),window.addEventListener("offline",n,{passive:!0});var e=t();return e&&e.addEventListener("change",n,{passive:!0}),function(){window.removeEventListener("online",n),window.removeEventListener("offline",n),e&&e.removeEventListener("change",n)}})),a};export{t as getConnection,l as useNetwork};
3
3
  //# sourceMappingURL=useNetwork.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useNetwork.js","sources":["../../../../src/hooks/useNetwork/useNetwork.ts"],"sourcesContent":["import { useEffect, useState } from 'react';\n\nimport { isClient } from '@/utils/helpers';\nimport type { Connection } from '@/utils/types';\n\ndeclare global {\n interface Navigator {\n readonly connection: Connection;\n readonly mozConnection: Connection;\n readonly webkitConnection: Connection;\n }\n}\n\n/** The type of network connection */\nexport type ConnectionType = Connection['type'];\n/** The effective type of connection */\nexport type ConnectionEffectiveType = Connection['effectiveType'];\n\n/** The use network return type */\nexport interface UseNetworkReturn {\n /** Indicates if the device is currently online */\n online: boolean;\n /** The estimated downlink speed in megabits per seconds */\n downlink?: Connection['downlink'];\n /** The maximum downlink speed, if available */\n downlinkMax?: Connection['downlinkMax'];\n /** The effective type of connection (e.g., '2g', '3g', '4g') */\n effectiveType?: Connection['effectiveType'];\n /** The estimated round-trip time in milliseconds */\n rtt?: Connection['rtt'];\n /** Indicates if the user has enabled data saving mode */\n saveData?: Connection['saveData'];\n /** The type of network connection (e.g., 'wifi', 'cellular') */\n type?: Connection['type'];\n}\n\nexport const getConnection = () =>\n navigator?.connection || navigator?.mozConnection || navigator?.webkitConnection;\n\n/**\n * @name useNetwork\n * @description - Hook to track network status\n * @category Sensors\n *\n * @returns {UseNetworkReturn} An object containing the network status\n *\n * @example\n * const { online, downlink, downlinkMax, effectiveType, rtt, saveData, type } = useNetwork();\n */\nexport const useNetwork = (): UseNetworkReturn => {\n const [value, setValue] = useState(() => {\n if (!isClient) {\n return {\n online: false,\n type: undefined,\n effectiveType: undefined,\n saveData: false,\n downlink: 0,\n downlinkMax: 0,\n rtt: 0\n };\n }\n const online = navigator.onLine;\n const connection = getConnection();\n\n return {\n online,\n downlink: connection?.downlink,\n downlinkMax: connection?.downlinkMax,\n effectiveType: connection?.effectiveType,\n rtt: connection?.rtt,\n saveData: connection?.saveData,\n type: connection?.type\n };\n });\n\n useEffect(() => {\n const callback = () => {\n const online = navigator.onLine;\n const connection = getConnection();\n\n setValue({\n online,\n downlink: connection?.downlink,\n downlinkMax: connection?.downlinkMax,\n effectiveType: connection?.effectiveType,\n rtt: connection?.rtt,\n saveData: connection?.saveData,\n type: connection?.type\n });\n };\n window.addEventListener('online', callback, { passive: true });\n window.addEventListener('offline', callback, { passive: true });\n\n const connection = getConnection();\n\n if (connection) {\n connection.addEventListener('change', callback, { passive: true });\n }\n\n return () => {\n window.removeEventListener('online', callback);\n window.removeEventListener('offline', callback);\n\n if (connection) {\n connection.removeEventListener('change', callback);\n }\n };\n });\n\n return value;\n};\n"],"names":["getConnection","_navigator","_navigator2","_navigator3","navigator","connection","mozConnection","webkitConnection","useNetwork","_useState","useState","isClient","online","type","undefined","effectiveType","saveData","downlink","downlinkMax","rtt","onLine","_useState2","_slicedToArray","value","setValue","useEffect","callback","window","addEventListener","passive","removeEventListener"],"mappings":";2KAoCaA,IAAAA,EAAgB,WAAH,IAAAC,EAAAC,EAAAC,EAAA,OACfF,QAATA,EAAAG,iBAAAH,IAASA,OAATA,EAAAA,EAAWI,cAAuBH,QAAbA,EAAIE,iBAAAF,IAASA,OAATA,EAAAA,EAAWI,iBAA0BH,QAAbA,EAAIC,iBAAAD,IAASA,OAATA,EAAAA,EAAWI,iBAAgB,EAYrEC,EAAa,WACxB,IAAAC,EAA0BC,GAAS,WACjC,IAAKC,EACH,MAAO,CACLC,QAAQ,EACRC,UAAMC,EACNC,mBAAeD,EACfE,UAAU,EACVC,SAAU,EACVC,YAAa,EACbC,IAAK,GAGT,IAAMP,EAASR,UAAUgB,OACnBf,EAAaL,IAEnB,MAAO,CACLY,OAAAA,EACAK,SAAUZ,aAAAA,EAAAA,EAAYY,SACtBC,YAAab,aAAAA,EAAAA,EAAYa,YACzBH,cAAeV,aAAAA,EAAAA,EAAYU,cAC3BI,IAAKd,aAAAA,EAAAA,EAAYc,IACjBH,SAAUX,aAAAA,EAAAA,EAAYW,SACtBH,KAAMR,aAAU,EAAVA,EAAYQ,KAEtB,IAAEQ,EAAAC,EAAAb,EAAA,GAxBKc,EAAKF,EAAA,GAAEG,EAAQH,EAAA,GA4DtB,OAlCAI,GAAU,WACR,IAAMC,EAAW,WACf,IAAMd,EAASR,UAAUgB,OACnBf,EAAaL,IAEnBwB,EAAS,CACPZ,OAAAA,EACAK,SAAUZ,aAAAA,EAAAA,EAAYY,SACtBC,YAAab,aAAAA,EAAAA,EAAYa,YACzBH,cAAeV,aAAAA,EAAAA,EAAYU,cAC3BI,IAAKd,aAAAA,EAAAA,EAAYc,IACjBH,SAAUX,aAAAA,EAAAA,EAAYW,SACtBH,KAAMR,aAAU,EAAVA,EAAYQ,QAGtBc,OAAOC,iBAAiB,SAAUF,EAAU,CAAEG,SAAS,IACvDF,OAAOC,iBAAiB,UAAWF,EAAU,CAAEG,SAAS,IAExD,IAAMxB,EAAaL,IAMnB,OAJIK,GACFA,EAAWuB,iBAAiB,SAAUF,EAAU,CAAEG,SAAS,IAGtD,WACLF,OAAOG,oBAAoB,SAAUJ,GACrCC,OAAOG,oBAAoB,UAAWJ,GAElCrB,GACFA,EAAWyB,oBAAoB,SAAUJ,GAG/C,IAEOH,CACT"}
1
+ {"version":3,"file":"useNetwork.js","sources":["../../../../src/hooks/useNetwork/useNetwork.ts"],"sourcesContent":["import { useEffect, useState } from 'react';\n\nimport { isClient } from '@/utils/helpers';\n\nexport interface Connection extends EventTarget {\n readonly downlink: number;\n readonly downlinkMax: number;\n readonly effectiveType: 'slow-2g' | '2g' | '3g' | '4g';\n readonly rtt: number;\n readonly saveData: boolean;\n readonly type:\n | 'bluetooth'\n | 'cellular'\n | 'ethernet'\n | 'mixed'\n | 'none'\n | 'other'\n | 'unknown'\n | 'wifi'\n | 'wimax';\n onChange: (event: Event) => void;\n}\n\ndeclare global {\n interface Navigator {\n readonly connection: Connection;\n readonly mozConnection: Connection;\n readonly webkitConnection: Connection;\n }\n}\n\n/** The type of network connection */\nexport type ConnectionType = Connection['type'];\n/** The effective type of connection */\nexport type ConnectionEffectiveType = Connection['effectiveType'];\n\n/** The use network return type */\nexport interface UseNetworkReturn {\n /** Indicates if the device is currently online */\n online: boolean;\n /** The estimated downlink speed in megabits per seconds */\n downlink?: Connection['downlink'];\n /** The maximum downlink speed, if available */\n downlinkMax?: Connection['downlinkMax'];\n /** The effective type of connection (e.g., '2g', '3g', '4g') */\n effectiveType?: Connection['effectiveType'];\n /** The estimated round-trip time in milliseconds */\n rtt?: Connection['rtt'];\n /** Indicates if the user has enabled data saving mode */\n saveData?: Connection['saveData'];\n /** The type of network connection (e.g., 'wifi', 'cellular') */\n type?: Connection['type'];\n}\n\nexport const getConnection = () =>\n navigator?.connection || navigator?.mozConnection || navigator?.webkitConnection;\n\n/**\n * @name useNetwork\n * @description - Hook to track network status\n * @category Sensors\n *\n * @returns {UseNetworkReturn} An object containing the network status\n *\n * @example\n * const { online, downlink, downlinkMax, effectiveType, rtt, saveData, type } = useNetwork();\n */\nexport const useNetwork = (): UseNetworkReturn => {\n const [value, setValue] = useState(() => {\n if (!isClient) {\n return {\n online: false,\n type: undefined,\n effectiveType: undefined,\n saveData: false,\n downlink: 0,\n downlinkMax: 0,\n rtt: 0\n };\n }\n const online = navigator.onLine;\n const connection = getConnection();\n\n return {\n online,\n downlink: connection?.downlink,\n downlinkMax: connection?.downlinkMax,\n effectiveType: connection?.effectiveType,\n rtt: connection?.rtt,\n saveData: connection?.saveData,\n type: connection?.type\n };\n });\n\n useEffect(() => {\n const callback = () => {\n const online = navigator.onLine;\n const connection = getConnection();\n\n setValue({\n online,\n downlink: connection?.downlink,\n downlinkMax: connection?.downlinkMax,\n effectiveType: connection?.effectiveType,\n rtt: connection?.rtt,\n saveData: connection?.saveData,\n type: connection?.type\n });\n };\n window.addEventListener('online', callback, { passive: true });\n window.addEventListener('offline', callback, { passive: true });\n\n const connection = getConnection();\n\n if (connection) {\n connection.addEventListener('change', callback, { passive: true });\n }\n\n return () => {\n window.removeEventListener('online', callback);\n window.removeEventListener('offline', callback);\n\n if (connection) {\n connection.removeEventListener('change', callback);\n }\n };\n });\n\n return value;\n};\n"],"names":["getConnection","_navigator","_navigator2","_navigator3","navigator","connection","mozConnection","webkitConnection","useNetwork","_useState","useState","isClient","online","type","undefined","effectiveType","saveData","downlink","downlinkMax","rtt","onLine","_useState2","_slicedToArray","value","setValue","useEffect","callback","window","addEventListener","passive","removeEventListener"],"mappings":";2KAsDaA,IAAAA,EAAgB,WAAH,IAAAC,EAAAC,EAAAC,EAAA,OACfF,QAATA,EAAAG,iBAAAH,IAASA,OAATA,EAAAA,EAAWI,cAAuBH,QAAbA,EAAIE,iBAAAF,IAASA,OAATA,EAAAA,EAAWI,iBAA0BH,QAAbA,EAAIC,iBAAAD,IAASA,OAATA,EAAAA,EAAWI,iBAAgB,EAYrEC,EAAa,WACxB,IAAAC,EAA0BC,GAAS,WACjC,IAAKC,EACH,MAAO,CACLC,QAAQ,EACRC,UAAMC,EACNC,mBAAeD,EACfE,UAAU,EACVC,SAAU,EACVC,YAAa,EACbC,IAAK,GAGT,IAAMP,EAASR,UAAUgB,OACnBf,EAAaL,IAEnB,MAAO,CACLY,OAAAA,EACAK,SAAUZ,aAAAA,EAAAA,EAAYY,SACtBC,YAAab,aAAAA,EAAAA,EAAYa,YACzBH,cAAeV,aAAAA,EAAAA,EAAYU,cAC3BI,IAAKd,aAAAA,EAAAA,EAAYc,IACjBH,SAAUX,aAAAA,EAAAA,EAAYW,SACtBH,KAAMR,aAAU,EAAVA,EAAYQ,KAEtB,IAAEQ,EAAAC,EAAAb,EAAA,GAxBKc,EAAKF,EAAA,GAAEG,EAAQH,EAAA,GA4DtB,OAlCAI,GAAU,WACR,IAAMC,EAAW,WACf,IAAMd,EAASR,UAAUgB,OACnBf,EAAaL,IAEnBwB,EAAS,CACPZ,OAAAA,EACAK,SAAUZ,aAAAA,EAAAA,EAAYY,SACtBC,YAAab,aAAAA,EAAAA,EAAYa,YACzBH,cAAeV,aAAAA,EAAAA,EAAYU,cAC3BI,IAAKd,aAAAA,EAAAA,EAAYc,IACjBH,SAAUX,aAAAA,EAAAA,EAAYW,SACtBH,KAAMR,aAAU,EAAVA,EAAYQ,QAGtBc,OAAOC,iBAAiB,SAAUF,EAAU,CAAEG,SAAS,IACvDF,OAAOC,iBAAiB,UAAWF,EAAU,CAAEG,SAAS,IAExD,IAAMxB,EAAaL,IAMnB,OAJIK,GACFA,EAAWuB,iBAAiB,SAAUF,EAAU,CAAEG,SAAS,IAGtD,WACLF,OAAOG,oBAAoB,SAAUJ,GACrCC,OAAOG,oBAAoB,UAAWJ,GAElCrB,GACFA,EAAWyB,oBAAoB,SAAUJ,GAG/C,IAEOH,CACT"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.60 */
2
- import{_ as e}from"../../_rollupPluginBabelHelpers-BdfjLHhW.js";import{useState as n,useRef as a,useEffect as i}from"react";var r=function(){var r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=r.total,o=void 0===t?Number.POSITIVE_INFINITY:t,g=r.pageSize,u=void 0===g?10:g,p=r.initialPage,c=void 0===p?1:p,f=r.onPageChange,v=void 0===f?function(){}:f,S=r.onPageCountChange,z=void 0===S?function(){}:S,l=r.onPageSizeChange,P=void 0===l?function(){}:l,s=n(c),d=e(s,2),h=d[0],m=d[1],C=a(v),I=a(z),x=a(P);C.current=v,I.current=z,x.current=P;var N=Math.max(1,Math.ceil(o/u)),_=1===h,b=h===N;return i((function(){I.current({page:h,pageSize:u})}),[N]),i((function(){x.current({page:h,pageSize:u})}),[u]),{page:h,set:function(e){m(e),v({page:e,pageSize:u})},currentPageSize:u,isFirstPage:_,isLastPage:b,pageCount:N,next:function(){if(b)return v({page:N,pageSize:u});m((function(e){var n=e+1;return v({page:n,pageSize:u}),n}))},prev:function(){if(_)return v({page:1,pageSize:u});m((function(e){var n=e-1;return v({page:n,pageSize:u}),n}))}}};export{r as useOffsetPagination};
1
+ /* @license @siberiacancode/reactuse v0.0.62 */
2
+ import{_ as e}from"../../_rollupPluginBabelHelpers-BWkML700.js";import{useState as n,useRef as a,useEffect as i}from"react";var r=function(){var r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=r.total,o=void 0===t?Number.POSITIVE_INFINITY:t,g=r.pageSize,u=void 0===g?10:g,p=r.initialPage,c=void 0===p?1:p,f=r.onPageChange,v=void 0===f?function(){}:f,S=r.onPageCountChange,z=void 0===S?function(){}:S,l=r.onPageSizeChange,P=void 0===l?function(){}:l,s=n(c),d=e(s,2),h=d[0],m=d[1],C=a(v),I=a(z),x=a(P);C.current=v,I.current=z,x.current=P;var N=Math.max(1,Math.ceil(o/u)),_=1===h,b=h===N;return i((function(){I.current({page:h,pageSize:u})}),[N]),i((function(){x.current({page:h,pageSize:u})}),[u]),{page:h,set:function(e){m(e),v({page:e,pageSize:u})},currentPageSize:u,isFirstPage:_,isLastPage:b,pageCount:N,next:function(){if(b)return v({page:N,pageSize:u});m((function(e){var n=e+1;return v({page:n,pageSize:u}),n}))},prev:function(){if(_)return v({page:1,pageSize:u});m((function(e){var n=e-1;return v({page:n,pageSize:u}),n}))}}};export{r as useOffsetPagination};
3
3
  //# sourceMappingURL=useOffsetPagination.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.60 */
1
+ /* @license @siberiacancode/reactuse v0.0.62 */
2
2
  import{useSyncExternalStore as n}from"react";var e=function(){return navigator.onLine},t=function(){return!1},i=function(n){return window.addEventListener("online",n),window.addEventListener("offline",n),function(){window.removeEventListener("online",n),window.removeEventListener("offline",n)}},o=function(){return n(i,e,t)};export{o as useOnline};
3
3
  //# sourceMappingURL=useOnline.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.60 */
1
+ /* @license @siberiacancode/reactuse v0.0.62 */
2
2
  import{useRef as n}from"react";var i=function(){if("undefined"==typeof window)return"undetermined";var n=window.navigator.userAgent;return/(Macintosh)|(MacIntel)|(MacPPC)|(Mac68K)/i.test(n)?"macos":/(iPhone)|(iPad)|(iPod)/i.test(n)?"ios":/(Win32)|(Win64)|(Windows)|(WinCE)/i.test(n)?"windows":/Android/i.test(n)?"android":/Linux/i.test(n)?"linux":"undetermined"},t=function(){return n(i()).current};export{i as getOperatingSystem,t as useOperatingSystem};
3
3
  //# sourceMappingURL=useOperatingSystem.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.60 */
2
- import{_ as e}from"../../_rollupPluginBabelHelpers-BdfjLHhW.js";import{useState as n}from"react";import{useIsomorphicLayoutEffect as r}from"../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js";import"../../utils/helpers/isClient.js";var o=function(){var o=n({angle:0,type:"landscape-primary"}),t=e(o,2),i=t[0],a=t[1];return r((function(){var e,n=function(){var e=window.screen.orientation,n=e.angle,r=e.type;a({angle:n,type:r})};return null===(e=window.screen.orientation)||void 0===e||e.addEventListener("change",n),function(){var e;return null===(e=window.screen.orientation)||void 0===e?void 0:e.removeEventListener("change",n)}}),[]),i};export{o as useOrientation};
1
+ /* @license @siberiacancode/reactuse v0.0.62 */
2
+ import{_ as e}from"../../_rollupPluginBabelHelpers-BWkML700.js";import{useState as n}from"react";import{useIsomorphicLayoutEffect as r}from"../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js";import"../../utils/helpers/isClient.js";var o=function(){var o=n({angle:0,type:"landscape-primary"}),t=e(o,2),i=t[0],a=t[1];return r((function(){var e,n=function(){var e=window.screen.orientation,n=e.angle,r=e.type;a({angle:n,type:r})};return null===(e=window.screen.orientation)||void 0===e||e.addEventListener("change",n),function(){var e;return null===(e=window.screen.orientation)||void 0===e?void 0:e.removeEventListener("change",n)}}),[]),i};export{o as useOrientation};
3
3
  //# sourceMappingURL=useOrientation.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.60 */
2
- import{_ as e}from"../../_rollupPluginBabelHelpers-BdfjLHhW.js";import{useState as n,useEffect as t}from"react";import{useEvent as r}from"../useEvent/useEvent.js";var o=function(o){var u=n(!1),s=e(u,2),m=s[0],i=s[1],v=r((function(){if(m)return i(!1);null==o||o(),i(!0)}));return t((function(){return document.addEventListener("mouseleave",v,{passive:!0}),document.addEventListener("mouseenter",v,{passive:!0}),function(){document.removeEventListener("mouseenter",v),document.removeEventListener("mouseleave",v)}}),[]),m};export{o as usePageLeave};
1
+ /* @license @siberiacancode/reactuse v0.0.62 */
2
+ import{_ as e}from"../../_rollupPluginBabelHelpers-BWkML700.js";import{useState as n,useEffect as t}from"react";import{useEvent as r}from"../useEvent/useEvent.js";var o=function(o){var u=n(!1),s=e(u,2),m=s[0],i=s[1],v=r((function(){if(m)return i(!1);null==o||o(),i(!0)}));return t((function(){return document.addEventListener("mouseleave",v,{passive:!0}),document.addEventListener("mouseenter",v,{passive:!0}),function(){document.removeEventListener("mouseenter",v),document.removeEventListener("mouseleave",v)}}),[]),m};export{o as usePageLeave};
3
3
  //# sourceMappingURL=usePageLeave.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.60 */
2
- import{h as t,i as s,f as i}from"../../../_rollupPluginBabelHelpers-BdfjLHhW.js";import{Pointer as r}from"./Pointer.js";var h=function(){return t((function t(h){var e=h.x,o=h.y,n=h.radius,u=h.smooth;s(this,t),i(this,"smooth",!1),i(this,"points",[]),i(this,"lines",[]),this.smooth=u,this.pointer=new r(e,o),this.brush=new r(e,o),this.radius=n,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(t){if(this.pointer.equalsTo(t))return!1;if(this.pointer.update(t),!this.smooth)return this.brush.update(t),this.points.push(this.getBrushCoordinates()),!0;var s=this.pointer.getDistanceTo(this.brush),i=this.pointer.getAngleTo(this.brush);if(Math.round(10*(s-this.radius))/10>0){var r=i+Math.PI/2;return this.brush.update({x:this.brush.x+Math.sin(r)*(s-this.radius),y:this.brush.y-Math.cos(r)*(s-this.radius)}),this.points.push(this.getBrushCoordinates()),!0}return!1}}])}();export{h as Paint};
1
+ /* @license @siberiacancode/reactuse v0.0.62 */
2
+ import{h as t,i as s,f as i}from"../../../_rollupPluginBabelHelpers-BWkML700.js";import{Pointer as r}from"./Pointer.js";var h=function(){return t((function t(h){var e=h.x,o=h.y,n=h.radius,u=h.smooth;s(this,t),i(this,"smooth",!1),i(this,"points",[]),i(this,"lines",[]),this.smooth=u,this.pointer=new r(e,o),this.brush=new r(e,o),this.radius=n,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(t){if(this.pointer.equalsTo(t))return!1;if(this.pointer.update(t),!this.smooth)return this.brush.update(t),this.points.push(this.getBrushCoordinates()),!0;var s=this.pointer.getDistanceTo(this.brush),i=this.pointer.getAngleTo(this.brush);if(Math.round(10*(s-this.radius))/10>0){var r=i+Math.PI/2;return this.brush.update({x:this.brush.x+Math.sin(r)*(s-this.radius),y:this.brush.y-Math.cos(r)*(s-this.radius)}),this.points.push(this.getBrushCoordinates()),!0}return!1}}])}();export{h as Paint};
3
3
  //# sourceMappingURL=Paint.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.60 */
2
- import{h as t,i as e}from"../../../_rollupPluginBabelHelpers-BdfjLHhW.js";var n=function(){function n(t,i){e(this,n),this.x=t,this.y=i}return t(n,[{key:"update",value:function(t){this.x=t.x,this.y=t.y}},{key:"getDifferenceTo",value:function(t){return new n(this.x-t.x,this.y-t.y)}},{key:"getDistanceTo",value:function(t){var e=this.getDifferenceTo(t);return Math.sqrt(Math.pow(e.x,2)+Math.pow(e.y,2))}},{key:"getAngleTo",value:function(t){var e=this.getDifferenceTo(t);return Math.atan2(e.y,e.x)}},{key:"equalsTo",value:function(t){return this.x===t.x&&this.y===t.y}},{key:"moveByAngle",value:function(t,e){var n=t+Math.PI/2;return this.x+=Math.sin(n)*e,this.y-=Math.cos(n)*e,this}}])}();export{n as Pointer};
1
+ /* @license @siberiacancode/reactuse v0.0.62 */
2
+ import{h as t,i as e}from"../../../_rollupPluginBabelHelpers-BWkML700.js";var n=function(){function n(t,i){e(this,n),this.x=t,this.y=i}return t(n,[{key:"update",value:function(t){this.x=t.x,this.y=t.y}},{key:"getDifferenceTo",value:function(t){return new n(this.x-t.x,this.y-t.y)}},{key:"getDistanceTo",value:function(t){var e=this.getDifferenceTo(t);return Math.sqrt(Math.pow(e.x,2)+Math.pow(e.y,2))}},{key:"getAngleTo",value:function(t){var e=this.getDifferenceTo(t);return Math.atan2(e.y,e.x)}},{key:"equalsTo",value:function(t){return this.x===t.x&&this.y===t.y}},{key:"moveByAngle",value:function(t,e){var n=t+Math.PI/2;return this.x+=Math.sin(n)*e,this.y-=Math.cos(n)*e,this}}])}();export{n as Pointer};
3
3
  //# sourceMappingURL=Pointer.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.60 */
2
- import{c as n,_ as r}from"../../_rollupPluginBabelHelpers-BdfjLHhW.js";import{useRef as e,useState as t,useEffect as o}from"react";import{useEvent as u}from"../useEvent/useEvent.js";import{Paint as i}from"./helpers/Paint.js";import"./helpers/Pointer.js";var c=function(n){return"function"==typeof n?n():n instanceof Element?n:n.current},l=function(){var l,s,a,v,d,f="object"!==n(arguments.length<=0?void 0:arguments[0])||"current"in(arguments.length<=0?void 0:arguments[0])?arguments.length<=0?void 0:arguments[0]:void 0,p=f?arguments.length<=1?void 0:arguments[1]:arguments.length<=0?void 0:arguments[0],h=null!==(l=null==p?void 0:p.color)&&void 0!==l?l:"black",m=null!==(s=null==p?void 0:p.opacity)&&void 0!==s?s:1,y=null!==(a=null==p?void 0:p.radius)&&void 0!==a?a:10,g=e(new i({x:0,y:0,radius:null!==(v=null==p?void 0:p.radius)&&void 0!==v?v:10,smooth:null!==(d=null==p?void 0:p.smooth)&&void 0!==d&&d})),x=t(!1),E=r(x,2),w=E[0],L=E[1],b=e(null),j=e(null),M=function(n,r,e,t){if(j.current){j.current.globalAlpha=e,j.current.strokeStyle=r,j.current.lineWidth=2*t,j.current.lineCap="round",j.current.lineJoin="round";var o=n[0],u=n[1];j.current.beginPath();for(var i=1;i<n.length;i+=1){var c={x:o.x+(u.x-o.x)/2,y:o.y+(u.y-o.y)/2};j.current.quadraticCurveTo(o.x,o.y,c.x,c.y),o=n[i],u=n[i+1]}j.current.lineTo(o.x,o.y),j.current.stroke()}},P=function(){j.current&&j.current.clearRect(0,0,j.current.canvas.width,j.current.canvas.height)},k=u((function(n){var r;if(w){null==p||null===(r=p.onMouseMove)||void 0===r||r.call(p,n,g.current);var e={x:n.offsetX,y:n.offsetY};g.current.update(e)&&j.current&&(P(),j.current.clearRect(0,0,j.current.canvas.width,j.current.canvas.height),g.current.lines.forEach((function(n){var r=n.points,e=n.color,t=n.opacity,o=n.radius;return M(r,e,t,o)})),M(g.current.points,h,m,y))}})),C=u((function(n){var r;if(j.current){var e={x:n.offsetX,y:n.offsetY};g.current.brush.update(e),g.current.points.push(e),M(g.current.points,h,m,y),null==p||null===(r=p.onMouseDown)||void 0===r||r.call(p,n,g.current),L(!0)}})),R=u((function(n){var r;j.current&&(g.current.points.length&&(g.current.lines.push({points:g.current.points,color:h,opacity:m,radius:y}),g.current.points=[]),null==p||null===(r=p.onMouseUp)||void 0===r||r.call(p,n,g.current),L(!1))})),T=function(){j.current&&(P(),g.current.lines=[],g.current.points=[])},X=function(){j.current&&(P(),g.current.lines.pop(),g.current.lines.forEach((function(n){var r=n.points,e=n.color,t=n.opacity,o=n.radius;return M(r,e,t,o)})))};return o((function(){var n=f?c(f):b.current;if(n)return j.current=n.getContext("2d"),null!=p&&p.initialLines&&(g.current.lines=p.initialLines,p.initialLines.forEach((function(n){var r=n.points,e=n.color,t=n.opacity,o=n.radius;return M(r,e,t,o)}))),n.addEventListener("mousedown",C),n.addEventListener("mousemove",k),n.addEventListener("mouseup",R),function(){n&&(n.removeEventListener("mousedown",C),n.removeEventListener("mousemove",k),n.removeEventListener("mouseup",R))}}),[]),f?{drawing:w,clear:T,undo:X,draw:M,lines:g.current.lines}:{ref:b,drawing:w,clear:T,undo:X,draw:M,lines:g.current.lines}};export{c as getElement,l as usePaint};
1
+ /* @license @siberiacancode/reactuse v0.0.62 */
2
+ import{c as r,_ as n}from"../../_rollupPluginBabelHelpers-BWkML700.js";import{useRef as e,useState as t,useEffect as o}from"react";import{getElement as u}from"../../utils/helpers/getElement.js";import"../../utils/helpers/isClient.js";import{useEvent as i}from"../useEvent/useEvent.js";import{Paint as l}from"./helpers/Paint.js";import"./helpers/Pointer.js";var c=function(){var c,s,a,v,d,p="object"!==r(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,f=p?arguments.length<=1?void 0:arguments[1]:arguments.length<=0?void 0:arguments[0],h=null!==(c=null==f?void 0:f.color)&&void 0!==c?c:"black",m=null!==(s=null==f?void 0:f.opacity)&&void 0!==s?s:1,g=null!==(a=null==f?void 0:f.radius)&&void 0!==a?a:10,y=e(new l({x:0,y:0,radius:null!==(v=null==f?void 0:f.radius)&&void 0!==v?v:10,smooth:null!==(d=null==f?void 0:f.smooth)&&void 0!==d&&d})),x=t(!1),E=n(x,2),w=E[0],L=E[1],j=e(null),b=e(null),C=function(r,n,e,t){if(b.current){b.current.globalAlpha=e,b.current.strokeStyle=n,b.current.lineWidth=2*t,b.current.lineCap="round",b.current.lineJoin="round";var o=r[0],u=r[1];b.current.beginPath();for(var i=1;i<r.length;i+=1){var l={x:o.x+(u.x-o.x)/2,y:o.y+(u.y-o.y)/2};b.current.quadraticCurveTo(o.x,o.y,l.x,l.y),o=r[i],u=r[i+1]}b.current.lineTo(o.x,o.y),b.current.stroke()}},M=function(){b.current&&b.current.clearRect(0,0,b.current.canvas.width,b.current.canvas.height)},P=i((function(r){var n;if(w){null==f||null===(n=f.onMouseMove)||void 0===n||n.call(f,r,y.current);var e={x:r.offsetX,y:r.offsetY};y.current.update(e)&&b.current&&(M(),b.current.clearRect(0,0,b.current.canvas.width,b.current.canvas.height),y.current.lines.forEach((function(r){var n=r.points,e=r.color,t=r.opacity,o=r.radius;return C(n,e,t,o)})),C(y.current.points,h,m,g))}})),k=i((function(r){var n;if(b.current){var e={x:r.offsetX,y:r.offsetY};y.current.brush.update(e),y.current.points.push(e),C(y.current.points,h,m,g),null==f||null===(n=f.onMouseDown)||void 0===n||n.call(f,r,y.current),L(!0)}})),R=i((function(r){var n;b.current&&(y.current.points.length&&(y.current.lines.push({points:y.current.points,color:h,opacity:m,radius:g}),y.current.points=[]),null==f||null===(n=f.onMouseUp)||void 0===n||n.call(f,r,y.current),L(!1))})),T=function(){b.current&&(M(),y.current.lines=[],y.current.points=[])},X=function(){b.current&&(M(),y.current.lines.pop(),y.current.lines.forEach((function(r){var n=r.points,e=r.color,t=r.opacity,o=r.radius;return C(n,e,t,o)})))};return o((function(){var r=p?u(p):j.current;if(r)return b.current=r.getContext("2d"),null!=f&&f.initialLines&&(y.current.lines=f.initialLines,f.initialLines.forEach((function(r){var n=r.points,e=r.color,t=r.opacity,o=r.radius;return C(n,e,t,o)}))),r.addEventListener("mousedown",k),r.addEventListener("mousemove",P),r.addEventListener("mouseup",R),function(){r&&(r.removeEventListener("mousedown",k),r.removeEventListener("mousemove",P),r.removeEventListener("mouseup",R))}}),[]),p?{drawing:w,clear:T,undo:X,draw:C,lines:y.current.lines}:{ref:j,drawing:w,clear:T,undo:X,draw:C,lines:y.current.lines}};export{c as usePaint};
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';\nimport { useEffect, useRef, useState } from 'react';\n\nimport { useEvent } from '../useEvent/useEvent';\n\nimport { Paint } from './helpers/Paint';\nimport type { Point } from './helpers/Pointer';\n\nconst DEFAULT_BRUSH_RADIUS = 10;\n\nexport interface UsePaintOptions {\n /** Brush color */\n color?: string;\n /** Brush radius */\n radius?: number;\n /** Smooth brush movement */\n smooth?: boolean;\n /** Brush opacity */\n opacity?: number;\n /** Initial lines */\n initialLines?: Paint['lines'];\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 clear: () => void;\n undo: () => void;\n draw: (points: Point[], color: string, opacity: number, radius: number) => void;\n lines: Paint['lines'];\n}\n\n/** The use paint return type */\nexport type UsePaintTarget =\n | RefObject<HTMLCanvasElement>\n | (() => HTMLCanvasElement)\n | HTMLCanvasElement;\n\nexport const getElement = (target: UsePaintTarget) => {\n if (typeof target === 'function') {\n return target();\n }\n\n if (target instanceof Element) {\n return target;\n }\n\n return target.current;\n};\n\nexport type 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 */\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;\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":["getElement","target","Element","current","usePaint","_options$color","_options$opacity","_options$radius","_options$radius2","_options$smooth","_typeof","arguments","length","undefined","options","color","opacity","radius","paintRef","useRef","Paint","x","y","smooth","_useState","useState","_useState2","_slicedToArray","drawing","setIsDrawing","internalRef","contextRef","draw","points","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","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';\nimport { useEffect, useRef, useState } from 'react';\n\nimport { getElement } from '@/utils/helpers';\n\nimport { useEvent } from '../useEvent/useEvent';\n\nimport { Paint } from './helpers/Paint';\nimport type { Point } from './helpers/Pointer';\n\nconst DEFAULT_BRUSH_RADIUS = 10;\n\nexport interface UsePaintOptions {\n /** Brush color */\n color?: string;\n /** Brush radius */\n radius?: number;\n /** Smooth brush movement */\n smooth?: boolean;\n /** Brush opacity */\n opacity?: number;\n /** Initial lines */\n initialLines?: Paint['lines'];\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 clear: () => void;\n undo: () => void;\n draw: (points: Point[], color: string, opacity: number, radius: number) => void;\n lines: Paint['lines'];\n}\n\n/** The use paint return type */\nexport type UsePaintTarget =\n | RefObject<HTMLCanvasElement>\n | (() => HTMLCanvasElement)\n | HTMLCanvasElement;\n\nexport type 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 */\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":["usePaint","_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,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.60 */
2
- import{_ as r,d as e,e as t}from"../../_rollupPluginBabelHelpers-BdfjLHhW.js";import{useState as n,useEffect as a}from"react";import{useEvent as s}from"../useEvent/useEvent.js";var o=function(o){var u=n("prompt"),i=r(u,2),p=i[0],c=i[1],m=navigator&&"permissions"in navigator,v={name:o},f=s(e(t().mark((function r(){var e;return t().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.prev=0,r.next=3,navigator.permissions.query(v);case 3:return e=r.sent,c(e.state),r.abrupt("return",e.state);case 8:return r.prev=8,r.t0=r.catch(0),c("prompt"),r.abrupt("return","prompt");case 12:case"end":return r.stop()}}),r,null,[[0,8]])}))));return a((function(){if(m)return f(),window.addEventListener("change",f),function(){window.removeEventListener("change",f)}}),[o]),{state:p,supported:m,query:f}};export{o as usePermission};
1
+ /* @license @siberiacancode/reactuse v0.0.62 */
2
+ import{_ as r,d as e,e as t}from"../../_rollupPluginBabelHelpers-BWkML700.js";import{useState as n,useEffect as a}from"react";import{useEvent as s}from"../useEvent/useEvent.js";var o=function(o){var u=n("prompt"),i=r(u,2),p=i[0],c=i[1],m=navigator&&"permissions"in navigator,v={name:o},f=s(e(t().mark((function r(){var e;return t().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.prev=0,r.next=3,navigator.permissions.query(v);case 3:return e=r.sent,c(e.state),r.abrupt("return",e.state);case 8:return r.prev=8,r.t0=r.catch(0),c("prompt"),r.abrupt("return","prompt");case 12:case"end":return r.stop()}}),r,null,[[0,8]])}))));return a((function(){if(m)return f(),window.addEventListener("change",f),function(){window.removeEventListener("change",f)}}),[o]),{state:p,supported:m,query:f}};export{o as usePermission};
3
3
  //# sourceMappingURL=usePermission.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.60 */
1
+ /* @license @siberiacancode/reactuse v0.0.62 */
2
2
  import{useMediaQuery as e}from"../useMediaQuery/useMediaQuery.js";import"react";var r=function(){var r=e("(prefers-color-scheme: light)"),o=e("(prefers-color-scheme: dark)");return r?"light":o?"dark":"no-preference"};export{r as usePreferredColorScheme};
3
3
  //# sourceMappingURL=usePreferredColorScheme.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.60 */
1
+ /* @license @siberiacancode/reactuse v0.0.62 */
2
2
  import{useMediaQuery as r}from"../useMediaQuery/useMediaQuery.js";import"react";var e=function(){var e=r("(prefers-contrast: more)"),s=r("(prefers-contrast: less)"),t=r("(prefers-contrast: custom)");return e?"more":s?"less":t?"custom":"no-preference"};export{e as usePreferredContrast};
3
3
  //# sourceMappingURL=usePreferredContrast.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.60 */
1
+ /* @license @siberiacancode/reactuse v0.0.62 */
2
2
  import{useMediaQuery as r}from"../useMediaQuery/useMediaQuery.js";import"react";var e=function(){return r("(prefers-color-scheme: dark)")};export{e as usePreferredDark};
3
3
  //# sourceMappingURL=usePreferredDark.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.60 */
1
+ /* @license @siberiacancode/reactuse v0.0.62 */
2
2
  import{useSyncExternalStore as n}from"react";var e=function(){return window.navigator.languages},r=function(){return[]},t=function(n){return window.addEventListener("languagechange",n),function(){window.removeEventListener("languagechange",n)}},a=function(){return n(t,e,r)};export{a as usePreferredLanguages};
3
3
  //# sourceMappingURL=usePreferredLanguages.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.60 */
1
+ /* @license @siberiacancode/reactuse v0.0.62 */
2
2
  import{useMediaQuery as e}from"../useMediaQuery/useMediaQuery.js";import"react";var r=function(){return e("(prefers-reduced-motion: reduce)")?"reduce":"no-preference"};export{r as usePreferredReducedMotion};
3
3
  //# sourceMappingURL=usePreferredReducedMotion.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.60 */
1
+ /* @license @siberiacancode/reactuse v0.0.62 */
2
2
  import{useRef as r,useEffect as t}from"react";var n=function(n){var c=r();return t((function(){c.current=n})),c.current};export{n as usePrevious};
3
3
  //# sourceMappingURL=usePrevious.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.60 */
2
- import{_ as r,a as t}from"../../_rollupPluginBabelHelpers-BdfjLHhW.js";import{useRef as n,useState as e,useEffect as l}from"react";import{getRetry as o}from"../../utils/helpers/getRetry.js";import"../../utils/helpers/isClient.js";import{useDidUpdate as i}from"../useDidUpdate/useDidUpdate.js";import{useMount as u}from"../useMount/useMount.js";import"../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js";var c=function(c,a){var s,f,v=null===(s=null==a?void 0:a.enabled)||void 0===s||s,d=n(null!=a&&a.retry?o(a.retry):0),h=e(!1),p=r(h,2),m=p[0],y=p[1],b=e(!1),D=r(b,2),I=D[0],g=D[1],j=e(!1),E=r(j,2),A=E[0],C=E[1],L=e(!(null==a||!a.initialData)),k=r(L,2),w=k[0],M=k[1],R=e(!(null==a||!a.initialData)),S=r(R,2),U=S[0],_=S[1],x=e(void 0),B=r(x,2),F=B[0],H=B[1],P=e(null==a?void 0:a.initialData),q=r(P,2),z=q[0],G=q[1],J=n(new AbortController),K=n(),N=null!==(f=null==a?void 0:a.keys)&&void 0!==f?f:[],O=function(){J.current.abort(),J.current=new AbortController,J.current.signal.onabort=function(){return _(!0)}},Q=function r(t){O(),y(!0),"refetch"===t&&C(!0),c({signal:J.current.signal,keys:N}).then((function(r){var n,e=null!=a&&a.select?null==a?void 0:a.select(r):r;null==a||null===(n=a.onSuccess)||void 0===n||n.call(a,e),G(e),M(!0),y(!1),H(void 0),g(!1),"refetch"===t&&C(!1)})).catch((function(n){var e;if(d.current>0)return d.current-=1,r(t);null==a||null===(e=a.onError)||void 0===e||e.call(a,n),G(void 0),M(!1),y(!1),H(n),g(!0),"refetch"===t&&C(!1),d.current=null!=a&&a.retry?o(a.retry):0})).finally((function(){if(null!=a&&a.refetchInterval){var t=setInterval((function(){clearInterval(t),r("refetch")}),null==a?void 0:a.refetchInterval);K.current=t}}))};u((function(){v&&Q("init")})),i((function(){v&&Q("refetch")}),[v].concat(t(N))),l((function(){return function(){clearInterval(K.current)}}),[v,null==a?void 0:a.refetchInterval,null==a?void 0:a.retry].concat(t(N)));var T=(null==a?void 0:a.placeholderData)instanceof Function?null==a?void 0:a.placeholderData():null==a?void 0:a.placeholderData;return{abort:O,data:null!=z?z:T,error:F,refetch:function(){return Q("refetch")},isLoading:m,isError:I,isSuccess:w,isRefetching:A,isAborted:U}};export{c as useQuery};
1
+ /* @license @siberiacancode/reactuse v0.0.62 */
2
+ import{_ as r,a as t}from"../../_rollupPluginBabelHelpers-BWkML700.js";import{useRef as n,useState as e,useEffect as l}from"react";import{getRetry as o}from"../../utils/helpers/getRetry.js";import"../../utils/helpers/isClient.js";import{useDidUpdate as i}from"../useDidUpdate/useDidUpdate.js";import{useMount as u}from"../useMount/useMount.js";import"../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js";var c=function(c,a){var s,f,v=null===(s=null==a?void 0:a.enabled)||void 0===s||s,d=n(null!=a&&a.retry?o(a.retry):0),h=e(!1),p=r(h,2),m=p[0],y=p[1],b=e(!1),D=r(b,2),I=D[0],g=D[1],j=e(!1),E=r(j,2),A=E[0],C=E[1],L=e(!(null==a||!a.initialData)),k=r(L,2),w=k[0],M=k[1],R=e(!(null==a||!a.initialData)),S=r(R,2),U=S[0],_=S[1],x=e(void 0),B=r(x,2),F=B[0],H=B[1],P=e(null==a?void 0:a.initialData),q=r(P,2),z=q[0],G=q[1],J=n(new AbortController),K=n(),N=null!==(f=null==a?void 0:a.keys)&&void 0!==f?f:[],O=function(){J.current.abort(),J.current=new AbortController,J.current.signal.onabort=function(){return _(!0)}},Q=function r(t){O(),y(!0),"refetch"===t&&C(!0),c({signal:J.current.signal,keys:N}).then((function(r){var n,e=null!=a&&a.select?null==a?void 0:a.select(r):r;null==a||null===(n=a.onSuccess)||void 0===n||n.call(a,e),G(e),M(!0),y(!1),H(void 0),g(!1),"refetch"===t&&C(!1)})).catch((function(n){var e;if(d.current>0)return d.current-=1,r(t);null==a||null===(e=a.onError)||void 0===e||e.call(a,n),G(void 0),M(!1),y(!1),H(n),g(!0),"refetch"===t&&C(!1),d.current=null!=a&&a.retry?o(a.retry):0})).finally((function(){if(null!=a&&a.refetchInterval){var t=setInterval((function(){clearInterval(t),r("refetch")}),null==a?void 0:a.refetchInterval);K.current=t}}))};u((function(){v&&Q("init")})),i((function(){v&&Q("refetch")}),[v].concat(t(N))),l((function(){return function(){clearInterval(K.current)}}),[v,null==a?void 0:a.refetchInterval,null==a?void 0:a.retry].concat(t(N)));var T=(null==a?void 0:a.placeholderData)instanceof Function?null==a?void 0:a.placeholderData():null==a?void 0:a.placeholderData;return{abort:O,data:null!=z?z:T,error:F,refetch:function(){return Q("refetch")},isLoading:m,isError:I,isSuccess:w,isRefetching:A,isAborted:U}};export{c as useQuery};
3
3
  //# sourceMappingURL=useQuery.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.60 */
2
- import{_ as r,a as n,g as t}from"../../_rollupPluginBabelHelpers-BdfjLHhW.js";import{useState as e}from"react";import{flushSync as o}from"react-dom";var u=function(){var u=e(arguments.length>0&&void 0!==arguments[0]?arguments[0]:[]),a=r(u,2),i=a[0],c=a[1];return{add:function(r){return c((function(t){return[].concat(n(t),[r])}))},remove:function(){var r;return o((function(){c((function(n){var e=t(n),o=e[0],u=e.slice(1);return r=o,u}))})),r},clear:function(){return c([])},first:i[0],last:i[i.length-1],size:i.length,queue:i}};export{u as useQueue};
1
+ /* @license @siberiacancode/reactuse v0.0.62 */
2
+ import{_ as r,a as n,g as t}from"../../_rollupPluginBabelHelpers-BWkML700.js";import{useState as e}from"react";import{flushSync as o}from"react-dom";var u=function(){var u=e(arguments.length>0&&void 0!==arguments[0]?arguments[0]:[]),a=r(u,2),i=a[0],c=a[1];return{add:function(r){return c((function(t){return[].concat(n(t),[r])}))},remove:function(){var r;return o((function(){c((function(n){var e=t(n),o=e[0],u=e.slice(1);return r=o,u}))})),r},clear:function(){return c([])},first:i[0],last:i[i.length-1],size:i.length,queue:i}};export{u as useQueue};
3
3
  //# sourceMappingURL=useQueue.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.60 */
2
- import{_ as r}from"../../_rollupPluginBabelHelpers-BdfjLHhW.js";import{useRef as n,useState as e,useEffect as t}from"react";var u=function(u,l){var i,a=n(null),o=n(0),c=e(!1),m=r(c,2),d=m[0],v=m[1],f=null===(i=null==l?void 0:l.enabled)||void 0===i||i,s=n(u);s.current=u;var p=function r(n){var e=n-o.current;null!=l&&l.delay&&e<(null==l?void 0:l.delay)||(o.current=n,s.current({delta:e,timestamp:n})),a.current=window.requestAnimationFrame(r)},w=function(){d||(v(!0),o.current=0,a.current=window.requestAnimationFrame(p))};function y(){a.current&&(v(!1),window.cancelAnimationFrame(a.current),a.current=null)}return t((function(){if(f)return w(),y}),[f,null==l?void 0:l.delay]),{active:d,pause:y,resume:w}};export{u as useRaf};
1
+ /* @license @siberiacancode/reactuse v0.0.62 */
2
+ import{_ as r}from"../../_rollupPluginBabelHelpers-BWkML700.js";import{useRef as n,useState as e,useEffect as t}from"react";var u=function(u,l){var i,a=n(null),o=n(0),c=e(!1),m=r(c,2),d=m[0],v=m[1],f=null===(i=null==l?void 0:l.enabled)||void 0===i||i,s=n(u);s.current=u;var p=function r(n){var e=n-o.current;null!=l&&l.delay&&e<(null==l?void 0:l.delay)||(o.current=n,s.current({delta:e,timestamp:n})),a.current=window.requestAnimationFrame(r)},w=function(){d||(v(!0),o.current=0,a.current=window.requestAnimationFrame(p))};function y(){a.current&&(v(!1),window.cancelAnimationFrame(a.current),a.current=null)}return t((function(){if(f)return w(),y}),[f,null==l?void 0:l.delay]),{active:d,pause:y,resume:w}};export{u as useRaf};
3
3
  //# sourceMappingURL=useRaf.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.60 */
2
- import{_ as r}from"../../_rollupPluginBabelHelpers-BdfjLHhW.js";import{useRef as n,useState as t}from"react";import{useUnmount as e}from"../useUnmount/useUnmount.js";var o=function(o){var u=n(0),i=t(o),m=r(i,2),a=m[0],c=m[1];return e((function(){return cancelAnimationFrame(u.current)})),[a,function(r){cancelAnimationFrame(u.current),u.current=requestAnimationFrame((function(){return c(r)}))}]};export{o as useRafValue};
1
+ /* @license @siberiacancode/reactuse v0.0.62 */
2
+ import{_ as r}from"../../_rollupPluginBabelHelpers-BWkML700.js";import{useRef as n,useState as t}from"react";import{useUnmount as e}from"../useUnmount/useUnmount.js";var o=function(o){var u=n(0),i=t(o),m=r(i,2),a=m[0],c=m[1];return e((function(){return cancelAnimationFrame(u.current)})),[a,function(r){cancelAnimationFrame(u.current),u.current=requestAnimationFrame((function(){return c(r)}))}]};export{o as useRafValue};
3
3
  //# sourceMappingURL=useRafValue.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.60 */
1
+ /* @license @siberiacancode/reactuse v0.0.62 */
2
2
  import{useRef as r,useEffect as t}from"react";var n=function(){var n=r(0);return t((function(){n.current+=1})),n.current};export{n as useRenderCount};
3
3
  //# sourceMappingURL=useRenderCount.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.60 */
1
+ /* @license @siberiacancode/reactuse v0.0.62 */
2
2
  import{useRef as e}from"react";var n=function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"Unknown",r=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],t=e({component:n,renders:0,timestamp:Date.now(),sinceLast:0}),c=Date.now();return t.current.renders+=1,t.current.sinceLast=t.current.timestamp?c-t.current.timestamp:0,t.current.timestamp=c,r&&(console.group("".concat(n," info, render number: ").concat(t.current.renders)),console.log("Timestamp: ".concat(t.current.timestamp)),console.log("Since last render: ".concat(t.current.sinceLast)),console.log("Renders: ".concat(t.current.renders)),console.dir(t.current),console.groupEnd()),t.current};export{n as useRenderInfo};
3
3
  //# sourceMappingURL=useRenderInfo.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.60 */
2
- import{_ as r}from"../../_rollupPluginBabelHelpers-BdfjLHhW.js";import{useId as t,useState as o}from"react";var n=function(){var n=t(),a=o(n),e=r(a,2),i=e[0],u=e[1];return{id:i,update:function(){return u(Math.random().toString())}}};export{n as useRerender};
1
+ /* @license @siberiacancode/reactuse v0.0.62 */
2
+ import{_ as r}from"../../_rollupPluginBabelHelpers-BWkML700.js";import{useId as t,useState as o}from"react";var n=function(){var n=t(),a=o(n),e=r(a,2),i=e[0],u=e[1];return{id:i,update:function(){return u(Math.random().toString())}}};export{n as useRerender};
3
3
  //# sourceMappingURL=useRerender.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.60 */
2
- import{c as n,_ as e}from"../../_rollupPluginBabelHelpers-BdfjLHhW.js";import{useState as r,useRef as i,useEffect as o}from"react";var t=function(n){return"function"==typeof n?n():n instanceof Element?n:n.current},l=function(){var l,u="object"!==n(arguments.length<=0?void 0:arguments[0])||"current"in(arguments.length<=0?void 0:arguments[0])?arguments.length<=0?void 0:arguments[0]:void 0,c=u?arguments.length<=1?void 0:arguments[1]:arguments.length<=0?void 0:arguments[0],v=null===(l=null==c?void 0:c.enabled)||void 0===l||l,a=r([]),f=e(a,2),s=f[0],d=f[1],b=r(),g=e(b,2),h=g[0],p=g[1],m=i();return m.current=null==c?void 0:c.onChange,o((function(){if(v||u||h){if(Array.isArray(u)){if(!u.length)return;var n=new ResizeObserver((function(e){var r;d(e),null===(r=m.current)||void 0===r||r.call(m,e,n)}));return u.forEach((function(e){var r=t(e);r&&n.observe(r,c)})),function(){n.disconnect()}}var e=u?t(u):h;if(e){var r=new ResizeObserver((function(n){var e;d(n),null===(e=m.current)||void 0===e||e.call(m,n,r)}));return r.observe(e,c),function(){r.disconnect()}}}}),[h,u,null==c?void 0:c.box,v]),u?{entries:s}:{ref:p,entries:s}};export{l as useResizeObserver};
1
+ /* @license @siberiacancode/reactuse v0.0.62 */
2
+ import{c as e,_ as r}from"../../_rollupPluginBabelHelpers-BWkML700.js";import{useState as n,useRef as i,useEffect as t}from"react";import{getElement as o}from"../../utils/helpers/getElement.js";import"../../utils/helpers/isClient.js";var l=function(){var l,u="object"!==e(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=u?arguments.length<=1?void 0:arguments[1]:arguments.length<=0?void 0:arguments[0],s=null===(l=null==v?void 0:v.enabled)||void 0===l||l,c=n([]),a=r(c,2),f=a[0],d=a[1],h=n(),g=r(h,2),p=g[0],b=g[1],m=i();return m.current=null==v?void 0:v.onChange,t((function(){if(s||u||p){if(Array.isArray(u)){if(!u.length)return;var e=new ResizeObserver((function(r){var n;d(r),null===(n=m.current)||void 0===n||n.call(m,r,e)}));return u.forEach((function(r){var n=o(r);n&&e.observe(n,v)})),function(){e.disconnect()}}var r=u?o(u):p;if(r){var n=new ResizeObserver((function(e){var r;d(e),null===(r=m.current)||void 0===r||r.call(m,e,n)}));return n.observe(r,v),function(){n.disconnect()}}}}),[p,u,null==v?void 0:v.box,s]),u?{entries:f}:{ref:b,entries:f}};export{l as useResizeObserver};
3
3
  //# sourceMappingURL=useResizeObserver.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useResizeObserver.js","sources":["../../../../src/hooks/useResizeObserver/useResizeObserver.ts"],"sourcesContent":["import type { RefObject } from 'react';\nimport { useEffect, useRef, useState } from 'react';\n\n/** The resize observer target element type */\ntype UseResizeObserverTarget = RefObject<Element | null | undefined> | (() => Element) | Element;\n\nconst getElement = (target: UseResizeObserverTarget) => {\n if (typeof target === 'function') {\n return target();\n }\n\n if (target instanceof Element) {\n return target;\n }\n\n return target.current;\n};\n\n/** The resize observer options type */\nexport interface UseResizeObserverOptions extends ResizeObserverOptions {\n enabled?: boolean;\n onChange?: (entries: ResizeObserverEntry[], observer: ResizeObserver) => void;\n}\n\n/** The resize observer return type */\nexport interface UseResizeObserverReturn {\n entries: ResizeObserverEntry[];\n}\n\nexport type UseResizeObserver = {\n <Target extends UseResizeObserverTarget | UseResizeObserverTarget[]>(\n target: Target,\n options?: UseResizeObserverOptions\n ): UseResizeObserverReturn;\n\n <Target extends UseResizeObserverTarget | UseResizeObserverTarget[]>(\n options?: UseResizeObserverOptions,\n target?: never\n ): UseResizeObserverReturn & { ref: (node: Target) => void };\n};\n\n/**\n * @name useResizeObserver\n * @description - Hook that gives you resize observer state\n * @category Browser\n *\n * @overload\n * @template Target The target element\n * @param {boolean} [options.enabled=true] The IntersectionObserver options\n * @param {boolean} [options.box] The IntersectionObserver options\n * @param {(entries: ResizeObserverEntry[], observer: ResizeObserver) => void} [options.onChange] The callback to execute when resize is detected\n * @returns {UseResizeObserverReturn & { ref: (node: Target) => void }} An object containing the resize observer state\n *\n * @example\n * const { ref, entries } = useResizeObserver();\n *\n * @overload\n * @template Target The target element\n * @param {Target} target The target element to observe\n * @param {boolean} [options.enabled=true] The IntersectionObserver options\n * @param {boolean} [options.box] The IntersectionObserver options\n * @param {(entries: ResizeObserverEntry[], observer: ResizeObserver) => void} [options.onChange] The callback to execute when resize is detected\n * @returns {UseResizeObserverReturn} An object containing the resize observer state\n *\n * @example\n * const { entries } = useResizeObserver(ref);\n */\nexport const useResizeObserver = ((...params: any[]) => {\n const target = (\n typeof params[0] === 'object' && !('current' in params[0]) ? undefined : params[0]\n ) as UseResizeObserverTarget | UseResizeObserverTarget[] | undefined;\n const options = (target ? params[1] : params[0]) as UseResizeObserverOptions | undefined;\n const enabled = options?.enabled ?? true;\n\n const [entries, setEntries] = useState<ResizeObserverEntry[]>([]);\n\n const [internalRef, setInternalRef] = useState<Element>();\n const internalOnChangeRef = useRef<UseResizeObserverOptions['onChange']>();\n internalOnChangeRef.current = options?.onChange;\n\n useEffect(() => {\n if (!enabled && !target && !internalRef) return;\n\n if (Array.isArray(target)) {\n if (!target.length) return;\n const observer = new ResizeObserver((entries) => {\n setEntries(entries);\n internalOnChangeRef.current?.(entries, observer);\n });\n\n target.forEach((target) => {\n const element = getElement(target);\n if (!element) return;\n observer.observe(element, options);\n });\n\n return () => {\n observer.disconnect();\n };\n }\n\n const element = target ? getElement(target) : internalRef;\n if (!element) return;\n\n const observer = new ResizeObserver((entries) => {\n setEntries(entries);\n internalOnChangeRef.current?.(entries, observer);\n });\n observer.observe(element, options);\n\n return () => {\n observer.disconnect();\n };\n }, [internalRef, target, options?.box, enabled]);\n\n if (target) return { entries };\n return {\n ref: setInternalRef,\n entries\n };\n}) as UseResizeObserver;\n"],"names":["getElement","target","Element","current","useResizeObserver","_options$enabled","_typeof","arguments","length","undefined","options","enabled","_useState","useState","_useState2","_slicedToArray","entries","setEntries","_useState3","_useState4","internalRef","setInternalRef","internalOnChangeRef","useRef","onChange","useEffect","Array","isArray","observer","ResizeObserver","_internalOnChangeRef$","call","forEach","element","observe","disconnect","_internalOnChangeRef$2","box","ref"],"mappings":";mIAMA,IAAMA,EAAa,SAACC,GAClB,MAAsB,mBAAXA,EACFA,IAGLA,aAAkBC,QACbD,EAGFA,EAAOE,OAChB,EAmDaC,EAAqB,WAAsB,IAAAC,EAChDJ,EACiB,WAArBK,EAAAC,UAAAC,QAAA,OAAAC,EAAAF,UAAqB,KAAc,YAASA,UAAAC,eAAAC,EAAAF,UAAA,IAA0BA,UAAAC,QAAA,OAAAC,EAAAF,UACJ,QADLE,EAEzDC,EAAWT,EAAMM,UAAAC,QAAAC,OAAAA,EAAAF,UAAA,GAAAA,UAAAC,eAAAC,EAAAF,UAAiE,GAClFI,EAA0BN,QAAnBA,EAAGK,aAAO,EAAPA,EAASC,eAAON,IAAAA,GAAAA,EAEhCO,EAA8BC,EAAgC,IAAGC,EAAAC,EAAAH,EAAA,GAA1DI,EAAOF,EAAA,GAAEG,EAAUH,EAAA,GAE1BI,EAAsCL,IAAmBM,EAAAJ,EAAAG,EAAA,GAAlDE,EAAWD,EAAA,GAAEE,EAAcF,EAAA,GAC5BG,EAAsBC,IAsC5B,OArCAD,EAAoBnB,QAAUO,aAAO,EAAPA,EAASc,SAEvCC,GAAU,WACR,GAAKd,GAAYV,GAAWmB,EAA5B,CAEA,GAAIM,MAAMC,QAAQ1B,GAAS,CACzB,IAAKA,EAAOO,OAAQ,OACpB,IAAMoB,EAAW,IAAIC,gBAAe,SAACb,GAAY,IAAAc,EAC/Cb,EAAWD,WACXc,EAAAR,EAAoBnB,eAAO,IAAA2B,GAA3BA,EAAAC,KAAAT,EAA8BN,EAASY,EACzC,IAQA,OANA3B,EAAO+B,SAAQ,SAAC/B,GACd,IAAMgC,EAAUjC,EAAWC,GACtBgC,GACLL,EAASM,QAAQD,EAASvB,EAC5B,IAEO,WACLkB,EAASO,aAEb,CAEA,IAAMF,EAAUhC,EAASD,EAAWC,GAAUmB,EAC9C,GAAKa,EAAL,CAEA,IAAML,EAAW,IAAIC,gBAAe,SAACb,GAAY,IAAAoB,EAC/CnB,EAAWD,WACXoB,EAAAd,EAAoBnB,eAAO,IAAAiC,GAA3BA,EAAAL,KAAAT,EAA8BN,EAASY,EACzC,IAGA,OAFAA,EAASM,QAAQD,EAASvB,GAEnB,WACLkB,EAASO,aATG,CArB2B,CAgC1C,GAAE,CAACf,EAAanB,EAAQS,aAAO,EAAPA,EAAS2B,IAAK1B,IAEnCV,EAAe,CAAEe,QAAAA,GACd,CACLsB,IAAKjB,EACLL,QAAAA,EAEJ"}
1
+ {"version":3,"file":"useResizeObserver.js","sources":["../../../../src/hooks/useResizeObserver/useResizeObserver.ts"],"sourcesContent":["import type { RefObject } from 'react';\nimport { useEffect, useRef, useState } from 'react';\n\nimport { getElement } from '@/utils/helpers';\n\n/** The resize observer target element type */\nexport type UseResizeObserverTarget =\n | RefObject<Element | null | undefined>\n | (() => Element)\n | Element;\n\n/** The resize observer options type */\nexport interface UseResizeObserverOptions extends ResizeObserverOptions {\n enabled?: boolean;\n onChange?: (entries: ResizeObserverEntry[], observer: ResizeObserver) => void;\n}\n\n/** The resize observer return type */\nexport interface UseResizeObserverReturn {\n entries: ResizeObserverEntry[];\n}\n\nexport type UseResizeObserver = {\n <Target extends UseResizeObserverTarget | UseResizeObserverTarget[]>(\n target: Target,\n options?: UseResizeObserverOptions\n ): UseResizeObserverReturn;\n\n <Target extends UseResizeObserverTarget | UseResizeObserverTarget[]>(\n options?: UseResizeObserverOptions,\n target?: never\n ): UseResizeObserverReturn & { ref: (node: Target) => void };\n};\n\n/**\n * @name useResizeObserver\n * @description - Hook that gives you resize observer state\n * @category Browser\n *\n * @overload\n * @template Target The target element\n * @param {boolean} [options.enabled=true] The IntersectionObserver options\n * @param {boolean} [options.box] The IntersectionObserver options\n * @param {(entries: ResizeObserverEntry[], observer: ResizeObserver) => void} [options.onChange] The callback to execute when resize is detected\n * @returns {UseResizeObserverReturn & { ref: (node: Target) => void }} An object containing the resize observer state\n *\n * @example\n * const { ref, entries } = useResizeObserver();\n *\n * @overload\n * @template Target The target element\n * @param {Target} target The target element to observe\n * @param {boolean} [options.enabled=true] The IntersectionObserver options\n * @param {boolean} [options.box] The IntersectionObserver options\n * @param {(entries: ResizeObserverEntry[], observer: ResizeObserver) => void} [options.onChange] The callback to execute when resize is detected\n * @returns {UseResizeObserverReturn} An object containing the resize observer state\n *\n * @example\n * const { entries } = useResizeObserver(ref);\n */\nexport const useResizeObserver = ((...params: any[]) => {\n const target = (\n typeof params[0] === 'object' && !('current' in params[0]) ? undefined : params[0]\n ) as UseResizeObserverTarget | UseResizeObserverTarget[] | undefined;\n const options = (target ? params[1] : params[0]) as UseResizeObserverOptions | undefined;\n const enabled = options?.enabled ?? true;\n\n const [entries, setEntries] = useState<ResizeObserverEntry[]>([]);\n\n const [internalRef, setInternalRef] = useState<Element>();\n const internalOnChangeRef = useRef<UseResizeObserverOptions['onChange']>();\n internalOnChangeRef.current = options?.onChange;\n\n useEffect(() => {\n if (!enabled && !target && !internalRef) return;\n\n if (Array.isArray(target)) {\n if (!target.length) return;\n const observer = new ResizeObserver((entries) => {\n setEntries(entries);\n internalOnChangeRef.current?.(entries, observer);\n });\n\n target.forEach((target) => {\n const element = getElement(target);\n if (!element) return;\n observer.observe(element as Element, options);\n });\n\n return () => {\n observer.disconnect();\n };\n }\n\n const element = target ? getElement(target) : internalRef;\n if (!element) return;\n\n const observer = new ResizeObserver((entries) => {\n setEntries(entries);\n internalOnChangeRef.current?.(entries, observer);\n });\n observer.observe(element as Element, options);\n\n return () => {\n observer.disconnect();\n };\n }, [internalRef, target, options?.box, enabled]);\n\n if (target) return { entries };\n return {\n ref: setInternalRef,\n entries\n };\n}) as UseResizeObserver;\n"],"names":["useResizeObserver","_options$enabled","target","_typeof","arguments","length","undefined","options","enabled","_useState","useState","_useState2","_slicedToArray","entries","setEntries","_useState3","_useState4","internalRef","setInternalRef","internalOnChangeRef","useRef","current","onChange","useEffect","Array","isArray","observer","ResizeObserver","_internalOnChangeRef$","call","forEach","element","getElement","observe","disconnect","_internalOnChangeRef$2","box","ref"],"mappings":";8OA4DaA,EAAqB,WAAsB,IAAAC,EAChDC,EACiB,WAArBC,EAAAC,UAAAC,QAAA,OAAAC,EAAAF,UAAqB,KAAc,YAASA,UAAAC,eAAAC,EAAAF,UAAA,IAA0BA,UAAAC,QAAA,OAAAC,EAAAF,UACJ,QADLE,EAEzDC,EAAWL,EAAME,UAAAC,QAAAC,OAAAA,EAAAF,UAAA,GAAAA,UAAAC,eAAAC,EAAAF,UAAiE,GAClFI,EAA0BP,QAAnBA,EAAGM,aAAO,EAAPA,EAASC,eAAOP,IAAAA,GAAAA,EAEhCQ,EAA8BC,EAAgC,IAAGC,EAAAC,EAAAH,EAAA,GAA1DI,EAAOF,EAAA,GAAEG,EAAUH,EAAA,GAE1BI,EAAsCL,IAAmBM,EAAAJ,EAAAG,EAAA,GAAlDE,EAAWD,EAAA,GAAEE,EAAcF,EAAA,GAC5BG,EAAsBC,IAsC5B,OArCAD,EAAoBE,QAAUd,aAAO,EAAPA,EAASe,SAEvCC,GAAU,WACR,GAAKf,GAAYN,GAAWe,EAA5B,CAEA,GAAIO,MAAMC,QAAQvB,GAAS,CACzB,IAAKA,EAAOG,OAAQ,OACpB,IAAMqB,EAAW,IAAIC,gBAAe,SAACd,GAAY,IAAAe,EAC/Cd,EAAWD,WACXe,EAAAT,EAAoBE,eAAO,IAAAO,GAA3BA,EAAAC,KAAAV,EAA8BN,EAASa,EACzC,IAQA,OANAxB,EAAO4B,SAAQ,SAAC5B,GACd,IAAM6B,EAAUC,EAAW9B,GACtB6B,GACLL,EAASO,QAAQF,EAAoBxB,EACvC,IAEO,WACLmB,EAASQ,aAEb,CAEA,IAAMH,EAAU7B,EAAS8B,EAAW9B,GAAUe,EAC9C,GAAKc,EAAL,CAEA,IAAML,EAAW,IAAIC,gBAAe,SAACd,GAAY,IAAAsB,EAC/CrB,EAAWD,WACXsB,EAAAhB,EAAoBE,eAAO,IAAAc,GAA3BA,EAAAN,KAAAV,EAA8BN,EAASa,EACzC,IAGA,OAFAA,EAASO,QAAQF,EAAoBxB,GAE9B,WACLmB,EAASQ,aATG,CArB2B,CAgC1C,GAAE,CAACjB,EAAaf,EAAQK,aAAO,EAAPA,EAAS6B,IAAK5B,IAEnCN,EAAe,CAAEW,QAAAA,GACd,CACLwB,IAAKnB,EACLL,QAAAA,EAEJ"}
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.60 */
2
- import{_ as r}from"../../_rollupPluginBabelHelpers-BdfjLHhW.js";import{useState as t,useEffect as e}from"react";var n="script-status",o=function(o){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},u=t((function(){var r=document.querySelector('script[src="'.concat(o,'"]')),t=null==r?void 0:r.getAttribute(n);return t||(r?"unknown":"loading")})),c=r(u,2),a=c[0],s=c[1],d=i.removeOnUnmount,v=void 0===d||d,l=i.async,m=void 0===l||l;return e((function(){var t=document.querySelector('script[src="'.concat(o,'"]')),e=null==t?void 0:t.getAttribute(n);if(e)return s(e);if(t)return s("unknown");var u=document.createElement("script");u.src=o,u.async=m;for(var c=0,a=Object.entries(i);c<a.length;c++){var d=r(a[c],2),l=d[0],f=d[1];u.setAttribute(l,String(f))}u.setAttribute(n,"loading"),document.body.appendChild(u);var p=function(){u.setAttribute(n,"ready"),s("ready")},b=function(){u.setAttribute(n,"error"),s("error")};return u.addEventListener("load",p),u.addEventListener("error",b),function(){v&&u.remove(),u.removeEventListener("load",p),u.removeEventListener("error",b)}}),[o,v]),a};export{n as SCRIPT_STATUS_ATTRIBUTE_NAME,o as useScript};
1
+ /* @license @siberiacancode/reactuse v0.0.62 */
2
+ import{_ as r}from"../../_rollupPluginBabelHelpers-BWkML700.js";import{useState as t,useEffect as e}from"react";var n="script-status",o=function(o){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},u=t((function(){var r=document.querySelector('script[src="'.concat(o,'"]')),t=null==r?void 0:r.getAttribute(n);return t||(r?"unknown":"loading")})),c=r(u,2),a=c[0],s=c[1],d=i.removeOnUnmount,v=void 0===d||d,l=i.async,m=void 0===l||l;return e((function(){var t=document.querySelector('script[src="'.concat(o,'"]')),e=null==t?void 0:t.getAttribute(n);if(e)return s(e);if(t)return s("unknown");var u=document.createElement("script");u.src=o,u.async=m;for(var c=0,a=Object.entries(i);c<a.length;c++){var d=r(a[c],2),l=d[0],f=d[1];u.setAttribute(l,String(f))}u.setAttribute(n,"loading"),document.body.appendChild(u);var p=function(){u.setAttribute(n,"ready"),s("ready")},b=function(){u.setAttribute(n,"error"),s("error")};return u.addEventListener("load",p),u.addEventListener("error",b),function(){v&&u.remove(),u.removeEventListener("load",p),u.removeEventListener("error",b)}}),[o,v]),a};export{n as SCRIPT_STATUS_ATTRIBUTE_NAME,o as useScript};
3
3
  //# sourceMappingURL=useScript.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.60 */
2
- import{b as o}from"../../_rollupPluginBabelHelpers-BdfjLHhW.js";import{useStorage as e}from"../useStorage/useStorage.js";import"react";import"../../utils/helpers/isClient.js";import"../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js";var r=function(r,t,s){return e(r,o({initialValue:t,storage:window.sessionStorage},s))};export{r as useSessionStorage};
1
+ /* @license @siberiacancode/reactuse v0.0.62 */
2
+ import{b as o}from"../../_rollupPluginBabelHelpers-BWkML700.js";import{useStorage as e}from"../useStorage/useStorage.js";import"react";import"../../utils/helpers/isClient.js";import"../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js";var r=function(r,t,s){return e(r,o({initialValue:t,storage:window.sessionStorage},s))};export{r as useSessionStorage};
3
3
  //# sourceMappingURL=useSessionStorage.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.60 */
2
- import{_ as e}from"../../_rollupPluginBabelHelpers-BdfjLHhW.js";import{useState as n}from"react";var r=function(r){var t=n(new Set(r)),u=e(t,2),i=u[0],f=u[1];return{value:i,size:i.size,has:function(e){return i.has(e)},add:function(e){return f((function(n){return new Set(n).add(e)}))},remove:function(e){return f((function(n){if(!n.has(e))return n;var r=new Set(n);return r.delete(e),r}))},clear:function(){return f(new Set)},reset:function(){return f(new Set(r))},toggle:function(e){return f((function(n){if(!n.has(e))return new Set(n).add(e);var r=new Set(n);return r.delete(e),r}))},union:function(e){return f(i.union(e))},difference:function(e){return f(i.difference(e))},symmetricDifference:function(e){return f(i.symmetricDifference(e))},intersection:function(e){return f(i.intersection(e))}}};export{r as useSet};
1
+ /* @license @siberiacancode/reactuse v0.0.62 */
2
+ import{_ as e}from"../../_rollupPluginBabelHelpers-BWkML700.js";import{useState as n}from"react";var r=function(r){var t=n(new Set(r)),u=e(t,2),i=u[0],f=u[1];return{value:i,size:i.size,has:function(e){return i.has(e)},add:function(e){return f((function(n){return new Set(n).add(e)}))},remove:function(e){return f((function(n){if(!n.has(e))return n;var r=new Set(n);return r.delete(e),r}))},clear:function(){return f(new Set)},reset:function(){return f(new Set(r))},toggle:function(e){return f((function(n){if(!n.has(e))return new Set(n).add(e);var r=new Set(n);return r.delete(e),r}))},union:function(e){return f(i.union(e))},difference:function(e){return f(i.difference(e))},symmetricDifference:function(e){return f(i.symmetricDifference(e))},intersection:function(e){return f(i.intersection(e))}}};export{r as useSet};
3
3
  //# sourceMappingURL=useSet.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.60 */
2
- import{d as r,e as a,b as e}from"../../_rollupPluginBabelHelpers-BdfjLHhW.js";var n=function(n){var t=navigator&&"share"in navigator,s=function(){var s=r(a().mark((function r(s){var i;return a().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:if(t){r.next=2;break}return r.abrupt("return");case 2:return(i=e(e({},n),s)).files&&navigator.canShare({files:i.files})&&navigator.share(i),r.abrupt("return",navigator.share(i));case 5:case"end":return r.stop()}}),r)})));return function(r){return s.apply(this,arguments)}}();return{share:s,supported:t}};export{n as useShare};
1
+ /* @license @siberiacancode/reactuse v0.0.62 */
2
+ import{d as r,e as a,b as e}from"../../_rollupPluginBabelHelpers-BWkML700.js";var n=function(n){var t=navigator&&"share"in navigator,s=function(){var s=r(a().mark((function r(s){var i;return a().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:if(t){r.next=2;break}return r.abrupt("return");case 2:return(i=e(e({},n),s)).files&&navigator.canShare({files:i.files})&&navigator.share(i),r.abrupt("return",navigator.share(i));case 5:case"end":return r.stop()}}),r)})));return function(r){return s.apply(this,arguments)}}();return{share:s,supported:t}};export{n as useShare};
3
3
  //# sourceMappingURL=useShare.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.60 */
2
- import{c as t,_ as r}from"../../_rollupPluginBabelHelpers-BdfjLHhW.js";import{useRef as n,useState as e}from"react";var i=function(i){var u="object"===t(i)?i.max:i,o="object"===t(i)?i.initial:1,c=n(o>u||o<1?1:o),s=e(o),a=r(s,2),f=a[0],l=a[1],p=1===f,m=f===u;return{counts:u,currentStep:f,isFirst:p,isLast:m,next:function(){m||l((function(t){return t+1}))},back:function(){p||l((function(t){return t-1}))},reset:function(){return l(c.current)},set:function(t){return"first"===t?l(c.current):"last"===t||t>=u?l(u):t<=1?l(1):void l(t)}}};export{i as useStep};
1
+ /* @license @siberiacancode/reactuse v0.0.62 */
2
+ import{c as t,_ as r}from"../../_rollupPluginBabelHelpers-BWkML700.js";import{useRef as n,useState as e}from"react";var i=function(i){var u="object"===t(i)?i.max:i,o="object"===t(i)?i.initial:1,c=n(o>u||o<1?1:o),s=e(o),a=r(s,2),f=a[0],l=a[1],p=1===f,m=f===u;return{counts:u,currentStep:f,isFirst:p,isLast:m,next:function(){m||l((function(t){return t+1}))},back:function(){p||l((function(t){return t-1}))},reset:function(){return l(c.current)},set:function(t){return"first"===t?l(c.current):"last"===t||t>=u?l(u):t<=1?l(1):void l(t)}}};export{i as useStep};
3
3
  //# sourceMappingURL=useStep.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.60 */
2
- import{_ as n,b as t}from"../../_rollupPluginBabelHelpers-BdfjLHhW.js";import{useState as r,useEffect as o}from"react";import"../../utils/helpers/isClient.js";import{useEvent as e}from"../useEvent/useEvent.js";import"../../index-Iv79yzFW.js";import"react-dom";var u=function(n){return n?{days:Math.floor(n/86400),hours:Math.floor(n%86400/3600),minutes:Math.floor(n%3600/60),seconds:Math.floor(n%60),count:n}:{days:0,hours:0,minutes:0,seconds:0,count:0}},s=function(){for(var s,i,c=arguments.length,a=new Array(c),l=0;l<c;l++)a[l]=arguments[l];var f=null!==(s="number"==typeof a[0]?a[0]:null===(i=a[0])||void 0===i?void 0:i.initialTime)&&void 0!==s?s:0,d="number"==typeof a[0]?a[1]:a[0],m=r(u(f)),p=n(m,2),v=p[0],h=p[1],y=r(!(null!=d&&d.enabled)),b=n(y,2),g=b[0],j=b[1],M=e((function(){var n=v.count+1;return n%60==0?h(t(t({},v),{},{minutes:v.minutes+1,seconds:0,count:n})):n%3600==0?h(t(t({},v),{},{hours:v.hours+1,minutes:0,seconds:0,count:n})):n%86400==0?h(t(t({},v),{},{days:v.days+1,hours:0,minutes:0,seconds:0,count:n})):void h(t(t({},v),{},{seconds:v.seconds+1,count:n}))}));return o((function(){if(!g){var n=setInterval((function(){return M()}),1e3);return function(){return clearInterval(n)}}}),[g]),t(t({},v),{},{paused:g,pause:function(){return j(!0)},start:function(){return j(!1)},reset:function(){return h(u(f))},toggle:function(){return j((function(n){return!n}))}})};export{s as useStopwatch};
1
+ /* @license @siberiacancode/reactuse v0.0.62 */
2
+ import{_ as n,b as t}from"../../_rollupPluginBabelHelpers-BWkML700.js";import{useState as r,useEffect as o}from"react";import"../../utils/helpers/isClient.js";import{useEvent as e}from"../useEvent/useEvent.js";import"../../index-BMDqbrm3.js";import"react-dom";var u=function(n){return n?{days:Math.floor(n/86400),hours:Math.floor(n%86400/3600),minutes:Math.floor(n%3600/60),seconds:Math.floor(n%60),count:n}:{days:0,hours:0,minutes:0,seconds:0,count:0}},s=function(){for(var s,i,c=arguments.length,a=new Array(c),l=0;l<c;l++)a[l]=arguments[l];var f=null!==(s="number"==typeof a[0]?a[0]:null===(i=a[0])||void 0===i?void 0:i.initialTime)&&void 0!==s?s:0,d="number"==typeof a[0]?a[1]:a[0],m=r(u(f)),p=n(m,2),v=p[0],h=p[1],y=r(!(null!=d&&d.enabled)),b=n(y,2),g=b[0],j=b[1],M=e((function(){var n=v.count+1;return n%60==0?h(t(t({},v),{},{minutes:v.minutes+1,seconds:0,count:n})):n%3600==0?h(t(t({},v),{},{hours:v.hours+1,minutes:0,seconds:0,count:n})):n%86400==0?h(t(t({},v),{},{days:v.days+1,hours:0,minutes:0,seconds:0,count:n})):void h(t(t({},v),{},{seconds:v.seconds+1,count:n}))}));return o((function(){if(!g){var n=setInterval((function(){return M()}),1e3);return function(){return clearInterval(n)}}}),[g]),t(t({},v),{},{paused:g,pause:function(){return j(!0)},start:function(){return j(!1)},reset:function(){return h(u(f))},toggle:function(){return j((function(n){return!n}))}})};export{s as useStopwatch};
3
3
  //# sourceMappingURL=useStopwatch.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.60 */
2
- import{c as e}from"../../_rollupPluginBabelHelpers-BdfjLHhW.js";import{useSyncExternalStore as n}from"react";import{isClient as t}from"../../utils/helpers/isClient.js";import{useIsomorphicLayoutEffect as r}from"../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js";var o=function(e){return window.dispatchEvent(new StorageEvent("storage",e))},i=function(e,n,t){var r=e.getItem(n);e.setItem(n,t),o({key:n,oldValue:r,newValue:t,storageArea:e})},u=function(e,n){var t=e.getItem(n);e.removeItem(n),o({key:n,oldValue:t,newValue:null,storageArea:e})},a=function(e,n){var t=e.getItem(n);if(t)return t},l=function(e){return window.addEventListener("storage",e),function(){return window.removeEventListener("storage",e)}},s=function(){},f=function(o,f){var c,v="object"===e(f)?f:void 0,d=v?null==v?void 0:v.initialValue:f,m=null!==(c=null==v?void 0:v.storage)&&void 0!==c?c:window.localStorage,g=function(e){return null!=v&&v.serializer?v.serializer(e):JSON.stringify(e)},p=n(l,(function(){return a(m,o)}),s),w=function(e){if(null===e)return u(m,o);i(m,o,g(e))};r((function(){void 0===a(m,o)&&void 0!==d&&i(m,o,g(d instanceof Function?d():d))}),[o]);var I=function(){return u(m,o)};return t?{value:p?function(e){if(null!=v&&v.deserializer)return v.deserializer(e);if("undefined"!==e)try{return JSON.parse(e)}catch(n){return e}}(p):void 0,set:w,remove:I}:{value:d instanceof Function?d():d,set:w,remove:I}};export{o as dispatchStorageEvent,f as useStorage};
1
+ /* @license @siberiacancode/reactuse v0.0.62 */
2
+ import{c as e}from"../../_rollupPluginBabelHelpers-BWkML700.js";import{useSyncExternalStore as n}from"react";import{isClient as t}from"../../utils/helpers/isClient.js";import{useIsomorphicLayoutEffect as r}from"../useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js";var o=function(e){return window.dispatchEvent(new StorageEvent("storage",e))},i=function(e,n,t){var r=e.getItem(n);e.setItem(n,t),o({key:n,oldValue:r,newValue:t,storageArea:e})},u=function(e,n){var t=e.getItem(n);e.removeItem(n),o({key:n,oldValue:t,newValue:null,storageArea:e})},a=function(e,n){var t=e.getItem(n);if(t)return t},l=function(e){return window.addEventListener("storage",e),function(){return window.removeEventListener("storage",e)}},s=function(){},f=function(o,f){var c,v="object"===e(f)?f:void 0,d=v?null==v?void 0:v.initialValue:f,m=null!==(c=null==v?void 0:v.storage)&&void 0!==c?c:window.localStorage,g=function(e){return null!=v&&v.serializer?v.serializer(e):JSON.stringify(e)},p=n(l,(function(){return a(m,o)}),s),w=function(e){if(null===e)return u(m,o);i(m,o,g(e))};r((function(){void 0===a(m,o)&&void 0!==d&&i(m,o,g(d instanceof Function?d():d))}),[o]);var I=function(){return u(m,o)};return t?{value:p?function(e){if(null!=v&&v.deserializer)return v.deserializer(e);if("undefined"!==e)try{return JSON.parse(e)}catch(n){return e}}(p):void 0,set:w,remove:I}:{value:d instanceof Function?d():d,set:w,remove:I}};export{o as dispatchStorageEvent,f as useStorage};
3
3
  //# sourceMappingURL=useStorage.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.60 */
2
- import{_ as e}from"../../_rollupPluginBabelHelpers-BdfjLHhW.js";import{useState as n,useEffect as t}from"react";import{isClient as r}from"../../utils/helpers/isClient.js";import{useRerender as o}from"../useRerender/useRerender.js";var u=function(e){var n,t=null!==(n=e.rangeCount)&&void 0!==n?n:0;return Array.from({length:t},(function(n,t){return e.getRangeAt(t)}))},i=function(){var i,l=o(),c=n(r?document.getSelection():null),a=e(c,2),s=a[0],m=a[1];t((function(){var e=function(){m(document.getSelection()),l.update()};return document.addEventListener("selectionchange",e),function(){return document.removeEventListener("selectionchange",e)}}),[]);var d=null!==(i=null==s?void 0:s.toString())&&void 0!==i?i:"",g=s?u(s):[],f=g.map((function(e){return e.getBoundingClientRect()}));return{text:d,ranges:g,rects:f,selection:s}};export{u as getRangesSelection,i as useTextSelection};
1
+ /* @license @siberiacancode/reactuse v0.0.62 */
2
+ import{_ as e}from"../../_rollupPluginBabelHelpers-BWkML700.js";import{useState as n,useEffect as t}from"react";import{isClient as r}from"../../utils/helpers/isClient.js";import{useRerender as o}from"../useRerender/useRerender.js";var u=function(e){var n,t=null!==(n=e.rangeCount)&&void 0!==n?n:0;return Array.from({length:t},(function(n,t){return e.getRangeAt(t)}))},i=function(){var i,l=o(),c=n(r?document.getSelection():null),a=e(c,2),s=a[0],m=a[1];t((function(){var e=function(){m(document.getSelection()),l.update()};return document.addEventListener("selectionchange",e),function(){return document.removeEventListener("selectionchange",e)}}),[]);var d=null!==(i=null==s?void 0:s.toString())&&void 0!==i?i:"",g=s?u(s):[],f=g.map((function(e){return e.getBoundingClientRect()}));return{text:d,ranges:g,rects:f,selection:s}};export{u as getRangesSelection,i as useTextSelection};
3
3
  //# sourceMappingURL=useTextSelection.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.60 */
2
- import{_ as e}from"../../_rollupPluginBabelHelpers-BdfjLHhW.js";import{useState as r}from"react";import"../../utils/helpers/isClient.js";import{getDate as t}from"../../utils/helpers/time/getDate.js";import{useInterval as s}from"../useInterval/useInterval.js";import"../useEvent/useEvent.js";var i=function(){var i=r(t()),o=e(i,2),l=o[0],n=o[1];return s((function(){return n(t())}),1e3),l};export{i as useTime};
1
+ /* @license @siberiacancode/reactuse v0.0.62 */
2
+ import{_ as e}from"../../_rollupPluginBabelHelpers-BWkML700.js";import{useState as r}from"react";import"../../utils/helpers/isClient.js";import{getDate as t}from"../../utils/helpers/time/getDate.js";import{useInterval as s}from"../useInterval/useInterval.js";import"../useEvent/useEvent.js";var i=function(){var i=r(t()),o=e(i,2),l=o[0],n=o[1];return s((function(){return n(t())}),1e3),l};export{i as useTime};
3
3
  //# sourceMappingURL=useTime.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.60 */
2
- import{_ as r}from"../../_rollupPluginBabelHelpers-BdfjLHhW.js";import{useState as e,useRef as t,useEffect as n}from"react";import{useEvent as u}from"../useEvent/useEvent.js";function o(o,c){var i=e(!1),m=r(i,2),a=m[0],f=m[1],l=t(),s=u(o);n((function(){return l.current=setTimeout((function(){s(),f(!0)}),c),function(){clearTimeout(l.current)}}),[c]);return{ready:a,clear:function(){clearTimeout(l.current),f(!0)}}}export{o as useTimeout};
1
+ /* @license @siberiacancode/reactuse v0.0.62 */
2
+ import{_ as r}from"../../_rollupPluginBabelHelpers-BWkML700.js";import{useState as e,useRef as t,useEffect as n}from"react";import{useEvent as u}from"../useEvent/useEvent.js";function o(o,c){var i=e(!1),m=r(i,2),a=m[0],f=m[1],l=t(),s=u(o);n((function(){return l.current=setTimeout((function(){s(),f(!0)}),c),function(){clearTimeout(l.current)}}),[c]);return{ready:a,clear:function(){clearTimeout(l.current),f(!0)}}}export{o as useTimeout};
3
3
  //# sourceMappingURL=useTimeout.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.60 */
2
- import{_ as r}from"../../_rollupPluginBabelHelpers-BdfjLHhW.js";import{useReducer as n}from"react";var t=function(){var t=n((function(r,n){var t=n instanceof Function?n(r[0]):n,e=Math.abs(r.indexOf(t));return r.slice(e).concat(r.slice(0,e))}),arguments.length>0&&void 0!==arguments[0]?arguments[0]:[!1,!0]),e=r(t,2);return[r(e[0],1)[0],e[1]]};export{t as useToggle};
1
+ /* @license @siberiacancode/reactuse v0.0.62 */
2
+ import{_ as r}from"../../_rollupPluginBabelHelpers-BWkML700.js";import{useReducer as n}from"react";var t=function(){var t=n((function(r,n){var t=n instanceof Function?n(r[0]):n,e=Math.abs(r.indexOf(t));return r.slice(e).concat(r.slice(0,e))}),arguments.length>0&&void 0!==arguments[0]?arguments[0]:[!1,!0]),e=r(t,2);return[r(e[0],1)[0],e[1]]};export{t as useToggle};
3
3
  //# sourceMappingURL=useToggle.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.60 */
1
+ /* @license @siberiacancode/reactuse v0.0.62 */
2
2
  import{useRef as r,useEffect as n}from"react";var t=function(t){var c=r(t);c.current=t,n((function(){return function(){c.current()}}),[])};export{t as useUnmount};
3
3
  //# sourceMappingURL=useUnmount.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.60 */
2
- import{_ as n}from"../../_rollupPluginBabelHelpers-BdfjLHhW.js";import{useRef as r,useState as e,useEffect as o}from"react";import{getRetry as t}from"../../utils/helpers/getRetry.js";import"../../utils/helpers/isClient.js";import{useEvent as l}from"../useEvent/useEvent.js";var u=function(u,c){var i=r(),s=r(null!=c&&c.retry?t(c.retry):0),v=r(!1),a=e("connecting"),d=n(a,2),f=d[0],p=d[1],m=l((function(){i.current=new WebSocket("function"==typeof u?u():u,null==c?void 0:c.protocols),p("connecting");var n=i.current;n&&(n.onopen=function(){var r;p("connected"),null==c||null===(r=c.onConnected)||void 0===r||r.call(c,n)},n.onerror=function(r){var e;p("failed"),null==c||null===(e=c.onError)||void 0===e||e.call(c,r,n)},n.onmessage=function(r){var e;return null==c||null===(e=c.onMessage)||void 0===e?void 0:e.call(c,r,n)},n.onclose=function(r){var e;if(p("disconnected"),null==c||null===(e=c.onDisconnected)||void 0===e||e.call(c,r,n),!v.current)return s.current>0?(s.current-=1,m()):void(s.current=null!=c&&c.retry?t(c.retry):0)})}));o((function(){return m(),function(){i.current&&(i.current.close(),i.current=void 0)}}),[u]);return{client:i.current,close:function(){var n;v.current=!0,null===(n=i.current)||void 0===n||n.close()},open:function(){v.current=!1,m()},send:function(n){var r;return null===(r=i.current)||void 0===r?void 0:r.send(n)},status:f}};export{u as useWebSocket};
1
+ /* @license @siberiacancode/reactuse v0.0.62 */
2
+ import{_ as n}from"../../_rollupPluginBabelHelpers-BWkML700.js";import{useRef as r,useState as e,useEffect as o}from"react";import{getRetry as t}from"../../utils/helpers/getRetry.js";import"../../utils/helpers/isClient.js";import{useEvent as l}from"../useEvent/useEvent.js";var u=function(u,c){var i=r(),s=r(null!=c&&c.retry?t(c.retry):0),v=r(!1),a=e("connecting"),d=n(a,2),f=d[0],p=d[1],m=l((function(){i.current=new WebSocket("function"==typeof u?u():u,null==c?void 0:c.protocols),p("connecting");var n=i.current;n&&(n.onopen=function(){var r;p("connected"),null==c||null===(r=c.onConnected)||void 0===r||r.call(c,n)},n.onerror=function(r){var e;p("failed"),null==c||null===(e=c.onError)||void 0===e||e.call(c,r,n)},n.onmessage=function(r){var e;return null==c||null===(e=c.onMessage)||void 0===e?void 0:e.call(c,r,n)},n.onclose=function(r){var e;if(p("disconnected"),null==c||null===(e=c.onDisconnected)||void 0===e||e.call(c,r,n),!v.current)return s.current>0?(s.current-=1,m()):void(s.current=null!=c&&c.retry?t(c.retry):0)})}));o((function(){return m(),function(){i.current&&(i.current.close(),i.current=void 0)}}),[u]);return{client:i.current,close:function(){var n;v.current=!0,null===(n=i.current)||void 0===n||n.close()},open:function(){v.current=!1,m()},send:function(n){var r;return null===(r=i.current)||void 0===r?void 0:r.send(n)},status:f}};export{u as useWebSocket};
3
3
  //# sourceMappingURL=useWebSocket.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.60 */
2
- import{useEventListener as e}from"../useEventListener/useEventListener.js";import"../../_rollupPluginBabelHelpers-BdfjLHhW.js";import"react";import"../../utils/helpers/getElement.js";import"../../utils/helpers/isClient.js";import"../useEvent/useEvent.js";var t=function(t,r,s){return e(window,t,r,s)};export{t as useWindowEvent};
1
+ /* @license @siberiacancode/reactuse v0.0.62 */
2
+ import{useEventListener as e}from"../useEventListener/useEventListener.js";import"../../_rollupPluginBabelHelpers-BWkML700.js";import"react";import"../../utils/helpers/getElement.js";import"../../utils/helpers/isClient.js";import"../useEvent/useEvent.js";var t=function(t,r,s){return e(window,t,r,s)};export{t as useWindowEvent};
3
3
  //# sourceMappingURL=useWindowEvent.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.60 */
2
- import{_ as r}from"../../_rollupPluginBabelHelpers-BdfjLHhW.js";import{useState as o,useEffect as e}from"react";import{isClient as n}from"../../utils/helpers/isClient.js";var i=function(r){var o=r.x,e=r.y,n=r.behavior,i={behavior:void 0===n?"smooth":n};"number"==typeof o&&(i.left=o),"number"==typeof e&&(i.top=e),window.scrollTo(i)},t=function(){var t=o({x:n?window.scrollX:Number.POSITIVE_INFINITY,y:n?window.scrollY:Number.POSITIVE_INFINITY}),l=r(t,2),s=l[0],w=l[1];return e((function(){var r=function(){return w({x:window.scrollX,y:window.scrollY})};return window.addEventListener("scroll",r),window.addEventListener("resize",r),function(){window.removeEventListener("scroll",r),window.removeEventListener("resize",r)}}),[]),{value:s,scrollTo:i}};export{i as scrollTo,t as useWindowScroll};
1
+ /* @license @siberiacancode/reactuse v0.0.62 */
2
+ import{_ as r}from"../../_rollupPluginBabelHelpers-BWkML700.js";import{useState as o,useEffect as e}from"react";import{isClient as n}from"../../utils/helpers/isClient.js";var i=function(r){var o=r.x,e=r.y,n=r.behavior,i={behavior:void 0===n?"smooth":n};"number"==typeof o&&(i.left=o),"number"==typeof e&&(i.top=e),window.scrollTo(i)},t=function(){var t=o({x:n?window.scrollX:Number.POSITIVE_INFINITY,y:n?window.scrollY:Number.POSITIVE_INFINITY}),l=r(t,2),s=l[0],w=l[1];return e((function(){var r=function(){return w({x:window.scrollX,y:window.scrollY})};return window.addEventListener("scroll",r),window.addEventListener("resize",r),function(){window.removeEventListener("scroll",r),window.removeEventListener("resize",r)}}),[]),{value:s,scrollTo:i}};export{i as scrollTo,t as useWindowScroll};
3
3
  //# sourceMappingURL=useWindowScroll.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.60 */
2
- import{_ as e}from"../../_rollupPluginBabelHelpers-BdfjLHhW.js";import{useState as n,useEffect as i}from"react";import{isClient as t}from"../../utils/helpers/isClient.js";var o=function(o){var r,d=null===(r=null==o?void 0:o.includeScrollbar)||void 0===r||r,l=n((function(){return t?{width:d?window.innerWidth:window.document.documentElement.clientWidth,height:d?window.innerHeight:window.document.documentElement.clientHeight}:{width:Number.POSITIVE_INFINITY,height:Number.POSITIVE_INFINITY}})),u=e(l,2),w=u[0],c=u[1];return i((function(){var e=function(){c(d?{width:window.innerWidth,height:window.innerHeight}:{width:window.document.documentElement.clientWidth,height:window.document.documentElement.clientHeight})};return window.addEventListener("resize",e),function(){window.removeEventListener("resize",e)}}),[null==o?void 0:o.includeScrollbar]),w};export{o as useWindowSize};
1
+ /* @license @siberiacancode/reactuse v0.0.62 */
2
+ import{_ as e}from"../../_rollupPluginBabelHelpers-BWkML700.js";import{useState as n,useEffect as i}from"react";import{isClient as t}from"../../utils/helpers/isClient.js";var o=function(o){var r,d=null===(r=null==o?void 0:o.includeScrollbar)||void 0===r||r,l=n((function(){return t?{width:d?window.innerWidth:window.document.documentElement.clientWidth,height:d?window.innerHeight:window.document.documentElement.clientHeight}:{width:Number.POSITIVE_INFINITY,height:Number.POSITIVE_INFINITY}})),u=e(l,2),w=u[0],c=u[1];return i((function(){var e=function(){c(d?{width:window.innerWidth,height:window.innerHeight}:{width:window.document.documentElement.clientWidth,height:window.document.documentElement.clientHeight})};return window.addEventListener("resize",e),function(){window.removeEventListener("resize",e)}}),[null==o?void 0:o.includeScrollbar]),w};export{o as useWindowSize};
3
3
  //# sourceMappingURL=useWindowSize.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.60 */
2
- import{_ as n,a as o}from"../../_rollupPluginBabelHelpers-BdfjLHhW.js";import{useState as t}from"react";var r=function(r,e){var c=null!=e?e:r[0].id,i=new Map(r.map((function(n){return[n.id,n]}))),l=t(c),a=n(l,2),u=a[0],f=a[1],s=t([c]),d=n(s,2),v=d[0],g=d[1];return{currentStepId:u,set:function(n){var t;if(null===(t=i.get(u))||void 0===t||null===(t=t.nodes)||void 0===t||!t.includes(n))throw new Error("Can't go to ".concat(n," from ").concat(u));g([].concat(o(v),[n])),f(n)},reset:function(){f(c),g([c])},back:function(){var n;if(1!==v.length){var o=v[v.length-2];if(null===(n=i.get(u))||void 0===n||null===(n=n.nodes)||void 0===n||!n.includes(o))throw new Error("Can't go to ".concat(o," from ").concat(u));g(v.slice(0,-1)),f(v[v.length-2])}},history:v}};export{r as useWizard};
1
+ /* @license @siberiacancode/reactuse v0.0.62 */
2
+ import{_ as n,a as o}from"../../_rollupPluginBabelHelpers-BWkML700.js";import{useState as t}from"react";var r=function(r,e){var c=null!=e?e:r[0].id,i=new Map(r.map((function(n){return[n.id,n]}))),l=t(c),a=n(l,2),u=a[0],f=a[1],s=t([c]),d=n(s,2),v=d[0],g=d[1];return{currentStepId:u,set:function(n){var t;if(null===(t=i.get(u))||void 0===t||null===(t=t.nodes)||void 0===t||!t.includes(n))throw new Error("Can't go to ".concat(n," from ").concat(u));g([].concat(o(v),[n])),f(n)},reset:function(){f(c),g([c])},back:function(){var n;if(1!==v.length){var o=v[v.length-2];if(null===(n=i.get(u))||void 0===n||null===(n=n.nodes)||void 0===n||!n.includes(o))throw new Error("Can't go to ".concat(o," from ").concat(u));g(v.slice(0,-1)),f(v[v.length-2])}},history:v}};export{r as useWizard};
3
3
  //# sourceMappingURL=useWizard.js.map
@@ -1,3 +1,3 @@
1
- /* @license @siberiacancode/reactuse v0.0.60 */
1
+ /* @license @siberiacancode/reactuse v0.0.62 */
2
2
  const e=[["requestFullscreen","exitFullscreen","fullscreenElement","fullscreenEnabled","fullscreenchange","fullscreenerror"],["webkitRequestFullscreen","webkitExitFullscreen","webkitFullscreenElement","webkitFullscreenEnabled","webkitfullscreenchange","webkitfullscreenerror"],["webkitRequestFullScreen","webkitCancelFullScreen","webkitCurrentFullScreenElement","webkitCancelFullScreen","webkitfullscreenchange","webkitfullscreenerror"],["mozRequestFullScreen","mozCancelFullScreen","mozFullScreenElement","mozFullScreenEnabled","mozfullscreenchange","mozfullscreenerror"],["msRequestFullscreen","msExitFullscreen","msFullscreenElement","msFullscreenEnabled","MSFullscreenChange","MSFullscreenError"]],n=(()=>{if("undefined"==typeof document)return!1;const n=e[0],l={};for(const r of e){const e=r?.[1];if(e in document){for(const[e,c]of r.entries())l[n[e]]=c;return l}}return!1})(),l={change:n.fullscreenchange,error:n.fullscreenerror};let r={request:(e=document.documentElement,l)=>new Promise(((c,t)=>{const s=()=>{r.off("change",s),c()};r.on("change",s);const o=e[n.requestFullscreen](l);o instanceof Promise&&o.then(s).catch(t)})),exit:()=>new Promise(((e,l)=>{if(!r.isFullscreen)return void e();const c=()=>{r.off("change",c),e()};r.on("change",c);const t=document[n.exitFullscreen]();t instanceof Promise&&t.then(c).catch(l)})),toggle:(e,n)=>r.isFullscreen?r.exit():r.request(e,n),onchange(e){r.on("change",e)},onerror(e){r.on("error",e)},on(e,n){const r=l[e];r&&document.addEventListener(r,n,!1)},off(e,n){const r=l[e];r&&document.removeEventListener(r,n,!1)},raw:n};Object.defineProperties(r,{isFullscreen:{get:()=>Boolean(document[n.fullscreenElement])},element:{enumerable:!0,get:()=>document[n.fullscreenElement]??void 0},isEnabled:{enumerable:!0,get:()=>Boolean(document[n.fullscreenEnabled])}}),n||(r={isEnabled:!1});var c=r;export{c as s};
3
- //# sourceMappingURL=index-Iv79yzFW.js.map
3
+ //# sourceMappingURL=index-BMDqbrm3.js.map