@mcp-b/react-components 0.1.1 → 0.1.3
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/dist/Button-QCM8ZKgR.d.ts +98 -0
- package/dist/CodeBlock-CttHhWcb.js +356 -0
- package/dist/CodeBlock-V6pgafSS.d.ts +174 -0
- package/dist/Select-CRsKCJ9x.d.ts +200 -0
- package/dist/class-names-9UtZwb0J.js +12 -0
- package/dist/components/Accordion.d.ts +81 -0
- package/dist/components/Accordion.js +97 -0
- package/dist/components/AgentConnection.d.ts +69 -0
- package/dist/components/AgentConnection.js +176 -0
- package/dist/components/AlertDialog.d.ts +148 -0
- package/dist/components/AlertDialog.js +141 -0
- package/dist/components/Artifact.d.ts +128 -0
- package/dist/components/Artifact.js +115 -0
- package/dist/components/Autocomplete.d.ts +186 -0
- package/dist/components/Autocomplete.js +186 -0
- package/dist/components/Avatar.d.ts +134 -0
- package/dist/components/Avatar.js +118 -0
- package/dist/components/Badge.d.ts +68 -0
- package/dist/components/Badge.js +108 -0
- package/dist/components/Button.d.ts +2 -0
- package/dist/components/Button.js +73 -0
- package/dist/components/Card.d.ts +87 -0
- package/dist/components/Card.js +81 -0
- package/dist/components/ChainOfThought.d.ts +153 -0
- package/dist/components/ChainOfThought.js +157 -0
- package/dist/components/Checkbox.d.ts +35 -0
- package/dist/components/Checkbox.js +47 -0
- package/dist/components/CheckboxGroup.d.ts +76 -0
- package/dist/components/CheckboxGroup.js +69 -0
- package/dist/components/CodeBlock.d.ts +2 -0
- package/dist/components/CodeBlock.js +2 -0
- package/dist/components/Collapsible.d.ts +127 -0
- package/dist/components/Collapsible.js +103 -0
- package/dist/components/Combobox.d.ts +177 -0
- package/dist/components/Combobox.js +179 -0
- package/dist/components/Commit.d.ts +265 -0
- package/dist/components/Commit.js +282 -0
- package/dist/components/Context.d.ts +129 -0
- package/dist/components/Context.js +309 -0
- package/dist/components/ContextMenu.d.ts +282 -0
- package/dist/components/ContextMenu.js +270 -0
- package/dist/components/Conversation.d.ts +166 -0
- package/dist/components/Conversation.js +202 -0
- package/dist/components/Dialog.d.ts +120 -0
- package/dist/components/Dialog.js +114 -0
- package/dist/components/EnvironmentVariables.d.ts +176 -0
- package/dist/components/EnvironmentVariables.js +221 -0
- package/dist/components/Field.d.ts +281 -0
- package/dist/components/Field.js +274 -0
- package/dist/components/Fieldset.d.ts +93 -0
- package/dist/components/Fieldset.js +81 -0
- package/dist/components/FileTree.d.ts +116 -0
- package/dist/components/FileTree.js +310 -0
- package/dist/components/Form.d.ts +94 -0
- package/dist/components/Form.js +88 -0
- package/dist/components/GithubMotionMark.d.ts +13 -0
- package/dist/components/GithubMotionMark.js +23 -0
- package/dist/components/Input.d.ts +33 -0
- package/dist/components/Input.js +27 -0
- package/dist/components/Label.d.ts +44 -0
- package/dist/components/Label.js +41 -0
- package/dist/components/Menu.d.ts +395 -0
- package/dist/components/Menu.js +338 -0
- package/dist/components/Menubar.d.ts +331 -0
- package/dist/components/Menubar.js +299 -0
- package/dist/components/Message.d.ts +216 -0
- package/dist/components/Message.js +245 -0
- package/dist/components/Meter.d.ts +151 -0
- package/dist/components/Meter.js +121 -0
- package/dist/components/ModelSelector.d.ts +198 -0
- package/dist/components/ModelSelector.js +306 -0
- package/dist/components/NaniteScene.d.ts +33 -0
- package/dist/components/NaniteScene.js +405 -0
- package/dist/components/NavigationMenu.d.ts +256 -0
- package/dist/components/NavigationMenu.js +228 -0
- package/dist/components/NumberField.d.ts +159 -0
- package/dist/components/NumberField.js +123 -0
- package/dist/components/Popover.d.ts +278 -0
- package/dist/components/Popover.js +245 -0
- package/dist/components/PreviewCard.d.ts +156 -0
- package/dist/components/PreviewCard.js +156 -0
- package/dist/components/PricingPage.d.ts +209 -0
- package/dist/components/PricingPage.js +506 -0
- package/dist/components/Progress.d.ts +58 -0
- package/dist/components/Progress.js +51 -0
- package/dist/components/PromptInput.d.ts +399 -0
- package/dist/components/PromptInput.js +737 -0
- package/dist/components/Queue.d.ts +241 -0
- package/dist/components/Queue.js +225 -0
- package/dist/components/RadioGroup.d.ts +78 -0
- package/dist/components/RadioGroup.js +72 -0
- package/dist/components/Reasoning.d.ts +88 -0
- package/dist/components/Reasoning.js +187 -0
- package/dist/components/ScrollArea.d.ts +160 -0
- package/dist/components/ScrollArea.js +145 -0
- package/dist/components/Select.d.ts +2 -0
- package/dist/components/Select.js +260 -0
- package/dist/components/Separator.d.ts +45 -0
- package/dist/components/Separator.js +40 -0
- package/dist/components/Shell.d.ts +163 -0
- package/dist/components/Shell.js +137 -0
- package/dist/components/Slider.d.ts +120 -0
- package/dist/components/Slider.js +115 -0
- package/dist/components/Sources.d.ts +91 -0
- package/dist/components/Sources.js +121 -0
- package/dist/components/Stepper.d.ts +190 -0
- package/dist/components/Stepper.js +315 -0
- package/dist/components/Switch.d.ts +57 -0
- package/dist/components/Switch.js +55 -0
- package/dist/components/Tabs.d.ts +84 -0
- package/dist/components/Tabs.js +78 -0
- package/dist/components/Task.d.ts +100 -0
- package/dist/components/Task.js +120 -0
- package/dist/components/Terminal.d.ts +118 -0
- package/dist/components/Terminal.js +234 -0
- package/dist/components/TestResults.d.ts +236 -0
- package/dist/components/TestResults.js +346 -0
- package/dist/components/Toast.d.ts +192 -0
- package/dist/components/Toast.js +163 -0
- package/dist/components/Toggle.d.ts +69 -0
- package/dist/components/Toggle.js +66 -0
- package/dist/components/ToggleGroup.d.ts +69 -0
- package/dist/components/ToggleGroup.js +99 -0
- package/dist/components/Tool.d.ts +119 -0
- package/dist/components/Tool.js +192 -0
- package/dist/components/Toolbar.d.ts +162 -0
- package/dist/components/Toolbar.js +126 -0
- package/dist/components/Tooltip.d.ts +81 -0
- package/dist/components/Tooltip.js +74 -0
- package/dist/components/WebPreview.d.ts +143 -0
- package/dist/components/WebPreview.js +280 -0
- package/dist/components/useStickToBottom.d.ts +30 -0
- package/dist/components/useStickToBottom.js +95 -0
- package/dist/copy-button-BIATcZWZ.d.ts +16 -0
- package/dist/copy-button-BNgclDrO.js +43 -0
- package/dist/icons-BsWc8g4E.js +221 -0
- package/dist/styles/accordion.css +10 -10
- package/dist/styles/agent-connection.css +18 -17
- package/dist/styles/alert-dialog.css +48 -29
- package/dist/styles/artifact.css +10 -10
- package/dist/styles/autocomplete.css +25 -24
- package/dist/styles/avatar.css +96 -6
- package/dist/styles/badge.css +78 -14
- package/dist/styles/base.css +9 -9
- package/dist/styles/button.css +57 -38
- package/dist/styles/card.css +57 -10
- package/dist/styles/chain-of-thought.css +47 -33
- package/dist/styles/checkbox.css +24 -10
- package/dist/styles/code-block.css +22 -15
- package/dist/styles/collapsible.css +14 -12
- package/dist/styles/combobox.css +26 -25
- package/dist/styles/commit.css +49 -24
- package/dist/styles/context-menu.css +70 -16
- package/dist/styles/context.css +15 -15
- package/dist/styles/conversation.css +12 -12
- package/dist/styles/dialog.css +52 -16
- package/dist/styles/environment-variables.css +19 -19
- package/dist/styles/field.css +184 -22
- package/dist/styles/fieldset.css +5 -4
- package/dist/styles/file-tree.css +17 -17
- package/dist/styles/index.css.d.ts +1 -0
- package/dist/styles/input.css +45 -11
- package/dist/styles/label.css +21 -4
- package/dist/styles/menu.css +55 -32
- package/dist/styles/menubar.css +80 -28
- package/dist/styles/message.css +22 -13
- package/dist/styles/meter.css +8 -8
- package/dist/styles/model-selector.css +33 -21
- package/dist/styles/navigation-menu.css +26 -24
- package/dist/styles/number-field.css +20 -18
- package/dist/styles/popover.css +38 -28
- package/dist/styles/preview-card.css +15 -13
- package/dist/styles/pricing-page.css +53 -53
- package/dist/styles/progress.css +7 -7
- package/dist/styles/prompt-input.css +73 -24
- package/dist/styles/queue.css +58 -32
- package/dist/styles/radio.css +26 -11
- package/dist/styles/reasoning.css +15 -11
- package/dist/styles/scroll-area.css +6 -6
- package/dist/styles/scrollbars.css +4 -4
- package/dist/styles/select.css +84 -25
- package/dist/styles/separator.css +1 -1
- package/dist/styles/shell.css +21 -20
- package/dist/styles/slider.css +35 -11
- package/dist/styles/sources.css +20 -20
- package/dist/styles/stepper.css +22 -22
- package/dist/styles/switch.css +29 -13
- package/dist/styles/tabs.css +23 -16
- package/dist/styles/task.css +27 -23
- package/dist/styles/terminal.css +16 -13
- package/dist/styles/test-results.css +79 -32
- package/dist/styles/toast.css +26 -25
- package/dist/styles/toggle-group.css +12 -12
- package/dist/styles/toggle.css +29 -11
- package/dist/styles/tool.css +54 -32
- package/dist/styles/toolbar.css +30 -28
- package/dist/styles/tooltip.css +10 -8
- package/dist/styles/web-preview.css +37 -21
- package/dist/utils/structured-code.d.ts +10 -0
- package/dist/utils/structured-code.js +81 -0
- package/package.json +17 -8
- package/dist/index.d.ts +0 -7236
- package/dist/index.js +0 -8945
|
@@ -0,0 +1,228 @@
|
|
|
1
|
+
import { s as ChevronDownIcon } from "../icons-BsWc8g4E.js";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
4
|
+
import { NavigationMenu as NavigationMenu$1 } from "@base-ui/react/navigation-menu";
|
|
5
|
+
//#region src/components/NavigationMenu.tsx
|
|
6
|
+
/**
|
|
7
|
+
* Navigation landmark for top-level or section-level links. Compose with
|
|
8
|
+
* NavigationMenu.List, NavigationMenu.Item, NavigationMenu.Trigger, and
|
|
9
|
+
* NavigationMenu.Content for disclosure-style navigation.
|
|
10
|
+
*
|
|
11
|
+
* Sigvelo changes: wraps Base UI NavigationMenu with stable class names and
|
|
12
|
+
* CSS-token styling, and removes invalid `aria-orientation` from the rendered
|
|
13
|
+
* list for axe compatibility.
|
|
14
|
+
*
|
|
15
|
+
* Use for app or section navigation. Do not use it for command menus or
|
|
16
|
+
* context actions. Base UI owns keyboard navigation and focus behavior; apps
|
|
17
|
+
* provide meaningful link text and panel content.
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* ```tsx
|
|
21
|
+
* <NavigationMenu.Root>
|
|
22
|
+
* <NavigationMenu.List>
|
|
23
|
+
* <NavigationMenu.Item>
|
|
24
|
+
* <NavigationMenu.Trigger>Products</NavigationMenu.Trigger>
|
|
25
|
+
* <NavigationMenu.Portal>
|
|
26
|
+
* <NavigationMenu.Positioner>
|
|
27
|
+
* <NavigationMenu.Popup>
|
|
28
|
+
* <NavigationMenu.Content>
|
|
29
|
+
* <NavigationMenu.Link href="/products">All products</NavigationMenu.Link>
|
|
30
|
+
* </NavigationMenu.Content>
|
|
31
|
+
* </NavigationMenu.Popup>
|
|
32
|
+
* </NavigationMenu.Positioner>
|
|
33
|
+
* </NavigationMenu.Portal>
|
|
34
|
+
* </NavigationMenu.Item>
|
|
35
|
+
* </NavigationMenu.List>
|
|
36
|
+
* </NavigationMenu.Root>
|
|
37
|
+
* ```
|
|
38
|
+
*
|
|
39
|
+
* @see {@link https://base-ui.com/react/components/navigation-menu | Base UI NavigationMenu}
|
|
40
|
+
*/
|
|
41
|
+
function Root({ className = "", children, viewport = true, ref, ...props }) {
|
|
42
|
+
const classes = ["navigation-menu", className].filter(Boolean).join(" ");
|
|
43
|
+
const shouldRenderViewport = viewport && !hasChildOfType(children, NavigationMenuPortal) && !hasChildOfType(children, NavigationMenu$1.Portal);
|
|
44
|
+
return /* @__PURE__ */ jsxs(NavigationMenu$1.Root, {
|
|
45
|
+
ref,
|
|
46
|
+
render: /* @__PURE__ */ jsx("nav", {}),
|
|
47
|
+
"data-slot": "navigation-menu",
|
|
48
|
+
"data-viewport": viewport,
|
|
49
|
+
className: classes,
|
|
50
|
+
...props,
|
|
51
|
+
children: [children, shouldRenderViewport && /* @__PURE__ */ jsx(NavigationMenuPortal, { children: /* @__PURE__ */ jsx(NavigationMenuPositioner, {
|
|
52
|
+
sideOffset: 4,
|
|
53
|
+
children: /* @__PURE__ */ jsx(NavigationMenuPopup, { children: /* @__PURE__ */ jsx(NavigationMenuViewport, {}) })
|
|
54
|
+
}) })]
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
function NavigationMenuList({ className = "", ref, ...props }) {
|
|
58
|
+
const classes = ["navigation-menu__list", className].filter(Boolean).join(" ");
|
|
59
|
+
return /* @__PURE__ */ jsx(NavigationMenu$1.List, {
|
|
60
|
+
ref,
|
|
61
|
+
"data-slot": "navigation-menu-list",
|
|
62
|
+
className: classes,
|
|
63
|
+
"aria-orientation": void 0,
|
|
64
|
+
...props
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
function NavigationMenuItem({ className = "", ref, ...props }) {
|
|
68
|
+
const classes = ["navigation-menu__item", className].filter(Boolean).join(" ");
|
|
69
|
+
return /* @__PURE__ */ jsx(NavigationMenu$1.Item, {
|
|
70
|
+
ref,
|
|
71
|
+
"data-slot": "navigation-menu-item",
|
|
72
|
+
className: classes,
|
|
73
|
+
...props
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
function NavigationMenuTrigger({ className = "", children, ref, ...props }) {
|
|
77
|
+
const classes = ["navigation-menu__trigger", className].filter(Boolean).join(" ");
|
|
78
|
+
return /* @__PURE__ */ jsxs(NavigationMenu$1.Trigger, {
|
|
79
|
+
ref,
|
|
80
|
+
"data-slot": "navigation-menu-trigger",
|
|
81
|
+
className: classes,
|
|
82
|
+
...props,
|
|
83
|
+
children: [children, hasChildOfType(children, NavigationMenuIcon) ? null : /* @__PURE__ */ jsx(NavigationMenuIcon, { children: /* @__PURE__ */ jsx(ChevronDownIcon, { size: 12 }) })]
|
|
84
|
+
});
|
|
85
|
+
}
|
|
86
|
+
function NavigationMenuIcon({ className = "", ref, ...props }) {
|
|
87
|
+
const classes = ["navigation-menu__icon", className].filter(Boolean).join(" ");
|
|
88
|
+
return /* @__PURE__ */ jsx(NavigationMenu$1.Icon, {
|
|
89
|
+
ref,
|
|
90
|
+
"data-slot": "navigation-menu-icon",
|
|
91
|
+
className: classes,
|
|
92
|
+
...props
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
function NavigationMenuContent({ className = "", ref, ...props }) {
|
|
96
|
+
const classes = ["navigation-menu__content", className].filter(Boolean).join(" ");
|
|
97
|
+
return /* @__PURE__ */ jsx(NavigationMenu$1.Content, {
|
|
98
|
+
ref,
|
|
99
|
+
"data-slot": "navigation-menu-content",
|
|
100
|
+
className: classes,
|
|
101
|
+
...props
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
function NavigationMenuLink({ className = "", ref, ...props }) {
|
|
105
|
+
const classes = ["navigation-menu__link", className].filter(Boolean).join(" ");
|
|
106
|
+
return /* @__PURE__ */ jsx(NavigationMenu$1.Link, {
|
|
107
|
+
ref,
|
|
108
|
+
"data-slot": "navigation-menu-link",
|
|
109
|
+
className: classes,
|
|
110
|
+
...props
|
|
111
|
+
});
|
|
112
|
+
}
|
|
113
|
+
function NavigationMenuPortal(props) {
|
|
114
|
+
return /* @__PURE__ */ jsx(NavigationMenu$1.Portal, {
|
|
115
|
+
"data-slot": "navigation-menu-portal",
|
|
116
|
+
...props
|
|
117
|
+
});
|
|
118
|
+
}
|
|
119
|
+
function NavigationMenuPositioner({ className = "", ref, ...props }) {
|
|
120
|
+
const classes = ["navigation-menu__positioner", className].filter(Boolean).join(" ");
|
|
121
|
+
return /* @__PURE__ */ jsx(NavigationMenu$1.Positioner, {
|
|
122
|
+
ref,
|
|
123
|
+
"data-slot": "navigation-menu-positioner",
|
|
124
|
+
className: classes,
|
|
125
|
+
...props
|
|
126
|
+
});
|
|
127
|
+
}
|
|
128
|
+
function NavigationMenuPopup({ className = "", ref, ...props }) {
|
|
129
|
+
const classes = ["navigation-menu__popup", className].filter(Boolean).join(" ");
|
|
130
|
+
return /* @__PURE__ */ jsx(NavigationMenu$1.Popup, {
|
|
131
|
+
ref,
|
|
132
|
+
"data-slot": "navigation-menu-popup",
|
|
133
|
+
className: classes,
|
|
134
|
+
...props
|
|
135
|
+
});
|
|
136
|
+
}
|
|
137
|
+
function NavigationMenuViewport({ className = "", ref, ...props }) {
|
|
138
|
+
const classes = ["navigation-menu__viewport", className].filter(Boolean).join(" ");
|
|
139
|
+
return /* @__PURE__ */ jsx(NavigationMenu$1.Viewport, {
|
|
140
|
+
ref,
|
|
141
|
+
"data-slot": "navigation-menu-viewport",
|
|
142
|
+
className: classes,
|
|
143
|
+
...props
|
|
144
|
+
});
|
|
145
|
+
}
|
|
146
|
+
function NavigationMenuArrow({ className = "", ref, ...props }) {
|
|
147
|
+
const classes = ["navigation-menu__arrow", className].filter(Boolean).join(" ");
|
|
148
|
+
return /* @__PURE__ */ jsx(NavigationMenu$1.Arrow, {
|
|
149
|
+
ref,
|
|
150
|
+
"data-slot": "navigation-menu-arrow",
|
|
151
|
+
className: classes,
|
|
152
|
+
...props
|
|
153
|
+
});
|
|
154
|
+
}
|
|
155
|
+
/**
|
|
156
|
+
* A navigation menu component for website navigation with dropdown support.
|
|
157
|
+
* Provides keyboard navigation and supports nested submenus.
|
|
158
|
+
*
|
|
159
|
+
* @example
|
|
160
|
+
* ```tsx
|
|
161
|
+
* // Basic navigation menu
|
|
162
|
+
* <NavigationMenu.Root>
|
|
163
|
+
* <NavigationMenu.List>
|
|
164
|
+
* <NavigationMenu.Item>
|
|
165
|
+
* <NavigationMenu.Trigger>
|
|
166
|
+
* Products
|
|
167
|
+
* <NavigationMenu.Icon>
|
|
168
|
+
* <ChevronDownIcon />
|
|
169
|
+
* </NavigationMenu.Icon>
|
|
170
|
+
* </NavigationMenu.Trigger>
|
|
171
|
+
* <NavigationMenu.Content>
|
|
172
|
+
* <NavigationMenu.Link href="/products/analytics">
|
|
173
|
+
* Analytics
|
|
174
|
+
* </NavigationMenu.Link>
|
|
175
|
+
* <NavigationMenu.Link href="/products/automation">
|
|
176
|
+
* Automation
|
|
177
|
+
* </NavigationMenu.Link>
|
|
178
|
+
* </NavigationMenu.Content>
|
|
179
|
+
* </NavigationMenu.Item>
|
|
180
|
+
* <NavigationMenu.Item>
|
|
181
|
+
* <NavigationMenu.Link href="/about">About</NavigationMenu.Link>
|
|
182
|
+
* </NavigationMenu.Item>
|
|
183
|
+
* </NavigationMenu.List>
|
|
184
|
+
* <NavigationMenu.Portal>
|
|
185
|
+
* <NavigationMenu.Positioner>
|
|
186
|
+
* <NavigationMenu.Popup>
|
|
187
|
+
* <NavigationMenu.Viewport />
|
|
188
|
+
* </NavigationMenu.Popup>
|
|
189
|
+
* </NavigationMenu.Positioner>
|
|
190
|
+
* </NavigationMenu.Portal>
|
|
191
|
+
* </NavigationMenu.Root>
|
|
192
|
+
* ```
|
|
193
|
+
*
|
|
194
|
+
* @see {@link https://base-ui.com/react/components/navigation-menu | Base UI NavigationMenu}
|
|
195
|
+
*/
|
|
196
|
+
const NavigationMenu = Object.assign(Root, {
|
|
197
|
+
Root,
|
|
198
|
+
List: NavigationMenuList,
|
|
199
|
+
Item: NavigationMenuItem,
|
|
200
|
+
Trigger: NavigationMenuTrigger,
|
|
201
|
+
Icon: NavigationMenuIcon,
|
|
202
|
+
Content: NavigationMenuContent,
|
|
203
|
+
Link: NavigationMenuLink,
|
|
204
|
+
Portal: NavigationMenuPortal,
|
|
205
|
+
Positioner: NavigationMenuPositioner,
|
|
206
|
+
Popup: NavigationMenuPopup,
|
|
207
|
+
Viewport: NavigationMenuViewport,
|
|
208
|
+
Arrow: NavigationMenuArrow
|
|
209
|
+
});
|
|
210
|
+
function NavigationMenuIndicator(props) {
|
|
211
|
+
return /* @__PURE__ */ jsx(NavigationMenuIcon, {
|
|
212
|
+
"data-slot": "navigation-menu-indicator",
|
|
213
|
+
...props
|
|
214
|
+
});
|
|
215
|
+
}
|
|
216
|
+
function navigationMenuTriggerStyle({ className } = {}) {
|
|
217
|
+
return ["navigation-menu__trigger", className].filter(Boolean).join(" ");
|
|
218
|
+
}
|
|
219
|
+
function hasChildOfType(children, type) {
|
|
220
|
+
return React.Children.toArray(children).some((child) => {
|
|
221
|
+
if (!React.isValidElement(child)) return false;
|
|
222
|
+
if (child.type === type) return true;
|
|
223
|
+
if (child.type === React.Fragment) return hasChildOfType(child.props.children, type);
|
|
224
|
+
return false;
|
|
225
|
+
});
|
|
226
|
+
}
|
|
227
|
+
//#endregion
|
|
228
|
+
export { NavigationMenu, NavigationMenuArrow, NavigationMenuContent, NavigationMenuIcon, NavigationMenuIndicator, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuPopup, NavigationMenuPortal, NavigationMenuPositioner, NavigationMenuTrigger, NavigationMenuViewport, navigationMenuTriggerStyle };
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { NumberField as NumberField$1 } from "@base-ui/react/number-field";
|
|
3
|
+
|
|
4
|
+
//#region src/components/NumberField.d.ts
|
|
5
|
+
/**
|
|
6
|
+
* Props for the NumberField.Root component.
|
|
7
|
+
*/
|
|
8
|
+
interface NumberFieldRootProps extends Omit<React.ComponentPropsWithoutRef<typeof NumberField$1.Root>, "className"> {
|
|
9
|
+
/** Additional CSS class names */
|
|
10
|
+
className?: string;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Props for the NumberField.Group component.
|
|
14
|
+
*/
|
|
15
|
+
interface NumberFieldGroupProps extends Omit<React.ComponentPropsWithoutRef<typeof NumberField$1.Group>, "className"> {
|
|
16
|
+
/** Additional CSS class names */
|
|
17
|
+
className?: string;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Props for the NumberField.Input component.
|
|
21
|
+
*/
|
|
22
|
+
interface NumberFieldInputProps extends Omit<React.ComponentPropsWithoutRef<typeof NumberField$1.Input>, "className"> {
|
|
23
|
+
/** Additional CSS class names */
|
|
24
|
+
className?: string;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Props for the NumberField.Increment component.
|
|
28
|
+
*/
|
|
29
|
+
interface NumberFieldIncrementProps extends Omit<React.ComponentPropsWithoutRef<typeof NumberField$1.Increment>, "className"> {
|
|
30
|
+
/** Additional CSS class names */
|
|
31
|
+
className?: string;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Props for the NumberField.Decrement component.
|
|
35
|
+
*/
|
|
36
|
+
interface NumberFieldDecrementProps extends Omit<React.ComponentPropsWithoutRef<typeof NumberField$1.Decrement>, "className"> {
|
|
37
|
+
/** Additional CSS class names */
|
|
38
|
+
className?: string;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Props for the NumberField.ScrubArea component.
|
|
42
|
+
*/
|
|
43
|
+
interface NumberFieldScrubAreaProps extends Omit<React.ComponentPropsWithoutRef<typeof NumberField$1.ScrubArea>, "className"> {
|
|
44
|
+
/** Additional CSS class names */
|
|
45
|
+
className?: string;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Container that groups all parts and manages state. Renders a `<div>` element.
|
|
49
|
+
*
|
|
50
|
+
* @example
|
|
51
|
+
* ```tsx
|
|
52
|
+
* <NumberField.Root defaultValue={50} min={0} max={100}>
|
|
53
|
+
* <NumberField.Group>
|
|
54
|
+
* <NumberField.Decrement>-</NumberField.Decrement>
|
|
55
|
+
* <NumberField.Input />
|
|
56
|
+
* <NumberField.Increment>+</NumberField.Increment>
|
|
57
|
+
* </NumberField.Group>
|
|
58
|
+
* </NumberField.Root>
|
|
59
|
+
* ```
|
|
60
|
+
*
|
|
61
|
+
* @see {@link https://base-ui.com/react/components/number-field | Base UI NumberField}
|
|
62
|
+
*/
|
|
63
|
+
declare function NumberFieldRoot({
|
|
64
|
+
className,
|
|
65
|
+
ref,
|
|
66
|
+
...props
|
|
67
|
+
}: NumberFieldRootProps & {
|
|
68
|
+
ref?: React.Ref<HTMLDivElement>;
|
|
69
|
+
}): React.JSX.Element;
|
|
70
|
+
/**
|
|
71
|
+
* Groups the input with increment and decrement buttons.
|
|
72
|
+
*/
|
|
73
|
+
declare function NumberFieldGroup({
|
|
74
|
+
className,
|
|
75
|
+
ref,
|
|
76
|
+
...props
|
|
77
|
+
}: NumberFieldGroupProps & {
|
|
78
|
+
ref?: React.Ref<HTMLDivElement>;
|
|
79
|
+
}): React.JSX.Element;
|
|
80
|
+
/**
|
|
81
|
+
* The native input control for the number field.
|
|
82
|
+
*/
|
|
83
|
+
declare function NumberFieldInput({
|
|
84
|
+
className,
|
|
85
|
+
ref,
|
|
86
|
+
...props
|
|
87
|
+
}: NumberFieldInputProps & {
|
|
88
|
+
ref?: React.Ref<HTMLInputElement>;
|
|
89
|
+
}): React.JSX.Element;
|
|
90
|
+
/**
|
|
91
|
+
* Button that increases the value.
|
|
92
|
+
*/
|
|
93
|
+
declare function NumberFieldIncrement({
|
|
94
|
+
className,
|
|
95
|
+
ref,
|
|
96
|
+
...props
|
|
97
|
+
}: NumberFieldIncrementProps & {
|
|
98
|
+
ref?: React.Ref<HTMLButtonElement>;
|
|
99
|
+
}): React.JSX.Element;
|
|
100
|
+
/**
|
|
101
|
+
* Button that decreases the value.
|
|
102
|
+
*/
|
|
103
|
+
declare function NumberFieldDecrement({
|
|
104
|
+
className,
|
|
105
|
+
ref,
|
|
106
|
+
...props
|
|
107
|
+
}: NumberFieldDecrementProps & {
|
|
108
|
+
ref?: React.Ref<HTMLButtonElement>;
|
|
109
|
+
}): React.JSX.Element;
|
|
110
|
+
/**
|
|
111
|
+
* Interactive area for click-and-drag value changes.
|
|
112
|
+
*/
|
|
113
|
+
declare function NumberFieldScrubArea({
|
|
114
|
+
className,
|
|
115
|
+
ref,
|
|
116
|
+
...props
|
|
117
|
+
}: NumberFieldScrubAreaProps & {
|
|
118
|
+
ref?: React.Ref<HTMLSpanElement>;
|
|
119
|
+
}): React.JSX.Element;
|
|
120
|
+
/**
|
|
121
|
+
* A numeric input with increment/decrement buttons and optional scrub area.
|
|
122
|
+
* Supports keyboard modifiers for different step sizes and locale formatting.
|
|
123
|
+
*
|
|
124
|
+
* @example
|
|
125
|
+
* ```tsx
|
|
126
|
+
* // Basic usage
|
|
127
|
+
* <NumberField.Root defaultValue={0}>
|
|
128
|
+
* <NumberField.Group>
|
|
129
|
+
* <NumberField.Decrement>-</NumberField.Decrement>
|
|
130
|
+
* <NumberField.Input />
|
|
131
|
+
* <NumberField.Increment>+</NumberField.Increment>
|
|
132
|
+
* </NumberField.Group>
|
|
133
|
+
* </NumberField.Root>
|
|
134
|
+
* ```
|
|
135
|
+
*
|
|
136
|
+
* @example
|
|
137
|
+
* ```tsx
|
|
138
|
+
* // With min/max constraints
|
|
139
|
+
* <NumberField.Root defaultValue={50} min={0} max={100} step={5}>
|
|
140
|
+
* <NumberField.Group>
|
|
141
|
+
* <NumberField.Decrement>-</NumberField.Decrement>
|
|
142
|
+
* <NumberField.Input />
|
|
143
|
+
* <NumberField.Increment>+</NumberField.Increment>
|
|
144
|
+
* </NumberField.Group>
|
|
145
|
+
* </NumberField.Root>
|
|
146
|
+
* ```
|
|
147
|
+
*
|
|
148
|
+
* @see {@link https://base-ui.com/react/components/number-field | Base UI NumberField}
|
|
149
|
+
*/
|
|
150
|
+
declare const NumberField: {
|
|
151
|
+
Root: typeof NumberFieldRoot;
|
|
152
|
+
Group: typeof NumberFieldGroup;
|
|
153
|
+
Input: typeof NumberFieldInput;
|
|
154
|
+
Increment: typeof NumberFieldIncrement;
|
|
155
|
+
Decrement: typeof NumberFieldDecrement;
|
|
156
|
+
ScrubArea: typeof NumberFieldScrubArea;
|
|
157
|
+
};
|
|
158
|
+
//#endregion
|
|
159
|
+
export { NumberField, NumberFieldDecrementProps, NumberFieldGroupProps, NumberFieldIncrementProps, NumberFieldInputProps, NumberFieldRootProps, NumberFieldScrubAreaProps };
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
import "react";
|
|
2
|
+
import { jsx } from "react/jsx-runtime";
|
|
3
|
+
import { NumberField as NumberField$1 } from "@base-ui/react/number-field";
|
|
4
|
+
//#region src/components/NumberField.tsx
|
|
5
|
+
/**
|
|
6
|
+
* Container that groups all parts and manages state. Renders a `<div>` element.
|
|
7
|
+
*
|
|
8
|
+
* @example
|
|
9
|
+
* ```tsx
|
|
10
|
+
* <NumberField.Root defaultValue={50} min={0} max={100}>
|
|
11
|
+
* <NumberField.Group>
|
|
12
|
+
* <NumberField.Decrement>-</NumberField.Decrement>
|
|
13
|
+
* <NumberField.Input />
|
|
14
|
+
* <NumberField.Increment>+</NumberField.Increment>
|
|
15
|
+
* </NumberField.Group>
|
|
16
|
+
* </NumberField.Root>
|
|
17
|
+
* ```
|
|
18
|
+
*
|
|
19
|
+
* @see {@link https://base-ui.com/react/components/number-field | Base UI NumberField}
|
|
20
|
+
*/
|
|
21
|
+
function NumberFieldRoot({ className = "", ref, ...props }) {
|
|
22
|
+
const classes = ["number-field", className].filter(Boolean).join(" ");
|
|
23
|
+
return /* @__PURE__ */ jsx(NumberField$1.Root, {
|
|
24
|
+
ref,
|
|
25
|
+
className: classes,
|
|
26
|
+
...props
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Groups the input with increment and decrement buttons.
|
|
31
|
+
*/
|
|
32
|
+
function NumberFieldGroup({ className = "", ref, ...props }) {
|
|
33
|
+
const classes = ["number-field__group", className].filter(Boolean).join(" ");
|
|
34
|
+
return /* @__PURE__ */ jsx(NumberField$1.Group, {
|
|
35
|
+
ref,
|
|
36
|
+
className: classes,
|
|
37
|
+
...props
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* The native input control for the number field.
|
|
42
|
+
*/
|
|
43
|
+
function NumberFieldInput({ className = "", ref, ...props }) {
|
|
44
|
+
const classes = ["number-field__input", className].filter(Boolean).join(" ");
|
|
45
|
+
return /* @__PURE__ */ jsx(NumberField$1.Input, {
|
|
46
|
+
ref,
|
|
47
|
+
className: classes,
|
|
48
|
+
...props
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Button that increases the value.
|
|
53
|
+
*/
|
|
54
|
+
function NumberFieldIncrement({ className = "", ref, ...props }) {
|
|
55
|
+
const classes = ["number-field__increment", className].filter(Boolean).join(" ");
|
|
56
|
+
return /* @__PURE__ */ jsx(NumberField$1.Increment, {
|
|
57
|
+
ref,
|
|
58
|
+
className: classes,
|
|
59
|
+
...props
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Button that decreases the value.
|
|
64
|
+
*/
|
|
65
|
+
function NumberFieldDecrement({ className = "", ref, ...props }) {
|
|
66
|
+
const classes = ["number-field__decrement", className].filter(Boolean).join(" ");
|
|
67
|
+
return /* @__PURE__ */ jsx(NumberField$1.Decrement, {
|
|
68
|
+
ref,
|
|
69
|
+
className: classes,
|
|
70
|
+
...props
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Interactive area for click-and-drag value changes.
|
|
75
|
+
*/
|
|
76
|
+
function NumberFieldScrubArea({ className = "", ref, ...props }) {
|
|
77
|
+
const classes = ["number-field__scrub-area", className].filter(Boolean).join(" ");
|
|
78
|
+
return /* @__PURE__ */ jsx(NumberField$1.ScrubArea, {
|
|
79
|
+
ref,
|
|
80
|
+
className: classes,
|
|
81
|
+
...props
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* A numeric input with increment/decrement buttons and optional scrub area.
|
|
86
|
+
* Supports keyboard modifiers for different step sizes and locale formatting.
|
|
87
|
+
*
|
|
88
|
+
* @example
|
|
89
|
+
* ```tsx
|
|
90
|
+
* // Basic usage
|
|
91
|
+
* <NumberField.Root defaultValue={0}>
|
|
92
|
+
* <NumberField.Group>
|
|
93
|
+
* <NumberField.Decrement>-</NumberField.Decrement>
|
|
94
|
+
* <NumberField.Input />
|
|
95
|
+
* <NumberField.Increment>+</NumberField.Increment>
|
|
96
|
+
* </NumberField.Group>
|
|
97
|
+
* </NumberField.Root>
|
|
98
|
+
* ```
|
|
99
|
+
*
|
|
100
|
+
* @example
|
|
101
|
+
* ```tsx
|
|
102
|
+
* // With min/max constraints
|
|
103
|
+
* <NumberField.Root defaultValue={50} min={0} max={100} step={5}>
|
|
104
|
+
* <NumberField.Group>
|
|
105
|
+
* <NumberField.Decrement>-</NumberField.Decrement>
|
|
106
|
+
* <NumberField.Input />
|
|
107
|
+
* <NumberField.Increment>+</NumberField.Increment>
|
|
108
|
+
* </NumberField.Group>
|
|
109
|
+
* </NumberField.Root>
|
|
110
|
+
* ```
|
|
111
|
+
*
|
|
112
|
+
* @see {@link https://base-ui.com/react/components/number-field | Base UI NumberField}
|
|
113
|
+
*/
|
|
114
|
+
const NumberField = {
|
|
115
|
+
Root: NumberFieldRoot,
|
|
116
|
+
Group: NumberFieldGroup,
|
|
117
|
+
Input: NumberFieldInput,
|
|
118
|
+
Increment: NumberFieldIncrement,
|
|
119
|
+
Decrement: NumberFieldDecrement,
|
|
120
|
+
ScrubArea: NumberFieldScrubArea
|
|
121
|
+
};
|
|
122
|
+
//#endregion
|
|
123
|
+
export { NumberField };
|