From e1ebb55ab24e7b2abb57c20f6ade304a2738be29 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Simon=20St=C3=B8vring?= Date: Tue, 20 Aug 2024 22:50:50 +0200 Subject: [PATCH] Replaces SpecificationSelector and VersionSelector with Selector --- .../projects/view/toolbar/MobileToolbar.tsx | 11 ++-- .../{VersionSelector.tsx => Selector.tsx} | 39 +++++++----- .../view/toolbar/SpecificationSelector.tsx | 59 ------------------- .../view/toolbar/TrailingToolbarItem.tsx | 11 ++-- 4 files changed, 33 insertions(+), 87 deletions(-) rename src/features/projects/view/toolbar/{VersionSelector.tsx => Selector.tsx} (71%) delete mode 100644 src/features/projects/view/toolbar/SpecificationSelector.tsx diff --git a/src/features/projects/view/toolbar/MobileToolbar.tsx b/src/features/projects/view/toolbar/MobileToolbar.tsx index 1fa7b6ae..730ad7c7 100644 --- a/src/features/projects/view/toolbar/MobileToolbar.tsx +++ b/src/features/projects/view/toolbar/MobileToolbar.tsx @@ -1,8 +1,7 @@ "use client" import { Stack } from "@mui/material" -import VersionSelector from "./VersionSelector" -import SpecificationSelector from "./SpecificationSelector" +import Selector from "./Selector" import { useProjectSelection } from "../../data" const MobileToolbar = () => { @@ -22,14 +21,14 @@ const MobileToolbar = () => { spacing={1} sx={{ display: { sm: "block", md: "none" } }} > - - void + sx?: SxProps +} + +const Selector = ({ + items, selection, onSelect, sx -}: { - versions: Version[] - selection: string - onSelect: (versionId: string) => void, - sx?: SxProps -}) => { - const handleVersionChange = (event: SelectChangeEvent) => { +}: SelectorProps) => { + const handleChange = (event: SelectChangeEvent) => { onSelect(event.target.value) } + return ( ) } -export default VersionSelector +export default Selector diff --git a/src/features/projects/view/toolbar/SpecificationSelector.tsx b/src/features/projects/view/toolbar/SpecificationSelector.tsx deleted file mode 100644 index a04c07e6..00000000 --- a/src/features/projects/view/toolbar/SpecificationSelector.tsx +++ /dev/null @@ -1,59 +0,0 @@ -import { SxProps } from "@mui/system" -import { - SelectChangeEvent, - Select, - MenuItem, - FormControl, - Typography -} from "@mui/material" -import MenuItemHover from "@/common/ui/MenuItemHover" -import { OpenApiSpecification } from "../../domain" - -const SpecificationSelector = ({ - specifications, - selection, - onSelect, - sx -}: { - specifications: OpenApiSpecification[] - selection: string - onSelect: (specificationId: string) => void - sx?: SxProps -}) => { - const handleVersionChange = (event: SelectChangeEvent) => { - onSelect(event.target.value) - } - return ( - - - - ) -} - -export default SpecificationSelector diff --git a/src/features/projects/view/toolbar/TrailingToolbarItem.tsx b/src/features/projects/view/toolbar/TrailingToolbarItem.tsx index 1e5dba25..4d74f06a 100644 --- a/src/features/projects/view/toolbar/TrailingToolbarItem.tsx +++ b/src/features/projects/view/toolbar/TrailingToolbarItem.tsx @@ -2,8 +2,7 @@ import { SxProps } from "@mui/system" import { Stack, IconButton, Typography, Link, Tooltip, Divider } from "@mui/material" -import VersionSelector from "./VersionSelector" -import SpecificationSelector from "./SpecificationSelector" +import Selector from "./Selector" import { FontAwesomeIcon } from "@fortawesome/react-fontawesome" import { faPenToSquare } from "@fortawesome/free-regular-svg-icons" import { useProjectSelection } from "../../data" @@ -52,15 +51,15 @@ const TrailingToolbarItem = () => { sx={{ marginRight: 1 }} /> / - / -