diff --git a/src/ui/common/assets/three-dots.svg b/src/ui/common/assets/three-dots-black.svg similarity index 95% rename from src/ui/common/assets/three-dots.svg rename to src/ui/common/assets/three-dots-black.svg index 16dabb8c6..297bed51d 100644 --- a/src/ui/common/assets/three-dots.svg +++ b/src/ui/common/assets/three-dots-black.svg @@ -1,5 +1,5 @@ - \ No newline at end of file + fill="#000000" /> + diff --git a/src/ui/common/components/Icons/common/ThreeDotsMenuIcon.tsx b/src/ui/common/components/Icons/common/ThreeDotsMenuIcon.tsx new file mode 100644 index 000000000..482535683 --- /dev/null +++ b/src/ui/common/components/Icons/common/ThreeDotsMenuIcon.tsx @@ -0,0 +1,39 @@ +import { iconColorVariants } from "@babylonlabs-io/core-ui"; +import { twJoin } from "tailwind-merge"; + +interface ThreeDotsMenuIconProps { + className?: string; + size?: number; + /** Same variants supported by other icons */ + variant?: keyof typeof iconColorVariants; + /** Tailwind className to force a color */ + color?: string; +} + +export const ThreeDotsMenuIcon = ({ + className = "", + size = 20, + variant = "default", + color, +}: ThreeDotsMenuIconProps) => { + const colorClass = color || iconColorVariants[variant]; + + return ( + + + + ); +}; diff --git a/src/ui/common/components/ThreeDotsMenu/ThreeDotsMenu.tsx b/src/ui/common/components/ThreeDotsMenu/ThreeDotsMenu.tsx index 490ef2d3a..e105a622f 100644 --- a/src/ui/common/components/ThreeDotsMenu/ThreeDotsMenu.tsx +++ b/src/ui/common/components/ThreeDotsMenu/ThreeDotsMenu.tsx @@ -1,7 +1,7 @@ import { Popover, Text } from "@babylonlabs-io/core-ui"; import { useState } from "react"; -import threeDots from "@/ui/common/assets/three-dots.svg"; +import { ThreeDotsMenuIcon } from "@/ui/common/components/Icons/common/ThreeDotsMenuIcon"; interface ThreeDotsMenuProps { onChange: () => void; @@ -25,7 +25,10 @@ export const ThreeDotsMenu = ({ className={className} aria-label="Open options" > - options +