@primer/react-brand
Version:
Primer Brand is a GitHub's design system for creating React-based marketing websites and digital experiences.
43 lines (42 loc) • 2.12 kB
JavaScript
import e from "../node_modules/clsx/dist/clsx.js";
import '../packages/design-tokens/lib/design-tokens/css/tokens/functional/components/grid/grid-Cjk6fsH8.css';import '../packages/design-tokens/lib/design-tokens/css/tokens/functional/components/grid/colors-with-modes-6QocK2fy.css';/* empty css */
/* empty css */
import t from "./Grid.module.js";
import { useId as n } from "../hooks/useId.js";
import { memo as r } from "react";
import { jsx as i } from "react/jsx-runtime";
//#region src/Grid/Grid.tsx
var a = { root: "Grid" }, o = r(({ className: r, children: o, as: s = "div", fullWidth: c = !1, enableOverlay: l = !1, enableGutters: u = !0, columnGap: d = "default", rowGap: f = "default", "data-testid": p, ...m }) => {
let h = e(t.Grid, t[`Grid--columnGap-${d}`], t[`Grid--rowGap-${f}`], l && t["Grid--has-overlay"], c && t["Grid--full-width"], u && t["Grid--has-gutters"], r), g = n(p);
return /* @__PURE__ */ i([
"div",
"span",
"section"
].includes(s) ? s : "div", {
className: h,
"data-testid": p || `${a.root}-${g}`,
...m,
children: o
});
}), s = r(({ children: n, as: r = "div", span: a = 12, start: o, className: s, ...c }) => {
let l = [
"div",
"span",
"section"
].includes(r) ? r : "div", u = [t.Grid__column];
if (typeof a == "number") u.push(t[`Grid__column--span-${a}`]);
else if (typeof a == "object") for (let [e, n] of Object.entries(a)) e === "xsmall" ? u.push(t[`Grid__column--xsmall-span-${n}`]) : u.push(t[`Grid__column--${e}-span-${n}`]);
if (typeof o == "number") u.push(t[`Grid__column--start-${o}`]);
else if (typeof o == "object") for (let [e, n] of Object.entries(o)) e === "xsmall" ? u.push(t[`Grid__column--xsmall-start-${n}`]) : u.push(t[`Grid__column--${e}-start-${n}`]);
return /* @__PURE__ */ i(l, {
className: e(u, s),
...c,
children: n
});
}), c = Object.assign(o, {
Column: s,
testIds: a
});
//#endregion
export { c as Grid };
//# sourceMappingURL=Grid.js.map