@neynar/ui 0.1.1 → 0.1.2

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 (173) hide show
  1. package/dist/components/ui/accordion.d.ts +1 -25
  2. package/dist/components/ui/accordion.d.ts.map +1 -1
  3. package/dist/components/ui/alert-dialog.d.ts +240 -46
  4. package/dist/components/ui/alert-dialog.d.ts.map +1 -1
  5. package/dist/components/ui/alert.d.ts +73 -11
  6. package/dist/components/ui/alert.d.ts.map +1 -1
  7. package/dist/components/ui/aspect-ratio.d.ts +44 -10
  8. package/dist/components/ui/aspect-ratio.d.ts.map +1 -1
  9. package/dist/components/ui/avatar.d.ts +117 -33
  10. package/dist/components/ui/avatar.d.ts.map +1 -1
  11. package/dist/components/ui/badge.d.ts +50 -71
  12. package/dist/components/ui/badge.d.ts.map +1 -1
  13. package/dist/components/ui/breadcrumb.d.ts +231 -49
  14. package/dist/components/ui/breadcrumb.d.ts.map +1 -1
  15. package/dist/components/ui/button.d.ts +189 -71
  16. package/dist/components/ui/button.d.ts.map +1 -1
  17. package/dist/components/ui/calendar.d.ts +197 -40
  18. package/dist/components/ui/calendar.d.ts.map +1 -1
  19. package/dist/components/ui/card.d.ts +7 -22
  20. package/dist/components/ui/card.d.ts.map +1 -1
  21. package/dist/components/ui/carousel.d.ts +369 -99
  22. package/dist/components/ui/carousel.d.ts.map +1 -1
  23. package/dist/components/ui/chart.d.ts.map +1 -1
  24. package/dist/components/ui/checkbox.d.ts +110 -38
  25. package/dist/components/ui/checkbox.d.ts.map +1 -1
  26. package/dist/components/ui/collapsible.d.ts +246 -61
  27. package/dist/components/ui/collapsible.d.ts.map +1 -1
  28. package/dist/components/ui/combobox.d.ts +207 -159
  29. package/dist/components/ui/combobox.d.ts.map +1 -1
  30. package/dist/components/ui/command.d.ts +336 -67
  31. package/dist/components/ui/command.d.ts.map +1 -1
  32. package/dist/components/ui/container.d.ts +159 -64
  33. package/dist/components/ui/container.d.ts.map +1 -1
  34. package/dist/components/ui/context-menu.d.ts +321 -39
  35. package/dist/components/ui/context-menu.d.ts.map +1 -1
  36. package/dist/components/ui/date-picker.d.ts +113 -86
  37. package/dist/components/ui/date-picker.d.ts.map +1 -1
  38. package/dist/components/ui/dialog.d.ts +106 -25
  39. package/dist/components/ui/dialog.d.ts.map +1 -1
  40. package/dist/components/ui/drawer.d.ts +388 -59
  41. package/dist/components/ui/drawer.d.ts.map +1 -1
  42. package/dist/components/ui/dropdown-menu.d.ts +521 -74
  43. package/dist/components/ui/dropdown-menu.d.ts.map +1 -1
  44. package/dist/components/ui/empty-state.d.ts +148 -76
  45. package/dist/components/ui/empty-state.d.ts.map +1 -1
  46. package/dist/components/ui/hover-card.d.ts +253 -34
  47. package/dist/components/ui/hover-card.d.ts.map +1 -1
  48. package/dist/components/ui/input.d.ts +143 -44
  49. package/dist/components/ui/input.d.ts.map +1 -1
  50. package/dist/components/ui/label.d.ts +0 -8
  51. package/dist/components/ui/label.d.ts.map +1 -1
  52. package/dist/components/ui/menubar.d.ts +288 -46
  53. package/dist/components/ui/menubar.d.ts.map +1 -1
  54. package/dist/components/ui/navigation-menu.d.ts +444 -127
  55. package/dist/components/ui/navigation-menu.d.ts.map +1 -1
  56. package/dist/components/ui/pagination.d.ts +342 -66
  57. package/dist/components/ui/pagination.d.ts.map +1 -1
  58. package/dist/components/ui/popover.d.ts +0 -8
  59. package/dist/components/ui/popover.d.ts.map +1 -1
  60. package/dist/components/ui/progress.d.ts +88 -30
  61. package/dist/components/ui/progress.d.ts.map +1 -1
  62. package/dist/components/ui/radio-group.d.ts +189 -45
  63. package/dist/components/ui/radio-group.d.ts.map +1 -1
  64. package/dist/components/ui/resizable.d.ts +178 -62
  65. package/dist/components/ui/resizable.d.ts.map +1 -1
  66. package/dist/components/ui/scroll-area.d.ts +180 -21
  67. package/dist/components/ui/scroll-area.d.ts.map +1 -1
  68. package/dist/components/ui/select.d.ts +382 -60
  69. package/dist/components/ui/select.d.ts.map +1 -1
  70. package/dist/components/ui/separator.d.ts +52 -39
  71. package/dist/components/ui/separator.d.ts.map +1 -1
  72. package/dist/components/ui/sheet.d.ts +144 -27
  73. package/dist/components/ui/sheet.d.ts.map +1 -1
  74. package/dist/components/ui/sidebar.d.ts +81 -31
  75. package/dist/components/ui/sidebar.d.ts.map +1 -1
  76. package/dist/components/ui/skeleton.d.ts +94 -32
  77. package/dist/components/ui/skeleton.d.ts.map +1 -1
  78. package/dist/components/ui/slider.d.ts +37 -31
  79. package/dist/components/ui/slider.d.ts.map +1 -1
  80. package/dist/components/ui/sonner.d.ts +280 -46
  81. package/dist/components/ui/sonner.d.ts.map +1 -1
  82. package/dist/components/ui/stack.d.ts +289 -148
  83. package/dist/components/ui/stack.d.ts.map +1 -1
  84. package/dist/components/ui/stories/aspect-ratio.stories.d.ts +1 -2
  85. package/dist/components/ui/stories/aspect-ratio.stories.d.ts.map +1 -1
  86. package/dist/components/ui/stories/container.stories.d.ts +2 -3
  87. package/dist/components/ui/stories/container.stories.d.ts.map +1 -1
  88. package/dist/components/ui/stories/empty-state.stories.d.ts +2 -2
  89. package/dist/components/ui/stories/scroll-area.stories.d.ts +1 -2
  90. package/dist/components/ui/stories/scroll-area.stories.d.ts.map +1 -1
  91. package/dist/components/ui/stories/stack.stories.d.ts +1 -1
  92. package/dist/components/ui/stories/text-field.stories.d.ts +7 -1
  93. package/dist/components/ui/stories/text-field.stories.d.ts.map +1 -1
  94. package/dist/components/ui/switch.d.ts +44 -38
  95. package/dist/components/ui/switch.d.ts.map +1 -1
  96. package/dist/components/ui/table.d.ts +33 -0
  97. package/dist/components/ui/table.d.ts.map +1 -1
  98. package/dist/components/ui/tabs.d.ts +4 -22
  99. package/dist/components/ui/tabs.d.ts.map +1 -1
  100. package/dist/components/ui/text-field.d.ts +170 -84
  101. package/dist/components/ui/text-field.d.ts.map +1 -1
  102. package/dist/components/ui/textarea.d.ts +106 -29
  103. package/dist/components/ui/textarea.d.ts.map +1 -1
  104. package/dist/components/ui/theme-toggle.d.ts +190 -65
  105. package/dist/components/ui/theme-toggle.d.ts.map +1 -1
  106. package/dist/components/ui/theme.d.ts +107 -23
  107. package/dist/components/ui/theme.d.ts.map +1 -1
  108. package/dist/components/ui/toggle-group.d.ts +143 -67
  109. package/dist/components/ui/toggle-group.d.ts.map +1 -1
  110. package/dist/components/ui/toggle.d.ts +118 -30
  111. package/dist/components/ui/toggle.d.ts.map +1 -1
  112. package/dist/components/ui/tooltip.d.ts +152 -28
  113. package/dist/components/ui/tooltip.d.ts.map +1 -1
  114. package/dist/components/ui/typography.d.ts +452 -134
  115. package/dist/components/ui/typography.d.ts.map +1 -1
  116. package/dist/index.js +9388 -8281
  117. package/dist/index.js.map +1 -1
  118. package/dist/tsconfig.tsbuildinfo +1 -1
  119. package/llms.txt +173 -3
  120. package/package.json +5 -2
  121. package/src/components/ui/accordion.tsx +112 -27
  122. package/src/components/ui/alert-dialog.tsx +401 -46
  123. package/src/components/ui/alert.tsx +114 -11
  124. package/src/components/ui/aspect-ratio.tsx +69 -14
  125. package/src/components/ui/avatar.tsx +179 -33
  126. package/src/components/ui/badge.tsx +74 -75
  127. package/src/components/ui/breadcrumb.tsx +335 -50
  128. package/src/components/ui/button.tsx +198 -90
  129. package/src/components/ui/calendar.tsx +867 -43
  130. package/src/components/ui/card.tsx +140 -33
  131. package/src/components/ui/carousel.tsx +529 -98
  132. package/src/components/ui/chart.tsx +222 -1
  133. package/src/components/ui/checkbox.tsx +176 -38
  134. package/src/components/ui/collapsible.tsx +321 -67
  135. package/src/components/ui/combobox.tsx +284 -83
  136. package/src/components/ui/command.tsx +527 -67
  137. package/src/components/ui/container.tsx +217 -65
  138. package/src/components/ui/context-menu.tsx +716 -51
  139. package/src/components/ui/date-picker.tsx +228 -38
  140. package/src/components/ui/dialog.tsx +270 -33
  141. package/src/components/ui/drawer.tsx +546 -67
  142. package/src/components/ui/dropdown-menu.tsx +657 -74
  143. package/src/components/ui/empty-state.tsx +241 -82
  144. package/src/components/ui/hover-card.tsx +328 -39
  145. package/src/components/ui/input.tsx +207 -44
  146. package/src/components/ui/label.tsx +98 -8
  147. package/src/components/ui/menubar.tsx +587 -54
  148. package/src/components/ui/navigation-menu.tsx +557 -128
  149. package/src/components/ui/pagination.tsx +561 -79
  150. package/src/components/ui/popover.tsx +119 -8
  151. package/src/components/ui/progress.tsx +131 -29
  152. package/src/components/ui/radio-group.tsx +260 -51
  153. package/src/components/ui/resizable.tsx +289 -63
  154. package/src/components/ui/scroll-area.tsx +377 -66
  155. package/src/components/ui/select.tsx +545 -60
  156. package/src/components/ui/separator.tsx +146 -40
  157. package/src/components/ui/sheet.tsx +348 -31
  158. package/src/components/ui/sidebar.tsx +471 -29
  159. package/src/components/ui/skeleton.tsx +114 -32
  160. package/src/components/ui/slider.tsx +77 -31
  161. package/src/components/ui/sonner.tsx +574 -46
  162. package/src/components/ui/stack.tsx +423 -101
  163. package/src/components/ui/switch.tsx +78 -39
  164. package/src/components/ui/table.tsx +170 -4
  165. package/src/components/ui/tabs.tsx +108 -22
  166. package/src/components/ui/text-field.tsx +226 -81
  167. package/src/components/ui/textarea.tsx +180 -29
  168. package/src/components/ui/theme-toggle.tsx +313 -65
  169. package/src/components/ui/theme.tsx +117 -23
  170. package/src/components/ui/toggle-group.tsx +280 -69
  171. package/src/components/ui/toggle.tsx +124 -35
  172. package/src/components/ui/tooltip.tsx +239 -29
  173. package/src/components/ui/typography.tsx +1115 -165
@@ -89,35 +89,89 @@ import * as MenubarPrimitive from "@radix-ui/react-menubar";
89
89
  /**
90
90
  * Root container for the menubar component.
91
91
  *
92
- * @param className - Additional CSS classes to apply
93
- * @param props - All props from Radix UI Menubar Root
92
+ * Creates a persistent horizontal menu bar that provides access to application commands.
93
+ * Supports keyboard navigation, controlled and uncontrolled states, and directional reading.
94
+ *
95
+ * @param className - Additional CSS classes to apply to the menubar container
96
+ * @param defaultValue - The value of the menu that should be open when initially rendered. Use when you do not need to control the state
97
+ * @param value - The controlled value of the menu to open. Should be used in conjunction with onValueChange
98
+ * @param onValueChange - Event handler called when the value changes
99
+ * @param dir - The reading direction of the menubar. If omitted, inherits globally from DirectionProvider or assumes LTR
100
+ * @param loop - Whether keyboard navigation should loop from last item to first, and vice versa
101
+ * @param props - Additional props from Radix UI Menubar Root
102
+ *
103
+ * @example
104
+ * ```tsx
105
+ * // Controlled menubar
106
+ * <Menubar value={activeMenu} onValueChange={setActiveMenu}>
107
+ * <MenubarMenu value="file">
108
+ * <MenubarTrigger>File</MenubarTrigger>
109
+ * <MenubarContent>...</MenubarContent>
110
+ * </MenubarMenu>
111
+ * </Menubar>
112
+ * ```
94
113
  */
95
114
  declare function Menubar({ className, ...props }: React.ComponentProps<typeof MenubarPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
96
115
  /**
97
116
  * Container for a single menu within the menubar.
98
117
  *
99
118
  * Each MenubarMenu represents one dropdown menu that can be triggered
100
- * by its corresponding MenubarTrigger.
119
+ * by its corresponding MenubarTrigger. Must be used within a Menubar root.
101
120
  *
102
- * @param props - All props from Radix UI Menubar Menu
121
+ * @param value - The unique value of the menu for controlled state management
122
+ * @param props - Additional props from Radix UI Menubar Menu
123
+ *
124
+ * @example
125
+ * ```tsx
126
+ * <MenubarMenu value="edit">
127
+ * <MenubarTrigger>Edit</MenubarTrigger>
128
+ * <MenubarContent>...</MenubarContent>
129
+ * </MenubarMenu>
130
+ * ```
103
131
  */
104
132
  declare function MenubarMenu({ ...props }: React.ComponentProps<typeof MenubarPrimitive.Menu>): import("react/jsx-runtime").JSX.Element;
105
133
  /**
106
134
  * Groups related menu items together within MenubarContent.
107
135
  *
108
136
  * Used to create logical groupings of menu items, often separated
109
- * by MenubarSeparator components.
137
+ * by MenubarSeparator components. Helps organize complex menus.
110
138
  *
111
139
  * @param props - All props from Radix UI Menubar Group
140
+ *
141
+ * @example
142
+ * ```tsx
143
+ * <MenubarContent>
144
+ * <MenubarGroup>
145
+ * <MenubarItem>Cut</MenubarItem>
146
+ * <MenubarItem>Copy</MenubarItem>
147
+ * <MenubarItem>Paste</MenubarItem>
148
+ * </MenubarGroup>
149
+ * <MenubarSeparator />
150
+ * <MenubarGroup>
151
+ * <MenubarItem>Find</MenubarItem>
152
+ * <MenubarItem>Replace</MenubarItem>
153
+ * </MenubarGroup>
154
+ * </MenubarContent>
155
+ * ```
112
156
  */
113
157
  declare function MenubarGroup({ ...props }: React.ComponentProps<typeof MenubarPrimitive.Group>): import("react/jsx-runtime").JSX.Element;
114
158
  /**
115
159
  * Portal for rendering menu content outside the DOM hierarchy.
116
160
  *
117
161
  * Automatically used by MenubarContent to ensure proper layering
118
- * and positioning of dropdown menus.
162
+ * and positioning of dropdown menus. Prevents z-index conflicts.
163
+ *
164
+ * @param forceMount - Used to force mounting when more control is needed. Useful when controlling animation with React animation libraries
165
+ * @param container - Specify a container element to portal the content into
166
+ * @param props - Additional props from Radix UI Menubar Portal
119
167
  *
120
- * @param props - All props from Radix UI Menubar Portal
168
+ * @example
169
+ * ```tsx
170
+ * // Usually used automatically by MenubarContent
171
+ * <MenubarPortal container={customContainer}>
172
+ * <MenubarPrimitive.Content>...</MenubarPrimitive.Content>
173
+ * </MenubarPortal>
174
+ * ```
121
175
  */
122
176
  declare function MenubarPortal({ ...props }: React.ComponentProps<typeof MenubarPrimitive.Portal>): import("react/jsx-runtime").JSX.Element;
123
177
  /**
@@ -125,13 +179,18 @@ declare function MenubarPortal({ ...props }: React.ComponentProps<typeof Menubar
125
179
  *
126
180
  * Use for single-selection scenarios like theme selection,
127
181
  * view modes, or other settings where only one option can be active.
182
+ * Only one RadioItem can be selected at a time within the group.
183
+ *
184
+ * @param value - The controlled value of the radio item to check. Should be used in conjunction with onValueChange
185
+ * @param onValueChange - Event handler called when the value changes
186
+ * @param props - Additional props from Radix UI Menubar RadioGroup
128
187
  *
129
- * @param props - All props from Radix UI Menubar RadioGroup
130
188
  * @example
131
189
  * ```tsx
132
190
  * <MenubarRadioGroup value={theme} onValueChange={setTheme}>
133
191
  * <MenubarRadioItem value="light">Light</MenubarRadioItem>
134
192
  * <MenubarRadioItem value="dark">Dark</MenubarRadioItem>
193
+ * <MenubarRadioItem value="system">System</MenubarRadioItem>
135
194
  * </MenubarRadioGroup>
136
195
  * ```
137
196
  */
@@ -141,37 +200,90 @@ declare function MenubarRadioGroup({ ...props }: React.ComponentProps<typeof Men
141
200
  *
142
201
  * The trigger text should be concise and descriptive of the menu contents.
143
202
  * Common patterns include "File", "Edit", "View", "Tools", "Help".
203
+ * Automatically receives focus management and keyboard navigation.
204
+ *
205
+ * @param className - Additional CSS classes to apply to the trigger button
206
+ * @param asChild - Change the default rendered element for the one passed as a child, merging their props and behavior
207
+ * @param props - Additional props from Radix UI Menubar Trigger
144
208
  *
145
- * @param className - Additional CSS classes to apply
146
- * @param props - All props from Radix UI Menubar Trigger
209
+ * @accessibility
210
+ * - Receives focus with Tab key
211
+ * - Opens menu with Enter, Space, or Arrow Down
212
+ * - Left/Right arrows navigate between triggers
213
+ * - Includes proper ARIA attributes for screen readers
214
+ *
215
+ * @example
216
+ * ```tsx
217
+ * <MenubarTrigger>
218
+ * File
219
+ * </MenubarTrigger>
220
+ * ```
147
221
  */
148
222
  declare function MenubarTrigger({ className, ...props }: React.ComponentProps<typeof MenubarPrimitive.Trigger>): import("react/jsx-runtime").JSX.Element;
149
223
  /**
150
224
  * Dropdown content container for menu items.
151
225
  *
152
226
  * Contains the actual menu items, separators, and submenus that appear
153
- * when a MenubarTrigger is activated.
227
+ * when a MenubarTrigger is activated. Automatically portaled and positioned.
228
+ *
229
+ * @param className - Additional CSS classes to apply to the content container
230
+ * @param align - The preferred alignment against the trigger. May change when collisions occur
231
+ * @param alignOffset - An offset in pixels from the "start" or "end" alignment options
232
+ * @param sideOffset - The distance in pixels from the trigger
233
+ * @param side - The preferred side of the trigger to render against when open
234
+ * @param avoidCollisions - When true, overrides the side and align preferences to prevent collisions with viewport edges
235
+ * @param collisionBoundary - The element used as the collision boundary for positioning
236
+ * @param loop - Whether keyboard navigation should loop from last item to first, and vice versa
237
+ * @param onEscapeKeyDown - Event handler called when the escape key is down
238
+ * @param onPointerDownOutside - Event handler called when a pointerdown event happens outside of the component
239
+ * @param onFocusOutside - Event handler called when focus moves outside of the component
240
+ * @param onInteractOutside - Event handler called when an interaction happens outside the component
241
+ * @param props - Additional props from Radix UI Menubar Content
154
242
  *
155
- * @param className - Additional CSS classes to apply
156
- * @param align - Alignment relative to trigger (start, center, end)
157
- * @param alignOffset - Offset from the aligned position
158
- * @param sideOffset - Distance from the trigger
159
- * @param props - All props from Radix UI Menubar Content
243
+ * @accessibility
244
+ * - Focus is automatically managed within the content
245
+ * - Arrow keys navigate between items
246
+ * - Escape key closes the menu
247
+ * - Click outside closes the menu
248
+ *
249
+ * @example
250
+ * ```tsx
251
+ * <MenubarContent align="center" sideOffset={12}>
252
+ * <MenubarItem>New File</MenubarItem>
253
+ * <MenubarItem>Open File</MenubarItem>
254
+ * <MenubarSeparator />
255
+ * <MenubarItem>Exit</MenubarItem>
256
+ * </MenubarContent>
257
+ * ```
160
258
  */
161
259
  declare function MenubarContent({ className, align, alignOffset, sideOffset, ...props }: React.ComponentProps<typeof MenubarPrimitive.Content>): import("react/jsx-runtime").JSX.Element;
162
260
  /**
163
261
  * A selectable menu item within MenubarContent.
164
262
  *
165
263
  * Can be enhanced with icons, keyboard shortcuts, and supports
166
- * different variants including destructive actions.
264
+ * different variants including destructive actions. Automatically
265
+ * handles selection events and keyboard navigation.
167
266
  *
168
- * @param className - Additional CSS classes to apply
267
+ * @param className - Additional CSS classes to apply to the menu item
169
268
  * @param inset - Whether to add left padding for alignment with items that have icons
170
- * @param variant - Visual variant ("default" | "destructive")
171
- * @param props - All props from Radix UI Menubar Item
269
+ * @param variant - Visual variant of the menu item
270
+ * @param disabled - When true, prevents the user from interacting with the item
271
+ * @param onSelect - Event handler called when the user selects an item (via mouse or keyboard)
272
+ * @param textValue - Optional text used for typeahead purposes when content is complex
273
+ * @param props - Additional props from Radix UI Menubar Item
274
+ *
275
+ * @variant default - Standard menu item appearance with neutral colors
276
+ * @variant destructive - Red-tinted appearance for dangerous actions like delete or remove
277
+ *
278
+ * @accessibility
279
+ * - Focusable with keyboard navigation
280
+ * - Activatable with Enter or Space keys
281
+ * - Supports typeahead search within menu
282
+ * - Properly labeled for screen readers
283
+ *
172
284
  * @example
173
285
  * ```tsx
174
- * <MenubarItem variant="destructive">
286
+ * <MenubarItem onSelect={() => deleteFile()} variant="destructive">
175
287
  * Delete File
176
288
  * <MenubarShortcut>⌫</MenubarShortcut>
177
289
  * </MenubarItem>
@@ -185,16 +297,31 @@ declare function MenubarItem({ className, inset, variant, ...props }: React.Comp
185
297
  * A menu item that can be checked/unchecked.
186
298
  *
187
299
  * Perfect for toggle options like "Show Toolbar", "Enable Feature",
188
- * or any binary setting that can be turned on/off.
300
+ * or any binary setting that can be turned on/off. Displays a
301
+ * checkmark icon when checked.
189
302
  *
190
- * @param className - Additional CSS classes to apply
303
+ * @param className - Additional CSS classes to apply to the checkbox item
191
304
  * @param children - The content of the checkbox item
192
- * @param checked - Whether the item is checked
193
- * @param props - All props from Radix UI Menubar CheckboxItem including onCheckedChange
305
+ * @param checked - The controlled checked state of the item. Must be used in conjunction with onCheckedChange
306
+ * @param onCheckedChange - Event handler called when the checked state changes
307
+ * @param disabled - When true, prevents the user from interacting with the item
308
+ * @param onSelect - Event handler called when the user selects an item (via mouse or keyboard)
309
+ * @param textValue - Optional text used for typeahead purposes when content is complex
310
+ * @param props - Additional props from Radix UI Menubar CheckboxItem
311
+ *
312
+ * @accessibility
313
+ * - Proper ARIA checkbox role and state
314
+ * - Keyboard activatable with Enter or Space
315
+ * - Visual indicator shows checked/unchecked state
316
+ * - Screen reader announces state changes
317
+ *
194
318
  * @example
195
319
  * ```tsx
196
- * <MenubarCheckboxItem checked={showToolbar} onCheckedChange={setShowToolbar}>
197
- * Show Toolbar
320
+ * <MenubarCheckboxItem
321
+ * checked={showLineNumbers}
322
+ * onCheckedChange={setShowLineNumbers}
323
+ * >
324
+ * Show Line Numbers
198
325
  * </MenubarCheckboxItem>
199
326
  * ```
200
327
  */
@@ -204,13 +331,29 @@ declare function MenubarCheckboxItem({ className, children, checked, ...props }:
204
331
  *
205
332
  * Use within MenubarRadioGroup for mutually exclusive options.
206
333
  * Only one radio item can be selected at a time within the group.
334
+ * Displays a filled circle icon when selected.
207
335
  *
208
- * @param className - Additional CSS classes to apply
336
+ * @param className - Additional CSS classes to apply to the radio item
209
337
  * @param children - The content of the radio item
210
- * @param props - All props from Radix UI Menubar RadioItem including value
338
+ * @param value - The unique value of the item (required)
339
+ * @param disabled - When true, prevents the user from interacting with the item
340
+ * @param onSelect - Event handler called when the user selects an item (via mouse or keyboard)
341
+ * @param textValue - Optional text used for typeahead purposes when content is complex
342
+ * @param props - Additional props from Radix UI Menubar RadioItem
343
+ *
344
+ * @accessibility
345
+ * - Proper ARIA radio role and state
346
+ * - Keyboard activatable with Enter or Space
347
+ * - Visual indicator shows selected state
348
+ * - Screen reader announces selection changes
349
+ *
211
350
  * @example
212
351
  * ```tsx
213
- * <MenubarRadioItem value="dark">Dark Theme</MenubarRadioItem>
352
+ * <MenubarRadioGroup value={theme} onValueChange={setTheme}>
353
+ * <MenubarRadioItem value="light">Light Theme</MenubarRadioItem>
354
+ * <MenubarRadioItem value="dark">Dark Theme</MenubarRadioItem>
355
+ * <MenubarRadioItem value="system">System Theme</MenubarRadioItem>
356
+ * </MenubarRadioGroup>
214
357
  * ```
215
358
  */
216
359
  declare function MenubarRadioItem({ className, children, ...props }: React.ComponentProps<typeof MenubarPrimitive.RadioItem>): import("react/jsx-runtime").JSX.Element;
@@ -219,14 +362,25 @@ declare function MenubarRadioItem({ className, children, ...props }: React.Compo
219
362
  *
220
363
  * Used to provide section headings within menu content,
221
364
  * helping users understand the organization of menu items.
365
+ * Cannot be focused or selected.
222
366
  *
223
- * @param className - Additional CSS classes to apply
367
+ * @param className - Additional CSS classes to apply to the label
224
368
  * @param inset - Whether to add left padding for alignment with items that have icons
225
- * @param props - All props from Radix UI Menubar Label
369
+ * @param props - Additional props from Radix UI Menubar Label
370
+ *
371
+ * @accessibility
372
+ * - Not focusable via keyboard navigation
373
+ * - Provides semantic grouping information
374
+ * - Screen readers announce as a label
375
+ *
226
376
  * @example
227
377
  * ```tsx
228
- * <MenubarLabel>Recent Files</MenubarLabel>
229
- * <MenubarSeparator />
378
+ * <MenubarContent>
379
+ * <MenubarLabel>Recent Files</MenubarLabel>
380
+ * <MenubarSeparator />
381
+ * <MenubarItem>document.txt</MenubarItem>
382
+ * <MenubarItem>photo.jpg</MenubarItem>
383
+ * </MenubarContent>
230
384
  * ```
231
385
  */
232
386
  declare function MenubarLabel({ className, inset, ...props }: React.ComponentProps<typeof MenubarPrimitive.Label> & {
@@ -236,10 +390,26 @@ declare function MenubarLabel({ className, inset, ...props }: React.ComponentPro
236
390
  * A visual divider between menu items.
237
391
  *
238
392
  * Use to create logical groupings and improve visual hierarchy
239
- * within menu content.
393
+ * within menu content. Creates clear sections for related items.
240
394
  *
241
- * @param className - Additional CSS classes to apply
242
- * @param props - All props from Radix UI Menubar Separator
395
+ * @param className - Additional CSS classes to apply to the separator
396
+ * @param props - Additional props from Radix UI Menubar Separator
397
+ *
398
+ * @accessibility
399
+ * - Not focusable via keyboard navigation
400
+ * - Provides visual separation for screen reader users
401
+ * - Helps organize menu content logically
402
+ *
403
+ * @example
404
+ * ```tsx
405
+ * <MenubarContent>
406
+ * <MenubarItem>New</MenubarItem>
407
+ * <MenubarItem>Open</MenubarItem>
408
+ * <MenubarSeparator />
409
+ * <MenubarItem>Save</MenubarItem>
410
+ * <MenubarItem>Save As</MenubarItem>
411
+ * </MenubarContent>
412
+ * ```
243
413
  */
244
414
  declare function MenubarSeparator({ className, ...props }: React.ComponentProps<typeof MenubarPrimitive.Separator>): import("react/jsx-runtime").JSX.Element;
245
415
  /**
@@ -247,15 +417,28 @@ declare function MenubarSeparator({ className, ...props }: React.ComponentProps<
247
417
  *
248
418
  * Shows keyboard shortcuts aligned to the right of menu items.
249
419
  * Use standard platform conventions (⌘ for Mac, Ctrl+ for Windows/Linux).
420
+ * Purely visual - does not implement the actual keyboard functionality.
421
+ *
422
+ * @param className - Additional CSS classes to apply to the shortcut text
423
+ * @param props - Additional props from HTML span element
424
+ *
425
+ * @accessibility
426
+ * - Provides keyboard shortcut information to all users
427
+ * - Screen readers announce shortcut along with menu item
428
+ * - Does not interfere with keyboard navigation
250
429
  *
251
- * @param className - Additional CSS classes to apply
252
- * @param props - All props from HTML span element
253
430
  * @example
254
431
  * ```tsx
255
- * <MenubarItem>
432
+ * <MenubarItem onSelect={() => save()}>
256
433
  * Save File
257
434
  * <MenubarShortcut>⌘S</MenubarShortcut>
258
435
  * </MenubarItem>
436
+ *
437
+ * // Platform-specific shortcuts
438
+ * <MenubarItem>
439
+ * Copy
440
+ * <MenubarShortcut>{isMac ? '⌘C' : 'Ctrl+C'}</MenubarShortcut>
441
+ * </MenubarItem>
259
442
  * ```
260
443
  */
261
444
  declare function MenubarShortcut({ className, ...props }: React.ComponentProps<"span">): import("react/jsx-runtime").JSX.Element;
@@ -263,9 +446,18 @@ declare function MenubarShortcut({ className, ...props }: React.ComponentProps<"
263
446
  * Container for a submenu.
264
447
  *
265
448
  * Wraps MenubarSubTrigger and MenubarSubContent to create
266
- * nested menu structures.
449
+ * nested menu structures. Supports controlled and uncontrolled states.
450
+ *
451
+ * @param open - The controlled open state of the sub menu. Must be used in conjunction with onOpenChange
452
+ * @param defaultOpen - The open state of the submenu when it is initially rendered. Use when you do not need to control its open state
453
+ * @param onOpenChange - Event handler called when the open state of the submenu changes
454
+ * @param props - Additional props from Radix UI Menubar Sub
455
+ *
456
+ * @accessibility
457
+ * - Right arrow key opens submenu from trigger
458
+ * - Left arrow key closes submenu and returns focus to trigger
459
+ * - Focus is managed automatically between parent and child menus
267
460
  *
268
- * @param props - All props from Radix UI Menubar Sub
269
461
  * @example
270
462
  * ```tsx
271
463
  * <MenubarSub>
@@ -273,8 +465,15 @@ declare function MenubarShortcut({ className, ...props }: React.ComponentProps<"
273
465
  * <MenubarSubContent>
274
466
  * <MenubarItem>Export as PDF</MenubarItem>
275
467
  * <MenubarItem>Export as CSV</MenubarItem>
468
+ * <MenubarItem>Export as JSON</MenubarItem>
276
469
  * </MenubarSubContent>
277
470
  * </MenubarSub>
471
+ *
472
+ * // Controlled submenu
473
+ * <MenubarSub open={exportOpen} onOpenChange={setExportOpen}>
474
+ * <MenubarSubTrigger>Export</MenubarSubTrigger>
475
+ * <MenubarSubContent>...</MenubarSubContent>
476
+ * </MenubarSub>
278
477
  * ```
279
478
  */
280
479
  declare function MenubarSub({ ...props }: React.ComponentProps<typeof MenubarPrimitive.Sub>): import("react/jsx-runtime").JSX.Element;
@@ -283,11 +482,27 @@ declare function MenubarSub({ ...props }: React.ComponentProps<typeof MenubarPri
283
482
  *
284
483
  * Automatically includes a right arrow indicator to show
285
484
  * that it opens a submenu when hovered or focused.
485
+ * Opens submenu on hover or right arrow key press.
286
486
  *
287
- * @param className - Additional CSS classes to apply
487
+ * @param className - Additional CSS classes to apply to the sub-trigger
288
488
  * @param inset - Whether to add left padding for alignment with items that have icons
289
489
  * @param children - The content of the sub-trigger
290
- * @param props - All props from Radix UI Menubar SubTrigger
490
+ * @param disabled - When true, prevents the user from interacting with the item
491
+ * @param textValue - Optional text used for typeahead purposes when content is complex
492
+ * @param props - Additional props from Radix UI Menubar SubTrigger
493
+ *
494
+ * @accessibility
495
+ * - Right arrow key opens the submenu
496
+ * - Enter or Space also opens the submenu
497
+ * - Focus moves to first item in submenu when opened
498
+ * - Visual arrow indicator shows submenu availability
499
+ *
500
+ * @example
501
+ * ```tsx
502
+ * <MenubarSubTrigger>
503
+ * Recent Files
504
+ * </MenubarSubTrigger>
505
+ * ```
291
506
  */
292
507
  declare function MenubarSubTrigger({ className, inset, children, ...props }: React.ComponentProps<typeof MenubarPrimitive.SubTrigger> & {
293
508
  inset?: boolean;
@@ -297,9 +512,36 @@ declare function MenubarSubTrigger({ className, inset, children, ...props }: Rea
297
512
  *
298
513
  * Contains the menu items that appear when a MenubarSubTrigger
299
514
  * is hovered or focused. Supports all the same content as MenubarContent.
515
+ * Automatically positioned to avoid viewport collisions.
516
+ *
517
+ * @param className - Additional CSS classes to apply to the sub-content container
518
+ * @param align - The preferred alignment against the trigger. May change when collisions occur
519
+ * @param alignOffset - An offset in pixels from the "start" or "end" alignment options
520
+ * @param sideOffset - The distance in pixels from the trigger
521
+ * @param side - The preferred side of the trigger to render against when open
522
+ * @param avoidCollisions - When true, overrides the side and align preferences to prevent collisions with viewport edges
523
+ * @param collisionBoundary - The element used as the collision boundary for positioning
524
+ * @param loop - Whether keyboard navigation should loop from last item to first, and vice versa
525
+ * @param onEscapeKeyDown - Event handler called when the escape key is down
526
+ * @param onPointerDownOutside - Event handler called when a pointerdown event happens outside of the component
527
+ * @param onFocusOutside - Event handler called when focus moves outside of the component
528
+ * @param onInteractOutside - Event handler called when an interaction happens outside the component
529
+ * @param props - Additional props from Radix UI Menubar SubContent
300
530
  *
301
- * @param className - Additional CSS classes to apply
302
- * @param props - All props from Radix UI Menubar SubContent
531
+ * @accessibility
532
+ * - Left arrow key closes submenu and returns focus to trigger
533
+ * - Arrow keys navigate within submenu items
534
+ * - Escape key closes entire menu hierarchy
535
+ * - Focus is trapped within submenu when open
536
+ *
537
+ * @example
538
+ * ```tsx
539
+ * <MenubarSubContent>
540
+ * <MenubarItem>document1.txt</MenubarItem>
541
+ * <MenubarItem>document2.txt</MenubarItem>
542
+ * <MenubarItem>document3.txt</MenubarItem>
543
+ * </MenubarSubContent>
544
+ * ```
303
545
  */
304
546
  declare function MenubarSubContent({ className, ...props }: React.ComponentProps<typeof MenubarPrimitive.SubContent>): import("react/jsx-runtime").JSX.Element;
305
547
  export { Menubar, MenubarPortal, MenubarMenu, MenubarTrigger, MenubarContent, MenubarGroup, MenubarSeparator, MenubarLabel, MenubarItem, MenubarShortcut, MenubarCheckboxItem, MenubarRadioGroup, MenubarRadioItem, MenubarSub, MenubarSubTrigger, MenubarSubContent, };
@@ -1 +1 @@
1
- {"version":3,"file":"menubar.d.ts","sourceRoot":"","sources":["../../../src/components/ui/menubar.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"menubar.d.ts","sourceRoot":"","sources":["../../../src/components/ui/menubar.tsx"],"names":[],"mappings":"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"}