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.
Files changed (178) hide show
  1. package/README.md +12 -9
  2. package/dist/components/Segmented.d.ts +37 -0
  3. package/dist/components/Tour.d.ts +61 -0
  4. package/dist/hooks/useClickOutside.d.ts +17 -0
  5. package/dist/hooks/useClipboard.d.ts +20 -0
  6. package/dist/hooks/useDebounce.d.ts +18 -0
  7. package/dist/hooks/useDisclosure.d.ts +20 -0
  8. package/dist/hooks/useHover.d.ts +18 -0
  9. package/dist/hooks/useKeyPress.d.ts +40 -0
  10. package/dist/hooks/useLocalStorage.d.ts +12 -0
  11. package/dist/hooks/usePrevious.d.ts +15 -0
  12. package/dist/hooks/useWindowSize.d.ts +21 -0
  13. package/dist/index.d.ts +18 -0
  14. package/dist/index.js +143 -120
  15. package/dist/index.js.map +1 -1
  16. package/dist/index100.js +5 -21
  17. package/dist/index100.js.map +1 -1
  18. package/dist/index101.js +41 -23
  19. package/dist/index101.js.map +1 -1
  20. package/dist/index102.js +2 -20
  21. package/dist/index102.js.map +1 -1
  22. package/dist/index103.js +6 -99
  23. package/dist/index103.js.map +1 -1
  24. package/dist/index104.js +149 -357
  25. package/dist/index104.js.map +1 -1
  26. package/dist/index105.js +28 -23
  27. package/dist/index105.js.map +1 -1
  28. package/dist/index106.js +28 -71
  29. package/dist/index106.js.map +1 -1
  30. package/dist/index107.js +2 -16
  31. package/dist/index107.js.map +1 -1
  32. package/dist/index108.js +71 -65
  33. package/dist/index108.js.map +1 -1
  34. package/dist/index109.js +34 -139
  35. package/dist/index109.js.map +1 -1
  36. package/dist/index110.js +26 -2
  37. package/dist/index110.js.map +1 -1
  38. package/dist/index111.js +20 -55
  39. package/dist/index111.js.map +1 -1
  40. package/dist/index112.js +24 -2
  41. package/dist/index112.js.map +1 -1
  42. package/dist/index113.js +20 -2
  43. package/dist/index113.js.map +1 -1
  44. package/dist/index114.js +100 -2
  45. package/dist/index114.js.map +1 -1
  46. package/dist/index115.js +360 -2
  47. package/dist/index115.js.map +1 -1
  48. package/dist/index116.js +25 -2
  49. package/dist/index116.js.map +1 -1
  50. package/dist/index117.js +73 -2
  51. package/dist/index117.js.map +1 -1
  52. package/dist/index118.js +16 -2
  53. package/dist/index118.js.map +1 -1
  54. package/dist/index119.js +66 -2
  55. package/dist/index119.js.map +1 -1
  56. package/dist/index120.js +140 -28
  57. package/dist/index120.js.map +1 -1
  58. package/dist/index121.js +2 -2
  59. package/dist/index122.js +55 -7
  60. package/dist/index122.js.map +1 -1
  61. package/dist/index123.js +2 -2
  62. package/dist/index124.js +2 -2
  63. package/dist/index125.js +2 -21
  64. package/dist/index125.js.map +1 -1
  65. package/dist/index126.js +2 -2
  66. package/dist/index127.js +2 -24
  67. package/dist/index127.js.map +1 -1
  68. package/dist/index128.js +2 -71
  69. package/dist/index128.js.map +1 -1
  70. package/dist/index129.js +2 -21
  71. package/dist/index129.js.map +1 -1
  72. package/dist/index130.js +31 -33
  73. package/dist/index130.js.map +1 -1
  74. package/dist/index131.js +2 -70
  75. package/dist/index131.js.map +1 -1
  76. package/dist/index132.js +8 -2
  77. package/dist/index132.js.map +1 -1
  78. package/dist/index133.js +2 -22
  79. package/dist/index133.js.map +1 -1
  80. package/dist/index135.js +21 -2
  81. package/dist/index135.js.map +1 -1
  82. package/dist/index137.js +24 -2
  83. package/dist/index137.js.map +1 -1
  84. package/dist/index138.js +70 -3
  85. package/dist/index138.js.map +1 -1
  86. package/dist/index139.js +24 -0
  87. package/dist/index139.js.map +1 -0
  88. package/dist/index14.js +1 -1
  89. package/dist/index140.js +37 -0
  90. package/dist/index140.js.map +1 -0
  91. package/dist/index141.js +73 -0
  92. package/dist/index141.js.map +1 -0
  93. package/dist/index142.js +5 -0
  94. package/dist/index142.js.map +1 -0
  95. package/dist/index143.js +5 -0
  96. package/dist/index143.js.map +1 -0
  97. package/dist/index144.js +25 -0
  98. package/dist/index144.js.map +1 -0
  99. package/dist/index145.js +5 -0
  100. package/dist/index145.js.map +1 -0
  101. package/dist/index146.js +5 -0
  102. package/dist/index146.js.map +1 -0
  103. package/dist/index147.js +5 -0
  104. package/dist/index147.js.map +1 -0
  105. package/dist/index148.js +5 -0
  106. package/dist/index148.js.map +1 -0
  107. package/dist/index149.js +7 -0
  108. package/dist/index149.js.map +1 -0
  109. package/dist/index59.js +1 -1
  110. package/dist/index66.js +66 -19
  111. package/dist/index66.js.map +1 -1
  112. package/dist/index67.js +18 -43
  113. package/dist/index67.js.map +1 -1
  114. package/dist/index68.js +44 -132
  115. package/dist/index68.js.map +1 -1
  116. package/dist/index69.js +132 -50
  117. package/dist/index69.js.map +1 -1
  118. package/dist/index70.js +51 -21
  119. package/dist/index70.js.map +1 -1
  120. package/dist/index71.js +19 -19
  121. package/dist/index71.js.map +1 -1
  122. package/dist/index72.js +20 -327
  123. package/dist/index72.js.map +1 -1
  124. package/dist/index73.js +323 -50
  125. package/dist/index73.js.map +1 -1
  126. package/dist/index74.js +56 -40
  127. package/dist/index74.js.map +1 -1
  128. package/dist/index75.js +40 -95
  129. package/dist/index75.js.map +1 -1
  130. package/dist/index76.js +88 -123
  131. package/dist/index76.js.map +1 -1
  132. package/dist/index77.js +123 -154
  133. package/dist/index77.js.map +1 -1
  134. package/dist/index78.js +159 -63
  135. package/dist/index78.js.map +1 -1
  136. package/dist/index79.js +65 -35
  137. package/dist/index79.js.map +1 -1
  138. package/dist/index80.js +35 -34
  139. package/dist/index80.js.map +1 -1
  140. package/dist/index81.js +222 -198
  141. package/dist/index81.js.map +1 -1
  142. package/dist/index82.js +34 -213
  143. package/dist/index82.js.map +1 -1
  144. package/dist/index83.js +190 -275
  145. package/dist/index83.js.map +1 -1
  146. package/dist/index84.js +202 -167
  147. package/dist/index84.js.map +1 -1
  148. package/dist/index85.js +263 -226
  149. package/dist/index85.js.map +1 -1
  150. package/dist/index86.js +176 -12
  151. package/dist/index86.js.map +1 -1
  152. package/dist/index87.js +257 -32
  153. package/dist/index87.js.map +1 -1
  154. package/dist/index88.js +13 -10792
  155. package/dist/index88.js.map +1 -1
  156. package/dist/index89.js +33 -5
  157. package/dist/index89.js.map +1 -1
  158. package/dist/index90.js +5 -41
  159. package/dist/index90.js.map +1 -1
  160. package/dist/index91.js +14 -2
  161. package/dist/index91.js.map +1 -1
  162. package/dist/index92.js +45 -6
  163. package/dist/index92.js.map +1 -1
  164. package/dist/index93.js +11 -150
  165. package/dist/index93.js.map +1 -1
  166. package/dist/index94.js +13 -28
  167. package/dist/index94.js.map +1 -1
  168. package/dist/index95.js +7 -29
  169. package/dist/index95.js.map +1 -1
  170. package/dist/index96.js +13 -2
  171. package/dist/index96.js.map +1 -1
  172. package/dist/index97.js +30 -71
  173. package/dist/index97.js.map +1 -1
  174. package/dist/index98.js +16 -37
  175. package/dist/index98.js.map +1 -1
  176. package/dist/index99.js +10792 -25
  177. package/dist/index99.js.map +1 -1
  178. package/package.json +2 -2
@@ -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 { __exports as n } from "./index114.js";
2
- var r;
3
- function S() {
4
- if (r) return n;
5
- r = 1;
6
- let e;
7
- const i = [
8
- 0,
9
- // Not used
10
- 26,
11
- 44,
12
- 70,
13
- 100,
14
- 134,
15
- 172,
16
- 196,
17
- 242,
18
- 292,
19
- 346,
20
- 404,
21
- 466,
22
- 532,
23
- 581,
24
- 655,
25
- 733,
26
- 815,
27
- 901,
28
- 991,
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
- S as __require
31
+ c as useKeyPress,
32
+ y as useKeyPressCallback
74
33
  };
75
34
  //# sourceMappingURL=index97.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index97.js","sources":["../../../node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/utils.js"],"sourcesContent":["let toSJISFunction\nconst CODEWORDS_COUNT = [\n 0, // Not used\n 26, 44, 70, 100, 134, 172, 196, 242, 292, 346,\n 404, 466, 532, 581, 655, 733, 815, 901, 991, 1085,\n 1156, 1258, 1364, 1474, 1588, 1706, 1828, 1921, 2051, 2185,\n 2323, 2465, 2611, 2761, 2876, 3034, 3196, 3362, 3532, 3706\n]\n\n/**\n * Returns the QR Code size for the specified version\n *\n * @param {Number} version QR Code version\n * @return {Number} size of QR code\n */\nexports.getSymbolSize = function getSymbolSize (version) {\n if (!version) throw new Error('\"version\" cannot be null or undefined')\n if (version < 1 || version > 40) throw new Error('\"version\" should be in range from 1 to 40')\n return version * 4 + 17\n}\n\n/**\n * Returns the total number of codewords used to store data and EC information.\n *\n * @param {Number} version QR Code version\n * @return {Number} Data length in bits\n */\nexports.getSymbolTotalCodewords = function getSymbolTotalCodewords (version) {\n return CODEWORDS_COUNT[version]\n}\n\n/**\n * Encode data with Bose-Chaudhuri-Hocquenghem\n *\n * @param {Number} data Value to encode\n * @return {Number} Encoded value\n */\nexports.getBCHDigit = function (data) {\n let digit = 0\n\n while (data !== 0) {\n digit++\n data >>>= 1\n }\n\n return digit\n}\n\nexports.setToSJISFunction = function setToSJISFunction (f) {\n if (typeof f !== 'function') {\n throw new Error('\"toSJISFunc\" is not a valid function.')\n }\n\n toSJISFunction = f\n}\n\nexports.isKanjiModeEnabled = function () {\n return typeof toSJISFunction !== 'undefined'\n}\n\nexports.toSJIS = function toSJIS (kanji) {\n return toSJISFunction(kanji)\n}\n"],"names":["toSJISFunction","CODEWORDS_COUNT","utils","version","data","digit","f","kanji"],"mappings":";;;;;AAAA,MAAIA;AACJ,QAAMC,IAAkB;AAAA,IACtB;AAAA;AAAA,IACA;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAK;AAAA,IAAK;AAAA,IAAK;AAAA,IAAK;AAAA,IAAK;AAAA,IAAK;AAAA,IAC1C;AAAA,IAAK;AAAA,IAAK;AAAA,IAAK;AAAA,IAAK;AAAA,IAAK;AAAA,IAAK;AAAA,IAAK;AAAA,IAAK;AAAA,IAAK;AAAA,IAC7C;AAAA,IAAM;AAAA,IAAM;AAAA,IAAM;AAAA,IAAM;AAAA,IAAM;AAAA,IAAM;AAAA,IAAM;AAAA,IAAM;AAAA,IAAM;AAAA,IACtD;AAAA,IAAM;AAAA,IAAM;AAAA,IAAM;AAAA,IAAM;AAAA,IAAM;AAAA,IAAM;AAAA,IAAM;AAAA,IAAM;AAAA,IAAM;AAAA,EACxD;AAQA,SAAAC,EAAA,gBAAwB,SAAwBC,GAAS;AACvD,QAAI,CAACA,EAAS,OAAM,IAAI,MAAM,uCAAuC;AACrE,QAAIA,IAAU,KAAKA,IAAU,GAAI,OAAM,IAAI,MAAM,2CAA2C;AAC5F,WAAOA,IAAU,IAAI;AAAA,EACvB,GAQAD,EAAA,0BAAkC,SAAkCC,GAAS;AAC3E,WAAOF,EAAgBE,CAAO;AAAA,EAChC,GAQAD,EAAA,cAAsB,SAAUE,GAAM;AACpC,QAAIC,IAAQ;AAEZ,WAAOD,MAAS;AACd,MAAAC,KACAD,OAAU;AAGZ,WAAOC;AAAA,EACT,GAEAH,EAAA,oBAA4B,SAA4BI,GAAG;AACzD,QAAI,OAAOA,KAAM;AACf,YAAM,IAAI,MAAM,uCAAuC;AAGzD,IAAAN,IAAiBM;AAAA,EACnB,GAEAJ,EAAA,qBAA6B,WAAY;AACvC,WAAO,OAAOF,IAAmB;AAAA,EACnC,GAEAE,EAAA,SAAiB,SAAiBK,GAAO;AACvC,WAAOP,EAAeO,CAAK;AAAA,EAC7B;;","x_google_ignoreList":[0]}
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 { __exports as t } from "./index115.js";
2
- var e;
3
- function f() {
4
- return e ? t : (e = 1, (function(r) {
5
- r.L = { bit: 1 }, r.M = { bit: 0 }, r.Q = { bit: 3 }, r.H = { bit: 2 };
6
- function o(n) {
7
- if (typeof n != "string")
8
- throw new Error("Param is not a string");
9
- switch (n.toLowerCase()) {
10
- case "l":
11
- case "low":
12
- return r.L;
13
- case "m":
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
- })(t), t);
15
+ return window.addEventListener("resize", e), () => window.removeEventListener("resize", e);
16
+ }, []), i;
38
17
  }
39
18
  export {
40
- f as __require
19
+ r as useWindowSize
41
20
  };
42
21
  //# sourceMappingURL=index98.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index98.js","sources":["../../../node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/error-correction-level.js"],"sourcesContent":["exports.L = { bit: 1 }\nexports.M = { bit: 0 }\nexports.Q = { bit: 3 }\nexports.H = { bit: 2 }\n\nfunction fromString (string) {\n if (typeof string !== 'string') {\n throw new Error('Param is not a string')\n }\n\n const lcStr = string.toLowerCase()\n\n switch (lcStr) {\n case 'l':\n case 'low':\n return exports.L\n\n case 'm':\n case 'medium':\n return exports.M\n\n case 'q':\n case 'quartile':\n return exports.Q\n\n case 'h':\n case 'high':\n return exports.H\n\n default:\n throw new Error('Unknown EC Level: ' + string)\n }\n}\n\nexports.isValid = function isValid (level) {\n return level && typeof level.bit !== 'undefined' &&\n level.bit >= 0 && level.bit < 4\n}\n\nexports.from = function from (value, defaultValue) {\n if (exports.isValid(value)) {\n return value\n }\n\n try {\n return fromString(value)\n } catch (e) {\n return defaultValue\n }\n}\n"],"names":["exports","fromString","string","level","value","defaultValue"],"mappings":";;;;AAAAA,IAAAA,EAAA,IAAY,EAAE,KAAK,EAAC,GACpBA,EAAA,IAAY,EAAE,KAAK,EAAC,GACpBA,EAAA,IAAY,EAAE,KAAK,EAAC,GACpBA,EAAA,IAAY,EAAE,KAAK,EAAC;AAEpB,aAASC,EAAYC,GAAQ;AAC3B,UAAI,OAAOA,KAAW;AACpB,cAAM,IAAI,MAAM,uBAAuB;AAKzC,cAFcA,EAAO,YAAW,GAEnB;AAAA,QACX,KAAK;AAAA,QACL,KAAK;AACH,iBAAOF,EAAQ;AAAA,QAEjB,KAAK;AAAA,QACL,KAAK;AACH,iBAAOA,EAAQ;AAAA,QAEjB,KAAK;AAAA,QACL,KAAK;AACH,iBAAOA,EAAQ;AAAA,QAEjB,KAAK;AAAA,QACL,KAAK;AACH,iBAAOA,EAAQ;AAAA,QAEjB;AACE,gBAAM,IAAI,MAAM,uBAAuBE,CAAM;AAAA,MACnD;AAAA,IACA;AAEAF,IAAAA,EAAA,UAAkB,SAAkBG,GAAO;AACzC,aAAOA,KAAS,OAAOA,EAAM,MAAQ,OACnCA,EAAM,OAAO,KAAKA,EAAM,MAAM;AAAA,IAClC,GAEAH,EAAA,OAAe,SAAeI,GAAOC,GAAc;AACjD,UAAIL,EAAQ,QAAQI,CAAK;AACvB,eAAOA;AAGT,UAAI;AACF,eAAOH,EAAWG,CAAK;AAAA,MAC3B,QAAc;AACV,eAAOC;AAAA,MACX;AAAA,IACA;AAAA;;","x_google_ignoreList":[0]}
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;"}