mirror of
https://github.com/roleypoly/roleypoly.git
synced 2025-04-25 11:59:11 +00:00
30 lines
731 B
TypeScript
30 lines
731 B
TypeScript
import * as React from 'react';
|
|
import styled from 'styled-components';
|
|
|
|
type HeroContainerProps = {
|
|
topSpacing: number;
|
|
bottomSpacing: number;
|
|
};
|
|
|
|
type HeroProps = Partial<HeroContainerProps> & {
|
|
children: React.ReactNode;
|
|
};
|
|
|
|
const HeroContainer = styled.div<HeroContainerProps>`
|
|
box-sizing: border-box;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
overflow-x: hidden;
|
|
min-height: calc(100vh - ${(props) => props.topSpacing + props.bottomSpacing}px);
|
|
margin-top: ${(props) => props.topSpacing}px;
|
|
`;
|
|
|
|
export const Hero = (props: HeroProps) => (
|
|
<HeroContainer
|
|
topSpacing={props.topSpacing || 0}
|
|
bottomSpacing={props.bottomSpacing || 0}
|
|
>
|
|
{props.children}
|
|
</HeroContainer>
|
|
);
|