@mantine/hooks 6.0.11 → 7.0.0-alpha.11
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/cjs/index.js +6 -4
- package/cjs/index.js.map +1 -1
- package/cjs/use-callback-ref/use-callback-ref.js +16 -0
- package/cjs/use-callback-ref/use-callback-ref.js.map +1 -0
- package/cjs/use-click-outside/use-click-outside.js +21 -19
- package/cjs/use-click-outside/use-click-outside.js.map +1 -1
- package/cjs/use-clipboard/use-clipboard.js +26 -22
- package/cjs/use-clipboard/use-clipboard.js.map +1 -1
- package/cjs/use-color-scheme/use-color-scheme.js +3 -1
- package/cjs/use-color-scheme/use-color-scheme.js.map +1 -1
- package/cjs/use-counter/use-counter.js +9 -25
- package/cjs/use-counter/use-counter.js.map +1 -1
- package/cjs/use-debounced-callback/use-debounced-callback.js +19 -0
- package/cjs/use-debounced-callback/use-debounced-callback.js.map +1 -0
- package/cjs/use-debounced-state/use-debounced-state.js +19 -18
- package/cjs/use-debounced-state/use-debounced-state.js.map +1 -1
- package/cjs/use-debounced-value/use-debounced-value.js +25 -24
- package/cjs/use-debounced-value/use-debounced-value.js.map +1 -1
- package/cjs/use-did-update/use-did-update.js +11 -11
- package/cjs/use-did-update/use-did-update.js.map +1 -1
- package/cjs/use-disclosure/use-disclosure.js +24 -24
- package/cjs/use-disclosure/use-disclosure.js.map +1 -1
- package/cjs/use-document-title/use-document-title.js +5 -5
- package/cjs/use-document-title/use-document-title.js.map +1 -1
- package/cjs/use-document-visibility/use-document-visibility.js +7 -7
- package/cjs/use-document-visibility/use-document-visibility.js.map +1 -1
- package/cjs/use-event-listener/use-event-listener.js +9 -12
- package/cjs/use-event-listener/use-event-listener.js.map +1 -1
- package/cjs/use-eye-dropper/use-eye-dropper.js +12 -12
- package/cjs/use-eye-dropper/use-eye-dropper.js.map +1 -1
- package/cjs/use-favicon/use-favicon.js +23 -21
- package/cjs/use-favicon/use-favicon.js.map +1 -1
- package/cjs/use-focus-return/use-focus-return.js +29 -25
- package/cjs/use-focus-return/use-focus-return.js.map +1 -1
- package/cjs/use-focus-trap/create-aria-hider.js +36 -34
- package/cjs/use-focus-trap/create-aria-hider.js.map +1 -1
- package/cjs/use-focus-trap/scope-tab.js +15 -15
- package/cjs/use-focus-trap/scope-tab.js.map +1 -1
- package/cjs/use-focus-trap/tabbable.js +36 -31
- package/cjs/use-focus-trap/tabbable.js.map +1 -1
- package/cjs/use-focus-trap/use-focus-trap.js +67 -61
- package/cjs/use-focus-trap/use-focus-trap.js.map +1 -1
- package/cjs/use-focus-within/use-focus-within.js +37 -40
- package/cjs/use-focus-within/use-focus-within.js.map +1 -1
- package/cjs/use-force-update/use-force-update.js +3 -3
- package/cjs/use-force-update/use-force-update.js.map +1 -1
- package/cjs/use-fullscreen/use-fullscreen.js +83 -71
- package/cjs/use-fullscreen/use-fullscreen.js.map +1 -1
- package/cjs/use-hash/use-hash.js +16 -16
- package/cjs/use-hash/use-hash.js.map +1 -1
- package/cjs/use-headroom/use-headroom.js +23 -23
- package/cjs/use-headroom/use-headroom.js.map +1 -1
- package/cjs/use-hotkeys/parse-hotkey.js +49 -64
- package/cjs/use-hotkeys/parse-hotkey.js.map +1 -1
- package/cjs/use-hotkeys/use-hotkeys.js +22 -21
- package/cjs/use-hotkeys/use-hotkeys.js.map +1 -1
- package/cjs/use-hover/use-hover.js +17 -17
- package/cjs/use-hover/use-hover.js.map +1 -1
- package/cjs/use-id/use-id.js +12 -12
- package/cjs/use-id/use-id.js.map +1 -1
- package/cjs/use-id/use-react-id.js +3 -3
- package/cjs/use-id/use-react-id.js.map +1 -1
- package/cjs/use-idle/use-idle.js +26 -42
- package/cjs/use-idle/use-idle.js.map +1 -1
- package/cjs/use-input-state/use-input-state.js +22 -18
- package/cjs/use-input-state/use-input-state.js.map +1 -1
- package/cjs/use-intersection/use-intersection.js +17 -17
- package/cjs/use-intersection/use-intersection.js.map +1 -1
- package/cjs/use-interval/use-interval.js +28 -27
- package/cjs/use-interval/use-interval.js.map +1 -1
- package/cjs/use-isomorphic-effect/use-isomorphic-effect.js +3 -1
- package/cjs/use-isomorphic-effect/use-isomorphic-effect.js.map +1 -1
- package/cjs/use-list-state/use-list-state.js +55 -74
- package/cjs/use-list-state/use-list-state.js.map +1 -1
- package/cjs/use-local-storage/create-storage.js +70 -70
- package/cjs/use-local-storage/create-storage.js.map +1 -1
- package/cjs/use-local-storage/use-local-storage.js +1 -1
- package/cjs/use-local-storage/use-local-storage.js.map +1 -1
- package/cjs/use-logger/use-logger.js +9 -8
- package/cjs/use-logger/use-logger.js.map +1 -1
- package/cjs/use-media-query/use-media-query.js +31 -26
- package/cjs/use-media-query/use-media-query.js.map +1 -1
- package/cjs/use-merged-ref/use-merged-ref.js +14 -5
- package/cjs/use-merged-ref/use-merged-ref.js.map +1 -1
- package/cjs/use-mouse/use-mouse.js +25 -40
- package/cjs/use-mouse/use-mouse.js.map +1 -1
- package/cjs/use-move/use-move.js +88 -86
- package/cjs/use-move/use-move.js.map +1 -1
- package/cjs/use-network/use-network.js +32 -48
- package/cjs/use-network/use-network.js.map +1 -1
- package/cjs/use-os/use-os.js +30 -30
- package/cjs/use-os/use-os.js.map +1 -1
- package/cjs/use-page-leave/use-page-leave.js +4 -4
- package/cjs/use-page-leave/use-page-leave.js.map +1 -1
- package/cjs/use-pagination/use-pagination.js +58 -63
- package/cjs/use-pagination/use-pagination.js.map +1 -1
- package/cjs/use-previous/use-previous.js +5 -5
- package/cjs/use-previous/use-previous.js.map +1 -1
- package/cjs/use-queue/use-queue.js +24 -24
- package/cjs/use-queue/use-queue.js.map +1 -1
- package/cjs/use-reduced-motion/use-reduced-motion.js +1 -1
- package/cjs/use-reduced-motion/use-reduced-motion.js.map +1 -1
- package/cjs/use-resize-observer/use-resize-observer.js +36 -34
- package/cjs/use-resize-observer/use-resize-observer.js.map +1 -1
- package/cjs/use-scroll-into-view/use-scroll-into-view.js +77 -77
- package/cjs/use-scroll-into-view/use-scroll-into-view.js.map +1 -1
- package/cjs/use-scroll-into-view/utils/ease-in-out-quad.js +1 -1
- package/cjs/use-scroll-into-view/utils/ease-in-out-quad.js.map +1 -1
- package/cjs/use-scroll-into-view/utils/get-relative-position.js +46 -53
- package/cjs/use-scroll-into-view/utils/get-relative-position.js.map +1 -1
- package/cjs/use-scroll-into-view/utils/get-scroll-start.js +10 -9
- package/cjs/use-scroll-into-view/utils/get-scroll-start.js.map +1 -1
- package/cjs/use-scroll-into-view/utils/set-scroll-param.js +14 -11
- package/cjs/use-scroll-into-view/utils/set-scroll-param.js.map +1 -1
- package/cjs/use-session-storage/use-session-storage.js +1 -1
- package/cjs/use-session-storage/use-session-storage.js.map +1 -1
- package/cjs/use-set-state/use-set-state.js +3 -19
- package/cjs/use-set-state/use-set-state.js.map +1 -1
- package/cjs/use-shallow-effect/use-shallow-effect.js +22 -22
- package/cjs/use-shallow-effect/use-shallow-effect.js.map +1 -1
- package/cjs/use-text-selection/use-text-selection.js +12 -12
- package/cjs/use-text-selection/use-text-selection.js.map +1 -1
- package/cjs/use-timeout/use-timeout.js +22 -26
- package/cjs/use-timeout/use-timeout.js.map +1 -1
- package/cjs/use-toggle/use-toggle.js +6 -6
- package/cjs/use-toggle/use-toggle.js.map +1 -1
- package/cjs/use-uncontrolled/use-uncontrolled.js +10 -16
- package/cjs/use-uncontrolled/use-uncontrolled.js.map +1 -1
- package/cjs/use-validated-state/use-validated-state.js +14 -13
- package/cjs/use-validated-state/use-validated-state.js.map +1 -1
- package/cjs/use-viewport-size/use-viewport-size.js +12 -12
- package/cjs/use-viewport-size/use-viewport-size.js.map +1 -1
- package/cjs/use-window-event/use-window-event.js +4 -4
- package/cjs/use-window-event/use-window-event.js.map +1 -1
- package/cjs/use-window-scroll/use-window-scroll.js +19 -17
- package/cjs/use-window-scroll/use-window-scroll.js.map +1 -1
- package/cjs/utils/clamp/clamp.js +1 -1
- package/cjs/utils/clamp/clamp.js.map +1 -1
- package/cjs/utils/lower-first/lower-first.js +1 -1
- package/cjs/utils/lower-first/lower-first.js.map +1 -1
- package/cjs/utils/random-id/random-id.js +1 -1
- package/cjs/utils/random-id/random-id.js.map +1 -1
- package/cjs/utils/range/range.js +2 -2
- package/cjs/utils/range/range.js.map +1 -1
- package/cjs/utils/shallow-equal/shallow-equal.js +19 -19
- package/cjs/utils/shallow-equal/shallow-equal.js.map +1 -1
- package/cjs/utils/upper-first/upper-first.js +1 -1
- package/cjs/utils/upper-first/upper-first.js.map +1 -1
- package/esm/index.js +4 -3
- package/esm/index.js.map +1 -1
- package/esm/use-callback-ref/use-callback-ref.js +12 -0
- package/esm/use-callback-ref/use-callback-ref.js.map +1 -0
- package/esm/use-click-outside/use-click-outside.js +21 -19
- package/esm/use-click-outside/use-click-outside.js.map +1 -1
- package/esm/use-clipboard/use-clipboard.js +26 -22
- package/esm/use-clipboard/use-clipboard.js.map +1 -1
- package/esm/use-color-scheme/use-color-scheme.js +3 -1
- package/esm/use-color-scheme/use-color-scheme.js.map +1 -1
- package/esm/use-counter/use-counter.js +9 -25
- package/esm/use-counter/use-counter.js.map +1 -1
- package/esm/use-debounced-callback/use-debounced-callback.js +15 -0
- package/esm/use-debounced-callback/use-debounced-callback.js.map +1 -0
- package/esm/use-debounced-state/use-debounced-state.js +19 -18
- package/esm/use-debounced-state/use-debounced-state.js.map +1 -1
- package/esm/use-debounced-value/use-debounced-value.js +25 -24
- package/esm/use-debounced-value/use-debounced-value.js.map +1 -1
- package/esm/use-did-update/use-did-update.js +11 -11
- package/esm/use-did-update/use-did-update.js.map +1 -1
- package/esm/use-disclosure/use-disclosure.js +24 -24
- package/esm/use-disclosure/use-disclosure.js.map +1 -1
- package/esm/use-document-title/use-document-title.js +5 -5
- package/esm/use-document-title/use-document-title.js.map +1 -1
- package/esm/use-document-visibility/use-document-visibility.js +7 -7
- package/esm/use-document-visibility/use-document-visibility.js.map +1 -1
- package/esm/use-event-listener/use-event-listener.js +9 -12
- package/esm/use-event-listener/use-event-listener.js.map +1 -1
- package/esm/use-eye-dropper/use-eye-dropper.js +12 -12
- package/esm/use-eye-dropper/use-eye-dropper.js.map +1 -1
- package/esm/use-favicon/use-favicon.js +23 -21
- package/esm/use-favicon/use-favicon.js.map +1 -1
- package/esm/use-focus-return/use-focus-return.js +29 -25
- package/esm/use-focus-return/use-focus-return.js.map +1 -1
- package/esm/use-focus-trap/create-aria-hider.js +36 -34
- package/esm/use-focus-trap/create-aria-hider.js.map +1 -1
- package/esm/use-focus-trap/scope-tab.js +15 -15
- package/esm/use-focus-trap/scope-tab.js.map +1 -1
- package/esm/use-focus-trap/tabbable.js +36 -31
- package/esm/use-focus-trap/tabbable.js.map +1 -1
- package/esm/use-focus-trap/use-focus-trap.js +67 -61
- package/esm/use-focus-trap/use-focus-trap.js.map +1 -1
- package/esm/use-focus-within/use-focus-within.js +37 -40
- package/esm/use-focus-within/use-focus-within.js.map +1 -1
- package/esm/use-force-update/use-force-update.js +3 -3
- package/esm/use-force-update/use-force-update.js.map +1 -1
- package/esm/use-fullscreen/use-fullscreen.js +83 -71
- package/esm/use-fullscreen/use-fullscreen.js.map +1 -1
- package/esm/use-hash/use-hash.js +16 -16
- package/esm/use-hash/use-hash.js.map +1 -1
- package/esm/use-headroom/use-headroom.js +23 -23
- package/esm/use-headroom/use-headroom.js.map +1 -1
- package/esm/use-hotkeys/parse-hotkey.js +49 -64
- package/esm/use-hotkeys/parse-hotkey.js.map +1 -1
- package/esm/use-hotkeys/use-hotkeys.js +22 -21
- package/esm/use-hotkeys/use-hotkeys.js.map +1 -1
- package/esm/use-hover/use-hover.js +17 -17
- package/esm/use-hover/use-hover.js.map +1 -1
- package/esm/use-id/use-id.js +12 -12
- package/esm/use-id/use-id.js.map +1 -1
- package/esm/use-id/use-react-id.js +3 -3
- package/esm/use-id/use-react-id.js.map +1 -1
- package/esm/use-idle/use-idle.js +26 -42
- package/esm/use-idle/use-idle.js.map +1 -1
- package/esm/use-input-state/use-input-state.js +22 -18
- package/esm/use-input-state/use-input-state.js.map +1 -1
- package/esm/use-intersection/use-intersection.js +17 -17
- package/esm/use-intersection/use-intersection.js.map +1 -1
- package/esm/use-interval/use-interval.js +28 -27
- package/esm/use-interval/use-interval.js.map +1 -1
- package/esm/use-isomorphic-effect/use-isomorphic-effect.js +3 -1
- package/esm/use-isomorphic-effect/use-isomorphic-effect.js.map +1 -1
- package/esm/use-list-state/use-list-state.js +55 -74
- package/esm/use-list-state/use-list-state.js.map +1 -1
- package/esm/use-local-storage/create-storage.js +70 -70
- package/esm/use-local-storage/create-storage.js.map +1 -1
- package/esm/use-local-storage/use-local-storage.js +1 -1
- package/esm/use-local-storage/use-local-storage.js.map +1 -1
- package/esm/use-logger/use-logger.js +9 -8
- package/esm/use-logger/use-logger.js.map +1 -1
- package/esm/use-media-query/use-media-query.js +31 -26
- package/esm/use-media-query/use-media-query.js.map +1 -1
- package/esm/use-merged-ref/use-merged-ref.js +14 -6
- package/esm/use-merged-ref/use-merged-ref.js.map +1 -1
- package/esm/use-mouse/use-mouse.js +25 -40
- package/esm/use-mouse/use-mouse.js.map +1 -1
- package/esm/use-move/use-move.js +88 -86
- package/esm/use-move/use-move.js.map +1 -1
- package/esm/use-network/use-network.js +32 -48
- package/esm/use-network/use-network.js.map +1 -1
- package/esm/use-os/use-os.js +30 -30
- package/esm/use-os/use-os.js.map +1 -1
- package/esm/use-page-leave/use-page-leave.js +4 -4
- package/esm/use-page-leave/use-page-leave.js.map +1 -1
- package/esm/use-pagination/use-pagination.js +58 -63
- package/esm/use-pagination/use-pagination.js.map +1 -1
- package/esm/use-previous/use-previous.js +5 -5
- package/esm/use-previous/use-previous.js.map +1 -1
- package/esm/use-queue/use-queue.js +24 -24
- package/esm/use-queue/use-queue.js.map +1 -1
- package/esm/use-reduced-motion/use-reduced-motion.js +1 -1
- package/esm/use-reduced-motion/use-reduced-motion.js.map +1 -1
- package/esm/use-resize-observer/use-resize-observer.js +36 -34
- package/esm/use-resize-observer/use-resize-observer.js.map +1 -1
- package/esm/use-scroll-into-view/use-scroll-into-view.js +77 -77
- package/esm/use-scroll-into-view/use-scroll-into-view.js.map +1 -1
- package/esm/use-scroll-into-view/utils/ease-in-out-quad.js +1 -1
- package/esm/use-scroll-into-view/utils/ease-in-out-quad.js.map +1 -1
- package/esm/use-scroll-into-view/utils/get-relative-position.js +46 -53
- package/esm/use-scroll-into-view/utils/get-relative-position.js.map +1 -1
- package/esm/use-scroll-into-view/utils/get-scroll-start.js +10 -9
- package/esm/use-scroll-into-view/utils/get-scroll-start.js.map +1 -1
- package/esm/use-scroll-into-view/utils/set-scroll-param.js +14 -11
- package/esm/use-scroll-into-view/utils/set-scroll-param.js.map +1 -1
- package/esm/use-session-storage/use-session-storage.js +1 -1
- package/esm/use-session-storage/use-session-storage.js.map +1 -1
- package/esm/use-set-state/use-set-state.js +3 -19
- package/esm/use-set-state/use-set-state.js.map +1 -1
- package/esm/use-shallow-effect/use-shallow-effect.js +22 -22
- package/esm/use-shallow-effect/use-shallow-effect.js.map +1 -1
- package/esm/use-text-selection/use-text-selection.js +12 -12
- package/esm/use-text-selection/use-text-selection.js.map +1 -1
- package/esm/use-timeout/use-timeout.js +23 -27
- package/esm/use-timeout/use-timeout.js.map +1 -1
- package/esm/use-toggle/use-toggle.js +6 -6
- package/esm/use-toggle/use-toggle.js.map +1 -1
- package/esm/use-uncontrolled/use-uncontrolled.js +10 -16
- package/esm/use-uncontrolled/use-uncontrolled.js.map +1 -1
- package/esm/use-validated-state/use-validated-state.js +14 -13
- package/esm/use-validated-state/use-validated-state.js.map +1 -1
- package/esm/use-viewport-size/use-viewport-size.js +12 -12
- package/esm/use-viewport-size/use-viewport-size.js.map +1 -1
- package/esm/use-window-event/use-window-event.js +4 -4
- package/esm/use-window-event/use-window-event.js.map +1 -1
- package/esm/use-window-scroll/use-window-scroll.js +19 -17
- package/esm/use-window-scroll/use-window-scroll.js.map +1 -1
- package/esm/utils/clamp/clamp.js +1 -1
- package/esm/utils/clamp/clamp.js.map +1 -1
- package/esm/utils/lower-first/lower-first.js +1 -1
- package/esm/utils/lower-first/lower-first.js.map +1 -1
- package/esm/utils/random-id/random-id.js +1 -1
- package/esm/utils/random-id/random-id.js.map +1 -1
- package/esm/utils/range/range.js +2 -2
- package/esm/utils/range/range.js.map +1 -1
- package/esm/utils/shallow-equal/shallow-equal.js +19 -19
- package/esm/utils/shallow-equal/shallow-equal.js.map +1 -1
- package/esm/utils/upper-first/upper-first.js +1 -1
- package/esm/utils/upper-first/upper-first.js.map +1 -1
- package/lib/index.d.ts +4 -3
- package/lib/use-callback-ref/use-callback-ref.d.ts +1 -0
- package/lib/use-click-outside/use-click-outside.d.ts +1 -2
- package/lib/use-clipboard/use-clipboard.d.ts +2 -3
- package/lib/use-color-scheme/use-color-scheme.d.ts +0 -1
- package/lib/use-counter/use-counter.d.ts +0 -1
- package/lib/use-debounced-callback/use-debounced-callback.d.ts +1 -0
- package/lib/use-debounced-state/use-debounced-state.d.ts +0 -1
- package/lib/use-debounced-value/use-debounced-value.d.ts +0 -1
- package/lib/use-did-update/use-did-update.d.ts +0 -1
- package/lib/use-disclosure/use-disclosure.d.ts +0 -1
- package/lib/use-document-title/use-document-title.d.ts +0 -1
- package/lib/use-document-visibility/use-document-visibility.d.ts +0 -1
- package/lib/use-event-listener/use-event-listener.d.ts +1 -2
- package/lib/use-eye-dropper/use-eye-dropper.d.ts +1 -2
- package/lib/use-favicon/use-favicon.d.ts +0 -1
- package/lib/use-focus-return/use-focus-return.d.ts +0 -1
- package/lib/use-focus-trap/create-aria-hider.d.ts +0 -1
- package/lib/use-focus-trap/scope-tab.d.ts +0 -1
- package/lib/use-focus-trap/tabbable.d.ts +2 -3
- package/lib/use-focus-trap/use-focus-trap.d.ts +0 -1
- package/lib/use-focus-within/use-focus-within.d.ts +0 -1
- package/lib/use-force-update/use-force-update.d.ts +0 -1
- package/lib/use-fullscreen/use-fullscreen.d.ts +0 -1
- package/lib/use-hash/use-hash.d.ts +0 -1
- package/lib/use-headroom/use-headroom.d.ts +0 -1
- package/lib/use-hotkeys/parse-hotkey.d.ts +0 -1
- package/lib/use-hotkeys/use-hotkeys.d.ts +0 -1
- package/lib/use-hover/use-hover.d.ts +1 -2
- package/lib/use-id/use-id.d.ts +0 -1
- package/lib/use-id/use-react-id.d.ts +0 -1
- package/lib/use-idle/use-idle.d.ts +0 -1
- package/lib/use-input-state/use-input-state.d.ts +1 -2
- package/lib/use-intersection/use-intersection.d.ts +1 -2
- package/lib/use-interval/use-interval.d.ts +0 -1
- package/lib/use-isomorphic-effect/use-isomorphic-effect.d.ts +0 -1
- package/lib/use-list-state/use-list-state.d.ts +0 -1
- package/lib/use-local-storage/create-storage.d.ts +4 -5
- package/lib/use-local-storage/use-local-storage.d.ts +1 -2
- package/lib/use-logger/use-logger.d.ts +1 -2
- package/lib/use-media-query/use-media-query.d.ts +1 -2
- package/lib/use-merged-ref/use-merged-ref.d.ts +5 -5
- package/lib/use-mouse/use-mouse.d.ts +1 -2
- package/lib/use-move/use-move.d.ts +1 -2
- package/lib/use-network/use-network.d.ts +0 -1
- package/lib/use-os/use-os.d.ts +0 -1
- package/lib/use-page-leave/use-page-leave.d.ts +0 -1
- package/lib/use-pagination/use-pagination.d.ts +0 -1
- package/lib/use-previous/use-previous.d.ts +0 -1
- package/lib/use-queue/use-queue.d.ts +0 -1
- package/lib/use-reduced-motion/use-reduced-motion.d.ts +1 -2
- package/lib/use-resize-observer/use-resize-observer.d.ts +2 -3
- package/lib/use-scroll-into-view/use-scroll-into-view.d.ts +2 -3
- package/lib/use-scroll-into-view/utils/ease-in-out-quad.d.ts +0 -1
- package/lib/use-scroll-into-view/utils/get-relative-position.d.ts +1 -9
- package/lib/use-scroll-into-view/utils/get-scroll-start.d.ts +1 -5
- package/lib/use-scroll-into-view/utils/set-scroll-param.d.ts +1 -6
- package/lib/use-session-storage/use-session-storage.d.ts +1 -2
- package/lib/use-set-state/use-set-state.d.ts +0 -1
- package/lib/use-shallow-effect/use-shallow-effect.d.ts +0 -1
- package/lib/use-text-selection/use-text-selection.d.ts +0 -1
- package/lib/use-timeout/use-timeout.d.ts +0 -1
- package/lib/use-toggle/use-toggle.d.ts +0 -1
- package/lib/use-uncontrolled/use-uncontrolled.d.ts +0 -1
- package/lib/use-validated-state/use-validated-state.d.ts +1 -2
- package/lib/use-viewport-size/use-viewport-size.d.ts +0 -1
- package/lib/use-window-event/use-window-event.d.ts +0 -1
- package/lib/use-window-scroll/use-window-scroll.d.ts +0 -1
- package/lib/utils/clamp/clamp.d.ts +0 -1
- package/lib/utils/index.d.ts +0 -2
- package/lib/utils/lower-first/lower-first.d.ts +0 -1
- package/lib/utils/random-id/random-id.d.ts +0 -1
- package/lib/utils/range/range.d.ts +0 -1
- package/lib/utils/shallow-equal/shallow-equal.d.ts +0 -1
- package/lib/utils/upper-first/upper-first.d.ts +0 -1
- package/package.json +12 -5
- package/cjs/use-scroll-lock/use-scroll-lock.js +0 -54
- package/cjs/use-scroll-lock/use-scroll-lock.js.map +0 -1
- package/cjs/use-scroll-lock/utils/get-lock-styles.js +0 -20
- package/cjs/use-scroll-lock/utils/get-lock-styles.js.map +0 -1
- package/cjs/use-scroll-lock/utils/get-scroll-width.js +0 -14
- package/cjs/use-scroll-lock/utils/get-scroll-width.js.map +0 -1
- package/cjs/use-scroll-lock/utils/inject-style-tag.js +0 -14
- package/cjs/use-scroll-lock/utils/inject-style-tag.js.map +0 -1
- package/cjs/use-scroll-lock/utils/insert-style-tag.js +0 -11
- package/cjs/use-scroll-lock/utils/insert-style-tag.js.map +0 -1
- package/cjs/use-scroll-lock/utils/make-style-tag.js +0 -13
- package/cjs/use-scroll-lock/utils/make-style-tag.js.map +0 -1
- package/cjs/utils/assign-ref/assign-ref.js +0 -14
- package/cjs/utils/assign-ref/assign-ref.js.map +0 -1
- package/esm/use-scroll-lock/use-scroll-lock.js +0 -50
- package/esm/use-scroll-lock/use-scroll-lock.js.map +0 -1
- package/esm/use-scroll-lock/utils/get-lock-styles.js +0 -16
- package/esm/use-scroll-lock/utils/get-lock-styles.js.map +0 -1
- package/esm/use-scroll-lock/utils/get-scroll-width.js +0 -10
- package/esm/use-scroll-lock/utils/get-scroll-width.js.map +0 -1
- package/esm/use-scroll-lock/utils/inject-style-tag.js +0 -10
- package/esm/use-scroll-lock/utils/inject-style-tag.js.map +0 -1
- package/esm/use-scroll-lock/utils/insert-style-tag.js +0 -7
- package/esm/use-scroll-lock/utils/insert-style-tag.js.map +0 -1
- package/esm/use-scroll-lock/utils/make-style-tag.js +0 -9
- package/esm/use-scroll-lock/utils/make-style-tag.js.map +0 -1
- package/esm/utils/assign-ref/assign-ref.js +0 -10
- package/esm/utils/assign-ref/assign-ref.js.map +0 -1
- package/lib/index.d.ts.map +0 -1
- package/lib/use-click-outside/use-click-outside.d.ts.map +0 -1
- package/lib/use-clipboard/use-clipboard.d.ts.map +0 -1
- package/lib/use-color-scheme/use-color-scheme.d.ts.map +0 -1
- package/lib/use-counter/use-counter.d.ts.map +0 -1
- package/lib/use-debounced-state/use-debounced-state.d.ts.map +0 -1
- package/lib/use-debounced-value/use-debounced-value.d.ts.map +0 -1
- package/lib/use-did-update/use-did-update.d.ts.map +0 -1
- package/lib/use-disclosure/use-disclosure.d.ts.map +0 -1
- package/lib/use-document-title/use-document-title.d.ts.map +0 -1
- package/lib/use-document-visibility/use-document-visibility.d.ts.map +0 -1
- package/lib/use-event-listener/use-event-listener.d.ts.map +0 -1
- package/lib/use-eye-dropper/use-eye-dropper.d.ts.map +0 -1
- package/lib/use-favicon/use-favicon.d.ts.map +0 -1
- package/lib/use-focus-return/use-focus-return.d.ts.map +0 -1
- package/lib/use-focus-trap/create-aria-hider.d.ts.map +0 -1
- package/lib/use-focus-trap/scope-tab.d.ts.map +0 -1
- package/lib/use-focus-trap/tabbable.d.ts.map +0 -1
- package/lib/use-focus-trap/use-focus-trap.d.ts.map +0 -1
- package/lib/use-focus-within/use-focus-within.d.ts.map +0 -1
- package/lib/use-force-update/use-force-update.d.ts.map +0 -1
- package/lib/use-fullscreen/use-fullscreen.d.ts.map +0 -1
- package/lib/use-hash/use-hash.d.ts.map +0 -1
- package/lib/use-headroom/use-headroom.d.ts.map +0 -1
- package/lib/use-hotkeys/parse-hotkey.d.ts.map +0 -1
- package/lib/use-hotkeys/use-hotkeys.d.ts.map +0 -1
- package/lib/use-hover/use-hover.d.ts.map +0 -1
- package/lib/use-id/use-id.d.ts.map +0 -1
- package/lib/use-id/use-react-id.d.ts.map +0 -1
- package/lib/use-idle/use-idle.d.ts.map +0 -1
- package/lib/use-input-state/use-input-state.d.ts.map +0 -1
- package/lib/use-intersection/use-intersection.d.ts.map +0 -1
- package/lib/use-interval/use-interval.d.ts.map +0 -1
- package/lib/use-isomorphic-effect/use-isomorphic-effect.d.ts.map +0 -1
- package/lib/use-list-state/use-list-state.d.ts.map +0 -1
- package/lib/use-local-storage/create-storage.d.ts.map +0 -1
- package/lib/use-local-storage/use-local-storage.d.ts.map +0 -1
- package/lib/use-logger/use-logger.d.ts.map +0 -1
- package/lib/use-media-query/use-media-query.d.ts.map +0 -1
- package/lib/use-merged-ref/use-merged-ref.d.ts.map +0 -1
- package/lib/use-mouse/use-mouse.d.ts.map +0 -1
- package/lib/use-move/use-move.d.ts.map +0 -1
- package/lib/use-network/use-network.d.ts.map +0 -1
- package/lib/use-os/use-os.d.ts.map +0 -1
- package/lib/use-page-leave/use-page-leave.d.ts.map +0 -1
- package/lib/use-pagination/use-pagination.d.ts.map +0 -1
- package/lib/use-previous/use-previous.d.ts.map +0 -1
- package/lib/use-queue/use-queue.d.ts.map +0 -1
- package/lib/use-reduced-motion/use-reduced-motion.d.ts.map +0 -1
- package/lib/use-resize-observer/use-resize-observer.d.ts.map +0 -1
- package/lib/use-scroll-into-view/use-scroll-into-view.d.ts.map +0 -1
- package/lib/use-scroll-into-view/utils/ease-in-out-quad.d.ts.map +0 -1
- package/lib/use-scroll-into-view/utils/get-relative-position.d.ts.map +0 -1
- package/lib/use-scroll-into-view/utils/get-scroll-start.d.ts.map +0 -1
- package/lib/use-scroll-into-view/utils/set-scroll-param.d.ts.map +0 -1
- package/lib/use-scroll-lock/use-scroll-lock.d.ts +0 -5
- package/lib/use-scroll-lock/use-scroll-lock.d.ts.map +0 -1
- package/lib/use-scroll-lock/utils/get-lock-styles.d.ts +0 -4
- package/lib/use-scroll-lock/utils/get-lock-styles.d.ts.map +0 -1
- package/lib/use-scroll-lock/utils/get-scroll-width.d.ts +0 -2
- package/lib/use-scroll-lock/utils/get-scroll-width.d.ts.map +0 -1
- package/lib/use-scroll-lock/utils/inject-style-tag.d.ts +0 -2
- package/lib/use-scroll-lock/utils/inject-style-tag.d.ts.map +0 -1
- package/lib/use-scroll-lock/utils/insert-style-tag.d.ts +0 -2
- package/lib/use-scroll-lock/utils/insert-style-tag.d.ts.map +0 -1
- package/lib/use-scroll-lock/utils/make-style-tag.d.ts +0 -2
- package/lib/use-scroll-lock/utils/make-style-tag.d.ts.map +0 -1
- package/lib/use-session-storage/use-session-storage.d.ts.map +0 -1
- package/lib/use-set-state/use-set-state.d.ts.map +0 -1
- package/lib/use-shallow-effect/use-shallow-effect.d.ts.map +0 -1
- package/lib/use-text-selection/use-text-selection.d.ts.map +0 -1
- package/lib/use-timeout/use-timeout.d.ts.map +0 -1
- package/lib/use-toggle/use-toggle.d.ts.map +0 -1
- package/lib/use-uncontrolled/use-uncontrolled.d.ts.map +0 -1
- package/lib/use-validated-state/use-validated-state.d.ts.map +0 -1
- package/lib/use-viewport-size/use-viewport-size.d.ts.map +0 -1
- package/lib/use-window-event/use-window-event.d.ts.map +0 -1
- package/lib/use-window-scroll/use-window-scroll.d.ts.map +0 -1
- package/lib/utils/assign-ref/assign-ref.d.ts +0 -3
- package/lib/utils/assign-ref/assign-ref.d.ts.map +0 -1
- package/lib/utils/clamp/clamp.d.ts.map +0 -1
- package/lib/utils/index.d.ts.map +0 -1
- package/lib/utils/lower-first/lower-first.d.ts.map +0 -1
- package/lib/utils/random-id/random-id.d.ts.map +0 -1
- package/lib/utils/range/range.d.ts.map +0 -1
- package/lib/utils/shallow-equal/shallow-equal.d.ts.map +0 -1
- package/lib/utils/upper-first/upper-first.d.ts.map +0 -1
|
@@ -3,4 +3,3 @@ export type { HotkeyItemOptions };
|
|
|
3
3
|
export { getHotkeyHandler };
|
|
4
4
|
export type HotkeyItem = [string, (event: KeyboardEvent) => void, HotkeyItemOptions?];
|
|
5
5
|
export declare function useHotkeys(hotkeys: HotkeyItem[], tagsToIgnore?: string[], triggerOnContentEditable?: boolean): void;
|
|
6
|
-
//# sourceMappingURL=use-hotkeys.d.ts.map
|
package/lib/use-id/use-id.d.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
export declare function getInputOnChange<T>(setValue: (value: null | undefined | T | ((current: T) => T)) => void): (val: T | React.ChangeEvent<any> | ((current: T) => T)) => void;
|
|
2
|
+
export declare function getInputOnChange<T>(setValue: (value: null | undefined | T | ((current: T) => T)) => void): (val: T | React.ChangeEvent<any> | ((current: T) => T) | null | undefined) => void;
|
|
3
3
|
export declare function useInputState<T>(initialState: T): [T, (value: null | undefined | T | React.ChangeEvent<any>) => void];
|
|
4
|
-
//# sourceMappingURL=use-input-state.d.ts.map
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
export declare function useIntersection<T extends HTMLElement = any>(options?: ConstructorParameters<typeof IntersectionObserver>[1]): {
|
|
2
2
|
ref: (element: T | null) => void;
|
|
3
|
-
entry: IntersectionObserverEntry;
|
|
3
|
+
entry: IntersectionObserverEntry | null;
|
|
4
4
|
};
|
|
5
|
-
//# sourceMappingURL=use-intersection.d.ts.map
|
|
@@ -4,12 +4,11 @@ export interface IStorageProperties<T> {
|
|
|
4
4
|
key: string;
|
|
5
5
|
/** Default value that will be set if value is not found in storage */
|
|
6
6
|
defaultValue?: T;
|
|
7
|
-
/** If set to true, value will be
|
|
7
|
+
/** If set to true, value will be update is useEffect after mount */
|
|
8
8
|
getInitialValueInEffect?: boolean;
|
|
9
|
-
/** Function to serialize value into
|
|
9
|
+
/** Function to serialize value into string to be save in storage */
|
|
10
10
|
serialize?(value: T): string;
|
|
11
11
|
/** Function to deserialize string value from storage to value */
|
|
12
|
-
deserialize?(value: string): T;
|
|
12
|
+
deserialize?(value: string | undefined): T;
|
|
13
13
|
}
|
|
14
|
-
export declare function createStorage<T>(type: StorageType, hookName: string): ({ key, defaultValue, getInitialValueInEffect, deserialize, serialize, }: IStorageProperties<T>) => readonly [T, (val: T | ((prevState: T) => T)) => void, () => void];
|
|
15
|
-
//# sourceMappingURL=create-storage.d.ts.map
|
|
14
|
+
export declare function createStorage<T>(type: StorageType, hookName: string): ({ key, defaultValue, getInitialValueInEffect, deserialize, serialize, }: IStorageProperties<T>) => readonly [T | undefined, (val: T | ((prevState: T) => T)) => void, () => void];
|
|
@@ -1,3 +1,2 @@
|
|
|
1
1
|
import { IStorageProperties } from './create-storage';
|
|
2
|
-
export declare function useLocalStorage<T = string>(props: IStorageProperties<T>): readonly [T, (val: T | ((prevState: T) => T)) => void, () => void];
|
|
3
|
-
//# sourceMappingURL=use-local-storage.d.ts.map
|
|
2
|
+
export declare function useLocalStorage<T = string>(props: IStorageProperties<T>): readonly [T | undefined, (val: T | ((prevState: T) => T)) => void, () => void];
|
|
@@ -1,2 +1 @@
|
|
|
1
|
-
export declare function useLogger(componentName: string, props: any[]):
|
|
2
|
-
//# sourceMappingURL=use-logger.d.ts.map
|
|
1
|
+
export declare function useLogger(componentName: string, props: any[]): null;
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
export interface UseMediaQueryOptions {
|
|
2
2
|
getInitialValueInEffect: boolean;
|
|
3
3
|
}
|
|
4
|
-
export declare function useMediaQuery(query: string, initialValue?: boolean, { getInitialValueInEffect }?: UseMediaQueryOptions): boolean;
|
|
5
|
-
//# sourceMappingURL=use-media-query.d.ts.map
|
|
4
|
+
export declare function useMediaQuery(query: string, initialValue?: boolean, { getInitialValueInEffect }?: UseMediaQueryOptions): boolean | undefined;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import
|
|
2
|
-
type
|
|
3
|
-
export declare function
|
|
4
|
-
export declare function
|
|
1
|
+
import { Ref } from 'react';
|
|
2
|
+
type PossibleRef<T> = Ref<T> | undefined;
|
|
3
|
+
export declare function assignRef<T>(ref: PossibleRef<T>, value: T): void;
|
|
4
|
+
export declare function mergeRefs<T>(...refs: PossibleRef<T>[]): (node: T | null) => void;
|
|
5
|
+
export declare function useMergedRef<T>(...refs: PossibleRef<T>[]): (node: T | null) => void;
|
|
5
6
|
export {};
|
|
6
|
-
//# sourceMappingURL=use-merged-ref.d.ts.map
|
|
@@ -11,8 +11,7 @@ interface useMoveHandlers {
|
|
|
11
11
|
onScrubEnd?(): void;
|
|
12
12
|
}
|
|
13
13
|
export declare function useMove<T extends HTMLElement = HTMLDivElement>(onChange: (value: UseMovePosition) => void, handlers?: useMoveHandlers, dir?: 'ltr' | 'rtl'): {
|
|
14
|
-
ref: import("react").MutableRefObject<T>;
|
|
14
|
+
ref: import("react").MutableRefObject<T | undefined>;
|
|
15
15
|
active: boolean;
|
|
16
16
|
};
|
|
17
17
|
export {};
|
|
18
|
-
//# sourceMappingURL=use-move.d.ts.map
|
package/lib/use-os/use-os.d.ts
CHANGED
|
@@ -1,3 +1,2 @@
|
|
|
1
1
|
import { UseMediaQueryOptions } from '../use-media-query/use-media-query';
|
|
2
|
-
export declare function useReducedMotion(initialValue?: boolean, options?: UseMediaQueryOptions): boolean;
|
|
3
|
-
//# sourceMappingURL=use-reduced-motion.d.ts.map
|
|
2
|
+
export declare function useReducedMotion(initialValue?: boolean, options?: UseMediaQueryOptions): boolean | undefined;
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
type ObserverRect = Omit<DOMRectReadOnly, 'toJSON'>;
|
|
3
|
-
export declare function useResizeObserver<T extends HTMLElement = any>(): readonly [import("react").
|
|
3
|
+
export declare function useResizeObserver<T extends HTMLElement = any>(): readonly [import("react").RefObject<T>, ObserverRect];
|
|
4
4
|
export declare function useElementSize<T extends HTMLElement = any>(): {
|
|
5
|
-
ref: import("react").
|
|
5
|
+
ref: import("react").RefObject<T>;
|
|
6
6
|
width: number;
|
|
7
7
|
height: number;
|
|
8
8
|
};
|
|
9
9
|
export {};
|
|
10
|
-
//# sourceMappingURL=use-resize-observer.d.ts.map
|
|
@@ -19,10 +19,9 @@ interface ScrollIntoViewParams {
|
|
|
19
19
|
isList?: boolean;
|
|
20
20
|
}
|
|
21
21
|
export declare function useScrollIntoView<Target extends HTMLElement, Parent extends HTMLElement | null = null>({ duration, axis, onScrollFinish, easing, offset, cancelable, isList, }?: ScrollIntoViewParams): {
|
|
22
|
-
scrollableRef: import("react").
|
|
23
|
-
targetRef: import("react").
|
|
22
|
+
scrollableRef: import("react").RefObject<Parent>;
|
|
23
|
+
targetRef: import("react").RefObject<Target>;
|
|
24
24
|
scrollIntoView: ({ alignment }?: ScrollIntoViewAnimation) => void;
|
|
25
25
|
cancel: () => void;
|
|
26
26
|
};
|
|
27
27
|
export {};
|
|
28
|
-
//# sourceMappingURL=use-scroll-into-view.d.ts.map
|
|
@@ -1,9 +1 @@
|
|
|
1
|
-
export declare const getRelativePosition: ({ axis, target, parent, alignment, offset, isList, }:
|
|
2
|
-
axis: any;
|
|
3
|
-
target: any;
|
|
4
|
-
parent: any;
|
|
5
|
-
alignment: any;
|
|
6
|
-
offset: any;
|
|
7
|
-
isList: any;
|
|
8
|
-
}) => number;
|
|
9
|
-
//# sourceMappingURL=get-relative-position.d.ts.map
|
|
1
|
+
export declare const getRelativePosition: ({ axis, target, parent, alignment, offset, isList, }: any) => number;
|
|
@@ -1,3 +1,2 @@
|
|
|
1
1
|
import { IStorageProperties } from '../use-local-storage/create-storage';
|
|
2
|
-
export declare function useSessionStorage<T = string>(props: IStorageProperties<T>): readonly [T, (val: T | ((prevState: T) => T)) => void, () => void];
|
|
3
|
-
//# sourceMappingURL=use-session-storage.d.ts.map
|
|
2
|
+
export declare function useSessionStorage<T = string>(props: IStorageProperties<T>): readonly [T | undefined, (val: T | ((prevState: T) => T)) => void, () => void];
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
export declare function useValidatedState<T>(initialValue: T, validation: (value: T) => boolean, initialValidationState?: boolean): readonly [{
|
|
2
2
|
readonly value: T;
|
|
3
|
-
readonly lastValidValue: T;
|
|
3
|
+
readonly lastValidValue: T | undefined;
|
|
4
4
|
readonly valid: boolean;
|
|
5
5
|
}, (val: T) => void];
|
|
6
|
-
//# sourceMappingURL=use-validated-state.d.ts.map
|
|
@@ -1,2 +1 @@
|
|
|
1
1
|
export declare function useWindowEvent<K extends string>(type: K, listener: K extends keyof WindowEventMap ? (this: Window, ev: WindowEventMap[K]) => void : (this: Window, ev: CustomEvent) => void, options?: boolean | AddEventListenerOptions): void;
|
|
2
|
-
//# sourceMappingURL=use-window-event.d.ts.map
|
package/lib/utils/index.d.ts
CHANGED
|
@@ -1,8 +1,6 @@
|
|
|
1
|
-
export { assignRef } from './assign-ref/assign-ref';
|
|
2
1
|
export { clamp } from './clamp/clamp';
|
|
3
2
|
export { lowerFirst } from './lower-first/lower-first';
|
|
4
3
|
export { randomId } from './random-id/random-id';
|
|
5
4
|
export { range } from './range/range';
|
|
6
5
|
export { shallowEqual } from './shallow-equal/shallow-equal';
|
|
7
6
|
export { upperFirst } from './upper-first/upper-first';
|
|
8
|
-
//# sourceMappingURL=index.d.ts.map
|
package/package.json
CHANGED
|
@@ -1,9 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mantine/hooks",
|
|
3
|
-
"version": "
|
|
4
|
-
"
|
|
5
|
-
"
|
|
6
|
-
|
|
3
|
+
"version": "7.0.0-alpha.11",
|
|
4
|
+
"types": "./lib/index.d.ts",
|
|
5
|
+
"exports": {
|
|
6
|
+
".": {
|
|
7
|
+
"import": "./esm/index.js",
|
|
8
|
+
"require": "./cjs/index.js",
|
|
9
|
+
"types": "./lib/index.d.ts"
|
|
10
|
+
}
|
|
11
|
+
},
|
|
7
12
|
"license": "MIT",
|
|
8
13
|
"author": "Vitaly Rtishchev <rtivital@gmail.com>",
|
|
9
14
|
"sideEffects": false,
|
|
@@ -26,6 +31,8 @@
|
|
|
26
31
|
"peerDependencies": {
|
|
27
32
|
"react": ">=16.8.0"
|
|
28
33
|
},
|
|
29
|
-
"dependencies": {
|
|
34
|
+
"dependencies": {
|
|
35
|
+
"tslib": "^2.5.2"
|
|
36
|
+
},
|
|
30
37
|
"devDependencies": {}
|
|
31
38
|
}
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
-
|
|
5
|
-
var React = require('react');
|
|
6
|
-
var getLockStyles = require('./utils/get-lock-styles.js');
|
|
7
|
-
var injectStyleTag = require('./utils/inject-style-tag.js');
|
|
8
|
-
var insertStyleTag = require('./utils/insert-style-tag.js');
|
|
9
|
-
var makeStyleTag = require('./utils/make-style-tag.js');
|
|
10
|
-
|
|
11
|
-
function useScrollLock(lock, options = {
|
|
12
|
-
disableBodyPadding: false
|
|
13
|
-
}) {
|
|
14
|
-
const [scrollLocked, setScrollLocked] = React.useState(lock || false);
|
|
15
|
-
const scrollTop = React.useRef(0);
|
|
16
|
-
const { disableBodyPadding } = options;
|
|
17
|
-
const stylesheet = React.useRef(null);
|
|
18
|
-
const lockScroll = () => {
|
|
19
|
-
scrollTop.current = window.scrollY;
|
|
20
|
-
const styles = getLockStyles.getLockStyles({ disableBodyPadding });
|
|
21
|
-
const sheet = makeStyleTag.makeStyleTag();
|
|
22
|
-
injectStyleTag.injectStyles(sheet, styles);
|
|
23
|
-
insertStyleTag.insertStyleTag(sheet);
|
|
24
|
-
stylesheet.current = sheet;
|
|
25
|
-
};
|
|
26
|
-
const unlockScroll = () => {
|
|
27
|
-
if (!(stylesheet == null ? void 0 : stylesheet.current))
|
|
28
|
-
return;
|
|
29
|
-
stylesheet.current.parentNode.removeChild(stylesheet.current);
|
|
30
|
-
stylesheet.current = null;
|
|
31
|
-
};
|
|
32
|
-
React.useEffect(() => {
|
|
33
|
-
if (scrollLocked) {
|
|
34
|
-
lockScroll();
|
|
35
|
-
} else {
|
|
36
|
-
unlockScroll();
|
|
37
|
-
}
|
|
38
|
-
return unlockScroll;
|
|
39
|
-
}, [scrollLocked]);
|
|
40
|
-
React.useEffect(() => {
|
|
41
|
-
if (lock !== void 0) {
|
|
42
|
-
setScrollLocked(lock);
|
|
43
|
-
}
|
|
44
|
-
}, [lock]);
|
|
45
|
-
React.useEffect(() => {
|
|
46
|
-
if (lock === void 0 && typeof window !== "undefined") {
|
|
47
|
-
window.document.body.style.overflow === "hidden" && setScrollLocked(true);
|
|
48
|
-
}
|
|
49
|
-
}, [setScrollLocked]);
|
|
50
|
-
return [scrollLocked, setScrollLocked];
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
exports.useScrollLock = useScrollLock;
|
|
54
|
-
//# sourceMappingURL=use-scroll-lock.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"use-scroll-lock.js","sources":["../../src/use-scroll-lock/use-scroll-lock.ts"],"sourcesContent":["import { useEffect, useRef, useState } from 'react';\n\nimport { getLockStyles } from './utils/get-lock-styles';\nimport { injectStyles } from './utils/inject-style-tag';\nimport { insertStyleTag } from './utils/insert-style-tag';\nimport { makeStyleTag } from './utils/make-style-tag';\n\nexport function useScrollLock(\n lock?: boolean,\n options = {\n disableBodyPadding: false,\n }\n) {\n const [scrollLocked, setScrollLocked] = useState(lock || false);\n const scrollTop = useRef(0);\n\n const { disableBodyPadding } = options;\n\n const stylesheet = useRef<CSSStyleSheet | any | null>(null);\n\n const lockScroll = () => {\n scrollTop.current = window.scrollY;\n\n const styles = getLockStyles({ disableBodyPadding });\n\n /**\n * by applying styles via style tag\n * we dont care about previous styles due to inheritance\n * when scroll gets unlocked we delete that style tag\n */\n const sheet = makeStyleTag();\n\n injectStyles(sheet, styles);\n insertStyleTag(sheet);\n\n stylesheet.current = sheet;\n };\n\n const unlockScroll = () => {\n if (!stylesheet?.current) return;\n\n stylesheet.current.parentNode.removeChild(stylesheet.current);\n stylesheet.current = null;\n };\n\n useEffect(() => {\n if (scrollLocked) {\n lockScroll();\n } else {\n unlockScroll();\n }\n\n return unlockScroll;\n }, [scrollLocked]);\n\n useEffect(() => {\n if (lock !== undefined) {\n setScrollLocked(lock);\n }\n }, [lock]);\n\n useEffect(() => {\n if (lock === undefined && typeof window !== 'undefined') {\n window.document.body.style.overflow === 'hidden' && setScrollLocked(true);\n }\n }, [setScrollLocked]);\n\n return [scrollLocked, setScrollLocked] as const;\n}\n"],"names":["useState","useRef","getLockStyles","makeStyleTag","injectStyles","insertStyleTag","useEffect"],"mappings":";;;;;;;;;;AAKO,SAAS,aAAa,CAAC,IAAI,EAAE,OAAO,GAAG;AAC9C,EAAE,kBAAkB,EAAE,KAAK;AAC3B,CAAC,EAAE;AACH,EAAE,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAGA,cAAQ,CAAC,IAAI,IAAI,KAAK,CAAC,CAAC;AAClE,EAAE,MAAM,SAAS,GAAGC,YAAM,CAAC,CAAC,CAAC,CAAC;AAC9B,EAAE,MAAM,EAAE,kBAAkB,EAAE,GAAG,OAAO,CAAC;AACzC,EAAE,MAAM,UAAU,GAAGA,YAAM,CAAC,IAAI,CAAC,CAAC;AAClC,EAAE,MAAM,UAAU,GAAG,MAAM;AAC3B,IAAI,SAAS,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;AACvC,IAAI,MAAM,MAAM,GAAGC,2BAAa,CAAC,EAAE,kBAAkB,EAAE,CAAC,CAAC;AACzD,IAAI,MAAM,KAAK,GAAGC,yBAAY,EAAE,CAAC;AACjC,IAAIC,2BAAY,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;AAChC,IAAIC,6BAAc,CAAC,KAAK,CAAC,CAAC;AAC1B,IAAI,UAAU,CAAC,OAAO,GAAG,KAAK,CAAC;AAC/B,GAAG,CAAC;AACJ,EAAE,MAAM,YAAY,GAAG,MAAM;AAC7B,IAAI,IAAI,EAAE,UAAU,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,UAAU,CAAC,OAAO,CAAC;AAC3D,MAAM,OAAO;AACb,IAAI,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;AAClE,IAAI,UAAU,CAAC,OAAO,GAAG,IAAI,CAAC;AAC9B,GAAG,CAAC;AACJ,EAAEC,eAAS,CAAC,MAAM;AAClB,IAAI,IAAI,YAAY,EAAE;AACtB,MAAM,UAAU,EAAE,CAAC;AACnB,KAAK,MAAM;AACX,MAAM,YAAY,EAAE,CAAC;AACrB,KAAK;AACL,IAAI,OAAO,YAAY,CAAC;AACxB,GAAG,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;AACrB,EAAEA,eAAS,CAAC,MAAM;AAClB,IAAI,IAAI,IAAI,KAAK,KAAK,CAAC,EAAE;AACzB,MAAM,eAAe,CAAC,IAAI,CAAC,CAAC;AAC5B,KAAK;AACL,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;AACb,EAAEA,eAAS,CAAC,MAAM;AAClB,IAAI,IAAI,IAAI,KAAK,KAAK,CAAC,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;AAC1D,MAAM,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,KAAK,QAAQ,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC;AAChF,KAAK;AACL,GAAG,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC;AACxB,EAAE,OAAO,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;AACzC;;;;"}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
-
|
|
5
|
-
var getScrollWidth = require('./get-scroll-width.js');
|
|
6
|
-
|
|
7
|
-
const getLockStyles = ({ disableBodyPadding }) => {
|
|
8
|
-
const scrollWidth = disableBodyPadding ? null : getScrollWidth.getScrollWidth();
|
|
9
|
-
const styles = `body {
|
|
10
|
-
--removed-scroll-width: ${scrollWidth}px;
|
|
11
|
-
touch-action: none;
|
|
12
|
-
overflow: hidden !important;
|
|
13
|
-
position: relative !important;
|
|
14
|
-
${scrollWidth ? "padding-right: var(--removed-scroll-width) !important;" : ""}
|
|
15
|
-
`;
|
|
16
|
-
return styles;
|
|
17
|
-
};
|
|
18
|
-
|
|
19
|
-
exports.getLockStyles = getLockStyles;
|
|
20
|
-
//# sourceMappingURL=get-lock-styles.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"get-lock-styles.js","sources":["../../../src/use-scroll-lock/utils/get-lock-styles.ts"],"sourcesContent":["import { getScrollWidth } from './get-scroll-width';\n\nexport const getLockStyles = ({ disableBodyPadding }) => {\n const scrollWidth = disableBodyPadding ? null : getScrollWidth();\n\n const styles = `body {\n --removed-scroll-width: ${scrollWidth}px;\n touch-action: none;\n overflow: hidden !important;\n position: relative !important;\n ${scrollWidth ? 'padding-right: var(--removed-scroll-width) !important;' : ''}\n `;\n\n return styles;\n};\n"],"names":["getScrollWidth"],"mappings":";;;;;;AACY,MAAC,aAAa,GAAG,CAAC,EAAE,kBAAkB,EAAE,KAAK;AACzD,EAAE,MAAM,WAAW,GAAG,kBAAkB,GAAG,IAAI,GAAGA,6BAAc,EAAE,CAAC;AACnE,EAAE,MAAM,MAAM,GAAG,CAAC;AAClB,gCAAgC,EAAE,WAAW,CAAC;AAC9C;AACA;AACA;AACA,QAAQ,EAAE,WAAW,GAAG,wDAAwD,GAAG,EAAE,CAAC;AACtF,QAAQ,CAAC,CAAC;AACV,EAAE,OAAO,MAAM,CAAC;AAChB;;;;"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
-
|
|
5
|
-
function getScrollWidth() {
|
|
6
|
-
if (typeof window === "undefined" || typeof document === "undefined")
|
|
7
|
-
return 0;
|
|
8
|
-
const paddingRight = parseInt(window.getComputedStyle(document.body).paddingRight, 10);
|
|
9
|
-
const scrollbarWidth = window.innerWidth - document.documentElement.clientWidth;
|
|
10
|
-
return paddingRight + scrollbarWidth;
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
exports.getScrollWidth = getScrollWidth;
|
|
14
|
-
//# sourceMappingURL=get-scroll-width.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"get-scroll-width.js","sources":["../../../src/use-scroll-lock/utils/get-scroll-width.ts"],"sourcesContent":["export function getScrollWidth() {\n if (typeof window === 'undefined' || typeof document === 'undefined') return 0;\n\n const paddingRight = parseInt(window.getComputedStyle(document.body).paddingRight, 10);\n const scrollbarWidth = window.innerWidth - document.documentElement.clientWidth;\n\n return paddingRight + scrollbarWidth;\n}\n"],"names":[],"mappings":";;;;AAAO,SAAS,cAAc,GAAG;AACjC,EAAE,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,OAAO,QAAQ,KAAK,WAAW;AACtE,IAAI,OAAO,CAAC,CAAC;AACb,EAAE,MAAM,YAAY,GAAG,QAAQ,CAAC,MAAM,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;AACzF,EAAE,MAAM,cAAc,GAAG,MAAM,CAAC,UAAU,GAAG,QAAQ,CAAC,eAAe,CAAC,WAAW,CAAC;AAClF,EAAE,OAAO,YAAY,GAAG,cAAc,CAAC;AACvC;;;;"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
-
|
|
5
|
-
function injectStyles(tag, css) {
|
|
6
|
-
if (tag.styleSheet) {
|
|
7
|
-
tag.styleSheet.cssText = css;
|
|
8
|
-
} else {
|
|
9
|
-
tag.appendChild(document.createTextNode(css));
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
exports.injectStyles = injectStyles;
|
|
14
|
-
//# sourceMappingURL=inject-style-tag.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"inject-style-tag.js","sources":["../../../src/use-scroll-lock/utils/inject-style-tag.ts"],"sourcesContent":["export function injectStyles(tag, css): void {\n if (tag.styleSheet) {\n // eslint-disable-next-line no-param-reassign\n tag.styleSheet.cssText = css;\n } else {\n tag.appendChild(document.createTextNode(css));\n }\n}\n"],"names":[],"mappings":";;;;AAAO,SAAS,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE;AACvC,EAAE,IAAI,GAAG,CAAC,UAAU,EAAE;AACtB,IAAI,GAAG,CAAC,UAAU,CAAC,OAAO,GAAG,GAAG,CAAC;AACjC,GAAG,MAAM;AACT,IAAI,GAAG,CAAC,WAAW,CAAC,QAAQ,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC;AAClD,GAAG;AACH;;;;"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
-
|
|
5
|
-
function insertStyleTag(tag) {
|
|
6
|
-
const head = document.head || document.getElementsByTagName("head")[0];
|
|
7
|
-
head.appendChild(tag);
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
exports.insertStyleTag = insertStyleTag;
|
|
11
|
-
//# sourceMappingURL=insert-style-tag.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"insert-style-tag.js","sources":["../../../src/use-scroll-lock/utils/insert-style-tag.ts"],"sourcesContent":["export function insertStyleTag(tag) {\n const head = document.head || document.getElementsByTagName('head')[0];\n\n head.appendChild(tag);\n}\n"],"names":[],"mappings":";;;;AAAO,SAAS,cAAc,CAAC,GAAG,EAAE;AACpC,EAAE,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AACzE,EAAE,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;AACxB;;;;"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
-
|
|
5
|
-
function makeStyleTag() {
|
|
6
|
-
const tag = document.createElement("style");
|
|
7
|
-
tag.type = "text/css";
|
|
8
|
-
tag.setAttribute("mantine-scroll-lock", "");
|
|
9
|
-
return tag;
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
exports.makeStyleTag = makeStyleTag;
|
|
13
|
-
//# sourceMappingURL=make-style-tag.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"make-style-tag.js","sources":["../../../src/use-scroll-lock/utils/make-style-tag.ts"],"sourcesContent":["export function makeStyleTag() {\n const tag = document.createElement('style');\n tag.type = 'text/css';\n tag.setAttribute('mantine-scroll-lock', '');\n\n return tag;\n}\n"],"names":[],"mappings":";;;;AAAO,SAAS,YAAY,GAAG;AAC/B,EAAE,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;AAC9C,EAAE,GAAG,CAAC,IAAI,GAAG,UAAU,CAAC;AACxB,EAAE,GAAG,CAAC,YAAY,CAAC,qBAAqB,EAAE,EAAE,CAAC,CAAC;AAC9C,EAAE,OAAO,GAAG,CAAC;AACb;;;;"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
-
|
|
5
|
-
function assignRef(ref, value) {
|
|
6
|
-
if (typeof ref === "function") {
|
|
7
|
-
ref(value);
|
|
8
|
-
} else if (typeof ref === "object" && ref !== null && "current" in ref) {
|
|
9
|
-
ref.current = value;
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
exports.assignRef = assignRef;
|
|
14
|
-
//# sourceMappingURL=assign-ref.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"assign-ref.js","sources":["../../../src/utils/assign-ref/assign-ref.ts"],"sourcesContent":["import React from 'react';\n\nexport function assignRef<T = any>(ref: React.ForwardedRef<T>, value: T | null) {\n if (typeof ref === 'function') {\n ref(value);\n } else if (typeof ref === 'object' && ref !== null && 'current' in ref) {\n // eslint-disable-next-line no-param-reassign\n ref.current = value;\n }\n}\n"],"names":[],"mappings":";;;;AAAO,SAAS,SAAS,CAAC,GAAG,EAAE,KAAK,EAAE;AACtC,EAAE,IAAI,OAAO,GAAG,KAAK,UAAU,EAAE;AACjC,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;AACf,GAAG,MAAM,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,IAAI,SAAS,IAAI,GAAG,EAAE;AAC1E,IAAI,GAAG,CAAC,OAAO,GAAG,KAAK,CAAC;AACxB,GAAG;AACH;;;;"}
|