@opensite/ui 2.0.2 → 2.0.4
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/hero-ai-powered-carousel.cjs +152 -77
- package/dist/hero-ai-powered-carousel.d.cts +5 -13
- package/dist/hero-ai-powered-carousel.d.ts +5 -13
- package/dist/hero-ai-powered-carousel.js +152 -77
- package/dist/hero-announcement-badge.cjs +679 -665
- package/dist/hero-announcement-badge.d.cts +1 -1
- package/dist/hero-announcement-badge.d.ts +1 -1
- package/dist/hero-announcement-badge.js +689 -675
- package/dist/hero-badge-shadow-overlay.cjs +79 -32
- package/dist/hero-badge-shadow-overlay.js +80 -33
- package/dist/hero-centered-image-grid.cjs +106 -95
- package/dist/hero-centered-image-grid.d.cts +2 -14
- package/dist/hero-centered-image-grid.d.ts +2 -14
- package/dist/hero-centered-image-grid.js +106 -95
- package/dist/hero-community-survey-cta.cjs +149 -58
- package/dist/hero-community-survey-cta.d.cts +1 -1
- package/dist/hero-community-survey-cta.d.ts +1 -1
- package/dist/hero-community-survey-cta.js +149 -58
- package/dist/hero-design-carousel-portfolio.cjs +158 -66
- package/dist/hero-design-carousel-portfolio.d.cts +7 -11
- package/dist/hero-design-carousel-portfolio.d.ts +7 -11
- package/dist/hero-design-carousel-portfolio.js +158 -66
- package/dist/hero-event-registration.cjs +765 -718
- package/dist/hero-event-registration.js +761 -714
- package/dist/hero-fullscreen-background-image.cjs +746 -649
- package/dist/hero-fullscreen-background-image.d.cts +12 -4
- package/dist/hero-fullscreen-background-image.d.ts +12 -4
- package/dist/hero-fullscreen-background-image.js +746 -649
- package/dist/hero-fullscreen-logo-cta.cjs +89 -31
- package/dist/hero-fullscreen-logo-cta.js +89 -31
- package/dist/hero-gradient-avatars-rating.cjs +847 -816
- package/dist/hero-gradient-avatars-rating.d.cts +1 -13
- package/dist/hero-gradient-avatars-rating.d.ts +1 -13
- package/dist/hero-gradient-avatars-rating.js +844 -813
- package/dist/hero-gradient-client-focused.cjs +690 -629
- package/dist/hero-gradient-client-focused.d.cts +1 -1
- package/dist/hero-gradient-client-focused.d.ts +1 -1
- package/dist/hero-gradient-client-focused.js +689 -628
- package/dist/hero-grid-pattern-efficiency.cjs +59 -47
- package/dist/hero-grid-pattern-efficiency.d.cts +1 -8
- package/dist/hero-grid-pattern-efficiency.d.ts +1 -8
- package/dist/hero-grid-pattern-efficiency.js +59 -47
- package/dist/hero-logo-centered-screenshot.cjs +1 -1
- package/dist/hero-logo-centered-screenshot.js +1 -1
- package/dist/hero-marketplace-scattered-images.cjs +2 -6
- package/dist/hero-marketplace-scattered-images.d.cts +1 -4
- package/dist/hero-marketplace-scattered-images.d.ts +1 -4
- package/dist/hero-marketplace-scattered-images.js +2 -6
- package/dist/hero-pattern-logo-tech-stack.cjs +1 -1
- package/dist/hero-pattern-logo-tech-stack.js +1 -1
- package/dist/hero-platform-features-grid.cjs +5 -5
- package/dist/hero-platform-features-grid.js +5 -5
- package/dist/hero-simple-centered-image.cjs +140 -44
- package/dist/hero-simple-centered-image.d.cts +1 -1
- package/dist/hero-simple-centered-image.d.ts +1 -1
- package/dist/hero-simple-centered-image.js +140 -44
- package/dist/hero-spiral-pattern-cards.cjs +857 -809
- package/dist/hero-spiral-pattern-cards.d.cts +5 -1
- package/dist/hero-spiral-pattern-cards.d.ts +5 -1
- package/dist/hero-spiral-pattern-cards.js +856 -808
- package/dist/hero-split-geometric-shapes.cjs +754 -723
- package/dist/hero-split-geometric-shapes.d.cts +5 -1
- package/dist/hero-split-geometric-shapes.d.ts +5 -1
- package/dist/hero-split-geometric-shapes.js +748 -717
- package/dist/hero-task-timer-animated.cjs +698 -650
- package/dist/hero-task-timer-animated.d.cts +5 -1
- package/dist/hero-task-timer-animated.d.ts +5 -1
- package/dist/hero-task-timer-animated.js +697 -649
- package/dist/hero-ui-library-showcase.cjs +734 -719
- package/dist/hero-ui-library-showcase.d.cts +5 -1
- package/dist/hero-ui-library-showcase.d.ts +5 -1
- package/dist/hero-ui-library-showcase.js +732 -717
- package/dist/registry.cjs +1035 -788
- package/dist/registry.js +1035 -788
- package/package.json +1 -1
|
@@ -11,32 +11,6 @@ import { Img } from '@page-speed/img';
|
|
|
11
11
|
function cn(...inputs) {
|
|
12
12
|
return twMerge(clsx(inputs));
|
|
13
13
|
}
|
|
14
|
-
function getTextColor(parentBg, variant = "default", options) {
|
|
15
|
-
const isDark = parentBg === "dark" || parentBg === "secondary" || parentBg === "primary";
|
|
16
|
-
if (isDark) {
|
|
17
|
-
switch (variant) {
|
|
18
|
-
case "default":
|
|
19
|
-
return "text-foreground";
|
|
20
|
-
case "muted":
|
|
21
|
-
return "text-foreground/80";
|
|
22
|
-
case "subtle":
|
|
23
|
-
return "text-foreground/60";
|
|
24
|
-
case "accent":
|
|
25
|
-
return "text-accent-foreground";
|
|
26
|
-
}
|
|
27
|
-
} else {
|
|
28
|
-
switch (variant) {
|
|
29
|
-
case "default":
|
|
30
|
-
return "text-foreground";
|
|
31
|
-
case "muted":
|
|
32
|
-
return "text-muted-foreground";
|
|
33
|
-
case "subtle":
|
|
34
|
-
return "text-muted-foreground/70";
|
|
35
|
-
case "accent":
|
|
36
|
-
return "text-primary";
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
14
|
function normalizePhoneNumber(input) {
|
|
41
15
|
const trimmed = input.trim();
|
|
42
16
|
if (trimmed.toLowerCase().startsWith("tel:")) {
|
|
@@ -838,27 +812,31 @@ function HeroCenteredImageGrid({
|
|
|
838
812
|
gridImages,
|
|
839
813
|
gridImagesSlot,
|
|
840
814
|
imageOverlayAction,
|
|
841
|
-
logos,
|
|
842
|
-
logosSlot,
|
|
843
815
|
background,
|
|
844
|
-
spacing,
|
|
845
816
|
pattern,
|
|
846
817
|
patternOpacity,
|
|
847
818
|
className,
|
|
848
|
-
containerClassName,
|
|
819
|
+
containerClassName = "px-6 sm:px-6 md:px-8 lg:px-8",
|
|
820
|
+
spacing = "xl",
|
|
849
821
|
contentClassName,
|
|
850
822
|
headingClassName,
|
|
851
823
|
descriptionClassName,
|
|
852
824
|
actionsClassName,
|
|
853
825
|
imageGridClassName,
|
|
854
|
-
logosClassName,
|
|
855
826
|
optixFlowConfig
|
|
856
827
|
}) {
|
|
857
828
|
const renderActions = useMemo(() => {
|
|
858
829
|
if (actionsSlot) return actionsSlot;
|
|
859
830
|
if (!actions || actions.length === 0) return null;
|
|
860
831
|
return actions.map((action, index) => {
|
|
861
|
-
const {
|
|
832
|
+
const {
|
|
833
|
+
label,
|
|
834
|
+
icon,
|
|
835
|
+
iconAfter,
|
|
836
|
+
children,
|
|
837
|
+
className: actionClassName,
|
|
838
|
+
...pressableProps
|
|
839
|
+
} = action;
|
|
862
840
|
return /* @__PURE__ */ jsx(
|
|
863
841
|
Pressable,
|
|
864
842
|
{
|
|
@@ -877,38 +855,20 @@ function HeroCenteredImageGrid({
|
|
|
877
855
|
}, [actionsSlot, actions]);
|
|
878
856
|
const renderImageOverlayAction = useMemo(() => {
|
|
879
857
|
if (!imageOverlayAction) return null;
|
|
880
|
-
const {
|
|
881
|
-
|
|
882
|
-
|
|
883
|
-
|
|
884
|
-
|
|
885
|
-
|
|
886
|
-
|
|
887
|
-
|
|
888
|
-
|
|
889
|
-
|
|
890
|
-
|
|
891
|
-
|
|
892
|
-
|
|
893
|
-
);
|
|
858
|
+
const {
|
|
859
|
+
label,
|
|
860
|
+
icon,
|
|
861
|
+
iconAfter,
|
|
862
|
+
children,
|
|
863
|
+
className: actionClassName,
|
|
864
|
+
...pressableProps
|
|
865
|
+
} = imageOverlayAction;
|
|
866
|
+
return /* @__PURE__ */ jsx(Pressable, { asButton: true, className: actionClassName, ...pressableProps, children: children ?? /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
867
|
+
icon,
|
|
868
|
+
label,
|
|
869
|
+
iconAfter
|
|
870
|
+
] }) });
|
|
894
871
|
}, [imageOverlayAction]);
|
|
895
|
-
const renderLogos = useMemo(() => {
|
|
896
|
-
if (logosSlot) return logosSlot;
|
|
897
|
-
if (!logos || logos.length === 0) return null;
|
|
898
|
-
return logos.map((logo, index) => {
|
|
899
|
-
const src = typeof logo.src === "string" ? logo.src : logo.src.light;
|
|
900
|
-
typeof logo.src === "string" ? logo.src : logo.src.dark;
|
|
901
|
-
return /* @__PURE__ */ jsx(React.Fragment, { children: /* @__PURE__ */ jsx(
|
|
902
|
-
Img,
|
|
903
|
-
{
|
|
904
|
-
src,
|
|
905
|
-
alt: logo.alt,
|
|
906
|
-
className: cn(logo.className, "dark:invert"),
|
|
907
|
-
optixFlowConfig
|
|
908
|
-
}
|
|
909
|
-
) }, index);
|
|
910
|
-
});
|
|
911
|
-
}, [logosSlot, logos, optixFlowConfig]);
|
|
912
872
|
return /* @__PURE__ */ jsx(
|
|
913
873
|
Section,
|
|
914
874
|
{
|
|
@@ -916,39 +876,90 @@ function HeroCenteredImageGrid({
|
|
|
916
876
|
spacing,
|
|
917
877
|
pattern,
|
|
918
878
|
patternOpacity,
|
|
919
|
-
className
|
|
920
|
-
|
|
921
|
-
|
|
922
|
-
|
|
923
|
-
|
|
924
|
-
|
|
925
|
-
|
|
926
|
-
|
|
927
|
-
|
|
928
|
-
gridImagesSlot ? gridImagesSlot : /* @__PURE__ */ jsxs("div", { className: cn("mx-auto mt-20 grid max-w-7xl gap-px bg-border p-px md:grid-cols-5", imageGridClassName), children: [
|
|
929
|
-
gridImages?.[0] && /* @__PURE__ */ jsx(
|
|
930
|
-
Img,
|
|
931
|
-
{
|
|
932
|
-
src: gridImages[0].src,
|
|
933
|
-
alt: gridImages[0].alt,
|
|
934
|
-
className: cn("h-full max-h-[500px] w-full object-cover md:col-span-3 dark:invert", gridImages[0].className),
|
|
935
|
-
optixFlowConfig
|
|
936
|
-
}
|
|
937
|
-
),
|
|
938
|
-
gridImages?.[1] && /* @__PURE__ */ jsxs("div", { className: "relative md:col-span-2", children: [
|
|
939
|
-
/* @__PURE__ */ jsx(
|
|
940
|
-
Img,
|
|
941
|
-
{
|
|
942
|
-
src: gridImages[1].src,
|
|
943
|
-
alt: gridImages[1].alt,
|
|
944
|
-
className: cn("h-full max-h-[500px] w-full object-cover dark:invert", gridImages[1].className),
|
|
945
|
-
optixFlowConfig
|
|
946
|
-
}
|
|
879
|
+
className,
|
|
880
|
+
containerClassName,
|
|
881
|
+
children: /* @__PURE__ */ jsxs("div", { className: "relative", children: [
|
|
882
|
+
/* @__PURE__ */ jsx("div", { className: "mx-auto flex max-w-5xl flex-col items-center", children: /* @__PURE__ */ jsxs(
|
|
883
|
+
"div",
|
|
884
|
+
{
|
|
885
|
+
className: cn(
|
|
886
|
+
"z-10 flex flex-col items-center gap-8 text-center",
|
|
887
|
+
contentClassName
|
|
947
888
|
),
|
|
948
|
-
|
|
949
|
-
|
|
950
|
-
|
|
951
|
-
|
|
889
|
+
children: [
|
|
890
|
+
/* @__PURE__ */ jsxs("div", { className: "max-w-3xl", children: [
|
|
891
|
+
heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
|
|
892
|
+
"h1",
|
|
893
|
+
{
|
|
894
|
+
className: cn(
|
|
895
|
+
"mb-4 text-4xl font-semibold text-balance lg:text-6xl",
|
|
896
|
+
headingClassName
|
|
897
|
+
),
|
|
898
|
+
children: heading
|
|
899
|
+
}
|
|
900
|
+
) : /* @__PURE__ */ jsx("div", { className: headingClassName, children: heading })),
|
|
901
|
+
description && (typeof description === "string" ? /* @__PURE__ */ jsx(
|
|
902
|
+
"p",
|
|
903
|
+
{
|
|
904
|
+
className: cn(
|
|
905
|
+
"lg:text-xl text-balance",
|
|
906
|
+
descriptionClassName
|
|
907
|
+
),
|
|
908
|
+
children: description
|
|
909
|
+
}
|
|
910
|
+
) : /* @__PURE__ */ jsx("div", { className: descriptionClassName, children: description }))
|
|
911
|
+
] }),
|
|
912
|
+
(actionsSlot || actions && actions.length > 0) && /* @__PURE__ */ jsx(
|
|
913
|
+
"div",
|
|
914
|
+
{
|
|
915
|
+
className: cn(
|
|
916
|
+
"flex w-full flex-col justify-center gap-2 sm:flex-row",
|
|
917
|
+
actionsClassName
|
|
918
|
+
),
|
|
919
|
+
children: renderActions
|
|
920
|
+
}
|
|
921
|
+
)
|
|
922
|
+
]
|
|
923
|
+
}
|
|
924
|
+
) }),
|
|
925
|
+
gridImagesSlot ? gridImagesSlot : /* @__PURE__ */ jsxs(
|
|
926
|
+
"div",
|
|
927
|
+
{
|
|
928
|
+
className: cn(
|
|
929
|
+
"mx-auto mt-20 grid max-w-7xl gap-px bg-border p-px md:grid-cols-5",
|
|
930
|
+
imageGridClassName
|
|
931
|
+
),
|
|
932
|
+
children: [
|
|
933
|
+
gridImages?.[0] && /* @__PURE__ */ jsx(
|
|
934
|
+
Img,
|
|
935
|
+
{
|
|
936
|
+
src: gridImages[0].src,
|
|
937
|
+
alt: gridImages[0].alt,
|
|
938
|
+
className: cn(
|
|
939
|
+
"h-full max-h-[500px] w-full object-cover md:col-span-3 dark:invert",
|
|
940
|
+
gridImages[0].className
|
|
941
|
+
),
|
|
942
|
+
optixFlowConfig
|
|
943
|
+
}
|
|
944
|
+
),
|
|
945
|
+
gridImages?.[1] && /* @__PURE__ */ jsxs("div", { className: "relative md:col-span-2", children: [
|
|
946
|
+
/* @__PURE__ */ jsx(
|
|
947
|
+
Img,
|
|
948
|
+
{
|
|
949
|
+
src: gridImages[1].src,
|
|
950
|
+
alt: gridImages[1].alt,
|
|
951
|
+
className: cn(
|
|
952
|
+
"h-full max-h-[500px] w-full object-cover dark:invert",
|
|
953
|
+
gridImages[1].className
|
|
954
|
+
),
|
|
955
|
+
optixFlowConfig
|
|
956
|
+
}
|
|
957
|
+
),
|
|
958
|
+
renderImageOverlayAction
|
|
959
|
+
] })
|
|
960
|
+
]
|
|
961
|
+
}
|
|
962
|
+
)
|
|
952
963
|
] })
|
|
953
964
|
}
|
|
954
965
|
);
|
|
@@ -6,8 +6,8 @@ var clsx = require('clsx');
|
|
|
6
6
|
var tailwindMerge = require('tailwind-merge');
|
|
7
7
|
var classVarianceAuthority = require('class-variance-authority');
|
|
8
8
|
var jsxRuntime = require('react/jsx-runtime');
|
|
9
|
-
var icon = require('@page-speed/icon');
|
|
10
9
|
var img = require('@page-speed/img');
|
|
10
|
+
var reactSlot = require('@radix-ui/react-slot');
|
|
11
11
|
|
|
12
12
|
function _interopNamespace(e) {
|
|
13
13
|
if (e && e.__esModule) return e;
|
|
@@ -451,10 +451,6 @@ var Pressable = React__namespace.forwardRef(
|
|
|
451
451
|
}
|
|
452
452
|
);
|
|
453
453
|
Pressable.displayName = "Pressable";
|
|
454
|
-
var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
|
|
455
|
-
function DynamicIcon({ apiKey, ...props }) {
|
|
456
|
-
return /* @__PURE__ */ jsxRuntime.jsx(icon.Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
|
|
457
|
-
}
|
|
458
454
|
var maxWidthStyles = {
|
|
459
455
|
sm: "max-w-screen-sm",
|
|
460
456
|
md: "max-w-screen-md",
|
|
@@ -830,6 +826,38 @@ var Section = React__namespace.default.forwardRef(
|
|
|
830
826
|
}
|
|
831
827
|
);
|
|
832
828
|
Section.displayName = "Section";
|
|
829
|
+
var badgeVariants = classVarianceAuthority.cva(
|
|
830
|
+
"inline-flex items-center justify-center rounded-full border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",
|
|
831
|
+
{
|
|
832
|
+
variants: {
|
|
833
|
+
variant: {
|
|
834
|
+
default: "border-transparent bg-primary text-primary-foreground [a&]:hover:bg-primary/90",
|
|
835
|
+
secondary: "border-transparent bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",
|
|
836
|
+
destructive: "border-transparent bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",
|
|
837
|
+
outline: "text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground"
|
|
838
|
+
}
|
|
839
|
+
},
|
|
840
|
+
defaultVariants: {
|
|
841
|
+
variant: "default"
|
|
842
|
+
}
|
|
843
|
+
}
|
|
844
|
+
);
|
|
845
|
+
function Badge({
|
|
846
|
+
className,
|
|
847
|
+
variant,
|
|
848
|
+
asChild = false,
|
|
849
|
+
...props
|
|
850
|
+
}) {
|
|
851
|
+
const Comp = asChild ? reactSlot.Slot : "span";
|
|
852
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
853
|
+
Comp,
|
|
854
|
+
{
|
|
855
|
+
"data-slot": "badge",
|
|
856
|
+
className: cn(badgeVariants({ variant }), className),
|
|
857
|
+
...props
|
|
858
|
+
}
|
|
859
|
+
);
|
|
860
|
+
}
|
|
833
861
|
var MOBILE_CLASSES = {
|
|
834
862
|
"fit-left": "items-start md:items-center",
|
|
835
863
|
"fit-center": "items-center",
|
|
@@ -913,11 +941,11 @@ function HeroCommunitySurveyCta({
|
|
|
913
941
|
rightOverlayImage,
|
|
914
942
|
imagesSlot,
|
|
915
943
|
background,
|
|
916
|
-
|
|
944
|
+
containerClassName = "px-6 sm:px-6 md:px-8 lg:px-8",
|
|
945
|
+
spacing = "pt-32 pb-8 md:pt-32 md:pb-32",
|
|
917
946
|
pattern,
|
|
918
947
|
patternOpacity,
|
|
919
948
|
className,
|
|
920
|
-
containerClassName,
|
|
921
949
|
announcementClassName,
|
|
922
950
|
headingClassName,
|
|
923
951
|
descriptionClassName,
|
|
@@ -927,29 +955,22 @@ function HeroCommunitySurveyCta({
|
|
|
927
955
|
}) {
|
|
928
956
|
const renderAnnouncement = React.useMemo(() => {
|
|
929
957
|
if (announcementSlot) return announcementSlot;
|
|
930
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
931
|
-
|
|
958
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Pressable, { href: announcementHref, children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
959
|
+
Badge,
|
|
932
960
|
{
|
|
933
|
-
href: announcementHref,
|
|
934
961
|
className: cn(
|
|
935
|
-
"group mx-auto
|
|
962
|
+
"group mx-auto w-fit gap-3 px-5 py-2 text-sm h-fit",
|
|
936
963
|
announcementClassName
|
|
937
964
|
),
|
|
938
965
|
children: [
|
|
939
|
-
/* @__PURE__ */ jsxRuntime.
|
|
940
|
-
|
|
941
|
-
|
|
942
|
-
|
|
943
|
-
|
|
944
|
-
name: "lucide/minus",
|
|
945
|
-
size: 16,
|
|
946
|
-
className: "mx-1 inline-block"
|
|
947
|
-
}
|
|
948
|
-
),
|
|
949
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "font-semibold group-hover:underline", children: announcementLinkText })
|
|
966
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col", children: [
|
|
967
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "font-medium", children: announcementPrimary }),
|
|
968
|
+
announcementSecondary
|
|
969
|
+
] }),
|
|
970
|
+
announcementLinkText ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "font-semibold pl-4 ml-4 border-l", children: announcementLinkText }) : null
|
|
950
971
|
]
|
|
951
972
|
}
|
|
952
|
-
);
|
|
973
|
+
) });
|
|
953
974
|
}, [
|
|
954
975
|
announcementSlot,
|
|
955
976
|
announcementHref,
|
|
@@ -958,46 +979,119 @@ function HeroCommunitySurveyCta({
|
|
|
958
979
|
announcementSecondary,
|
|
959
980
|
announcementLinkText
|
|
960
981
|
]);
|
|
982
|
+
const imageCount = React.useMemo(() => {
|
|
983
|
+
let count = 0;
|
|
984
|
+
if (mainImage) count++;
|
|
985
|
+
if (leftOverlayImage) count++;
|
|
986
|
+
if (rightOverlayImage) count++;
|
|
987
|
+
return count;
|
|
988
|
+
}, [mainImage, leftOverlayImage, rightOverlayImage]);
|
|
961
989
|
const renderImages = React.useMemo(() => {
|
|
962
990
|
if (imagesSlot) return imagesSlot;
|
|
963
|
-
|
|
964
|
-
|
|
965
|
-
|
|
966
|
-
|
|
967
|
-
|
|
968
|
-
alt: mainImage.alt,
|
|
969
|
-
className: mainImage.className,
|
|
970
|
-
optixFlowConfig
|
|
971
|
-
}
|
|
972
|
-
),
|
|
973
|
-
leftOverlayImage && /* @__PURE__ */ jsxRuntime.jsx(
|
|
974
|
-
img.Img,
|
|
991
|
+
if (imageCount === 0) return null;
|
|
992
|
+
if (imageCount === 1) {
|
|
993
|
+
const img$1 = mainImage || leftOverlayImage || rightOverlayImage;
|
|
994
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex justify-center", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
995
|
+
"div",
|
|
975
996
|
{
|
|
976
|
-
|
|
977
|
-
|
|
978
|
-
|
|
979
|
-
|
|
997
|
+
className: cn(
|
|
998
|
+
"relative aspect-4/3 w-full max-w-lg overflow-hidden rounded-lg shadow-2xl",
|
|
999
|
+
imagesClassName
|
|
1000
|
+
),
|
|
1001
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1002
|
+
img.Img,
|
|
1003
|
+
{
|
|
1004
|
+
src: img$1.src,
|
|
1005
|
+
alt: img$1.alt,
|
|
1006
|
+
className: "h-full w-full object-cover",
|
|
1007
|
+
optixFlowConfig
|
|
1008
|
+
}
|
|
1009
|
+
)
|
|
980
1010
|
}
|
|
981
|
-
)
|
|
982
|
-
|
|
983
|
-
|
|
1011
|
+
) });
|
|
1012
|
+
}
|
|
1013
|
+
if (imageCount === 2) {
|
|
1014
|
+
const imgs = [mainImage, leftOverlayImage, rightOverlayImage].filter(
|
|
1015
|
+
Boolean
|
|
1016
|
+
);
|
|
1017
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
1018
|
+
"div",
|
|
984
1019
|
{
|
|
985
|
-
|
|
986
|
-
|
|
987
|
-
|
|
988
|
-
|
|
1020
|
+
className: cn(
|
|
1021
|
+
"relative min-h-[350px] md:min-h-[400px] lg:min-h-[450px]",
|
|
1022
|
+
imagesClassName
|
|
1023
|
+
),
|
|
1024
|
+
children: [
|
|
1025
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute left-0 top-0 z-10 aspect-4/3 w-[70%] overflow-hidden rounded-lg shadow-2xl md:w-[65%]", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1026
|
+
img.Img,
|
|
1027
|
+
{
|
|
1028
|
+
src: imgs[0].src,
|
|
1029
|
+
alt: imgs[0].alt,
|
|
1030
|
+
className: "h-full w-full object-cover",
|
|
1031
|
+
optixFlowConfig
|
|
1032
|
+
}
|
|
1033
|
+
) }),
|
|
1034
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute bottom-0 right-0 z-20 aspect-3/4 w-[55%] overflow-hidden rounded-lg shadow-2xl md:w-[50%]", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1035
|
+
img.Img,
|
|
1036
|
+
{
|
|
1037
|
+
src: imgs[1].src,
|
|
1038
|
+
alt: imgs[1].alt,
|
|
1039
|
+
className: "h-full w-full object-cover",
|
|
1040
|
+
optixFlowConfig
|
|
1041
|
+
}
|
|
1042
|
+
) })
|
|
1043
|
+
]
|
|
989
1044
|
}
|
|
990
|
-
)
|
|
991
|
-
|
|
1045
|
+
);
|
|
1046
|
+
}
|
|
1047
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
1048
|
+
"div",
|
|
1049
|
+
{
|
|
1050
|
+
className: cn(
|
|
1051
|
+
"relative min-h-[380px] md:min-h-[430px] lg:min-h-[480px]",
|
|
1052
|
+
imagesClassName
|
|
1053
|
+
),
|
|
1054
|
+
children: [
|
|
1055
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute left-0 top-0 z-10 aspect-4/3 w-[65%] overflow-hidden rounded-lg shadow-2xl", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1056
|
+
img.Img,
|
|
1057
|
+
{
|
|
1058
|
+
src: mainImage.src,
|
|
1059
|
+
alt: mainImage.alt,
|
|
1060
|
+
className: "h-full w-full object-cover",
|
|
1061
|
+
optixFlowConfig
|
|
1062
|
+
}
|
|
1063
|
+
) }),
|
|
1064
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute bottom-0 right-0 z-20 aspect-3/4 w-[50%] overflow-hidden rounded-lg shadow-2xl", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1065
|
+
img.Img,
|
|
1066
|
+
{
|
|
1067
|
+
src: rightOverlayImage.src,
|
|
1068
|
+
alt: rightOverlayImage.alt,
|
|
1069
|
+
className: "h-full w-full object-cover",
|
|
1070
|
+
optixFlowConfig
|
|
1071
|
+
}
|
|
1072
|
+
) }),
|
|
1073
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute bottom-4 left-[10%] z-30 aspect-square w-[35%] overflow-hidden rounded-lg shadow-2xl md:bottom-6 md:left-[15%]", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1074
|
+
img.Img,
|
|
1075
|
+
{
|
|
1076
|
+
src: leftOverlayImage.src,
|
|
1077
|
+
alt: leftOverlayImage.alt,
|
|
1078
|
+
className: "h-full w-full object-cover",
|
|
1079
|
+
optixFlowConfig
|
|
1080
|
+
}
|
|
1081
|
+
) })
|
|
1082
|
+
]
|
|
1083
|
+
}
|
|
1084
|
+
);
|
|
992
1085
|
}, [
|
|
993
1086
|
imagesSlot,
|
|
994
1087
|
imagesClassName,
|
|
1088
|
+
imageCount,
|
|
995
1089
|
mainImage,
|
|
996
1090
|
leftOverlayImage,
|
|
997
1091
|
rightOverlayImage,
|
|
998
1092
|
optixFlowConfig
|
|
999
1093
|
]);
|
|
1000
|
-
return /* @__PURE__ */ jsxRuntime.
|
|
1094
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
1001
1095
|
Section,
|
|
1002
1096
|
{
|
|
1003
1097
|
background,
|
|
@@ -1006,14 +1100,14 @@ function HeroCommunitySurveyCta({
|
|
|
1006
1100
|
patternOpacity,
|
|
1007
1101
|
className,
|
|
1008
1102
|
containerClassName,
|
|
1009
|
-
children: [
|
|
1010
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", {
|
|
1103
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "relative grid grid-cols-1 items-center gap-8 lg:grid-cols-2 lg:gap-12", children: [
|
|
1104
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
1011
1105
|
renderAnnouncement,
|
|
1012
1106
|
heading && (typeof heading === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
1013
1107
|
"h1",
|
|
1014
1108
|
{
|
|
1015
1109
|
className: cn(
|
|
1016
|
-
"
|
|
1110
|
+
"max-w-4xl text-4xl font-semibold text-balance lg:text-6xl",
|
|
1017
1111
|
headingClassName
|
|
1018
1112
|
),
|
|
1019
1113
|
children: heading
|
|
@@ -1023,7 +1117,7 @@ function HeroCommunitySurveyCta({
|
|
|
1023
1117
|
"p",
|
|
1024
1118
|
{
|
|
1025
1119
|
className: cn(
|
|
1026
|
-
"
|
|
1120
|
+
"max-w-4xl lg:text-xl text-balance",
|
|
1027
1121
|
descriptionClassName
|
|
1028
1122
|
),
|
|
1029
1123
|
children: description
|
|
@@ -1038,11 +1132,8 @@ function HeroCommunitySurveyCta({
|
|
|
1038
1132
|
}
|
|
1039
1133
|
)
|
|
1040
1134
|
] }),
|
|
1041
|
-
/* @__PURE__ */ jsxRuntime.
|
|
1042
|
-
|
|
1043
|
-
renderImages
|
|
1044
|
-
] })
|
|
1045
|
-
]
|
|
1135
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "relative", children: renderImages })
|
|
1136
|
+
] })
|
|
1046
1137
|
}
|
|
1047
1138
|
);
|
|
1048
1139
|
}
|
|
@@ -108,6 +108,6 @@ interface HeroCommunitySurveyCtaProps {
|
|
|
108
108
|
*/
|
|
109
109
|
optixFlowConfig?: OptixFlowConfig;
|
|
110
110
|
}
|
|
111
|
-
declare function HeroCommunitySurveyCta({ announcementPrimary, announcementSecondary, announcementLinkText, announcementHref, announcementSlot, heading, description, actions, actionsSlot, mainImage, leftOverlayImage, rightOverlayImage, imagesSlot, background, spacing, pattern, patternOpacity, className,
|
|
111
|
+
declare function HeroCommunitySurveyCta({ announcementPrimary, announcementSecondary, announcementLinkText, announcementHref, announcementSlot, heading, description, actions, actionsSlot, mainImage, leftOverlayImage, rightOverlayImage, imagesSlot, background, containerClassName, spacing, pattern, patternOpacity, className, announcementClassName, headingClassName, descriptionClassName, actionsClassName, imagesClassName, optixFlowConfig, }: HeroCommunitySurveyCtaProps): React.JSX.Element;
|
|
112
112
|
|
|
113
113
|
export { HeroCommunitySurveyCta, type HeroCommunitySurveyCtaProps };
|
|
@@ -108,6 +108,6 @@ interface HeroCommunitySurveyCtaProps {
|
|
|
108
108
|
*/
|
|
109
109
|
optixFlowConfig?: OptixFlowConfig;
|
|
110
110
|
}
|
|
111
|
-
declare function HeroCommunitySurveyCta({ announcementPrimary, announcementSecondary, announcementLinkText, announcementHref, announcementSlot, heading, description, actions, actionsSlot, mainImage, leftOverlayImage, rightOverlayImage, imagesSlot, background, spacing, pattern, patternOpacity, className,
|
|
111
|
+
declare function HeroCommunitySurveyCta({ announcementPrimary, announcementSecondary, announcementLinkText, announcementHref, announcementSlot, heading, description, actions, actionsSlot, mainImage, leftOverlayImage, rightOverlayImage, imagesSlot, background, containerClassName, spacing, pattern, patternOpacity, className, announcementClassName, headingClassName, descriptionClassName, actionsClassName, imagesClassName, optixFlowConfig, }: HeroCommunitySurveyCtaProps): React.JSX.Element;
|
|
112
112
|
|
|
113
113
|
export { HeroCommunitySurveyCta, type HeroCommunitySurveyCtaProps };
|