import _ from "lodash";
import { DetailedHTMLProps, HTMLAttributes } from "react";
import { twMerge } from "tailwind-merge";

/**
 * # Flexbox Column
 * @className twui-stack
 */
export default function Stack({
    ...props
}: DetailedHTMLProps<HTMLAttributes<HTMLDivElement>, HTMLDivElement> & {
    center?: boolean;
}) {
    const finalProps = _.omit(props, "center");
    return (
        <div
            {...finalProps}
            className={twMerge(
                "flex flex-col items-start gap-4",
                props.center && "items-center",
                "twui-stack",
                props.className
            )}
        >
            {props.children}
        </div>
    );
}
