asterui 0.12.2 → 0.12.4

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 (300) hide show
  1. package/dist/components/Kbd.d.ts +2 -1
  2. package/dist/components/Modal.d.ts +7 -1
  3. package/dist/index.d.ts +0 -3
  4. package/dist/index.js +196 -201
  5. package/dist/index.js.map +1 -1
  6. package/dist/index100.js +11 -44
  7. package/dist/index100.js.map +1 -1
  8. package/dist/index101.js +12 -10
  9. package/dist/index101.js.map +1 -1
  10. package/dist/index102.js +7 -14
  11. package/dist/index102.js.map +1 -1
  12. package/dist/index103.js +12 -7
  13. package/dist/index103.js.map +1 -1
  14. package/dist/index104.js +29 -11
  15. package/dist/index104.js.map +1 -1
  16. package/dist/index105.js +16 -29
  17. package/dist/index105.js.map +1 -1
  18. package/dist/index13.js +95 -35
  19. package/dist/index13.js.map +1 -1
  20. package/dist/index14.js +153 -90
  21. package/dist/index14.js.map +1 -1
  22. package/dist/index15.js +146 -154
  23. package/dist/index15.js.map +1 -1
  24. package/dist/index16.js +5 -150
  25. package/dist/index16.js.map +1 -1
  26. package/dist/index17.js +71 -5
  27. package/dist/index17.js.map +1 -1
  28. package/dist/index18.js +17 -71
  29. package/dist/index18.js.map +1 -1
  30. package/dist/index19.js +96 -15
  31. package/dist/index19.js.map +1 -1
  32. package/dist/index20.js +105 -89
  33. package/dist/index20.js.map +1 -1
  34. package/dist/index21.js +177 -107
  35. package/dist/index21.js.map +1 -1
  36. package/dist/index22.js +107 -181
  37. package/dist/index22.js.map +1 -1
  38. package/dist/index23.js +19 -110
  39. package/dist/index23.js.map +1 -1
  40. package/dist/index24.js +41 -17
  41. package/dist/index24.js.map +1 -1
  42. package/dist/index25.js +32 -43
  43. package/dist/index25.js.map +1 -1
  44. package/dist/index26.js +41 -32
  45. package/dist/index26.js.map +1 -1
  46. package/dist/index27.js +12 -41
  47. package/dist/index27.js.map +1 -1
  48. package/dist/index28.js +33 -12
  49. package/dist/index28.js.map +1 -1
  50. package/dist/index29.js +63 -33
  51. package/dist/index29.js.map +1 -1
  52. package/dist/index30.js +77 -60
  53. package/dist/index30.js.map +1 -1
  54. package/dist/index31.js +18 -80
  55. package/dist/index31.js.map +1 -1
  56. package/dist/index32.js +217 -15
  57. package/dist/index32.js.map +1 -1
  58. package/dist/index33.js +1078 -216
  59. package/dist/index33.js.map +1 -1
  60. package/dist/index34.js +17 -1081
  61. package/dist/index34.js.map +1 -1
  62. package/dist/index35.js +121 -17
  63. package/dist/index35.js.map +1 -1
  64. package/dist/index36.js +37 -119
  65. package/dist/index36.js.map +1 -1
  66. package/dist/index37.js +182 -31
  67. package/dist/index37.js.map +1 -1
  68. package/dist/index38.js +97 -191
  69. package/dist/index38.js.map +1 -1
  70. package/dist/index39.js +158 -93
  71. package/dist/index39.js.map +1 -1
  72. package/dist/index40.js +139 -155
  73. package/dist/index40.js.map +1 -1
  74. package/dist/index41.js +15 -146
  75. package/dist/index41.js.map +1 -1
  76. package/dist/index42.js +17 -15
  77. package/dist/index42.js.map +1 -1
  78. package/dist/index43.js +21 -18
  79. package/dist/index43.js.map +1 -1
  80. package/dist/index44.js +116 -18
  81. package/dist/index44.js.map +1 -1
  82. package/dist/index45.js +10 -116
  83. package/dist/index45.js.map +1 -1
  84. package/dist/index46.js +35 -13
  85. package/dist/index46.js.map +1 -1
  86. package/dist/index47.js +34 -35
  87. package/dist/index47.js.map +1 -1
  88. package/dist/index48.js +116 -10
  89. package/dist/index48.js.map +1 -1
  90. package/dist/index49.js +174 -114
  91. package/dist/index49.js.map +1 -1
  92. package/dist/index50.js +136 -165
  93. package/dist/index50.js.map +1 -1
  94. package/dist/index51.js +11 -146
  95. package/dist/index51.js.map +1 -1
  96. package/dist/index52.js +20 -10
  97. package/dist/index52.js.map +1 -1
  98. package/dist/index53.js +14 -22
  99. package/dist/index53.js.map +1 -1
  100. package/dist/index54.js +7 -14
  101. package/dist/index54.js.map +1 -1
  102. package/dist/index55.js +268 -6
  103. package/dist/index55.js.map +1 -1
  104. package/dist/index56.js +17 -266
  105. package/dist/index56.js.map +1 -1
  106. package/dist/index57.js +122 -17
  107. package/dist/index57.js.map +1 -1
  108. package/dist/index58.js +108 -120
  109. package/dist/index58.js.map +1 -1
  110. package/dist/index59.js +167 -107
  111. package/dist/index59.js.map +1 -1
  112. package/dist/index60.js +29 -167
  113. package/dist/index60.js.map +1 -1
  114. package/dist/index61.js +120 -30
  115. package/dist/index61.js.map +1 -1
  116. package/dist/index62.js +80 -116
  117. package/dist/index62.js.map +1 -1
  118. package/dist/index63.js +19 -85
  119. package/dist/index63.js.map +1 -1
  120. package/dist/index64.js +73 -19
  121. package/dist/index64.js.map +1 -1
  122. package/dist/index65.js +54 -71
  123. package/dist/index65.js.map +1 -1
  124. package/dist/index66.js +44 -56
  125. package/dist/index66.js.map +1 -1
  126. package/dist/index67.js +49 -42
  127. package/dist/index67.js.map +1 -1
  128. package/dist/index68.js +62 -52
  129. package/dist/index68.js.map +1 -1
  130. package/dist/index69.js +101 -56
  131. package/dist/index69.js.map +1 -1
  132. package/dist/index70.js +41 -107
  133. package/dist/index70.js.map +1 -1
  134. package/dist/index71.js +68 -41
  135. package/dist/index71.js.map +1 -1
  136. package/dist/index72.js +19 -66
  137. package/dist/index72.js.map +1 -1
  138. package/dist/index73.js +43 -18
  139. package/dist/index73.js.map +1 -1
  140. package/dist/index74.js +132 -44
  141. package/dist/index74.js.map +1 -1
  142. package/dist/index75.js +50 -132
  143. package/dist/index75.js.map +1 -1
  144. package/dist/index76.js +21 -51
  145. package/dist/index76.js.map +1 -1
  146. package/dist/index77.js +31 -22
  147. package/dist/index77.js.map +1 -1
  148. package/dist/index78.js +22 -31
  149. package/dist/index78.js.map +1 -1
  150. package/dist/index79.js +327 -20
  151. package/dist/index79.js.map +1 -1
  152. package/dist/index80.js +50 -323
  153. package/dist/index80.js.map +1 -1
  154. package/dist/index81.js +40 -56
  155. package/dist/index81.js.map +1 -1
  156. package/dist/index82.js +23 -40
  157. package/dist/index82.js.map +1 -1
  158. package/dist/index83.js +93 -21
  159. package/dist/index83.js.map +1 -1
  160. package/dist/index84.js +123 -88
  161. package/dist/index84.js.map +1 -1
  162. package/dist/index85.js +154 -123
  163. package/dist/index85.js.map +1 -1
  164. package/dist/index86.js +63 -159
  165. package/dist/index86.js.map +1 -1
  166. package/dist/index87.js +35 -65
  167. package/dist/index87.js.map +1 -1
  168. package/dist/index88.js +234 -35
  169. package/dist/index88.js.map +1 -1
  170. package/dist/index89.js +31 -231
  171. package/dist/index89.js.map +1 -1
  172. package/dist/index90.js +210 -34
  173. package/dist/index90.js.map +1 -1
  174. package/dist/index91.js +198 -195
  175. package/dist/index91.js.map +1 -1
  176. package/dist/index92.js +241 -159
  177. package/dist/index92.js.map +1 -1
  178. package/dist/index93.js +166 -283
  179. package/dist/index93.js.map +1 -1
  180. package/dist/index94.js +253 -173
  181. package/dist/index94.js.map +1 -1
  182. package/dist/index95.js +14 -258
  183. package/dist/index95.js.map +1 -1
  184. package/dist/index96.js +31 -12
  185. package/dist/index96.js.map +1 -1
  186. package/dist/index97.js +5 -32
  187. package/dist/index97.js.map +1 -1
  188. package/dist/index98.js +13 -5
  189. package/dist/index98.js.map +1 -1
  190. package/dist/index99.js +43 -11
  191. package/dist/index99.js.map +1 -1
  192. package/package.json +11 -5
  193. package/dist/components/Calendar.d.ts +0 -23
  194. package/dist/index.css +0 -1
  195. package/dist/index106.js +0 -21
  196. package/dist/index106.js.map +0 -1
  197. package/dist/index107.js +0 -177
  198. package/dist/index107.js.map +0 -1
  199. package/dist/index109.js +0 -10796
  200. package/dist/index109.js.map +0 -1
  201. package/dist/index110.js +0 -8
  202. package/dist/index110.js.map +0 -1
  203. package/dist/index111.js +0 -45
  204. package/dist/index111.js.map +0 -1
  205. package/dist/index112.js +0 -5
  206. package/dist/index112.js.map +0 -1
  207. package/dist/index113.js +0 -10
  208. package/dist/index113.js.map +0 -1
  209. package/dist/index114.js +0 -155
  210. package/dist/index114.js.map +0 -1
  211. package/dist/index115.js +0 -33
  212. package/dist/index115.js.map +0 -1
  213. package/dist/index116.js +0 -33
  214. package/dist/index116.js.map +0 -1
  215. package/dist/index117.js +0 -5
  216. package/dist/index117.js.map +0 -1
  217. package/dist/index118.js +0 -75
  218. package/dist/index118.js.map +0 -1
  219. package/dist/index119.js +0 -42
  220. package/dist/index119.js.map +0 -1
  221. package/dist/index120.js +0 -29
  222. package/dist/index120.js.map +0 -1
  223. package/dist/index121.js +0 -24
  224. package/dist/index121.js.map +0 -1
  225. package/dist/index122.js +0 -27
  226. package/dist/index122.js.map +0 -1
  227. package/dist/index123.js +0 -23
  228. package/dist/index123.js.map +0 -1
  229. package/dist/index124.js +0 -103
  230. package/dist/index124.js.map +0 -1
  231. package/dist/index125.js +0 -363
  232. package/dist/index125.js.map +0 -1
  233. package/dist/index126.js +0 -28
  234. package/dist/index126.js.map +0 -1
  235. package/dist/index127.js +0 -76
  236. package/dist/index127.js.map +0 -1
  237. package/dist/index128.js +0 -19
  238. package/dist/index128.js.map +0 -1
  239. package/dist/index129.js +0 -69
  240. package/dist/index129.js.map +0 -1
  241. package/dist/index130.js +0 -147
  242. package/dist/index130.js.map +0 -1
  243. package/dist/index131.js +0 -5
  244. package/dist/index131.js.map +0 -1
  245. package/dist/index132.js +0 -59
  246. package/dist/index132.js.map +0 -1
  247. package/dist/index133.js +0 -5
  248. package/dist/index133.js.map +0 -1
  249. package/dist/index134.js +0 -5
  250. package/dist/index134.js.map +0 -1
  251. package/dist/index135.js +0 -5
  252. package/dist/index135.js.map +0 -1
  253. package/dist/index136.js +0 -5
  254. package/dist/index136.js.map +0 -1
  255. package/dist/index137.js +0 -5
  256. package/dist/index137.js.map +0 -1
  257. package/dist/index138.js +0 -5
  258. package/dist/index138.js.map +0 -1
  259. package/dist/index139.js +0 -5
  260. package/dist/index139.js.map +0 -1
  261. package/dist/index140.js +0 -5
  262. package/dist/index140.js.map +0 -1
  263. package/dist/index141.js +0 -35
  264. package/dist/index141.js.map +0 -1
  265. package/dist/index142.js +0 -5
  266. package/dist/index142.js.map +0 -1
  267. package/dist/index143.js +0 -11
  268. package/dist/index143.js.map +0 -1
  269. package/dist/index144.js +0 -5
  270. package/dist/index144.js.map +0 -1
  271. package/dist/index145.js +0 -5
  272. package/dist/index145.js.map +0 -1
  273. package/dist/index146.js +0 -24
  274. package/dist/index146.js.map +0 -1
  275. package/dist/index147.js +0 -5
  276. package/dist/index147.js.map +0 -1
  277. package/dist/index148.js +0 -27
  278. package/dist/index148.js.map +0 -1
  279. package/dist/index149.js +0 -74
  280. package/dist/index149.js.map +0 -1
  281. package/dist/index150.js +0 -24
  282. package/dist/index150.js.map +0 -1
  283. package/dist/index151.js +0 -37
  284. package/dist/index151.js.map +0 -1
  285. package/dist/index152.js +0 -73
  286. package/dist/index152.js.map +0 -1
  287. package/dist/index153.js +0 -5
  288. package/dist/index153.js.map +0 -1
  289. package/dist/index154.js +0 -25
  290. package/dist/index154.js.map +0 -1
  291. package/dist/index155.js +0 -5
  292. package/dist/index155.js.map +0 -1
  293. package/dist/index156.js +0 -5
  294. package/dist/index156.js.map +0 -1
  295. package/dist/index157.js +0 -5
  296. package/dist/index157.js.map +0 -1
  297. package/dist/index158.js +0 -5
  298. package/dist/index158.js.map +0 -1
  299. package/dist/index159.js +0 -7
  300. package/dist/index159.js.map +0 -1
@@ -1,7 +1,8 @@
1
1
  import { default as React } from 'react';
2
+ export type KbdSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';
2
3
  export interface KbdProps extends React.HTMLAttributes<HTMLElement> {
3
4
  /** Size of the kbd */
4
- size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
5
+ size?: KbdSize;
5
6
  /** Key content */
6
7
  children?: React.ReactNode;
7
8
  }
@@ -12,6 +12,12 @@ export interface ModalProps extends Omit<React.HTMLAttributes<HTMLDialogElement>
12
12
  closable?: boolean;
13
13
  position?: 'top' | 'middle' | 'bottom';
14
14
  align?: 'start' | 'end';
15
+ /** Width of the modal box */
16
+ width?: number | string;
17
+ /** Center the modal vertically */
18
+ centered?: boolean;
19
+ /** Callback when modal is closed */
20
+ onClose?: () => void;
15
21
  }
16
22
  export interface ModalFuncProps {
17
23
  title?: React.ReactNode;
@@ -22,7 +28,7 @@ export interface ModalFuncProps {
22
28
  cancelText?: string;
23
29
  type?: 'info' | 'success' | 'warning' | 'error';
24
30
  }
25
- export declare function Modal({ children, title, footer, open, onOk, onCancel, okText, cancelText, maskClosable, closable, position, align, className, ...rest }: ModalProps): import("react/jsx-runtime").JSX.Element;
31
+ export declare function Modal({ children, title, footer, open, onOk, onCancel, okText, cancelText, maskClosable, closable, position, align, width, centered, onClose, className, ...rest }: ModalProps): import("react/jsx-runtime").JSX.Element;
26
32
  export declare namespace Modal {
27
33
  var confirm: (config: ModalFuncProps) => {
28
34
  destroy: () => void;
package/dist/index.d.ts CHANGED
@@ -20,9 +20,6 @@ export { Chat } from './components/Chat';
20
20
  export type { ChatProps } from './components/Chat';
21
21
  export { ColorPicker } from './components/ColorPicker';
22
22
  export type { ColorPickerProps } from './components/ColorPicker';
23
- export { Calendar } from './components/Calendar';
24
- export type { MonthCalendarProps, WeekCalendarProps, CalendarEvent, CalendarLocale } from './components/Calendar';
25
- export { en as calendarEn, fr as calendarFr } from './components/Calendar';
26
23
  export { Card } from './components/Card';
27
24
  export type { CardProps, CardGridProps } from './components/Card';
28
25
  export { Cascader } from './components/Cascader';
package/dist/index.js CHANGED
@@ -2,223 +2,218 @@ import { Affix as e } from "./index2.js";
2
2
  import { Anchor as p } from "./index3.js";
3
3
  import { Alert as f } from "./index4.js";
4
4
  import { Autocomplete as a } from "./index5.js";
5
- import { Avatar as s, AvatarGroup as i } from "./index6.js";
6
- import { Badge as u } from "./index7.js";
5
+ import { Avatar as n, AvatarGroup as s } from "./index6.js";
6
+ import { Badge as l } from "./index7.js";
7
7
  import { Breadcrumb as c } from "./index8.js";
8
8
  import { Button as T } from "./index9.js";
9
9
  import { Checkbox as P } from "./index10.js";
10
10
  import { Chat as b } from "./index11.js";
11
11
  import { ColorPicker as h } from "./index12.js";
12
- import { Calendar as w } from "./index13.js";
13
- import { Card as F } from "./index14.js";
14
- import { Cascader as v } from "./index15.js";
15
- import { Chart as A } from "./index16.js";
16
- import { Carousel as L } from "./index17.js";
17
- import { Collapse as H } from "./index18.js";
18
- import { Container as E } from "./index19.js";
19
- import { ContextMenu as N } from "./index20.js";
20
- import { Countdown as W } from "./index21.js";
21
- import { DatePicker as J } from "./index22.js";
22
- import { Descriptions as U } from "./index23.js";
23
- import { Diff as q } from "./index24.js";
24
- import { Dock as X } from "./index25.js";
25
- import { Divider as Z } from "./index26.js";
26
- import { Drawer as $ } from "./index27.js";
27
- import { Fieldset as ro } from "./index28.js";
28
- import { FileInput as to } from "./index29.js";
29
- import { Flex as mo } from "./index30.js";
30
- import { FloatButton as xo } from "./index31.js";
31
- import { Footer as no } from "./index32.js";
32
- import { Form as io, useFormInstance as lo } from "./index33.js";
33
- import { Col as co, Grid as Co, Row as To } from "./index34.js";
34
- import { Hero as Po } from "./index35.js";
35
- import { Image as bo } from "./index36.js";
36
- import { Indicator as ho } from "./index37.js";
37
- import { Dropdown as wo } from "./index38.js";
38
- import { Empty as Fo } from "./index39.js";
39
- import { Input as vo } from "./index40.js";
40
- import { InputNumber as Ao } from "./index41.js";
41
- import { Join as Lo } from "./index42.js";
42
- import { Kbd as Ho } from "./index43.js";
43
- import { Label as Eo } from "./index44.js";
44
- import { Layout as No, useSiderContext as Oo } from "./index45.js";
45
- import { List as zo } from "./index46.js";
46
- import { Loading as Qo } from "./index47.js";
47
- import { Mask as jo } from "./index48.js";
48
- import { Masonry as Vo } from "./index49.js";
49
- import { Mention as Yo } from "./index50.js";
50
- import { Menu as _o } from "./index51.js";
51
- import { Browser as or } from "./index52.js";
52
- import { Code as er } from "./index53.js";
53
- import { Phone as pr } from "./index54.js";
54
- import { Window as fr } from "./index55.js";
55
- import { Modal as ar } from "./index56.js";
56
- import { Navbar as sr } from "./index57.js";
57
- import { notification as lr } from "./index58.js";
58
- import { OTPInput as dr } from "./index59.js";
59
- import { Pagination as Cr } from "./index60.js";
60
- import { PageLayout as gr } from "./index61.js";
61
- import { Popconfirm as Sr } from "./index62.js";
62
- import { Popover as kr } from "./index63.js";
63
- import { Progress as Dr } from "./index64.js";
64
- import { QRCode as yr } from "./index65.js";
65
- import { Radio as Rr } from "./index66.js";
66
- import { RadialProgress as Ir } from "./index67.js";
67
- import { Range as Br } from "./index68.js";
68
- import { Rating as Mr } from "./index69.js";
69
- import { Result as Kr } from "./index70.js";
70
- import { Select as Gr } from "./index71.js";
71
- import { Segmented as Or } from "./index72.js";
72
- import { Skeleton as zr } from "./index73.js";
73
- import { Space as Qr } from "./index74.js";
74
- import { Splitter as jr } from "./index75.js";
75
- import { Stack as Vr } from "./index76.js";
76
- import { Stats as Yr } from "./index77.js";
77
- import { Status as _r } from "./index78.js";
78
- import { Steps as oe } from "./index79.js";
79
- import { Table as ee } from "./index80.js";
80
- import { Tabs as pe } from "./index81.js";
81
- import { Textarea as fe } from "./index82.js";
82
- import { TextRotate as ae } from "./index83.js";
83
- import { CheckableTag as se, Tag as ie } from "./index84.js";
84
- import { ThemeController as ue } from "./index85.js";
85
- import { TimePicker as ce } from "./index86.js";
86
- import { Timeline as Te } from "./index87.js";
87
- import { Toggle as Pe } from "./index88.js";
88
- import { Tour as be } from "./index89.js";
89
- import { Tooltip as he } from "./index90.js";
90
- import { Transfer as we } from "./index91.js";
91
- import { Tree as Fe } from "./index92.js";
92
- import { TreeSelect as ve } from "./index93.js";
93
- import { Typography as Ae } from "./index94.js";
94
- import { Upload as Le } from "./index95.js";
95
- import { Hide as He, Show as Ke } from "./index96.js";
96
- import { useBreakpoint as Ge } from "./index97.js";
97
- import { useDisclosure as Oe } from "./index98.js";
98
- import { useClipboard as ze } from "./index99.js";
99
- import { useLocalStorage as Qe } from "./index100.js";
100
- import { useDebounce as je } from "./index101.js";
101
- import { useClickOutside as Ve } from "./index102.js";
102
- import { usePrevious as Ye } from "./index103.js";
103
- import { useHover as _e } from "./index104.js";
104
- import { useKeyPress as ot, useKeyPressCallback as rt } from "./index105.js";
105
- import { useWindowSize as tt } from "./index106.js";
106
- import { en as mt, fr as ft } from "./index107.js";
12
+ import { Card as w } from "./index13.js";
13
+ import { Cascader as R } from "./index14.js";
14
+ import { Chart as F } from "./index15.js";
15
+ import { Carousel as A } from "./index16.js";
16
+ import { Collapse as L } from "./index17.js";
17
+ import { Container as H } from "./index18.js";
18
+ import { ContextMenu as G } from "./index19.js";
19
+ import { Countdown as O } from "./index20.js";
20
+ import { DatePicker as z } from "./index21.js";
21
+ import { Descriptions as J } from "./index22.js";
22
+ import { Diff as U } from "./index23.js";
23
+ import { Dock as q } from "./index24.js";
24
+ import { Divider as X } from "./index25.js";
25
+ import { Drawer as Z } from "./index26.js";
26
+ import { Fieldset as $ } from "./index27.js";
27
+ import { FileInput as ro } from "./index28.js";
28
+ import { Flex as to } from "./index29.js";
29
+ import { FloatButton as mo } from "./index30.js";
30
+ import { Footer as xo } from "./index31.js";
31
+ import { Form as io, useFormInstance as no } from "./index32.js";
32
+ import { Col as uo, Grid as lo, Row as co } from "./index33.js";
33
+ import { Hero as To } from "./index34.js";
34
+ import { Image as Po } from "./index35.js";
35
+ import { Indicator as bo } from "./index36.js";
36
+ import { Dropdown as ho } from "./index37.js";
37
+ import { Empty as wo } from "./index38.js";
38
+ import { Input as Ro } from "./index39.js";
39
+ import { InputNumber as Fo } from "./index40.js";
40
+ import { Join as Ao } from "./index41.js";
41
+ import { Kbd as Lo } from "./index42.js";
42
+ import { Label as Ho } from "./index43.js";
43
+ import { Layout as Go, useSiderContext as No } from "./index44.js";
44
+ import { List as Wo } from "./index45.js";
45
+ import { Loading as Eo } from "./index46.js";
46
+ import { Mask as Qo } from "./index47.js";
47
+ import { Masonry as jo } from "./index48.js";
48
+ import { Mention as Vo } from "./index49.js";
49
+ import { Menu as Yo } from "./index50.js";
50
+ import { Browser as _o } from "./index51.js";
51
+ import { Code as or } from "./index52.js";
52
+ import { Phone as er } from "./index53.js";
53
+ import { Window as pr } from "./index54.js";
54
+ import { Modal as fr } from "./index55.js";
55
+ import { Navbar as ar } from "./index56.js";
56
+ import { notification as nr } from "./index57.js";
57
+ import { OTPInput as ur } from "./index58.js";
58
+ import { Pagination as dr } from "./index59.js";
59
+ import { PageLayout as Cr } from "./index60.js";
60
+ import { Popconfirm as gr } from "./index61.js";
61
+ import { Popover as Sr } from "./index62.js";
62
+ import { Progress as kr } from "./index63.js";
63
+ import { QRCode as Dr } from "./index64.js";
64
+ import { Radio as yr } from "./index65.js";
65
+ import { RadialProgress as vr } from "./index66.js";
66
+ import { Range as Ir } from "./index67.js";
67
+ import { Rating as Br } from "./index68.js";
68
+ import { Result as Mr } from "./index69.js";
69
+ import { Select as Kr } from "./index70.js";
70
+ import { Segmented as Nr } from "./index71.js";
71
+ import { Skeleton as Wr } from "./index72.js";
72
+ import { Space as Er } from "./index73.js";
73
+ import { Splitter as Qr } from "./index74.js";
74
+ import { Stack as jr } from "./index75.js";
75
+ import { Stats as Vr } from "./index76.js";
76
+ import { Status as Yr } from "./index77.js";
77
+ import { Steps as _r } from "./index78.js";
78
+ import { Table as oe } from "./index79.js";
79
+ import { Tabs as ee } from "./index80.js";
80
+ import { Textarea as pe } from "./index81.js";
81
+ import { TextRotate as fe } from "./index82.js";
82
+ import { CheckableTag as ae, Tag as ie } from "./index83.js";
83
+ import { ThemeController as se } from "./index84.js";
84
+ import { TimePicker as le } from "./index85.js";
85
+ import { Timeline as ce } from "./index86.js";
86
+ import { Toggle as Te } from "./index87.js";
87
+ import { Tour as Pe } from "./index88.js";
88
+ import { Tooltip as be } from "./index89.js";
89
+ import { Transfer as he } from "./index90.js";
90
+ import { Tree as we } from "./index91.js";
91
+ import { TreeSelect as Re } from "./index92.js";
92
+ import { Typography as Fe } from "./index93.js";
93
+ import { Upload as Ae } from "./index94.js";
94
+ import { Hide as Le, Show as Me } from "./index95.js";
95
+ import { useBreakpoint as Ke } from "./index96.js";
96
+ import { useDisclosure as Ne } from "./index97.js";
97
+ import { useClipboard as We } from "./index98.js";
98
+ import { useLocalStorage as Ee } from "./index99.js";
99
+ import { useDebounce as Qe } from "./index100.js";
100
+ import { useClickOutside as je } from "./index101.js";
101
+ import { usePrevious as Ve } from "./index102.js";
102
+ import { useHover as Ye } from "./index103.js";
103
+ import { useKeyPress as _e, useKeyPressCallback as $e } from "./index104.js";
104
+ import { useWindowSize as rt } from "./index105.js";
107
105
  export {
108
106
  e as Affix,
109
107
  f as Alert,
110
108
  p as Anchor,
111
109
  a as Autocomplete,
112
- s as Avatar,
113
- i as AvatarGroup,
114
- u as Badge,
110
+ n as Avatar,
111
+ s as AvatarGroup,
112
+ l as Badge,
115
113
  c as Breadcrumb,
116
- or as Browser,
114
+ _o as Browser,
117
115
  T as Button,
118
- w as Calendar,
119
- F as Card,
120
- L as Carousel,
121
- v as Cascader,
122
- A as Chart,
116
+ w as Card,
117
+ A as Carousel,
118
+ R as Cascader,
119
+ F as Chart,
123
120
  b as Chat,
124
- se as CheckableTag,
121
+ ae as CheckableTag,
125
122
  P as Checkbox,
126
- er as Code,
127
- co as Col,
128
- H as Collapse,
123
+ or as Code,
124
+ uo as Col,
125
+ L as Collapse,
129
126
  h as ColorPicker,
130
- E as Container,
131
- N as ContextMenu,
132
- W as Countdown,
133
- J as DatePicker,
134
- U as Descriptions,
135
- q as Diff,
136
- Z as Divider,
137
- X as Dock,
138
- $ as Drawer,
139
- wo as Dropdown,
140
- Fo as Empty,
141
- ro as Fieldset,
142
- to as FileInput,
143
- mo as Flex,
144
- xo as FloatButton,
145
- no as Footer,
127
+ H as Container,
128
+ G as ContextMenu,
129
+ O as Countdown,
130
+ z as DatePicker,
131
+ J as Descriptions,
132
+ U as Diff,
133
+ X as Divider,
134
+ q as Dock,
135
+ Z as Drawer,
136
+ ho as Dropdown,
137
+ wo as Empty,
138
+ $ as Fieldset,
139
+ ro as FileInput,
140
+ to as Flex,
141
+ mo as FloatButton,
142
+ xo as Footer,
146
143
  io as Form,
147
- Co as Grid,
148
- Po as Hero,
149
- He as Hide,
150
- bo as Image,
151
- ho as Indicator,
152
- vo as Input,
153
- Ao as InputNumber,
154
- Lo as Join,
155
- Ho as Kbd,
156
- Eo as Label,
157
- No as Layout,
158
- zo as List,
159
- Qo as Loading,
160
- jo as Mask,
161
- Vo as Masonry,
162
- Yo as Mention,
163
- _o as Menu,
164
- ar as Modal,
165
- sr as Navbar,
166
- dr as OTPInput,
167
- gr as PageLayout,
168
- Cr as Pagination,
169
- pr as Phone,
170
- Sr as Popconfirm,
171
- kr as Popover,
172
- Dr as Progress,
173
- yr as QRCode,
174
- Ir as RadialProgress,
175
- Rr as Radio,
176
- Br as Range,
177
- Mr as Rating,
178
- Kr as Result,
179
- To as Row,
180
- Or as Segmented,
181
- Gr as Select,
182
- Ke as Show,
183
- zr as Skeleton,
184
- Qr as Space,
185
- jr as Splitter,
186
- Vr as Stack,
187
- Yr as Stats,
188
- _r as Status,
189
- oe as Steps,
190
- ee as Table,
191
- pe as Tabs,
144
+ lo as Grid,
145
+ To as Hero,
146
+ Le as Hide,
147
+ Po as Image,
148
+ bo as Indicator,
149
+ Ro as Input,
150
+ Fo as InputNumber,
151
+ Ao as Join,
152
+ Lo as Kbd,
153
+ Ho as Label,
154
+ Go as Layout,
155
+ Wo as List,
156
+ Eo as Loading,
157
+ Qo as Mask,
158
+ jo as Masonry,
159
+ Vo as Mention,
160
+ Yo as Menu,
161
+ fr as Modal,
162
+ ar as Navbar,
163
+ ur as OTPInput,
164
+ Cr as PageLayout,
165
+ dr as Pagination,
166
+ er as Phone,
167
+ gr as Popconfirm,
168
+ Sr as Popover,
169
+ kr as Progress,
170
+ Dr as QRCode,
171
+ vr as RadialProgress,
172
+ yr as Radio,
173
+ Ir as Range,
174
+ Br as Rating,
175
+ Mr as Result,
176
+ co as Row,
177
+ Nr as Segmented,
178
+ Kr as Select,
179
+ Me as Show,
180
+ Wr as Skeleton,
181
+ Er as Space,
182
+ Qr as Splitter,
183
+ jr as Stack,
184
+ Vr as Stats,
185
+ Yr as Status,
186
+ _r as Steps,
187
+ oe as Table,
188
+ ee as Tabs,
192
189
  ie as Tag,
193
- ae as TextRotate,
194
- fe as Textarea,
195
- ue as ThemeController,
196
- ce as TimePicker,
197
- Te as Timeline,
198
- Pe as Toggle,
199
- he as Tooltip,
200
- be as Tour,
201
- we as Transfer,
202
- Fe as Tree,
203
- ve as TreeSelect,
204
- Ae as Typography,
205
- Le as Upload,
206
- fr as Window,
207
- mt as calendarEn,
208
- ft as calendarFr,
209
- lr as notification,
210
- Ge as useBreakpoint,
211
- Ve as useClickOutside,
212
- ze as useClipboard,
213
- je as useDebounce,
214
- Oe as useDisclosure,
215
- lo as useFormInstance,
216
- _e as useHover,
217
- ot as useKeyPress,
218
- rt as useKeyPressCallback,
219
- Qe as useLocalStorage,
220
- Ye as usePrevious,
221
- Oo as useSiderContext,
222
- tt as useWindowSize
190
+ fe as TextRotate,
191
+ pe as Textarea,
192
+ se as ThemeController,
193
+ le as TimePicker,
194
+ ce as Timeline,
195
+ Te as Toggle,
196
+ be as Tooltip,
197
+ Pe as Tour,
198
+ he as Transfer,
199
+ we as Tree,
200
+ Re as TreeSelect,
201
+ Fe as Typography,
202
+ Ae as Upload,
203
+ pr as Window,
204
+ nr as notification,
205
+ Ke as useBreakpoint,
206
+ je as useClickOutside,
207
+ We as useClipboard,
208
+ Qe as useDebounce,
209
+ Ne as useDisclosure,
210
+ no as useFormInstance,
211
+ Ye as useHover,
212
+ _e as useKeyPress,
213
+ $e as useKeyPressCallback,
214
+ Ee as useLocalStorage,
215
+ Ve as usePrevious,
216
+ No as useSiderContext,
217
+ rt as useWindowSize
223
218
  };
224
219
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/dist/index100.js CHANGED
@@ -1,49 +1,16 @@
1
- import { useState as u, useCallback as c, useEffect as f } from "react";
2
- function S(o, t) {
3
- const [s, n] = u(() => {
4
- if (typeof window > "u")
5
- return t;
6
- try {
7
- const e = window.localStorage.getItem(o);
8
- return e ? JSON.parse(e) : t;
9
- } catch {
10
- return t;
11
- }
12
- }), d = c(
13
- (e) => {
14
- n((r) => {
15
- const a = e instanceof Function ? e(r) : e;
16
- if (typeof window < "u")
17
- try {
18
- window.localStorage.setItem(o, JSON.stringify(a));
19
- } catch (l) {
20
- console.warn(`Failed to save to localStorage key "${o}":`, l);
21
- }
22
- return a;
23
- });
24
- },
25
- [o]
26
- ), w = c(() => {
27
- if (typeof window < "u")
28
- try {
29
- window.localStorage.removeItem(o);
30
- } catch (e) {
31
- console.warn(`Failed to remove localStorage key "${o}":`, e);
32
- }
33
- n(t);
34
- }, [o, t]);
35
- return f(() => {
36
- const e = (r) => {
37
- if (r.key === o && r.newValue !== null)
38
- try {
39
- n(JSON.parse(r.newValue));
40
- } catch {
41
- }
1
+ import { useState as r, useEffect as c } from "react";
2
+ function i(e, t = 300) {
3
+ const [o, u] = r(e);
4
+ return c(() => {
5
+ const n = setTimeout(() => {
6
+ u(e);
7
+ }, t);
8
+ return () => {
9
+ clearTimeout(n);
42
10
  };
43
- return window.addEventListener("storage", e), () => window.removeEventListener("storage", e);
44
- }, [o]), [s, d, w];
11
+ }, [e, t]), o;
45
12
  }
46
13
  export {
47
- S as useLocalStorage
14
+ i as useDebounce
48
15
  };
49
16
  //# sourceMappingURL=index100.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index100.js","sources":["../src/hooks/useLocalStorage.ts"],"sourcesContent":["import { useState, useCallback, useEffect } from 'react'\n\n/**\n * Hook for persisting state to localStorage.\n *\n * @param key - localStorage key\n * @param initialValue - Initial value if key doesn't exist\n * @returns [value, setValue, removeValue] tuple\n *\n * @example\n * const [theme, setTheme] = useLocalStorage('theme', 'light')\n * const [user, setUser, removeUser] = useLocalStorage('user', null)\n */\nexport function useLocalStorage<T>(\n key: string,\n initialValue: T\n): [T, (value: T | ((prev: T) => T)) => void, () => void] {\n // Get initial value from localStorage or use default\n const [storedValue, setStoredValue] = useState<T>(() => {\n if (typeof window === 'undefined') {\n return initialValue\n }\n\n try {\n const item = window.localStorage.getItem(key)\n return item ? (JSON.parse(item) as T) : initialValue\n } catch {\n return initialValue\n }\n })\n\n // Update localStorage when value changes\n const setValue = useCallback(\n (value: T | ((prev: T) => T)) => {\n setStoredValue(prev => {\n const valueToStore = value instanceof Function ? value(prev) : value\n\n if (typeof window !== 'undefined') {\n try {\n window.localStorage.setItem(key, JSON.stringify(valueToStore))\n } catch (error) {\n console.warn(`Failed to save to localStorage key \"${key}\":`, error)\n }\n }\n\n return valueToStore\n })\n },\n [key]\n )\n\n // Remove from localStorage\n const removeValue = useCallback(() => {\n if (typeof window !== 'undefined') {\n try {\n window.localStorage.removeItem(key)\n } catch (error) {\n console.warn(`Failed to remove localStorage key \"${key}\":`, error)\n }\n }\n setStoredValue(initialValue)\n }, [key, initialValue])\n\n // Sync with other tabs/windows\n useEffect(() => {\n const handleStorageChange = (e: StorageEvent) => {\n if (e.key === key && e.newValue !== null) {\n try {\n setStoredValue(JSON.parse(e.newValue) as T)\n } catch {\n // Ignore parse errors\n }\n }\n }\n\n window.addEventListener('storage', handleStorageChange)\n return () => window.removeEventListener('storage', handleStorageChange)\n }, [key])\n\n return [storedValue, setValue, removeValue]\n}\n"],"names":["useLocalStorage","key","initialValue","storedValue","setStoredValue","useState","item","setValue","useCallback","value","prev","valueToStore","error","removeValue","useEffect","handleStorageChange","e"],"mappings":";AAaO,SAASA,EACdC,GACAC,GACwD;AAExD,QAAM,CAACC,GAAaC,CAAc,IAAIC,EAAY,MAAM;AACtD,QAAI,OAAO,SAAW;AACpB,aAAOH;AAGT,QAAI;AACF,YAAMI,IAAO,OAAO,aAAa,QAAQL,CAAG;AAC5C,aAAOK,IAAQ,KAAK,MAAMA,CAAI,IAAUJ;AAAA,IAC1C,QAAQ;AACN,aAAOA;AAAA,IACT;AAAA,EACF,CAAC,GAGKK,IAAWC;AAAA,IACf,CAACC,MAAgC;AAC/B,MAAAL,EAAe,CAAAM,MAAQ;AACrB,cAAMC,IAAeF,aAAiB,WAAWA,EAAMC,CAAI,IAAID;AAE/D,YAAI,OAAO,SAAW;AACpB,cAAI;AACF,mBAAO,aAAa,QAAQR,GAAK,KAAK,UAAUU,CAAY,CAAC;AAAA,UAC/D,SAASC,GAAO;AACd,oBAAQ,KAAK,uCAAuCX,CAAG,MAAMW,CAAK;AAAA,UACpE;AAGF,eAAOD;AAAA,MACT,CAAC;AAAA,IACH;AAAA,IACA,CAACV,CAAG;AAAA,EAAA,GAIAY,IAAcL,EAAY,MAAM;AACpC,QAAI,OAAO,SAAW;AACpB,UAAI;AACF,eAAO,aAAa,WAAWP,CAAG;AAAA,MACpC,SAASW,GAAO;AACd,gBAAQ,KAAK,sCAAsCX,CAAG,MAAMW,CAAK;AAAA,MACnE;AAEF,IAAAR,EAAeF,CAAY;AAAA,EAC7B,GAAG,CAACD,GAAKC,CAAY,CAAC;AAGtB,SAAAY,EAAU,MAAM;AACd,UAAMC,IAAsB,CAACC,MAAoB;AAC/C,UAAIA,EAAE,QAAQf,KAAOe,EAAE,aAAa;AAClC,YAAI;AACF,UAAAZ,EAAe,KAAK,MAAMY,EAAE,QAAQ,CAAM;AAAA,QAC5C,QAAQ;AAAA,QAER;AAAA,IAEJ;AAEA,kBAAO,iBAAiB,WAAWD,CAAmB,GAC/C,MAAM,OAAO,oBAAoB,WAAWA,CAAmB;AAAA,EACxE,GAAG,CAACd,CAAG,CAAC,GAED,CAACE,GAAaI,GAAUM,CAAW;AAC5C;"}
1
+ {"version":3,"file":"index100.js","sources":["../src/hooks/useDebounce.ts"],"sourcesContent":["import { useState, useEffect } from 'react'\n\n/**\n * Hook that delays updating a value until after a specified delay.\n * Useful for search inputs to avoid excessive API calls.\n *\n * @param value - Value to debounce\n * @param delay - Delay in milliseconds (default: 300)\n * @returns Debounced value\n *\n * @example\n * const [search, setSearch] = useState('')\n * const debouncedSearch = useDebounce(search, 500)\n *\n * useEffect(() => {\n * // This runs 500ms after user stops typing\n * fetchResults(debouncedSearch)\n * }, [debouncedSearch])\n */\nexport function useDebounce<T>(value: T, delay = 300): T {\n const [debouncedValue, setDebouncedValue] = useState<T>(value)\n\n useEffect(() => {\n const timer = setTimeout(() => {\n setDebouncedValue(value)\n }, delay)\n\n return () => {\n clearTimeout(timer)\n }\n }, [value, delay])\n\n return debouncedValue\n}\n"],"names":["useDebounce","value","delay","debouncedValue","setDebouncedValue","useState","useEffect","timer"],"mappings":";AAmBO,SAASA,EAAeC,GAAUC,IAAQ,KAAQ;AACvD,QAAM,CAACC,GAAgBC,CAAiB,IAAIC,EAAYJ,CAAK;AAE7D,SAAAK,EAAU,MAAM;AACd,UAAMC,IAAQ,WAAW,MAAM;AAC7B,MAAAH,EAAkBH,CAAK;AAAA,IACzB,GAAGC,CAAK;AAER,WAAO,MAAM;AACX,mBAAaK,CAAK;AAAA,IACpB;AAAA,EACF,GAAG,CAACN,GAAOC,CAAK,CAAC,GAEVC;AACT;"}
package/dist/index101.js CHANGED
@@ -1,16 +1,18 @@
1
- import { useState as r, useEffect as c } from "react";
2
- function i(e, t = 300) {
3
- const [o, u] = r(e);
1
+ import { useRef as s, useEffect as c } from "react";
2
+ function m(t, n = !0) {
3
+ const r = s(null);
4
4
  return c(() => {
5
- const n = setTimeout(() => {
6
- u(e);
7
- }, t);
8
- return () => {
9
- clearTimeout(n);
5
+ if (!n) return;
6
+ const e = (o) => {
7
+ const u = r.current;
8
+ !u || u.contains(o.target) || t(o);
10
9
  };
11
- }, [e, t]), o;
10
+ return document.addEventListener("mousedown", e), document.addEventListener("touchstart", e), () => {
11
+ document.removeEventListener("mousedown", e), document.removeEventListener("touchstart", e);
12
+ };
13
+ }, [t, n]), r;
12
14
  }
13
15
  export {
14
- i as useDebounce
16
+ m as useClickOutside
15
17
  };
16
18
  //# sourceMappingURL=index101.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index101.js","sources":["../src/hooks/useDebounce.ts"],"sourcesContent":["import { useState, useEffect } from 'react'\n\n/**\n * Hook that delays updating a value until after a specified delay.\n * Useful for search inputs to avoid excessive API calls.\n *\n * @param value - Value to debounce\n * @param delay - Delay in milliseconds (default: 300)\n * @returns Debounced value\n *\n * @example\n * const [search, setSearch] = useState('')\n * const debouncedSearch = useDebounce(search, 500)\n *\n * useEffect(() => {\n * // This runs 500ms after user stops typing\n * fetchResults(debouncedSearch)\n * }, [debouncedSearch])\n */\nexport function useDebounce<T>(value: T, delay = 300): T {\n const [debouncedValue, setDebouncedValue] = useState<T>(value)\n\n useEffect(() => {\n const timer = setTimeout(() => {\n setDebouncedValue(value)\n }, delay)\n\n return () => {\n clearTimeout(timer)\n }\n }, [value, delay])\n\n return debouncedValue\n}\n"],"names":["useDebounce","value","delay","debouncedValue","setDebouncedValue","useState","useEffect","timer"],"mappings":";AAmBO,SAASA,EAAeC,GAAUC,IAAQ,KAAQ;AACvD,QAAM,CAACC,GAAgBC,CAAiB,IAAIC,EAAYJ,CAAK;AAE7D,SAAAK,EAAU,MAAM;AACd,UAAMC,IAAQ,WAAW,MAAM;AAC7B,MAAAH,EAAkBH,CAAK;AAAA,IACzB,GAAGC,CAAK;AAER,WAAO,MAAM;AACX,mBAAaK,CAAK;AAAA,IACpB;AAAA,EACF,GAAG,CAACN,GAAOC,CAAK,CAAC,GAEVC;AACT;"}
1
+ {"version":3,"file":"index101.js","sources":["../src/hooks/useClickOutside.ts"],"sourcesContent":["import { useEffect, useRef, type RefObject } from 'react'\n\n/**\n * Hook that detects clicks outside of a referenced element.\n * Useful for closing dropdowns, modals, or menus.\n *\n * @param handler - Callback when click outside is detected\n * @param enabled - Whether the listener is active (default: true)\n * @returns Ref to attach to the element\n *\n * @example\n * const ref = useClickOutside(() => setIsOpen(false))\n *\n * <div ref={ref}>\n * <Dropdown>...</Dropdown>\n * </div>\n */\nexport function useClickOutside<T extends HTMLElement = HTMLElement>(\n handler: (event: MouseEvent | TouchEvent) => void,\n enabled = true\n): RefObject<T | null> {\n const ref = useRef<T>(null)\n\n useEffect(() => {\n if (!enabled) return\n\n const listener = (event: MouseEvent | TouchEvent) => {\n const el = ref.current\n if (!el || el.contains(event.target as Node)) {\n return\n }\n handler(event)\n }\n\n document.addEventListener('mousedown', listener)\n document.addEventListener('touchstart', listener)\n\n return () => {\n document.removeEventListener('mousedown', listener)\n document.removeEventListener('touchstart', listener)\n }\n }, [handler, enabled])\n\n return ref\n}\n"],"names":["useClickOutside","handler","enabled","ref","useRef","useEffect","listener","event","el"],"mappings":";AAiBO,SAASA,EACdC,GACAC,IAAU,IACW;AACrB,QAAMC,IAAMC,EAAU,IAAI;AAE1B,SAAAC,EAAU,MAAM;AACd,QAAI,CAACH,EAAS;AAEd,UAAMI,IAAW,CAACC,MAAmC;AACnD,YAAMC,IAAKL,EAAI;AACf,MAAI,CAACK,KAAMA,EAAG,SAASD,EAAM,MAAc,KAG3CN,EAAQM,CAAK;AAAA,IACf;AAEA,oBAAS,iBAAiB,aAAaD,CAAQ,GAC/C,SAAS,iBAAiB,cAAcA,CAAQ,GAEzC,MAAM;AACX,eAAS,oBAAoB,aAAaA,CAAQ,GAClD,SAAS,oBAAoB,cAAcA,CAAQ;AAAA,IACrD;AAAA,EACF,GAAG,CAACL,GAASC,CAAO,CAAC,GAEdC;AACT;"}
package/dist/index102.js CHANGED
@@ -1,18 +1,11 @@
1
- import { useRef as s, useEffect as c } from "react";
2
- function m(t, n = !0) {
3
- const r = s(null);
4
- return c(() => {
5
- if (!n) return;
6
- const e = (o) => {
7
- const u = r.current;
8
- !u || u.contains(o.target) || t(o);
9
- };
10
- return document.addEventListener("mousedown", e), document.addEventListener("touchstart", e), () => {
11
- document.removeEventListener("mousedown", e), document.removeEventListener("touchstart", e);
12
- };
13
- }, [t, n]), r;
1
+ import { useRef as t, useEffect as o } from "react";
2
+ function f(r) {
3
+ const e = t(void 0);
4
+ return o(() => {
5
+ e.current = r;
6
+ }, [r]), e.current;
14
7
  }
15
8
  export {
16
- m as useClickOutside
9
+ f as usePrevious
17
10
  };
18
11
  //# sourceMappingURL=index102.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index102.js","sources":["../src/hooks/useClickOutside.ts"],"sourcesContent":["import { useEffect, useRef, type RefObject } from 'react'\n\n/**\n * Hook that detects clicks outside of a referenced element.\n * Useful for closing dropdowns, modals, or menus.\n *\n * @param handler - Callback when click outside is detected\n * @param enabled - Whether the listener is active (default: true)\n * @returns Ref to attach to the element\n *\n * @example\n * const ref = useClickOutside(() => setIsOpen(false))\n *\n * <div ref={ref}>\n * <Dropdown>...</Dropdown>\n * </div>\n */\nexport function useClickOutside<T extends HTMLElement = HTMLElement>(\n handler: (event: MouseEvent | TouchEvent) => void,\n enabled = true\n): RefObject<T | null> {\n const ref = useRef<T>(null)\n\n useEffect(() => {\n if (!enabled) return\n\n const listener = (event: MouseEvent | TouchEvent) => {\n const el = ref.current\n if (!el || el.contains(event.target as Node)) {\n return\n }\n handler(event)\n }\n\n document.addEventListener('mousedown', listener)\n document.addEventListener('touchstart', listener)\n\n return () => {\n document.removeEventListener('mousedown', listener)\n document.removeEventListener('touchstart', listener)\n }\n }, [handler, enabled])\n\n return ref\n}\n"],"names":["useClickOutside","handler","enabled","ref","useRef","useEffect","listener","event","el"],"mappings":";AAiBO,SAASA,EACdC,GACAC,IAAU,IACW;AACrB,QAAMC,IAAMC,EAAU,IAAI;AAE1B,SAAAC,EAAU,MAAM;AACd,QAAI,CAACH,EAAS;AAEd,UAAMI,IAAW,CAACC,MAAmC;AACnD,YAAMC,IAAKL,EAAI;AACf,MAAI,CAACK,KAAMA,EAAG,SAASD,EAAM,MAAc,KAG3CN,EAAQM,CAAK;AAAA,IACf;AAEA,oBAAS,iBAAiB,aAAaD,CAAQ,GAC/C,SAAS,iBAAiB,cAAcA,CAAQ,GAEzC,MAAM;AACX,eAAS,oBAAoB,aAAaA,CAAQ,GAClD,SAAS,oBAAoB,cAAcA,CAAQ;AAAA,IACrD;AAAA,EACF,GAAG,CAACL,GAASC,CAAO,CAAC,GAEdC;AACT;"}
1
+ {"version":3,"file":"index102.js","sources":["../src/hooks/usePrevious.ts"],"sourcesContent":["import { useRef, useEffect } from 'react'\n\n/**\n * Hook that returns the previous value of a variable.\n * Useful for comparing current and previous values in effects.\n *\n * @param value - Current value\n * @returns Previous value (undefined on first render)\n *\n * @example\n * const [count, setCount] = useState(0)\n * const prevCount = usePrevious(count)\n *\n * // prevCount is the value from previous render\n * console.log(`Changed from ${prevCount} to ${count}`)\n */\nexport function usePrevious<T>(value: T): T | undefined {\n const ref = useRef<T | undefined>(undefined)\n\n useEffect(() => {\n ref.current = value\n }, [value])\n\n return ref.current\n}\n"],"names":["usePrevious","value","ref","useRef","useEffect"],"mappings":";AAgBO,SAASA,EAAeC,GAAyB;AACtD,QAAMC,IAAMC,EAAsB,MAAS;AAE3C,SAAAC,EAAU,MAAM;AACd,IAAAF,EAAI,UAAUD;AAAA,EAChB,GAAG,CAACA,CAAK,CAAC,GAEHC,EAAI;AACb;"}