hensei-web/components/common/DropdownMenuItem/index.tsx
Justin Edmund 0e10ac5a48 Update PartyHeader and DropdownMenuItem
* Remove extraneous states and hooks from PartyHeader
* Only show PartyDropdown if we are looking at an existing party
* Add destructive prop for DropdownMenuItem
* Remove extraneous classes from PartyDropdown
* Localize dropdown contents
2023-06-30 13:55:01 -07:00

39 lines
997 B
TypeScript

import React, { PropsWithChildren } from 'react'
import classNames from 'classnames'
import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu'
import styles from './index.module.scss'
interface Props extends DropdownMenuPrimitive.DropdownMenuItemProps {
destructive?: boolean
}
const defaultProps = {
destructive: false,
}
export const DropdownMenuItem = React.forwardRef<HTMLDivElement, Props>(
function dropdownMenuItem(
{ children, ...props }: PropsWithChildren<Props>,
forwardedRef
) {
const classes = classNames(props.className, {
[styles.menuItem]: true,
[styles.language]: props.className?.includes('language'),
[styles.destructive]: props.destructive,
})
return (
<DropdownMenuPrimitive.Item
{...props}
className={classes}
ref={forwardedRef}
>
{children}
</DropdownMenuPrimitive.Item>
)
}
)
DropdownMenuItem.defaultProps = defaultProps
export default DropdownMenuItem