@imfusion/web-ui 0.6.4-dev.29.g527b8ff6 → 0.6.4-dev.31.gcef47041

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 (51) hide show
  1. package/README.md +14 -15
  2. package/dist/{code-Ce8uiPsv.js → code-D2lwxHgd.js} +15 -15
  3. package/dist/components/app-shell/app-shell.d.ts +7 -11
  4. package/dist/components/button/button.d.ts +3 -10
  5. package/dist/components/callout/callout.d.ts +4 -8
  6. package/dist/components/card/card.d.ts +5 -5
  7. package/dist/components/checkbox/checkbox.d.ts +2 -38
  8. package/dist/components/chip/chip.d.ts +1 -1
  9. package/dist/components/code/code.d.ts +1 -1
  10. package/dist/components/collapsible/collapsible.d.ts +3 -33
  11. package/dist/components/copy-button/copy-button.d.ts +1 -1
  12. package/dist/components/drawer/drawer.d.ts +16 -97
  13. package/dist/components/field/field.d.ts +7 -67
  14. package/dist/components/fieldset/fieldset.d.ts +2 -15
  15. package/dist/components/icon/icon.d.ts +1 -1
  16. package/dist/components/input/input.d.ts +2 -8
  17. package/dist/components/logo/logo.d.ts +1 -1
  18. package/dist/components/navigation-menu/subs/flyout-link.d.ts +2 -14
  19. package/dist/components/navigation-menu/subs/link.d.ts +6 -23
  20. package/dist/components/navigation-menu/subs/overlay.d.ts +6 -51
  21. package/dist/components/navigation-menu/subs/shared.d.ts +4 -14
  22. package/dist/components/navigation-menu/subs/structure.d.ts +7 -29
  23. package/dist/components/navigation-menu/subs/trigger.d.ts +6 -13
  24. package/dist/components/popover/popover.d.ts +22 -94
  25. package/dist/components/row/row.d.ts +1 -1
  26. package/dist/components/select/select.d.ts +22 -184
  27. package/dist/components/separator/separator.d.ts +5 -4
  28. package/dist/components/slider/slider.d.ts +7 -77
  29. package/dist/components/spinner/spinner.d.ts +1 -1
  30. package/dist/components/stack/stack.d.ts +1 -1
  31. package/dist/components/switch/switch.d.ts +2 -31
  32. package/dist/components/table/table.d.ts +7 -13
  33. package/dist/components/tabs/tabs.d.ts +13 -43
  34. package/dist/components/toast/toast.d.ts +15 -100
  35. package/dist/components/toggle/toggle.d.ts +3 -20
  36. package/dist/components/toggle-group/toggle-group.d.ts +3 -19
  37. package/dist/components/tooltip/tooltip.d.ts +20 -74
  38. package/dist/components/typo/typo.d.ts +14 -21
  39. package/dist/{icons-Cy1HAosO.js → icons-CaGCCwG-.js} +7 -7
  40. package/dist/icons.js +1 -1
  41. package/dist/index.js +1270 -1286
  42. package/dist/integrations/code-highlight.js +2 -2
  43. package/dist/integrations/image-display-options.js +54 -54
  44. package/dist/{tabs-DIe1Utiy.js → tabs-By5ir2pt.js} +162 -159
  45. package/dist/utils/index.d.ts +1 -0
  46. package/dist/utils/resolve-state-props.d.ts +4 -0
  47. package/package.json +2 -2
  48. package/src/docgen/doc.gen.json +2445 -552
  49. package/src/llms/skills/imf-web-ui-conventions/topics/library-setup.md +10 -1
  50. package/src/llms/skills/imf-web-ui-conventions/topics/styling.md +1 -1
  51. /package/dist/{meta-CySnRuVp.js → meta-j-7HGrWv.js} +0 -0
@@ -1,45 +1,16 @@
1
1
  import { Switch as SwitchPrimitive } from '@base-ui/react/switch';
2
- type UpstreamRoot = React.ComponentProps<typeof SwitchPrimitive.Root>;
3
- type UpstreamThumb = React.ComponentProps<typeof SwitchPrimitive.Thumb>;
4
- type RootProps = Omit<React.HTMLAttributes<HTMLSpanElement>, "className" | "style"> & {
5
- checked?: boolean;
6
- defaultChecked?: boolean;
7
- onCheckedChange?: UpstreamRoot["onCheckedChange"];
8
- /** @default false */
9
- disabled?: boolean;
10
- /** @default false */
11
- readOnly?: boolean;
12
- /** @default false */
13
- required?: boolean;
14
- name?: string;
15
- value?: string;
16
- uncheckedValue?: string;
17
- form?: string;
18
- inputRef?: React.Ref<HTMLInputElement>;
19
- /** @default false */
20
- nativeButton?: boolean;
21
- className?: UpstreamRoot["className"];
22
- style?: UpstreamRoot["style"];
23
- render?: UpstreamRoot["render"];
24
- };
25
2
  /**
26
3
  * Switch.Root — toggleable on/off control.
27
4
  *
28
5
  * @doc https://base-ui.com/react/components/switch
29
6
  * @llm https://base-ui.com/react/components/switch.md
30
7
  */
31
- export declare function Root({ className, ...props }: RootProps): import("react/jsx-runtime").JSX.Element;
8
+ export declare function Root(props: React.ComponentProps<typeof SwitchPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
32
9
  export declare namespace Root {
33
10
  var displayName: string;
34
11
  }
35
- type ThumbProps = Omit<React.HTMLAttributes<HTMLSpanElement>, "className" | "style"> & {
36
- className?: UpstreamThumb["className"];
37
- style?: UpstreamThumb["style"];
38
- render?: UpstreamThumb["render"];
39
- };
40
12
  /** Switch.Thumb — the movable indicator inside the track. */
41
- export declare function Thumb({ className, ...props }: ThumbProps): import("react/jsx-runtime").JSX.Element;
13
+ export declare function Thumb(props: React.ComponentProps<typeof SwitchPrimitive.Thumb>): import("react/jsx-runtime").JSX.Element;
42
14
  export declare namespace Thumb {
43
15
  var displayName: string;
44
16
  }
45
- export {};
@@ -1,37 +1,31 @@
1
- type RootProps = React.TableHTMLAttributes<HTMLTableElement>;
2
- type HeaderProps = React.HTMLAttributes<HTMLTableSectionElement>;
3
- type BodyProps = React.HTMLAttributes<HTMLTableSectionElement>;
4
- type RowProps = React.HTMLAttributes<HTMLTableRowElement>;
5
1
  type HeaderCellProps = React.ThHTMLAttributes<HTMLTableCellElement>;
6
- type CellProps = React.TdHTMLAttributes<HTMLTableCellElement>;
7
- type HeaderButtonProps = React.ButtonHTMLAttributes<HTMLButtonElement>;
8
2
  /** Table.Root — the `<table>` element. */
9
- export declare function Root({ className, ...props }: RootProps): import("react/jsx-runtime").JSX.Element;
3
+ export declare function Root(props: React.TableHTMLAttributes<HTMLTableElement>): import("react/jsx-runtime").JSX.Element;
10
4
  export declare namespace Root {
11
5
  var displayName: string;
12
6
  }
13
7
  /** Table.Header — the `<thead>` section. */
14
- export declare function Header({ className, ...props }: HeaderProps): import("react/jsx-runtime").JSX.Element;
8
+ export declare function Header(props: React.HTMLAttributes<HTMLTableSectionElement>): import("react/jsx-runtime").JSX.Element;
15
9
  export declare namespace Header {
16
10
  var displayName: string;
17
11
  }
18
12
  /** Table.Body — the `<tbody>` section. */
19
- export declare function Body({ className, ...props }: BodyProps): import("react/jsx-runtime").JSX.Element;
13
+ export declare function Body(props: React.HTMLAttributes<HTMLTableSectionElement>): import("react/jsx-runtime").JSX.Element;
20
14
  export declare namespace Body {
21
15
  var displayName: string;
22
16
  }
23
17
  /** Table.Row — a `<tr>` in header or body. */
24
- export declare function Row({ className, ...props }: RowProps): import("react/jsx-runtime").JSX.Element;
18
+ export declare function Row(props: React.HTMLAttributes<HTMLTableRowElement>): import("react/jsx-runtime").JSX.Element;
25
19
  export declare namespace Row {
26
20
  var displayName: string;
27
21
  }
28
22
  /** Table.HeaderCell — a `<th>` header cell. */
29
- export declare function HeaderCell({ className, ...props }: HeaderCellProps): import("react/jsx-runtime").JSX.Element;
23
+ export declare function HeaderCell(props: HeaderCellProps): import("react/jsx-runtime").JSX.Element;
30
24
  export declare namespace HeaderCell {
31
25
  var displayName: string;
32
26
  }
33
27
  /** Table.Cell — a `<td>` data cell. */
34
- export declare function Cell({ className, ...props }: CellProps): import("react/jsx-runtime").JSX.Element;
28
+ export declare function Cell(props: React.TdHTMLAttributes<HTMLTableCellElement>): import("react/jsx-runtime").JSX.Element;
35
29
  export declare namespace Cell {
36
30
  var displayName: string;
37
31
  }
@@ -40,7 +34,7 @@ export declare namespace Cell {
40
34
  * design: sorting toggles, filter toggles, column menus all render through it
41
35
  * rather than each inventing a button. Icon/indicator goes in `children`.
42
36
  */
43
- export declare function HeaderButton({ className, type, ...props }: HeaderButtonProps): import("react/jsx-runtime").JSX.Element;
37
+ export declare function HeaderButton({ type, ...props }: React.ButtonHTMLAttributes<HTMLButtonElement>): import("react/jsx-runtime").JSX.Element;
44
38
  export declare namespace HeaderButton {
45
39
  var displayName: string;
46
40
  }
@@ -1,59 +1,37 @@
1
1
  import { Tabs as TabsPrimitive } from '@base-ui/react/tabs';
2
- type UpstreamRoot = React.ComponentProps<typeof TabsPrimitive.Root>;
2
+ import { VariantProps } from 'class-variance-authority';
3
3
  type UpstreamList = React.ComponentProps<typeof TabsPrimitive.List>;
4
- type UpstreamTab = React.ComponentProps<typeof TabsPrimitive.Tab>;
5
- type UpstreamIndicator = React.ComponentProps<typeof TabsPrimitive.Indicator>;
6
- type UpstreamPanel = React.ComponentProps<typeof TabsPrimitive.Panel>;
7
- type RootProps = UpstreamRoot;
4
+ declare const tabsList: (props?: ({
5
+ fill?: boolean | null | undefined;
6
+ } & import('class-variance-authority/types').ClassProp) | undefined) => string;
8
7
  /**
9
8
  * Tabs.Root — container that manages the active tab value and orientation context.
10
9
  *
11
10
  * @see https://base-ui.com/react/components/tabs
12
11
  * @llm https://base-ui.com/react/components/tabs.md
13
12
  */
14
- export declare function Root({ className, ...props }: RootProps): import("react/jsx-runtime").JSX.Element;
13
+ export declare function Root(props: React.ComponentProps<typeof TabsPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
15
14
  export declare namespace Root {
16
15
  var displayName: string;
17
16
  }
18
- type ListProps = Omit<React.HTMLAttributes<HTMLDivElement>, "className"> & {
19
- /** @default false */
20
- activateOnFocus?: UpstreamList["activateOnFocus"];
21
- /** @default true */
22
- loopFocus?: UpstreamList["loopFocus"];
17
+ interface ListProps extends UpstreamList, VariantProps<typeof tabsList> {
23
18
  /**
24
19
  * Give every tab an equal share of the list's length (equal width when
25
20
  * horizontal). When vertical, this only takes effect if the list is stretched
26
21
  * to a definite height.
27
- * @default false
28
22
  */
29
- fill?: boolean;
30
- className?: UpstreamList["className"];
31
- render?: UpstreamList["render"];
32
- };
23
+ fill?: VariantProps<typeof tabsList>["fill"];
24
+ }
33
25
  /** Tabs.List — the strip of Tabs.Tab triggers, plus the sliding Tabs.Indicator. */
34
- export declare function List({ fill, className, ...props }: ListProps): import("react/jsx-runtime").JSX.Element;
26
+ export declare function List({ fill, ...props }: ListProps): import("react/jsx-runtime").JSX.Element;
35
27
  export declare namespace List {
36
28
  var displayName: string;
37
29
  }
38
- type TabProps = Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "className" | "value" | "disabled"> & {
39
- value: UpstreamTab["value"];
40
- /** @default true */
41
- nativeButton?: UpstreamTab["nativeButton"];
42
- disabled?: UpstreamTab["disabled"];
43
- className?: UpstreamTab["className"];
44
- render?: UpstreamTab["render"];
45
- };
46
30
  /** Tabs.Tab — a single trigger. Reads `data-active`/`data-disabled` from Base UI for all visual state. */
47
- export declare function Tab({ className, ...props }: TabProps): import("react/jsx-runtime").JSX.Element;
31
+ export declare function Tab(props: React.ComponentProps<typeof TabsPrimitive.Tab>): import("react/jsx-runtime").JSX.Element;
48
32
  export declare namespace Tab {
49
33
  var displayName: string;
50
34
  }
51
- type IndicatorProps = Omit<React.HTMLAttributes<HTMLSpanElement>, "className"> & {
52
- /** @default false */
53
- renderBeforeHydration?: UpstreamIndicator["renderBeforeHydration"];
54
- className?: UpstreamIndicator["className"];
55
- render?: UpstreamIndicator["render"];
56
- };
57
35
  /**
58
36
  * Tabs.Indicator — the bordered box marking the active tab, overlapping the
59
37
  * shared hairline border to visually fuse the active tab with the panel
@@ -61,30 +39,22 @@ type IndicatorProps = Omit<React.HTMLAttributes<HTMLSpanElement>, "className"> &
61
39
  * properties Base UI writes onto it; render once per Tabs.List, after the
62
40
  * Tabs.Tab list.
63
41
  */
64
- export declare function Indicator({ className, ...props }: IndicatorProps): import("react/jsx-runtime").JSX.Element;
42
+ export declare function Indicator(props: React.ComponentProps<typeof TabsPrimitive.Indicator>): import("react/jsx-runtime").JSX.Element;
65
43
  export declare namespace Indicator {
66
44
  var displayName: string;
67
45
  }
68
- type PanelViewportProps = React.HTMLAttributes<HTMLDivElement>;
69
46
  /**
70
47
  * Tabs.PanelViewport — the shared frame Tabs.Panel elements render inside.
71
48
  * No Base UI equivalent exists (upstream leaves this as a plain wrapper div
72
49
  * in its own reference); we surface it as a named part since its hairline
73
50
  * border is what Tabs.Indicator visually fuses into.
74
51
  */
75
- export declare function PanelViewport({ className, ...props }: PanelViewportProps): import("react/jsx-runtime").JSX.Element;
52
+ export declare function PanelViewport(props: React.HTMLAttributes<HTMLDivElement>): import("react/jsx-runtime").JSX.Element;
76
53
  export declare namespace PanelViewport {
77
54
  var displayName: string;
78
55
  }
79
- type PanelProps = Omit<React.HTMLAttributes<HTMLDivElement>, "className"> & {
80
- value: UpstreamPanel["value"];
81
- /** @default false */
82
- keepMounted?: UpstreamPanel["keepMounted"];
83
- className?: UpstreamPanel["className"];
84
- render?: UpstreamPanel["render"];
85
- };
86
56
  /** Tabs.Panel — the content shown for a matching Tabs.Tab value. */
87
- export declare function Panel({ className, ...props }: PanelProps): import("react/jsx-runtime").JSX.Element;
57
+ export declare function Panel(props: React.ComponentProps<typeof TabsPrimitive.Panel>): import("react/jsx-runtime").JSX.Element;
88
58
  export declare namespace Panel {
89
59
  var displayName: string;
90
60
  }
@@ -1,16 +1,7 @@
1
1
  import { Toast as ToastPrimitive } from '@base-ui/react/toast';
2
2
  import { VariantProps } from 'class-variance-authority';
3
- type UpstreamProvider = React.ComponentProps<typeof ToastPrimitive.Provider>;
4
- type UpstreamPortal = React.ComponentProps<typeof ToastPrimitive.Portal>;
5
3
  type UpstreamViewport = React.ComponentProps<typeof ToastPrimitive.Viewport>;
6
4
  type UpstreamRoot = React.ComponentProps<typeof ToastPrimitive.Root>;
7
- type UpstreamContent = React.ComponentProps<typeof ToastPrimitive.Content>;
8
- type UpstreamTitle = React.ComponentProps<typeof ToastPrimitive.Title>;
9
- type UpstreamDescription = React.ComponentProps<typeof ToastPrimitive.Description>;
10
- type UpstreamClose = React.ComponentProps<typeof ToastPrimitive.Close>;
11
- type UpstreamAction = React.ComponentProps<typeof ToastPrimitive.Action>;
12
- type UpstreamPositioner = React.ComponentProps<typeof ToastPrimitive.Positioner>;
13
- type UpstreamArrow = React.ComponentProps<typeof ToastPrimitive.Arrow>;
14
5
  declare const toastViewport: (props?: ({
15
6
  position?: "top-left" | "top-center" | "top-right" | "bottom-left" | "bottom-center" | "bottom-right" | null | undefined;
16
7
  width?: "default" | "content" | "compact" | "wide" | null | undefined;
@@ -30,12 +21,6 @@ export declare const useToastManager: typeof ToastPrimitive.useToastManager;
30
21
  * `toastManager`.
31
22
  */
32
23
  export declare const createToastManager: typeof ToastPrimitive.createToastManager;
33
- type ProviderProps = {
34
- timeout?: UpstreamProvider["timeout"];
35
- limit?: UpstreamProvider["limit"];
36
- toastManager?: UpstreamProvider["toastManager"];
37
- children?: UpstreamProvider["children"];
38
- };
39
24
  /**
40
25
  * Toast.Provider — owns the toast queue for its subtree. Renders no DOM element.
41
26
  *
@@ -45,155 +30,85 @@ type ProviderProps = {
45
30
  * @see https://base-ui.com/react/components/toast
46
31
  * @llm https://base-ui.com/react/components/toast.md
47
32
  */
48
- export declare function Provider({ timeout, limit, ...props }: ProviderProps): import("react/jsx-runtime").JSX.Element;
33
+ export declare function Provider({ timeout, limit, ...props }: React.ComponentProps<typeof ToastPrimitive.Provider>): import("react/jsx-runtime").JSX.Element;
49
34
  export declare namespace Provider {
50
35
  var displayName: string;
51
36
  }
52
- type PortalProps = Omit<React.HTMLAttributes<HTMLDivElement>, "className"> & {
53
- container?: UpstreamPortal["container"];
54
- className?: UpstreamPortal["className"];
55
- render?: UpstreamPortal["render"];
56
- children?: UpstreamPortal["children"];
57
- };
58
37
  /** Toast.Portal — moves the viewport out of the page flow so toasts float above the app. */
59
- export declare function Portal({ className, ...props }: PortalProps): import("react/jsx-runtime").JSX.Element;
38
+ export declare function Portal(props: React.ComponentProps<typeof ToastPrimitive.Portal>): import("react/jsx-runtime").JSX.Element;
60
39
  export declare namespace Portal {
61
40
  var displayName: string;
62
41
  }
63
- type ViewportProps = Omit<React.HTMLAttributes<HTMLDivElement>, "className"> & {
42
+ interface ViewportProps extends UpstreamViewport, VariantProps<typeof toastViewport> {
64
43
  /** Which edge or corner of the screen the stack anchors to. */
65
44
  position?: VariantProps<typeof toastViewport>["position"];
66
45
  /** Width treatment for the toast stack. */
67
46
  width?: VariantProps<typeof toastViewport>["width"];
68
- className?: UpstreamViewport["className"];
69
- render?: UpstreamViewport["render"];
70
- };
47
+ }
71
48
  /**
72
49
  * Toast.Viewport — the fixed layer that holds the stack. Hovering or focusing it
73
50
  * expands the collapsed toasts; it ignores pointer events except on the toasts
74
51
  * themselves so the app underneath stays clickable.
75
52
  */
76
- export declare function Viewport({ className, position, width, ...props }: ViewportProps): import("react/jsx-runtime").JSX.Element;
53
+ export declare function Viewport({ position, width, ...props }: ViewportProps): import("react/jsx-runtime").JSX.Element;
77
54
  export declare namespace Viewport {
78
55
  var displayName: string;
79
56
  }
80
- type RootProps = Omit<React.HTMLAttributes<HTMLDivElement>, "className"> & {
57
+ interface RootProps extends UpstreamRoot, VariantProps<typeof toastRoot> {
81
58
  /** Semantic treatment for the toast surface. */
82
59
  variant?: VariantProps<typeof toastRoot>["variant"];
83
- /** The toast object from the manager's `toasts` array. */
84
- toast: UpstreamRoot["toast"];
85
- /** @default ['down', 'right'] */
86
- swipeDirection?: UpstreamRoot["swipeDirection"];
87
- className?: UpstreamRoot["className"];
88
- render?: UpstreamRoot["render"];
89
- };
60
+ }
90
61
  /**
91
62
  * Toast.Root — one toast surface. Carries the upstream state as data attributes
92
63
  * (`data-starting-style`, `data-ending-style`, `data-expanded`, `data-limited`,
93
64
  * `data-swiping`) which the stylesheet uses for stack and exit motion.
94
65
  */
95
- export declare function Root({ className, variant, ...props }: RootProps): import("react/jsx-runtime").JSX.Element;
66
+ export declare function Root({ variant, ...props }: RootProps): import("react/jsx-runtime").JSX.Element;
96
67
  export declare namespace Root {
97
68
  var displayName: string;
98
69
  }
99
- type ContentProps = Omit<React.HTMLAttributes<HTMLDivElement>, "className"> & {
100
- className?: UpstreamContent["className"];
101
- render?: UpstreamContent["render"];
102
- };
103
70
  /**
104
71
  * Toast.Content — lays out title, description, action, and close. Fades out on
105
72
  * the toasts stacked behind the frontmost one via `data-behind`.
106
73
  */
107
- export declare function Content({ className, ...props }: ContentProps): import("react/jsx-runtime").JSX.Element;
74
+ export declare function Content(props: React.ComponentProps<typeof ToastPrimitive.Content>): import("react/jsx-runtime").JSX.Element;
108
75
  export declare namespace Content {
109
76
  var displayName: string;
110
77
  }
111
- type TitleProps = Omit<React.HTMLAttributes<HTMLHeadingElement>, "className"> & {
112
- className?: UpstreamTitle["className"];
113
- render?: UpstreamTitle["render"];
114
- };
115
78
  /** Toast.Title — the message heading. Falls back to the toast object's `title` when given no children. */
116
- export declare function Title({ className, ...props }: TitleProps): import("react/jsx-runtime").JSX.Element;
79
+ export declare function Title(props: React.ComponentProps<typeof ToastPrimitive.Title>): import("react/jsx-runtime").JSX.Element;
117
80
  export declare namespace Title {
118
81
  var displayName: string;
119
82
  }
120
- type DescriptionProps = Omit<React.HTMLAttributes<HTMLParagraphElement>, "className"> & {
121
- className?: UpstreamDescription["className"];
122
- render?: UpstreamDescription["render"];
123
- };
124
83
  /** Toast.Description — supporting copy. Falls back to the toast object's `description` when given no children. */
125
- export declare function Description({ className, ...props }: DescriptionProps): import("react/jsx-runtime").JSX.Element;
84
+ export declare function Description(props: React.ComponentProps<typeof ToastPrimitive.Description>): import("react/jsx-runtime").JSX.Element;
126
85
  export declare namespace Description {
127
86
  var displayName: string;
128
87
  }
129
- type CloseProps = Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "className"> & {
130
- /** @default true */
131
- nativeButton?: UpstreamClose["nativeButton"];
132
- className?: UpstreamClose["className"];
133
- render?: UpstreamClose["render"];
134
- };
135
88
  /** Toast.Close — dismisses the toast it sits in. */
136
- export declare function Close({ className, ...props }: CloseProps): import("react/jsx-runtime").JSX.Element;
89
+ export declare function Close(props: React.ComponentProps<typeof ToastPrimitive.Close>): import("react/jsx-runtime").JSX.Element;
137
90
  export declare namespace Close {
138
91
  var displayName: string;
139
92
  }
140
- type ActionProps = Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "className"> & {
141
- /** @default true */
142
- nativeButton?: UpstreamAction["nativeButton"];
143
- className?: UpstreamAction["className"];
144
- render?: UpstreamAction["render"];
145
- };
146
93
  /**
147
94
  * Toast.Action — the toast's single affordance, typically an undo. Its behavior
148
95
  * comes from `actionProps` on the toast object passed to the manager.
149
96
  */
150
- export declare function Action({ className, ...props }: ActionProps): import("react/jsx-runtime").JSX.Element;
97
+ export declare function Action(props: React.ComponentProps<typeof ToastPrimitive.Action>): import("react/jsx-runtime").JSX.Element;
151
98
  export declare namespace Action {
152
99
  var displayName: string;
153
100
  }
154
- type PositionerProps = Omit<React.HTMLAttributes<HTMLDivElement>, "className"> & {
155
- /** The toast object from the manager's `toasts` array. */
156
- toast: UpstreamPositioner["toast"];
157
- /** @default 'top' */
158
- side?: UpstreamPositioner["side"];
159
- /** @default 'center' */
160
- align?: UpstreamPositioner["align"];
161
- /** @default 0 */
162
- sideOffset?: UpstreamPositioner["sideOffset"];
163
- /** @default 0 */
164
- alignOffset?: UpstreamPositioner["alignOffset"];
165
- /** @default 5 */
166
- arrowPadding?: UpstreamPositioner["arrowPadding"];
167
- anchor?: UpstreamPositioner["anchor"];
168
- collisionAvoidance?: UpstreamPositioner["collisionAvoidance"];
169
- /** @default 'clipping-ancestors' */
170
- collisionBoundary?: UpstreamPositioner["collisionBoundary"];
171
- /** @default 5 */
172
- collisionPadding?: UpstreamPositioner["collisionPadding"];
173
- /** @default 'absolute' */
174
- positionMethod?: UpstreamPositioner["positionMethod"];
175
- /** @default false */
176
- sticky?: UpstreamPositioner["sticky"];
177
- /** @default false */
178
- disableAnchorTracking?: UpstreamPositioner["disableAnchorTracking"];
179
- className?: UpstreamPositioner["className"];
180
- render?: UpstreamPositioner["render"];
181
- };
182
101
  /**
183
102
  * Toast.Positioner — anchors a toast to an element instead of the stack, for
184
103
  * feedback that belongs next to the control that caused it. Wrap a `Root` in it
185
104
  * and the root switches to the compact content-sized surface.
186
105
  */
187
- export declare function Positioner({ className, ...props }: PositionerProps): import("react/jsx-runtime").JSX.Element;
106
+ export declare function Positioner(props: React.ComponentProps<typeof ToastPrimitive.Positioner>): import("react/jsx-runtime").JSX.Element;
188
107
  export declare namespace Positioner {
189
108
  var displayName: string;
190
109
  }
191
- type ArrowProps = Omit<React.HTMLAttributes<HTMLDivElement>, "className"> & {
192
- className?: UpstreamArrow["className"];
193
- render?: UpstreamArrow["render"];
194
- };
195
110
  /** Toast.Arrow — pointer joining an anchored toast to its anchor. Receives `data-side` for orientation. */
196
- export declare function Arrow({ className, ...props }: ArrowProps): import("react/jsx-runtime").JSX.Element;
111
+ export declare function Arrow(props: React.ComponentProps<typeof ToastPrimitive.Arrow>): import("react/jsx-runtime").JSX.Element;
197
112
  export declare namespace Arrow {
198
113
  var displayName: string;
199
114
  }
@@ -1,24 +1,7 @@
1
1
  import { Toggle as TogglePrimitive } from '@base-ui/react/toggle';
2
2
  type UpstreamToggle = React.ComponentProps<typeof TogglePrimitive>;
3
- type Props = Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "className" | "style" | "value" | "disabled"> & {
4
- /**
5
- * Identifies the toggle within a `ToggleGroup`: the value contributed to the
6
- * group's value array. Optional for a standalone toggle.
7
- */
8
- value?: UpstreamToggle["value"];
9
- /** Whether the toggle is pressed. */
10
- pressed?: UpstreamToggle["pressed"];
11
- /** @default false */
12
- defaultPressed?: UpstreamToggle["defaultPressed"];
13
- onPressedChange?: UpstreamToggle["onPressedChange"];
14
- /** @default false */
15
- disabled?: UpstreamToggle["disabled"];
16
- /** @default true */
17
- nativeButton?: UpstreamToggle["nativeButton"];
18
- className?: UpstreamToggle["className"];
19
- style?: UpstreamToggle["style"];
20
- render?: UpstreamToggle["render"];
21
- };
3
+ interface Props extends UpstreamToggle {
4
+ }
22
5
  /**
23
6
  * Toggle - a two-state button. Use standalone for a
24
7
  * single on/off action (bold, mute), or compose several inside a `ToggleGroup`
@@ -27,5 +10,5 @@ type Props = Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "className" | "
27
10
  * @doc https://base-ui.com/react/components/toggle
28
11
  * @llm https://base-ui.com/react/components/toggle.md
29
12
  */
30
- export declare function Toggle({ className, style, children, ...props }: Props): import("react/jsx-runtime").JSX.Element;
13
+ export declare function Toggle({ style, children, ...props }: Props): import("react/jsx-runtime").JSX.Element;
31
14
  export {};
@@ -1,23 +1,7 @@
1
1
  import { ToggleGroup as ToggleGroupPrimitive } from '@base-ui/react/toggle-group';
2
2
  type UpstreamRoot = React.ComponentProps<typeof ToggleGroupPrimitive>;
3
- type Props = Omit<React.HTMLAttributes<HTMLDivElement>, "className" | "style" | "defaultValue"> & {
4
- /** Values of the currently pressed items (controlled). Always an array, even in single-select. */
5
- value?: UpstreamRoot["value"];
6
- /** Values of the initially pressed items (uncontrolled). */
7
- defaultValue?: UpstreamRoot["defaultValue"];
8
- onValueChange?: UpstreamRoot["onValueChange"];
9
- /** @default false */
10
- multiple?: UpstreamRoot["multiple"];
11
- /** @default false */
12
- disabled?: UpstreamRoot["disabled"];
13
- /** @default "horizontal" */
14
- orientation?: UpstreamRoot["orientation"];
15
- /** @default true */
16
- loopFocus?: UpstreamRoot["loopFocus"];
17
- className?: UpstreamRoot["className"];
18
- style?: UpstreamRoot["style"];
19
- render?: UpstreamRoot["render"];
20
- };
3
+ interface Props extends UpstreamRoot {
4
+ }
21
5
  /**
22
6
  * ToggleGroup - a set of connected `Toggle`s sharing one value. Single-select by
23
7
  * default (a segmented control); set `multiple` for multi-select. Compose one
@@ -26,5 +10,5 @@ type Props = Omit<React.HTMLAttributes<HTMLDivElement>, "className" | "style" |
26
10
  * @doc https://base-ui.com/react/components/toggle-group
27
11
  * @llm https://base-ui.com/react/components/toggle-group.md
28
12
  */
29
- export declare function ToggleGroup({ className, ...props }: Props): import("react/jsx-runtime").JSX.Element;
13
+ export declare function ToggleGroup(props: Props): import("react/jsx-runtime").JSX.Element;
30
14
  export {};
@@ -1,21 +1,16 @@
1
1
  import { Tooltip as TooltipPrimitive } from '@base-ui/react/tooltip';
2
- type UpstreamProvider = React.ComponentProps<typeof TooltipPrimitive.Provider>;
2
+ import { VariantProps } from 'class-variance-authority';
3
3
  type UpstreamTrigger = React.ComponentProps<typeof TooltipPrimitive.Trigger>;
4
- type UpstreamPortal = React.ComponentProps<typeof TooltipPrimitive.Portal>;
5
4
  type UpstreamPositioner = React.ComponentProps<typeof TooltipPrimitive.Positioner>;
6
5
  type UpstreamPopup = React.ComponentProps<typeof TooltipPrimitive.Popup>;
7
- type UpstreamArrow = React.ComponentProps<typeof TooltipPrimitive.Arrow>;
8
- type UpstreamViewport = React.ComponentProps<typeof TooltipPrimitive.Viewport>;
6
+ declare const tooltipTrigger: (props?: ({
7
+ variant?: "primary" | "secondary" | "positive" | "negative" | null | undefined;
8
+ inline?: boolean | null | undefined;
9
+ } & import('class-variance-authority/types').ClassProp) | undefined) => string;
10
+ declare const tooltipPopup: (props?: ({
11
+ variant?: "primary" | "secondary" | "positive" | "negative" | null | undefined;
12
+ } & import('class-variance-authority/types').ClassProp) | undefined) => string;
9
13
  export declare const createHandle: typeof TooltipPrimitive.createHandle;
10
- type ProviderProps = {
11
- /** @default undefined */
12
- delay?: UpstreamProvider["delay"];
13
- /** @default undefined */
14
- closeDelay?: UpstreamProvider["closeDelay"];
15
- /** @default 400 */
16
- timeout?: UpstreamProvider["timeout"];
17
- children?: UpstreamProvider["children"];
18
- };
19
14
  /**
20
15
  * Tooltip.Provider — shares open/close delay across a group of tooltips so
21
16
  * moving between neighbouring triggers feels instant. Renders no DOM element.
@@ -23,7 +18,7 @@ type ProviderProps = {
23
18
  * @see https://base-ui.com/react/components/tooltip
24
19
  * @llm https://base-ui.com/react/components/tooltip.md
25
20
  */
26
- export declare function Provider(props: ProviderProps): import("react/jsx-runtime").JSX.Element;
21
+ export declare function Provider(props: React.ComponentProps<typeof TooltipPrimitive.Provider>): import("react/jsx-runtime").JSX.Element;
27
22
  export declare namespace Provider {
28
23
  var displayName: string;
29
24
  }
@@ -38,9 +33,7 @@ export declare function Root<Payload = unknown>(props: RootProps<Payload>): impo
38
33
  export declare namespace Root {
39
34
  var displayName: string;
40
35
  }
41
- type TriggerProps = Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "className"> & {
42
- variant?: "primary" | "secondary" | "positive" | "negative";
43
- inline?: boolean;
36
+ interface TriggerProps extends UpstreamTrigger, VariantProps<typeof tooltipTrigger> {
44
37
  /**
45
38
  * Milliseconds to wait before opening on hover. Defaults to a snappier value
46
39
  * than Base UI's 600ms — a deliberate imf default per "make the correct
@@ -48,54 +41,17 @@ type TriggerProps = Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "classNa
48
41
  * instantly after the first regardless of this value.
49
42
  */
50
43
  delay?: UpstreamTrigger["delay"];
51
- /** @default 0 */
52
- closeDelay?: UpstreamTrigger["closeDelay"];
53
- /** @default false */
54
- disabled?: UpstreamTrigger["disabled"];
55
- handle?: UpstreamTrigger["handle"];
56
- payload?: UpstreamTrigger["payload"];
57
- className?: UpstreamTrigger["className"];
58
- render?: UpstreamTrigger["render"];
59
- };
44
+ }
60
45
  /** Tooltip.Trigger — element that reveals the tooltip on hover or focus. */
61
- export declare function Trigger({ variant, inline, delay, className, ...props }: TriggerProps): import("react/jsx-runtime").JSX.Element;
46
+ export declare function Trigger({ variant, inline, delay, ...props }: TriggerProps): import("react/jsx-runtime").JSX.Element;
62
47
  export declare namespace Trigger {
63
48
  var displayName: string;
64
49
  }
65
- type PortalProps = {
66
- container?: UpstreamPortal["container"];
67
- /** @default false */
68
- keepMounted?: UpstreamPortal["keepMounted"];
69
- children?: UpstreamPortal["children"];
70
- };
71
50
  /** Tooltip.Portal — renders the positioner in a portal outside the main document flow. */
72
- export declare function Portal(props: PortalProps): import("react/jsx-runtime").JSX.Element;
51
+ export declare function Portal(props: React.ComponentProps<typeof TooltipPrimitive.Portal>): import("react/jsx-runtime").JSX.Element;
73
52
  export declare namespace Portal {
74
53
  var displayName: string;
75
54
  }
76
- type PositionerProps = Omit<React.HTMLAttributes<HTMLDivElement>, "className"> & {
77
- /** @default 'top' */
78
- side?: UpstreamPositioner["side"];
79
- /** @default 'center' */
80
- align?: UpstreamPositioner["align"];
81
- sideOffset?: UpstreamPositioner["sideOffset"];
82
- /** @default 0 */
83
- alignOffset?: UpstreamPositioner["alignOffset"];
84
- /** @default 5 */
85
- arrowPadding?: UpstreamPositioner["arrowPadding"];
86
- anchor?: UpstreamPositioner["anchor"];
87
- /** @default false */
88
- disableAnchorTracking?: UpstreamPositioner["disableAnchorTracking"];
89
- collisionAvoidance?: UpstreamPositioner["collisionAvoidance"];
90
- /** @default 'clipping-ancestors' */
91
- collisionBoundary?: UpstreamPositioner["collisionBoundary"];
92
- /** @default 5 */
93
- collisionPadding?: UpstreamPositioner["collisionPadding"];
94
- /** @default false */
95
- sticky?: UpstreamPositioner["sticky"];
96
- className?: UpstreamPositioner["className"];
97
- render?: UpstreamPositioner["render"];
98
- };
99
55
  /**
100
56
  * Tooltip.Positioner — positions the popup relative to the trigger via
101
57
  * floating-point layout.
@@ -105,36 +61,26 @@ type PositionerProps = Omit<React.HTMLAttributes<HTMLDivElement>, "className"> &
105
61
  * rather than landing flush on the trigger. Keep the two in sync if either
106
62
  * changes.
107
63
  */
108
- export declare function Positioner({ className, sideOffset, ...props }: PositionerProps): import("react/jsx-runtime").JSX.Element;
64
+ export declare function Positioner({ sideOffset, ...props }: React.ComponentProps<typeof TooltipPrimitive.Positioner>): import("react/jsx-runtime").JSX.Element;
109
65
  export declare namespace Positioner {
110
66
  var displayName: string;
111
67
  }
112
- type PopupProps = Omit<React.HTMLAttributes<HTMLDivElement>, "className"> & {
68
+ interface PopupProps extends UpstreamPopup, VariantProps<typeof tooltipPopup> {
113
69
  /** Match to the Trigger variant to tint the popup border accordingly. */
114
- variant?: "primary" | "secondary" | "positive" | "negative";
115
- className?: UpstreamPopup["className"];
116
- render?: UpstreamPopup["render"];
117
- };
70
+ variant?: VariantProps<typeof tooltipPopup>["variant"];
71
+ }
118
72
  /** Tooltip.Popup — the visible label surface. Token-mapped background and border, flat by brand default. */
119
- export declare function Popup({ className, variant, ...props }: PopupProps): import("react/jsx-runtime").JSX.Element;
73
+ export declare function Popup({ variant, ...props }: PopupProps): import("react/jsx-runtime").JSX.Element;
120
74
  export declare namespace Popup {
121
75
  var displayName: string;
122
76
  }
123
- type ArrowProps = Omit<React.HTMLAttributes<HTMLDivElement>, "className"> & {
124
- className?: UpstreamArrow["className"];
125
- render?: UpstreamArrow["render"];
126
- };
127
77
  /** Tooltip.Arrow — visual pointer arrow anchored to the popup edge. Receives data-side for orientation. */
128
- export declare function Arrow({ className, ...props }: ArrowProps): import("react/jsx-runtime").JSX.Element;
78
+ export declare function Arrow(props: React.ComponentProps<typeof TooltipPrimitive.Arrow>): import("react/jsx-runtime").JSX.Element;
129
79
  export declare namespace Arrow {
130
80
  var displayName: string;
131
81
  }
132
- type ViewportProps = Omit<React.HTMLAttributes<HTMLDivElement>, "className"> & {
133
- className?: UpstreamViewport["className"];
134
- render?: UpstreamViewport["render"];
135
- };
136
82
  /** Tooltip.Viewport — content wrapper that supports direction-aware animations when content swaps. */
137
- export declare function Viewport({ className, ...props }: ViewportProps): import("react/jsx-runtime").JSX.Element;
83
+ export declare function Viewport(props: React.ComponentProps<typeof TooltipPrimitive.Viewport>): import("react/jsx-runtime").JSX.Element;
138
84
  export declare namespace Viewport {
139
85
  var displayName: string;
140
86
  }