@opensite/ui 2.0.8 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/hero-agency-animated-images.cjs +4 -4
- package/dist/hero-agency-animated-images.js +4 -4
- package/dist/hero-business-carousel-dots.cjs +46 -36
- package/dist/hero-business-carousel-dots.js +46 -36
- package/dist/hero-coming-soon-countdown.cjs +93 -54
- package/dist/hero-coming-soon-countdown.d.cts +31 -6
- package/dist/hero-coming-soon-countdown.d.ts +31 -6
- package/dist/hero-coming-soon-countdown.js +93 -54
- package/dist/hero-creative-studio-stacked.cjs +9 -6
- package/dist/hero-creative-studio-stacked.d.cts +5 -1
- package/dist/hero-creative-studio-stacked.d.ts +5 -1
- package/dist/hero-creative-studio-stacked.js +9 -6
- package/dist/hero-customer-support-layered.cjs +1 -1
- package/dist/hero-customer-support-layered.js +1 -1
- package/dist/hero-developer-tools-code.cjs +2 -2
- package/dist/hero-developer-tools-code.js +2 -2
- package/dist/hero-digital-agency-fullscreen.cjs +14 -12
- package/dist/hero-digital-agency-fullscreen.d.cts +1 -1
- package/dist/hero-digital-agency-fullscreen.d.ts +1 -1
- package/dist/hero-digital-agency-fullscreen.js +14 -12
- package/dist/hero-ecommerce-product-showcase.cjs +76 -57
- package/dist/hero-ecommerce-product-showcase.js +76 -57
- package/dist/hero-enterprise-security.cjs +81 -60
- package/dist/hero-enterprise-security.js +81 -60
- package/dist/hero-event-registration.cjs +43 -10
- package/dist/hero-event-registration.js +43 -10
- package/dist/hero-hiring-animated-text.cjs +661 -639
- package/dist/hero-hiring-animated-text.d.cts +1 -9
- package/dist/hero-hiring-animated-text.d.ts +1 -9
- package/dist/hero-hiring-animated-text.js +657 -635
- package/dist/hero-saas-dashboard-preview.cjs +88 -46
- package/dist/hero-saas-dashboard-preview.d.cts +34 -19
- package/dist/hero-saas-dashboard-preview.d.ts +34 -19
- package/dist/hero-saas-dashboard-preview.js +89 -47
- package/dist/hero-split-image-newsletter.cjs +91 -49
- package/dist/hero-split-image-newsletter.d.cts +33 -18
- package/dist/hero-split-image-newsletter.d.ts +33 -18
- package/dist/hero-split-image-newsletter.js +92 -50
- package/dist/hero-startup-launch-cta.cjs +2 -2
- package/dist/hero-startup-launch-cta.js +2 -2
- package/dist/registry.cjs +556 -345
- package/dist/registry.js +556 -345
- package/package.json +1 -1
|
@@ -9,6 +9,8 @@ import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
|
9
9
|
import { Icon } from '@page-speed/icon';
|
|
10
10
|
import { Slot } from '@radix-ui/react-slot';
|
|
11
11
|
import { usePlatformFromUrl } from '@opensite/hooks/usePlatformFromUrl';
|
|
12
|
+
import { Form } from '@page-speed/forms';
|
|
13
|
+
import { useFileUpload, useContactForm, DynamicFormField } from '@page-speed/forms/integration';
|
|
12
14
|
|
|
13
15
|
// components/blocks/hero/hero-coming-soon-countdown.tsx
|
|
14
16
|
function cn(...inputs) {
|
|
@@ -436,22 +438,6 @@ var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
|
|
|
436
438
|
function DynamicIcon({ apiKey, ...props }) {
|
|
437
439
|
return /* @__PURE__ */ jsx(Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
|
|
438
440
|
}
|
|
439
|
-
function Input({ className, type, ...props }) {
|
|
440
|
-
return /* @__PURE__ */ jsx(
|
|
441
|
-
"input",
|
|
442
|
-
{
|
|
443
|
-
type,
|
|
444
|
-
"data-slot": "input",
|
|
445
|
-
className: cn(
|
|
446
|
-
"file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",
|
|
447
|
-
"focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]",
|
|
448
|
-
"aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",
|
|
449
|
-
className
|
|
450
|
-
),
|
|
451
|
-
...props
|
|
452
|
-
}
|
|
453
|
-
);
|
|
454
|
-
}
|
|
455
441
|
var maxWidthStyles = {
|
|
456
442
|
sm: "max-w-screen-sm",
|
|
457
443
|
md: "max-w-screen-md",
|
|
@@ -940,6 +926,16 @@ var SocialLinkIcon = React.forwardRef(
|
|
|
940
926
|
}
|
|
941
927
|
);
|
|
942
928
|
SocialLinkIcon.displayName = "SocialLinkIcon";
|
|
929
|
+
var DEFAULT_FORM_FIELDS = [
|
|
930
|
+
{
|
|
931
|
+
name: "email",
|
|
932
|
+
type: "email",
|
|
933
|
+
label: "Email Address",
|
|
934
|
+
placeholder: "Enter your email",
|
|
935
|
+
required: true,
|
|
936
|
+
columnSpan: 12
|
|
937
|
+
}
|
|
938
|
+
];
|
|
943
939
|
var digitVariants = {
|
|
944
940
|
initial: { y: -20, opacity: 0 },
|
|
945
941
|
animate: {
|
|
@@ -955,7 +951,7 @@ var digitVariants = {
|
|
|
955
951
|
};
|
|
956
952
|
function CountdownDigit({ value, label }) {
|
|
957
953
|
const display = value.toString().padStart(2, "0");
|
|
958
|
-
return /* @__PURE__ */ jsxs("div", { className: "flex flex-col items-center", children: [
|
|
954
|
+
return /* @__PURE__ */ jsxs("div", { className: "flex flex-col items-center bg-card pt-2 pb-6 px-2 text-card-foreground rounded-xl md:rounded-2xl shadow-xl", children: [
|
|
959
955
|
/* @__PURE__ */ jsx(
|
|
960
956
|
"div",
|
|
961
957
|
{
|
|
@@ -975,7 +971,7 @@ function CountdownDigit({ value, label }) {
|
|
|
975
971
|
) })
|
|
976
972
|
}
|
|
977
973
|
),
|
|
978
|
-
/* @__PURE__ */ jsx("span", { className: cn("mt-2 text-sm"), children: label })
|
|
974
|
+
/* @__PURE__ */ jsx("span", { className: cn("mt-2 text-xs md:text-sm"), children: label })
|
|
979
975
|
] });
|
|
980
976
|
}
|
|
981
977
|
function HeroComingSoonCountdown({
|
|
@@ -985,8 +981,14 @@ function HeroComingSoonCountdown({
|
|
|
985
981
|
description,
|
|
986
982
|
countdownDate,
|
|
987
983
|
countdownSlot,
|
|
988
|
-
|
|
989
|
-
|
|
984
|
+
formFields = DEFAULT_FORM_FIELDS,
|
|
985
|
+
formConfig,
|
|
986
|
+
onSubmit,
|
|
987
|
+
onSuccess,
|
|
988
|
+
onError,
|
|
989
|
+
successMessage,
|
|
990
|
+
buttonAction,
|
|
991
|
+
helperText,
|
|
990
992
|
formSlot,
|
|
991
993
|
socialLinks,
|
|
992
994
|
socialLinksSlot,
|
|
@@ -1005,6 +1007,18 @@ function HeroComingSoonCountdown({
|
|
|
1005
1007
|
socialLinksClassName
|
|
1006
1008
|
}) {
|
|
1007
1009
|
const [timeLeft, setTimeLeft] = useState(null);
|
|
1010
|
+
const { uploadTokens, uploadProgress, isUploading, uploadFiles, removeFile, resetUpload } = useFileUpload({ onError });
|
|
1011
|
+
const { form, submissionError, formMethod, resetSubmissionState } = useContactForm({
|
|
1012
|
+
formFields,
|
|
1013
|
+
formConfig,
|
|
1014
|
+
onSubmit,
|
|
1015
|
+
onSuccess: (data) => {
|
|
1016
|
+
resetUpload();
|
|
1017
|
+
onSuccess?.(data);
|
|
1018
|
+
},
|
|
1019
|
+
onError,
|
|
1020
|
+
uploadTokens
|
|
1021
|
+
});
|
|
1008
1022
|
const calculateTimeLeft = useCallback(() => {
|
|
1009
1023
|
if (!countdownDate) return null;
|
|
1010
1024
|
const now = Date.now();
|
|
@@ -1031,31 +1045,59 @@ function HeroComingSoonCountdown({
|
|
|
1031
1045
|
const showCountdown = countdownSlot || timeLeft;
|
|
1032
1046
|
const renderForm = useMemo(() => {
|
|
1033
1047
|
if (formSlot) return formSlot;
|
|
1034
|
-
|
|
1035
|
-
|
|
1036
|
-
|
|
1037
|
-
|
|
1038
|
-
|
|
1039
|
-
|
|
1040
|
-
|
|
1041
|
-
|
|
1042
|
-
|
|
1043
|
-
|
|
1044
|
-
|
|
1045
|
-
|
|
1046
|
-
|
|
1047
|
-
|
|
1048
|
-
|
|
1049
|
-
|
|
1050
|
-
|
|
1051
|
-
|
|
1052
|
-
|
|
1053
|
-
|
|
1054
|
-
|
|
1055
|
-
|
|
1056
|
-
|
|
1057
|
-
|
|
1058
|
-
|
|
1048
|
+
const defaultButtonAction = {
|
|
1049
|
+
label: "Notify Me",
|
|
1050
|
+
variant: "default",
|
|
1051
|
+
className: "h-12"
|
|
1052
|
+
};
|
|
1053
|
+
const action = buttonAction || defaultButtonAction;
|
|
1054
|
+
return /* @__PURE__ */ jsxs(
|
|
1055
|
+
Form,
|
|
1056
|
+
{
|
|
1057
|
+
form,
|
|
1058
|
+
notificationConfig: {
|
|
1059
|
+
submissionError,
|
|
1060
|
+
successMessage
|
|
1061
|
+
},
|
|
1062
|
+
formConfig: {
|
|
1063
|
+
endpoint: formConfig?.endpoint,
|
|
1064
|
+
method: formMethod,
|
|
1065
|
+
submissionConfig: formConfig?.submissionConfig
|
|
1066
|
+
},
|
|
1067
|
+
onNewSubmission: () => {
|
|
1068
|
+
resetUpload();
|
|
1069
|
+
resetSubmissionState();
|
|
1070
|
+
},
|
|
1071
|
+
children: [
|
|
1072
|
+
formFields.map((field) => /* @__PURE__ */ jsx("div", { className: "flex-1", children: /* @__PURE__ */ jsx(
|
|
1073
|
+
DynamicFormField,
|
|
1074
|
+
{
|
|
1075
|
+
field,
|
|
1076
|
+
uploadProgress,
|
|
1077
|
+
onFileUpload: uploadFiles,
|
|
1078
|
+
onFileRemove: removeFile,
|
|
1079
|
+
isUploading
|
|
1080
|
+
}
|
|
1081
|
+
) }, field.name)),
|
|
1082
|
+
/* @__PURE__ */ jsxs(
|
|
1083
|
+
Pressable,
|
|
1084
|
+
{
|
|
1085
|
+
onClick: form.handleSubmit,
|
|
1086
|
+
asButton: true,
|
|
1087
|
+
variant: action.variant,
|
|
1088
|
+
className: cn("h-12", action.className),
|
|
1089
|
+
disabled: form.isSubmitting,
|
|
1090
|
+
children: [
|
|
1091
|
+
action.label,
|
|
1092
|
+
action.iconAfter
|
|
1093
|
+
]
|
|
1094
|
+
}
|
|
1095
|
+
),
|
|
1096
|
+
helperText && (typeof helperText === "string" ? /* @__PURE__ */ jsx("p", { className: cn("text-sm mt-2 text-center"), children: helperText }) : helperText)
|
|
1097
|
+
]
|
|
1098
|
+
}
|
|
1099
|
+
);
|
|
1100
|
+
}, [formSlot, formFields, form, formConfig, formMethod, buttonAction, uploadProgress, uploadFiles, removeFile, isUploading, submissionError, successMessage, helperText, resetUpload, resetSubmissionState]);
|
|
1059
1101
|
const renderSocialLinks = useMemo(() => {
|
|
1060
1102
|
if (socialLinksSlot) return socialLinksSlot;
|
|
1061
1103
|
if (!socialLinks || socialLinks.length === 0) return null;
|
|
@@ -1081,7 +1123,7 @@ function HeroComingSoonCountdown({
|
|
|
1081
1123
|
patternClassName,
|
|
1082
1124
|
className,
|
|
1083
1125
|
containerClassName,
|
|
1084
|
-
children: /* @__PURE__ */ jsxs("div", { className: "
|
|
1126
|
+
children: /* @__PURE__ */ jsxs("div", { className: "px-6 py-8 md:px-12 md:py-12 lg:py-16 lg:px-16 rounded-2xl flex flex-col items-center text-center bg-muted gap-4 md:gap-8", children: [
|
|
1085
1127
|
(badgeText || badgeIcon) && /* @__PURE__ */ jsxs(Badge, { className: cn("gap-2 px-4 py-2", badgeClassName), children: [
|
|
1086
1128
|
badgeIcon && /* @__PURE__ */ jsx(DynamicIcon, { name: badgeIcon, size: 16 }),
|
|
1087
1129
|
/* @__PURE__ */ jsx("span", { children: badgeText })
|
|
@@ -1090,7 +1132,7 @@ function HeroComingSoonCountdown({
|
|
|
1090
1132
|
"h1",
|
|
1091
1133
|
{
|
|
1092
1134
|
className: cn(
|
|
1093
|
-
"
|
|
1135
|
+
"max-w-full md:max-w-lg text-5xl font-bold tracking-tight md:text-6xl lg:text-7xl text-balance",
|
|
1094
1136
|
headingClassName
|
|
1095
1137
|
),
|
|
1096
1138
|
children: heading
|
|
@@ -1100,7 +1142,7 @@ function HeroComingSoonCountdown({
|
|
|
1100
1142
|
"p",
|
|
1101
1143
|
{
|
|
1102
1144
|
className: cn(
|
|
1103
|
-
"
|
|
1145
|
+
"max-w-full md:max-w-md text-lg md:text-xl text-balance",
|
|
1104
1146
|
descriptionClassName
|
|
1105
1147
|
),
|
|
1106
1148
|
children: description
|
|
@@ -1110,7 +1152,7 @@ function HeroComingSoonCountdown({
|
|
|
1110
1152
|
"div",
|
|
1111
1153
|
{
|
|
1112
1154
|
className: cn(
|
|
1113
|
-
"
|
|
1155
|
+
"py-8 grid grid-cols-4 gap-2 md:gap-4 lg:gap-8",
|
|
1114
1156
|
countdownClassName
|
|
1115
1157
|
),
|
|
1116
1158
|
children: countdownSlot ?? /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
@@ -1125,7 +1167,7 @@ function HeroComingSoonCountdown({
|
|
|
1125
1167
|
"div",
|
|
1126
1168
|
{
|
|
1127
1169
|
className: cn(
|
|
1128
|
-
"
|
|
1170
|
+
"flex w-full max-w-md flex-col gap-4 sm:flex-row",
|
|
1129
1171
|
formClassName
|
|
1130
1172
|
),
|
|
1131
1173
|
children: renderForm
|
|
@@ -1134,10 +1176,7 @@ function HeroComingSoonCountdown({
|
|
|
1134
1176
|
(socialLinksSlot || socialLinks && socialLinks.length > 0) && /* @__PURE__ */ jsx(
|
|
1135
1177
|
"div",
|
|
1136
1178
|
{
|
|
1137
|
-
className: cn(
|
|
1138
|
-
"mt-16 flex items-center gap-6",
|
|
1139
|
-
socialLinksClassName
|
|
1140
|
-
),
|
|
1179
|
+
className: cn("mt-8 flex items-center gap-6", socialLinksClassName),
|
|
1141
1180
|
children: renderSocialLinks
|
|
1142
1181
|
}
|
|
1143
1182
|
)
|
|
@@ -956,17 +956,18 @@ function HeroCreativeStudioStacked({
|
|
|
956
956
|
heading,
|
|
957
957
|
description,
|
|
958
958
|
videoAction,
|
|
959
|
+
patternClassName,
|
|
959
960
|
actions,
|
|
960
961
|
onVideoClick,
|
|
961
962
|
videoDialog,
|
|
962
963
|
images,
|
|
963
964
|
imagesSlot,
|
|
964
965
|
background,
|
|
965
|
-
|
|
966
|
+
containerClassName = "px-6 sm:px-6 md:px-8 lg:px-8",
|
|
967
|
+
spacing = "xl",
|
|
966
968
|
pattern,
|
|
967
969
|
patternOpacity,
|
|
968
970
|
className,
|
|
969
|
-
containerClassName,
|
|
970
971
|
contentClassName,
|
|
971
972
|
taglineClassName,
|
|
972
973
|
headingClassName,
|
|
@@ -1064,8 +1065,10 @@ function HeroCreativeStudioStacked({
|
|
|
1064
1065
|
spacing,
|
|
1065
1066
|
pattern,
|
|
1066
1067
|
patternOpacity,
|
|
1067
|
-
|
|
1068
|
-
|
|
1068
|
+
patternClassName,
|
|
1069
|
+
className,
|
|
1070
|
+
containerClassName,
|
|
1071
|
+
children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "pt-8 md:pt-0", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "grid grid-cols-1 items-center gap-10 lg:grid-cols-2", children: [
|
|
1069
1072
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("flex flex-col gap-6", contentClassName), children: [
|
|
1070
1073
|
tagline && (typeof tagline === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
1071
1074
|
"p",
|
|
@@ -1082,7 +1085,7 @@ function HeroCreativeStudioStacked({
|
|
|
1082
1085
|
"h1",
|
|
1083
1086
|
{
|
|
1084
1087
|
className: cn(
|
|
1085
|
-
"max-w-[920px] text-
|
|
1088
|
+
"max-w-[920px] text-left text-4xl leading-tight font-semibold md:text-6xl lg:text-7xl text-balance",
|
|
1086
1089
|
headingClassName
|
|
1087
1090
|
),
|
|
1088
1091
|
children: heading
|
|
@@ -1092,7 +1095,7 @@ function HeroCreativeStudioStacked({
|
|
|
1092
1095
|
"p",
|
|
1093
1096
|
{
|
|
1094
1097
|
className: cn(
|
|
1095
|
-
"max-w-[750px] text-
|
|
1098
|
+
"max-w-[750px] text-left text-base leading-relaxed font-normal md:text-xl text-balance",
|
|
1096
1099
|
descriptionClassName
|
|
1097
1100
|
),
|
|
1098
1101
|
children: description
|
|
@@ -100,7 +100,11 @@ interface HeroCreativeStudioStackedProps {
|
|
|
100
100
|
* OptixFlow image optimization configuration
|
|
101
101
|
*/
|
|
102
102
|
optixFlowConfig?: OptixFlowConfig;
|
|
103
|
+
/**
|
|
104
|
+
* Additional CSS classes for the pattern overlay
|
|
105
|
+
*/
|
|
106
|
+
patternClassName?: string;
|
|
103
107
|
}
|
|
104
|
-
declare function HeroCreativeStudioStacked({ videoAspectRatio, tagline, heading, description, videoAction, actions, onVideoClick, videoDialog, images, imagesSlot, background, spacing, pattern, patternOpacity, className,
|
|
108
|
+
declare function HeroCreativeStudioStacked({ videoAspectRatio, tagline, heading, description, videoAction, patternClassName, actions, onVideoClick, videoDialog, images, imagesSlot, background, containerClassName, spacing, pattern, patternOpacity, className, contentClassName, taglineClassName, headingClassName, descriptionClassName, actionsClassName, imagesClassName, optixFlowConfig, }: HeroCreativeStudioStackedProps): React.JSX.Element;
|
|
105
109
|
|
|
106
110
|
export { HeroCreativeStudioStacked, type HeroCreativeStudioStackedProps };
|
|
@@ -100,7 +100,11 @@ interface HeroCreativeStudioStackedProps {
|
|
|
100
100
|
* OptixFlow image optimization configuration
|
|
101
101
|
*/
|
|
102
102
|
optixFlowConfig?: OptixFlowConfig;
|
|
103
|
+
/**
|
|
104
|
+
* Additional CSS classes for the pattern overlay
|
|
105
|
+
*/
|
|
106
|
+
patternClassName?: string;
|
|
103
107
|
}
|
|
104
|
-
declare function HeroCreativeStudioStacked({ videoAspectRatio, tagline, heading, description, videoAction, actions, onVideoClick, videoDialog, images, imagesSlot, background, spacing, pattern, patternOpacity, className,
|
|
108
|
+
declare function HeroCreativeStudioStacked({ videoAspectRatio, tagline, heading, description, videoAction, patternClassName, actions, onVideoClick, videoDialog, images, imagesSlot, background, containerClassName, spacing, pattern, patternOpacity, className, contentClassName, taglineClassName, headingClassName, descriptionClassName, actionsClassName, imagesClassName, optixFlowConfig, }: HeroCreativeStudioStackedProps): React.JSX.Element;
|
|
105
109
|
|
|
106
110
|
export { HeroCreativeStudioStacked, type HeroCreativeStudioStackedProps };
|
|
@@ -933,17 +933,18 @@ function HeroCreativeStudioStacked({
|
|
|
933
933
|
heading,
|
|
934
934
|
description,
|
|
935
935
|
videoAction,
|
|
936
|
+
patternClassName,
|
|
936
937
|
actions,
|
|
937
938
|
onVideoClick,
|
|
938
939
|
videoDialog,
|
|
939
940
|
images,
|
|
940
941
|
imagesSlot,
|
|
941
942
|
background,
|
|
942
|
-
|
|
943
|
+
containerClassName = "px-6 sm:px-6 md:px-8 lg:px-8",
|
|
944
|
+
spacing = "xl",
|
|
943
945
|
pattern,
|
|
944
946
|
patternOpacity,
|
|
945
947
|
className,
|
|
946
|
-
containerClassName,
|
|
947
948
|
contentClassName,
|
|
948
949
|
taglineClassName,
|
|
949
950
|
headingClassName,
|
|
@@ -1041,8 +1042,10 @@ function HeroCreativeStudioStacked({
|
|
|
1041
1042
|
spacing,
|
|
1042
1043
|
pattern,
|
|
1043
1044
|
patternOpacity,
|
|
1044
|
-
|
|
1045
|
-
|
|
1045
|
+
patternClassName,
|
|
1046
|
+
className,
|
|
1047
|
+
containerClassName,
|
|
1048
|
+
children: /* @__PURE__ */ jsx("div", { className: "pt-8 md:pt-0", children: /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-1 items-center gap-10 lg:grid-cols-2", children: [
|
|
1046
1049
|
/* @__PURE__ */ jsxs("div", { className: cn("flex flex-col gap-6", contentClassName), children: [
|
|
1047
1050
|
tagline && (typeof tagline === "string" ? /* @__PURE__ */ jsx(
|
|
1048
1051
|
"p",
|
|
@@ -1059,7 +1062,7 @@ function HeroCreativeStudioStacked({
|
|
|
1059
1062
|
"h1",
|
|
1060
1063
|
{
|
|
1061
1064
|
className: cn(
|
|
1062
|
-
"max-w-[920px] text-
|
|
1065
|
+
"max-w-[920px] text-left text-4xl leading-tight font-semibold md:text-6xl lg:text-7xl text-balance",
|
|
1063
1066
|
headingClassName
|
|
1064
1067
|
),
|
|
1065
1068
|
children: heading
|
|
@@ -1069,7 +1072,7 @@ function HeroCreativeStudioStacked({
|
|
|
1069
1072
|
"p",
|
|
1070
1073
|
{
|
|
1071
1074
|
className: cn(
|
|
1072
|
-
"max-w-[750px] text-
|
|
1075
|
+
"max-w-[750px] text-left text-base leading-relaxed font-normal md:text-xl text-balance",
|
|
1073
1076
|
descriptionClassName
|
|
1074
1077
|
),
|
|
1075
1078
|
children: description
|
|
@@ -964,7 +964,7 @@ function HeroCustomerSupportLayered({
|
|
|
964
964
|
patternClassName,
|
|
965
965
|
className,
|
|
966
966
|
containerClassName,
|
|
967
|
-
children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "pt-8 md:pt-0", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "grid grid-cols-1 items-center gap-
|
|
967
|
+
children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "pt-8 md:pt-0", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "grid grid-cols-1 items-center gap-12 md:gap-20 md:grid-cols-2", children: [
|
|
968
968
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
969
969
|
"div",
|
|
970
970
|
{
|
|
@@ -943,7 +943,7 @@ function HeroCustomerSupportLayered({
|
|
|
943
943
|
patternClassName,
|
|
944
944
|
className,
|
|
945
945
|
containerClassName,
|
|
946
|
-
children: /* @__PURE__ */ jsx("div", { className: "pt-8 md:pt-0", children: /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-1 items-center gap-
|
|
946
|
+
children: /* @__PURE__ */ jsx("div", { className: "pt-8 md:pt-0", children: /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-1 items-center gap-12 md:gap-20 md:grid-cols-2", children: [
|
|
947
947
|
/* @__PURE__ */ jsxs(
|
|
948
948
|
"div",
|
|
949
949
|
{
|
|
@@ -953,7 +953,7 @@ function HeroDeveloperToolsCode({
|
|
|
953
953
|
const renderBadge = React3.useMemo(() => {
|
|
954
954
|
if (badgeSlot) return badgeSlot;
|
|
955
955
|
if (!badgeText && !badgeIcon) return null;
|
|
956
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(Badge, { className: "
|
|
956
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Badge, { className: "gap-2 px-4 py-1", children: [
|
|
957
957
|
badgeIcon && /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: badgeIcon, size: 14 }),
|
|
958
958
|
badgeText
|
|
959
959
|
] });
|
|
@@ -1010,7 +1010,7 @@ function HeroDeveloperToolsCode({
|
|
|
1010
1010
|
className,
|
|
1011
1011
|
containerClassName,
|
|
1012
1012
|
children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "pt-8 md:pt-0", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "grid items-center gap-12 lg:grid-cols-2 lg:gap-20", children: [
|
|
1013
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("flex flex-col gap-8", contentClassName), children: [
|
|
1013
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("flex flex-col gap-4 md:gap-8", contentClassName), children: [
|
|
1014
1014
|
renderBadge,
|
|
1015
1015
|
heading && (typeof heading === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
1016
1016
|
"h1",
|
|
@@ -932,7 +932,7 @@ function HeroDeveloperToolsCode({
|
|
|
932
932
|
const renderBadge = useMemo(() => {
|
|
933
933
|
if (badgeSlot) return badgeSlot;
|
|
934
934
|
if (!badgeText && !badgeIcon) return null;
|
|
935
|
-
return /* @__PURE__ */ jsxs(Badge, { className: "
|
|
935
|
+
return /* @__PURE__ */ jsxs(Badge, { className: "gap-2 px-4 py-1", children: [
|
|
936
936
|
badgeIcon && /* @__PURE__ */ jsx(DynamicIcon, { name: badgeIcon, size: 14 }),
|
|
937
937
|
badgeText
|
|
938
938
|
] });
|
|
@@ -989,7 +989,7 @@ function HeroDeveloperToolsCode({
|
|
|
989
989
|
className,
|
|
990
990
|
containerClassName,
|
|
991
991
|
children: /* @__PURE__ */ jsx("div", { className: "pt-8 md:pt-0", children: /* @__PURE__ */ jsxs("div", { className: "grid items-center gap-12 lg:grid-cols-2 lg:gap-20", children: [
|
|
992
|
-
/* @__PURE__ */ jsxs("div", { className: cn("flex flex-col gap-8", contentClassName), children: [
|
|
992
|
+
/* @__PURE__ */ jsxs("div", { className: cn("flex flex-col gap-4 md:gap-8", contentClassName), children: [
|
|
993
993
|
renderBadge,
|
|
994
994
|
heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
|
|
995
995
|
"h1",
|
|
@@ -896,11 +896,11 @@ function HeroDigitalAgencyFullscreen({
|
|
|
896
896
|
actionsSlot,
|
|
897
897
|
backgroundImage,
|
|
898
898
|
background,
|
|
899
|
-
spacing = "none",
|
|
900
899
|
pattern,
|
|
901
900
|
patternOpacity,
|
|
902
901
|
className,
|
|
903
|
-
|
|
902
|
+
spacing = "py-0 md:py-0",
|
|
903
|
+
containerClassName = "w-screen max-w-full relative z-10 px-0 min-h-screen h-full",
|
|
904
904
|
contentClassName,
|
|
905
905
|
headingClassName,
|
|
906
906
|
descriptionClassName,
|
|
@@ -946,7 +946,7 @@ function HeroDigitalAgencyFullscreen({
|
|
|
946
946
|
img.Img,
|
|
947
947
|
{
|
|
948
948
|
src: backgroundImage,
|
|
949
|
-
alt: "",
|
|
949
|
+
alt: "Hero Background Image",
|
|
950
950
|
className: "h-full w-full brightness-50 object-cover object-center",
|
|
951
951
|
eager: true,
|
|
952
952
|
optixFlowConfig
|
|
@@ -954,20 +954,21 @@ function HeroDigitalAgencyFullscreen({
|
|
|
954
954
|
)
|
|
955
955
|
}
|
|
956
956
|
),
|
|
957
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "relative", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
957
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "relative", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
958
958
|
"div",
|
|
959
959
|
{
|
|
960
960
|
className: cn(
|
|
961
|
-
"
|
|
961
|
+
"flex min-h-screen h-full w-full flex-col items-center justify-end",
|
|
962
962
|
contentClassName
|
|
963
963
|
),
|
|
964
|
-
children: [
|
|
964
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "container flex flex-col gap-6 mb-6 md:mb-24 px-6 md:px-0", children: [
|
|
965
965
|
heading && (typeof heading === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
966
966
|
"h1",
|
|
967
967
|
{
|
|
968
968
|
className: cn(
|
|
969
|
-
"
|
|
970
|
-
headingClassName
|
|
969
|
+
"text-4xl font-bold text-balance md:text-7xl",
|
|
970
|
+
headingClassName,
|
|
971
|
+
backgroundImage ? "text-white text-shadow-2xl" : ""
|
|
971
972
|
),
|
|
972
973
|
children: heading
|
|
973
974
|
}
|
|
@@ -976,8 +977,9 @@ function HeroDigitalAgencyFullscreen({
|
|
|
976
977
|
"p",
|
|
977
978
|
{
|
|
978
979
|
className: cn(
|
|
979
|
-
"
|
|
980
|
-
descriptionClassName
|
|
980
|
+
"max-w-full md:max-w-[70%] text-lg md:text-xl font-normal text-balance",
|
|
981
|
+
descriptionClassName,
|
|
982
|
+
backgroundImage ? "text-white text-shadow-2xl" : ""
|
|
981
983
|
),
|
|
982
984
|
children: description
|
|
983
985
|
}
|
|
@@ -990,9 +992,9 @@ function HeroDigitalAgencyFullscreen({
|
|
|
990
992
|
actionsClassName
|
|
991
993
|
}
|
|
992
994
|
)
|
|
993
|
-
]
|
|
995
|
+
] })
|
|
994
996
|
}
|
|
995
|
-
) })
|
|
997
|
+
) })
|
|
996
998
|
]
|
|
997
999
|
}
|
|
998
1000
|
);
|
|
@@ -72,6 +72,6 @@ interface HeroDigitalAgencyFullscreenProps {
|
|
|
72
72
|
*/
|
|
73
73
|
optixFlowConfig?: OptixFlowConfig;
|
|
74
74
|
}
|
|
75
|
-
declare function HeroDigitalAgencyFullscreen({ heading, description, actions, actionsSlot, backgroundImage, background,
|
|
75
|
+
declare function HeroDigitalAgencyFullscreen({ heading, description, actions, actionsSlot, backgroundImage, background, pattern, patternOpacity, className, spacing, containerClassName, contentClassName, headingClassName, descriptionClassName, actionsClassName, optixFlowConfig, }: HeroDigitalAgencyFullscreenProps): React.JSX.Element;
|
|
76
76
|
|
|
77
77
|
export { HeroDigitalAgencyFullscreen, type HeroDigitalAgencyFullscreenProps };
|
|
@@ -72,6 +72,6 @@ interface HeroDigitalAgencyFullscreenProps {
|
|
|
72
72
|
*/
|
|
73
73
|
optixFlowConfig?: OptixFlowConfig;
|
|
74
74
|
}
|
|
75
|
-
declare function HeroDigitalAgencyFullscreen({ heading, description, actions, actionsSlot, backgroundImage, background,
|
|
75
|
+
declare function HeroDigitalAgencyFullscreen({ heading, description, actions, actionsSlot, backgroundImage, background, pattern, patternOpacity, className, spacing, containerClassName, contentClassName, headingClassName, descriptionClassName, actionsClassName, optixFlowConfig, }: HeroDigitalAgencyFullscreenProps): React.JSX.Element;
|
|
76
76
|
|
|
77
77
|
export { HeroDigitalAgencyFullscreen, type HeroDigitalAgencyFullscreenProps };
|
|
@@ -875,11 +875,11 @@ function HeroDigitalAgencyFullscreen({
|
|
|
875
875
|
actionsSlot,
|
|
876
876
|
backgroundImage,
|
|
877
877
|
background,
|
|
878
|
-
spacing = "none",
|
|
879
878
|
pattern,
|
|
880
879
|
patternOpacity,
|
|
881
880
|
className,
|
|
882
|
-
|
|
881
|
+
spacing = "py-0 md:py-0",
|
|
882
|
+
containerClassName = "w-screen max-w-full relative z-10 px-0 min-h-screen h-full",
|
|
883
883
|
contentClassName,
|
|
884
884
|
headingClassName,
|
|
885
885
|
descriptionClassName,
|
|
@@ -925,7 +925,7 @@ function HeroDigitalAgencyFullscreen({
|
|
|
925
925
|
Img,
|
|
926
926
|
{
|
|
927
927
|
src: backgroundImage,
|
|
928
|
-
alt: "",
|
|
928
|
+
alt: "Hero Background Image",
|
|
929
929
|
className: "h-full w-full brightness-50 object-cover object-center",
|
|
930
930
|
eager: true,
|
|
931
931
|
optixFlowConfig
|
|
@@ -933,20 +933,21 @@ function HeroDigitalAgencyFullscreen({
|
|
|
933
933
|
)
|
|
934
934
|
}
|
|
935
935
|
),
|
|
936
|
-
/* @__PURE__ */ jsx("div", { className: "relative", children: /* @__PURE__ */ jsx(
|
|
936
|
+
/* @__PURE__ */ jsx("div", { className: "relative", children: /* @__PURE__ */ jsx(
|
|
937
937
|
"div",
|
|
938
938
|
{
|
|
939
939
|
className: cn(
|
|
940
|
-
"
|
|
940
|
+
"flex min-h-screen h-full w-full flex-col items-center justify-end",
|
|
941
941
|
contentClassName
|
|
942
942
|
),
|
|
943
|
-
children: [
|
|
943
|
+
children: /* @__PURE__ */ jsxs("div", { className: "container flex flex-col gap-6 mb-6 md:mb-24 px-6 md:px-0", children: [
|
|
944
944
|
heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
|
|
945
945
|
"h1",
|
|
946
946
|
{
|
|
947
947
|
className: cn(
|
|
948
|
-
"
|
|
949
|
-
headingClassName
|
|
948
|
+
"text-4xl font-bold text-balance md:text-7xl",
|
|
949
|
+
headingClassName,
|
|
950
|
+
backgroundImage ? "text-white text-shadow-2xl" : ""
|
|
950
951
|
),
|
|
951
952
|
children: heading
|
|
952
953
|
}
|
|
@@ -955,8 +956,9 @@ function HeroDigitalAgencyFullscreen({
|
|
|
955
956
|
"p",
|
|
956
957
|
{
|
|
957
958
|
className: cn(
|
|
958
|
-
"
|
|
959
|
-
descriptionClassName
|
|
959
|
+
"max-w-full md:max-w-[70%] text-lg md:text-xl font-normal text-balance",
|
|
960
|
+
descriptionClassName,
|
|
961
|
+
backgroundImage ? "text-white text-shadow-2xl" : ""
|
|
960
962
|
),
|
|
961
963
|
children: description
|
|
962
964
|
}
|
|
@@ -969,9 +971,9 @@ function HeroDigitalAgencyFullscreen({
|
|
|
969
971
|
actionsClassName
|
|
970
972
|
}
|
|
971
973
|
)
|
|
972
|
-
]
|
|
974
|
+
] })
|
|
973
975
|
}
|
|
974
|
-
) })
|
|
976
|
+
) })
|
|
975
977
|
]
|
|
976
978
|
}
|
|
977
979
|
);
|