@opensite/ui 3.7.1 → 3.7.3
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/badge.d.cts +1 -1
- package/dist/badge.d.ts +1 -1
- package/dist/hero-ad-campaign-expert.cjs +46 -1
- package/dist/hero-ad-campaign-expert.d.cts +16 -1
- package/dist/hero-ad-campaign-expert.d.ts +16 -1
- package/dist/hero-ad-campaign-expert.js +46 -1
- package/dist/hero-adaptable-product-grid.cjs +46 -1
- package/dist/hero-adaptable-product-grid.d.cts +16 -1
- package/dist/hero-adaptable-product-grid.d.ts +16 -1
- package/dist/hero-adaptable-product-grid.js +46 -1
- package/dist/hero-agency-animated-images.cjs +46 -1
- package/dist/hero-agency-animated-images.d.cts +16 -1
- package/dist/hero-agency-animated-images.d.ts +16 -1
- package/dist/hero-agency-animated-images.js +46 -1
- package/dist/hero-ai-powered-carousel.cjs +46 -1
- package/dist/hero-ai-powered-carousel.d.cts +16 -1
- package/dist/hero-ai-powered-carousel.d.ts +16 -1
- package/dist/hero-ai-powered-carousel.js +46 -1
- package/dist/hero-announcement-badge.cjs +47 -1
- package/dist/hero-announcement-badge.d.cts +16 -1
- package/dist/hero-announcement-badge.d.ts +16 -1
- package/dist/hero-announcement-badge.js +47 -1
- package/dist/hero-architecture-fullscreen.cjs +46 -1
- package/dist/hero-architecture-fullscreen.d.cts +16 -1
- package/dist/hero-architecture-fullscreen.d.ts +16 -1
- package/dist/hero-architecture-fullscreen.js +46 -1
- package/dist/hero-badge-image-split.cjs +46 -1
- package/dist/hero-badge-image-split.d.cts +16 -1
- package/dist/hero-badge-image-split.d.ts +16 -1
- package/dist/hero-badge-image-split.js +46 -1
- package/dist/hero-badge-shadow-overlay.cjs +46 -1
- package/dist/hero-badge-shadow-overlay.d.cts +16 -1
- package/dist/hero-badge-shadow-overlay.d.ts +16 -1
- package/dist/hero-badge-shadow-overlay.js +46 -1
- package/dist/hero-business-carousel-dots.cjs +46 -1
- package/dist/hero-business-carousel-dots.d.cts +16 -1
- package/dist/hero-business-carousel-dots.d.ts +16 -1
- package/dist/hero-business-carousel-dots.js +46 -1
- package/dist/hero-business-operations-mosaic.cjs +46 -1
- package/dist/hero-business-operations-mosaic.d.cts +16 -1
- package/dist/hero-business-operations-mosaic.d.ts +16 -1
- package/dist/hero-business-operations-mosaic.js +46 -1
- package/dist/hero-centered-gradient-cta.cjs +47 -1
- package/dist/hero-centered-gradient-cta.d.cts +16 -1
- package/dist/hero-centered-gradient-cta.d.ts +16 -1
- package/dist/hero-centered-gradient-cta.js +47 -1
- package/dist/hero-centered-image-grid.cjs +46 -1
- package/dist/hero-centered-image-grid.d.cts +16 -1
- package/dist/hero-centered-image-grid.d.ts +16 -1
- package/dist/hero-centered-image-grid.js +46 -1
- package/dist/hero-centered-screenshot.cjs +46 -1
- package/dist/hero-centered-screenshot.d.cts +16 -1
- package/dist/hero-centered-screenshot.d.ts +16 -1
- package/dist/hero-centered-screenshot.js +46 -1
- package/dist/hero-coming-soon-countdown.cjs +47 -1
- package/dist/hero-coming-soon-countdown.d.cts +16 -1
- package/dist/hero-coming-soon-countdown.d.ts +16 -1
- package/dist/hero-coming-soon-countdown.js +47 -1
- package/dist/hero-community-survey-cta.cjs +46 -1
- package/dist/hero-community-survey-cta.d.cts +16 -1
- package/dist/hero-community-survey-cta.d.ts +16 -1
- package/dist/hero-community-survey-cta.js +46 -1
- package/dist/hero-conversation-intelligence.cjs +46 -1
- package/dist/hero-conversation-intelligence.d.cts +16 -1
- package/dist/hero-conversation-intelligence.d.ts +16 -1
- package/dist/hero-conversation-intelligence.js +46 -1
- package/dist/hero-creative-studio-stacked.cjs +46 -1
- package/dist/hero-creative-studio-stacked.d.cts +17 -2
- package/dist/hero-creative-studio-stacked.d.ts +17 -2
- package/dist/hero-creative-studio-stacked.js +46 -1
- package/dist/hero-crm-streamlined.cjs +46 -1
- package/dist/hero-crm-streamlined.d.cts +16 -1
- package/dist/hero-crm-streamlined.d.ts +16 -1
- package/dist/hero-crm-streamlined.js +46 -1
- package/dist/hero-customer-support-layered.cjs +46 -1
- package/dist/hero-customer-support-layered.d.cts +16 -1
- package/dist/hero-customer-support-layered.d.ts +16 -1
- package/dist/hero-customer-support-layered.js +46 -1
- package/dist/hero-design-system-3d.cjs +67 -20
- package/dist/hero-design-system-3d.d.cts +16 -1
- package/dist/hero-design-system-3d.d.ts +16 -1
- package/dist/hero-design-system-3d.js +67 -20
- package/dist/hero-developer-tools-code.cjs +47 -1
- package/dist/hero-developer-tools-code.d.cts +16 -1
- package/dist/hero-developer-tools-code.d.ts +16 -1
- package/dist/hero-developer-tools-code.js +47 -1
- package/dist/hero-digital-agency-fullscreen.cjs +46 -1
- package/dist/hero-digital-agency-fullscreen.d.cts +16 -1
- package/dist/hero-digital-agency-fullscreen.d.ts +16 -1
- package/dist/hero-digital-agency-fullscreen.js +46 -1
- package/dist/hero-ecommerce-product-showcase.cjs +46 -1
- package/dist/hero-ecommerce-product-showcase.d.cts +16 -1
- package/dist/hero-ecommerce-product-showcase.d.ts +16 -1
- package/dist/hero-ecommerce-product-showcase.js +46 -1
- package/dist/hero-enterprise-security.cjs +47 -1
- package/dist/hero-enterprise-security.d.cts +16 -1
- package/dist/hero-enterprise-security.d.ts +16 -1
- package/dist/hero-enterprise-security.js +47 -1
- package/dist/hero-feature-cards-grid.cjs +47 -1
- package/dist/hero-feature-cards-grid.d.cts +16 -1
- package/dist/hero-feature-cards-grid.d.ts +16 -1
- package/dist/hero-feature-cards-grid.js +47 -1
- package/dist/hero-fullscreen-background-image.cjs +46 -1
- package/dist/hero-fullscreen-background-image.d.cts +16 -1
- package/dist/hero-fullscreen-background-image.d.ts +16 -1
- package/dist/hero-fullscreen-background-image.js +46 -1
- package/dist/hero-gradient-avatars-rating.cjs +46 -1
- package/dist/hero-gradient-avatars-rating.d.cts +16 -1
- package/dist/hero-gradient-avatars-rating.d.ts +16 -1
- package/dist/hero-gradient-avatars-rating.js +46 -1
- package/dist/hero-gradient-client-focused.cjs +46 -1
- package/dist/hero-gradient-client-focused.d.cts +16 -1
- package/dist/hero-gradient-client-focused.d.ts +16 -1
- package/dist/hero-gradient-client-focused.js +46 -1
- package/dist/hero-grid-pattern-efficiency.cjs +47 -1
- package/dist/hero-grid-pattern-efficiency.d.cts +16 -1
- package/dist/hero-grid-pattern-efficiency.d.ts +16 -1
- package/dist/hero-grid-pattern-efficiency.js +47 -1
- package/dist/hero-grid-pattern-solutions.cjs +46 -1
- package/dist/hero-grid-pattern-solutions.d.cts +16 -1
- package/dist/hero-grid-pattern-solutions.d.ts +16 -1
- package/dist/hero-grid-pattern-solutions.js +46 -1
- package/dist/hero-hiring-animated-text.cjs +47 -1
- package/dist/hero-hiring-animated-text.d.cts +16 -1
- package/dist/hero-hiring-animated-text.d.ts +16 -1
- package/dist/hero-hiring-animated-text.js +47 -1
- package/dist/hero-image-left-content.cjs +46 -1
- package/dist/hero-image-left-content.d.cts +16 -1
- package/dist/hero-image-left-content.d.ts +16 -1
- package/dist/hero-image-left-content.js +46 -1
- package/dist/hero-image-slider.cjs +46 -1
- package/dist/hero-image-slider.d.cts +16 -1
- package/dist/hero-image-slider.d.ts +16 -1
- package/dist/hero-image-slider.js +46 -1
- package/dist/hero-innovation-image-grid.cjs +46 -1
- package/dist/hero-innovation-image-grid.d.cts +16 -1
- package/dist/hero-innovation-image-grid.d.ts +16 -1
- package/dist/hero-innovation-image-grid.js +46 -1
- package/dist/hero-logo-centered-screenshot.cjs +2 -2
- package/dist/hero-logo-centered-screenshot.js +2 -2
- package/dist/hero-marketplace-scattered-images.cjs +46 -1
- package/dist/hero-marketplace-scattered-images.d.cts +16 -1
- package/dist/hero-marketplace-scattered-images.d.ts +16 -1
- package/dist/hero-marketplace-scattered-images.js +46 -1
- package/dist/hero-minimal-centered-dark.cjs +47 -1
- package/dist/hero-minimal-centered-dark.d.cts +16 -1
- package/dist/hero-minimal-centered-dark.d.ts +16 -1
- package/dist/hero-minimal-centered-dark.js +47 -1
- package/dist/hero-mobile-app-download.cjs +46 -1
- package/dist/hero-mobile-app-download.d.cts +16 -1
- package/dist/hero-mobile-app-download.d.ts +16 -1
- package/dist/hero-mobile-app-download.js +46 -1
- package/dist/hero-newsletter-minimal.cjs +48 -1
- package/dist/hero-newsletter-minimal.d.cts +16 -1
- package/dist/hero-newsletter-minimal.d.ts +16 -1
- package/dist/hero-newsletter-minimal.js +48 -1
- package/dist/hero-overlay-cta-grid.cjs +46 -1
- package/dist/hero-overlay-cta-grid.d.cts +16 -1
- package/dist/hero-overlay-cta-grid.d.ts +16 -1
- package/dist/hero-overlay-cta-grid.js +46 -1
- package/dist/hero-portfolio-creative.cjs +46 -1
- package/dist/hero-portfolio-creative.d.cts +16 -1
- package/dist/hero-portfolio-creative.d.ts +16 -1
- package/dist/hero-portfolio-creative.js +46 -1
- package/dist/hero-premium-split-avatars.cjs +46 -1
- package/dist/hero-premium-split-avatars.d.cts +16 -1
- package/dist/hero-premium-split-avatars.d.ts +16 -1
- package/dist/hero-premium-split-avatars.js +46 -1
- package/dist/hero-presentation-platform-video.cjs +47 -1
- package/dist/hero-presentation-platform-video.d.cts +16 -1
- package/dist/hero-presentation-platform-video.d.ts +16 -1
- package/dist/hero-presentation-platform-video.js +47 -1
- package/dist/hero-pricing-comparison.cjs +47 -1
- package/dist/hero-pricing-comparison.d.cts +16 -1
- package/dist/hero-pricing-comparison.d.ts +16 -1
- package/dist/hero-pricing-comparison.js +47 -1
- package/dist/hero-product-showcase-floating.cjs +46 -1
- package/dist/hero-product-showcase-floating.d.cts +16 -1
- package/dist/hero-product-showcase-floating.d.ts +16 -1
- package/dist/hero-product-showcase-floating.js +46 -1
- package/dist/hero-productivity-launcher-video.cjs +68 -20
- package/dist/hero-productivity-launcher-video.d.cts +16 -1
- package/dist/hero-productivity-launcher-video.d.ts +16 -1
- package/dist/hero-productivity-launcher-video.js +68 -20
- package/dist/hero-saas-dashboard-preview.cjs +46 -1
- package/dist/hero-saas-dashboard-preview.d.cts +16 -1
- package/dist/hero-saas-dashboard-preview.d.ts +16 -1
- package/dist/hero-saas-dashboard-preview.js +46 -1
- package/dist/hero-shared-inbox-layered.cjs +46 -1
- package/dist/hero-shared-inbox-layered.d.cts +16 -1
- package/dist/hero-shared-inbox-layered.d.ts +16 -1
- package/dist/hero-shared-inbox-layered.js +46 -1
- package/dist/hero-simple-centered-image.cjs +46 -1
- package/dist/hero-simple-centered-image.d.cts +16 -1
- package/dist/hero-simple-centered-image.d.ts +16 -1
- package/dist/hero-simple-centered-image.js +46 -1
- package/dist/hero-software-growth-video-dialog.cjs +46 -1
- package/dist/hero-software-growth-video-dialog.d.cts +16 -1
- package/dist/hero-software-growth-video-dialog.d.ts +16 -1
- package/dist/hero-software-growth-video-dialog.js +46 -1
- package/dist/hero-spiral-pattern-cards.cjs +46 -1
- package/dist/hero-spiral-pattern-cards.d.cts +16 -1
- package/dist/hero-spiral-pattern-cards.d.ts +16 -1
- package/dist/hero-spiral-pattern-cards.js +46 -1
- package/dist/hero-split-geometric-shapes.cjs +46 -1
- package/dist/hero-split-geometric-shapes.d.cts +16 -1
- package/dist/hero-split-geometric-shapes.d.ts +16 -1
- package/dist/hero-split-geometric-shapes.js +46 -1
- package/dist/hero-split-icon-cards.cjs +47 -1
- package/dist/hero-split-icon-cards.d.cts +16 -1
- package/dist/hero-split-icon-cards.d.ts +16 -1
- package/dist/hero-split-icon-cards.js +47 -1
- package/dist/hero-split-image-newsletter.cjs +46 -1
- package/dist/hero-split-image-newsletter.d.cts +16 -1
- package/dist/hero-split-image-newsletter.d.ts +16 -1
- package/dist/hero-split-image-newsletter.js +47 -2
- package/dist/hero-split-spiral-shapes.cjs +46 -1
- package/dist/hero-split-spiral-shapes.d.cts +16 -1
- package/dist/hero-split-spiral-shapes.d.ts +16 -1
- package/dist/hero-split-spiral-shapes.js +46 -1
- package/dist/hero-startup-launch-cta.cjs +46 -1
- package/dist/hero-startup-launch-cta.d.cts +16 -1
- package/dist/hero-startup-launch-cta.d.ts +16 -1
- package/dist/hero-startup-launch-cta.js +46 -1
- package/dist/hero-stats-social-proof.cjs +46 -1
- package/dist/hero-stats-social-proof.d.cts +16 -1
- package/dist/hero-stats-social-proof.d.ts +16 -1
- package/dist/hero-stats-social-proof.js +46 -1
- package/dist/hero-task-timer-animated.cjs +46 -1
- package/dist/hero-task-timer-animated.d.cts +16 -1
- package/dist/hero-task-timer-animated.d.ts +16 -1
- package/dist/hero-task-timer-animated.js +46 -1
- package/dist/hero-testimonial-image-grid.cjs +46 -1
- package/dist/hero-testimonial-image-grid.d.cts +16 -1
- package/dist/hero-testimonial-image-grid.d.ts +16 -1
- package/dist/hero-testimonial-image-grid.js +46 -1
- package/dist/hero-therapy-testimonial-grid.cjs +46 -1
- package/dist/hero-therapy-testimonial-grid.d.cts +16 -1
- package/dist/hero-therapy-testimonial-grid.d.ts +16 -1
- package/dist/hero-therapy-testimonial-grid.js +46 -1
- package/dist/hero-ui-library-showcase.cjs +3 -2
- package/dist/hero-ui-library-showcase.d.cts +13 -5
- package/dist/hero-ui-library-showcase.d.ts +13 -5
- package/dist/hero-ui-library-showcase.js +3 -2
- package/dist/hero-video-background-dark.cjs +47 -1
- package/dist/hero-video-background-dark.d.cts +16 -1
- package/dist/hero-video-background-dark.d.ts +16 -1
- package/dist/hero-video-background-dark.js +47 -1
- package/dist/{hero-video-dialog-gradient-Cr96k01H.d.ts → hero-video-dialog-gradient-B6-kFIvZ.d.ts} +14 -1
- package/dist/{hero-video-dialog-gradient-Dc0wRYdW.d.cts → hero-video-dialog-gradient-DPnh6Vn-.d.cts} +14 -1
- package/dist/hero-video-dialog-gradient.cjs +46 -1
- package/dist/hero-video-dialog-gradient.d.cts +4 -1
- package/dist/hero-video-dialog-gradient.d.ts +4 -1
- package/dist/hero-video-dialog-gradient.js +46 -1
- package/dist/hero-welcome-asymmetric-images.cjs +46 -1
- package/dist/hero-welcome-asymmetric-images.d.cts +16 -1
- package/dist/hero-welcome-asymmetric-images.d.ts +16 -1
- package/dist/hero-welcome-asymmetric-images.js +46 -1
- package/dist/link-page-bento-layout.cjs +59 -3
- package/dist/link-page-bento-layout.d.cts +16 -1
- package/dist/link-page-bento-layout.d.ts +16 -1
- package/dist/link-page-bento-layout.js +59 -3
- package/dist/link-page-grid-cards.cjs +59 -3
- package/dist/link-page-grid-cards.d.cts +16 -1
- package/dist/link-page-grid-cards.d.ts +16 -1
- package/dist/link-page-grid-cards.js +59 -3
- package/dist/link-page-minimal-profile.cjs +59 -3
- package/dist/link-page-minimal-profile.d.cts +16 -1
- package/dist/link-page-minimal-profile.d.ts +16 -1
- package/dist/link-page-minimal-profile.js +59 -3
- package/dist/link-page-newsletter-social.cjs +59 -3
- package/dist/link-page-newsletter-social.d.cts +16 -1
- package/dist/link-page-newsletter-social.d.ts +16 -1
- package/dist/link-page-newsletter-social.js +59 -3
- package/dist/link-tree-block.cjs +58 -2
- package/dist/link-tree-block.d.cts +16 -1
- package/dist/link-tree-block.d.ts +16 -1
- package/dist/link-tree-block.js +58 -2
- package/dist/registry.cjs +706 -184
- package/dist/registry.js +706 -184
- package/dist/social-link-icon.d.cts +1 -1
- package/dist/social-link-icon.d.ts +1 -1
- package/package.json +1 -1
|
@@ -504,6 +504,47 @@ function ActionComponent({ action }) {
|
|
|
504
504
|
}
|
|
505
505
|
);
|
|
506
506
|
}
|
|
507
|
+
var SIZE_CLASSES = {
|
|
508
|
+
sm: "max-h-6 sm:max-h-7",
|
|
509
|
+
md: "max-h-8 sm:max-h-9 lg:max-h-10",
|
|
510
|
+
lg: "max-h-10 sm:max-h-12 lg:max-h-14",
|
|
511
|
+
xl: "max-h-12 sm:max-h-14 lg:max-h-16"
|
|
512
|
+
};
|
|
513
|
+
var BrandLogo = ({
|
|
514
|
+
logo,
|
|
515
|
+
logoSlot,
|
|
516
|
+
logoClassName,
|
|
517
|
+
size = "md",
|
|
518
|
+
optixFlowConfig
|
|
519
|
+
}) => {
|
|
520
|
+
if (logoSlot) return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: logoSlot });
|
|
521
|
+
if (!logo || !logo.src) return null;
|
|
522
|
+
const imgElement = /* @__PURE__ */ jsxRuntime.jsx(
|
|
523
|
+
img.Img,
|
|
524
|
+
{
|
|
525
|
+
src: logo.src,
|
|
526
|
+
className: cn(
|
|
527
|
+
"w-auto object-contain",
|
|
528
|
+
SIZE_CLASSES[size],
|
|
529
|
+
logo.className
|
|
530
|
+
),
|
|
531
|
+
alt: logo.alt || "Logo",
|
|
532
|
+
optixFlowConfig,
|
|
533
|
+
loading: "eager"
|
|
534
|
+
}
|
|
535
|
+
);
|
|
536
|
+
if (logo.url) {
|
|
537
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
538
|
+
pressable.Pressable,
|
|
539
|
+
{
|
|
540
|
+
href: logo.url,
|
|
541
|
+
className: cn("flex items-center", logoClassName),
|
|
542
|
+
children: imgElement
|
|
543
|
+
}
|
|
544
|
+
);
|
|
545
|
+
}
|
|
546
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("flex items-center", logoClassName), children: imgElement });
|
|
547
|
+
};
|
|
507
548
|
function HeroBadgeImageSplit({
|
|
508
549
|
sectionId = "hero-badge-image-split",
|
|
509
550
|
badge,
|
|
@@ -526,7 +567,10 @@ function HeroBadgeImageSplit({
|
|
|
526
567
|
descriptionClassName,
|
|
527
568
|
actionsClassName,
|
|
528
569
|
imageClassName,
|
|
529
|
-
optixFlowConfig
|
|
570
|
+
optixFlowConfig,
|
|
571
|
+
logo,
|
|
572
|
+
logoSlot,
|
|
573
|
+
logoClassName
|
|
530
574
|
}) {
|
|
531
575
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
532
576
|
Section,
|
|
@@ -551,6 +595,7 @@ function HeroBadgeImageSplit({
|
|
|
551
595
|
badge,
|
|
552
596
|
badgeIcon
|
|
553
597
|
] }),
|
|
598
|
+
(logo || logoSlot) && /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("mb-4", logoClassName), children: /* @__PURE__ */ jsxRuntime.jsx(BrandLogo, { logo, logoSlot, size: "lg" }) }),
|
|
554
599
|
heading && (typeof heading === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
555
600
|
"h1",
|
|
556
601
|
{
|
|
@@ -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';
|
|
@@ -91,9 +94,21 @@ interface HeroBadgeImageSplitProps {
|
|
|
91
94
|
* OptixFlow image optimization configuration
|
|
92
95
|
*/
|
|
93
96
|
optixFlowConfig?: OptixFlowConfig;
|
|
97
|
+
/**
|
|
98
|
+
* Brand logo configuration. LOGO MEDIA ONLY — do not use photos or hero images.
|
|
99
|
+
*/
|
|
100
|
+
logo?: LogoConfig;
|
|
101
|
+
/**
|
|
102
|
+
* Custom slot for logo (overrides logo prop)
|
|
103
|
+
*/
|
|
104
|
+
logoSlot?: React.ReactNode;
|
|
105
|
+
/**
|
|
106
|
+
* Additional CSS classes for the logo container
|
|
107
|
+
*/
|
|
108
|
+
logoClassName?: string;
|
|
94
109
|
/** Optional Section ID */
|
|
95
110
|
sectionId?: string;
|
|
96
111
|
}
|
|
97
|
-
declare function HeroBadgeImageSplit({ sectionId, badge, badgeIcon, heading, description, actions, actionsSlot, imageSrc, imageAlt, background, pattern, patternOpacity, className, containerClassName, spacing, contentClassName, badgeClassName, headingClassName, descriptionClassName, actionsClassName, imageClassName, optixFlowConfig, }: HeroBadgeImageSplitProps): React.JSX.Element;
|
|
112
|
+
declare function HeroBadgeImageSplit({ sectionId, badge, badgeIcon, heading, description, actions, actionsSlot, imageSrc, imageAlt, background, pattern, patternOpacity, className, containerClassName, spacing, contentClassName, badgeClassName, headingClassName, descriptionClassName, actionsClassName, imageClassName, optixFlowConfig, logo, logoSlot, logoClassName, }: HeroBadgeImageSplitProps): React.JSX.Element;
|
|
98
113
|
|
|
99
114
|
export { HeroBadgeImageSplit, type HeroBadgeImageSplitProps };
|
|
@@ -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';
|
|
@@ -91,9 +94,21 @@ interface HeroBadgeImageSplitProps {
|
|
|
91
94
|
* OptixFlow image optimization configuration
|
|
92
95
|
*/
|
|
93
96
|
optixFlowConfig?: OptixFlowConfig;
|
|
97
|
+
/**
|
|
98
|
+
* Brand logo configuration. LOGO MEDIA ONLY — do not use photos or hero images.
|
|
99
|
+
*/
|
|
100
|
+
logo?: LogoConfig;
|
|
101
|
+
/**
|
|
102
|
+
* Custom slot for logo (overrides logo prop)
|
|
103
|
+
*/
|
|
104
|
+
logoSlot?: React.ReactNode;
|
|
105
|
+
/**
|
|
106
|
+
* Additional CSS classes for the logo container
|
|
107
|
+
*/
|
|
108
|
+
logoClassName?: string;
|
|
94
109
|
/** Optional Section ID */
|
|
95
110
|
sectionId?: string;
|
|
96
111
|
}
|
|
97
|
-
declare function HeroBadgeImageSplit({ sectionId, badge, badgeIcon, heading, description, actions, actionsSlot, imageSrc, imageAlt, background, pattern, patternOpacity, className, containerClassName, spacing, contentClassName, badgeClassName, headingClassName, descriptionClassName, actionsClassName, imageClassName, optixFlowConfig, }: HeroBadgeImageSplitProps): React.JSX.Element;
|
|
112
|
+
declare function HeroBadgeImageSplit({ sectionId, badge, badgeIcon, heading, description, actions, actionsSlot, imageSrc, imageAlt, background, pattern, patternOpacity, className, containerClassName, spacing, contentClassName, badgeClassName, headingClassName, descriptionClassName, actionsClassName, imageClassName, optixFlowConfig, logo, logoSlot, logoClassName, }: HeroBadgeImageSplitProps): React.JSX.Element;
|
|
98
113
|
|
|
99
114
|
export { HeroBadgeImageSplit, type HeroBadgeImageSplitProps };
|
|
@@ -498,6 +498,47 @@ function ActionComponent({ action }) {
|
|
|
498
498
|
}
|
|
499
499
|
);
|
|
500
500
|
}
|
|
501
|
+
var SIZE_CLASSES = {
|
|
502
|
+
sm: "max-h-6 sm:max-h-7",
|
|
503
|
+
md: "max-h-8 sm:max-h-9 lg:max-h-10",
|
|
504
|
+
lg: "max-h-10 sm:max-h-12 lg:max-h-14",
|
|
505
|
+
xl: "max-h-12 sm:max-h-14 lg:max-h-16"
|
|
506
|
+
};
|
|
507
|
+
var BrandLogo = ({
|
|
508
|
+
logo,
|
|
509
|
+
logoSlot,
|
|
510
|
+
logoClassName,
|
|
511
|
+
size = "md",
|
|
512
|
+
optixFlowConfig
|
|
513
|
+
}) => {
|
|
514
|
+
if (logoSlot) return /* @__PURE__ */ jsx(Fragment, { children: logoSlot });
|
|
515
|
+
if (!logo || !logo.src) return null;
|
|
516
|
+
const imgElement = /* @__PURE__ */ jsx(
|
|
517
|
+
Img,
|
|
518
|
+
{
|
|
519
|
+
src: logo.src,
|
|
520
|
+
className: cn(
|
|
521
|
+
"w-auto object-contain",
|
|
522
|
+
SIZE_CLASSES[size],
|
|
523
|
+
logo.className
|
|
524
|
+
),
|
|
525
|
+
alt: logo.alt || "Logo",
|
|
526
|
+
optixFlowConfig,
|
|
527
|
+
loading: "eager"
|
|
528
|
+
}
|
|
529
|
+
);
|
|
530
|
+
if (logo.url) {
|
|
531
|
+
return /* @__PURE__ */ jsx(
|
|
532
|
+
Pressable,
|
|
533
|
+
{
|
|
534
|
+
href: logo.url,
|
|
535
|
+
className: cn("flex items-center", logoClassName),
|
|
536
|
+
children: imgElement
|
|
537
|
+
}
|
|
538
|
+
);
|
|
539
|
+
}
|
|
540
|
+
return /* @__PURE__ */ jsx("div", { className: cn("flex items-center", logoClassName), children: imgElement });
|
|
541
|
+
};
|
|
501
542
|
function HeroBadgeImageSplit({
|
|
502
543
|
sectionId = "hero-badge-image-split",
|
|
503
544
|
badge,
|
|
@@ -520,7 +561,10 @@ function HeroBadgeImageSplit({
|
|
|
520
561
|
descriptionClassName,
|
|
521
562
|
actionsClassName,
|
|
522
563
|
imageClassName,
|
|
523
|
-
optixFlowConfig
|
|
564
|
+
optixFlowConfig,
|
|
565
|
+
logo,
|
|
566
|
+
logoSlot,
|
|
567
|
+
logoClassName
|
|
524
568
|
}) {
|
|
525
569
|
return /* @__PURE__ */ jsx(
|
|
526
570
|
Section,
|
|
@@ -545,6 +589,7 @@ function HeroBadgeImageSplit({
|
|
|
545
589
|
badge,
|
|
546
590
|
badgeIcon
|
|
547
591
|
] }),
|
|
592
|
+
(logo || logoSlot) && /* @__PURE__ */ jsx("div", { className: cn("mb-4", logoClassName), children: /* @__PURE__ */ jsx(BrandLogo, { logo, logoSlot, size: "lg" }) }),
|
|
548
593
|
heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
|
|
549
594
|
"h1",
|
|
550
595
|
{
|
|
@@ -534,6 +534,47 @@ 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
|
+
};
|
|
537
578
|
function HeroBadgeShadowOverlay({
|
|
538
579
|
sectionId = "hero-badge-shadow-overlay",
|
|
539
580
|
announcementBadge,
|
|
@@ -554,7 +595,10 @@ function HeroBadgeShadowOverlay({
|
|
|
554
595
|
containerClassName = "mx-0 w-screen px-0 sm:px-0 lg:px-0 max-w-screen relative z-10 min-h-screen h-full",
|
|
555
596
|
announcementClassName,
|
|
556
597
|
headingClassName,
|
|
557
|
-
actionsClassName
|
|
598
|
+
actionsClassName,
|
|
599
|
+
logo,
|
|
600
|
+
logoSlot,
|
|
601
|
+
logoClassName
|
|
558
602
|
}) {
|
|
559
603
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
560
604
|
Section,
|
|
@@ -583,6 +627,7 @@ function HeroBadgeShadowOverlay({
|
|
|
583
627
|
]
|
|
584
628
|
}
|
|
585
629
|
),
|
|
630
|
+
(logo || logoSlot) && /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("mb-4 flex justify-center", logoClassName), children: /* @__PURE__ */ jsxRuntime.jsx(BrandLogo, { logo, logoSlot, size: "xl" }) }),
|
|
586
631
|
heading && (typeof heading === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
587
632
|
"h1",
|
|
588
633
|
{
|
|
@@ -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';
|
|
@@ -83,9 +86,21 @@ interface HeroBadgeShadowOverlayProps {
|
|
|
83
86
|
* OptixFlow image optimization configuration
|
|
84
87
|
*/
|
|
85
88
|
optixFlowConfig?: OptixFlowConfig;
|
|
89
|
+
/**
|
|
90
|
+
* Brand logo configuration. LOGO MEDIA ONLY — do not use photos or hero images.
|
|
91
|
+
*/
|
|
92
|
+
logo?: LogoConfig;
|
|
93
|
+
/**
|
|
94
|
+
* Custom slot for logo (overrides logo prop)
|
|
95
|
+
*/
|
|
96
|
+
logoSlot?: React.ReactNode;
|
|
97
|
+
/**
|
|
98
|
+
* Additional CSS classes for the logo container
|
|
99
|
+
*/
|
|
100
|
+
logoClassName?: string;
|
|
86
101
|
/** Optional Section ID */
|
|
87
102
|
sectionId?: string;
|
|
88
103
|
}
|
|
89
|
-
declare function HeroBadgeShadowOverlay({ sectionId, announcementBadge, announcementText, announcementHref, description, descriptionClassName, heading, actions, actionsSlot, backgroundImageUrl, optixFlowConfig, background, spacing, pattern, patternOpacity, className, containerClassName, announcementClassName, headingClassName, actionsClassName, }: HeroBadgeShadowOverlayProps): React.JSX.Element;
|
|
104
|
+
declare function HeroBadgeShadowOverlay({ sectionId, announcementBadge, announcementText, announcementHref, description, descriptionClassName, heading, actions, actionsSlot, backgroundImageUrl, optixFlowConfig, background, spacing, pattern, patternOpacity, className, containerClassName, announcementClassName, headingClassName, actionsClassName, logo, logoSlot, logoClassName, }: HeroBadgeShadowOverlayProps): React.JSX.Element;
|
|
90
105
|
|
|
91
106
|
export { HeroBadgeShadowOverlay, type HeroBadgeShadowOverlayProps };
|
|
@@ -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';
|
|
@@ -83,9 +86,21 @@ interface HeroBadgeShadowOverlayProps {
|
|
|
83
86
|
* OptixFlow image optimization configuration
|
|
84
87
|
*/
|
|
85
88
|
optixFlowConfig?: OptixFlowConfig;
|
|
89
|
+
/**
|
|
90
|
+
* Brand logo configuration. LOGO MEDIA ONLY — do not use photos or hero images.
|
|
91
|
+
*/
|
|
92
|
+
logo?: LogoConfig;
|
|
93
|
+
/**
|
|
94
|
+
* Custom slot for logo (overrides logo prop)
|
|
95
|
+
*/
|
|
96
|
+
logoSlot?: React.ReactNode;
|
|
97
|
+
/**
|
|
98
|
+
* Additional CSS classes for the logo container
|
|
99
|
+
*/
|
|
100
|
+
logoClassName?: string;
|
|
86
101
|
/** Optional Section ID */
|
|
87
102
|
sectionId?: string;
|
|
88
103
|
}
|
|
89
|
-
declare function HeroBadgeShadowOverlay({ sectionId, announcementBadge, announcementText, announcementHref, description, descriptionClassName, heading, actions, actionsSlot, backgroundImageUrl, optixFlowConfig, background, spacing, pattern, patternOpacity, className, containerClassName, announcementClassName, headingClassName, actionsClassName, }: HeroBadgeShadowOverlayProps): React.JSX.Element;
|
|
104
|
+
declare function HeroBadgeShadowOverlay({ sectionId, announcementBadge, announcementText, announcementHref, description, descriptionClassName, heading, actions, actionsSlot, backgroundImageUrl, optixFlowConfig, background, spacing, pattern, patternOpacity, className, containerClassName, announcementClassName, headingClassName, actionsClassName, logo, logoSlot, logoClassName, }: HeroBadgeShadowOverlayProps): React.JSX.Element;
|
|
90
105
|
|
|
91
106
|
export { HeroBadgeShadowOverlay, type HeroBadgeShadowOverlayProps };
|
|
@@ -513,6 +513,47 @@ 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
|
+
};
|
|
516
557
|
function HeroBadgeShadowOverlay({
|
|
517
558
|
sectionId = "hero-badge-shadow-overlay",
|
|
518
559
|
announcementBadge,
|
|
@@ -533,7 +574,10 @@ function HeroBadgeShadowOverlay({
|
|
|
533
574
|
containerClassName = "mx-0 w-screen px-0 sm:px-0 lg:px-0 max-w-screen relative z-10 min-h-screen h-full",
|
|
534
575
|
announcementClassName,
|
|
535
576
|
headingClassName,
|
|
536
|
-
actionsClassName
|
|
577
|
+
actionsClassName,
|
|
578
|
+
logo,
|
|
579
|
+
logoSlot,
|
|
580
|
+
logoClassName
|
|
537
581
|
}) {
|
|
538
582
|
return /* @__PURE__ */ jsxs(
|
|
539
583
|
Section,
|
|
@@ -562,6 +606,7 @@ function HeroBadgeShadowOverlay({
|
|
|
562
606
|
]
|
|
563
607
|
}
|
|
564
608
|
),
|
|
609
|
+
(logo || logoSlot) && /* @__PURE__ */ jsx("div", { className: cn("mb-4 flex justify-center", logoClassName), children: /* @__PURE__ */ jsx(BrandLogo, { logo, logoSlot, size: "xl" }) }),
|
|
565
610
|
heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
|
|
566
611
|
"h1",
|
|
567
612
|
{
|
|
@@ -505,6 +505,47 @@ function ActionComponent({ action }) {
|
|
|
505
505
|
}
|
|
506
506
|
);
|
|
507
507
|
}
|
|
508
|
+
var SIZE_CLASSES = {
|
|
509
|
+
sm: "max-h-6 sm:max-h-7",
|
|
510
|
+
md: "max-h-8 sm:max-h-9 lg:max-h-10",
|
|
511
|
+
lg: "max-h-10 sm:max-h-12 lg:max-h-14",
|
|
512
|
+
xl: "max-h-12 sm:max-h-14 lg:max-h-16"
|
|
513
|
+
};
|
|
514
|
+
var BrandLogo = ({
|
|
515
|
+
logo,
|
|
516
|
+
logoSlot,
|
|
517
|
+
logoClassName,
|
|
518
|
+
size = "md",
|
|
519
|
+
optixFlowConfig
|
|
520
|
+
}) => {
|
|
521
|
+
if (logoSlot) return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: logoSlot });
|
|
522
|
+
if (!logo || !logo.src) return null;
|
|
523
|
+
const imgElement = /* @__PURE__ */ jsxRuntime.jsx(
|
|
524
|
+
img.Img,
|
|
525
|
+
{
|
|
526
|
+
src: logo.src,
|
|
527
|
+
className: cn(
|
|
528
|
+
"w-auto object-contain",
|
|
529
|
+
SIZE_CLASSES[size],
|
|
530
|
+
logo.className
|
|
531
|
+
),
|
|
532
|
+
alt: logo.alt || "Logo",
|
|
533
|
+
optixFlowConfig,
|
|
534
|
+
loading: "eager"
|
|
535
|
+
}
|
|
536
|
+
);
|
|
537
|
+
if (logo.url) {
|
|
538
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
539
|
+
pressable.Pressable,
|
|
540
|
+
{
|
|
541
|
+
href: logo.url,
|
|
542
|
+
className: cn("flex items-center", logoClassName),
|
|
543
|
+
children: imgElement
|
|
544
|
+
}
|
|
545
|
+
);
|
|
546
|
+
}
|
|
547
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("flex items-center", logoClassName), children: imgElement });
|
|
548
|
+
};
|
|
508
549
|
var fadeVariants = {
|
|
509
550
|
initial: { opacity: 0 },
|
|
510
551
|
animate: {
|
|
@@ -539,7 +580,10 @@ function HeroBusinessCarouselDots({
|
|
|
539
580
|
descriptionClassName,
|
|
540
581
|
actionsClassName,
|
|
541
582
|
carouselClassName,
|
|
542
|
-
optixFlowConfig
|
|
583
|
+
optixFlowConfig,
|
|
584
|
+
logo,
|
|
585
|
+
logoSlot,
|
|
586
|
+
logoClassName
|
|
543
587
|
}) {
|
|
544
588
|
const [currentIndex, setCurrentIndex] = React.useState(0);
|
|
545
589
|
const timerRef = React.useRef(null);
|
|
@@ -578,6 +622,7 @@ function HeroBusinessCarouselDots({
|
|
|
578
622
|
),
|
|
579
623
|
children: [
|
|
580
624
|
badge && /* @__PURE__ */ jsxRuntime.jsx(Badge, { variant: badgeVariant, className: badgeClassName, children: badge }),
|
|
625
|
+
(logo || logoSlot) && /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("mb-4 flex justify-center", logoClassName), children: /* @__PURE__ */ jsxRuntime.jsx(BrandLogo, { logo, logoSlot, size: "lg" }) }),
|
|
581
626
|
heading && (typeof heading === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
582
627
|
"h1",
|
|
583
628
|
{
|
|
@@ -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, 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';
|
|
@@ -95,9 +98,21 @@ interface HeroBusinessCarouselDotsProps {
|
|
|
95
98
|
* Additional CSS classes for the pattern overlay
|
|
96
99
|
*/
|
|
97
100
|
patternClassName?: string;
|
|
101
|
+
/**
|
|
102
|
+
* Brand logo configuration. LOGO MEDIA ONLY — do not use photos or hero images.
|
|
103
|
+
*/
|
|
104
|
+
logo?: LogoConfig;
|
|
105
|
+
/**
|
|
106
|
+
* Custom slot for logo (overrides logo prop)
|
|
107
|
+
*/
|
|
108
|
+
logoSlot?: React.ReactNode;
|
|
109
|
+
/**
|
|
110
|
+
* Additional CSS classes for the logo container
|
|
111
|
+
*/
|
|
112
|
+
logoClassName?: string;
|
|
98
113
|
/** Optional Section ID */
|
|
99
114
|
sectionId?: string;
|
|
100
115
|
}
|
|
101
|
-
declare function HeroBusinessCarouselDots({ sectionId, badge, badgeVariant, heading, description, actions, actionsSlot, carouselImages, carouselSlot, background, spacing, pattern, patternOpacity, patternClassName, className, containerClassName, contentClassName, badgeClassName, headingClassName, descriptionClassName, actionsClassName, carouselClassName, optixFlowConfig, }: HeroBusinessCarouselDotsProps): React.JSX.Element;
|
|
116
|
+
declare function HeroBusinessCarouselDots({ sectionId, badge, badgeVariant, heading, description, actions, actionsSlot, carouselImages, carouselSlot, background, spacing, pattern, patternOpacity, patternClassName, className, containerClassName, contentClassName, badgeClassName, headingClassName, descriptionClassName, actionsClassName, carouselClassName, optixFlowConfig, logo, logoSlot, logoClassName, }: HeroBusinessCarouselDotsProps): React.JSX.Element;
|
|
102
117
|
|
|
103
118
|
export { HeroBusinessCarouselDots, type HeroBusinessCarouselDotsProps };
|
|
@@ -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, 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';
|
|
@@ -95,9 +98,21 @@ interface HeroBusinessCarouselDotsProps {
|
|
|
95
98
|
* Additional CSS classes for the pattern overlay
|
|
96
99
|
*/
|
|
97
100
|
patternClassName?: string;
|
|
101
|
+
/**
|
|
102
|
+
* Brand logo configuration. LOGO MEDIA ONLY — do not use photos or hero images.
|
|
103
|
+
*/
|
|
104
|
+
logo?: LogoConfig;
|
|
105
|
+
/**
|
|
106
|
+
* Custom slot for logo (overrides logo prop)
|
|
107
|
+
*/
|
|
108
|
+
logoSlot?: React.ReactNode;
|
|
109
|
+
/**
|
|
110
|
+
* Additional CSS classes for the logo container
|
|
111
|
+
*/
|
|
112
|
+
logoClassName?: string;
|
|
98
113
|
/** Optional Section ID */
|
|
99
114
|
sectionId?: string;
|
|
100
115
|
}
|
|
101
|
-
declare function HeroBusinessCarouselDots({ sectionId, badge, badgeVariant, heading, description, actions, actionsSlot, carouselImages, carouselSlot, background, spacing, pattern, patternOpacity, patternClassName, className, containerClassName, contentClassName, badgeClassName, headingClassName, descriptionClassName, actionsClassName, carouselClassName, optixFlowConfig, }: HeroBusinessCarouselDotsProps): React.JSX.Element;
|
|
116
|
+
declare function HeroBusinessCarouselDots({ sectionId, badge, badgeVariant, heading, description, actions, actionsSlot, carouselImages, carouselSlot, background, spacing, pattern, patternOpacity, patternClassName, className, containerClassName, contentClassName, badgeClassName, headingClassName, descriptionClassName, actionsClassName, carouselClassName, optixFlowConfig, logo, logoSlot, logoClassName, }: HeroBusinessCarouselDotsProps): React.JSX.Element;
|
|
102
117
|
|
|
103
118
|
export { HeroBusinessCarouselDots, type HeroBusinessCarouselDotsProps };
|
|
@@ -499,6 +499,47 @@ function ActionComponent({ action }) {
|
|
|
499
499
|
}
|
|
500
500
|
);
|
|
501
501
|
}
|
|
502
|
+
var SIZE_CLASSES = {
|
|
503
|
+
sm: "max-h-6 sm:max-h-7",
|
|
504
|
+
md: "max-h-8 sm:max-h-9 lg:max-h-10",
|
|
505
|
+
lg: "max-h-10 sm:max-h-12 lg:max-h-14",
|
|
506
|
+
xl: "max-h-12 sm:max-h-14 lg:max-h-16"
|
|
507
|
+
};
|
|
508
|
+
var BrandLogo = ({
|
|
509
|
+
logo,
|
|
510
|
+
logoSlot,
|
|
511
|
+
logoClassName,
|
|
512
|
+
size = "md",
|
|
513
|
+
optixFlowConfig
|
|
514
|
+
}) => {
|
|
515
|
+
if (logoSlot) return /* @__PURE__ */ jsx(Fragment, { children: logoSlot });
|
|
516
|
+
if (!logo || !logo.src) return null;
|
|
517
|
+
const imgElement = /* @__PURE__ */ jsx(
|
|
518
|
+
Img,
|
|
519
|
+
{
|
|
520
|
+
src: logo.src,
|
|
521
|
+
className: cn(
|
|
522
|
+
"w-auto object-contain",
|
|
523
|
+
SIZE_CLASSES[size],
|
|
524
|
+
logo.className
|
|
525
|
+
),
|
|
526
|
+
alt: logo.alt || "Logo",
|
|
527
|
+
optixFlowConfig,
|
|
528
|
+
loading: "eager"
|
|
529
|
+
}
|
|
530
|
+
);
|
|
531
|
+
if (logo.url) {
|
|
532
|
+
return /* @__PURE__ */ jsx(
|
|
533
|
+
Pressable,
|
|
534
|
+
{
|
|
535
|
+
href: logo.url,
|
|
536
|
+
className: cn("flex items-center", logoClassName),
|
|
537
|
+
children: imgElement
|
|
538
|
+
}
|
|
539
|
+
);
|
|
540
|
+
}
|
|
541
|
+
return /* @__PURE__ */ jsx("div", { className: cn("flex items-center", logoClassName), children: imgElement });
|
|
542
|
+
};
|
|
502
543
|
var fadeVariants = {
|
|
503
544
|
initial: { opacity: 0 },
|
|
504
545
|
animate: {
|
|
@@ -533,7 +574,10 @@ function HeroBusinessCarouselDots({
|
|
|
533
574
|
descriptionClassName,
|
|
534
575
|
actionsClassName,
|
|
535
576
|
carouselClassName,
|
|
536
|
-
optixFlowConfig
|
|
577
|
+
optixFlowConfig,
|
|
578
|
+
logo,
|
|
579
|
+
logoSlot,
|
|
580
|
+
logoClassName
|
|
537
581
|
}) {
|
|
538
582
|
const [currentIndex, setCurrentIndex] = useState(0);
|
|
539
583
|
const timerRef = useRef(null);
|
|
@@ -572,6 +616,7 @@ function HeroBusinessCarouselDots({
|
|
|
572
616
|
),
|
|
573
617
|
children: [
|
|
574
618
|
badge && /* @__PURE__ */ jsx(Badge, { variant: badgeVariant, className: badgeClassName, children: badge }),
|
|
619
|
+
(logo || logoSlot) && /* @__PURE__ */ jsx("div", { className: cn("mb-4 flex justify-center", logoClassName), children: /* @__PURE__ */ jsx(BrandLogo, { logo, logoSlot, size: "lg" }) }),
|
|
575
620
|
heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
|
|
576
621
|
"h1",
|
|
577
622
|
{
|
|
@@ -495,6 +495,47 @@ function ActionComponent({ action }) {
|
|
|
495
495
|
}
|
|
496
496
|
);
|
|
497
497
|
}
|
|
498
|
+
var SIZE_CLASSES = {
|
|
499
|
+
sm: "max-h-6 sm:max-h-7",
|
|
500
|
+
md: "max-h-8 sm:max-h-9 lg:max-h-10",
|
|
501
|
+
lg: "max-h-10 sm:max-h-12 lg:max-h-14",
|
|
502
|
+
xl: "max-h-12 sm:max-h-14 lg:max-h-16"
|
|
503
|
+
};
|
|
504
|
+
var BrandLogo = ({
|
|
505
|
+
logo,
|
|
506
|
+
logoSlot,
|
|
507
|
+
logoClassName,
|
|
508
|
+
size = "md",
|
|
509
|
+
optixFlowConfig
|
|
510
|
+
}) => {
|
|
511
|
+
if (logoSlot) return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: logoSlot });
|
|
512
|
+
if (!logo || !logo.src) return null;
|
|
513
|
+
const imgElement = /* @__PURE__ */ jsxRuntime.jsx(
|
|
514
|
+
img.Img,
|
|
515
|
+
{
|
|
516
|
+
src: logo.src,
|
|
517
|
+
className: cn(
|
|
518
|
+
"w-auto object-contain",
|
|
519
|
+
SIZE_CLASSES[size],
|
|
520
|
+
logo.className
|
|
521
|
+
),
|
|
522
|
+
alt: logo.alt || "Logo",
|
|
523
|
+
optixFlowConfig,
|
|
524
|
+
loading: "eager"
|
|
525
|
+
}
|
|
526
|
+
);
|
|
527
|
+
if (logo.url) {
|
|
528
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
529
|
+
pressable.Pressable,
|
|
530
|
+
{
|
|
531
|
+
href: logo.url,
|
|
532
|
+
className: cn("flex items-center", logoClassName),
|
|
533
|
+
children: imgElement
|
|
534
|
+
}
|
|
535
|
+
);
|
|
536
|
+
}
|
|
537
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("flex items-center", logoClassName), children: imgElement });
|
|
538
|
+
};
|
|
498
539
|
function HeroBusinessOperationsMosaic({
|
|
499
540
|
sectionId = "hero-business-operations-mosaic",
|
|
500
541
|
heading,
|
|
@@ -514,7 +555,10 @@ function HeroBusinessOperationsMosaic({
|
|
|
514
555
|
contentClassName,
|
|
515
556
|
headingClassName,
|
|
516
557
|
mosaicClassName,
|
|
517
|
-
optixFlowConfig
|
|
558
|
+
optixFlowConfig,
|
|
559
|
+
logo,
|
|
560
|
+
logoSlot,
|
|
561
|
+
logoClassName
|
|
518
562
|
}) {
|
|
519
563
|
const renderMosaic = React.useMemo(() => {
|
|
520
564
|
if (imagesSlot) return imagesSlot;
|
|
@@ -578,6 +622,7 @@ function HeroBusinessOperationsMosaic({
|
|
|
578
622
|
contentClassName
|
|
579
623
|
),
|
|
580
624
|
children: [
|
|
625
|
+
(logo || logoSlot) && /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("mb-4", logoClassName), children: /* @__PURE__ */ jsxRuntime.jsx(BrandLogo, { logo, logoSlot, size: "lg" }) }),
|
|
581
626
|
heading && (typeof heading === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
582
627
|
"h1",
|
|
583
628
|
{
|