2022-02-25 17:46:22 +00:00
|
|
|
import AppBar from "@mui/material/AppBar";
|
|
|
|
import Navigation from "./Navigation";
|
|
|
|
import Toolbar from "@mui/material/Toolbar";
|
|
|
|
import IconButton from "@mui/material/IconButton";
|
|
|
|
import MenuIcon from "@mui/icons-material/Menu";
|
|
|
|
import Typography from "@mui/material/Typography";
|
|
|
|
import IconSubscribeSettings from "./IconSubscribeSettings";
|
|
|
|
import * as React from "react";
|
2022-02-28 21:56:38 +00:00
|
|
|
import Box from "@mui/material/Box";
|
2022-02-25 17:46:22 +00:00
|
|
|
|
|
|
|
const ActionBar = (props) => {
|
|
|
|
const title = (props.selectedSubscription !== null)
|
|
|
|
? props.selectedSubscription.shortUrl()
|
|
|
|
: "ntfy";
|
|
|
|
return (
|
2022-02-26 19:22:21 +00:00
|
|
|
<AppBar position="fixed" sx={{
|
|
|
|
width: '100%',
|
2022-02-26 19:36:23 +00:00
|
|
|
zIndex: { sm: 1250 }, // > Navigation (1200), but < Dialog (1300)
|
2022-02-26 19:22:21 +00:00
|
|
|
ml: { sm: `${Navigation.width}px` }
|
|
|
|
}}>
|
2022-02-25 17:46:22 +00:00
|
|
|
<Toolbar sx={{pr: '24px'}}>
|
|
|
|
<IconButton
|
|
|
|
color="inherit"
|
|
|
|
edge="start"
|
|
|
|
onClick={props.onMobileDrawerToggle}
|
|
|
|
sx={{ mr: 2, display: { sm: 'none' } }}
|
|
|
|
>
|
|
|
|
<MenuIcon />
|
|
|
|
</IconButton>
|
2022-02-28 21:56:38 +00:00
|
|
|
<Box component="img" src="static/img/ntfy.svg" sx={{
|
|
|
|
display: { xs: 'none', sm: 'block' },
|
|
|
|
marginRight: '10px',
|
|
|
|
height: '28px'
|
|
|
|
}}/>
|
2022-02-26 19:22:21 +00:00
|
|
|
<Typography variant="h6" noWrap component="div" sx={{ flexGrow: 1 }}>
|
|
|
|
{title}
|
|
|
|
</Typography>
|
2022-02-25 17:46:22 +00:00
|
|
|
{props.selectedSubscription !== null && <IconSubscribeSettings
|
|
|
|
subscription={props.selectedSubscription}
|
|
|
|
onClearAll={props.onClearAll}
|
|
|
|
onUnsubscribe={props.onUnsubscribe}
|
|
|
|
/>}
|
|
|
|
</Toolbar>
|
|
|
|
</AppBar>
|
|
|
|
);
|
|
|
|
};
|
|
|
|
|
2022-02-26 19:22:21 +00:00
|
|
|
/*
|
|
|
|
To add a top left corner logo box:
|
|
|
|
<Typography variant="h5" noWrap component="div" sx={{
|
|
|
|
display: { xs: 'none', sm: 'block' },
|
|
|
|
width: { sm: `${Navigation.width}px` }
|
|
|
|
}}>
|
|
|
|
ntfy
|
|
|
|
</Typography>
|
|
|
|
|
|
|
|
To make the size of the top bar dynamic based on the drawer:
|
|
|
|
width: { sm: `calc(100% - ${Navigation.width}px)` }
|
|
|
|
*/
|
|
|
|
|
2022-02-25 17:46:22 +00:00
|
|
|
export default ActionBar;
|