diff options
author | Eug-VS <eug-vs@keemail.me> | 2020-01-28 17:00:00 +0300 |
---|---|---|
committer | Eug-VS <eug-vs@keemail.me> | 2020-02-03 14:29:42 +0300 |
commit | bf98ff90a7ad9fad79f75a2215108dcfdaa02ed2 (patch) | |
tree | 54b2447ec501508f9da89cde2aa5d036010d90e9 /src/lib/components/Window/WindowSurface.tsx | |
parent | 53143dfc36e66e285256706a8ec837e2bd2f8427 (diff) | |
download | react-benzin-bf98ff90a7ad9fad79f75a2215108dcfdaa02ed2.tar.gz |
feat!: install Typescript, migrate Window to .tsx
Diffstat (limited to 'src/lib/components/Window/WindowSurface.tsx')
-rw-r--r-- | src/lib/components/Window/WindowSurface.tsx | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/src/lib/components/Window/WindowSurface.tsx b/src/lib/components/Window/WindowSurface.tsx new file mode 100644 index 0000000..aaaa984 --- /dev/null +++ b/src/lib/components/Window/WindowSurface.tsx @@ -0,0 +1,46 @@ +import React from 'react'; + +import { Paper, makeStyles } from '@material-ui/core'; + +import { SurfaceSize, SurfacePosition } from './types'; + + +interface PropTypes { + size: SurfaceSize; + position: SurfacePosition; + children?: any; +} + + +const useStyles = makeStyles((theme: any) => ({ + surface: { + position: 'absolute', + display: 'flex', + flexDirection: 'column', + overflowY: 'auto', + scrollbarColor: `${theme.palette.secondary.dark} ${theme.palette.secondary.light}`, + + '& a.MuiTypography-root': { + color: theme.palette.primary.light, + }, + } +})); + + +const WindowSurface = (props: PropTypes) => { + const classes = useStyles(); + const { size, position, children } = props; + + return ( + <Paper + variant="outlined" + style={{...size, ...position}} + className={classes.surface} + > + {children} + </Paper> + ) +}; + + +export default WindowSurface; |