63 lines
1.0 KiB
TypeScript
Raw Normal View History

import "./Stack.css";
import React from "react";
type StackProps = {
children: React.ReactNode;
gap?: number;
align?: "start" | "center" | "end" | "baseline";
justifyContent?: "center" | "space-around" | "space-between";
className?: string | boolean;
};
function RowStack({
children,
gap,
align,
justifyContent,
className,
}: StackProps) {
return (
<div
className={`Stack Stack_horizontal ${className || ""}`}
style={
{
"--gap": gap,
alignItems: align,
2020-01-24 12:04:54 +02:00
justifyContent,
} as React.CSSProperties
}
>
{children}
</div>
);
}
function ColStack({
children,
gap,
align,
justifyContent,
className,
}: StackProps) {
return (
<div
className={`Stack Stack_vertical ${className || ""}`}
style={
{
"--gap": gap,
justifyItems: align,
2020-01-24 12:04:54 +02:00
justifyContent,
} as React.CSSProperties
}
>
{children}
</div>
);
}
export default {
Row: RowStack,
2020-01-24 12:04:54 +02:00
Col: ColStack,
};