@siberiacancode/reactuse 0.3.14 → 0.3.17
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.
- package/dist/cjs/_virtual/_rolldown/runtime.cjs +1 -0
- package/dist/cjs/helpers/createContext/createContext.cjs +2 -2
- package/dist/cjs/helpers/createContext/createContext.cjs.map +1 -1
- package/dist/cjs/helpers/createContextHook/createContextHook.cjs +2 -2
- package/dist/cjs/helpers/createContextHook/createContextHook.cjs.map +1 -1
- package/dist/cjs/helpers/createEventEmitter/createEventEmitter.cjs +2 -2
- package/dist/cjs/helpers/createEventEmitter/createEventEmitter.cjs.map +1 -1
- package/dist/cjs/helpers/createReactiveContext/createReactiveContext.cjs +2 -2
- package/dist/cjs/helpers/createReactiveContext/createReactiveContext.cjs.map +1 -1
- package/dist/cjs/helpers/createSharedHook/createSharedHook.cjs +2 -2
- package/dist/cjs/helpers/createSharedHook/createSharedHook.cjs.map +1 -1
- package/dist/cjs/helpers/createStore/createStore.cjs +2 -2
- package/dist/cjs/helpers/createStore/createStore.cjs.map +1 -1
- package/dist/cjs/helpers/makeDestructurable/makeDestructurable.cjs +2 -0
- package/dist/cjs/helpers/makeDestructurable/makeDestructurable.cjs.map +1 -0
- package/dist/cjs/hooks/useActiveElement/useActiveElement.cjs +2 -2
- package/dist/cjs/hooks/useActiveElement/useActiveElement.cjs.map +1 -1
- package/dist/cjs/hooks/useAsync/useAsync.cjs +2 -2
- package/dist/cjs/hooks/useAsync/useAsync.cjs.map +1 -1
- package/dist/cjs/hooks/useAsyncEffect/useAsyncEffect.cjs +2 -2
- package/dist/cjs/hooks/useAsyncEffect/useAsyncEffect.cjs.map +1 -1
- package/dist/cjs/hooks/useAudio/useAudio.cjs +2 -2
- package/dist/cjs/hooks/useAudio/useAudio.cjs.map +1 -1
- package/dist/cjs/hooks/useAutoScroll/useAutoScroll.cjs +2 -2
- package/dist/cjs/hooks/useAutoScroll/useAutoScroll.cjs.map +1 -1
- package/dist/cjs/hooks/useBatchedCallback/useBatchedCallback.cjs +2 -2
- package/dist/cjs/hooks/useBatchedCallback/useBatchedCallback.cjs.map +1 -1
- package/dist/cjs/hooks/useBattery/useBattery.cjs +2 -2
- package/dist/cjs/hooks/useBattery/useBattery.cjs.map +1 -1
- package/dist/cjs/hooks/useBluetooth/useBluetooth.cjs +2 -2
- package/dist/cjs/hooks/useBluetooth/useBluetooth.cjs.map +1 -1
- package/dist/cjs/hooks/useBoolean/useBoolean.cjs +2 -2
- package/dist/cjs/hooks/useBoolean/useBoolean.cjs.map +1 -1
- package/dist/cjs/hooks/useBreakpoints/useBreakpoints.cjs +2 -2
- package/dist/cjs/hooks/useBreakpoints/useBreakpoints.cjs.map +1 -1
- package/dist/cjs/hooks/useBroadcastChannel/useBroadcastChannel.cjs +2 -2
- package/dist/cjs/hooks/useBroadcastChannel/useBroadcastChannel.cjs.map +1 -1
- package/dist/cjs/hooks/useBrowserLanguage/useBrowserLanguage.cjs +2 -2
- package/dist/cjs/hooks/useBrowserLanguage/useBrowserLanguage.cjs.map +1 -1
- package/dist/cjs/hooks/useClickOutside/useClickOutside.cjs +2 -2
- package/dist/cjs/hooks/useClickOutside/useClickOutside.cjs.map +1 -1
- package/dist/cjs/hooks/useClipboard/useClipboard.cjs +2 -2
- package/dist/cjs/hooks/useClipboard/useClipboard.cjs.map +1 -1
- package/dist/cjs/hooks/useConst/useConst.cjs +2 -2
- package/dist/cjs/hooks/useConst/useConst.cjs.map +1 -1
- package/dist/cjs/hooks/useControllableState/useControllableState.cjs +2 -2
- package/dist/cjs/hooks/useControllableState/useControllableState.cjs.map +1 -1
- package/dist/cjs/hooks/useCookie/useCookie.cjs +2 -2
- package/dist/cjs/hooks/useCookie/useCookie.cjs.map +1 -1
- package/dist/cjs/hooks/useCookies/useCookies.cjs +2 -2
- package/dist/cjs/hooks/useCookies/useCookies.cjs.map +1 -1
- package/dist/cjs/hooks/useCopy/useCopy.cjs +2 -2
- package/dist/cjs/hooks/useCopy/useCopy.cjs.map +1 -1
- package/dist/cjs/hooks/useCounter/useCounter.cjs +2 -2
- package/dist/cjs/hooks/useCounter/useCounter.cjs.map +1 -1
- package/dist/cjs/hooks/useCssVar/useCssVar.cjs +2 -2
- package/dist/cjs/hooks/useCssVar/useCssVar.cjs.map +1 -1
- package/dist/cjs/hooks/useDebounceCallback/useDebounceCallback.cjs +2 -2
- package/dist/cjs/hooks/useDebounceCallback/useDebounceCallback.cjs.map +1 -1
- package/dist/cjs/hooks/useDebounceEffect/useDebounceEffect.cjs +2 -2
- package/dist/cjs/hooks/useDebounceEffect/useDebounceEffect.cjs.map +1 -1
- package/dist/cjs/hooks/useDebounceState/useDebounceState.cjs +2 -2
- package/dist/cjs/hooks/useDebounceState/useDebounceState.cjs.map +1 -1
- package/dist/cjs/hooks/useDebounceValue/useDebounceValue.cjs +2 -2
- package/dist/cjs/hooks/useDebounceValue/useDebounceValue.cjs.map +1 -1
- package/dist/cjs/hooks/useDefault/useDefault.cjs +2 -2
- package/dist/cjs/hooks/useDefault/useDefault.cjs.map +1 -1
- package/dist/cjs/hooks/useDeviceMotion/useDeviceMotion.cjs +2 -2
- package/dist/cjs/hooks/useDeviceMotion/useDeviceMotion.cjs.map +1 -1
- package/dist/cjs/hooks/useDeviceOrientation/useDeviceOrientation.cjs +2 -2
- package/dist/cjs/hooks/useDeviceOrientation/useDeviceOrientation.cjs.map +1 -1
- package/dist/cjs/hooks/useDevicePixelRatio/useDevicePixelRatio.cjs +2 -2
- package/dist/cjs/hooks/useDevicePixelRatio/useDevicePixelRatio.cjs.map +1 -1
- package/dist/cjs/hooks/useDidUpdate/useDidUpdate.cjs +2 -2
- package/dist/cjs/hooks/useDidUpdate/useDidUpdate.cjs.map +1 -1
- package/dist/cjs/hooks/useDisclosure/useDisclosure.cjs +2 -2
- package/dist/cjs/hooks/useDisclosure/useDisclosure.cjs.map +1 -1
- package/dist/cjs/hooks/useDisplayMedia/useDisplayMedia.cjs +2 -2
- package/dist/cjs/hooks/useDisplayMedia/useDisplayMedia.cjs.map +1 -1
- package/dist/cjs/hooks/useDocumentEvent/useDocumentEvent.cjs +2 -2
- package/dist/cjs/hooks/useDocumentEvent/useDocumentEvent.cjs.map +1 -1
- package/dist/cjs/hooks/useDocumentTitle/useDocumentTitle.cjs +2 -2
- package/dist/cjs/hooks/useDocumentTitle/useDocumentTitle.cjs.map +1 -1
- package/dist/cjs/hooks/useDocumentVisibility/useDocumentVisibility.cjs +2 -2
- package/dist/cjs/hooks/useDocumentVisibility/useDocumentVisibility.cjs.map +1 -1
- package/dist/cjs/hooks/useDoubleClick/useDoubleClick.cjs +2 -2
- package/dist/cjs/hooks/useDoubleClick/useDoubleClick.cjs.map +1 -1
- package/dist/cjs/hooks/useDropZone/useDropZone.cjs +2 -2
- package/dist/cjs/hooks/useDropZone/useDropZone.cjs.map +1 -1
- package/dist/cjs/hooks/useEvent/useEvent.cjs +2 -2
- package/dist/cjs/hooks/useEvent/useEvent.cjs.map +1 -1
- package/dist/cjs/hooks/useEventListener/useEventListener.cjs +2 -2
- package/dist/cjs/hooks/useEventListener/useEventListener.cjs.map +1 -1
- package/dist/cjs/hooks/useEventSource/useEventSource.cjs +2 -2
- package/dist/cjs/hooks/useEventSource/useEventSource.cjs.map +1 -1
- package/dist/cjs/hooks/useEyeDropper/useEyeDropper.cjs +2 -2
- package/dist/cjs/hooks/useEyeDropper/useEyeDropper.cjs.map +1 -1
- package/dist/cjs/hooks/useFavicon/useFavicon.cjs +2 -2
- package/dist/cjs/hooks/useFavicon/useFavicon.cjs.map +1 -1
- package/dist/cjs/hooks/useField/useField.cjs +2 -2
- package/dist/cjs/hooks/useField/useField.cjs.map +1 -1
- package/dist/cjs/hooks/useFileDialog/useFileDialog.cjs +2 -2
- package/dist/cjs/hooks/useFileDialog/useFileDialog.cjs.map +1 -1
- package/dist/cjs/hooks/useFileSystemAccess/useFileSystemAccess.cjs +2 -0
- package/dist/cjs/hooks/useFileSystemAccess/useFileSystemAccess.cjs.map +1 -0
- package/dist/cjs/hooks/useFocus/useFocus.cjs +2 -2
- package/dist/cjs/hooks/useFocus/useFocus.cjs.map +1 -1
- package/dist/cjs/hooks/useFocusTrap/useFocusTrap.cjs +2 -2
- package/dist/cjs/hooks/useFocusTrap/useFocusTrap.cjs.map +1 -1
- package/dist/cjs/hooks/useFps/useFps.cjs +2 -2
- package/dist/cjs/hooks/useFps/useFps.cjs.map +1 -1
- package/dist/cjs/hooks/useFul/useFul.cjs +2 -2
- package/dist/cjs/hooks/useFul/useFul.cjs.map +1 -1
- package/dist/cjs/hooks/useFullscreen/useFullscreen.cjs +2 -2
- package/dist/cjs/hooks/useFullscreen/useFullscreen.cjs.map +1 -1
- package/dist/cjs/hooks/useGamepad/useGamepad.cjs +2 -2
- package/dist/cjs/hooks/useGamepad/useGamepad.cjs.map +1 -1
- package/dist/cjs/hooks/useGeolocation/useGeolocation.cjs +2 -2
- package/dist/cjs/hooks/useGeolocation/useGeolocation.cjs.map +1 -1
- package/dist/cjs/hooks/useHash/useHash.cjs +2 -2
- package/dist/cjs/hooks/useHash/useHash.cjs.map +1 -1
- package/dist/cjs/hooks/useHotkeys/useHotkeys.cjs +2 -2
- package/dist/cjs/hooks/useHotkeys/useHotkeys.cjs.map +1 -1
- package/dist/cjs/hooks/useHover/useHover.cjs +2 -2
- package/dist/cjs/hooks/useHover/useHover.cjs.map +1 -1
- package/dist/cjs/hooks/useIdle/useIdle.cjs +2 -2
- package/dist/cjs/hooks/useIdle/useIdle.cjs.map +1 -1
- package/dist/cjs/hooks/useImage/useImage.cjs +2 -2
- package/dist/cjs/hooks/useImage/useImage.cjs.map +1 -1
- package/dist/cjs/hooks/useInfiniteScroll/useInfiniteScroll.cjs +2 -2
- package/dist/cjs/hooks/useInfiniteScroll/useInfiniteScroll.cjs.map +1 -1
- package/dist/cjs/hooks/useIntersectionObserver/useIntersectionObserver.cjs +2 -2
- package/dist/cjs/hooks/useIntersectionObserver/useIntersectionObserver.cjs.map +1 -1
- package/dist/cjs/hooks/useInterval/useInterval.cjs +2 -2
- package/dist/cjs/hooks/useInterval/useInterval.cjs.map +1 -1
- package/dist/cjs/hooks/useIsFirstRender/useIsFirstRender.cjs +2 -2
- package/dist/cjs/hooks/useIsFirstRender/useIsFirstRender.cjs.map +1 -1
- package/dist/cjs/hooks/useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.cjs +2 -2
- package/dist/cjs/hooks/useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.cjs.map +1 -1
- package/dist/cjs/hooks/useKeyPress/useKeyPress.cjs +2 -2
- package/dist/cjs/hooks/useKeyPress/useKeyPress.cjs.map +1 -1
- package/dist/cjs/hooks/useKeyPressEvent/useKeyPressEvent.cjs +2 -2
- package/dist/cjs/hooks/useKeyPressEvent/useKeyPressEvent.cjs.map +1 -1
- package/dist/cjs/hooks/useKeyboard/useKeyboard.cjs +2 -2
- package/dist/cjs/hooks/useKeyboard/useKeyboard.cjs.map +1 -1
- package/dist/cjs/hooks/useKeysPressed/useKeysPressed.cjs +2 -2
- package/dist/cjs/hooks/useKeysPressed/useKeysPressed.cjs.map +1 -1
- package/dist/cjs/hooks/useLastChanged/useLastChanged.cjs +2 -2
- package/dist/cjs/hooks/useLastChanged/useLastChanged.cjs.map +1 -1
- package/dist/cjs/hooks/useLatest/useLatest.cjs +2 -2
- package/dist/cjs/hooks/useLatest/useLatest.cjs.map +1 -1
- package/dist/cjs/hooks/useLess/useLess.cjs +2 -2
- package/dist/cjs/hooks/useLess/useLess.cjs.map +1 -1
- package/dist/cjs/hooks/useList/useList.cjs +2 -2
- package/dist/cjs/hooks/useList/useList.cjs.map +1 -1
- package/dist/cjs/hooks/useLocalStorage/useLocalStorage.cjs +2 -2
- package/dist/cjs/hooks/useLocalStorage/useLocalStorage.cjs.map +1 -1
- package/dist/cjs/hooks/useLockCallback/useLockCallback.cjs +2 -2
- package/dist/cjs/hooks/useLockCallback/useLockCallback.cjs.map +1 -1
- package/dist/cjs/hooks/useLockScroll/useLockScroll.cjs +2 -2
- package/dist/cjs/hooks/useLockScroll/useLockScroll.cjs.map +1 -1
- package/dist/cjs/hooks/useLogger/useLogger.cjs +2 -2
- package/dist/cjs/hooks/useLogger/useLogger.cjs.map +1 -1
- package/dist/cjs/hooks/useLongPress/useLongPress.cjs +2 -2
- package/dist/cjs/hooks/useLongPress/useLongPress.cjs.map +1 -1
- package/dist/cjs/hooks/useMap/useMap.cjs +2 -2
- package/dist/cjs/hooks/useMap/useMap.cjs.map +1 -1
- package/dist/cjs/hooks/useMeasure/useMeasure.cjs +2 -2
- package/dist/cjs/hooks/useMeasure/useMeasure.cjs.map +1 -1
- package/dist/cjs/hooks/useMediaControls/useMediaControls.cjs +2 -2
- package/dist/cjs/hooks/useMediaControls/useMediaControls.cjs.map +1 -1
- package/dist/cjs/hooks/useMediaQuery/useMediaQuery.cjs +2 -2
- package/dist/cjs/hooks/useMediaQuery/useMediaQuery.cjs.map +1 -1
- package/dist/cjs/hooks/useMemory/useMemory.cjs +2 -2
- package/dist/cjs/hooks/useMemory/useMemory.cjs.map +1 -1
- package/dist/cjs/hooks/useMergedRef/useMergedRef.cjs +2 -2
- package/dist/cjs/hooks/useMergedRef/useMergedRef.cjs.map +1 -1
- package/dist/cjs/hooks/useMount/useMount.cjs +2 -2
- package/dist/cjs/hooks/useMount/useMount.cjs.map +1 -1
- package/dist/cjs/hooks/useMouse/useMouse.cjs +2 -2
- package/dist/cjs/hooks/useMouse/useMouse.cjs.map +1 -1
- package/dist/cjs/hooks/useMutation/useMutation.cjs +2 -2
- package/dist/cjs/hooks/useMutation/useMutation.cjs.map +1 -1
- package/dist/cjs/hooks/useMutationObserver/useMutationObserver.cjs +2 -2
- package/dist/cjs/hooks/useMutationObserver/useMutationObserver.cjs.map +1 -1
- package/dist/cjs/hooks/useNetwork/useNetwork.cjs +2 -2
- package/dist/cjs/hooks/useNetwork/useNetwork.cjs.map +1 -1
- package/dist/cjs/hooks/useObjectUrl/useObjectUrl.cjs +2 -0
- package/dist/cjs/hooks/useObjectUrl/useObjectUrl.cjs.map +1 -0
- package/dist/cjs/hooks/useOffsetPagination/useOffsetPagination.cjs +2 -2
- package/dist/cjs/hooks/useOffsetPagination/useOffsetPagination.cjs.map +1 -1
- package/dist/cjs/hooks/useOnce/useOnce.cjs +2 -2
- package/dist/cjs/hooks/useOnce/useOnce.cjs.map +1 -1
- package/dist/cjs/hooks/useOnline/useOnline.cjs +2 -2
- package/dist/cjs/hooks/useOnline/useOnline.cjs.map +1 -1
- package/dist/cjs/hooks/useOperatingSystem/useOperatingSystem.cjs +2 -2
- package/dist/cjs/hooks/useOperatingSystem/useOperatingSystem.cjs.map +1 -1
- package/dist/cjs/hooks/useOptimistic/useOptimistic.cjs +2 -2
- package/dist/cjs/hooks/useOptimistic/useOptimistic.cjs.map +1 -1
- package/dist/cjs/hooks/useOrientation/useOrientation.cjs +2 -2
- package/dist/cjs/hooks/useOrientation/useOrientation.cjs.map +1 -1
- package/dist/cjs/hooks/useOtpCredential/useOtpCredential.cjs +2 -2
- package/dist/cjs/hooks/useOtpCredential/useOtpCredential.cjs.map +1 -1
- package/dist/cjs/hooks/usePageLeave/usePageLeave.cjs +2 -2
- package/dist/cjs/hooks/usePageLeave/usePageLeave.cjs.map +1 -1
- package/dist/cjs/hooks/usePaint/usePaint.cjs +2 -2
- package/dist/cjs/hooks/usePaint/usePaint.cjs.map +1 -1
- package/dist/cjs/hooks/useParallax/useParallax.cjs +2 -2
- package/dist/cjs/hooks/useParallax/useParallax.cjs.map +1 -1
- package/dist/cjs/hooks/usePerformanceObserver/usePerformanceObserver.cjs +2 -2
- package/dist/cjs/hooks/usePerformanceObserver/usePerformanceObserver.cjs.map +1 -1
- package/dist/cjs/hooks/usePermission/usePermission.cjs +2 -2
- package/dist/cjs/hooks/usePermission/usePermission.cjs.map +1 -1
- package/dist/cjs/hooks/usePictureInPicture/usePictureInPicture.cjs +2 -2
- package/dist/cjs/hooks/usePictureInPicture/usePictureInPicture.cjs.map +1 -1
- package/dist/cjs/hooks/usePointerLock/usePointerLock.cjs +2 -2
- package/dist/cjs/hooks/usePointerLock/usePointerLock.cjs.map +1 -1
- package/dist/cjs/hooks/usePostMessage/usePostMessage.cjs +2 -2
- package/dist/cjs/hooks/usePostMessage/usePostMessage.cjs.map +1 -1
- package/dist/cjs/hooks/usePreferredColorScheme/usePreferredColorScheme.cjs +2 -2
- package/dist/cjs/hooks/usePreferredColorScheme/usePreferredColorScheme.cjs.map +1 -1
- package/dist/cjs/hooks/usePreferredContrast/usePreferredContrast.cjs +2 -2
- package/dist/cjs/hooks/usePreferredContrast/usePreferredContrast.cjs.map +1 -1
- package/dist/cjs/hooks/usePreferredDark/usePreferredDark.cjs +2 -2
- package/dist/cjs/hooks/usePreferredDark/usePreferredDark.cjs.map +1 -1
- package/dist/cjs/hooks/usePreferredLanguages/usePreferredLanguages.cjs +2 -2
- package/dist/cjs/hooks/usePreferredLanguages/usePreferredLanguages.cjs.map +1 -1
- package/dist/cjs/hooks/usePreferredReducedMotion/usePreferredReducedMotion.cjs +2 -2
- package/dist/cjs/hooks/usePreferredReducedMotion/usePreferredReducedMotion.cjs.map +1 -1
- package/dist/cjs/hooks/usePrevious/usePrevious.cjs +2 -2
- package/dist/cjs/hooks/usePrevious/usePrevious.cjs.map +1 -1
- package/dist/cjs/hooks/useProgress/useProgress.cjs +2 -2
- package/dist/cjs/hooks/useProgress/useProgress.cjs.map +1 -1
- package/dist/cjs/hooks/useQuery/useQuery.cjs +2 -2
- package/dist/cjs/hooks/useQuery/useQuery.cjs.map +1 -1
- package/dist/cjs/hooks/useQueue/useQueue.cjs +2 -2
- package/dist/cjs/hooks/useQueue/useQueue.cjs.map +1 -1
- package/dist/cjs/hooks/useRaf/useRaf.cjs +2 -2
- package/dist/cjs/hooks/useRaf/useRaf.cjs.map +1 -1
- package/dist/cjs/hooks/useRafState/useRafState.cjs +2 -2
- package/dist/cjs/hooks/useRafState/useRafState.cjs.map +1 -1
- package/dist/cjs/hooks/useRefState/useRefState.cjs +2 -2
- package/dist/cjs/hooks/useRefState/useRefState.cjs.map +1 -1
- package/dist/cjs/hooks/useRenderCount/useRenderCount.cjs +2 -2
- package/dist/cjs/hooks/useRenderCount/useRenderCount.cjs.map +1 -1
- package/dist/cjs/hooks/useRenderInfo/useRenderInfo.cjs +2 -2
- package/dist/cjs/hooks/useRenderInfo/useRenderInfo.cjs.map +1 -1
- package/dist/cjs/hooks/useRerender/useRerender.cjs +2 -2
- package/dist/cjs/hooks/useRerender/useRerender.cjs.map +1 -1
- package/dist/cjs/hooks/useResizeObserver/useResizeObserver.cjs +2 -2
- package/dist/cjs/hooks/useResizeObserver/useResizeObserver.cjs.map +1 -1
- package/dist/cjs/hooks/useRightClick/useRightClick.cjs +2 -2
- package/dist/cjs/hooks/useRightClick/useRightClick.cjs.map +1 -1
- package/dist/cjs/hooks/useScript/useScript.cjs +2 -2
- package/dist/cjs/hooks/useScript/useScript.cjs.map +1 -1
- package/dist/cjs/hooks/useScroll/useScroll.cjs +2 -2
- package/dist/cjs/hooks/useScroll/useScroll.cjs.map +1 -1
- package/dist/cjs/hooks/useScrollIntoView/useScrollIntoView.cjs +2 -2
- package/dist/cjs/hooks/useScrollIntoView/useScrollIntoView.cjs.map +1 -1
- package/dist/cjs/hooks/useScrollTo/useScrollTo.cjs +2 -2
- package/dist/cjs/hooks/useScrollTo/useScrollTo.cjs.map +1 -1
- package/dist/cjs/hooks/useSessionStorage/useSessionStorage.cjs +2 -2
- package/dist/cjs/hooks/useSessionStorage/useSessionStorage.cjs.map +1 -1
- package/dist/cjs/hooks/useSet/useSet.cjs +2 -2
- package/dist/cjs/hooks/useSet/useSet.cjs.map +1 -1
- package/dist/cjs/hooks/useShallowEffect/useShallowEffect.cjs +2 -2
- package/dist/cjs/hooks/useShallowEffect/useShallowEffect.cjs.map +1 -1
- package/dist/cjs/hooks/useShare/useShare.cjs +2 -2
- package/dist/cjs/hooks/useShare/useShare.cjs.map +1 -1
- package/dist/cjs/hooks/useSize/useSize.cjs +2 -2
- package/dist/cjs/hooks/useSize/useSize.cjs.map +1 -1
- package/dist/cjs/hooks/useSpeechRecognition/useSpeechRecognition.cjs +2 -2
- package/dist/cjs/hooks/useSpeechRecognition/useSpeechRecognition.cjs.map +1 -1
- package/dist/cjs/hooks/useSpeechSynthesis/useSpeechSynthesis.cjs +2 -2
- package/dist/cjs/hooks/useSpeechSynthesis/useSpeechSynthesis.cjs.map +1 -1
- package/dist/cjs/hooks/useStateHistory/useStateHistory.cjs +2 -2
- package/dist/cjs/hooks/useStateHistory/useStateHistory.cjs.map +1 -1
- package/dist/cjs/hooks/useStep/useStep.cjs +2 -2
- package/dist/cjs/hooks/useStep/useStep.cjs.map +1 -1
- package/dist/cjs/hooks/useSticky/useSticky.cjs +2 -2
- package/dist/cjs/hooks/useSticky/useSticky.cjs.map +1 -1
- package/dist/cjs/hooks/useStopwatch/useStopwatch.cjs +2 -2
- package/dist/cjs/hooks/useStopwatch/useStopwatch.cjs.map +1 -1
- package/dist/cjs/hooks/useStorage/useStorage.cjs +2 -2
- package/dist/cjs/hooks/useStorage/useStorage.cjs.map +1 -1
- package/dist/cjs/hooks/useTextDirection/useTextDirection.cjs +2 -2
- package/dist/cjs/hooks/useTextDirection/useTextDirection.cjs.map +1 -1
- package/dist/cjs/hooks/useTextSelection/useTextSelection.cjs +2 -2
- package/dist/cjs/hooks/useTextSelection/useTextSelection.cjs.map +1 -1
- package/dist/cjs/hooks/useTextareaAutosize/useTextareaAutosize.cjs +2 -2
- package/dist/cjs/hooks/useTextareaAutosize/useTextareaAutosize.cjs.map +1 -1
- package/dist/cjs/hooks/useThrottleCallback/useThrottleCallback.cjs +2 -2
- package/dist/cjs/hooks/useThrottleCallback/useThrottleCallback.cjs.map +1 -1
- package/dist/cjs/hooks/useThrottleEffect/useThrottleEffect.cjs +2 -2
- package/dist/cjs/hooks/useThrottleEffect/useThrottleEffect.cjs.map +1 -1
- package/dist/cjs/hooks/useThrottleState/useThrottleState.cjs +2 -2
- package/dist/cjs/hooks/useThrottleState/useThrottleState.cjs.map +1 -1
- package/dist/cjs/hooks/useThrottleValue/useThrottleValue.cjs +2 -2
- package/dist/cjs/hooks/useThrottleValue/useThrottleValue.cjs.map +1 -1
- package/dist/cjs/hooks/useTime/useTime.cjs +2 -2
- package/dist/cjs/hooks/useTime/useTime.cjs.map +1 -1
- package/dist/cjs/hooks/useTimeout/useTimeout.cjs +2 -2
- package/dist/cjs/hooks/useTimeout/useTimeout.cjs.map +1 -1
- package/dist/cjs/hooks/useTimer/useTimer.cjs +2 -2
- package/dist/cjs/hooks/useTimer/useTimer.cjs.map +1 -1
- package/dist/cjs/hooks/useToggle/useToggle.cjs +2 -2
- package/dist/cjs/hooks/useToggle/useToggle.cjs.map +1 -1
- package/dist/cjs/hooks/useUnmount/useUnmount.cjs +2 -2
- package/dist/cjs/hooks/useUnmount/useUnmount.cjs.map +1 -1
- package/dist/cjs/hooks/useUrlSearchParam/useUrlSearchParam.cjs +2 -2
- package/dist/cjs/hooks/useUrlSearchParam/useUrlSearchParam.cjs.map +1 -1
- package/dist/cjs/hooks/useUrlSearchParams/useUrlSearchParams.cjs +2 -2
- package/dist/cjs/hooks/useUrlSearchParams/useUrlSearchParams.cjs.map +1 -1
- package/dist/cjs/hooks/useVibrate/useVibrate.cjs +2 -2
- package/dist/cjs/hooks/useVibrate/useVibrate.cjs.map +1 -1
- package/dist/cjs/hooks/useVirtualKeyboard/useVirtualKeyboard.cjs +2 -2
- package/dist/cjs/hooks/useVirtualKeyboard/useVirtualKeyboard.cjs.map +1 -1
- package/dist/cjs/hooks/useVisibility/useVisibility.cjs +2 -2
- package/dist/cjs/hooks/useVisibility/useVisibility.cjs.map +1 -1
- package/dist/cjs/hooks/useWakeLock/useWakeLock.cjs +2 -2
- package/dist/cjs/hooks/useWakeLock/useWakeLock.cjs.map +1 -1
- package/dist/cjs/hooks/useWebSocket/useWebSocket.cjs +2 -2
- package/dist/cjs/hooks/useWebSocket/useWebSocket.cjs.map +1 -1
- package/dist/cjs/hooks/useWindowEvent/useWindowEvent.cjs +2 -2
- package/dist/cjs/hooks/useWindowEvent/useWindowEvent.cjs.map +1 -1
- package/dist/cjs/hooks/useWindowFocus/useWindowFocus.cjs +2 -2
- package/dist/cjs/hooks/useWindowFocus/useWindowFocus.cjs.map +1 -1
- package/dist/cjs/hooks/useWindowScroll/useWindowScroll.cjs +2 -2
- package/dist/cjs/hooks/useWindowScroll/useWindowScroll.cjs.map +1 -1
- package/dist/cjs/hooks/useWindowSize/useWindowSize.cjs +2 -2
- package/dist/cjs/hooks/useWindowSize/useWindowSize.cjs.map +1 -1
- package/dist/cjs/hooks/useWizard/useWizard.cjs +2 -2
- package/dist/cjs/hooks/useWizard/useWizard.cjs.map +1 -1
- package/dist/cjs/index.cjs +1 -2
- package/dist/cjs/utils/helpers/copy.cjs +2 -2
- package/dist/cjs/utils/helpers/copy.cjs.map +1 -1
- package/dist/cjs/utils/helpers/debounce.cjs +2 -2
- package/dist/cjs/utils/helpers/debounce.cjs.map +1 -1
- package/dist/cjs/utils/helpers/getDate.cjs +2 -2
- package/dist/cjs/utils/helpers/getDate.cjs.map +1 -1
- package/dist/cjs/utils/helpers/getRetry.cjs +2 -2
- package/dist/cjs/utils/helpers/getRetry.cjs.map +1 -1
- package/dist/cjs/utils/helpers/isTarget.cjs +2 -2
- package/dist/cjs/utils/helpers/isTarget.cjs.map +1 -1
- package/dist/cjs/utils/helpers/throttle.cjs +2 -2
- package/dist/cjs/utils/helpers/throttle.cjs.map +1 -1
- package/dist/esm/helpers/createContext/createContext.mjs +32 -33
- package/dist/esm/helpers/createContext/createContext.mjs.map +1 -1
- package/dist/esm/helpers/createContextHook/createContextHook.mjs +19 -12
- package/dist/esm/helpers/createContextHook/createContextHook.mjs.map +1 -1
- package/dist/esm/helpers/createEventEmitter/createEventEmitter.mjs +34 -33
- package/dist/esm/helpers/createEventEmitter/createEventEmitter.mjs.map +1 -1
- package/dist/esm/helpers/createReactiveContext/createReactiveContext.mjs +53 -53
- package/dist/esm/helpers/createReactiveContext/createReactiveContext.mjs.map +1 -1
- package/dist/esm/helpers/createSharedHook/createSharedHook.mjs +36 -41
- package/dist/esm/helpers/createSharedHook/createSharedHook.mjs.map +1 -1
- package/dist/esm/helpers/createStore/createStore.mjs +25 -29
- package/dist/esm/helpers/createStore/createStore.mjs.map +1 -1
- package/dist/esm/helpers/makeDestructurable/makeDestructurable.mjs +21 -0
- package/dist/esm/helpers/makeDestructurable/makeDestructurable.mjs.map +1 -0
- package/dist/esm/hooks/useActiveElement/useActiveElement.mjs +28 -27
- package/dist/esm/hooks/useActiveElement/useActiveElement.mjs.map +1 -1
- package/dist/esm/hooks/useAsync/useAsync.mjs +22 -21
- package/dist/esm/hooks/useAsync/useAsync.mjs.map +1 -1
- package/dist/esm/hooks/useAsyncEffect/useAsyncEffect.mjs +10 -9
- package/dist/esm/hooks/useAsyncEffect/useAsyncEffect.mjs.map +1 -1
- package/dist/esm/hooks/useAudio/useAudio.mjs +55 -55
- package/dist/esm/hooks/useAudio/useAudio.mjs.map +1 -1
- package/dist/esm/hooks/useAutoScroll/useAutoScroll.mjs +43 -40
- package/dist/esm/hooks/useAutoScroll/useAutoScroll.mjs.map +1 -1
- package/dist/esm/hooks/useBatchedCallback/useBatchedCallback.mjs +20 -19
- package/dist/esm/hooks/useBatchedCallback/useBatchedCallback.mjs.map +1 -1
- package/dist/esm/hooks/useBattery/useBattery.mjs +32 -29
- package/dist/esm/hooks/useBattery/useBattery.mjs.map +1 -1
- package/dist/esm/hooks/useBluetooth/useBluetooth.mjs +35 -33
- package/dist/esm/hooks/useBluetooth/useBluetooth.mjs.map +1 -1
- package/dist/esm/hooks/useBoolean/useBoolean.mjs +9 -8
- package/dist/esm/hooks/useBoolean/useBoolean.mjs.map +1 -1
- package/dist/esm/hooks/useBreakpoints/useBreakpoints.mjs +90 -104
- package/dist/esm/hooks/useBreakpoints/useBreakpoints.mjs.map +1 -1
- package/dist/esm/hooks/useBroadcastChannel/useBroadcastChannel.mjs +30 -31
- package/dist/esm/hooks/useBroadcastChannel/useBroadcastChannel.mjs.map +1 -1
- package/dist/esm/hooks/useBrowserLanguage/useBrowserLanguage.mjs +7 -6
- package/dist/esm/hooks/useBrowserLanguage/useBrowserLanguage.mjs.map +1 -1
- package/dist/esm/hooks/useClickOutside/useClickOutside.mjs +21 -21
- package/dist/esm/hooks/useClickOutside/useClickOutside.mjs.map +1 -1
- package/dist/esm/hooks/useClipboard/useClipboard.mjs +25 -23
- package/dist/esm/hooks/useClipboard/useClipboard.mjs.map +1 -1
- package/dist/esm/hooks/useConst/useConst.mjs +7 -6
- package/dist/esm/hooks/useConst/useConst.mjs.map +1 -1
- package/dist/esm/hooks/useControllableState/useControllableState.mjs +18 -16
- package/dist/esm/hooks/useControllableState/useControllableState.mjs.map +1 -1
- package/dist/esm/hooks/useCookie/useCookie.mjs +53 -56
- package/dist/esm/hooks/useCookie/useCookie.mjs.map +1 -1
- package/dist/esm/hooks/useCookies/useCookies.mjs +38 -37
- package/dist/esm/hooks/useCookies/useCookies.mjs.map +1 -1
- package/dist/esm/hooks/useCopy/useCopy.mjs +15 -10
- package/dist/esm/hooks/useCopy/useCopy.mjs.map +1 -1
- package/dist/esm/hooks/useCounter/useCounter.mjs +26 -22
- package/dist/esm/hooks/useCounter/useCounter.mjs.map +1 -1
- package/dist/esm/hooks/useCssVar/useCssVar.mjs +42 -32
- package/dist/esm/hooks/useCssVar/useCssVar.mjs.map +1 -1
- package/dist/esm/hooks/useDebounceCallback/useDebounceCallback.mjs +18 -17
- package/dist/esm/hooks/useDebounceCallback/useDebounceCallback.mjs.map +1 -1
- package/dist/esm/hooks/useDebounceEffect/useDebounceEffect.mjs +19 -18
- package/dist/esm/hooks/useDebounceEffect/useDebounceEffect.mjs.map +1 -1
- package/dist/esm/hooks/useDebounceState/useDebounceState.mjs +10 -9
- package/dist/esm/hooks/useDebounceState/useDebounceState.mjs.map +1 -1
- package/dist/esm/hooks/useDebounceValue/useDebounceValue.mjs +12 -11
- package/dist/esm/hooks/useDebounceValue/useDebounceValue.mjs.map +1 -1
- package/dist/esm/hooks/useDefault/useDefault.mjs +9 -8
- package/dist/esm/hooks/useDefault/useDefault.mjs.map +1 -1
- package/dist/esm/hooks/useDeviceMotion/useDeviceMotion.mjs +49 -36
- package/dist/esm/hooks/useDeviceMotion/useDeviceMotion.mjs.map +1 -1
- package/dist/esm/hooks/useDeviceOrientation/useDeviceOrientation.mjs +28 -27
- package/dist/esm/hooks/useDeviceOrientation/useDeviceOrientation.mjs.map +1 -1
- package/dist/esm/hooks/useDevicePixelRatio/useDevicePixelRatio.mjs +18 -14
- package/dist/esm/hooks/useDevicePixelRatio/useDevicePixelRatio.mjs.map +1 -1
- package/dist/esm/hooks/useDidUpdate/useDidUpdate.mjs +15 -18
- package/dist/esm/hooks/useDidUpdate/useDidUpdate.mjs.map +1 -1
- package/dist/esm/hooks/useDisclosure/useDisclosure.mjs +14 -8
- package/dist/esm/hooks/useDisclosure/useDisclosure.mjs.map +1 -1
- package/dist/esm/hooks/useDisplayMedia/useDisplayMedia.mjs +39 -39
- package/dist/esm/hooks/useDisplayMedia/useDisplayMedia.mjs.map +1 -1
- package/dist/esm/hooks/useDocumentEvent/useDocumentEvent.mjs +8 -7
- package/dist/esm/hooks/useDocumentEvent/useDocumentEvent.mjs.map +1 -1
- package/dist/esm/hooks/useDocumentTitle/useDocumentTitle.mjs +28 -27
- package/dist/esm/hooks/useDocumentTitle/useDocumentTitle.mjs.map +1 -1
- package/dist/esm/hooks/useDocumentVisibility/useDocumentVisibility.mjs +9 -8
- package/dist/esm/hooks/useDocumentVisibility/useDocumentVisibility.mjs.map +1 -1
- package/dist/esm/hooks/useDoubleClick/useDoubleClick.mjs +25 -28
- package/dist/esm/hooks/useDoubleClick/useDoubleClick.mjs.map +1 -1
- package/dist/esm/hooks/useDropZone/useDropZone.mjs +55 -47
- package/dist/esm/hooks/useDropZone/useDropZone.mjs.map +1 -1
- package/dist/esm/hooks/useEvent/useEvent.mjs +12 -11
- package/dist/esm/hooks/useEvent/useEvent.mjs.map +1 -1
- package/dist/esm/hooks/useEventListener/useEventListener.mjs +24 -19
- package/dist/esm/hooks/useEventListener/useEventListener.mjs.map +1 -1
- package/dist/esm/hooks/useEventSource/useEventSource.mjs +44 -49
- package/dist/esm/hooks/useEventSource/useEventSource.mjs.map +1 -1
- package/dist/esm/hooks/useEyeDropper/useEyeDropper.mjs +17 -16
- package/dist/esm/hooks/useEyeDropper/useEyeDropper.mjs.map +1 -1
- package/dist/esm/hooks/useFavicon/useFavicon.mjs +20 -18
- package/dist/esm/hooks/useFavicon/useFavicon.mjs.map +1 -1
- package/dist/esm/hooks/useField/useField.mjs +61 -67
- package/dist/esm/hooks/useField/useField.mjs.map +1 -1
- package/dist/esm/hooks/useFileDialog/useFileDialog.mjs +34 -32
- package/dist/esm/hooks/useFileDialog/useFileDialog.mjs.map +1 -1
- package/dist/esm/hooks/useFileSystemAccess/useFileSystemAccess.mjs +59 -0
- package/dist/esm/hooks/useFileSystemAccess/useFileSystemAccess.mjs.map +1 -0
- package/dist/esm/hooks/useFocus/useFocus.mjs +43 -34
- package/dist/esm/hooks/useFocus/useFocus.mjs.map +1 -1
- package/dist/esm/hooks/useFocusTrap/useFocusTrap.mjs +51 -36
- package/dist/esm/hooks/useFocusTrap/useFocusTrap.mjs.map +1 -1
- package/dist/esm/hooks/useFps/useFps.mjs +18 -22
- package/dist/esm/hooks/useFps/useFps.mjs.map +1 -1
- package/dist/esm/hooks/useFul/useFul.mjs +8 -7
- package/dist/esm/hooks/useFul/useFul.mjs.map +1 -1
- package/dist/esm/hooks/useFullscreen/useFullscreen.mjs +39 -42
- package/dist/esm/hooks/useFullscreen/useFullscreen.mjs.map +1 -1
- package/dist/esm/hooks/useGamepad/useGamepad.mjs +76 -83
- package/dist/esm/hooks/useGamepad/useGamepad.mjs.map +1 -1
- package/dist/esm/hooks/useGeolocation/useGeolocation.mjs +50 -45
- package/dist/esm/hooks/useGeolocation/useGeolocation.mjs.map +1 -1
- package/dist/esm/hooks/useHash/useHash.mjs +24 -26
- package/dist/esm/hooks/useHash/useHash.mjs.map +1 -1
- package/dist/esm/hooks/useHotkeys/useHotkeys.mjs +35 -37
- package/dist/esm/hooks/useHotkeys/useHotkeys.mjs.map +1 -1
- package/dist/esm/hooks/useHover/useHover.mjs +30 -25
- package/dist/esm/hooks/useHover/useHover.mjs.map +1 -1
- package/dist/esm/hooks/useIdle/useIdle.mjs +29 -26
- package/dist/esm/hooks/useIdle/useIdle.mjs.map +1 -1
- package/dist/esm/hooks/useImage/useImage.mjs +24 -26
- package/dist/esm/hooks/useImage/useImage.mjs.map +1 -1
- package/dist/esm/hooks/useInfiniteScroll/useInfiniteScroll.mjs +38 -32
- package/dist/esm/hooks/useInfiniteScroll/useInfiniteScroll.mjs.map +1 -1
- package/dist/esm/hooks/useIntersectionObserver/useIntersectionObserver.mjs +38 -37
- package/dist/esm/hooks/useIntersectionObserver/useIntersectionObserver.mjs.map +1 -1
- package/dist/esm/hooks/useInterval/useInterval.mjs +20 -20
- package/dist/esm/hooks/useInterval/useInterval.mjs.map +1 -1
- package/dist/esm/hooks/useIsFirstRender/useIsFirstRender.mjs +8 -7
- package/dist/esm/hooks/useIsFirstRender/useIsFirstRender.mjs.map +1 -1
- package/dist/esm/hooks/useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.mjs +7 -6
- package/dist/esm/hooks/useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.mjs.map +1 -1
- package/dist/esm/hooks/useKeyPress/useKeyPress.mjs +30 -26
- package/dist/esm/hooks/useKeyPress/useKeyPress.mjs.map +1 -1
- package/dist/esm/hooks/useKeyPressEvent/useKeyPressEvent.mjs +33 -35
- package/dist/esm/hooks/useKeyPressEvent/useKeyPressEvent.mjs.map +1 -1
- package/dist/esm/hooks/useKeyboard/useKeyboard.mjs +16 -19
- package/dist/esm/hooks/useKeyboard/useKeyboard.mjs.map +1 -1
- package/dist/esm/hooks/useKeysPressed/useKeysPressed.mjs +36 -25
- package/dist/esm/hooks/useKeysPressed/useKeysPressed.mjs.map +1 -1
- package/dist/esm/hooks/useLastChanged/useLastChanged.mjs +10 -9
- package/dist/esm/hooks/useLastChanged/useLastChanged.mjs.map +1 -1
- package/dist/esm/hooks/useLatest/useLatest.mjs +14 -16
- package/dist/esm/hooks/useLatest/useLatest.mjs.map +1 -1
- package/dist/esm/hooks/useLess/useLess.mjs +9 -8
- package/dist/esm/hooks/useLess/useLess.mjs.map +1 -1
- package/dist/esm/hooks/useList/useList.mjs +22 -22
- package/dist/esm/hooks/useList/useList.mjs.map +1 -1
- package/dist/esm/hooks/useLocalStorage/useLocalStorage.mjs +10 -9
- package/dist/esm/hooks/useLocalStorage/useLocalStorage.mjs.map +1 -1
- package/dist/esm/hooks/useLockCallback/useLockCallback.mjs +18 -17
- package/dist/esm/hooks/useLockCallback/useLockCallback.mjs.map +1 -1
- package/dist/esm/hooks/useLockScroll/useLockScroll.mjs +44 -39
- package/dist/esm/hooks/useLockScroll/useLockScroll.mjs.map +1 -1
- package/dist/esm/hooks/useLogger/useLogger.mjs +10 -9
- package/dist/esm/hooks/useLogger/useLogger.mjs.map +1 -1
- package/dist/esm/hooks/useLongPress/useLongPress.mjs +30 -26
- package/dist/esm/hooks/useLongPress/useLongPress.mjs.map +1 -1
- package/dist/esm/hooks/useMap/useMap.mjs +21 -20
- package/dist/esm/hooks/useMap/useMap.mjs.map +1 -1
- package/dist/esm/hooks/useMeasure/useMeasure.mjs +45 -32
- package/dist/esm/hooks/useMeasure/useMeasure.mjs.map +1 -1
- package/dist/esm/hooks/useMediaControls/useMediaControls.mjs +67 -68
- package/dist/esm/hooks/useMediaControls/useMediaControls.mjs.map +1 -1
- package/dist/esm/hooks/useMediaQuery/useMediaQuery.mjs +12 -17
- package/dist/esm/hooks/useMediaQuery/useMediaQuery.mjs.map +1 -1
- package/dist/esm/hooks/useMemory/useMemory.mjs +20 -18
- package/dist/esm/hooks/useMemory/useMemory.mjs.map +1 -1
- package/dist/esm/hooks/useMergedRef/useMergedRef.mjs +23 -25
- package/dist/esm/hooks/useMergedRef/useMergedRef.mjs.map +1 -1
- package/dist/esm/hooks/useMount/useMount.mjs +7 -6
- package/dist/esm/hooks/useMount/useMount.mjs.map +1 -1
- package/dist/esm/hooks/useMouse/useMouse.mjs +61 -58
- package/dist/esm/hooks/useMouse/useMouse.mjs.map +1 -1
- package/dist/esm/hooks/useMutation/useMutation.mjs +63 -60
- package/dist/esm/hooks/useMutation/useMutation.mjs.map +1 -1
- package/dist/esm/hooks/useMutationObserver/useMutationObserver.mjs +35 -34
- package/dist/esm/hooks/useMutationObserver/useMutationObserver.mjs.map +1 -1
- package/dist/esm/hooks/useNetwork/useNetwork.mjs +47 -48
- package/dist/esm/hooks/useNetwork/useNetwork.mjs.map +1 -1
- package/dist/esm/hooks/useObjectUrl/useObjectUrl.mjs +20 -0
- package/dist/esm/hooks/useObjectUrl/useObjectUrl.mjs.map +1 -0
- package/dist/esm/hooks/useOffsetPagination/useOffsetPagination.mjs +50 -40
- package/dist/esm/hooks/useOffsetPagination/useOffsetPagination.mjs.map +1 -1
- package/dist/esm/hooks/useOnce/useOnce.mjs +13 -13
- package/dist/esm/hooks/useOnce/useOnce.mjs.map +1 -1
- package/dist/esm/hooks/useOnline/useOnline.mjs +9 -8
- package/dist/esm/hooks/useOnline/useOnline.mjs.map +1 -1
- package/dist/esm/hooks/useOperatingSystem/useOperatingSystem.mjs +12 -12
- package/dist/esm/hooks/useOperatingSystem/useOperatingSystem.mjs.map +1 -1
- package/dist/esm/hooks/useOptimistic/useOptimistic.mjs +14 -13
- package/dist/esm/hooks/useOptimistic/useOptimistic.mjs.map +1 -1
- package/dist/esm/hooks/useOrientation/useOrientation.mjs +30 -29
- package/dist/esm/hooks/useOrientation/useOrientation.mjs.map +1 -1
- package/dist/esm/hooks/useOtpCredential/useOtpCredential.mjs +28 -25
- package/dist/esm/hooks/useOtpCredential/useOtpCredential.mjs.map +1 -1
- package/dist/esm/hooks/usePageLeave/usePageLeave.mjs +15 -14
- package/dist/esm/hooks/usePageLeave/usePageLeave.mjs.map +1 -1
- package/dist/esm/hooks/usePaint/usePaint.mjs +139 -151
- package/dist/esm/hooks/usePaint/usePaint.mjs.map +1 -1
- package/dist/esm/hooks/useParallax/useParallax.mjs +90 -96
- package/dist/esm/hooks/useParallax/useParallax.mjs.map +1 -1
- package/dist/esm/hooks/usePerformanceObserver/usePerformanceObserver.mjs +29 -23
- package/dist/esm/hooks/usePerformanceObserver/usePerformanceObserver.mjs.map +1 -1
- package/dist/esm/hooks/usePermission/usePermission.mjs +25 -27
- package/dist/esm/hooks/usePermission/usePermission.mjs.map +1 -1
- package/dist/esm/hooks/usePictureInPicture/usePictureInPicture.mjs +42 -38
- package/dist/esm/hooks/usePictureInPicture/usePictureInPicture.mjs.map +1 -1
- package/dist/esm/hooks/usePointerLock/usePointerLock.mjs +31 -30
- package/dist/esm/hooks/usePointerLock/usePointerLock.mjs.map +1 -1
- package/dist/esm/hooks/usePostMessage/usePostMessage.mjs +22 -23
- package/dist/esm/hooks/usePostMessage/usePostMessage.mjs.map +1 -1
- package/dist/esm/hooks/usePreferredColorScheme/usePreferredColorScheme.mjs +8 -7
- package/dist/esm/hooks/usePreferredColorScheme/usePreferredColorScheme.mjs.map +1 -1
- package/dist/esm/hooks/usePreferredContrast/usePreferredContrast.mjs +8 -7
- package/dist/esm/hooks/usePreferredContrast/usePreferredContrast.mjs.map +1 -1
- package/dist/esm/hooks/usePreferredDark/usePreferredDark.mjs +6 -5
- package/dist/esm/hooks/usePreferredDark/usePreferredDark.mjs.map +1 -1
- package/dist/esm/hooks/usePreferredLanguages/usePreferredLanguages.mjs +9 -8
- package/dist/esm/hooks/usePreferredLanguages/usePreferredLanguages.mjs.map +1 -1
- package/dist/esm/hooks/usePreferredReducedMotion/usePreferredReducedMotion.mjs +6 -5
- package/dist/esm/hooks/usePreferredReducedMotion/usePreferredReducedMotion.mjs.map +1 -1
- package/dist/esm/hooks/usePrevious/usePrevious.mjs +9 -8
- package/dist/esm/hooks/usePrevious/usePrevious.mjs.map +1 -1
- package/dist/esm/hooks/useProgress/useProgress.mjs +28 -24
- package/dist/esm/hooks/useProgress/useProgress.mjs.map +1 -1
- package/dist/esm/hooks/useQuery/useQuery.mjs +61 -52
- package/dist/esm/hooks/useQuery/useQuery.mjs.map +1 -1
- package/dist/esm/hooks/useQueue/useQueue.mjs +23 -22
- package/dist/esm/hooks/useQueue/useQueue.mjs.map +1 -1
- package/dist/esm/hooks/useRaf/useRaf.mjs +32 -29
- package/dist/esm/hooks/useRaf/useRaf.mjs.map +1 -1
- package/dist/esm/hooks/useRafState/useRafState.mjs +12 -11
- package/dist/esm/hooks/useRafState/useRafState.mjs.map +1 -1
- package/dist/esm/hooks/useRefState/useRefState.mjs +24 -24
- package/dist/esm/hooks/useRefState/useRefState.mjs.map +1 -1
- package/dist/esm/hooks/useRenderCount/useRenderCount.mjs +11 -10
- package/dist/esm/hooks/useRenderCount/useRenderCount.mjs.map +1 -1
- package/dist/esm/hooks/useRenderInfo/useRenderInfo.mjs +14 -13
- package/dist/esm/hooks/useRenderInfo/useRenderInfo.mjs.map +1 -1
- package/dist/esm/hooks/useRerender/useRerender.mjs +6 -5
- package/dist/esm/hooks/useRerender/useRerender.mjs.map +1 -1
- package/dist/esm/hooks/useResizeObserver/useResizeObserver.mjs +33 -24
- package/dist/esm/hooks/useResizeObserver/useResizeObserver.mjs.map +1 -1
- package/dist/esm/hooks/useRightClick/useRightClick.mjs +37 -34
- package/dist/esm/hooks/useRightClick/useRightClick.mjs.map +1 -1
- package/dist/esm/hooks/useScript/useScript.mjs +28 -31
- package/dist/esm/hooks/useScript/useScript.mjs.map +1 -1
- package/dist/esm/hooks/useScroll/useScroll.mjs +95 -81
- package/dist/esm/hooks/useScroll/useScroll.mjs.map +1 -1
- package/dist/esm/hooks/useScrollIntoView/useScrollIntoView.mjs +33 -34
- package/dist/esm/hooks/useScrollIntoView/useScrollIntoView.mjs.map +1 -1
- package/dist/esm/hooks/useScrollTo/useScrollTo.mjs +33 -21
- package/dist/esm/hooks/useScrollTo/useScrollTo.mjs.map +1 -1
- package/dist/esm/hooks/useSessionStorage/useSessionStorage.mjs +10 -9
- package/dist/esm/hooks/useSessionStorage/useSessionStorage.mjs.map +1 -1
- package/dist/esm/hooks/useSet/useSet.mjs +30 -29
- package/dist/esm/hooks/useSet/useSet.mjs.map +1 -1
- package/dist/esm/hooks/useShallowEffect/useShallowEffect.mjs +20 -22
- package/dist/esm/hooks/useShallowEffect/useShallowEffect.mjs.map +1 -1
- package/dist/esm/hooks/useShare/useShare.mjs +18 -14
- package/dist/esm/hooks/useShare/useShare.mjs.map +1 -1
- package/dist/esm/hooks/useSize/useSize.mjs +40 -30
- package/dist/esm/hooks/useSize/useSize.mjs.map +1 -1
- package/dist/esm/hooks/useSpeechRecognition/useSpeechRecognition.mjs +34 -44
- package/dist/esm/hooks/useSpeechRecognition/useSpeechRecognition.mjs.map +1 -1
- package/dist/esm/hooks/useSpeechSynthesis/useSpeechSynthesis.mjs +65 -64
- package/dist/esm/hooks/useSpeechSynthesis/useSpeechSynthesis.mjs.map +1 -1
- package/dist/esm/hooks/useStateHistory/useStateHistory.mjs +96 -84
- package/dist/esm/hooks/useStateHistory/useStateHistory.mjs.map +1 -1
- package/dist/esm/hooks/useStep/useStep.mjs +27 -28
- package/dist/esm/hooks/useStep/useStep.mjs.map +1 -1
- package/dist/esm/hooks/useSticky/useSticky.mjs +36 -30
- package/dist/esm/hooks/useSticky/useSticky.mjs.map +1 -1
- package/dist/esm/hooks/useStopwatch/useStopwatch.mjs +59 -57
- package/dist/esm/hooks/useStopwatch/useStopwatch.mjs.map +1 -1
- package/dist/esm/hooks/useStorage/useStorage.mjs +61 -62
- package/dist/esm/hooks/useStorage/useStorage.mjs.map +1 -1
- package/dist/esm/hooks/useTextDirection/useTextDirection.mjs +35 -30
- package/dist/esm/hooks/useTextDirection/useTextDirection.mjs.map +1 -1
- package/dist/esm/hooks/useTextSelection/useTextSelection.mjs +25 -27
- package/dist/esm/hooks/useTextSelection/useTextSelection.mjs.map +1 -1
- package/dist/esm/hooks/useTextareaAutosize/useTextareaAutosize.mjs +53 -52
- package/dist/esm/hooks/useTextareaAutosize/useTextareaAutosize.mjs.map +1 -1
- package/dist/esm/hooks/useThrottleCallback/useThrottleCallback.mjs +18 -17
- package/dist/esm/hooks/useThrottleCallback/useThrottleCallback.mjs.map +1 -1
- package/dist/esm/hooks/useThrottleEffect/useThrottleEffect.mjs +21 -21
- package/dist/esm/hooks/useThrottleEffect/useThrottleEffect.mjs.map +1 -1
- package/dist/esm/hooks/useThrottleState/useThrottleState.mjs +10 -9
- package/dist/esm/hooks/useThrottleState/useThrottleState.mjs.map +1 -1
- package/dist/esm/hooks/useThrottleValue/useThrottleValue.mjs +12 -11
- package/dist/esm/hooks/useThrottleValue/useThrottleValue.mjs.map +1 -1
- package/dist/esm/hooks/useTime/useTime.mjs +14 -13
- package/dist/esm/hooks/useTime/useTime.mjs.map +1 -1
- package/dist/esm/hooks/useTimeout/useTimeout.mjs +19 -15
- package/dist/esm/hooks/useTimeout/useTimeout.mjs.map +1 -1
- package/dist/esm/hooks/useTimer/useTimer.mjs +61 -66
- package/dist/esm/hooks/useTimer/useTimer.mjs.map +1 -1
- package/dist/esm/hooks/useToggle/useToggle.mjs +12 -11
- package/dist/esm/hooks/useToggle/useToggle.mjs.map +1 -1
- package/dist/esm/hooks/useUnmount/useUnmount.mjs +11 -13
- package/dist/esm/hooks/useUnmount/useUnmount.mjs.map +1 -1
- package/dist/esm/hooks/useUrlSearchParam/useUrlSearchParam.mjs +66 -76
- package/dist/esm/hooks/useUrlSearchParam/useUrlSearchParam.mjs.map +1 -1
- package/dist/esm/hooks/useUrlSearchParams/useUrlSearchParams.mjs +50 -60
- package/dist/esm/hooks/useUrlSearchParams/useUrlSearchParams.mjs.map +1 -1
- package/dist/esm/hooks/useVibrate/useVibrate.mjs +28 -21
- package/dist/esm/hooks/useVibrate/useVibrate.mjs.map +1 -1
- package/dist/esm/hooks/useVirtualKeyboard/useVirtualKeyboard.mjs +30 -29
- package/dist/esm/hooks/useVirtualKeyboard/useVirtualKeyboard.mjs.map +1 -1
- package/dist/esm/hooks/useVisibility/useVisibility.mjs +41 -39
- package/dist/esm/hooks/useVisibility/useVisibility.mjs.map +1 -1
- package/dist/esm/hooks/useWakeLock/useWakeLock.mjs +28 -23
- package/dist/esm/hooks/useWakeLock/useWakeLock.mjs.map +1 -1
- package/dist/esm/hooks/useWebSocket/useWebSocket.mjs +38 -35
- package/dist/esm/hooks/useWebSocket/useWebSocket.mjs.map +1 -1
- package/dist/esm/hooks/useWindowEvent/useWindowEvent.mjs +7 -6
- package/dist/esm/hooks/useWindowEvent/useWindowEvent.mjs.map +1 -1
- package/dist/esm/hooks/useWindowFocus/useWindowFocus.mjs +14 -13
- package/dist/esm/hooks/useWindowFocus/useWindowFocus.mjs.map +1 -1
- package/dist/esm/hooks/useWindowScroll/useWindowScroll.mjs +29 -21
- package/dist/esm/hooks/useWindowScroll/useWindowScroll.mjs.map +1 -1
- package/dist/esm/hooks/useWindowSize/useWindowSize.mjs +24 -23
- package/dist/esm/hooks/useWindowSize/useWindowSize.mjs.map +1 -1
- package/dist/esm/hooks/useWizard/useWizard.mjs +25 -20
- package/dist/esm/hooks/useWizard/useWizard.mjs.map +1 -1
- package/dist/esm/index.mjs +173 -394
- package/dist/esm/utils/helpers/copy.mjs +18 -18
- package/dist/esm/utils/helpers/copy.mjs.map +1 -1
- package/dist/esm/utils/helpers/debounce.mjs +10 -10
- package/dist/esm/utils/helpers/debounce.mjs.map +1 -1
- package/dist/esm/utils/helpers/getDate.mjs +20 -16
- package/dist/esm/utils/helpers/getDate.mjs.map +1 -1
- package/dist/esm/utils/helpers/getRetry.mjs +6 -5
- package/dist/esm/utils/helpers/getRetry.mjs.map +1 -1
- package/dist/esm/utils/helpers/isTarget.mjs +10 -19
- package/dist/esm/utils/helpers/isTarget.mjs.map +1 -1
- package/dist/esm/utils/helpers/throttle.mjs +20 -20
- package/dist/esm/utils/helpers/throttle.mjs.map +1 -1
- package/dist/types/helpers/index.d.ts +1 -0
- package/dist/types/helpers/makeDestructurable/makeDestructurable.d.ts +16 -0
- package/dist/types/hooks/browser.d.ts +2 -0
- package/dist/types/hooks/useEventListener/useEventListener.d.ts +0 -22
- package/dist/types/hooks/useField/useField.d.ts +3 -3
- package/dist/types/hooks/useFileSystemAccess/useFileSystemAccess.d.ts +116 -0
- package/dist/types/hooks/useKeyboard/useKeyboard.d.ts +4 -2
- package/dist/types/hooks/useObjectUrl/useObjectUrl.d.ts +24 -0
- package/dist/types/hooks/usePerformanceObserver/usePerformanceObserver.d.ts +1 -0
- package/dist/types/hooks/useScrollIntoView/useScrollIntoView.d.ts +1 -1
- package/dist/types/hooks/useWebSocket/useWebSocket.d.ts +1 -0
- package/package.json +5 -5
- package/dist/cjs/_virtual/client.cjs +0 -2
- package/dist/cjs/_virtual/client.cjs.map +0 -1
- package/dist/cjs/_virtual/client2.cjs +0 -2
- package/dist/cjs/_virtual/client2.cjs.map +0 -1
- package/dist/cjs/_virtual/index.cjs +0 -2
- package/dist/cjs/_virtual/index.cjs.map +0 -1
- package/dist/cjs/_virtual/react-dom-client.development.cjs +0 -2
- package/dist/cjs/_virtual/react-dom-client.development.cjs.map +0 -1
- package/dist/cjs/_virtual/react-dom-client.production.cjs +0 -2
- package/dist/cjs/_virtual/react-dom-client.production.cjs.map +0 -1
- package/dist/cjs/_virtual/scheduler.development.cjs +0 -2
- package/dist/cjs/_virtual/scheduler.development.cjs.map +0 -1
- package/dist/cjs/_virtual/scheduler.production.cjs +0 -2
- package/dist/cjs/_virtual/scheduler.production.cjs.map +0 -1
- package/dist/cjs/index.cjs.map +0 -1
- package/dist/cjs/node_modules/.pnpm/react-dom@19.2.4_react@19.2.4/node_modules/react-dom/cjs/react-dom-client.development.cjs +0 -215
- package/dist/cjs/node_modules/.pnpm/react-dom@19.2.4_react@19.2.4/node_modules/react-dom/cjs/react-dom-client.development.cjs.map +0 -1
- package/dist/cjs/node_modules/.pnpm/react-dom@19.2.4_react@19.2.4/node_modules/react-dom/cjs/react-dom-client.production.cjs +0 -10
- package/dist/cjs/node_modules/.pnpm/react-dom@19.2.4_react@19.2.4/node_modules/react-dom/cjs/react-dom-client.production.cjs.map +0 -1
- package/dist/cjs/node_modules/.pnpm/react-dom@19.2.4_react@19.2.4/node_modules/react-dom/client.cjs +0 -2
- package/dist/cjs/node_modules/.pnpm/react-dom@19.2.4_react@19.2.4/node_modules/react-dom/client.cjs.map +0 -1
- package/dist/cjs/node_modules/.pnpm/scheduler@0.27.0/node_modules/scheduler/cjs/scheduler.development.cjs +0 -2
- package/dist/cjs/node_modules/.pnpm/scheduler@0.27.0/node_modules/scheduler/cjs/scheduler.development.cjs.map +0 -1
- package/dist/cjs/node_modules/.pnpm/scheduler@0.27.0/node_modules/scheduler/cjs/scheduler.production.cjs +0 -2
- package/dist/cjs/node_modules/.pnpm/scheduler@0.27.0/node_modules/scheduler/cjs/scheduler.production.cjs.map +0 -1
- package/dist/cjs/node_modules/.pnpm/scheduler@0.27.0/node_modules/scheduler/index.cjs +0 -2
- package/dist/cjs/node_modules/.pnpm/scheduler@0.27.0/node_modules/scheduler/index.cjs.map +0 -1
- package/dist/esm/_virtual/client.mjs +0 -6
- package/dist/esm/_virtual/client.mjs.map +0 -1
- package/dist/esm/_virtual/client2.mjs +0 -5
- package/dist/esm/_virtual/client2.mjs.map +0 -1
- package/dist/esm/_virtual/index.mjs +0 -5
- package/dist/esm/_virtual/index.mjs.map +0 -1
- package/dist/esm/_virtual/react-dom-client.development.mjs +0 -5
- package/dist/esm/_virtual/react-dom-client.development.mjs.map +0 -1
- package/dist/esm/_virtual/react-dom-client.production.mjs +0 -5
- package/dist/esm/_virtual/react-dom-client.production.mjs.map +0 -1
- package/dist/esm/_virtual/scheduler.development.mjs +0 -5
- package/dist/esm/_virtual/scheduler.development.mjs.map +0 -1
- package/dist/esm/_virtual/scheduler.production.mjs +0 -5
- package/dist/esm/_virtual/scheduler.production.mjs.map +0 -1
- package/dist/esm/index.mjs.map +0 -1
- package/dist/esm/node_modules/.pnpm/react-dom@19.2.4_react@19.2.4/node_modules/react-dom/cjs/react-dom-client.development.mjs +0 -17019
- package/dist/esm/node_modules/.pnpm/react-dom@19.2.4_react@19.2.4/node_modules/react-dom/cjs/react-dom-client.development.mjs.map +0 -1
- package/dist/esm/node_modules/.pnpm/react-dom@19.2.4_react@19.2.4/node_modules/react-dom/cjs/react-dom-client.production.mjs +0 -9745
- package/dist/esm/node_modules/.pnpm/react-dom@19.2.4_react@19.2.4/node_modules/react-dom/cjs/react-dom-client.production.mjs.map +0 -1
- package/dist/esm/node_modules/.pnpm/react-dom@19.2.4_react@19.2.4/node_modules/react-dom/client.mjs +0 -24
- package/dist/esm/node_modules/.pnpm/react-dom@19.2.4_react@19.2.4/node_modules/react-dom/client.mjs.map +0 -1
- package/dist/esm/node_modules/.pnpm/scheduler@0.27.0/node_modules/scheduler/cjs/scheduler.development.mjs +0 -228
- package/dist/esm/node_modules/.pnpm/scheduler@0.27.0/node_modules/scheduler/cjs/scheduler.development.mjs.map +0 -1
- package/dist/esm/node_modules/.pnpm/scheduler@0.27.0/node_modules/scheduler/cjs/scheduler.production.mjs +0 -225
- package/dist/esm/node_modules/.pnpm/scheduler@0.27.0/node_modules/scheduler/cjs/scheduler.production.mjs.map +0 -1
- package/dist/esm/node_modules/.pnpm/scheduler@0.27.0/node_modules/scheduler/index.mjs +0 -11
- package/dist/esm/node_modules/.pnpm/scheduler@0.27.0/node_modules/scheduler/index.mjs.map +0 -1
|
@@ -1,61 +1,64 @@
|
|
|
1
|
-
import { useState as
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
1
|
+
import { useState as e } from "react";
|
|
2
|
+
//#region src/hooks/useMutation/useMutation.ts
|
|
3
|
+
var t = (t, n) => {
|
|
4
|
+
let [r, i] = e(!1), [a, o] = e(!1), [s, c] = e(!1), [l, u] = e(null), [d, f] = e(null), p = (e, n) => {
|
|
5
|
+
i(!0);
|
|
6
|
+
let r = n?.attempt ?? 0;
|
|
7
|
+
return t(e).then((e) => (n?.onSuccess?.(e), f(e), c(!0), i(!1), u(null), o(!1), e)).catch((t) => {
|
|
8
|
+
let a = typeof n?.retry == "function" ? n?.retry(r, t) : n?.retry, s = typeof n?.retryDelay == "function" ? n?.retryDelay(r, t) : n?.retryDelay;
|
|
9
|
+
if (typeof a == "boolean" && a) {
|
|
10
|
+
if (s) {
|
|
11
|
+
setTimeout(() => p(e, {
|
|
12
|
+
...n,
|
|
13
|
+
attempt: r + 1
|
|
14
|
+
}), s);
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
return p(e, {
|
|
18
|
+
...n,
|
|
19
|
+
attempt: r + 1
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
if (a && a > r) {
|
|
23
|
+
if (s) {
|
|
24
|
+
setTimeout(() => p(e, {
|
|
25
|
+
...n,
|
|
26
|
+
attempt: r + 1
|
|
27
|
+
}), s);
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
return p(e, {
|
|
31
|
+
...n,
|
|
32
|
+
attempt: r + 1
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
if (f(null), c(!1), i(!1), u(t), o(!0), !n?.onError) throw t;
|
|
36
|
+
n?.onError?.(t);
|
|
37
|
+
});
|
|
38
|
+
};
|
|
39
|
+
return {
|
|
40
|
+
data: d,
|
|
41
|
+
error: l,
|
|
42
|
+
mutate: (e, t) => {
|
|
43
|
+
p(e, {
|
|
44
|
+
retry: t?.retry ?? n?.retry,
|
|
45
|
+
retryDelay: t?.retryDelay ?? n?.retryDelay,
|
|
46
|
+
onSuccess: t?.onSuccess ?? n?.onSuccess,
|
|
47
|
+
onError: t?.onError ?? n?.onError
|
|
48
|
+
});
|
|
49
|
+
},
|
|
50
|
+
mutateAsync: async (e, t) => p(e, {
|
|
51
|
+
retry: t?.retry ?? n?.retry,
|
|
52
|
+
retryDelay: t?.retryDelay ?? n?.retryDelay,
|
|
53
|
+
onSuccess: t?.onSuccess ?? n?.onSuccess,
|
|
54
|
+
onError: t?.onError ?? n?.onError
|
|
55
|
+
}),
|
|
56
|
+
isLoading: r,
|
|
57
|
+
isError: a,
|
|
58
|
+
isSuccess: s
|
|
59
|
+
};
|
|
57
60
|
};
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
//# sourceMappingURL=useMutation.mjs.map
|
|
61
|
+
//#endregion
|
|
62
|
+
export { t as useMutation };
|
|
63
|
+
|
|
64
|
+
//# sourceMappingURL=useMutation.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useMutation.mjs","sources":["../../../../src/hooks/useMutation/useMutation.ts"],"sourcesContent":["import { useState } from \"react\";\r\n\r\n/* The type of the options */\r\ninterface UseMutationOptions<Data> {\r\n /* The retry count of requests */\r\n retry?: ((failureCount: number, error: Error) => boolean) | boolean | number;\r\n /* The retry delay of requests */\r\n retryDelay?: ((retry: number, error: Error) => number) | number;\r\n /* The callback function to be invoked on error */\r\n onError?: (error: Error) => void;\r\n /* The callback function to be invoked on success */\r\n onSuccess?: (data: Data) => void;\r\n}\r\n\r\n/* The use mutation return type */\r\ninterface UseMutationReturn<Body, Data> {\r\n /* The data of the mutation */\r\n data: Data | null;\r\n /* The error of the mutation */\r\n error: Error | null;\r\n /* The error state of the mutation */\r\n isError: boolean;\r\n /* The loading state of the mutation */\r\n isLoading: boolean;\r\n /* The success state of the mutation */\r\n isSuccess: boolean;\r\n /* The mutate function */\r\n mutate: (body?: Body, options?: UseMutationOptions<Data>) => void;\r\n /* The mutate async function */\r\n mutateAsync: (\r\n body?: Body,\r\n options?: UseMutationOptions<Data>\r\n ) => Promise<Data>;\r\n}\r\n\r\nexport interface RequestOptions<Data> extends UseMutationOptions<Data> {\r\n /* The attempt count */\r\n attempt?: number;\r\n}\r\n\r\n/**\r\n * @name useMutation\r\n * @description - Hook that defines the logic when mutate data\r\n * @category Async\r\n * @usage high\r\n *\r\n * @template Body The type of the body\r\n * @template Data The type of the data\r\n * @param {(body: Body) => Promise<Data>} callback The callback function to be invoked\r\n * @param {boolean | number} [options.retry] The retry count of requests\r\n * @param {(data: Data) => void} [options.onSuccess] The callback function to be invoked on success\r\n * @param {(error: Error) => void} [options.onError] The callback function to be invoked on error\r\n * @returns {UseMutationReturn<Data>} An object with the state of the mutation\r\n *\r\n * @example\r\n * const { mutate, mutateAsync, isLoading, isError, isSuccess, error, data } = useMutation((name) => Promise.resolve(name));\r\n */\r\nexport const useMutation = <Body, Data>(\r\n callback: (body: Body) => Promise<Data>,\r\n options?: UseMutationOptions<Data>\r\n) => {\r\n const [isLoading, setIsLoading] = useState(false);\r\n const [isError, setIsError] = useState(false);\r\n const [isSuccess, setIsSuccess] = useState(false);\r\n\r\n const [error, setError] = useState<Error | null>(null);\r\n const [data, setData] = useState<Data | null>(null);\r\n\r\n const request = (\r\n body: Body,\r\n requestOptions?: RequestOptions<Data>\r\n ): Promise<Data | undefined> => {\r\n setIsLoading(true);\r\n const attempt = requestOptions?.attempt ?? 0;\r\n\r\n return callback(body)\r\n .then((response) => {\r\n requestOptions?.onSuccess?.(response);\r\n\r\n setData(response);\r\n setIsSuccess(true);\r\n setIsLoading(false);\r\n setError(null);\r\n setIsError(false);\r\n return response;\r\n })\r\n .catch((error: Error) => {\r\n const retry =\r\n typeof requestOptions?.retry === \"function\"\r\n ? requestOptions?.retry(attempt, error)\r\n : requestOptions?.retry;\r\n\r\n const retryDelay =\r\n typeof requestOptions?.retryDelay === \"function\"\r\n ? requestOptions?.retryDelay(attempt, error)\r\n : requestOptions?.retryDelay;\r\n\r\n if (typeof retry === \"boolean\" && retry) {\r\n if (retryDelay) {\r\n setTimeout(\r\n () => request(body, { ...requestOptions, attempt: attempt + 1 }),\r\n retryDelay\r\n );\r\n return;\r\n }\r\n return request(body, { ...requestOptions, attempt: attempt + 1 });\r\n }\r\n\r\n if (retry && retry > attempt) {\r\n if (retryDelay) {\r\n setTimeout(\r\n () => request(body, { ...requestOptions, attempt: attempt + 1 }),\r\n retryDelay\r\n );\r\n return;\r\n }\r\n return request(body, { ...requestOptions, attempt: attempt + 1 });\r\n }\r\n\r\n setData(null);\r\n setIsSuccess(false);\r\n setIsLoading(false);\r\n setError(error);\r\n setIsError(true);\r\n if (!requestOptions?.onError) throw error;\r\n requestOptions?.onError?.(error);\r\n });\r\n };\r\n const mutate = (body: Body, mutateOptions?: UseMutationOptions<Data>) => {\r\n const requestOptions = {\r\n retry: mutateOptions?.retry ?? options?.retry,\r\n retryDelay: mutateOptions?.retryDelay ?? options?.retryDelay,\r\n onSuccess: mutateOptions?.onSuccess ?? options?.onSuccess,\r\n onError: mutateOptions?.onError ?? options?.onError,\r\n };\r\n\r\n request(body, requestOptions);\r\n };\r\n\r\n const mutateAsync = async (\r\n body: Body,\r\n mutateOptions?: UseMutationOptions<Data>\r\n ) => {\r\n const requestOptions = {\r\n retry: mutateOptions?.retry ?? options?.retry,\r\n retryDelay: mutateOptions?.retryDelay ?? options?.retryDelay,\r\n onSuccess: mutateOptions?.onSuccess ?? options?.onSuccess,\r\n onError: mutateOptions?.onError ?? options?.onError,\r\n };\r\n\r\n return request(body, requestOptions) as Promise<Data>;\r\n };\r\n\r\n return {\r\n data,\r\n error,\r\n mutate,\r\n mutateAsync,\r\n isLoading,\r\n isError,\r\n isSuccess,\r\n } as UseMutationReturn<Body, Data>;\r\n};\r\n"],"
|
|
1
|
+
{"version":3,"file":"useMutation.mjs","names":[],"sources":["../../../../src/hooks/useMutation/useMutation.ts"],"sourcesContent":["import { useState } from \"react\";\r\n\r\n/* The type of the options */\r\ninterface UseMutationOptions<Data> {\r\n /* The retry count of requests */\r\n retry?: ((failureCount: number, error: Error) => boolean) | boolean | number;\r\n /* The retry delay of requests */\r\n retryDelay?: ((retry: number, error: Error) => number) | number;\r\n /* The callback function to be invoked on error */\r\n onError?: (error: Error) => void;\r\n /* The callback function to be invoked on success */\r\n onSuccess?: (data: Data) => void;\r\n}\r\n\r\n/* The use mutation return type */\r\ninterface UseMutationReturn<Body, Data> {\r\n /* The data of the mutation */\r\n data: Data | null;\r\n /* The error of the mutation */\r\n error: Error | null;\r\n /* The error state of the mutation */\r\n isError: boolean;\r\n /* The loading state of the mutation */\r\n isLoading: boolean;\r\n /* The success state of the mutation */\r\n isSuccess: boolean;\r\n /* The mutate function */\r\n mutate: (body?: Body, options?: UseMutationOptions<Data>) => void;\r\n /* The mutate async function */\r\n mutateAsync: (\r\n body?: Body,\r\n options?: UseMutationOptions<Data>\r\n ) => Promise<Data>;\r\n}\r\n\r\nexport interface RequestOptions<Data> extends UseMutationOptions<Data> {\r\n /* The attempt count */\r\n attempt?: number;\r\n}\r\n\r\n/**\r\n * @name useMutation\r\n * @description - Hook that defines the logic when mutate data\r\n * @category Async\r\n * @usage high\r\n *\r\n * @template Body The type of the body\r\n * @template Data The type of the data\r\n * @param {(body: Body) => Promise<Data>} callback The callback function to be invoked\r\n * @param {boolean | number} [options.retry] The retry count of requests\r\n * @param {(data: Data) => void} [options.onSuccess] The callback function to be invoked on success\r\n * @param {(error: Error) => void} [options.onError] The callback function to be invoked on error\r\n * @returns {UseMutationReturn<Data>} An object with the state of the mutation\r\n *\r\n * @example\r\n * const { mutate, mutateAsync, isLoading, isError, isSuccess, error, data } = useMutation((name) => Promise.resolve(name));\r\n */\r\nexport const useMutation = <Body, Data>(\r\n callback: (body: Body) => Promise<Data>,\r\n options?: UseMutationOptions<Data>\r\n) => {\r\n const [isLoading, setIsLoading] = useState(false);\r\n const [isError, setIsError] = useState(false);\r\n const [isSuccess, setIsSuccess] = useState(false);\r\n\r\n const [error, setError] = useState<Error | null>(null);\r\n const [data, setData] = useState<Data | null>(null);\r\n\r\n const request = (\r\n body: Body,\r\n requestOptions?: RequestOptions<Data>\r\n ): Promise<Data | undefined> => {\r\n setIsLoading(true);\r\n const attempt = requestOptions?.attempt ?? 0;\r\n\r\n return callback(body)\r\n .then((response) => {\r\n requestOptions?.onSuccess?.(response);\r\n\r\n setData(response);\r\n setIsSuccess(true);\r\n setIsLoading(false);\r\n setError(null);\r\n setIsError(false);\r\n return response;\r\n })\r\n .catch((error: Error) => {\r\n const retry =\r\n typeof requestOptions?.retry === \"function\"\r\n ? requestOptions?.retry(attempt, error)\r\n : requestOptions?.retry;\r\n\r\n const retryDelay =\r\n typeof requestOptions?.retryDelay === \"function\"\r\n ? requestOptions?.retryDelay(attempt, error)\r\n : requestOptions?.retryDelay;\r\n\r\n if (typeof retry === \"boolean\" && retry) {\r\n if (retryDelay) {\r\n setTimeout(\r\n () => request(body, { ...requestOptions, attempt: attempt + 1 }),\r\n retryDelay\r\n );\r\n return;\r\n }\r\n return request(body, { ...requestOptions, attempt: attempt + 1 });\r\n }\r\n\r\n if (retry && retry > attempt) {\r\n if (retryDelay) {\r\n setTimeout(\r\n () => request(body, { ...requestOptions, attempt: attempt + 1 }),\r\n retryDelay\r\n );\r\n return;\r\n }\r\n return request(body, { ...requestOptions, attempt: attempt + 1 });\r\n }\r\n\r\n setData(null);\r\n setIsSuccess(false);\r\n setIsLoading(false);\r\n setError(error);\r\n setIsError(true);\r\n if (!requestOptions?.onError) throw error;\r\n requestOptions?.onError?.(error);\r\n });\r\n };\r\n const mutate = (body: Body, mutateOptions?: UseMutationOptions<Data>) => {\r\n const requestOptions = {\r\n retry: mutateOptions?.retry ?? options?.retry,\r\n retryDelay: mutateOptions?.retryDelay ?? options?.retryDelay,\r\n onSuccess: mutateOptions?.onSuccess ?? options?.onSuccess,\r\n onError: mutateOptions?.onError ?? options?.onError,\r\n };\r\n\r\n request(body, requestOptions);\r\n };\r\n\r\n const mutateAsync = async (\r\n body: Body,\r\n mutateOptions?: UseMutationOptions<Data>\r\n ) => {\r\n const requestOptions = {\r\n retry: mutateOptions?.retry ?? options?.retry,\r\n retryDelay: mutateOptions?.retryDelay ?? options?.retryDelay,\r\n onSuccess: mutateOptions?.onSuccess ?? options?.onSuccess,\r\n onError: mutateOptions?.onError ?? options?.onError,\r\n };\r\n\r\n return request(body, requestOptions) as Promise<Data>;\r\n };\r\n\r\n return {\r\n data,\r\n error,\r\n mutate,\r\n mutateAsync,\r\n isLoading,\r\n isError,\r\n isSuccess,\r\n } as UseMutationReturn<Body, Data>;\r\n};\r\n"],"mappings":";;AAyDA,IAAa,KACX,GACA,MACG;CACH,IAAM,CAAC,GAAW,KAAgB,EAAS,GAAM,EAC3C,CAAC,GAAS,KAAc,EAAS,GAAM,EACvC,CAAC,GAAW,KAAgB,EAAS,GAAM,EAE3C,CAAC,GAAO,KAAY,EAAuB,KAAK,EAChD,CAAC,GAAM,KAAW,EAAsB,KAAK,EAE7C,KACJ,GACA,MAC8B;AAC9B,IAAa,GAAK;EAClB,IAAM,IAAU,GAAgB,WAAW;AAE3C,SAAO,EAAS,EAAK,CAClB,MAAM,OACL,GAAgB,YAAY,EAAS,EAErC,EAAQ,EAAS,EACjB,EAAa,GAAK,EAClB,EAAa,GAAM,EACnB,EAAS,KAAK,EACd,EAAW,GAAM,EACV,GACP,CACD,OAAO,MAAiB;GACvB,IAAM,IACJ,OAAO,GAAgB,SAAU,aAC7B,GAAgB,MAAM,GAAS,EAAM,GACrC,GAAgB,OAEhB,IACJ,OAAO,GAAgB,cAAe,aAClC,GAAgB,WAAW,GAAS,EAAM,GAC1C,GAAgB;AAEtB,OAAI,OAAO,KAAU,aAAa,GAAO;AACvC,QAAI,GAAY;AACd,sBACQ,EAAQ,GAAM;MAAE,GAAG;MAAgB,SAAS,IAAU;MAAG,CAAC,EAChE,EACD;AACD;;AAEF,WAAO,EAAQ,GAAM;KAAE,GAAG;KAAgB,SAAS,IAAU;KAAG,CAAC;;AAGnE,OAAI,KAAS,IAAQ,GAAS;AAC5B,QAAI,GAAY;AACd,sBACQ,EAAQ,GAAM;MAAE,GAAG;MAAgB,SAAS,IAAU;MAAG,CAAC,EAChE,EACD;AACD;;AAEF,WAAO,EAAQ,GAAM;KAAE,GAAG;KAAgB,SAAS,IAAU;KAAG,CAAC;;AAQnE,OALA,EAAQ,KAAK,EACb,EAAa,GAAM,EACnB,EAAa,GAAM,EACnB,EAAS,EAAM,EACf,EAAW,GAAK,EACZ,CAAC,GAAgB,QAAS,OAAM;AACpC,MAAgB,UAAU,EAAM;IAChC;;AA2BN,QAAO;EACL;EACA;EACA,SA5Bc,GAAY,MAA6C;AAQvE,KAAQ,GAPe;IACrB,OAAO,GAAe,SAAS,GAAS;IACxC,YAAY,GAAe,cAAc,GAAS;IAClD,WAAW,GAAe,aAAa,GAAS;IAChD,SAAS,GAAe,WAAW,GAAS;IAC7C,CAE4B;;EAqB7B,aAlBkB,OAClB,GACA,MASO,EAAQ,GAPQ;GACrB,OAAO,GAAe,SAAS,GAAS;GACxC,YAAY,GAAe,cAAc,GAAS;GAClD,WAAW,GAAe,aAAa,GAAS;GAChD,SAAS,GAAe,WAAW,GAAS;GAC7C,CAEmC;EAQpC;EACA;EACA;EACD"}
|
|
@@ -1,35 +1,36 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { useRefState as
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
1
|
+
import { isTarget as e } from "../../utils/helpers/isTarget.mjs";
|
|
2
|
+
import { useRefState as t } from "../useRefState/useRefState.mjs";
|
|
3
|
+
import { useEffect as n, useRef as r, useState as i } from "react";
|
|
4
|
+
//#region src/hooks/useMutationObserver/useMutationObserver.ts
|
|
5
|
+
var a = ((...a) => {
|
|
6
|
+
let o = e(a[0]) ? a[0] : void 0, s = o ? typeof a[1] == "object" ? a[1] : { onChange: a[1] } : typeof a[0] == "object" ? a[0] : { onChange: a[0] }, c = s?.onChange, l = s?.enabled ?? !0, [u, d] = i(), f = t(), p = r(c);
|
|
7
|
+
return p.current = c, n(() => {
|
|
8
|
+
if (!l || !o && !f.state) return;
|
|
9
|
+
let t = o ? e.getElement(o) : f.current;
|
|
10
|
+
if (!t) return;
|
|
11
|
+
let n = new MutationObserver((e, t) => {
|
|
12
|
+
p.current?.(e, t);
|
|
13
|
+
});
|
|
14
|
+
return d(n), n.observe(t, s), () => {
|
|
15
|
+
n.disconnect();
|
|
16
|
+
};
|
|
17
|
+
}, [
|
|
18
|
+
o && e.getRawElement(o),
|
|
19
|
+
f.state,
|
|
20
|
+
s?.childList,
|
|
21
|
+
s?.attributes,
|
|
22
|
+
s?.characterData,
|
|
23
|
+
s?.subtree,
|
|
24
|
+
s?.attributeOldValue,
|
|
25
|
+
s?.characterDataOldValue,
|
|
26
|
+
s?.attributeFilter,
|
|
27
|
+
l
|
|
28
|
+
]), o ? { observer: u } : {
|
|
29
|
+
ref: f,
|
|
30
|
+
observer: u
|
|
31
|
+
};
|
|
31
32
|
});
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
//# sourceMappingURL=useMutationObserver.mjs.map
|
|
33
|
+
//#endregion
|
|
34
|
+
export { a as useMutationObserver };
|
|
35
|
+
|
|
36
|
+
//# sourceMappingURL=useMutationObserver.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useMutationObserver.mjs","sources":["../../../../src/hooks/useMutationObserver/useMutationObserver.ts"],"sourcesContent":["import { useEffect, useRef, useState } from 'react';\n\nimport type { HookTarget } from '@/utils/helpers';\n\nimport { isTarget } from '@/utils/helpers';\n\nimport type { StateRef } from '../useRefState/useRefState';\n\nimport { useRefState } from '../useRefState/useRefState';\n\n/** The mutation observer callback type */\nexport type UseMutationObserverCallback = (\n mutations: MutationRecord[],\n observer: MutationObserver\n) => void;\n\n/** The mutation observer options type */\nexport interface UseMutationObserverOptions extends MutationObserverInit {\n /** The enabled state of the mutation observer */\n enabled?: boolean;\n /** The callback to execute when mutation is detected */\n onChange?: UseMutationObserverCallback;\n}\n\n/** The mutation observer return type */\nexport interface UseMutationObserverReturn {\n /** The mutation observer instance */\n observer?: MutationObserver;\n}\n\nexport interface UseMutationObserver {\n <Target extends Element>(\n options?: UseMutationObserverOptions,\n target?: never\n ): UseMutationObserverReturn & { ref: StateRef<Target> };\n\n (target: HookTarget, options?: UseMutationObserverOptions): UseMutationObserverReturn;\n\n <Target extends Element>(\n callback: UseMutationObserverCallback,\n target?: never\n ): UseMutationObserverReturn & { ref: StateRef<Target> };\n\n (target: HookTarget, callback: UseMutationObserverCallback): UseMutationObserverReturn;\n}\n\n/**\n * @name useMutationObserver\n * @description - Hook that gives you mutation observer state\n * @category Sensors\n * @usage low\n *\n * @browserapi MutationObserver https://developer.mozilla.org/en-US/docs/Web/API/MutationObserver\n *\n * @overload\n * @param {HookTarget} target The target element to observe\n * @param {boolean} [options.enabled=true] The enabled state of the mutation observer\n * @param {UseMutationObserverCallback} [options.onChange] The callback to execute when mutation is detected\n * @param {boolean} [options.attributes] Set to true if mutations to target's attributes are to be observed\n * @param {boolean} [options.characterData] Set to true if mutations to target's data are to be observed\n * @param {boolean} [options.childList] Set to true if mutations to target's children are to be observed\n * @param {boolean} [options.subtree] Set to true if mutations to not just target, but also target's descendants are to be observed\n * @returns {UseMutationObserverReturn} An object containing the mutation observer state\n *\n * @example\n * const { observer, stop } = useMutationObserver(ref, { childList: true });\n *\n * @overload\n * @template Target The target element\n * @param {boolean} [options.enabled=true] The enabled state of the mutation observer\n * @param {UseMutationObserverCallback} [options.onChange] The callback to execute when mutation is detected\n * @param {boolean} [options.attributes] Set to true if mutations to target's attributes are to be observed\n * @param {boolean} [options.characterData] Set to true if mutations to target's data are to be observed\n * @param {boolean} [options.childList] Set to true if mutations to target's children are to be observed\n * @param {boolean} [options.subtree] Set to true if mutations to not just target, but also target's descendants are to be observed\n * @returns {UseMutationObserverReturn & { ref: StateRef<Target> }} A React ref to attach to the target element\n *\n * @example\n * const { ref, observer, stop } = useMutationObserver({ childList: true });\n *\n * @overload\n * @template Target The target element\n * @param {UseMutationObserverCallback} callback The callback to execute when mutation is detected\n * @returns {UseMutationObserverReturn & { ref: StateRef<Target> }} A React ref to attach to the target element\n *\n * @example\n * const { ref, observer, stop } = useMutationObserver((mutations) => console.log(mutations));\n *\n * @overload\n * @param {UseMutationObserverCallback} callback The callback to execute when mutation is detected\n * @param {HookTarget} target The target element to observe\n * @returns {UseMutationObserverReturn} An object containing the mutation observer state\n *\n * @example\n * const { observer, stop } = useMutationObserver((mutations) => console.log(mutations), ref);\n */\nexport const useMutationObserver = ((...params: any[]) => {\n const target = (isTarget(params[0]) ? params[0] : undefined) as HookTarget | undefined;\n\n const options = (\n target\n ? typeof params[1] === 'object'\n ? params[1]\n : { onChange: params[1] }\n : typeof params[0] === 'object'\n ? params[0]\n : { onChange: params[0] }\n ) as UseMutationObserverOptions | undefined;\n\n const callback = options?.onChange;\n const enabled = options?.enabled ?? true;\n\n const [observer, setObserver] = useState<MutationObserver>();\n\n const internalRef = useRefState<Element>();\n const internalCallbackRef = useRef(callback);\n internalCallbackRef.current = callback;\n\n useEffect(() => {\n if (!enabled || (!target && !internalRef.state)) return;\n\n const element = target ? isTarget.getElement(target) : internalRef.current;\n if (!element) return;\n\n const observer = new MutationObserver((mutations, observer) => {\n internalCallbackRef.current?.(mutations, observer);\n });\n\n setObserver(observer);\n observer.observe(element as Element, options);\n\n return () => {\n observer.disconnect();\n };\n }, [\n target && isTarget.getRawElement(target),\n internalRef.state,\n options?.childList,\n options?.attributes,\n options?.characterData,\n options?.subtree,\n options?.attributeOldValue,\n options?.characterDataOldValue,\n options?.attributeFilter,\n enabled\n ]);\n\n if (target) return { observer };\n return {\n ref: internalRef,\n observer\n };\n}) as UseMutationObserver;\n"],"
|
|
1
|
+
{"version":3,"file":"useMutationObserver.mjs","names":[],"sources":["../../../../src/hooks/useMutationObserver/useMutationObserver.ts"],"sourcesContent":["import { useEffect, useRef, useState } from 'react';\n\nimport type { HookTarget } from '@/utils/helpers';\n\nimport { isTarget } from '@/utils/helpers';\n\nimport type { StateRef } from '../useRefState/useRefState';\n\nimport { useRefState } from '../useRefState/useRefState';\n\n/** The mutation observer callback type */\nexport type UseMutationObserverCallback = (\n mutations: MutationRecord[],\n observer: MutationObserver\n) => void;\n\n/** The mutation observer options type */\nexport interface UseMutationObserverOptions extends MutationObserverInit {\n /** The enabled state of the mutation observer */\n enabled?: boolean;\n /** The callback to execute when mutation is detected */\n onChange?: UseMutationObserverCallback;\n}\n\n/** The mutation observer return type */\nexport interface UseMutationObserverReturn {\n /** The mutation observer instance */\n observer?: MutationObserver;\n}\n\nexport interface UseMutationObserver {\n <Target extends Element>(\n options?: UseMutationObserverOptions,\n target?: never\n ): UseMutationObserverReturn & { ref: StateRef<Target> };\n\n (target: HookTarget, options?: UseMutationObserverOptions): UseMutationObserverReturn;\n\n <Target extends Element>(\n callback: UseMutationObserverCallback,\n target?: never\n ): UseMutationObserverReturn & { ref: StateRef<Target> };\n\n (target: HookTarget, callback: UseMutationObserverCallback): UseMutationObserverReturn;\n}\n\n/**\n * @name useMutationObserver\n * @description - Hook that gives you mutation observer state\n * @category Sensors\n * @usage low\n *\n * @browserapi MutationObserver https://developer.mozilla.org/en-US/docs/Web/API/MutationObserver\n *\n * @overload\n * @param {HookTarget} target The target element to observe\n * @param {boolean} [options.enabled=true] The enabled state of the mutation observer\n * @param {UseMutationObserverCallback} [options.onChange] The callback to execute when mutation is detected\n * @param {boolean} [options.attributes] Set to true if mutations to target's attributes are to be observed\n * @param {boolean} [options.characterData] Set to true if mutations to target's data are to be observed\n * @param {boolean} [options.childList] Set to true if mutations to target's children are to be observed\n * @param {boolean} [options.subtree] Set to true if mutations to not just target, but also target's descendants are to be observed\n * @returns {UseMutationObserverReturn} An object containing the mutation observer state\n *\n * @example\n * const { observer, stop } = useMutationObserver(ref, { childList: true });\n *\n * @overload\n * @template Target The target element\n * @param {boolean} [options.enabled=true] The enabled state of the mutation observer\n * @param {UseMutationObserverCallback} [options.onChange] The callback to execute when mutation is detected\n * @param {boolean} [options.attributes] Set to true if mutations to target's attributes are to be observed\n * @param {boolean} [options.characterData] Set to true if mutations to target's data are to be observed\n * @param {boolean} [options.childList] Set to true if mutations to target's children are to be observed\n * @param {boolean} [options.subtree] Set to true if mutations to not just target, but also target's descendants are to be observed\n * @returns {UseMutationObserverReturn & { ref: StateRef<Target> }} A React ref to attach to the target element\n *\n * @example\n * const { ref, observer, stop } = useMutationObserver({ childList: true });\n *\n * @overload\n * @template Target The target element\n * @param {UseMutationObserverCallback} callback The callback to execute when mutation is detected\n * @returns {UseMutationObserverReturn & { ref: StateRef<Target> }} A React ref to attach to the target element\n *\n * @example\n * const { ref, observer, stop } = useMutationObserver((mutations) => console.log(mutations));\n *\n * @overload\n * @param {UseMutationObserverCallback} callback The callback to execute when mutation is detected\n * @param {HookTarget} target The target element to observe\n * @returns {UseMutationObserverReturn} An object containing the mutation observer state\n *\n * @example\n * const { observer, stop } = useMutationObserver((mutations) => console.log(mutations), ref);\n */\nexport const useMutationObserver = ((...params: any[]) => {\n const target = (isTarget(params[0]) ? params[0] : undefined) as HookTarget | undefined;\n\n const options = (\n target\n ? typeof params[1] === 'object'\n ? params[1]\n : { onChange: params[1] }\n : typeof params[0] === 'object'\n ? params[0]\n : { onChange: params[0] }\n ) as UseMutationObserverOptions | undefined;\n\n const callback = options?.onChange;\n const enabled = options?.enabled ?? true;\n\n const [observer, setObserver] = useState<MutationObserver>();\n\n const internalRef = useRefState<Element>();\n const internalCallbackRef = useRef(callback);\n internalCallbackRef.current = callback;\n\n useEffect(() => {\n if (!enabled || (!target && !internalRef.state)) return;\n\n const element = target ? isTarget.getElement(target) : internalRef.current;\n if (!element) return;\n\n const observer = new MutationObserver((mutations, observer) => {\n internalCallbackRef.current?.(mutations, observer);\n });\n\n setObserver(observer);\n observer.observe(element as Element, options);\n\n return () => {\n observer.disconnect();\n };\n }, [\n target && isTarget.getRawElement(target),\n internalRef.state,\n options?.childList,\n options?.attributes,\n options?.characterData,\n options?.subtree,\n options?.attributeOldValue,\n options?.characterDataOldValue,\n options?.attributeFilter,\n enabled\n ]);\n\n if (target) return { observer };\n return {\n ref: internalRef,\n observer\n };\n}) as UseMutationObserver;\n"],"mappings":";;;;AAgGA,IAAa,MAAwB,GAAG,MAAkB;CACxD,IAAM,IAAU,EAAS,EAAO,GAAG,GAAG,EAAO,KAAK,KAAA,GAE5C,IACJ,IACI,OAAO,EAAO,MAAO,WACnB,EAAO,KACP,EAAE,UAAU,EAAO,IAAI,GACzB,OAAO,EAAO,MAAO,WACnB,EAAO,KACP,EAAE,UAAU,EAAO,IAAI,EAGzB,IAAW,GAAS,UACpB,IAAU,GAAS,WAAW,IAE9B,CAAC,GAAU,KAAe,GAA4B,EAEtD,IAAc,GAAsB,EACpC,IAAsB,EAAO,EAAS;AAiC5C,QAhCA,EAAoB,UAAU,GAE9B,QAAgB;AACd,MAAI,CAAC,KAAY,CAAC,KAAU,CAAC,EAAY,MAAQ;EAEjD,IAAM,IAAU,IAAS,EAAS,WAAW,EAAO,GAAG,EAAY;AACnE,MAAI,CAAC,EAAS;EAEd,IAAM,IAAW,IAAI,kBAAkB,GAAW,MAAa;AAC7D,KAAoB,UAAU,GAAW,EAAS;IAClD;AAKF,SAHA,EAAY,EAAS,EACrB,EAAS,QAAQ,GAAoB,EAAQ,QAEhC;AACX,KAAS,YAAY;;IAEtB;EACD,KAAU,EAAS,cAAc,EAAO;EACxC,EAAY;EACZ,GAAS;EACT,GAAS;EACT,GAAS;EACT,GAAS;EACT,GAAS;EACT,GAAS;EACT,GAAS;EACT;EACD,CAAC,EAEE,IAAe,EAAE,aAAU,GACxB;EACL,KAAK;EACL;EACD"}
|
|
@@ -1,49 +1,48 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
1
|
+
import { useEffect as e, useState as t } from "react";
|
|
2
|
+
//#region src/hooks/useNetwork/useNetwork.ts
|
|
3
|
+
var n = () => navigator?.connection || navigator?.mozConnection || navigator?.webkitConnection, r = () => {
|
|
4
|
+
let [r, i] = t(() => {
|
|
5
|
+
if (typeof navigator > "u") return {
|
|
6
|
+
online: !1,
|
|
7
|
+
type: void 0,
|
|
8
|
+
effectiveType: void 0,
|
|
9
|
+
saveData: !1,
|
|
10
|
+
downlink: 0,
|
|
11
|
+
downlinkMax: 0,
|
|
12
|
+
rtt: 0
|
|
13
|
+
};
|
|
14
|
+
let e = navigator.onLine, t = n();
|
|
15
|
+
return {
|
|
16
|
+
online: e,
|
|
17
|
+
downlink: t?.downlink,
|
|
18
|
+
downlinkMax: t?.downlinkMax,
|
|
19
|
+
effectiveType: t?.effectiveType,
|
|
20
|
+
rtt: t?.rtt,
|
|
21
|
+
saveData: t?.saveData,
|
|
22
|
+
type: t?.type
|
|
23
|
+
};
|
|
24
|
+
});
|
|
25
|
+
return e(() => {
|
|
26
|
+
let e = () => {
|
|
27
|
+
let e = navigator.onLine, t = n();
|
|
28
|
+
i({
|
|
29
|
+
online: e,
|
|
30
|
+
downlink: t?.downlink,
|
|
31
|
+
downlinkMax: t?.downlinkMax,
|
|
32
|
+
effectiveType: t?.effectiveType,
|
|
33
|
+
rtt: t?.rtt,
|
|
34
|
+
saveData: t?.saveData,
|
|
35
|
+
type: t?.type
|
|
36
|
+
});
|
|
37
|
+
};
|
|
38
|
+
window.addEventListener("online", e, { passive: !0 }), window.addEventListener("offline", e, { passive: !0 });
|
|
39
|
+
let t = n();
|
|
40
|
+
return t && t.addEventListener("change", e, { passive: !0 }), () => {
|
|
41
|
+
window.removeEventListener("online", e), window.removeEventListener("offline", e), t && t.removeEventListener("change", e);
|
|
42
|
+
};
|
|
43
|
+
}), r;
|
|
44
44
|
};
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
//# sourceMappingURL=useNetwork.mjs.map
|
|
45
|
+
//#endregion
|
|
46
|
+
export { n as getConnection, r as useNetwork };
|
|
47
|
+
|
|
48
|
+
//# sourceMappingURL=useNetwork.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useNetwork.mjs","sources":["../../../../src/hooks/useNetwork/useNetwork.ts"],"sourcesContent":["import { useEffect, useState } from 'react';\r\n\r\nexport interface Connection extends EventTarget {\r\n readonly downlink: number;\r\n readonly downlinkMax: number;\r\n readonly effectiveType: '2g' | '3g' | '4g' | 'slow-2g';\r\n readonly rtt: number;\r\n readonly saveData: boolean;\r\n onChange: (event: Event) => void;\r\n readonly type:\r\n | 'bluetooth'\r\n | 'cellular'\r\n | 'ethernet'\r\n | 'mixed'\r\n | 'none'\r\n | 'other'\r\n | 'unknown'\r\n | 'wifi'\r\n | 'wimax';\r\n}\r\n\r\ndeclare global {\r\n interface Navigator {\r\n readonly connection: Connection;\r\n readonly mozConnection: Connection;\r\n readonly webkitConnection: Connection;\r\n }\r\n}\r\n\r\n/** The type of network connection */\r\nexport type ConnectionType = Connection['type'];\r\n/** The effective type of connection */\r\nexport type ConnectionEffectiveType = Connection['effectiveType'];\r\n\r\n/** The use network return type */\r\nexport interface UseNetworkReturn {\r\n /** The estimated downlink speed in megabits per seconds */\r\n downlink?: Connection['downlink'];\r\n /** The maximum downlink speed, if available */\r\n downlinkMax?: Connection['downlinkMax'];\r\n /** The effective type of connection (e.g., '2g', '3g', '4g') */\r\n effectiveType?: Connection['effectiveType'];\r\n /** Indicates if the device is currently online */\r\n online: boolean;\r\n /** The estimated round-trip time in milliseconds */\r\n rtt?: Connection['rtt'];\r\n /** Indicates if the user has enabled data saving mode */\r\n saveData?: Connection['saveData'];\r\n /** The type of network connection (e.g., 'wifi', 'cellular') */\r\n type?: Connection['type'];\r\n}\r\n\r\nexport const getConnection = () =>\r\n navigator?.connection || navigator?.mozConnection || navigator?.webkitConnection;\r\n\r\n/**\r\n * @name useNetwork\r\n * @description - Hook to track network status\r\n * @category Browser\r\n * @usage low\r\n *\r\n * @browserapi navigator.connection https://developer.mozilla.org/en-US/docs/Web/API/Navigator/connection\r\n *\r\n * @returns {UseNetworkReturn} An object containing the network status\r\n *\r\n * @example\r\n * const { online, downlink, downlinkMax, effectiveType, rtt, saveData, type } = useNetwork();\r\n */\r\nexport const useNetwork = (): UseNetworkReturn => {\r\n const [value, setValue] = useState(() => {\r\n if (typeof navigator === 'undefined') {\r\n return {\r\n online: false,\r\n type: undefined,\r\n effectiveType: undefined,\r\n saveData: false,\r\n downlink: 0,\r\n downlinkMax: 0,\r\n rtt: 0\r\n };\r\n }\r\n const online = navigator.onLine;\r\n const connection = getConnection();\r\n\r\n return {\r\n online,\r\n downlink: connection?.downlink,\r\n downlinkMax: connection?.downlinkMax,\r\n effectiveType: connection?.effectiveType,\r\n rtt: connection?.rtt,\r\n saveData: connection?.saveData,\r\n type: connection?.type\r\n };\r\n });\r\n\r\n useEffect(() => {\r\n const callback = () => {\r\n const online = navigator.onLine;\r\n const connection = getConnection();\r\n\r\n setValue({\r\n online,\r\n downlink: connection?.downlink,\r\n downlinkMax: connection?.downlinkMax,\r\n effectiveType: connection?.effectiveType,\r\n rtt: connection?.rtt,\r\n saveData: connection?.saveData,\r\n type: connection?.type\r\n });\r\n };\r\n window.addEventListener('online', callback, { passive: true });\r\n window.addEventListener('offline', callback, { passive: true });\r\n\r\n const connection = getConnection();\r\n\r\n if (connection) {\r\n connection.addEventListener('change', callback, { passive: true });\r\n }\r\n\r\n return () => {\r\n window.removeEventListener('online', callback);\r\n window.removeEventListener('offline', callback);\r\n\r\n if (connection) {\r\n connection.removeEventListener('change', callback);\r\n }\r\n };\r\n });\r\n\r\n return value;\r\n};\r\n"],"
|
|
1
|
+
{"version":3,"file":"useNetwork.mjs","names":[],"sources":["../../../../src/hooks/useNetwork/useNetwork.ts"],"sourcesContent":["import { useEffect, useState } from 'react';\r\n\r\nexport interface Connection extends EventTarget {\r\n readonly downlink: number;\r\n readonly downlinkMax: number;\r\n readonly effectiveType: '2g' | '3g' | '4g' | 'slow-2g';\r\n readonly rtt: number;\r\n readonly saveData: boolean;\r\n onChange: (event: Event) => void;\r\n readonly type:\r\n | 'bluetooth'\r\n | 'cellular'\r\n | 'ethernet'\r\n | 'mixed'\r\n | 'none'\r\n | 'other'\r\n | 'unknown'\r\n | 'wifi'\r\n | 'wimax';\r\n}\r\n\r\ndeclare global {\r\n interface Navigator {\r\n readonly connection: Connection;\r\n readonly mozConnection: Connection;\r\n readonly webkitConnection: Connection;\r\n }\r\n}\r\n\r\n/** The type of network connection */\r\nexport type ConnectionType = Connection['type'];\r\n/** The effective type of connection */\r\nexport type ConnectionEffectiveType = Connection['effectiveType'];\r\n\r\n/** The use network return type */\r\nexport interface UseNetworkReturn {\r\n /** The estimated downlink speed in megabits per seconds */\r\n downlink?: Connection['downlink'];\r\n /** The maximum downlink speed, if available */\r\n downlinkMax?: Connection['downlinkMax'];\r\n /** The effective type of connection (e.g., '2g', '3g', '4g') */\r\n effectiveType?: Connection['effectiveType'];\r\n /** Indicates if the device is currently online */\r\n online: boolean;\r\n /** The estimated round-trip time in milliseconds */\r\n rtt?: Connection['rtt'];\r\n /** Indicates if the user has enabled data saving mode */\r\n saveData?: Connection['saveData'];\r\n /** The type of network connection (e.g., 'wifi', 'cellular') */\r\n type?: Connection['type'];\r\n}\r\n\r\nexport const getConnection = () =>\r\n navigator?.connection || navigator?.mozConnection || navigator?.webkitConnection;\r\n\r\n/**\r\n * @name useNetwork\r\n * @description - Hook to track network status\r\n * @category Browser\r\n * @usage low\r\n *\r\n * @browserapi navigator.connection https://developer.mozilla.org/en-US/docs/Web/API/Navigator/connection\r\n *\r\n * @returns {UseNetworkReturn} An object containing the network status\r\n *\r\n * @example\r\n * const { online, downlink, downlinkMax, effectiveType, rtt, saveData, type } = useNetwork();\r\n */\r\nexport const useNetwork = (): UseNetworkReturn => {\r\n const [value, setValue] = useState(() => {\r\n if (typeof navigator === 'undefined') {\r\n return {\r\n online: false,\r\n type: undefined,\r\n effectiveType: undefined,\r\n saveData: false,\r\n downlink: 0,\r\n downlinkMax: 0,\r\n rtt: 0\r\n };\r\n }\r\n const online = navigator.onLine;\r\n const connection = getConnection();\r\n\r\n return {\r\n online,\r\n downlink: connection?.downlink,\r\n downlinkMax: connection?.downlinkMax,\r\n effectiveType: connection?.effectiveType,\r\n rtt: connection?.rtt,\r\n saveData: connection?.saveData,\r\n type: connection?.type\r\n };\r\n });\r\n\r\n useEffect(() => {\r\n const callback = () => {\r\n const online = navigator.onLine;\r\n const connection = getConnection();\r\n\r\n setValue({\r\n online,\r\n downlink: connection?.downlink,\r\n downlinkMax: connection?.downlinkMax,\r\n effectiveType: connection?.effectiveType,\r\n rtt: connection?.rtt,\r\n saveData: connection?.saveData,\r\n type: connection?.type\r\n });\r\n };\r\n window.addEventListener('online', callback, { passive: true });\r\n window.addEventListener('offline', callback, { passive: true });\r\n\r\n const connection = getConnection();\r\n\r\n if (connection) {\r\n connection.addEventListener('change', callback, { passive: true });\r\n }\r\n\r\n return () => {\r\n window.removeEventListener('online', callback);\r\n window.removeEventListener('offline', callback);\r\n\r\n if (connection) {\r\n connection.removeEventListener('change', callback);\r\n }\r\n };\r\n });\r\n\r\n return value;\r\n};\r\n"],"mappings":";;AAoDA,IAAa,UACX,WAAW,cAAc,WAAW,iBAAiB,WAAW,kBAerD,UAAqC;CAChD,IAAM,CAAC,GAAO,KAAY,QAAe;AACvC,MAAI,OAAO,YAAc,IACvB,QAAO;GACL,QAAQ;GACR,MAAM,KAAA;GACN,eAAe,KAAA;GACf,UAAU;GACV,UAAU;GACV,aAAa;GACb,KAAK;GACN;EAEH,IAAM,IAAS,UAAU,QACnB,IAAa,GAAe;AAElC,SAAO;GACL;GACA,UAAU,GAAY;GACtB,aAAa,GAAY;GACzB,eAAe,GAAY;GAC3B,KAAK,GAAY;GACjB,UAAU,GAAY;GACtB,MAAM,GAAY;GACnB;GACD;AAoCF,QAlCA,QAAgB;EACd,IAAM,UAAiB;GACrB,IAAM,IAAS,UAAU,QACnB,IAAa,GAAe;AAElC,KAAS;IACP;IACA,UAAU,GAAY;IACtB,aAAa,GAAY;IACzB,eAAe,GAAY;IAC3B,KAAK,GAAY;IACjB,UAAU,GAAY;IACtB,MAAM,GAAY;IACnB,CAAC;;AAGJ,EADA,OAAO,iBAAiB,UAAU,GAAU,EAAE,SAAS,IAAM,CAAC,EAC9D,OAAO,iBAAiB,WAAW,GAAU,EAAE,SAAS,IAAM,CAAC;EAE/D,IAAM,IAAa,GAAe;AAMlC,SAJI,KACF,EAAW,iBAAiB,UAAU,GAAU,EAAE,SAAS,IAAM,CAAC,QAGvD;AAIX,GAHA,OAAO,oBAAoB,UAAU,EAAS,EAC9C,OAAO,oBAAoB,WAAW,EAAS,EAE3C,KACF,EAAW,oBAAoB,UAAU,EAAS;;GAGtD,EAEK"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { useState as e } from "react";
|
|
2
|
+
//#region src/hooks/useObjectUrl/useObjectUrl.ts
|
|
3
|
+
var t = (t) => {
|
|
4
|
+
let [n, r] = e(() => {
|
|
5
|
+
if (t) return URL.createObjectURL(t);
|
|
6
|
+
});
|
|
7
|
+
return {
|
|
8
|
+
value: n,
|
|
9
|
+
revoke: () => {
|
|
10
|
+
n && (URL.revokeObjectURL(n), r(void 0));
|
|
11
|
+
},
|
|
12
|
+
set: (e) => {
|
|
13
|
+
n && URL.revokeObjectURL(n), r(URL.createObjectURL(e));
|
|
14
|
+
}
|
|
15
|
+
};
|
|
16
|
+
};
|
|
17
|
+
//#endregion
|
|
18
|
+
export { t as useObjectUrl };
|
|
19
|
+
|
|
20
|
+
//# sourceMappingURL=useObjectUrl.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useObjectUrl.mjs","names":[],"sources":["../../../../src/hooks/useObjectUrl/useObjectUrl.ts"],"sourcesContent":["import { useState } from 'react';\n\n/** The use object url return type */\nexport interface UseObjectUrlReturn {\n /** Current object URL */\n value?: string;\n /** Revokes the object URL */\n revoke: () => void;\n /** Creates the object URL */\n set: (object: Blob | MediaSource) => void;\n}\n\n/**\n * @name useObjectUrl\n * @description - Hook that creates and revokes an object URL for a Blob or MediaSource\n * @category Browser\n * @usage low\n *\n * @browserapi URL.createObjectURL https://developer.mozilla.org/en-US/docs/Web/API/URL/createObjectURL\n *\n * @param {Blob | MediaSource} object The object to represent as a URL\n * @returns {UseObjectUrlReturn} An object with the current object URL\n *\n * @example\n * const { value } = useObjectUrl(blob);\n */\nexport const useObjectUrl = <Value extends Blob | MediaSource | undefined>(\n object?: Value\n): UseObjectUrlReturn => {\n const [value, setValue] = useState(() => {\n if (!object) return undefined;\n return URL.createObjectURL(object);\n });\n\n const revoke = () => {\n if (!value) return;\n URL.revokeObjectURL(value);\n setValue(undefined);\n };\n\n const set = (object: Blob | MediaSource) => {\n if (value) URL.revokeObjectURL(value);\n setValue(URL.createObjectURL(object));\n };\n\n return { value, revoke, set };\n};\n"],"mappings":";;AA0BA,IAAa,KACX,MACuB;CACvB,IAAM,CAAC,GAAO,KAAY,QAAe;AAClC,QACL,QAAO,IAAI,gBAAgB,EAAO;GAClC;AAaF,QAAO;EAAE;EAAO,cAXK;AACd,SACL,IAAI,gBAAgB,EAAM,EAC1B,EAAS,KAAA,EAAU;;EAQG,MALX,MAA+B;AAE1C,GADI,KAAO,IAAI,gBAAgB,EAAM,EACrC,EAAS,IAAI,gBAAgB,EAAO,CAAC;;EAGV"}
|
|
@@ -1,41 +1,51 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
1
|
+
import { useRef as e, useState as t } from "react";
|
|
2
|
+
//#region src/hooks/useOffsetPagination/useOffsetPagination.ts
|
|
3
|
+
var n = ({ total: n = Infinity, initialPage: r = 1, initialPageSize: i = 10, onChange: a = () => {} } = {}) => {
|
|
4
|
+
let [o, s] = t(r), [c, l] = t(i), u = e(a);
|
|
5
|
+
u.current = a;
|
|
6
|
+
let d = Math.max(1, Math.ceil(n / c)), f = o === 1, p = o === d;
|
|
7
|
+
return {
|
|
8
|
+
page: o,
|
|
9
|
+
setPage: (e) => {
|
|
10
|
+
s(e), a({
|
|
11
|
+
page: e,
|
|
12
|
+
pageSize: c
|
|
13
|
+
});
|
|
14
|
+
},
|
|
15
|
+
setPageSize: l,
|
|
16
|
+
pageSize: c,
|
|
17
|
+
isFirstPage: f,
|
|
18
|
+
isLastPage: p,
|
|
19
|
+
pageCount: d,
|
|
20
|
+
next: () => {
|
|
21
|
+
if (p) return a({
|
|
22
|
+
page: d,
|
|
23
|
+
pageSize: c
|
|
24
|
+
});
|
|
25
|
+
s((e) => {
|
|
26
|
+
let t = e + 1;
|
|
27
|
+
return a({
|
|
28
|
+
page: t,
|
|
29
|
+
pageSize: c
|
|
30
|
+
}), t;
|
|
31
|
+
});
|
|
32
|
+
},
|
|
33
|
+
prev: () => {
|
|
34
|
+
if (f) return a({
|
|
35
|
+
page: 1,
|
|
36
|
+
pageSize: c
|
|
37
|
+
});
|
|
38
|
+
s((e) => {
|
|
39
|
+
let t = e - 1;
|
|
40
|
+
return a({
|
|
41
|
+
page: t,
|
|
42
|
+
pageSize: c
|
|
43
|
+
}), t;
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
};
|
|
37
47
|
};
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
//# sourceMappingURL=useOffsetPagination.mjs.map
|
|
48
|
+
//#endregion
|
|
49
|
+
export { n as useOffsetPagination };
|
|
50
|
+
|
|
51
|
+
//# sourceMappingURL=useOffsetPagination.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useOffsetPagination.mjs","sources":["../../../../src/hooks/useOffsetPagination/useOffsetPagination.ts"],"sourcesContent":["import { useRef, useState } from 'react';\n\n/** The use offset pagination return type */\nexport interface UseOffsetPaginationOptions {\n /** The initial page number */\n initialPage?: number;\n /** The number of items per page */\n initialPageSize?: number;\n /** The total number of items */\n total?: number;\n /** The callback function to be invoked when page changes */\n onChange?: ({ page, pageSize }: { page: number; pageSize: number }) => void;\n}\n\n/** The use offset pagination return type */\nexport interface UseOffsetPaginationReturn {\n /** Whether the current page is the first page */\n isFirstPage: boolean;\n /** Whether the current page is the last page */\n isLastPage: boolean;\n /** The current page number */\n page: number;\n /** The total number of pages */\n pageCount: number;\n /** The number of items per page */\n pageSize: number;\n /** The callback function to go to the next page */\n next: () => void;\n /** The callback function to go to the previous page */\n prev: () => void;\n /** The callback function to set the current page */\n setPage: (page: number) => void;\n /** The callback function to set the page size */\n setPageSize: (pageSize: number) => void;\n}\n\n/**\n * @name useOffsetPagination\n * @description - Hook that defines the logic when pagination\n * @category State\n * @usage medium\n *\n * @param {UseOffsetPaginationOptions} options - The options for the hook\n * @param {number} [options.total] - The total number of items\n * @param {number} [options.pageSize] - The number of items per page\n * @param {number} [options.initialPage] - The current page\n * @param {({ page, pageSize }: { page: number; pageSize: number }) => void} [options.onChange] - The callback function to be invoked when page changes\n * @returns {UseOffsetPaginationReturn} - The state of the hook\n *\n * @example\n * const { currentPage, currentPageSize, pageCount, isFirstPage, isLastPage, prev, next } = useOffsetPagination({\n * total: 100,\n * initialPageSize: 10,\n * initialPage: 1\n * });\n */\nexport const useOffsetPagination = ({\n total = Number.POSITIVE_INFINITY,\n initialPage = 1,\n initialPageSize = 10,\n onChange = () => {}\n}: UseOffsetPaginationOptions = {}): UseOffsetPaginationReturn => {\n const [page, setPage] = useState(initialPage);\n const [pageSize, setPageSize] = useState(initialPageSize);\n\n const onChangeRef = useRef(onChange);\n onChangeRef.current = onChange;\n\n const pageCount = Math.max(1, Math.ceil(total / pageSize));\n\n const isFirstPage = page === 1;\n const isLastPage = page === pageCount;\n\n const next = () => {\n if (isLastPage) return onChange({ page: pageCount, pageSize });\n\n setPage((prevPage) => {\n const page = prevPage + 1;\n onChange({ page, pageSize });\n return page;\n });\n };\n\n const prev = () => {\n if (isFirstPage) return onChange({ page: 1, pageSize });\n\n setPage((prevPage) => {\n const page = prevPage - 1;\n onChange({ page, pageSize });\n return page;\n });\n };\n\n const set = (page: number) => {\n setPage(page);\n onChange({ page, pageSize });\n };\n\n return {\n page,\n setPage: set,\n setPageSize,\n pageSize,\n isFirstPage,\n isLastPage,\n pageCount,\n next,\n prev\n };\n};\n"],"
|
|
1
|
+
{"version":3,"file":"useOffsetPagination.mjs","names":[],"sources":["../../../../src/hooks/useOffsetPagination/useOffsetPagination.ts"],"sourcesContent":["import { useRef, useState } from 'react';\n\n/** The use offset pagination return type */\nexport interface UseOffsetPaginationOptions {\n /** The initial page number */\n initialPage?: number;\n /** The number of items per page */\n initialPageSize?: number;\n /** The total number of items */\n total?: number;\n /** The callback function to be invoked when page changes */\n onChange?: ({ page, pageSize }: { page: number; pageSize: number }) => void;\n}\n\n/** The use offset pagination return type */\nexport interface UseOffsetPaginationReturn {\n /** Whether the current page is the first page */\n isFirstPage: boolean;\n /** Whether the current page is the last page */\n isLastPage: boolean;\n /** The current page number */\n page: number;\n /** The total number of pages */\n pageCount: number;\n /** The number of items per page */\n pageSize: number;\n /** The callback function to go to the next page */\n next: () => void;\n /** The callback function to go to the previous page */\n prev: () => void;\n /** The callback function to set the current page */\n setPage: (page: number) => void;\n /** The callback function to set the page size */\n setPageSize: (pageSize: number) => void;\n}\n\n/**\n * @name useOffsetPagination\n * @description - Hook that defines the logic when pagination\n * @category State\n * @usage medium\n *\n * @param {UseOffsetPaginationOptions} options - The options for the hook\n * @param {number} [options.total] - The total number of items\n * @param {number} [options.pageSize] - The number of items per page\n * @param {number} [options.initialPage] - The current page\n * @param {({ page, pageSize }: { page: number; pageSize: number }) => void} [options.onChange] - The callback function to be invoked when page changes\n * @returns {UseOffsetPaginationReturn} - The state of the hook\n *\n * @example\n * const { currentPage, currentPageSize, pageCount, isFirstPage, isLastPage, prev, next } = useOffsetPagination({\n * total: 100,\n * initialPageSize: 10,\n * initialPage: 1\n * });\n */\nexport const useOffsetPagination = ({\n total = Number.POSITIVE_INFINITY,\n initialPage = 1,\n initialPageSize = 10,\n onChange = () => {}\n}: UseOffsetPaginationOptions = {}): UseOffsetPaginationReturn => {\n const [page, setPage] = useState(initialPage);\n const [pageSize, setPageSize] = useState(initialPageSize);\n\n const onChangeRef = useRef(onChange);\n onChangeRef.current = onChange;\n\n const pageCount = Math.max(1, Math.ceil(total / pageSize));\n\n const isFirstPage = page === 1;\n const isLastPage = page === pageCount;\n\n const next = () => {\n if (isLastPage) return onChange({ page: pageCount, pageSize });\n\n setPage((prevPage) => {\n const page = prevPage + 1;\n onChange({ page, pageSize });\n return page;\n });\n };\n\n const prev = () => {\n if (isFirstPage) return onChange({ page: 1, pageSize });\n\n setPage((prevPage) => {\n const page = prevPage - 1;\n onChange({ page, pageSize });\n return page;\n });\n };\n\n const set = (page: number) => {\n setPage(page);\n onChange({ page, pageSize });\n };\n\n return {\n page,\n setPage: set,\n setPageSize,\n pageSize,\n isFirstPage,\n isLastPage,\n pageCount,\n next,\n prev\n };\n};\n"],"mappings":";;AAwDA,IAAa,KAAuB,EAClC,WAAQ,UACR,iBAAc,GACd,qBAAkB,IAClB,oBAAiB,OACa,EAAE,KAAgC;CAChE,IAAM,CAAC,GAAM,KAAW,EAAS,EAAY,EACvC,CAAC,GAAU,KAAe,EAAS,EAAgB,EAEnD,IAAc,EAAO,EAAS;AACpC,GAAY,UAAU;CAEtB,IAAM,IAAY,KAAK,IAAI,GAAG,KAAK,KAAK,IAAQ,EAAS,CAAC,EAEpD,IAAc,MAAS,GACvB,IAAa,MAAS;AA2B5B,QAAO;EACL;EACA,UAPW,MAAiB;AAE5B,GADA,EAAQ,EAAK,EACb,EAAS;IAAE;IAAM;IAAU,CAAC;;EAM5B;EACA;EACA;EACA;EACA;EACA,YAjCiB;AACjB,OAAI,EAAY,QAAO,EAAS;IAAE,MAAM;IAAW;IAAU,CAAC;AAE9D,MAAS,MAAa;IACpB,IAAM,IAAO,IAAW;AAExB,WADA,EAAS;KAAE;KAAM;KAAU,CAAC,EACrB;KACP;;EA2BF,YAxBiB;AACjB,OAAI,EAAa,QAAO,EAAS;IAAE,MAAM;IAAG;IAAU,CAAC;AAEvD,MAAS,MAAa;IACpB,IAAM,IAAO,IAAW;AAExB,WADA,EAAS;KAAE;KAAM;KAAU,CAAC,EACrB;KACP;;EAkBH"}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
1
|
+
import { useEffect as e, useRef as t } from "react";
|
|
2
|
+
//#region src/hooks/useOnce/useOnce.ts
|
|
3
|
+
function n(n) {
|
|
4
|
+
let r = t(void 0), i = t(!1), a = t(!1);
|
|
5
|
+
i.current && (a.current = !0), e(() => {
|
|
6
|
+
if (!i.current) return i.current = !0, r.current = n(), () => {
|
|
7
|
+
a.current && typeof r.current == "function" && r.current();
|
|
8
|
+
};
|
|
9
|
+
}, []);
|
|
10
10
|
}
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
//# sourceMappingURL=useOnce.mjs.map
|
|
11
|
+
//#endregion
|
|
12
|
+
export { n as useOnce };
|
|
13
|
+
|
|
14
|
+
//# sourceMappingURL=useOnce.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useOnce.mjs","sources":["../../../../src/hooks/useOnce/useOnce.ts"],"sourcesContent":["import type { EffectCallback } from 'react';\n\nimport { useEffect, useRef } from 'react';\n\n/**\n * @name useEffectOnce\n * @description - Hook that runs an effect only once. Please do not use it in production code!\n * @category Humor\n * @usage low\n *\n * @warning - This hook will run effect only once even in strict mode. Please do not use it in production code!\n *\n * @param {EffectCallback} effect The effect to run\n *\n * @example\n * useOnce(() => console.log('effect once'));\n */\nexport function useOnce(effect: EffectCallback) {\n const cleanupRef = useRef<ReturnType<EffectCallback>>(undefined);\n const hasRunRef = useRef(false);\n const hasRenderedAfterRun = useRef(false);\n\n if (hasRunRef.current) {\n hasRenderedAfterRun.current = true;\n }\n\n useEffect(() => {\n if (hasRunRef.current) return;\n\n hasRunRef.current = true;\n cleanupRef.current = effect();\n\n return () => {\n if (!hasRenderedAfterRun.current) return;\n\n if (typeof cleanupRef.current === 'function') {\n cleanupRef.current();\n }\n };\n }, []);\n}\n"],"
|
|
1
|
+
{"version":3,"file":"useOnce.mjs","names":[],"sources":["../../../../src/hooks/useOnce/useOnce.ts"],"sourcesContent":["import type { EffectCallback } from 'react';\n\nimport { useEffect, useRef } from 'react';\n\n/**\n * @name useEffectOnce\n * @description - Hook that runs an effect only once. Please do not use it in production code!\n * @category Humor\n * @usage low\n *\n * @warning - This hook will run effect only once even in strict mode. Please do not use it in production code!\n *\n * @param {EffectCallback} effect The effect to run\n *\n * @example\n * useOnce(() => console.log('effect once'));\n */\nexport function useOnce(effect: EffectCallback) {\n const cleanupRef = useRef<ReturnType<EffectCallback>>(undefined);\n const hasRunRef = useRef(false);\n const hasRenderedAfterRun = useRef(false);\n\n if (hasRunRef.current) {\n hasRenderedAfterRun.current = true;\n }\n\n useEffect(() => {\n if (hasRunRef.current) return;\n\n hasRunRef.current = true;\n cleanupRef.current = effect();\n\n return () => {\n if (!hasRenderedAfterRun.current) return;\n\n if (typeof cleanupRef.current === 'function') {\n cleanupRef.current();\n }\n };\n }, []);\n}\n"],"mappings":";;AAiBA,SAAgB,EAAQ,GAAwB;CAC9C,IAAM,IAAa,EAAmC,KAAA,EAAU,EAC1D,IAAY,EAAO,GAAM,EACzB,IAAsB,EAAO,GAAM;AAMzC,CAJI,EAAU,YACZ,EAAoB,UAAU,KAGhC,QAAgB;AACV,SAAU,QAKd,QAHA,EAAU,UAAU,IACpB,EAAW,UAAU,GAAQ,QAEhB;AACN,KAAoB,WAErB,OAAO,EAAW,WAAY,cAChC,EAAW,SAAS;;IAGvB,EAAE,CAAC"}
|