@opensite/ui 2.8.0 → 2.8.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/about-culture-tabs.cjs +25 -21
- package/dist/about-culture-tabs.js +23 -19
- package/dist/about-developer-profile.cjs +6 -2
- package/dist/about-developer-profile.js +6 -2
- package/dist/about-expandable-values.cjs +6 -2
- package/dist/about-expandable-values.js +6 -2
- package/dist/about-location-info-hero.cjs +6 -2
- package/dist/about-location-info-hero.js +6 -2
- package/dist/about-mission-principles.cjs +6 -2
- package/dist/about-mission-principles.js +6 -2
- package/dist/about-network-spotlight.cjs +18 -14
- package/dist/about-network-spotlight.js +16 -12
- package/dist/about-split-hero.cjs +6 -2
- package/dist/about-split-hero.js +6 -2
- package/dist/about-startup-team.cjs +6 -2
- package/dist/about-startup-team.js +6 -2
- package/dist/article-breadcrumb-social.cjs +27 -23
- package/dist/article-breadcrumb-social.js +27 -23
- package/dist/article-chapters-author.cjs +29 -25
- package/dist/article-chapters-author.js +29 -25
- package/dist/article-compact-toc.cjs +26 -22
- package/dist/article-compact-toc.js +26 -22
- package/dist/article-sidebar-sticky.cjs +6 -2
- package/dist/article-sidebar-sticky.js +6 -2
- package/dist/auto-scroll-carousel.cjs +28 -24
- package/dist/auto-scroll-carousel.js +26 -22
- package/dist/banner-announcement-dismissible.cjs +6 -2
- package/dist/banner-announcement-dismissible.js +6 -2
- package/dist/banner-delivery-countdown.cjs +6 -2
- package/dist/banner-delivery-countdown.js +6 -2
- package/dist/banner-floating-offer.cjs +6 -2
- package/dist/banner-floating-offer.js +6 -2
- package/dist/banner-gdpr-rights.cjs +6 -2
- package/dist/banner-gdpr-rights.js +6 -2
- package/dist/banner-privacy-notice.cjs +6 -2
- package/dist/banner-privacy-notice.js +6 -2
- package/dist/banner-social-follow.cjs +6 -2
- package/dist/banner-social-follow.js +6 -2
- package/dist/banner-survey-incentive.cjs +6 -2
- package/dist/banner-survey-incentive.js +6 -2
- package/dist/blog-cards-read-time.cjs +6 -2
- package/dist/blog-cards-read-time.js +6 -2
- package/dist/blog-cards-tagline-cta.cjs +6 -2
- package/dist/blog-cards-tagline-cta.js +6 -2
- package/dist/blog-carousel-apple.cjs +25 -21
- package/dist/blog-carousel-apple.js +21 -17
- package/dist/blog-category-overlay.cjs +6 -2
- package/dist/blog-category-overlay.js +6 -2
- package/dist/blog-filtered-results.cjs +30 -26
- package/dist/blog-filtered-results.js +24 -20
- package/dist/blog-horizontal-cards.cjs +6 -2
- package/dist/blog-horizontal-cards.js +6 -2
- package/dist/blog-horizontal-timeline.cjs +6 -2
- package/dist/blog-horizontal-timeline.js +6 -2
- package/dist/carousel-animated-sections.cjs +23 -19
- package/dist/carousel-animated-sections.js +23 -19
- package/dist/carousel-auto-progress-slides.cjs +6 -2
- package/dist/carousel-auto-progress-slides.js +6 -2
- package/dist/carousel-autoplay-progress.cjs +34 -30
- package/dist/carousel-autoplay-progress.js +34 -30
- package/dist/carousel-badge-cards.cjs +31 -27
- package/dist/carousel-badge-cards.js +26 -22
- package/dist/carousel-demo-link.cjs +32 -28
- package/dist/carousel-demo-link.js +26 -22
- package/dist/carousel-feature-badge.cjs +22 -18
- package/dist/carousel-feature-badge.js +22 -18
- package/dist/carousel-gallery-thumbnails.cjs +6 -2
- package/dist/carousel-gallery-thumbnails.js +6 -2
- package/dist/carousel-gradient-overlay.cjs +32 -28
- package/dist/carousel-gradient-overlay.js +26 -22
- package/dist/carousel-gradient-text.cjs +32 -28
- package/dist/carousel-gradient-text.js +26 -22
- package/dist/carousel-horizontal-cards.cjs +20 -16
- package/dist/carousel-horizontal-cards.js +20 -16
- package/dist/carousel-icon-sidebar.cjs +38 -34
- package/dist/carousel-icon-sidebar.js +26 -22
- package/dist/carousel-icon-tabs.cjs +39 -35
- package/dist/carousel-icon-tabs.js +26 -22
- package/dist/carousel-image-hero.cjs +22 -18
- package/dist/carousel-image-hero.js +22 -18
- package/dist/carousel-multi-step-showcase.cjs +6 -2
- package/dist/carousel-multi-step-showcase.js +6 -2
- package/dist/carousel-pagination.cjs +6 -2
- package/dist/carousel-pagination.js +6 -2
- package/dist/carousel-portfolio-hero.cjs +22 -18
- package/dist/carousel-portfolio-hero.js +22 -18
- package/dist/carousel-product-feature-showcase.cjs +6 -2
- package/dist/carousel-product-feature-showcase.js +6 -2
- package/dist/carousel-progress-slider.cjs +28 -24
- package/dist/carousel-progress-slider.js +28 -24
- package/dist/carousel-scale-focus.cjs +41 -37
- package/dist/carousel-scale-focus.js +26 -22
- package/dist/carousel-sidebar-resources.cjs +34 -30
- package/dist/carousel-sidebar-resources.js +26 -22
- package/dist/carousel-tabs-content.cjs +39 -35
- package/dist/carousel-tabs-content.js +26 -22
- package/dist/case-studies-featured-border.cjs +6 -2
- package/dist/case-studies-featured-border.js +6 -2
- package/dist/case-study-stats-metrics.cjs +6 -2
- package/dist/case-study-stats-metrics.js +6 -2
- package/dist/case-study-toc-social-sidebar.cjs +6 -2
- package/dist/case-study-toc-social-sidebar.js +6 -2
- package/dist/community-initiatives.cjs +19 -15
- package/dist/community-initiatives.js +17 -13
- package/dist/comparison-ai-models.cjs +18 -14
- package/dist/comparison-ai-models.js +17 -13
- package/dist/comparison-feature-cards.cjs +16 -12
- package/dist/comparison-feature-cards.js +16 -12
- package/dist/comparison-feature-grid.cjs +14 -10
- package/dist/comparison-feature-grid.js +14 -10
- package/dist/comparison-grid-badges.cjs +13 -9
- package/dist/comparison-grid-badges.js +13 -9
- package/dist/comparison-legacy-modern.cjs +15 -11
- package/dist/comparison-legacy-modern.js +15 -11
- package/dist/comparison-table-tabs.cjs +15 -11
- package/dist/comparison-table-tabs.js +14 -10
- package/dist/comparison-table-two-column.cjs +14 -10
- package/dist/comparison-table-two-column.js +14 -10
- package/dist/components.cjs +199 -179
- package/dist/components.js +104 -84
- package/dist/contact-callback.cjs +27 -7
- package/dist/contact-callback.js +10 -5
- package/dist/contact-card.cjs +6 -2
- package/dist/contact-card.js +6 -2
- package/dist/contact-careers.cjs +18 -14
- package/dist/contact-careers.js +16 -12
- package/dist/contact-dark.cjs +6 -2
- package/dist/contact-dark.js +6 -2
- package/dist/contact-emergency.cjs +6 -2
- package/dist/contact-emergency.js +6 -2
- package/dist/contact-faq.cjs +9 -7
- package/dist/contact-faq.js +10 -5
- package/dist/contact-floating-banner.cjs +6 -2
- package/dist/contact-floating-banner.js +6 -2
- package/dist/contact-help-center.cjs +16 -12
- package/dist/contact-help-center.js +16 -12
- package/dist/contact-image.cjs +18 -14
- package/dist/contact-image.js +17 -13
- package/dist/contact-map.cjs +78 -58
- package/dist/contact-map.js +78 -58
- package/dist/cta-app-download-newsletter.cjs +6 -2
- package/dist/cta-app-download-newsletter.js +6 -2
- package/dist/cta-background-icon-badge.cjs +6 -2
- package/dist/cta-background-icon-badge.js +6 -2
- package/dist/cta-case-study-testimonial.cjs +6 -2
- package/dist/cta-case-study-testimonial.js +6 -2
- package/dist/cta-documentation-links.cjs +6 -2
- package/dist/cta-documentation-links.js +6 -2
- package/dist/cta-enterprise-dark-features.cjs +6 -2
- package/dist/cta-enterprise-dark-features.js +6 -2
- package/dist/cta-enterprise-split.cjs +6 -2
- package/dist/cta-enterprise-split.js +6 -2
- package/dist/cta-feature-cards-grid.cjs +6 -2
- package/dist/cta-feature-cards-grid.js +6 -2
- package/dist/cta-feature-checklist.cjs +17 -13
- package/dist/cta-feature-checklist.js +16 -12
- package/dist/cta-feature-list.cjs +6 -2
- package/dist/cta-feature-list.js +6 -2
- package/dist/cta-gradient-logos-floating.cjs +6 -2
- package/dist/cta-gradient-logos-floating.js +6 -2
- package/dist/cta-gradient-stats-hero.cjs +6 -2
- package/dist/cta-gradient-stats-hero.js +6 -2
- package/dist/cta-hero-feature-cards.cjs +6 -2
- package/dist/cta-hero-feature-cards.js +6 -2
- package/dist/cta-image-overlay-arrow.cjs +6 -2
- package/dist/cta-image-overlay-arrow.js +6 -2
- package/dist/cta-newsletter-features.cjs +12 -8
- package/dist/cta-newsletter-features.js +12 -8
- package/dist/cta-platform-demo.cjs +6 -2
- package/dist/cta-platform-demo.js +6 -2
- package/dist/cta-simple-centered.cjs +6 -2
- package/dist/cta-simple-centered.js +6 -2
- package/dist/cta-split-image-logos.cjs +6 -2
- package/dist/cta-split-image-logos.js +6 -2
- package/dist/cta-video-background-hero.cjs +6 -2
- package/dist/cta-video-background-hero.js +6 -2
- package/dist/cta-workflow-tabs.cjs +6 -2
- package/dist/cta-workflow-tabs.js +6 -2
- package/dist/dynamic-icon.cjs +27 -2
- package/dist/dynamic-icon.d.cts +2 -2
- package/dist/dynamic-icon.d.ts +2 -2
- package/dist/dynamic-icon.js +7 -2
- package/dist/expandable-case-study-cards.cjs +26 -6
- package/dist/expandable-case-study-cards.js +10 -5
- package/dist/faq-badge-support.cjs +25 -21
- package/dist/faq-badge-support.js +22 -18
- package/dist/faq-bordered-badge.cjs +9 -7
- package/dist/faq-bordered-badge.js +10 -5
- package/dist/faq-card-categories.cjs +18 -14
- package/dist/faq-card-categories.js +16 -12
- package/dist/faq-categorized-sections.cjs +9 -7
- package/dist/faq-categorized-sections.js +10 -5
- package/dist/faq-centered-accordion.cjs +9 -7
- package/dist/faq-centered-accordion.js +10 -5
- package/dist/faq-gradient-categories.cjs +18 -14
- package/dist/faq-gradient-categories.js +16 -12
- package/dist/faq-icon-benefits.cjs +18 -14
- package/dist/faq-icon-benefits.js +16 -12
- package/dist/faq-muted-cards.cjs +18 -14
- package/dist/faq-muted-cards.js +16 -12
- package/dist/faq-profile-sidebar.cjs +25 -21
- package/dist/faq-profile-sidebar.js +22 -18
- package/dist/faq-rounded-cards.cjs +18 -14
- package/dist/faq-rounded-cards.js +16 -12
- package/dist/faq-sidebar-navigation.cjs +20 -16
- package/dist/faq-sidebar-navigation.js +17 -13
- package/dist/faq-simple-accordion.cjs +18 -14
- package/dist/faq-simple-accordion.js +16 -12
- package/dist/faq-split-help.cjs +25 -21
- package/dist/faq-split-help.js +22 -18
- package/dist/faq-split-hero.cjs +9 -7
- package/dist/faq-split-hero.js +10 -5
- package/dist/feature-accordion-image.cjs +20 -16
- package/dist/feature-accordion-image.js +17 -13
- package/dist/feature-animated-carousel.cjs +35 -31
- package/dist/feature-animated-carousel.js +28 -24
- package/dist/feature-badge-grid-six.cjs +20 -16
- package/dist/feature-badge-grid-six.js +16 -12
- package/dist/feature-bento-image-grid.cjs +21 -17
- package/dist/feature-bento-image-grid.js +20 -16
- package/dist/feature-bento-utilities.cjs +19 -15
- package/dist/feature-bento-utilities.js +18 -14
- package/dist/feature-capabilities-grid.cjs +18 -14
- package/dist/feature-capabilities-grid.js +17 -13
- package/dist/feature-carousel-progress.cjs +31 -27
- package/dist/feature-carousel-progress.js +26 -22
- package/dist/feature-checklist-image.cjs +6 -2
- package/dist/feature-checklist-image.js +6 -2
- package/dist/feature-checklist-three-column.cjs +22 -18
- package/dist/feature-checklist-three-column.js +16 -12
- package/dist/feature-icon-grid-accent.cjs +26 -6
- package/dist/feature-icon-grid-accent.js +10 -5
- package/dist/feature-icon-grid-bordered.cjs +18 -14
- package/dist/feature-icon-grid-bordered.js +16 -12
- package/dist/feature-icon-grid-muted.cjs +18 -14
- package/dist/feature-icon-grid-muted.js +16 -12
- package/dist/feature-icon-tabs-content.cjs +20 -16
- package/dist/feature-icon-tabs-content.js +16 -12
- package/dist/feature-image-cards-three-column.cjs +29 -25
- package/dist/feature-image-cards-three-column.js +22 -18
- package/dist/feature-image-overlay-badge.cjs +18 -14
- package/dist/feature-image-overlay-badge.js +16 -12
- package/dist/feature-numbered-cards.cjs +20 -16
- package/dist/feature-numbered-cards.js +16 -12
- package/dist/feature-pattern-grid-links.cjs +19 -15
- package/dist/feature-pattern-grid-links.js +16 -12
- package/dist/feature-showcase.cjs +6 -2
- package/dist/feature-showcase.js +6 -2
- package/dist/feature-tabbed-content-image.cjs +21 -17
- package/dist/feature-tabbed-content-image.js +19 -15
- package/dist/feature-three-column-values.cjs +18 -14
- package/dist/feature-three-column-values.js +17 -13
- package/dist/feature-utility-cards-grid.cjs +20 -16
- package/dist/feature-utility-cards-grid.js +17 -13
- package/dist/footer-accordion-social.cjs +6 -2
- package/dist/footer-accordion-social.js +6 -2
- package/dist/footer-animated-social.cjs +6 -2
- package/dist/footer-animated-social.js +6 -2
- package/dist/footer-background-card.cjs +6 -2
- package/dist/footer-background-card.js +6 -2
- package/dist/footer-brand-description.cjs +6 -2
- package/dist/footer-brand-description.js +6 -2
- package/dist/footer-brand-links-contact.cjs +6 -2
- package/dist/footer-brand-links-contact.js +6 -2
- package/dist/footer-comprehensive-links.cjs +6 -2
- package/dist/footer-comprehensive-links.js +6 -2
- package/dist/footer-contact-card.cjs +6 -2
- package/dist/footer-contact-card.js +6 -2
- package/dist/footer-cta-banner.cjs +6 -2
- package/dist/footer-cta-banner.js +6 -2
- package/dist/footer-cta-social.cjs +24 -20
- package/dist/footer-cta-social.js +22 -18
- package/dist/footer-info-cards-accordion.cjs +24 -20
- package/dist/footer-info-cards-accordion.js +23 -19
- package/dist/footer-nav-social.cjs +6 -2
- package/dist/footer-nav-social.js +6 -2
- package/dist/footer-newsletter-contact.cjs +6 -2
- package/dist/footer-newsletter-contact.js +6 -2
- package/dist/footer-newsletter-grid.cjs +6 -2
- package/dist/footer-newsletter-grid.js +6 -2
- package/dist/footer-newsletter-minimal.cjs +27 -23
- package/dist/footer-newsletter-minimal.js +26 -22
- package/dist/footer-social-apps.cjs +26 -22
- package/dist/footer-social-apps.js +22 -18
- package/dist/footer-social-newsletter.cjs +6 -2
- package/dist/footer-social-newsletter.js +6 -2
- package/dist/footer-split-image-accordion.cjs +24 -20
- package/dist/footer-split-image-accordion.js +23 -19
- package/dist/geo-map.cjs +74 -54
- package/dist/geo-map.js +73 -53
- package/dist/hero-badge-shadow-overlay.cjs +6 -2
- package/dist/hero-badge-shadow-overlay.js +6 -2
- package/dist/hero-coming-soon-countdown.cjs +6 -2
- package/dist/hero-coming-soon-countdown.js +6 -2
- package/dist/hero-conversion-video-play.cjs +29 -25
- package/dist/hero-conversion-video-play.js +26 -22
- package/dist/hero-creative-studio-stacked.cjs +19 -15
- package/dist/hero-creative-studio-stacked.js +16 -12
- package/dist/hero-dashed-border-features.cjs +6 -2
- package/dist/hero-dashed-border-features.js +6 -2
- package/dist/hero-design-carousel-portfolio.cjs +29 -25
- package/dist/hero-design-carousel-portfolio.js +26 -22
- package/dist/hero-design-system-3d.cjs +18 -14
- package/dist/hero-design-system-3d.js +16 -12
- package/dist/hero-developer-tools-code.cjs +18 -14
- package/dist/hero-developer-tools-code.js +16 -12
- package/dist/hero-ecommerce-product-showcase.cjs +20 -16
- package/dist/hero-ecommerce-product-showcase.js +17 -13
- package/dist/hero-enterprise-security.cjs +6 -2
- package/dist/hero-enterprise-security.js +6 -2
- package/dist/hero-event-registration.cjs +21 -17
- package/dist/hero-event-registration.js +17 -13
- package/dist/hero-feature-cards-grid.cjs +6 -2
- package/dist/hero-feature-cards-grid.js +6 -2
- package/dist/hero-floating-images.cjs +26 -6
- package/dist/hero-floating-images.js +10 -5
- package/dist/hero-gradient-avatars-rating.cjs +19 -15
- package/dist/hero-gradient-avatars-rating.js +16 -12
- package/dist/hero-grid-pattern-solutions.cjs +6 -2
- package/dist/hero-grid-pattern-solutions.js +6 -2
- package/dist/hero-marketplace-scattered-images.cjs +6 -2
- package/dist/hero-marketplace-scattered-images.js +6 -2
- package/dist/hero-mentorship-video-split.cjs +6 -2
- package/dist/hero-mentorship-video-split.js +6 -2
- package/dist/hero-mobile-app-download.cjs +6 -2
- package/dist/hero-mobile-app-download.js +6 -2
- package/dist/hero-overlay-cta-grid.cjs +20 -16
- package/dist/hero-overlay-cta-grid.js +16 -12
- package/dist/hero-platform-features-grid.cjs +6 -2
- package/dist/hero-platform-features-grid.js +6 -2
- package/dist/hero-portfolio-creative.cjs +6 -2
- package/dist/hero-portfolio-creative.js +6 -2
- package/dist/hero-pricing-comparison.cjs +6 -2
- package/dist/hero-pricing-comparison.js +6 -2
- package/dist/hero-product-showcase-floating.cjs +27 -23
- package/dist/hero-product-showcase-floating.js +22 -18
- package/dist/hero-saas-dashboard-preview.cjs +6 -2
- package/dist/hero-saas-dashboard-preview.js +6 -2
- package/dist/hero-software-growth-video-dialog.cjs +19 -15
- package/dist/hero-software-growth-video-dialog.js +16 -12
- package/dist/hero-split-icon-cards.cjs +18 -14
- package/dist/hero-split-icon-cards.js +16 -12
- package/dist/hero-video-dialog-gradient.cjs +19 -15
- package/dist/hero-video-dialog-gradient.js +16 -12
- package/dist/hero-video-overlay-stars.cjs +18 -14
- package/dist/hero-video-overlay-stars.js +16 -12
- package/dist/index.cjs +200 -180
- package/dist/index.js +104 -84
- package/dist/industries-expandable-showcase.cjs +6 -2
- package/dist/industries-expandable-showcase.js +6 -2
- package/dist/industries-hover-reveal-grid.cjs +6 -2
- package/dist/industries-hover-reveal-grid.js +6 -2
- package/dist/industries-timeline-table.cjs +6 -2
- package/dist/industries-timeline-table.js +6 -2
- package/dist/interior-carousel.cjs +33 -29
- package/dist/interior-carousel.js +26 -22
- package/dist/link-page-bento-layout.cjs +6 -2
- package/dist/link-page-bento-layout.js +6 -2
- package/dist/link-page-grid-cards.cjs +6 -2
- package/dist/link-page-grid-cards.js +6 -2
- package/dist/link-page-minimal-profile.cjs +6 -2
- package/dist/link-page-minimal-profile.js +6 -2
- package/dist/link-page-newsletter-social.cjs +6 -2
- package/dist/link-page-newsletter-social.js +6 -2
- package/dist/link-tree-block.cjs +30 -26
- package/dist/link-tree-block.js +30 -26
- package/dist/list-achievements-showcase.cjs +6 -2
- package/dist/list-achievements-showcase.js +6 -2
- package/dist/list-feature-comparison.cjs +6 -2
- package/dist/list-feature-comparison.js +6 -2
- package/dist/list-metrics-dashboard.cjs +6 -2
- package/dist/list-metrics-dashboard.js +6 -2
- package/dist/list-searchable-grid.cjs +19 -15
- package/dist/list-searchable-grid.js +18 -14
- package/dist/list-service-category-table.cjs +26 -6
- package/dist/list-service-category-table.js +10 -5
- package/dist/navbar-animated-preview.cjs +6 -2
- package/dist/navbar-animated-preview.js +6 -2
- package/dist/navbar-centered-menu.cjs +6 -2
- package/dist/navbar-centered-menu.js +6 -2
- package/dist/navbar-dark-icons.cjs +6 -2
- package/dist/navbar-dark-icons.js +6 -2
- package/dist/navbar-dropdown-menu.cjs +6 -2
- package/dist/navbar-dropdown-menu.js +6 -2
- package/dist/navbar-education-platform.cjs +6 -2
- package/dist/navbar-education-platform.js +6 -2
- package/dist/navbar-enterprise-mega.cjs +6 -2
- package/dist/navbar-enterprise-mega.js +6 -2
- package/dist/navbar-feature-grid.cjs +6 -2
- package/dist/navbar-feature-grid.js +6 -2
- package/dist/navbar-floating-pill.cjs +6 -2
- package/dist/navbar-floating-pill.js +6 -2
- package/dist/navbar-fullscreen-menu.cjs +6 -2
- package/dist/navbar-fullscreen-menu.js +6 -2
- package/dist/navbar-icon-links.cjs +6 -2
- package/dist/navbar-icon-links.js +6 -2
- package/dist/navbar-image-preview.cjs +6 -2
- package/dist/navbar-image-preview.js +6 -2
- package/dist/navbar-mega-menu.cjs +6 -2
- package/dist/navbar-mega-menu.js +6 -2
- package/dist/navbar-multi-column-groups.cjs +6 -2
- package/dist/navbar-multi-column-groups.js +6 -2
- package/dist/navbar-platform-resources.cjs +6 -2
- package/dist/navbar-platform-resources.js +6 -2
- package/dist/navbar-search-focused.cjs +6 -2
- package/dist/navbar-search-focused.js +6 -2
- package/dist/navbar-sidebar-mobile.cjs +6 -2
- package/dist/navbar-sidebar-mobile.js +6 -2
- package/dist/navbar-simple-links.cjs +6 -2
- package/dist/navbar-simple-links.js +6 -2
- package/dist/navbar-split-cta.cjs +6 -2
- package/dist/navbar-split-cta.js +6 -2
- package/dist/navbar-sticky-compact.cjs +6 -2
- package/dist/navbar-sticky-compact.js +6 -2
- package/dist/navbar-tabbed-sections.cjs +6 -2
- package/dist/navbar-tabbed-sections.js +6 -2
- package/dist/navbar-transparent-overlay.cjs +6 -2
- package/dist/navbar-transparent-overlay.js +6 -2
- package/dist/offer-modal-membership-image.cjs +6 -2
- package/dist/offer-modal-membership-image.js +6 -2
- package/dist/offer-modal-newsletter-discount.cjs +6 -2
- package/dist/offer-modal-newsletter-discount.js +6 -2
- package/dist/offer-modal-sheet-newsletter.cjs +6 -2
- package/dist/offer-modal-sheet-newsletter.js +6 -2
- package/dist/payment-platform-icon.cjs +27 -2
- package/dist/payment-platform-icon.js +7 -2
- package/dist/pricing-addons-cards.cjs +19 -15
- package/dist/pricing-addons-cards.js +16 -12
- package/dist/pricing-addons-featured.cjs +20 -16
- package/dist/pricing-addons-featured.js +16 -12
- package/dist/pricing-collapsible-plans.cjs +19 -15
- package/dist/pricing-collapsible-plans.js +16 -12
- package/dist/pricing-columns-toggle.cjs +20 -16
- package/dist/pricing-columns-toggle.js +16 -12
- package/dist/pricing-comparison-headers.cjs +21 -17
- package/dist/pricing-comparison-headers.js +16 -12
- package/dist/pricing-comparison-table.cjs +21 -17
- package/dist/pricing-comparison-table.js +16 -12
- package/dist/pricing-discount-card.cjs +18 -14
- package/dist/pricing-discount-card.js +16 -12
- package/dist/pricing-enterprise-contact.cjs +18 -14
- package/dist/pricing-enterprise-contact.js +16 -12
- package/dist/pricing-feature-matrix.cjs +19 -15
- package/dist/pricing-feature-matrix.js +16 -12
- package/dist/pricing-four-tier-toggle.cjs +20 -16
- package/dist/pricing-four-tier-toggle.js +16 -12
- package/dist/pricing-full-comparison.cjs +19 -15
- package/dist/pricing-full-comparison.js +17 -13
- package/dist/pricing-gradient-cards.cjs +20 -16
- package/dist/pricing-gradient-cards.js +16 -12
- package/dist/pricing-icon-headers.cjs +19 -15
- package/dist/pricing-icon-headers.js +16 -12
- package/dist/pricing-minimal-cards.cjs +19 -15
- package/dist/pricing-minimal-cards.js +16 -12
- package/dist/pricing-packages-radio.cjs +18 -14
- package/dist/pricing-packages-radio.js +16 -12
- package/dist/pricing-popular-highlight.cjs +20 -16
- package/dist/pricing-popular-highlight.js +16 -12
- package/dist/pricing-radio-toggle.cjs +20 -16
- package/dist/pricing-radio-toggle.js +16 -12
- package/dist/pricing-responsive-table.cjs +18 -14
- package/dist/pricing-responsive-table.js +16 -12
- package/dist/pricing-services-cards.cjs +19 -15
- package/dist/pricing-services-cards.js +16 -12
- package/dist/pricing-simple-card.cjs +18 -14
- package/dist/pricing-simple-card.js +16 -12
- package/dist/pricing-single-card.cjs +19 -15
- package/dist/pricing-single-card.js +16 -12
- package/dist/pricing-split-layout.cjs +16 -12
- package/dist/pricing-split-layout.js +16 -12
- package/dist/pricing-spotlight-card.cjs +18 -14
- package/dist/pricing-spotlight-card.js +16 -12
- package/dist/pricing-switch-cards.cjs +20 -16
- package/dist/pricing-switch-cards.js +16 -12
- package/dist/pricing-tabs-toggle.cjs +20 -16
- package/dist/pricing-tabs-toggle.js +16 -12
- package/dist/pricing-tier-grid.cjs +19 -15
- package/dist/pricing-tier-grid.js +16 -12
- package/dist/pricing-toggle-cards.cjs +20 -16
- package/dist/pricing-toggle-cards.js +16 -12
- package/dist/pricing-toggle-period.cjs +18 -14
- package/dist/pricing-toggle-period.js +16 -12
- package/dist/pricing-two-column-basic.cjs +20 -16
- package/dist/pricing-two-column-basic.js +16 -12
- package/dist/process-expandable-timeline.cjs +6 -2
- package/dist/process-expandable-timeline.js +6 -2
- package/dist/process-icon-timeline.cjs +26 -6
- package/dist/process-icon-timeline.js +10 -5
- package/dist/process-numbered-services.cjs +6 -2
- package/dist/process-numbered-services.js +6 -2
- package/dist/process-roadmap-timeline.cjs +26 -6
- package/dist/process-roadmap-timeline.js +10 -5
- package/dist/process-scroll-image.cjs +24 -20
- package/dist/process-scroll-image.js +22 -18
- package/dist/process-steps-grid.cjs +26 -6
- package/dist/process-steps-grid.js +10 -5
- package/dist/process-sticky-steps.cjs +6 -2
- package/dist/process-sticky-steps.js +6 -2
- package/dist/project-background-reveal.cjs +17 -13
- package/dist/project-background-reveal.js +16 -12
- package/dist/project-card-overlay.cjs +26 -6
- package/dist/project-card-overlay.js +10 -5
- package/dist/project-carousel-cinematic.cjs +31 -27
- package/dist/project-carousel-cinematic.js +26 -22
- package/dist/project-carousel-detail-cards.cjs +31 -27
- package/dist/project-carousel-detail-cards.js +26 -22
- package/dist/project-carousel-minimal.cjs +31 -27
- package/dist/project-carousel-minimal.js +26 -22
- package/dist/project-detail-architecture-carousel.cjs +6 -2
- package/dist/project-detail-architecture-carousel.js +6 -2
- package/dist/project-detail-list-related.cjs +6 -2
- package/dist/project-detail-list-related.js +6 -2
- package/dist/project-detail-photography-breadcrumb.cjs +6 -2
- package/dist/project-detail-photography-breadcrumb.js +6 -2
- package/dist/project-detail-tabbed-case-study.cjs +6 -2
- package/dist/project-detail-tabbed-case-study.js +6 -2
- package/dist/project-experience-quote.cjs +17 -13
- package/dist/project-experience-quote.js +16 -12
- package/dist/project-featured-carousel.cjs +27 -23
- package/dist/project-featured-carousel.js +26 -22
- package/dist/project-horizontal-cards.cjs +17 -13
- package/dist/project-horizontal-cards.js +16 -12
- package/dist/project-interactive-hover-reveal.cjs +18 -14
- package/dist/project-interactive-hover-reveal.js +16 -12
- package/dist/project-scroll-reveal.cjs +26 -6
- package/dist/project-scroll-reveal.js +10 -5
- package/dist/project-video-carousel.cjs +31 -27
- package/dist/project-video-carousel.js +26 -22
- package/dist/project-video-hover-bento.cjs +26 -6
- package/dist/project-video-hover-bento.js +10 -5
- package/dist/project-video-hover-grid.cjs +26 -6
- package/dist/project-video-hover-grid.js +10 -5
- package/dist/project-video-hover-rounded.cjs +26 -6
- package/dist/project-video-hover-rounded.js +10 -5
- package/dist/project-video-hover-stack.cjs +26 -6
- package/dist/project-video-hover-stack.js +10 -5
- package/dist/project-video-hover-two-by-two.cjs +26 -6
- package/dist/project-video-hover-two-by-two.js +10 -5
- package/dist/project-work-showcase.cjs +17 -13
- package/dist/project-work-showcase.js +16 -12
- package/dist/project-zigzag-layout.cjs +16 -12
- package/dist/project-zigzag-layout.js +16 -12
- package/dist/registry.cjs +1737 -1717
- package/dist/registry.js +507 -487
- package/dist/resource-detail-document-sidebar.cjs +6 -2
- package/dist/resource-detail-document-sidebar.js +6 -2
- package/dist/resource-detail-whitepaper-sidebar.cjs +6 -2
- package/dist/resource-detail-whitepaper-sidebar.js +6 -2
- package/dist/resource-list-course-cards.cjs +6 -2
- package/dist/resource-list-course-cards.js +6 -2
- package/dist/resource-list-featured-articles.cjs +6 -2
- package/dist/resource-list-featured-articles.js +6 -2
- package/dist/resource-list-featured-grid.cjs +6 -2
- package/dist/resource-list-featured-grid.js +6 -2
- package/dist/resource-list-hero-filter.cjs +6 -2
- package/dist/resource-list-hero-filter.js +6 -2
- package/dist/resource-list-news-updates.cjs +6 -2
- package/dist/resource-list-news-updates.js +6 -2
- package/dist/service-detail-centered-expertise.cjs +16 -12
- package/dist/service-detail-centered-expertise.js +16 -12
- package/dist/service-detail-compact-cards.cjs +16 -12
- package/dist/service-detail-compact-cards.js +16 -12
- package/dist/service-detail-sidebar-related.cjs +16 -12
- package/dist/service-detail-sidebar-related.js +16 -12
- package/dist/service-detail-sidebar-stats.cjs +27 -7
- package/dist/service-detail-sidebar-stats.js +10 -5
- package/dist/service-hover-carousel.cjs +38 -34
- package/dist/service-hover-carousel.js +26 -22
- package/dist/services-list-accordion-benefits.cjs +16 -12
- package/dist/services-list-accordion-benefits.js +16 -12
- package/dist/services-list-accordion.cjs +10 -8
- package/dist/services-list-accordion.js +10 -5
- package/dist/services-list-cards-hover.cjs +16 -12
- package/dist/services-list-cards-hover.js +16 -12
- package/dist/services-list-category-accordion.cjs +10 -8
- package/dist/services-list-category-accordion.js +10 -5
- package/dist/services-list-centered-icons.cjs +27 -7
- package/dist/services-list-centered-icons.js +10 -5
- package/dist/services-list-culture-tabs.cjs +16 -12
- package/dist/services-list-culture-tabs.js +16 -12
- package/dist/services-list-feature-spotlight.cjs +27 -7
- package/dist/services-list-feature-spotlight.js +10 -5
- package/dist/services-list-featured-highlight.cjs +16 -12
- package/dist/services-list-featured-highlight.js +16 -12
- package/dist/services-list-hero-cards.cjs +6 -2
- package/dist/services-list-hero-cards.js +6 -2
- package/dist/services-list-icon-grid.cjs +27 -7
- package/dist/services-list-icon-grid.js +10 -5
- package/dist/services-list-image-cards.cjs +6 -2
- package/dist/services-list-image-cards.js +6 -2
- package/dist/services-list-image-overlay-grid.cjs +6 -2
- package/dist/services-list-image-overlay-grid.js +6 -2
- package/dist/services-list-masonry.cjs +16 -12
- package/dist/services-list-masonry.js +16 -12
- package/dist/services-list-methodology-steps.cjs +16 -12
- package/dist/services-list-methodology-steps.js +16 -12
- package/dist/services-list-minimal-grid.cjs +16 -12
- package/dist/services-list-minimal-grid.js +16 -12
- package/dist/services-list-muted-cards.cjs +27 -7
- package/dist/services-list-muted-cards.js +10 -5
- package/dist/services-list-numbered-steps.cjs +16 -12
- package/dist/services-list-numbered-steps.js +16 -12
- package/dist/services-list-pricing-grid.cjs +16 -12
- package/dist/services-list-pricing-grid.js +16 -12
- package/dist/services-list-progress-sidebar.cjs +16 -12
- package/dist/services-list-progress-sidebar.js +16 -12
- package/dist/services-list-split-checklist.cjs +16 -12
- package/dist/services-list-split-checklist.js +16 -12
- package/dist/services-list-sticky-image.cjs +6 -2
- package/dist/services-list-sticky-image.js +6 -2
- package/dist/services-list-table-hover.cjs +6 -2
- package/dist/services-list-table-hover.js +6 -2
- package/dist/services-list-tabs-features.cjs +10 -8
- package/dist/services-list-tabs-features.js +10 -5
- package/dist/services-list-timeline.cjs +16 -12
- package/dist/services-list-timeline.js +16 -12
- package/dist/services-list-two-column-grid.cjs +16 -12
- package/dist/services-list-two-column-grid.js +16 -12
- package/dist/services-list-vertical-tags.cjs +27 -7
- package/dist/services-list-vertical-tags.js +10 -5
- package/dist/services-list-video-showcase.cjs +18 -14
- package/dist/services-list-video-showcase.js +18 -14
- package/dist/social-link-icon.cjs +6 -2
- package/dist/social-link-icon.js +6 -2
- package/dist/stats-animated-counter.cjs +17 -13
- package/dist/stats-animated-counter.js +15 -11
- package/dist/stats-card-group.cjs +26 -6
- package/dist/stats-card-group.js +10 -5
- package/dist/stats-growth-timeline.cjs +22 -18
- package/dist/stats-growth-timeline.js +16 -12
- package/dist/stats-icon-cards.cjs +26 -6
- package/dist/stats-icon-cards.js +10 -5
- package/dist/stats-impact-grid.cjs +23 -19
- package/dist/stats-impact-grid.js +16 -12
- package/dist/stats-primary-secondary.cjs +26 -6
- package/dist/stats-primary-secondary.js +10 -5
- package/dist/stats-timeline-tabs.cjs +9 -7
- package/dist/stats-timeline-tabs.js +10 -5
- package/dist/team-alternating-bios.cjs +17 -13
- package/dist/team-alternating-bios.js +17 -13
- package/dist/team-avatar-social.cjs +17 -13
- package/dist/team-avatar-social.js +17 -13
- package/dist/team-bio-badges.cjs +17 -13
- package/dist/team-bio-badges.js +17 -13
- package/dist/team-carousel-experience.cjs +27 -23
- package/dist/team-carousel-experience.js +27 -23
- package/dist/team-contact-cards.cjs +18 -14
- package/dist/team-contact-cards.js +18 -14
- package/dist/team-filterable-search.cjs +22 -18
- package/dist/team-filterable-search.js +22 -18
- package/dist/team-gradient-cards.cjs +17 -13
- package/dist/team-gradient-cards.js +17 -13
- package/dist/team-grid-animated.cjs +18 -14
- package/dist/team-grid-animated.js +18 -14
- package/dist/team-hover-highlight.cjs +17 -13
- package/dist/team-hover-highlight.js +17 -13
- package/dist/team-hover-overlay.cjs +17 -13
- package/dist/team-hover-overlay.js +17 -13
- package/dist/team-large-images.cjs +17 -13
- package/dist/team-large-images.js +17 -13
- package/dist/team-role-filter.cjs +20 -16
- package/dist/team-role-filter.js +20 -16
- package/dist/team-skill-badges.cjs +17 -13
- package/dist/team-skill-badges.js +17 -13
- package/dist/team-social-cards.cjs +17 -13
- package/dist/team-social-cards.js +17 -13
- package/dist/team-social-grid.cjs +17 -13
- package/dist/team-social-grid.js +17 -13
- package/dist/team-testimonial-stats.cjs +17 -13
- package/dist/team-testimonial-stats.js +17 -13
- package/dist/testimonial-carousel-cards.cjs +33 -29
- package/dist/testimonial-carousel-cards.js +26 -22
- package/dist/testimonials-animated-split.cjs +9 -7
- package/dist/testimonials-animated-split.js +10 -5
- package/dist/testimonials-bento-grid.cjs +9 -7
- package/dist/testimonials-bento-grid.js +10 -5
- package/dist/testimonials-carousel-image.cjs +18 -14
- package/dist/testimonials-carousel-image.js +13 -9
- package/dist/testimonials-company-logo.cjs +26 -6
- package/dist/testimonials-company-logo.js +10 -5
- package/dist/testimonials-grid-add-review.cjs +9 -7
- package/dist/testimonials-grid-add-review.js +10 -5
- package/dist/testimonials-images-helpful.cjs +21 -17
- package/dist/testimonials-images-helpful.js +16 -12
- package/dist/testimonials-large-quote.cjs +9 -7
- package/dist/testimonials-large-quote.js +10 -5
- package/dist/testimonials-list-verified.cjs +9 -7
- package/dist/testimonials-list-verified.js +10 -5
- package/dist/testimonials-mini-dividers.cjs +9 -7
- package/dist/testimonials-mini-dividers.js +10 -5
- package/dist/testimonials-minimal-numbered.cjs +9 -7
- package/dist/testimonials-minimal-numbered.js +10 -5
- package/dist/testimonials-quote-carousel.cjs +31 -27
- package/dist/testimonials-quote-carousel.js +26 -22
- package/dist/testimonials-scrolling-columns.cjs +26 -6
- package/dist/testimonials-scrolling-columns.js +10 -5
- package/dist/testimonials-split-image.cjs +9 -7
- package/dist/testimonials-split-image.js +10 -5
- package/dist/testimonials-stats-header.cjs +9 -7
- package/dist/testimonials-stats-header.js +10 -5
- package/dist/testimonials-twitter-cards.cjs +19 -15
- package/dist/testimonials-twitter-cards.js +16 -12
- package/dist/timeline-ai-workflow-cards.cjs +27 -7
- package/dist/timeline-ai-workflow-cards.js +10 -5
- package/dist/timeline-alternating-diagonal.cjs +12 -8
- package/dist/timeline-alternating-diagonal.js +12 -8
- package/dist/timeline-horizontal-icons.cjs +10 -8
- package/dist/timeline-horizontal-icons.js +10 -5
- package/dist/timeline-productivity-list.cjs +27 -7
- package/dist/timeline-productivity-list.js +10 -5
- package/dist/timeline-stepper-animated.cjs +22 -18
- package/dist/timeline-stepper-animated.js +21 -17
- package/dist/timeline-tabbed-phases.cjs +6 -2
- package/dist/timeline-tabbed-phases.js +6 -2
- package/dist/timeline-vertical-icon-dashed.cjs +6 -2
- package/dist/timeline-vertical-icon-dashed.js +6 -2
- package/package.json +3 -3
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
|
-
var
|
|
4
|
+
var React4 = require('react');
|
|
5
5
|
var clsx = require('clsx');
|
|
6
6
|
var tailwindMerge = require('tailwind-merge');
|
|
7
7
|
var img = require('@page-speed/img');
|
|
@@ -29,7 +29,7 @@ function _interopNamespace(e) {
|
|
|
29
29
|
return Object.freeze(n);
|
|
30
30
|
}
|
|
31
31
|
|
|
32
|
-
var
|
|
32
|
+
var React4__namespace = /*#__PURE__*/_interopNamespace(React4);
|
|
33
33
|
var TabsPrimitive__namespace = /*#__PURE__*/_interopNamespace(TabsPrimitive);
|
|
34
34
|
|
|
35
35
|
// components/blocks/about/community-initiatives.tsx
|
|
@@ -37,9 +37,13 @@ function cn(...inputs) {
|
|
|
37
37
|
return tailwindMerge.twMerge(clsx.clsx(inputs));
|
|
38
38
|
}
|
|
39
39
|
var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
|
|
40
|
-
|
|
40
|
+
var DynamicIcon = React4__namespace.memo(function DynamicIcon2({
|
|
41
|
+
apiKey,
|
|
42
|
+
...props
|
|
43
|
+
}) {
|
|
41
44
|
return /* @__PURE__ */ jsxRuntime.jsx(icon.Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
|
|
42
|
-
}
|
|
45
|
+
});
|
|
46
|
+
DynamicIcon.displayName = "DynamicIcon";
|
|
43
47
|
function Tabs({
|
|
44
48
|
className,
|
|
45
49
|
...props
|
|
@@ -162,7 +166,7 @@ var maxWidthStyles = {
|
|
|
162
166
|
"4xl": "max-w-[1536px]",
|
|
163
167
|
full: "max-w-full"
|
|
164
168
|
};
|
|
165
|
-
var Container =
|
|
169
|
+
var Container = React4__namespace.default.forwardRef(
|
|
166
170
|
({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
|
|
167
171
|
const Component = as;
|
|
168
172
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -468,7 +472,7 @@ var spacingStyles = {
|
|
|
468
472
|
};
|
|
469
473
|
var predefinedSpacings = ["none", "sm", "md", "lg", "xl", "hero"];
|
|
470
474
|
var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
|
|
471
|
-
var Section =
|
|
475
|
+
var Section = React4__namespace.default.forwardRef(
|
|
472
476
|
({
|
|
473
477
|
id,
|
|
474
478
|
title,
|
|
@@ -604,7 +608,7 @@ function useNavigation({
|
|
|
604
608
|
href,
|
|
605
609
|
onClick
|
|
606
610
|
} = {}) {
|
|
607
|
-
const linkType =
|
|
611
|
+
const linkType = React4__namespace.useMemo(() => {
|
|
608
612
|
if (!href || href.trim() === "") {
|
|
609
613
|
return onClick ? "none" : "none";
|
|
610
614
|
}
|
|
@@ -625,7 +629,7 @@ function useNavigation({
|
|
|
625
629
|
return "internal";
|
|
626
630
|
}
|
|
627
631
|
}, [href, onClick]);
|
|
628
|
-
const normalizedHref =
|
|
632
|
+
const normalizedHref = React4__namespace.useMemo(() => {
|
|
629
633
|
if (!href || href.trim() === "") {
|
|
630
634
|
return void 0;
|
|
631
635
|
}
|
|
@@ -643,7 +647,7 @@ function useNavigation({
|
|
|
643
647
|
return trimmed;
|
|
644
648
|
}
|
|
645
649
|
}, [href, linkType]);
|
|
646
|
-
const target =
|
|
650
|
+
const target = React4__namespace.useMemo(() => {
|
|
647
651
|
switch (linkType) {
|
|
648
652
|
case "external":
|
|
649
653
|
return "_blank";
|
|
@@ -656,7 +660,7 @@ function useNavigation({
|
|
|
656
660
|
return void 0;
|
|
657
661
|
}
|
|
658
662
|
}, [linkType]);
|
|
659
|
-
const rel =
|
|
663
|
+
const rel = React4__namespace.useMemo(() => {
|
|
660
664
|
if (linkType === "external") {
|
|
661
665
|
return "noopener noreferrer";
|
|
662
666
|
}
|
|
@@ -665,7 +669,7 @@ function useNavigation({
|
|
|
665
669
|
const isExternal = linkType === "external";
|
|
666
670
|
const isInternal = linkType === "internal";
|
|
667
671
|
const shouldUseRouter = isInternal && typeof normalizedHref === "string" && normalizedHref.startsWith("/");
|
|
668
|
-
const handleClick =
|
|
672
|
+
const handleClick = React4__namespace.useCallback(
|
|
669
673
|
(event) => {
|
|
670
674
|
if (onClick) {
|
|
671
675
|
try {
|
|
@@ -849,7 +853,7 @@ var buttonVariants = classVarianceAuthority.cva(baseStyles, {
|
|
|
849
853
|
size: "default"
|
|
850
854
|
}
|
|
851
855
|
});
|
|
852
|
-
var Pressable =
|
|
856
|
+
var Pressable = React4__namespace.forwardRef(
|
|
853
857
|
({
|
|
854
858
|
children,
|
|
855
859
|
className,
|
|
@@ -1039,17 +1043,17 @@ function CommunityInitiatives({
|
|
|
1039
1043
|
pattern,
|
|
1040
1044
|
patternOpacity
|
|
1041
1045
|
}) {
|
|
1042
|
-
const [activeCategory, setActiveCategory] =
|
|
1046
|
+
const [activeCategory, setActiveCategory] = React4__namespace.useState(
|
|
1043
1047
|
categories?.[0]?.id || ""
|
|
1044
1048
|
);
|
|
1045
1049
|
const currentCategory = categories?.find((category) => category.id === activeCategory) || categories?.[0];
|
|
1046
|
-
const handleCategoryChange =
|
|
1050
|
+
const handleCategoryChange = React4.useCallback(
|
|
1047
1051
|
(e) => {
|
|
1048
1052
|
setActiveCategory(e.target.value);
|
|
1049
1053
|
},
|
|
1050
1054
|
[]
|
|
1051
1055
|
);
|
|
1052
|
-
const categoriesContent =
|
|
1056
|
+
const categoriesContent = React4.useMemo(() => {
|
|
1053
1057
|
if (categoriesSlot) return categoriesSlot;
|
|
1054
1058
|
if (!categories || categories.length === 0) return null;
|
|
1055
1059
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import * as
|
|
3
|
-
import
|
|
2
|
+
import * as React4 from 'react';
|
|
3
|
+
import React4__default, { useCallback, useMemo } from 'react';
|
|
4
4
|
import { clsx } from 'clsx';
|
|
5
5
|
import { twMerge } from 'tailwind-merge';
|
|
6
6
|
import { Img } from '@page-speed/img';
|
|
@@ -15,9 +15,13 @@ function cn(...inputs) {
|
|
|
15
15
|
return twMerge(clsx(inputs));
|
|
16
16
|
}
|
|
17
17
|
var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
|
|
18
|
-
|
|
18
|
+
var DynamicIcon = React4.memo(function DynamicIcon2({
|
|
19
|
+
apiKey,
|
|
20
|
+
...props
|
|
21
|
+
}) {
|
|
19
22
|
return /* @__PURE__ */ jsx(Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
|
|
20
|
-
}
|
|
23
|
+
});
|
|
24
|
+
DynamicIcon.displayName = "DynamicIcon";
|
|
21
25
|
function Tabs({
|
|
22
26
|
className,
|
|
23
27
|
...props
|
|
@@ -140,7 +144,7 @@ var maxWidthStyles = {
|
|
|
140
144
|
"4xl": "max-w-[1536px]",
|
|
141
145
|
full: "max-w-full"
|
|
142
146
|
};
|
|
143
|
-
var Container =
|
|
147
|
+
var Container = React4__default.forwardRef(
|
|
144
148
|
({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
|
|
145
149
|
const Component = as;
|
|
146
150
|
return /* @__PURE__ */ jsx(
|
|
@@ -446,7 +450,7 @@ var spacingStyles = {
|
|
|
446
450
|
};
|
|
447
451
|
var predefinedSpacings = ["none", "sm", "md", "lg", "xl", "hero"];
|
|
448
452
|
var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
|
|
449
|
-
var Section =
|
|
453
|
+
var Section = React4__default.forwardRef(
|
|
450
454
|
({
|
|
451
455
|
id,
|
|
452
456
|
title,
|
|
@@ -582,7 +586,7 @@ function useNavigation({
|
|
|
582
586
|
href,
|
|
583
587
|
onClick
|
|
584
588
|
} = {}) {
|
|
585
|
-
const linkType =
|
|
589
|
+
const linkType = React4.useMemo(() => {
|
|
586
590
|
if (!href || href.trim() === "") {
|
|
587
591
|
return onClick ? "none" : "none";
|
|
588
592
|
}
|
|
@@ -603,7 +607,7 @@ function useNavigation({
|
|
|
603
607
|
return "internal";
|
|
604
608
|
}
|
|
605
609
|
}, [href, onClick]);
|
|
606
|
-
const normalizedHref =
|
|
610
|
+
const normalizedHref = React4.useMemo(() => {
|
|
607
611
|
if (!href || href.trim() === "") {
|
|
608
612
|
return void 0;
|
|
609
613
|
}
|
|
@@ -621,7 +625,7 @@ function useNavigation({
|
|
|
621
625
|
return trimmed;
|
|
622
626
|
}
|
|
623
627
|
}, [href, linkType]);
|
|
624
|
-
const target =
|
|
628
|
+
const target = React4.useMemo(() => {
|
|
625
629
|
switch (linkType) {
|
|
626
630
|
case "external":
|
|
627
631
|
return "_blank";
|
|
@@ -634,7 +638,7 @@ function useNavigation({
|
|
|
634
638
|
return void 0;
|
|
635
639
|
}
|
|
636
640
|
}, [linkType]);
|
|
637
|
-
const rel =
|
|
641
|
+
const rel = React4.useMemo(() => {
|
|
638
642
|
if (linkType === "external") {
|
|
639
643
|
return "noopener noreferrer";
|
|
640
644
|
}
|
|
@@ -643,7 +647,7 @@ function useNavigation({
|
|
|
643
647
|
const isExternal = linkType === "external";
|
|
644
648
|
const isInternal = linkType === "internal";
|
|
645
649
|
const shouldUseRouter = isInternal && typeof normalizedHref === "string" && normalizedHref.startsWith("/");
|
|
646
|
-
const handleClick =
|
|
650
|
+
const handleClick = React4.useCallback(
|
|
647
651
|
(event) => {
|
|
648
652
|
if (onClick) {
|
|
649
653
|
try {
|
|
@@ -827,7 +831,7 @@ var buttonVariants = cva(baseStyles, {
|
|
|
827
831
|
size: "default"
|
|
828
832
|
}
|
|
829
833
|
});
|
|
830
|
-
var Pressable =
|
|
834
|
+
var Pressable = React4.forwardRef(
|
|
831
835
|
({
|
|
832
836
|
children,
|
|
833
837
|
className,
|
|
@@ -1017,7 +1021,7 @@ function CommunityInitiatives({
|
|
|
1017
1021
|
pattern,
|
|
1018
1022
|
patternOpacity
|
|
1019
1023
|
}) {
|
|
1020
|
-
const [activeCategory, setActiveCategory] =
|
|
1024
|
+
const [activeCategory, setActiveCategory] = React4.useState(
|
|
1021
1025
|
categories?.[0]?.id || ""
|
|
1022
1026
|
);
|
|
1023
1027
|
const currentCategory = categories?.find((category) => category.id === activeCategory) || categories?.[0];
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
|
-
var
|
|
4
|
+
var React4 = require('react');
|
|
5
5
|
var clsx = require('clsx');
|
|
6
6
|
var tailwindMerge = require('tailwind-merge');
|
|
7
7
|
var icon = require('@page-speed/icon');
|
|
@@ -26,7 +26,7 @@ function _interopNamespace(e) {
|
|
|
26
26
|
return Object.freeze(n);
|
|
27
27
|
}
|
|
28
28
|
|
|
29
|
-
var
|
|
29
|
+
var React4__namespace = /*#__PURE__*/_interopNamespace(React4);
|
|
30
30
|
|
|
31
31
|
// components/blocks/comparison/comparison-ai-models.tsx
|
|
32
32
|
function cn(...inputs) {
|
|
@@ -63,9 +63,13 @@ function getNestedCardTextColor(parentBg, options) {
|
|
|
63
63
|
return isDark ? "text-foreground" : "";
|
|
64
64
|
}
|
|
65
65
|
var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
|
|
66
|
-
|
|
66
|
+
var DynamicIcon = React4__namespace.memo(function DynamicIcon2({
|
|
67
|
+
apiKey,
|
|
68
|
+
...props
|
|
69
|
+
}) {
|
|
67
70
|
return /* @__PURE__ */ jsxRuntime.jsx(icon.Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
|
|
68
|
-
}
|
|
71
|
+
});
|
|
72
|
+
DynamicIcon.displayName = "DynamicIcon";
|
|
69
73
|
function Table({ className, ...props }) {
|
|
70
74
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
71
75
|
"div",
|
|
@@ -151,7 +155,7 @@ var maxWidthStyles = {
|
|
|
151
155
|
"4xl": "max-w-[1536px]",
|
|
152
156
|
full: "max-w-full"
|
|
153
157
|
};
|
|
154
|
-
var Container =
|
|
158
|
+
var Container = React4__namespace.default.forwardRef(
|
|
155
159
|
({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
|
|
156
160
|
const Component = as;
|
|
157
161
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -457,7 +461,7 @@ var spacingStyles = {
|
|
|
457
461
|
};
|
|
458
462
|
var predefinedSpacings = ["none", "sm", "md", "lg", "xl", "hero"];
|
|
459
463
|
var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
|
|
460
|
-
var Section =
|
|
464
|
+
var Section = React4__namespace.default.forwardRef(
|
|
461
465
|
({
|
|
462
466
|
id,
|
|
463
467
|
title,
|
|
@@ -538,8 +542,8 @@ function ComparisonAiModels({
|
|
|
538
542
|
patternOpacity,
|
|
539
543
|
optixFlowConfig
|
|
540
544
|
}) {
|
|
541
|
-
const [hoveredModel, setHoveredModel] =
|
|
542
|
-
const renderStatusIcon =
|
|
545
|
+
const [hoveredModel, setHoveredModel] = React4.useState(null);
|
|
546
|
+
const renderStatusIcon = React4__namespace.useCallback((status) => {
|
|
543
547
|
if (status === "best") {
|
|
544
548
|
return /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/circle-check", size: 16, className: "text-success" });
|
|
545
549
|
}
|
|
@@ -548,7 +552,7 @@ function ComparisonAiModels({
|
|
|
548
552
|
}
|
|
549
553
|
return /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/minus", size: 16, className: "text-muted-foreground" });
|
|
550
554
|
}, []);
|
|
551
|
-
const getCellClassName =
|
|
555
|
+
const getCellClassName = React4__namespace.useCallback(
|
|
552
556
|
(status, modelKey) => {
|
|
553
557
|
const baseClass = "cursor-pointer py-4 text-center font-medium transition-all duration-300";
|
|
554
558
|
let statusClass = "";
|
|
@@ -569,7 +573,7 @@ function ComparisonAiModels({
|
|
|
569
573
|
},
|
|
570
574
|
[hoveredModel]
|
|
571
575
|
);
|
|
572
|
-
const getSummaryCardClassName =
|
|
576
|
+
const getSummaryCardClassName = React4__namespace.useCallback(
|
|
573
577
|
(modelKey) => {
|
|
574
578
|
const baseClass = "rounded border border-border/30 bg-background/50 p-3 transition-all duration-300";
|
|
575
579
|
if (hoveredModel === modelKey) {
|
|
@@ -584,7 +588,7 @@ function ComparisonAiModels({
|
|
|
584
588
|
},
|
|
585
589
|
[hoveredModel]
|
|
586
590
|
);
|
|
587
|
-
const tableContent =
|
|
591
|
+
const tableContent = React4__namespace.useMemo(() => {
|
|
588
592
|
if (tableSlot) return tableSlot;
|
|
589
593
|
if (!models || !comparisonData || comparisonData.length === 0) return null;
|
|
590
594
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -662,7 +666,7 @@ function ComparisonAiModels({
|
|
|
662
666
|
getCellClassName,
|
|
663
667
|
renderStatusIcon
|
|
664
668
|
]);
|
|
665
|
-
const analysisContent =
|
|
669
|
+
const analysisContent = React4__namespace.useMemo(() => {
|
|
666
670
|
if (analysisSlot) return analysisSlot;
|
|
667
671
|
if (!models) return null;
|
|
668
672
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn(
|
|
@@ -703,14 +707,14 @@ function ComparisonAiModels({
|
|
|
703
707
|
] })
|
|
704
708
|
] }) });
|
|
705
709
|
}, [analysisSlot, models, analysisClassName, getSummaryCardClassName]);
|
|
706
|
-
const headingContent =
|
|
710
|
+
const headingContent = React4__namespace.useMemo(() => {
|
|
707
711
|
if (!heading) return null;
|
|
708
712
|
if (typeof heading === "string") {
|
|
709
713
|
return /* @__PURE__ */ jsxRuntime.jsx("h2", { className: cn("text-3xl font-bold md:text-4xl lg:text-5xl", headingClassName), children: heading });
|
|
710
714
|
}
|
|
711
715
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: headingClassName, children: heading });
|
|
712
716
|
}, [heading, headingClassName]);
|
|
713
|
-
const descriptionContent =
|
|
717
|
+
const descriptionContent = React4__namespace.useMemo(() => {
|
|
714
718
|
if (!description) return null;
|
|
715
719
|
if (typeof description === "string") {
|
|
716
720
|
return /* @__PURE__ */ jsxRuntime.jsx("p", { className: cn("mt-4 text-muted-foreground md:text-lg", descriptionClassName), children: description });
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import * as
|
|
3
|
-
import
|
|
2
|
+
import * as React4 from 'react';
|
|
3
|
+
import React4__default, { useState } from 'react';
|
|
4
4
|
import { clsx } from 'clsx';
|
|
5
5
|
import { twMerge } from 'tailwind-merge';
|
|
6
6
|
import { Icon } from '@page-speed/icon';
|
|
@@ -42,9 +42,13 @@ function getNestedCardTextColor(parentBg, options) {
|
|
|
42
42
|
return isDark ? "text-foreground" : "";
|
|
43
43
|
}
|
|
44
44
|
var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
|
|
45
|
-
|
|
45
|
+
var DynamicIcon = React4.memo(function DynamicIcon2({
|
|
46
|
+
apiKey,
|
|
47
|
+
...props
|
|
48
|
+
}) {
|
|
46
49
|
return /* @__PURE__ */ jsx(Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
|
|
47
|
-
}
|
|
50
|
+
});
|
|
51
|
+
DynamicIcon.displayName = "DynamicIcon";
|
|
48
52
|
function Table({ className, ...props }) {
|
|
49
53
|
return /* @__PURE__ */ jsx(
|
|
50
54
|
"div",
|
|
@@ -130,7 +134,7 @@ var maxWidthStyles = {
|
|
|
130
134
|
"4xl": "max-w-[1536px]",
|
|
131
135
|
full: "max-w-full"
|
|
132
136
|
};
|
|
133
|
-
var Container =
|
|
137
|
+
var Container = React4__default.forwardRef(
|
|
134
138
|
({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
|
|
135
139
|
const Component = as;
|
|
136
140
|
return /* @__PURE__ */ jsx(
|
|
@@ -436,7 +440,7 @@ var spacingStyles = {
|
|
|
436
440
|
};
|
|
437
441
|
var predefinedSpacings = ["none", "sm", "md", "lg", "xl", "hero"];
|
|
438
442
|
var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
|
|
439
|
-
var Section =
|
|
443
|
+
var Section = React4__default.forwardRef(
|
|
440
444
|
({
|
|
441
445
|
id,
|
|
442
446
|
title,
|
|
@@ -518,7 +522,7 @@ function ComparisonAiModels({
|
|
|
518
522
|
optixFlowConfig
|
|
519
523
|
}) {
|
|
520
524
|
const [hoveredModel, setHoveredModel] = useState(null);
|
|
521
|
-
const renderStatusIcon =
|
|
525
|
+
const renderStatusIcon = React4.useCallback((status) => {
|
|
522
526
|
if (status === "best") {
|
|
523
527
|
return /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/circle-check", size: 16, className: "text-success" });
|
|
524
528
|
}
|
|
@@ -527,7 +531,7 @@ function ComparisonAiModels({
|
|
|
527
531
|
}
|
|
528
532
|
return /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/minus", size: 16, className: "text-muted-foreground" });
|
|
529
533
|
}, []);
|
|
530
|
-
const getCellClassName =
|
|
534
|
+
const getCellClassName = React4.useCallback(
|
|
531
535
|
(status, modelKey) => {
|
|
532
536
|
const baseClass = "cursor-pointer py-4 text-center font-medium transition-all duration-300";
|
|
533
537
|
let statusClass = "";
|
|
@@ -548,7 +552,7 @@ function ComparisonAiModels({
|
|
|
548
552
|
},
|
|
549
553
|
[hoveredModel]
|
|
550
554
|
);
|
|
551
|
-
const getSummaryCardClassName =
|
|
555
|
+
const getSummaryCardClassName = React4.useCallback(
|
|
552
556
|
(modelKey) => {
|
|
553
557
|
const baseClass = "rounded border border-border/30 bg-background/50 p-3 transition-all duration-300";
|
|
554
558
|
if (hoveredModel === modelKey) {
|
|
@@ -563,7 +567,7 @@ function ComparisonAiModels({
|
|
|
563
567
|
},
|
|
564
568
|
[hoveredModel]
|
|
565
569
|
);
|
|
566
|
-
const tableContent =
|
|
570
|
+
const tableContent = React4.useMemo(() => {
|
|
567
571
|
if (tableSlot) return tableSlot;
|
|
568
572
|
if (!models || !comparisonData || comparisonData.length === 0) return null;
|
|
569
573
|
return /* @__PURE__ */ jsx(
|
|
@@ -641,7 +645,7 @@ function ComparisonAiModels({
|
|
|
641
645
|
getCellClassName,
|
|
642
646
|
renderStatusIcon
|
|
643
647
|
]);
|
|
644
|
-
const analysisContent =
|
|
648
|
+
const analysisContent = React4.useMemo(() => {
|
|
645
649
|
if (analysisSlot) return analysisSlot;
|
|
646
650
|
if (!models) return null;
|
|
647
651
|
return /* @__PURE__ */ jsx("div", { className: cn(
|
|
@@ -682,14 +686,14 @@ function ComparisonAiModels({
|
|
|
682
686
|
] })
|
|
683
687
|
] }) });
|
|
684
688
|
}, [analysisSlot, models, analysisClassName, getSummaryCardClassName]);
|
|
685
|
-
const headingContent =
|
|
689
|
+
const headingContent = React4.useMemo(() => {
|
|
686
690
|
if (!heading) return null;
|
|
687
691
|
if (typeof heading === "string") {
|
|
688
692
|
return /* @__PURE__ */ jsx("h2", { className: cn("text-3xl font-bold md:text-4xl lg:text-5xl", headingClassName), children: heading });
|
|
689
693
|
}
|
|
690
694
|
return /* @__PURE__ */ jsx("div", { className: headingClassName, children: heading });
|
|
691
695
|
}, [heading, headingClassName]);
|
|
692
|
-
const descriptionContent =
|
|
696
|
+
const descriptionContent = React4.useMemo(() => {
|
|
693
697
|
if (!description) return null;
|
|
694
698
|
if (typeof description === "string") {
|
|
695
699
|
return /* @__PURE__ */ jsx("p", { className: cn("mt-4 text-muted-foreground md:text-lg", descriptionClassName), children: description });
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
|
-
var
|
|
4
|
+
var React4 = require('react');
|
|
5
5
|
var clsx = require('clsx');
|
|
6
6
|
var tailwindMerge = require('tailwind-merge');
|
|
7
7
|
var icon = require('@page-speed/icon');
|
|
@@ -27,7 +27,7 @@ function _interopNamespace(e) {
|
|
|
27
27
|
return Object.freeze(n);
|
|
28
28
|
}
|
|
29
29
|
|
|
30
|
-
var
|
|
30
|
+
var React4__namespace = /*#__PURE__*/_interopNamespace(React4);
|
|
31
31
|
var SeparatorPrimitive__namespace = /*#__PURE__*/_interopNamespace(SeparatorPrimitive);
|
|
32
32
|
|
|
33
33
|
// components/blocks/comparison/comparison-feature-cards.tsx
|
|
@@ -35,9 +35,13 @@ function cn(...inputs) {
|
|
|
35
35
|
return tailwindMerge.twMerge(clsx.clsx(inputs));
|
|
36
36
|
}
|
|
37
37
|
var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
|
|
38
|
-
|
|
38
|
+
var DynamicIcon = React4__namespace.memo(function DynamicIcon2({
|
|
39
|
+
apiKey,
|
|
40
|
+
...props
|
|
41
|
+
}) {
|
|
39
42
|
return /* @__PURE__ */ jsxRuntime.jsx(icon.Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
|
|
40
|
-
}
|
|
43
|
+
});
|
|
44
|
+
DynamicIcon.displayName = "DynamicIcon";
|
|
41
45
|
function Separator({
|
|
42
46
|
className,
|
|
43
47
|
orientation = "horizontal",
|
|
@@ -67,7 +71,7 @@ var maxWidthStyles = {
|
|
|
67
71
|
"4xl": "max-w-[1536px]",
|
|
68
72
|
full: "max-w-full"
|
|
69
73
|
};
|
|
70
|
-
var Container =
|
|
74
|
+
var Container = React4__namespace.default.forwardRef(
|
|
71
75
|
({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
|
|
72
76
|
const Component = as;
|
|
73
77
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -373,7 +377,7 @@ var spacingStyles = {
|
|
|
373
377
|
};
|
|
374
378
|
var predefinedSpacings = ["none", "sm", "md", "lg", "xl", "hero"];
|
|
375
379
|
var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
|
|
376
|
-
var Section =
|
|
380
|
+
var Section = React4__namespace.default.forwardRef(
|
|
377
381
|
({
|
|
378
382
|
id,
|
|
379
383
|
title,
|
|
@@ -458,7 +462,7 @@ function ComparisonFeatureCards({
|
|
|
458
462
|
patternOpacity,
|
|
459
463
|
optixFlowConfig
|
|
460
464
|
}) {
|
|
461
|
-
const renderCard =
|
|
465
|
+
const renderCard = React4__namespace.useCallback(
|
|
462
466
|
(product, isHighlighted) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
463
467
|
"div",
|
|
464
468
|
{
|
|
@@ -514,7 +518,7 @@ function ComparisonFeatureCards({
|
|
|
514
518
|
),
|
|
515
519
|
[cardClassName, optixFlowConfig]
|
|
516
520
|
);
|
|
517
|
-
const cardsContent =
|
|
521
|
+
const cardsContent = React4__namespace.useMemo(() => {
|
|
518
522
|
if (cardsSlot) return cardsSlot;
|
|
519
523
|
if (!productA || !productB) return null;
|
|
520
524
|
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
@@ -522,28 +526,28 @@ function ComparisonFeatureCards({
|
|
|
522
526
|
renderCard(productB, productB.highlighted ?? false)
|
|
523
527
|
] });
|
|
524
528
|
}, [cardsSlot, productA, productB, renderCard]);
|
|
525
|
-
const headingContent =
|
|
529
|
+
const headingContent = React4__namespace.useMemo(() => {
|
|
526
530
|
if (!heading) return null;
|
|
527
531
|
if (typeof heading === "string") {
|
|
528
532
|
return /* @__PURE__ */ jsxRuntime.jsx("h1", { className: cn("mb-6 text-4xl font-semibold md:text-7xl", headingClassName), children: heading });
|
|
529
533
|
}
|
|
530
534
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: headingClassName, children: heading });
|
|
531
535
|
}, [heading, headingClassName]);
|
|
532
|
-
const descriptionContent =
|
|
536
|
+
const descriptionContent = React4__namespace.useMemo(() => {
|
|
533
537
|
if (!description) return null;
|
|
534
538
|
if (typeof description === "string") {
|
|
535
539
|
return /* @__PURE__ */ jsxRuntime.jsx("p", { className: cn("mx-auto max-w-4xl text-muted-foreground md:text-xl", descriptionClassName), children: description });
|
|
536
540
|
}
|
|
537
541
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: descriptionClassName, children: description });
|
|
538
542
|
}, [description, descriptionClassName]);
|
|
539
|
-
const suitabilityContent =
|
|
543
|
+
const suitabilityContent = React4__namespace.useMemo(() => {
|
|
540
544
|
if (!suitabilityTitle && !suitabilityDescription) return null;
|
|
541
545
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: suitabilityClassName, children: [
|
|
542
546
|
suitabilityTitle && (typeof suitabilityTitle === "string" ? /* @__PURE__ */ jsxRuntime.jsx("h2", { className: "mb-4 text-3xl font-semibold", children: suitabilityTitle }) : suitabilityTitle),
|
|
543
547
|
suitabilityDescription && (typeof suitabilityDescription === "string" ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "leading-6 text-muted-foreground md:text-lg", children: suitabilityDescription }) : suitabilityDescription)
|
|
544
548
|
] });
|
|
545
549
|
}, [suitabilityTitle, suitabilityDescription, suitabilityClassName]);
|
|
546
|
-
const differencesContent =
|
|
550
|
+
const differencesContent = React4__namespace.useMemo(() => {
|
|
547
551
|
if (!differencesTitle && !differencesDescription) return null;
|
|
548
552
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("mt-16", differencesClassName), children: [
|
|
549
553
|
differencesTitle && (typeof differencesTitle === "string" ? /* @__PURE__ */ jsxRuntime.jsx("h2", { className: "mb-4 text-3xl font-semibold", children: differencesTitle }) : differencesTitle),
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import * as
|
|
3
|
-
import
|
|
2
|
+
import * as React4 from 'react';
|
|
3
|
+
import React4__default from 'react';
|
|
4
4
|
import { clsx } from 'clsx';
|
|
5
5
|
import { twMerge } from 'tailwind-merge';
|
|
6
6
|
import { Icon } from '@page-speed/icon';
|
|
@@ -13,9 +13,13 @@ function cn(...inputs) {
|
|
|
13
13
|
return twMerge(clsx(inputs));
|
|
14
14
|
}
|
|
15
15
|
var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
|
|
16
|
-
|
|
16
|
+
var DynamicIcon = React4.memo(function DynamicIcon2({
|
|
17
|
+
apiKey,
|
|
18
|
+
...props
|
|
19
|
+
}) {
|
|
17
20
|
return /* @__PURE__ */ jsx(Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
|
|
18
|
-
}
|
|
21
|
+
});
|
|
22
|
+
DynamicIcon.displayName = "DynamicIcon";
|
|
19
23
|
function Separator({
|
|
20
24
|
className,
|
|
21
25
|
orientation = "horizontal",
|
|
@@ -45,7 +49,7 @@ var maxWidthStyles = {
|
|
|
45
49
|
"4xl": "max-w-[1536px]",
|
|
46
50
|
full: "max-w-full"
|
|
47
51
|
};
|
|
48
|
-
var Container =
|
|
52
|
+
var Container = React4__default.forwardRef(
|
|
49
53
|
({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
|
|
50
54
|
const Component = as;
|
|
51
55
|
return /* @__PURE__ */ jsx(
|
|
@@ -351,7 +355,7 @@ var spacingStyles = {
|
|
|
351
355
|
};
|
|
352
356
|
var predefinedSpacings = ["none", "sm", "md", "lg", "xl", "hero"];
|
|
353
357
|
var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
|
|
354
|
-
var Section =
|
|
358
|
+
var Section = React4__default.forwardRef(
|
|
355
359
|
({
|
|
356
360
|
id,
|
|
357
361
|
title,
|
|
@@ -436,7 +440,7 @@ function ComparisonFeatureCards({
|
|
|
436
440
|
patternOpacity,
|
|
437
441
|
optixFlowConfig
|
|
438
442
|
}) {
|
|
439
|
-
const renderCard =
|
|
443
|
+
const renderCard = React4.useCallback(
|
|
440
444
|
(product, isHighlighted) => /* @__PURE__ */ jsxs(
|
|
441
445
|
"div",
|
|
442
446
|
{
|
|
@@ -492,7 +496,7 @@ function ComparisonFeatureCards({
|
|
|
492
496
|
),
|
|
493
497
|
[cardClassName, optixFlowConfig]
|
|
494
498
|
);
|
|
495
|
-
const cardsContent =
|
|
499
|
+
const cardsContent = React4.useMemo(() => {
|
|
496
500
|
if (cardsSlot) return cardsSlot;
|
|
497
501
|
if (!productA || !productB) return null;
|
|
498
502
|
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
@@ -500,28 +504,28 @@ function ComparisonFeatureCards({
|
|
|
500
504
|
renderCard(productB, productB.highlighted ?? false)
|
|
501
505
|
] });
|
|
502
506
|
}, [cardsSlot, productA, productB, renderCard]);
|
|
503
|
-
const headingContent =
|
|
507
|
+
const headingContent = React4.useMemo(() => {
|
|
504
508
|
if (!heading) return null;
|
|
505
509
|
if (typeof heading === "string") {
|
|
506
510
|
return /* @__PURE__ */ jsx("h1", { className: cn("mb-6 text-4xl font-semibold md:text-7xl", headingClassName), children: heading });
|
|
507
511
|
}
|
|
508
512
|
return /* @__PURE__ */ jsx("div", { className: headingClassName, children: heading });
|
|
509
513
|
}, [heading, headingClassName]);
|
|
510
|
-
const descriptionContent =
|
|
514
|
+
const descriptionContent = React4.useMemo(() => {
|
|
511
515
|
if (!description) return null;
|
|
512
516
|
if (typeof description === "string") {
|
|
513
517
|
return /* @__PURE__ */ jsx("p", { className: cn("mx-auto max-w-4xl text-muted-foreground md:text-xl", descriptionClassName), children: description });
|
|
514
518
|
}
|
|
515
519
|
return /* @__PURE__ */ jsx("div", { className: descriptionClassName, children: description });
|
|
516
520
|
}, [description, descriptionClassName]);
|
|
517
|
-
const suitabilityContent =
|
|
521
|
+
const suitabilityContent = React4.useMemo(() => {
|
|
518
522
|
if (!suitabilityTitle && !suitabilityDescription) return null;
|
|
519
523
|
return /* @__PURE__ */ jsxs("div", { className: suitabilityClassName, children: [
|
|
520
524
|
suitabilityTitle && (typeof suitabilityTitle === "string" ? /* @__PURE__ */ jsx("h2", { className: "mb-4 text-3xl font-semibold", children: suitabilityTitle }) : suitabilityTitle),
|
|
521
525
|
suitabilityDescription && (typeof suitabilityDescription === "string" ? /* @__PURE__ */ jsx("p", { className: "leading-6 text-muted-foreground md:text-lg", children: suitabilityDescription }) : suitabilityDescription)
|
|
522
526
|
] });
|
|
523
527
|
}, [suitabilityTitle, suitabilityDescription, suitabilityClassName]);
|
|
524
|
-
const differencesContent =
|
|
528
|
+
const differencesContent = React4.useMemo(() => {
|
|
525
529
|
if (!differencesTitle && !differencesDescription) return null;
|
|
526
530
|
return /* @__PURE__ */ jsxs("div", { className: cn("mt-16", differencesClassName), children: [
|
|
527
531
|
differencesTitle && (typeof differencesTitle === "string" ? /* @__PURE__ */ jsx("h2", { className: "mb-4 text-3xl font-semibold", children: differencesTitle }) : differencesTitle),
|