@imfusion/web-ui 0.5.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.
- package/README.md +60 -0
- package/bin/install-skill.js +180 -0
- package/dist/assets/vendors/base-ui.d.ts +8 -0
- package/dist/breakpoints/index.d.ts +3 -0
- package/dist/breakpoints/min-width.d.ts +9 -0
- package/dist/breakpoints/registry.d.ts +19 -0
- package/dist/code-qBbqAHK-.js +190 -0
- package/dist/codegen/gen-breakpoints-css.d.ts +6 -0
- package/dist/codegen/gen-css-types.d.ts +1 -0
- package/dist/codegen/gen-token-css.d.ts +6 -0
- package/dist/codegen/run.d.ts +1 -0
- package/dist/components/app-shell/app-shell.d.ts +66 -0
- package/dist/components/app-shell/app-shell.meta.d.ts +2 -0
- package/dist/components/app-shell/index.d.ts +2 -0
- package/dist/components/button/button.d.ts +30 -0
- package/dist/components/button/button.meta.d.ts +2 -0
- package/dist/components/button/index.d.ts +2 -0
- package/dist/components/callout/callout.d.ts +42 -0
- package/dist/components/callout/callout.meta.d.ts +2 -0
- package/dist/components/callout/index.d.ts +2 -0
- package/dist/components/card/card.d.ts +64 -0
- package/dist/components/card/card.meta.d.ts +2 -0
- package/dist/components/card/index.d.ts +2 -0
- package/dist/components/checkbox/checkbox.d.ts +56 -0
- package/dist/components/checkbox/checkbox.meta.d.ts +2 -0
- package/dist/components/checkbox/index.d.ts +2 -0
- package/dist/components/chip/chip.cva.d.ts +12 -0
- package/dist/components/chip/chip.d.ts +11 -0
- package/dist/components/chip/chip.meta.d.ts +2 -0
- package/dist/components/chip/index.d.ts +2 -0
- package/dist/components/chip-link/chip-link.d.ts +17 -0
- package/dist/components/chip-link/chip-link.meta.d.ts +2 -0
- package/dist/components/chip-link/index.d.ts +2 -0
- package/dist/components/code/code.d.ts +60 -0
- package/dist/components/code/code.meta.d.ts +2 -0
- package/dist/components/code/index.d.ts +2 -0
- package/dist/components/collapsible/collapsible.d.ts +57 -0
- package/dist/components/collapsible/collapsible.meta.d.ts +2 -0
- package/dist/components/collapsible/index.d.ts +2 -0
- package/dist/components/copy-button/copy-button.d.ts +21 -0
- package/dist/components/copy-button/copy-button.meta.d.ts +2 -0
- package/dist/components/copy-button/index.d.ts +2 -0
- package/dist/components/drawer/drawer.d.ts +191 -0
- package/dist/components/drawer/drawer.meta.d.ts +2 -0
- package/dist/components/drawer/index.d.ts +2 -0
- package/dist/components/input/index.d.ts +2 -0
- package/dist/components/input/input.d.ts +25 -0
- package/dist/components/input/input.meta.d.ts +2 -0
- package/dist/components/logo/imfusion/imfusion.d.ts +16 -0
- package/dist/components/logo/imfusion/index.d.ts +1 -0
- package/dist/components/logo/index.d.ts +3 -0
- package/dist/components/logo/logo.d.ts +15 -0
- package/dist/components/logo/logo.meta.d.ts +2 -0
- package/dist/components/navigation-menu/index.d.ts +2 -0
- package/dist/components/navigation-menu/navigation-menu.d.ts +20 -0
- package/dist/components/navigation-menu/navigation-menu.meta.d.ts +2 -0
- package/dist/components/navigation-menu/subs/flyout-link.d.ts +24 -0
- package/dist/components/navigation-menu/subs/inline-submenu.d.ts +41 -0
- package/dist/components/navigation-menu/subs/link.d.ts +64 -0
- package/dist/components/navigation-menu/subs/overlay.d.ts +75 -0
- package/dist/components/navigation-menu/subs/shared.d.ts +20 -0
- package/dist/components/navigation-menu/subs/structure.d.ts +64 -0
- package/dist/components/navigation-menu/subs/trigger.d.ts +47 -0
- package/dist/components/popover/index.d.ts +2 -0
- package/dist/components/popover/popover.d.ts +181 -0
- package/dist/components/popover/popover.meta.d.ts +2 -0
- package/dist/components/row/index.d.ts +2 -0
- package/dist/components/row/row.d.ts +28 -0
- package/dist/components/row/row.meta.d.ts +2 -0
- package/dist/components/select/index.d.ts +2 -0
- package/dist/components/select/select.d.ts +278 -0
- package/dist/components/select/select.meta.d.ts +2 -0
- package/dist/components/separator/index.d.ts +2 -0
- package/dist/components/separator/separator.d.ts +15 -0
- package/dist/components/separator/separator.meta.d.ts +2 -0
- package/dist/components/slider/index.d.ts +2 -0
- package/dist/components/slider/slider.d.ts +111 -0
- package/dist/components/slider/slider.meta.d.ts +2 -0
- package/dist/components/spinner/index.d.ts +2 -0
- package/dist/components/spinner/spinner.d.ts +19 -0
- package/dist/components/spinner/spinner.geometry.d.ts +37 -0
- package/dist/components/spinner/spinner.meta.d.ts +2 -0
- package/dist/components/stack/index.d.ts +2 -0
- package/dist/components/stack/stack.d.ts +18 -0
- package/dist/components/stack/stack.meta.d.ts +2 -0
- package/dist/components/switch/index.d.ts +2 -0
- package/dist/components/switch/switch.d.ts +45 -0
- package/dist/components/switch/switch.meta.d.ts +2 -0
- package/dist/components/table/index.d.ts +2 -0
- package/dist/components/table/table.d.ts +66 -0
- package/dist/components/table/table.meta.d.ts +2 -0
- package/dist/components/tabs/index.d.ts +2 -0
- package/dist/components/tabs/tabs.d.ts +91 -0
- package/dist/components/tabs/tabs.meta.d.ts +2 -0
- package/dist/components/toggle/index.d.ts +2 -0
- package/dist/components/toggle/toggle.d.ts +31 -0
- package/dist/components/toggle/toggle.meta.d.ts +2 -0
- package/dist/components/toggle-group/index.d.ts +2 -0
- package/dist/components/toggle-group/toggle-group.d.ts +30 -0
- package/dist/components/toggle-group/toggle-group.meta.d.ts +2 -0
- package/dist/components/tooltip/index.d.ts +2 -0
- package/dist/components/tooltip/tooltip.d.ts +164 -0
- package/dist/components/tooltip/tooltip.meta.d.ts +2 -0
- package/dist/components/typo/index.d.ts +2 -0
- package/dist/components/typo/typo.d.ts +100 -0
- package/dist/components/typo/typo.meta.d.ts +2 -0
- package/dist/config.d.ts +8 -0
- package/dist/docgen/gen-docgen.d.ts +1 -0
- package/dist/docgen/gen-docgen.utils.d.ts +13 -0
- package/dist/hooks/index.d.ts +5 -0
- package/dist/hooks/use-clipboard.d.ts +12 -0
- package/dist/hooks/use-color-scheme.d.ts +31 -0
- package/dist/hooks/use-media-query.d.ts +13 -0
- package/dist/index.d.ts +38 -0
- package/dist/index.js +13103 -0
- package/dist/integrations/code-highlight/code-highlight.d.ts +21 -0
- package/dist/integrations/code-highlight/code-highlight.meta.d.ts +2 -0
- package/dist/integrations/code-highlight/highlighter.d.ts +6 -0
- package/dist/integrations/code-highlight/index.d.ts +3 -0
- package/dist/integrations/code-highlight.js +97 -0
- package/dist/integrations/image-display-options/image-display-options-view.d.ts +22 -0
- package/dist/integrations/image-display-options/image-display-options-view.utils.d.ts +40 -0
- package/dist/integrations/image-display-options/image-display-options.d.ts +29 -0
- package/dist/integrations/image-display-options/image-display-options.meta.d.ts +2 -0
- package/dist/integrations/image-display-options/index.d.ts +2 -0
- package/dist/integrations/image-display-options.js +319 -0
- package/dist/llms/gen-llms.d.ts +1 -0
- package/dist/meta-B8C51eyL.js +74 -0
- package/dist/provider/index.d.ts +1 -0
- package/dist/provider/web-ui-provider.d.ts +6 -0
- package/dist/style.css +2 -0
- package/dist/tabs-DqBFSqq6.js +3789 -0
- package/dist/tokens/apply.d.ts +55 -0
- package/dist/tokens/control-registry.d.ts +10 -0
- package/dist/tokens/token-registry.d.ts +13 -0
- package/dist/tokens/types.d.ts +71 -0
- package/dist/tokens/use-token-controls.d.ts +36 -0
- package/dist/types/docgen.d.ts +17 -0
- package/dist/types/meta.d.ts +108 -0
- package/dist/types/theme.d.ts +3 -0
- package/package.json +139 -0
- package/src/docgen/doc.gen.json +4695 -0
- package/src/llms/llms.gen.txt +176 -0
- package/src/llms/skills/imf-web-ui/SKILL.md +46 -0
- package/src/llms/skills/imf-web-ui-components/SKILL.md +100 -0
- package/src/llms/skills/imf-web-ui-frontend-patterns/SKILL.md +67 -0
- package/src/llms/skills/imf-web-ui-frontend-patterns/references/react-patterns.md +94 -0
- package/src/llms/skills/imf-web-ui-setup/SKILL.md +30 -0
- package/src/llms/skills/imf-web-ui-ux/SKILL.md +103 -0
- package/src/llms/skills/imf-web-ui-ux/references/forms.md +48 -0
- package/src/llms/skills/imf-web-ui-ux/references/usability-heuristics.md +29 -0
- package/src/llms/skills/imf-web-ui-ux/references/visual-design.md +38 -0
|
@@ -0,0 +1,278 @@
|
|
|
1
|
+
import { Select as SelectPrimitive } from '@base-ui/react/select';
|
|
2
|
+
type UpstreamRoot = React.ComponentProps<typeof SelectPrimitive.Root>;
|
|
3
|
+
type UpstreamLabel = React.ComponentProps<typeof SelectPrimitive.Label>;
|
|
4
|
+
type UpstreamTrigger = React.ComponentProps<typeof SelectPrimitive.Trigger>;
|
|
5
|
+
type UpstreamValue = React.ComponentProps<typeof SelectPrimitive.Value>;
|
|
6
|
+
type UpstreamIcon = React.ComponentProps<typeof SelectPrimitive.Icon>;
|
|
7
|
+
type UpstreamPortal = React.ComponentProps<typeof SelectPrimitive.Portal>;
|
|
8
|
+
type UpstreamBackdrop = React.ComponentProps<typeof SelectPrimitive.Backdrop>;
|
|
9
|
+
type UpstreamPositioner = React.ComponentProps<typeof SelectPrimitive.Positioner>;
|
|
10
|
+
type UpstreamPopup = React.ComponentProps<typeof SelectPrimitive.Popup>;
|
|
11
|
+
type UpstreamArrow = React.ComponentProps<typeof SelectPrimitive.Arrow>;
|
|
12
|
+
type UpstreamList = React.ComponentProps<typeof SelectPrimitive.List>;
|
|
13
|
+
type UpstreamItem = React.ComponentProps<typeof SelectPrimitive.Item>;
|
|
14
|
+
type UpstreamItemIndicator = React.ComponentProps<typeof SelectPrimitive.ItemIndicator>;
|
|
15
|
+
type UpstreamItemText = React.ComponentProps<typeof SelectPrimitive.ItemText>;
|
|
16
|
+
type UpstreamGroup = React.ComponentProps<typeof SelectPrimitive.Group>;
|
|
17
|
+
type UpstreamGroupLabel = React.ComponentProps<typeof SelectPrimitive.GroupLabel>;
|
|
18
|
+
type UpstreamSeparator = React.ComponentProps<typeof SelectPrimitive.Separator>;
|
|
19
|
+
type UpstreamScrollUpArrow = React.ComponentProps<typeof SelectPrimitive.ScrollUpArrow>;
|
|
20
|
+
type UpstreamScrollDownArrow = React.ComponentProps<typeof SelectPrimitive.ScrollDownArrow>;
|
|
21
|
+
type RootProps = {
|
|
22
|
+
value?: UpstreamRoot["value"];
|
|
23
|
+
defaultValue?: UpstreamRoot["defaultValue"];
|
|
24
|
+
onValueChange?: UpstreamRoot["onValueChange"];
|
|
25
|
+
/** @default false */
|
|
26
|
+
defaultOpen?: UpstreamRoot["defaultOpen"];
|
|
27
|
+
open?: UpstreamRoot["open"];
|
|
28
|
+
onOpenChange?: UpstreamRoot["onOpenChange"];
|
|
29
|
+
onOpenChangeComplete?: UpstreamRoot["onOpenChangeComplete"];
|
|
30
|
+
/** @default false */
|
|
31
|
+
multiple?: UpstreamRoot["multiple"];
|
|
32
|
+
/** @default false */
|
|
33
|
+
disabled?: UpstreamRoot["disabled"];
|
|
34
|
+
/** @default false */
|
|
35
|
+
readOnly?: UpstreamRoot["readOnly"];
|
|
36
|
+
/** @default false */
|
|
37
|
+
required?: UpstreamRoot["required"];
|
|
38
|
+
/** @default true */
|
|
39
|
+
modal?: UpstreamRoot["modal"];
|
|
40
|
+
/** @default true */
|
|
41
|
+
highlightItemOnHover?: UpstreamRoot["highlightItemOnHover"];
|
|
42
|
+
items?: UpstreamRoot["items"];
|
|
43
|
+
isItemEqualToValue?: UpstreamRoot["isItemEqualToValue"];
|
|
44
|
+
itemToStringLabel?: UpstreamRoot["itemToStringLabel"];
|
|
45
|
+
itemToStringValue?: UpstreamRoot["itemToStringValue"];
|
|
46
|
+
autoComplete?: UpstreamRoot["autoComplete"];
|
|
47
|
+
form?: UpstreamRoot["form"];
|
|
48
|
+
inputRef?: UpstreamRoot["inputRef"];
|
|
49
|
+
actionsRef?: UpstreamRoot["actionsRef"];
|
|
50
|
+
name?: UpstreamRoot["name"];
|
|
51
|
+
id?: UpstreamRoot["id"];
|
|
52
|
+
children?: React.ReactNode;
|
|
53
|
+
};
|
|
54
|
+
/**
|
|
55
|
+
* Select.Root — accessible select / listbox primitive.
|
|
56
|
+
*
|
|
57
|
+
* Renders a thin wrapper div so that a sibling Select.Label stacks above the
|
|
58
|
+
* Select.Trigger regardless of the parent's layout. Select.Portal is unaffected
|
|
59
|
+
* (it renders to document.body).
|
|
60
|
+
*
|
|
61
|
+
* @doc https://base-ui.com/react/components/select
|
|
62
|
+
* @llm https://base-ui.com/react/components/select.md
|
|
63
|
+
*/
|
|
64
|
+
export declare function Root({ className, style, ...props }: RootProps & {
|
|
65
|
+
className?: string;
|
|
66
|
+
style?: React.CSSProperties;
|
|
67
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
68
|
+
export declare namespace Root {
|
|
69
|
+
var displayName: string;
|
|
70
|
+
}
|
|
71
|
+
type LabelProps = Omit<React.HTMLAttributes<HTMLDivElement>, "className" | "style"> & {
|
|
72
|
+
className?: UpstreamLabel["className"];
|
|
73
|
+
style?: UpstreamLabel["style"];
|
|
74
|
+
render?: UpstreamLabel["render"];
|
|
75
|
+
};
|
|
76
|
+
/** Select.Label — visible label for the trigger. */
|
|
77
|
+
export declare function Label({ className, ...props }: LabelProps): import("react/jsx-runtime").JSX.Element;
|
|
78
|
+
export declare namespace Label {
|
|
79
|
+
var displayName: string;
|
|
80
|
+
}
|
|
81
|
+
type TriggerProps = Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "className" | "style"> & {
|
|
82
|
+
/** @default true */
|
|
83
|
+
nativeButton?: UpstreamTrigger["nativeButton"];
|
|
84
|
+
className?: UpstreamTrigger["className"];
|
|
85
|
+
style?: UpstreamTrigger["style"];
|
|
86
|
+
render?: UpstreamTrigger["render"];
|
|
87
|
+
};
|
|
88
|
+
/** Select.Trigger — button that opens the popup. */
|
|
89
|
+
export declare function Trigger({ className, ...props }: TriggerProps): import("react/jsx-runtime").JSX.Element;
|
|
90
|
+
export declare namespace Trigger {
|
|
91
|
+
var displayName: string;
|
|
92
|
+
}
|
|
93
|
+
type ValueProps = Omit<React.HTMLAttributes<HTMLSpanElement>, "children" | "className" | "style"> & {
|
|
94
|
+
placeholder?: React.ReactNode;
|
|
95
|
+
children?: UpstreamValue["children"];
|
|
96
|
+
className?: UpstreamValue["className"];
|
|
97
|
+
style?: UpstreamValue["style"];
|
|
98
|
+
render?: UpstreamValue["render"];
|
|
99
|
+
};
|
|
100
|
+
/** Select.Value — renders the currently-selected value (or placeholder). */
|
|
101
|
+
export declare function Value({ className, children, ...props }: ValueProps): import("react/jsx-runtime").JSX.Element;
|
|
102
|
+
export declare namespace Value {
|
|
103
|
+
var displayName: string;
|
|
104
|
+
}
|
|
105
|
+
type IconProps = Omit<React.HTMLAttributes<HTMLSpanElement>, "className" | "style"> & {
|
|
106
|
+
className?: UpstreamIcon["className"];
|
|
107
|
+
style?: UpstreamIcon["style"];
|
|
108
|
+
render?: UpstreamIcon["render"];
|
|
109
|
+
};
|
|
110
|
+
/** Select.Icon — visual indicator (chevron) next to the value. */
|
|
111
|
+
export declare function Icon({ className, ...props }: IconProps): import("react/jsx-runtime").JSX.Element;
|
|
112
|
+
export declare namespace Icon {
|
|
113
|
+
var displayName: string;
|
|
114
|
+
}
|
|
115
|
+
type PortalProps = {
|
|
116
|
+
container?: UpstreamPortal["container"];
|
|
117
|
+
className?: UpstreamPortal["className"];
|
|
118
|
+
style?: UpstreamPortal["style"];
|
|
119
|
+
render?: UpstreamPortal["render"];
|
|
120
|
+
children?: React.ReactNode;
|
|
121
|
+
};
|
|
122
|
+
/** Select.Portal — portals the popup tree to document.body (or a custom container). */
|
|
123
|
+
export declare function Portal(props: PortalProps): import("react/jsx-runtime").JSX.Element;
|
|
124
|
+
export declare namespace Portal {
|
|
125
|
+
var displayName: string;
|
|
126
|
+
}
|
|
127
|
+
type BackdropProps = Omit<React.HTMLAttributes<HTMLDivElement>, "className" | "style"> & {
|
|
128
|
+
className?: UpstreamBackdrop["className"];
|
|
129
|
+
style?: UpstreamBackdrop["style"];
|
|
130
|
+
render?: UpstreamBackdrop["render"];
|
|
131
|
+
};
|
|
132
|
+
/** Select.Backdrop — overlay behind the popup (visible only in modal mode). */
|
|
133
|
+
export declare function Backdrop({ className, ...props }: BackdropProps): import("react/jsx-runtime").JSX.Element;
|
|
134
|
+
export declare namespace Backdrop {
|
|
135
|
+
var displayName: string;
|
|
136
|
+
}
|
|
137
|
+
type PositionerProps = Omit<React.HTMLAttributes<HTMLDivElement>, "className" | "style"> & {
|
|
138
|
+
/** @default false */
|
|
139
|
+
alignItemWithTrigger?: UpstreamPositioner["alignItemWithTrigger"];
|
|
140
|
+
/** @default false */
|
|
141
|
+
disableAnchorTracking?: UpstreamPositioner["disableAnchorTracking"];
|
|
142
|
+
/** @default "start" */
|
|
143
|
+
align?: UpstreamPositioner["align"];
|
|
144
|
+
/** @default 0 */
|
|
145
|
+
alignOffset?: UpstreamPositioner["alignOffset"];
|
|
146
|
+
/** @default "bottom" */
|
|
147
|
+
side?: UpstreamPositioner["side"];
|
|
148
|
+
/** @default 0 */
|
|
149
|
+
sideOffset?: UpstreamPositioner["sideOffset"];
|
|
150
|
+
/** @default 'clipping-ancestors' */
|
|
151
|
+
collisionBoundary?: UpstreamPositioner["collisionBoundary"];
|
|
152
|
+
/** @default 5 */
|
|
153
|
+
collisionPadding?: UpstreamPositioner["collisionPadding"];
|
|
154
|
+
/** @default { fallbackAxisSide: 'none' } */
|
|
155
|
+
collisionAvoidance?: UpstreamPositioner["collisionAvoidance"];
|
|
156
|
+
className?: UpstreamPositioner["className"];
|
|
157
|
+
style?: UpstreamPositioner["style"];
|
|
158
|
+
render?: UpstreamPositioner["render"];
|
|
159
|
+
};
|
|
160
|
+
/** Select.Positioner — positions the popup relative to the trigger. */
|
|
161
|
+
export declare function Positioner({ className, align, alignItemWithTrigger, ...props }: PositionerProps): import("react/jsx-runtime").JSX.Element;
|
|
162
|
+
export declare namespace Positioner {
|
|
163
|
+
var displayName: string;
|
|
164
|
+
}
|
|
165
|
+
type PopupProps = Omit<React.HTMLAttributes<HTMLDivElement>, "className" | "style"> & {
|
|
166
|
+
className?: UpstreamPopup["className"];
|
|
167
|
+
style?: UpstreamPopup["style"];
|
|
168
|
+
render?: UpstreamPopup["render"];
|
|
169
|
+
};
|
|
170
|
+
/** Select.Popup — dropdown surface. */
|
|
171
|
+
export declare function Popup({ className, ...props }: PopupProps): import("react/jsx-runtime").JSX.Element;
|
|
172
|
+
export declare namespace Popup {
|
|
173
|
+
var displayName: string;
|
|
174
|
+
}
|
|
175
|
+
type ArrowProps = Omit<React.HTMLAttributes<HTMLDivElement>, "className" | "style"> & {
|
|
176
|
+
className?: UpstreamArrow["className"];
|
|
177
|
+
style?: UpstreamArrow["style"];
|
|
178
|
+
render?: UpstreamArrow["render"];
|
|
179
|
+
};
|
|
180
|
+
/** Select.Arrow — pointer arrow attached to the popup. */
|
|
181
|
+
export declare function Arrow({ className, ...props }: ArrowProps): import("react/jsx-runtime").JSX.Element;
|
|
182
|
+
export declare namespace Arrow {
|
|
183
|
+
var displayName: string;
|
|
184
|
+
}
|
|
185
|
+
type ListProps = Omit<React.HTMLAttributes<HTMLDivElement>, "className" | "style"> & {
|
|
186
|
+
className?: UpstreamList["className"];
|
|
187
|
+
style?: UpstreamList["style"];
|
|
188
|
+
render?: UpstreamList["render"];
|
|
189
|
+
};
|
|
190
|
+
/** Select.List — items container. */
|
|
191
|
+
export declare function List({ className, ...props }: ListProps): import("react/jsx-runtime").JSX.Element;
|
|
192
|
+
export declare namespace List {
|
|
193
|
+
var displayName: string;
|
|
194
|
+
}
|
|
195
|
+
type ItemProps = Omit<React.HTMLAttributes<HTMLDivElement>, "className" | "style"> & {
|
|
196
|
+
value: UpstreamItem["value"];
|
|
197
|
+
/** @default false */
|
|
198
|
+
disabled?: UpstreamItem["disabled"];
|
|
199
|
+
className?: UpstreamItem["className"];
|
|
200
|
+
style?: UpstreamItem["style"];
|
|
201
|
+
render?: UpstreamItem["render"];
|
|
202
|
+
};
|
|
203
|
+
/** Select.Item — individual selectable option. */
|
|
204
|
+
export declare function Item({ className, ...props }: ItemProps): import("react/jsx-runtime").JSX.Element;
|
|
205
|
+
export declare namespace Item {
|
|
206
|
+
var displayName: string;
|
|
207
|
+
}
|
|
208
|
+
type ItemIndicatorProps = Omit<React.HTMLAttributes<HTMLSpanElement>, "className" | "style"> & {
|
|
209
|
+
className?: UpstreamItemIndicator["className"];
|
|
210
|
+
style?: UpstreamItemIndicator["style"];
|
|
211
|
+
render?: UpstreamItemIndicator["render"];
|
|
212
|
+
};
|
|
213
|
+
/** Select.ItemIndicator — visual marker (e.g. checkmark) inside the selected item. */
|
|
214
|
+
export declare function ItemIndicator({ className, ...props }: ItemIndicatorProps): import("react/jsx-runtime").JSX.Element;
|
|
215
|
+
export declare namespace ItemIndicator {
|
|
216
|
+
var displayName: string;
|
|
217
|
+
}
|
|
218
|
+
type ItemTextProps = Omit<React.HTMLAttributes<HTMLDivElement>, "className" | "style"> & {
|
|
219
|
+
className?: UpstreamItemText["className"];
|
|
220
|
+
style?: UpstreamItemText["style"];
|
|
221
|
+
render?: UpstreamItemText["render"];
|
|
222
|
+
};
|
|
223
|
+
/** Select.ItemText — text label for an item. */
|
|
224
|
+
export declare function ItemText({ className, ...props }: ItemTextProps): import("react/jsx-runtime").JSX.Element;
|
|
225
|
+
export declare namespace ItemText {
|
|
226
|
+
var displayName: string;
|
|
227
|
+
}
|
|
228
|
+
type GroupProps = Omit<React.HTMLAttributes<HTMLDivElement>, "className" | "style"> & {
|
|
229
|
+
className?: UpstreamGroup["className"];
|
|
230
|
+
style?: UpstreamGroup["style"];
|
|
231
|
+
render?: UpstreamGroup["render"];
|
|
232
|
+
};
|
|
233
|
+
/** Select.Group — wrapper around a grouped set of items. */
|
|
234
|
+
export declare function Group({ className, ...props }: GroupProps): import("react/jsx-runtime").JSX.Element;
|
|
235
|
+
export declare namespace Group {
|
|
236
|
+
var displayName: string;
|
|
237
|
+
}
|
|
238
|
+
type GroupLabelProps = Omit<React.HTMLAttributes<HTMLDivElement>, "className" | "style"> & {
|
|
239
|
+
className?: UpstreamGroupLabel["className"];
|
|
240
|
+
style?: UpstreamGroupLabel["style"];
|
|
241
|
+
render?: UpstreamGroupLabel["render"];
|
|
242
|
+
};
|
|
243
|
+
/** Select.GroupLabel — heading for a Select.Group. */
|
|
244
|
+
export declare function GroupLabel({ className, ...props }: GroupLabelProps): import("react/jsx-runtime").JSX.Element;
|
|
245
|
+
export declare namespace GroupLabel {
|
|
246
|
+
var displayName: string;
|
|
247
|
+
}
|
|
248
|
+
type SeparatorProps = Omit<React.HTMLAttributes<HTMLDivElement>, "className" | "style"> & {
|
|
249
|
+
className?: UpstreamSeparator["className"];
|
|
250
|
+
style?: UpstreamSeparator["style"];
|
|
251
|
+
render?: UpstreamSeparator["render"];
|
|
252
|
+
};
|
|
253
|
+
/** Select.Separator — thin divider between items. */
|
|
254
|
+
export declare function Separator({ className, ...props }: SeparatorProps): import("react/jsx-runtime").JSX.Element;
|
|
255
|
+
export declare namespace Separator {
|
|
256
|
+
var displayName: string;
|
|
257
|
+
}
|
|
258
|
+
type ScrollUpArrowProps = Omit<React.HTMLAttributes<HTMLDivElement>, "className" | "style"> & {
|
|
259
|
+
className?: UpstreamScrollUpArrow["className"];
|
|
260
|
+
style?: UpstreamScrollUpArrow["style"];
|
|
261
|
+
render?: UpstreamScrollUpArrow["render"];
|
|
262
|
+
};
|
|
263
|
+
/** Select.ScrollUpArrow — indicator that more items exist above. */
|
|
264
|
+
export declare function ScrollUpArrow({ className, ...props }: ScrollUpArrowProps): import("react/jsx-runtime").JSX.Element;
|
|
265
|
+
export declare namespace ScrollUpArrow {
|
|
266
|
+
var displayName: string;
|
|
267
|
+
}
|
|
268
|
+
type ScrollDownArrowProps = Omit<React.HTMLAttributes<HTMLDivElement>, "className" | "style"> & {
|
|
269
|
+
className?: UpstreamScrollDownArrow["className"];
|
|
270
|
+
style?: UpstreamScrollDownArrow["style"];
|
|
271
|
+
render?: UpstreamScrollDownArrow["render"];
|
|
272
|
+
};
|
|
273
|
+
/** Select.ScrollDownArrow — indicator that more items exist below. */
|
|
274
|
+
export declare function ScrollDownArrow({ className, ...props }: ScrollDownArrowProps): import("react/jsx-runtime").JSX.Element;
|
|
275
|
+
export declare namespace ScrollDownArrow {
|
|
276
|
+
var displayName: string;
|
|
277
|
+
}
|
|
278
|
+
export {};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { VariantProps } from 'class-variance-authority';
|
|
2
|
+
declare const separator: (props?: ({
|
|
3
|
+
variant?: "solid" | "dashed" | "dotted" | null | undefined;
|
|
4
|
+
} & import('class-variance-authority/types').ClassProp) | undefined) => string;
|
|
5
|
+
type Props = React.HTMLAttributes<HTMLDivElement> & VariantProps<typeof separator> & {
|
|
6
|
+
orientation?: "horizontal" | "vertical";
|
|
7
|
+
};
|
|
8
|
+
/**
|
|
9
|
+
* Separator — visual divider between content sections.
|
|
10
|
+
*
|
|
11
|
+
* @see https://base-ui.com/react/components/separator
|
|
12
|
+
* @llm https://base-ui.com/react/components/separator.md
|
|
13
|
+
*/
|
|
14
|
+
export declare function Separator({ orientation, variant, className, ...props }: Props): import("react/jsx-runtime").JSX.Element;
|
|
15
|
+
export {};
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
import { Slider as SliderPrimitive } from '@base-ui/react/slider';
|
|
2
|
+
type UpstreamRoot = React.ComponentProps<typeof SliderPrimitive.Root>;
|
|
3
|
+
type UpstreamLabel = React.ComponentProps<typeof SliderPrimitive.Label>;
|
|
4
|
+
type UpstreamValue = React.ComponentProps<typeof SliderPrimitive.Value>;
|
|
5
|
+
type UpstreamControl = React.ComponentProps<typeof SliderPrimitive.Control>;
|
|
6
|
+
type UpstreamTrack = React.ComponentProps<typeof SliderPrimitive.Track>;
|
|
7
|
+
type UpstreamIndicator = React.ComponentProps<typeof SliderPrimitive.Indicator>;
|
|
8
|
+
type UpstreamThumb = React.ComponentProps<typeof SliderPrimitive.Thumb>;
|
|
9
|
+
type RootProps = Omit<React.HTMLAttributes<HTMLDivElement>, "defaultValue" | "className" | "style"> & {
|
|
10
|
+
value?: number | number[];
|
|
11
|
+
defaultValue?: number | number[];
|
|
12
|
+
onValueChange?: UpstreamRoot["onValueChange"];
|
|
13
|
+
onValueCommitted?: UpstreamRoot["onValueCommitted"];
|
|
14
|
+
min?: number;
|
|
15
|
+
max?: number;
|
|
16
|
+
step?: number;
|
|
17
|
+
largeStep?: number;
|
|
18
|
+
minStepsBetweenValues?: number;
|
|
19
|
+
disabled?: boolean;
|
|
20
|
+
orientation?: "horizontal" | "vertical";
|
|
21
|
+
name?: string;
|
|
22
|
+
form?: string;
|
|
23
|
+
locale?: UpstreamRoot["locale"];
|
|
24
|
+
thumbAlignment?: UpstreamRoot["thumbAlignment"];
|
|
25
|
+
thumbCollisionBehavior?: UpstreamRoot["thumbCollisionBehavior"];
|
|
26
|
+
format?: Intl.NumberFormatOptions;
|
|
27
|
+
className?: UpstreamRoot["className"];
|
|
28
|
+
style?: UpstreamRoot["style"];
|
|
29
|
+
render?: UpstreamRoot["render"];
|
|
30
|
+
};
|
|
31
|
+
/**
|
|
32
|
+
* Slider.Root — value selector along a continuous or stepped track.
|
|
33
|
+
*
|
|
34
|
+
* @doc https://base-ui.com/react/components/slider
|
|
35
|
+
* @llm https://base-ui.com/react/components/slider.md
|
|
36
|
+
*/
|
|
37
|
+
export declare function Root({ value, defaultValue, onValueChange, onValueCommitted, min, max, step, largeStep, minStepsBetweenValues, disabled, orientation, name, form, locale, thumbAlignment, thumbCollisionBehavior, format, className, ...props }: RootProps): import("react/jsx-runtime").JSX.Element;
|
|
38
|
+
export declare namespace Root {
|
|
39
|
+
var displayName: string;
|
|
40
|
+
}
|
|
41
|
+
type LabelProps = Omit<React.HTMLAttributes<HTMLDivElement>, "className" | "style"> & {
|
|
42
|
+
className?: UpstreamLabel["className"];
|
|
43
|
+
style?: UpstreamLabel["style"];
|
|
44
|
+
render?: UpstreamLabel["render"];
|
|
45
|
+
};
|
|
46
|
+
/** Slider.Label — accessible label for the slider. */
|
|
47
|
+
export declare function Label({ className, ...props }: LabelProps): import("react/jsx-runtime").JSX.Element;
|
|
48
|
+
export declare namespace Label {
|
|
49
|
+
var displayName: string;
|
|
50
|
+
}
|
|
51
|
+
type ValueProps = Omit<React.HTMLAttributes<HTMLOutputElement>, "children" | "className" | "style"> & {
|
|
52
|
+
children?: UpstreamValue["children"];
|
|
53
|
+
className?: UpstreamValue["className"];
|
|
54
|
+
style?: UpstreamValue["style"];
|
|
55
|
+
render?: UpstreamValue["render"];
|
|
56
|
+
};
|
|
57
|
+
/** Slider.Value — live numeric readout. */
|
|
58
|
+
export declare function Value({ className, children, ...props }: ValueProps): import("react/jsx-runtime").JSX.Element;
|
|
59
|
+
export declare namespace Value {
|
|
60
|
+
var displayName: string;
|
|
61
|
+
}
|
|
62
|
+
type ControlProps = Omit<React.HTMLAttributes<HTMLDivElement>, "className" | "style"> & {
|
|
63
|
+
className?: UpstreamControl["className"];
|
|
64
|
+
style?: UpstreamControl["style"];
|
|
65
|
+
render?: UpstreamControl["render"];
|
|
66
|
+
};
|
|
67
|
+
/** Slider.Control — interactive container for track + thumb. */
|
|
68
|
+
export declare function Control({ className, ...props }: ControlProps): import("react/jsx-runtime").JSX.Element;
|
|
69
|
+
export declare namespace Control {
|
|
70
|
+
var displayName: string;
|
|
71
|
+
}
|
|
72
|
+
type TrackProps = Omit<React.HTMLAttributes<HTMLDivElement>, "className" | "style"> & {
|
|
73
|
+
className?: UpstreamTrack["className"];
|
|
74
|
+
style?: UpstreamTrack["style"];
|
|
75
|
+
render?: UpstreamTrack["render"];
|
|
76
|
+
};
|
|
77
|
+
/** Slider.Track — the static rail. */
|
|
78
|
+
export declare function Track({ className, ...props }: TrackProps): import("react/jsx-runtime").JSX.Element;
|
|
79
|
+
export declare namespace Track {
|
|
80
|
+
var displayName: string;
|
|
81
|
+
}
|
|
82
|
+
type IndicatorProps = Omit<React.HTMLAttributes<HTMLDivElement>, "className" | "style"> & {
|
|
83
|
+
className?: UpstreamIndicator["className"];
|
|
84
|
+
style?: UpstreamIndicator["style"];
|
|
85
|
+
render?: UpstreamIndicator["render"];
|
|
86
|
+
};
|
|
87
|
+
/** Slider.Indicator — filled portion of the track. */
|
|
88
|
+
export declare function Indicator({ className, ...props }: IndicatorProps): import("react/jsx-runtime").JSX.Element;
|
|
89
|
+
export declare namespace Indicator {
|
|
90
|
+
var displayName: string;
|
|
91
|
+
}
|
|
92
|
+
type ThumbProps = Omit<React.HTMLAttributes<HTMLDivElement>, "onBlur" | "onFocus" | "className" | "style"> & {
|
|
93
|
+
index?: number;
|
|
94
|
+
tabIndex?: number;
|
|
95
|
+
/** @default false */
|
|
96
|
+
disabled?: boolean;
|
|
97
|
+
inputRef?: React.Ref<HTMLInputElement>;
|
|
98
|
+
getAriaLabel?: UpstreamThumb["getAriaLabel"];
|
|
99
|
+
getAriaValueText?: UpstreamThumb["getAriaValueText"];
|
|
100
|
+
onBlur?: UpstreamThumb["onBlur"];
|
|
101
|
+
onFocus?: UpstreamThumb["onFocus"];
|
|
102
|
+
className?: UpstreamThumb["className"];
|
|
103
|
+
style?: UpstreamThumb["style"];
|
|
104
|
+
render?: UpstreamThumb["render"];
|
|
105
|
+
};
|
|
106
|
+
/** Slider.Thumb — draggable handle. */
|
|
107
|
+
export declare function Thumb({ index, className, ...props }: ThumbProps): import("react/jsx-runtime").JSX.Element;
|
|
108
|
+
export declare namespace Thumb {
|
|
109
|
+
var displayName: string;
|
|
110
|
+
}
|
|
111
|
+
export {};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { VariantProps } from 'class-variance-authority';
|
|
2
|
+
declare const spinner: (props?: ({
|
|
3
|
+
size?: "sm" | "md" | "lg" | null | undefined;
|
|
4
|
+
} & import('class-variance-authority/types').ClassProp) | undefined) => string;
|
|
5
|
+
type Props = Omit<React.HTMLAttributes<HTMLSpanElement>, "role"> & VariantProps<typeof spinner> & {
|
|
6
|
+
/** Accessible label announced by assistive tech. */
|
|
7
|
+
label?: string;
|
|
8
|
+
};
|
|
9
|
+
/**
|
|
10
|
+
* Loading indicator built from the animated ImFusion glyph — two filled bands
|
|
11
|
+
* and an empty diagonal channel that continuously rotates, breathes, and sways.
|
|
12
|
+
*
|
|
13
|
+
* The motion is a live per-frame morph of the two paths (the channel geometry is
|
|
14
|
+
* recomputed each frame in {@link frameGeometry}), driven by a single
|
|
15
|
+
* `requestAnimationFrame` loop that rewrites the two `d` attributes directly —
|
|
16
|
+
* no React re-render per frame. The loop pauses while the tab is hidden.
|
|
17
|
+
*/
|
|
18
|
+
export declare function Spinner({ size, label, className, ...props }: Props): import("react/jsx-runtime").JSX.Element;
|
|
19
|
+
export {};
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Spinner geometry — the animated ImFusion glyph.
|
|
3
|
+
*
|
|
4
|
+
* The mark is two filled bands separated by an empty diagonal channel (see
|
|
5
|
+
* `logo/imfusion/imfusion.tsx`). This module reproduces that structure as a
|
|
6
|
+
* *morphing* shape: the channel rotates, breathes (its width pulses, never
|
|
7
|
+
* closing), and its interior nodes sway — so the loader reads as the mark
|
|
8
|
+
* alive, not a generic ring.
|
|
9
|
+
*
|
|
10
|
+
* The motion is a live per-frame morph: a single `requestAnimationFrame` loop
|
|
11
|
+
* in the component (spinner.tsx) calls {@link frameGeometry} each frame and
|
|
12
|
+
* writes the two returned path `d` strings straight onto the SVG paths — no
|
|
13
|
+
* React re-render per frame, no SMIL. (SMIL/CSS `d` morphing was tried and
|
|
14
|
+
* dropped: neither is GPU-composited, and CSS `d` isn't supported in Safari.)
|
|
15
|
+
*
|
|
16
|
+
* Everything is tunable from the {@link KNOBS} block. The values there were
|
|
17
|
+
* dialled in against rendered evidence at 16/20/24/96px; the shape is a
|
|
18
|
+
* balance — extreme values pinch the channel shut or spike the bands, so nudge
|
|
19
|
+
* rather than leap. `frameGeometry(t)` is pure and deterministic: feed it a
|
|
20
|
+
* time in ms and it returns the two band path `d`s for that instant.
|
|
21
|
+
*/
|
|
22
|
+
/** Design-space edge length; the SVG viewBox is `0 0 D D`. */
|
|
23
|
+
export declare const D = 100;
|
|
24
|
+
/**
|
|
25
|
+
* The two band path `d` strings at time `tms` (ms) — the shape at any instant
|
|
26
|
+
* of the loop, as `[topBand, bottomBand]`. Pure and deterministic; the rAF loop
|
|
27
|
+
* in the component calls this each frame and writes the results to the paths.
|
|
28
|
+
*/
|
|
29
|
+
export declare function frameGeometry(tms: number): [string, string];
|
|
30
|
+
/**
|
|
31
|
+
* The period over which the whole composition returns to its start pose — the
|
|
32
|
+
* least-common-multiple-ish window of rotation, breathe, and sway. Rotation is
|
|
33
|
+
* `ROT_S`; breathe/sway are shorter and phase-relative. We loop over the
|
|
34
|
+
* rotation period and let breathe/sway ride within it; `SWAY_RATIO` is chosen
|
|
35
|
+
* so the combined motion reads continuous rather than obviously repeating.
|
|
36
|
+
*/
|
|
37
|
+
export declare const LOOP_MS: number;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { VariantProps } from 'class-variance-authority';
|
|
2
|
+
declare const stack: (props?: ({
|
|
3
|
+
gap?: "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9" | "10" | null | undefined;
|
|
4
|
+
align?: "center" | "end" | "start" | "stretch" | null | undefined;
|
|
5
|
+
justify?: "center" | "end" | "start" | "between" | "around" | "evenly" | null | undefined;
|
|
6
|
+
} & import('class-variance-authority/types').ClassProp) | undefined) => string;
|
|
7
|
+
type Props = React.HTMLAttributes<HTMLDivElement> & VariantProps<typeof stack>;
|
|
8
|
+
/**
|
|
9
|
+
* Stack — vertical layout primitive.
|
|
10
|
+
*
|
|
11
|
+
* Copied and adapted from Mantine's Stack; no upstream runtime
|
|
12
|
+
* dependency. Pure column flex container with token-driven gap and constrained
|
|
13
|
+
* align/justify unions.
|
|
14
|
+
*
|
|
15
|
+
* @see https://mantine.dev/core/stack/
|
|
16
|
+
*/
|
|
17
|
+
export declare function Stack({ gap, align, justify, className, ...props }: Props): import("react/jsx-runtime").JSX.Element;
|
|
18
|
+
export {};
|
|
@@ -0,0 +1,45 @@
|
|
|
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
|
+
/**
|
|
26
|
+
* Switch.Root — toggleable on/off control.
|
|
27
|
+
*
|
|
28
|
+
* @doc https://base-ui.com/react/components/switch
|
|
29
|
+
* @llm https://base-ui.com/react/components/switch.md
|
|
30
|
+
*/
|
|
31
|
+
export declare function Root({ className, ...props }: RootProps): import("react/jsx-runtime").JSX.Element;
|
|
32
|
+
export declare namespace Root {
|
|
33
|
+
var displayName: string;
|
|
34
|
+
}
|
|
35
|
+
type ThumbProps = Omit<React.HTMLAttributes<HTMLSpanElement>, "className" | "style"> & {
|
|
36
|
+
className?: UpstreamThumb["className"];
|
|
37
|
+
style?: UpstreamThumb["style"];
|
|
38
|
+
render?: UpstreamThumb["render"];
|
|
39
|
+
};
|
|
40
|
+
/** Switch.Thumb — the movable indicator inside the track. */
|
|
41
|
+
export declare function Thumb({ className, ...props }: ThumbProps): import("react/jsx-runtime").JSX.Element;
|
|
42
|
+
export declare namespace Thumb {
|
|
43
|
+
var displayName: string;
|
|
44
|
+
}
|
|
45
|
+
export {};
|
|
@@ -0,0 +1,66 @@
|
|
|
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
|
+
type HeaderCellProps = React.ThHTMLAttributes<HTMLTableCellElement>;
|
|
6
|
+
type CellProps = React.TdHTMLAttributes<HTMLTableCellElement>;
|
|
7
|
+
type HeaderButtonProps = React.ButtonHTMLAttributes<HTMLButtonElement>;
|
|
8
|
+
/** Table.Root — the `<table>` element. */
|
|
9
|
+
export declare function Root({ className, ...props }: RootProps): import("react/jsx-runtime").JSX.Element;
|
|
10
|
+
export declare namespace Root {
|
|
11
|
+
var displayName: string;
|
|
12
|
+
}
|
|
13
|
+
/** Table.Header — the `<thead>` section. */
|
|
14
|
+
export declare function Header({ className, ...props }: HeaderProps): import("react/jsx-runtime").JSX.Element;
|
|
15
|
+
export declare namespace Header {
|
|
16
|
+
var displayName: string;
|
|
17
|
+
}
|
|
18
|
+
/** Table.Body — the `<tbody>` section. */
|
|
19
|
+
export declare function Body({ className, ...props }: BodyProps): import("react/jsx-runtime").JSX.Element;
|
|
20
|
+
export declare namespace Body {
|
|
21
|
+
var displayName: string;
|
|
22
|
+
}
|
|
23
|
+
/** Table.Row — a `<tr>` in header or body. */
|
|
24
|
+
export declare function Row({ className, ...props }: RowProps): import("react/jsx-runtime").JSX.Element;
|
|
25
|
+
export declare namespace Row {
|
|
26
|
+
var displayName: string;
|
|
27
|
+
}
|
|
28
|
+
/** Table.HeaderCell — a `<th>` header cell. */
|
|
29
|
+
export declare function HeaderCell({ className, ...props }: HeaderCellProps): import("react/jsx-runtime").JSX.Element;
|
|
30
|
+
export declare namespace HeaderCell {
|
|
31
|
+
var displayName: string;
|
|
32
|
+
}
|
|
33
|
+
/** Table.Cell — a `<td>` data cell. */
|
|
34
|
+
export declare function Cell({ className, ...props }: CellProps): import("react/jsx-runtime").JSX.Element;
|
|
35
|
+
export declare namespace Cell {
|
|
36
|
+
var displayName: string;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Table.HeaderButton — inline action button for header cells. Generic by
|
|
40
|
+
* design: sorting toggles, filter toggles, column menus all render through it
|
|
41
|
+
* rather than each inventing a button. Icon/indicator goes in `children`.
|
|
42
|
+
*/
|
|
43
|
+
export declare function HeaderButton({ className, type, ...props }: HeaderButtonProps): import("react/jsx-runtime").JSX.Element;
|
|
44
|
+
export declare namespace HeaderButton {
|
|
45
|
+
var displayName: string;
|
|
46
|
+
}
|
|
47
|
+
/** The sort state of a column: `false` = sortable but unsorted, else the active direction. */
|
|
48
|
+
type SortDirection = false | "asc" | "desc";
|
|
49
|
+
type SortableHeaderCellProps = Omit<HeaderCellProps, "aria-sort"> & {
|
|
50
|
+
/** Current sort state. `false` renders the affordance in its unsorted rest state. */
|
|
51
|
+
sortDirection: SortDirection;
|
|
52
|
+
/** Toggle handler. Omit to render a plain, non-sortable header cell instead. */
|
|
53
|
+
onToggle?: React.MouseEventHandler<HTMLButtonElement>;
|
|
54
|
+
};
|
|
55
|
+
/**
|
|
56
|
+
* Table.SortableHeaderCell — a partial: a header cell whose label is a sort
|
|
57
|
+
* toggle, pre-composing HeaderCell + HeaderButton so the `aria-sort` state and
|
|
58
|
+
* direction indicator don't get re-derived per consumer app. Headless-upstream-
|
|
59
|
+
* agnostic: feed it `sortDirection` and `onToggle` (e.g. from a TanStack
|
|
60
|
+
* column). Omit `onToggle` and it renders a plain non-sortable header cell.
|
|
61
|
+
*/
|
|
62
|
+
export declare function SortableHeaderCell({ sortDirection, onToggle, children, ...props }: SortableHeaderCellProps): import("react/jsx-runtime").JSX.Element;
|
|
63
|
+
export declare namespace SortableHeaderCell {
|
|
64
|
+
var displayName: string;
|
|
65
|
+
}
|
|
66
|
+
export {};
|