asb_cloud_front/src/components/Grid.jsx

39 lines
933 B
React
Raw Normal View History

export const Grid = ({children, style, ...other}) => {
const gridContainerStyle = {
display: 'grid',
2021-09-03 09:26:20 +05:00
margin: '8px',
justifyItems: 'stretch',
alignItems: 'stretch',
...style,
}
return <div style={gridContainerStyle} {...other}>
{children}
</div>
}
export const GridItem = ({children, row, col, rowSpan, colSpan, style, ...other}) => {
const localRow = +row
const localCol = +col
const localColSpan = colSpan ? colSpan - 1 : 0
const localRowSpan = rowSpan ? rowSpan - 1 : 0
const gridItemStyle = {
gridColumnStart: localCol,
gridColumnEnd: localCol + localColSpan,
gridRowStart: localRow,
gridRowEnd: localRow + localRowSpan,
2021-09-03 09:26:20 +05:00
padding: '4px',
...style,
}
return <div style={gridItemStyle} {...other}>
{children}
</div>
}
export const Flex = ({children, style, ...other}) =>
<div
style={{display:'flex', ...style}}
{...other}>
{children}
</div>