@fangxinyan/lumina 0.6.18 → 0.8.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 (466) hide show
  1. package/dist/{Alert-HVPI6L4V.css → Alert-DJ3K7N7L.css} +9 -9
  2. package/dist/Alert.cjs +5 -3
  3. package/dist/Alert.d.cts +2 -2
  4. package/dist/Alert.d.ts +2 -2
  5. package/dist/Alert.js +4 -2
  6. package/dist/{AppShell-FZCD4C56.css → AppShell-OWJRJ4ZD.css} +57 -22
  7. package/dist/AppShell.cjs +8 -5
  8. package/dist/AppShell.d.cts +19 -16
  9. package/dist/AppShell.d.ts +19 -16
  10. package/dist/AppShell.js +4 -1
  11. package/dist/{AutoComplete-4YZBMW4E.css → AutoComplete-PNCYHU2T.css} +8 -8
  12. package/dist/AutoComplete.cjs +9 -6
  13. package/dist/AutoComplete.d.cts +2 -1
  14. package/dist/AutoComplete.d.ts +2 -1
  15. package/dist/AutoComplete.js +8 -5
  16. package/dist/Avatar-YBU2YZTW.css +48 -0
  17. package/dist/Avatar.cjs +4 -2
  18. package/dist/Avatar.d.cts +6 -2
  19. package/dist/Avatar.d.ts +6 -2
  20. package/dist/Avatar.js +3 -1
  21. package/dist/Badge-DBWJEV4C.css +22 -0
  22. package/dist/Badge.cjs +4 -2
  23. package/dist/Badge.d.cts +6 -2
  24. package/dist/Badge.d.ts +6 -2
  25. package/dist/Badge.js +3 -1
  26. package/dist/{Button-TUMZUQLI.css → Button-ILNZUX2N.css} +28 -21
  27. package/dist/Button.cjs +6 -4
  28. package/dist/Button.d.cts +2 -14
  29. package/dist/Button.d.ts +2 -14
  30. package/dist/Button.js +4 -2
  31. package/dist/{Calendar-I6NHCXIB.css → Calendar-QJ5HWEJQ.css} +26 -26
  32. package/dist/Calendar.cjs +5 -3
  33. package/dist/Calendar.d.cts +8 -4
  34. package/dist/Calendar.d.ts +8 -4
  35. package/dist/Calendar.js +4 -2
  36. package/dist/Card-VPMTWAWZ.css +98 -0
  37. package/dist/Card.cjs +7 -3
  38. package/dist/Card.d.cts +8 -4
  39. package/dist/Card.d.ts +8 -4
  40. package/dist/Card.js +6 -2
  41. package/dist/Cascader-YBVDK6DC.css +168 -0
  42. package/dist/Cascader.cjs +9 -6
  43. package/dist/Cascader.d.cts +21 -3
  44. package/dist/Cascader.d.ts +21 -3
  45. package/dist/Cascader.js +8 -5
  46. package/dist/Checkbox-IHFML4FV.css +50 -0
  47. package/dist/Checkbox.cjs +5 -3
  48. package/dist/Checkbox.d.cts +10 -2
  49. package/dist/Checkbox.d.ts +10 -2
  50. package/dist/Checkbox.js +4 -2
  51. package/dist/{Collapse-UNBHEPYP.css → Collapse-BTSBHBSY.css} +12 -7
  52. package/dist/Collapse.cjs +5 -3
  53. package/dist/Collapse.d.cts +2 -2
  54. package/dist/Collapse.d.ts +2 -2
  55. package/dist/Collapse.js +4 -2
  56. package/dist/{ColorPicker-LPG6QPYF.css → ColorPicker-GRZOKR5O.css} +17 -32
  57. package/dist/ColorPicker.cjs +9 -3
  58. package/dist/ColorPicker.d.cts +7 -11
  59. package/dist/ColorPicker.d.ts +7 -11
  60. package/dist/ColorPicker.js +8 -2
  61. package/dist/{CommandPalette-RTKWNH2D.css → CommandPalette-GHTX7AAA.css} +22 -23
  62. package/dist/CommandPalette.cjs +8 -5
  63. package/dist/CommandPalette.d.cts +5 -28
  64. package/dist/CommandPalette.d.ts +5 -28
  65. package/dist/CommandPalette.js +7 -4
  66. package/dist/{ContextMenu-WRR2SSWL.css → ContextMenu-NG524Y2P.css} +17 -17
  67. package/dist/ContextMenu.cjs +5 -2
  68. package/dist/ContextMenu.d.cts +2 -19
  69. package/dist/ContextMenu.d.ts +2 -19
  70. package/dist/ContextMenu.js +4 -1
  71. package/dist/{DatePicker-VDVSIARF.css → DatePicker-ZSFDXAYD.css} +4 -4
  72. package/dist/DatePicker.cjs +11 -8
  73. package/dist/DatePicker.d.cts +4 -7
  74. package/dist/DatePicker.d.ts +4 -7
  75. package/dist/DatePicker.js +10 -7
  76. package/dist/{DateTimePicker-DRX7XA74.css → DateTimePicker-EWSISVIF.css} +17 -17
  77. package/dist/DateTimePicker.cjs +11 -8
  78. package/dist/DateTimePicker.d.cts +4 -8
  79. package/dist/DateTimePicker.d.ts +4 -8
  80. package/dist/DateTimePicker.js +10 -7
  81. package/dist/{Divider-RPQCVH3J.css → Divider-OI2BXPBU.css} +10 -10
  82. package/dist/Divider.cjs +4 -2
  83. package/dist/Divider.d.cts +2 -2
  84. package/dist/Divider.d.ts +2 -2
  85. package/dist/Divider.js +3 -1
  86. package/dist/{Drawer-7KICRM4L.css → Drawer-VCXAXWV6.css} +30 -17
  87. package/dist/Drawer.cjs +6 -3
  88. package/dist/Drawer.d.cts +25 -3
  89. package/dist/Drawer.d.ts +25 -3
  90. package/dist/Drawer.js +5 -2
  91. package/dist/{Empty-CZTRZMZQ.css → Empty-U5CBLCAL.css} +5 -5
  92. package/dist/Empty.cjs +4 -2
  93. package/dist/Empty.d.cts +2 -2
  94. package/dist/Empty.d.ts +2 -2
  95. package/dist/Empty.js +3 -1
  96. package/dist/{Form-NGCQWTMZ.css → Form-DNEDZRJA.css} +7 -7
  97. package/dist/Form.cjs +7 -4
  98. package/dist/Form.d.cts +4 -3
  99. package/dist/Form.d.ts +4 -3
  100. package/dist/Form.js +4 -1
  101. package/dist/Icon-HJSUVW4O.css +12 -0
  102. package/dist/Icon.cjs +51 -49
  103. package/dist/Icon.d.cts +8 -8
  104. package/dist/Icon.d.ts +8 -8
  105. package/dist/Icon.js +3 -1
  106. package/dist/{Image-NISJRUWX.css → Image-CZJPPURT.css} +25 -23
  107. package/dist/Image.cjs +10 -7
  108. package/dist/Image.d.cts +5 -24
  109. package/dist/Image.d.ts +5 -24
  110. package/dist/Image.js +6 -3
  111. package/dist/{Input-7GDPGP3E.css → Input-ZUASNDXM.css} +15 -15
  112. package/dist/Input.cjs +7 -5
  113. package/dist/Input.d.cts +2 -1
  114. package/dist/Input.d.ts +2 -1
  115. package/dist/Input.js +5 -3
  116. package/dist/{InputNumber-VXQIWLQC.css → InputNumber-6NHBMRT4.css} +7 -7
  117. package/dist/InputNumber.cjs +7 -5
  118. package/dist/InputNumber.d.cts +2 -1
  119. package/dist/InputNumber.d.ts +2 -1
  120. package/dist/InputNumber.js +6 -4
  121. package/dist/List-6BQIFAIT.css +42 -0
  122. package/dist/List.cjs +4 -2
  123. package/dist/List.d.cts +2 -2
  124. package/dist/List.d.ts +2 -2
  125. package/dist/List.js +3 -1
  126. package/dist/{Message-H222YGR6.css → Message-OTZWQTQ5.css} +13 -13
  127. package/dist/Message.cjs +9 -6
  128. package/dist/Message.d.cts +18 -2
  129. package/dist/Message.d.ts +18 -2
  130. package/dist/Message.js +5 -2
  131. package/dist/{Modal-ZFWNFEA5.css → Modal-UI2FXNDR.css} +29 -18
  132. package/dist/Modal.cjs +7 -4
  133. package/dist/Modal.d.cts +13 -2
  134. package/dist/Modal.d.ts +13 -2
  135. package/dist/Modal.js +6 -3
  136. package/dist/Pagination-POJTWMYR.css +70 -0
  137. package/dist/Pagination.cjs +11 -8
  138. package/dist/Pagination.d.cts +2 -2
  139. package/dist/Pagination.d.ts +2 -2
  140. package/dist/Pagination.js +10 -7
  141. package/dist/{Popover-Y3LDCJPW.css → Popover-LCXLR3EU.css} +13 -14
  142. package/dist/Popover.cjs +6 -3
  143. package/dist/Popover.d.cts +3 -10
  144. package/dist/Popover.d.ts +3 -10
  145. package/dist/Popover.js +5 -2
  146. package/dist/Progress-33WE2NI7.css +90 -0
  147. package/dist/Progress.cjs +4 -2
  148. package/dist/Progress.d.cts +4 -2
  149. package/dist/Progress.d.ts +4 -2
  150. package/dist/Progress.js +3 -1
  151. package/dist/{Radio-IQKASYDF.css → Radio-RL7232MZ.css} +21 -13
  152. package/dist/Radio.cjs +5 -3
  153. package/dist/Radio.d.cts +18 -5
  154. package/dist/Radio.d.ts +18 -5
  155. package/dist/Radio.js +3 -1
  156. package/dist/{Select-YZ2NUJSX.css → Select-TU37MAHZ.css} +64 -40
  157. package/dist/Select.cjs +10 -7
  158. package/dist/Select.d.cts +28 -3
  159. package/dist/Select.d.ts +28 -3
  160. package/dist/Select.js +9 -6
  161. package/dist/{Skeleton-CVWH2VWN.css → Skeleton-FMFE3BRI.css} +9 -4
  162. package/dist/Skeleton.cjs +4 -2
  163. package/dist/Skeleton.d.cts +2 -4
  164. package/dist/Skeleton.d.ts +2 -4
  165. package/dist/Skeleton.js +3 -1
  166. package/dist/Slider-FZ5MI4X2.css +145 -0
  167. package/dist/Slider.cjs +4 -2
  168. package/dist/Slider.d.cts +6 -5
  169. package/dist/Slider.d.ts +6 -5
  170. package/dist/Slider.js +3 -1
  171. package/dist/{Spin-GONGPV4Q.css → Spin-F5YIEENO.css} +15 -9
  172. package/dist/Spin.cjs +4 -2
  173. package/dist/Spin.d.cts +2 -2
  174. package/dist/Spin.d.ts +2 -2
  175. package/dist/Spin.js +3 -1
  176. package/dist/{Splitter-DHNOY4NC.css → Splitter-IQ3PFIKK.css} +4 -4
  177. package/dist/Splitter.cjs +4 -2
  178. package/dist/Splitter.d.cts +18 -12
  179. package/dist/Splitter.d.ts +18 -12
  180. package/dist/Splitter.js +3 -1
  181. package/dist/{StatusBar-FJKEEPXU.css → StatusBar-TCGR3LXP.css} +23 -9
  182. package/dist/StatusBar.cjs +5 -3
  183. package/dist/StatusBar.d.cts +5 -17
  184. package/dist/StatusBar.d.ts +5 -17
  185. package/dist/StatusBar.js +3 -1
  186. package/dist/{Surface-UDDN3DGL.css → Surface-CTN775GD.css} +10 -10
  187. package/dist/Surface.cjs +6 -5
  188. package/dist/Surface.d.cts +10 -1
  189. package/dist/Surface.d.ts +10 -1
  190. package/dist/Surface.js +4 -3
  191. package/dist/{Switch-COAQIOMH.css → Switch-TATU3LPB.css} +16 -8
  192. package/dist/Switch.cjs +4 -2
  193. package/dist/Switch.d.cts +10 -4
  194. package/dist/Switch.d.ts +10 -4
  195. package/dist/Switch.js +3 -1
  196. package/dist/{Table-IWHIIGRJ.css → Table-KB6EEBDJ.css} +105 -53
  197. package/dist/Table.cjs +14 -10
  198. package/dist/Table.d.cts +38 -3
  199. package/dist/Table.d.ts +38 -3
  200. package/dist/Table.js +13 -9
  201. package/dist/{TablePro-3NGWERWT.css → TablePro-WYE6TXWJ.css} +5 -5
  202. package/dist/TablePro.cjs +15 -11
  203. package/dist/TablePro.d.cts +1 -0
  204. package/dist/TablePro.d.ts +1 -0
  205. package/dist/TablePro.js +14 -10
  206. package/dist/{Tabs-X5U5PCPV.css → Tabs-FB2AMBWL.css} +24 -10
  207. package/dist/Tabs.cjs +4 -2
  208. package/dist/Tabs.d.cts +8 -2
  209. package/dist/Tabs.d.ts +8 -2
  210. package/dist/Tabs.js +3 -1
  211. package/dist/Tag-5GIZLRAH.css +42 -0
  212. package/dist/Tag.cjs +5 -3
  213. package/dist/Tag.d.cts +2 -2
  214. package/dist/Tag.d.ts +2 -2
  215. package/dist/Tag.js +4 -2
  216. package/dist/{Textarea-YHWKHIFE.css → Textarea-ZGHBZNLX.css} +10 -10
  217. package/dist/Textarea.cjs +6 -4
  218. package/dist/Textarea.d.cts +2 -4
  219. package/dist/Textarea.d.ts +2 -4
  220. package/dist/Textarea.js +4 -2
  221. package/dist/Theme-CLedeJ_C.d.ts +193 -0
  222. package/dist/Theme-uQq2B0Yk.d.cts +193 -0
  223. package/dist/Theme.cjs +57 -11
  224. package/dist/Theme.d.cts +26 -145
  225. package/dist/Theme.d.ts +26 -145
  226. package/dist/Theme.js +3 -1
  227. package/dist/{ThemePanel-TEHB2JCQ.css → ThemePanel-EHNAS4RN.css} +52 -52
  228. package/dist/ThemePanel.cjs +17 -15
  229. package/dist/ThemePanel.d.cts +3 -13
  230. package/dist/ThemePanel.d.ts +3 -13
  231. package/dist/ThemePanel.js +14 -12
  232. package/dist/{TimePicker-ZBJOXH3U.css → TimePicker-WJ3FSK6A.css} +17 -17
  233. package/dist/TimePicker.cjs +10 -7
  234. package/dist/TimePicker.d.cts +2 -8
  235. package/dist/TimePicker.d.ts +2 -8
  236. package/dist/TimePicker.js +9 -6
  237. package/dist/{Timeline-CRFZ3I2W.css → Timeline-FUFO2UGY.css} +28 -13
  238. package/dist/Timeline.cjs +5 -3
  239. package/dist/Timeline.d.cts +2 -7
  240. package/dist/Timeline.d.ts +2 -7
  241. package/dist/Timeline.js +4 -2
  242. package/dist/{Tooltip-5FSPJWLX.css → Tooltip-2EUNTOTW.css} +3 -3
  243. package/dist/Tooltip.cjs +6 -3
  244. package/dist/Tooltip.d.cts +2 -2
  245. package/dist/Tooltip.d.ts +2 -2
  246. package/dist/Tooltip.js +5 -2
  247. package/dist/{Typography-32QQLD4F.css → Typography-CQ2OZXQH.css} +105 -42
  248. package/dist/Typography.cjs +11 -8
  249. package/dist/Typography.d.cts +12 -36
  250. package/dist/Typography.d.ts +12 -36
  251. package/dist/Typography.js +6 -3
  252. package/dist/chunk-2A4GYSN4.js +294 -0
  253. package/dist/{chunk-QMX67CVT.cjs → chunk-2AUXUZ3Z.cjs} +56 -31
  254. package/dist/chunk-2BIOTRQC.js +40 -0
  255. package/dist/{chunk-A6O25EP2.js → chunk-2HIN5NFM.js} +14 -6
  256. package/dist/{chunk-I7TOBKJO.js → chunk-3DKFS44V.js} +84 -23
  257. package/dist/{chunk-X5MYHDEQ.cjs → chunk-3EMWDDWK.cjs} +372 -117
  258. package/dist/chunk-3F424R5P.js +143 -0
  259. package/dist/chunk-3IZZBM56.js +269 -0
  260. package/dist/{chunk-DUFRASGO.js → chunk-3QXP2ZNP.js} +18 -23
  261. package/dist/{chunk-5QEI7GGA.cjs → chunk-434Y2JVW.cjs} +60 -27
  262. package/dist/{chunk-SOCYOUGM.js → chunk-4SKHRPDH.js} +168 -64
  263. package/dist/{chunk-R3DTXVP2.js → chunk-5AXNUX3J.js} +8 -5
  264. package/dist/chunk-5CZA33BK.cjs +229 -0
  265. package/dist/{chunk-6K5YI4ZE.js → chunk-62VV5COT.js} +16 -6
  266. package/dist/{chunk-2FOC3D6X.js → chunk-63RSKQID.js} +23 -7
  267. package/dist/chunk-6DKPJ5LV.cjs +294 -0
  268. package/dist/{chunk-OTSDPQPV.js → chunk-6RQJXSWN.js} +50 -30
  269. package/dist/{chunk-V5KUC5VH.cjs → chunk-77HU7JWK.cjs} +40 -13
  270. package/dist/chunk-7QAVPVMW.js +180 -0
  271. package/dist/chunk-7VLAHOA7.cjs +191 -0
  272. package/dist/chunk-ALAG4ZUH.js +72 -0
  273. package/dist/chunk-ARUN2DMD.js +39 -0
  274. package/dist/chunk-AUO2YYHB.js +248 -0
  275. package/dist/{chunk-6MEOLYNQ.js → chunk-AURYNA6G.js} +6 -5
  276. package/dist/chunk-BIPOXOHP.cjs +287 -0
  277. package/dist/{chunk-BVQOJKRX.js → chunk-BKW5PXEO.js} +115 -72
  278. package/dist/chunk-DRDDQCDD.js +322 -0
  279. package/dist/chunk-DU2DSERH.js +190 -0
  280. package/dist/chunk-DURKCGEM.js +496 -0
  281. package/dist/{chunk-PSQ3HNZP.cjs → chunk-E66PSVBU.cjs} +106 -19
  282. package/dist/chunk-EAUB6FEN.js +262 -0
  283. package/dist/chunk-EE5KXDRK.cjs +1223 -0
  284. package/dist/chunk-EE7IJ3MB.js +1 -0
  285. package/dist/chunk-EUTK2ZRJ.cjs +61 -0
  286. package/dist/{chunk-HSAJUEO7.cjs → chunk-F7WUCOBP.cjs} +150 -86
  287. package/dist/{chunk-YB3IWIOJ.cjs → chunk-FJB3243S.cjs} +18 -23
  288. package/dist/chunk-FKCPSVC4.cjs +188 -0
  289. package/dist/chunk-FMUHLIHB.cjs +94 -0
  290. package/dist/chunk-FY73C7JK.js +520 -0
  291. package/dist/{chunk-6EOSMK34.cjs → chunk-G5LCOBOT.cjs} +20 -1
  292. package/dist/{chunk-5ERD3W24.cjs → chunk-GFKWSDD6.cjs} +18 -8
  293. package/dist/{chunk-T2O4DTDE.cjs → chunk-GTFP7HA3.cjs} +58 -32
  294. package/dist/chunk-HQFKXTX6.js +60 -0
  295. package/dist/{chunk-V5SQOZPF.js → chunk-HQNDVNTQ.js} +38 -20
  296. package/dist/chunk-HSDMJUB6.cjs +319 -0
  297. package/dist/chunk-HVPUGYBY.js +166 -0
  298. package/dist/chunk-HYHBCHFM.cjs +167 -0
  299. package/dist/chunk-HYJSMFZA.cjs +2 -0
  300. package/dist/chunk-I4YPBAQ5.js +163 -0
  301. package/dist/chunk-IJDM2U3B.js +100 -0
  302. package/dist/chunk-J5UEQ3ZQ.js +226 -0
  303. package/dist/chunk-JBS353O4.cjs +248 -0
  304. package/dist/{chunk-IPSNC5VZ.js → chunk-JHM7MN3G.js} +15 -7
  305. package/dist/{chunk-6Q76VLCE.cjs → chunk-JKUXA3U6.cjs} +50 -30
  306. package/dist/{chunk-D7GK6H6V.js → chunk-K5HGHOG7.js} +50 -21
  307. package/dist/chunk-KATJAJUU.js +78 -0
  308. package/dist/chunk-KCDOC3HS.cjs +100 -0
  309. package/dist/{chunk-M4NJTJKV.cjs → chunk-LDX6Q6RK.cjs} +8 -5
  310. package/dist/chunk-LEDESWNL.js +83 -0
  311. package/dist/chunk-LG62MPMU.cjs +213 -0
  312. package/dist/{chunk-7NTTRKNT.js → chunk-LJVQQEME.js} +54 -28
  313. package/dist/{chunk-FDZG27IG.js → chunk-LQMOYVQF.js} +57 -32
  314. package/dist/{chunk-P2OQTJZP.cjs → chunk-MCDW3VKZ.cjs} +17 -6
  315. package/dist/{chunk-BT2RXFT4.cjs → chunk-MUZQWIMR.cjs} +121 -78
  316. package/dist/chunk-NRJXZPZR.cjs +351 -0
  317. package/dist/chunk-O6G3F5L4.js +311 -0
  318. package/dist/{chunk-3VSHGM54.js → chunk-OLYSSZHP.js} +126 -68
  319. package/dist/{chunk-A4Z7PLHV.cjs → chunk-PIJV2FHO.cjs} +135 -77
  320. package/dist/{chunk-L6GIV5DQ.cjs → chunk-PJFYIXBX.cjs} +40 -22
  321. package/dist/{chunk-NXBFEIUX.cjs → chunk-PNKNZREC.cjs} +266 -130
  322. package/dist/{chunk-FYSXJXNW.js → chunk-PQOBBASY.js} +10 -9
  323. package/dist/chunk-Q565GDVK.cjs +205 -0
  324. package/dist/{chunk-FDUQPAQE.cjs → chunk-Q5HLC56A.cjs} +122 -28
  325. package/dist/chunk-QDCPVI3S.cjs +333 -0
  326. package/dist/{chunk-ZR4IMROK.js → chunk-QDMFXRPI.js} +122 -28
  327. package/dist/chunk-QDY56GGO.js +234 -0
  328. package/dist/{chunk-4KDABJSY.cjs → chunk-QNQSNVCU.cjs} +86 -25
  329. package/dist/chunk-QYPA77OI.cjs +55 -0
  330. package/dist/{chunk-BW76ENTW.cjs → chunk-RERMZNF3.cjs} +10 -9
  331. package/dist/chunk-RMGFRAZ2.cjs +270 -0
  332. package/dist/chunk-RPO7657K.js +228 -0
  333. package/dist/chunk-RR7KWH26.cjs +122 -0
  334. package/dist/chunk-SF7BPXDJ.cjs +518 -0
  335. package/dist/chunk-STQDKMS5.cjs +288 -0
  336. package/dist/{chunk-HG6YS4I7.js → chunk-SXLRWYQQ.js} +71 -24
  337. package/dist/{chunk-SW2HMNCA.cjs → chunk-T4RR6NVU.cjs} +17 -9
  338. package/dist/{chunk-6SPMHY54.js → chunk-TSL3F2K3.js} +20 -2
  339. package/dist/{chunk-BNY2NVTL.cjs → chunk-TYZ6L7E6.cjs} +48 -28
  340. package/dist/{chunk-MOZ52KN6.js → chunk-U3SG2YT2.js} +39 -12
  341. package/dist/{chunk-POU3W5J3.cjs → chunk-U5YYOOLC.cjs} +13 -6
  342. package/dist/chunk-UE4HFGJ6.js +264 -0
  343. package/dist/chunk-ULTDRMGN.js +1175 -0
  344. package/dist/{chunk-6HF6UF73.js → chunk-UQI4R32R.js} +368 -113
  345. package/dist/{chunk-MWEHU7YO.cjs → chunk-VA3JWOAB.cjs} +172 -68
  346. package/dist/chunk-VQEMMJHC.js +33 -0
  347. package/dist/{chunk-S2ZGXBUH.cjs → chunk-VVRXNGYL.cjs} +218 -42
  348. package/dist/{chunk-JMFHL7GN.cjs → chunk-VX6MZO4K.cjs} +100 -22
  349. package/dist/{chunk-4ACCOYBY.cjs → chunk-WHBKQZU5.cjs} +24 -8
  350. package/dist/{chunk-UGAN4BBW.js → chunk-WMISXERU.js} +262 -126
  351. package/dist/{chunk-MYW7LNB2.cjs → chunk-WROF2PVG.cjs} +40 -21
  352. package/dist/{chunk-5VOUUQF5.js → chunk-Y22PTPA7.js} +145 -81
  353. package/dist/chunk-Y2MT6PI6.js +207 -0
  354. package/dist/chunk-YAYSXZZZ.cjs +82 -0
  355. package/dist/{chunk-6LN4VVX7.js → chunk-YBGMTQ2V.js} +48 -28
  356. package/dist/{chunk-TYLDISRK.js → chunk-YKHIIC7M.js} +13 -6
  357. package/dist/{chunk-3VXGZ3SJ.js → chunk-YPMQC5HX.js} +57 -24
  358. package/dist/{chunk-UWL6DRZW.cjs → chunk-YUJ7Z6N2.cjs} +74 -27
  359. package/dist/{chunk-LEMMFFEY.cjs → chunk-ZEYK37VW.cjs} +15 -7
  360. package/dist/{chunk-ES7AWMNH.cjs → chunk-ZHVR4YPB.cjs} +6 -5
  361. package/dist/{chunk-MPOO5VPW.cjs → chunk-ZYIE3BH7.cjs} +50 -21
  362. package/dist/componentThemeTypes-Jt4B5aU8.d.cts +77 -0
  363. package/dist/componentThemeTypes-Jt4B5aU8.d.ts +77 -0
  364. package/dist/index.cjs +253 -206
  365. package/dist/index.d.cts +11 -9
  366. package/dist/index.d.ts +11 -9
  367. package/dist/index.js +56 -53
  368. package/dist/styles.css +1663 -695
  369. package/dist/{tokens-RYJ3DFTU.css → tokens-CEJVVA3G.css} +10 -0
  370. package/dist/tokens.css +10 -0
  371. package/docs/llms/appshell.md +9 -6
  372. package/docs/llms/autocomplete.md +8 -2
  373. package/docs/llms/avatar.md +2 -0
  374. package/docs/llms/badge.md +2 -0
  375. package/docs/llms/calendar.md +7 -2
  376. package/docs/llms/card.md +20 -1
  377. package/docs/llms/cascader.md +27 -5
  378. package/docs/llms/checkbox.md +13 -0
  379. package/docs/llms/collapse.md +13 -5
  380. package/docs/llms/colorpicker.md +4 -3
  381. package/docs/llms/commandpalette.md +10 -2
  382. package/docs/llms/contextmenu.md +14 -2
  383. package/docs/llms/datepicker.md +7 -0
  384. package/docs/llms/datetimepicker.md +7 -0
  385. package/docs/llms/drawer.md +27 -4
  386. package/docs/llms/form.md +5 -2
  387. package/docs/llms/icon.md +25 -1
  388. package/docs/llms/image.md +3 -3
  389. package/docs/llms/list.md +11 -0
  390. package/docs/llms/message.md +31 -8
  391. package/docs/llms/modal.md +20 -8
  392. package/docs/llms/pagination.md +12 -4
  393. package/docs/llms/popover.md +11 -1
  394. package/docs/llms/progress.md +1 -0
  395. package/docs/llms/radio.md +13 -0
  396. package/docs/llms/select.md +48 -2
  397. package/docs/llms/sidebar.md +24 -0
  398. package/docs/llms/slider.md +5 -2
  399. package/docs/llms/splitter.md +17 -3
  400. package/docs/llms/switch.md +13 -0
  401. package/docs/llms/table.md +7 -8
  402. package/docs/llms/tablepro.md +23 -1
  403. package/docs/llms/tabs.md +21 -0
  404. package/docs/llms/theme.md +83 -28
  405. package/docs/llms/themepanel.md +1 -0
  406. package/docs/llms/titlebar.md +1 -0
  407. package/docs/llms/tooltip.md +7 -2
  408. package/docs/llms/typography.md +27 -3
  409. package/docs/llms/windowcontrols.md +11 -3
  410. package/docs/llms.md +2 -2
  411. package/package.json +212 -2
  412. package/dist/Avatar-TNPOHVY5.css +0 -40
  413. package/dist/Badge-DPGLV3D3.css +0 -22
  414. package/dist/Card-W3ATFUJW.css +0 -77
  415. package/dist/Cascader-ANEQUPMI.css +0 -150
  416. package/dist/Checkbox-EDNPZRIP.css +0 -42
  417. package/dist/List-LSMU5QAC.css +0 -26
  418. package/dist/Pagination-YSZSNFHG.css +0 -68
  419. package/dist/Progress-CZNXCYGW.css +0 -80
  420. package/dist/Slider-UM2IZZBH.css +0 -127
  421. package/dist/Tag-G2XWAL7A.css +0 -42
  422. package/dist/chunk-262ED6WQ.cjs +0 -88
  423. package/dist/chunk-4HJBF4GY.js +0 -218
  424. package/dist/chunk-4TTRHEGM.cjs +0 -217
  425. package/dist/chunk-5A6KSYWA.cjs +0 -67
  426. package/dist/chunk-5MOYKVB7.js +0 -192
  427. package/dist/chunk-7IO3EOHN.cjs +0 -200
  428. package/dist/chunk-7QXP6DXC.cjs +0 -129
  429. package/dist/chunk-AAPZLBHQ.js +0 -165
  430. package/dist/chunk-ARUPS7JH.js +0 -66
  431. package/dist/chunk-ATUPFAPZ.cjs +0 -76
  432. package/dist/chunk-CFZVWY5N.js +0 -178
  433. package/dist/chunk-DSLYWX4O.js +0 -25
  434. package/dist/chunk-E22OIVYP.js +0 -349
  435. package/dist/chunk-FQJY4D3T.cjs +0 -47
  436. package/dist/chunk-GNV6W4BN.js +0 -495
  437. package/dist/chunk-HBO7ZDEQ.js +0 -29
  438. package/dist/chunk-I777JTTG.js +0 -150
  439. package/dist/chunk-IOAOG5L7.js +0 -191
  440. package/dist/chunk-IOUAZYK2.cjs +0 -116
  441. package/dist/chunk-IZHH6CVY.js +0 -123
  442. package/dist/chunk-JFL2WMJZ.js +0 -106
  443. package/dist/chunk-KMPFESEV.js +0 -41
  444. package/dist/chunk-KYV75JPQ.js +0 -147
  445. package/dist/chunk-N7OQNSII.cjs +0 -145
  446. package/dist/chunk-P64NPZBG.js +0 -113
  447. package/dist/chunk-PKNRTFNE.cjs +0 -526
  448. package/dist/chunk-PU7VXDAS.js +0 -64
  449. package/dist/chunk-RFI5R42I.cjs +0 -138
  450. package/dist/chunk-RR2BKV65.js +0 -39
  451. package/dist/chunk-RSSOX4RQ.cjs +0 -240
  452. package/dist/chunk-RZEFKXL3.cjs +0 -104
  453. package/dist/chunk-S7IHWY24.js +0 -81
  454. package/dist/chunk-SOQ56ZI2.cjs +0 -49
  455. package/dist/chunk-TBNPJPYG.cjs +0 -61
  456. package/dist/chunk-TJECLLN4.js +0 -344
  457. package/dist/chunk-ULUD3FED.cjs +0 -138
  458. package/dist/chunk-UW57F3UO.cjs +0 -371
  459. package/dist/chunk-VA2I7ZAL.cjs +0 -190
  460. package/dist/chunk-VS3I5OKA.cjs +0 -214
  461. package/dist/chunk-WMGMIE2D.js +0 -113
  462. package/dist/chunk-X7XP6GEI.cjs +0 -63
  463. package/dist/chunk-XCXUGHDF.js +0 -91
  464. package/dist/chunk-YAFDVNXT.js +0 -27
  465. package/dist/chunk-ZD3L4V3H.js +0 -54
  466. package/dist/chunk-ZTCRD2FL.js +0 -45
@@ -0,0 +1,82 @@
1
+ 'use strict';
2
+
3
+ var chunkNRJXZPZR_cjs = require('./chunk-NRJXZPZR.cjs');
4
+ require('./tokens-CEJVVA3G.css');
5
+ require('./shared-NJHRNLRH.css');
6
+ require('./Progress-33WE2NI7.css');
7
+ var React = require('react');
8
+ var jsxRuntime = require('react/jsx-runtime');
9
+
10
+ function _interopNamespace(e) {
11
+ if (e && e.__esModule) return e;
12
+ var n = Object.create(null);
13
+ if (e) {
14
+ Object.keys(e).forEach(function (k) {
15
+ if (k !== 'default') {
16
+ var d = Object.getOwnPropertyDescriptor(e, k);
17
+ Object.defineProperty(n, k, d.get ? d : {
18
+ enumerable: true,
19
+ get: function () { return e[k]; }
20
+ });
21
+ }
22
+ });
23
+ }
24
+ n.default = e;
25
+ return Object.freeze(n);
26
+ }
27
+
28
+ var React__namespace = /*#__PURE__*/_interopNamespace(React);
29
+
30
+ var ProgressBase = React__namespace.forwardRef(({
31
+ value,
32
+ max = 100,
33
+ label,
34
+ showValue,
35
+ tone = "accent",
36
+ color,
37
+ size = "md",
38
+ indeterminate = false,
39
+ className = "",
40
+ style,
41
+ ...rest
42
+ }, ref) => {
43
+ const safeMax = Number.isFinite(max) && max > 0 ? max : 100;
44
+ const safeValue = Number.isFinite(value) ? value : 0;
45
+ const normalizedValue = Math.max(0, Math.min(safeMax, safeValue));
46
+ const pct = normalizedValue / safeMax * 100;
47
+ const rootStyle = {
48
+ ...color ? {
49
+ ["--progress-fill"]: color,
50
+ ["--progress-fill-glow"]: `color-mix(in oklch, ${color} 35%, transparent)`
51
+ } : null,
52
+ ...style
53
+ };
54
+ return /* @__PURE__ */ jsxRuntime.jsxs(
55
+ "div",
56
+ {
57
+ ref,
58
+ className: `progress ${size} ${tone} ${indeterminate ? "indeterminate" : ""} ${className}`,
59
+ style: rootStyle,
60
+ role: "progressbar",
61
+ "aria-valuemin": 0,
62
+ "aria-valuemax": safeMax,
63
+ "aria-valuenow": indeterminate ? void 0 : normalizedValue,
64
+ "aria-valuetext": indeterminate ? "\u52A0\u8F7D\u4E2D" : void 0,
65
+ ...rest,
66
+ children: [
67
+ (label || showValue) && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "progress-label", children: [
68
+ label ? /* @__PURE__ */ jsxRuntime.jsx("span", { children: label }) : /* @__PURE__ */ jsxRuntime.jsx("span", {}),
69
+ showValue && !indeterminate && /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "v", children: [
70
+ Math.round(pct),
71
+ "%"
72
+ ] })
73
+ ] }),
74
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "progress-track", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "progress-bar", style: { width: indeterminate ? "35%" : `${pct}%` } }) })
75
+ ]
76
+ }
77
+ );
78
+ });
79
+ ProgressBase.displayName = "Progress";
80
+ var Progress = chunkNRJXZPZR_cjs.withComponentTheme(ProgressBase, "Progress", "progress");
81
+
82
+ exports.Progress = Progress;
@@ -1,11 +1,12 @@
1
- import { Icon } from './chunk-FDZG27IG.js';
2
- import './tokens-RYJ3DFTU.css';
1
+ import { Icon } from './chunk-LQMOYVQF.js';
2
+ import { withComponentTheme } from './chunk-DRDDQCDD.js';
3
+ import './tokens-CEJVVA3G.css';
3
4
  import './shared-NJHRNLRH.css';
4
- import './Collapse-UNBHEPYP.css';
5
+ import './Collapse-BTSBHBSY.css';
5
6
  import * as React from 'react';
6
7
  import { jsx, jsxs } from 'react/jsx-runtime';
7
8
 
8
- var CollapsePanel = ({ open, children }) => {
9
+ var CollapsePanel = ({ open, id, labelledBy, children }) => {
9
10
  const innerRef = React.useRef(null);
10
11
  const [h, setH] = React.useState(0);
11
12
  const [animated, setAnimated] = React.useState(false);
@@ -18,21 +19,28 @@ var CollapsePanel = ({ open, children }) => {
18
19
  return () => ro.disconnect();
19
20
  }, []);
20
21
  React.useEffect(() => {
21
- const id = requestAnimationFrame(() => setAnimated(true));
22
- return () => cancelAnimationFrame(id);
22
+ const id2 = requestAnimationFrame(() => setAnimated(true));
23
+ return () => cancelAnimationFrame(id2);
23
24
  }, []);
24
25
  return /* @__PURE__ */ jsx(
25
26
  "div",
26
27
  {
28
+ id,
27
29
  className: "collapse-body",
28
30
  style: { maxHeight: open ? h : 0, transition: animated ? void 0 : "none" },
29
31
  "aria-hidden": !open,
32
+ "aria-labelledby": labelledBy,
33
+ role: "region",
34
+ ...!open ? { inert: "" } : {},
30
35
  children: /* @__PURE__ */ jsx("div", { ref: innerRef, className: "collapse-body-inner", children })
31
36
  }
32
37
  );
33
38
  };
34
- var normalizeKeys = (value) => value == null ? [] : Array.isArray(value) ? value : [value];
35
- var Collapse = React.forwardRef(({
39
+ var normalizeKeys = (value, singleOpen = false) => {
40
+ const keys = value == null ? [] : Array.isArray(value) ? value : [value];
41
+ return singleOpen ? keys.slice(0, 1) : keys;
42
+ };
43
+ var CollapseBase = React.forwardRef(({
36
44
  items,
37
45
  accordion = false,
38
46
  multiple = true,
@@ -45,10 +53,14 @@ var Collapse = React.forwardRef(({
45
53
  className = "",
46
54
  ...rest
47
55
  }, ref) => {
48
- const [inner, setInner] = React.useState(() => normalizeKeys(defaultActiveKey));
49
- const isControlled = activeKey !== void 0;
50
- const keys = isControlled ? normalizeKeys(activeKey) : inner;
56
+ const baseId = React.useId();
51
57
  const singleOpen = accordion || !multiple;
58
+ const [inner, setInner] = React.useState(() => normalizeKeys(defaultActiveKey, singleOpen));
59
+ const isControlled = activeKey !== void 0;
60
+ const keys = normalizeKeys(isControlled ? activeKey : inner, singleOpen);
61
+ React.useEffect(() => {
62
+ if (!isControlled && singleOpen && inner.length > 1) setInner(inner.slice(0, 1));
63
+ }, [inner, isControlled, singleOpen]);
52
64
  const toggle = (k, itemDisabled) => {
53
65
  if (collapsible === "disabled" || itemDisabled) return;
54
66
  const next = keys.includes(k) ? keys.filter((x) => x !== k) : singleOpen ? [k] : [...keys, k];
@@ -61,42 +73,49 @@ var Collapse = React.forwardRef(({
61
73
  ref,
62
74
  className: `collapse ${ghost ? "ghost" : ""} ${size} ${className}`,
63
75
  ...rest,
64
- children: items.map((it) => {
76
+ children: items.map((it, index) => {
65
77
  const open = keys.includes(it.key);
66
78
  const isDisabled = it.disabled || collapsible === "disabled";
67
79
  const headerClickable = collapsible === "header" && !isDisabled;
80
+ const headerId = `${baseId}-header-${index}`;
81
+ const panelId = `${baseId}-panel-${index}`;
68
82
  return /* @__PURE__ */ jsxs(
69
83
  "div",
70
84
  {
71
85
  className: `collapse-item ${open ? "open" : ""} ${isDisabled ? "disabled" : ""} ${collapsible === "icon" ? "icon-only" : ""}`,
72
86
  children: [
73
- /* @__PURE__ */ jsxs(
87
+ collapsible === "icon" ? /* @__PURE__ */ jsxs("div", { id: headerId, className: "collapse-head", children: [
88
+ /* @__PURE__ */ jsx("span", { children: it.label }),
89
+ /* @__PURE__ */ jsx(
90
+ "button",
91
+ {
92
+ type: "button",
93
+ className: "collapse-chev clickable",
94
+ disabled: isDisabled,
95
+ onClick: () => toggle(it.key, it.disabled),
96
+ "aria-expanded": open,
97
+ "aria-controls": panelId,
98
+ "aria-label": open ? "\u6536\u8D77\u9762\u677F" : "\u5C55\u5F00\u9762\u677F",
99
+ children: /* @__PURE__ */ jsx(Icon, { name: "chevDown", size: 16, "aria-hidden": true })
100
+ }
101
+ )
102
+ ] }) : /* @__PURE__ */ jsxs(
74
103
  "button",
75
104
  {
105
+ id: headerId,
76
106
  type: "button",
77
107
  className: "collapse-head",
78
108
  disabled: isDisabled,
79
109
  onClick: () => headerClickable && toggle(it.key, it.disabled),
80
110
  "aria-expanded": open,
111
+ "aria-controls": panelId,
81
112
  children: [
82
113
  /* @__PURE__ */ jsx("span", { children: it.label }),
83
- /* @__PURE__ */ jsx(
84
- "span",
85
- {
86
- className: `collapse-chev${collapsible === "icon" ? " clickable" : ""}`,
87
- onClick: (e) => {
88
- if (collapsible === "icon" && !isDisabled) {
89
- e.stopPropagation();
90
- toggle(it.key, it.disabled);
91
- }
92
- },
93
- children: /* @__PURE__ */ jsx(Icon, { name: "chevDown", size: 16 })
94
- }
95
- )
114
+ /* @__PURE__ */ jsx("span", { className: "collapse-chev", "aria-hidden": true, children: /* @__PURE__ */ jsx(Icon, { name: "chevDown", size: 16 }) })
96
115
  ]
97
116
  }
98
117
  ),
99
- /* @__PURE__ */ jsx(CollapsePanel, { open, children: it.children })
118
+ /* @__PURE__ */ jsx(CollapsePanel, { open, id: panelId, labelledBy: headerId, children: it.children })
100
119
  ]
101
120
  },
102
121
  it.key
@@ -105,6 +124,7 @@ var Collapse = React.forwardRef(({
105
124
  }
106
125
  );
107
126
  });
108
- Collapse.displayName = "Collapse";
127
+ CollapseBase.displayName = "Collapse";
128
+ var Collapse = withComponentTheme(CollapseBase, "Collapse", "collapse");
109
129
 
110
130
  export { Collapse };
@@ -1,11 +1,11 @@
1
- import './tokens-RYJ3DFTU.css';
1
+ import { withComponentTheme } from './chunk-DRDDQCDD.js';
2
+ import './tokens-CEJVVA3G.css';
2
3
  import './shared-NJHRNLRH.css';
3
- import './StatusBar-FJKEEPXU.css';
4
+ import './StatusBar-TCGR3LXP.css';
4
5
  import * as React from 'react';
5
6
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
6
7
 
7
- // src/components/StatusBar/StatusBar.tsx
8
- var StatusBarItem = React.forwardRef(({
8
+ var StatusBarItemBase = React.forwardRef(({
9
9
  icon,
10
10
  tone = "default",
11
11
  onClick,
@@ -26,13 +26,19 @@ var StatusBarItem = React.forwardRef(({
26
26
  type: "button",
27
27
  className: cls,
28
28
  onClick,
29
+ ...rest,
29
30
  children: content
30
31
  }
31
32
  );
32
33
  }
33
34
  return /* @__PURE__ */ jsx("div", { ref, className: cls, ...rest, children: content });
34
35
  });
35
- StatusBarItem.displayName = "StatusBarItem";
36
+ StatusBarItemBase.displayName = "StatusBarItem";
37
+ var StatusBarItem = withComponentTheme(
38
+ StatusBarItemBase,
39
+ "StatusBarItem",
40
+ "status-bar"
41
+ );
36
42
  var StatusBarBase = React.forwardRef(({
37
43
  left,
38
44
  center,
@@ -47,7 +53,8 @@ var StatusBarBase = React.forwardRef(({
47
53
  right != null && /* @__PURE__ */ jsx("div", { className: "statusbar-section right", children: right })
48
54
  ] }));
49
55
  StatusBarBase.displayName = "StatusBar";
50
- var StatusBar = StatusBarBase;
56
+ var ThemedStatusBar = withComponentTheme(StatusBarBase, "StatusBar", "status-bar");
57
+ var StatusBar = ThemedStatusBar;
51
58
  StatusBar.Item = StatusBarItem;
52
59
 
53
60
  export { StatusBar, StatusBarItem };
@@ -1,11 +1,16 @@
1
- import { Input } from './chunk-IOAOG5L7.js';
2
- import { Icon } from './chunk-FDZG27IG.js';
3
- import './tokens-RYJ3DFTU.css';
1
+ import { InputThemeIdentityProvider, Input } from './chunk-UE4HFGJ6.js';
2
+ import { Icon } from './chunk-LQMOYVQF.js';
3
+ import './tokens-CEJVVA3G.css';
4
4
  import './shared-NJHRNLRH.css';
5
- import './InputNumber-VXQIWLQC.css';
5
+ import './InputNumber-6NHBMRT4.css';
6
6
  import * as React from 'react';
7
7
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
8
8
 
9
+ var normalizeNumber = (value, min, max, precision) => {
10
+ const clamped = Math.max(min, Math.min(max, value));
11
+ return precision != null ? Number(clamped.toFixed(precision)) : clamped;
12
+ };
13
+ var normalizePrecision = (precision) => precision != null && Number.isFinite(precision) ? Math.max(0, Math.min(100, Math.trunc(precision))) : void 0;
9
14
  var InputNumber = React.forwardRef(
10
15
  ({
11
16
  value,
@@ -13,6 +18,8 @@ var InputNumber = React.forwardRef(
13
18
  onChange,
14
19
  onBlur,
15
20
  onFocus,
21
+ onWheel,
22
+ onKeyDown,
16
23
  onPressEnter,
17
24
  min = -Infinity,
18
25
  max = Infinity,
@@ -29,22 +36,31 @@ var InputNumber = React.forwardRef(
29
36
  suffix,
30
37
  autoFocus,
31
38
  id,
32
- name
39
+ name,
40
+ theme,
41
+ ...rest
33
42
  }, ref) => {
34
- const [inner, setInner] = React.useState(defaultValue ?? null);
43
+ const normalizedMin = Number.isFinite(min) ? min : -Infinity;
44
+ const normalizedMaxCandidate = Number.isFinite(max) ? max : Infinity;
45
+ const normalizedMax = Math.max(normalizedMin, normalizedMaxCandidate);
46
+ const normalizedStep = Number.isFinite(step) && step > 0 ? step : 1;
47
+ const normalizedPrecision = normalizePrecision(precision);
48
+ const [inner, setInner] = React.useState(
49
+ () => defaultValue == null || !Number.isFinite(defaultValue) ? null : normalizeNumber(defaultValue, normalizedMin, normalizedMax, normalizedPrecision)
50
+ );
35
51
  const isControlled = value !== void 0;
36
- const current = isControlled ? value : inner;
52
+ const current = isControlled ? typeof value === "number" && Number.isFinite(value) ? normalizeNumber(value, normalizedMin, normalizedMax, normalizedPrecision) : null : inner;
37
53
  const [text, setText] = React.useState(current == null ? "" : String(current));
38
54
  React.useEffect(() => {
39
- if (isControlled) setText(value == null ? "" : String(value));
40
- }, [value, isControlled]);
55
+ if (isControlled) setText(current == null ? "" : String(current));
56
+ }, [current, isControlled]);
41
57
  const clamp = React.useCallback(
42
- (n) => Math.max(min, Math.min(max, n)),
43
- [min, max]
58
+ (n) => Math.max(normalizedMin, Math.min(normalizedMax, n)),
59
+ [normalizedMax, normalizedMin]
44
60
  );
45
61
  const round = React.useCallback(
46
- (n) => precision != null ? Number(n.toFixed(precision)) : n,
47
- [precision]
62
+ (n) => normalizedPrecision != null ? Number(n.toFixed(normalizedPrecision)) : n,
63
+ [normalizedPrecision]
48
64
  );
49
65
  const commit = (next) => {
50
66
  if (!isControlled) setInner(next);
@@ -57,7 +73,7 @@ var InputNumber = React.forwardRef(
57
73
  return;
58
74
  }
59
75
  const parsed = Number(v);
60
- if (!Number.isNaN(parsed)) commit(clamp(round(parsed)));
76
+ if (Number.isFinite(parsed)) commit(clamp(round(parsed)));
61
77
  };
62
78
  const handleBlur = (e) => {
63
79
  if (current == null) setText("");
@@ -73,19 +89,27 @@ var InputNumber = React.forwardRef(
73
89
  onChange?.(next);
74
90
  };
75
91
  const handleKeyDown = (e) => {
92
+ onKeyDown?.(e);
93
+ if (e.defaultPrevented) return;
76
94
  if (e.key === "ArrowUp") {
77
95
  e.preventDefault();
78
- increment(step);
96
+ increment(normalizedStep);
79
97
  }
80
98
  if (e.key === "ArrowDown") {
81
99
  e.preventDefault();
82
- increment(-step);
100
+ increment(-normalizedStep);
83
101
  }
84
102
  if (e.key === "Enter") onPressEnter?.(e);
85
103
  };
86
- const upDisabled = disabled || readOnly || current != null && current >= max;
87
- const downDisabled = disabled || readOnly || current != null && current <= min;
88
- const stepperSuffix = controls ? /* @__PURE__ */ jsxs("span", { className: "ipn-steppers", "aria-hidden": true, children: [
104
+ const handleWheel = (event) => {
105
+ onWheel?.(event);
106
+ if (event.defaultPrevented || document.activeElement !== event.currentTarget || disabled || readOnly) return;
107
+ event.preventDefault();
108
+ increment(event.deltaY < 0 ? normalizedStep : -normalizedStep);
109
+ };
110
+ const upDisabled = disabled || readOnly || current != null && current >= normalizedMax;
111
+ const downDisabled = disabled || readOnly || current != null && current <= normalizedMin;
112
+ const stepperSuffix = controls ? /* @__PURE__ */ jsxs("span", { className: "ipn-steppers", children: [
89
113
  /* @__PURE__ */ jsx(
90
114
  "button",
91
115
  {
@@ -94,7 +118,8 @@ var InputNumber = React.forwardRef(
94
118
  tabIndex: -1,
95
119
  disabled: upDisabled,
96
120
  onMouseDown: (e) => e.preventDefault(),
97
- onClick: () => increment(step),
121
+ onClick: () => increment(normalizedStep),
122
+ "aria-label": "\u589E\u52A0\u6570\u503C",
98
123
  children: /* @__PURE__ */ jsx(Icon, { name: "chevUp", size: 10, stroke: 2.5 })
99
124
  }
100
125
  ),
@@ -106,7 +131,8 @@ var InputNumber = React.forwardRef(
106
131
  tabIndex: -1,
107
132
  disabled: downDisabled,
108
133
  onMouseDown: (e) => e.preventDefault(),
109
- onClick: () => increment(-step),
134
+ onClick: () => increment(-normalizedStep),
135
+ "aria-label": "\u51CF\u5C11\u6570\u503C",
110
136
  children: /* @__PURE__ */ jsx(Icon, { name: "chevDown", size: 10, stroke: 2.5 })
111
137
  }
112
138
  )
@@ -115,10 +141,11 @@ var InputNumber = React.forwardRef(
115
141
  suffix,
116
142
  stepperSuffix
117
143
  ] }) : stepperSuffix ?? suffix;
118
- return /* @__PURE__ */ jsx(
144
+ return /* @__PURE__ */ jsx(InputThemeIdentityProvider, { value: { component: "InputNumber", cssPrefix: "input" }, children: /* @__PURE__ */ jsx(
119
145
  Input,
120
146
  {
121
147
  ref,
148
+ ...rest,
122
149
  id,
123
150
  name,
124
151
  size,
@@ -132,12 +159,18 @@ var InputNumber = React.forwardRef(
132
159
  suffix: finalSuffix,
133
160
  className: `input-number ${className}`,
134
161
  inputMode: "decimal",
162
+ role: "spinbutton",
163
+ "aria-valuemin": Number.isFinite(normalizedMin) ? normalizedMin : void 0,
164
+ "aria-valuemax": Number.isFinite(normalizedMax) ? normalizedMax : void 0,
165
+ "aria-valuenow": current ?? void 0,
135
166
  onValueChange: handleInput,
136
167
  onKeyDown: handleKeyDown,
168
+ onWheel: handleWheel,
137
169
  onBlur: handleBlur,
138
- onFocus
170
+ onFocus,
171
+ theme
139
172
  }
140
- );
173
+ ) });
141
174
  }
142
175
  );
143
176
  InputNumber.displayName = "InputNumber";
@@ -1,12 +1,15 @@
1
1
  'use strict';
2
2
 
3
3
  var chunk35RCCUGO_cjs = require('./chunk-35RCCUGO.cjs');
4
- var chunkYB3IWIOJ_cjs = require('./chunk-YB3IWIOJ.cjs');
5
- var chunkVS3I5OKA_cjs = require('./chunk-VS3I5OKA.cjs');
6
- var chunkSW2HMNCA_cjs = require('./chunk-SW2HMNCA.cjs');
7
- require('./tokens-RYJ3DFTU.css');
4
+ var chunkFJB3243S_cjs = require('./chunk-FJB3243S.cjs');
5
+ var chunkSTQDKMS5_cjs = require('./chunk-STQDKMS5.cjs');
6
+ var chunkHSDMJUB6_cjs = require('./chunk-HSDMJUB6.cjs');
7
+ var chunkT4RR6NVU_cjs = require('./chunk-T4RR6NVU.cjs');
8
+ var chunkNRJXZPZR_cjs = require('./chunk-NRJXZPZR.cjs');
9
+ var chunkEE5KXDRK_cjs = require('./chunk-EE5KXDRK.cjs');
10
+ require('./tokens-CEJVVA3G.css');
8
11
  require('./shared-NJHRNLRH.css');
9
- require('./TimePicker-ZBJOXH3U.css');
12
+ require('./TimePicker-WJ3FSK6A.css');
10
13
  var React = require('react');
11
14
  var reactDom = require('react-dom');
12
15
  var jsxRuntime = require('react/jsx-runtime');
@@ -83,7 +86,7 @@ var compose = (base, key, value) => ({
83
86
  second: key === "second" ? value : base.second
84
87
  });
85
88
  var byDistanceFrom = (preferred) => (a, b) => Math.abs(a - preferred) - Math.abs(b - preferred) || a - b;
86
- var TimePicker = React__namespace.forwardRef(
89
+ var TimePickerBase = React__namespace.forwardRef(
87
90
  ({
88
91
  value,
89
92
  defaultValue = null,
@@ -110,6 +113,12 @@ var TimePicker = React__namespace.forwardRef(
110
113
  dropdownClassName = "",
111
114
  className = "",
112
115
  onKeyDown,
116
+ id: fieldId,
117
+ "aria-invalid": ariaInvalid,
118
+ "aria-describedby": ariaDescribedBy,
119
+ "aria-labelledby": ariaLabelledBy,
120
+ "aria-required": ariaRequired,
121
+ "aria-label": ariaLabel,
113
122
  ...rest
114
123
  }, ref) => {
115
124
  const includeSecond = showSecond ?? format === "HH:mm:ss";
@@ -144,13 +153,23 @@ var TimePicker = React__namespace.forwardRef(
144
153
  setOpen
145
154
  });
146
155
  const rootRef = React__namespace.useRef(null);
147
- const panelRef = React__namespace.useRef(null);
148
- const { triggerRef, floatingStyle } = chunkYB3IWIOJ_cjs.useFloating({
156
+ const panelId = React__namespace.useId();
157
+ const portalContainer = chunkEE5KXDRK_cjs.usePortalContainer();
158
+ const portalTheme = chunkNRJXZPZR_cjs.useComponentPortalTheme("TimePicker");
159
+ const { triggerRef, floatingRef: panelRef, floatingStyle, zIndex: panelZIndex } = chunkFJB3243S_cjs.useFloating({
149
160
  open,
150
161
  placement,
151
162
  panelWidth: includeSecond ? 312 : 236,
152
163
  panelHeight: 330
153
164
  });
165
+ chunkHSDMJUB6_cjs.useOverlayLayer({
166
+ open: open && !disabled && !readOnly && portalContainer != null,
167
+ containerRef: panelRef,
168
+ ownerRef: triggerRef,
169
+ zIndex: panelZIndex,
170
+ onEscape: () => setOpen(false),
171
+ restoreFocus: true
172
+ });
154
173
  const setRootRef = React__namespace.useCallback(
155
174
  (node) => {
156
175
  rootRef.current = node;
@@ -197,20 +216,16 @@ var TimePicker = React__namespace.forwardRef(
197
216
  if (panelRef.current?.contains(target)) return;
198
217
  setOpen(false);
199
218
  };
200
- const onDocKey = (event) => {
201
- if (event.key === "Escape") setOpen(false);
202
- };
203
219
  document.addEventListener("mousedown", onDown);
204
- document.addEventListener("keydown", onDocKey);
205
220
  return () => {
206
221
  document.removeEventListener("mousedown", onDown);
207
- document.removeEventListener("keydown", onDocKey);
208
222
  };
209
223
  }, [open, setOpen]);
210
224
  const scrollListTo = React__namespace.useCallback(
211
225
  (list, top, animate) => {
212
226
  const frame = scrollFramesRef.current.get(list);
213
227
  if (frame != null) cancelAnimationFrame(frame);
228
+ scrollFramesRef.current.delete(list);
214
229
  if (!animate) {
215
230
  list.scrollTop = top;
216
231
  return;
@@ -240,7 +255,8 @@ var TimePicker = React__namespace.forwardRef(
240
255
  );
241
256
  React__namespace.useEffect(() => {
242
257
  if (!open) return;
243
- const shouldAnimate = wasOpenRef.current && scrollSignatureRef.current != null && scrollSignatureRef.current !== scrollSignature;
258
+ const prefersReducedMotion = typeof window.matchMedia === "function" && window.matchMedia("(prefers-reduced-motion: reduce)").matches;
259
+ const shouldAnimate = !prefersReducedMotion && wasOpenRef.current && scrollSignatureRef.current != null && scrollSignatureRef.current !== scrollSignature;
244
260
  requestAnimationFrame(() => {
245
261
  panelRef.current?.querySelectorAll(".time-picker-list").forEach((list) => {
246
262
  const selected = list.querySelector(".time-picker-option.selected");
@@ -298,11 +314,12 @@ var TimePicker = React__namespace.forwardRef(
298
314
  return;
299
315
  }
300
316
  const parsed = parseTime(draft);
301
- if (!parsed || isDisabledTime(parsed)) {
317
+ const normalized = parsed ? { ...parsed, second: includeSecond ? parsed.second : 0 } : null;
318
+ if (!normalized || isDisabledTime(normalized)) {
302
319
  setDraft(current ?? "");
303
320
  return;
304
321
  }
305
- commit(parsed);
322
+ commit(normalized);
306
323
  };
307
324
  const handleRootKeyDown = (event) => {
308
325
  onKeyDown?.(event);
@@ -316,6 +333,20 @@ var TimePicker = React__namespace.forwardRef(
316
333
  setOpen(false);
317
334
  }
318
335
  };
336
+ const handleOptionKeyDown = (event) => {
337
+ const list = event.currentTarget.parentElement;
338
+ if (!list) return;
339
+ const options = Array.from(list.querySelectorAll("button:not(:disabled)"));
340
+ const index = options.indexOf(event.currentTarget);
341
+ let nextIndex = index;
342
+ if (event.key === "ArrowDown" || event.key === "ArrowRight") nextIndex = index + 1;
343
+ else if (event.key === "ArrowUp" || event.key === "ArrowLeft") nextIndex = index - 1;
344
+ else if (event.key === "Home") nextIndex = 0;
345
+ else if (event.key === "End") nextIndex = options.length - 1;
346
+ else return;
347
+ event.preventDefault();
348
+ options[Math.max(0, Math.min(options.length - 1, nextIndex))]?.focus();
349
+ };
319
350
  const renderColumn = (label, key, options) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "time-picker-column", children: [
320
351
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "time-picker-column-label", children: label }),
321
352
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "time-picker-list", role: "listbox", "aria-label": label, children: options.map((option) => {
@@ -330,6 +361,7 @@ var TimePicker = React__namespace.forwardRef(
330
361
  disabled: optionDisabled,
331
362
  className: `time-picker-option ${selected ? "selected" : ""}`,
332
363
  onClick: () => pick(key, option),
364
+ onKeyDown: handleOptionKeyDown,
333
365
  children: pad(option)
334
366
  },
335
367
  option
@@ -348,10 +380,16 @@ var TimePicker = React__namespace.forwardRef(
348
380
  invalid && "invalid",
349
381
  className
350
382
  ].filter(Boolean).join(" ");
351
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { ref: setRootRef, className: rootClassName, onKeyDown: handleRootKeyDown, ...rest, children: [
383
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { ref: setRootRef, className: rootClassName, onKeyDown: handleRootKeyDown, ...rest, children: /* @__PURE__ */ jsxRuntime.jsxs(chunkNRJXZPZR_cjs.InternalComponentThemePart, { components: ["Input", "Button"], children: [
352
384
  /* @__PURE__ */ jsxRuntime.jsx(
353
- chunkVS3I5OKA_cjs.Input,
385
+ chunkSTQDKMS5_cjs.Input,
354
386
  {
387
+ id: fieldId,
388
+ "aria-label": ariaLabel,
389
+ "aria-labelledby": ariaLabelledBy,
390
+ "aria-invalid": ariaInvalid,
391
+ "aria-required": ariaRequired,
392
+ "aria-describedby": ariaDescribedBy,
355
393
  value: draft,
356
394
  size,
357
395
  placeholder,
@@ -365,17 +403,21 @@ var TimePicker = React__namespace.forwardRef(
365
403
  onBlur: handleInputBlur,
366
404
  inputMode: "numeric",
367
405
  "aria-expanded": open,
368
- "aria-haspopup": "dialog"
406
+ "aria-haspopup": "dialog",
407
+ "aria-controls": open ? panelId : void 0
369
408
  }
370
409
  ),
371
- open && !disabled && !readOnly && typeof document !== "undefined" && reactDom.createPortal(
410
+ open && !disabled && !readOnly && portalContainer && reactDom.createPortal(
372
411
  /* @__PURE__ */ jsxRuntime.jsxs(
373
412
  "div",
374
413
  {
375
414
  ref: panelRef,
415
+ id: panelId,
376
416
  className: `time-picker-panel ${includeSecond ? "with-second" : "without-second"} ${mergedPanelClassName}`,
377
417
  role: "dialog",
378
- style: floatingStyle,
418
+ "aria-label": "\u9009\u62E9\u65F6\u95F4",
419
+ ...portalTheme.dataAttributes,
420
+ style: { ...floatingStyle, ...portalTheme.style, ...portalTheme.styles.popup },
379
421
  children: [
380
422
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "time-picker-columns", children: [
381
423
  renderColumn("\u65F6", "hour", hourOptions),
@@ -384,7 +426,7 @@ var TimePicker = React__namespace.forwardRef(
384
426
  ] }),
385
427
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "time-picker-footer", children: [
386
428
  /* @__PURE__ */ jsxRuntime.jsx(
387
- chunkSW2HMNCA_cjs.Button,
429
+ chunkT4RR6NVU_cjs.Button,
388
430
  {
389
431
  size: "sm",
390
432
  variant: "ghost",
@@ -395,7 +437,7 @@ var TimePicker = React__namespace.forwardRef(
395
437
  ),
396
438
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "time-picker-footer-spacer" }),
397
439
  allowClear && /* @__PURE__ */ jsxRuntime.jsx(
398
- chunkSW2HMNCA_cjs.Button,
440
+ chunkT4RR6NVU_cjs.Button,
399
441
  {
400
442
  size: "sm",
401
443
  variant: "ghost",
@@ -406,16 +448,21 @@ var TimePicker = React__namespace.forwardRef(
406
448
  children: "\u6E05\u7A7A"
407
449
  }
408
450
  ),
409
- /* @__PURE__ */ jsxRuntime.jsx(chunkSW2HMNCA_cjs.Button, { size: "sm", variant: "primary", onClick: () => setOpen(false), children: "\u786E\u5B9A" })
451
+ /* @__PURE__ */ jsxRuntime.jsx(chunkT4RR6NVU_cjs.Button, { size: "sm", variant: "primary", onClick: () => setOpen(false), children: "\u786E\u5B9A" })
410
452
  ] })
411
453
  ]
412
454
  }
413
455
  ),
414
- document.body
456
+ portalContainer
415
457
  )
416
- ] });
458
+ ] }) });
417
459
  }
418
460
  );
419
- TimePicker.displayName = "TimePicker";
461
+ TimePickerBase.displayName = "TimePicker";
462
+ var TimePicker = chunkNRJXZPZR_cjs.withComponentTheme(
463
+ TimePickerBase,
464
+ "TimePicker",
465
+ ["time-picker", "input", "button"]
466
+ );
420
467
 
421
468
  exports.TimePicker = TimePicker;