diff --git a/client/src/Components/monitors/BulkActionsBar.tsx b/client/src/Components/monitors/BulkActionsBar.tsx index aef5e4871..aa520745f 100644 --- a/client/src/Components/monitors/BulkActionsBar.tsx +++ b/client/src/Components/monitors/BulkActionsBar.tsx @@ -1,78 +1,102 @@ +import React from "react"; import Box from "@mui/material/Box"; import Stack from "@mui/material/Stack"; import Typography from "@mui/material/Typography"; -import Button from "@mui/material/Button"; -import Collapse from "@mui/material/Collapse"; -import { Play, Pause } from "lucide-react"; +import Paper from "@mui/material/Paper"; +import Slide from "@mui/material/Slide"; +import IconButton from "@mui/material/IconButton"; +import { X } from "lucide-react"; import { useTranslation } from "react-i18next"; import { useTheme } from "@mui/material/styles"; +import useMediaQuery from "@mui/material/useMediaQuery"; +import { LAYOUT } from "@/Utils/Theme/constants"; +import { useSidebar } from "@/Hooks/useSidebar"; interface BulkActionsBarProps { selectedCount: number; - onResume: () => void; - onPause: () => void; onCancel: () => void; + children?: React.ReactNode; } export const BulkActionsBar = ({ selectedCount, - onResume, - onPause, onCancel, + children, }: BulkActionsBarProps) => { const { t } = useTranslation(); const theme = useTheme(); + const isOpen = selectedCount > 0; + + const isSmall = useMediaQuery(theme.breakpoints.down("md")); + const { width, collapsedWidth, transition } = useSidebar(); return ( - 0}> - + - - - {t("pages.common.monitors.actions.bulkSelected", { - count: selectedCount, - })} - - - - + + - - - + + {children} + + + + ); }; diff --git a/client/src/Pages/Infrastructure/Monitors/index.tsx b/client/src/Pages/Infrastructure/Monitors/index.tsx index 33e6d7f02..63031f41e 100644 --- a/client/src/Pages/Infrastructure/Monitors/index.tsx +++ b/client/src/Pages/Infrastructure/Monitors/index.tsx @@ -7,7 +7,8 @@ import { HeaderMonitorsSummary, BulkActionsBar, } from "@/Components/monitors"; -import { TextField, Dialog } from "@/Components/inputs"; +import { TextField, Dialog, Button } from "@/Components/inputs"; +import { Play, Pause } from "lucide-react"; import { useGet, useDelete } from "@/Hooks/UseApi"; import { useIsAdmin } from "@/Hooks/useIsAdmin"; @@ -178,10 +179,23 @@ const InfrastructureMonitors = () => { {!isLoading && ( + > + + + )} { {!isLoading && ( + > + + + )}