asheeui 0.7.0 → 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 (266) hide show
  1. package/dist/AsheeUIProvider.d.ts.map +1 -1
  2. package/dist/AsheeUIProvider.js +22 -15
  3. package/dist/components/accordion/Accordion.d.ts.map +1 -1
  4. package/dist/components/accordion/Accordion.js +9 -7
  5. package/dist/components/alert/Alert.d.ts +88 -0
  6. package/dist/components/alert/Alert.d.ts.map +1 -0
  7. package/dist/components/alert/Alert.js +61 -0
  8. package/dist/components/alert/alert-config.d.ts +56 -0
  9. package/dist/components/alert/alert-config.d.ts.map +1 -0
  10. package/dist/components/alert/alert-config.js +14 -0
  11. package/dist/components/alert/alert-styles.d.ts +32 -0
  12. package/dist/components/alert/alert-styles.d.ts.map +1 -0
  13. package/dist/components/alert/alert-styles.js +20 -0
  14. package/dist/components/alert/index.d.ts +3 -0
  15. package/dist/components/alert/index.d.ts.map +1 -0
  16. package/dist/components/alert/index.js +3 -0
  17. package/dist/components/autocomplete/Autocomplete.d.ts +6 -6
  18. package/dist/components/autocomplete/Autocomplete.d.ts.map +1 -1
  19. package/dist/components/autocomplete/Autocomplete.js +94 -58
  20. package/dist/components/autocomplete/autocomplete-config.d.ts +1 -1
  21. package/dist/components/autocomplete/autocomplete-config.d.ts.map +1 -1
  22. package/dist/components/avatar/Avatar.d.ts +87 -0
  23. package/dist/components/avatar/Avatar.d.ts.map +1 -0
  24. package/dist/components/avatar/Avatar.js +43 -0
  25. package/dist/components/avatar/avatar-config.d.ts +48 -0
  26. package/dist/components/avatar/avatar-config.d.ts.map +1 -0
  27. package/dist/components/avatar/avatar-config.js +14 -0
  28. package/dist/components/avatar/avatar-styles.d.ts +21 -0
  29. package/dist/components/avatar/avatar-styles.d.ts.map +1 -0
  30. package/dist/components/avatar/avatar-styles.js +13 -0
  31. package/dist/components/avatar/avatar.helpers.d.ts +19 -0
  32. package/dist/components/avatar/avatar.helpers.d.ts.map +1 -0
  33. package/dist/components/avatar/avatar.helpers.js +11 -0
  34. package/dist/components/avatar/index.d.ts +3 -0
  35. package/dist/components/avatar/index.d.ts.map +1 -0
  36. package/dist/components/avatar/index.js +4 -0
  37. package/dist/components/badge/Badge.d.ts +69 -0
  38. package/dist/components/badge/Badge.d.ts.map +1 -0
  39. package/dist/components/badge/Badge.js +39 -0
  40. package/dist/components/badge/badge-config.d.ts +63 -0
  41. package/dist/components/badge/badge-config.d.ts.map +1 -0
  42. package/dist/components/badge/badge-config.js +15 -0
  43. package/dist/components/badge/badge-styles.d.ts +27 -0
  44. package/dist/components/badge/badge-styles.d.ts.map +1 -0
  45. package/dist/components/badge/badge-styles.js +25 -0
  46. package/dist/components/badge/index.d.ts +3 -0
  47. package/dist/components/badge/index.d.ts.map +1 -0
  48. package/dist/components/badge/index.js +3 -0
  49. package/dist/components/breadcrumb/Breadcrumb.d.ts +106 -0
  50. package/dist/components/breadcrumb/Breadcrumb.d.ts.map +1 -0
  51. package/dist/components/breadcrumb/Breadcrumb.js +52 -0
  52. package/dist/components/breadcrumb/breadcrumb-config.d.ts +41 -0
  53. package/dist/components/breadcrumb/breadcrumb-config.d.ts.map +1 -0
  54. package/dist/components/breadcrumb/breadcrumb-config.js +10 -0
  55. package/dist/components/breadcrumb/breadcrumb-styles.d.ts +28 -0
  56. package/dist/components/breadcrumb/breadcrumb-styles.d.ts.map +1 -0
  57. package/dist/components/breadcrumb/breadcrumb-styles.js +17 -0
  58. package/dist/components/breadcrumb/index.d.ts +3 -0
  59. package/dist/components/breadcrumb/index.d.ts.map +1 -0
  60. package/dist/components/breadcrumb/index.js +3 -0
  61. package/dist/components/button/Button.d.ts.map +1 -1
  62. package/dist/components/button/Button.js +10 -7
  63. package/dist/components/{date-picker/DatePicker.d.ts → calendar/Calendar.d.ts} +21 -21
  64. package/dist/components/calendar/Calendar.d.ts.map +1 -0
  65. package/dist/components/{date-picker/DatePicker.js → calendar/Calendar.js} +11 -11
  66. package/dist/components/{date-picker/Calendar.d.ts → calendar/DateGrid.d.ts} +7 -7
  67. package/dist/components/calendar/DateGrid.d.ts.map +1 -0
  68. package/dist/components/calendar/DateGrid.js +194 -0
  69. package/dist/components/calendar/TimeSpinner.d.ts.map +1 -0
  70. package/dist/components/{date-picker → calendar}/TimeSpinner.js +3 -3
  71. package/dist/components/{date-picker/date-picker-config.d.ts → calendar/calendar-config.d.ts} +17 -17
  72. package/dist/components/calendar/calendar-config.d.ts.map +1 -0
  73. package/dist/components/{date-picker/date-picker-config.js → calendar/calendar-config.js} +3 -3
  74. package/dist/components/{date-picker/date-picker-styles.d.ts → calendar/calendar-styles.d.ts} +1 -1
  75. package/dist/components/calendar/calendar-styles.d.ts.map +1 -0
  76. package/dist/components/{date-picker/date-picker-styles.js → calendar/calendar-styles.js} +1 -1
  77. package/dist/components/{date-picker/date-picker.helpers.d.ts → calendar/calendar.helpers.d.ts} +9 -9
  78. package/dist/components/calendar/calendar.helpers.d.ts.map +1 -0
  79. package/dist/components/{date-picker/date-picker.helpers.js → calendar/calendar.helpers.js} +4 -4
  80. package/dist/components/calendar/index.d.ts +3 -0
  81. package/dist/components/calendar/index.d.ts.map +1 -0
  82. package/dist/components/calendar/index.js +6 -0
  83. package/dist/components/card/Card.d.ts +6 -6
  84. package/dist/components/card/Card.d.ts.map +1 -1
  85. package/dist/components/card/Card.js +8 -8
  86. package/dist/components/carousel/Carousel.d.ts.map +1 -1
  87. package/dist/components/carousel/Carousel.js +85 -83
  88. package/dist/components/carousel/carousel-styles.d.ts +1 -20
  89. package/dist/components/carousel/carousel-styles.d.ts.map +1 -1
  90. package/dist/components/chip/Chip.js +5 -5
  91. package/dist/components/drawer/Drawer.d.ts +8 -4
  92. package/dist/components/drawer/Drawer.d.ts.map +1 -1
  93. package/dist/components/drawer/Drawer.js +54 -38
  94. package/dist/components/{select/Select.d.ts → dropmenu/Dropmenu.d.ts} +21 -21
  95. package/dist/components/{select/Select.d.ts.map → dropmenu/Dropmenu.d.ts.map} +1 -1
  96. package/dist/components/dropmenu/Dropmenu.js +102 -0
  97. package/dist/components/{select/select-config.d.ts → dropmenu/dropmenu-config.d.ts} +8 -8
  98. package/dist/components/dropmenu/dropmenu-config.d.ts.map +1 -0
  99. package/dist/components/{select/select-config.js → dropmenu/dropmenu-config.js} +3 -3
  100. package/dist/components/{select/select-styles.d.ts → dropmenu/dropmenu-styles.d.ts} +1 -1
  101. package/dist/components/dropmenu/dropmenu-styles.d.ts.map +1 -0
  102. package/dist/components/{select/select-styles.js → dropmenu/dropmenu-styles.js} +1 -1
  103. package/dist/components/dropmenu/index.d.ts +3 -0
  104. package/dist/components/dropmenu/index.d.ts.map +1 -0
  105. package/dist/components/dropmenu/index.js +3 -0
  106. package/dist/components/field/FieldShell.d.ts +13 -1
  107. package/dist/components/field/FieldShell.d.ts.map +1 -1
  108. package/dist/components/field/FieldShell.js +16 -15
  109. package/dist/components/form/Form.d.ts +109 -0
  110. package/dist/components/form/Form.d.ts.map +1 -0
  111. package/dist/components/form/Form.js +42 -0
  112. package/dist/components/form/form-config.d.ts +57 -0
  113. package/dist/components/form/form-config.d.ts.map +1 -0
  114. package/dist/components/form/form-config.js +12 -0
  115. package/dist/components/form/form-styles.d.ts +27 -0
  116. package/dist/components/form/form-styles.d.ts.map +1 -0
  117. package/dist/components/form/form-styles.js +5 -0
  118. package/dist/components/form/index.d.ts +3 -0
  119. package/dist/components/form/index.d.ts.map +1 -0
  120. package/dist/components/form/index.js +3 -0
  121. package/dist/components/image/Image.d.ts +4 -5
  122. package/dist/components/image/Image.d.ts.map +1 -1
  123. package/dist/components/image/Image.js +5 -5
  124. package/dist/components/input/Input.js +5 -5
  125. package/dist/components/link/Link.d.ts +12 -10
  126. package/dist/components/link/Link.d.ts.map +1 -1
  127. package/dist/components/link/Link.js +1 -1
  128. package/dist/components/marquee/Marquee.d.ts.map +1 -1
  129. package/dist/components/marquee/Marquee.js +36 -33
  130. package/dist/components/{select-menu/SelectMenu.d.ts → menu/Menu.d.ts} +52 -19
  131. package/dist/components/menu/Menu.d.ts.map +1 -0
  132. package/dist/components/menu/Menu.js +161 -0
  133. package/dist/components/menu/index.d.ts +5 -0
  134. package/dist/components/menu/index.d.ts.map +1 -0
  135. package/dist/components/menu/index.js +4 -0
  136. package/dist/components/{select-menu/select-menu-config.d.ts → menu/menu-config.d.ts} +5 -5
  137. package/dist/components/menu/menu-config.d.ts.map +1 -0
  138. package/dist/components/{select-menu/select-menu-config.js → menu/menu-config.js} +2 -2
  139. package/dist/components/menu/menu-navigation.d.ts +38 -0
  140. package/dist/components/menu/menu-navigation.d.ts.map +1 -0
  141. package/dist/components/menu/menu-navigation.js +20 -0
  142. package/dist/components/{select-menu/use-select-floating.d.ts → menu/use-menu-floating.d.ts} +10 -10
  143. package/dist/components/menu/use-menu-floating.d.ts.map +1 -0
  144. package/dist/components/{select-menu/use-select-floating.js → menu/use-menu-floating.js} +2 -2
  145. package/dist/components/modal/Modal.d.ts +6 -1
  146. package/dist/components/modal/Modal.d.ts.map +1 -1
  147. package/dist/components/modal/Modal.js +62 -45
  148. package/dist/components/multi-select/MultiSelect.d.ts +11 -10
  149. package/dist/components/multi-select/MultiSelect.d.ts.map +1 -1
  150. package/dist/components/multi-select/MultiSelect.js +99 -86
  151. package/dist/components/multi-select/multi-select-config.d.ts +1 -1
  152. package/dist/components/multi-select/multi-select-config.d.ts.map +1 -1
  153. package/dist/components/pagination/Pagination.d.ts +91 -0
  154. package/dist/components/pagination/Pagination.d.ts.map +1 -0
  155. package/dist/components/pagination/Pagination.js +66 -0
  156. package/dist/components/pagination/index.d.ts +3 -0
  157. package/dist/components/pagination/index.d.ts.map +1 -0
  158. package/dist/components/pagination/index.js +4 -0
  159. package/dist/components/pagination/pagination-config.d.ts +66 -0
  160. package/dist/components/pagination/pagination-config.d.ts.map +1 -0
  161. package/dist/components/pagination/pagination-config.js +19 -0
  162. package/dist/components/pagination/pagination-styles.d.ts +19 -0
  163. package/dist/components/pagination/pagination-styles.d.ts.map +1 -0
  164. package/dist/components/pagination/pagination-styles.js +5 -0
  165. package/dist/components/pagination/pagination.helpers.d.ts +26 -0
  166. package/dist/components/pagination/pagination.helpers.d.ts.map +1 -0
  167. package/dist/components/pagination/pagination.helpers.js +12 -0
  168. package/dist/components/radio/Radio.d.ts +53 -107
  169. package/dist/components/radio/Radio.d.ts.map +1 -1
  170. package/dist/components/radio/Radio.js +50 -36
  171. package/dist/components/radio/RadioGroup.d.ts +107 -53
  172. package/dist/components/radio/RadioGroup.d.ts.map +1 -1
  173. package/dist/components/radio/RadioGroup.js +43 -49
  174. package/dist/components/radio/index.d.ts +0 -1
  175. package/dist/components/radio/index.d.ts.map +1 -1
  176. package/dist/components/resizable-screen/ResizableScreen.d.ts +4 -4
  177. package/dist/components/scrollbar/index.js +1 -0
  178. package/dist/components/scrollbar/scrollbar-config.js +13 -0
  179. package/dist/components/sidebar/Sidebar.d.ts.map +1 -1
  180. package/dist/components/sidebar/Sidebar.js +92 -90
  181. package/dist/components/skeleton/Skeleton.d.ts +65 -0
  182. package/dist/components/skeleton/Skeleton.d.ts.map +1 -0
  183. package/dist/components/skeleton/Skeleton.js +29 -0
  184. package/dist/components/skeleton/index.d.ts +3 -0
  185. package/dist/components/skeleton/index.d.ts.map +1 -0
  186. package/dist/components/skeleton/index.js +3 -0
  187. package/dist/components/skeleton/skeleton-config.d.ts +40 -0
  188. package/dist/components/skeleton/skeleton-config.d.ts.map +1 -0
  189. package/dist/components/skeleton/skeleton-config.js +13 -0
  190. package/dist/components/skeleton/skeleton-styles.d.ts +19 -0
  191. package/dist/components/skeleton/skeleton-styles.d.ts.map +1 -0
  192. package/dist/components/skeleton/skeleton-styles.js +5 -0
  193. package/dist/components/switch/Switch.d.ts.map +1 -1
  194. package/dist/components/switch/Switch.js +7 -5
  195. package/dist/components/table/Table.js +3 -3
  196. package/dist/components/tabs/Tabs.js +3 -3
  197. package/dist/components/textarea/Textarea.d.ts +10 -10
  198. package/dist/components/textarea/Textarea.js +7 -7
  199. package/dist/components/textarea/textarea-config.d.ts +2 -2
  200. package/dist/components/toast/ToastItem.d.ts.map +1 -1
  201. package/dist/components/toast/ToastItem.js +8 -7
  202. package/dist/components/tooltip/Tooltip.js +5 -5
  203. package/dist/components/typography/Typography.d.ts +60 -0
  204. package/dist/components/typography/Typography.d.ts.map +1 -0
  205. package/dist/components/typography/Typography.js +28 -0
  206. package/dist/components/typography/index.d.ts +3 -0
  207. package/dist/components/typography/index.d.ts.map +1 -0
  208. package/dist/components/typography/index.js +3 -0
  209. package/dist/components/typography/typography-config.d.ts +54 -0
  210. package/dist/components/typography/typography-config.d.ts.map +1 -0
  211. package/dist/components/typography/typography-config.js +12 -0
  212. package/dist/components/typography/typography-styles.d.ts +21 -0
  213. package/dist/components/typography/typography-styles.d.ts.map +1 -0
  214. package/dist/components/typography/typography-styles.js +19 -0
  215. package/dist/config/default-config.d.ts.map +1 -1
  216. package/dist/config/default-config.js +2 -2
  217. package/dist/config/index.js +1 -0
  218. package/dist/config/validate-config.d.ts +34 -0
  219. package/dist/config/validate-config.d.ts.map +1 -0
  220. package/dist/config/validate-config.js +190 -0
  221. package/dist/index.d.ts +15 -17
  222. package/dist/index.d.ts.map +1 -1
  223. package/dist/index.js +61 -47
  224. package/dist/libs/index.js +3 -0
  225. package/dist/libs/use-body-scroll-lock.d.ts +21 -0
  226. package/dist/libs/use-body-scroll-lock.d.ts.map +1 -0
  227. package/dist/libs/use-body-scroll-lock.js +27 -0
  228. package/dist/libs/use-dialog-overlay.d.ts +21 -0
  229. package/dist/libs/use-dialog-overlay.d.ts.map +1 -0
  230. package/dist/libs/use-dialog-overlay.js +21 -0
  231. package/dist/libs/use-prefers-reduced-motion.d.ts +23 -0
  232. package/dist/libs/use-prefers-reduced-motion.d.ts.map +1 -0
  233. package/dist/libs/use-prefers-reduced-motion.js +19 -0
  234. package/dist/scripts/AsheeThemeScript.js +43 -8
  235. package/dist/shared/index.d.ts +1 -0
  236. package/dist/shared/index.d.ts.map +1 -1
  237. package/dist/shared/typography.d.ts +81 -0
  238. package/dist/shared/typography.d.ts.map +1 -0
  239. package/dist/shared/typography.js +137 -0
  240. package/dist/utils/stacking.d.ts +2 -2
  241. package/dist/utils/stacking.d.ts.map +1 -1
  242. package/package.json +13 -6
  243. package/dist/components/date-picker/Calendar.d.ts.map +0 -1
  244. package/dist/components/date-picker/Calendar.js +0 -143
  245. package/dist/components/date-picker/DatePicker.d.ts.map +0 -1
  246. package/dist/components/date-picker/TimeSpinner.d.ts.map +0 -1
  247. package/dist/components/date-picker/date-picker-config.d.ts.map +0 -1
  248. package/dist/components/date-picker/date-picker-styles.d.ts.map +0 -1
  249. package/dist/components/date-picker/date-picker.helpers.d.ts.map +0 -1
  250. package/dist/components/date-picker/index.d.ts +0 -3
  251. package/dist/components/date-picker/index.d.ts.map +0 -1
  252. package/dist/components/date-picker/index.js +0 -6
  253. package/dist/components/select/Select.js +0 -98
  254. package/dist/components/select/index.d.ts +0 -3
  255. package/dist/components/select/index.d.ts.map +0 -1
  256. package/dist/components/select/index.js +0 -3
  257. package/dist/components/select/select-config.d.ts.map +0 -1
  258. package/dist/components/select/select-styles.d.ts.map +0 -1
  259. package/dist/components/select-menu/SelectMenu.d.ts.map +0 -1
  260. package/dist/components/select-menu/SelectMenu.js +0 -104
  261. package/dist/components/select-menu/index.d.ts +0 -4
  262. package/dist/components/select-menu/index.d.ts.map +0 -1
  263. package/dist/components/select-menu/index.js +0 -3
  264. package/dist/components/select-menu/select-menu-config.d.ts.map +0 -1
  265. package/dist/components/select-menu/use-select-floating.d.ts.map +0 -1
  266. /package/dist/components/{date-picker → calendar}/TimeSpinner.d.ts +0 -0
@@ -83,8 +83,8 @@ export interface ResizableScreenProps extends BaseResizableScreenProps {
83
83
  * maxSize={70}
84
84
  * orientation="horizontal"
85
85
  * >
86
- * <div className="bg-blue-100 p-4">Left Panel</div>
87
- * <div className="bg-green-100 p-4">Right Panel</div>
86
+ * <div className="bg-primary/10 p-4">Left Panel</div>
87
+ * <div className="bg-success/10 p-4">Right Panel</div>
88
88
  * </ResizableScreen>
89
89
  * );
90
90
  * }
@@ -102,8 +102,8 @@ export interface ResizableScreenProps extends BaseResizableScreenProps {
102
102
  * minSize={25}
103
103
  * maxSize={75}
104
104
  * >
105
- * <div className="bg-red-100 p-4">Top Panel</div>
106
- * <div className="bg-blue-100 p-4">Bottom Panel</div>
105
+ * <div className="bg-danger/10 p-4">Top Panel</div>
106
+ * <div className="bg-primary/10 p-4">Bottom Panel</div>
107
107
  * </ResizableScreen>
108
108
  * ```
109
109
  *
@@ -0,0 +1 @@
1
+ export * from "./scrollbar-config.js";
@@ -0,0 +1,13 @@
1
+ "use client";
2
+ import { registerComponentDefaults as e } from "../../libs/registry.js";
3
+ //#region src/components/scrollbar/scrollbar-config.ts
4
+ var t = {
5
+ width: "10px",
6
+ radius: "9999px",
7
+ thumbBorder: "3px",
8
+ gutter: "stable",
9
+ fallbackWidth: "thin"
10
+ };
11
+ e("scrollbar", t);
12
+ //#endregion
13
+ export { t as defaultScrollbarConfig };
@@ -1 +1 @@
1
- {"version":3,"file":"Sidebar.d.ts","sourceRoot":"","sources":["../../../src/components/sidebar/Sidebar.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Sidebar.d.ts","sourceRoot":"","sources":["../../../src/components/sidebar/Sidebar.tsx"],"names":[],"mappings":"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"}
@@ -1,149 +1,151 @@
1
1
  "use client";
2
2
  "use client";
3
3
  import { cn as e } from "../../utils/cn.js";
4
- import { useAsheeConfig as t } from "../../libs/context.js";
5
- import { RADIUS_CLASS as n } from "../../shared/radius.js";
6
- import { resolveVariantClass as r } from "../../shared/variant.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
7
  import { resolveCascade as i, resolveClassKey as a, resolveRadiusKey as o } from "../../utils/resolve-token.js";
8
8
  import { Button as s } from "../button/Button.js";
9
- import { ChevronLeftIcon as c } from "../../icons/ChevronLeftIcon.js";
10
- import { ChevronRightIcon as l } from "../../icons/ChevronRightIcon.js";
11
- import { ArrowLeftIcon as u } from "../../icons/ArrowLeftIcon.js";
12
- import { Tooltip as ee } from "../tooltip/Tooltip.js";
9
+ import { ChevronRightIcon as c } from "../../icons/ChevronRightIcon.js";
10
+ import { ChevronLeftIcon as ee } from "../../icons/ChevronLeftIcon.js";
11
+ import { ArrowLeftIcon as l } from "../../icons/ArrowLeftIcon.js";
12
+ import { Tooltip as u } from "../tooltip/Tooltip.js";
13
13
  import { FALLBACK_SIDEBAR_CONFIG as d } from "./sidebar-config.js";
14
- import { SIDEBAR_COLLAPSED_WIDTH_CLASS as te, SIDEBAR_EXPANDED_WIDTH_CLASS as ne, SIDEBAR_HEADER_CLASS as f, SIDEBAR_ITEM_CLASS as re, SIDEBAR_SECTION_LABEL_CLASS as ie, SIDEBAR_VARIANT_CLASS as p } from "./sidebar-styles.js";
15
- import { useCallback as m, useEffect as ae, useMemo as h, useState as oe } from "react";
16
- import { Fragment as g, jsx as _, jsxs as v } from "react/jsx-runtime";
14
+ import { SIDEBAR_COLLAPSED_WIDTH_CLASS as te, SIDEBAR_EXPANDED_WIDTH_CLASS as ne, SIDEBAR_HEADER_CLASS as re, SIDEBAR_ITEM_CLASS as ie, SIDEBAR_SECTION_LABEL_CLASS as ae, SIDEBAR_VARIANT_CLASS as oe } from "./sidebar-styles.js";
15
+ import { useCallback as f, useEffect as p, useMemo as m, useState as se } from "react";
16
+ import { Fragment as h, jsx as g, jsxs as _ } from "react/jsx-runtime";
17
17
  //#region src/components/sidebar/Sidebar.tsx
18
- function y(e) {
18
+ function v(e) {
19
19
  return "items" in e && Array.isArray(e.items);
20
20
  }
21
- function b({ items: b, activeKey: se, onSelect: x, isCollapsed: S, onCollapseChange: C, title: w, onBack: T, backIcon: ce, userRole: E, footer: D, variant: le, size: ue, radius: de, options: O, showCollapseButton: k, collapsible: A, defaultCollapsed: j, tooltip: M, headerClassName: N, bodyClassName: P, sectionLabelClassName: F, footerClassName: I, anchorProps: L, link: R, className: z, style: B, ...V }) {
22
- let H = t(), U = H.components?.sidebar, W = i(A, U?.collapsible, void 0, d.collapsible), G = i(k, U?.showCollapseButton, void 0, d.showCollapseButton), fe = i(j, U?.defaultCollapsed, void 0, d.defaultCollapsed), [pe, K] = oe(S ?? fe);
23
- ae(() => {
24
- S !== void 0 && K(S);
25
- }, [S]);
26
- let q = S ?? pe, me = m(() => {
27
- if (!W) return;
28
- let e = !q;
29
- C ? C(e) : K(e);
21
+ function y({ items: y, activeKey: ce, onSelect: b, isCollapsed: x, onCollapseChange: S, title: C, onBack: w, backIcon: le, userRole: T, footer: E, variant: ue, size: de, radius: fe, options: D, showCollapseButton: O, collapsible: k, defaultCollapsed: A, tooltip: j, headerClassName: M, bodyClassName: N, sectionLabelClassName: P, footerClassName: F, anchorProps: I, link: L, className: R, style: z, ...B }) {
22
+ let V = r(), H = V.components?.sidebar, U = i(k, H?.collapsible, void 0, d.collapsible), W = i(O, H?.showCollapseButton, void 0, d.showCollapseButton), pe = i(A, H?.defaultCollapsed, void 0, d.defaultCollapsed), [me, G] = se(x ?? pe);
23
+ p(() => {
24
+ x !== void 0 && G(x);
25
+ }, [x]);
26
+ let K = x ?? me, he = f(() => {
27
+ if (!U) return;
28
+ let e = !K;
29
+ x === void 0 && G(e), S?.(e);
30
30
  }, [
31
- q,
32
- C,
33
- W
34
- ]), J = i(ue, U?.size, void 0, d.size), he = i(le, U?.variant, void 0, d.variant), Y = (e) => e === "full" ? "xl" : e, ge = o(Y(de), Y(U?.radius), H.defaultRadius, d.radius), X = o(Y(O?.radius), Y(U?.options?.radius), H.defaultRadius, d.options.radius), Z = i(O?.inactive?.variant, U?.options?.inactive?.variant, H.defaultVariant, d.options.inactive.variant), _e = i(O?.inactive?.color, U?.options?.inactive?.color, void 0, d.options.inactive.color), ve = i(O?.active?.variant, U?.options?.active?.variant, H.defaultVariant, d.options.active.variant), ye = i(O?.active?.color, U?.options?.active?.color, H.defaultColor, d.options.active.color), be = r(ve, ye), xe = r(Z, _e), Se = i(M?.show, U?.tooltip?.show, void 0, d.tooltip.show), Ce = i(M?.placement, U?.tooltip?.placement, void 0, d.tooltip.placement), we = i(M?.variant, U?.tooltip?.variant, void 0, d.tooltip.variant), Te = i(M?.color, U?.tooltip?.color, void 0, d.tooltip.color), Q = b, $ = h(() => {
31
+ K,
32
+ x,
33
+ S,
34
+ U
35
+ ]), q = i(de, H?.size, void 0, d.size), ge = i(ue, H?.variant, void 0, d.variant), J = (e) => e === "full" ? "xl" : e, _e = o(J(fe), J(H?.radius), V.defaultRadius, d.radius), Y = o(J(D?.radius), J(H?.options?.radius), V.defaultRadius, d.options.radius), X = i(D?.inactive?.variant, H?.options?.inactive?.variant, V.defaultVariant, d.options.inactive.variant), ve = i(D?.inactive?.color, H?.options?.inactive?.color, void 0, d.options.inactive.color), ye = i(D?.active?.variant, H?.options?.active?.variant, V.defaultVariant, d.options.active.variant), be = i(D?.active?.color, H?.options?.active?.color, V.defaultColor, d.options.active.color), xe = n(ye, be), Se = n(X, ve), Ce = i(j?.show, H?.tooltip?.show, void 0, d.tooltip.show), we = i(j?.placement, H?.tooltip?.placement, void 0, d.tooltip.placement), Z = i(j?.variant, H?.tooltip?.variant, void 0, d.tooltip.variant), Te = i(j?.color, H?.tooltip?.color, void 0, d.tooltip.color), Q = y, $ = m(() => {
35
36
  if (!Q) return [];
36
37
  let e = Q[0];
37
- return e ? y(e) ? Q : [{
38
+ return e ? v(e) ? Q : [{
38
39
  id: "__root",
39
40
  label: void 0,
40
41
  items: Q
41
42
  }] : [];
42
- }, [Q]), Ee = h(() => $.filter((e) => !e.roles || e.roles.length === 0 ? !0 : E ? e.roles.includes(E) : !1).map((e) => ({
43
+ }, [Q]), Ee = m(() => $.filter((e) => !e.roles || e.roles.length === 0 ? !0 : T ? e.roles.includes(T) : !1).map((e) => ({
43
44
  ...e,
44
- items: e.items?.filter((e) => !e.roles || e.roles.length === 0 ? !0 : E ? e.roles.includes(E) : !1)
45
- })).filter((e) => e.items && e.items.length > 0), [$, E]), De = m((e, t) => {
45
+ items: e.items?.filter((e) => !e.roles || e.roles.length === 0 ? !0 : T ? e.roles.includes(T) : !1)
46
+ })).filter((e) => e.items && e.items.length > 0), [$, T]), De = f((e, t) => {
46
47
  if (t.disabled) {
47
48
  e.preventDefault();
48
49
  return;
49
50
  }
50
- x?.(t);
51
- }, [x]), Oe = q ? te[J] : ne[J], ke = (t) => {
52
- let r = t.id === se, i = e("w-full flex items-center gap-3 transition-all truncate no-underline", re[J], q ? "justify-center px-0" : "justify-start", r && "font-medium", r ? be : xe, t.disabled && "opacity-50 cursor-not-allowed pointer-events-none", a(Z === "underlined" ? "none" : X, n, d.options.radius), O?.itemClassName), o = R?.component || "a", s = {
53
- href: t.disabled ? void 0 : t.href,
54
- target: t.target,
55
- rel: t.rel,
56
- onClick: (e) => De(e, t),
51
+ b?.(t);
52
+ }, [b]), Oe = K ? te[q] : ne[q], ke = (n) => {
53
+ let r = n.id === ce, i = e("w-full flex items-center gap-3 transition-all truncate no-underline", ie[q], K ? "justify-center px-0" : "justify-start", r && "font-medium", r ? xe : Se, n.disabled && "opacity-50 cursor-not-allowed pointer-events-none", a(X === "underlined" ? "none" : Y, t, d.options.radius), D?.itemClassName), o = L?.component || "a", s = {
54
+ href: n.disabled ? void 0 : n.href,
55
+ target: n.target,
56
+ rel: n.rel,
57
+ "aria-current": r ? "page" : void 0,
58
+ onClick: (e) => De(e, n),
57
59
  className: i,
58
- ...L,
59
- ...R?.props ?? {}
60
- }, c = /* @__PURE__ */ v(o, {
60
+ ...I,
61
+ ...L?.props ?? {}
62
+ }, c = /* @__PURE__ */ _(o, {
61
63
  ...s,
62
- children: [t.icon && /* @__PURE__ */ _("span", {
63
- className: e("shrink-0 flex items-center justify-center", q && "w-full"),
64
- children: t.icon
65
- }), !q && /* @__PURE__ */ v(g, { children: [/* @__PURE__ */ _("span", {
64
+ children: [n.icon && /* @__PURE__ */ g("span", {
65
+ className: e("shrink-0 flex items-center justify-center", K && "w-full"),
66
+ children: n.icon
67
+ }), !K && /* @__PURE__ */ _(h, { children: [/* @__PURE__ */ g("span", {
66
68
  className: "truncate flex-1 text-left",
67
- children: t.label
68
- }), t.badge && /* @__PURE__ */ _("span", {
69
+ children: n.label
70
+ }), n.badge && /* @__PURE__ */ g("span", {
69
71
  className: "shrink-0",
70
- children: t.badge
72
+ children: n.badge
71
73
  })] })]
72
- }, String(t.id));
73
- return q && Se ? /* @__PURE__ */ _(ee, {
74
- content: t.label,
75
- placement: Ce,
76
- variant: we,
74
+ }, String(n.id));
75
+ return K && Ce ? /* @__PURE__ */ g(u, {
76
+ content: n.label,
77
+ placement: we,
78
+ variant: Z,
77
79
  color: Te,
78
- radius: X,
80
+ radius: Y,
79
81
  children: c
80
- }, String(t.id)) : c;
81
- }, Ae = (t) => !t.items || t.items.length === 0 ? null : /* @__PURE__ */ v("div", {
82
+ }, String(n.id)) : c;
83
+ }, Ae = (t) => !t.items || t.items.length === 0 ? null : /* @__PURE__ */ _("div", {
82
84
  className: "flex flex-col gap-0.5",
83
- children: [!q && t.label && /* @__PURE__ */ _("div", {
84
- className: e("text-foreground/70 font-medium uppercase tracking-wider truncate", ie[J], F),
85
+ children: [!K && t.label && /* @__PURE__ */ g("div", {
86
+ className: e("text-foreground/70 font-medium uppercase tracking-wider truncate", ae[q], P),
85
87
  children: t.label
86
88
  }), t.items.map(ke)]
87
89
  }, String(t.id));
88
- return /* @__PURE__ */ v("aside", {
89
- className: e("h-full flex flex-col transition-all duration-200 select-none shrink-0", Oe, p[he], a(ge, n, d.radius), z),
90
- style: B,
91
- ...V,
90
+ return /* @__PURE__ */ _("aside", {
91
+ className: e("h-full flex flex-col transition-all duration-200 select-none shrink-0", Oe, oe[ge], a(_e, t, d.radius), R),
92
+ style: z,
93
+ ...B,
92
94
  children: [
93
- (T || w) && /* @__PURE__ */ v("div", {
94
- className: e("flex items-center gap-3 border-b border-border border-dashed shrink-0", f[J], q && "justify-center px-0", N),
95
- children: [T && /* @__PURE__ */ _(s, {
95
+ (w || C) && /* @__PURE__ */ _("div", {
96
+ className: e("flex items-center gap-3 border-b border-border border-dashed shrink-0", re[q], K && "justify-center px-0", M),
97
+ children: [w && /* @__PURE__ */ g(s, {
96
98
  icon: !0,
97
99
  "aria-label": "Go back",
98
- variant: Z,
100
+ variant: X,
99
101
  color: "secondary",
100
- size: J,
101
- radius: X,
102
- onClick: T,
102
+ size: q,
103
+ radius: Y,
104
+ onClick: w,
103
105
  className: "shrink-0",
104
- children: /* @__PURE__ */ _("span", {
106
+ children: /* @__PURE__ */ g("span", {
105
107
  className: e("flex items-center justify-center transition-transform duration-200"),
106
- children: ce ?? /* @__PURE__ */ _(u, { className: "size-4" })
108
+ children: le ?? /* @__PURE__ */ g(l, { className: "size-4" })
107
109
  })
108
- }), !q && w && /* @__PURE__ */ _("span", {
110
+ }), !K && C && /* @__PURE__ */ g("span", {
109
111
  className: "font-semibold text-foreground truncate tracking-tight transition-opacity duration-200",
110
- children: w
112
+ children: C
111
113
  })]
112
114
  }),
113
- /* @__PURE__ */ _("nav", {
114
- className: e("flex-1 overflow-y-auto py-3 px-2 flex flex-col gap-3 scrollable-hidden", P),
115
+ /* @__PURE__ */ g("nav", {
116
+ className: e("flex-1 overflow-y-auto py-3 px-2 flex flex-col gap-3 scrollable-hidden", N),
115
117
  children: Ee.map(Ae)
116
118
  }),
117
- G && W && /* @__PURE__ */ v("div", {
118
- className: e("border-t border-border shrink-0", q ? "p-2" : "p-3", I),
119
- children: [!q && D && /* @__PURE__ */ _("div", {
119
+ W && U && /* @__PURE__ */ _("div", {
120
+ className: e("border-t border-border shrink-0", K ? "p-2" : "p-3", F),
121
+ children: [!K && E && /* @__PURE__ */ g("div", {
120
122
  className: "mb-2",
121
- children: D
122
- }), /* @__PURE__ */ _(s, {
123
+ children: E
124
+ }), /* @__PURE__ */ g(s, {
123
125
  icon: !0,
124
- "aria-label": q ? "Expand sidebar" : "Collapse sidebar",
125
- variant: Z,
126
+ "aria-label": K ? "Expand sidebar" : "Collapse sidebar",
127
+ variant: X,
126
128
  color: "secondary",
127
- size: J,
128
- radius: X,
129
- onClick: me,
130
- className: e("w-full", q ? "justify-center px-0" : "justify-start"),
131
- children: /* @__PURE__ */ _("span", {
129
+ size: q,
130
+ radius: Y,
131
+ onClick: he,
132
+ className: e("w-full", K ? "justify-center px-0" : "justify-start"),
133
+ children: /* @__PURE__ */ g("span", {
132
134
  className: "flex items-center gap-2",
133
- children: q ? /* @__PURE__ */ _(l, { className: "size-4" }) : /* @__PURE__ */ v(g, { children: [/* @__PURE__ */ _(c, { className: "size-4" }), /* @__PURE__ */ _("span", {
135
+ children: K ? /* @__PURE__ */ g(c, { className: "size-4" }) : /* @__PURE__ */ _(h, { children: [/* @__PURE__ */ g(ee, { className: "size-4" }), /* @__PURE__ */ g("span", {
134
136
  className: "text-sm",
135
137
  children: "Collapse"
136
138
  })] })
137
139
  })
138
140
  })]
139
141
  }),
140
- !G && D && /* @__PURE__ */ _("div", {
141
- className: e("border-t border-border shrink-0 p-3", I),
142
- children: D
142
+ !W && E && /* @__PURE__ */ g("div", {
143
+ className: e("border-t border-border shrink-0 p-3", F),
144
+ children: E
143
145
  })
144
146
  ]
145
147
  });
146
148
  }
147
- b.displayName = "Sidebar";
149
+ y.displayName = "Sidebar";
148
150
  //#endregion
149
- export { b as Sidebar };
151
+ export { y as Sidebar };
@@ -0,0 +1,65 @@
1
+ import { HTMLAttributes } from 'react';
2
+ import { SkeletonConfig } from './skeleton-config';
3
+ type BaseSkeletonProps = SkeletonConfig & Omit<HTMLAttributes<HTMLDivElement>, "color" | "children">;
4
+ /**
5
+ * Configuration options for the Skeleton component.
6
+ */
7
+ export interface SkeletonProps extends BaseSkeletonProps {
8
+ /**
9
+ * Whether the placeholder stands in for a region that is loading rather than
10
+ * appear as decoration.
11
+ *
12
+ * When true the placeholder becomes a labelled busy status, so assistive
13
+ * technology is told that loading is in progress. When false it is hidden
14
+ * from assistive technology, because a placeholder carries no information.
15
+ *
16
+ * @default false
17
+ */
18
+ isBusy?: boolean;
19
+ /**
20
+ * Text announced while the placeholder is a busy status.
21
+ *
22
+ * @default "Loading"
23
+ */
24
+ label?: string;
25
+ }
26
+ /**
27
+ * A loading placeholder.
28
+ *
29
+ * Skeleton renders a neutral surface that stands in for content while it
30
+ * loads. Size it with the standard layout classes, because it has no size axis
31
+ * of its own: `className="h-40 w-full"` is the intended usage.
32
+ *
33
+ * Two accessibility contracts hold here. A decorative placeholder is hidden
34
+ * from assistive technology, because it conveys nothing on its own. A
35
+ * placeholder marked as busy is exposed as a labelled status instead, so a
36
+ * consumer who needs the state announced gets it. Neither replaces a status
37
+ * announcement for a wait the consumer knows will be long: use the framework's
38
+ * notification or a status region for that.
39
+ *
40
+ * The shimmer is applied through the reduced-motion-safe variant, so it stops
41
+ * for a consumer who asked for less motion without any script running.
42
+ *
43
+ * @param props - Skeleton configuration options and div attributes.
44
+ * @param props.isBusy - Expose the placeholder as a labelled busy status. Defaults to false.
45
+ * @param props.label - Text announced while busy. Defaults to "Loading".
46
+ * @param props.radius - Corner rounding. Defaults to "sm".
47
+ * @param props.isAnimated - Whether the placeholder shimmers. Defaults to true.
48
+ * @param props.className - Extra classes applied last, which is where sizing belongs.
49
+ *
50
+ * @example
51
+ * ```tsx
52
+ * <Skeleton className="h-4 w-40" />
53
+ * ```
54
+ *
55
+ * @example
56
+ * ```tsx
57
+ * // The region is loading and the state should be announced.
58
+ * <Skeleton isBusy label="Loading invoices" className="h-4 w-full" />
59
+ * ```
60
+ *
61
+ * @see SkeletonConfig - The configuration type for component defaults.
62
+ */
63
+ export declare const Skeleton: import('react').ForwardRefExoticComponent<SkeletonProps & import('react').RefAttributes<HTMLDivElement>>;
64
+ export {};
65
+ //# sourceMappingURL=Skeleton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Skeleton.d.ts","sourceRoot":"","sources":["../../../src/components/skeleton/Skeleton.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EAAc,KAAK,cAAc,EAAE,MAAM,OAAO,CAAC;AAMxD,OAAO,EACL,KAAK,cAAc,EAEpB,MAAM,mBAAmB,CAAC;AAM3B,KAAK,iBAAiB,GAAG,cAAc,GACrC,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC,CAAC;AAE7D;;GAEG;AACH,MAAM,WAAW,aAAc,SAAQ,iBAAiB;IACtD;;;;;;;;;OASG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,eAAO,MAAM,QAAQ,0GAsDpB,CAAC"}
@@ -0,0 +1,29 @@
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 { useAsheeConfig as n } from "../../libs/context.js";
6
+ import { resolveCascade as r, resolveClassKey as i } from "../../utils/resolve-token.js";
7
+ import { FALLBACK_SKELETON_CONFIG as a } from "./skeleton-config.js";
8
+ import { SKELETON_BASE_CLASS as o } from "./skeleton-styles.js";
9
+ import { forwardRef as s } from "react";
10
+ import { jsx as c } from "react/jsx-runtime";
11
+ //#region src/components/skeleton/Skeleton.tsx
12
+ var l = s(({ radius: s, isAnimated: l, isBusy: u = !1, label: d = "Loading", className: f, ...p }, m) => {
13
+ let h = n(), g = h.components?.skeleton, _ = r(s, g?.radius, h.defaultRadius, a.radius), v = r(l, g?.isAnimated, void 0, a.isAnimated), y = i(_, t, a.radius);
14
+ return /* @__PURE__ */ c("div", {
15
+ ref: m,
16
+ role: u ? "status" : void 0,
17
+ "aria-busy": u ? !0 : void 0,
18
+ "aria-hidden": !u || void 0,
19
+ className: e(o, v && "motion-safe:animate-pulse", y, f),
20
+ ...p,
21
+ children: u && /* @__PURE__ */ c("span", {
22
+ className: "sr-only",
23
+ children: d
24
+ })
25
+ });
26
+ });
27
+ l.displayName = "Skeleton";
28
+ //#endregion
29
+ export { l as Skeleton };
@@ -0,0 +1,3 @@
1
+ export * from './Skeleton';
2
+ export * from './skeleton-config';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/skeleton/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from "./Skeleton.js";
2
+ export * from "./skeleton-config.js";
3
+ export * from "./skeleton-styles.js";
@@ -0,0 +1,40 @@
1
+ import { Radius } from '../../shared';
2
+ /**
3
+ * Theme configuration options for the Skeleton component.
4
+ *
5
+ * Set under `components.skeleton` in the AsheeUI config. Values feed the
6
+ * component-level fallback tier of the theme cascade.
7
+ */
8
+ export interface SkeletonConfig {
9
+ /**
10
+ * Corner rounding.
11
+ * Controls the border-radius of the placeholder.
12
+ *
13
+ * @default "sm"
14
+ */
15
+ radius?: Radius;
16
+ /**
17
+ * Whether the placeholder shimmers while it is visible.
18
+ * When true the animation is applied through a reduced-motion-safe class, so
19
+ * a consumer who asked for less motion sees a static placeholder.
20
+ *
21
+ * @default true
22
+ */
23
+ isAnimated?: boolean;
24
+ }
25
+ /**
26
+ * Default config values registered for the Skeleton component.
27
+ */
28
+ export declare const defaultSkeletonConfig: SkeletonConfig;
29
+ /**
30
+ * Hard fallback values used when no config tier provides a value.
31
+ * These values are used when instance props, component config,
32
+ * and global defaults are all undefined.
33
+ */
34
+ export declare const FALLBACK_SKELETON_CONFIG: Required<SkeletonConfig>;
35
+ declare module "../../libs/registry" {
36
+ interface ComponentTypeConfigRegistry {
37
+ skeleton: SkeletonConfig;
38
+ }
39
+ }
40
+ //# sourceMappingURL=skeleton-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skeleton-config.d.ts","sourceRoot":"","sources":["../../../src/components/skeleton/skeleton-config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAE3C;;;;;GAKG;AACH,MAAM,WAAW,cAAc;IAC7B;;;;;OAKG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;;;;OAMG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED;;GAEG;AACH,eAAO,MAAM,qBAAqB,EAAE,cAGnC,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,EAAE,QAAQ,CAAC,cAAc,CAGpD,CAAC;AAEX,OAAO,QAAQ,qBAAqB,CAAC;IACnC,UAAU,2BAA2B;QACnC,QAAQ,EAAE,cAAc,CAAC;KAC1B;CACF"}
@@ -0,0 +1,13 @@
1
+ "use client";
2
+ import { registerComponentDefaults as e } from "../../libs/registry.js";
3
+ //#region src/components/skeleton/skeleton-config.ts
4
+ var t = {
5
+ radius: "sm",
6
+ isAnimated: !0
7
+ }, n = {
8
+ radius: "sm",
9
+ isAnimated: !0
10
+ };
11
+ e("skeleton", t);
12
+ //#endregion
13
+ export { n as FALLBACK_SKELETON_CONFIG, t as defaultSkeletonConfig };
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Skeleton component styles for AsheeUI.
3
+ * This file provides the static classes the Skeleton component is built from.
4
+ */
5
+ /**
6
+ * Base classes for the placeholder surface.
7
+ * The surface colour resolves through the theme's secondary token, so the
8
+ * placeholder follows the active theme.
9
+ */
10
+ export declare const SKELETON_BASE_CLASS = "block h-4 w-full bg-secondary/60 select-none pointer-events-none";
11
+ /**
12
+ * The shimmer.
13
+ *
14
+ * It is applied through the `motion-safe` variant rather than from a script, so
15
+ * a consumer who asked for reduced motion sees a static placeholder and the
16
+ * media query decides before hydration.
17
+ */
18
+ export declare const SKELETON_ANIMATION_CLASS = "motion-safe:animate-pulse";
19
+ //# sourceMappingURL=skeleton-styles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skeleton-styles.d.ts","sourceRoot":"","sources":["../../../src/components/skeleton/skeleton-styles.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,qEACoC,CAAC;AAErE;;;;;;GAMG;AACH,eAAO,MAAM,wBAAwB,8BAA8B,CAAC"}
@@ -0,0 +1,5 @@
1
+ "use client";
2
+ //#region src/components/skeleton/skeleton-styles.ts
3
+ var e = "block h-4 w-full bg-secondary/60 select-none pointer-events-none", t = "motion-safe:animate-pulse";
4
+ //#endregion
5
+ export { t as SKELETON_ANIMATION_CLASS, e as SKELETON_BASE_CLASS };
@@ -1 +1 @@
1
- {"version":3,"file":"Switch.d.ts","sourceRoot":"","sources":["../../../src/components/switch/Switch.tsx"],"names":[],"mappings":"AAUA,OAAO,EACL,KAAK,WAAW,EAEhB,KAAK,mBAAmB,EAIzB,MAAM,OAAO,CAAC;AAWf,OAAO,EAA0B,KAAK,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAS5E,KAAK,eAAe,GAAG,IAAI,CAAC,YAAY,EAAE,QAAQ,CAAC,GACjD,IAAI,CACF,mBAAmB,CAAC,gBAAgB,CAAC,EACrC,MAAM,GAAG,UAAU,GAAG,UAAU,GAAG,OAAO,CAC3C,CAAC;AAEJ;;GAEG;AACH,MAAM,WAAW,WAAY,SAAQ,eAAe;IAClD;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IAEzB;;;OAGG;IACH,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;CAC7E;AAID;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AACH,eAAO,MAAM,MAAM,0GAqKlB,CAAC"}
1
+ {"version":3,"file":"Switch.d.ts","sourceRoot":"","sources":["../../../src/components/switch/Switch.tsx"],"names":[],"mappings":"AAUA,OAAO,EACL,KAAK,WAAW,EAEhB,KAAK,mBAAmB,EAIzB,MAAM,OAAO,CAAC;AAWf,OAAO,EAA0B,KAAK,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAS5E,KAAK,eAAe,GAAG,IAAI,CAAC,YAAY,EAAE,QAAQ,CAAC,GACjD,IAAI,CACF,mBAAmB,CAAC,gBAAgB,CAAC,EACrC,MAAM,GAAG,UAAU,GAAG,UAAU,GAAG,OAAO,CAC3C,CAAC;AAEJ;;GAEG;AACH,MAAM,WAAW,WAAY,SAAQ,eAAe;IAClD;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IAEzB;;;OAGG;IACH,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;CAC7E;AAID;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AACH,eAAO,MAAM,MAAM,0GA4KlB,CAAC"}
@@ -1,9 +1,9 @@
1
1
  "use client";
2
2
  "use client";
3
3
  import { cn as e } from "../../utils/cn.js";
4
- import { useAsheeConfig as t } from "../../libs/context.js";
5
- import { RADIUS_CLASS as n } from "../../shared/radius.js";
6
- import { resolveVariantClass as r } from "../../shared/variant.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
7
  import { resolveCascade as i, resolveClassKey as a, resolveRadiusKey as o } from "../../utils/resolve-token.js";
8
8
  import { FieldShell as s } from "../field/FieldShell.js";
9
9
  import { FALLBACK_SWITCH_CONFIG as c } from "./switch-config.js";
@@ -12,7 +12,7 @@ import { forwardRef as f, useCallback as p, useId as m, useState as h } from "re
12
12
  import { jsx as g, jsxs as _ } from "react/jsx-runtime";
13
13
  //#region src/components/switch/Switch.tsx
14
14
  var v = f(({ size: f, color: v, radius: y, label: b, labelAlign: x, description: S, required: C, isLoading: w, id: T, className: E, style: D, disabled: O, checked: k, defaultChecked: A = !1, onChange: j, ...M }, N) => {
15
- let P = t(), F = P.components?.switch, I = m(), L = T ?? I, [R, z] = h(A), B = k ?? R, V = i(f, F?.size, void 0, c.size), H = i(v, F?.color, P.defaultColor, c.color), U = o(y, F?.radius, void 0, c.radius), W = i(x, F?.labelAlign, void 0, c.labelAlign), G = a(V, d, c.size), K = a(V, l, c.size), q = a(V, u, c.size), J = a(U, n, c.radius), Y = r("solid", H), X = O || w, Z = p((e) => {
15
+ let P = r(), F = P.components?.switch, I = m(), L = T ?? I, [R, z] = h(A), B = k ?? R, V = i(f, F?.size, void 0, c.size), H = i(v, F?.color, P.defaultColor, c.color), U = o(y, F?.radius, void 0, c.radius), W = i(x, F?.labelAlign, void 0, c.labelAlign), G = a(V, d, c.size), K = a(V, l, c.size), q = a(V, u, c.size), J = a(U, t, c.radius), Y = n("solid", H), X = O || w, Z = S ? `${L}-description` : void 0, Q = p((e) => {
16
16
  if (X) return;
17
17
  let t = e.target.checked;
18
18
  k === void 0 && z(t), j?.(t, e);
@@ -26,6 +26,7 @@ var v = f(({ size: f, color: v, radius: y, label: b, labelAlign: x, description:
26
26
  label: b,
27
27
  labelAlign: W,
28
28
  description: S,
29
+ descriptionId: Z,
29
30
  required: C,
30
31
  isLoading: w,
31
32
  children: /* @__PURE__ */ g("label", {
@@ -44,7 +45,8 @@ var v = f(({ size: f, color: v, radius: y, label: b, labelAlign: x, description:
44
45
  required: C,
45
46
  "aria-checked": B,
46
47
  "aria-busy": w,
47
- onChange: Z,
48
+ "aria-describedby": Z,
49
+ onChange: Q,
48
50
  className: "sr-only peer",
49
51
  ...M
50
52
  }),
@@ -1,8 +1,8 @@
1
1
  "use client";
2
2
  "use client";
3
3
  import { cn as e } from "../../utils/cn.js";
4
- import { useAsheeConfig as t } from "../../libs/context.js";
5
- import { RADIUS_CLASS as n } from "../../shared/radius.js";
4
+ import { RADIUS_CLASS as t } from "../../shared/radius.js";
5
+ import { useAsheeConfig as n } from "../../libs/context.js";
6
6
  import { resolveCascade as r, resolveClassKey as i, resolveRadiusKey as a } from "../../utils/resolve-token.js";
7
7
  import { FALLBACK_TABLE_CONFIG as o } from "./table-config.js";
8
8
  import { TABLE_CELL_PADDING_X_CLASS as s, TABLE_CELL_PADDING_Y_CLASS as c, TABLE_COLOR_STYLES as l, TABLE_FONT_CLASS as u, TABLE_HEADER_FONT_CLASS as d } from "./table-styles.js";
@@ -10,7 +10,7 @@ import { useCallback as f } from "react";
10
10
  import { jsx as p, jsxs as m } from "react/jsx-runtime";
11
11
  //#region src/components/table/Table.tsx
12
12
  function h({ data: h = [], columns: g = [], gridClasses: _, rowKeyAccessor: v, handleClick: y, handleDoubleClick: b, selectedRowKey: x, emptyMessage: S = "No items available", isClickable: C, variant: w, color: T, size: E, radius: D, headerClassName: O, rowClassName: k, cellClassName: A, className: j, style: M, ...N }) {
13
- let P = t(), F = P.components?.table, I = r(E, F?.size, void 0, o.size), L = r(w, F?.variant, void 0, o.variant), R = r(T, F?.color, P.defaultColor, o.color), z = (e) => e === "full" ? "xl" : e, B = a(z(D), z(F?.radius), P.defaultRadius, o.radius), V = i(I, c, o.size), H = i(I, s, o.size), U = i(I, u, o.size), W = i(I, d, o.size), G = i(B, n, o.radius), K = l[R] ?? l.primary, q = f((e, t) => {
13
+ let P = n(), F = P.components?.table, I = r(E, F?.size, void 0, o.size), L = r(w, F?.variant, void 0, o.variant), R = r(T, F?.color, P.defaultColor, o.color), z = (e) => e === "full" ? "xl" : e, B = a(z(D), z(F?.radius), P.defaultRadius, o.radius), V = i(I, c, o.size), H = i(I, s, o.size), U = i(I, u, o.size), W = i(I, d, o.size), G = i(B, t, o.radius), K = l[R] ?? l.primary, q = f((e, t) => {
14
14
  if (v) try {
15
15
  return v(e);
16
16
  } catch {
@@ -1,8 +1,8 @@
1
1
  "use client";
2
2
  "use client";
3
3
  import { cn as e } from "../../utils/cn.js";
4
- import { useAsheeConfig as t } from "../../libs/context.js";
5
- import { RADIUS_CLASS as n } from "../../shared/radius.js";
4
+ import { RADIUS_CLASS as t } from "../../shared/radius.js";
5
+ import { useAsheeConfig as n } from "../../libs/context.js";
6
6
  import { resolveCascade as r, resolveClassKey as i, resolveRadiusKey as a } from "../../utils/resolve-token.js";
7
7
  import { Button as o } from "../button/Button.js";
8
8
  import { FALLBACK_TABS_CONFIG as s } from "./tabs-config.js";
@@ -11,7 +11,7 @@ import { forwardRef as d, useCallback as f, useId as p, useMemo as m, useRef as
11
11
  import { jsx as _, jsxs as v } from "react/jsx-runtime";
12
12
  //#region src/components/tabs/Tabs.tsx
13
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 = t(), 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, n, s.radius), Q = f((e) => {
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
15
  L || I(e), x?.(e);
16
16
  }, [L, x]), ne = (e, t) => {
17
17
  if (d.filter((e) => !e.disabled).length === 0) return;