mirror of https://github.com/cocosolos/ixion.git
Adjust expansion bar display for small screens
This commit is contained in:
parent
09c5b24150
commit
734a3f3e3b
|
|
@ -1,4 +1,10 @@
|
||||||
import { Box, ToggleButton, ToggleButtonGroup, Tooltip } from '@mui/material';
|
import {
|
||||||
|
Box,
|
||||||
|
ToggleButton,
|
||||||
|
ToggleButtonGroup,
|
||||||
|
Tooltip,
|
||||||
|
useMediaQuery,
|
||||||
|
} from '@mui/material';
|
||||||
import { ServerData } from '../../data/ServerData';
|
import { ServerData } from '../../data/ServerData';
|
||||||
|
|
||||||
const expansionButtons = [
|
const expansionButtons = [
|
||||||
|
|
@ -47,12 +53,22 @@ const expansionButtons = [
|
||||||
>
|
>
|
||||||
SoA
|
SoA
|
||||||
</ToggleButton>,
|
</ToggleButton>,
|
||||||
|
<ToggleButton
|
||||||
|
key="addons"
|
||||||
|
value="addons"
|
||||||
|
aria-label="addons-enabled"
|
||||||
|
className="py-0"
|
||||||
|
disabled
|
||||||
|
>
|
||||||
|
+
|
||||||
|
</ToggleButton>,
|
||||||
];
|
];
|
||||||
|
|
||||||
type ExpansionBarProps = { server: ServerData };
|
type ExpansionBarProps = { server: ServerData };
|
||||||
|
|
||||||
export default function ExpansionBar({ server }: ExpansionBarProps) {
|
export default function ExpansionBar({ server }: ExpansionBarProps) {
|
||||||
const { expansions } = server;
|
const { expansions } = server;
|
||||||
|
const isSmallScreen = useMediaQuery('(max-width:400px)');
|
||||||
|
|
||||||
const addons = ['acp', 'amk', 'asa', 'abyssea', 'voidwatch', 'rov', 'tvr'];
|
const addons = ['acp', 'amk', 'asa', 'abyssea', 'voidwatch', 'rov', 'tvr'];
|
||||||
let enabledAddons = addons.filter((prop) => expansions[prop]);
|
let enabledAddons = addons.filter((prop) => expansions[prop]);
|
||||||
|
|
@ -79,6 +95,7 @@ export default function ExpansionBar({ server }: ExpansionBarProps) {
|
||||||
>
|
>
|
||||||
<ToggleButtonGroup
|
<ToggleButtonGroup
|
||||||
size="small"
|
size="small"
|
||||||
|
orientation={isSmallScreen ? 'vertical' : 'horizontal'}
|
||||||
value={
|
value={
|
||||||
expansions && [
|
expansions && [
|
||||||
expansions.rotz && 'rotz',
|
expansions.rotz && 'rotz',
|
||||||
|
|
@ -89,20 +106,13 @@ export default function ExpansionBar({ server }: ExpansionBarProps) {
|
||||||
enabledAddons.length !== 0 && 'addons',
|
enabledAddons.length !== 0 && 'addons',
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
sx={{ '& button': { maxHeight: '1rem' } }}
|
sx={{
|
||||||
|
'& button': {
|
||||||
|
maxHeight: '1rem',
|
||||||
|
},
|
||||||
|
}}
|
||||||
>
|
>
|
||||||
{expansionButtons}
|
{expansionButtons}
|
||||||
{enabledAddons.length !== 0 && (
|
|
||||||
<ToggleButton
|
|
||||||
key="addons"
|
|
||||||
value="addons"
|
|
||||||
aria-label="addons-enabled"
|
|
||||||
className="py-0"
|
|
||||||
disabled
|
|
||||||
>
|
|
||||||
+
|
|
||||||
</ToggleButton>
|
|
||||||
)}
|
|
||||||
</ToggleButtonGroup>
|
</ToggleButtonGroup>
|
||||||
</Tooltip>
|
</Tooltip>
|
||||||
</Box>
|
</Box>
|
||||||
|
|
|
||||||
|
|
@ -20,6 +20,7 @@ import {
|
||||||
Tooltip,
|
Tooltip,
|
||||||
Typography,
|
Typography,
|
||||||
alpha,
|
alpha,
|
||||||
|
useMediaQuery,
|
||||||
} from '@mui/material';
|
} from '@mui/material';
|
||||||
import {
|
import {
|
||||||
Children,
|
Children,
|
||||||
|
|
@ -46,6 +47,7 @@ type ServerCardProps = {
|
||||||
|
|
||||||
export default function ServerCard({ server, children }: ServerCardProps) {
|
export default function ServerCard({ server, children }: ServerCardProps) {
|
||||||
const { themeMode } = useThemeModeContext();
|
const { themeMode } = useThemeModeContext();
|
||||||
|
const isSmallScreen = useMediaQuery('(max-width:400px)');
|
||||||
const [clipboardTooltip, setClipboardTooltip] = useState('Copy server URL.');
|
const [clipboardTooltip, setClipboardTooltip] = useState('Copy server URL.');
|
||||||
const [clipboardTooltipOpen, setClipboardTooltipOpen] = useState(false);
|
const [clipboardTooltipOpen, setClipboardTooltipOpen] = useState(false);
|
||||||
const handleClipboardTooltipClose = () => {
|
const handleClipboardTooltipClose = () => {
|
||||||
|
|
@ -112,7 +114,7 @@ export default function ServerCard({ server, children }: ServerCardProps) {
|
||||||
return (
|
return (
|
||||||
<Card className="mb-2" raised={themeMode === 'light'}>
|
<Card className="mb-2" raised={themeMode === 'light'}>
|
||||||
<Accordion
|
<Accordion
|
||||||
className="my-0"
|
className="my-0 min-w-fit"
|
||||||
disableGutters
|
disableGutters
|
||||||
elevation={0}
|
elevation={0}
|
||||||
square
|
square
|
||||||
|
|
@ -186,7 +188,14 @@ export default function ServerCard({ server, children }: ServerCardProps) {
|
||||||
</Tooltip>
|
</Tooltip>
|
||||||
</Box>
|
</Box>
|
||||||
</Box>
|
</Box>
|
||||||
<Box className="grow py-1 pl-4">
|
<Box
|
||||||
|
// className={
|
||||||
|
// isSmallScreen
|
||||||
|
// ? 'flex grow flex-col items-center justify-center py-1 pl-4'
|
||||||
|
// : 'grow py-1 pl-4'
|
||||||
|
// }
|
||||||
|
className="grow py-1 pl-4"
|
||||||
|
>
|
||||||
<Box className="flex content-center">
|
<Box className="flex content-center">
|
||||||
<Typography
|
<Typography
|
||||||
variant="h5"
|
variant="h5"
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue