@opensite/ui 3.6.7 → 3.6.9

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.
@@ -534,6 +534,48 @@ function ActionComponent({ action }) {
534
534
  }
535
535
  );
536
536
  }
537
+ var SIZE_CLASSES = {
538
+ sm: "max-h-6 sm:max-h-7",
539
+ md: "max-h-8 sm:max-h-9 lg:max-h-10",
540
+ lg: "max-h-10 sm:max-h-12 lg:max-h-14",
541
+ xl: "max-h-12 sm:max-h-14 lg:max-h-16"
542
+ };
543
+ var BrandLogo = ({
544
+ logo,
545
+ logoSlot,
546
+ logoClassName,
547
+ size = "md",
548
+ optixFlowConfig
549
+ }) => {
550
+ if (logoSlot) return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: logoSlot });
551
+ if (!logo || !logo.src) return null;
552
+ const imgElement = /* @__PURE__ */ jsxRuntime.jsx(
553
+ img.Img,
554
+ {
555
+ src: logo.src,
556
+ className: cn(
557
+ "w-auto object-contain",
558
+ SIZE_CLASSES[size],
559
+ logo.className
560
+ ),
561
+ alt: logo.alt || "Logo",
562
+ optixFlowConfig,
563
+ loading: "eager"
564
+ }
565
+ );
566
+ if (logo.url) {
567
+ return /* @__PURE__ */ jsxRuntime.jsx(
568
+ pressable.Pressable,
569
+ {
570
+ href: logo.url,
571
+ className: cn("flex items-center", logoClassName),
572
+ children: imgElement
573
+ }
574
+ );
575
+ }
576
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("flex items-center", logoClassName), children: imgElement });
577
+ };
578
+ var brand_logo_default = BrandLogo;
537
579
  function HeroEventRegistration({
538
580
  sectionId = "hero-event-registration",
539
581
  badgeText,
@@ -564,6 +606,8 @@ function HeroEventRegistration({
564
606
  imageClassName,
565
607
  optixFlowConfig,
566
608
  logo,
609
+ logoSlot,
610
+ logoClassName,
567
611
  directionConfig = { desktop: "mediaRight", mobile: "mediaTop" }
568
612
  }) {
569
613
  const renderBadge = React.useMemo(() => {
@@ -721,13 +765,11 @@ function HeroEventRegistration({
721
765
  ),
722
766
  children: [
723
767
  renderBadge,
724
- logo && /* @__PURE__ */ jsxRuntime.jsx(
725
- img.Img,
768
+ (logo || logoSlot) && /* @__PURE__ */ jsxRuntime.jsx(
769
+ "div",
726
770
  {
727
- src: logo.src,
728
- alt: logo.alt,
729
- className: "w-auto max-w-full h-12 md:h-14 object-contain my-4",
730
- optixFlowConfig
771
+ className: cn("mb-1 mt-4 flex justify-start", logoClassName),
772
+ children: /* @__PURE__ */ jsxRuntime.jsx(brand_logo_default, { logo, logoSlot, size: "lg" })
731
773
  }
732
774
  ),
733
775
  heading && (typeof heading === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
@@ -1,7 +1,10 @@
1
1
  import * as React from 'react';
2
2
  import { S as SectionBackground, s as SectionSpacing, t as PatternName } from './community-initiatives-Cgd-IXlI.cjs';
3
+ import { L as LogoConfig } from './types-mWZcgKth.cjs';
3
4
  import { A as ActionConfig, k as StatItem, I as ImageItem, O as OptixFlowConfig } from './blocks-DyouPohq.cjs';
4
5
  import 'react/jsx-runtime';
6
+ import './dynamic-icon.cjs';
7
+ import '@page-speed/icon';
5
8
  import 'class-variance-authority';
6
9
  import '@page-speed/pressable';
7
10
  import '@opensite/hooks/usePlatformFromUrl';
@@ -119,12 +122,18 @@ interface HeroEventRegistrationProps {
119
122
  */
120
123
  optixFlowConfig?: OptixFlowConfig;
121
124
  /**
122
- * Logo image configuration
125
+ * Brand logo configuration — renders centered above the heading.
126
+ * LOGO MEDIA ONLY. Do not use photos, hero images, or video assets.
123
127
  */
124
- logo?: {
125
- src: string;
126
- alt: string;
127
- };
128
+ logo?: LogoConfig;
129
+ /**
130
+ * Custom slot for logo (overrides logo prop)
131
+ */
132
+ logoSlot?: React.ReactNode;
133
+ /**
134
+ * Additional CSS classes for the logo container
135
+ */
136
+ logoClassName?: string;
128
137
  /**
129
138
  * Direction configuration for desktop and mobile layouts
130
139
  * @default { desktop: 'mediaRight', mobile: 'mediaTop' }
@@ -133,6 +142,6 @@ interface HeroEventRegistrationProps {
133
142
  /** Optional Section ID */
134
143
  sectionId?: string;
135
144
  }
136
- declare function HeroEventRegistration({ sectionId, badgeText, badgeIcon, badgeSlot, heading, description, actions, actionsSlot, stats, statsSlot, image, imageSlot, locationLabel, locationSublabel, locationSlot, background, containerClassName, spacing, pattern, patternOpacity, className, contentClassName, headingClassName, descriptionClassName, actionsClassName, statsClassName, imageClassName, optixFlowConfig, logo, directionConfig, }: HeroEventRegistrationProps): React.JSX.Element;
145
+ declare function HeroEventRegistration({ sectionId, badgeText, badgeIcon, badgeSlot, heading, description, actions, actionsSlot, stats, statsSlot, image, imageSlot, locationLabel, locationSublabel, locationSlot, background, containerClassName, spacing, pattern, patternOpacity, className, contentClassName, headingClassName, descriptionClassName, actionsClassName, statsClassName, imageClassName, optixFlowConfig, logo, logoSlot, logoClassName, directionConfig, }: HeroEventRegistrationProps): React.JSX.Element;
137
146
 
138
147
  export { HeroEventRegistration, type HeroEventRegistrationProps };
@@ -1,7 +1,10 @@
1
1
  import * as React from 'react';
2
2
  import { S as SectionBackground, s as SectionSpacing, t as PatternName } from './community-initiatives-Dud0DKXB.js';
3
+ import { L as LogoConfig } from './types-hJ2R0GoH.js';
3
4
  import { A as ActionConfig, k as StatItem, I as ImageItem, O as OptixFlowConfig } from './blocks-DyouPohq.js';
4
5
  import 'react/jsx-runtime';
6
+ import './dynamic-icon.js';
7
+ import '@page-speed/icon';
5
8
  import 'class-variance-authority';
6
9
  import '@page-speed/pressable';
7
10
  import '@opensite/hooks/usePlatformFromUrl';
@@ -119,12 +122,18 @@ interface HeroEventRegistrationProps {
119
122
  */
120
123
  optixFlowConfig?: OptixFlowConfig;
121
124
  /**
122
- * Logo image configuration
125
+ * Brand logo configuration — renders centered above the heading.
126
+ * LOGO MEDIA ONLY. Do not use photos, hero images, or video assets.
123
127
  */
124
- logo?: {
125
- src: string;
126
- alt: string;
127
- };
128
+ logo?: LogoConfig;
129
+ /**
130
+ * Custom slot for logo (overrides logo prop)
131
+ */
132
+ logoSlot?: React.ReactNode;
133
+ /**
134
+ * Additional CSS classes for the logo container
135
+ */
136
+ logoClassName?: string;
128
137
  /**
129
138
  * Direction configuration for desktop and mobile layouts
130
139
  * @default { desktop: 'mediaRight', mobile: 'mediaTop' }
@@ -133,6 +142,6 @@ interface HeroEventRegistrationProps {
133
142
  /** Optional Section ID */
134
143
  sectionId?: string;
135
144
  }
136
- declare function HeroEventRegistration({ sectionId, badgeText, badgeIcon, badgeSlot, heading, description, actions, actionsSlot, stats, statsSlot, image, imageSlot, locationLabel, locationSublabel, locationSlot, background, containerClassName, spacing, pattern, patternOpacity, className, contentClassName, headingClassName, descriptionClassName, actionsClassName, statsClassName, imageClassName, optixFlowConfig, logo, directionConfig, }: HeroEventRegistrationProps): React.JSX.Element;
145
+ declare function HeroEventRegistration({ sectionId, badgeText, badgeIcon, badgeSlot, heading, description, actions, actionsSlot, stats, statsSlot, image, imageSlot, locationLabel, locationSublabel, locationSlot, background, containerClassName, spacing, pattern, patternOpacity, className, contentClassName, headingClassName, descriptionClassName, actionsClassName, statsClassName, imageClassName, optixFlowConfig, logo, logoSlot, logoClassName, directionConfig, }: HeroEventRegistrationProps): React.JSX.Element;
137
146
 
138
147
  export { HeroEventRegistration, type HeroEventRegistrationProps };
@@ -513,6 +513,48 @@ function ActionComponent({ action }) {
513
513
  }
514
514
  );
515
515
  }
516
+ var SIZE_CLASSES = {
517
+ sm: "max-h-6 sm:max-h-7",
518
+ md: "max-h-8 sm:max-h-9 lg:max-h-10",
519
+ lg: "max-h-10 sm:max-h-12 lg:max-h-14",
520
+ xl: "max-h-12 sm:max-h-14 lg:max-h-16"
521
+ };
522
+ var BrandLogo = ({
523
+ logo,
524
+ logoSlot,
525
+ logoClassName,
526
+ size = "md",
527
+ optixFlowConfig
528
+ }) => {
529
+ if (logoSlot) return /* @__PURE__ */ jsx(Fragment, { children: logoSlot });
530
+ if (!logo || !logo.src) return null;
531
+ const imgElement = /* @__PURE__ */ jsx(
532
+ Img,
533
+ {
534
+ src: logo.src,
535
+ className: cn(
536
+ "w-auto object-contain",
537
+ SIZE_CLASSES[size],
538
+ logo.className
539
+ ),
540
+ alt: logo.alt || "Logo",
541
+ optixFlowConfig,
542
+ loading: "eager"
543
+ }
544
+ );
545
+ if (logo.url) {
546
+ return /* @__PURE__ */ jsx(
547
+ Pressable,
548
+ {
549
+ href: logo.url,
550
+ className: cn("flex items-center", logoClassName),
551
+ children: imgElement
552
+ }
553
+ );
554
+ }
555
+ return /* @__PURE__ */ jsx("div", { className: cn("flex items-center", logoClassName), children: imgElement });
556
+ };
557
+ var brand_logo_default = BrandLogo;
516
558
  function HeroEventRegistration({
517
559
  sectionId = "hero-event-registration",
518
560
  badgeText,
@@ -543,6 +585,8 @@ function HeroEventRegistration({
543
585
  imageClassName,
544
586
  optixFlowConfig,
545
587
  logo,
588
+ logoSlot,
589
+ logoClassName,
546
590
  directionConfig = { desktop: "mediaRight", mobile: "mediaTop" }
547
591
  }) {
548
592
  const renderBadge = useMemo(() => {
@@ -700,13 +744,11 @@ function HeroEventRegistration({
700
744
  ),
701
745
  children: [
702
746
  renderBadge,
703
- logo && /* @__PURE__ */ jsx(
704
- Img,
747
+ (logo || logoSlot) && /* @__PURE__ */ jsx(
748
+ "div",
705
749
  {
706
- src: logo.src,
707
- alt: logo.alt,
708
- className: "w-auto max-w-full h-12 md:h-14 object-contain my-4",
709
- optixFlowConfig
750
+ className: cn("mb-1 mt-4 flex justify-start", logoClassName),
751
+ children: /* @__PURE__ */ jsx(brand_logo_default, { logo, logoSlot, size: "lg" })
710
752
  }
711
753
  ),
712
754
  heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
@@ -535,8 +535,53 @@ function ActionComponent({ action }) {
535
535
  }
536
536
  );
537
537
  }
538
+ var SIZE_CLASSES = {
539
+ sm: "max-h-6 sm:max-h-7",
540
+ md: "max-h-8 sm:max-h-9 lg:max-h-10",
541
+ lg: "max-h-10 sm:max-h-12 lg:max-h-14",
542
+ xl: "max-h-12 sm:max-h-14 lg:max-h-16"
543
+ };
544
+ var BrandLogo = ({
545
+ logo,
546
+ logoSlot,
547
+ logoClassName,
548
+ size = "md",
549
+ optixFlowConfig
550
+ }) => {
551
+ if (logoSlot) return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: logoSlot });
552
+ if (!logo || !logo.src) return null;
553
+ const imgElement = /* @__PURE__ */ jsxRuntime.jsx(
554
+ img.Img,
555
+ {
556
+ src: logo.src,
557
+ className: cn(
558
+ "w-auto object-contain",
559
+ SIZE_CLASSES[size],
560
+ logo.className
561
+ ),
562
+ alt: logo.alt || "Logo",
563
+ optixFlowConfig,
564
+ loading: "eager"
565
+ }
566
+ );
567
+ if (logo.url) {
568
+ return /* @__PURE__ */ jsxRuntime.jsx(
569
+ pressable.Pressable,
570
+ {
571
+ href: logo.url,
572
+ className: cn("flex items-center", logoClassName),
573
+ children: imgElement
574
+ }
575
+ );
576
+ }
577
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("flex items-center", logoClassName), children: imgElement });
578
+ };
579
+ var brand_logo_default = BrandLogo;
538
580
  function HeroFloatingImages({
539
581
  sectionId = "hero-floating-images",
582
+ logo,
583
+ logoSlot,
584
+ logoClassName,
540
585
  badge,
541
586
  badgeIcon,
542
587
  heading,
@@ -698,7 +743,7 @@ function HeroFloatingImages({
698
743
  "absolute inset-0 flex items-center justify-center opacity-0 transition-opacity group-hover:opacity-100",
699
744
  zoomIndicatorClassName
700
745
  ),
701
- children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex h-10 w-10 items-center justify-center rounded-full bg-background/90 shadow-lg", children: /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: zoomIconName, size: 16 }) })
746
+ children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex h-12 w-12 items-center justify-center rounded-full bg-primary text-primary-foreground shadow-lg", children: /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: zoomIconName, size: 20 }) })
702
747
  }
703
748
  )
704
749
  ]
@@ -762,7 +807,7 @@ function HeroFloatingImages({
762
807
  badge && /* @__PURE__ */ jsxRuntime.jsxs(
763
808
  Badge,
764
809
  {
765
- variant: "secondary",
810
+ variant: "default",
766
811
  className: cn("mb-6 w-fit", badgeClassName),
767
812
  children: [
768
813
  badge,
@@ -770,11 +815,12 @@ function HeroFloatingImages({
770
815
  ]
771
816
  }
772
817
  ),
818
+ (logo || logoSlot) && /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("mb-2 flex justify-start", logoClassName), children: /* @__PURE__ */ jsxRuntime.jsx(brand_logo_default, { logo, logoSlot, size: "lg" }) }),
773
819
  heading && (typeof heading === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
774
820
  "h1",
775
821
  {
776
822
  className: cn(
777
- "mb-6 text-4xl font-bold tracking-tight sm:text-5xl md:text-6xl",
823
+ "mb-6 text-4xl font-bold tracking-tight md:text-5xl lg:text-6xl text-pretty",
778
824
  headingClassName
779
825
  ),
780
826
  children: heading
@@ -783,7 +829,10 @@ function HeroFloatingImages({
783
829
  description && (typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
784
830
  "p",
785
831
  {
786
- className: cn("mb-8 max-w-lg text-lg", descriptionClassName),
832
+ className: cn(
833
+ "mb-8 max-w-lg text-lg text-balance",
834
+ descriptionClassName
835
+ ),
787
836
  children: description
788
837
  }
789
838
  ) : description),
@@ -1,7 +1,10 @@
1
1
  import * as React from 'react';
2
2
  import { S as SectionBackground, s as SectionSpacing, t as PatternName } from './community-initiatives-Cgd-IXlI.cjs';
3
+ import { L as LogoConfig } from './types-mWZcgKth.cjs';
3
4
  import { A as ActionConfig, O as OptixFlowConfig } from './blocks-DyouPohq.cjs';
4
5
  import 'react/jsx-runtime';
6
+ import './dynamic-icon.cjs';
7
+ import '@page-speed/icon';
5
8
  import 'class-variance-authority';
6
9
  import '@page-speed/pressable';
7
10
  import '@opensite/hooks/usePlatformFromUrl';
@@ -29,6 +32,19 @@ interface HeroFloatingImagesImage {
29
32
  className?: string;
30
33
  }
31
34
  interface HeroFloatingImagesProps {
35
+ /**
36
+ * Brand logo configuration — renders centered above the heading.
37
+ * LOGO MEDIA ONLY. Do not use photos, hero images, or video assets.
38
+ */
39
+ logo?: LogoConfig;
40
+ /**
41
+ * Custom slot for logo (overrides logo prop)
42
+ */
43
+ logoSlot?: React.ReactNode;
44
+ /**
45
+ * Additional CSS classes for the logo container
46
+ */
47
+ logoClassName?: string;
32
48
  /**
33
49
  * Badge content displayed above the heading
34
50
  */
@@ -171,6 +187,6 @@ interface HeroFloatingImagesProps {
171
187
  * />
172
188
  * ```
173
189
  */
174
- declare function HeroFloatingImages({ sectionId, badge, badgeIcon, heading, description, actions, actionsSlot, images, imagesSlot, zoomIconName, enableLightbox, background, pattern, patternOpacity, className, gridClassName, contentClassName, badgeClassName, headingClassName, descriptionClassName, actionsClassName, galleryClassName, featuredImageClassName, secondaryImageClassName, imageClassName, zoomIndicatorClassName, optixFlowConfig, containerClassName, spacing, }: HeroFloatingImagesProps): React.JSX.Element;
190
+ declare function HeroFloatingImages({ sectionId, logo, logoSlot, logoClassName, badge, badgeIcon, heading, description, actions, actionsSlot, images, imagesSlot, zoomIconName, enableLightbox, background, pattern, patternOpacity, className, gridClassName, contentClassName, badgeClassName, headingClassName, descriptionClassName, actionsClassName, galleryClassName, featuredImageClassName, secondaryImageClassName, imageClassName, zoomIndicatorClassName, optixFlowConfig, containerClassName, spacing, }: HeroFloatingImagesProps): React.JSX.Element;
175
191
 
176
192
  export { HeroFloatingImages, type HeroFloatingImagesProps };
@@ -1,7 +1,10 @@
1
1
  import * as React from 'react';
2
2
  import { S as SectionBackground, s as SectionSpacing, t as PatternName } from './community-initiatives-Dud0DKXB.js';
3
+ import { L as LogoConfig } from './types-hJ2R0GoH.js';
3
4
  import { A as ActionConfig, O as OptixFlowConfig } from './blocks-DyouPohq.js';
4
5
  import 'react/jsx-runtime';
6
+ import './dynamic-icon.js';
7
+ import '@page-speed/icon';
5
8
  import 'class-variance-authority';
6
9
  import '@page-speed/pressable';
7
10
  import '@opensite/hooks/usePlatformFromUrl';
@@ -29,6 +32,19 @@ interface HeroFloatingImagesImage {
29
32
  className?: string;
30
33
  }
31
34
  interface HeroFloatingImagesProps {
35
+ /**
36
+ * Brand logo configuration — renders centered above the heading.
37
+ * LOGO MEDIA ONLY. Do not use photos, hero images, or video assets.
38
+ */
39
+ logo?: LogoConfig;
40
+ /**
41
+ * Custom slot for logo (overrides logo prop)
42
+ */
43
+ logoSlot?: React.ReactNode;
44
+ /**
45
+ * Additional CSS classes for the logo container
46
+ */
47
+ logoClassName?: string;
32
48
  /**
33
49
  * Badge content displayed above the heading
34
50
  */
@@ -171,6 +187,6 @@ interface HeroFloatingImagesProps {
171
187
  * />
172
188
  * ```
173
189
  */
174
- declare function HeroFloatingImages({ sectionId, badge, badgeIcon, heading, description, actions, actionsSlot, images, imagesSlot, zoomIconName, enableLightbox, background, pattern, patternOpacity, className, gridClassName, contentClassName, badgeClassName, headingClassName, descriptionClassName, actionsClassName, galleryClassName, featuredImageClassName, secondaryImageClassName, imageClassName, zoomIndicatorClassName, optixFlowConfig, containerClassName, spacing, }: HeroFloatingImagesProps): React.JSX.Element;
190
+ declare function HeroFloatingImages({ sectionId, logo, logoSlot, logoClassName, badge, badgeIcon, heading, description, actions, actionsSlot, images, imagesSlot, zoomIconName, enableLightbox, background, pattern, patternOpacity, className, gridClassName, contentClassName, badgeClassName, headingClassName, descriptionClassName, actionsClassName, galleryClassName, featuredImageClassName, secondaryImageClassName, imageClassName, zoomIndicatorClassName, optixFlowConfig, containerClassName, spacing, }: HeroFloatingImagesProps): React.JSX.Element;
175
191
 
176
192
  export { HeroFloatingImages, type HeroFloatingImagesProps };
@@ -514,8 +514,53 @@ function ActionComponent({ action }) {
514
514
  }
515
515
  );
516
516
  }
517
+ var SIZE_CLASSES = {
518
+ sm: "max-h-6 sm:max-h-7",
519
+ md: "max-h-8 sm:max-h-9 lg:max-h-10",
520
+ lg: "max-h-10 sm:max-h-12 lg:max-h-14",
521
+ xl: "max-h-12 sm:max-h-14 lg:max-h-16"
522
+ };
523
+ var BrandLogo = ({
524
+ logo,
525
+ logoSlot,
526
+ logoClassName,
527
+ size = "md",
528
+ optixFlowConfig
529
+ }) => {
530
+ if (logoSlot) return /* @__PURE__ */ jsx(Fragment, { children: logoSlot });
531
+ if (!logo || !logo.src) return null;
532
+ const imgElement = /* @__PURE__ */ jsx(
533
+ Img,
534
+ {
535
+ src: logo.src,
536
+ className: cn(
537
+ "w-auto object-contain",
538
+ SIZE_CLASSES[size],
539
+ logo.className
540
+ ),
541
+ alt: logo.alt || "Logo",
542
+ optixFlowConfig,
543
+ loading: "eager"
544
+ }
545
+ );
546
+ if (logo.url) {
547
+ return /* @__PURE__ */ jsx(
548
+ Pressable,
549
+ {
550
+ href: logo.url,
551
+ className: cn("flex items-center", logoClassName),
552
+ children: imgElement
553
+ }
554
+ );
555
+ }
556
+ return /* @__PURE__ */ jsx("div", { className: cn("flex items-center", logoClassName), children: imgElement });
557
+ };
558
+ var brand_logo_default = BrandLogo;
517
559
  function HeroFloatingImages({
518
560
  sectionId = "hero-floating-images",
561
+ logo,
562
+ logoSlot,
563
+ logoClassName,
519
564
  badge,
520
565
  badgeIcon,
521
566
  heading,
@@ -677,7 +722,7 @@ function HeroFloatingImages({
677
722
  "absolute inset-0 flex items-center justify-center opacity-0 transition-opacity group-hover:opacity-100",
678
723
  zoomIndicatorClassName
679
724
  ),
680
- children: /* @__PURE__ */ jsx("div", { className: "flex h-10 w-10 items-center justify-center rounded-full bg-background/90 shadow-lg", children: /* @__PURE__ */ jsx(DynamicIcon, { name: zoomIconName, size: 16 }) })
725
+ children: /* @__PURE__ */ jsx("div", { className: "flex h-12 w-12 items-center justify-center rounded-full bg-primary text-primary-foreground shadow-lg", children: /* @__PURE__ */ jsx(DynamicIcon, { name: zoomIconName, size: 20 }) })
681
726
  }
682
727
  )
683
728
  ]
@@ -741,7 +786,7 @@ function HeroFloatingImages({
741
786
  badge && /* @__PURE__ */ jsxs(
742
787
  Badge,
743
788
  {
744
- variant: "secondary",
789
+ variant: "default",
745
790
  className: cn("mb-6 w-fit", badgeClassName),
746
791
  children: [
747
792
  badge,
@@ -749,11 +794,12 @@ function HeroFloatingImages({
749
794
  ]
750
795
  }
751
796
  ),
797
+ (logo || logoSlot) && /* @__PURE__ */ jsx("div", { className: cn("mb-2 flex justify-start", logoClassName), children: /* @__PURE__ */ jsx(brand_logo_default, { logo, logoSlot, size: "lg" }) }),
752
798
  heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
753
799
  "h1",
754
800
  {
755
801
  className: cn(
756
- "mb-6 text-4xl font-bold tracking-tight sm:text-5xl md:text-6xl",
802
+ "mb-6 text-4xl font-bold tracking-tight md:text-5xl lg:text-6xl text-pretty",
757
803
  headingClassName
758
804
  ),
759
805
  children: heading
@@ -762,7 +808,10 @@ function HeroFloatingImages({
762
808
  description && (typeof description === "string" ? /* @__PURE__ */ jsx(
763
809
  "p",
764
810
  {
765
- className: cn("mb-8 max-w-lg text-lg", descriptionClassName),
811
+ className: cn(
812
+ "mb-8 max-w-lg text-lg text-balance",
813
+ descriptionClassName
814
+ ),
766
815
  children: description
767
816
  }
768
817
  ) : description),
@@ -538,17 +538,17 @@ function HeroFullscreenBackgroundImage({
538
538
  ),
539
539
  children: heading
540
540
  }
541
- ) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: headingClassName, children: heading })),
541
+ ) : heading),
542
542
  description && (typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
543
543
  "p",
544
544
  {
545
545
  className: cn(
546
- "text-center text-base text-balance text-white text-shadow-lg",
546
+ "text-center text-base text-balance text-white text-shadow-lg max-w-full md:max-w-sm",
547
547
  descriptionClassName
548
548
  ),
549
549
  children: description
550
550
  }
551
- ) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: descriptionClassName, children: description })),
551
+ ) : description),
552
552
  /* @__PURE__ */ jsxRuntime.jsx(
553
553
  BlockActions,
554
554
  {
@@ -532,17 +532,17 @@ function HeroFullscreenBackgroundImage({
532
532
  ),
533
533
  children: heading
534
534
  }
535
- ) : /* @__PURE__ */ jsx("div", { className: headingClassName, children: heading })),
535
+ ) : heading),
536
536
  description && (typeof description === "string" ? /* @__PURE__ */ jsx(
537
537
  "p",
538
538
  {
539
539
  className: cn(
540
- "text-center text-base text-balance text-white text-shadow-lg",
540
+ "text-center text-base text-balance text-white text-shadow-lg max-w-full md:max-w-sm",
541
541
  descriptionClassName
542
542
  ),
543
543
  children: description
544
544
  }
545
- ) : /* @__PURE__ */ jsx("div", { className: descriptionClassName, children: description })),
545
+ ) : description),
546
546
  /* @__PURE__ */ jsx(
547
547
  BlockActions,
548
548
  {
@@ -589,8 +589,6 @@ function HeroMentorshipVideoSplit({
589
589
  pressable.Pressable,
590
590
  {
591
591
  onClick: () => setIsVideoOpen(true),
592
- asButton: true,
593
- variant: "ghost",
594
592
  className: cn(
595
593
  "group relative flex overflow-hidden rounded-lg p-0",
596
594
  videoAspectRatio === "vertical" ? "h-36 w-20" : "h-20 w-36"
@@ -566,8 +566,6 @@ function HeroMentorshipVideoSplit({
566
566
  Pressable,
567
567
  {
568
568
  onClick: () => setIsVideoOpen(true),
569
- asButton: true,
570
- variant: "ghost",
571
569
  className: cn(
572
570
  "group relative flex overflow-hidden rounded-lg p-0",
573
571
  videoAspectRatio === "vertical" ? "h-36 w-20" : "h-20 w-36"
@@ -541,7 +541,7 @@ function HeroOverlayCtaGrid({
541
541
  patternOpacity,
542
542
  className,
543
543
  containerClassName = "px-0 sm:px-0 lg:px-0 max-w-full relative z-10 h-screen w-screen flex justify-center items-center",
544
- contentClassName = "relative flex flex-col gap-12 px-6 pt-28 pb-6 md:pt-0 md:pb-0",
544
+ contentClassName = "relative flex flex-col gap-6 md:gap-12 px-6 pt-0 md:pt-28 pb-6 md:pt-0 md:pb-0 min-h-screen h-fit md:h-screen justify-end md:justify-center",
545
545
  headingClassName,
546
546
  descriptionClassName,
547
547
  optixFlowConfig
@@ -520,7 +520,7 @@ function HeroOverlayCtaGrid({
520
520
  patternOpacity,
521
521
  className,
522
522
  containerClassName = "px-0 sm:px-0 lg:px-0 max-w-full relative z-10 h-screen w-screen flex justify-center items-center",
523
- contentClassName = "relative flex flex-col gap-12 px-6 pt-28 pb-6 md:pt-0 md:pb-0",
523
+ contentClassName = "relative flex flex-col gap-6 md:gap-12 px-6 pt-0 md:pt-28 pb-6 md:pt-0 md:pb-0 min-h-screen h-fit md:h-screen justify-end md:justify-center",
524
524
  headingClassName,
525
525
  descriptionClassName,
526
526
  optixFlowConfig
@@ -492,7 +492,7 @@ function HeroPatternBadgeLogos({
492
492
  alt,
493
493
  className: cn(
494
494
  imgClassName,
495
- "w-full h-10 object-contain dark:hidden"
495
+ "w-full h-8 object-contain dark:hidden"
496
496
  ),
497
497
  optixFlowConfig
498
498
  }
@@ -504,7 +504,7 @@ function HeroPatternBadgeLogos({
504
504
  alt,
505
505
  className: cn(
506
506
  imgClassName,
507
- "w-full h-10 object-contain hidden dark:block"
507
+ "w-full h-8 object-contain hidden dark:block"
508
508
  ),
509
509
  optixFlowConfig
510
510
  }
@@ -514,7 +514,7 @@ function HeroPatternBadgeLogos({
514
514
  {
515
515
  src,
516
516
  alt,
517
- className: cn("w-full h-10 object-contain", imgClassName),
517
+ className: cn("w-full h-8 object-contain", imgClassName),
518
518
  optixFlowConfig
519
519
  }
520
520
  );
@@ -525,7 +525,7 @@ function HeroPatternBadgeLogos({
525
525
  "div",
526
526
  {
527
527
  className: cn(
528
- "w-auto max-h-10 h-10 flex items-center justify-center",
528
+ "w-auto max-h-8 h-8 flex items-center justify-center",
529
529
  logoClassName
530
530
  ),
531
531
  children: imgElement
@@ -563,7 +563,7 @@ function HeroPatternBadgeLogos({
563
563
  ),
564
564
  children: heading
565
565
  }
566
- ) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: headingClassName, children: heading })),
566
+ ) : heading),
567
567
  description && (typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
568
568
  "p",
569
569
  {
@@ -573,7 +573,7 @@ function HeroPatternBadgeLogos({
573
573
  ),
574
574
  children: description
575
575
  }
576
- ) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: descriptionClassName, children: description }))
576
+ ) : description)
577
577
  ] }),
578
578
  (actionsSlot || actions && actions.length > 0) && /* @__PURE__ */ jsxRuntime.jsx(
579
579
  "div",
@@ -486,7 +486,7 @@ function HeroPatternBadgeLogos({
486
486
  alt,
487
487
  className: cn(
488
488
  imgClassName,
489
- "w-full h-10 object-contain dark:hidden"
489
+ "w-full h-8 object-contain dark:hidden"
490
490
  ),
491
491
  optixFlowConfig
492
492
  }
@@ -498,7 +498,7 @@ function HeroPatternBadgeLogos({
498
498
  alt,
499
499
  className: cn(
500
500
  imgClassName,
501
- "w-full h-10 object-contain hidden dark:block"
501
+ "w-full h-8 object-contain hidden dark:block"
502
502
  ),
503
503
  optixFlowConfig
504
504
  }
@@ -508,7 +508,7 @@ function HeroPatternBadgeLogos({
508
508
  {
509
509
  src,
510
510
  alt,
511
- className: cn("w-full h-10 object-contain", imgClassName),
511
+ className: cn("w-full h-8 object-contain", imgClassName),
512
512
  optixFlowConfig
513
513
  }
514
514
  );
@@ -519,7 +519,7 @@ function HeroPatternBadgeLogos({
519
519
  "div",
520
520
  {
521
521
  className: cn(
522
- "w-auto max-h-10 h-10 flex items-center justify-center",
522
+ "w-auto max-h-8 h-8 flex items-center justify-center",
523
523
  logoClassName
524
524
  ),
525
525
  children: imgElement
@@ -557,7 +557,7 @@ function HeroPatternBadgeLogos({
557
557
  ),
558
558
  children: heading
559
559
  }
560
- ) : /* @__PURE__ */ jsx("div", { className: headingClassName, children: heading })),
560
+ ) : heading),
561
561
  description && (typeof description === "string" ? /* @__PURE__ */ jsx(
562
562
  "p",
563
563
  {
@@ -567,7 +567,7 @@ function HeroPatternBadgeLogos({
567
567
  ),
568
568
  children: description
569
569
  }
570
- ) : /* @__PURE__ */ jsx("div", { className: descriptionClassName, children: description }))
570
+ ) : description)
571
571
  ] }),
572
572
  (actionsSlot || actions && actions.length > 0) && /* @__PURE__ */ jsx(
573
573
  "div",
@@ -560,7 +560,7 @@ function HeroPresentationPlatformVideo({
560
560
  _type: "text",
561
561
  as: "h1",
562
562
  className: cn(
563
- "text-5xl font-medium md:text-6xl lg:text-7xl",
563
+ "text-5xl font-medium md:text-6xl lg:text-7xl text-pretty",
564
564
  headingClassName
565
565
  ),
566
566
  children: heading
@@ -574,7 +574,10 @@ function HeroPresentationPlatformVideo({
574
574
  items.push({
575
575
  _type: "text",
576
576
  as: "p",
577
- className: cn("my-0 md:my-8 md:text-xl", descriptionClassName),
577
+ className: cn(
578
+ "my-0 md:my-8 md:text-xl text-balance",
579
+ descriptionClassName
580
+ ),
578
581
  children: description
579
582
  });
580
583
  } else {
@@ -539,7 +539,7 @@ function HeroPresentationPlatformVideo({
539
539
  _type: "text",
540
540
  as: "h1",
541
541
  className: cn(
542
- "text-5xl font-medium md:text-6xl lg:text-7xl",
542
+ "text-5xl font-medium md:text-6xl lg:text-7xl text-pretty",
543
543
  headingClassName
544
544
  ),
545
545
  children: heading
@@ -553,7 +553,10 @@ function HeroPresentationPlatformVideo({
553
553
  items.push({
554
554
  _type: "text",
555
555
  as: "p",
556
- className: cn("my-0 md:my-8 md:text-xl", descriptionClassName),
556
+ className: cn(
557
+ "my-0 md:my-8 md:text-xl text-balance",
558
+ descriptionClassName
559
+ ),
557
560
  children: description
558
561
  });
559
562
  } else {
package/dist/registry.cjs CHANGED
@@ -49522,7 +49522,7 @@ function HeroOverlayCtaGrid({
49522
49522
  patternOpacity,
49523
49523
  className,
49524
49524
  containerClassName = "px-0 sm:px-0 lg:px-0 max-w-full relative z-10 h-screen w-screen flex justify-center items-center",
49525
- contentClassName = "relative flex flex-col gap-12 px-6 pt-28 pb-6 md:pt-0 md:pb-0",
49525
+ contentClassName = "relative flex flex-col gap-6 md:gap-12 px-6 pt-0 md:pt-28 pb-6 md:pt-0 md:pb-0 min-h-screen h-fit md:h-screen justify-end md:justify-center",
49526
49526
  headingClassName,
49527
49527
  descriptionClassName,
49528
49528
  optixFlowConfig
@@ -49768,8 +49768,53 @@ function HeroSplitIconCards({
49768
49768
  }
49769
49769
  );
49770
49770
  }
49771
+ var SIZE_CLASSES = {
49772
+ sm: "max-h-6 sm:max-h-7",
49773
+ md: "max-h-8 sm:max-h-9 lg:max-h-10",
49774
+ lg: "max-h-10 sm:max-h-12 lg:max-h-14",
49775
+ xl: "max-h-12 sm:max-h-14 lg:max-h-16"
49776
+ };
49777
+ var BrandLogo = ({
49778
+ logo,
49779
+ logoSlot: logoSlot2,
49780
+ logoClassName,
49781
+ size = "md",
49782
+ optixFlowConfig
49783
+ }) => {
49784
+ if (logoSlot2) return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: logoSlot2 });
49785
+ if (!logo || !logo.src) return null;
49786
+ const imgElement = /* @__PURE__ */ jsxRuntime.jsx(
49787
+ img$1.Img,
49788
+ {
49789
+ src: logo.src,
49790
+ className: cn(
49791
+ "w-auto object-contain",
49792
+ SIZE_CLASSES[size],
49793
+ logo.className
49794
+ ),
49795
+ alt: logo.alt || "Logo",
49796
+ optixFlowConfig,
49797
+ loading: "eager"
49798
+ }
49799
+ );
49800
+ if (logo.url) {
49801
+ return /* @__PURE__ */ jsxRuntime.jsx(
49802
+ pressable.Pressable,
49803
+ {
49804
+ href: logo.url,
49805
+ className: cn("flex items-center", logoClassName),
49806
+ children: imgElement
49807
+ }
49808
+ );
49809
+ }
49810
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("flex items-center", logoClassName), children: imgElement });
49811
+ };
49812
+ var brand_logo_default = BrandLogo;
49771
49813
  function HeroFloatingImages({
49772
49814
  sectionId = "hero-floating-images",
49815
+ logo,
49816
+ logoSlot: logoSlot2,
49817
+ logoClassName,
49773
49818
  badge,
49774
49819
  badgeIcon,
49775
49820
  heading,
@@ -49931,7 +49976,7 @@ function HeroFloatingImages({
49931
49976
  "absolute inset-0 flex items-center justify-center opacity-0 transition-opacity group-hover:opacity-100",
49932
49977
  zoomIndicatorClassName
49933
49978
  ),
49934
- children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex h-10 w-10 items-center justify-center rounded-full bg-background/90 shadow-lg", children: /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: zoomIconName, size: 16 }) })
49979
+ children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex h-12 w-12 items-center justify-center rounded-full bg-primary text-primary-foreground shadow-lg", children: /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: zoomIconName, size: 20 }) })
49935
49980
  }
49936
49981
  )
49937
49982
  ]
@@ -49995,7 +50040,7 @@ function HeroFloatingImages({
49995
50040
  badge && /* @__PURE__ */ jsxRuntime.jsxs(
49996
50041
  Badge,
49997
50042
  {
49998
- variant: "secondary",
50043
+ variant: "default",
49999
50044
  className: cn("mb-6 w-fit", badgeClassName),
50000
50045
  children: [
50001
50046
  badge,
@@ -50003,11 +50048,12 @@ function HeroFloatingImages({
50003
50048
  ]
50004
50049
  }
50005
50050
  ),
50051
+ (logo || logoSlot2) && /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("mb-2 flex justify-start", logoClassName), children: /* @__PURE__ */ jsxRuntime.jsx(brand_logo_default, { logo, logoSlot: logoSlot2, size: "lg" }) }),
50006
50052
  heading && (typeof heading === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
50007
50053
  "h1",
50008
50054
  {
50009
50055
  className: cn(
50010
- "mb-6 text-4xl font-bold tracking-tight sm:text-5xl md:text-6xl",
50056
+ "mb-6 text-4xl font-bold tracking-tight md:text-5xl lg:text-6xl text-pretty",
50011
50057
  headingClassName
50012
50058
  ),
50013
50059
  children: heading
@@ -50016,7 +50062,10 @@ function HeroFloatingImages({
50016
50062
  description && (typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
50017
50063
  "p",
50018
50064
  {
50019
- className: cn("mb-8 max-w-lg text-lg", descriptionClassName),
50065
+ className: cn(
50066
+ "mb-8 max-w-lg text-lg text-balance",
50067
+ descriptionClassName
50068
+ ),
50020
50069
  children: description
50021
50070
  }
50022
50071
  ) : description),
@@ -50821,7 +50870,7 @@ function HeroPatternBadgeLogos({
50821
50870
  alt,
50822
50871
  className: cn(
50823
50872
  imgClassName,
50824
- "w-full h-10 object-contain dark:hidden"
50873
+ "w-full h-8 object-contain dark:hidden"
50825
50874
  ),
50826
50875
  optixFlowConfig
50827
50876
  }
@@ -50833,7 +50882,7 @@ function HeroPatternBadgeLogos({
50833
50882
  alt,
50834
50883
  className: cn(
50835
50884
  imgClassName,
50836
- "w-full h-10 object-contain hidden dark:block"
50885
+ "w-full h-8 object-contain hidden dark:block"
50837
50886
  ),
50838
50887
  optixFlowConfig
50839
50888
  }
@@ -50843,7 +50892,7 @@ function HeroPatternBadgeLogos({
50843
50892
  {
50844
50893
  src,
50845
50894
  alt,
50846
- className: cn("w-full h-10 object-contain", imgClassName),
50895
+ className: cn("w-full h-8 object-contain", imgClassName),
50847
50896
  optixFlowConfig
50848
50897
  }
50849
50898
  );
@@ -50854,7 +50903,7 @@ function HeroPatternBadgeLogos({
50854
50903
  "div",
50855
50904
  {
50856
50905
  className: cn(
50857
- "w-auto max-h-10 h-10 flex items-center justify-center",
50906
+ "w-auto max-h-8 h-8 flex items-center justify-center",
50858
50907
  logoClassName
50859
50908
  ),
50860
50909
  children: imgElement
@@ -50892,7 +50941,7 @@ function HeroPatternBadgeLogos({
50892
50941
  ),
50893
50942
  children: heading
50894
50943
  }
50895
- ) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: headingClassName, children: heading })),
50944
+ ) : heading),
50896
50945
  description && (typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
50897
50946
  "p",
50898
50947
  {
@@ -50902,7 +50951,7 @@ function HeroPatternBadgeLogos({
50902
50951
  ),
50903
50952
  children: description
50904
50953
  }
50905
- ) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: descriptionClassName, children: description }))
50954
+ ) : description)
50906
50955
  ] }),
50907
50956
  (actionsSlot || actions && actions.length > 0) && /* @__PURE__ */ jsxRuntime.jsx(
50908
50957
  "div",
@@ -53027,47 +53076,6 @@ function HeroGridPatternEfficiency({
53027
53076
  }
53028
53077
  );
53029
53078
  }
53030
- var SIZE_CLASSES = {
53031
- sm: "max-h-6 sm:max-h-7",
53032
- md: "max-h-8 sm:max-h-9 lg:max-h-10",
53033
- lg: "max-h-10 sm:max-h-12 lg:max-h-14",
53034
- xl: "max-h-12 sm:max-h-14 lg:max-h-16"
53035
- };
53036
- var BrandLogo = ({
53037
- logo,
53038
- logoSlot: logoSlot2,
53039
- logoClassName,
53040
- size = "md",
53041
- optixFlowConfig
53042
- }) => {
53043
- if (logoSlot2) return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: logoSlot2 });
53044
- if (!logo || !logo.src) return null;
53045
- const imgElement = /* @__PURE__ */ jsxRuntime.jsx(
53046
- img$1.Img,
53047
- {
53048
- src: logo.src,
53049
- className: cn(
53050
- "w-auto object-contain",
53051
- SIZE_CLASSES[size],
53052
- logo.className
53053
- ),
53054
- alt: logo.alt || "Logo",
53055
- optixFlowConfig,
53056
- loading: "eager"
53057
- }
53058
- );
53059
- if (logo.url) {
53060
- return /* @__PURE__ */ jsxRuntime.jsx(
53061
- pressable.Pressable,
53062
- {
53063
- href: logo.url,
53064
- className: cn("flex items-center", logoClassName),
53065
- children: imgElement
53066
- }
53067
- );
53068
- }
53069
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("flex items-center", logoClassName), children: imgElement });
53070
- };
53071
53079
  function HeroDashedBorderFeatures({
53072
53080
  sectionId = "hero-dashed-border-features",
53073
53081
  logo,
@@ -53837,17 +53845,17 @@ function HeroFullscreenBackgroundImage({
53837
53845
  ),
53838
53846
  children: heading
53839
53847
  }
53840
- ) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: headingClassName, children: heading })),
53848
+ ) : heading),
53841
53849
  description && (typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
53842
53850
  "p",
53843
53851
  {
53844
53852
  className: cn(
53845
- "text-center text-base text-balance text-white text-shadow-lg",
53853
+ "text-center text-base text-balance text-white text-shadow-lg max-w-full md:max-w-sm",
53846
53854
  descriptionClassName
53847
53855
  ),
53848
53856
  children: description
53849
53857
  }
53850
- ) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: descriptionClassName, children: description })),
53858
+ ) : description),
53851
53859
  /* @__PURE__ */ jsxRuntime.jsx(
53852
53860
  BlockActions,
53853
53861
  {
@@ -54747,7 +54755,7 @@ function HeroPresentationPlatformVideo({
54747
54755
  _type: "text",
54748
54756
  as: "h1",
54749
54757
  className: cn(
54750
- "text-5xl font-medium md:text-6xl lg:text-7xl",
54758
+ "text-5xl font-medium md:text-6xl lg:text-7xl text-pretty",
54751
54759
  headingClassName
54752
54760
  ),
54753
54761
  children: heading
@@ -54761,7 +54769,10 @@ function HeroPresentationPlatformVideo({
54761
54769
  items.push({
54762
54770
  _type: "text",
54763
54771
  as: "p",
54764
- className: cn("my-0 md:my-8 md:text-xl", descriptionClassName),
54772
+ className: cn(
54773
+ "my-0 md:my-8 md:text-xl text-balance",
54774
+ descriptionClassName
54775
+ ),
54765
54776
  children: description
54766
54777
  });
54767
54778
  } else {
@@ -58489,8 +58500,6 @@ function HeroMentorshipVideoSplit({
58489
58500
  pressable.Pressable,
58490
58501
  {
58491
58502
  onClick: () => setIsVideoOpen(true),
58492
- asButton: true,
58493
- variant: "ghost",
58494
58503
  className: cn(
58495
58504
  "group relative flex overflow-hidden rounded-lg p-0",
58496
58505
  videoAspectRatio === "vertical" ? "h-36 w-20" : "h-20 w-36"
@@ -61219,6 +61228,8 @@ function HeroEventRegistration({
61219
61228
  imageClassName,
61220
61229
  optixFlowConfig,
61221
61230
  logo,
61231
+ logoSlot: logoSlot2,
61232
+ logoClassName,
61222
61233
  directionConfig = { desktop: "mediaRight", mobile: "mediaTop" }
61223
61234
  }) {
61224
61235
  const renderBadge = React30.useMemo(() => {
@@ -61376,13 +61387,11 @@ function HeroEventRegistration({
61376
61387
  ),
61377
61388
  children: [
61378
61389
  renderBadge,
61379
- logo && /* @__PURE__ */ jsxRuntime.jsx(
61380
- img$1.Img,
61390
+ (logo || logoSlot2) && /* @__PURE__ */ jsxRuntime.jsx(
61391
+ "div",
61381
61392
  {
61382
- src: logo.src,
61383
- alt: logo.alt,
61384
- className: "w-auto max-w-full h-12 md:h-14 object-contain my-4",
61385
- optixFlowConfig
61393
+ className: cn("mb-1 mt-4 flex justify-start", logoClassName),
61394
+ children: /* @__PURE__ */ jsxRuntime.jsx(brand_logo_default, { logo, logoSlot: logoSlot2, size: "lg" })
61386
61395
  }
61387
61396
  ),
61388
61397
  heading && (typeof heading === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
package/dist/registry.js CHANGED
@@ -49482,7 +49482,7 @@ function HeroOverlayCtaGrid({
49482
49482
  patternOpacity,
49483
49483
  className,
49484
49484
  containerClassName = "px-0 sm:px-0 lg:px-0 max-w-full relative z-10 h-screen w-screen flex justify-center items-center",
49485
- contentClassName = "relative flex flex-col gap-12 px-6 pt-28 pb-6 md:pt-0 md:pb-0",
49485
+ contentClassName = "relative flex flex-col gap-6 md:gap-12 px-6 pt-0 md:pt-28 pb-6 md:pt-0 md:pb-0 min-h-screen h-fit md:h-screen justify-end md:justify-center",
49486
49486
  headingClassName,
49487
49487
  descriptionClassName,
49488
49488
  optixFlowConfig
@@ -49728,8 +49728,53 @@ function HeroSplitIconCards({
49728
49728
  }
49729
49729
  );
49730
49730
  }
49731
+ var SIZE_CLASSES = {
49732
+ sm: "max-h-6 sm:max-h-7",
49733
+ md: "max-h-8 sm:max-h-9 lg:max-h-10",
49734
+ lg: "max-h-10 sm:max-h-12 lg:max-h-14",
49735
+ xl: "max-h-12 sm:max-h-14 lg:max-h-16"
49736
+ };
49737
+ var BrandLogo = ({
49738
+ logo,
49739
+ logoSlot: logoSlot2,
49740
+ logoClassName,
49741
+ size = "md",
49742
+ optixFlowConfig
49743
+ }) => {
49744
+ if (logoSlot2) return /* @__PURE__ */ jsx(Fragment, { children: logoSlot2 });
49745
+ if (!logo || !logo.src) return null;
49746
+ const imgElement = /* @__PURE__ */ jsx(
49747
+ Img,
49748
+ {
49749
+ src: logo.src,
49750
+ className: cn(
49751
+ "w-auto object-contain",
49752
+ SIZE_CLASSES[size],
49753
+ logo.className
49754
+ ),
49755
+ alt: logo.alt || "Logo",
49756
+ optixFlowConfig,
49757
+ loading: "eager"
49758
+ }
49759
+ );
49760
+ if (logo.url) {
49761
+ return /* @__PURE__ */ jsx(
49762
+ Pressable,
49763
+ {
49764
+ href: logo.url,
49765
+ className: cn("flex items-center", logoClassName),
49766
+ children: imgElement
49767
+ }
49768
+ );
49769
+ }
49770
+ return /* @__PURE__ */ jsx("div", { className: cn("flex items-center", logoClassName), children: imgElement });
49771
+ };
49772
+ var brand_logo_default = BrandLogo;
49731
49773
  function HeroFloatingImages({
49732
49774
  sectionId = "hero-floating-images",
49775
+ logo,
49776
+ logoSlot: logoSlot2,
49777
+ logoClassName,
49733
49778
  badge,
49734
49779
  badgeIcon,
49735
49780
  heading,
@@ -49891,7 +49936,7 @@ function HeroFloatingImages({
49891
49936
  "absolute inset-0 flex items-center justify-center opacity-0 transition-opacity group-hover:opacity-100",
49892
49937
  zoomIndicatorClassName
49893
49938
  ),
49894
- children: /* @__PURE__ */ jsx("div", { className: "flex h-10 w-10 items-center justify-center rounded-full bg-background/90 shadow-lg", children: /* @__PURE__ */ jsx(DynamicIcon, { name: zoomIconName, size: 16 }) })
49939
+ children: /* @__PURE__ */ jsx("div", { className: "flex h-12 w-12 items-center justify-center rounded-full bg-primary text-primary-foreground shadow-lg", children: /* @__PURE__ */ jsx(DynamicIcon, { name: zoomIconName, size: 20 }) })
49895
49940
  }
49896
49941
  )
49897
49942
  ]
@@ -49955,7 +50000,7 @@ function HeroFloatingImages({
49955
50000
  badge && /* @__PURE__ */ jsxs(
49956
50001
  Badge,
49957
50002
  {
49958
- variant: "secondary",
50003
+ variant: "default",
49959
50004
  className: cn("mb-6 w-fit", badgeClassName),
49960
50005
  children: [
49961
50006
  badge,
@@ -49963,11 +50008,12 @@ function HeroFloatingImages({
49963
50008
  ]
49964
50009
  }
49965
50010
  ),
50011
+ (logo || logoSlot2) && /* @__PURE__ */ jsx("div", { className: cn("mb-2 flex justify-start", logoClassName), children: /* @__PURE__ */ jsx(brand_logo_default, { logo, logoSlot: logoSlot2, size: "lg" }) }),
49966
50012
  heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
49967
50013
  "h1",
49968
50014
  {
49969
50015
  className: cn(
49970
- "mb-6 text-4xl font-bold tracking-tight sm:text-5xl md:text-6xl",
50016
+ "mb-6 text-4xl font-bold tracking-tight md:text-5xl lg:text-6xl text-pretty",
49971
50017
  headingClassName
49972
50018
  ),
49973
50019
  children: heading
@@ -49976,7 +50022,10 @@ function HeroFloatingImages({
49976
50022
  description && (typeof description === "string" ? /* @__PURE__ */ jsx(
49977
50023
  "p",
49978
50024
  {
49979
- className: cn("mb-8 max-w-lg text-lg", descriptionClassName),
50025
+ className: cn(
50026
+ "mb-8 max-w-lg text-lg text-balance",
50027
+ descriptionClassName
50028
+ ),
49980
50029
  children: description
49981
50030
  }
49982
50031
  ) : description),
@@ -50781,7 +50830,7 @@ function HeroPatternBadgeLogos({
50781
50830
  alt,
50782
50831
  className: cn(
50783
50832
  imgClassName,
50784
- "w-full h-10 object-contain dark:hidden"
50833
+ "w-full h-8 object-contain dark:hidden"
50785
50834
  ),
50786
50835
  optixFlowConfig
50787
50836
  }
@@ -50793,7 +50842,7 @@ function HeroPatternBadgeLogos({
50793
50842
  alt,
50794
50843
  className: cn(
50795
50844
  imgClassName,
50796
- "w-full h-10 object-contain hidden dark:block"
50845
+ "w-full h-8 object-contain hidden dark:block"
50797
50846
  ),
50798
50847
  optixFlowConfig
50799
50848
  }
@@ -50803,7 +50852,7 @@ function HeroPatternBadgeLogos({
50803
50852
  {
50804
50853
  src,
50805
50854
  alt,
50806
- className: cn("w-full h-10 object-contain", imgClassName),
50855
+ className: cn("w-full h-8 object-contain", imgClassName),
50807
50856
  optixFlowConfig
50808
50857
  }
50809
50858
  );
@@ -50814,7 +50863,7 @@ function HeroPatternBadgeLogos({
50814
50863
  "div",
50815
50864
  {
50816
50865
  className: cn(
50817
- "w-auto max-h-10 h-10 flex items-center justify-center",
50866
+ "w-auto max-h-8 h-8 flex items-center justify-center",
50818
50867
  logoClassName
50819
50868
  ),
50820
50869
  children: imgElement
@@ -50852,7 +50901,7 @@ function HeroPatternBadgeLogos({
50852
50901
  ),
50853
50902
  children: heading
50854
50903
  }
50855
- ) : /* @__PURE__ */ jsx("div", { className: headingClassName, children: heading })),
50904
+ ) : heading),
50856
50905
  description && (typeof description === "string" ? /* @__PURE__ */ jsx(
50857
50906
  "p",
50858
50907
  {
@@ -50862,7 +50911,7 @@ function HeroPatternBadgeLogos({
50862
50911
  ),
50863
50912
  children: description
50864
50913
  }
50865
- ) : /* @__PURE__ */ jsx("div", { className: descriptionClassName, children: description }))
50914
+ ) : description)
50866
50915
  ] }),
50867
50916
  (actionsSlot || actions && actions.length > 0) && /* @__PURE__ */ jsx(
50868
50917
  "div",
@@ -52987,47 +53036,6 @@ function HeroGridPatternEfficiency({
52987
53036
  }
52988
53037
  );
52989
53038
  }
52990
- var SIZE_CLASSES = {
52991
- sm: "max-h-6 sm:max-h-7",
52992
- md: "max-h-8 sm:max-h-9 lg:max-h-10",
52993
- lg: "max-h-10 sm:max-h-12 lg:max-h-14",
52994
- xl: "max-h-12 sm:max-h-14 lg:max-h-16"
52995
- };
52996
- var BrandLogo = ({
52997
- logo,
52998
- logoSlot: logoSlot2,
52999
- logoClassName,
53000
- size = "md",
53001
- optixFlowConfig
53002
- }) => {
53003
- if (logoSlot2) return /* @__PURE__ */ jsx(Fragment, { children: logoSlot2 });
53004
- if (!logo || !logo.src) return null;
53005
- const imgElement = /* @__PURE__ */ jsx(
53006
- Img,
53007
- {
53008
- src: logo.src,
53009
- className: cn(
53010
- "w-auto object-contain",
53011
- SIZE_CLASSES[size],
53012
- logo.className
53013
- ),
53014
- alt: logo.alt || "Logo",
53015
- optixFlowConfig,
53016
- loading: "eager"
53017
- }
53018
- );
53019
- if (logo.url) {
53020
- return /* @__PURE__ */ jsx(
53021
- Pressable,
53022
- {
53023
- href: logo.url,
53024
- className: cn("flex items-center", logoClassName),
53025
- children: imgElement
53026
- }
53027
- );
53028
- }
53029
- return /* @__PURE__ */ jsx("div", { className: cn("flex items-center", logoClassName), children: imgElement });
53030
- };
53031
53039
  function HeroDashedBorderFeatures({
53032
53040
  sectionId = "hero-dashed-border-features",
53033
53041
  logo,
@@ -53797,17 +53805,17 @@ function HeroFullscreenBackgroundImage({
53797
53805
  ),
53798
53806
  children: heading
53799
53807
  }
53800
- ) : /* @__PURE__ */ jsx("div", { className: headingClassName, children: heading })),
53808
+ ) : heading),
53801
53809
  description && (typeof description === "string" ? /* @__PURE__ */ jsx(
53802
53810
  "p",
53803
53811
  {
53804
53812
  className: cn(
53805
- "text-center text-base text-balance text-white text-shadow-lg",
53813
+ "text-center text-base text-balance text-white text-shadow-lg max-w-full md:max-w-sm",
53806
53814
  descriptionClassName
53807
53815
  ),
53808
53816
  children: description
53809
53817
  }
53810
- ) : /* @__PURE__ */ jsx("div", { className: descriptionClassName, children: description })),
53818
+ ) : description),
53811
53819
  /* @__PURE__ */ jsx(
53812
53820
  BlockActions,
53813
53821
  {
@@ -54707,7 +54715,7 @@ function HeroPresentationPlatformVideo({
54707
54715
  _type: "text",
54708
54716
  as: "h1",
54709
54717
  className: cn(
54710
- "text-5xl font-medium md:text-6xl lg:text-7xl",
54718
+ "text-5xl font-medium md:text-6xl lg:text-7xl text-pretty",
54711
54719
  headingClassName
54712
54720
  ),
54713
54721
  children: heading
@@ -54721,7 +54729,10 @@ function HeroPresentationPlatformVideo({
54721
54729
  items.push({
54722
54730
  _type: "text",
54723
54731
  as: "p",
54724
- className: cn("my-0 md:my-8 md:text-xl", descriptionClassName),
54732
+ className: cn(
54733
+ "my-0 md:my-8 md:text-xl text-balance",
54734
+ descriptionClassName
54735
+ ),
54725
54736
  children: description
54726
54737
  });
54727
54738
  } else {
@@ -58449,8 +58460,6 @@ function HeroMentorshipVideoSplit({
58449
58460
  Pressable,
58450
58461
  {
58451
58462
  onClick: () => setIsVideoOpen(true),
58452
- asButton: true,
58453
- variant: "ghost",
58454
58463
  className: cn(
58455
58464
  "group relative flex overflow-hidden rounded-lg p-0",
58456
58465
  videoAspectRatio === "vertical" ? "h-36 w-20" : "h-20 w-36"
@@ -61179,6 +61188,8 @@ function HeroEventRegistration({
61179
61188
  imageClassName,
61180
61189
  optixFlowConfig,
61181
61190
  logo,
61191
+ logoSlot: logoSlot2,
61192
+ logoClassName,
61182
61193
  directionConfig = { desktop: "mediaRight", mobile: "mediaTop" }
61183
61194
  }) {
61184
61195
  const renderBadge = useMemo(() => {
@@ -61336,13 +61347,11 @@ function HeroEventRegistration({
61336
61347
  ),
61337
61348
  children: [
61338
61349
  renderBadge,
61339
- logo && /* @__PURE__ */ jsx(
61340
- Img,
61350
+ (logo || logoSlot2) && /* @__PURE__ */ jsx(
61351
+ "div",
61341
61352
  {
61342
- src: logo.src,
61343
- alt: logo.alt,
61344
- className: "w-auto max-w-full h-12 md:h-14 object-contain my-4",
61345
- optixFlowConfig
61353
+ className: cn("mb-1 mt-4 flex justify-start", logoClassName),
61354
+ children: /* @__PURE__ */ jsx(brand_logo_default, { logo, logoSlot: logoSlot2, size: "lg" })
61346
61355
  }
61347
61356
  ),
61348
61357
  heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opensite/ui",
3
- "version": "3.6.7",
3
+ "version": "3.6.9",
4
4
  "description": "Foundational UI component library for OpenSite Semantic Site Builder with tree-shakable exports and abstract styling",
5
5
  "keywords": [
6
6
  "react",