changed the swipeable drawer to use a different variant when closed so the faded background doesn't linger

This commit is contained in:
Carter 2025-04-01 11:42:46 -06:00
parent 4c8664841f
commit 2c4aceb13c
4 changed files with 22 additions and 24 deletions

View file

@ -129,7 +129,6 @@ export default function Header(props: Props) {
<HeaderButtons hasTeams={hasTeams} team={team} user={user} />
</Box>
</Toolbar>
</AppBar>
<SideNavigator open={navOpen} onOpen={() => {setNavOpen(true)}} onClose={() => {setNavOpen(false)}} />
{isMobile && <BottomNavigator setNavOpen={() => {setNavOpen(true)}} sideIsOpen={navOpen} />}

View file

@ -1,23 +1,23 @@
import { Box, CircularProgress, Typography, useTheme } from "@mui/material";
interface Props {
message?: string;
message?: string;
}
export default function LoadingScreen(props: Props) {
const { message } = props;
const theme = useTheme();
const { message } = props;
const theme = useTheme();
return (
<Box sx={{ width: "100%", height: "100%", justifyContent: "center", alignContent: "center", textAlign: "center" }}>
<CircularProgress
size={150}
style={{ marginBottom: theme.spacing(4) }}
/>
<br/>
<Typography variant="h6">
{message ? message : "Loading..."}
</Typography>
</Box>
);
return (
<Box sx={{ width: "100%", height: "100%", justifyContent: "center", alignContent: "center", textAlign: "center" }}>
<CircularProgress
size={150}
style={{ marginBottom: theme.spacing(4) }}
/>
<br/>
<Typography variant="h6">
{message ? message : "Loading..."}
</Typography>
</Box>
);
}

View file

@ -14,7 +14,6 @@ export default function DraggableTabs(props: DraggableTabsProps) {
const { startNode, endNode, children, ...tabsProps } = props;
const [selectedValue, setSelectedValue] = useState<any>(tabsProps.value);
const initialChildren = React.Children.toArray(children);
// const [tabOrder, setTabOrder] = useState<number[]>([]);
const [hoveredIndex, setHoveredIndex] = useState<number>(-1); // Track hovered tab
const tabRefs = useRef<(HTMLDivElement | null)[]>([]); // Refs for each tab
const [{ as, user }] = useGlobalState()
@ -30,21 +29,20 @@ export default function DraggableTabs(props: DraggableTabsProps) {
// Get tab order from cache
const [tabOrder, setTabOrder] = useState<number[]>(() => {
const storedValue = localStorage.getItem(cacheKey);
console.log(storedValue)
console.log(JSON.parse(storedValue!))
console.log(storedValue !== null)
return storedValue !== null ? JSON.parse(storedValue) : [];
});
// save tab order to cache when it changes
useEffect(() => {
console.log(tabOrder)
// console.log(initialChildren.length)
localStorage.setItem(cacheKey, JSON.stringify(tabOrder));
}, [tabOrder]);
useEffect(() => {
const newOrder = initialChildren.map((_, index) => index);
if (tabOrder.length < 1) setTabOrder(newOrder);
// const oddOnesOut = newOrder.filter(item => !tabOrder.includes(item))
// setTabOrder([...oddOnesOut, ...tabOrder])
tabRefs.current = new Array(newOrder.length).fill(null); // Initialize refs
}, [initialChildren.length]);

View file

@ -217,7 +217,7 @@ export default function SideNavigator(props: Props) {
id="tour-dashboard"
onClick={() => goTo("/users")}
classes={getClasses("/user")}
>
>
<ListItemIcon>
<Person />
</ListItemIcon>
@ -238,7 +238,7 @@ export default function SideNavigator(props: Props) {
</ListItemButton>
</Tooltip>
)}
{(IsOmniAir || user.hasFeature("admin")) && (
{(IsOmniAir() || user.hasFeature("admin")) && (
<Tooltip title="Aviation Map" placement="right">
<ListItemButton
id="tour-aviation-map"
@ -258,7 +258,8 @@ export default function SideNavigator(props: Props) {
return (
<SwipeableDrawer
variant={width === "xs" || width === "sm" ? "temporary" : "permanent"}
// variant={width === "xs" || width === "sm" ? "temporary" : "permanent"}
variant={!open ? "permanent" : width === "xs" || width === "sm" ? "temporary" : "permanent"}
classes={{
paper: classNames(
classes.sideMenu,