Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | import { checkPortals } from "@utils/routing";
import { useState } from "react";
import { useMediaQuery, useTheme } from "@mui/material";
import { CAMPAIGN_PANEL_WIDTH } from "@common/CampaignCard/CampaignDetailsModal/useCampaignModal";
import { useModal } from "@ebay/nice-modal-react";
const useSidePanel = () => {
const [isExpanded, setIsExpanded] = useState<boolean>(false);
const modal = useModal();
const theme = useTheme();
const hasResponsiveViewport = useMediaQuery(
theme.breakpoints.up(CAMPAIGN_PANEL_WIDTH * 2),
);
const { isManageMoney } = checkPortals();
const handleClose = () => {
setIsExpanded((prev) => {
if (!prev) {
modal.remove();
}
return false;
});
};
const handleExpandPanel = () => {
setIsExpanded((prev) => !prev);
};
return {
canBeExpanded: isManageMoney && hasResponsiveViewport,
isExpanded,
modal,
handleClose,
handleExpandPanel,
};
};
export default useSidePanel;
|