@mantine/hooks 5.0.0-alpha.1 → 5.0.0-alpha.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (110) hide show
  1. package/cjs/index.js +2 -3
  2. package/cjs/index.js.map +1 -1
  3. package/cjs/use-click-outside/use-click-outside.js +3 -3
  4. package/cjs/use-clipboard/use-clipboard.js +4 -4
  5. package/cjs/use-counter/use-counter.js +6 -14
  6. package/cjs/use-counter/use-counter.js.map +1 -1
  7. package/cjs/use-debounced-value/use-debounced-value.js +7 -7
  8. package/cjs/use-did-update/use-did-update.js +3 -3
  9. package/cjs/use-disclosure/use-disclosure.js +2 -2
  10. package/cjs/use-document-visibility/use-document-visibility.js +3 -3
  11. package/cjs/use-event-listener/use-event-listener.js +3 -3
  12. package/cjs/use-focus-return/use-focus-return.js +3 -3
  13. package/cjs/use-focus-return/use-focus-return.js.map +1 -1
  14. package/cjs/use-focus-trap/use-focus-trap.js +5 -5
  15. package/cjs/use-focus-within/use-focus-within.js +5 -5
  16. package/cjs/use-force-update/use-force-update.js +2 -2
  17. package/cjs/use-fullscreen/use-fullscreen.js +8 -8
  18. package/cjs/use-hash/use-hash.js +2 -2
  19. package/cjs/use-hotkeys/use-hotkeys.js +2 -2
  20. package/cjs/use-hover/use-hover.js +6 -6
  21. package/cjs/use-id/use-id.js +21 -5
  22. package/cjs/use-id/use-id.js.map +1 -1
  23. package/cjs/use-idle/use-idle.js +4 -4
  24. package/cjs/use-input-state/use-input-state.js +2 -2
  25. package/cjs/use-intersection/use-intersection.js +5 -5
  26. package/cjs/use-intersection/use-intersection.js.map +1 -1
  27. package/cjs/use-interval/use-interval.js +9 -7
  28. package/cjs/use-interval/use-interval.js.map +1 -1
  29. package/cjs/use-isomorphic-effect/use-isomorphic-effect.js +2 -2
  30. package/cjs/use-list-state/use-list-state.js +2 -2
  31. package/cjs/use-list-state/use-list-state.js.map +1 -1
  32. package/cjs/use-local-storage/use-local-storage.js +5 -5
  33. package/cjs/use-logger/use-logger.js +2 -2
  34. package/cjs/use-media-query/use-media-query.js +4 -4
  35. package/cjs/use-merged-ref/use-merged-ref.js +2 -2
  36. package/cjs/use-mouse/use-mouse.js +4 -4
  37. package/cjs/use-move/use-move.js +13 -13
  38. package/cjs/use-move/use-move.js.map +1 -1
  39. package/cjs/use-network/use-network.js +4 -4
  40. package/cjs/use-page-leave/use-page-leave.js +2 -2
  41. package/cjs/use-pagination/use-pagination.js +3 -4
  42. package/cjs/use-pagination/use-pagination.js.map +1 -1
  43. package/cjs/use-queue/use-queue.js +2 -2
  44. package/cjs/use-resize-observer/use-resize-observer.js +6 -6
  45. package/cjs/use-scroll-into-view/use-scroll-into-view.js +8 -8
  46. package/cjs/use-scroll-lock/use-scroll-lock.js +7 -7
  47. package/cjs/use-set-state/use-set-state.js +2 -2
  48. package/cjs/use-shallow-effect/use-shallow-effect.js +4 -4
  49. package/cjs/use-timeout/use-timeout.js +33 -0
  50. package/cjs/use-timeout/use-timeout.js.map +1 -0
  51. package/cjs/use-toggle/use-toggle.js +3 -7
  52. package/cjs/use-toggle/use-toggle.js.map +1 -1
  53. package/cjs/use-uncontrolled/use-uncontrolled.js +8 -26
  54. package/cjs/use-uncontrolled/use-uncontrolled.js.map +1 -1
  55. package/cjs/use-validated-state/use-validated-state.js +4 -4
  56. package/cjs/use-viewport-size/use-viewport-size.js +3 -3
  57. package/cjs/use-window-event/use-window-event.js +2 -2
  58. package/cjs/use-window-scroll/use-window-scroll.js +2 -2
  59. package/cjs/utils/clamp/clamp.js +1 -1
  60. package/cjs/utils/clamp/clamp.js.map +1 -1
  61. package/esm/index.js +2 -2
  62. package/esm/use-counter/use-counter.js +5 -13
  63. package/esm/use-counter/use-counter.js.map +1 -1
  64. package/esm/use-focus-return/use-focus-return.js +1 -1
  65. package/esm/use-focus-return/use-focus-return.js.map +1 -1
  66. package/esm/use-id/use-id.js +17 -5
  67. package/esm/use-id/use-id.js.map +1 -1
  68. package/esm/use-intersection/use-intersection.js +1 -1
  69. package/esm/use-intersection/use-intersection.js.map +1 -1
  70. package/esm/use-interval/use-interval.js +6 -4
  71. package/esm/use-interval/use-interval.js.map +1 -1
  72. package/esm/use-list-state/use-list-state.js.map +1 -1
  73. package/esm/use-move/use-move.js +5 -5
  74. package/esm/use-move/use-move.js.map +1 -1
  75. package/esm/use-pagination/use-pagination.js +1 -2
  76. package/esm/use-pagination/use-pagination.js.map +1 -1
  77. package/esm/use-timeout/use-timeout.js +29 -0
  78. package/esm/use-timeout/use-timeout.js.map +1 -0
  79. package/esm/use-toggle/use-toggle.js +3 -6
  80. package/esm/use-toggle/use-toggle.js.map +1 -1
  81. package/esm/use-uncontrolled/use-uncontrolled.js +8 -26
  82. package/esm/use-uncontrolled/use-uncontrolled.js.map +1 -1
  83. package/esm/utils/clamp/clamp.js +1 -1
  84. package/esm/utils/clamp/clamp.js.map +1 -1
  85. package/lib/index.d.ts +3 -2
  86. package/lib/index.d.ts.map +1 -1
  87. package/lib/use-counter/use-counter.d.ts.map +1 -1
  88. package/lib/use-id/use-id.d.ts +1 -1
  89. package/lib/use-id/use-id.d.ts.map +1 -1
  90. package/lib/use-intersection/use-intersection.d.ts +4 -1
  91. package/lib/use-intersection/use-intersection.d.ts.map +1 -1
  92. package/lib/use-interval/use-interval.d.ts.map +1 -1
  93. package/lib/use-list-state/use-list-state.d.ts +2 -2
  94. package/lib/use-list-state/use-list-state.d.ts.map +1 -1
  95. package/lib/use-pagination/use-pagination.d.ts.map +1 -1
  96. package/lib/use-timeout/use-timeout.d.ts +7 -0
  97. package/lib/use-timeout/use-timeout.d.ts.map +1 -0
  98. package/lib/use-toggle/use-toggle.d.ts +1 -2
  99. package/lib/use-toggle/use-toggle.d.ts.map +1 -1
  100. package/lib/use-uncontrolled/use-uncontrolled.d.ts +11 -9
  101. package/lib/use-uncontrolled/use-uncontrolled.d.ts.map +1 -1
  102. package/lib/utils/clamp/clamp.d.ts +1 -7
  103. package/lib/utils/clamp/clamp.d.ts.map +1 -1
  104. package/package.json +1 -1
  105. package/cjs/use-uuid/use-uuid.js +0 -18
  106. package/cjs/use-uuid/use-uuid.js.map +0 -1
  107. package/esm/use-uuid/use-uuid.js +0 -14
  108. package/esm/use-uuid/use-uuid.js.map +0 -1
  109. package/lib/use-uuid/use-uuid.d.ts +0 -2
  110. package/lib/use-uuid/use-uuid.d.ts.map +0 -1
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var react = require('react');
5
+ var React = require('react');
6
6
 
7
7
  var __defProp = Object.defineProperty;
8
8
  var __defProps = Object.defineProperties;
@@ -24,7 +24,7 @@ var __spreadValues = (a, b) => {
24
24
  };
25
25
  var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
26
26
  function useListState(initialValue = []) {
27
- const [state, setState] = react.useState(initialValue);
27
+ const [state, setState] = React.useState(initialValue);
28
28
  const append = (...items) => setState((current) => [...current, ...items]);
29
29
  const prepend = (...items) => setState((current) => [...items, ...current]);
30
30
  const insert = (index, ...items) => setState((current) => [...current.slice(0, index), ...items, ...current.slice(index)]);
@@ -1 +1 @@
1
- {"version":3,"file":"use-list-state.js","sources":["../../src/use-list-state/use-list-state.ts"],"sourcesContent":["import React, { useState } from 'react';\n\nexport interface UseListStateHandler<T> {\n setState: React.Dispatch<React.SetStateAction<T[]>>;\n append: (...items: T[]) => void;\n prepend: (...items: T[]) => void;\n insert: (index: number, ...items: T[]) => void;\n pop: () => void;\n shift: () => void;\n apply: (fn: (item: T, index?: number) => T) => void;\n applyWhere: (\n condition: (item: T, index: number) => boolean,\n fn: (item: T, index?: number) => T\n ) => void;\n remove: (...indices: number[]) => void;\n reorder: ({ from, to }: { from: number; to: number }) => void;\n setItem: (index: number, item: T) => void;\n setItemProp: <K extends keyof T, U extends T[K]>(index: number, prop: K, value: U) => void;\n}\n\nexport type UseListState<T> = [T[], UseListStateHandler<T>];\n\nexport function useListState<T>(initialValue: T[] = []): UseListState<T> {\n const [state, setState] = useState(initialValue);\n\n const append = (...items: T[]) => setState((current) => [...current, ...items]);\n const prepend = (...items: T[]) => setState((current) => [...items, ...current]);\n\n const insert = (index: number, ...items: T[]) =>\n setState((current) => [...current.slice(0, index), ...items, ...current.slice(index)]);\n\n const apply = (fn: (item: T, index?: number) => T) =>\n setState((current) => current.map((item, index) => fn(item, index)));\n\n const remove = (...indices: number[]) =>\n setState((current) => current.filter((_, index) => !indices.includes(index)));\n\n const pop = () =>\n setState((current) => {\n const cloned = [...current];\n cloned.pop();\n return cloned;\n });\n\n const shift = () =>\n setState((current) => {\n const cloned = [...current];\n cloned.shift();\n return cloned;\n });\n\n const reorder = ({ from, to }: { from: number; to: number }) =>\n setState((current) => {\n const cloned = [...current];\n const item = current[from];\n\n cloned.splice(from, 1);\n cloned.splice(to, 0, item);\n\n return cloned;\n });\n\n const setItem = (index: number, item: T) =>\n setState((current) => {\n const cloned = [...current];\n cloned[index] = item;\n return cloned;\n });\n\n const setItemProp = <K extends keyof T, U extends T[K]>(index: number, prop: K, value: U) =>\n setState((current) => {\n const cloned = [...current];\n cloned[index] = { ...cloned[index], [prop]: value };\n return cloned;\n });\n\n const applyWhere = (\n condition: (item: T, index: number) => boolean,\n fn: (item: T, index?: number) => T\n ) =>\n setState((current) =>\n current.map((item, index) => (condition(item, index) ? fn(item, index) : item))\n );\n\n return [\n state,\n {\n setState,\n append,\n prepend,\n insert,\n pop,\n shift,\n apply,\n applyWhere,\n remove,\n reorder,\n setItem,\n setItemProp,\n },\n ];\n}\n"],"names":["useState"],"mappings":"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"}
1
+ {"version":3,"file":"use-list-state.js","sources":["../../src/use-list-state/use-list-state.ts"],"sourcesContent":["import React, { useState } from 'react';\n\nexport interface UseListStateHandlers<T> {\n setState: React.Dispatch<React.SetStateAction<T[]>>;\n append: (...items: T[]) => void;\n prepend: (...items: T[]) => void;\n insert: (index: number, ...items: T[]) => void;\n pop: () => void;\n shift: () => void;\n apply: (fn: (item: T, index?: number) => T) => void;\n applyWhere: (\n condition: (item: T, index: number) => boolean,\n fn: (item: T, index?: number) => T\n ) => void;\n remove: (...indices: number[]) => void;\n reorder: ({ from, to }: { from: number; to: number }) => void;\n setItem: (index: number, item: T) => void;\n setItemProp: <K extends keyof T, U extends T[K]>(index: number, prop: K, value: U) => void;\n}\n\nexport type UseListState<T> = [T[], UseListStateHandlers<T>];\n\nexport function useListState<T>(initialValue: T[] = []): UseListState<T> {\n const [state, setState] = useState(initialValue);\n\n const append = (...items: T[]) => setState((current) => [...current, ...items]);\n const prepend = (...items: T[]) => setState((current) => [...items, ...current]);\n\n const insert = (index: number, ...items: T[]) =>\n setState((current) => [...current.slice(0, index), ...items, ...current.slice(index)]);\n\n const apply = (fn: (item: T, index?: number) => T) =>\n setState((current) => current.map((item, index) => fn(item, index)));\n\n const remove = (...indices: number[]) =>\n setState((current) => current.filter((_, index) => !indices.includes(index)));\n\n const pop = () =>\n setState((current) => {\n const cloned = [...current];\n cloned.pop();\n return cloned;\n });\n\n const shift = () =>\n setState((current) => {\n const cloned = [...current];\n cloned.shift();\n return cloned;\n });\n\n const reorder = ({ from, to }: { from: number; to: number }) =>\n setState((current) => {\n const cloned = [...current];\n const item = current[from];\n\n cloned.splice(from, 1);\n cloned.splice(to, 0, item);\n\n return cloned;\n });\n\n const setItem = (index: number, item: T) =>\n setState((current) => {\n const cloned = [...current];\n cloned[index] = item;\n return cloned;\n });\n\n const setItemProp = <K extends keyof T, U extends T[K]>(index: number, prop: K, value: U) =>\n setState((current) => {\n const cloned = [...current];\n cloned[index] = { ...cloned[index], [prop]: value };\n return cloned;\n });\n\n const applyWhere = (\n condition: (item: T, index: number) => boolean,\n fn: (item: T, index?: number) => T\n ) =>\n setState((current) =>\n current.map((item, index) => (condition(item, index) ? fn(item, index) : item))\n );\n\n return [\n state,\n {\n setState,\n append,\n prepend,\n insert,\n pop,\n shift,\n apply,\n applyWhere,\n remove,\n reorder,\n setItem,\n setItemProp,\n },\n ];\n}\n"],"names":["useState"],"mappings":"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"}
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var react = require('react');
5
+ var React = require('react');
6
6
  var useWindowEvent = require('../use-window-event/use-window-event.js');
7
7
 
8
8
  function serializeJSON(value) {
@@ -27,8 +27,8 @@ function useLocalStorage({
27
27
  serialize = serializeJSON
28
28
  }) {
29
29
  var _a;
30
- const [value, setValue] = react.useState(typeof window !== "undefined" && "localStorage" in window && !getInitialValueInEffect ? deserialize((_a = window.localStorage.getItem(key)) != null ? _a : void 0) : defaultValue != null ? defaultValue : "");
31
- const setLocalStorageValue = react.useCallback((val) => {
30
+ const [value, setValue] = React.useState(typeof window !== "undefined" && "localStorage" in window && !getInitialValueInEffect ? deserialize((_a = window.localStorage.getItem(key)) != null ? _a : void 0) : defaultValue != null ? defaultValue : "");
31
+ const setLocalStorageValue = React.useCallback((val) => {
32
32
  if (val instanceof Function) {
33
33
  setValue((current) => {
34
34
  const result = val(current);
@@ -53,12 +53,12 @@ function useLocalStorage({
53
53
  setValue(event.detail.value);
54
54
  }
55
55
  });
56
- react.useEffect(() => {
56
+ React.useEffect(() => {
57
57
  if (defaultValue !== void 0 && value === void 0) {
58
58
  setLocalStorageValue(defaultValue);
59
59
  }
60
60
  }, [defaultValue, value, setLocalStorageValue]);
61
- react.useEffect(() => {
61
+ React.useEffect(() => {
62
62
  var _a2;
63
63
  if (getInitialValueInEffect) {
64
64
  setValue(deserialize((_a2 = window.localStorage.getItem(key)) != null ? _a2 : void 0) || (defaultValue != null ? defaultValue : ""));
@@ -2,11 +2,11 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var react = require('react');
5
+ var React = require('react');
6
6
  var useDidUpdate = require('../use-did-update/use-did-update.js');
7
7
 
8
8
  function useLogger(componentName, props) {
9
- react.useEffect(() => {
9
+ React.useEffect(() => {
10
10
  console.log(`${componentName} mounted`, ...props);
11
11
  return () => console.log(`${componentName} unmounted`);
12
12
  }, []);
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var react = require('react');
5
+ var React = require('react');
6
6
 
7
7
  function attachMediaListener(query, callback) {
8
8
  try {
@@ -23,9 +23,9 @@ function getInitialValue(query, initialValue) {
23
23
  return false;
24
24
  }
25
25
  function useMediaQuery(query, initialValue) {
26
- const [matches, setMatches] = react.useState(getInitialValue(query, initialValue));
27
- const queryRef = react.useRef();
28
- react.useEffect(() => {
26
+ const [matches, setMatches] = React.useState(getInitialValue(query, initialValue));
27
+ const queryRef = React.useRef();
28
+ React.useEffect(() => {
29
29
  if ("matchMedia" in window) {
30
30
  queryRef.current = window.matchMedia(query);
31
31
  setMatches(queryRef.current.matches);
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var react = require('react');
5
+ var React = require('react');
6
6
  var assignRef = require('../utils/assign-ref/assign-ref.js');
7
7
 
8
8
  function mergeRefs(...refs) {
@@ -11,7 +11,7 @@ function mergeRefs(...refs) {
11
11
  };
12
12
  }
13
13
  function useMergedRef(...refs) {
14
- return react.useCallback(mergeRefs(...refs), refs);
14
+ return React.useCallback(mergeRefs(...refs), refs);
15
15
  }
16
16
 
17
17
  exports.mergeRefs = mergeRefs;
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var react = require('react');
5
+ var React = require('react');
6
6
 
7
7
  var __defProp = Object.defineProperty;
8
8
  var __getOwnPropSymbols = Object.getOwnPropertySymbols;
@@ -21,8 +21,8 @@ var __spreadValues = (a, b) => {
21
21
  return a;
22
22
  };
23
23
  function useMouse() {
24
- const [position, setPosition] = react.useState({ x: 0, y: 0 });
25
- const ref = react.useRef();
24
+ const [position, setPosition] = React.useState({ x: 0, y: 0 });
25
+ const ref = React.useRef();
26
26
  const setMousePosition = (event) => {
27
27
  if (ref.current) {
28
28
  const rect = event.currentTarget.getBoundingClientRect();
@@ -33,7 +33,7 @@ function useMouse() {
33
33
  setPosition({ x: event.clientX, y: event.clientY });
34
34
  }
35
35
  };
36
- react.useEffect(() => {
36
+ React.useEffect(() => {
37
37
  const element = (ref == null ? void 0 : ref.current) ? ref.current : document;
38
38
  element.addEventListener("mousemove", setMousePosition);
39
39
  return () => element.removeEventListener("mousemove", setMousePosition);
@@ -2,23 +2,23 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var react = require('react');
5
+ var React = require('react');
6
6
  var clamp = require('../utils/clamp/clamp.js');
7
7
 
8
8
  const clampUseMovePosition = (position) => ({
9
- x: clamp.clamp({ min: 0, max: 1, value: position.x }),
10
- y: clamp.clamp({ min: 0, max: 1, value: position.y })
9
+ x: clamp.clamp(position.x, 0, 1),
10
+ y: clamp.clamp(position.y, 0, 1)
11
11
  });
12
12
  function useMove(onChange, handlers, dir = "ltr") {
13
- const ref = react.useRef();
14
- const mounted = react.useRef(false);
15
- const isSliding = react.useRef(false);
16
- const frame = react.useRef(0);
17
- const [active, setActive] = react.useState(false);
18
- react.useEffect(() => {
13
+ const ref = React.useRef();
14
+ const mounted = React.useRef(false);
15
+ const isSliding = React.useRef(false);
16
+ const frame = React.useRef(0);
17
+ const [active, setActive] = React.useState(false);
18
+ React.useEffect(() => {
19
19
  mounted.current = true;
20
20
  }, []);
21
- react.useEffect(() => {
21
+ React.useEffect(() => {
22
22
  const onScrub = ({ x, y }) => {
23
23
  cancelAnimationFrame(frame.current);
24
24
  frame.current = requestAnimationFrame(() => {
@@ -26,10 +26,10 @@ function useMove(onChange, handlers, dir = "ltr") {
26
26
  ref.current.style.userSelect = "none";
27
27
  const rect = ref.current.getBoundingClientRect();
28
28
  if (rect.width && rect.height) {
29
- const _x = clamp.clamp({ value: (x - rect.left) / rect.width, min: 0, max: 1 });
29
+ const _x = clamp.clamp((x - rect.left) / rect.width, 0, 1);
30
30
  onChange({
31
31
  x: dir === "ltr" ? _x : 1 - _x,
32
- y: clamp.clamp({ value: (y - rect.top) / rect.height, min: 0, max: 1 })
32
+ y: clamp.clamp((y - rect.top) / rect.height, 0, 1)
33
33
  });
34
34
  }
35
35
  }
@@ -80,7 +80,7 @@ function useMove(onChange, handlers, dir = "ltr") {
80
80
  onScrub({ x: event.changedTouches[0].clientX, y: event.changedTouches[0].clientY });
81
81
  };
82
82
  ref.current.addEventListener("mousedown", onMouseDown);
83
- ref.current.addEventListener("touchstart", onTouchStart);
83
+ ref.current.addEventListener("touchstart", onTouchStart, { passive: false });
84
84
  return () => {
85
85
  if (ref.current) {
86
86
  ref.current.removeEventListener("mousedown", onMouseDown);
@@ -1 +1 @@
1
- {"version":3,"file":"use-move.js","sources":["../../src/use-move/use-move.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-use-before-define */\nimport { useEffect, useState, useRef } from 'react';\nimport { clamp } from '../utils';\n\nexport interface UseMovePosition {\n x: number;\n y: number;\n}\n\nexport const clampUseMovePosition = (position: UseMovePosition) => ({\n x: clamp({ min: 0, max: 1, value: position.x }),\n y: clamp({ min: 0, max: 1, value: position.y }),\n});\n\ninterface useMoveHandlers {\n onScrubStart?(): void;\n onScrubEnd?(): void;\n}\n\nexport function useMove<T extends HTMLElement = HTMLDivElement>(\n onChange: (value: UseMovePosition) => void,\n handlers?: useMoveHandlers,\n dir: 'ltr' | 'rtl' = 'ltr'\n) {\n const ref = useRef<T>();\n const mounted = useRef<boolean>(false);\n const isSliding = useRef(false);\n const frame = useRef(0);\n const [active, setActive] = useState(false);\n\n useEffect(() => {\n mounted.current = true;\n }, []);\n\n useEffect(() => {\n const onScrub = ({ x, y }: UseMovePosition) => {\n cancelAnimationFrame(frame.current);\n\n frame.current = requestAnimationFrame(() => {\n if (mounted.current && ref.current) {\n ref.current.style.userSelect = 'none';\n const rect = ref.current.getBoundingClientRect();\n\n if (rect.width && rect.height) {\n const _x = clamp({ value: (x - rect.left) / rect.width, min: 0, max: 1 });\n onChange({\n x: dir === 'ltr' ? _x : 1 - _x,\n y: clamp({ value: (y - rect.top) / rect.height, min: 0, max: 1 }),\n });\n }\n }\n });\n };\n\n const bindEvents = () => {\n document.addEventListener('mousemove', onMouseMove);\n document.addEventListener('mouseup', stopScrubbing);\n document.addEventListener('touchmove', onTouchMove);\n document.addEventListener('touchend', stopScrubbing);\n };\n\n const unbindEvents = () => {\n document.removeEventListener('mousemove', onMouseMove);\n document.removeEventListener('mouseup', stopScrubbing);\n document.removeEventListener('touchmove', onTouchMove);\n document.removeEventListener('touchend', stopScrubbing);\n };\n\n const startScrubbing = () => {\n if (!isSliding.current && mounted.current) {\n isSliding.current = true;\n typeof handlers?.onScrubStart === 'function' && handlers.onScrubStart();\n setActive(true);\n bindEvents();\n }\n };\n\n const stopScrubbing = () => {\n if (isSliding.current && mounted.current) {\n isSliding.current = false;\n setActive(false);\n unbindEvents();\n setTimeout(() => {\n typeof handlers?.onScrubEnd === 'function' && handlers.onScrubEnd();\n }, 0);\n }\n };\n\n const onMouseDown = (event: MouseEvent) => {\n startScrubbing();\n onMouseMove(event);\n };\n\n const onMouseMove = (event: MouseEvent) => onScrub({ x: event.clientX, y: event.clientY });\n\n const onTouchStart = (event: TouchEvent) => {\n startScrubbing();\n event?.preventDefault();\n onTouchMove(event);\n };\n\n const onTouchMove = (event: TouchEvent) => {\n event?.preventDefault();\n onScrub({ x: event.changedTouches[0].clientX, y: event.changedTouches[0].clientY });\n };\n\n ref.current.addEventListener('mousedown', onMouseDown);\n ref.current.addEventListener('touchstart', onTouchStart);\n\n return () => {\n if (ref.current) {\n ref.current.removeEventListener('mousedown', onMouseDown);\n ref.current.removeEventListener('touchstart', onTouchStart);\n }\n };\n }, [dir, onChange]);\n\n return { ref, active };\n}\n"],"names":["clamp","useRef","useState","useEffect"],"mappings":"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"}
1
+ {"version":3,"file":"use-move.js","sources":["../../src/use-move/use-move.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-use-before-define */\nimport { useEffect, useState, useRef } from 'react';\nimport { clamp } from '../utils';\n\nexport interface UseMovePosition {\n x: number;\n y: number;\n}\n\nexport const clampUseMovePosition = (position: UseMovePosition) => ({\n x: clamp(position.x, 0, 1),\n y: clamp(position.y, 0, 1),\n});\n\ninterface useMoveHandlers {\n onScrubStart?(): void;\n onScrubEnd?(): void;\n}\n\nexport function useMove<T extends HTMLElement = HTMLDivElement>(\n onChange: (value: UseMovePosition) => void,\n handlers?: useMoveHandlers,\n dir: 'ltr' | 'rtl' = 'ltr'\n) {\n const ref = useRef<T>();\n const mounted = useRef<boolean>(false);\n const isSliding = useRef(false);\n const frame = useRef(0);\n const [active, setActive] = useState(false);\n\n useEffect(() => {\n mounted.current = true;\n }, []);\n\n useEffect(() => {\n const onScrub = ({ x, y }: UseMovePosition) => {\n cancelAnimationFrame(frame.current);\n\n frame.current = requestAnimationFrame(() => {\n if (mounted.current && ref.current) {\n ref.current.style.userSelect = 'none';\n const rect = ref.current.getBoundingClientRect();\n\n if (rect.width && rect.height) {\n const _x = clamp((x - rect.left) / rect.width, 0, 1);\n onChange({\n x: dir === 'ltr' ? _x : 1 - _x,\n y: clamp((y - rect.top) / rect.height, 0, 1),\n });\n }\n }\n });\n };\n\n const bindEvents = () => {\n document.addEventListener('mousemove', onMouseMove);\n document.addEventListener('mouseup', stopScrubbing);\n document.addEventListener('touchmove', onTouchMove);\n document.addEventListener('touchend', stopScrubbing);\n };\n\n const unbindEvents = () => {\n document.removeEventListener('mousemove', onMouseMove);\n document.removeEventListener('mouseup', stopScrubbing);\n document.removeEventListener('touchmove', onTouchMove);\n document.removeEventListener('touchend', stopScrubbing);\n };\n\n const startScrubbing = () => {\n if (!isSliding.current && mounted.current) {\n isSliding.current = true;\n typeof handlers?.onScrubStart === 'function' && handlers.onScrubStart();\n setActive(true);\n bindEvents();\n }\n };\n\n const stopScrubbing = () => {\n if (isSliding.current && mounted.current) {\n isSliding.current = false;\n setActive(false);\n unbindEvents();\n setTimeout(() => {\n typeof handlers?.onScrubEnd === 'function' && handlers.onScrubEnd();\n }, 0);\n }\n };\n\n const onMouseDown = (event: MouseEvent) => {\n startScrubbing();\n onMouseMove(event);\n };\n\n const onMouseMove = (event: MouseEvent) => onScrub({ x: event.clientX, y: event.clientY });\n\n const onTouchStart = (event: TouchEvent) => {\n startScrubbing();\n event?.preventDefault();\n onTouchMove(event);\n };\n\n const onTouchMove = (event: TouchEvent) => {\n event?.preventDefault();\n onScrub({ x: event.changedTouches[0].clientX, y: event.changedTouches[0].clientY });\n };\n\n ref.current.addEventListener('mousedown', onMouseDown);\n ref.current.addEventListener('touchstart', onTouchStart, { passive: false });\n\n return () => {\n if (ref.current) {\n ref.current.removeEventListener('mousedown', onMouseDown);\n ref.current.removeEventListener('touchstart', onTouchStart);\n }\n };\n }, [dir, onChange]);\n\n return { ref, active };\n}\n"],"names":["clamp","useRef","useState","useEffect"],"mappings":"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"}
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var react = require('react');
5
+ var React = require('react');
6
6
  var useWindowEvent = require('../use-window-event/use-window-event.js');
7
7
 
8
8
  var __defProp = Object.defineProperty;
@@ -40,11 +40,11 @@ function getConnection() {
40
40
  };
41
41
  }
42
42
  function useNetwork() {
43
- const [status, setStatus] = react.useState(__spreadValues({ online: true }, getConnection()));
44
- const handleConnectionChange = react.useCallback(() => setStatus((current) => __spreadValues(__spreadValues({}, current), getConnection())), []);
43
+ const [status, setStatus] = React.useState(__spreadValues({ online: true }, getConnection()));
44
+ const handleConnectionChange = React.useCallback(() => setStatus((current) => __spreadValues(__spreadValues({}, current), getConnection())), []);
45
45
  useWindowEvent.useWindowEvent("online", () => setStatus(__spreadValues({ online: true }, getConnection())));
46
46
  useWindowEvent.useWindowEvent("offline", () => setStatus(__spreadValues({ online: false }, getConnection())));
47
- react.useEffect(() => {
47
+ React.useEffect(() => {
48
48
  if (navigator.connection) {
49
49
  navigator.connection.addEventListener("change", handleConnectionChange);
50
50
  return () => navigator.connection.removeEventListener("change", handleConnectionChange);
@@ -2,10 +2,10 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var react = require('react');
5
+ var React = require('react');
6
6
 
7
7
  function usePageLeave(onPageLeave) {
8
- react.useEffect(() => {
8
+ React.useEffect(() => {
9
9
  document.documentElement.addEventListener("mouseleave", onPageLeave);
10
10
  return () => document.documentElement.removeEventListener("mouseleave", onPageLeave);
11
11
  }, []);
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var react = require('react');
5
+ var React = require('react');
6
6
  var useUncontrolled = require('../use-uncontrolled/use-uncontrolled.js');
7
7
  var range = require('../utils/range/range.js');
8
8
 
@@ -19,8 +19,7 @@ function usePagination({
19
19
  value: page,
20
20
  onChange,
21
21
  defaultValue: initialPage,
22
- finalValue: initialPage,
23
- rule: (_page) => typeof _page === "number" && _page <= total
22
+ finalValue: initialPage
24
23
  });
25
24
  const setPage = (pageNumber) => {
26
25
  if (pageNumber <= 0) {
@@ -35,7 +34,7 @@ function usePagination({
35
34
  const previous = () => setPage(activePage - 1);
36
35
  const first = () => setPage(1);
37
36
  const last = () => setPage(total);
38
- const paginationRange = react.useMemo(() => {
37
+ const paginationRange = React.useMemo(() => {
39
38
  const totalPageNumbers = siblings * 2 + 3 + boundaries * 2;
40
39
  if (totalPageNumbers >= total) {
41
40
  return range.range(1, total);
@@ -1 +1 @@
1
- {"version":3,"file":"use-pagination.js","sources":["../../src/use-pagination/use-pagination.ts"],"sourcesContent":["import { useMemo } from 'react';\nimport { useUncontrolled } from '../use-uncontrolled/use-uncontrolled';\nimport { range } from '../utils';\n\nexport const DOTS = 'dots';\n\nexport interface PaginationParams {\n /** Page selected on initial render, defaults to 1 */\n initialPage?: number;\n\n /** Controlled active page number */\n page?: number;\n\n /** Total amount of pages */\n total: number;\n\n /** Siblings amount on left/right side of selected page, defaults to 1 */\n siblings?: number;\n\n /** Amount of elements visible on left/right edges, defaults to 1 */\n boundaries?: number;\n\n /** Callback fired after change of each page */\n onChange?: (page: number) => void;\n}\n\nexport function usePagination({\n total,\n siblings = 1,\n boundaries = 1,\n page,\n initialPage = 1,\n onChange,\n}: PaginationParams) {\n const [activePage, setActivePage] = useUncontrolled({\n value: page,\n onChange,\n defaultValue: initialPage,\n finalValue: initialPage,\n rule: (_page) => typeof _page === 'number' && _page <= total,\n });\n\n const setPage = (pageNumber: number) => {\n if (pageNumber <= 0) {\n setActivePage(1);\n } else if (pageNumber > total) {\n setActivePage(total);\n } else {\n setActivePage(pageNumber);\n }\n };\n\n const next = () => setPage(activePage + 1);\n const previous = () => setPage(activePage - 1);\n const first = () => setPage(1);\n const last = () => setPage(total);\n\n const paginationRange = useMemo((): (number | 'dots')[] => {\n // Pages count is determined as siblings (left/right) + boundaries(left/right) + currentPage + 2*DOTS\n const totalPageNumbers = siblings * 2 + 3 + boundaries * 2;\n\n /*\n * If the number of pages is less than the page numbers we want to show in our\n * paginationComponent, we return the range [1..total]\n */\n if (totalPageNumbers >= total) {\n return range(1, total);\n }\n\n const leftSiblingIndex = Math.max(activePage - siblings, boundaries);\n const rightSiblingIndex = Math.min(activePage + siblings, total - boundaries);\n\n /*\n * We do not want to show dots if there is only one position left\n * after/before the left/right page count as that would lead to a change if our Pagination\n * component size which we do not want\n */\n const shouldShowLeftDots = leftSiblingIndex > boundaries + 2;\n const shouldShowRightDots = rightSiblingIndex < total - (boundaries + 1);\n\n if (!shouldShowLeftDots && shouldShowRightDots) {\n const leftItemCount = siblings * 2 + boundaries + 2;\n return [...range(1, leftItemCount), DOTS, ...range(total - (boundaries - 1), total)];\n }\n\n if (shouldShowLeftDots && !shouldShowRightDots) {\n const rightItemCount = boundaries + 1 + 2 * siblings;\n return [...range(1, boundaries), DOTS, ...range(total - rightItemCount, total)];\n }\n\n return [\n ...range(1, boundaries),\n DOTS,\n ...range(leftSiblingIndex, rightSiblingIndex),\n DOTS,\n ...range(total - boundaries + 1, total),\n ];\n }, [total, siblings, activePage]);\n\n return {\n range: paginationRange,\n active: activePage,\n setPage,\n next,\n previous,\n first,\n last,\n };\n}\n"],"names":["useUncontrolled","useMemo","range"],"mappings":"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"}
1
+ {"version":3,"file":"use-pagination.js","sources":["../../src/use-pagination/use-pagination.ts"],"sourcesContent":["import { useMemo } from 'react';\nimport { useUncontrolled } from '../use-uncontrolled/use-uncontrolled';\nimport { range } from '../utils';\n\nexport const DOTS = 'dots';\n\nexport interface PaginationParams {\n /** Page selected on initial render, defaults to 1 */\n initialPage?: number;\n\n /** Controlled active page number */\n page?: number;\n\n /** Total amount of pages */\n total: number;\n\n /** Siblings amount on left/right side of selected page, defaults to 1 */\n siblings?: number;\n\n /** Amount of elements visible on left/right edges, defaults to 1 */\n boundaries?: number;\n\n /** Callback fired after change of each page */\n onChange?: (page: number) => void;\n}\n\nexport function usePagination({\n total,\n siblings = 1,\n boundaries = 1,\n page,\n initialPage = 1,\n onChange,\n}: PaginationParams) {\n const [activePage, setActivePage] = useUncontrolled({\n value: page,\n onChange,\n defaultValue: initialPage,\n finalValue: initialPage,\n });\n\n const setPage = (pageNumber: number) => {\n if (pageNumber <= 0) {\n setActivePage(1);\n } else if (pageNumber > total) {\n setActivePage(total);\n } else {\n setActivePage(pageNumber);\n }\n };\n\n const next = () => setPage(activePage + 1);\n const previous = () => setPage(activePage - 1);\n const first = () => setPage(1);\n const last = () => setPage(total);\n\n const paginationRange = useMemo((): (number | 'dots')[] => {\n const totalPageNumbers = siblings * 2 + 3 + boundaries * 2;\n if (totalPageNumbers >= total) {\n return range(1, total);\n }\n\n const leftSiblingIndex = Math.max(activePage - siblings, boundaries);\n const rightSiblingIndex = Math.min(activePage + siblings, total - boundaries);\n\n const shouldShowLeftDots = leftSiblingIndex > boundaries + 2;\n const shouldShowRightDots = rightSiblingIndex < total - (boundaries + 1);\n\n if (!shouldShowLeftDots && shouldShowRightDots) {\n const leftItemCount = siblings * 2 + boundaries + 2;\n return [...range(1, leftItemCount), DOTS, ...range(total - (boundaries - 1), total)];\n }\n\n if (shouldShowLeftDots && !shouldShowRightDots) {\n const rightItemCount = boundaries + 1 + 2 * siblings;\n return [...range(1, boundaries), DOTS, ...range(total - rightItemCount, total)];\n }\n\n return [\n ...range(1, boundaries),\n DOTS,\n ...range(leftSiblingIndex, rightSiblingIndex),\n DOTS,\n ...range(total - boundaries + 1, total),\n ];\n }, [total, siblings, activePage]);\n\n return {\n range: paginationRange,\n active: activePage,\n setPage,\n next,\n previous,\n first,\n last,\n };\n}\n"],"names":["useUncontrolled","useMemo","range"],"mappings":"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"}
@@ -2,10 +2,10 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var react = require('react');
5
+ var React = require('react');
6
6
 
7
7
  function useQueue({ initialValues = [], limit }) {
8
- const [{ state, queue }, setState] = react.useState({
8
+ const [{ state, queue }, setState] = React.useState({
9
9
  state: initialValues.slice(0, limit),
10
10
  queue: initialValues.slice(limit)
11
11
  });
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var react = require('react');
5
+ var React = require('react');
6
6
 
7
7
  const defaultState = {
8
8
  x: 0,
@@ -16,10 +16,10 @@ const defaultState = {
16
16
  };
17
17
  const browser = typeof window !== "undefined";
18
18
  function useResizeObserver() {
19
- const frameID = react.useRef(0);
20
- const ref = react.useRef(null);
21
- const [rect, setRect] = react.useState(defaultState);
22
- const observer = react.useMemo(() => browser ? new ResizeObserver((entries) => {
19
+ const frameID = React.useRef(0);
20
+ const ref = React.useRef(null);
21
+ const [rect, setRect] = React.useState(defaultState);
22
+ const observer = React.useMemo(() => browser ? new ResizeObserver((entries) => {
23
23
  const entry = entries[0];
24
24
  if (entry) {
25
25
  cancelAnimationFrame(frameID.current);
@@ -30,7 +30,7 @@ function useResizeObserver() {
30
30
  });
31
31
  }
32
32
  }) : null, []);
33
- react.useEffect(() => {
33
+ React.useEffect(() => {
34
34
  if (ref.current) {
35
35
  observer.observe(ref.current);
36
36
  }
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var react = require('react');
5
+ var React = require('react');
6
6
  var useReducedMotion = require('../use-reduced-motion/use-reduced-motion.js');
7
7
  var useWindowEvent = require('../use-window-event/use-window-event.js');
8
8
  var easeInOutQuad = require('./utils/ease-in-out-quad.js');
@@ -19,18 +19,18 @@ function useScrollIntoView({
19
19
  cancelable = true,
20
20
  isList = false
21
21
  } = {}) {
22
- const frameID = react.useRef(0);
23
- const startTime = react.useRef(0);
24
- const shouldStop = react.useRef(false);
25
- const scrollableRef = react.useRef(null);
26
- const targetRef = react.useRef(null);
22
+ const frameID = React.useRef(0);
23
+ const startTime = React.useRef(0);
24
+ const shouldStop = React.useRef(false);
25
+ const scrollableRef = React.useRef(null);
26
+ const targetRef = React.useRef(null);
27
27
  const reducedMotion = useReducedMotion.useReducedMotion();
28
28
  const cancel = () => {
29
29
  if (frameID.current) {
30
30
  cancelAnimationFrame(frameID.current);
31
31
  }
32
32
  };
33
- const scrollIntoView = react.useCallback(({ alignment = "start" } = {}) => {
33
+ const scrollIntoView = React.useCallback(({ alignment = "start" } = {}) => {
34
34
  var _a;
35
35
  shouldStop.current = false;
36
36
  if (frameID.current) {
@@ -80,7 +80,7 @@ function useScrollIntoView({
80
80
  useWindowEvent.useWindowEvent("touchmove", handleStop, {
81
81
  passive: true
82
82
  });
83
- react.useEffect(() => cancel, []);
83
+ React.useEffect(() => cancel, []);
84
84
  return {
85
85
  scrollableRef,
86
86
  targetRef,
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var react = require('react');
5
+ var React = require('react');
6
6
  var getLockStyles = require('./utils/get-lock-styles.js');
7
7
  var injectStyleTag = require('./utils/inject-style-tag.js');
8
8
  var insertStyleTag = require('./utils/insert-style-tag.js');
@@ -11,10 +11,10 @@ var makeStyleTag = require('./utils/make-style-tag.js');
11
11
  function useScrollLock(lock, options = {
12
12
  disableBodyPadding: false
13
13
  }) {
14
- const [scrollLocked, setScrollLocked] = react.useState(lock || false);
15
- const scrollTop = react.useRef(0);
14
+ const [scrollLocked, setScrollLocked] = React.useState(lock || false);
15
+ const scrollTop = React.useRef(0);
16
16
  const { disableBodyPadding } = options;
17
- const stylesheet = react.useRef(null);
17
+ const stylesheet = React.useRef(null);
18
18
  const lockScroll = () => {
19
19
  scrollTop.current = window.scrollY;
20
20
  const styles = getLockStyles.getLockStyles({ disableBodyPadding });
@@ -29,7 +29,7 @@ function useScrollLock(lock, options = {
29
29
  stylesheet.current.parentNode.removeChild(stylesheet.current);
30
30
  stylesheet.current = null;
31
31
  };
32
- react.useEffect(() => {
32
+ React.useEffect(() => {
33
33
  if (scrollLocked) {
34
34
  lockScroll();
35
35
  } else {
@@ -37,12 +37,12 @@ function useScrollLock(lock, options = {
37
37
  }
38
38
  return unlockScroll;
39
39
  }, [scrollLocked]);
40
- react.useEffect(() => {
40
+ React.useEffect(() => {
41
41
  if (lock !== void 0) {
42
42
  setScrollLocked(lock);
43
43
  }
44
44
  }, [lock]);
45
- react.useEffect(() => {
45
+ React.useEffect(() => {
46
46
  if (lock === void 0 && typeof window !== "undefined") {
47
47
  window.document.body.style.overflow === "hidden" && setScrollLocked(true);
48
48
  }
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var react = require('react');
5
+ var React = require('react');
6
6
 
7
7
  var __defProp = Object.defineProperty;
8
8
  var __getOwnPropSymbols = Object.getOwnPropertySymbols;
@@ -21,7 +21,7 @@ var __spreadValues = (a, b) => {
21
21
  return a;
22
22
  };
23
23
  function useSetState(initialState) {
24
- const [state, _setState] = react.useState(initialState);
24
+ const [state, _setState] = React.useState(initialState);
25
25
  const setState = (statePartial) => _setState((current) => __spreadValues(__spreadValues({}, current), typeof statePartial === "function" ? statePartial(current) : statePartial));
26
26
  return [state, setState];
27
27
  }
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var react = require('react');
5
+ var React = require('react');
6
6
  var shallowEqual = require('../utils/shallow-equal/shallow-equal.js');
7
7
 
8
8
  function shallowCompare(prevValue, currValue) {
@@ -23,8 +23,8 @@ function shallowCompare(prevValue, currValue) {
23
23
  return true;
24
24
  }
25
25
  function useShallowCompare(dependencies) {
26
- const ref = react.useRef([]);
27
- const updateRef = react.useRef(0);
26
+ const ref = React.useRef([]);
27
+ const updateRef = React.useRef(0);
28
28
  if (!shallowCompare(ref.current, dependencies)) {
29
29
  ref.current = dependencies;
30
30
  updateRef.current += 1;
@@ -32,7 +32,7 @@ function useShallowCompare(dependencies) {
32
32
  return [updateRef.current];
33
33
  }
34
34
  function useShallowEffect(cb, dependencies) {
35
- react.useEffect(cb, useShallowCompare(dependencies));
35
+ React.useEffect(cb, useShallowCompare(dependencies));
36
36
  }
37
37
 
38
38
  exports.useShallowEffect = useShallowEffect;
@@ -0,0 +1,33 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var React = require('react');
6
+
7
+ function useTimeout(fn, delay, options = { autoInvoke: false }) {
8
+ const timeoutRef = React.useRef(null);
9
+ const start = () => {
10
+ if (!timeoutRef.current) {
11
+ timeoutRef.current = window.setTimeout(() => {
12
+ fn();
13
+ timeoutRef.current = null;
14
+ }, delay);
15
+ }
16
+ };
17
+ const clear = () => {
18
+ if (timeoutRef.current) {
19
+ window.clearTimeout(timeoutRef.current);
20
+ timeoutRef.current = null;
21
+ }
22
+ };
23
+ React.useEffect(() => {
24
+ if (options.autoInvoke) {
25
+ start();
26
+ }
27
+ return clear;
28
+ }, [delay]);
29
+ return { start, clear };
30
+ }
31
+
32
+ exports.useTimeout = useTimeout;
33
+ //# sourceMappingURL=use-timeout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-timeout.js","sources":["../../src/use-timeout/use-timeout.ts"],"sourcesContent":["import { useRef, useEffect } from 'react';\n\nexport function useTimeout(\n fn: () => void,\n delay: number,\n options: { autoInvoke: boolean } = { autoInvoke: false }\n) {\n const timeoutRef = useRef<number>(null);\n\n const start = () => {\n if (!timeoutRef.current) {\n timeoutRef.current = window.setTimeout(() => {\n fn();\n timeoutRef.current = null;\n }, delay);\n }\n };\n\n const clear = () => {\n if (timeoutRef.current) {\n window.clearTimeout(timeoutRef.current);\n timeoutRef.current = null;\n }\n };\n\n useEffect(() => {\n if (options.autoInvoke) {\n start();\n }\n\n return clear;\n }, [delay]);\n\n return { start, clear };\n}\n"],"names":["useRef","useEffect"],"mappings":";;;;;;AACO,SAAS,UAAU,CAAC,EAAE,EAAE,KAAK,EAAE,OAAO,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE;AACvE,EAAE,MAAM,UAAU,GAAGA,YAAM,CAAC,IAAI,CAAC,CAAC;AAClC,EAAE,MAAM,KAAK,GAAG,MAAM;AACtB,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE;AAC7B,MAAM,UAAU,CAAC,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM;AACnD,QAAQ,EAAE,EAAE,CAAC;AACb,QAAQ,UAAU,CAAC,OAAO,GAAG,IAAI,CAAC;AAClC,OAAO,EAAE,KAAK,CAAC,CAAC;AAChB,KAAK;AACL,GAAG,CAAC;AACJ,EAAE,MAAM,KAAK,GAAG,MAAM;AACtB,IAAI,IAAI,UAAU,CAAC,OAAO,EAAE;AAC5B,MAAM,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;AAC9C,MAAM,UAAU,CAAC,OAAO,GAAG,IAAI,CAAC;AAChC,KAAK;AACL,GAAG,CAAC;AACJ,EAAEC,eAAS,CAAC,MAAM;AAClB,IAAI,IAAI,OAAO,CAAC,UAAU,EAAE;AAC5B,MAAM,KAAK,EAAE,CAAC;AACd,KAAK;AACL,IAAI,OAAO,KAAK,CAAC;AACjB,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;AACd,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;AAC1B;;;;"}
@@ -2,10 +2,10 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var react = require('react');
5
+ var React = require('react');
6
6
 
7
- function useToggle(initialValue, options) {
8
- const [state, setState] = react.useState(initialValue);
7
+ function useToggle(options) {
8
+ const [state, setState] = React.useState(options[0]);
9
9
  const toggle = (value) => {
10
10
  if (typeof value !== "undefined") {
11
11
  setState(value);
@@ -20,10 +20,6 @@ function useToggle(initialValue, options) {
20
20
  };
21
21
  return [state, toggle];
22
22
  }
23
- function useBooleanToggle(initialValue = false) {
24
- return useToggle(initialValue, [true, false]);
25
- }
26
23
 
27
- exports.useBooleanToggle = useBooleanToggle;
28
24
  exports.useToggle = useToggle;
29
25
  //# sourceMappingURL=use-toggle.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-toggle.js","sources":["../../src/use-toggle/use-toggle.ts"],"sourcesContent":["import { useState } from 'react';\n\nexport function useToggle<T>(initialValue: T, options: [T, T]) {\n const [state, setState] = useState(initialValue);\n\n const toggle = (value?: React.SetStateAction<T>) => {\n if (typeof value !== 'undefined') {\n setState(value);\n } else {\n setState((current) => {\n if (current === options[0]) {\n return options[1];\n }\n\n return options[0];\n });\n }\n };\n\n return [state, toggle] as const;\n}\n\nexport function useBooleanToggle(initialValue = false) {\n return useToggle(initialValue, [true, false]);\n}\n"],"names":["useState"],"mappings":";;;;;;AACO,SAAS,SAAS,CAAC,YAAY,EAAE,OAAO,EAAE;AACjD,EAAE,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAGA,cAAQ,CAAC,YAAY,CAAC,CAAC;AACnD,EAAE,MAAM,MAAM,GAAG,CAAC,KAAK,KAAK;AAC5B,IAAI,IAAI,OAAO,KAAK,KAAK,WAAW,EAAE;AACtC,MAAM,QAAQ,CAAC,KAAK,CAAC,CAAC;AACtB,KAAK,MAAM;AACX,MAAM,QAAQ,CAAC,CAAC,OAAO,KAAK;AAC5B,QAAQ,IAAI,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE;AACpC,UAAU,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC;AAC5B,SAAS;AACT,QAAQ,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC;AAC1B,OAAO,CAAC,CAAC;AACT,KAAK;AACL,GAAG,CAAC;AACJ,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;AACzB,CAAC;AACM,SAAS,gBAAgB,CAAC,YAAY,GAAG,KAAK,EAAE;AACvD,EAAE,OAAO,SAAS,CAAC,YAAY,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;AAChD;;;;;"}
1
+ {"version":3,"file":"use-toggle.js","sources":["../../src/use-toggle/use-toggle.ts"],"sourcesContent":["import { useState } from 'react';\n\nexport function useToggle<T>(options: [T, T]) {\n const [state, setState] = useState(options[0]);\n\n const toggle = (value?: React.SetStateAction<T>) => {\n if (typeof value !== 'undefined') {\n setState(value);\n } else {\n setState((current) => {\n if (current === options[0]) {\n return options[1];\n }\n\n return options[0];\n });\n }\n };\n\n return [state, toggle] as const;\n}\n"],"names":["useState"],"mappings":";;;;;;AACO,SAAS,SAAS,CAAC,OAAO,EAAE;AACnC,EAAE,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAGA,cAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;AACjD,EAAE,MAAM,MAAM,GAAG,CAAC,KAAK,KAAK;AAC5B,IAAI,IAAI,OAAO,KAAK,KAAK,WAAW,EAAE;AACtC,MAAM,QAAQ,CAAC,KAAK,CAAC,CAAC;AACtB,KAAK,MAAM;AACX,MAAM,QAAQ,CAAC,CAAC,OAAO,KAAK;AAC5B,QAAQ,IAAI,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE;AACpC,UAAU,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC;AAC5B,SAAS;AACT,QAAQ,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC;AAC1B,OAAO,CAAC,CAAC;AACT,KAAK;AACL,GAAG,CAAC;AACJ,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;AACzB;;;;"}