diff --git a/site/src/components/Filter/SelectFilter.tsx b/site/src/components/Filter/SelectFilter.tsx index 1b8993a9713d3..09aac251cec8b 100644 --- a/site/src/components/Filter/SelectFilter.tsx +++ b/site/src/components/Filter/SelectFilter.tsx @@ -53,6 +53,7 @@ export const SelectFilter: FC = ({ {selectedOption?.label ?? placeholder} diff --git a/site/src/components/IconField/IconField.tsx b/site/src/components/IconField/IconField.tsx index b55ed59445dc6..5a272d44bfd80 100644 --- a/site/src/components/IconField/IconField.tsx +++ b/site/src/components/IconField/IconField.tsx @@ -1,17 +1,16 @@ import { Global, css, useTheme } from "@emotion/react"; -import Button from "@mui/material/Button"; import InputAdornment from "@mui/material/InputAdornment"; import TextField, { type TextFieldProps } from "@mui/material/TextField"; import { visuallyHidden } from "@mui/utils"; -import { DropdownArrow } from "components/DropdownArrow/DropdownArrow"; +import { Button } from "components/Button/Button"; import { ExternalImage } from "components/ExternalImage/ExternalImage"; import { Loader } from "components/Loader/Loader"; -import { Stack } from "components/Stack/Stack"; import { Popover, PopoverContent, PopoverTrigger, } from "components/deprecated/Popover/Popover"; +import { ChevronDownIcon } from "lucide-react"; import { type FC, Suspense, lazy, useState } from "react"; // See: https://github.com/missive/emoji-mart/issues/51#issuecomment-287353222 @@ -40,7 +39,7 @@ export const IconField: FC = ({ const [open, setOpen] = useState(false); return ( - +
= ({ /> - - + }> { @@ -128,6 +125,6 @@ export const IconField: FC = ({
)} -
+ ); }; diff --git a/site/src/components/RichParameterInput/RichParameterInput.tsx b/site/src/components/RichParameterInput/RichParameterInput.tsx index c9a5c895e5825..1af3245b98c7b 100644 --- a/site/src/components/RichParameterInput/RichParameterInput.tsx +++ b/site/src/components/RichParameterInput/RichParameterInput.tsx @@ -1,5 +1,4 @@ import type { Interpolation, Theme } from "@emotion/react"; -import Button from "@mui/material/Button"; import FormControlLabel from "@mui/material/FormControlLabel"; import FormHelperText from "@mui/material/FormHelperText"; import type { InputBaseComponentProps } from "@mui/material/InputBase"; @@ -8,6 +7,7 @@ import RadioGroup from "@mui/material/RadioGroup"; import TextField, { type TextFieldProps } from "@mui/material/TextField"; import Tooltip from "@mui/material/Tooltip"; import type { TemplateVersionParameter } from "api/typesGenerated"; +import { Button } from "components/Button/Button"; import { ExternalImage } from "components/ExternalImage/ExternalImage"; import { MemoizedMarkdown } from "components/Markdown/Markdown"; import { Pill } from "components/Pill/Pill"; @@ -240,7 +240,9 @@ export const RichParameterInput: FC = ({ !hideSuggestion && ( - ); - }, -); +export type SelectMenuButtonProps = ButtonProps & { + startIcon?: React.ReactNode; +}; + +export const SelectMenuButton = forwardRef< + HTMLButtonElement, + SelectMenuButtonProps +>((props, ref) => { + const { startIcon, ...restProps } = props; + return ( + + ); +}); export const SelectMenuSearch: FC = (props) => { return ( diff --git a/site/src/pages/LoginPage/LoginPageView.tsx b/site/src/pages/LoginPage/LoginPageView.tsx index 0c9b54e273963..bfa6424e276d8 100644 --- a/site/src/pages/LoginPage/LoginPageView.tsx +++ b/site/src/pages/LoginPage/LoginPageView.tsx @@ -1,6 +1,6 @@ import type { Interpolation, Theme } from "@emotion/react"; -import Button from "@mui/material/Button"; import type { AuthMethods, BuildInfoResponse } from "api/typesGenerated"; +import { Button } from "components/Button/Button"; import { CustomLogo } from "components/CustomLogo/CustomLogo"; import { Loader } from "components/Loader/Loader"; import { type FC, useState } from "react"; @@ -44,7 +44,13 @@ export const LoginPageView: FC = ({ ) : tosAcceptanceRequired ? ( <> - + ) : ( - -