mirror of
https://github.com/sasjs/server.git
synced 2025-12-11 19:44:35 +00:00
fix: improve mobile view for studio page
This commit is contained in:
@@ -147,6 +147,7 @@ const AddPermissionModal = ({
|
|||||||
<Grid item xs={12}>
|
<Grid item xs={12}>
|
||||||
<Autocomplete
|
<Autocomplete
|
||||||
multiple
|
multiple
|
||||||
|
disableClearable
|
||||||
options={paths}
|
options={paths}
|
||||||
filterSelectedOptions
|
filterSelectedOptions
|
||||||
value={selectedPaths}
|
value={selectedPaths}
|
||||||
|
|||||||
@@ -353,9 +353,7 @@ const SASjsEditor = ({
|
|||||||
sx={{
|
sx={{
|
||||||
borderBottom: 1,
|
borderBottom: 1,
|
||||||
borderColor: 'divider',
|
borderColor: 'divider',
|
||||||
position: 'fixed',
|
background: 'white'
|
||||||
background: 'white',
|
|
||||||
width: '85%'
|
|
||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
<TabList onChange={handleTabChange} centered>
|
<TabList onChange={handleTabChange} centered>
|
||||||
@@ -372,10 +370,7 @@ const SASjsEditor = ({
|
|||||||
</TabList>
|
</TabList>
|
||||||
</Box>
|
</Box>
|
||||||
|
|
||||||
<StyledTabPanel
|
<StyledTabPanel sx={{ paddingBottom: 0 }} value="1">
|
||||||
sx={{ paddingBottom: 0, marginTop: '45px' }}
|
|
||||||
value="1"
|
|
||||||
>
|
|
||||||
<Box sx={{ display: 'flex', justifyContent: 'center' }}>
|
<Box sx={{ display: 'flex', justifyContent: 'center' }}>
|
||||||
<RunMenu
|
<RunMenu
|
||||||
fileContent={fileContent}
|
fileContent={fileContent}
|
||||||
@@ -442,13 +437,13 @@ const SASjsEditor = ({
|
|||||||
</Paper>
|
</Paper>
|
||||||
</StyledTabPanel>
|
</StyledTabPanel>
|
||||||
<StyledTabPanel value="2">
|
<StyledTabPanel value="2">
|
||||||
<div style={{ marginTop: '50px' }}>
|
<div>
|
||||||
<h2>SAS Log</h2>
|
<h2>SAS Log</h2>
|
||||||
<pre>{log}</pre>
|
<pre>{log}</pre>
|
||||||
</div>
|
</div>
|
||||||
</StyledTabPanel>
|
</StyledTabPanel>
|
||||||
<StyledTabPanel value="3">
|
<StyledTabPanel value="3">
|
||||||
<div style={{ marginTop: '50px' }}>
|
<div>
|
||||||
<pre>{webout}</pre>
|
<pre>{webout}</pre>
|
||||||
</div>
|
</div>
|
||||||
</StyledTabPanel>
|
</StyledTabPanel>
|
||||||
|
|||||||
@@ -1,6 +1,15 @@
|
|||||||
import React, { useState, useMemo } from 'react'
|
import React, { useState, useMemo } from 'react'
|
||||||
import axios from 'axios'
|
import axios from 'axios'
|
||||||
import { Backdrop, Box, CircularProgress, Drawer, Toolbar } from '@mui/material'
|
import {
|
||||||
|
Backdrop,
|
||||||
|
Box,
|
||||||
|
Paper,
|
||||||
|
CircularProgress,
|
||||||
|
Drawer,
|
||||||
|
Toolbar,
|
||||||
|
IconButton
|
||||||
|
} from '@mui/material'
|
||||||
|
import { FolderOpen } from '@mui/icons-material'
|
||||||
|
|
||||||
import TreeView from '../../components/tree'
|
import TreeView from '../../components/tree'
|
||||||
import BootstrapSnackbar, { AlertSeverityType } from '../../components/snackbar'
|
import BootstrapSnackbar, { AlertSeverityType } from '../../components/snackbar'
|
||||||
@@ -33,6 +42,12 @@ const SideBar = ({
|
|||||||
const [snackbarSeverity, setSnackbarSeverity] = useState<AlertSeverityType>(
|
const [snackbarSeverity, setSnackbarSeverity] = useState<AlertSeverityType>(
|
||||||
AlertSeverityType.Success
|
AlertSeverityType.Success
|
||||||
)
|
)
|
||||||
|
const [mobileOpen, setMobileOpen] = React.useState(false)
|
||||||
|
|
||||||
|
const handleDrawerToggle = () => {
|
||||||
|
setMobileOpen(!mobileOpen)
|
||||||
|
}
|
||||||
|
|
||||||
const defaultExpanded = useMemo(() => {
|
const defaultExpanded = useMemo(() => {
|
||||||
const splittedPath = selectedFilePath.split('/')
|
const splittedPath = selectedFilePath.split('/')
|
||||||
const arr = ['']
|
const arr = ['']
|
||||||
@@ -147,15 +162,8 @@ const SideBar = ({
|
|||||||
.finally(() => setIsLoading(false))
|
.finally(() => setIsLoading(false))
|
||||||
}
|
}
|
||||||
|
|
||||||
return (
|
const drawer = (
|
||||||
<Drawer
|
<div>
|
||||||
variant="permanent"
|
|
||||||
sx={{
|
|
||||||
width: drawerWidth,
|
|
||||||
flexShrink: 0,
|
|
||||||
[`& .MuiDrawer-paper`]: { width: drawerWidth, boxSizing: 'border-box' }
|
|
||||||
}}
|
|
||||||
>
|
|
||||||
<Backdrop
|
<Backdrop
|
||||||
sx={{ color: '#fff', zIndex: (theme) => theme.zIndex.drawer + 1 }}
|
sx={{ color: '#fff', zIndex: (theme) => theme.zIndex.drawer + 1 }}
|
||||||
open={isLoading}
|
open={isLoading}
|
||||||
@@ -189,7 +197,64 @@ const SideBar = ({
|
|||||||
title={modalTitle}
|
title={modalTitle}
|
||||||
payload={modalPayload}
|
payload={modalPayload}
|
||||||
/>
|
/>
|
||||||
</Drawer>
|
</div>
|
||||||
|
)
|
||||||
|
|
||||||
|
return (
|
||||||
|
<>
|
||||||
|
<Box
|
||||||
|
component={Paper}
|
||||||
|
sx={{
|
||||||
|
margin: '5px',
|
||||||
|
paddingTop: '45px',
|
||||||
|
display: 'flex',
|
||||||
|
alignItems: 'flex-start'
|
||||||
|
}}
|
||||||
|
>
|
||||||
|
<IconButton
|
||||||
|
color="inherit"
|
||||||
|
size="large"
|
||||||
|
aria-label="open drawer"
|
||||||
|
edge="start"
|
||||||
|
onClick={handleDrawerToggle}
|
||||||
|
sx={{ left: '5px', display: { md: 'none' } }}
|
||||||
|
>
|
||||||
|
<FolderOpen />
|
||||||
|
</IconButton>
|
||||||
|
</Box>
|
||||||
|
<Drawer
|
||||||
|
variant="temporary"
|
||||||
|
open={mobileOpen}
|
||||||
|
onClose={handleDrawerToggle}
|
||||||
|
ModalProps={{
|
||||||
|
keepMounted: true // Better open performance on mobile.
|
||||||
|
}}
|
||||||
|
sx={{
|
||||||
|
display: { xs: 'block', md: 'none' },
|
||||||
|
flexShrink: 0,
|
||||||
|
[`& .MuiDrawer-paper`]: {
|
||||||
|
width: 240,
|
||||||
|
boxSizing: 'border-box'
|
||||||
|
}
|
||||||
|
}}
|
||||||
|
>
|
||||||
|
{drawer}
|
||||||
|
</Drawer>
|
||||||
|
<Drawer
|
||||||
|
variant="permanent"
|
||||||
|
sx={{
|
||||||
|
display: { xs: 'none', md: 'block' },
|
||||||
|
width: drawerWidth,
|
||||||
|
flexShrink: 0,
|
||||||
|
[`& .MuiDrawer-paper`]: {
|
||||||
|
width: drawerWidth,
|
||||||
|
boxSizing: 'border-box'
|
||||||
|
}
|
||||||
|
}}
|
||||||
|
>
|
||||||
|
{drawer}
|
||||||
|
</Drawer>
|
||||||
|
</>
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user