@snow-labs/brutal-ui 0.3.1 → 0.4.0
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.
- package/dist/components/brutal/comparison-table.d.ts +23 -0
- package/dist/components/brutal/comparison-table.js +117 -0
- package/dist/components/brutal/comparison-table.js.map +1 -0
- package/dist/components/brutal/cta-section.js +8 -4
- package/dist/components/brutal/cta-section.js.map +1 -1
- package/dist/components/brutal/feature-grid.d.ts +1 -1
- package/dist/components/brutal/feature-grid.js +8 -0
- package/dist/components/brutal/feature-grid.js.map +1 -1
- package/dist/components/brutal/feature-showcase.d.ts +20 -0
- package/dist/components/brutal/feature-showcase.js +158 -0
- package/dist/components/brutal/feature-showcase.js.map +1 -0
- package/dist/components/brutal/hero.js +4 -4
- package/dist/components/brutal/hero.js.map +1 -1
- package/dist/components/brutal/index.d.ts +4 -0
- package/dist/components/brutal/index.js +277 -51
- package/dist/components/brutal/index.js.map +1 -1
- package/dist/components/brutal/marquee.d.ts +17 -0
- package/dist/components/brutal/marquee.js +66 -0
- package/dist/components/brutal/marquee.js.map +1 -0
- package/dist/components/brutal/mockup-window.d.ts +11 -0
- package/dist/components/brutal/mockup-window.js +80 -0
- package/dist/components/brutal/mockup-window.js.map +1 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.js +235 -9
- package/dist/index.js.map +1 -1
- package/dist/templates/index.js +20 -8
- package/dist/templates/index.js.map +1 -1
- package/dist/templates/saas-launch.js +20 -8
- package/dist/templates/saas-launch.js.map +1 -1
- package/dist/templates/studio.js +20 -8
- package/dist/templates/studio.js.map +1 -1
- package/package.json +1 -1
|
@@ -359,11 +359,11 @@ function BrutalHero({
|
|
|
359
359
|
variant === "centered" && "mx-auto"
|
|
360
360
|
), children: description }),
|
|
361
361
|
/* @__PURE__ */ jsxs("div", { className: cn(
|
|
362
|
-
"flex flex-
|
|
363
|
-
variant === "centered" && "justify-center"
|
|
362
|
+
"flex flex-col gap-3 sm:flex-row sm:gap-4",
|
|
363
|
+
variant === "centered" && "sm:justify-center"
|
|
364
364
|
), children: [
|
|
365
|
-
/* @__PURE__ */ jsx(Button, { variant: ctaVariant, size: "xl", render: /* @__PURE__ */ jsx("a", { href: ctaHref }), children: ctaText }),
|
|
366
|
-
secondaryText && /* @__PURE__ */ jsx(Button, { variant: "outline", size: "xl", render: /* @__PURE__ */ jsx("a", { href: secondaryHref || "#" }), children: secondaryText })
|
|
365
|
+
/* @__PURE__ */ jsx(Button, { variant: ctaVariant, size: "xl", className: "w-full sm:w-auto", render: /* @__PURE__ */ jsx("a", { href: ctaHref }), children: ctaText }),
|
|
366
|
+
secondaryText && /* @__PURE__ */ jsx(Button, { variant: "outline", size: "xl", className: "w-full sm:w-auto", render: /* @__PURE__ */ jsx("a", { href: secondaryHref || "#" }), children: secondaryText })
|
|
367
367
|
] }),
|
|
368
368
|
proof && /* @__PURE__ */ jsxs("p", { className: "flex items-center gap-2 text-sm font-medium opacity-70", children: [
|
|
369
369
|
/* @__PURE__ */ jsx("span", { className: "inline-flex size-5 items-center justify-center border border-current text-xs", children: "\u2713" }),
|
|
@@ -574,6 +574,14 @@ function FeatureCard({
|
|
|
574
574
|
index
|
|
575
575
|
}) {
|
|
576
576
|
const isBentoFeatured = variant === "bento" && feature.featured;
|
|
577
|
+
if (variant === "minimal") {
|
|
578
|
+
return /* @__PURE__ */ jsxs("div", { className: "group flex flex-col gap-3 border-l-4 border-l-brand py-1 pl-5", children: [
|
|
579
|
+
feature.icon && /* @__PURE__ */ jsx("div", { className: "text-2xl", children: feature.icon }),
|
|
580
|
+
feature.stat && /* @__PURE__ */ jsx("p", { className: "brutal-label text-brand", children: feature.stat }),
|
|
581
|
+
/* @__PURE__ */ jsx("h3", { className: "text-lg font-bold", children: feature.title }),
|
|
582
|
+
/* @__PURE__ */ jsx("p", { className: "text-sm leading-relaxed text-muted-foreground", children: feature.description })
|
|
583
|
+
] });
|
|
584
|
+
}
|
|
577
585
|
if (variant === "icon-left") {
|
|
578
586
|
return /* @__PURE__ */ jsxs("div", { className: "flex gap-4 border-brutal border-foreground border-l-4 border-l-brand bg-background p-5 shadow-brutal transition-all duration-150 hover:-translate-x-0.5 hover:-translate-y-0.5 hover:shadow-brutal-lg", children: [
|
|
579
587
|
feature.icon && /* @__PURE__ */ jsx("div", { className: "flex size-12 shrink-0 items-center justify-center border-brutal border-foreground bg-brand-muted text-2xl shadow-brutal-sm", children: feature.icon }),
|
|
@@ -1024,12 +1032,13 @@ function CTAButtons({
|
|
|
1024
1032
|
secondaryText,
|
|
1025
1033
|
secondaryHref
|
|
1026
1034
|
}) {
|
|
1027
|
-
return /* @__PURE__ */ jsxs("div", { className: "flex flex-
|
|
1035
|
+
return /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-3 sm:flex-row sm:justify-center sm:gap-4", children: [
|
|
1028
1036
|
/* @__PURE__ */ jsx(
|
|
1029
1037
|
Button,
|
|
1030
1038
|
{
|
|
1031
1039
|
variant: ctaVariant,
|
|
1032
1040
|
size: "xl",
|
|
1041
|
+
className: "w-full sm:w-auto",
|
|
1033
1042
|
render: /* @__PURE__ */ jsx("a", { href: ctaHref }),
|
|
1034
1043
|
children: ctaText
|
|
1035
1044
|
}
|
|
@@ -1038,7 +1047,8 @@ function CTAButtons({
|
|
|
1038
1047
|
Button,
|
|
1039
1048
|
{
|
|
1040
1049
|
variant: "outline",
|
|
1041
|
-
size: "
|
|
1050
|
+
size: "xl",
|
|
1051
|
+
className: "w-full sm:w-auto",
|
|
1042
1052
|
render: /* @__PURE__ */ jsx("a", { href: secondaryHref || "#" }),
|
|
1043
1053
|
children: secondaryText
|
|
1044
1054
|
}
|
|
@@ -1068,12 +1078,13 @@ function SplitCTA(props) {
|
|
|
1068
1078
|
/* @__PURE__ */ jsx("h2", { className: "brutal-h1 mb-6", children: props.headline }),
|
|
1069
1079
|
props.description && /* @__PURE__ */ jsx("p", { className: "brutal-body mb-4 opacity-80", children: props.description }),
|
|
1070
1080
|
props.stats && /* @__PURE__ */ jsx("p", { className: "brutal-label mb-8 opacity-60", children: props.stats }),
|
|
1071
|
-
/* @__PURE__ */ jsxs("div", { className: "flex flex-
|
|
1081
|
+
/* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-3 sm:flex-row sm:gap-4", children: [
|
|
1072
1082
|
/* @__PURE__ */ jsx(
|
|
1073
1083
|
Button,
|
|
1074
1084
|
{
|
|
1075
1085
|
variant: props.ctaVariant || "cta",
|
|
1076
1086
|
size: "xl",
|
|
1087
|
+
className: "w-full sm:w-auto",
|
|
1077
1088
|
render: /* @__PURE__ */ jsx("a", { href: props.ctaHref || "#" }),
|
|
1078
1089
|
children: props.ctaText
|
|
1079
1090
|
}
|
|
@@ -1082,7 +1093,8 @@ function SplitCTA(props) {
|
|
|
1082
1093
|
Button,
|
|
1083
1094
|
{
|
|
1084
1095
|
variant: "outline",
|
|
1085
|
-
size: "
|
|
1096
|
+
size: "xl",
|
|
1097
|
+
className: "w-full sm:w-auto",
|
|
1086
1098
|
render: /* @__PURE__ */ jsx("a", { href: props.secondaryHref || "#" }),
|
|
1087
1099
|
children: props.secondaryText
|
|
1088
1100
|
}
|