import React from "react";
/**
* Container — Max-width responsive container wrapper
*/
export function Container({
children,
maxWidth = "1280px",
padding = "0 var(--space-6)",
className = "",
style = {},
...props
}) {
return (
{children}
);
}
/**
* Grid — Flexible CSS Grid container
*/
export function Grid({
children,
cols = 12,
gap = "var(--space-4)",
responsiveCols = {}, // e.g. { sm: 1, md: 2, lg: 3 }
className = "",
style = {},
...props
}) {
const getGridTemplateColumns = () => {
if (typeof cols === "number") {
return `repeat(${cols}, minmax(0, 1fr))`;
}
return cols; // Custom string like "250px 1fr"
};
return (
{children}
);
}
/**
* Flex — Flexbox layout primitive
*/
export function Flex({
children,
direction = "row",
align = "center",
justify = "flex-start",
gap = "var(--space-4)",
wrap = "nowrap",
fullWidth = true,
className = "",
style = {},
...props
}) {
return (
{children}
);
}
/**
* Stack — Vertical or Horizontal stack primitive
*/
export function Stack({
children,
direction = "column",
gap = "var(--space-4)",
align = "stretch",
justify = "flex-start",
className = "",
style = {},
...props
}) {
return (
{children}
);
}
/**
* Spacer — Expressive whitespace spacing element
*/
export function Spacer({
size = "var(--space-4)",
axis = "vertical", // vertical | horizontal
style = {},
...props
}) {
const isVertical = axis === "vertical";
const spacingValue = typeof size === "number" ? `${size}px` : size;
return (
);
}
export default {
Container,
Grid,
Flex,
Stack,
Spacer,
};