feat(grid): optional vertical separator

This commit is contained in:
2021-02-03 20:35:19 +00:00
parent bf6166c698
commit ac4c8ffb20

View File

@@ -4,7 +4,7 @@ import { css } from "@emotion/react";
const Container = styled.div` const Container = styled.div`
display: grid; display: grid;
gap: var(--spacing-y-sm) var(--spacing-x-md); gap: var(--spacing-y-lg) var(--spacing-x-md);
${props => ${props =>
props.columns && props.columns &&
props.columns.map((column, i) => props.columns.map((column, i) =>
@@ -18,16 +18,39 @@ const Container = styled.div`
${ ${
i === 1 && i === 1 &&
css` css`
gap: var(--spacing-y-md) var(--spacing-x-lg); gap: var(--spacing-y-lg) var(--spacing-x-lg);
` `
} }
` `
)} )}
${props =>
props.verticalSeparator &&
css`
@media (max-width: ${props.verticalSeparator}) {
> * {
padding-bottom: var(--spacing-y-lg);
}
> :not(:last-of-type) {
border-bottom: 1px solid var(--color-mid-grey);
}
}
`}
`; `;
export default function Grid({ columns, breakpoints = ["30em"], children }) { export default function Grid({
columns,
breakpoints = ["30em"],
verticalSeparator,
children
}) {
return ( return (
<Container columns={columns} breakpoints={breakpoints}> <Container
columns={columns}
breakpoints={breakpoints}
verticalSeparator={verticalSeparator}
>
{children} {children}
</Container> </Container>
); );