asheeui 0.6.15 → 1.0.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 (389) hide show
  1. package/dist/AsheeUIProvider.d.ts.map +1 -1
  2. package/dist/AsheeUIProvider.js +29 -24
  3. package/dist/components/accordion/Accordion.d.ts.map +1 -1
  4. package/dist/components/accordion/Accordion.js +81 -173
  5. package/dist/components/accordion/accordion-config.js +12 -13
  6. package/dist/components/accordion/accordion-styles.js +21 -24
  7. package/dist/components/alert/Alert.d.ts +88 -0
  8. package/dist/components/alert/Alert.d.ts.map +1 -0
  9. package/dist/components/alert/Alert.js +61 -0
  10. package/dist/components/alert/alert-config.d.ts +56 -0
  11. package/dist/components/alert/alert-config.d.ts.map +1 -0
  12. package/dist/components/alert/alert-config.js +14 -0
  13. package/dist/components/alert/alert-styles.d.ts +32 -0
  14. package/dist/components/alert/alert-styles.d.ts.map +1 -0
  15. package/dist/components/alert/alert-styles.js +20 -0
  16. package/dist/components/alert/index.d.ts +3 -0
  17. package/dist/components/alert/index.d.ts.map +1 -0
  18. package/dist/components/alert/index.js +3 -0
  19. package/dist/components/autocomplete/Autocomplete.d.ts +6 -6
  20. package/dist/components/autocomplete/Autocomplete.d.ts.map +1 -1
  21. package/dist/components/autocomplete/Autocomplete.js +114 -136
  22. package/dist/components/autocomplete/autocomplete-config.d.ts +1 -1
  23. package/dist/components/autocomplete/autocomplete-config.d.ts.map +1 -1
  24. package/dist/components/autocomplete/autocomplete-config.js +7 -12
  25. package/dist/components/avatar/Avatar.d.ts +87 -0
  26. package/dist/components/avatar/Avatar.d.ts.map +1 -0
  27. package/dist/components/avatar/Avatar.js +43 -0
  28. package/dist/components/avatar/avatar-config.d.ts +48 -0
  29. package/dist/components/avatar/avatar-config.d.ts.map +1 -0
  30. package/dist/components/avatar/avatar-config.js +14 -0
  31. package/dist/components/avatar/avatar-styles.d.ts +21 -0
  32. package/dist/components/avatar/avatar-styles.d.ts.map +1 -0
  33. package/dist/components/avatar/avatar-styles.js +13 -0
  34. package/dist/components/avatar/avatar.helpers.d.ts +19 -0
  35. package/dist/components/avatar/avatar.helpers.d.ts.map +1 -0
  36. package/dist/components/avatar/avatar.helpers.js +11 -0
  37. package/dist/components/avatar/index.d.ts +3 -0
  38. package/dist/components/avatar/index.d.ts.map +1 -0
  39. package/dist/components/avatar/index.js +4 -0
  40. package/dist/components/badge/Badge.d.ts +69 -0
  41. package/dist/components/badge/Badge.d.ts.map +1 -0
  42. package/dist/components/badge/Badge.js +39 -0
  43. package/dist/components/badge/badge-config.d.ts +63 -0
  44. package/dist/components/badge/badge-config.d.ts.map +1 -0
  45. package/dist/components/badge/badge-config.js +15 -0
  46. package/dist/components/badge/badge-styles.d.ts +27 -0
  47. package/dist/components/badge/badge-styles.d.ts.map +1 -0
  48. package/dist/components/badge/badge-styles.js +25 -0
  49. package/dist/components/badge/index.d.ts +3 -0
  50. package/dist/components/badge/index.d.ts.map +1 -0
  51. package/dist/components/badge/index.js +3 -0
  52. package/dist/components/breadcrumb/Breadcrumb.d.ts +106 -0
  53. package/dist/components/breadcrumb/Breadcrumb.d.ts.map +1 -0
  54. package/dist/components/breadcrumb/Breadcrumb.js +52 -0
  55. package/dist/components/breadcrumb/breadcrumb-config.d.ts +41 -0
  56. package/dist/components/breadcrumb/breadcrumb-config.d.ts.map +1 -0
  57. package/dist/components/breadcrumb/breadcrumb-config.js +10 -0
  58. package/dist/components/breadcrumb/breadcrumb-styles.d.ts +28 -0
  59. package/dist/components/breadcrumb/breadcrumb-styles.d.ts.map +1 -0
  60. package/dist/components/breadcrumb/breadcrumb-styles.js +17 -0
  61. package/dist/components/breadcrumb/index.d.ts +3 -0
  62. package/dist/components/breadcrumb/index.d.ts.map +1 -0
  63. package/dist/components/breadcrumb/index.js +3 -0
  64. package/dist/components/button/Button.d.ts +29 -1
  65. package/dist/components/button/Button.d.ts.map +1 -1
  66. package/dist/components/button/Button.js +50 -108
  67. package/dist/components/button/button-config.js +16 -17
  68. package/dist/components/button/button-styles.js +10 -11
  69. package/dist/components/{date-picker/DatePicker.d.ts → calendar/Calendar.d.ts} +22 -22
  70. package/dist/components/calendar/Calendar.d.ts.map +1 -0
  71. package/dist/components/calendar/Calendar.js +123 -0
  72. package/dist/components/{date-picker/Calendar.d.ts → calendar/DateGrid.d.ts} +7 -7
  73. package/dist/components/calendar/DateGrid.d.ts.map +1 -0
  74. package/dist/components/calendar/DateGrid.js +194 -0
  75. package/dist/components/calendar/TimeSpinner.d.ts.map +1 -0
  76. package/dist/components/calendar/TimeSpinner.js +60 -0
  77. package/dist/components/{date-picker/date-picker-config.d.ts → calendar/calendar-config.d.ts} +17 -17
  78. package/dist/components/calendar/calendar-config.d.ts.map +1 -0
  79. package/dist/components/calendar/calendar-config.js +15 -0
  80. package/dist/components/{date-picker/date-picker-styles.d.ts → calendar/calendar-styles.d.ts} +1 -1
  81. package/dist/components/calendar/calendar-styles.d.ts.map +1 -0
  82. package/dist/components/calendar/calendar-styles.js +46 -0
  83. package/dist/components/{date-picker/date-picker.helpers.d.ts → calendar/calendar.helpers.d.ts} +9 -9
  84. package/dist/components/calendar/calendar.helpers.d.ts.map +1 -0
  85. package/dist/components/calendar/calendar.helpers.js +82 -0
  86. package/dist/components/calendar/index.d.ts +3 -0
  87. package/dist/components/calendar/index.d.ts.map +1 -0
  88. package/dist/components/calendar/index.js +6 -0
  89. package/dist/components/card/Card.d.ts +36 -16
  90. package/dist/components/card/Card.d.ts.map +1 -1
  91. package/dist/components/card/Card.js +115 -205
  92. package/dist/components/card/card-config.js +24 -21
  93. package/dist/components/card/card-styles.js +19 -22
  94. package/dist/components/carousel/Carousel.d.ts.map +1 -1
  95. package/dist/components/carousel/Carousel.js +125 -248
  96. package/dist/components/carousel/carousel-config.js +24 -25
  97. package/dist/components/carousel/carousel-styles.d.ts +1 -20
  98. package/dist/components/carousel/carousel-styles.d.ts.map +1 -1
  99. package/dist/components/carousel/carousel-styles.js +14 -16
  100. package/dist/components/chip/Chip.js +84 -191
  101. package/dist/components/chip/chip-config.js +13 -14
  102. package/dist/components/chip/chip-styles.js +22 -26
  103. package/dist/components/drawer/Drawer.d.ts +33 -11
  104. package/dist/components/drawer/Drawer.d.ts.map +1 -1
  105. package/dist/components/drawer/Drawer.js +70 -131
  106. package/dist/components/drawer/drawer-config.js +14 -15
  107. package/dist/components/drawer/drawer-styles.js +38 -42
  108. package/dist/components/{select/Select.d.ts → dropmenu/Dropmenu.d.ts} +22 -21
  109. package/dist/components/dropmenu/Dropmenu.d.ts.map +1 -0
  110. package/dist/components/dropmenu/Dropmenu.js +102 -0
  111. package/dist/components/{select/select-config.d.ts → dropmenu/dropmenu-config.d.ts} +8 -8
  112. package/dist/components/dropmenu/dropmenu-config.d.ts.map +1 -0
  113. package/dist/components/dropmenu/dropmenu-config.js +9 -0
  114. package/dist/components/{select/select-styles.d.ts → dropmenu/dropmenu-styles.d.ts} +1 -1
  115. package/dist/components/dropmenu/dropmenu-styles.d.ts.map +1 -0
  116. package/dist/components/dropmenu/dropmenu-styles.js +6 -0
  117. package/dist/components/dropmenu/index.d.ts +3 -0
  118. package/dist/components/dropmenu/index.d.ts.map +1 -0
  119. package/dist/components/dropmenu/index.js +3 -0
  120. package/dist/components/field/FieldShell.d.ts +13 -1
  121. package/dist/components/field/FieldShell.d.ts.map +1 -1
  122. package/dist/components/field/FieldShell.js +50 -56
  123. package/dist/components/field/field-config.js +17 -18
  124. package/dist/components/field/field-styles.js +8 -8
  125. package/dist/components/form/Form.d.ts +109 -0
  126. package/dist/components/form/Form.d.ts.map +1 -0
  127. package/dist/components/form/Form.js +42 -0
  128. package/dist/components/form/form-config.d.ts +57 -0
  129. package/dist/components/form/form-config.d.ts.map +1 -0
  130. package/dist/components/form/form-config.js +12 -0
  131. package/dist/components/form/form-styles.d.ts +27 -0
  132. package/dist/components/form/form-styles.d.ts.map +1 -0
  133. package/dist/components/form/form-styles.js +5 -0
  134. package/dist/components/form/index.d.ts +3 -0
  135. package/dist/components/form/index.d.ts.map +1 -0
  136. package/dist/components/form/index.js +3 -0
  137. package/dist/components/image/Image.d.ts +8 -9
  138. package/dist/components/image/Image.d.ts.map +1 -1
  139. package/dist/components/image/Image.js +65 -132
  140. package/dist/components/image/image-config.js +17 -18
  141. package/dist/components/image/image-styles.js +14 -15
  142. package/dist/components/input/Input.js +65 -150
  143. package/dist/components/input/PasswordInput.js +30 -49
  144. package/dist/components/input/input-config.js +7 -7
  145. package/dist/components/input/input-styles.js +9 -10
  146. package/dist/components/keyboard/KeyboardContext.js +10 -11
  147. package/dist/components/keyboard/KeyboardProvider.js +100 -181
  148. package/dist/components/keyboard/OnScreenKeyboard.d.ts.map +1 -1
  149. package/dist/components/keyboard/OnScreenKeyboard.js +159 -166
  150. package/dist/components/keyboard/keyboard-config.js +59 -57
  151. package/dist/components/keyboard/keyboard-styles.js +10 -11
  152. package/dist/components/keyboard/use-keyboard-field.js +29 -21
  153. package/dist/components/link/Link.d.ts +12 -10
  154. package/dist/components/link/Link.d.ts.map +1 -1
  155. package/dist/components/link/Link.js +47 -137
  156. package/dist/components/link/link-config.js +14 -15
  157. package/dist/components/link/link-styles.js +25 -29
  158. package/dist/components/marquee/Marquee.d.ts.map +1 -1
  159. package/dist/components/marquee/Marquee.js +58 -144
  160. package/dist/components/marquee/marquee-config.js +18 -19
  161. package/dist/components/marquee/marquee-styles.js +13 -15
  162. package/dist/components/{select-menu/SelectMenu.d.ts → menu/Menu.d.ts} +52 -19
  163. package/dist/components/menu/Menu.d.ts.map +1 -0
  164. package/dist/components/menu/Menu.js +161 -0
  165. package/dist/components/menu/index.d.ts +5 -0
  166. package/dist/components/menu/index.d.ts.map +1 -0
  167. package/dist/components/menu/index.js +4 -0
  168. package/dist/components/{select-menu/select-menu-config.d.ts → menu/menu-config.d.ts} +5 -5
  169. package/dist/components/menu/menu-config.d.ts.map +1 -0
  170. package/dist/components/menu/menu-config.js +14 -0
  171. package/dist/components/menu/menu-navigation.d.ts +38 -0
  172. package/dist/components/menu/menu-navigation.d.ts.map +1 -0
  173. package/dist/components/menu/menu-navigation.js +20 -0
  174. package/dist/components/{select-menu/use-select-floating.d.ts → menu/use-menu-floating.d.ts} +20 -10
  175. package/dist/components/menu/use-menu-floating.d.ts.map +1 -0
  176. package/dist/components/menu/use-menu-floating.js +43 -0
  177. package/dist/components/modal/Modal.d.ts +32 -11
  178. package/dist/components/modal/Modal.d.ts.map +1 -1
  179. package/dist/components/modal/Modal.js +74 -137
  180. package/dist/components/modal/modal-config.js +15 -16
  181. package/dist/components/modal/modal-styles.js +13 -14
  182. package/dist/components/multi-select/MultiSelect.d.ts +29 -12
  183. package/dist/components/multi-select/MultiSelect.d.ts.map +1 -1
  184. package/dist/components/multi-select/MultiSelect.js +162 -283
  185. package/dist/components/multi-select/multi-select-config.d.ts +24 -19
  186. package/dist/components/multi-select/multi-select-config.d.ts.map +1 -1
  187. package/dist/components/multi-select/multi-select-config.js +18 -21
  188. package/dist/components/multi-select/multi-select-styles.js +17 -20
  189. package/dist/components/pagination/Pagination.d.ts +91 -0
  190. package/dist/components/pagination/Pagination.d.ts.map +1 -0
  191. package/dist/components/pagination/Pagination.js +66 -0
  192. package/dist/components/pagination/index.d.ts +3 -0
  193. package/dist/components/pagination/index.d.ts.map +1 -0
  194. package/dist/components/pagination/index.js +4 -0
  195. package/dist/components/pagination/pagination-config.d.ts +66 -0
  196. package/dist/components/pagination/pagination-config.d.ts.map +1 -0
  197. package/dist/components/pagination/pagination-config.js +19 -0
  198. package/dist/components/pagination/pagination-styles.d.ts +19 -0
  199. package/dist/components/pagination/pagination-styles.d.ts.map +1 -0
  200. package/dist/components/pagination/pagination-styles.js +5 -0
  201. package/dist/components/pagination/pagination.helpers.d.ts +26 -0
  202. package/dist/components/pagination/pagination.helpers.d.ts.map +1 -0
  203. package/dist/components/pagination/pagination.helpers.js +12 -0
  204. package/dist/components/radio/Radio.d.ts +53 -107
  205. package/dist/components/radio/Radio.d.ts.map +1 -1
  206. package/dist/components/radio/Radio.js +56 -79
  207. package/dist/components/radio/RadioGroup.d.ts +107 -53
  208. package/dist/components/radio/RadioGroup.d.ts.map +1 -1
  209. package/dist/components/radio/RadioGroup.js +51 -155
  210. package/dist/components/radio/index.d.ts +0 -1
  211. package/dist/components/radio/index.d.ts.map +1 -1
  212. package/dist/components/radio/radio-config.js +15 -16
  213. package/dist/components/radio/radio-context.js +6 -6
  214. package/dist/components/radio/radio-styles.js +55 -60
  215. package/dist/components/resizable-screen/ResizableScreen.d.ts +4 -4
  216. package/dist/components/resizable-screen/ResizableScreen.js +87 -177
  217. package/dist/components/resizable-screen/resizable-screen-config.js +16 -17
  218. package/dist/components/scrollbar/index.js +1 -0
  219. package/dist/components/scrollbar/scrollbar-config.js +13 -0
  220. package/dist/components/sidebar/Sidebar.d.ts +43 -22
  221. package/dist/components/sidebar/Sidebar.d.ts.map +1 -1
  222. package/dist/components/sidebar/Sidebar.js +148 -331
  223. package/dist/components/sidebar/sidebar-config.d.ts +98 -31
  224. package/dist/components/sidebar/sidebar-config.d.ts.map +1 -1
  225. package/dist/components/sidebar/sidebar-config.js +47 -33
  226. package/dist/components/sidebar/sidebar-styles.js +27 -32
  227. package/dist/components/skeleton/Skeleton.d.ts +65 -0
  228. package/dist/components/skeleton/Skeleton.d.ts.map +1 -0
  229. package/dist/components/skeleton/Skeleton.js +29 -0
  230. package/dist/components/skeleton/index.d.ts +3 -0
  231. package/dist/components/skeleton/index.d.ts.map +1 -0
  232. package/dist/components/skeleton/index.js +3 -0
  233. package/dist/components/skeleton/skeleton-config.d.ts +40 -0
  234. package/dist/components/skeleton/skeleton-config.d.ts.map +1 -0
  235. package/dist/components/skeleton/skeleton-config.js +13 -0
  236. package/dist/components/skeleton/skeleton-styles.d.ts +19 -0
  237. package/dist/components/skeleton/skeleton-styles.d.ts.map +1 -0
  238. package/dist/components/skeleton/skeleton-styles.js +5 -0
  239. package/dist/components/spinner/spinner-config.js +12 -13
  240. package/dist/components/spinner/spinner-styles.js +13 -14
  241. package/dist/components/spinner/spinner.js +39 -82
  242. package/dist/components/switch/Switch.d.ts.map +1 -1
  243. package/dist/components/switch/Switch.js +64 -154
  244. package/dist/components/switch/switch-config.js +11 -12
  245. package/dist/components/switch/switch-styles.js +14 -16
  246. package/dist/components/table/Table.js +64 -186
  247. package/dist/components/table/table-config.js +17 -18
  248. package/dist/components/table/table-styles.js +48 -52
  249. package/dist/components/tabs/Tabs.d.ts +16 -8
  250. package/dist/components/tabs/Tabs.d.ts.map +1 -1
  251. package/dist/components/tabs/Tabs.js +93 -208
  252. package/dist/components/tabs/tabs-config.d.ts +42 -20
  253. package/dist/components/tabs/tabs-config.d.ts.map +1 -1
  254. package/dist/components/tabs/tabs-config.js +26 -18
  255. package/dist/components/tabs/tabs-styles.js +15 -17
  256. package/dist/components/textarea/Textarea.d.ts +10 -10
  257. package/dist/components/textarea/Textarea.js +52 -138
  258. package/dist/components/textarea/textarea-config.d.ts +2 -2
  259. package/dist/components/textarea/textarea-config.js +10 -11
  260. package/dist/components/textarea/textarea-styles.js +9 -10
  261. package/dist/components/toast/ToastContext.js +22 -26
  262. package/dist/components/toast/ToastItem.d.ts.map +1 -1
  263. package/dist/components/toast/ToastItem.js +83 -144
  264. package/dist/components/toast/ToastProvider.d.ts.map +1 -1
  265. package/dist/components/toast/ToastProvider.js +128 -190
  266. package/dist/components/toast/toast-config.js +23 -24
  267. package/dist/components/toast/toast-styles.js +50 -55
  268. package/dist/components/toast/use-pausable-timeout.js +17 -13
  269. package/dist/components/tooltip/Tooltip.d.ts +5 -0
  270. package/dist/components/tooltip/Tooltip.d.ts.map +1 -1
  271. package/dist/components/tooltip/Tooltip.js +68 -158
  272. package/dist/components/tooltip/tooltip-config.d.ts +25 -0
  273. package/dist/components/tooltip/tooltip-config.d.ts.map +1 -1
  274. package/dist/components/tooltip/tooltip-config.js +26 -22
  275. package/dist/components/tooltip/tooltip-styles.js +15 -17
  276. package/dist/components/typography/Typography.d.ts +60 -0
  277. package/dist/components/typography/Typography.d.ts.map +1 -0
  278. package/dist/components/typography/Typography.js +28 -0
  279. package/dist/components/typography/index.d.ts +3 -0
  280. package/dist/components/typography/index.d.ts.map +1 -0
  281. package/dist/components/typography/index.js +3 -0
  282. package/dist/components/typography/typography-config.d.ts +54 -0
  283. package/dist/components/typography/typography-config.d.ts.map +1 -0
  284. package/dist/components/typography/typography-config.js +12 -0
  285. package/dist/components/typography/typography-styles.d.ts +21 -0
  286. package/dist/components/typography/typography-styles.d.ts.map +1 -0
  287. package/dist/components/typography/typography-styles.js +19 -0
  288. package/dist/config/default-config.d.ts.map +1 -1
  289. package/dist/config/default-config.js +11 -34
  290. package/dist/config/index.js +1 -0
  291. package/dist/config/resolve-color.js +23 -23
  292. package/dist/config/resolve-config.d.ts.map +1 -1
  293. package/dist/config/resolve-config.js +14 -12
  294. package/dist/config/validate-config.d.ts +34 -0
  295. package/dist/config/validate-config.d.ts.map +1 -0
  296. package/dist/config/validate-config.js +190 -0
  297. package/dist/icons/ArrowLeftIcon.js +16 -19
  298. package/dist/icons/CalendarIcon.js +43 -24
  299. package/dist/icons/CheckIcon.js +16 -19
  300. package/dist/icons/ChevronDownIcon.js +15 -21
  301. package/dist/icons/ChevronLeftIcon.js +16 -19
  302. package/dist/icons/ChevronRightIcon.js +16 -19
  303. package/dist/icons/ChevronUpIcon.js +16 -19
  304. package/dist/icons/ClearIcon.js +26 -22
  305. package/dist/icons/ClockIcon.js +20 -22
  306. package/dist/icons/CloseIcon.js +26 -22
  307. package/dist/icons/ErrorIcon.js +16 -19
  308. package/dist/icons/ExternalLinkIcon.js +25 -23
  309. package/dist/icons/EyeIcon.js +20 -22
  310. package/dist/icons/EyeOffIcon.js +21 -22
  311. package/dist/icons/InfoIcon.js +16 -19
  312. package/dist/icons/SearchIcon.js +25 -22
  313. package/dist/icons/WarningIcon.js +16 -19
  314. package/dist/index.d.ts +15 -17
  315. package/dist/index.d.ts.map +1 -1
  316. package/dist/index.js +79 -163
  317. package/dist/libs/context.js +10 -13
  318. package/dist/libs/index.js +4 -0
  319. package/dist/libs/registry.js +10 -12
  320. package/dist/libs/use-body-scroll-lock.d.ts +21 -0
  321. package/dist/libs/use-body-scroll-lock.d.ts.map +1 -0
  322. package/dist/libs/use-body-scroll-lock.js +27 -0
  323. package/dist/libs/use-dialog-overlay.d.ts +21 -0
  324. package/dist/libs/use-dialog-overlay.d.ts.map +1 -0
  325. package/dist/libs/use-dialog-overlay.js +21 -0
  326. package/dist/libs/use-floating-z-index.d.ts +32 -0
  327. package/dist/libs/use-floating-z-index.d.ts.map +1 -0
  328. package/dist/libs/use-floating-z-index.js +16 -0
  329. package/dist/libs/use-isomorphic-layout-effect.js +5 -5
  330. package/dist/libs/use-prefers-reduced-motion.d.ts +23 -0
  331. package/dist/libs/use-prefers-reduced-motion.d.ts.map +1 -0
  332. package/dist/libs/use-prefers-reduced-motion.js +19 -0
  333. package/dist/scripts/AsheeThemeScript.js +70 -44
  334. package/dist/shared/index.d.ts +1 -0
  335. package/dist/shared/index.d.ts.map +1 -1
  336. package/dist/shared/radius.d.ts.map +1 -1
  337. package/dist/shared/radius.js +12 -13
  338. package/dist/shared/typography.d.ts +81 -0
  339. package/dist/shared/typography.d.ts.map +1 -0
  340. package/dist/shared/typography.js +137 -0
  341. package/dist/shared/variant.js +46 -134
  342. package/dist/theme/color.js +28 -28
  343. package/dist/theme/controller.d.ts.map +1 -1
  344. package/dist/theme/controller.js +65 -178
  345. package/dist/theme/useTheme.js +13 -44
  346. package/dist/utils/cn.js +7 -7
  347. package/dist/utils/index.d.ts +1 -0
  348. package/dist/utils/index.d.ts.map +1 -1
  349. package/dist/utils/index.js +1 -0
  350. package/dist/utils/merge-object.js +13 -14
  351. package/dist/utils/resolve-token.js +11 -14
  352. package/dist/utils/stacking.d.ts +76 -0
  353. package/dist/utils/stacking.d.ts.map +1 -0
  354. package/dist/utils/stacking.js +34 -0
  355. package/package.json +22 -14
  356. package/dist/components/date-picker/Calendar.d.ts.map +0 -1
  357. package/dist/components/date-picker/Calendar.js +0 -224
  358. package/dist/components/date-picker/DatePicker.d.ts.map +0 -1
  359. package/dist/components/date-picker/DatePicker.js +0 -221
  360. package/dist/components/date-picker/TimeSpinner.d.ts.map +0 -1
  361. package/dist/components/date-picker/TimeSpinner.js +0 -84
  362. package/dist/components/date-picker/date-picker-config.d.ts.map +0 -1
  363. package/dist/components/date-picker/date-picker-config.js +0 -16
  364. package/dist/components/date-picker/date-picker-styles.d.ts.map +0 -1
  365. package/dist/components/date-picker/date-picker-styles.js +0 -47
  366. package/dist/components/date-picker/date-picker.helpers.d.ts.map +0 -1
  367. package/dist/components/date-picker/date-picker.helpers.js +0 -110
  368. package/dist/components/date-picker/index.d.ts +0 -3
  369. package/dist/components/date-picker/index.d.ts.map +0 -1
  370. package/dist/components/date-picker/index.js +0 -6
  371. package/dist/components/select/Select.d.ts.map +0 -1
  372. package/dist/components/select/Select.js +0 -196
  373. package/dist/components/select/index.d.ts +0 -3
  374. package/dist/components/select/index.d.ts.map +0 -1
  375. package/dist/components/select/index.js +0 -3
  376. package/dist/components/select/select-config.d.ts.map +0 -1
  377. package/dist/components/select/select-config.js +0 -10
  378. package/dist/components/select/select-styles.d.ts.map +0 -1
  379. package/dist/components/select/select-styles.js +0 -6
  380. package/dist/components/select-menu/SelectMenu.d.ts.map +0 -1
  381. package/dist/components/select-menu/SelectMenu.js +0 -198
  382. package/dist/components/select-menu/index.d.ts +0 -4
  383. package/dist/components/select-menu/index.d.ts.map +0 -1
  384. package/dist/components/select-menu/index.js +0 -3
  385. package/dist/components/select-menu/select-menu-config.d.ts.map +0 -1
  386. package/dist/components/select-menu/select-menu-config.js +0 -14
  387. package/dist/components/select-menu/use-select-floating.d.ts.map +0 -1
  388. package/dist/components/select-menu/use-select-floating.js +0 -50
  389. /package/dist/components/{date-picker → calendar}/TimeSpinner.d.ts +0 -0
@@ -0,0 +1,91 @@
1
+ import { HTMLAttributes } from 'react';
2
+ import { PaginationConfig } from './pagination-config';
3
+ type BasePaginationProps = PaginationConfig & Omit<HTMLAttributes<HTMLElement>, "color" | "onChange">;
4
+ /**
5
+ * Configuration options for the Pagination component.
6
+ */
7
+ export interface PaginationProps extends BasePaginationProps {
8
+ /**
9
+ * The current page, counted from one.
10
+ */
11
+ page: number;
12
+ /**
13
+ * How many pages the collection has.
14
+ */
15
+ pageCount: number;
16
+ /**
17
+ * Called with the page the consumer chose.
18
+ * It is not called when the chosen page is already the current page.
19
+ */
20
+ onPageChange?: (page: number) => void;
21
+ /**
22
+ * Builds the destination of a page.
23
+ *
24
+ * Supplying it renders every control as a link rather than as a button,
25
+ * which is what a paginated collection with real addresses wants. Without
26
+ * it the controls are buttons that report the chosen page through
27
+ * `onPageChange`.
28
+ */
29
+ hrefForPage?: (page: number) => string;
30
+ /**
31
+ * Name of the navigation landmark.
32
+ *
33
+ * @default "Pagination"
34
+ */
35
+ label?: string;
36
+ /**
37
+ * Whether the controls are unavailable, for example while a page loads.
38
+ *
39
+ * @default false
40
+ */
41
+ isDisabled?: boolean;
42
+ }
43
+ /**
44
+ * A set of controls for moving through a paged collection.
45
+ *
46
+ * Pagination shows the current page, a range of pages around it, and the
47
+ * controls that move between them. The first and last pages are always
48
+ * offered, a longer range becomes an ellipsis, and the current page carries
49
+ * `aria-current="page"` so assistive technology can announce where the reader
50
+ * is in the collection.
51
+ *
52
+ * The controls are links when the consumer supplies `hrefForPage`, which is
53
+ * what a collection with real addresses wants, and buttons that report the
54
+ * chosen page through `onPageChange` otherwise. The current page is never
55
+ * reported as a change, because it is already where the reader is.
56
+ *
57
+ * Size, variant, colour and radius resolve through the standard AsheeUI
58
+ * cascade: prop, component config, global theme defaults, and the built-in
59
+ * fallback.
60
+ *
61
+ * @param props - Pagination configuration options and navigation attributes.
62
+ * @param props.page - The current page, counted from one.
63
+ * @param props.pageCount - How many pages the collection has.
64
+ * @param props.onPageChange - Called with the page the consumer chose.
65
+ * @param props.hrefForPage - Builds a page's destination, which renders links.
66
+ * @param props.label - Name of the navigation landmark. Defaults to "Pagination".
67
+ * @param props.siblingCount - Pages shown each side of the current page. Defaults to 1.
68
+ * @param props.showEdges - Whether first and last page controls are shown. Defaults to false.
69
+ * @param props.isDisabled - Whether the controls are unavailable. Defaults to false.
70
+ * @param props.size - Size of the controls. Defaults to "md".
71
+ * @param props.variant - Visual style of the controls. Defaults to the configured value.
72
+ * @param props.color - Accent colour of the controls. Defaults to the configured value.
73
+ * @param props.radius - Corner rounding of the controls. Defaults to "md".
74
+ * @param props.className - Extra classes applied last.
75
+ *
76
+ * @example
77
+ * ```tsx
78
+ * <Pagination page={3} pageCount={42} onPageChange={setPage} />
79
+ * ```
80
+ *
81
+ * @example
82
+ * ```tsx
83
+ * // Real addresses, so every control is a link.
84
+ * <Pagination page={3} pageCount={42} hrefForPage={(page) => `/invoices?page=${page}`} />
85
+ * ```
86
+ *
87
+ * @see PaginationConfig - The configuration type for component defaults.
88
+ */
89
+ export declare const Pagination: import('react').ForwardRefExoticComponent<PaginationProps & import('react').RefAttributes<HTMLElement>>;
90
+ export {};
91
+ //# sourceMappingURL=Pagination.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Pagination.d.ts","sourceRoot":"","sources":["../../../src/components/pagination/Pagination.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EAEL,KAAK,cAAc,EAEpB,MAAM,OAAO,CAAC;AAUf,OAAO,EACL,KAAK,gBAAgB,EAEtB,MAAM,qBAAqB,CAAC;AAQ7B,KAAK,mBAAmB,GAAG,gBAAgB,GACzC,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC,CAAC;AAE1D;;GAEG;AACH,MAAM,WAAW,eAAgB,SAAQ,mBAAmB;IAC1D;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAEtC;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IAEvC;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AACH,eAAO,MAAM,UAAU,yGAgMtB,CAAC"}
@@ -0,0 +1,66 @@
1
+ "use client";
2
+ "use client";
3
+ import { cn as e } from "../../utils/cn.js";
4
+ import { RADIUS_CLASS as t } from "../../shared/radius.js";
5
+ import { resolveVariantClass as n } from "../../shared/variant.js";
6
+ import { useAsheeConfig as r } from "../../libs/context.js";
7
+ import { resolveCascade as i, resolveRadiusKey as a } from "../../utils/resolve-token.js";
8
+ import { Button as o } from "../button/Button.js";
9
+ import { ChevronRightIcon as s } from "../../icons/ChevronRightIcon.js";
10
+ import { Link as c } from "../link/Link.js";
11
+ import { ChevronLeftIcon as l } from "../../icons/ChevronLeftIcon.js";
12
+ import { FALLBACK_PAGINATION_CONFIG as u } from "./pagination-config.js";
13
+ import { PAGINATION_BASE_CLASS as d, PAGINATION_GAP_CLASS as f, PAGINATION_LIST_CLASS as p } from "./pagination-styles.js";
14
+ import { getPaginationRange as m } from "./pagination.helpers.js";
15
+ import { forwardRef as h } from "react";
16
+ import { jsx as g, jsxs as _ } from "react/jsx-runtime";
17
+ //#region src/components/pagination/Pagination.tsx
18
+ var v = h(({ page: h, pageCount: v, onPageChange: y, hrefForPage: b, label: x = "Pagination", size: S, variant: C, color: w, radius: T, siblingCount: E, showEdges: D, isDisabled: O = !1, className: k, ...A }, j) => {
19
+ let M = r(), N = M.components?.pagination, P = i(S, N?.size, void 0, u.size), F = i(C, N?.variant, M.defaultVariant, u.variant), I = i(w, N?.color, M.defaultColor, u.color), L = a(T, N?.radius, M.defaultRadius, u.radius), R = i(E, N?.siblingCount, void 0, u.siblingCount), z = i(D, N?.showEdges, void 0, u.showEdges), B = Math.min(Math.max(h, 1), Math.max(v, 1)), V = Math.max(v, 1), H = (e) => {
20
+ e === B || e < 1 || e > v || y?.(e);
21
+ }, U = (r, i, a, s = !1) => {
22
+ let l = r < 1 || r > v;
23
+ return b ? /* @__PURE__ */ g(c, {
24
+ href: b(r),
25
+ "aria-label": i,
26
+ "aria-current": s ? "page" : void 0,
27
+ "aria-disabled": O || l ? !0 : void 0,
28
+ className: e("inline-flex items-center justify-center min-w-8 h-8 px-2", t[L], n(F, I), (O || l) && "opacity-50 pointer-events-none cursor-not-allowed"),
29
+ children: a
30
+ }) : /* @__PURE__ */ g(o, {
31
+ type: "button",
32
+ size: P,
33
+ variant: F,
34
+ color: I,
35
+ radius: L,
36
+ "aria-label": i,
37
+ "aria-current": s ? "page" : void 0,
38
+ isDisabled: O || l,
39
+ onClick: () => H(r),
40
+ children: a
41
+ });
42
+ }, W = m(B, v, R);
43
+ return /* @__PURE__ */ g("nav", {
44
+ ref: j,
45
+ "aria-label": x,
46
+ className: e(d, k),
47
+ ...A,
48
+ children: /* @__PURE__ */ _("ul", {
49
+ className: p,
50
+ children: [
51
+ z && /* @__PURE__ */ g("li", { children: U(1, "First page", /* @__PURE__ */ g(l, { "aria-hidden": "true" })) }),
52
+ /* @__PURE__ */ g("li", { children: U(B - 1, "Previous page", /* @__PURE__ */ g(l, { "aria-hidden": "true" })) }),
53
+ W.map((e, t) => e === "ellipsis" ? /* @__PURE__ */ g("li", { children: /* @__PURE__ */ g("span", {
54
+ "aria-hidden": "true",
55
+ className: f,
56
+ children: "…"
57
+ }) }, `gap-${t}`) : /* @__PURE__ */ g("li", { children: U(e, `Page ${e}`, e, e === B) }, e)),
58
+ /* @__PURE__ */ g("li", { children: U(B + 1, "Next page", /* @__PURE__ */ g(s, { "aria-hidden": "true" })) }),
59
+ z && /* @__PURE__ */ g("li", { children: U(V, "Last page", /* @__PURE__ */ g(s, { "aria-hidden": "true" })) })
60
+ ]
61
+ })
62
+ });
63
+ });
64
+ v.displayName = "Pagination";
65
+ //#endregion
66
+ export { v as Pagination };
@@ -0,0 +1,3 @@
1
+ export * from './Pagination';
2
+ export * from './pagination-config';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/pagination/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC"}
@@ -0,0 +1,4 @@
1
+ export * from "./Pagination.js";
2
+ export * from "./pagination-config.js";
3
+ export * from "./pagination-styles.js";
4
+ export * from "./pagination.helpers.js";
@@ -0,0 +1,66 @@
1
+ import { Color, Radius, Size, Variant } from '../../shared';
2
+ /**
3
+ * Theme configuration options for the Pagination component.
4
+ *
5
+ * Set under `components.pagination` in the AsheeUI config. Values feed the
6
+ * component-level fallback tier of the theme cascade.
7
+ */
8
+ export interface PaginationConfig {
9
+ /**
10
+ * Size of the page controls.
11
+ *
12
+ * @default "md"
13
+ */
14
+ size?: Size;
15
+ /**
16
+ * Visual style variant of the page controls.
17
+ *
18
+ * @default "bordered"
19
+ */
20
+ variant?: Variant;
21
+ /**
22
+ * Theme accent colour of the page controls.
23
+ *
24
+ * @default "primary"
25
+ */
26
+ color?: Color;
27
+ /**
28
+ * Corner rounding of the page controls.
29
+ *
30
+ * @default "md"
31
+ */
32
+ radius?: Radius;
33
+ /**
34
+ * How many pages to show on each side of the current page.
35
+ * A wider range shows more of the collection at once; a narrower range keeps
36
+ * the trail short.
37
+ *
38
+ * @default 1
39
+ */
40
+ siblingCount?: number;
41
+ /**
42
+ * Whether the trail offers controls for the first and last page.
43
+ *
44
+ * @default false
45
+ */
46
+ showEdges?: boolean;
47
+ }
48
+ /**
49
+ * Default config values registered for the Pagination component.
50
+ *
51
+ * `variant` and `color` are intentionally absent so they inherit from the
52
+ * global `defaultVariant` and `defaultColor`.
53
+ */
54
+ export declare const defaultPaginationConfig: PaginationConfig;
55
+ /**
56
+ * Hard fallback values used when no config tier provides a value.
57
+ * These values are used when instance props, component config,
58
+ * and global defaults are all undefined.
59
+ */
60
+ export declare const FALLBACK_PAGINATION_CONFIG: Required<PaginationConfig>;
61
+ declare module "../../libs/registry" {
62
+ interface ComponentTypeConfigRegistry {
63
+ pagination: PaginationConfig;
64
+ }
65
+ }
66
+ //# sourceMappingURL=pagination-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pagination-config.d.ts","sourceRoot":"","sources":["../../../src/components/pagination/pagination-config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEjE;;;;;GAKG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;;OAIG;IACH,IAAI,CAAC,EAAE,IAAI,CAAC;IAEZ;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;;;OAIG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC;IAEd;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,EAAE,gBAKrC,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,EAAE,QAAQ,CAAC,gBAAgB,CAOxD,CAAC;AAEX,OAAO,QAAQ,qBAAqB,CAAC;IACnC,UAAU,2BAA2B;QACnC,UAAU,EAAE,gBAAgB,CAAC;KAC9B;CACF"}
@@ -0,0 +1,19 @@
1
+ "use client";
2
+ import { registerComponentDefaults as e } from "../../libs/registry.js";
3
+ //#region src/components/pagination/pagination-config.ts
4
+ var t = {
5
+ size: "md",
6
+ radius: "md",
7
+ siblingCount: 1,
8
+ showEdges: !1
9
+ }, n = {
10
+ size: "md",
11
+ variant: "bordered",
12
+ color: "primary",
13
+ radius: "md",
14
+ siblingCount: 1,
15
+ showEdges: !1
16
+ };
17
+ e("pagination", t);
18
+ //#endregion
19
+ export { n as FALLBACK_PAGINATION_CONFIG, t as defaultPaginationConfig };
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Pagination component styles for AsheeUI.
3
+ * This file provides the static classes the Pagination component is built
4
+ * from.
5
+ */
6
+ /**
7
+ * Base classes for the navigation landmark.
8
+ */
9
+ export declare const PAGINATION_BASE_CLASS = "w-full";
10
+ /**
11
+ * Classes for the ordered list that holds the page controls.
12
+ */
13
+ export declare const PAGINATION_LIST_CLASS = "flex items-center flex-wrap list-none p-0 m-0 gap-1";
14
+ /**
15
+ * Classes for a gap in the page range.
16
+ * A gap conveys nothing on its own, so it is not focusable and not announced.
17
+ */
18
+ export declare const PAGINATION_GAP_CLASS = "inline-flex items-center justify-center min-w-7 px-1 select-none text-foreground/60";
19
+ //# sourceMappingURL=pagination-styles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pagination-styles.d.ts","sourceRoot":"","sources":["../../../src/components/pagination/pagination-styles.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;GAEG;AACH,eAAO,MAAM,qBAAqB,WAAW,CAAC;AAE9C;;GAEG;AACH,eAAO,MAAM,qBAAqB,wDACqB,CAAC;AAExD;;;GAGG;AACH,eAAO,MAAM,oBAAoB,wFACsD,CAAC"}
@@ -0,0 +1,5 @@
1
+ "use client";
2
+ //#region src/components/pagination/pagination-styles.ts
3
+ var e = "w-full", t = "flex items-center flex-wrap list-none p-0 m-0 gap-1", n = "inline-flex items-center justify-center min-w-7 px-1 select-none text-foreground/60";
4
+ //#endregion
5
+ export { e as PAGINATION_BASE_CLASS, n as PAGINATION_GAP_CLASS, t as PAGINATION_LIST_CLASS };
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Pagination helpers for AsheeUI.
3
+ * This file provides the pure range calculation the Pagination component is
4
+ * built on, kept apart from the component so the arithmetic can be reasoned
5
+ * about and tested on its own.
6
+ */
7
+ /**
8
+ * One entry in a pagination range.
9
+ * An ellipsis stands for the pages a range leaves out.
10
+ */
11
+ export type PaginationRangeItem = number | "ellipsis";
12
+ /**
13
+ * Calculates the page controls a range shows.
14
+ *
15
+ * The first and last pages are always offered, the current page is always
16
+ * shown with `siblingCount` pages on either side of it, and a gap between two
17
+ * shown pages becomes an ellipsis. A collection short enough to show in full
18
+ * is shown in full.
19
+ *
20
+ * @param page - The current page, counted from one.
21
+ * @param pageCount - How many pages the collection has.
22
+ * @param siblingCount - How many pages to show on each side of the current page.
23
+ * @returns The controls to render, in order.
24
+ */
25
+ export declare function getPaginationRange(page: number, pageCount: number, siblingCount?: number): PaginationRangeItem[];
26
+ //# sourceMappingURL=pagination.helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pagination.helpers.d.ts","sourceRoot":"","sources":["../../../src/components/pagination/pagination.helpers.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG,UAAU,CAAC;AAEtD;;;;;;;;;;;;GAYG;AACH,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,EACjB,YAAY,SAAI,GACf,mBAAmB,EAAE,CAuBvB"}
@@ -0,0 +1,12 @@
1
+ "use client";
2
+ //#region src/components/pagination/pagination.helpers.ts
3
+ function e(e, t, n = 1) {
4
+ if (t <= 0) return [];
5
+ if (t === 1) return [1];
6
+ let r = Math.min(Math.max(e, 1), t), i = Math.max(n, 0), a = Math.max(r - i, 2), o = Math.min(r + i, t - 1), s = [1];
7
+ a > 2 && s.push("ellipsis");
8
+ for (let e = a; e <= o; e += 1) s.push(e);
9
+ return o < t - 1 && s.push("ellipsis"), s.push(t), s;
10
+ }
11
+ //#endregion
12
+ export { e as getPaginationRange };
@@ -1,144 +1,90 @@
1
- import { ReactNode } from 'react';
2
- import { Color } from '../../shared';
3
- import { FieldSizeKey, FieldStatus, LabelAlign } from '../field/field-config';
4
- import { RadioVariant } from './radio-config';
1
+ import { ChangeEvent, InputHTMLAttributes, ReactNode } from 'react';
2
+ import { RadioConfig } from './radio-config';
3
+ type BaseRadioProps = RadioConfig & Omit<InputHTMLAttributes<HTMLInputElement>, "size" | "onChange" | "children" | "color">;
5
4
  /**
6
- * Configuration options for the RadioGroup component.
5
+ * Configuration options for the Radio component.
7
6
  */
8
- export interface RadioGroupProps {
7
+ export interface RadioProps extends BaseRadioProps {
9
8
  /**
10
- * Radio components to render inside the group.
9
+ * The value of the radio button.
10
+ * Used to identify which radio is selected in a group.
11
11
  */
12
- children: ReactNode;
12
+ value: string;
13
13
  /**
14
- * Name attribute for all radio inputs in the group.
15
- * Auto-generated if not provided.
14
+ * Label text for the radio.
15
+ * Displayed next to the radio button.
16
16
  */
17
- name?: string;
18
- /**
19
- * Controlled selected value.
20
- */
21
- value?: string;
22
- /**
23
- * Uncontrolled initial selected value.
24
- */
25
- defaultValue?: string;
26
- /**
27
- * Callback fired when the selection changes.
28
- * Receives the new selected value.
29
- */
30
- onChange?: (value: string) => void;
31
- /**
32
- * Size scale for all radios in the group.
33
- * @default "md"
34
- */
35
- size?: FieldSizeKey;
36
- /**
37
- * Theme accent color for all radios in the group.
38
- * @default "primary"
39
- */
40
- color?: Color;
41
- /**
42
- * Visual style variant for all radios in the group.
43
- * @default "default"
44
- */
45
- variant?: RadioVariant;
46
- /**
47
- * Layout orientation of the radio group.
48
- * - `horizontal`: Radios are laid out in a row.
49
- * - `vertical`: Radios are laid out in a column.
50
- * @default "vertical"
51
- */
52
- orientation?: "horizontal" | "vertical";
53
- /**
54
- * Validation status for the group.
55
- * @default "default"
56
- */
57
- status?: FieldStatus;
58
- /**
59
- * Label text for the group.
60
- */
61
- label?: string;
62
- /**
63
- * Alignment of the label relative to the group.
64
- * @default "left"
65
- */
66
- labelAlign?: LabelAlign;
17
+ label?: ReactNode;
67
18
  /**
68
19
  * Description text shown below the label.
20
+ * Provides additional context for the option.
69
21
  */
70
- description?: string;
71
- /**
72
- * Validation message shown below the group.
73
- */
74
- message?: string;
22
+ description?: ReactNode;
75
23
  /**
76
- * Whether the field is required.
77
- * @default false
24
+ * Whether the radio is checked.
25
+ * For controlled usage.
78
26
  */
79
- required?: boolean;
27
+ checked?: boolean;
80
28
  /**
81
- * Whether all radios in the group are disabled.
29
+ * Whether the radio is initially checked.
30
+ * For uncontrolled usage.
82
31
  * @default false
83
32
  */
84
- disabled?: boolean;
33
+ defaultChecked?: boolean;
85
34
  /**
86
- * Extra CSS classes for the group container.
35
+ * Callback fired when the radio state changes.
36
+ * Receives the checked state, value, and the change event.
87
37
  */
88
- className?: string;
38
+ onChange?: (checked: boolean, value: string, event: ChangeEvent<HTMLInputElement>) => void;
89
39
  }
90
40
  /**
91
- * A group of radio buttons that manages shared state and layout.
41
+ * A single radio button with label and description.
42
+ *
43
+ * Radio renders a circular radio button with an optional label and
44
+ * description. It supports controlled and uncontrolled usage, validation
45
+ * states, and the standard AsheeUI cascade for visual tokens. When used
46
+ * within a RadioGroup, it inherits shared props from the group context.
92
47
  *
93
- * RadioGroup wraps multiple Radio components and provides a consistent
94
- * context for shared props like name, value, size, color, and disabled
95
- * state. It also handles labeling, validation, and layout through the
96
- * FieldShell component.
48
+ * The component automatically handles accessibility attributes including
49
+ * proper role, aria-checked, and focus management.
97
50
  *
98
- * @param props - RadioGroup configuration options.
99
- * @param props.children - Radio components to render.
100
- * @param props.name - Name attribute for all radios.
101
- * @param props.value - Controlled selected value.
102
- * @param props.defaultValue - Uncontrolled initial selected value.
103
- * @param props.onChange - Callback fired when selection changes.
104
- * @param props.size - Size scale for all radios. Defaults to "md".
51
+ * @param props - Radio configuration options.
52
+ * @param props.value - The value of the radio button.
53
+ * @param props.label - Label text for the radio.
54
+ * @param props.description - Description text shown below the label.
55
+ * @param props.checked - Whether the radio is checked (controlled).
56
+ * @param props.defaultChecked - Whether the radio is initially checked (uncontrolled).
57
+ * @param props.onChange - Callback fired when the radio state changes.
58
+ * @param props.size - Size scale. Defaults to "md".
105
59
  * @param props.color - Theme accent color. Defaults to "primary".
106
60
  * @param props.variant - Visual style variant. Defaults to "default".
107
- * @param props.orientation - Layout orientation. Defaults to "vertical".
108
- * @param props.status - Validation status. Defaults to "default".
109
- * @param props.label - Label text for the group.
110
- * @param props.labelAlign - Alignment of the label. Defaults to "left".
111
- * @param props.description - Description text.
112
- * @param props.message - Validation message.
113
- * @param props.required - Whether the field is required.
114
- * @param props.disabled - Whether all radios are disabled.
115
- * @param props.className - Extra CSS classes.
61
+ * @param props.radius - Corner rounding. Defaults to "full".
62
+ * @param props.status - Validation status.
63
+ * @param props.disabled - Whether the radio is disabled.
116
64
  *
117
65
  * @example
118
66
  * ```tsx
119
- * import { Radio, RadioGroup } from "asheeui";
67
+ * import { Radio } from "asheeui";
120
68
  * import { useState } from "react";
121
69
  *
122
70
  * export function Example() {
123
- * const [value, setValue] = useState("option-1");
71
+ * const [checked, setChecked] = useState(false);
124
72
  *
125
73
  * return (
126
- * <RadioGroup
127
- * label="Choose an option"
128
- * value={value}
129
- * onChange={setValue}
130
- * orientation="horizontal"
131
- * >
132
- * <Radio value="option-1" label="Option 1" />
133
- * <Radio value="option-2" label="Option 2" />
134
- * <Radio value="option-3" label="Option 3" disabled />
135
- * </RadioGroup>
74
+ * <Radio
75
+ * value="option-1"
76
+ * label="Option 1"
77
+ * description="This is the first option"
78
+ * checked={checked}
79
+ * onChange={(checked) => setChecked(checked)}
80
+ * />
136
81
  * );
137
82
  * }
138
83
  * ```
139
84
  *
140
- * @see Radio - The individual radio component.
85
+ * @see RadioGroup - The parent component that manages radio groups.
141
86
  * @see RadioConfig - The configuration type for component defaults.
142
87
  */
143
- export declare const RadioGroup: import('react').ForwardRefExoticComponent<RadioGroupProps & import('react').RefAttributes<HTMLDivElement>>;
88
+ export declare const Radio: import('react').ForwardRefExoticComponent<RadioProps & import('react').RefAttributes<HTMLInputElement>>;
89
+ export {};
144
90
  //# sourceMappingURL=Radio.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Radio.d.ts","sourceRoot":"","sources":["../../../src/components/radio/Radio.tsx"],"names":[],"mappings":"AAQA,OAAO,EAAc,KAAK,SAAS,EAAS,MAAM,OAAO,CAAC;AAE1D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAI1C,OAAO,KAAK,EACV,YAAY,EACZ,WAAW,EACX,UAAU,EACX,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAGL,KAAK,YAAY,EAClB,MAAM,gBAAgB,CAAC;AAKxB;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,QAAQ,EAAE,SAAS,CAAC;IAEpB;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;OAGG;IACH,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAEnC;;;OAGG;IACH,IAAI,CAAC,EAAE,YAAY,CAAC;IAEpB;;;OAGG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC;IAEd;;;OAGG;IACH,OAAO,CAAC,EAAE,YAAY,CAAC;IAEvB;;;;;OAKG;IACH,WAAW,CAAC,EAAE,YAAY,GAAG,UAAU,CAAC;IAExC;;;OAGG;IACH,MAAM,CAAC,EAAE,WAAW,CAAC;IAErB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;OAGG;IACH,UAAU,CAAC,EAAE,UAAU,CAAC;IAExB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAID;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AACH,eAAO,MAAM,UAAU,4GAyEtB,CAAC"}
1
+ {"version":3,"file":"Radio.d.ts","sourceRoot":"","sources":["../../../src/components/radio/Radio.tsx"],"names":[],"mappings":"AAQA,OAAO,EACL,KAAK,WAAW,EAEhB,KAAK,mBAAmB,EACxB,KAAK,SAAS,EAIf,MAAM,OAAO,CAAC;AAWf,OAAO,EAEL,KAAK,WAAW,EAEjB,MAAM,gBAAgB,CAAC;AAaxB,KAAK,cAAc,GAAG,WAAW,GAC/B,IAAI,CACF,mBAAmB,CAAC,gBAAgB,CAAC,EACrC,MAAM,GAAG,UAAU,GAAG,UAAU,GAAG,OAAO,CAC3C,CAAC;AAEJ;;GAEG;AACH,MAAM,WAAW,UAAW,SAAQ,cAAc;IAChD;;;OAGG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;;OAGG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAElB;;;OAGG;IACH,WAAW,CAAC,EAAE,SAAS,CAAC;IAExB;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;;;OAIG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IAEzB;;;OAGG;IACH,QAAQ,CAAC,EAAE,CACT,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,WAAW,CAAC,gBAAgB,CAAC,KACjC,IAAI,CAAC;CACX;AAID;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AACH,eAAO,MAAM,KAAK,yGAoNjB,CAAC"}