asterui 0.10.2 → 0.11.0
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/README.md +12 -9
- package/dist/components/Segmented.d.ts +37 -0
- package/dist/components/Tour.d.ts +61 -0
- package/dist/hooks/useClickOutside.d.ts +17 -0
- package/dist/hooks/useClipboard.d.ts +20 -0
- package/dist/hooks/useDebounce.d.ts +18 -0
- package/dist/hooks/useDisclosure.d.ts +20 -0
- package/dist/hooks/useHover.d.ts +18 -0
- package/dist/hooks/useKeyPress.d.ts +40 -0
- package/dist/hooks/useLocalStorage.d.ts +12 -0
- package/dist/hooks/usePrevious.d.ts +15 -0
- package/dist/hooks/useWindowSize.d.ts +21 -0
- package/dist/index.d.ts +18 -0
- package/dist/index.js +143 -120
- package/dist/index.js.map +1 -1
- package/dist/index100.js +5 -21
- package/dist/index100.js.map +1 -1
- package/dist/index101.js +41 -23
- package/dist/index101.js.map +1 -1
- package/dist/index102.js +2 -20
- package/dist/index102.js.map +1 -1
- package/dist/index103.js +6 -99
- package/dist/index103.js.map +1 -1
- package/dist/index104.js +149 -357
- package/dist/index104.js.map +1 -1
- package/dist/index105.js +28 -23
- package/dist/index105.js.map +1 -1
- package/dist/index106.js +28 -71
- package/dist/index106.js.map +1 -1
- package/dist/index107.js +2 -16
- package/dist/index107.js.map +1 -1
- package/dist/index108.js +71 -65
- package/dist/index108.js.map +1 -1
- package/dist/index109.js +34 -139
- package/dist/index109.js.map +1 -1
- package/dist/index110.js +26 -2
- package/dist/index110.js.map +1 -1
- package/dist/index111.js +20 -55
- package/dist/index111.js.map +1 -1
- package/dist/index112.js +24 -2
- package/dist/index112.js.map +1 -1
- package/dist/index113.js +20 -2
- package/dist/index113.js.map +1 -1
- package/dist/index114.js +100 -2
- package/dist/index114.js.map +1 -1
- package/dist/index115.js +360 -2
- package/dist/index115.js.map +1 -1
- package/dist/index116.js +25 -2
- package/dist/index116.js.map +1 -1
- package/dist/index117.js +73 -2
- package/dist/index117.js.map +1 -1
- package/dist/index118.js +16 -2
- package/dist/index118.js.map +1 -1
- package/dist/index119.js +66 -2
- package/dist/index119.js.map +1 -1
- package/dist/index120.js +140 -28
- package/dist/index120.js.map +1 -1
- package/dist/index121.js +2 -2
- package/dist/index122.js +55 -7
- package/dist/index122.js.map +1 -1
- package/dist/index123.js +2 -2
- package/dist/index124.js +2 -2
- package/dist/index125.js +2 -21
- package/dist/index125.js.map +1 -1
- package/dist/index126.js +2 -2
- package/dist/index127.js +2 -24
- package/dist/index127.js.map +1 -1
- package/dist/index128.js +2 -71
- package/dist/index128.js.map +1 -1
- package/dist/index129.js +2 -21
- package/dist/index129.js.map +1 -1
- package/dist/index130.js +31 -33
- package/dist/index130.js.map +1 -1
- package/dist/index131.js +2 -70
- package/dist/index131.js.map +1 -1
- package/dist/index132.js +8 -2
- package/dist/index132.js.map +1 -1
- package/dist/index133.js +2 -22
- package/dist/index133.js.map +1 -1
- package/dist/index135.js +21 -2
- package/dist/index135.js.map +1 -1
- package/dist/index137.js +24 -2
- package/dist/index137.js.map +1 -1
- package/dist/index138.js +70 -3
- package/dist/index138.js.map +1 -1
- package/dist/index139.js +24 -0
- package/dist/index139.js.map +1 -0
- package/dist/index14.js +1 -1
- package/dist/index140.js +37 -0
- package/dist/index140.js.map +1 -0
- package/dist/index141.js +73 -0
- package/dist/index141.js.map +1 -0
- package/dist/index142.js +5 -0
- package/dist/index142.js.map +1 -0
- package/dist/index143.js +5 -0
- package/dist/index143.js.map +1 -0
- package/dist/index144.js +25 -0
- package/dist/index144.js.map +1 -0
- package/dist/index145.js +5 -0
- package/dist/index145.js.map +1 -0
- package/dist/index146.js +5 -0
- package/dist/index146.js.map +1 -0
- package/dist/index147.js +5 -0
- package/dist/index147.js.map +1 -0
- package/dist/index148.js +5 -0
- package/dist/index148.js.map +1 -0
- package/dist/index149.js +7 -0
- package/dist/index149.js.map +1 -0
- package/dist/index59.js +1 -1
- package/dist/index66.js +66 -19
- package/dist/index66.js.map +1 -1
- package/dist/index67.js +18 -43
- package/dist/index67.js.map +1 -1
- package/dist/index68.js +44 -132
- package/dist/index68.js.map +1 -1
- package/dist/index69.js +132 -50
- package/dist/index69.js.map +1 -1
- package/dist/index70.js +51 -21
- package/dist/index70.js.map +1 -1
- package/dist/index71.js +19 -19
- package/dist/index71.js.map +1 -1
- package/dist/index72.js +20 -327
- package/dist/index72.js.map +1 -1
- package/dist/index73.js +323 -50
- package/dist/index73.js.map +1 -1
- package/dist/index74.js +56 -40
- package/dist/index74.js.map +1 -1
- package/dist/index75.js +40 -95
- package/dist/index75.js.map +1 -1
- package/dist/index76.js +88 -123
- package/dist/index76.js.map +1 -1
- package/dist/index77.js +123 -154
- package/dist/index77.js.map +1 -1
- package/dist/index78.js +159 -63
- package/dist/index78.js.map +1 -1
- package/dist/index79.js +65 -35
- package/dist/index79.js.map +1 -1
- package/dist/index80.js +35 -34
- package/dist/index80.js.map +1 -1
- package/dist/index81.js +222 -198
- package/dist/index81.js.map +1 -1
- package/dist/index82.js +34 -213
- package/dist/index82.js.map +1 -1
- package/dist/index83.js +190 -275
- package/dist/index83.js.map +1 -1
- package/dist/index84.js +202 -167
- package/dist/index84.js.map +1 -1
- package/dist/index85.js +263 -226
- package/dist/index85.js.map +1 -1
- package/dist/index86.js +176 -12
- package/dist/index86.js.map +1 -1
- package/dist/index87.js +257 -32
- package/dist/index87.js.map +1 -1
- package/dist/index88.js +13 -10792
- package/dist/index88.js.map +1 -1
- package/dist/index89.js +33 -5
- package/dist/index89.js.map +1 -1
- package/dist/index90.js +5 -41
- package/dist/index90.js.map +1 -1
- package/dist/index91.js +14 -2
- package/dist/index91.js.map +1 -1
- package/dist/index92.js +45 -6
- package/dist/index92.js.map +1 -1
- package/dist/index93.js +11 -150
- package/dist/index93.js.map +1 -1
- package/dist/index94.js +13 -28
- package/dist/index94.js.map +1 -1
- package/dist/index95.js +7 -29
- package/dist/index95.js.map +1 -1
- package/dist/index96.js +13 -2
- package/dist/index96.js.map +1 -1
- package/dist/index97.js +30 -71
- package/dist/index97.js.map +1 -1
- package/dist/index98.js +16 -37
- package/dist/index98.js.map +1 -1
- package/dist/index99.js +10792 -25
- package/dist/index99.js.map +1 -1
- package/package.json +2 -2
package/dist/index96.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index96.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
1
|
+
{"version":3,"file":"index96.js","sources":["../src/hooks/useHover.ts"],"sourcesContent":["import { useState, useRef, useEffect, type RefObject } from 'react'\n\nexport interface UseHoverReturn<T extends HTMLElement> {\n ref: RefObject<T | null>\n isHovered: boolean\n}\n\n/**\n * Hook that tracks hover state of an element.\n *\n * @returns Object with ref and isHovered state\n *\n * @example\n * const { ref, isHovered } = useHover<HTMLDivElement>()\n *\n * <div ref={ref} className={isHovered ? 'bg-blue-500' : 'bg-gray-500'}>\n * Hover me!\n * </div>\n */\nexport function useHover<T extends HTMLElement = HTMLElement>(): UseHoverReturn<T> {\n const [isHovered, setIsHovered] = useState(false)\n const ref = useRef<T>(null)\n\n useEffect(() => {\n const node = ref.current\n if (!node) return\n\n const handleMouseEnter = () => setIsHovered(true)\n const handleMouseLeave = () => setIsHovered(false)\n\n node.addEventListener('mouseenter', handleMouseEnter)\n node.addEventListener('mouseleave', handleMouseLeave)\n\n return () => {\n node.removeEventListener('mouseenter', handleMouseEnter)\n node.removeEventListener('mouseleave', handleMouseLeave)\n }\n }, [])\n\n return { ref, isHovered }\n}\n"],"names":["useHover","isHovered","setIsHovered","useState","ref","useRef","useEffect","node","handleMouseEnter","handleMouseLeave"],"mappings":";AAmBO,SAASA,IAAmE;AACjF,QAAM,CAACC,GAAWC,CAAY,IAAIC,EAAS,EAAK,GAC1CC,IAAMC,EAAU,IAAI;AAE1B,SAAAC,EAAU,MAAM;AACd,UAAMC,IAAOH,EAAI;AACjB,QAAI,CAACG,EAAM;AAEX,UAAMC,IAAmB,MAAMN,EAAa,EAAI,GAC1CO,IAAmB,MAAMP,EAAa,EAAK;AAEjD,WAAAK,EAAK,iBAAiB,cAAcC,CAAgB,GACpDD,EAAK,iBAAiB,cAAcE,CAAgB,GAE7C,MAAM;AACX,MAAAF,EAAK,oBAAoB,cAAcC,CAAgB,GACvDD,EAAK,oBAAoB,cAAcE,CAAgB;AAAA,IACzD;AAAA,EACF,GAAG,CAAA,CAAE,GAEE,EAAE,KAAAL,GAAK,WAAAH,EAAA;AAChB;"}
|
package/dist/index97.js
CHANGED
|
@@ -1,75 +1,34 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
1085,
|
|
30
|
-
1156,
|
|
31
|
-
1258,
|
|
32
|
-
1364,
|
|
33
|
-
1474,
|
|
34
|
-
1588,
|
|
35
|
-
1706,
|
|
36
|
-
1828,
|
|
37
|
-
1921,
|
|
38
|
-
2051,
|
|
39
|
-
2185,
|
|
40
|
-
2323,
|
|
41
|
-
2465,
|
|
42
|
-
2611,
|
|
43
|
-
2761,
|
|
44
|
-
2876,
|
|
45
|
-
3034,
|
|
46
|
-
3196,
|
|
47
|
-
3362,
|
|
48
|
-
3532,
|
|
49
|
-
3706
|
|
50
|
-
];
|
|
51
|
-
return n.getSymbolSize = function(t) {
|
|
52
|
-
if (!t) throw new Error('"version" cannot be null or undefined');
|
|
53
|
-
if (t < 1 || t > 40) throw new Error('"version" should be in range from 1 to 40');
|
|
54
|
-
return t * 4 + 17;
|
|
55
|
-
}, n.getSymbolTotalCodewords = function(t) {
|
|
56
|
-
return i[t];
|
|
57
|
-
}, n.getBCHDigit = function(o) {
|
|
58
|
-
let t = 0;
|
|
59
|
-
for (; o !== 0; )
|
|
60
|
-
t++, o >>>= 1;
|
|
61
|
-
return t;
|
|
62
|
-
}, n.setToSJISFunction = function(t) {
|
|
63
|
-
if (typeof t != "function")
|
|
64
|
-
throw new Error('"toSJISFunc" is not a valid function.');
|
|
65
|
-
e = t;
|
|
66
|
-
}, n.isKanjiModeEnabled = function() {
|
|
67
|
-
return typeof e < "u";
|
|
68
|
-
}, n.toSJIS = function(t) {
|
|
69
|
-
return e(t);
|
|
70
|
-
}, n;
|
|
1
|
+
import { useState as v, useCallback as i, useEffect as l } from "react";
|
|
2
|
+
function c(n, f = {}) {
|
|
3
|
+
const { target: u, event: o = "keydown", preventDefault: r = !1 } = f, [a, d] = v(!1), t = i(
|
|
4
|
+
(e) => {
|
|
5
|
+
e.key === n && (r && e.preventDefault(), d(!0));
|
|
6
|
+
},
|
|
7
|
+
[n, r]
|
|
8
|
+
), s = i(
|
|
9
|
+
(e) => {
|
|
10
|
+
e.key === n && d(!1);
|
|
11
|
+
},
|
|
12
|
+
[n]
|
|
13
|
+
);
|
|
14
|
+
return l(() => {
|
|
15
|
+
const e = u ?? window;
|
|
16
|
+
return o === "keydown" ? (e.addEventListener("keydown", t), e.addEventListener("keyup", s)) : e.addEventListener("keyup", t), () => {
|
|
17
|
+
e.removeEventListener("keydown", t), e.removeEventListener("keyup", s);
|
|
18
|
+
};
|
|
19
|
+
}, [u, o, t, s]), a;
|
|
20
|
+
}
|
|
21
|
+
function y(n, f, u = {}) {
|
|
22
|
+
const { target: o, event: r = "keydown", preventDefault: a = !1 } = u;
|
|
23
|
+
l(() => {
|
|
24
|
+
const d = o ?? window, t = (s) => {
|
|
25
|
+
s.key === n && (a && s.preventDefault(), f(s));
|
|
26
|
+
};
|
|
27
|
+
return d.addEventListener(r, t), () => d.removeEventListener(r, t);
|
|
28
|
+
}, [o, n, f, r, a]);
|
|
71
29
|
}
|
|
72
30
|
export {
|
|
73
|
-
|
|
31
|
+
c as useKeyPress,
|
|
32
|
+
y as useKeyPressCallback
|
|
74
33
|
};
|
|
75
34
|
//# sourceMappingURL=index97.js.map
|
package/dist/index97.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index97.js","sources":["
|
|
1
|
+
{"version":3,"file":"index97.js","sources":["../src/hooks/useKeyPress.ts"],"sourcesContent":["import { useState, useEffect, useCallback } from 'react'\n\nexport interface UseKeyPressOptions {\n /** Target element (default: window) */\n target?: HTMLElement | Window | null\n /** Event type: 'keydown' | 'keyup' (default: 'keydown') */\n event?: 'keydown' | 'keyup'\n /** Prevent default browser behavior */\n preventDefault?: boolean\n}\n\n/**\n * Hook that detects when a specific key is pressed.\n *\n * @param targetKey - Key to detect (e.g., 'Enter', 'Escape', 'a')\n * @param options - Configuration options\n * @returns Whether the key is currently pressed\n *\n * @example\n * const enterPressed = useKeyPress('Enter')\n * const escapePressed = useKeyPress('Escape')\n *\n * useEffect(() => {\n * if (escapePressed) closeModal()\n * }, [escapePressed])\n *\n * @example\n * // With callback for immediate action\n * useKeyPress('Escape', { preventDefault: true })\n */\nexport function useKeyPress(\n targetKey: string,\n options: UseKeyPressOptions = {}\n): boolean {\n const { target, event = 'keydown', preventDefault = false } = options\n const [keyPressed, setKeyPressed] = useState(false)\n\n const downHandler = useCallback(\n (e: KeyboardEvent) => {\n if (e.key === targetKey) {\n if (preventDefault) e.preventDefault()\n setKeyPressed(true)\n }\n },\n [targetKey, preventDefault]\n )\n\n const upHandler = useCallback(\n (e: KeyboardEvent) => {\n if (e.key === targetKey) {\n setKeyPressed(false)\n }\n },\n [targetKey]\n )\n\n useEffect(() => {\n const targetElement = target ?? window\n\n if (event === 'keydown') {\n targetElement.addEventListener('keydown', downHandler as EventListener)\n targetElement.addEventListener('keyup', upHandler as EventListener)\n } else {\n targetElement.addEventListener('keyup', downHandler as EventListener)\n }\n\n return () => {\n targetElement.removeEventListener('keydown', downHandler as EventListener)\n targetElement.removeEventListener('keyup', upHandler as EventListener)\n }\n }, [target, event, downHandler, upHandler])\n\n return keyPressed\n}\n\n/**\n * Hook that calls a callback when a specific key is pressed.\n *\n * @param targetKey - Key to detect\n * @param callback - Function to call when key is pressed\n * @param options - Configuration options\n *\n * @example\n * useKeyPressCallback('Escape', () => closeModal())\n * useKeyPressCallback('Enter', () => submitForm(), { preventDefault: true })\n */\nexport function useKeyPressCallback(\n targetKey: string,\n callback: (event: KeyboardEvent) => void,\n options: UseKeyPressOptions = {}\n): void {\n const { target, event = 'keydown', preventDefault = false } = options\n\n useEffect(() => {\n const targetElement = target ?? window\n\n const handler = (e: KeyboardEvent) => {\n if (e.key === targetKey) {\n if (preventDefault) e.preventDefault()\n callback(e)\n }\n }\n\n targetElement.addEventListener(event, handler as EventListener)\n return () => targetElement.removeEventListener(event, handler as EventListener)\n }, [target, targetKey, callback, event, preventDefault])\n}\n"],"names":["useKeyPress","targetKey","options","target","event","preventDefault","keyPressed","setKeyPressed","useState","downHandler","useCallback","upHandler","useEffect","targetElement","useKeyPressCallback","callback","handler","e"],"mappings":";AA8BO,SAASA,EACdC,GACAC,IAA8B,IACrB;AACT,QAAM,EAAE,QAAAC,GAAQ,OAAAC,IAAQ,WAAW,gBAAAC,IAAiB,OAAUH,GACxD,CAACI,GAAYC,CAAa,IAAIC,EAAS,EAAK,GAE5CC,IAAcC;AAAA,IAClB,CAAC,MAAqB;AACpB,MAAI,EAAE,QAAQT,MACRI,OAAkB,eAAA,GACtBE,EAAc,EAAI;AAAA,IAEtB;AAAA,IACA,CAACN,GAAWI,CAAc;AAAA,EAAA,GAGtBM,IAAYD;AAAA,IAChB,CAAC,MAAqB;AACpB,MAAI,EAAE,QAAQT,KACZM,EAAc,EAAK;AAAA,IAEvB;AAAA,IACA,CAACN,CAAS;AAAA,EAAA;AAGZ,SAAAW,EAAU,MAAM;AACd,UAAMC,IAAgBV,KAAU;AAEhC,WAAIC,MAAU,aACZS,EAAc,iBAAiB,WAAWJ,CAA4B,GACtEI,EAAc,iBAAiB,SAASF,CAA0B,KAElEE,EAAc,iBAAiB,SAASJ,CAA4B,GAG/D,MAAM;AACX,MAAAI,EAAc,oBAAoB,WAAWJ,CAA4B,GACzEI,EAAc,oBAAoB,SAASF,CAA0B;AAAA,IACvE;AAAA,EACF,GAAG,CAACR,GAAQC,GAAOK,GAAaE,CAAS,CAAC,GAEnCL;AACT;AAaO,SAASQ,EACdb,GACAc,GACAb,IAA8B,CAAA,GACxB;AACN,QAAM,EAAE,QAAAC,GAAQ,OAAAC,IAAQ,WAAW,gBAAAC,IAAiB,OAAUH;AAE9D,EAAAU,EAAU,MAAM;AACd,UAAMC,IAAgBV,KAAU,QAE1Ba,IAAU,CAACC,MAAqB;AACpC,MAAIA,EAAE,QAAQhB,MACRI,OAAkB,eAAA,GACtBU,EAASE,CAAC;AAAA,IAEd;AAEA,WAAAJ,EAAc,iBAAiBT,GAAOY,CAAwB,GACvD,MAAMH,EAAc,oBAAoBT,GAAOY,CAAwB;AAAA,EAChF,GAAG,CAACb,GAAQF,GAAWc,GAAUX,GAAOC,CAAc,CAAC;AACzD;"}
|
package/dist/index98.js
CHANGED
|
@@ -1,42 +1,21 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
case "medium":
|
|
15
|
-
return r.M;
|
|
16
|
-
case "q":
|
|
17
|
-
case "quartile":
|
|
18
|
-
return r.Q;
|
|
19
|
-
case "h":
|
|
20
|
-
case "high":
|
|
21
|
-
return r.H;
|
|
22
|
-
default:
|
|
23
|
-
throw new Error("Unknown EC Level: " + n);
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
r.isValid = function(i) {
|
|
27
|
-
return i && typeof i.bit < "u" && i.bit >= 0 && i.bit < 4;
|
|
28
|
-
}, r.from = function(i, c) {
|
|
29
|
-
if (r.isValid(i))
|
|
30
|
-
return i;
|
|
31
|
-
try {
|
|
32
|
-
return o(i);
|
|
33
|
-
} catch {
|
|
34
|
-
return c;
|
|
35
|
-
}
|
|
1
|
+
import { useState as t, useEffect as d } from "react";
|
|
2
|
+
function r() {
|
|
3
|
+
const [i, n] = t(() => typeof window > "u" ? { width: 0, height: 0 } : {
|
|
4
|
+
width: window.innerWidth,
|
|
5
|
+
height: window.innerHeight
|
|
6
|
+
});
|
|
7
|
+
return d(() => {
|
|
8
|
+
if (typeof window > "u") return;
|
|
9
|
+
const e = () => {
|
|
10
|
+
n({
|
|
11
|
+
width: window.innerWidth,
|
|
12
|
+
height: window.innerHeight
|
|
13
|
+
});
|
|
36
14
|
};
|
|
37
|
-
|
|
15
|
+
return window.addEventListener("resize", e), () => window.removeEventListener("resize", e);
|
|
16
|
+
}, []), i;
|
|
38
17
|
}
|
|
39
18
|
export {
|
|
40
|
-
|
|
19
|
+
r as useWindowSize
|
|
41
20
|
};
|
|
42
21
|
//# sourceMappingURL=index98.js.map
|
package/dist/index98.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index98.js","sources":["
|
|
1
|
+
{"version":3,"file":"index98.js","sources":["../src/hooks/useWindowSize.ts"],"sourcesContent":["import { useState, useEffect } from 'react'\n\nexport interface WindowSize {\n width: number\n height: number\n}\n\n/**\n * Hook that tracks window dimensions.\n * Updates on window resize.\n *\n * @returns Object with current width and height\n *\n * @example\n * const { width, height } = useWindowSize()\n *\n * return (\n * <div>\n * Window: {width} x {height}\n * {width < 768 && <MobileNav />}\n * </div>\n * )\n */\nexport function useWindowSize(): WindowSize {\n const [windowSize, setWindowSize] = useState<WindowSize>(() => {\n if (typeof window === 'undefined') {\n return { width: 0, height: 0 }\n }\n return {\n width: window.innerWidth,\n height: window.innerHeight,\n }\n })\n\n useEffect(() => {\n if (typeof window === 'undefined') return\n\n const handleResize = () => {\n setWindowSize({\n width: window.innerWidth,\n height: window.innerHeight,\n })\n }\n\n window.addEventListener('resize', handleResize)\n return () => window.removeEventListener('resize', handleResize)\n }, [])\n\n return windowSize\n}\n"],"names":["useWindowSize","windowSize","setWindowSize","useState","useEffect","handleResize"],"mappings":";AAuBO,SAASA,IAA4B;AAC1C,QAAM,CAACC,GAAYC,CAAa,IAAIC,EAAqB,MACnD,OAAO,SAAW,MACb,EAAE,OAAO,GAAG,QAAQ,EAAA,IAEtB;AAAA,IACL,OAAO,OAAO;AAAA,IACd,QAAQ,OAAO;AAAA,EAAA,CAElB;AAED,SAAAC,EAAU,MAAM;AACd,QAAI,OAAO,SAAW,IAAa;AAEnC,UAAMC,IAAe,MAAM;AACzB,MAAAH,EAAc;AAAA,QACZ,OAAO,OAAO;AAAA,QACd,QAAQ,OAAO;AAAA,MAAA,CAChB;AAAA,IACH;AAEA,kBAAO,iBAAiB,UAAUG,CAAY,GACvC,MAAM,OAAO,oBAAoB,UAAUA,CAAY;AAAA,EAChE,GAAG,CAAA,CAAE,GAEEJ;AACT;"}
|