@sprintup-cms/sdk 1.9.7 → 1.9.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -581,20 +581,24 @@ function BentoHeroBlock({ block }) {
581
581
  )
582
582
  ] })
583
583
  ] }),
584
- cards.length > 0 && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-4 auto-rows-fr", children: cards.map((card, i) => /* @__PURE__ */ jsxRuntime.jsxs(
585
- "div",
586
- {
587
- className: `rounded-2xl border border-border p-6 flex flex-col gap-3 transition-shadow hover:shadow-md ${card.featured ? "lg:col-span-2 row-span-1" : ""}`,
588
- style: { background: card.background || "var(--muted)" },
589
- children: [
590
- card.icon && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-2xl", role: "img", "aria-label": card.title, children: card.icon }),
591
- card.image && /* @__PURE__ */ jsxRuntime.jsx("img", { src: card.image, alt: card.imageAlt || card.title || "Feature illustration", className: "w-full rounded-lg object-cover mb-1", style: { maxHeight: card.featured ? "180px" : "120px" } }),
592
- card.title && /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "font-semibold text-sm", children: card.title }),
593
- card.description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs text-muted-foreground leading-relaxed", children: card.description })
594
- ]
595
- },
596
- i
597
- )) })
584
+ cards.length > 0 && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-4", style: { gridAutoRows: "1fr" }, children: cards.map((card, i) => {
585
+ const colSpan = card.featured ? 2 : 1;
586
+ const rowSpan = card.rows || 1;
587
+ return /* @__PURE__ */ jsxRuntime.jsxs(
588
+ "div",
589
+ {
590
+ style: { gridColumn: `span ${colSpan}`, gridRow: `span ${rowSpan}`, background: card.background || "var(--muted)" },
591
+ className: "rounded-2xl border border-border p-6 flex flex-col gap-3 transition-shadow hover:shadow-md",
592
+ children: [
593
+ card.icon && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-2xl", role: "img", "aria-label": card.title, children: card.icon }),
594
+ card.image && /* @__PURE__ */ jsxRuntime.jsx("img", { src: card.image, alt: card.imageAlt || card.title || "Feature illustration", className: "w-full rounded-lg object-cover mb-1", style: { maxHeight: card.featured ? "180px" : "120px" } }),
595
+ card.title && /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "font-semibold text-sm", children: card.title }),
596
+ card.description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs text-muted-foreground leading-relaxed", children: card.description })
597
+ ]
598
+ },
599
+ i
600
+ );
601
+ }) })
598
602
  ] }) });
599
603
  }
600
604
  function MinimalHeroBlock({ block }) {
@@ -883,31 +887,37 @@ function TwoColumnBlock({ block }) {
883
887
  function BentoGridBlock({ block }) {
884
888
  const d = getData(block);
885
889
  const items = Array.isArray(d.items) ? d.items : [];
886
- const sizeClass = {
887
- small: "col-span-1 row-span-1",
888
- wide: "col-span-2 row-span-1",
889
- tall: "col-span-1 row-span-2",
890
- large: "col-span-2 row-span-2"
890
+ const SPAN = {
891
+ small: [1, 1],
892
+ wide: [2, 1],
893
+ tall: [1, 2],
894
+ large: [2, 2],
895
+ "wide-2": [2, 2],
896
+ "wide-3": [2, 3]
891
897
  };
892
898
  return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "py-12", children: [
893
899
  (d.title || d.subtitle) && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mb-8", children: [
894
900
  d.title && /* @__PURE__ */ jsxRuntime.jsx("h2", { className: "text-3xl font-semibold tracking-tight", children: d.title }),
895
901
  d.subtitle && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-muted-foreground mt-1", children: d.subtitle })
896
902
  ] }),
897
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "grid grid-cols-4 auto-rows-[180px] gap-3", children: items.map((item, i) => /* @__PURE__ */ jsxRuntime.jsxs(
898
- "div",
899
- {
900
- className: `rounded-xl border border-border bg-card p-5 flex flex-col justify-between hover:bg-muted/40 transition-colors ${sizeClass[item.size] ?? sizeClass.small}`,
901
- children: [
902
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "w-8 h-8 rounded-lg bg-muted flex items-center justify-center mb-3", children: FEATURE_ICONS[item.icon] ?? /* @__PURE__ */ jsxRuntime.jsx("svg", { viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", className: "w-4 h-4", children: /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "12", cy: "12", r: "10" }) }) }),
903
- /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
904
- /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "font-semibold text-sm", children: item.title }),
905
- item.description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-muted-foreground text-xs mt-0.5 leading-relaxed", children: item.description })
906
- ] })
907
- ]
908
- },
909
- i
910
- )) })
903
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "grid grid-cols-4 gap-3", style: { gridAutoRows: "180px" }, children: items.map((item, i) => {
904
+ const [cs, rs] = SPAN[item.size] ?? [1, 1];
905
+ return /* @__PURE__ */ jsxRuntime.jsxs(
906
+ "div",
907
+ {
908
+ style: { gridColumn: `span ${cs}`, gridRow: `span ${rs}` },
909
+ className: "rounded-xl border border-border bg-card p-5 flex flex-col justify-between hover:bg-muted/40 transition-colors",
910
+ children: [
911
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "w-8 h-8 rounded-lg bg-muted flex items-center justify-center mb-3", children: FEATURE_ICONS[item.icon] ?? /* @__PURE__ */ jsxRuntime.jsx("svg", { viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", className: "w-4 h-4", children: /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "12", cy: "12", r: "10" }) }) }),
912
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
913
+ /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "font-semibold text-sm", children: item.title }),
914
+ item.description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-muted-foreground text-xs mt-0.5 leading-relaxed", children: item.description })
915
+ ] })
916
+ ]
917
+ },
918
+ i
919
+ );
920
+ }) })
911
921
  ] });
912
922
  }
913
923
  function GridLayoutBlock({ block }) {