@opensite/ui 2.8.6 → 2.8.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.
- package/dist/about-developer-profile.cjs +17 -10
- package/dist/about-developer-profile.js +17 -10
- package/dist/article-chapters-author.cjs +17 -10
- package/dist/article-chapters-author.js +17 -10
- package/dist/carousel-animated-sections.cjs +79 -25
- package/dist/carousel-animated-sections.d.cts +7 -2
- package/dist/carousel-animated-sections.d.ts +7 -2
- package/dist/carousel-animated-sections.js +79 -25
- package/dist/carousel-gallery-thumbnails.cjs +79 -25
- package/dist/carousel-gallery-thumbnails.d.cts +7 -2
- package/dist/carousel-gallery-thumbnails.d.ts +7 -2
- package/dist/carousel-gallery-thumbnails.js +79 -25
- package/dist/carousel-icon-sidebar.cjs +5 -4
- package/dist/carousel-icon-sidebar.js +5 -4
- package/dist/carousel-portfolio-hero.cjs +79 -25
- package/dist/carousel-portfolio-hero.d.cts +7 -2
- package/dist/carousel-portfolio-hero.d.ts +7 -2
- package/dist/carousel-portfolio-hero.js +79 -25
- package/dist/components.cjs +81 -42
- package/dist/components.d.cts +29 -2
- package/dist/components.d.ts +29 -2
- package/dist/components.js +81 -43
- package/dist/contact-map.cjs +46 -32
- package/dist/contact-map.js +46 -32
- package/dist/footer-accordion-social.cjs +17 -10
- package/dist/footer-accordion-social.js +17 -10
- package/dist/footer-animated-social.cjs +17 -10
- package/dist/footer-animated-social.js +17 -10
- package/dist/footer-brand-description.cjs +17 -10
- package/dist/footer-brand-description.js +17 -10
- package/dist/footer-brand-links-contact.cjs +17 -10
- package/dist/footer-brand-links-contact.js +17 -10
- package/dist/footer-comprehensive-links.cjs +17 -10
- package/dist/footer-comprehensive-links.js +17 -10
- package/dist/footer-contact-card.cjs +17 -10
- package/dist/footer-contact-card.js +17 -10
- package/dist/footer-cta-banner.cjs +17 -10
- package/dist/footer-cta-banner.js +17 -10
- package/dist/footer-cta-social.cjs +17 -10
- package/dist/footer-cta-social.js +17 -10
- package/dist/footer-info-cards-accordion.cjs +17 -10
- package/dist/footer-info-cards-accordion.js +17 -10
- package/dist/footer-nav-social.cjs +17 -10
- package/dist/footer-nav-social.js +17 -10
- package/dist/footer-newsletter-contact.cjs +17 -10
- package/dist/footer-newsletter-contact.js +17 -10
- package/dist/footer-newsletter-grid.cjs +17 -10
- package/dist/footer-newsletter-grid.js +17 -10
- package/dist/footer-newsletter-minimal.cjs +17 -10
- package/dist/footer-newsletter-minimal.js +17 -10
- package/dist/footer-social-apps.cjs +17 -10
- package/dist/footer-social-apps.js +17 -10
- package/dist/footer-social-newsletter.cjs +17 -10
- package/dist/footer-social-newsletter.js +17 -10
- package/dist/footer-split-image-accordion.cjs +17 -10
- package/dist/footer-split-image-accordion.js +17 -10
- package/dist/geo-map.cjs +46 -32
- package/dist/geo-map.js +46 -32
- package/dist/hero-coming-soon-countdown.cjs +17 -10
- package/dist/hero-coming-soon-countdown.js +17 -10
- package/dist/hero-video-background-dark.cjs +78 -16
- package/dist/hero-video-background-dark.d.cts +7 -2
- package/dist/hero-video-background-dark.d.ts +7 -2
- package/dist/hero-video-background-dark.js +78 -16
- package/dist/index.cjs +81 -42
- package/dist/index.d.cts +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +81 -43
- package/dist/link-page-bento-layout.cjs +17 -10
- package/dist/link-page-bento-layout.js +17 -10
- package/dist/link-page-grid-cards.cjs +17 -10
- package/dist/link-page-grid-cards.js +17 -10
- package/dist/link-page-minimal-profile.cjs +17 -10
- package/dist/link-page-minimal-profile.js +17 -10
- package/dist/link-page-newsletter-social.cjs +17 -10
- package/dist/link-page-newsletter-social.js +17 -10
- package/dist/link-tree-block.cjs +17 -10
- package/dist/link-tree-block.js +17 -10
- package/dist/navbar-fullscreen-menu.cjs +17 -10
- package/dist/navbar-fullscreen-menu.js +17 -10
- package/dist/navbar-transparent-overlay.cjs +17 -10
- package/dist/navbar-transparent-overlay.js +17 -10
- package/dist/registry.cjs +967 -620
- package/dist/registry.js +967 -620
- package/dist/social-link-icon.cjs +17 -10
- package/dist/social-link-icon.d.cts +5 -0
- package/dist/social-link-icon.d.ts +5 -0
- package/dist/social-link-icon.js +17 -10
- package/dist/testimonials-bento-grid.cjs +1 -1
- package/dist/testimonials-bento-grid.js +1 -1
- package/dist/testimonials-carousel-image.cjs +16 -2
- package/dist/testimonials-carousel-image.d.cts +5 -1
- package/dist/testimonials-carousel-image.d.ts +5 -1
- package/dist/testimonials-carousel-image.js +16 -2
- package/dist/testimonials-centered-avatars.cjs +1 -1
- package/dist/testimonials-centered-avatars.js +1 -1
- package/dist/testimonials-grid-add-review.cjs +51 -29
- package/dist/testimonials-grid-add-review.js +51 -29
- package/dist/testimonials-images-helpful.cjs +181 -160
- package/dist/testimonials-images-helpful.d.cts +9 -1
- package/dist/testimonials-images-helpful.d.ts +9 -1
- package/dist/testimonials-images-helpful.js +181 -159
- package/dist/testimonials-large-quote.cjs +74 -43
- package/dist/testimonials-large-quote.d.cts +5 -1
- package/dist/testimonials-large-quote.d.ts +5 -1
- package/dist/testimonials-large-quote.js +74 -43
- package/dist/testimonials-list-verified.cjs +63 -44
- package/dist/testimonials-list-verified.d.cts +5 -1
- package/dist/testimonials-list-verified.d.ts +5 -1
- package/dist/testimonials-list-verified.js +64 -45
- package/dist/testimonials-logo-cards.cjs +55 -25
- package/dist/testimonials-logo-cards.d.cts +5 -1
- package/dist/testimonials-logo-cards.d.ts +5 -1
- package/dist/testimonials-logo-cards.js +55 -25
- package/dist/testimonials-marquee.cjs +440 -28
- package/dist/testimonials-marquee.js +441 -26
- package/dist/testimonials-masonry-grid.cjs +486 -69
- package/dist/testimonials-masonry-grid.d.cts +5 -1
- package/dist/testimonials-masonry-grid.d.ts +5 -1
- package/dist/testimonials-masonry-grid.js +483 -63
- package/dist/testimonials-mini-dividers.cjs +119 -83
- package/dist/testimonials-mini-dividers.d.cts +10 -6
- package/dist/testimonials-mini-dividers.d.ts +10 -6
- package/dist/testimonials-mini-dividers.js +119 -83
- package/dist/testimonials-minimal-numbered.cjs +9 -7
- package/dist/testimonials-minimal-numbered.d.cts +5 -1
- package/dist/testimonials-minimal-numbered.d.ts +5 -1
- package/dist/testimonials-minimal-numbered.js +9 -7
- package/dist/testimonials-parallax-number.cjs +14 -9
- package/dist/testimonials-parallax-number.js +14 -9
- package/dist/testimonials-scrolling-columns.cjs +100 -21
- package/dist/testimonials-scrolling-columns.js +100 -21
- package/dist/testimonials-simple-grid.cjs +22 -5
- package/dist/testimonials-simple-grid.js +22 -5
- package/dist/testimonials-slider-minimal.cjs +1 -1
- package/dist/testimonials-slider-minimal.js +1 -1
- package/dist/testimonials-stats-header.cjs +528 -87
- package/dist/testimonials-stats-header.d.cts +39 -3
- package/dist/testimonials-stats-header.d.ts +39 -3
- package/dist/testimonials-stats-header.js +523 -82
- package/dist/testimonials-twitter-cards.cjs +20 -12
- package/dist/testimonials-twitter-cards.js +20 -12
- package/package.json +11 -1
package/dist/registry.js
CHANGED
|
@@ -40,16 +40,6 @@ import { TextInput as TextInput$1 } from '@page-speed/forms/inputs';
|
|
|
40
40
|
function cn(...inputs) {
|
|
41
41
|
return twMerge(clsx(inputs));
|
|
42
42
|
}
|
|
43
|
-
var BRIGHTNESS_CLASS_MAP = {
|
|
44
|
-
"10": "brightness-[.1]",
|
|
45
|
-
"20": "brightness-[.2]",
|
|
46
|
-
"25": "brightness-[.25]",
|
|
47
|
-
"30": "brightness-[.3]",
|
|
48
|
-
"40": "brightness-[.4]",
|
|
49
|
-
"50": "brightness-50",
|
|
50
|
-
"75": "brightness-75",
|
|
51
|
-
"100": "brightness-100"
|
|
52
|
-
};
|
|
53
43
|
function getNestedCardBg(parentBg, variant = "muted", options) {
|
|
54
44
|
const isDark = parentBg === "dark" || parentBg === "secondary" || parentBg === "primary";
|
|
55
45
|
if (isDark) {
|
|
@@ -1184,41 +1174,55 @@ function MarkerMediaCarousel({
|
|
|
1184
1174
|
React8.useEffect(() => {
|
|
1185
1175
|
setActiveIndex(0);
|
|
1186
1176
|
}, [mediaResetKey]);
|
|
1187
|
-
const activeMediaItem = mediaItems[activeItemIndex];
|
|
1188
|
-
const mediaType = resolveMediaType(activeMediaItem);
|
|
1189
1177
|
return /* @__PURE__ */ jsxs("div", { className: "relative border-b border-border/60 bg-muted/40", children: [
|
|
1190
|
-
/* @__PURE__ */ jsx("div", { className: "relative
|
|
1191
|
-
|
|
1192
|
-
|
|
1193
|
-
|
|
1194
|
-
|
|
1195
|
-
|
|
1196
|
-
|
|
1197
|
-
|
|
1198
|
-
|
|
1199
|
-
|
|
1200
|
-
|
|
1201
|
-
|
|
1202
|
-
|
|
1203
|
-
|
|
1204
|
-
|
|
1205
|
-
|
|
1206
|
-
|
|
1207
|
-
|
|
1208
|
-
|
|
1178
|
+
/* @__PURE__ */ jsx("div", { className: "relative aspect-video w-full overflow-hidden", children: mediaItems.map((item, index) => {
|
|
1179
|
+
const isActive = index === activeItemIndex;
|
|
1180
|
+
const mediaType = resolveMediaType(item);
|
|
1181
|
+
return /* @__PURE__ */ jsx(
|
|
1182
|
+
"div",
|
|
1183
|
+
{
|
|
1184
|
+
"aria-hidden": !isActive,
|
|
1185
|
+
className: cn(
|
|
1186
|
+
"absolute inset-0 transition-opacity duration-500 ease-in-out",
|
|
1187
|
+
isActive ? "opacity-100 z-[1]" : "opacity-0 z-0 pointer-events-none"
|
|
1188
|
+
),
|
|
1189
|
+
children: mediaType === "video" ? /* @__PURE__ */ jsx(
|
|
1190
|
+
"video",
|
|
1191
|
+
{
|
|
1192
|
+
className: "h-full w-full object-cover",
|
|
1193
|
+
controls: isActive,
|
|
1194
|
+
preload: "metadata",
|
|
1195
|
+
poster: item.poster,
|
|
1196
|
+
tabIndex: isActive ? 0 : -1,
|
|
1197
|
+
children: /* @__PURE__ */ jsx("source", { src: item.src })
|
|
1198
|
+
}
|
|
1199
|
+
) : /* @__PURE__ */ jsx(
|
|
1200
|
+
Img,
|
|
1201
|
+
{
|
|
1202
|
+
src: item.src,
|
|
1203
|
+
alt: item.alt ?? "Map marker media",
|
|
1204
|
+
className: "h-full w-full object-cover",
|
|
1205
|
+
loading: "eager",
|
|
1206
|
+
optixFlowConfig
|
|
1207
|
+
}
|
|
1208
|
+
)
|
|
1209
|
+
},
|
|
1210
|
+
normalizeId(item.id, `media-slide-${index}`)
|
|
1211
|
+
);
|
|
1212
|
+
}) }),
|
|
1209
1213
|
totalItems > 1 ? /* @__PURE__ */ jsxs(Fragment$1, { children: [
|
|
1210
1214
|
/* @__PURE__ */ jsx(
|
|
1211
1215
|
"button",
|
|
1212
1216
|
{
|
|
1213
1217
|
type: "button",
|
|
1214
1218
|
"aria-label": "Show previous media",
|
|
1215
|
-
className: "absolute left-
|
|
1219
|
+
className: "absolute left-4 top-1/2 inline-flex size-10 -translate-y-1/2 items-center justify-center rounded-2xl bg-card text-card-foreground shadow-lg border-4 border-black hover:border-white hover:bg-black hover:text-white transition-all duration-500 z-[2]",
|
|
1216
1220
|
onClick: () => {
|
|
1217
1221
|
setActiveIndex(
|
|
1218
1222
|
(current) => (current - 1 + totalItems) % totalItems
|
|
1219
1223
|
);
|
|
1220
1224
|
},
|
|
1221
|
-
children: /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/arrow-left", size:
|
|
1225
|
+
children: /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/arrow-left", size: 18 })
|
|
1222
1226
|
}
|
|
1223
1227
|
),
|
|
1224
1228
|
/* @__PURE__ */ jsx(
|
|
@@ -1226,20 +1230,20 @@ function MarkerMediaCarousel({
|
|
|
1226
1230
|
{
|
|
1227
1231
|
type: "button",
|
|
1228
1232
|
"aria-label": "Show next media",
|
|
1229
|
-
className: "absolute right-
|
|
1233
|
+
className: "absolute right-4 top-1/2 inline-flex size-10 -translate-y-1/2 items-center justify-center rounded-2xl bg-card text-card-foreground shadow-lg border-4 border-black hover:border-white hover:bg-black hover:text-white transition-all duration-500 z-[2]",
|
|
1230
1234
|
onClick: () => {
|
|
1231
1235
|
setActiveIndex((current) => (current + 1) % totalItems);
|
|
1232
1236
|
},
|
|
1233
|
-
children: /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/arrow-right", size:
|
|
1237
|
+
children: /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/arrow-right", size: 18 })
|
|
1234
1238
|
}
|
|
1235
1239
|
),
|
|
1236
|
-
/* @__PURE__ */ jsx("div", { className: "absolute bottom-2 left-1/2 flex -translate-x-1/2 items-center gap-1.5", children: mediaItems.map((item, index) => /* @__PURE__ */ jsx(
|
|
1240
|
+
/* @__PURE__ */ jsx("div", { className: "absolute bottom-2 left-1/2 flex -translate-x-1/2 items-center gap-1.5 z-[2]", children: mediaItems.map((item, index) => /* @__PURE__ */ jsx(
|
|
1237
1241
|
"button",
|
|
1238
1242
|
{
|
|
1239
1243
|
type: "button",
|
|
1240
1244
|
"aria-label": `Show media item ${index + 1}`,
|
|
1241
1245
|
className: cn(
|
|
1242
|
-
"h-2 rounded-full transition-all",
|
|
1246
|
+
"h-2 rounded-full transition-all duration-300",
|
|
1243
1247
|
index === activeItemIndex ? "w-6 bg-card" : "w-2 bg-card opacity-50 hover:opacity-100"
|
|
1244
1248
|
),
|
|
1245
1249
|
onClick: () => setActiveIndex(index)
|
|
@@ -1570,9 +1574,9 @@ function GeoMap({
|
|
|
1570
1574
|
{
|
|
1571
1575
|
type: "button",
|
|
1572
1576
|
"aria-label": "Close marker details",
|
|
1573
|
-
className: "flex size-
|
|
1577
|
+
className: "\n flex size-12 items-center justify-center rounded-bl-lg rounded-br-0 rounded-t-0 bg-black text-white transition-all duration-500 absolute top-0 right-0 z-10 cursor-pointer ring-4 ring-white\n",
|
|
1574
1578
|
onClick: clearSelection,
|
|
1575
|
-
children: /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/x", size:
|
|
1579
|
+
children: /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/x", size: 20 })
|
|
1576
1580
|
}
|
|
1577
1581
|
),
|
|
1578
1582
|
markerMediaItems.length > 0 ? /* @__PURE__ */ jsx(
|
|
@@ -1594,7 +1598,7 @@ function GeoMap({
|
|
|
1594
1598
|
{
|
|
1595
1599
|
name: "lucide:map-pin",
|
|
1596
1600
|
className: "opacity-50",
|
|
1597
|
-
size:
|
|
1601
|
+
size: 18
|
|
1598
1602
|
}
|
|
1599
1603
|
),
|
|
1600
1604
|
typeof selectedMarker.locationLine === "string" ? /* @__PURE__ */ jsx(
|
|
@@ -1616,7 +1620,7 @@ function GeoMap({
|
|
|
1616
1620
|
{
|
|
1617
1621
|
name: "lucide:clock",
|
|
1618
1622
|
className: "opacity-50",
|
|
1619
|
-
size:
|
|
1623
|
+
size: 18
|
|
1620
1624
|
}
|
|
1621
1625
|
),
|
|
1622
1626
|
typeof selectedMarker.hoursLine === "string" ? /* @__PURE__ */ jsx("div", { className: "font-medium", children: selectedMarker.hoursLine }) : selectedMarker.hoursLine
|
|
@@ -1644,7 +1648,7 @@ function GeoMap({
|
|
|
1644
1648
|
"aria-label": "Close cluster details",
|
|
1645
1649
|
className: "flex size-8 items-center justify-center rounded-full border border-border bg-card text-card-foreground transition hover:bg-muted hover:text-foreground absolute top-2 right-2 z-10",
|
|
1646
1650
|
onClick: clearSelection,
|
|
1647
|
-
children: /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/x", size:
|
|
1651
|
+
children: /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/x", size: 20 })
|
|
1648
1652
|
}
|
|
1649
1653
|
),
|
|
1650
1654
|
/* @__PURE__ */ jsx("div", { className: "mb-3 flex items-start justify-between gap-3", children: /* @__PURE__ */ jsxs("div", { className: "min-w-0", children: [
|
|
@@ -2030,6 +2034,23 @@ function PopoverContent({
|
|
|
2030
2034
|
}
|
|
2031
2035
|
) });
|
|
2032
2036
|
}
|
|
2037
|
+
function StarRating({
|
|
2038
|
+
rating,
|
|
2039
|
+
size = 18,
|
|
2040
|
+
className
|
|
2041
|
+
}) {
|
|
2042
|
+
return /* @__PURE__ */ jsx("div", { className: cn("flex items-center gap-0.5", className), children: [1, 2, 3, 4, 5].map((star) => /* @__PURE__ */ jsx(
|
|
2043
|
+
DynamicIcon,
|
|
2044
|
+
{
|
|
2045
|
+
name: "icon-park-solid/star",
|
|
2046
|
+
size,
|
|
2047
|
+
className: cn(
|
|
2048
|
+
star <= rating ? "fill-primary text-primary" : "fill-muted text-muted"
|
|
2049
|
+
)
|
|
2050
|
+
},
|
|
2051
|
+
star
|
|
2052
|
+
)) });
|
|
2053
|
+
}
|
|
2033
2054
|
var BUTTON_SIZES = {
|
|
2034
2055
|
sm: { buttonSize: "size-8", iconSize: 16 },
|
|
2035
2056
|
md: { buttonSize: "size-10", iconSize: 20 },
|
|
@@ -2131,6 +2152,7 @@ var SocialLinkIcon = React8.forwardRef(
|
|
|
2131
2152
|
iconClassName,
|
|
2132
2153
|
className,
|
|
2133
2154
|
iconNameOverride,
|
|
2155
|
+
iconOnly = false,
|
|
2134
2156
|
...pressableProps
|
|
2135
2157
|
}, ref) => {
|
|
2136
2158
|
const platform = usePlatformFromUrl(href);
|
|
@@ -2143,6 +2165,21 @@ var SocialLinkIcon = React8.forwardRef(
|
|
|
2143
2165
|
const accessibleLabel = React8.useMemo(() => {
|
|
2144
2166
|
return label || platformName;
|
|
2145
2167
|
}, [label, platformName]);
|
|
2168
|
+
const icon = React8.useMemo(() => {
|
|
2169
|
+
return /* @__PURE__ */ jsx(
|
|
2170
|
+
DynamicIcon,
|
|
2171
|
+
{
|
|
2172
|
+
name: iconName,
|
|
2173
|
+
size: iconSize,
|
|
2174
|
+
color: iconColor,
|
|
2175
|
+
className: iconClassName,
|
|
2176
|
+
alt: accessibleLabel
|
|
2177
|
+
}
|
|
2178
|
+
);
|
|
2179
|
+
}, [iconName, iconSize, iconColor, iconClassName, accessibleLabel]);
|
|
2180
|
+
if (iconOnly) {
|
|
2181
|
+
return icon;
|
|
2182
|
+
}
|
|
2146
2183
|
return /* @__PURE__ */ jsx(
|
|
2147
2184
|
Pressable,
|
|
2148
2185
|
{
|
|
@@ -2154,16 +2191,7 @@ var SocialLinkIcon = React8.forwardRef(
|
|
|
2154
2191
|
className
|
|
2155
2192
|
),
|
|
2156
2193
|
...pressableProps,
|
|
2157
|
-
children:
|
|
2158
|
-
DynamicIcon,
|
|
2159
|
-
{
|
|
2160
|
-
name: iconName,
|
|
2161
|
-
size: iconSize,
|
|
2162
|
-
color: iconColor,
|
|
2163
|
-
className: iconClassName,
|
|
2164
|
-
alt: accessibleLabel
|
|
2165
|
-
}
|
|
2166
|
-
)
|
|
2194
|
+
children: icon
|
|
2167
2195
|
}
|
|
2168
2196
|
);
|
|
2169
2197
|
}
|
|
@@ -19721,6 +19749,67 @@ function ContactHelpCenter({
|
|
|
19721
19749
|
}
|
|
19722
19750
|
);
|
|
19723
19751
|
}
|
|
19752
|
+
var DIRECTION_STYLES = {
|
|
19753
|
+
"bottom-to-top": "bg-linear-to-t",
|
|
19754
|
+
"top-to-bottom": "bg-linear-to-b",
|
|
19755
|
+
"left-to-right": "bg-linear-to-r",
|
|
19756
|
+
"right-to-left": "bg-linear-to-l",
|
|
19757
|
+
"bottom-left-to-top-right": "bg-linear-to-tr",
|
|
19758
|
+
"bottom-right-to-top-left": "bg-linear-to-tl",
|
|
19759
|
+
"top-left-to-bottom-right": "bg-linear-to-br",
|
|
19760
|
+
"top-right-to-bottom-left": "bg-linear-to-bl"
|
|
19761
|
+
};
|
|
19762
|
+
var INTENSITY_STOPS = {
|
|
19763
|
+
low: "from-black/40 via-black/20 to-transparent",
|
|
19764
|
+
default: "from-black/70 via-black/35 to-transparent",
|
|
19765
|
+
high: "from-black/85 via-black/50 to-transparent",
|
|
19766
|
+
"very-high": "from-black/95 via-black/60 to-black/20"
|
|
19767
|
+
};
|
|
19768
|
+
var RADIAL_INTENSITY = {
|
|
19769
|
+
low: {
|
|
19770
|
+
background: "radial-gradient(ellipse at center, rgba(0,0,0,0.40) 0%, rgba(0,0,0,0.20) 50%, transparent 100%)"
|
|
19771
|
+
},
|
|
19772
|
+
default: {
|
|
19773
|
+
background: "radial-gradient(ellipse at center, rgba(0,0,0,0.70) 0%, rgba(0,0,0,0.35) 50%, transparent 100%)"
|
|
19774
|
+
},
|
|
19775
|
+
high: {
|
|
19776
|
+
background: "radial-gradient(ellipse at center, rgba(0,0,0,0.85) 0%, rgba(0,0,0,0.50) 50%, transparent 100%)"
|
|
19777
|
+
},
|
|
19778
|
+
"very-high": {
|
|
19779
|
+
background: "radial-gradient(ellipse at center, rgba(0,0,0,0.95) 0%, rgba(0,0,0,0.60) 50%, rgba(0,0,0,0.20) 100%)"
|
|
19780
|
+
}
|
|
19781
|
+
};
|
|
19782
|
+
function GradientOverlay({
|
|
19783
|
+
direction = "bottom-to-top",
|
|
19784
|
+
intensity = "default",
|
|
19785
|
+
className,
|
|
19786
|
+
style,
|
|
19787
|
+
...props
|
|
19788
|
+
}) {
|
|
19789
|
+
if (direction === "radial-center") {
|
|
19790
|
+
return /* @__PURE__ */ jsx(
|
|
19791
|
+
"div",
|
|
19792
|
+
{
|
|
19793
|
+
className: cn("absolute inset-0", className),
|
|
19794
|
+
style: { ...RADIAL_INTENSITY[intensity], ...style },
|
|
19795
|
+
...props
|
|
19796
|
+
}
|
|
19797
|
+
);
|
|
19798
|
+
}
|
|
19799
|
+
return /* @__PURE__ */ jsx(
|
|
19800
|
+
"div",
|
|
19801
|
+
{
|
|
19802
|
+
className: cn(
|
|
19803
|
+
"absolute inset-0",
|
|
19804
|
+
DIRECTION_STYLES[direction],
|
|
19805
|
+
INTENSITY_STOPS[intensity],
|
|
19806
|
+
className
|
|
19807
|
+
),
|
|
19808
|
+
style,
|
|
19809
|
+
...props
|
|
19810
|
+
}
|
|
19811
|
+
);
|
|
19812
|
+
}
|
|
19724
19813
|
function CarouselAnimatedSections({
|
|
19725
19814
|
sections,
|
|
19726
19815
|
sectionsSlot,
|
|
@@ -19736,7 +19825,8 @@ function CarouselAnimatedSections({
|
|
|
19736
19825
|
navigationClassName,
|
|
19737
19826
|
arrowsClassName,
|
|
19738
19827
|
counterClassName,
|
|
19739
|
-
slideMediaBrightness
|
|
19828
|
+
slideMediaBrightness,
|
|
19829
|
+
slideMediaOverlayIntensity = "high",
|
|
19740
19830
|
optixFlowConfig,
|
|
19741
19831
|
background = "dark",
|
|
19742
19832
|
spacing = "py-0",
|
|
@@ -19825,7 +19915,7 @@ function CarouselAnimatedSections({
|
|
|
19825
19915
|
containerMaxWidth,
|
|
19826
19916
|
containerClassName,
|
|
19827
19917
|
children: [
|
|
19828
|
-
sectionsSlot ? sectionsSlot : currentSection ? /* @__PURE__ */ jsx(AnimatePresence, { initial: false, custom: direction, mode: "wait", children: /* @__PURE__ */
|
|
19918
|
+
sectionsSlot ? sectionsSlot : currentSection ? /* @__PURE__ */ jsx(AnimatePresence, { initial: false, custom: direction, mode: "wait", children: /* @__PURE__ */ jsxs(
|
|
19829
19919
|
motion.div,
|
|
19830
19920
|
{
|
|
19831
19921
|
custom: direction,
|
|
@@ -19836,19 +19926,21 @@ function CarouselAnimatedSections({
|
|
|
19836
19926
|
transition: { duration: 0.6, ease: [0.4, 0, 0.2, 1] },
|
|
19837
19927
|
onAnimationComplete: () => setIsAnimating(false),
|
|
19838
19928
|
className: cn("absolute inset-0", currentSection?.className),
|
|
19839
|
-
children:
|
|
19840
|
-
|
|
19841
|
-
|
|
19842
|
-
|
|
19843
|
-
|
|
19844
|
-
|
|
19845
|
-
|
|
19846
|
-
|
|
19847
|
-
|
|
19848
|
-
|
|
19849
|
-
|
|
19850
|
-
|
|
19851
|
-
|
|
19929
|
+
children: [
|
|
19930
|
+
/* @__PURE__ */ jsx(
|
|
19931
|
+
Img,
|
|
19932
|
+
{
|
|
19933
|
+
src: currentSection?.image,
|
|
19934
|
+
alt: typeof currentSection?.title === "string" ? currentSection?.title : `Section ${currentSection?.id}`,
|
|
19935
|
+
className: cn(
|
|
19936
|
+
"h-full w-full object-cover",
|
|
19937
|
+
currentSection?.imageClassName
|
|
19938
|
+
),
|
|
19939
|
+
optixFlowConfig
|
|
19940
|
+
}
|
|
19941
|
+
),
|
|
19942
|
+
/* @__PURE__ */ jsx(GradientOverlay, { intensity: slideMediaOverlayIntensity })
|
|
19943
|
+
]
|
|
19852
19944
|
},
|
|
19853
19945
|
currentIndex
|
|
19854
19946
|
) }) : null,
|
|
@@ -20813,7 +20905,8 @@ function CarouselGalleryThumbnails({
|
|
|
20813
20905
|
spacing = "sm",
|
|
20814
20906
|
pattern,
|
|
20815
20907
|
patternOpacity,
|
|
20816
|
-
slideMediaBrightness
|
|
20908
|
+
slideMediaBrightness,
|
|
20909
|
+
slideMediaOverlayIntensity = "default"
|
|
20817
20910
|
}) {
|
|
20818
20911
|
const [currentIndex, setCurrentIndex] = React8.useState(0);
|
|
20819
20912
|
const prevSlide = React8.useCallback(() => {
|
|
@@ -20862,7 +20955,7 @@ function CarouselGalleryThumbnails({
|
|
|
20862
20955
|
"relative aspect-video w-full overflow-hidden",
|
|
20863
20956
|
slideClassName
|
|
20864
20957
|
),
|
|
20865
|
-
children: imagesSlot ? imagesSlot : images?.map((image, index) => /* @__PURE__ */
|
|
20958
|
+
children: imagesSlot ? imagesSlot : images?.map((image, index) => /* @__PURE__ */ jsxs(
|
|
20866
20959
|
"div",
|
|
20867
20960
|
{
|
|
20868
20961
|
className: cn(
|
|
@@ -20870,19 +20963,21 @@ function CarouselGalleryThumbnails({
|
|
|
20870
20963
|
index === currentIndex ? "translate-x-0 opacity-100" : index < currentIndex ? "-translate-x-full opacity-0" : "translate-x-full opacity-0",
|
|
20871
20964
|
image.className
|
|
20872
20965
|
),
|
|
20873
|
-
children:
|
|
20874
|
-
|
|
20875
|
-
|
|
20876
|
-
|
|
20877
|
-
|
|
20878
|
-
|
|
20879
|
-
|
|
20880
|
-
|
|
20881
|
-
|
|
20882
|
-
|
|
20883
|
-
|
|
20884
|
-
|
|
20885
|
-
|
|
20966
|
+
children: [
|
|
20967
|
+
/* @__PURE__ */ jsx(
|
|
20968
|
+
Img,
|
|
20969
|
+
{
|
|
20970
|
+
src: image.src,
|
|
20971
|
+
alt: typeof image.alt === "string" ? image.alt : `Image ${index + 1}`,
|
|
20972
|
+
className: cn(
|
|
20973
|
+
"h-full w-full object-cover",
|
|
20974
|
+
image.imageClassName
|
|
20975
|
+
),
|
|
20976
|
+
optixFlowConfig
|
|
20977
|
+
}
|
|
20978
|
+
),
|
|
20979
|
+
/* @__PURE__ */ jsx(GradientOverlay, { intensity: slideMediaOverlayIntensity })
|
|
20980
|
+
]
|
|
20886
20981
|
},
|
|
20887
20982
|
`slide-${index}`
|
|
20888
20983
|
))
|
|
@@ -21699,7 +21794,8 @@ function CarouselPortfolioHero({
|
|
|
21699
21794
|
spacing = "none",
|
|
21700
21795
|
pattern,
|
|
21701
21796
|
patternOpacity,
|
|
21702
|
-
slideMediaBrightness
|
|
21797
|
+
slideMediaBrightness,
|
|
21798
|
+
slideMediaOverlayIntensity = "high"
|
|
21703
21799
|
}) {
|
|
21704
21800
|
const [currentIndex, setCurrentIndex] = React8.useState(0);
|
|
21705
21801
|
const intervalRef = React8.useRef(null);
|
|
@@ -21740,7 +21836,7 @@ function CarouselPortfolioHero({
|
|
|
21740
21836
|
patternOpacity,
|
|
21741
21837
|
containerClassName,
|
|
21742
21838
|
children: [
|
|
21743
|
-
slidesSlot ? slidesSlot : slides?.map((slide, index) => /* @__PURE__ */
|
|
21839
|
+
slidesSlot ? slidesSlot : slides?.map((slide, index) => /* @__PURE__ */ jsxs(
|
|
21744
21840
|
"div",
|
|
21745
21841
|
{
|
|
21746
21842
|
className: cn(
|
|
@@ -21748,19 +21844,21 @@ function CarouselPortfolioHero({
|
|
|
21748
21844
|
index === currentIndex ? "opacity-100" : "opacity-0",
|
|
21749
21845
|
slide.className
|
|
21750
21846
|
),
|
|
21751
|
-
children:
|
|
21752
|
-
|
|
21753
|
-
|
|
21754
|
-
|
|
21755
|
-
|
|
21756
|
-
|
|
21757
|
-
|
|
21758
|
-
|
|
21759
|
-
|
|
21760
|
-
|
|
21761
|
-
|
|
21762
|
-
|
|
21763
|
-
|
|
21847
|
+
children: [
|
|
21848
|
+
/* @__PURE__ */ jsx(
|
|
21849
|
+
Img,
|
|
21850
|
+
{
|
|
21851
|
+
src: slide.image,
|
|
21852
|
+
alt: typeof slide.title === "string" ? slide.title : `Slide ${index + 1}`,
|
|
21853
|
+
className: cn(
|
|
21854
|
+
"h-full w-full object-cover",
|
|
21855
|
+
slide.imageClassName
|
|
21856
|
+
),
|
|
21857
|
+
optixFlowConfig
|
|
21858
|
+
}
|
|
21859
|
+
),
|
|
21860
|
+
/* @__PURE__ */ jsx(GradientOverlay, { intensity: slideMediaOverlayIntensity })
|
|
21861
|
+
]
|
|
21764
21862
|
},
|
|
21765
21863
|
slide.id
|
|
21766
21864
|
)),
|
|
@@ -33537,7 +33635,8 @@ function CarouselIconSidebar({
|
|
|
33537
33635
|
src: image.src,
|
|
33538
33636
|
alt: typeof image.title === "string" ? image.title : image.alt || "Carousel image",
|
|
33539
33637
|
className: cn(
|
|
33540
|
-
"
|
|
33638
|
+
"aspect-4/3",
|
|
33639
|
+
"h-full w-full object-cover cursor-pointer aspect-4/3",
|
|
33541
33640
|
imageClassName
|
|
33542
33641
|
),
|
|
33543
33642
|
loading: "lazy",
|
|
@@ -33597,13 +33696,13 @@ function CarouselIconSidebar({
|
|
|
33597
33696
|
/* @__PURE__ */ jsx(Carousel, { setApi, className: cn("w-full", carouselClassName), children: /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-1 gap-4 md:gap-6 md:grid-cols-5", children: [
|
|
33598
33697
|
/* @__PURE__ */ jsx("div", { className: "md:col-span-2", children: sidebarContent }),
|
|
33599
33698
|
/* @__PURE__ */ jsx("div", { className: "h-full md:col-span-3", children: /* @__PURE__ */ jsx(
|
|
33600
|
-
|
|
33699
|
+
"div",
|
|
33601
33700
|
{
|
|
33602
33701
|
className: cn(
|
|
33603
|
-
"overflow-hidden rounded-2xl shadow-lg
|
|
33702
|
+
"overflow-hidden rounded-2xl shadow-lg",
|
|
33604
33703
|
carouselContentClassName
|
|
33605
33704
|
),
|
|
33606
|
-
children: itemsContent
|
|
33705
|
+
children: /* @__PURE__ */ jsx(CarouselContent, { children: itemsContent })
|
|
33607
33706
|
}
|
|
33608
33707
|
) })
|
|
33609
33708
|
] }) }),
|
|
@@ -43809,19 +43908,6 @@ function CaseStudiesTestimonialStats({
|
|
|
43809
43908
|
}
|
|
43810
43909
|
);
|
|
43811
43910
|
}
|
|
43812
|
-
function StarRating({ rating, size = 16 }) {
|
|
43813
|
-
return /* @__PURE__ */ jsx("div", { className: "flex items-center gap-0.5", children: [1, 2, 3, 4, 5].map((star) => /* @__PURE__ */ jsx(
|
|
43814
|
-
DynamicIcon,
|
|
43815
|
-
{
|
|
43816
|
-
name: "lucide/star",
|
|
43817
|
-
size,
|
|
43818
|
-
className: cn(
|
|
43819
|
-
star <= rating ? "fill-primary text-primary" : "fill-muted text-muted"
|
|
43820
|
-
)
|
|
43821
|
-
},
|
|
43822
|
-
star
|
|
43823
|
-
)) });
|
|
43824
|
-
}
|
|
43825
43911
|
function TestimonialsListVerified({
|
|
43826
43912
|
reviews,
|
|
43827
43913
|
reviewsSlot,
|
|
@@ -43834,7 +43920,8 @@ function TestimonialsListVerified({
|
|
|
43834
43920
|
contentClassName,
|
|
43835
43921
|
authorClassName,
|
|
43836
43922
|
background,
|
|
43837
|
-
spacing,
|
|
43923
|
+
spacing = "lg",
|
|
43924
|
+
containerClassName = "px-6 sm:px-6 md:px-8 lg:px-8",
|
|
43838
43925
|
pattern,
|
|
43839
43926
|
patternOpacity
|
|
43840
43927
|
}) {
|
|
@@ -43853,35 +43940,49 @@ function TestimonialsListVerified({
|
|
|
43853
43940
|
return /* @__PURE__ */ jsx("div", { className: "space-y-0", children: reviews.map((review, index) => {
|
|
43854
43941
|
const authorName = getAuthorName(review);
|
|
43855
43942
|
return /* @__PURE__ */ jsxs("div", { className: reviewClassName, children: [
|
|
43856
|
-
index > 0 && /* @__PURE__ */ jsx(Separator, { className: "my-
|
|
43857
|
-
/* @__PURE__ */ jsxs("div", { className: cn("space-y-
|
|
43858
|
-
/* @__PURE__ */ jsxs("div", { children: [
|
|
43859
|
-
/* @__PURE__ */ jsx(StarRating, { rating: review.rating, size:
|
|
43860
|
-
review.title && (typeof review.title === "string" ? /* @__PURE__ */ jsx("h3", { className: "
|
|
43943
|
+
index > 0 && /* @__PURE__ */ jsx(Separator, { className: "bg-border/50 shrink-0 data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-px my-12 md:my-16" }),
|
|
43944
|
+
/* @__PURE__ */ jsxs("div", { className: cn("space-y-6 md:space-y-12", contentClassName), children: [
|
|
43945
|
+
/* @__PURE__ */ jsxs("div", { className: "space-y-4", children: [
|
|
43946
|
+
/* @__PURE__ */ jsx(StarRating, { rating: review.rating, size: 22 }),
|
|
43947
|
+
review.title && (typeof review.title === "string" ? /* @__PURE__ */ jsx("h3", { className: "font-medium", children: review.title }) : review.title)
|
|
43861
43948
|
] }),
|
|
43862
|
-
review.content && (typeof review.content === "string" ? /* @__PURE__ */ jsx("p", { className: "text-
|
|
43863
|
-
/* @__PURE__ */ jsxs("div", { className: cn("flex items-center
|
|
43864
|
-
/* @__PURE__ */ jsxs(
|
|
43865
|
-
|
|
43866
|
-
|
|
43867
|
-
|
|
43868
|
-
|
|
43869
|
-
|
|
43870
|
-
|
|
43871
|
-
|
|
43872
|
-
|
|
43873
|
-
|
|
43874
|
-
|
|
43875
|
-
|
|
43876
|
-
|
|
43877
|
-
|
|
43878
|
-
|
|
43879
|
-
|
|
43949
|
+
review.content && (typeof review.content === "string" ? /* @__PURE__ */ jsx("p", { className: "text-base md:text-lg leading-relaxed font-light", children: review.content }) : review.content),
|
|
43950
|
+
/* @__PURE__ */ jsxs("div", { className: cn("flex items-center justify-between w-full"), children: [
|
|
43951
|
+
/* @__PURE__ */ jsxs(
|
|
43952
|
+
"div",
|
|
43953
|
+
{
|
|
43954
|
+
className: cn("flex items-center gap-5", authorClassName),
|
|
43955
|
+
children: [
|
|
43956
|
+
/* @__PURE__ */ jsxs(Avatar, { className: "size-12 ring-4 ring-primary shadow-lg", children: [
|
|
43957
|
+
/* @__PURE__ */ jsx(AvatarImage, { src: review.avatarSrc, alt: authorName }),
|
|
43958
|
+
/* @__PURE__ */ jsx(AvatarFallback, { className: "text-md", children: getInitials(authorName) })
|
|
43959
|
+
] }),
|
|
43960
|
+
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-1 text-base flex-col items-start", children: [
|
|
43961
|
+
review.author && (typeof review.author === "string" ? /* @__PURE__ */ jsx("span", { className: "font-medium", children: review.author }) : review.author),
|
|
43962
|
+
review.verified && /* @__PURE__ */ jsxs("span", { className: "flex items-center gap-1", children: [
|
|
43963
|
+
/* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/badge-check", size: 18 }),
|
|
43964
|
+
verifiedPurchaseLabel && (typeof verifiedPurchaseLabel === "string" ? /* @__PURE__ */ jsx("span", { className: "text-sm", children: verifiedPurchaseLabel }) : verifiedPurchaseLabel),
|
|
43965
|
+
!verifiedPurchaseLabel && /* @__PURE__ */ jsx("span", { className: "text-sm", children: "Verified Purchase" })
|
|
43966
|
+
] })
|
|
43967
|
+
] })
|
|
43968
|
+
]
|
|
43969
|
+
}
|
|
43970
|
+
),
|
|
43971
|
+
review.date && /* @__PURE__ */ jsx("span", { className: "relative", children: review.date })
|
|
43880
43972
|
] })
|
|
43881
43973
|
] })
|
|
43882
43974
|
] }, index);
|
|
43883
43975
|
}) });
|
|
43884
|
-
}, [
|
|
43976
|
+
}, [
|
|
43977
|
+
reviewsSlot,
|
|
43978
|
+
reviews,
|
|
43979
|
+
reviewClassName,
|
|
43980
|
+
contentClassName,
|
|
43981
|
+
authorClassName,
|
|
43982
|
+
verifiedPurchaseLabel,
|
|
43983
|
+
getAuthorName,
|
|
43984
|
+
getInitials
|
|
43985
|
+
]);
|
|
43885
43986
|
return /* @__PURE__ */ jsx(
|
|
43886
43987
|
Section,
|
|
43887
43988
|
{
|
|
@@ -43890,21 +43991,21 @@ function TestimonialsListVerified({
|
|
|
43890
43991
|
pattern,
|
|
43891
43992
|
patternOpacity,
|
|
43892
43993
|
className,
|
|
43893
|
-
children: /* @__PURE__ */ jsxs("div", { className: "mx-auto max-w-3xl", children: [
|
|
43894
|
-
/* @__PURE__ */ jsxs("div", { className: cn("mb-
|
|
43994
|
+
children: /* @__PURE__ */ jsxs("div", { className: "mx-auto max-w-full md:max-w-3xl", children: [
|
|
43995
|
+
/* @__PURE__ */ jsxs("div", { className: cn("mb-12 md:mb-24 space-y-6", headerClassName), children: [
|
|
43895
43996
|
heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
|
|
43896
43997
|
"h2",
|
|
43897
43998
|
{
|
|
43898
43999
|
className: cn(
|
|
43899
|
-
"text-2xl font-semibold tracking-tight md:text-3xl",
|
|
44000
|
+
"text-2xl font-semibold tracking-tight md:text-3xl lg:text-4xl",
|
|
43900
44001
|
headingClassName
|
|
43901
44002
|
),
|
|
43902
44003
|
children: heading
|
|
43903
44004
|
}
|
|
43904
|
-
) :
|
|
44005
|
+
) : heading),
|
|
43905
44006
|
totalReviews > 0 && /* @__PURE__ */ jsxs("div", { className: "mt-2 flex items-center gap-3", children: [
|
|
43906
|
-
/* @__PURE__ */ jsx(StarRating, { rating: Math.round(averageRating), size:
|
|
43907
|
-
/* @__PURE__ */ jsxs("span", { className: "text-sm
|
|
44007
|
+
/* @__PURE__ */ jsx(StarRating, { rating: Math.round(averageRating), size: 22 }),
|
|
44008
|
+
/* @__PURE__ */ jsxs("span", { className: "text-sm", children: [
|
|
43908
44009
|
averageRating.toFixed(1),
|
|
43909
44010
|
" out of 5 \xB7 ",
|
|
43910
44011
|
totalReviews,
|
|
@@ -43917,23 +44018,11 @@ function TestimonialsListVerified({
|
|
|
43917
44018
|
}
|
|
43918
44019
|
);
|
|
43919
44020
|
}
|
|
43920
|
-
function StarRating2({ rating, size = 16 }) {
|
|
43921
|
-
return /* @__PURE__ */ jsx("div", { className: "flex items-center gap-0.5", children: [1, 2, 3, 4, 5].map((star) => /* @__PURE__ */ jsx(
|
|
43922
|
-
DynamicIcon,
|
|
43923
|
-
{
|
|
43924
|
-
name: "lucide/star",
|
|
43925
|
-
size,
|
|
43926
|
-
className: cn(
|
|
43927
|
-
star <= rating ? "fill-primary text-primary" : "fill-muted text-muted"
|
|
43928
|
-
)
|
|
43929
|
-
},
|
|
43930
|
-
star
|
|
43931
|
-
)) });
|
|
43932
|
-
}
|
|
43933
44021
|
function TestimonialsImagesHelpful({
|
|
43934
44022
|
reviews,
|
|
43935
44023
|
reviewsSlot,
|
|
43936
44024
|
heading,
|
|
44025
|
+
verifiedPurchaseLabel,
|
|
43937
44026
|
writeReviewLabel,
|
|
43938
44027
|
reportButtonLabel,
|
|
43939
44028
|
className,
|
|
@@ -43945,12 +44034,16 @@ function TestimonialsImagesHelpful({
|
|
|
43945
44034
|
imagesClassName,
|
|
43946
44035
|
onWriteReview,
|
|
43947
44036
|
background,
|
|
43948
|
-
spacing = "
|
|
44037
|
+
spacing = "lg",
|
|
44038
|
+
containerClassName = "px-6 sm:px-6 md:px-8 lg:px-8",
|
|
43949
44039
|
pattern,
|
|
43950
44040
|
patternOpacity,
|
|
43951
44041
|
optixFlowConfig
|
|
43952
44042
|
}) {
|
|
43953
44043
|
const [helpfulClicked, setHelpfulClicked] = useState(/* @__PURE__ */ new Set());
|
|
44044
|
+
const [lightboxOpen, setLightboxOpen] = useState(false);
|
|
44045
|
+
const [lightboxItems, setLightboxItems] = useState([]);
|
|
44046
|
+
const [lightboxIndex, setLightboxIndex] = useState(0);
|
|
43954
44047
|
const totalReviews = reviews?.length ?? 0;
|
|
43955
44048
|
const averageRating = totalReviews > 0 ? (reviews?.reduce((sum, review) => sum + review.rating, 0) ?? 0) / totalReviews : 0;
|
|
43956
44049
|
const handleHelpful = useCallback((reviewIndex) => {
|
|
@@ -43964,6 +44057,25 @@ function TestimonialsImagesHelpful({
|
|
|
43964
44057
|
return newSet;
|
|
43965
44058
|
});
|
|
43966
44059
|
}, []);
|
|
44060
|
+
const handleImageClick = useCallback(
|
|
44061
|
+
(reviewImages, imageIndex) => {
|
|
44062
|
+
const items = reviewImages.map((src, i) => ({
|
|
44063
|
+
id: `review-image-${i}`,
|
|
44064
|
+
type: "image",
|
|
44065
|
+
src,
|
|
44066
|
+
alt: `Review image ${i + 1}`,
|
|
44067
|
+
download: true,
|
|
44068
|
+
share: true
|
|
44069
|
+
}));
|
|
44070
|
+
setLightboxItems(items);
|
|
44071
|
+
setLightboxIndex(imageIndex);
|
|
44072
|
+
setLightboxOpen(true);
|
|
44073
|
+
},
|
|
44074
|
+
[]
|
|
44075
|
+
);
|
|
44076
|
+
const handleLightboxClose = useCallback(() => {
|
|
44077
|
+
setLightboxOpen(false);
|
|
44078
|
+
}, []);
|
|
43967
44079
|
const getAuthorName = useCallback((review) => {
|
|
43968
44080
|
if (typeof review.author === "string") return review.author;
|
|
43969
44081
|
return "";
|
|
@@ -43977,54 +44089,28 @@ function TestimonialsImagesHelpful({
|
|
|
43977
44089
|
return /* @__PURE__ */ jsx("div", { className: "space-y-0", children: reviews.map((review, index) => {
|
|
43978
44090
|
const authorName = getAuthorName(review);
|
|
43979
44091
|
return /* @__PURE__ */ jsxs("div", { className: reviewClassName, children: [
|
|
43980
|
-
index > 0 && /* @__PURE__ */ jsx(Separator, { className: "my-
|
|
43981
|
-
/* @__PURE__ */
|
|
43982
|
-
/* @__PURE__ */ jsxs(
|
|
43983
|
-
|
|
43984
|
-
{
|
|
43985
|
-
className: cn(
|
|
43986
|
-
"flex items-start justify-between gap-4",
|
|
43987
|
-
authorClassName
|
|
43988
|
-
),
|
|
43989
|
-
children: [
|
|
43990
|
-
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-3", children: [
|
|
43991
|
-
/* @__PURE__ */ jsxs(Avatar, { className: "size-10", children: [
|
|
43992
|
-
/* @__PURE__ */ jsx(AvatarImage, { src: review.avatarSrc, alt: authorName }),
|
|
43993
|
-
/* @__PURE__ */ jsx(AvatarFallback, { children: getInitials(authorName) })
|
|
43994
|
-
] }),
|
|
43995
|
-
/* @__PURE__ */ jsxs("div", { children: [
|
|
43996
|
-
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2", children: [
|
|
43997
|
-
review.author && (typeof review.author === "string" ? /* @__PURE__ */ jsx("span", { className: "font-medium", children: review.author }) : review.author),
|
|
43998
|
-
review.verified && /* @__PURE__ */ jsx("span", { className: "flex items-center gap-1 text-emerald-600", children: /* @__PURE__ */ jsx(
|
|
43999
|
-
DynamicIcon,
|
|
44000
|
-
{
|
|
44001
|
-
name: "lucide/badge-check",
|
|
44002
|
-
size: 16
|
|
44003
|
-
}
|
|
44004
|
-
) })
|
|
44005
|
-
] }),
|
|
44006
|
-
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2 text-sm text-muted-foreground", children: [
|
|
44007
|
-
review.date && /* @__PURE__ */ jsx("span", { children: review.date }),
|
|
44008
|
-
review.variant && /* @__PURE__ */ jsxs(Fragment$1, { children: [
|
|
44009
|
-
/* @__PURE__ */ jsx("span", { children: "\xB7" }),
|
|
44010
|
-
/* @__PURE__ */ jsx("span", { children: review.variant })
|
|
44011
|
-
] })
|
|
44012
|
-
] })
|
|
44013
|
-
] })
|
|
44014
|
-
] }),
|
|
44015
|
-
/* @__PURE__ */ jsx(StarRating2, { rating: review.rating, size: 16 })
|
|
44016
|
-
]
|
|
44017
|
-
}
|
|
44018
|
-
),
|
|
44019
|
-
/* @__PURE__ */ jsxs("div", { children: [
|
|
44020
|
-
review.title && (typeof review.title === "string" ? /* @__PURE__ */ jsx("h3", { className: "font-medium", children: review.title }) : review.title),
|
|
44021
|
-
review.content && (typeof review.content === "string" ? /* @__PURE__ */ jsx("p", { className: "mt-2 text-sm leading-relaxed text-muted-foreground", children: review.content }) : /* @__PURE__ */ jsx("div", { className: "mt-2", children: review.content }))
|
|
44092
|
+
index > 0 && /* @__PURE__ */ jsx(Separator, { className: "bg-border/50 shrink-0 data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-px my-12 md:my-16" }),
|
|
44093
|
+
/* @__PURE__ */ jsxs("div", { className: cn("space-y-6 md:space-y-12", contentClassName), children: [
|
|
44094
|
+
/* @__PURE__ */ jsxs("div", { className: "space-y-4", children: [
|
|
44095
|
+
/* @__PURE__ */ jsx(StarRating, { rating: review.rating, size: 22 }),
|
|
44096
|
+
review.title && (typeof review.title === "string" ? /* @__PURE__ */ jsx("h3", { className: "font-medium", children: review.title }) : review.title)
|
|
44022
44097
|
] }),
|
|
44023
|
-
review.
|
|
44098
|
+
review.content && (typeof review.content === "string" ? /* @__PURE__ */ jsx("p", { className: "text-base md:text-lg leading-relaxed font-light", children: review.content }) : review.content),
|
|
44099
|
+
review.images && review.images.length > 0 && /* @__PURE__ */ jsx("div", { className: cn("flex gap-3", imagesClassName), children: review.images.map((image, imgIndex) => /* @__PURE__ */ jsx(
|
|
44024
44100
|
"div",
|
|
44025
44101
|
{
|
|
44026
|
-
className: "size-20 overflow-hidden rounded-lg sm:size-24",
|
|
44027
|
-
|
|
44102
|
+
className: "size-20 cursor-pointer overflow-hidden rounded-lg sm:size-24 transition-transform duration-300 hover:scale-[1.03] shadow-sm hover:shadow-lg",
|
|
44103
|
+
onClick: () => handleImageClick(review.images, imgIndex),
|
|
44104
|
+
role: "button",
|
|
44105
|
+
tabIndex: 0,
|
|
44106
|
+
onKeyDown: (e) => {
|
|
44107
|
+
if (e.key === "Enter" || e.key === " ") {
|
|
44108
|
+
e.preventDefault();
|
|
44109
|
+
handleImageClick(review.images, imgIndex);
|
|
44110
|
+
}
|
|
44111
|
+
},
|
|
44112
|
+
"aria-label": `View review image ${imgIndex + 1} in lightbox`,
|
|
44113
|
+
children: /* @__PURE__ */ jsx(
|
|
44028
44114
|
Img,
|
|
44029
44115
|
{
|
|
44030
44116
|
src: image,
|
|
@@ -44032,54 +44118,85 @@ function TestimonialsImagesHelpful({
|
|
|
44032
44118
|
className: "size-full object-cover",
|
|
44033
44119
|
optixFlowConfig
|
|
44034
44120
|
}
|
|
44035
|
-
)
|
|
44121
|
+
)
|
|
44036
44122
|
},
|
|
44037
44123
|
imgIndex
|
|
44038
44124
|
)) }),
|
|
44039
|
-
/* @__PURE__ */ jsxs("div", { className: "flex items-center
|
|
44125
|
+
/* @__PURE__ */ jsxs("div", { className: cn("flex items-center justify-between w-full"), children: [
|
|
44040
44126
|
/* @__PURE__ */ jsxs(
|
|
44041
|
-
|
|
44127
|
+
"div",
|
|
44042
44128
|
{
|
|
44043
|
-
|
|
44044
|
-
variant: "ghost",
|
|
44045
|
-
size: "sm",
|
|
44046
|
-
className: cn(
|
|
44047
|
-
"h-8 gap-1.5 text-muted-foreground",
|
|
44048
|
-
helpfulClicked.has(index) && "text-foreground"
|
|
44049
|
-
),
|
|
44050
|
-
onClick: () => handleHelpful(index),
|
|
44129
|
+
className: cn("flex items-center gap-5", authorClassName),
|
|
44051
44130
|
children: [
|
|
44052
|
-
/* @__PURE__ */
|
|
44053
|
-
|
|
44054
|
-
{
|
|
44055
|
-
|
|
44056
|
-
|
|
44057
|
-
|
|
44058
|
-
|
|
44059
|
-
|
|
44060
|
-
|
|
44061
|
-
|
|
44062
|
-
|
|
44063
|
-
|
|
44064
|
-
|
|
44065
|
-
|
|
44066
|
-
|
|
44131
|
+
/* @__PURE__ */ jsxs(Avatar, { className: "size-12 ring-4 ring-primary shadow-lg", children: [
|
|
44132
|
+
/* @__PURE__ */ jsx(AvatarImage, { src: review.avatarSrc, alt: authorName }),
|
|
44133
|
+
/* @__PURE__ */ jsx(AvatarFallback, { className: "text-md", children: getInitials(authorName) })
|
|
44134
|
+
] }),
|
|
44135
|
+
/* @__PURE__ */ jsxs("div", { className: "flex flex-col items-start gap-0", children: [
|
|
44136
|
+
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2", children: [
|
|
44137
|
+
review.author && (typeof review.author === "string" ? /* @__PURE__ */ jsx("span", { className: "font-medium", children: review.author }) : review.author),
|
|
44138
|
+
review.verified && /* @__PURE__ */ jsxs("span", { className: "flex items-center gap-1", children: [
|
|
44139
|
+
/* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/badge-check", size: 18 }),
|
|
44140
|
+
verifiedPurchaseLabel && (typeof verifiedPurchaseLabel === "string" ? /* @__PURE__ */ jsx("span", { className: "text-sm", children: verifiedPurchaseLabel }) : verifiedPurchaseLabel),
|
|
44141
|
+
!verifiedPurchaseLabel && /* @__PURE__ */ jsx("span", { className: "text-sm", children: "Verified Purchase" })
|
|
44142
|
+
] })
|
|
44143
|
+
] }),
|
|
44144
|
+
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2 text-sm", children: [
|
|
44145
|
+
review.date && /* @__PURE__ */ jsx("span", { children: review.date }),
|
|
44146
|
+
review.variant && /* @__PURE__ */ jsxs(Fragment$1, { children: [
|
|
44147
|
+
/* @__PURE__ */ jsx("span", { children: "\xB7" }),
|
|
44148
|
+
/* @__PURE__ */ jsx("span", { children: review.variant })
|
|
44149
|
+
] })
|
|
44150
|
+
] })
|
|
44067
44151
|
] })
|
|
44068
44152
|
]
|
|
44069
44153
|
}
|
|
44070
44154
|
),
|
|
44071
|
-
/* @__PURE__ */
|
|
44072
|
-
|
|
44073
|
-
|
|
44074
|
-
|
|
44075
|
-
|
|
44076
|
-
|
|
44077
|
-
|
|
44078
|
-
|
|
44079
|
-
|
|
44080
|
-
|
|
44155
|
+
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-4", children: [
|
|
44156
|
+
/* @__PURE__ */ jsxs(
|
|
44157
|
+
Pressable,
|
|
44158
|
+
{
|
|
44159
|
+
asButton: true,
|
|
44160
|
+
variant: "ghost",
|
|
44161
|
+
size: "sm",
|
|
44162
|
+
className: cn(
|
|
44163
|
+
"h-8 gap-1.5",
|
|
44164
|
+
helpfulClicked.has(index) ? "text-foreground" : "text-muted-foreground"
|
|
44165
|
+
),
|
|
44166
|
+
onClick: () => handleHelpful(index),
|
|
44167
|
+
children: [
|
|
44168
|
+
/* @__PURE__ */ jsx(
|
|
44169
|
+
DynamicIcon,
|
|
44170
|
+
{
|
|
44171
|
+
name: "lucide/thumbs-up",
|
|
44172
|
+
size: 16,
|
|
44173
|
+
className: cn(
|
|
44174
|
+
helpfulClicked.has(index) && "fill-current"
|
|
44175
|
+
)
|
|
44176
|
+
}
|
|
44177
|
+
),
|
|
44178
|
+
"Helpful",
|
|
44179
|
+
review.helpful !== void 0 && /* @__PURE__ */ jsxs("span", { children: [
|
|
44180
|
+
"(",
|
|
44181
|
+
review.helpful + (helpfulClicked.has(index) ? 1 : 0),
|
|
44182
|
+
")"
|
|
44183
|
+
] })
|
|
44184
|
+
]
|
|
44185
|
+
}
|
|
44186
|
+
),
|
|
44187
|
+
/* @__PURE__ */ jsx(
|
|
44188
|
+
Pressable,
|
|
44189
|
+
{
|
|
44190
|
+
asButton: true,
|
|
44191
|
+
variant: "ghost",
|
|
44192
|
+
size: "sm",
|
|
44193
|
+
className: "h-8 text-muted-foreground",
|
|
44194
|
+
children: reportButtonLabel ?? "Report"
|
|
44195
|
+
}
|
|
44196
|
+
)
|
|
44197
|
+
] })
|
|
44081
44198
|
] })
|
|
44082
|
-
] })
|
|
44199
|
+
] })
|
|
44083
44200
|
] }, index);
|
|
44084
44201
|
}) });
|
|
44085
44202
|
}, [
|
|
@@ -44092,11 +44209,13 @@ function TestimonialsImagesHelpful({
|
|
|
44092
44209
|
helpfulClicked,
|
|
44093
44210
|
optixFlowConfig,
|
|
44094
44211
|
reportButtonLabel,
|
|
44212
|
+
verifiedPurchaseLabel,
|
|
44095
44213
|
getAuthorName,
|
|
44096
44214
|
getInitials,
|
|
44097
|
-
handleHelpful
|
|
44215
|
+
handleHelpful,
|
|
44216
|
+
handleImageClick
|
|
44098
44217
|
]);
|
|
44099
|
-
return /* @__PURE__ */
|
|
44218
|
+
return /* @__PURE__ */ jsxs(
|
|
44100
44219
|
Section,
|
|
44101
44220
|
{
|
|
44102
44221
|
background,
|
|
@@ -44104,42 +44223,57 @@ function TestimonialsImagesHelpful({
|
|
|
44104
44223
|
pattern,
|
|
44105
44224
|
patternOpacity,
|
|
44106
44225
|
className,
|
|
44107
|
-
|
|
44108
|
-
|
|
44109
|
-
|
|
44110
|
-
{
|
|
44111
|
-
className:
|
|
44112
|
-
"
|
|
44113
|
-
|
|
44114
|
-
|
|
44115
|
-
|
|
44116
|
-
|
|
44117
|
-
|
|
44118
|
-
|
|
44119
|
-
|
|
44120
|
-
|
|
44121
|
-
|
|
44122
|
-
headingClassName
|
|
44123
|
-
),
|
|
44124
|
-
children: heading
|
|
44125
|
-
}
|
|
44126
|
-
) : /* @__PURE__ */ jsx("div", { className: headingClassName, children: heading })),
|
|
44127
|
-
totalReviews > 0 && /* @__PURE__ */ jsxs("div", { className: "mt-2 flex items-center gap-2", children: [
|
|
44128
|
-
/* @__PURE__ */ jsx(StarRating2, { rating: Math.round(averageRating), size: 20 }),
|
|
44129
|
-
/* @__PURE__ */ jsx("span", { className: "text-lg font-semibold", children: averageRating.toFixed(1) }),
|
|
44130
|
-
/* @__PURE__ */ jsxs("span", { className: "text-sm text-muted-foreground", children: [
|
|
44131
|
-
"(",
|
|
44132
|
-
totalReviews,
|
|
44133
|
-
" reviews)"
|
|
44134
|
-
] })
|
|
44135
|
-
] })
|
|
44136
|
-
] }),
|
|
44226
|
+
containerClassName,
|
|
44227
|
+
children: [
|
|
44228
|
+
/* @__PURE__ */ jsxs("div", { className: "mx-auto max-w-full md:max-w-3xl", children: [
|
|
44229
|
+
/* @__PURE__ */ jsxs("div", { className: cn("mb-12 md:mb-24 space-y-6", headerClassName), children: [
|
|
44230
|
+
/* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-4 sm:flex-row sm:items-end sm:justify-between", children: [
|
|
44231
|
+
heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
|
|
44232
|
+
"h2",
|
|
44233
|
+
{
|
|
44234
|
+
className: cn(
|
|
44235
|
+
"text-2xl font-semibold tracking-tight md:text-3xl lg:text-4xl",
|
|
44236
|
+
headingClassName
|
|
44237
|
+
),
|
|
44238
|
+
children: heading
|
|
44239
|
+
}
|
|
44240
|
+
) : heading),
|
|
44137
44241
|
(writeReviewLabel || onWriteReview) && /* @__PURE__ */ jsx(Pressable, { asButton: true, variant: "outline", onClick: onWriteReview, children: writeReviewLabel })
|
|
44138
|
-
]
|
|
44242
|
+
] }),
|
|
44243
|
+
totalReviews > 0 && /* @__PURE__ */ jsxs("div", { className: "mt-2 flex items-center gap-3", children: [
|
|
44244
|
+
/* @__PURE__ */ jsx(StarRating, { rating: Math.round(averageRating), size: 22 }),
|
|
44245
|
+
/* @__PURE__ */ jsxs("span", { className: "text-sm", children: [
|
|
44246
|
+
averageRating.toFixed(1),
|
|
44247
|
+
" out of 5 \xB7 ",
|
|
44248
|
+
totalReviews,
|
|
44249
|
+
" reviews"
|
|
44250
|
+
] })
|
|
44251
|
+
] })
|
|
44252
|
+
] }),
|
|
44253
|
+
renderedReviews
|
|
44254
|
+
] }),
|
|
44255
|
+
lightboxOpen && /* @__PURE__ */ jsx(
|
|
44256
|
+
Lightbox,
|
|
44257
|
+
{
|
|
44258
|
+
items: lightboxItems,
|
|
44259
|
+
initialIndex: lightboxIndex,
|
|
44260
|
+
layout: "horizontal",
|
|
44261
|
+
controls: {
|
|
44262
|
+
navigation: true,
|
|
44263
|
+
thumbnails: true,
|
|
44264
|
+
download: true,
|
|
44265
|
+
share: true,
|
|
44266
|
+
fullscreen: true,
|
|
44267
|
+
captions: true,
|
|
44268
|
+
counter: true
|
|
44269
|
+
},
|
|
44270
|
+
onClose: handleLightboxClose,
|
|
44271
|
+
enableKeyboardShortcuts: true,
|
|
44272
|
+
closeOnEscape: true,
|
|
44273
|
+
closeOnBackdropClick: true
|
|
44139
44274
|
}
|
|
44140
|
-
)
|
|
44141
|
-
|
|
44142
|
-
] })
|
|
44275
|
+
)
|
|
44276
|
+
]
|
|
44143
44277
|
}
|
|
44144
44278
|
);
|
|
44145
44279
|
}
|
|
@@ -44283,7 +44417,7 @@ function TestimonialsBentoGrid({
|
|
|
44283
44417
|
] }),
|
|
44284
44418
|
/* @__PURE__ */ jsxs("div", { className: "space-y-0 leading-tight", children: [
|
|
44285
44419
|
testimonial.author && (typeof testimonial.author === "string" ? /* @__PURE__ */ jsx("p", { className: "text-sm font-medium", children: testimonial.author }) : testimonial.author),
|
|
44286
|
-
testimonial.role && (typeof testimonial.role === "string" ? /* @__PURE__ */ jsx("p", { className: "text-xs
|
|
44420
|
+
testimonial.role && (typeof testimonial.role === "string" ? /* @__PURE__ */ jsx("p", { className: "text-xs", children: testimonial.role }) : testimonial.role),
|
|
44287
44421
|
testimonial.linkConfig?.href && /* @__PURE__ */ jsx(
|
|
44288
44422
|
Pressable,
|
|
44289
44423
|
{
|
|
@@ -44398,7 +44532,7 @@ function TestimonialsTwitterCards({
|
|
|
44398
44532
|
"div",
|
|
44399
44533
|
{
|
|
44400
44534
|
className: cn(
|
|
44401
|
-
"grid gap-
|
|
44535
|
+
"grid gap-6 lg:gap-8 md:grid-cols-2 lg:grid-cols-3",
|
|
44402
44536
|
gridClassName
|
|
44403
44537
|
),
|
|
44404
44538
|
children: testimonials.map((testimonial, index) => {
|
|
@@ -44451,7 +44585,8 @@ function TestimonialsTwitterCards({
|
|
|
44451
44585
|
SocialLinkIcon,
|
|
44452
44586
|
{
|
|
44453
44587
|
href: testimonial.linkConfig.href,
|
|
44454
|
-
iconSize: 24
|
|
44588
|
+
iconSize: 24,
|
|
44589
|
+
iconOnly: true
|
|
44455
44590
|
}
|
|
44456
44591
|
)
|
|
44457
44592
|
]
|
|
@@ -44532,6 +44667,7 @@ function TestimonialsCarouselImage({
|
|
|
44532
44667
|
className,
|
|
44533
44668
|
contentClassName,
|
|
44534
44669
|
quoteIconClassName,
|
|
44670
|
+
logoClassName,
|
|
44535
44671
|
quoteClassName,
|
|
44536
44672
|
authorClassName,
|
|
44537
44673
|
navigationClassName,
|
|
@@ -44539,7 +44675,7 @@ function TestimonialsCarouselImage({
|
|
|
44539
44675
|
dotsClassName,
|
|
44540
44676
|
optixFlowConfig,
|
|
44541
44677
|
background,
|
|
44542
|
-
containerClassName = "mx-0 w-screen px-0 sm:px-0 lg:px-0 max-w-screen relative z-10",
|
|
44678
|
+
containerClassName = "mx-0 w-screen px-0 sm:px-0 lg:px-0 max-w-screen relative z-10 h-full",
|
|
44543
44679
|
spacing = "none",
|
|
44544
44680
|
pattern,
|
|
44545
44681
|
patternOpacity
|
|
@@ -44597,7 +44733,18 @@ function TestimonialsCarouselImage({
|
|
|
44597
44733
|
contentClassName
|
|
44598
44734
|
),
|
|
44599
44735
|
children: [
|
|
44600
|
-
/* @__PURE__ */ jsx(
|
|
44736
|
+
current?.logoSrc ? /* @__PURE__ */ jsx(
|
|
44737
|
+
Img,
|
|
44738
|
+
{
|
|
44739
|
+
src: current.logoSrc,
|
|
44740
|
+
alt: typeof current.company === "string" ? `${current.company} logo` : typeof current.author === "string" ? `${current.author} company logo` : "Company logo",
|
|
44741
|
+
className: cn(
|
|
44742
|
+
"mx-auto mb-6 max-h-12 max-w-32 object-contain md:max-h-16 md:max-w-48",
|
|
44743
|
+
logoClassName
|
|
44744
|
+
),
|
|
44745
|
+
optixFlowConfig
|
|
44746
|
+
}
|
|
44747
|
+
) : /* @__PURE__ */ jsx(
|
|
44601
44748
|
DynamicIcon,
|
|
44602
44749
|
{
|
|
44603
44750
|
name: "mdi/comment-quote-outline",
|
|
@@ -44655,6 +44802,8 @@ function TestimonialsCarouselImage({
|
|
|
44655
44802
|
testimonialsSlot,
|
|
44656
44803
|
contentClassName,
|
|
44657
44804
|
quoteIconClassName,
|
|
44805
|
+
logoClassName,
|
|
44806
|
+
optixFlowConfig,
|
|
44658
44807
|
current,
|
|
44659
44808
|
quoteClassName,
|
|
44660
44809
|
authorClassName
|
|
@@ -44855,7 +45004,7 @@ function TestimonialsCenteredAvatars({
|
|
|
44855
45004
|
"div",
|
|
44856
45005
|
{
|
|
44857
45006
|
className: cn(
|
|
44858
|
-
"mx-auto max-w-full md:max-w-md text-center flex flex-col items-center gap-6",
|
|
45007
|
+
"mx-auto max-w-full md:max-w-md text-center flex flex-col items-center gap-6 bg-card/50 px-10 py-20 shadow-xl border border-border/50 rounded-3xl backdrop-blur-md",
|
|
44859
45008
|
contentClassName
|
|
44860
45009
|
),
|
|
44861
45010
|
children: [
|
|
@@ -45011,19 +45160,6 @@ function TestimonialsCompanyLogo({
|
|
|
45011
45160
|
}
|
|
45012
45161
|
);
|
|
45013
45162
|
}
|
|
45014
|
-
function StarRating3({ rating, size = 16 }) {
|
|
45015
|
-
return /* @__PURE__ */ jsx("div", { className: "flex items-center gap-0.5", children: [1, 2, 3, 4, 5].map((star) => /* @__PURE__ */ jsx(
|
|
45016
|
-
DynamicIcon,
|
|
45017
|
-
{
|
|
45018
|
-
name: "lucide/star",
|
|
45019
|
-
size,
|
|
45020
|
-
className: cn(
|
|
45021
|
-
star <= rating ? "fill-primary text-primary" : "fill-muted text-muted"
|
|
45022
|
-
)
|
|
45023
|
-
},
|
|
45024
|
-
star
|
|
45025
|
-
)) });
|
|
45026
|
-
}
|
|
45027
45163
|
function TestimonialsGridAddReview({
|
|
45028
45164
|
reviews,
|
|
45029
45165
|
reviewsSlot,
|
|
@@ -45070,27 +45206,33 @@ function TestimonialsGridAddReview({
|
|
|
45070
45206
|
addReviewCardClassName
|
|
45071
45207
|
),
|
|
45072
45208
|
onClick: onAddReview,
|
|
45073
|
-
children: /* @__PURE__ */ jsxs(
|
|
45074
|
-
|
|
45075
|
-
|
|
45076
|
-
|
|
45077
|
-
|
|
45078
|
-
|
|
45079
|
-
|
|
45080
|
-
|
|
45081
|
-
size:
|
|
45082
|
-
|
|
45083
|
-
|
|
45084
|
-
|
|
45085
|
-
|
|
45086
|
-
|
|
45087
|
-
|
|
45209
|
+
children: /* @__PURE__ */ jsxs(
|
|
45210
|
+
CardContent,
|
|
45211
|
+
{
|
|
45212
|
+
className: cn(
|
|
45213
|
+
"flex flex-col items-center gap-3 py-12 text-center",
|
|
45214
|
+
getNestedCardTextColor(background)
|
|
45215
|
+
),
|
|
45216
|
+
children: [
|
|
45217
|
+
/* @__PURE__ */ jsx("div", { className: "flex size-12 items-center justify-center rounded-full bg-primary/10", children: /* @__PURE__ */ jsx(
|
|
45218
|
+
DynamicIcon,
|
|
45219
|
+
{
|
|
45220
|
+
name: "lucide/plus",
|
|
45221
|
+
size: 24,
|
|
45222
|
+
className: "text-primary"
|
|
45223
|
+
}
|
|
45224
|
+
) }),
|
|
45225
|
+
addReviewText && (typeof addReviewText === "string" ? /* @__PURE__ */ jsx("p", { className: "font-medium", children: addReviewText }) : addReviewText),
|
|
45226
|
+
addReviewSubtext && (typeof addReviewSubtext === "string" ? /* @__PURE__ */ jsx("p", { className: "text-sm text-muted-foreground", children: addReviewSubtext }) : addReviewSubtext)
|
|
45227
|
+
]
|
|
45228
|
+
}
|
|
45229
|
+
)
|
|
45088
45230
|
}
|
|
45089
45231
|
),
|
|
45090
45232
|
reviews?.map((review, index) => {
|
|
45091
45233
|
const authorName = getAuthorName(review);
|
|
45092
45234
|
return /* @__PURE__ */ jsx(Card, { className: cardClassName, children: /* @__PURE__ */ jsxs(CardContent, { className: "space-y-4 p-6", children: [
|
|
45093
|
-
/* @__PURE__ */ jsx(
|
|
45235
|
+
/* @__PURE__ */ jsx(StarRating, { rating: review.rating }),
|
|
45094
45236
|
review.content && (typeof review.content === "string" ? /* @__PURE__ */ jsx("p", { className: "text-sm leading-relaxed", children: review.content }) : review.content),
|
|
45095
45237
|
/* @__PURE__ */ jsxs("div", { className: cn("flex items-center gap-3", authorClassName), children: [
|
|
45096
45238
|
/* @__PURE__ */ jsxs(Avatar, { className: "size-8", children: [
|
|
@@ -45104,7 +45246,19 @@ function TestimonialsGridAddReview({
|
|
|
45104
45246
|
]
|
|
45105
45247
|
}
|
|
45106
45248
|
);
|
|
45107
|
-
}, [
|
|
45249
|
+
}, [
|
|
45250
|
+
reviewsSlot,
|
|
45251
|
+
gridClassName,
|
|
45252
|
+
addReviewCardClassName,
|
|
45253
|
+
onAddReview,
|
|
45254
|
+
addReviewText,
|
|
45255
|
+
addReviewSubtext,
|
|
45256
|
+
reviews,
|
|
45257
|
+
cardClassName,
|
|
45258
|
+
authorClassName,
|
|
45259
|
+
getAuthorName,
|
|
45260
|
+
getInitials
|
|
45261
|
+
]);
|
|
45108
45262
|
return /* @__PURE__ */ jsxs(
|
|
45109
45263
|
Section,
|
|
45110
45264
|
{
|
|
@@ -45210,10 +45364,18 @@ function TestimonialsMarquee({
|
|
|
45210
45364
|
const authorName = getAuthorName(testimonial);
|
|
45211
45365
|
const avatarSrc = getAvatarSrc(testimonial);
|
|
45212
45366
|
return /* @__PURE__ */ jsx(
|
|
45213
|
-
|
|
45367
|
+
Pressable,
|
|
45214
45368
|
{
|
|
45215
|
-
|
|
45216
|
-
|
|
45369
|
+
href: testimonial?.linkConfig?.href,
|
|
45370
|
+
className: cn(
|
|
45371
|
+
"bg-card text-card-foreground",
|
|
45372
|
+
"rounded-2xl border shadow-xl",
|
|
45373
|
+
"cursor-pointer transition-all duration-500",
|
|
45374
|
+
"hover:bg-primary hover:text-primary-foreground",
|
|
45375
|
+
"flex flex-col gap-6 w-80 shrink-0",
|
|
45376
|
+
cardClassName
|
|
45377
|
+
),
|
|
45378
|
+
children: /* @__PURE__ */ jsxs(CardContent, { className: "p-6 h-full flex flex-col justify-between gap-12", children: [
|
|
45217
45379
|
testimonial.quote && (typeof testimonial.quote === "string" ? /* @__PURE__ */ jsxs(
|
|
45218
45380
|
"p",
|
|
45219
45381
|
{
|
|
@@ -45231,15 +45393,15 @@ function TestimonialsMarquee({
|
|
|
45231
45393
|
/* @__PURE__ */ jsxs(
|
|
45232
45394
|
"div",
|
|
45233
45395
|
{
|
|
45234
|
-
className: cn("flex items-center gap-
|
|
45396
|
+
className: cn("flex items-center gap-4", authorClassName),
|
|
45235
45397
|
children: [
|
|
45236
|
-
/* @__PURE__ */ jsxs(Avatar, { className: "size-
|
|
45398
|
+
/* @__PURE__ */ jsxs(Avatar, { className: "relative flex shrink-0 overflow-hidden rounded-full size-10 ring-4 ring-primary shadow-lg", children: [
|
|
45237
45399
|
/* @__PURE__ */ jsx(AvatarImage, { src: avatarSrc, alt: authorName }),
|
|
45238
45400
|
/* @__PURE__ */ jsx(AvatarFallback, { className: "text-xs", children: getInitials(authorName) })
|
|
45239
45401
|
] }),
|
|
45240
45402
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
45241
|
-
testimonial.author && (typeof testimonial.author === "string" ? /* @__PURE__ */ jsx("p", { className: "text-
|
|
45242
|
-
testimonial.role && (typeof testimonial.role === "string" ? /* @__PURE__ */ jsx("p", { className: "text-
|
|
45403
|
+
testimonial.author && (typeof testimonial.author === "string" ? /* @__PURE__ */ jsx("p", { className: "text-base font-medium", children: testimonial.author }) : testimonial.author),
|
|
45404
|
+
testimonial.role && (typeof testimonial.role === "string" ? /* @__PURE__ */ jsx("p", { className: "text-sm", children: testimonial.role }) : testimonial.role)
|
|
45243
45405
|
] })
|
|
45244
45406
|
]
|
|
45245
45407
|
}
|
|
@@ -45277,18 +45439,18 @@ function TestimonialsMarquee({
|
|
|
45277
45439
|
className: cn("overflow-hidden", className),
|
|
45278
45440
|
containerClassName,
|
|
45279
45441
|
children: [
|
|
45280
|
-
/* @__PURE__ */ jsx("div", { className: cn("mb-12", headerClassName), children: /* @__PURE__ */ jsxs("div", { className: "mx-auto max-w-2xl text-center", children: [
|
|
45442
|
+
/* @__PURE__ */ jsx("div", { className: cn("mb-12", headerClassName), children: /* @__PURE__ */ jsxs("div", { className: "mx-auto max-w-full md:max-w-2xl text-center space-y-2", children: [
|
|
45281
45443
|
heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
|
|
45282
45444
|
"h2",
|
|
45283
45445
|
{
|
|
45284
45446
|
className: cn(
|
|
45285
|
-
"text-3xl font-semibold tracking-tight md:text-4xl",
|
|
45447
|
+
"text-3xl font-semibold tracking-tight md:text-4xl lg:text-6xl text-pretty",
|
|
45286
45448
|
headingClassName
|
|
45287
45449
|
),
|
|
45288
45450
|
children: heading
|
|
45289
45451
|
}
|
|
45290
45452
|
) : heading),
|
|
45291
|
-
description && (typeof description === "string" ? /* @__PURE__ */ jsx("p", { className: cn("
|
|
45453
|
+
description && (typeof description === "string" ? /* @__PURE__ */ jsx("p", { className: cn("text-lg text-balance", descriptionClassName), children: description }) : description)
|
|
45292
45454
|
] }) }),
|
|
45293
45455
|
renderedTestimonials,
|
|
45294
45456
|
/* @__PURE__ */ jsx("style", { children: `
|
|
@@ -45369,7 +45531,7 @@ function TestimonialsSimpleGrid({
|
|
|
45369
45531
|
"bg-card text-card-foreground",
|
|
45370
45532
|
"flex flex-col gap-6",
|
|
45371
45533
|
testimonial.linkConfig?.href ? "cursor-pointer hover:bg-black hover:text-white transition-all duration-500" : "",
|
|
45372
|
-
"rounded-2xl py-
|
|
45534
|
+
"rounded-2xl py-0 shadow-xl group",
|
|
45373
45535
|
"ring-4 ring-ring",
|
|
45374
45536
|
cardClassName
|
|
45375
45537
|
),
|
|
@@ -45377,7 +45539,7 @@ function TestimonialsSimpleGrid({
|
|
|
45377
45539
|
CardContent,
|
|
45378
45540
|
{
|
|
45379
45541
|
className: cn(
|
|
45380
|
-
"px-
|
|
45542
|
+
"px-0 h-full flex flex-col-reverse items-stretch justify-between gap-12",
|
|
45381
45543
|
cardContentClassName
|
|
45382
45544
|
),
|
|
45383
45545
|
children: [
|
|
@@ -45389,7 +45551,7 @@ function TestimonialsSimpleGrid({
|
|
|
45389
45551
|
authorClassName
|
|
45390
45552
|
),
|
|
45391
45553
|
children: /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-4", children: [
|
|
45392
|
-
/* @__PURE__ */ jsxs(Avatar, { className: "relative flex shrink-0
|
|
45554
|
+
/* @__PURE__ */ jsxs(Avatar, { className: "relative flex shrink-0 size-24 border-t-4 border-r-4 border-primary rounded-tr-xl rounded-tl-none rounded-br-none rounded-bl-none shadow-xl", children: [
|
|
45393
45555
|
/* @__PURE__ */ jsx(
|
|
45394
45556
|
AvatarImage,
|
|
45395
45557
|
{
|
|
@@ -45399,11 +45561,28 @@ function TestimonialsSimpleGrid({
|
|
|
45399
45561
|
),
|
|
45400
45562
|
/* @__PURE__ */ jsx(AvatarFallback, { children: getInitials(authorName) })
|
|
45401
45563
|
] }),
|
|
45402
|
-
/* @__PURE__ */
|
|
45564
|
+
/* @__PURE__ */ jsxs("div", { className: "space-y-1 pt-2 pr-6 pb-2", children: [
|
|
45565
|
+
/* @__PURE__ */ jsxs("div", { className: "space-y-0", children: [
|
|
45566
|
+
testimonial.author && (typeof testimonial.author === "string" ? /* @__PURE__ */ jsx("p", { className: "text-lg font-semibold leading-relaxed", children: testimonial.author }) : testimonial.author),
|
|
45567
|
+
testimonial.role && (typeof testimonial.role === "string" ? /* @__PURE__ */ jsx("p", { className: "text-base", children: testimonial.role }) : testimonial.role)
|
|
45568
|
+
] }),
|
|
45569
|
+
testimonial.linkConfig?.href && /* @__PURE__ */ jsx(
|
|
45570
|
+
Pressable,
|
|
45571
|
+
{
|
|
45572
|
+
href: testimonial.linkConfig.href,
|
|
45573
|
+
className: cn(
|
|
45574
|
+
"text-base transition-all duration-300",
|
|
45575
|
+
"underline underline-offset-4",
|
|
45576
|
+
testimonial.linkConfig.className
|
|
45577
|
+
),
|
|
45578
|
+
children: testimonial.linkConfig.label
|
|
45579
|
+
}
|
|
45580
|
+
)
|
|
45581
|
+
] })
|
|
45403
45582
|
] })
|
|
45404
45583
|
}
|
|
45405
45584
|
),
|
|
45406
|
-
testimonial.quote && (typeof testimonial.quote === "string" ? /* @__PURE__ */ jsx("p", { className: "text-sm leading-relaxed", children: testimonial.quote }) : testimonial.quote)
|
|
45585
|
+
/* @__PURE__ */ jsx("div", { className: "pt-6 md: pt-8 px-6 md:px-8", children: testimonial.quote && (typeof testimonial.quote === "string" ? /* @__PURE__ */ jsx("p", { className: "text-sm leading-relaxed", children: testimonial.quote }) : testimonial.quote) })
|
|
45407
45586
|
]
|
|
45408
45587
|
}
|
|
45409
45588
|
)
|
|
@@ -45574,7 +45753,7 @@ function TestimonialsSliderMinimal({
|
|
|
45574
45753
|
Avatar,
|
|
45575
45754
|
{
|
|
45576
45755
|
className: cn(
|
|
45577
|
-
"relative flex shrink-0 overflow-hidden rounded-
|
|
45756
|
+
"relative flex shrink-0 overflow-hidden rounded-full ring-4 ring-primary shadow-xl size-12",
|
|
45578
45757
|
avatarClassName
|
|
45579
45758
|
),
|
|
45580
45759
|
children: [
|
|
@@ -45856,6 +46035,7 @@ function TestimonialsStatsHeader({
|
|
|
45856
46035
|
statItemClassName,
|
|
45857
46036
|
testimonialsGridClassName,
|
|
45858
46037
|
cardClassName,
|
|
46038
|
+
statCardClassName,
|
|
45859
46039
|
quoteClassName,
|
|
45860
46040
|
authorClassName,
|
|
45861
46041
|
background,
|
|
@@ -45874,6 +46054,11 @@ function TestimonialsStatsHeader({
|
|
|
45874
46054
|
},
|
|
45875
46055
|
[]
|
|
45876
46056
|
);
|
|
46057
|
+
const renderStatIcon = useCallback((stat) => {
|
|
46058
|
+
if (stat.iconSlot) return stat.iconSlot;
|
|
46059
|
+
if (!stat.icon) return null;
|
|
46060
|
+
return /* @__PURE__ */ jsx("div", { className: "mb-6", children: /* @__PURE__ */ jsx(DynamicIcon, { name: stat.icon, size: 32, className: stat.iconColor }) });
|
|
46061
|
+
}, []);
|
|
45877
46062
|
const getInitials = useCallback((name) => {
|
|
45878
46063
|
return name.split(" ").map((n) => n[0]).join("");
|
|
45879
46064
|
}, []);
|
|
@@ -45884,24 +46069,29 @@ function TestimonialsStatsHeader({
|
|
|
45884
46069
|
"div",
|
|
45885
46070
|
{
|
|
45886
46071
|
className: cn(
|
|
45887
|
-
"mb-12 grid grid-cols-2
|
|
46072
|
+
"mb-12 grid gap-6 md:grid-cols-2 lg:grid-cols-3",
|
|
45888
46073
|
statsGridClassName
|
|
45889
46074
|
),
|
|
45890
|
-
children: stats.map((stat
|
|
45891
|
-
|
|
46075
|
+
children: stats.map((stat) => /* @__PURE__ */ jsx(
|
|
46076
|
+
Card,
|
|
45892
46077
|
{
|
|
45893
46078
|
className: cn(
|
|
45894
|
-
"
|
|
45895
|
-
|
|
45896
|
-
|
|
45897
|
-
statItemClassName
|
|
46079
|
+
"overflow-hidden border p-0",
|
|
46080
|
+
stat.className,
|
|
46081
|
+
statCardClassName
|
|
45898
46082
|
),
|
|
45899
|
-
children: [
|
|
45900
|
-
|
|
45901
|
-
|
|
45902
|
-
|
|
46083
|
+
children: /* @__PURE__ */ jsxs(CardContent, { className: "p-6 md:p-8", children: [
|
|
46084
|
+
renderStatIcon(stat),
|
|
46085
|
+
/* @__PURE__ */ jsxs("div", { className: "mb-2 flex items-end", children: [
|
|
46086
|
+
stat.prefix && /* @__PURE__ */ jsx("span", { className: "mb-1 mr-1 text-2xl font-bold", children: stat.prefix }),
|
|
46087
|
+
/* @__PURE__ */ jsx("h3", { className: "text-4xl font-bold tracking-tight leading-tight md:text-5xl", children: stat.value }),
|
|
46088
|
+
stat.suffix && /* @__PURE__ */ jsx("span", { className: "mb-1 ml-1 text-2xl font-bold", children: stat.suffix })
|
|
46089
|
+
] }),
|
|
46090
|
+
stat.label && /* @__PURE__ */ jsx("div", { className: "mb-4 text-xl font-semibold", children: stat.label }),
|
|
46091
|
+
stat.description && (typeof stat.description === "string" ? /* @__PURE__ */ jsx("p", { className: "opacity-75", children: stat.description }) : stat.description)
|
|
46092
|
+
] })
|
|
45903
46093
|
},
|
|
45904
|
-
|
|
46094
|
+
stat.id
|
|
45905
46095
|
))
|
|
45906
46096
|
}
|
|
45907
46097
|
);
|
|
@@ -45916,41 +46106,65 @@ function TestimonialsStatsHeader({
|
|
|
45916
46106
|
children: testimonials.map((testimonial, index) => {
|
|
45917
46107
|
const authorName = getAuthorName(testimonial);
|
|
45918
46108
|
const avatarSrc = getAvatarSrc(testimonial);
|
|
45919
|
-
return /* @__PURE__ */ jsx(
|
|
45920
|
-
|
|
45921
|
-
|
|
45922
|
-
|
|
45923
|
-
|
|
45924
|
-
|
|
45925
|
-
|
|
45926
|
-
|
|
45927
|
-
|
|
45928
|
-
|
|
45929
|
-
|
|
45930
|
-
|
|
45931
|
-
|
|
45932
|
-
|
|
45933
|
-
|
|
45934
|
-
|
|
45935
|
-
|
|
45936
|
-
|
|
45937
|
-
|
|
45938
|
-
|
|
45939
|
-
|
|
45940
|
-
|
|
45941
|
-
|
|
45942
|
-
|
|
45943
|
-
|
|
45944
|
-
|
|
45945
|
-
|
|
45946
|
-
|
|
45947
|
-
|
|
45948
|
-
|
|
45949
|
-
|
|
45950
|
-
|
|
45951
|
-
|
|
45952
|
-
|
|
45953
|
-
|
|
46109
|
+
return /* @__PURE__ */ jsx(
|
|
46110
|
+
"div",
|
|
46111
|
+
{
|
|
46112
|
+
className: cn(
|
|
46113
|
+
"bg-card text-card-foreground flex flex-col gap-6 rounded-2xl border py-0 shadow-xl",
|
|
46114
|
+
cardClassName
|
|
46115
|
+
),
|
|
46116
|
+
children: /* @__PURE__ */ jsx(CardContent, { className: "p-6", children: /* @__PURE__ */ jsxs("div", { className: "flex flex-col items-start gap-12 justify-between", children: [
|
|
46117
|
+
/* @__PURE__ */ jsxs("div", { className: "flex flex-col items-start gap-4", children: [
|
|
46118
|
+
/* @__PURE__ */ jsx(StarRating, { rating: 5, size: 20 }),
|
|
46119
|
+
testimonial.quote && (typeof testimonial.quote === "string" ? /* @__PURE__ */ jsxs(
|
|
46120
|
+
"p",
|
|
46121
|
+
{
|
|
46122
|
+
className: cn(
|
|
46123
|
+
"mb-6 text-sm leading-relaxed",
|
|
46124
|
+
quoteClassName
|
|
46125
|
+
),
|
|
46126
|
+
children: [
|
|
46127
|
+
"\u201C",
|
|
46128
|
+
testimonial.quote,
|
|
46129
|
+
"\u201D"
|
|
46130
|
+
]
|
|
46131
|
+
}
|
|
46132
|
+
) : /* @__PURE__ */ jsx("div", { className: cn("mb-6", quoteClassName), children: testimonial.quote }))
|
|
46133
|
+
] }),
|
|
46134
|
+
/* @__PURE__ */ jsxs(
|
|
46135
|
+
"div",
|
|
46136
|
+
{
|
|
46137
|
+
className: cn("flex items-center gap-3", authorClassName),
|
|
46138
|
+
children: [
|
|
46139
|
+
/* @__PURE__ */ jsxs(Avatar, { className: "size-10", children: [
|
|
46140
|
+
/* @__PURE__ */ jsx(AvatarImage, { src: avatarSrc, alt: authorName }),
|
|
46141
|
+
/* @__PURE__ */ jsx(AvatarFallback, { children: getInitials(authorName) })
|
|
46142
|
+
] }),
|
|
46143
|
+
/* @__PURE__ */ jsxs("div", { className: "space-y-2", children: [
|
|
46144
|
+
/* @__PURE__ */ jsxs("div", { children: [
|
|
46145
|
+
testimonial.author && (typeof testimonial.author === "string" ? /* @__PURE__ */ jsx("p", { className: "text-base font-medium", children: testimonial.author }) : testimonial.author),
|
|
46146
|
+
testimonial.role && (typeof testimonial.role === "string" ? /* @__PURE__ */ jsx("p", { className: "text-sm opacity-75", children: testimonial.role }) : testimonial.role)
|
|
46147
|
+
] }),
|
|
46148
|
+
testimonial.linkConfig?.href && /* @__PURE__ */ jsx(
|
|
46149
|
+
Pressable,
|
|
46150
|
+
{
|
|
46151
|
+
href: testimonial.linkConfig.href,
|
|
46152
|
+
className: cn(
|
|
46153
|
+
"text-sm transition-all duration-300",
|
|
46154
|
+
"hover:underline hover:underline-offset-4",
|
|
46155
|
+
testimonial.linkConfig.className
|
|
46156
|
+
),
|
|
46157
|
+
children: testimonial.linkConfig.label
|
|
46158
|
+
}
|
|
46159
|
+
)
|
|
46160
|
+
] })
|
|
46161
|
+
]
|
|
46162
|
+
}
|
|
46163
|
+
)
|
|
46164
|
+
] }) })
|
|
46165
|
+
},
|
|
46166
|
+
index
|
|
46167
|
+
);
|
|
45954
46168
|
})
|
|
45955
46169
|
}
|
|
45956
46170
|
);
|
|
@@ -46142,19 +46356,6 @@ function TestimonialsWallCompact({
|
|
|
46142
46356
|
}
|
|
46143
46357
|
);
|
|
46144
46358
|
}
|
|
46145
|
-
function StarRating4({ rating, size = 14 }) {
|
|
46146
|
-
return /* @__PURE__ */ jsx("div", { className: "flex items-center gap-0.5", children: [1, 2, 3, 4, 5].map((star) => /* @__PURE__ */ jsx(
|
|
46147
|
-
DynamicIcon,
|
|
46148
|
-
{
|
|
46149
|
-
name: "lucide/star",
|
|
46150
|
-
size,
|
|
46151
|
-
className: cn(
|
|
46152
|
-
star <= rating ? "fill-primary text-primary" : "fill-muted text-muted"
|
|
46153
|
-
)
|
|
46154
|
-
},
|
|
46155
|
-
star
|
|
46156
|
-
)) });
|
|
46157
|
-
}
|
|
46158
46359
|
function TestimonialsMiniDividers({
|
|
46159
46360
|
testimonials,
|
|
46160
46361
|
testimonialsSlot,
|
|
@@ -46169,101 +46370,133 @@ function TestimonialsMiniDividers({
|
|
|
46169
46370
|
quoteClassName,
|
|
46170
46371
|
authorClassName,
|
|
46171
46372
|
background,
|
|
46172
|
-
spacing,
|
|
46373
|
+
spacing = "lg",
|
|
46374
|
+
containerClassName = "px-6 sm:px-6 md:px-8 lg:px-8",
|
|
46173
46375
|
pattern,
|
|
46174
46376
|
patternOpacity
|
|
46175
46377
|
}) {
|
|
46176
|
-
const getAuthorName = useCallback(
|
|
46177
|
-
|
|
46178
|
-
|
|
46179
|
-
|
|
46180
|
-
|
|
46181
|
-
|
|
46182
|
-
|
|
46378
|
+
const getAuthorName = useCallback(
|
|
46379
|
+
(testimonial) => {
|
|
46380
|
+
if (typeof testimonial.author === "string") return testimonial.author;
|
|
46381
|
+
return "";
|
|
46382
|
+
},
|
|
46383
|
+
[]
|
|
46384
|
+
);
|
|
46385
|
+
const getAvatarSrc = useCallback(
|
|
46386
|
+
(testimonial) => {
|
|
46387
|
+
return testimonial.avatarSrc || testimonial.avatar?.src;
|
|
46388
|
+
},
|
|
46389
|
+
[]
|
|
46390
|
+
);
|
|
46183
46391
|
const getInitials = useCallback((name) => {
|
|
46184
46392
|
return name.split(" ").map((n) => n[0]).join("");
|
|
46185
46393
|
}, []);
|
|
46186
46394
|
const renderedTestimonials = useMemo(() => {
|
|
46187
46395
|
if (testimonialsSlot) return testimonialsSlot;
|
|
46188
46396
|
if (!testimonials || testimonials.length === 0) return null;
|
|
46189
|
-
return /* @__PURE__ */
|
|
46397
|
+
return /* @__PURE__ */ jsxs(
|
|
46190
46398
|
"div",
|
|
46191
46399
|
{
|
|
46192
46400
|
className: cn(
|
|
46193
|
-
"
|
|
46401
|
+
"relative grid border-x border-b border-dashed md:grid-cols-3",
|
|
46194
46402
|
gridClassName
|
|
46195
46403
|
),
|
|
46196
|
-
children:
|
|
46197
|
-
|
|
46198
|
-
|
|
46199
|
-
return /* @__PURE__ */ jsxs(
|
|
46200
|
-
"div",
|
|
46404
|
+
children: [
|
|
46405
|
+
/* @__PURE__ */ jsx(
|
|
46406
|
+
DynamicIcon,
|
|
46201
46407
|
{
|
|
46202
|
-
|
|
46203
|
-
|
|
46204
|
-
|
|
46205
|
-
|
|
46206
|
-
|
|
46207
|
-
|
|
46208
|
-
|
|
46209
|
-
|
|
46210
|
-
|
|
46211
|
-
|
|
46212
|
-
|
|
46213
|
-
|
|
46214
|
-
|
|
46215
|
-
|
|
46216
|
-
|
|
46217
|
-
|
|
46218
|
-
|
|
46219
|
-
|
|
46220
|
-
|
|
46221
|
-
|
|
46222
|
-
|
|
46223
|
-
|
|
46224
|
-
|
|
46225
|
-
|
|
46226
|
-
|
|
46227
|
-
|
|
46228
|
-
children: [
|
|
46229
|
-
/* @__PURE__ */
|
|
46230
|
-
|
|
46231
|
-
|
|
46232
|
-
|
|
46233
|
-
/* @__PURE__ */
|
|
46234
|
-
|
|
46235
|
-
|
|
46236
|
-
|
|
46237
|
-
|
|
46238
|
-
|
|
46239
|
-
|
|
46240
|
-
|
|
46241
|
-
|
|
46242
|
-
|
|
46243
|
-
|
|
46244
|
-
|
|
46408
|
+
name: "lucide/sparkle",
|
|
46409
|
+
size: 20,
|
|
46410
|
+
className: "absolute top-0 right-0 translate-x-2.5 -translate-y-2.5 fill-primary"
|
|
46411
|
+
}
|
|
46412
|
+
),
|
|
46413
|
+
/* @__PURE__ */ jsx(
|
|
46414
|
+
DynamicIcon,
|
|
46415
|
+
{
|
|
46416
|
+
name: "lucide/sparkle",
|
|
46417
|
+
size: 20,
|
|
46418
|
+
className: "absolute top-0 left-0 -translate-x-2.5 -translate-y-2.5 fill-primary"
|
|
46419
|
+
}
|
|
46420
|
+
),
|
|
46421
|
+
testimonials.map((testimonial, index) => {
|
|
46422
|
+
const authorName = getAuthorName(testimonial);
|
|
46423
|
+
const avatarSrc = getAvatarSrc(testimonial);
|
|
46424
|
+
return /* @__PURE__ */ jsxs(
|
|
46425
|
+
"div",
|
|
46426
|
+
{
|
|
46427
|
+
className: cn(
|
|
46428
|
+
"group flex flex-col gap-4 border-t border-dashed p-4 transition-colors duration-300 hover:bg-muted/50 lg:p-8",
|
|
46429
|
+
index % 3 === 1 && "md:border-x md:border-dashed",
|
|
46430
|
+
itemClassName
|
|
46431
|
+
),
|
|
46432
|
+
children: [
|
|
46433
|
+
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-4", children: [
|
|
46434
|
+
/* @__PURE__ */ jsxs(Avatar, { className: "size-10 shrink-0 rounded-md bg-card shadow-sm lg:size-12", children: [
|
|
46435
|
+
/* @__PURE__ */ jsx(AvatarImage, { src: avatarSrc, alt: authorName }),
|
|
46436
|
+
/* @__PURE__ */ jsx(AvatarFallback, { className: "rounded-md bg-card text-card-foreground text-sm", children: getInitials(authorName) })
|
|
46437
|
+
] }),
|
|
46438
|
+
/* @__PURE__ */ jsxs("div", { className: cn("min-w-0", authorClassName), children: [
|
|
46439
|
+
testimonial.author && (typeof testimonial.author === "string" ? /* @__PURE__ */ jsx("p", { className: "truncate font-medium", children: testimonial.author }) : testimonial.author),
|
|
46440
|
+
testimonial.role && (typeof testimonial.role === "string" ? /* @__PURE__ */ jsx("p", { className: "truncate text-sm text-muted-foreground", children: testimonial.role }) : testimonial.role)
|
|
46441
|
+
] })
|
|
46442
|
+
] }),
|
|
46443
|
+
testimonial.rating != null && /* @__PURE__ */ jsx(StarRating, { rating: testimonial.rating }),
|
|
46444
|
+
testimonial.quote && (typeof testimonial.quote === "string" ? /* @__PURE__ */ jsxs(
|
|
46445
|
+
"p",
|
|
46446
|
+
{
|
|
46447
|
+
className: cn(
|
|
46448
|
+
"text-sm leading-relaxed text-muted-foreground",
|
|
46449
|
+
quoteClassName
|
|
46450
|
+
),
|
|
46451
|
+
children: [
|
|
46452
|
+
"\u201C",
|
|
46453
|
+
testimonial.quote,
|
|
46454
|
+
"\u201D"
|
|
46455
|
+
]
|
|
46456
|
+
}
|
|
46457
|
+
) : /* @__PURE__ */ jsx("div", { className: cn("text-sm", quoteClassName), children: testimonial.quote }))
|
|
46458
|
+
]
|
|
46459
|
+
},
|
|
46460
|
+
index
|
|
46461
|
+
);
|
|
46462
|
+
})
|
|
46463
|
+
]
|
|
46245
46464
|
}
|
|
46246
46465
|
);
|
|
46247
|
-
}, [
|
|
46248
|
-
|
|
46466
|
+
}, [
|
|
46467
|
+
testimonialsSlot,
|
|
46468
|
+
gridClassName,
|
|
46469
|
+
testimonials,
|
|
46470
|
+
itemClassName,
|
|
46471
|
+
quoteClassName,
|
|
46472
|
+
authorClassName,
|
|
46473
|
+
getAuthorName,
|
|
46474
|
+
getAvatarSrc,
|
|
46475
|
+
getInitials
|
|
46476
|
+
]);
|
|
46477
|
+
return /* @__PURE__ */ jsx(
|
|
46249
46478
|
Section,
|
|
46250
46479
|
{
|
|
46251
46480
|
background,
|
|
46252
46481
|
spacing,
|
|
46253
46482
|
pattern,
|
|
46254
46483
|
patternOpacity,
|
|
46255
|
-
className,
|
|
46256
|
-
|
|
46257
|
-
|
|
46484
|
+
className: cn("relative flex items-center justify-center", className),
|
|
46485
|
+
containerClassName,
|
|
46486
|
+
children: /* @__PURE__ */ jsxs("div", { className: "relative", children: [
|
|
46487
|
+
/* @__PURE__ */ jsx(
|
|
46258
46488
|
"div",
|
|
46259
46489
|
{
|
|
46260
|
-
className: cn(
|
|
46261
|
-
|
|
46490
|
+
className: cn(
|
|
46491
|
+
"border-x border-t border-dashed px-4 py-6 md:py-16 md:px-16",
|
|
46492
|
+
headerClassName
|
|
46493
|
+
),
|
|
46494
|
+
children: /* @__PURE__ */ jsxs("div", { className: "mx-auto max-w-3xl", children: [
|
|
46262
46495
|
heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
|
|
46263
46496
|
"h2",
|
|
46264
46497
|
{
|
|
46265
46498
|
className: cn(
|
|
46266
|
-
"text-3xl font-semibold tracking-tight md:text-4xl",
|
|
46499
|
+
"text-center text-3xl font-semibold tracking-tight md:text-4xl",
|
|
46267
46500
|
headingClassName
|
|
46268
46501
|
),
|
|
46269
46502
|
children: heading
|
|
@@ -46273,17 +46506,17 @@ function TestimonialsMiniDividers({
|
|
|
46273
46506
|
"p",
|
|
46274
46507
|
{
|
|
46275
46508
|
className: cn(
|
|
46276
|
-
"mt-4 text-lg text-
|
|
46509
|
+
"mx-auto mt-4 max-w-2xl text-center text-lg text-balance",
|
|
46277
46510
|
descriptionClassName
|
|
46278
46511
|
),
|
|
46279
46512
|
children: description
|
|
46280
46513
|
}
|
|
46281
|
-
) : /* @__PURE__ */ jsx("div", { className:
|
|
46282
|
-
]
|
|
46514
|
+
) : /* @__PURE__ */ jsx("div", { className: descriptionClassName, children: description }))
|
|
46515
|
+
] })
|
|
46283
46516
|
}
|
|
46284
46517
|
),
|
|
46285
46518
|
renderedTestimonials
|
|
46286
|
-
]
|
|
46519
|
+
] })
|
|
46287
46520
|
}
|
|
46288
46521
|
);
|
|
46289
46522
|
}
|
|
@@ -46303,18 +46536,25 @@ function TestimonialsLogoCards({
|
|
|
46303
46536
|
quoteClassName,
|
|
46304
46537
|
authorClassName,
|
|
46305
46538
|
background,
|
|
46306
|
-
spacing,
|
|
46539
|
+
spacing = "lg",
|
|
46540
|
+
containerClassName = "px-6 sm:px-6 md:px-8 lg:px-8",
|
|
46307
46541
|
pattern,
|
|
46308
46542
|
patternOpacity,
|
|
46309
46543
|
optixFlowConfig
|
|
46310
46544
|
}) {
|
|
46311
|
-
const getAuthorName = useCallback(
|
|
46312
|
-
|
|
46313
|
-
|
|
46314
|
-
|
|
46315
|
-
|
|
46316
|
-
|
|
46317
|
-
|
|
46545
|
+
const getAuthorName = useCallback(
|
|
46546
|
+
(testimonial) => {
|
|
46547
|
+
if (typeof testimonial.author === "string") return testimonial.author;
|
|
46548
|
+
return "";
|
|
46549
|
+
},
|
|
46550
|
+
[]
|
|
46551
|
+
);
|
|
46552
|
+
const getAvatarSrc = useCallback(
|
|
46553
|
+
(testimonial) => {
|
|
46554
|
+
return testimonial.avatarSrc || testimonial.avatar?.src;
|
|
46555
|
+
},
|
|
46556
|
+
[]
|
|
46557
|
+
);
|
|
46318
46558
|
const getInitials = useCallback((name) => {
|
|
46319
46559
|
return name.split(" ").map((n) => n[0]).join("");
|
|
46320
46560
|
}, []);
|
|
@@ -46345,7 +46585,10 @@ function TestimonialsLogoCards({
|
|
|
46345
46585
|
{
|
|
46346
46586
|
src: testimonial.companyLogo,
|
|
46347
46587
|
alt: testimonial.companyLogoAlt || "Company logo",
|
|
46348
|
-
className:
|
|
46588
|
+
className: cn(
|
|
46589
|
+
index === 0 ? "h-10" : "h-5",
|
|
46590
|
+
"w-auto object-contain"
|
|
46591
|
+
),
|
|
46349
46592
|
optixFlowConfig
|
|
46350
46593
|
}
|
|
46351
46594
|
) }),
|
|
@@ -46362,20 +46605,29 @@ function TestimonialsLogoCards({
|
|
|
46362
46605
|
{
|
|
46363
46606
|
className: cn(
|
|
46364
46607
|
"leading-relaxed",
|
|
46365
|
-
index === 0 ? "text-xl font-
|
|
46608
|
+
index === 0 ? "text-lg md:text-xl font-light" : "text-sm md:text-base",
|
|
46366
46609
|
quoteClassName
|
|
46367
46610
|
),
|
|
46368
46611
|
children: testimonial.quote
|
|
46369
46612
|
}
|
|
46370
|
-
) :
|
|
46613
|
+
) : testimonial.quote),
|
|
46371
46614
|
/* @__PURE__ */ jsxs("div", { className: cn("flex items-center gap-3", authorClassName), children: [
|
|
46372
|
-
/* @__PURE__ */ jsxs(
|
|
46373
|
-
|
|
46374
|
-
|
|
46375
|
-
|
|
46615
|
+
/* @__PURE__ */ jsxs(
|
|
46616
|
+
Avatar,
|
|
46617
|
+
{
|
|
46618
|
+
className: cn(
|
|
46619
|
+
index === 0 ? "size-12" : "size-10",
|
|
46620
|
+
"ring-4 ring-primary"
|
|
46621
|
+
),
|
|
46622
|
+
children: [
|
|
46623
|
+
/* @__PURE__ */ jsx(AvatarImage, { src: avatarSrc, alt: authorName }),
|
|
46624
|
+
/* @__PURE__ */ jsx(AvatarFallback, { children: getInitials(authorName) })
|
|
46625
|
+
]
|
|
46626
|
+
}
|
|
46627
|
+
),
|
|
46376
46628
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
46377
|
-
testimonial.author && (typeof testimonial.author === "string" ? /* @__PURE__ */ jsx("cite", { className: "text-sm font-medium
|
|
46378
|
-
testimonial.role && (typeof testimonial.role === "string" ? /* @__PURE__ */ jsx("p", { className: "text-xs text-
|
|
46629
|
+
testimonial.author && (typeof testimonial.author === "string" ? /* @__PURE__ */ jsx("cite", { className: "text-sm md:text-base font-medium", children: testimonial.author }) : testimonial.author),
|
|
46630
|
+
testimonial.role && (typeof testimonial.role === "string" ? /* @__PURE__ */ jsx("p", { className: "text-xs md:text-sm", children: testimonial.role }) : testimonial.role)
|
|
46379
46631
|
] })
|
|
46380
46632
|
] })
|
|
46381
46633
|
]
|
|
@@ -46388,7 +46640,20 @@ function TestimonialsLogoCards({
|
|
|
46388
46640
|
})
|
|
46389
46641
|
}
|
|
46390
46642
|
);
|
|
46391
|
-
}, [
|
|
46643
|
+
}, [
|
|
46644
|
+
testimonialsSlot,
|
|
46645
|
+
gridClassName,
|
|
46646
|
+
testimonials,
|
|
46647
|
+
cardClassName,
|
|
46648
|
+
cardHeaderClassName,
|
|
46649
|
+
optixFlowConfig,
|
|
46650
|
+
cardContentClassName,
|
|
46651
|
+
quoteClassName,
|
|
46652
|
+
authorClassName,
|
|
46653
|
+
getAuthorName,
|
|
46654
|
+
getAvatarSrc,
|
|
46655
|
+
getInitials
|
|
46656
|
+
]);
|
|
46392
46657
|
return /* @__PURE__ */ jsxs(
|
|
46393
46658
|
Section,
|
|
46394
46659
|
{
|
|
@@ -46397,6 +46662,7 @@ function TestimonialsLogoCards({
|
|
|
46397
46662
|
pattern,
|
|
46398
46663
|
patternOpacity,
|
|
46399
46664
|
className,
|
|
46665
|
+
containerClassName,
|
|
46400
46666
|
children: [
|
|
46401
46667
|
/* @__PURE__ */ jsxs(
|
|
46402
46668
|
"div",
|
|
@@ -46407,22 +46673,19 @@ function TestimonialsLogoCards({
|
|
|
46407
46673
|
"h2",
|
|
46408
46674
|
{
|
|
46409
46675
|
className: cn(
|
|
46410
|
-
"text-3xl font-semibold tracking-tight md:text-4xl",
|
|
46676
|
+
"text-3xl font-semibold tracking-tight md:text-4xl text-balance",
|
|
46411
46677
|
headingClassName
|
|
46412
46678
|
),
|
|
46413
46679
|
children: heading
|
|
46414
46680
|
}
|
|
46415
|
-
) :
|
|
46681
|
+
) : heading),
|
|
46416
46682
|
description && (typeof description === "string" ? /* @__PURE__ */ jsx(
|
|
46417
46683
|
"p",
|
|
46418
46684
|
{
|
|
46419
|
-
className: cn(
|
|
46420
|
-
"mt-4 text-lg text-muted-foreground",
|
|
46421
|
-
descriptionClassName
|
|
46422
|
-
),
|
|
46685
|
+
className: cn("mt-4 text-lg text-balance", descriptionClassName),
|
|
46423
46686
|
children: description
|
|
46424
46687
|
}
|
|
46425
|
-
) :
|
|
46688
|
+
) : description)
|
|
46426
46689
|
]
|
|
46427
46690
|
}
|
|
46428
46691
|
),
|
|
@@ -46892,7 +47155,7 @@ function TestimonialsScrollingColumns({
|
|
|
46892
47155
|
motion.div,
|
|
46893
47156
|
{
|
|
46894
47157
|
className: cn(
|
|
46895
|
-
"relative overflow-hidden rounded-
|
|
47158
|
+
"relative overflow-hidden rounded-2xl shadow-sm",
|
|
46896
47159
|
cardClassName
|
|
46897
47160
|
),
|
|
46898
47161
|
variants: itemVariants2,
|
|
@@ -46907,35 +47170,40 @@ function TestimonialsScrollingColumns({
|
|
|
46907
47170
|
optixFlowConfig
|
|
46908
47171
|
}
|
|
46909
47172
|
),
|
|
46910
|
-
/* @__PURE__ */ jsx(
|
|
47173
|
+
/* @__PURE__ */ jsx(GradientOverlay, {})
|
|
46911
47174
|
] }),
|
|
46912
|
-
/* @__PURE__ */ jsxs("div", { className: "absolute bottom-0 left-0 right-0 p-6 text-left
|
|
46913
|
-
/* @__PURE__ */ jsx(
|
|
47175
|
+
/* @__PURE__ */ jsxs("div", { className: "absolute bottom-0 left-0 right-0 p-6 text-left", children: [
|
|
47176
|
+
testimonial?.logoSrc ? /* @__PURE__ */ jsx(
|
|
47177
|
+
Img,
|
|
47178
|
+
{
|
|
47179
|
+
src: testimonial.logoSrc,
|
|
47180
|
+
alt: typeof testimonial.company === "string" ? `${testimonial.company} logo` : typeof testimonial.author === "string" ? `${testimonial.author} company logo` : "Company logo",
|
|
47181
|
+
className: cn(
|
|
47182
|
+
"flex justify-start items-start mb-6 max-h-10 max-w-32 object-contain md:max-h-10 md:max-w-48"
|
|
47183
|
+
),
|
|
47184
|
+
optixFlowConfig
|
|
47185
|
+
}
|
|
47186
|
+
) : /* @__PURE__ */ jsx(
|
|
46914
47187
|
DynamicIcon,
|
|
46915
47188
|
{
|
|
46916
|
-
name: "
|
|
46917
|
-
size:
|
|
46918
|
-
className: "
|
|
47189
|
+
name: "mdi/comment-quote-outline",
|
|
47190
|
+
size: 42,
|
|
47191
|
+
className: cn("opacity-50")
|
|
46919
47192
|
}
|
|
46920
47193
|
),
|
|
46921
47194
|
testimonial.quote && (typeof testimonial.quote === "string" ? /* @__PURE__ */ jsx(
|
|
46922
47195
|
"blockquote",
|
|
46923
47196
|
{
|
|
46924
47197
|
className: cn(
|
|
46925
|
-
"text-base font-
|
|
47198
|
+
"text-base font-base leading-relaxed",
|
|
46926
47199
|
quoteClassName
|
|
46927
47200
|
),
|
|
46928
47201
|
children: testimonial.quote
|
|
46929
47202
|
}
|
|
46930
|
-
) :
|
|
46931
|
-
/* @__PURE__ */ jsx("figcaption", { className: cn("mt-4", authorClassName), children: /* @__PURE__ */ jsxs("
|
|
46932
|
-
"
|
|
46933
|
-
" ",
|
|
46934
|
-
testimonial.author && (typeof testimonial.author === "string" ? testimonial.author : null),
|
|
46935
|
-
testimonial.role && (typeof testimonial.role === "string" ? /* @__PURE__ */ jsxs("span", { className: "ml-1 text-background/60", children: [
|
|
46936
|
-
", ",
|
|
46937
|
-
testimonial.role
|
|
46938
|
-
] }) : null)
|
|
47203
|
+
) : testimonial.quote),
|
|
47204
|
+
/* @__PURE__ */ jsx("figcaption", { className: cn("mt-4", authorClassName), children: /* @__PURE__ */ jsxs("div", { className: "space-y-1", children: [
|
|
47205
|
+
testimonial.author && (typeof testimonial.author === "string" ? /* @__PURE__ */ jsx("div", { className: "uppercase text-base font-semibold", children: testimonial.author }) : null),
|
|
47206
|
+
testimonial.role && (typeof testimonial.role === "string" ? /* @__PURE__ */ jsx("div", { className: "text-sm font-thin", children: testimonial.role }) : null)
|
|
46939
47207
|
] }) })
|
|
46940
47208
|
] })
|
|
46941
47209
|
]
|
|
@@ -46968,19 +47236,32 @@ function TestimonialsScrollingColumns({
|
|
|
46968
47236
|
/* @__PURE__ */ jsxs(
|
|
46969
47237
|
"div",
|
|
46970
47238
|
{
|
|
46971
|
-
className: cn(
|
|
47239
|
+
className: cn(
|
|
47240
|
+
"mx-auto mb-12 max-w-full md:max-w-2xl space-y-4 text-center",
|
|
47241
|
+
headerClassName
|
|
47242
|
+
),
|
|
46972
47243
|
children: [
|
|
46973
47244
|
heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
|
|
46974
47245
|
"h2",
|
|
46975
47246
|
{
|
|
46976
47247
|
className: cn(
|
|
46977
|
-
"text-
|
|
47248
|
+
"text-pretty text-3xl md:text-4xl lg:text-6xl",
|
|
47249
|
+
"font-semibold tracking-tight",
|
|
46978
47250
|
headingClassName
|
|
46979
47251
|
),
|
|
46980
47252
|
children: heading
|
|
46981
47253
|
}
|
|
46982
|
-
) :
|
|
46983
|
-
description && (typeof description === "string" ? /* @__PURE__ */ jsx(
|
|
47254
|
+
) : heading),
|
|
47255
|
+
description && (typeof description === "string" ? /* @__PURE__ */ jsx(
|
|
47256
|
+
"p",
|
|
47257
|
+
{
|
|
47258
|
+
className: cn(
|
|
47259
|
+
"text-base md:text-lg text-balance",
|
|
47260
|
+
descriptionClassName
|
|
47261
|
+
),
|
|
47262
|
+
children: description
|
|
47263
|
+
}
|
|
47264
|
+
) : description)
|
|
46984
47265
|
]
|
|
46985
47266
|
}
|
|
46986
47267
|
),
|
|
@@ -47000,7 +47281,8 @@ function TestimonialsMinimalNumbered({
|
|
|
47000
47281
|
authorClassName,
|
|
47001
47282
|
navigationClassName,
|
|
47002
47283
|
background,
|
|
47003
|
-
spacing,
|
|
47284
|
+
spacing = "py-8 md:py-12",
|
|
47285
|
+
containerClassName = "w-full px-6 sm:px-6 md:px-8 lg:px-0 max-w-full md:max-w-lg min-h-70dvh h-70dvh flex flex-col items-center justify-center",
|
|
47004
47286
|
pattern,
|
|
47005
47287
|
patternOpacity
|
|
47006
47288
|
}) {
|
|
@@ -47053,19 +47335,19 @@ function TestimonialsMinimalNumbered({
|
|
|
47053
47335
|
if (!current) return null;
|
|
47054
47336
|
const authorName = getAuthorName(current);
|
|
47055
47337
|
const avatarSrc = getAvatarSrc(current);
|
|
47056
|
-
return /* @__PURE__ */ jsxs("div", { className: cn("flex items-start gap-8", contentClassName), children: [
|
|
47338
|
+
return /* @__PURE__ */ jsxs("div", { className: cn("flex items-start gap-4 md:gap-8", contentClassName), children: [
|
|
47057
47339
|
/* @__PURE__ */ jsx(
|
|
47058
47340
|
"span",
|
|
47059
47341
|
{
|
|
47060
47342
|
className: cn(
|
|
47061
|
-
"text-8xl font-light leading-none select-none transition-all duration-500
|
|
47343
|
+
"text-4xl md:text-8xl font-light leading-none select-none transition-all duration-500",
|
|
47062
47344
|
numberClassName
|
|
47063
47345
|
),
|
|
47064
47346
|
style: { fontFeatureSettings: '"tnum"' },
|
|
47065
47347
|
children: String(active + 1).padStart(2, "0")
|
|
47066
47348
|
}
|
|
47067
47349
|
),
|
|
47068
|
-
/* @__PURE__ */ jsxs("div", { className: "flex-1 pt-6", children: [
|
|
47350
|
+
/* @__PURE__ */ jsxs("div", { className: "flex-1 pt-0 md:pt-6", children: [
|
|
47069
47351
|
current.quote && (typeof current.quote === "string" ? /* @__PURE__ */ jsx(
|
|
47070
47352
|
"blockquote",
|
|
47071
47353
|
{
|
|
@@ -47136,6 +47418,7 @@ function TestimonialsMinimalNumbered({
|
|
|
47136
47418
|
pattern,
|
|
47137
47419
|
patternOpacity,
|
|
47138
47420
|
className,
|
|
47421
|
+
containerClassName,
|
|
47139
47422
|
children: /* @__PURE__ */ jsxs("div", { className: "max-w-4xl mx-auto", children: [
|
|
47140
47423
|
renderedTestimonial,
|
|
47141
47424
|
/* @__PURE__ */ jsxs(
|
|
@@ -47171,13 +47454,13 @@ function TestimonialsMinimalNumbered({
|
|
|
47171
47454
|
String(testimonials.length).padStart(2, "0")
|
|
47172
47455
|
] })
|
|
47173
47456
|
] }) }),
|
|
47174
|
-
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-
|
|
47457
|
+
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2", children: [
|
|
47175
47458
|
/* @__PURE__ */ jsx(
|
|
47176
47459
|
"button",
|
|
47177
47460
|
{
|
|
47178
47461
|
onClick: handlePrev,
|
|
47179
47462
|
className: "rounded-full p-2 transition-all duration-300 ",
|
|
47180
|
-
children: /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/chevron-left", size:
|
|
47463
|
+
children: /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/chevron-left", size: 24 })
|
|
47181
47464
|
}
|
|
47182
47465
|
),
|
|
47183
47466
|
/* @__PURE__ */ jsx(
|
|
@@ -47185,7 +47468,7 @@ function TestimonialsMinimalNumbered({
|
|
|
47185
47468
|
{
|
|
47186
47469
|
onClick: handleNext,
|
|
47187
47470
|
className: "rounded-full p-2 transition-all duration-300 ",
|
|
47188
|
-
children: /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/chevron-right", size:
|
|
47471
|
+
children: /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/chevron-right", size: 24 })
|
|
47189
47472
|
}
|
|
47190
47473
|
)
|
|
47191
47474
|
] })
|
|
@@ -47306,10 +47589,11 @@ function TestimonialsParallaxNumber({
|
|
|
47306
47589
|
motion.div,
|
|
47307
47590
|
{
|
|
47308
47591
|
className: cn(
|
|
47309
|
-
"
|
|
47592
|
+
"opacity-15",
|
|
47593
|
+
"pointer-events-none absolute -left-8 top-1/2 -translate-y-1/2 select-none text-[20rem] font-bold leading-none tracking-tighter",
|
|
47310
47594
|
numberClassName
|
|
47311
47595
|
),
|
|
47312
|
-
style: { x: numberX, y: numberY },
|
|
47596
|
+
style: { x: numberX, y: numberY, opacity: 0.1 },
|
|
47313
47597
|
children: /* @__PURE__ */ jsx(AnimatePresence, { mode: "wait", children: /* @__PURE__ */ jsx(
|
|
47314
47598
|
motion.span,
|
|
47315
47599
|
{
|
|
@@ -47318,14 +47602,14 @@ function TestimonialsParallaxNumber({
|
|
|
47318
47602
|
exit: { opacity: 0, scale: 1.1, filter: "blur(10px)" },
|
|
47319
47603
|
transition: { duration: 0.6, ease: [0.22, 1, 0.36, 1] },
|
|
47320
47604
|
className: "block",
|
|
47321
|
-
children: current.backgroundIcon ? /* @__PURE__ */ jsx(DynamicIcon, { name: current.backgroundIcon }) : current.backgroundLabel != null ? current.backgroundLabel : null
|
|
47605
|
+
children: current.backgroundIcon ? /* @__PURE__ */ jsx(DynamicIcon, { name: current.backgroundIcon, size: 320 }) : current.backgroundLabel != null ? current.backgroundLabel : null
|
|
47322
47606
|
},
|
|
47323
47607
|
activeIndex
|
|
47324
47608
|
) })
|
|
47325
47609
|
}
|
|
47326
47610
|
),
|
|
47327
47611
|
/* @__PURE__ */ jsxs("div", { className: "relative flex", children: [
|
|
47328
|
-
/* @__PURE__ */ jsxs("div", { className: "flex flex-col items-center justify-center border-r border-border/
|
|
47612
|
+
/* @__PURE__ */ jsxs("div", { className: "flex flex-col items-center justify-center border-r-0 md:border-r border-border/30 pr-4 md:pr-16", children: [
|
|
47329
47613
|
/* @__PURE__ */ jsxs(
|
|
47330
47614
|
motion.span,
|
|
47331
47615
|
{
|
|
@@ -47351,7 +47635,7 @@ function TestimonialsParallaxNumber({
|
|
|
47351
47635
|
}
|
|
47352
47636
|
) })
|
|
47353
47637
|
] }),
|
|
47354
|
-
/* @__PURE__ */ jsxs("div", { className: "flex-1 py-12 pl-16", children: [
|
|
47638
|
+
/* @__PURE__ */ jsxs("div", { className: "flex-1 py-6 md:py-12 pl-4 md:pl-16", children: [
|
|
47355
47639
|
/* @__PURE__ */ jsx(AnimatePresence, { mode: "wait", children: /* @__PURE__ */ jsx(
|
|
47356
47640
|
motion.div,
|
|
47357
47641
|
{
|
|
@@ -47360,7 +47644,7 @@ function TestimonialsParallaxNumber({
|
|
|
47360
47644
|
exit: { opacity: 0, x: 20 },
|
|
47361
47645
|
transition: { duration: 0.4 },
|
|
47362
47646
|
className: "mb-8",
|
|
47363
|
-
children: /* @__PURE__ */ jsx("span", { className: "inline-flex items-center gap-2 rounded-full border border-border px-
|
|
47647
|
+
children: /* @__PURE__ */ jsx("span", { className: "inline-flex items-center gap-2 rounded-full border border-border px-4 py-2 text-sm", children: companyName })
|
|
47364
47648
|
},
|
|
47365
47649
|
activeIndex
|
|
47366
47650
|
) }),
|
|
@@ -47368,7 +47652,8 @@ function TestimonialsParallaxNumber({
|
|
|
47368
47652
|
motion.blockquote,
|
|
47369
47653
|
{
|
|
47370
47654
|
className: cn(
|
|
47371
|
-
"text-
|
|
47655
|
+
"text-2xl md:text-4xl lg:text-5xl",
|
|
47656
|
+
"font-light leading-[1.15] tracking-tight",
|
|
47372
47657
|
quoteClassName
|
|
47373
47658
|
),
|
|
47374
47659
|
initial: "hidden",
|
|
@@ -47403,7 +47688,7 @@ function TestimonialsParallaxNumber({
|
|
|
47403
47688
|
},
|
|
47404
47689
|
activeIndex
|
|
47405
47690
|
) }) }),
|
|
47406
|
-
/* @__PURE__ */ jsxs("div", { className: "flex items-end justify-between", children: [
|
|
47691
|
+
/* @__PURE__ */ jsxs("div", { className: "flex items-start md:items-end justify-between", children: [
|
|
47407
47692
|
/* @__PURE__ */ jsx(AnimatePresence, { mode: "wait", children: /* @__PURE__ */ jsx(
|
|
47408
47693
|
motion.div,
|
|
47409
47694
|
{
|
|
@@ -47435,7 +47720,10 @@ function TestimonialsParallaxNumber({
|
|
|
47435
47720
|
/* @__PURE__ */ jsxs(
|
|
47436
47721
|
"div",
|
|
47437
47722
|
{
|
|
47438
|
-
className: cn(
|
|
47723
|
+
className: cn(
|
|
47724
|
+
"flex items-center gap-4 flex-col md:flex-row",
|
|
47725
|
+
navigationClassName
|
|
47726
|
+
),
|
|
47439
47727
|
children: [
|
|
47440
47728
|
/* @__PURE__ */ jsx(
|
|
47441
47729
|
motion.button,
|
|
@@ -47550,7 +47838,8 @@ function TestimonialsMasonryGrid({
|
|
|
47550
47838
|
quoteClassName,
|
|
47551
47839
|
authorClassName,
|
|
47552
47840
|
background,
|
|
47553
|
-
|
|
47841
|
+
containerClassName = "px-6 sm:px-6 md:px-8 lg:px-8",
|
|
47842
|
+
spacing = "xl",
|
|
47554
47843
|
pattern,
|
|
47555
47844
|
patternOpacity
|
|
47556
47845
|
}) {
|
|
@@ -47563,9 +47852,12 @@ function TestimonialsMasonryGrid({
|
|
|
47563
47852
|
if (typeof testimonial.author === "string") return testimonial.author;
|
|
47564
47853
|
return "";
|
|
47565
47854
|
}, []);
|
|
47566
|
-
const getAvatarSrc = useCallback(
|
|
47567
|
-
|
|
47568
|
-
|
|
47855
|
+
const getAvatarSrc = useCallback(
|
|
47856
|
+
(testimonial) => {
|
|
47857
|
+
return testimonial.avatarSrc || testimonial.avatar?.src;
|
|
47858
|
+
},
|
|
47859
|
+
[]
|
|
47860
|
+
);
|
|
47569
47861
|
const getInitials = useCallback((name) => {
|
|
47570
47862
|
return name.split(" ").map((n) => n[0]).join("");
|
|
47571
47863
|
}, []);
|
|
@@ -47582,42 +47874,60 @@ function TestimonialsMasonryGrid({
|
|
|
47582
47874
|
children: columns.map((column, columnIndex) => /* @__PURE__ */ jsx("div", { className: "space-y-4", children: column.map((testimonial, index) => {
|
|
47583
47875
|
const authorName = getAuthorName(testimonial);
|
|
47584
47876
|
const avatarSrc = getAvatarSrc(testimonial);
|
|
47585
|
-
return /* @__PURE__ */ jsx(
|
|
47586
|
-
|
|
47587
|
-
|
|
47588
|
-
|
|
47589
|
-
|
|
47590
|
-
|
|
47591
|
-
|
|
47592
|
-
|
|
47593
|
-
children: [
|
|
47877
|
+
return /* @__PURE__ */ jsx(
|
|
47878
|
+
"div",
|
|
47879
|
+
{
|
|
47880
|
+
className: cn(
|
|
47881
|
+
cardClassName,
|
|
47882
|
+
"bg-card text-card-foreground flex flex-col gap-6 rounded-xl border shadow-sm"
|
|
47883
|
+
),
|
|
47884
|
+
children: /* @__PURE__ */ jsxs("div", { className: "flex h-full flex-col justify-between p-6 gap-8", children: [
|
|
47885
|
+
testimonial.quote && (typeof testimonial.quote === "string" ? /* @__PURE__ */ jsxs("blockquote", { className: "text-sm leading-relaxed line-clamp-3", children: [
|
|
47594
47886
|
"\u201C",
|
|
47595
47887
|
testimonial.quote,
|
|
47596
47888
|
"\u201D"
|
|
47597
|
-
]
|
|
47598
|
-
|
|
47599
|
-
|
|
47600
|
-
/* @__PURE__ */ jsxs(
|
|
47601
|
-
"div",
|
|
47602
|
-
{
|
|
47603
|
-
className: cn("flex items-center gap-3", authorClassName),
|
|
47604
|
-
children: [
|
|
47605
|
-
/* @__PURE__ */ jsxs(Avatar, { className: "size-9", children: [
|
|
47889
|
+
] }) : /* @__PURE__ */ jsx("div", { className: "line-clamp-3", children: testimonial.quote })),
|
|
47890
|
+
/* @__PURE__ */ jsxs("div", { className: "mt-4 flex items-center gap-3", children: [
|
|
47891
|
+
/* @__PURE__ */ jsxs(Avatar, { className: "relative flex shrink-0 overflow-hidden rounded-full size-12 ring-4 ring-primary shadow-lg", children: [
|
|
47606
47892
|
/* @__PURE__ */ jsx(AvatarImage, { src: avatarSrc, alt: authorName }),
|
|
47607
47893
|
/* @__PURE__ */ jsx(AvatarFallback, { className: "text-xs", children: getInitials(authorName) })
|
|
47608
47894
|
] }),
|
|
47609
|
-
/* @__PURE__ */ jsxs("div", { children: [
|
|
47895
|
+
/* @__PURE__ */ jsxs("div", { className: "space-y-0 leading-tight", children: [
|
|
47610
47896
|
testimonial.author && (typeof testimonial.author === "string" ? /* @__PURE__ */ jsx("p", { className: "text-sm font-medium", children: testimonial.author }) : testimonial.author),
|
|
47611
|
-
testimonial.role && (typeof testimonial.role === "string" ? /* @__PURE__ */ jsx("p", { className: "text-xs
|
|
47897
|
+
testimonial.role && (typeof testimonial.role === "string" ? /* @__PURE__ */ jsx("p", { className: "text-xs", children: testimonial.role }) : testimonial.role),
|
|
47898
|
+
testimonial.linkConfig?.href && /* @__PURE__ */ jsx(
|
|
47899
|
+
Pressable,
|
|
47900
|
+
{
|
|
47901
|
+
href: testimonial.linkConfig.href,
|
|
47902
|
+
className: cn(
|
|
47903
|
+
"text-sm transition-all duration-300",
|
|
47904
|
+
"underline underline-offset-4",
|
|
47905
|
+
testimonial.linkConfig.className
|
|
47906
|
+
),
|
|
47907
|
+
children: testimonial.linkConfig.label
|
|
47908
|
+
}
|
|
47909
|
+
)
|
|
47612
47910
|
] })
|
|
47613
|
-
]
|
|
47614
|
-
}
|
|
47615
|
-
|
|
47616
|
-
|
|
47911
|
+
] })
|
|
47912
|
+
] })
|
|
47913
|
+
},
|
|
47914
|
+
index
|
|
47915
|
+
);
|
|
47617
47916
|
}) }, columnIndex))
|
|
47618
47917
|
}
|
|
47619
47918
|
);
|
|
47620
|
-
}, [
|
|
47919
|
+
}, [
|
|
47920
|
+
testimonialsSlot,
|
|
47921
|
+
gridClassName,
|
|
47922
|
+
columns,
|
|
47923
|
+
cardClassName,
|
|
47924
|
+
quoteClassName,
|
|
47925
|
+
authorClassName,
|
|
47926
|
+
testimonials,
|
|
47927
|
+
getAuthorName,
|
|
47928
|
+
getAvatarSrc,
|
|
47929
|
+
getInitials
|
|
47930
|
+
]);
|
|
47621
47931
|
return /* @__PURE__ */ jsxs(
|
|
47622
47932
|
Section,
|
|
47623
47933
|
{
|
|
@@ -47626,32 +47936,33 @@ function TestimonialsMasonryGrid({
|
|
|
47626
47936
|
pattern,
|
|
47627
47937
|
patternOpacity,
|
|
47628
47938
|
className,
|
|
47939
|
+
containerClassName,
|
|
47629
47940
|
children: [
|
|
47630
47941
|
/* @__PURE__ */ jsxs(
|
|
47631
47942
|
"div",
|
|
47632
47943
|
{
|
|
47633
|
-
className: cn(
|
|
47944
|
+
className: cn(
|
|
47945
|
+
"mx-auto mb-12 max-w-full md:max-w-2xl text-center",
|
|
47946
|
+
headerClassName
|
|
47947
|
+
),
|
|
47634
47948
|
children: [
|
|
47635
47949
|
heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
|
|
47636
47950
|
"h2",
|
|
47637
47951
|
{
|
|
47638
47952
|
className: cn(
|
|
47639
|
-
"text-3xl font-semibold tracking-tight md:text-4xl",
|
|
47953
|
+
"text-3xl font-semibold tracking-tight md:text-4xl lg:text-6xl text-balance",
|
|
47640
47954
|
headingClassName
|
|
47641
47955
|
),
|
|
47642
47956
|
children: heading
|
|
47643
47957
|
}
|
|
47644
|
-
) :
|
|
47958
|
+
) : heading),
|
|
47645
47959
|
description && (typeof description === "string" ? /* @__PURE__ */ jsx(
|
|
47646
47960
|
"p",
|
|
47647
47961
|
{
|
|
47648
|
-
className: cn(
|
|
47649
|
-
"mt-4 text-lg text-muted-foreground",
|
|
47650
|
-
descriptionClassName
|
|
47651
|
-
),
|
|
47962
|
+
className: cn("mt-4 text-lg text-balance", descriptionClassName),
|
|
47652
47963
|
children: description
|
|
47653
47964
|
}
|
|
47654
|
-
) :
|
|
47965
|
+
) : description)
|
|
47655
47966
|
]
|
|
47656
47967
|
}
|
|
47657
47968
|
),
|
|
@@ -47670,7 +47981,8 @@ function TestimonialsLargeQuote({
|
|
|
47670
47981
|
authorClassName,
|
|
47671
47982
|
avatarClassName,
|
|
47672
47983
|
background,
|
|
47673
|
-
|
|
47984
|
+
containerClassName = "px-6 sm:px-6 md:px-8 lg:px-8",
|
|
47985
|
+
spacing = "xl",
|
|
47674
47986
|
pattern,
|
|
47675
47987
|
patternOpacity
|
|
47676
47988
|
}) {
|
|
@@ -47689,49 +48001,78 @@ function TestimonialsLargeQuote({
|
|
|
47689
48001
|
if (!testimonial) return null;
|
|
47690
48002
|
const authorName = getAuthorName();
|
|
47691
48003
|
const avatarSrc = getAvatarSrc();
|
|
47692
|
-
return /* @__PURE__ */ jsxs(
|
|
47693
|
-
|
|
47694
|
-
|
|
47695
|
-
|
|
47696
|
-
|
|
47697
|
-
|
|
47698
|
-
|
|
47699
|
-
|
|
47700
|
-
|
|
47701
|
-
|
|
47702
|
-
|
|
47703
|
-
|
|
47704
|
-
|
|
47705
|
-
|
|
47706
|
-
|
|
47707
|
-
),
|
|
47708
|
-
children: testimonial.quote
|
|
47709
|
-
}
|
|
47710
|
-
) : /* @__PURE__ */ jsx("div", { className: quoteClassName, children: testimonial.quote })),
|
|
47711
|
-
/* @__PURE__ */ jsxs(
|
|
47712
|
-
"div",
|
|
47713
|
-
{
|
|
47714
|
-
className: cn(
|
|
47715
|
-
"mt-10 flex flex-col items-center gap-4",
|
|
47716
|
-
authorClassName
|
|
48004
|
+
return /* @__PURE__ */ jsxs(
|
|
48005
|
+
"div",
|
|
48006
|
+
{
|
|
48007
|
+
className: cn(
|
|
48008
|
+
"mx-auto max-full md:max-w-lg text-center",
|
|
48009
|
+
contentClassName
|
|
48010
|
+
),
|
|
48011
|
+
children: [
|
|
48012
|
+
/* @__PURE__ */ jsx(
|
|
48013
|
+
DynamicIcon,
|
|
48014
|
+
{
|
|
48015
|
+
name: "mdi/comment-quote-outline",
|
|
48016
|
+
size: 48,
|
|
48017
|
+
className: cn("mx-auto mb-8 ", quoteIconClassName)
|
|
48018
|
+
}
|
|
47717
48019
|
),
|
|
47718
|
-
|
|
47719
|
-
|
|
47720
|
-
|
|
47721
|
-
|
|
47722
|
-
|
|
47723
|
-
|
|
47724
|
-
|
|
47725
|
-
|
|
47726
|
-
|
|
47727
|
-
|
|
47728
|
-
|
|
47729
|
-
|
|
47730
|
-
|
|
47731
|
-
|
|
47732
|
-
|
|
47733
|
-
|
|
47734
|
-
|
|
48020
|
+
testimonial.quote && (typeof testimonial.quote === "string" ? /* @__PURE__ */ jsx(
|
|
48021
|
+
"blockquote",
|
|
48022
|
+
{
|
|
48023
|
+
className: cn(
|
|
48024
|
+
"text-2xl font-light leading-relaxed md:text-3xl lg:text-4xl text-balance",
|
|
48025
|
+
quoteClassName
|
|
48026
|
+
),
|
|
48027
|
+
children: testimonial.quote
|
|
48028
|
+
}
|
|
48029
|
+
) : /* @__PURE__ */ jsx("div", { className: quoteClassName, children: testimonial.quote })),
|
|
48030
|
+
/* @__PURE__ */ jsxs(
|
|
48031
|
+
"div",
|
|
48032
|
+
{
|
|
48033
|
+
className: cn(
|
|
48034
|
+
"mt-10 md:mt-16 flex flex-col items-center gap-4 md:gap-8",
|
|
48035
|
+
authorClassName
|
|
48036
|
+
),
|
|
48037
|
+
children: [
|
|
48038
|
+
/* @__PURE__ */ jsxs(
|
|
48039
|
+
Avatar,
|
|
48040
|
+
{
|
|
48041
|
+
className: cn(
|
|
48042
|
+
"relative flex shrink-0 overflow-hidden rounded-full size-16 ring-4 ring-primary shadow-lg",
|
|
48043
|
+
avatarClassName
|
|
48044
|
+
),
|
|
48045
|
+
children: [
|
|
48046
|
+
/* @__PURE__ */ jsx(AvatarImage, { src: avatarSrc, alt: authorName }),
|
|
48047
|
+
/* @__PURE__ */ jsx(AvatarFallback, { className: "text-lg", children: getInitials(authorName) })
|
|
48048
|
+
]
|
|
48049
|
+
}
|
|
48050
|
+
),
|
|
48051
|
+
/* @__PURE__ */ jsxs("div", { className: "flex flex-col items-center gap-4", children: [
|
|
48052
|
+
testimonial.author && (typeof testimonial.author === "string" ? /* @__PURE__ */ jsx("p", { className: "text-lg font-semibold", children: testimonial.author }) : testimonial.author),
|
|
48053
|
+
(testimonial.role || testimonial.company) && /* @__PURE__ */ jsxs("div", { className: "flex flex-col items-center gap-2", children: [
|
|
48054
|
+
/* @__PURE__ */ jsx("div", { className: "text-base font-normal opacity-75", children: testimonial.role && (typeof testimonial.role === "string" ? testimonial.role : testimonial.role) }),
|
|
48055
|
+
/* @__PURE__ */ jsx("div", { className: "text-sm uppercase font-semibold opacity-75", children: testimonial.company && (typeof testimonial.company === "string" ? ` at ${testimonial.company}` : testimonial.company) })
|
|
48056
|
+
] })
|
|
48057
|
+
] })
|
|
48058
|
+
]
|
|
48059
|
+
}
|
|
48060
|
+
)
|
|
48061
|
+
]
|
|
48062
|
+
}
|
|
48063
|
+
);
|
|
48064
|
+
}, [
|
|
48065
|
+
testimonialSlot,
|
|
48066
|
+
contentClassName,
|
|
48067
|
+
quoteIconClassName,
|
|
48068
|
+
testimonial,
|
|
48069
|
+
quoteClassName,
|
|
48070
|
+
authorClassName,
|
|
48071
|
+
avatarClassName,
|
|
48072
|
+
getAuthorName,
|
|
48073
|
+
getAvatarSrc,
|
|
48074
|
+
getInitials
|
|
48075
|
+
]);
|
|
47735
48076
|
return /* @__PURE__ */ jsx(
|
|
47736
48077
|
Section,
|
|
47737
48078
|
{
|
|
@@ -47740,6 +48081,7 @@ function TestimonialsLargeQuote({
|
|
|
47740
48081
|
pattern,
|
|
47741
48082
|
patternOpacity,
|
|
47742
48083
|
className,
|
|
48084
|
+
containerClassName,
|
|
47743
48085
|
children: renderedTestimonial
|
|
47744
48086
|
}
|
|
47745
48087
|
);
|
|
@@ -52038,7 +52380,8 @@ function HeroVideoBackgroundDark({
|
|
|
52038
52380
|
videoSrc,
|
|
52039
52381
|
videoSlot,
|
|
52040
52382
|
background,
|
|
52041
|
-
videoBrightness
|
|
52383
|
+
videoBrightness,
|
|
52384
|
+
videoOverlayIntensity = "high",
|
|
52042
52385
|
spacing = "py-0 md:py-0",
|
|
52043
52386
|
pattern,
|
|
52044
52387
|
patternOpacity,
|
|
@@ -52050,21 +52393,21 @@ function HeroVideoBackgroundDark({
|
|
|
52050
52393
|
}) {
|
|
52051
52394
|
const renderVideo = useMemo(() => {
|
|
52052
52395
|
if (videoSlot) return videoSlot;
|
|
52053
|
-
return /* @__PURE__ */
|
|
52054
|
-
|
|
52055
|
-
|
|
52056
|
-
|
|
52057
|
-
|
|
52058
|
-
|
|
52059
|
-
|
|
52060
|
-
"absolute top-0 left-0 size-full object-cover",
|
|
52061
|
-
|
|
52062
|
-
|
|
52063
|
-
|
|
52064
|
-
|
|
52065
|
-
}
|
|
52066
|
-
);
|
|
52067
|
-
}, [videoSlot, videoSrc,
|
|
52396
|
+
return /* @__PURE__ */ jsxs(Fragment$1, { children: [
|
|
52397
|
+
/* @__PURE__ */ jsx(
|
|
52398
|
+
"video",
|
|
52399
|
+
{
|
|
52400
|
+
loop: true,
|
|
52401
|
+
playsInline: true,
|
|
52402
|
+
src: videoSrc,
|
|
52403
|
+
className: "absolute top-0 left-0 size-full object-cover",
|
|
52404
|
+
autoPlay: true,
|
|
52405
|
+
muted: true
|
|
52406
|
+
}
|
|
52407
|
+
),
|
|
52408
|
+
/* @__PURE__ */ jsx(GradientOverlay, { intensity: videoOverlayIntensity })
|
|
52409
|
+
] });
|
|
52410
|
+
}, [videoSlot, videoSrc, videoOverlayIntensity]);
|
|
52068
52411
|
return /* @__PURE__ */ jsx(
|
|
52069
52412
|
Section,
|
|
52070
52413
|
{
|
|
@@ -115635,8 +115978,8 @@ var BLOCK_REGISTRY = {
|
|
|
115635
115978
|
},
|
|
115636
115979
|
"testimonials-centered-avatars": {
|
|
115637
115980
|
id: "testimonials-centered-avatars",
|
|
115638
|
-
name: "Testimonials Centered with
|
|
115639
|
-
description: "A
|
|
115981
|
+
name: "Testimonials Centered with Glassmorphism Card",
|
|
115982
|
+
description: "A modern testimonial section featuring a glassmorphism card with frosted glass effect as the primary focal point. Displays an overlapping avatar stack at the top, creating a community feel, with rotating testimonials including quote, author name, role, and navigation dots. The translucent card design creates visual depth and sophistication. Perfect for SaaS landing pages and premium marketing sites.",
|
|
115640
115983
|
semanticTags: [
|
|
115641
115984
|
"testimonials",
|
|
115642
115985
|
"centered",
|
|
@@ -115644,7 +115987,11 @@ var BLOCK_REGISTRY = {
|
|
|
115644
115987
|
"stack",
|
|
115645
115988
|
"community",
|
|
115646
115989
|
"social-proof",
|
|
115647
|
-
"
|
|
115990
|
+
"glassmorphism",
|
|
115991
|
+
"glass",
|
|
115992
|
+
"frosted",
|
|
115993
|
+
"modern",
|
|
115994
|
+
"premium",
|
|
115648
115995
|
"rotating"
|
|
115649
115996
|
],
|
|
115650
115997
|
category: "testimonials",
|