@@ -36,16 +36,28 @@ import {
3636import { PopoverContent } from './popover'
3737import { composeTailwindRenderProps } from './primitive'
3838
39+ /**
40+ * @deprecated Switch to `DropdownMenu`
41+ */
3942interface MenuContextProps {
4043 respectScreen : boolean
4144}
4245
46+ /**
47+ * @deprecated Switch to `DropdownMenu`
48+ */
4349const MenuContext = createContext < MenuContextProps > ( { respectScreen : true } )
4450
51+ /**
52+ * @deprecated Switch to `DropdownMenu`
53+ */
4554interface MenuProps extends MenuTriggerPrimitiveProps {
4655 respectScreen ?: boolean
4756}
4857
58+ /**
59+ * @deprecated Switch to `DropdownMenu`
60+ */
4961const Menu = ( { respectScreen = true , ...props } : MenuProps ) => {
5062 return (
5163 < MenuContext value = { { respectScreen } } >
@@ -54,16 +66,25 @@ const Menu = ({ respectScreen = true, ...props }: MenuProps) => {
5466 )
5567}
5668
69+ /**
70+ * @deprecated Switch to `DropdownMenu`
71+ */
5772const MenuSubMenu = ( { delay = 0 , ...props } ) => (
5873 < SubmenuTriggerPrimitive { ...props } delay = { delay } >
5974 { props . children }
6075 </ SubmenuTriggerPrimitive >
6176)
6277
78+ /**
79+ * @deprecated Switch to `DropdownMenu`
80+ */
6381interface MenuTriggerProps extends ButtonProps {
6482 className ?: string
6583}
6684
85+ /**
86+ * @deprecated Switch to `DropdownMenu`
87+ */
6788const MenuTrigger = React . forwardRef < HTMLButtonElement , MenuTriggerProps > (
6889 ( { className, ...props } , ref ) => (
6990 < Button
@@ -80,6 +101,9 @@ const MenuTrigger = React.forwardRef<HTMLButtonElement, MenuTriggerProps>(
80101 )
81102)
82103
104+ /**
105+ * @deprecated Switch to `DropdownMenu`
106+ */
83107interface MenuContentProps < T >
84108 extends Pick <
85109 PopoverProps ,
@@ -99,6 +123,9 @@ interface MenuContentProps<T>
99123 respectScreen ?: boolean
100124}
101125
126+ /**
127+ * @deprecated Switch to `DropdownMenu`
128+ */
102129const MenuContent = < T extends object > ( {
103130 className,
104131 showArrow = false ,
@@ -137,10 +164,16 @@ const MenuContent = <T extends object>({
137164 )
138165}
139166
167+ /**
168+ * @deprecated Switch to `DropdownMenu`
169+ */
140170interface MenuItemProps extends MenuItemPrimitiveProps , VariantProps < typeof dropdownItemStyles > {
141171 isDanger ?: boolean
142172}
143173
174+ /**
175+ * @deprecated Switch to `DropdownMenu`
176+ */
144177const MenuItem = ( { className, isDanger = false , children, ...props } : MenuItemProps ) => {
145178 const textValue = props . textValue || ( typeof children === 'string' ? children : undefined )
146179 return (
@@ -190,10 +223,16 @@ const MenuItem = ({ className, isDanger = false, children, ...props }: MenuItemP
190223 )
191224}
192225
226+ /**
227+ * @deprecated Switch to `DropdownMenu`
228+ */
193229export interface MenuHeaderProps extends React . ComponentProps < typeof Header > {
194230 separator ?: boolean
195231}
196232
233+ /**
234+ * @deprecated Switch to `DropdownMenu`
235+ */
197236const MenuHeader = ( { className, separator = false , ...props } : MenuHeaderProps ) => (
198237 < Header
199238 className = { twMerge (
@@ -205,13 +244,22 @@ const MenuHeader = ({ className, separator = false, ...props }: MenuHeaderProps)
205244 />
206245)
207246
247+ /**
248+ * @deprecated Switch to `DropdownMenu`
249+ */
208250const { section, header } = dropdownSectionStyles ( )
209251
252+ /**
253+ * @deprecated Switch to `DropdownMenu`
254+ */
210255interface MenuSectionProps < T > extends MenuSectionPrimitiveProps < T > {
211256 ref ?: React . Ref < HTMLElement >
212257 title ?: string
213258}
214259
260+ /**
261+ * @deprecated Switch to `DropdownMenu`
262+ */
215263// TODO: /** @ts -expect-error The legacy ref here is bastards */
216264const MenuSection = < T extends object > ( { className, ref, ...props } : MenuSectionProps < T > ) => {
217265 return (
0 commit comments