@ds-mo/ui 0.2.3 → 0.3.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 (217) hide show
  1. package/dist/components/Accordion/Accordion.d.ts +29 -0
  2. package/dist/components/Accordion/Accordion.d.ts.map +1 -0
  3. package/dist/components/Accordion/index.d.ts +3 -0
  4. package/dist/components/Accordion/index.d.ts.map +1 -0
  5. package/dist/components/Badge/Badge.d.ts +18 -0
  6. package/dist/components/Badge/Badge.d.ts.map +1 -0
  7. package/dist/components/Badge/index.d.ts +3 -0
  8. package/dist/components/Badge/index.d.ts.map +1 -0
  9. package/dist/components/Banner/Banner.d.ts +16 -0
  10. package/dist/components/Banner/Banner.d.ts.map +1 -0
  11. package/dist/components/Banner/index.d.ts +3 -0
  12. package/dist/components/Banner/index.d.ts.map +1 -0
  13. package/dist/components/Breadcrumb/Breadcrumb.d.ts +15 -0
  14. package/dist/components/Breadcrumb/Breadcrumb.d.ts.map +1 -0
  15. package/dist/components/Breadcrumb/index.d.ts +3 -0
  16. package/dist/components/Breadcrumb/index.d.ts.map +1 -0
  17. package/dist/components/Button/Button.d.ts +85 -0
  18. package/dist/components/Button/Button.d.ts.map +1 -0
  19. package/dist/components/Button/index.d.ts +3 -0
  20. package/dist/components/Button/index.d.ts.map +1 -0
  21. package/dist/components/ButtonGroup/ButtonGroup.d.ts +26 -0
  22. package/dist/components/ButtonGroup/ButtonGroup.d.ts.map +1 -0
  23. package/dist/components/ButtonGroup/index.d.ts +3 -0
  24. package/dist/components/ButtonGroup/index.d.ts.map +1 -0
  25. package/dist/components/Card/Card.d.ts +20 -0
  26. package/dist/components/Card/Card.d.ts.map +1 -0
  27. package/dist/components/Card/index.d.ts +3 -0
  28. package/dist/components/Card/index.d.ts.map +1 -0
  29. package/dist/components/Checkbox/Checkbox.d.ts +18 -0
  30. package/dist/components/Checkbox/Checkbox.d.ts.map +1 -0
  31. package/dist/components/Checkbox/index.d.ts +3 -0
  32. package/dist/components/Checkbox/index.d.ts.map +1 -0
  33. package/dist/components/Divider/Divider.d.ts +9 -0
  34. package/dist/components/Divider/Divider.d.ts.map +1 -0
  35. package/dist/components/Divider/index.d.ts +3 -0
  36. package/dist/components/Divider/index.d.ts.map +1 -0
  37. package/dist/components/EmptyState/EmptyState.d.ts +9 -0
  38. package/dist/components/EmptyState/EmptyState.d.ts.map +1 -0
  39. package/dist/components/EmptyState/index.d.ts +3 -0
  40. package/dist/components/EmptyState/index.d.ts.map +1 -0
  41. package/dist/components/ErrorBoundary/ErrorBoundary.d.ts +18 -0
  42. package/dist/components/ErrorBoundary/ErrorBoundary.d.ts.map +1 -0
  43. package/dist/components/ErrorBoundary/index.d.ts +3 -0
  44. package/dist/components/ErrorBoundary/index.d.ts.map +1 -0
  45. package/dist/components/Fade/Fade.d.ts +11 -0
  46. package/dist/components/Fade/Fade.d.ts.map +1 -0
  47. package/dist/components/Fade/index.d.ts +3 -0
  48. package/dist/components/Fade/index.d.ts.map +1 -0
  49. package/dist/components/Field/Field.d.ts +9 -0
  50. package/dist/components/Field/Field.d.ts.map +1 -0
  51. package/dist/components/Field/index.d.ts +3 -0
  52. package/dist/components/Field/index.d.ts.map +1 -0
  53. package/dist/components/Header/Header.d.ts +12 -0
  54. package/dist/components/Header/Header.d.ts.map +1 -0
  55. package/dist/components/Header/index.d.ts +3 -0
  56. package/dist/components/Header/index.d.ts.map +1 -0
  57. package/dist/components/Input/Input.d.ts +27 -0
  58. package/dist/components/Input/Input.d.ts.map +1 -0
  59. package/dist/components/Input/index.d.ts +3 -0
  60. package/dist/components/Input/index.d.ts.map +1 -0
  61. package/dist/components/LabelWrap/LabelWrap.d.ts +27 -0
  62. package/dist/components/LabelWrap/LabelWrap.d.ts.map +1 -0
  63. package/dist/components/LabelWrap/index.d.ts +2 -0
  64. package/dist/components/LabelWrap/index.d.ts.map +1 -0
  65. package/dist/components/Loader/Loader.d.ts +33 -0
  66. package/dist/components/Loader/Loader.d.ts.map +1 -0
  67. package/dist/components/Loader/index.d.ts +3 -0
  68. package/dist/components/Loader/index.d.ts.map +1 -0
  69. package/dist/components/Menu/DestructiveMenuItem.d.ts +12 -0
  70. package/dist/components/Menu/DestructiveMenuItem.d.ts.map +1 -0
  71. package/dist/components/Menu/Menu.d.ts +55 -0
  72. package/dist/components/Menu/Menu.d.ts.map +1 -0
  73. package/dist/components/Menu/MenuItem.d.ts +33 -0
  74. package/dist/components/Menu/MenuItem.d.ts.map +1 -0
  75. package/dist/components/Menu/index.d.ts +7 -0
  76. package/dist/components/Menu/index.d.ts.map +1 -0
  77. package/dist/components/Modal/Modal.d.ts +15 -0
  78. package/dist/components/Modal/Modal.d.ts.map +1 -0
  79. package/dist/components/Modal/index.d.ts +3 -0
  80. package/dist/components/Modal/index.d.ts.map +1 -0
  81. package/dist/components/Pagination/Pagination.d.ts +16 -0
  82. package/dist/components/Pagination/Pagination.d.ts.map +1 -0
  83. package/dist/components/Pagination/index.d.ts +3 -0
  84. package/dist/components/Pagination/index.d.ts.map +1 -0
  85. package/dist/components/Radio/Radio.d.ts +35 -0
  86. package/dist/components/Radio/Radio.d.ts.map +1 -0
  87. package/dist/components/Radio/index.d.ts +3 -0
  88. package/dist/components/Radio/index.d.ts.map +1 -0
  89. package/dist/components/Scrollbar/Scrollbar.d.ts +13 -0
  90. package/dist/components/Scrollbar/Scrollbar.d.ts.map +1 -0
  91. package/dist/components/Scrollbar/index.d.ts +3 -0
  92. package/dist/components/Scrollbar/index.d.ts.map +1 -0
  93. package/dist/components/Select/Select.d.ts +22 -0
  94. package/dist/components/Select/Select.d.ts.map +1 -0
  95. package/dist/components/Select/index.d.ts +3 -0
  96. package/dist/components/Select/index.d.ts.map +1 -0
  97. package/dist/components/Sidebar/Sidebar.d.ts +15 -0
  98. package/dist/components/Sidebar/Sidebar.d.ts.map +1 -0
  99. package/dist/components/Sidebar/SidebarItem.d.ts +14 -0
  100. package/dist/components/Sidebar/SidebarItem.d.ts.map +1 -0
  101. package/dist/components/Sidebar/SidebarSection.d.ts +10 -0
  102. package/dist/components/Sidebar/SidebarSection.d.ts.map +1 -0
  103. package/dist/components/Sidebar/index.d.ts +7 -0
  104. package/dist/components/Sidebar/index.d.ts.map +1 -0
  105. package/dist/components/Skeleton/Skeleton.d.ts +17 -0
  106. package/dist/components/Skeleton/Skeleton.d.ts.map +1 -0
  107. package/dist/components/Skeleton/index.d.ts +3 -0
  108. package/dist/components/Skeleton/index.d.ts.map +1 -0
  109. package/dist/components/Slider/Slider.d.ts +16 -0
  110. package/dist/components/Slider/Slider.d.ts.map +1 -0
  111. package/dist/components/Slider/index.d.ts +3 -0
  112. package/dist/components/Slider/index.d.ts.map +1 -0
  113. package/dist/components/Surface/Surface.d.ts +59 -0
  114. package/dist/components/Surface/Surface.d.ts.map +1 -0
  115. package/dist/components/Surface/index.d.ts +3 -0
  116. package/dist/components/Surface/index.d.ts.map +1 -0
  117. package/dist/components/Tab/Tab.d.ts +21 -0
  118. package/dist/components/Tab/Tab.d.ts.map +1 -0
  119. package/dist/components/Tab/index.d.ts +3 -0
  120. package/dist/components/Tab/index.d.ts.map +1 -0
  121. package/dist/components/TabGroup/TabGroup.d.ts +26 -0
  122. package/dist/components/TabGroup/TabGroup.d.ts.map +1 -0
  123. package/dist/components/TabGroup/index.d.ts +3 -0
  124. package/dist/components/TabGroup/index.d.ts.map +1 -0
  125. package/dist/components/Table/Table.d.ts +46 -0
  126. package/dist/components/Table/Table.d.ts.map +1 -0
  127. package/dist/components/Table/index.d.ts +3 -0
  128. package/dist/components/Table/index.d.ts.map +1 -0
  129. package/dist/components/Tag/Tag.d.ts +38 -0
  130. package/dist/components/Tag/Tag.d.ts.map +1 -0
  131. package/dist/components/Tag/index.d.ts +3 -0
  132. package/dist/components/Tag/index.d.ts.map +1 -0
  133. package/dist/components/Text/Text.d.ts +41 -0
  134. package/dist/components/Text/Text.d.ts.map +1 -0
  135. package/dist/components/Text/index.d.ts +3 -0
  136. package/dist/components/Text/index.d.ts.map +1 -0
  137. package/dist/components/Toast/Toast.d.ts +33 -0
  138. package/dist/components/Toast/Toast.d.ts.map +1 -0
  139. package/dist/components/Toast/index.d.ts +3 -0
  140. package/dist/components/Toast/index.d.ts.map +1 -0
  141. package/dist/components/Toggle/Toggle.d.ts +17 -0
  142. package/dist/components/Toggle/Toggle.d.ts.map +1 -0
  143. package/dist/components/Toggle/index.d.ts +3 -0
  144. package/dist/components/Toggle/index.d.ts.map +1 -0
  145. package/dist/components/ToggleButton/ToggleButton.d.ts +35 -0
  146. package/dist/components/ToggleButton/ToggleButton.d.ts.map +1 -0
  147. package/dist/components/ToggleButton/index.d.ts +3 -0
  148. package/dist/components/ToggleButton/index.d.ts.map +1 -0
  149. package/dist/components/ToggleButtonGroup/ToggleButtonGroup.d.ts +24 -0
  150. package/dist/components/ToggleButtonGroup/ToggleButtonGroup.d.ts.map +1 -0
  151. package/dist/components/ToggleButtonGroup/index.d.ts +3 -0
  152. package/dist/components/ToggleButtonGroup/index.d.ts.map +1 -0
  153. package/dist/components/Tooltip/Tooltip.d.ts +17 -0
  154. package/dist/components/Tooltip/Tooltip.d.ts.map +1 -0
  155. package/dist/components/Tooltip/index.d.ts +3 -0
  156. package/dist/components/Tooltip/index.d.ts.map +1 -0
  157. package/dist/index.css +1 -1
  158. package/dist/index.d.ts +82 -969
  159. package/dist/index.d.ts.map +1 -0
  160. package/dist/index.js +1641 -1165
  161. package/dist/index.js.map +1 -1
  162. package/dist/r/badge.json +1 -1
  163. package/dist/r/banner.json +2 -2
  164. package/dist/r/loader.json +2 -2
  165. package/dist/r/menu.json +4 -4
  166. package/dist/r/select.json +1 -1
  167. package/dist/r/tab-group.json +1 -1
  168. package/dist/r/tab.json +1 -1
  169. package/dist/r/toast.json +1 -1
  170. package/dist/r/toggle.json +1 -1
  171. package/dist/types/icons.d.ts +14 -0
  172. package/dist/types/icons.d.ts.map +1 -0
  173. package/dist/types/index.d.ts +2 -0
  174. package/dist/types/index.d.ts.map +1 -0
  175. package/dist/utils/cn.d.ts +5 -0
  176. package/dist/utils/cn.d.ts.map +1 -0
  177. package/dist/utils/css-tokens.d.ts +11 -0
  178. package/dist/utils/css-tokens.d.ts.map +1 -0
  179. package/package.json +17 -12
  180. package/src/components/Accordion/Accordion.tsx +10 -1
  181. package/src/components/Badge/Badge.stories.tsx +32 -0
  182. package/src/components/Badge/Badge.tsx +19 -2
  183. package/src/components/Banner/Banner.module.css +38 -0
  184. package/src/components/Banner/Banner.tsx +34 -4
  185. package/src/components/Button/Button.mdx +143 -0
  186. package/src/components/Button/Button.stories.tsx +1 -1
  187. package/src/components/Button/Button.tsx +42 -11
  188. package/src/components/Checkbox/Checkbox.tsx +6 -3
  189. package/src/components/Field/Field.tsx +20 -7
  190. package/src/components/Input/Input.module.css +21 -0
  191. package/src/components/Input/Input.tsx +62 -21
  192. package/src/components/Loader/Loader.module.css +17 -0
  193. package/src/components/Loader/Loader.stories.tsx +9 -0
  194. package/src/components/Loader/Loader.tsx +42 -20
  195. package/src/components/Menu/DestructiveMenuItem.tsx +59 -6
  196. package/src/components/Menu/Menu.tsx +160 -11
  197. package/src/components/Menu/MenuItem.module.css +2 -0
  198. package/src/components/Menu/MenuItem.tsx +48 -5
  199. package/src/components/Modal/Modal.tsx +81 -4
  200. package/src/components/Radio/Radio.tsx +117 -29
  201. package/src/components/Scrollbar/Scrollbar.module.css +5 -0
  202. package/src/components/Scrollbar/Scrollbar.tsx +18 -4
  203. package/src/components/Select/Select.tsx +139 -9
  204. package/src/components/Sidebar/Sidebar.module.css +7 -0
  205. package/src/components/Sidebar/Sidebar.tsx +102 -4
  206. package/src/components/Slider/Slider.module.css +5 -1
  207. package/src/components/Slider/Slider.stories.tsx +25 -0
  208. package/src/components/Slider/Slider.tsx +4 -4
  209. package/src/components/Tab/Tab.tsx +32 -2
  210. package/src/components/TabGroup/TabGroup.stories.tsx +46 -15
  211. package/src/components/TabGroup/TabGroup.tsx +77 -10
  212. package/src/components/Table/Table.module.css +10 -0
  213. package/src/components/Table/Table.tsx +58 -29
  214. package/src/components/Tag/Tag.tsx +5 -2
  215. package/src/components/Toast/Toast.tsx +44 -8
  216. package/src/components/Toggle/Toggle.tsx +23 -22
  217. package/src/components/Tooltip/Tooltip.tsx +42 -6
@@ -0,0 +1,33 @@
1
+ export interface LoaderProps {
2
+ /**
3
+ * Render size in px. Designed at 16px (r=6, strokeWidth=1).
4
+ * Stroke weight scales proportionally with size — same behaviour as icons.
5
+ * Defaults to 20.
6
+ */
7
+ size?: number;
8
+ className?: string;
9
+ /**
10
+ * Accessible label announced by assistive tech when the Loader is used
11
+ * standalone. When provided, the spinner is wrapped in a live region
12
+ * (`role="status"`, `aria-live="polite"`) and the label is rendered
13
+ * visually-hidden so screen readers announce it on mount.
14
+ *
15
+ * Omit when the Loader is rendered inside a host that already conveys
16
+ * busy state (e.g. a Button with `aria-busy`) — the spinner stays
17
+ * `aria-hidden` to avoid double-announcing.
18
+ */
19
+ label?: string;
20
+ }
21
+ /**
22
+ * Placeholder spinner component. Will be replaced with a full Loader
23
+ * component once motion/brand specs are finalised.
24
+ *
25
+ * Designed at 16×16 viewBox so it matches the icon grid:
26
+ * - r=5 → 10px circle in a 16px box (3px optical padding each side)
27
+ * - strokeWidth=1 at native size → scales to 1.25px at 20px, 1.5px at 24px
28
+ */
29
+ export declare const Loader: {
30
+ ({ size, className, label }: LoaderProps): import("react/jsx-runtime").JSX.Element;
31
+ displayName: string;
32
+ };
33
+ //# sourceMappingURL=Loader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Loader.d.ts","sourceRoot":"","sources":["../../../src/components/Loader/Loader.tsx"],"names":[],"mappings":"AAGA,MAAM,WAAW,WAAW;IAC1B;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;;;;;OASG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,MAAM;iCAAqC,WAAW;;CA8BlE,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { Loader } from './Loader';
2
+ export type { LoaderProps } from './Loader';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Loader/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { default as React } from 'react';
2
+ export interface DestructiveMenuItemProps {
3
+ label: string;
4
+ onClick: () => void;
5
+ holdDuration?: number;
6
+ subtext?: string;
7
+ tabIndex?: number;
8
+ onKeyDown?: (e: React.KeyboardEvent<HTMLButtonElement>) => void;
9
+ onFocus?: (e: React.FocusEvent<HTMLButtonElement>) => void;
10
+ }
11
+ export declare const DestructiveMenuItem: React.ForwardRefExoticComponent<DestructiveMenuItemProps & React.RefAttributes<HTMLButtonElement>>;
12
+ //# sourceMappingURL=DestructiveMenuItem.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DestructiveMenuItem.d.ts","sourceRoot":"","sources":["../../../src/components/Menu/DestructiveMenuItem.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkD,MAAM,OAAO,CAAC;AAIvE,MAAM,WAAW,wBAAwB;IACvC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC;IAChE,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC;CAC5D;AAED,eAAO,MAAM,mBAAmB,oGAoG/B,CAAC"}
@@ -0,0 +1,55 @@
1
+ import { default as React } from 'react';
2
+ import { IconComponent } from '../../types';
3
+ import { MenuItemSelectionStyle } from './MenuItem';
4
+ export type MenuSide = 'top' | 'right' | 'bottom' | 'left';
5
+ export type MenuAlign = 'start' | 'center' | 'end';
6
+ export interface MenuItemData {
7
+ label: string;
8
+ onClick: () => void;
9
+ isSelected?: boolean;
10
+ isDestructive?: boolean;
11
+ isInactive?: boolean;
12
+ intent?: 'negative';
13
+ keepOpenOnClick?: boolean;
14
+ holdDuration?: number;
15
+ icon?: IconComponent;
16
+ subtext?: string;
17
+ showToggle?: boolean;
18
+ toggleValue?: boolean;
19
+ selectionStyle?: MenuItemSelectionStyle;
20
+ }
21
+ export interface MenuSection {
22
+ header?: string;
23
+ items: MenuItemData[];
24
+ }
25
+ export interface MenuProps {
26
+ isOpen: boolean;
27
+ onClose: () => void;
28
+ anchorRef: React.RefObject<HTMLElement | null>;
29
+ items?: MenuItemData[];
30
+ sections?: MenuSection[];
31
+ side?: MenuSide;
32
+ align?: MenuAlign;
33
+ sideOffset?: number;
34
+ alignOffset?: number;
35
+ sideOffsetToken?: string;
36
+ alignOffsetToken?: string;
37
+ width?: string;
38
+ minWidth?: string;
39
+ maxWidth?: string;
40
+ matchAnchorWidth?: boolean;
41
+ matchAnchorWidthOffset?: number;
42
+ usePortal?: boolean;
43
+ /** Container role + item role semantics. Defaults to `menu` (items are buttons with menuitem* roles, keyboard nav handled internally). `listbox` makes items render as `option` with `aria-selected`, with keyboard nav handled by the consumer via `activeIndex`. */
44
+ role?: 'menu' | 'listbox';
45
+ /** DOM id for the popup container — required when an external combobox references it via `aria-controls`/`aria-activedescendant`. */
46
+ id?: string;
47
+ /** Accessible label for the popup container. Defaults to `'Menu'` for menu role; omitted for listbox (let consumer provide via aria-labelledby on the combobox). */
48
+ ariaLabel?: string;
49
+ /** Active descendant index for listbox keyboard nav — highlights one option visually without moving DOM focus. */
50
+ activeIndex?: number;
51
+ /** Builds the DOM id for option `index`. Required in listbox mode if `aria-activedescendant` is used externally. */
52
+ getOptionId?: (index: number) => string;
53
+ }
54
+ export declare const Menu: React.FC<MenuProps>;
55
+ //# sourceMappingURL=Menu.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Menu.d.ts","sourceRoot":"","sources":["../../../src/components/Menu/Menu.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA6E,MAAM,OAAO,CAAC;AAOlG,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7C,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAKzD,MAAM,MAAM,QAAQ,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;AAC3D,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC;AAEnD,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,cAAc,CAAC,EAAE,sBAAsB,CAAC;CACzC;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,YAAY,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IAC/C,KAAK,CAAC,EAAE,YAAY,EAAE,CAAC;IACvB,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAC;IACzB,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,sQAAsQ;IACtQ,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,qIAAqI;IACrI,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,oKAAoK;IACpK,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kHAAkH;IAClH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oHAAoH;IACpH,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;CACzC;AAED,eAAO,MAAM,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,SAAS,CA4VpC,CAAC"}
@@ -0,0 +1,33 @@
1
+ import { default as React } from 'react';
2
+ import { IconComponent } from '../../types';
3
+ export type MenuItemSelectionStyle = 'highlight' | 'radio' | 'noOverlay';
4
+ export interface MenuItemProps {
5
+ label: string;
6
+ onClick: () => void;
7
+ isSelected?: boolean;
8
+ isInactive?: boolean;
9
+ icon?: IconComponent;
10
+ labelColor?: 'primary' | 'secondary' | 'tertiary';
11
+ subtext?: string;
12
+ showToggle?: boolean;
13
+ toggleValue?: boolean;
14
+ intent?: 'negative';
15
+ selectionStyle?: MenuItemSelectionStyle;
16
+ showTrailingChevron?: boolean;
17
+ checkIcon?: IconComponent;
18
+ chevronIcon?: IconComponent;
19
+ /** Override the implicit role. Defaults derive from menu context: `menuitem`, `menuitemcheckbox` (showToggle), or `menuitemradio` (radio selectionStyle). Pass `'option'` for listbox usage. */
20
+ role?: string;
21
+ /** Element id — required when used as an `option` referenced by `aria-activedescendant`. */
22
+ id?: string;
23
+ /** Maps to `aria-selected`. Used when role is `option`. */
24
+ ariaSelected?: boolean;
25
+ /** Visual highlight for keyboard "active" cursor (separate from selection state). */
26
+ isActive?: boolean;
27
+ /** Override default tabIndex (e.g. -1 for listbox options driven by aria-activedescendant). */
28
+ tabIndex?: number;
29
+ onKeyDown?: (e: React.KeyboardEvent<HTMLButtonElement>) => void;
30
+ onFocus?: (e: React.FocusEvent<HTMLButtonElement>) => void;
31
+ }
32
+ export declare const MenuItem: React.ForwardRefExoticComponent<MenuItemProps & React.RefAttributes<HTMLButtonElement>>;
33
+ //# sourceMappingURL=MenuItem.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MenuItem.d.ts","sourceRoot":"","sources":["../../../src/components/Menu/MenuItem.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAqB,MAAM,OAAO,CAAC;AAG1C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAG7C,MAAM,MAAM,sBAAsB,GAAG,WAAW,GAAG,OAAO,GAAG,WAAW,CAAC;AAEzE,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,UAAU,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,UAAU,CAAC;IAClD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,cAAc,CAAC,EAAE,sBAAsB,CAAC;IACxC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,WAAW,CAAC,EAAE,aAAa,CAAC;IAC5B,gMAAgM;IAChM,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,4FAA4F;IAC5F,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,2DAA2D;IAC3D,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,qFAAqF;IACrF,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,+FAA+F;IAC/F,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC;IAChE,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC;CAC5D;AAED,eAAO,MAAM,QAAQ,yFAwGpB,CAAC"}
@@ -0,0 +1,7 @@
1
+ export { Menu } from './Menu';
2
+ export type { MenuProps, MenuSection, MenuItemData, MenuSide, MenuAlign } from './Menu';
3
+ export { MenuItem } from './MenuItem';
4
+ export type { MenuItemProps, MenuItemSelectionStyle } from './MenuItem';
5
+ export { DestructiveMenuItem } from './DestructiveMenuItem';
6
+ export type { DestructiveMenuItemProps } from './DestructiveMenuItem';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Menu/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACxF,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,YAAY,EAAE,aAAa,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AACxE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,YAAY,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC"}
@@ -0,0 +1,15 @@
1
+ import { default as React } from 'react';
2
+ export type ModalWidth = 'sm' | 'md' | 'lg';
3
+ export interface ModalProps {
4
+ isOpen: boolean;
5
+ onClose: () => void;
6
+ title: string;
7
+ subtitle?: React.ReactNode;
8
+ children: React.ReactNode;
9
+ footer?: React.ReactNode;
10
+ width?: ModalWidth | string;
11
+ bodyClassName?: string;
12
+ initialFocus?: React.RefObject<HTMLElement>;
13
+ }
14
+ export declare const Modal: React.FC<ModalProps>;
15
+ //# sourceMappingURL=Modal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Modal.d.ts","sourceRoot":"","sources":["../../../src/components/Modal/Modal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsD,MAAM,OAAO,CAAC;AAM3E,MAAM,MAAM,UAAU,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AA+B5C,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB,KAAK,CAAC,EAAE,UAAU,GAAG,MAAM,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;CAC7C;AAED,eAAO,MAAM,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,UAAU,CAmJtC,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { Modal } from './Modal';
2
+ export type { ModalProps, ModalWidth } from './Modal';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Modal/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC"}
@@ -0,0 +1,16 @@
1
+ import { default as React } from 'react';
2
+ export interface PaginationProps {
3
+ /** Current page (1-based). */
4
+ page: number;
5
+ /** Total number of pages. */
6
+ totalPages: number;
7
+ /** Called when page changes. */
8
+ onPageChange: (page: number) => void;
9
+ /** Max page buttons visible (excluding prev/next). */
10
+ siblingCount?: number;
11
+ /** Disables all interaction. */
12
+ inactive?: boolean;
13
+ className?: string;
14
+ }
15
+ export declare const Pagination: React.ForwardRefExoticComponent<PaginationProps & React.RefAttributes<HTMLElement>>;
16
+ //# sourceMappingURL=Pagination.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Pagination.d.ts","sourceRoot":"","sources":["../../../src/components/Pagination/Pagination.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAKnD,MAAM,WAAW,eAAe;IAC9B,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,6BAA6B;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,gCAAgC;IAChC,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,sDAAsD;IACtD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gCAAgC;IAChC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAgCD,eAAO,MAAM,UAAU,qFAmDtB,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { Pagination } from './Pagination';
2
+ export type { PaginationProps } from './Pagination';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Pagination/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC"}
@@ -0,0 +1,35 @@
1
+ import { default as React } from 'react';
2
+ export interface RadioOption {
3
+ label: string;
4
+ value: string;
5
+ inactive?: boolean;
6
+ }
7
+ export interface RadioGroupProps {
8
+ /** Currently selected value. */
9
+ value: string;
10
+ /** Called when selection changes. */
11
+ onChange: (value: string) => void;
12
+ /** Radio options to render. */
13
+ options: RadioOption[];
14
+ /** Accessible name for the group. One of `aria-label` or `aria-labelledby` is required. */
15
+ 'aria-label'?: string;
16
+ /** ID of an element labeling the group. One of `aria-label` or `aria-labelledby` is required. */
17
+ 'aria-labelledby'?: string;
18
+ /** Layout direction. */
19
+ direction?: 'vertical' | 'horizontal';
20
+ /** Disables the entire group. */
21
+ inactive?: boolean;
22
+ className?: string;
23
+ }
24
+ export declare const RadioGroup: React.ForwardRefExoticComponent<RadioGroupProps & React.RefAttributes<HTMLDivElement>>;
25
+ export interface RadioItemProps {
26
+ label: string;
27
+ checked?: boolean;
28
+ onChange?: () => void;
29
+ inactive?: boolean;
30
+ /** Roving tabindex value. RadioGroup manages this; defaults to -1 when inactive, else 0. */
31
+ tabIndex?: number;
32
+ className?: string;
33
+ }
34
+ export declare const RadioItem: React.ForwardRefExoticComponent<RadioItemProps & React.RefAttributes<HTMLDivElement>>;
35
+ //# sourceMappingURL=Radio.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Radio.d.ts","sourceRoot":"","sources":["../../../src/components/Radio/Radio.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA6B,MAAM,OAAO,CAAC;AAKlD,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,eAAe;IAC9B,gCAAgC;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,qCAAqC;IACrC,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,+BAA+B;IAC/B,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,2FAA2F;IAC3F,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iGAAiG;IACjG,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,wBAAwB;IACxB,SAAS,CAAC,EAAE,UAAU,GAAG,YAAY,CAAC;IACtC,iCAAiC;IACjC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,UAAU,wFAgHtB,CAAC;AAMF,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,4FAA4F;IAC5F,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,SAAS,uFAoCrB,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { RadioGroup, RadioItem } from './Radio';
2
+ export type { RadioGroupProps, RadioItemProps, RadioOption } from './Radio';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Radio/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAChD,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC"}
@@ -0,0 +1,13 @@
1
+ import { default as React } from 'react';
2
+ export type ScrollbarVariant = 'default' | 'thick';
3
+ export interface ScrollbarProps {
4
+ children: React.ReactNode;
5
+ className?: string;
6
+ variant?: ScrollbarVariant;
7
+ showTrackOnHover?: boolean;
8
+ onScroll?: (e: React.UIEvent<HTMLDivElement>) => void;
9
+ fadeOverlay?: React.ReactNode;
10
+ contentRef?: React.RefObject<HTMLDivElement>;
11
+ }
12
+ export declare const Scrollbar: React.FC<ScrollbarProps>;
13
+ //# sourceMappingURL=Scrollbar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Scrollbar.d.ts","sourceRoot":"","sources":["../../../src/components/Scrollbar/Scrollbar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmD,MAAM,OAAO,CAAC;AAIxE,MAAM,MAAM,gBAAgB,GAAG,SAAS,GAAG,OAAO,CAAC;AAEnD,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,IAAI,CAAC;IACtD,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC9B,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;CAC9C;AAED,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CAsL9C,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { Scrollbar } from './Scrollbar';
2
+ export type { ScrollbarProps, ScrollbarVariant } from './Scrollbar';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Scrollbar/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC"}
@@ -0,0 +1,22 @@
1
+ import { default as React } from 'react';
2
+ import { IconComponent } from '../../types';
3
+ export interface SelectOption {
4
+ label: string;
5
+ value: string | number;
6
+ }
7
+ export interface SelectProps {
8
+ value: string | number;
9
+ onChange: (value: string | number) => void;
10
+ options: SelectOption[];
11
+ placeholder?: string;
12
+ className?: string;
13
+ inactive?: boolean;
14
+ id?: string;
15
+ chevronIcon?: IconComponent;
16
+ /** Accessible name. Required when no associated `<label htmlFor>` element exists. */
17
+ 'aria-label'?: string;
18
+ /** Accessible name reference. Use when a visible label already exists outside the trigger. */
19
+ 'aria-labelledby'?: string;
20
+ }
21
+ export declare const Select: React.ForwardRefExoticComponent<SelectProps & React.RefAttributes<HTMLDivElement>>;
22
+ //# sourceMappingURL=Select.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Select.d.ts","sourceRoot":"","sources":["../../../src/components/Select/Select.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsE,MAAM,OAAO,CAAC;AAK3F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAG7C,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC;IAC3C,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,WAAW,CAAC,EAAE,aAAa,CAAC;IAC5B,qFAAqF;IACrF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,8FAA8F;IAC9F,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,eAAO,MAAM,MAAM,oFA+LlB,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { Select } from './Select';
2
+ export type { SelectProps, SelectOption } from './Select';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Select/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC"}
@@ -0,0 +1,15 @@
1
+ import { default as React } from 'react';
2
+ export type SidebarWidth = 'mini' | 'default' | number;
3
+ export interface SidebarProps {
4
+ children: React.ReactNode;
5
+ isCollapsed?: boolean;
6
+ onToggle?: () => void;
7
+ width?: SidebarWidth;
8
+ onWidthChange?: (width: SidebarWidth) => void;
9
+ resizable?: boolean;
10
+ footer?: React.ReactNode;
11
+ className?: string;
12
+ isMobile?: boolean;
13
+ }
14
+ export declare const Sidebar: React.ForwardRefExoticComponent<SidebarProps & React.RefAttributes<HTMLElement>>;
15
+ //# sourceMappingURL=Sidebar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Sidebar.d.ts","sourceRoot":"","sources":["../../../src/components/Sidebar/Sidebar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA+D,MAAM,OAAO,CAAC;AAIpF,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,CAAC;AAEvD,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IAC9C,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAkBD,eAAO,MAAM,OAAO,kFA8LnB,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { default as React } from 'react';
2
+ import { IconComponent } from '../../types';
3
+ export interface SidebarItemProps {
4
+ label: string;
5
+ icon?: IconComponent;
6
+ isSelected?: boolean;
7
+ isDisabled?: boolean;
8
+ onClick?: () => void;
9
+ badge?: React.ReactNode;
10
+ children?: React.ReactNode;
11
+ className?: string;
12
+ }
13
+ export declare const SidebarItem: React.ForwardRefExoticComponent<SidebarItemProps & React.RefAttributes<HTMLButtonElement>>;
14
+ //# sourceMappingURL=SidebarItem.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SidebarItem.d.ts","sourceRoot":"","sources":["../../../src/components/Sidebar/SidebarItem.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAqB,MAAM,OAAO,CAAC;AAG1C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAG7C,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACxB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,WAAW,4FAqCvB,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { default as React } from 'react';
2
+ export interface SidebarSectionProps {
3
+ label?: string;
4
+ children: React.ReactNode;
5
+ collapsible?: boolean;
6
+ defaultCollapsed?: boolean;
7
+ className?: string;
8
+ }
9
+ export declare const SidebarSection: React.ForwardRefExoticComponent<SidebarSectionProps & React.RefAttributes<HTMLDivElement>>;
10
+ //# sourceMappingURL=SidebarSection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SidebarSection.d.ts","sourceRoot":"","sources":["../../../src/components/Sidebar/SidebarSection.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA+B,MAAM,OAAO,CAAC;AAKpD,MAAM,WAAW,mBAAmB;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,cAAc,4FA0B1B,CAAC"}
@@ -0,0 +1,7 @@
1
+ export { Sidebar } from './Sidebar';
2
+ export type { SidebarProps, SidebarWidth } from './Sidebar';
3
+ export { SidebarSection } from './SidebarSection';
4
+ export type { SidebarSectionProps } from './SidebarSection';
5
+ export { SidebarItem } from './SidebarItem';
6
+ export type { SidebarItemProps } from './SidebarItem';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Sidebar/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,YAAY,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,YAAY,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC"}
@@ -0,0 +1,17 @@
1
+ import { default as React } from 'react';
2
+ export type SkeletonVariant = 'text' | 'circular' | 'rectangular';
3
+ export interface SkeletonProps {
4
+ /** Shape of the skeleton. */
5
+ variant?: SkeletonVariant;
6
+ /** Width (CSS value). */
7
+ width?: string | number;
8
+ /** Height (CSS value). */
9
+ height?: string | number;
10
+ /** Number of text lines to render. Only applies to 'text' variant. */
11
+ lines?: number;
12
+ /** Whether to animate the shimmer. */
13
+ animate?: boolean;
14
+ className?: string;
15
+ }
16
+ export declare const Skeleton: React.ForwardRefExoticComponent<SkeletonProps & React.RefAttributes<HTMLDivElement>>;
17
+ //# 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,OAAO,KAAqB,MAAM,OAAO,CAAC;AAI1C,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,UAAU,GAAG,aAAa,CAAC;AAElE,MAAM,WAAW,aAAa;IAC5B,6BAA6B;IAC7B,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,yBAAyB;IACzB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,0BAA0B;IAC1B,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,sEAAsE;IACtE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,sCAAsC;IACtC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,QAAQ,sFA2CpB,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { Skeleton } from './Skeleton';
2
+ export type { SkeletonProps, SkeletonVariant } from './Skeleton';
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,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,16 @@
1
+ import { default as React } from 'react';
2
+ export interface SliderProps {
3
+ value: number;
4
+ onChange: (value: number) => void;
5
+ min?: number;
6
+ max?: number;
7
+ step?: number;
8
+ label: string;
9
+ id?: string;
10
+ inactive?: boolean;
11
+ className?: string;
12
+ /** Human-readable text for assistive tech when the numeric value alone isn't meaningful (e.g. "Low", "Medium", "High"). Maps to `aria-valuetext`. */
13
+ valueText?: string;
14
+ }
15
+ export declare const Slider: React.ForwardRefExoticComponent<SliderProps & React.RefAttributes<HTMLDivElement>>;
16
+ //# sourceMappingURL=Slider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Slider.d.ts","sourceRoot":"","sources":["../../../src/components/Slider/Slider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsE,MAAM,OAAO,CAAC;AAK3F,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qJAAqJ;IACrJ,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,MAAM,oFAoDlB,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { Slider } from './Slider';
2
+ export type { SliderProps } from './Slider';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Slider/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC"}
@@ -0,0 +1,59 @@
1
+ import { default as React } from 'react';
2
+ /**
3
+ * Semantic intent for colored surfaces.
4
+ * Each intent has four contrast levels (faint, medium, bold, strong).
5
+ */
6
+ export type SurfaceIntent = 'brand' | 'positive' | 'negative' | 'warning' | 'caution' | 'ai' | 'neutral' | 'walkthrough' | 'guide';
7
+ /** Background type for non-intent surfaces. */
8
+ export type SurfaceBackground = 'primary' | 'secondary' | 'transparent' | 'translucent';
9
+ /** Contrast level for semantic intents. */
10
+ export type SurfaceContrast = 'faint' | 'medium' | 'bold' | 'strong';
11
+ /** Elevation for depth/shadow effects. Progressive: none → flat → elevated → floating. */
12
+ export type SurfaceElevation = 'none' | 'depressed' | 'depressed-md' | 'flat' | 'elevated' | 'floating' | 'overlayTop' | 'overlayRight' | 'overlayBottom' | 'overlayLeft';
13
+ /** Edge divider border direction. */
14
+ export type SurfaceEdge = 'top' | 'right' | 'bottom' | 'left';
15
+ /** Corner radius presets. */
16
+ export type SurfaceRadiusPreset = 'none' | 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl' | 'full';
17
+ /** Corner radius — preset, CSS variable, or custom string (e.g. '12px 12px 0 0'). */
18
+ export type SurfaceRadius = SurfaceRadiusPreset | (string & {});
19
+ /** HTML elements Surface can render as. */
20
+ export type SurfaceElement = 'div' | 'section' | 'aside' | 'article' | 'header' | 'footer' | 'main' | 'nav' | 'span' | 'button' | 'td' | 'th';
21
+ /** Props shared by both surface modes. */
22
+ interface SurfaceBaseProps extends React.HTMLAttributes<HTMLElement> {
23
+ children?: React.ReactNode;
24
+ /** Elevation for depth/shadow effects. Defaults to 'none'. */
25
+ elevation?: SurfaceElevation;
26
+ /** Edge divider border(s). Only applies when elevation is 'none'. */
27
+ edge?: SurfaceEdge | SurfaceEdge[];
28
+ /** Corner radius — preset or CSS variable. */
29
+ radius?: SurfaceRadius;
30
+ /** Enable hover/pressed interaction overlay. */
31
+ interactive?: boolean;
32
+ /** Apply selected background state. */
33
+ selected?: boolean;
34
+ /** Dim and disable pointer events. */
35
+ inactive?: boolean;
36
+ /** HTML element to render. Defaults to 'div'. */
37
+ as?: SurfaceElement;
38
+ /** Button type — only used when as='button'. */
39
+ type?: 'button' | 'submit' | 'reset';
40
+ }
41
+ /** Non-intent surface — uses a basic background color. */
42
+ interface SurfaceDefaultProps extends SurfaceBaseProps {
43
+ /** Background color. Defaults to 'transparent'. */
44
+ background?: SurfaceBackground;
45
+ intent?: never;
46
+ contrast?: never;
47
+ }
48
+ /** Intent surface — uses a semantic color with contrast level. */
49
+ interface SurfaceIntentProps extends SurfaceBaseProps {
50
+ /** Semantic intent color. */
51
+ intent: SurfaceIntent;
52
+ /** Contrast level for the intent background. Defaults to 'faint'. */
53
+ contrast?: SurfaceContrast;
54
+ background?: never;
55
+ }
56
+ export type SurfaceProps = SurfaceDefaultProps | SurfaceIntentProps;
57
+ export declare const Surface: React.ForwardRefExoticComponent<SurfaceProps & React.RefAttributes<HTMLElement>>;
58
+ export {};
59
+ //# sourceMappingURL=Surface.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Surface.d.ts","sourceRoot":"","sources":["../../../src/components/Surface/Surface.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAqB,MAAM,OAAO,CAAC;AAG1C;;;GAGG;AACH,MAAM,MAAM,aAAa,GACrB,OAAO,GACP,UAAU,GACV,UAAU,GACV,SAAS,GACT,SAAS,GACT,IAAI,GACJ,SAAS,GACT,aAAa,GACb,OAAO,CAAC;AAEZ,+CAA+C;AAC/C,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG,WAAW,GAAG,aAAa,GAAG,aAAa,CAAC;AAExF,2CAA2C;AAC3C,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,CAAC;AAErE,0FAA0F;AAC1F,MAAM,MAAM,gBAAgB,GACxB,MAAM,GACN,WAAW,GACX,cAAc,GACd,MAAM,GACN,UAAU,GACV,UAAU,GACV,YAAY,GACZ,cAAc,GACd,eAAe,GACf,aAAa,CAAC;AAElB,qCAAqC;AACrC,MAAM,MAAM,WAAW,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;AAE9D,6BAA6B;AAC7B,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,GAAG,MAAM,CAAC;AAE7F,qFAAqF;AACrF,MAAM,MAAM,aAAa,GAAG,mBAAmB,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AAEhE,2CAA2C;AAC3C,MAAM,MAAM,cAAc,GACtB,KAAK,GACL,SAAS,GACT,OAAO,GACP,SAAS,GACT,QAAQ,GACR,QAAQ,GACR,MAAM,GACN,KAAK,GACL,MAAM,GACN,QAAQ,GACR,IAAI,GACJ,IAAI,CAAC;AAET,0CAA0C;AAC1C,UAAU,gBAAiB,SAAQ,KAAK,CAAC,cAAc,CAAC,WAAW,CAAC;IAClE,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,8DAA8D;IAC9D,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAC7B,qEAAqE;IACrE,IAAI,CAAC,EAAE,WAAW,GAAG,WAAW,EAAE,CAAC;IACnC,8CAA8C;IAC9C,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,gDAAgD;IAChD,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,uCAAuC;IACvC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,sCAAsC;IACtC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,iDAAiD;IACjD,EAAE,CAAC,EAAE,cAAc,CAAC;IACpB,gDAAgD;IAChD,IAAI,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC;CACtC;AAED,0DAA0D;AAC1D,UAAU,mBAAoB,SAAQ,gBAAgB;IACpD,mDAAmD;IACnD,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC/B,MAAM,CAAC,EAAE,KAAK,CAAC;IACf,QAAQ,CAAC,EAAE,KAAK,CAAC;CAClB;AAED,kEAAkE;AAClE,UAAU,kBAAmB,SAAQ,gBAAgB;IACnD,6BAA6B;IAC7B,MAAM,EAAE,aAAa,CAAC;IACtB,qEAAqE;IACrE,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,UAAU,CAAC,EAAE,KAAK,CAAC;CACpB;AAED,MAAM,MAAM,YAAY,GAAG,mBAAmB,GAAG,kBAAkB,CAAC;AAiDpE,eAAO,MAAM,OAAO,kFAoEnB,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { Surface } from './Surface';
2
+ export type { SurfaceProps, SurfaceIntent, SurfaceBackground, SurfaceContrast, SurfaceElevation, SurfaceEdge, SurfaceRadius, SurfaceRadiusPreset, SurfaceElement, } from './Surface';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Surface/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,YAAY,EACV,YAAY,EACZ,aAAa,EACb,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EAChB,WAAW,EACX,aAAa,EACb,mBAAmB,EACnB,cAAc,GACf,MAAM,WAAW,CAAC"}
@@ -0,0 +1,21 @@
1
+ import { default as React } from 'react';
2
+ export type TabBackground = 'faint' | 'medium' | 'bold' | 'strong' | 'always-dark';
3
+ export interface TabProps {
4
+ /** id of this tab. Pair with the tabpanel's `aria-labelledby` to wire SR semantics. */
5
+ id?: string;
6
+ /** id of the tabpanel this tab controls. Sets `aria-controls`. */
7
+ controls?: string;
8
+ label: string;
9
+ isSelected?: boolean;
10
+ disabled?: boolean;
11
+ /** Parent surface context. Adjusts hover tokens and fg for tabs on colored backgrounds. */
12
+ background?: TabBackground;
13
+ onClick?: () => void;
14
+ onKeyDown?: React.KeyboardEventHandler<HTMLButtonElement>;
15
+ onFocus?: React.FocusEventHandler<HTMLButtonElement>;
16
+ /** Override tab order. Defaults to a roving pattern (0 when selected, -1 otherwise). */
17
+ tabIndex?: number;
18
+ className?: string;
19
+ }
20
+ export declare const Tab: React.ForwardRefExoticComponent<TabProps & React.RefAttributes<HTMLButtonElement>>;
21
+ //# sourceMappingURL=Tab.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tab.d.ts","sourceRoot":"","sources":["../../../src/components/Tab/Tab.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAqB,MAAM,OAAO,CAAC;AAK1C,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,aAAa,CAAC;AAEnF,MAAM,WAAW,QAAQ;IACvB,uFAAuF;IACvF,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,kEAAkE;IAClE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,2FAA2F;IAC3F,UAAU,CAAC,EAAE,aAAa,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,SAAS,CAAC,EAAE,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,CAAC;IAC1D,OAAO,CAAC,EAAE,KAAK,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,CAAC;IACrD,wFAAwF;IACxF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,GAAG,oFA2Cf,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { Tab } from './Tab';
2
+ export type { TabProps, TabBackground } from './Tab';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Tab/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC"}