-
+export const ContextMenuDivItem = ({
+ variant,
+ children,
+ className,
+ ...props
+}: PropsWithChildren
) => (
+
+ {children || }
);
-export const ItemInternals = ({
- icon,
- label,
- rightArrow,
- keybind,
- iconProps
-}: ContextMenuItemProps) => {
+const ItemInternals = ({ icon, label, rightArrow, keybind, iconProps }: ContextMenuItemProps) => {
const ItemIcon = icon;
+
return (
<>
{ItemIcon && }
- {label && {label}
}
+ {label && {label}}
{keybind && (
-
+
{keybind}
)}
{rightArrow && (
- <>
-
-
- >
+
)}
>
);
diff --git a/packages/ui/src/DropdownMenu.tsx b/packages/ui/src/DropdownMenu.tsx
index 9340f51f8..f049b9f8b 100644
--- a/packages/ui/src/DropdownMenu.tsx
+++ b/packages/ui/src/DropdownMenu.tsx
@@ -3,21 +3,17 @@ import clsx from 'clsx';
import React, { PropsWithChildren, Suspense, useCallback, useRef, useState } from 'react';
import { Link } from 'react-router-dom';
import {
+ ContextMenuDivItem,
ContextMenuItemProps,
- ItemInternals,
- contextMenuClasses,
- contextMenuItemStyles,
- contextMenuSeparatorClassNames,
- contextSubMenuTriggerClassNames
+ contextMenuClassNames,
+ contextMenuItemClassNames,
+ contextMenuSeparatorClassNames
} from './ContextMenu';
-interface DropdownMenuProps
- extends RadixDM.MenuContentProps,
- Pick {
+interface DropdownMenuProps extends RadixDM.MenuContentProps {
trigger: React.ReactNode;
triggerClassName?: string;
alignToTrigger?: boolean;
- animate?: boolean;
}
const Root = ({
@@ -27,8 +23,6 @@ const Root = ({
asChild = true,
triggerClassName,
alignToTrigger,
- onOpenChange,
- animate,
...props
}: PropsWithChildren) => {
const [width, setWidth] = useState();
@@ -38,28 +32,19 @@ const Root = ({
}, []);
return (
-
+
{trigger}
-
+
+ {children}
+
);
@@ -77,29 +62,19 @@ const SubMenu = ({
}: RadixDM.MenuSubContentProps & ContextMenuItemProps) => {
return (
-
-
-
-
+
+
-
+
);
};
-interface DropdownItemProps extends ContextMenuItemProps, RadixDM.MenuItemProps {
+interface DropdownItemProps extends ContextMenuItemProps {
to?: string;
selected?: boolean;
}
@@ -116,39 +91,23 @@ const Item = ({
selected,
to,
...props
-}: DropdownItemProps) => {
+}: DropdownItemProps & RadixDM.MenuItemProps) => {
const ref = useRef(null);
return (
-
+
{to ? (
- ref.current?.click()}
- >
- {children ? (
- {children}
- ) : (
-
- )}
+ ref.current?.click()}>
+
) : (
-
- {children || }
-
+
)}
);
diff --git a/packages/ui/style/colors.scss b/packages/ui/style/colors.scss
index 5c83a35de..24e548534 100644
--- a/packages/ui/style/colors.scss
+++ b/packages/ui/style/colors.scss
@@ -37,7 +37,7 @@
--color-app-frame: var(--dark-hue), 15%, 25%;
// menu
--color-menu: var(--dark-hue), 25%, 5%;
- --color-menu-line: var(--dark-hue), 15%, 7%;
+ --color-menu-line: var(--dark-hue), 15%, 11%;
--color-menu-ink: var(--dark-hue), 5%, 100%;
--color-menu-faint: var(--dark-hue), 5%, 80%;
--color-menu-hover: var(--dark-hue), 15%, 30%;
@@ -81,8 +81,8 @@
--color-app-shade: var(--light-hue), 15%, 50%;
--color-app-frame: 0, 0%, 100%;
// menu
- --color-menu: var(--light-hue), 16%, 0%;
- --color-menu-line: var(--light-hue), 5%, 18%;
+ --color-menu: var(--light-hue), 5%, 100%;
+ --color-menu-line: var(--light-hue), 5%, 95%;
--color-menu-ink: var(--light-hue), 5%, 100%;
--color-menu-faint: var(--light-hue), 5%, 80%;
--color-menu-hover: var(--light-hue), 15%, 20%;