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
@@ -1,56 +1,52 @@
1
1
  "use client";
2
- const e = {
3
- sm: "py-1.5",
4
- md: "py-2.5",
5
- lg: "py-3.5"
6
- }, s = {
7
- sm: "px-2",
8
- md: "px-3",
9
- lg: "px-4"
2
+ //#region src/components/table/table-styles.ts
3
+ var e = {
4
+ sm: "py-1.5",
5
+ md: "py-2.5",
6
+ lg: "py-3.5"
7
+ }, t = {
8
+ sm: "px-2",
9
+ md: "px-3",
10
+ lg: "px-4"
11
+ }, n = {
12
+ sm: "text-[0.8125rem]",
13
+ md: "text-sm",
14
+ lg: "text-base"
10
15
  }, r = {
11
- sm: "text-[0.8125rem]",
12
- md: "text-sm",
13
- lg: "text-base"
14
- }, o = {
15
- sm: "text-xs",
16
- md: "text-[0.8125rem]",
17
- lg: "text-sm"
16
+ sm: "text-xs",
17
+ md: "text-[0.8125rem]",
18
+ lg: "text-sm"
18
19
  }, i = {
19
- primary: {
20
- selected: "bg-primary text-secondary font-medium hover:bg-primary/90 hover:text-secondary",
21
- hover: "hover:bg-primary/10 hover:text-foreground",
22
- focus: "focus-visible:bg-primary/15 focus-visible:ring-1 focus-visible:ring-primary focus-visible:ring-inset"
23
- },
24
- secondary: {
25
- selected: "bg-secondary text-foreground font-medium hover:bg-secondary/90 hover:text-foreground",
26
- hover: "hover:bg-secondary/10 hover:text-foreground",
27
- focus: "focus-visible:bg-secondary/15 focus-visible:ring-1 focus-visible:ring-secondary focus-visible:ring-inset"
28
- },
29
- danger: {
30
- selected: "bg-danger text-secondary font-medium hover:bg-danger/90 hover:text-secondary",
31
- hover: "hover:bg-danger/10 hover:text-foreground",
32
- focus: "focus-visible:bg-danger/15 focus-visible:ring-1 focus-visible:ring-danger focus-visible:ring-inset"
33
- },
34
- warning: {
35
- selected: "bg-warning text-secondary font-medium hover:bg-warning/90 hover:text-secondary",
36
- hover: "hover:bg-warning/10 hover:text-foreground",
37
- focus: "focus-visible:bg-warning/15 focus-visible:ring-1 focus-visible:ring-warning focus-visible:ring-inset"
38
- },
39
- success: {
40
- selected: "bg-success text-secondary font-medium hover:bg-success/90 hover:text-secondary",
41
- hover: "hover:bg-success/10 hover:text-foreground",
42
- focus: "focus-visible:bg-success/15 focus-visible:ring-1 focus-visible:ring-success focus-visible:ring-inset"
43
- },
44
- none: {
45
- selected: "bg-secondary text-foreground font-medium hover:bg-secondary/80",
46
- hover: "hover:bg-secondary/40 hover:text-foreground",
47
- focus: "focus-visible:bg-secondary/50 focus-visible:ring-1 focus-visible:ring-ring focus-visible:ring-inset"
48
- }
49
- };
50
- export {
51
- s as TABLE_CELL_PADDING_X_CLASS,
52
- e as TABLE_CELL_PADDING_Y_CLASS,
53
- i as TABLE_COLOR_STYLES,
54
- r as TABLE_FONT_CLASS,
55
- o as TABLE_HEADER_FONT_CLASS
20
+ primary: {
21
+ selected: "bg-primary text-secondary font-medium hover:bg-primary/90 hover:text-secondary",
22
+ hover: "hover:bg-primary/10 hover:text-foreground",
23
+ focus: "focus-visible:bg-primary/15 focus-visible:ring-1 focus-visible:ring-primary focus-visible:ring-inset"
24
+ },
25
+ secondary: {
26
+ selected: "bg-secondary text-foreground font-medium hover:bg-secondary/90 hover:text-foreground",
27
+ hover: "hover:bg-secondary/10 hover:text-foreground",
28
+ focus: "focus-visible:bg-secondary/15 focus-visible:ring-1 focus-visible:ring-secondary focus-visible:ring-inset"
29
+ },
30
+ danger: {
31
+ selected: "bg-danger text-secondary font-medium hover:bg-danger/90 hover:text-secondary",
32
+ hover: "hover:bg-danger/10 hover:text-foreground",
33
+ focus: "focus-visible:bg-danger/15 focus-visible:ring-1 focus-visible:ring-danger focus-visible:ring-inset"
34
+ },
35
+ warning: {
36
+ selected: "bg-warning text-secondary font-medium hover:bg-warning/90 hover:text-secondary",
37
+ hover: "hover:bg-warning/10 hover:text-foreground",
38
+ focus: "focus-visible:bg-warning/15 focus-visible:ring-1 focus-visible:ring-warning focus-visible:ring-inset"
39
+ },
40
+ success: {
41
+ selected: "bg-success text-secondary font-medium hover:bg-success/90 hover:text-secondary",
42
+ hover: "hover:bg-success/10 hover:text-foreground",
43
+ focus: "focus-visible:bg-success/15 focus-visible:ring-1 focus-visible:ring-success focus-visible:ring-inset"
44
+ },
45
+ none: {
46
+ selected: "bg-secondary text-foreground font-medium hover:bg-secondary/80",
47
+ hover: "hover:bg-secondary/40 hover:text-foreground",
48
+ focus: "focus-visible:bg-secondary/50 focus-visible:ring-1 focus-visible:ring-ring focus-visible:ring-inset"
49
+ }
56
50
  };
51
+ //#endregion
52
+ export { t as TABLE_CELL_PADDING_X_CLASS, e as TABLE_CELL_PADDING_Y_CLASS, i as TABLE_COLOR_STYLES, n as TABLE_FONT_CLASS, r as TABLE_HEADER_FONT_CLASS };
@@ -1,5 +1,15 @@
1
- import { TabItem, TabsConfig } from './tabs-config';
2
- type BaseTabsProps = TabsConfig & Omit<React.HTMLAttributes<HTMLDivElement>, "color" | "onChange">;
1
+ import { TabItem, TabsConfig, TabsOptionsConfig } from './tabs-config';
2
+ /**
3
+ * Options props for the tab items.
4
+ * Extends the options config with instance-only props.
5
+ */
6
+ export interface TabsOptionProps extends TabsOptionsConfig {
7
+ /**
8
+ * Class name for individual tab trigger buttons.
9
+ */
10
+ tabClassName?: string;
11
+ }
12
+ type BaseTabsProps = Omit<TabsConfig, "options"> & Omit<React.HTMLAttributes<HTMLDivElement>, "color" | "onChange">;
3
13
  /**
4
14
  * Configuration options for the Tabs component.
5
15
  */
@@ -36,9 +46,10 @@ export interface TabsProps extends BaseTabsProps {
36
46
  */
37
47
  tabListClassName?: string;
38
48
  /**
39
- * Class name for individual tab trigger buttons.
49
+ * Options configuration for the tab items (active/inactive styling),
50
+ * plus the instance-only tab class override.
40
51
  */
41
- tabClassName?: string;
52
+ options?: TabsOptionProps;
42
53
  /**
43
54
  * Class name for the tab content panel wrapper.
44
55
  */
@@ -66,11 +77,8 @@ export interface TabsProps extends BaseTabsProps {
66
77
  * @param props.variant - Visual style variant. Defaults to "underline".
67
78
  * @param props.size - Density scale. Defaults to "md".
68
79
  * @param props.radius - Corner rounding of the container. Defaults to "md".
69
- * @param props.activeRadius - Corner rounding of the active tab. Defaults to "md".
70
- * @param props.activeVariant - Visual variant for the active tab. Defaults to "solid".
71
- * @param props.activeColor - Theme color for the active tab. Defaults to "primary".
80
+ * @param props.options - Tab item options (active/inactive radius, variant and color) plus tabClassName.
72
81
  * @param props.tabListClassName - Extra classes for the tablist.
73
- * @param props.tabClassName - Extra classes for individual tabs.
74
82
  * @param props.tabPanelClassName - Extra classes for the content panel.
75
83
  *
76
84
  * @example
@@ -1 +1 @@
1
- {"version":3,"file":"Tabs.d.ts","sourceRoot":"","sources":["../../../src/components/tabs/Tabs.tsx"],"names":[],"mappings":"AA4BA,OAAO,EAEL,KAAK,OAAO,EACZ,KAAK,UAAU,EAEhB,MAAM,eAAe,CAAC;AASvB,KAAK,aAAa,GAAG,UAAU,GAC7B,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC,CAAC;AAEnE;;GAEG;AACH,MAAM,WAAW,SAAU,SAAQ,aAAa;IAC9C;;;OAGG;IACH,IAAI,EAAE,OAAO,EAAE,CAAC;IAEhB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAE3B;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAElC;;;OAGG;IACH,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC;IAEzC;;;;;OAKG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAID;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmEG;AACH,eAAO,MAAM,IAAI,sGA4QhB,CAAC"}
1
+ {"version":3,"file":"Tabs.d.ts","sourceRoot":"","sources":["../../../src/components/tabs/Tabs.tsx"],"names":[],"mappings":"AA4BA,OAAO,EAEL,KAAK,OAAO,EACZ,KAAK,UAAU,EACf,KAAK,iBAAiB,EAEvB,MAAM,eAAe,CAAC;AASvB;;;GAGG;AACH,MAAM,WAAW,eAAgB,SAAQ,iBAAiB;IACxD;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,KAAK,aAAa,GAAG,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,GAC9C,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC,CAAC;AAEnE;;GAEG;AACH,MAAM,WAAW,SAAU,SAAQ,aAAa;IAC9C;;;OAGG;IACH,IAAI,EAAE,OAAO,EAAE,CAAC;IAEhB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAE3B;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAElC;;;OAGG;IACH,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC;IAEzC;;;;;OAKG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;;OAGG;IACH,OAAO,CAAC,EAAE,eAAe,CAAC;IAE1B;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAID;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgEG;AACH,eAAO,MAAM,IAAI,sGAgShB,CAAC"}
@@ -1,209 +1,94 @@
1
1
  "use client";
2
- import { jsxs as K, jsx as o } from "react/jsx-runtime";
3
- import { forwardRef as ae, useId as te, useRef as ne, useState as se, useCallback as de, useMemo as N } from "react";
4
- import { useAsheeConfig as oe } from "../../libs/context.js";
5
- import { resolveCascade as y, resolveRadiusKey as _, resolveClassKey as x } from "../../utils/resolve-token.js";
6
- import { Button as ce } from "../button/Button.js";
7
- import { FALLBACK_TABS_CONFIG as t } from "./tabs-config.js";
8
- import { TABS_HEIGHT_CLASS as ue, TABS_PADDING_X_CLASS as fe, TABS_FONT_CLASS as ve } from "./tabs-styles.js";
9
- import { RADIUS_CLASS as me } from "../../shared/radius.js";
10
- import { cn as g } from "../../utils/cn.js";
11
- const pe = ae(
12
- ({
13
- tabs: i = [],
14
- activeId: I,
15
- defaultActiveId: z,
16
- onChange: c,
17
- variant: C,
18
- size: V,
19
- radius: $,
20
- activeRadius: L,
21
- activeVariant: B,
22
- activeColor: H,
23
- fullWidth: j = !1,
24
- tabListClassName: F,
25
- tabClassName: G,
26
- tabPanelClassName: E,
27
- className: M,
28
- style: O,
29
- ...X
30
- }, U) => {
31
- var D;
32
- const s = oe(), r = (D = s.components) == null ? void 0 : D.tabs, u = te(), S = ne(
33
- /* @__PURE__ */ new Map()
34
- ), [q, J] = se(
35
- () => {
36
- var e;
37
- return z ?? ((e = i[0]) == null ? void 0 : e.id);
38
- }
39
- ), T = I !== void 0, w = T ? I : q, f = y(
40
- V,
41
- r == null ? void 0 : r.size,
42
- void 0,
43
- t.size
44
- ), v = y(
45
- C,
46
- r == null ? void 0 : r.variant,
47
- void 0,
48
- t.variant
49
- ), P = y(
50
- B,
51
- r == null ? void 0 : r.activeVariant,
52
- s.defaultVariant,
53
- t.activeVariant
54
- ), Q = y(
55
- H,
56
- r == null ? void 0 : r.activeColor,
57
- s.defaultColor,
58
- t.activeColor
59
- ), R = _(
60
- $,
61
- r == null ? void 0 : r.radius,
62
- s.defaultRadius,
63
- t.radius
64
- ), W = _(
65
- L,
66
- r == null ? void 0 : r.activeRadius,
67
- s.defaultRadius,
68
- t.activeRadius
69
- ), Y = x(
70
- f,
71
- ue,
72
- t.size
73
- ), Z = x(
74
- f,
75
- fe,
76
- t.size
77
- ), ee = x(
78
- f,
79
- ve,
80
- t.size
81
- ), ie = x(
82
- R,
83
- me,
84
- t.radius
85
- ), k = de(
86
- (e) => {
87
- T || J(e), c == null || c(e);
88
- },
89
- [T, c]
90
- ), re = (e, m) => {
91
- var p, h, A, b;
92
- if (i.filter((l) => !l.disabled).length === 0) return;
93
- let a = -1;
94
- if (e.key === "ArrowRight")
95
- for (e.preventDefault(), a = (m + 1) % i.length; (p = i[a]) != null && p.disabled; )
96
- a = (a + 1) % i.length;
97
- else if (e.key === "ArrowLeft")
98
- for (e.preventDefault(), a = (m - 1 + i.length) % i.length; (h = i[a]) != null && h.disabled; )
99
- a = (a - 1 + i.length) % i.length;
100
- else if (e.key === "Home")
101
- e.preventDefault(), a = i.findIndex((l) => !l.disabled);
102
- else if (e.key === "End") {
103
- e.preventDefault();
104
- for (let l = i.length - 1; l >= 0; l--)
105
- if (!((A = i[l]) != null && A.disabled)) {
106
- a = l;
107
- break;
108
- }
109
- }
110
- if (a !== -1 && i[a]) {
111
- const l = i[a];
112
- k(l.id), (b = S.current.get(l.id)) == null || b.focus();
113
- }
114
- }, d = N(
115
- () => i.find((e) => e.id === w) ?? i[0],
116
- [i, w]
117
- ), le = N(() => {
118
- switch (v) {
119
- case "bordered":
120
- return "border border-border p-1 bg-background";
121
- case "ghost":
122
- return "bg-transparent gap-1";
123
- default:
124
- return "border-b border-border gap-2";
125
- }
126
- }, [v]);
127
- return /* @__PURE__ */ K(
128
- "div",
129
- {
130
- ref: U,
131
- className: g("w-full h-full flex flex-col gap-4", M),
132
- style: O,
133
- ...X,
134
- children: [
135
- /* @__PURE__ */ o(
136
- "div",
137
- {
138
- role: "tablist",
139
- "aria-orientation": "horizontal",
140
- className: g(
141
- "flex flex-row w-full items-center overflow-x-auto scrollable-hidden shrink-0",
142
- le,
143
- v !== "underline" && ie,
144
- F
145
- ),
146
- children: i.map((e, m) => {
147
- const n = e.id === w, a = e.label ?? e.name, p = `${u}-tab-${e.id}`, h = `${u}-panel-${e.id}`, A = e.activeVariant ?? P, b = e.activeColor ?? Q;
148
- return /* @__PURE__ */ K(
149
- ce,
150
- {
151
- ref: (l) => {
152
- l ? S.current.set(e.id, l) : S.current.delete(e.id);
153
- },
154
- id: p,
155
- type: "button",
156
- role: "tab",
157
- "aria-selected": n,
158
- "aria-controls": h,
159
- "aria-disabled": e.disabled,
160
- tabIndex: n ? 0 : -1,
161
- radius: n ? W : R,
162
- isDisabled: e.disabled,
163
- size: f,
164
- variant: n ? v === "underline" ? "underlined" : A : "ghost",
165
- color: n ? b : "none",
166
- onClick: () => k(e.id),
167
- onKeyDown: (l) => re(l, m),
168
- className: g(
169
- "relative flex items-center justify-center gap-2 font-medium transition-all duration-200 select-none outline-none active:scale-[0.98]",
170
- Y,
171
- Z,
172
- ee,
173
- j && "flex-1",
174
- G
175
- ),
176
- children: [
177
- e.icon && /* @__PURE__ */ o("span", { className: "shrink-0", children: e.icon }),
178
- /* @__PURE__ */ o("span", { children: a }),
179
- e.badge !== void 0 && /* @__PURE__ */ o("span", { className: "shrink-0 text-xs px-1.5 py-0.5 rounded-full bg-secondary text-foreground/70 font-normal", children: e.badge })
180
- ]
181
- },
182
- String(e.id)
183
- );
184
- })
185
- }
186
- ),
187
- d && /* @__PURE__ */ o(
188
- "div",
189
- {
190
- id: `${u}-panel-${d.id}`,
191
- role: "tabpanel",
192
- "aria-labelledby": `${u}-tab-${d.id}`,
193
- className: g(
194
- "w-full h-full flex-1 outline-none focus-visible:ring-2 focus-visible:ring-primary focus-visible:ring-offset-2 rounded-md transition-all duration-200 animate-in fade-in-50",
195
- E
196
- ),
197
- children: d.content
198
- },
199
- String(d.id)
200
- )
201
- ]
202
- }
203
- );
204
- }
205
- );
206
- pe.displayName = "Tabs";
207
- export {
208
- pe as Tabs
209
- };
2
+ "use client";
3
+ import { cn as e } from "../../utils/cn.js";
4
+ import { RADIUS_CLASS as t } from "../../shared/radius.js";
5
+ import { useAsheeConfig as n } from "../../libs/context.js";
6
+ import { resolveCascade as r, resolveClassKey as i, resolveRadiusKey as a } from "../../utils/resolve-token.js";
7
+ import { Button as o } from "../button/Button.js";
8
+ import { FALLBACK_TABS_CONFIG as s } from "./tabs-config.js";
9
+ import { TABS_FONT_CLASS as c, TABS_HEIGHT_CLASS as l, TABS_PADDING_X_CLASS as u } from "./tabs-styles.js";
10
+ import { forwardRef as d, useCallback as f, useId as p, useMemo as m, useRef as h, useState as g } from "react";
11
+ import { jsx as _, jsxs as v } from "react/jsx-runtime";
12
+ //#region src/components/tabs/Tabs.tsx
13
+ var y = d(({ tabs: d = [], activeId: y, defaultActiveId: b, onChange: x, variant: S, size: C, radius: w, options: T, fullWidth: ee = !1, tabListClassName: te, tabPanelClassName: E, className: D, style: O, ...k }, A) => {
14
+ let j = n(), M = j.components?.tabs, N = p(), P = h(/* @__PURE__ */ new Map()), [F, I] = g(() => b ?? d[0]?.id), L = y !== void 0, R = L ? y : F, z = r(C, M?.size, void 0, s.size), B = r(S, M?.variant, void 0, s.variant), V = r(T?.active?.variant, M?.options?.active?.variant, j.defaultVariant, s.options.active.variant), H = r(T?.active?.color, M?.options?.active?.color, j.defaultColor, s.options.active.color), U = r(T?.inactive?.variant, M?.options?.inactive?.variant, void 0, s.options.inactive.variant), W = r(T?.inactive?.color, M?.options?.inactive?.color, void 0, s.options.inactive.color), G = a(w, M?.radius, j.defaultRadius, s.radius), K = a(T?.active?.radius, M?.options?.active?.radius, j.defaultRadius, s.options.active.radius), q = a(T?.inactive?.radius, M?.options?.inactive?.radius, G, s.options.inactive.radius), J = i(z, l, s.size), Y = i(z, u, s.size), X = i(z, c, s.size), Z = i(G, t, s.radius), Q = f((e) => {
15
+ L || I(e), x?.(e);
16
+ }, [L, x]), ne = (e, t) => {
17
+ if (d.filter((e) => !e.disabled).length === 0) return;
18
+ let n = -1;
19
+ if (e.key === "ArrowRight") for (e.preventDefault(), n = (t + 1) % d.length; d[n]?.disabled;) n = (n + 1) % d.length;
20
+ else if (e.key === "ArrowLeft") for (e.preventDefault(), n = (t - 1 + d.length) % d.length; d[n]?.disabled;) n = (n - 1 + d.length) % d.length;
21
+ else if (e.key === "Home") e.preventDefault(), n = d.findIndex((e) => !e.disabled);
22
+ else if (e.key === "End") {
23
+ e.preventDefault();
24
+ for (let e = d.length - 1; e >= 0; e--) if (!d[e]?.disabled) {
25
+ n = e;
26
+ break;
27
+ }
28
+ }
29
+ if (n !== -1 && d[n]) {
30
+ let e = d[n];
31
+ Q(e.id), P.current.get(e.id)?.focus();
32
+ }
33
+ }, $ = m(() => d.find((e) => e.id === R) ?? d[0], [d, R]), re = m(() => {
34
+ switch (B) {
35
+ case "bordered": return "border border-border p-1 bg-background";
36
+ case "ghost": return "bg-transparent gap-1";
37
+ default: return "border-b border-border gap-2";
38
+ }
39
+ }, [B]);
40
+ return /* @__PURE__ */ v("div", {
41
+ ref: A,
42
+ className: e("w-full h-full flex flex-col gap-4", D),
43
+ style: O,
44
+ ...k,
45
+ children: [/* @__PURE__ */ _("div", {
46
+ role: "tablist",
47
+ "aria-orientation": "horizontal",
48
+ className: e("flex flex-row w-full items-center overflow-x-auto scrollable-hidden shrink-0", re, B !== "underline" && Z, te),
49
+ children: d.map((t, n) => {
50
+ let r = t.id === R, i = t.label ?? t.name, a = `${N}-tab-${t.id}`, s = `${N}-panel-${t.id}`, c = t.activeVariant ?? V, l = t.activeColor ?? H;
51
+ return /* @__PURE__ */ v(o, {
52
+ ref: (e) => {
53
+ e ? P.current.set(t.id, e) : P.current.delete(t.id);
54
+ },
55
+ id: a,
56
+ type: "button",
57
+ role: "tab",
58
+ "aria-selected": r,
59
+ "aria-controls": s,
60
+ "aria-disabled": t.disabled,
61
+ tabIndex: r ? 0 : -1,
62
+ radius: r ? K : q,
63
+ isDisabled: t.disabled,
64
+ size: z,
65
+ variant: r ? B === "underline" ? "underlined" : c : U,
66
+ color: r ? l : W,
67
+ onClick: () => Q(t.id),
68
+ onKeyDown: (e) => ne(e, n),
69
+ className: e("relative flex items-center justify-center gap-2 font-medium transition-all duration-200 select-none outline-none active:scale-[0.98]", J, Y, X, ee && "flex-1", T?.tabClassName),
70
+ children: [
71
+ t.icon && /* @__PURE__ */ _("span", {
72
+ className: "shrink-0",
73
+ children: t.icon
74
+ }),
75
+ /* @__PURE__ */ _("span", { children: i }),
76
+ t.badge !== void 0 && /* @__PURE__ */ _("span", {
77
+ className: "shrink-0 text-xs px-1.5 py-0.5 rounded-full bg-secondary text-foreground/70 font-normal",
78
+ children: t.badge
79
+ })
80
+ ]
81
+ }, String(t.id));
82
+ })
83
+ }), $ && /* @__PURE__ */ _("div", {
84
+ id: `${N}-panel-${$.id}`,
85
+ role: "tabpanel",
86
+ "aria-labelledby": `${N}-tab-${$.id}`,
87
+ className: e("w-full h-full flex-1 outline-none focus-visible:ring-2 focus-visible:ring-primary focus-visible:ring-offset-2 rounded-md transition-all duration-200 animate-in fade-in-50", E),
88
+ children: $.content
89
+ }, String($.id))]
90
+ });
91
+ });
92
+ y.displayName = "Tabs";
93
+ //#endregion
94
+ export { y as Tabs };
@@ -63,6 +63,29 @@ export interface TabItem {
63
63
  */
64
64
  [key: string]: unknown;
65
65
  }
66
+ /**
67
+ * Visual styling of the active tab.
68
+ */
69
+ export interface TabsActiveOptionConfig {
70
+ radius?: Radius;
71
+ variant?: Variant;
72
+ color?: Color;
73
+ }
74
+ /**
75
+ * Visual styling of inactive tabs.
76
+ */
77
+ export interface TabsInactiveOptionConfig {
78
+ radius?: Radius;
79
+ variant?: Variant;
80
+ color?: Color;
81
+ }
82
+ /**
83
+ * Options configuration for the tab items.
84
+ */
85
+ export interface TabsOptionsConfig {
86
+ active?: TabsActiveOptionConfig;
87
+ inactive?: TabsInactiveOptionConfig;
88
+ }
66
89
  /**
67
90
  * Theme configuration options for the Tabs component.
68
91
  *
@@ -92,26 +115,9 @@ export interface TabsConfig {
92
115
  */
93
116
  radius?: Radius;
94
117
  /**
95
- * Corner rounding of the active tab button.
96
- * Controls the border-radius of the selected tab trigger.
97
- *
98
- * @default "md"
99
- */
100
- activeRadius?: Radius;
101
- /**
102
- * Visual variant for the active tab button.
103
- * Controls the style of the selected tab trigger.
104
- *
105
- * @default "solid"
118
+ * Options configuration for the tab items.
106
119
  */
107
- activeVariant?: Variant;
108
- /**
109
- * Theme color for the active tab button.
110
- * Controls the color of the selected tab trigger.
111
- *
112
- * @default "primary"
113
- */
114
- activeColor?: Color;
120
+ options?: TabsOptionsConfig;
115
121
  }
116
122
  /**
117
123
  * Default config values registered for the Tabs component.
@@ -122,7 +128,23 @@ export declare const defaultTabsConfig: TabsConfig;
122
128
  * These values are used when instance props, component config,
123
129
  * and global defaults are all undefined.
124
130
  */
125
- export declare const FALLBACK_TABS_CONFIG: Required<TabsConfig>;
131
+ export declare const FALLBACK_TABS_CONFIG: {
132
+ readonly size: "md";
133
+ readonly variant: "underline";
134
+ readonly radius: "md";
135
+ readonly options: {
136
+ readonly active: {
137
+ readonly radius: "md";
138
+ readonly variant: "solid";
139
+ readonly color: "primary";
140
+ };
141
+ readonly inactive: {
142
+ readonly radius: "md";
143
+ readonly variant: "ghost";
144
+ readonly color: "none";
145
+ };
146
+ };
147
+ };
126
148
  declare module "../../libs/registry" {
127
149
  interface ComponentTypeConfigRegistry {
128
150
  tabs: TabsConfig;
@@ -1 +1 @@
1
- {"version":3,"file":"tabs-config.d.ts","sourceRoot":"","sources":["../../../src/components/tabs/tabs-config.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEjE;;;;;GAKG;AACH,MAAM,MAAM,WAAW,GAAG,WAAW,GAAG,UAAU,GAAG,OAAO,CAAC;AAE7D;;;GAGG;AACH,MAAM,WAAW,OAAO;IACtB;;;OAGG;IACH,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IAEpB;;;OAGG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAElB;;;OAGG;IACH,IAAI,CAAC,EAAE,SAAS,CAAC;IAEjB;;OAEG;IACH,IAAI,CAAC,EAAE,SAAS,CAAC;IAEjB;;;OAGG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAElB;;OAEG;IACH,OAAO,CAAC,EAAE,SAAS,CAAC;IAEpB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;;OAGG;IACH,WAAW,CAAC,EAAE,KAAK,CAAC;IAEpB;;;OAGG;IACH,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;;;;GAKG;AACH,MAAM,WAAW,UAAU;IACzB;;;;;OAKG;IACH,IAAI,CAAC,EAAE,IAAI,CAAC;IAEZ;;;;;OAKG;IACH,OAAO,CAAC,EAAE,WAAW,CAAC;IAEtB;;;;;OAKG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;;;OAKG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;;;;OAKG;IACH,WAAW,CAAC,EAAE,KAAK,CAAC;CACrB;AAED;;GAEG;AACH,eAAO,MAAM,iBAAiB,EAAE,UAK/B,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,EAAE,QAAQ,CAAC,UAAU,CAO5C,CAAC;AAEX,OAAO,QAAQ,qBAAqB,CAAC;IACnC,UAAU,2BAA2B;QACnC,IAAI,EAAE,UAAU,CAAC;KAClB;CACF"}
1
+ {"version":3,"file":"tabs-config.d.ts","sourceRoot":"","sources":["../../../src/components/tabs/tabs-config.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEjE;;;;;GAKG;AACH,MAAM,MAAM,WAAW,GAAG,WAAW,GAAG,UAAU,GAAG,OAAO,CAAC;AAE7D;;;GAGG;AACH,MAAM,WAAW,OAAO;IACtB;;;OAGG;IACH,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IAEpB;;;OAGG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAElB;;;OAGG;IACH,IAAI,CAAC,EAAE,SAAS,CAAC;IAEjB;;OAEG;IACH,IAAI,CAAC,EAAE,SAAS,CAAC;IAEjB;;;OAGG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAElB;;OAEG;IACH,OAAO,CAAC,EAAE,SAAS,CAAC;IAEpB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;;OAGG;IACH,WAAW,CAAC,EAAE,KAAK,CAAC;IAEpB;;;OAGG;IACH,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,KAAK,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,KAAK,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,MAAM,CAAC,EAAE,sBAAsB,CAAC;IAChC,QAAQ,CAAC,EAAE,wBAAwB,CAAC;CACrC;AAED;;;;;GAKG;AACH,MAAM,WAAW,UAAU;IACzB;;;;;OAKG;IACH,IAAI,CAAC,EAAE,IAAI,CAAC;IAEZ;;;;;OAKG;IACH,OAAO,CAAC,EAAE,WAAW,CAAC;IAEtB;;;;;OAKG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,OAAO,CAAC,EAAE,iBAAiB,CAAC;CAC7B;AAED;;GAEG;AACH,eAAO,MAAM,iBAAiB,EAAE,UAO/B,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;CAQvB,CAAC;AAEX,OAAO,QAAQ,qBAAqB,CAAC;IACnC,UAAU,2BAA2B;QACnC,IAAI,EAAE,UAAU,CAAC;KAClB;CACF"}
@@ -1,20 +1,28 @@
1
1
  "use client";
2
- import { registerComponentDefaults as i } from "../../libs/registry.js";
3
- const a = {
4
- size: "md",
5
- variant: "underline",
6
- radius: "md",
7
- activeRadius: "md"
8
- }, t = {
9
- size: "md",
10
- variant: "underline",
11
- radius: "md",
12
- activeRadius: "md",
13
- activeVariant: "solid",
14
- activeColor: "primary"
15
- };
16
- i("tabs", a);
17
- export {
18
- t as FALLBACK_TABS_CONFIG,
19
- a as defaultTabsConfig
2
+ import { registerComponentDefaults as e } from "../../libs/registry.js";
3
+ //#region src/components/tabs/tabs-config.ts
4
+ var t = {
5
+ size: "md",
6
+ variant: "underline",
7
+ radius: "md",
8
+ options: { active: { radius: "md" } }
9
+ }, n = {
10
+ size: "md",
11
+ variant: "underline",
12
+ radius: "md",
13
+ options: {
14
+ active: {
15
+ radius: "md",
16
+ variant: "solid",
17
+ color: "primary"
18
+ },
19
+ inactive: {
20
+ radius: "md",
21
+ variant: "ghost",
22
+ color: "none"
23
+ }
24
+ }
20
25
  };
26
+ e("tabs", t);
27
+ //#endregion
28
+ export { n as FALLBACK_TABS_CONFIG, t as defaultTabsConfig };
@@ -1,19 +1,17 @@
1
1
  "use client";
2
- const t = {
3
- sm: "h-8",
4
- md: "h-10",
5
- lg: "h-12"
6
- }, s = {
7
- sm: "px-2.5",
8
- md: "px-3.5",
9
- lg: "px-4"
10
- }, S = {
11
- sm: "text-xs",
12
- md: "text-sm",
13
- lg: "text-base"
14
- };
15
- export {
16
- S as TABS_FONT_CLASS,
17
- t as TABS_HEIGHT_CLASS,
18
- s as TABS_PADDING_X_CLASS
2
+ //#region src/components/tabs/tabs-styles.ts
3
+ var e = {
4
+ sm: "h-8",
5
+ md: "h-10",
6
+ lg: "h-12"
7
+ }, t = {
8
+ sm: "px-2.5",
9
+ md: "px-3.5",
10
+ lg: "px-4"
11
+ }, n = {
12
+ sm: "text-xs",
13
+ md: "text-sm",
14
+ lg: "text-base"
19
15
  };
16
+ //#endregion
17
+ export { n as TABS_FONT_CLASS, e as TABS_HEIGHT_CLASS, t as TABS_PADDING_X_CLASS };