initial app

This commit is contained in:
Arnie
2023-06-01 20:24:59 +02:00
parent bb19e15a40
commit 34993f7f61
64 changed files with 10002 additions and 0 deletions
@@ -0,0 +1,50 @@
import styled from "@emotion/styled";
import React from "react";
import Divider from "./Divider";
type SpaceProps = {
spacing?: number;
};
const shouldForwardProp = (prop: string) =>
prop !== "spacing" && prop !== "inline";
const Root = styled("div")({
width: "100%",
});
type SpacerProps = SpaceProps & {
/**
* Displays the dividing line
*/
withDivider?: boolean;
};
const Space = styled("div", { shouldForwardProp })<SpaceProps>(
({ spacing, theme }) => ({
width: "100%",
height: theme.spacing(spacing === undefined ? 1 : spacing),
})
);
const Spacer: React.FC<SpacerProps> = (props) => {
const { spacing, withDivider } = props;
if (!withDivider) {
const spaceSize = typeof spacing === undefined ? 2 : spacing;
return <Space spacing={spaceSize} />;
}
const spaceSize = typeof spacing === undefined ? 1 : spacing;
return (
<Root>
<Space spacing={spaceSize} />
{withDivider && <Divider />}
<Space spacing={spaceSize} />
</Root>
);
};
export default Spacer;