@opensite/ui 0.8.5 → 0.8.7
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-developer-profile.cjs +1 -1
- package/dist/about-developer-profile.js +1 -1
- package/dist/about-interactive-tabs.cjs +1 -1
- package/dist/about-interactive-tabs.js +1 -1
- package/dist/about-location-info-hero.cjs +5 -5
- package/dist/about-location-info-hero.js +5 -5
- package/dist/about-mission-features.cjs +3 -3
- package/dist/about-mission-features.js +3 -3
- package/dist/about-mission-principles.cjs +1 -1
- package/dist/about-mission-principles.js +1 -1
- package/dist/about-network-spotlight.cjs +6 -6
- package/dist/about-network-spotlight.js +6 -6
- package/dist/about-split-hero.cjs +4 -4
- package/dist/about-split-hero.js +4 -4
- package/dist/about-startup-team.cjs +3 -3
- package/dist/about-startup-team.js +3 -3
- package/dist/about-story-expertise.cjs +4 -4
- package/dist/about-story-expertise.js +4 -4
- package/dist/article-breadcrumb-social.cjs +1 -1
- package/dist/article-breadcrumb-social.js +1 -1
- package/dist/article-chapters-author.cjs +1 -1
- package/dist/article-chapters-author.js +1 -1
- package/dist/article-compact-toc.cjs +1 -1
- package/dist/article-compact-toc.js +1 -1
- package/dist/article-split-animated.cjs +1 -1
- package/dist/article-split-animated.js +1 -1
- package/dist/article-toc-sidebar.cjs +1 -1
- package/dist/article-toc-sidebar.js +1 -1
- package/dist/banner-countdown-sale.cjs +1 -1
- package/dist/banner-countdown-sale.js +1 -1
- package/dist/banner-social-follow.cjs +1 -1
- package/dist/banner-social-follow.js +1 -1
- package/dist/blog-cards-tagline-cta.cjs +1 -1
- package/dist/blog-cards-tagline-cta.js +1 -1
- package/dist/blog-horizontal-timeline.cjs +2 -2
- package/dist/blog-horizontal-timeline.js +2 -2
- package/dist/blog-tech-insights.cjs +6 -6
- package/dist/blog-tech-insights.js +6 -6
- package/dist/carousel-animated-sections.cjs +7 -8
- package/dist/carousel-animated-sections.js +7 -8
- package/dist/carousel-auto-progress-slides.cjs +7 -7
- package/dist/carousel-auto-progress-slides.js +7 -7
- package/dist/carousel-autoplay-progress.cjs +3 -3
- package/dist/carousel-autoplay-progress.js +3 -3
- package/dist/carousel-fullscreen-scroll-fx.cjs +7 -7
- package/dist/carousel-fullscreen-scroll-fx.js +7 -7
- package/dist/carousel-horizontal-cards.cjs +1 -1
- package/dist/carousel-horizontal-cards.js +1 -1
- package/dist/carousel-icon-sidebar.cjs +3 -3
- package/dist/carousel-icon-sidebar.js +3 -3
- package/dist/carousel-image-hero.cjs +2 -2
- package/dist/carousel-image-hero.js +2 -2
- package/dist/carousel-multi-step-showcase.cjs +1 -1
- package/dist/carousel-multi-step-showcase.js +1 -1
- package/dist/carousel-portfolio-hero.cjs +5 -5
- package/dist/carousel-portfolio-hero.js +5 -5
- package/dist/carousel-progress-slider.cjs +1 -1
- package/dist/carousel-progress-slider.js +1 -1
- package/dist/case-studies-image-grid.cjs +2 -2
- package/dist/case-studies-image-grid.js +2 -2
- package/dist/case-studies-stats-card.cjs +1 -1
- package/dist/case-studies-stats-card.js +1 -1
- package/dist/case-study-prose-sidebar.cjs +1 -1
- package/dist/case-study-prose-sidebar.js +1 -1
- package/dist/case-study-toc-social-sidebar.cjs +1 -1
- package/dist/case-study-toc-social-sidebar.js +1 -1
- package/dist/comparison-ai-models.cjs +15 -15
- package/dist/comparison-ai-models.js +15 -15
- package/dist/comparison-feature-cards.cjs +1 -1
- package/dist/comparison-feature-cards.js +1 -1
- package/dist/comparison-feature-grid.cjs +1 -1
- package/dist/comparison-feature-grid.js +1 -1
- package/dist/comparison-metrics-rows.cjs +6 -6
- package/dist/comparison-metrics-rows.js +6 -6
- package/dist/comparison-table-tabs.cjs +5 -5
- package/dist/comparison-table-tabs.js +5 -5
- package/dist/comparison-table-tooltips.cjs +1 -1
- package/dist/comparison-table-tooltips.js +1 -1
- package/dist/comparison-table-two-column.cjs +2 -2
- package/dist/comparison-table-two-column.js +2 -2
- package/dist/components.cjs +22 -23
- package/dist/components.js +22 -23
- package/dist/contact-emergency.cjs +1 -1
- package/dist/contact-emergency.js +1 -1
- package/dist/contact-help-center.cjs +3 -3
- package/dist/contact-help-center.js +3 -3
- package/dist/cta-background-icon-badge.cjs +1 -1
- package/dist/cta-background-icon-badge.js +1 -1
- package/dist/cta-enterprise-dark-features.cjs +5 -5
- package/dist/cta-enterprise-dark-features.js +5 -5
- package/dist/cta-fullwidth-background.cjs +1 -1
- package/dist/cta-fullwidth-background.js +1 -1
- package/dist/cta-hero-feature-cards.cjs +3 -3
- package/dist/cta-hero-feature-cards.js +3 -3
- package/dist/cta-image-overlay-arrow.cjs +1 -1
- package/dist/cta-image-overlay-arrow.js +1 -1
- package/dist/cta-image-overlay-centered.cjs +2 -2
- package/dist/cta-image-overlay-centered.js +2 -2
- package/dist/cta-split-gradient-image.cjs +1 -1
- package/dist/cta-split-gradient-image.js +1 -1
- package/dist/cta-video-background-hero.cjs +3 -3
- package/dist/cta-video-background-hero.js +3 -3
- package/dist/cta-workflow-tabs.cjs +1 -1
- package/dist/cta-workflow-tabs.js +1 -1
- package/dist/faq-badge-support.cjs +26 -8
- package/dist/faq-badge-support.js +26 -8
- package/dist/faq-bordered-badge.cjs +26 -10
- package/dist/faq-bordered-badge.js +26 -10
- package/dist/faq-card-categories.cjs +21 -5
- package/dist/faq-card-categories.js +21 -5
- package/dist/faq-categorized-sections.cjs +20 -5
- package/dist/faq-categorized-sections.js +20 -5
- package/dist/faq-centered-accordion.cjs +19 -6
- package/dist/faq-centered-accordion.js +19 -6
- package/dist/faq-gradient-categories.cjs +20 -5
- package/dist/faq-gradient-categories.js +20 -5
- package/dist/faq-icon-benefits.cjs +11 -2
- package/dist/faq-icon-benefits.js +11 -2
- package/dist/faq-muted-cards.cjs +20 -7
- package/dist/faq-muted-cards.js +20 -7
- package/dist/faq-numbered-grid.cjs +11 -3
- package/dist/faq-numbered-grid.js +11 -3
- package/dist/faq-numbered-list.cjs +11 -3
- package/dist/faq-numbered-list.js +11 -3
- package/dist/faq-profile-sidebar.cjs +60 -23
- package/dist/faq-profile-sidebar.js +60 -23
- package/dist/faq-rounded-cards.cjs +24 -29
- package/dist/faq-rounded-cards.js +24 -29
- package/dist/faq-sidebar-navigation.cjs +49 -29
- package/dist/faq-sidebar-navigation.js +49 -29
- package/dist/faq-simple-accordion.cjs +18 -5
- package/dist/faq-simple-accordion.js +18 -5
- package/dist/faq-split-help.cjs +36 -21
- package/dist/faq-split-help.js +36 -21
- package/dist/faq-split-hero.cjs +86 -186
- package/dist/faq-split-hero.d.cts +16 -18
- package/dist/faq-split-hero.d.ts +16 -18
- package/dist/faq-split-hero.js +87 -187
- package/dist/faq-static-list.cjs +10 -3
- package/dist/faq-static-list.js +10 -3
- package/dist/feature-accordion-image.cjs +9 -3
- package/dist/feature-accordion-image.js +9 -3
- package/dist/feature-bento-utilities.cjs +1 -1
- package/dist/feature-bento-utilities.js +1 -1
- package/dist/feature-capabilities-grid.cjs +13 -13
- package/dist/feature-capabilities-grid.js +13 -13
- package/dist/feature-icon-grid-muted.cjs +2 -2
- package/dist/feature-icon-grid-muted.js +2 -2
- package/dist/feature-icon-tabs-content.cjs +3 -3
- package/dist/feature-icon-tabs-content.js +3 -3
- package/dist/feature-image-cards-three-column.cjs +2 -2
- package/dist/feature-image-cards-three-column.js +2 -2
- package/dist/feature-image-overlay-badge.cjs +2 -2
- package/dist/feature-image-overlay-badge.js +2 -2
- package/dist/feature-integration-cards.cjs +2 -2
- package/dist/feature-integration-cards.js +2 -2
- package/dist/feature-numbered-cards.cjs +1 -1
- package/dist/feature-numbered-cards.js +1 -1
- package/dist/feature-pattern-grid-links.cjs +1 -1
- package/dist/feature-pattern-grid-links.js +1 -1
- package/dist/feature-showcase.cjs +1 -2
- package/dist/feature-showcase.js +1 -2
- package/dist/feature-split-image-reverse.cjs +2 -8
- package/dist/feature-split-image-reverse.js +2 -8
- package/dist/feature-split-image.cjs +2 -2
- package/dist/feature-split-image.js +2 -2
- package/dist/feature-stats-highlight.cjs +50 -13
- package/dist/feature-stats-highlight.js +50 -13
- package/dist/feature-tabbed-content-image.cjs +5 -14
- package/dist/feature-tabbed-content-image.js +5 -14
- package/dist/feature-three-column-values.cjs +4 -44
- package/dist/feature-three-column-values.js +4 -44
- package/dist/feature-utility-cards-grid.cjs +83 -36
- package/dist/feature-utility-cards-grid.js +83 -36
- package/dist/footer-animated-social.cjs +3 -3
- package/dist/footer-animated-social.js +3 -3
- package/dist/footer-brand-links-contact.cjs +10 -10
- package/dist/footer-brand-links-contact.js +10 -10
- package/dist/footer-comprehensive-links.cjs +20 -20
- package/dist/footer-comprehensive-links.js +20 -20
- package/dist/footer-cta-banner.cjs +4 -4
- package/dist/footer-cta-banner.js +4 -4
- package/dist/footer-cta-social.cjs +2 -2
- package/dist/footer-cta-social.js +2 -2
- package/dist/footer-newsletter-minimal.cjs +5 -5
- package/dist/footer-newsletter-minimal.js +5 -5
- package/dist/footer-simple-centered.cjs +2 -2
- package/dist/footer-simple-centered.js +2 -2
- package/dist/hero-ad-campaign-expert.cjs +2 -2
- package/dist/hero-ad-campaign-expert.js +2 -2
- package/dist/hero-agency-animated-images.cjs +2 -2
- package/dist/hero-agency-animated-images.js +2 -2
- package/dist/hero-architecture-fullscreen.cjs +2 -2
- package/dist/hero-architecture-fullscreen.js +2 -2
- package/dist/hero-billing-platform-logos.cjs +4 -4
- package/dist/hero-billing-platform-logos.js +4 -4
- package/dist/hero-business-operations-mosaic.cjs +2 -2
- package/dist/hero-business-operations-mosaic.js +2 -2
- package/dist/hero-centered-gradient-cta.cjs +1 -1
- package/dist/hero-centered-gradient-cta.js +1 -1
- package/dist/hero-coming-soon-countdown.cjs +3 -3
- package/dist/hero-coming-soon-countdown.js +3 -3
- package/dist/hero-conversation-intelligence.cjs +1 -1
- package/dist/hero-conversation-intelligence.js +1 -1
- package/dist/hero-conversion-video-play.cjs +1 -1
- package/dist/hero-conversion-video-play.js +1 -1
- package/dist/hero-crm-streamlined.cjs +2 -2
- package/dist/hero-crm-streamlined.js +2 -2
- package/dist/hero-customer-support-layered.cjs +1 -1
- package/dist/hero-customer-support-layered.js +1 -1
- package/dist/hero-design-carousel-portfolio.cjs +3 -3
- package/dist/hero-design-carousel-portfolio.js +3 -3
- package/dist/hero-design-showcase-logos.cjs +1 -1
- package/dist/hero-design-showcase-logos.js +1 -1
- package/dist/hero-developer-tools-code.cjs +1 -1
- package/dist/hero-developer-tools-code.js +1 -1
- package/dist/hero-digital-agency-fullscreen.cjs +3 -3
- package/dist/hero-digital-agency-fullscreen.js +3 -3
- package/dist/hero-ecommerce-product-showcase.cjs +2 -2
- package/dist/hero-ecommerce-product-showcase.js +2 -2
- package/dist/hero-enterprise-security.cjs +2 -2
- package/dist/hero-enterprise-security.js +2 -2
- package/dist/hero-event-registration.cjs +3 -3
- package/dist/hero-event-registration.js +3 -3
- package/dist/hero-feature-cards-grid.cjs +2 -2
- package/dist/hero-feature-cards-grid.js +2 -2
- package/dist/hero-floating-images.cjs +6 -8
- package/dist/hero-floating-images.js +6 -8
- package/dist/hero-fullscreen-background-image.cjs +3 -3
- package/dist/hero-fullscreen-background-image.js +3 -3
- package/dist/hero-fullscreen-logo-cta.cjs +2 -2
- package/dist/hero-fullscreen-logo-cta.js +2 -2
- package/dist/hero-gradient-client-focused.cjs +1 -1
- package/dist/hero-gradient-client-focused.js +1 -1
- package/dist/hero-hiring-animated-text.cjs +2 -2
- package/dist/hero-hiring-animated-text.js +2 -2
- package/dist/hero-image-slider.cjs +1 -2
- package/dist/hero-image-slider.js +1 -2
- package/dist/hero-innovation-image-grid.cjs +3 -3
- package/dist/hero-innovation-image-grid.js +3 -3
- package/dist/hero-mental-health-team.cjs +4 -4
- package/dist/hero-mental-health-team.js +4 -4
- package/dist/hero-minimal-centered-dark.cjs +1 -1
- package/dist/hero-minimal-centered-dark.js +1 -1
- package/dist/hero-mobile-app-download.cjs +2 -2
- package/dist/hero-mobile-app-download.js +2 -2
- package/dist/hero-newsletter-minimal.cjs +1 -1
- package/dist/hero-newsletter-minimal.js +1 -1
- package/dist/hero-overlay-cta-grid.cjs +5 -5
- package/dist/hero-overlay-cta-grid.js +5 -5
- package/dist/hero-portfolio-creative.cjs +3 -3
- package/dist/hero-portfolio-creative.js +3 -3
- package/dist/hero-premium-split-avatars.cjs +4 -4
- package/dist/hero-premium-split-avatars.js +4 -4
- package/dist/hero-presentation-platform-video.cjs +4 -4
- package/dist/hero-presentation-platform-video.js +4 -4
- package/dist/hero-pricing-comparison.cjs +3 -3
- package/dist/hero-pricing-comparison.js +3 -3
- package/dist/hero-product-showcase-floating.cjs +3 -3
- package/dist/hero-product-showcase-floating.js +3 -3
- package/dist/hero-productivity-launcher-video.cjs +2 -2
- package/dist/hero-productivity-launcher-video.js +2 -2
- package/dist/hero-saas-dashboard-preview.cjs +1 -1
- package/dist/hero-saas-dashboard-preview.js +1 -1
- package/dist/hero-shared-inbox-layered.cjs +1 -1
- package/dist/hero-shared-inbox-layered.js +1 -1
- package/dist/hero-software-growth-video-dialog.cjs +2 -2
- package/dist/hero-software-growth-video-dialog.js +2 -2
- package/dist/hero-split-geometric-shapes.cjs +177 -23
- package/dist/hero-split-geometric-shapes.d.cts +38 -5
- package/dist/hero-split-geometric-shapes.d.ts +38 -5
- package/dist/hero-split-geometric-shapes.js +178 -24
- package/dist/hero-split-icon-cards.cjs +2 -2
- package/dist/hero-split-icon-cards.js +2 -2
- package/dist/hero-split-image-newsletter.cjs +1 -1
- package/dist/hero-split-image-newsletter.js +1 -1
- package/dist/hero-startup-launch-cta.cjs +2 -2
- package/dist/hero-startup-launch-cta.js +2 -2
- package/dist/hero-stats-social-proof.cjs +3 -3
- package/dist/hero-stats-social-proof.js +3 -3
- package/dist/hero-task-timer-animated.cjs +2 -2
- package/dist/hero-task-timer-animated.js +2 -2
- package/dist/hero-testimonial-image-grid.cjs +1 -1
- package/dist/hero-testimonial-image-grid.js +1 -1
- package/dist/hero-therapy-testimonial-grid.cjs +3 -3
- package/dist/hero-therapy-testimonial-grid.js +3 -3
- package/dist/hero-ui-library-showcase.cjs +1 -1
- package/dist/hero-ui-library-showcase.js +1 -1
- package/dist/hero-video-background-dark.cjs +1 -1
- package/dist/hero-video-background-dark.js +1 -1
- package/dist/hero-video-dialog-gradient.cjs +1 -1
- package/dist/hero-video-dialog-gradient.js +1 -1
- package/dist/hero-welcome-asymmetric-images.cjs +38 -2
- package/dist/hero-welcome-asymmetric-images.js +38 -2
- package/dist/image-slider.cjs +1 -2
- package/dist/image-slider.d.cts +0 -4
- package/dist/image-slider.d.ts +0 -4
- package/dist/image-slider.js +1 -2
- package/dist/index.cjs +22 -23
- package/dist/index.js +22 -23
- package/dist/industries-badge-list-bordered.cjs +12 -6
- package/dist/industries-badge-list-bordered.js +12 -6
- package/dist/industries-expandable-showcase.cjs +15 -7
- package/dist/industries-expandable-showcase.js +15 -7
- package/dist/industries-hover-reveal-grid.cjs +13 -6
- package/dist/industries-hover-reveal-grid.js +13 -6
- package/dist/industries-timeline-table.cjs +11 -5
- package/dist/industries-timeline-table.js +11 -5
- package/dist/interior-carousel.cjs +2 -2
- package/dist/interior-carousel.js +2 -2
- package/dist/link-page-bento-layout.cjs +11 -14
- package/dist/link-page-bento-layout.js +11 -14
- package/dist/link-page-grid-cards.cjs +8 -12
- package/dist/link-page-grid-cards.js +8 -12
- package/dist/link-page-minimal-profile.cjs +6 -8
- package/dist/link-page-minimal-profile.js +6 -8
- package/dist/link-page-newsletter-social.cjs +10 -14
- package/dist/link-page-newsletter-social.js +10 -14
- package/dist/link-tree-block.cjs +10 -13
- package/dist/link-tree-block.js +10 -13
- package/dist/list-searchable-grid.cjs +3 -3
- package/dist/list-searchable-grid.js +3 -3
- package/dist/navbar-animated-preview.cjs +13 -7
- package/dist/navbar-animated-preview.js +13 -7
- package/dist/navbar-centered-menu.cjs +9 -3
- package/dist/navbar-centered-menu.js +9 -3
- package/dist/navbar-dark-icons.cjs +14 -8
- package/dist/navbar-dark-icons.js +14 -8
- package/dist/navbar-dropdown-menu.cjs +11 -5
- package/dist/navbar-dropdown-menu.js +11 -5
- package/dist/navbar-education-platform.cjs +9 -3
- package/dist/navbar-education-platform.js +9 -3
- package/dist/navbar-enterprise-mega.cjs +20 -14
- package/dist/navbar-enterprise-mega.js +20 -14
- package/dist/navbar-feature-grid.cjs +11 -5
- package/dist/navbar-feature-grid.js +11 -5
- package/dist/navbar-image-preview.cjs +4 -4
- package/dist/navbar-image-preview.js +4 -4
- package/dist/navbar-mega-menu.cjs +3 -3
- package/dist/navbar-mega-menu.js +3 -3
- package/dist/navbar-multi-column-groups.cjs +9 -3
- package/dist/navbar-multi-column-groups.js +9 -3
- package/dist/navbar-platform-resources.cjs +10 -4
- package/dist/navbar-platform-resources.js +10 -4
- package/dist/navbar-sidebar-mobile.cjs +9 -3
- package/dist/navbar-sidebar-mobile.js +9 -3
- package/dist/navbar-transparent-overlay.cjs +3 -3
- package/dist/navbar-transparent-overlay.js +3 -3
- package/dist/process-expandable-timeline.cjs +3 -3
- package/dist/process-expandable-timeline.js +3 -3
- package/dist/process-hover-cards.cjs +2 -2
- package/dist/process-hover-cards.js +2 -2
- package/dist/process-icon-timeline.cjs +3 -3
- package/dist/process-icon-timeline.js +3 -3
- package/dist/process-mission-principles.cjs +2 -2
- package/dist/process-mission-principles.js +2 -2
- package/dist/process-numbered-services.cjs +2 -2
- package/dist/process-numbered-services.js +2 -2
- package/dist/process-roadmap-timeline.cjs +6 -6
- package/dist/process-roadmap-timeline.js +6 -6
- package/dist/process-scroll-image.cjs +2 -2
- package/dist/process-scroll-image.js +2 -2
- package/dist/process-steps-grid.cjs +2 -2
- package/dist/process-steps-grid.js +2 -2
- package/dist/process-sticky-steps.cjs +2 -2
- package/dist/process-sticky-steps.js +2 -2
- package/dist/project-alternating-motion.cjs +1 -1
- package/dist/project-alternating-motion.js +1 -1
- package/dist/project-background-reveal.cjs +2 -2
- package/dist/project-background-reveal.js +2 -2
- package/dist/project-card-overlay.cjs +7 -7
- package/dist/project-card-overlay.js +7 -7
- package/dist/project-carousel-cinematic.cjs +2 -2
- package/dist/project-carousel-cinematic.js +2 -2
- package/dist/project-carousel-detail-cards.cjs +2 -2
- package/dist/project-carousel-detail-cards.js +2 -2
- package/dist/project-carousel-minimal.cjs +2 -2
- package/dist/project-carousel-minimal.js +2 -2
- package/dist/project-detail-architecture-carousel.cjs +4 -4
- package/dist/project-detail-architecture-carousel.js +4 -4
- package/dist/project-featured-carousel.cjs +1 -1
- package/dist/project-featured-carousel.js +1 -1
- package/dist/project-filterable-gallery.cjs +5 -5
- package/dist/project-filterable-gallery.js +5 -5
- package/dist/project-filterable-three-column.cjs +5 -5
- package/dist/project-filterable-three-column.js +5 -5
- package/dist/project-interactive-hover-reveal.cjs +7 -7
- package/dist/project-interactive-hover-reveal.js +7 -7
- package/dist/project-masonry-columns.cjs +1 -1
- package/dist/project-masonry-columns.js +1 -1
- package/dist/project-scroll-reveal.cjs +4 -4
- package/dist/project-scroll-reveal.js +4 -4
- package/dist/project-showcase-alternating.cjs +1 -1
- package/dist/project-showcase-alternating.js +1 -1
- package/dist/project-sticky-scroll.cjs +3 -3
- package/dist/project-sticky-scroll.js +3 -3
- package/dist/project-studio-hover-preview.cjs +7 -7
- package/dist/project-studio-hover-preview.js +7 -7
- package/dist/project-video-carousel.cjs +2 -2
- package/dist/project-video-carousel.js +2 -2
- package/dist/project-video-hover-bento.cjs +2 -2
- package/dist/project-video-hover-bento.js +2 -2
- package/dist/project-video-hover-grid.cjs +2 -2
- package/dist/project-video-hover-grid.js +2 -2
- package/dist/project-video-hover-rounded.cjs +3 -3
- package/dist/project-video-hover-rounded.js +3 -3
- package/dist/project-video-hover-stack.cjs +3 -3
- package/dist/project-video-hover-stack.js +3 -3
- package/dist/project-video-hover-two-by-two.cjs +3 -3
- package/dist/project-video-hover-two-by-two.js +3 -3
- package/dist/project-zigzag-layout.cjs +1 -1
- package/dist/project-zigzag-layout.js +1 -1
- package/dist/registry.cjs +1825 -2131
- package/dist/registry.js +1825 -2131
- package/dist/resource-detail-whitepaper-sidebar.cjs +6 -4
- package/dist/resource-detail-whitepaper-sidebar.js +6 -4
- package/dist/resource-list-course-cards.cjs +1 -1
- package/dist/resource-list-course-cards.js +1 -1
- package/dist/resource-list-featured-articles.cjs +6 -6
- package/dist/resource-list-featured-articles.js +6 -6
- package/dist/resource-list-hero-filter.cjs +2 -2
- package/dist/resource-list-hero-filter.js +2 -2
- package/dist/resource-list-news-updates.cjs +1 -1
- package/dist/resource-list-news-updates.js +1 -1
- package/dist/reviews-images-helpful.cjs +27 -197
- package/dist/reviews-images-helpful.js +28 -198
- package/dist/reviews-list-verified.cjs +11 -62
- package/dist/reviews-list-verified.js +12 -63
- package/dist/service-detail-image-hero.cjs +2 -2
- package/dist/service-detail-image-hero.js +2 -2
- package/dist/service-detail-stats-hero.cjs +2 -2
- package/dist/service-detail-stats-hero.js +2 -2
- package/dist/service-hover-carousel.cjs +2 -2
- package/dist/service-hover-carousel.js +2 -2
- package/dist/services-list-feature-spotlight.cjs +3 -3
- package/dist/services-list-feature-spotlight.js +3 -3
- package/dist/stats-circular-progress.cjs +1 -1
- package/dist/stats-circular-progress.js +1 -1
- package/dist/stats-icon-cards.cjs +1 -1
- package/dist/stats-icon-cards.js +1 -1
- package/dist/stats-timeline-tabs.cjs +1 -1
- package/dist/stats-timeline-tabs.js +1 -1
- package/dist/team-media-showcase.cjs +4 -4
- package/dist/team-media-showcase.js +4 -4
- package/dist/testimonial-carousel-cards.cjs +2 -2
- package/dist/testimonial-carousel-cards.js +2 -2
- package/dist/testimonials-animated-split.cjs +19 -166
- package/dist/testimonials-animated-split.js +19 -166
- package/dist/testimonials-bento-grid.cjs +11 -56
- package/dist/testimonials-bento-grid.js +12 -57
- package/dist/testimonials-carousel-image.cjs +15 -153
- package/dist/testimonials-carousel-image.js +15 -153
- package/dist/testimonials-centered-avatars.cjs +9 -37
- package/dist/testimonials-centered-avatars.js +10 -38
- package/dist/testimonials-company-logo.cjs +4 -8
- package/dist/testimonials-company-logo.js +4 -8
- package/dist/testimonials-grid-add-review.cjs +7 -47
- package/dist/testimonials-grid-add-review.js +8 -48
- package/dist/testimonials-large-quote.cjs +11 -21
- package/dist/testimonials-large-quote.js +12 -22
- package/dist/testimonials-logo-cards.cjs +9 -53
- package/dist/testimonials-logo-cards.js +10 -54
- package/dist/testimonials-marquee.cjs +15 -60
- package/dist/testimonials-marquee.js +16 -61
- package/dist/testimonials-masonry-grid.cjs +11 -71
- package/dist/testimonials-masonry-grid.js +12 -72
- package/dist/testimonials-mini-dividers.cjs +9 -61
- package/dist/testimonials-mini-dividers.js +10 -62
- package/dist/testimonials-minimal-numbered.cjs +48 -57
- package/dist/testimonials-minimal-numbered.js +48 -57
- package/dist/testimonials-parallax-number.cjs +29 -44
- package/dist/testimonials-parallax-number.js +29 -44
- package/dist/testimonials-quote-carousel.cjs +9 -48
- package/dist/testimonials-quote-carousel.js +10 -49
- package/dist/testimonials-scrolling-columns.cjs +9 -165
- package/dist/testimonials-scrolling-columns.js +10 -166
- package/dist/testimonials-simple-grid.cjs +12 -63
- package/dist/testimonials-simple-grid.js +13 -64
- package/dist/testimonials-slider-minimal.cjs +18 -41
- package/dist/testimonials-slider-minimal.js +18 -41
- package/dist/testimonials-split-image.cjs +15 -24
- package/dist/testimonials-split-image.js +16 -25
- package/dist/testimonials-stats-header.cjs +10 -35
- package/dist/testimonials-stats-header.js +11 -36
- package/dist/testimonials-twitter-cards.cjs +7 -59
- package/dist/testimonials-twitter-cards.js +8 -60
- package/dist/testimonials-wall-compact.cjs +9 -94
- package/dist/testimonials-wall-compact.js +10 -95
- package/dist/timeline-changelog-badges.cjs +4 -4
- package/dist/timeline-changelog-badges.js +4 -4
- package/dist/timeline-history-prose.cjs +4 -4
- package/dist/timeline-history-prose.js +4 -4
- package/dist/timeline-horizontal-icons.cjs +3 -3
- package/dist/timeline-horizontal-icons.js +3 -3
- package/dist/timeline-horizontal-phases.cjs +3 -3
- package/dist/timeline-horizontal-phases.js +3 -3
- package/dist/timeline-stepper-animated.cjs +3 -3
- package/dist/timeline-stepper-animated.js +3 -3
- package/dist/timeline-tabbed-phases.cjs +4 -4
- package/dist/timeline-tabbed-phases.js +4 -4
- package/package.json +1 -1
|
@@ -557,19 +557,8 @@ var Section = React__namespace.default.forwardRef(
|
|
|
557
557
|
}
|
|
558
558
|
);
|
|
559
559
|
Section.displayName = "Section";
|
|
560
|
-
|
|
561
|
-
// lib/blockBrandedIconsAndPlaceholders.ts
|
|
562
|
-
var blockBrandedIconsAndPlaceholders = {
|
|
563
|
-
avatar1: "https://cdn.ing/assets/i/r/286239/ebm7o3j2kx48vw98emnwjaf5qvl6/avatar-1.webp"};
|
|
564
|
-
var DEFAULT_TESTIMONIAL = {
|
|
565
|
-
quote: "This platform has fundamentally changed how we approach our work. The intuitive design, powerful features, and exceptional support have made it an indispensable part of our daily operations. I cannot recommend it highly enough to anyone looking to transform their workflow.",
|
|
566
|
-
author: "Sarah Chen",
|
|
567
|
-
role: "Chief Executive Officer",
|
|
568
|
-
company: "TechVentures Inc.",
|
|
569
|
-
avatarSrc: blockBrandedIconsAndPlaceholders.avatar1
|
|
570
|
-
};
|
|
571
560
|
function TestimonialsLargeQuote({
|
|
572
|
-
testimonial
|
|
561
|
+
testimonial,
|
|
573
562
|
testimonialSlot,
|
|
574
563
|
className,
|
|
575
564
|
contentClassName,
|
|
@@ -582,18 +571,19 @@ function TestimonialsLargeQuote({
|
|
|
582
571
|
pattern,
|
|
583
572
|
patternOpacity
|
|
584
573
|
}) {
|
|
585
|
-
const getAuthorName = () => {
|
|
586
|
-
if (typeof testimonial
|
|
574
|
+
const getAuthorName = React.useCallback(() => {
|
|
575
|
+
if (typeof testimonial?.author === "string") return testimonial.author;
|
|
587
576
|
return "";
|
|
588
|
-
};
|
|
589
|
-
const getAvatarSrc = () => {
|
|
590
|
-
return testimonial
|
|
591
|
-
};
|
|
592
|
-
const getInitials = (name) => {
|
|
577
|
+
}, [testimonial?.author]);
|
|
578
|
+
const getAvatarSrc = React.useCallback(() => {
|
|
579
|
+
return testimonial?.avatarSrc || testimonial?.avatar?.src;
|
|
580
|
+
}, [testimonial?.avatarSrc, testimonial?.avatar?.src]);
|
|
581
|
+
const getInitials = React.useCallback((name) => {
|
|
593
582
|
return name.split(" ").map((n) => n[0]).join("");
|
|
594
|
-
};
|
|
583
|
+
}, []);
|
|
595
584
|
const renderedTestimonial = React.useMemo(() => {
|
|
596
585
|
if (testimonialSlot) return testimonialSlot;
|
|
586
|
+
if (!testimonial) return null;
|
|
597
587
|
const authorName = getAuthorName();
|
|
598
588
|
const avatarSrc = getAvatarSrc();
|
|
599
589
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("mx-auto max-w-4xl text-center", contentClassName), children: [
|
|
@@ -638,7 +628,7 @@ function TestimonialsLargeQuote({
|
|
|
638
628
|
}
|
|
639
629
|
)
|
|
640
630
|
] });
|
|
641
|
-
}, [testimonialSlot, contentClassName, quoteIconClassName, testimonial
|
|
631
|
+
}, [testimonialSlot, contentClassName, quoteIconClassName, testimonial, quoteClassName, authorClassName, avatarClassName, getAuthorName, getAvatarSrc, getInitials]);
|
|
642
632
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
643
633
|
Section,
|
|
644
634
|
{
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import * as React from 'react';
|
|
3
|
-
import React__default, { useMemo } from 'react';
|
|
3
|
+
import React__default, { useCallback, useMemo } from 'react';
|
|
4
4
|
import { clsx } from 'clsx';
|
|
5
5
|
import { twMerge } from 'tailwind-merge';
|
|
6
6
|
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
@@ -535,19 +535,8 @@ var Section = React__default.forwardRef(
|
|
|
535
535
|
}
|
|
536
536
|
);
|
|
537
537
|
Section.displayName = "Section";
|
|
538
|
-
|
|
539
|
-
// lib/blockBrandedIconsAndPlaceholders.ts
|
|
540
|
-
var blockBrandedIconsAndPlaceholders = {
|
|
541
|
-
avatar1: "https://cdn.ing/assets/i/r/286239/ebm7o3j2kx48vw98emnwjaf5qvl6/avatar-1.webp"};
|
|
542
|
-
var DEFAULT_TESTIMONIAL = {
|
|
543
|
-
quote: "This platform has fundamentally changed how we approach our work. The intuitive design, powerful features, and exceptional support have made it an indispensable part of our daily operations. I cannot recommend it highly enough to anyone looking to transform their workflow.",
|
|
544
|
-
author: "Sarah Chen",
|
|
545
|
-
role: "Chief Executive Officer",
|
|
546
|
-
company: "TechVentures Inc.",
|
|
547
|
-
avatarSrc: blockBrandedIconsAndPlaceholders.avatar1
|
|
548
|
-
};
|
|
549
538
|
function TestimonialsLargeQuote({
|
|
550
|
-
testimonial
|
|
539
|
+
testimonial,
|
|
551
540
|
testimonialSlot,
|
|
552
541
|
className,
|
|
553
542
|
contentClassName,
|
|
@@ -560,18 +549,19 @@ function TestimonialsLargeQuote({
|
|
|
560
549
|
pattern,
|
|
561
550
|
patternOpacity
|
|
562
551
|
}) {
|
|
563
|
-
const getAuthorName = () => {
|
|
564
|
-
if (typeof testimonial
|
|
552
|
+
const getAuthorName = useCallback(() => {
|
|
553
|
+
if (typeof testimonial?.author === "string") return testimonial.author;
|
|
565
554
|
return "";
|
|
566
|
-
};
|
|
567
|
-
const getAvatarSrc = () => {
|
|
568
|
-
return testimonial
|
|
569
|
-
};
|
|
570
|
-
const getInitials = (name) => {
|
|
555
|
+
}, [testimonial?.author]);
|
|
556
|
+
const getAvatarSrc = useCallback(() => {
|
|
557
|
+
return testimonial?.avatarSrc || testimonial?.avatar?.src;
|
|
558
|
+
}, [testimonial?.avatarSrc, testimonial?.avatar?.src]);
|
|
559
|
+
const getInitials = useCallback((name) => {
|
|
571
560
|
return name.split(" ").map((n) => n[0]).join("");
|
|
572
|
-
};
|
|
561
|
+
}, []);
|
|
573
562
|
const renderedTestimonial = useMemo(() => {
|
|
574
563
|
if (testimonialSlot) return testimonialSlot;
|
|
564
|
+
if (!testimonial) return null;
|
|
575
565
|
const authorName = getAuthorName();
|
|
576
566
|
const avatarSrc = getAvatarSrc();
|
|
577
567
|
return /* @__PURE__ */ jsxs("div", { className: cn("mx-auto max-w-4xl text-center", contentClassName), children: [
|
|
@@ -616,7 +606,7 @@ function TestimonialsLargeQuote({
|
|
|
616
606
|
}
|
|
617
607
|
)
|
|
618
608
|
] });
|
|
619
|
-
}, [testimonialSlot, contentClassName, quoteIconClassName, testimonial
|
|
609
|
+
}, [testimonialSlot, contentClassName, quoteIconClassName, testimonial, quoteClassName, authorClassName, avatarClassName, getAuthorName, getAvatarSrc, getInitials]);
|
|
620
610
|
return /* @__PURE__ */ jsx(
|
|
621
611
|
Section,
|
|
622
612
|
{
|
|
@@ -491,53 +491,8 @@ var Section = React__default.default.forwardRef(
|
|
|
491
491
|
}
|
|
492
492
|
);
|
|
493
493
|
Section.displayName = "Section";
|
|
494
|
-
|
|
495
|
-
// lib/blockBrandedIconsAndPlaceholders.ts
|
|
496
|
-
var blockBrandedIconsAndPlaceholders = {
|
|
497
|
-
fictionalCompanyLogo1: "https://cdn.ing/assets/files/record/286222/4w39lhwei0pa97up2wjnay3j96gh",
|
|
498
|
-
fictionalCompanyLogo2: "https://cdn.ing/assets/files/record/286216/bw4zypgflisdtapxy0n4nbmsmtum",
|
|
499
|
-
fictionalCompanyLogo3: "https://cdn.ing/assets/files/record/286215/6wwi6yh2ax2nuo2vqa5gn9vozrgq",
|
|
500
|
-
fictionalCompanyLogo4: "https://cdn.ing/assets/files/record/286230/rl5ccu4bblexv7k2xj6ku4xig4xp",
|
|
501
|
-
avatar1: "https://cdn.ing/assets/i/r/286239/ebm7o3j2kx48vw98emnwjaf5qvl6/avatar-1.webp",
|
|
502
|
-
avatar2: "https://cdn.ing/assets/i/r/286240/vgf3rrkwn0769pfdtpal60uo5vpw/avatar-2.webp",
|
|
503
|
-
avatar3: "https://cdn.ing/assets/i/r/286241/05vbqt3lls0q974r8fv4zn0njllq/avatar-3.webp",
|
|
504
|
-
avatar4: "https://cdn.ing/assets/i/r/286242/y0zkazxawxrl3twwkw63twf04pdt/avatar-4.webp"};
|
|
505
|
-
var DEFAULT_TESTIMONIALS = [
|
|
506
|
-
{
|
|
507
|
-
quote: "This platform has transformed the way we develop web applications. The extensive collection of UI components and blocks has significantly accelerated our workflow. The flexibility to customize every aspect allows us to create unique user experiences.",
|
|
508
|
-
author: "Sarah Chen",
|
|
509
|
-
role: "Software Engineer",
|
|
510
|
-
avatarSrc: blockBrandedIconsAndPlaceholders.avatar1,
|
|
511
|
-
companyLogo: blockBrandedIconsAndPlaceholders.fictionalCompanyLogo1,
|
|
512
|
-
companyLogoAlt: "TechCorp"
|
|
513
|
-
},
|
|
514
|
-
{
|
|
515
|
-
quote: "Extraordinary and very practical. No need to break your head trying to figure things out. A real gold mine for developers who want to ship fast without sacrificing quality.",
|
|
516
|
-
author: "Michael Torres",
|
|
517
|
-
role: "Software Engineer",
|
|
518
|
-
avatarSrc: blockBrandedIconsAndPlaceholders.avatar2,
|
|
519
|
-
companyLogo: blockBrandedIconsAndPlaceholders.fictionalCompanyLogo2,
|
|
520
|
-
companyLogoAlt: "StartupXYZ"
|
|
521
|
-
},
|
|
522
|
-
{
|
|
523
|
-
quote: "Great work on the templates. This is one of the best component libraries I have seen so far! The attention to detail and the quality of the code is impressive.",
|
|
524
|
-
author: "Emily Watson",
|
|
525
|
-
role: "Creator",
|
|
526
|
-
avatarSrc: blockBrandedIconsAndPlaceholders.avatar3,
|
|
527
|
-
companyLogo: blockBrandedIconsAndPlaceholders.fictionalCompanyLogo3,
|
|
528
|
-
companyLogoAlt: "GrowthCo"
|
|
529
|
-
},
|
|
530
|
-
{
|
|
531
|
-
quote: "The best personal website template I have seen so far! Clean, modern, and incredibly well-documented. Made our development process so much smoother.",
|
|
532
|
-
author: "David Kim",
|
|
533
|
-
role: "Creator",
|
|
534
|
-
avatarSrc: blockBrandedIconsAndPlaceholders.avatar4,
|
|
535
|
-
companyLogo: blockBrandedIconsAndPlaceholders.fictionalCompanyLogo4,
|
|
536
|
-
companyLogoAlt: "DevStudio"
|
|
537
|
-
}
|
|
538
|
-
];
|
|
539
494
|
function TestimonialsLogoCards({
|
|
540
|
-
testimonials
|
|
495
|
+
testimonials,
|
|
541
496
|
testimonialsSlot,
|
|
542
497
|
heading,
|
|
543
498
|
description,
|
|
@@ -557,18 +512,19 @@ function TestimonialsLogoCards({
|
|
|
557
512
|
patternOpacity,
|
|
558
513
|
optixFlowConfig
|
|
559
514
|
}) {
|
|
560
|
-
const getAuthorName = (testimonial) => {
|
|
515
|
+
const getAuthorName = React.useCallback((testimonial) => {
|
|
561
516
|
if (typeof testimonial.author === "string") return testimonial.author;
|
|
562
517
|
return "";
|
|
563
|
-
};
|
|
564
|
-
const getAvatarSrc = (testimonial) => {
|
|
518
|
+
}, []);
|
|
519
|
+
const getAvatarSrc = React.useCallback((testimonial) => {
|
|
565
520
|
return testimonial.avatarSrc || testimonial.avatar?.src;
|
|
566
|
-
};
|
|
567
|
-
const getInitials = (name) => {
|
|
521
|
+
}, []);
|
|
522
|
+
const getInitials = React.useCallback((name) => {
|
|
568
523
|
return name.split(" ").map((n) => n[0]).join("");
|
|
569
|
-
};
|
|
524
|
+
}, []);
|
|
570
525
|
const renderedTestimonials = React.useMemo(() => {
|
|
571
526
|
if (testimonialsSlot) return testimonialsSlot;
|
|
527
|
+
if (!testimonials || testimonials.length === 0) return null;
|
|
572
528
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
573
529
|
"div",
|
|
574
530
|
{
|
|
@@ -636,7 +592,7 @@ function TestimonialsLogoCards({
|
|
|
636
592
|
})
|
|
637
593
|
}
|
|
638
594
|
);
|
|
639
|
-
}, [testimonialsSlot, gridClassName, testimonials, cardClassName, cardHeaderClassName, optixFlowConfig, cardContentClassName, quoteClassName, authorClassName]);
|
|
595
|
+
}, [testimonialsSlot, gridClassName, testimonials, cardClassName, cardHeaderClassName, optixFlowConfig, cardContentClassName, quoteClassName, authorClassName, getAuthorName, getAvatarSrc, getInitials]);
|
|
640
596
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
641
597
|
Section,
|
|
642
598
|
{
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import React, { useMemo } from 'react';
|
|
2
|
+
import React, { useCallback, useMemo } from 'react';
|
|
3
3
|
import { clsx } from 'clsx';
|
|
4
4
|
import { twMerge } from 'tailwind-merge';
|
|
5
5
|
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
@@ -466,53 +466,8 @@ var Section = React.forwardRef(
|
|
|
466
466
|
}
|
|
467
467
|
);
|
|
468
468
|
Section.displayName = "Section";
|
|
469
|
-
|
|
470
|
-
// lib/blockBrandedIconsAndPlaceholders.ts
|
|
471
|
-
var blockBrandedIconsAndPlaceholders = {
|
|
472
|
-
fictionalCompanyLogo1: "https://cdn.ing/assets/files/record/286222/4w39lhwei0pa97up2wjnay3j96gh",
|
|
473
|
-
fictionalCompanyLogo2: "https://cdn.ing/assets/files/record/286216/bw4zypgflisdtapxy0n4nbmsmtum",
|
|
474
|
-
fictionalCompanyLogo3: "https://cdn.ing/assets/files/record/286215/6wwi6yh2ax2nuo2vqa5gn9vozrgq",
|
|
475
|
-
fictionalCompanyLogo4: "https://cdn.ing/assets/files/record/286230/rl5ccu4bblexv7k2xj6ku4xig4xp",
|
|
476
|
-
avatar1: "https://cdn.ing/assets/i/r/286239/ebm7o3j2kx48vw98emnwjaf5qvl6/avatar-1.webp",
|
|
477
|
-
avatar2: "https://cdn.ing/assets/i/r/286240/vgf3rrkwn0769pfdtpal60uo5vpw/avatar-2.webp",
|
|
478
|
-
avatar3: "https://cdn.ing/assets/i/r/286241/05vbqt3lls0q974r8fv4zn0njllq/avatar-3.webp",
|
|
479
|
-
avatar4: "https://cdn.ing/assets/i/r/286242/y0zkazxawxrl3twwkw63twf04pdt/avatar-4.webp"};
|
|
480
|
-
var DEFAULT_TESTIMONIALS = [
|
|
481
|
-
{
|
|
482
|
-
quote: "This platform has transformed the way we develop web applications. The extensive collection of UI components and blocks has significantly accelerated our workflow. The flexibility to customize every aspect allows us to create unique user experiences.",
|
|
483
|
-
author: "Sarah Chen",
|
|
484
|
-
role: "Software Engineer",
|
|
485
|
-
avatarSrc: blockBrandedIconsAndPlaceholders.avatar1,
|
|
486
|
-
companyLogo: blockBrandedIconsAndPlaceholders.fictionalCompanyLogo1,
|
|
487
|
-
companyLogoAlt: "TechCorp"
|
|
488
|
-
},
|
|
489
|
-
{
|
|
490
|
-
quote: "Extraordinary and very practical. No need to break your head trying to figure things out. A real gold mine for developers who want to ship fast without sacrificing quality.",
|
|
491
|
-
author: "Michael Torres",
|
|
492
|
-
role: "Software Engineer",
|
|
493
|
-
avatarSrc: blockBrandedIconsAndPlaceholders.avatar2,
|
|
494
|
-
companyLogo: blockBrandedIconsAndPlaceholders.fictionalCompanyLogo2,
|
|
495
|
-
companyLogoAlt: "StartupXYZ"
|
|
496
|
-
},
|
|
497
|
-
{
|
|
498
|
-
quote: "Great work on the templates. This is one of the best component libraries I have seen so far! The attention to detail and the quality of the code is impressive.",
|
|
499
|
-
author: "Emily Watson",
|
|
500
|
-
role: "Creator",
|
|
501
|
-
avatarSrc: blockBrandedIconsAndPlaceholders.avatar3,
|
|
502
|
-
companyLogo: blockBrandedIconsAndPlaceholders.fictionalCompanyLogo3,
|
|
503
|
-
companyLogoAlt: "GrowthCo"
|
|
504
|
-
},
|
|
505
|
-
{
|
|
506
|
-
quote: "The best personal website template I have seen so far! Clean, modern, and incredibly well-documented. Made our development process so much smoother.",
|
|
507
|
-
author: "David Kim",
|
|
508
|
-
role: "Creator",
|
|
509
|
-
avatarSrc: blockBrandedIconsAndPlaceholders.avatar4,
|
|
510
|
-
companyLogo: blockBrandedIconsAndPlaceholders.fictionalCompanyLogo4,
|
|
511
|
-
companyLogoAlt: "DevStudio"
|
|
512
|
-
}
|
|
513
|
-
];
|
|
514
469
|
function TestimonialsLogoCards({
|
|
515
|
-
testimonials
|
|
470
|
+
testimonials,
|
|
516
471
|
testimonialsSlot,
|
|
517
472
|
heading,
|
|
518
473
|
description,
|
|
@@ -532,18 +487,19 @@ function TestimonialsLogoCards({
|
|
|
532
487
|
patternOpacity,
|
|
533
488
|
optixFlowConfig
|
|
534
489
|
}) {
|
|
535
|
-
const getAuthorName = (testimonial) => {
|
|
490
|
+
const getAuthorName = useCallback((testimonial) => {
|
|
536
491
|
if (typeof testimonial.author === "string") return testimonial.author;
|
|
537
492
|
return "";
|
|
538
|
-
};
|
|
539
|
-
const getAvatarSrc = (testimonial) => {
|
|
493
|
+
}, []);
|
|
494
|
+
const getAvatarSrc = useCallback((testimonial) => {
|
|
540
495
|
return testimonial.avatarSrc || testimonial.avatar?.src;
|
|
541
|
-
};
|
|
542
|
-
const getInitials = (name) => {
|
|
496
|
+
}, []);
|
|
497
|
+
const getInitials = useCallback((name) => {
|
|
543
498
|
return name.split(" ").map((n) => n[0]).join("");
|
|
544
|
-
};
|
|
499
|
+
}, []);
|
|
545
500
|
const renderedTestimonials = useMemo(() => {
|
|
546
501
|
if (testimonialsSlot) return testimonialsSlot;
|
|
502
|
+
if (!testimonials || testimonials.length === 0) return null;
|
|
547
503
|
return /* @__PURE__ */ jsx(
|
|
548
504
|
"div",
|
|
549
505
|
{
|
|
@@ -611,7 +567,7 @@ function TestimonialsLogoCards({
|
|
|
611
567
|
})
|
|
612
568
|
}
|
|
613
569
|
);
|
|
614
|
-
}, [testimonialsSlot, gridClassName, testimonials, cardClassName, cardHeaderClassName, optixFlowConfig, cardContentClassName, quoteClassName, authorClassName]);
|
|
570
|
+
}, [testimonialsSlot, gridClassName, testimonials, cardClassName, cardHeaderClassName, optixFlowConfig, cardContentClassName, quoteClassName, authorClassName, getAuthorName, getAvatarSrc, getInitials]);
|
|
615
571
|
return /* @__PURE__ */ jsxs(
|
|
616
572
|
Section,
|
|
617
573
|
{
|
|
@@ -477,65 +477,18 @@ var Section = React__default.default.forwardRef(
|
|
|
477
477
|
}
|
|
478
478
|
);
|
|
479
479
|
Section.displayName = "Section";
|
|
480
|
-
|
|
481
|
-
// lib/blockBrandedIconsAndPlaceholders.ts
|
|
482
|
-
var blockBrandedIconsAndPlaceholders = {
|
|
483
|
-
avatar1: "https://cdn.ing/assets/i/r/286239/ebm7o3j2kx48vw98emnwjaf5qvl6/avatar-1.webp",
|
|
484
|
-
avatar2: "https://cdn.ing/assets/i/r/286240/vgf3rrkwn0769pfdtpal60uo5vpw/avatar-2.webp",
|
|
485
|
-
avatar3: "https://cdn.ing/assets/i/r/286241/05vbqt3lls0q974r8fv4zn0njllq/avatar-3.webp",
|
|
486
|
-
avatar4: "https://cdn.ing/assets/i/r/286242/y0zkazxawxrl3twwkw63twf04pdt/avatar-4.webp",
|
|
487
|
-
avatar5: "https://cdn.ing/assets/i/r/286243/alziyfoo570m3vade3usufzlzj6x/avatar-5.webp",
|
|
488
|
-
avatar6: "https://cdn.ing/assets/i/r/286244/t7u1jpe1phm0fvmh3ybh3flhfg6i/avatar-6.webp"};
|
|
489
|
-
var DEFAULT_TESTIMONIALS = [
|
|
490
|
-
{
|
|
491
|
-
quote: "This platform has completely transformed how we work. The efficiency gains have been remarkable.",
|
|
492
|
-
author: "Sarah Chen",
|
|
493
|
-
role: "Product Manager",
|
|
494
|
-
avatarSrc: blockBrandedIconsAndPlaceholders.avatar1
|
|
495
|
-
},
|
|
496
|
-
{
|
|
497
|
-
quote: "The best investment we've made this year. Our team loves it and productivity is through the roof.",
|
|
498
|
-
author: "Michael Torres",
|
|
499
|
-
role: "CEO",
|
|
500
|
-
avatarSrc: blockBrandedIconsAndPlaceholders.avatar2
|
|
501
|
-
},
|
|
502
|
-
{
|
|
503
|
-
quote: "Incredible support team and an even better product. Highly recommend to anyone looking to scale.",
|
|
504
|
-
author: "Emily Watson",
|
|
505
|
-
role: "Operations Lead",
|
|
506
|
-
avatarSrc: blockBrandedIconsAndPlaceholders.avatar3
|
|
507
|
-
},
|
|
508
|
-
{
|
|
509
|
-
quote: "Simple, elegant, and powerful. Everything we needed in one package. A game-changer for our workflow.",
|
|
510
|
-
author: "David Kim",
|
|
511
|
-
role: "CTO",
|
|
512
|
-
avatarSrc: blockBrandedIconsAndPlaceholders.avatar4
|
|
513
|
-
},
|
|
514
|
-
{
|
|
515
|
-
quote: "We've tried many solutions, but this one stands out for its reliability and ease of use.",
|
|
516
|
-
author: "Lisa Park",
|
|
517
|
-
role: "Engineering Manager",
|
|
518
|
-
avatarSrc: blockBrandedIconsAndPlaceholders.avatar5
|
|
519
|
-
},
|
|
520
|
-
{
|
|
521
|
-
quote: "The attention to detail is impressive. Every feature feels thoughtfully designed.",
|
|
522
|
-
author: "Alex Rivera",
|
|
523
|
-
role: "Design Director",
|
|
524
|
-
avatarSrc: blockBrandedIconsAndPlaceholders.avatar6
|
|
525
|
-
}
|
|
526
|
-
];
|
|
527
480
|
var speedMap = {
|
|
528
481
|
slow: "60s",
|
|
529
482
|
normal: "40s",
|
|
530
483
|
fast: "20s"
|
|
531
484
|
};
|
|
532
485
|
function TestimonialsMarquee({
|
|
533
|
-
testimonials
|
|
486
|
+
testimonials,
|
|
534
487
|
testimonialsSlot,
|
|
535
488
|
heading,
|
|
536
489
|
description,
|
|
537
|
-
speed
|
|
538
|
-
pauseOnHover
|
|
490
|
+
speed,
|
|
491
|
+
pauseOnHover,
|
|
539
492
|
className,
|
|
540
493
|
headerClassName,
|
|
541
494
|
headingClassName,
|
|
@@ -549,19 +502,21 @@ function TestimonialsMarquee({
|
|
|
549
502
|
pattern,
|
|
550
503
|
patternOpacity
|
|
551
504
|
}) {
|
|
552
|
-
const duplicatedTestimonials = [...testimonials, ...testimonials];
|
|
553
|
-
const
|
|
505
|
+
const duplicatedTestimonials = testimonials ? [...testimonials, ...testimonials] : [];
|
|
506
|
+
const effectiveSpeed = speed || "normal";
|
|
507
|
+
const getAuthorName = React.useCallback((testimonial) => {
|
|
554
508
|
if (typeof testimonial.author === "string") return testimonial.author;
|
|
555
509
|
return "";
|
|
556
|
-
};
|
|
557
|
-
const getAvatarSrc = (testimonial) => {
|
|
510
|
+
}, []);
|
|
511
|
+
const getAvatarSrc = React.useCallback((testimonial) => {
|
|
558
512
|
return testimonial.avatarSrc || testimonial.avatar?.src;
|
|
559
|
-
};
|
|
560
|
-
const getInitials = (name) => {
|
|
513
|
+
}, []);
|
|
514
|
+
const getInitials = React.useCallback((name) => {
|
|
561
515
|
return name.split(" ").map((n) => n[0]).join("");
|
|
562
|
-
};
|
|
516
|
+
}, []);
|
|
563
517
|
const renderedTestimonials = React.useMemo(() => {
|
|
564
518
|
if (testimonialsSlot) return testimonialsSlot;
|
|
519
|
+
if (!testimonials || testimonials.length === 0) return null;
|
|
565
520
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("relative", marqueeClassName), children: [
|
|
566
521
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "pointer-events-none absolute left-0 top-0 z-10 h-full w-24 bg-gradient-to-r from-background to-transparent" }),
|
|
567
522
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "pointer-events-none absolute right-0 top-0 z-10 h-full w-24 bg-gradient-to-l from-background to-transparent" }),
|
|
@@ -570,14 +525,14 @@ function TestimonialsMarquee({
|
|
|
570
525
|
{
|
|
571
526
|
className: cn(
|
|
572
527
|
"flex gap-4",
|
|
573
|
-
pauseOnHover && "[&:hover_.marquee-content]:pause"
|
|
528
|
+
pauseOnHover !== false && "[&:hover_.marquee-content]:pause"
|
|
574
529
|
),
|
|
575
530
|
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
576
531
|
"div",
|
|
577
532
|
{
|
|
578
533
|
className: "marquee-content flex shrink-0 animate-marquee gap-4",
|
|
579
534
|
style: {
|
|
580
|
-
animationDuration: speedMap[
|
|
535
|
+
animationDuration: speedMap[effectiveSpeed]
|
|
581
536
|
},
|
|
582
537
|
children: duplicatedTestimonials.map((testimonial, index) => {
|
|
583
538
|
const authorName = getAuthorName(testimonial);
|
|
@@ -627,7 +582,7 @@ function TestimonialsMarquee({
|
|
|
627
582
|
}
|
|
628
583
|
)
|
|
629
584
|
] });
|
|
630
|
-
}, [testimonialsSlot, marqueeClassName, pauseOnHover,
|
|
585
|
+
}, [testimonialsSlot, marqueeClassName, pauseOnHover, effectiveSpeed, duplicatedTestimonials, cardClassName, quoteClassName, authorClassName, testimonials, getAuthorName, getAvatarSrc, getInitials]);
|
|
631
586
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
632
587
|
Section,
|
|
633
588
|
{
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import React, { useMemo } from 'react';
|
|
2
|
+
import React, { useCallback, useMemo } from 'react';
|
|
3
3
|
import { clsx } from 'clsx';
|
|
4
4
|
import { twMerge } from 'tailwind-merge';
|
|
5
5
|
import * as AvatarPrimitive from '@radix-ui/react-avatar';
|
|
@@ -452,65 +452,18 @@ var Section = React.forwardRef(
|
|
|
452
452
|
}
|
|
453
453
|
);
|
|
454
454
|
Section.displayName = "Section";
|
|
455
|
-
|
|
456
|
-
// lib/blockBrandedIconsAndPlaceholders.ts
|
|
457
|
-
var blockBrandedIconsAndPlaceholders = {
|
|
458
|
-
avatar1: "https://cdn.ing/assets/i/r/286239/ebm7o3j2kx48vw98emnwjaf5qvl6/avatar-1.webp",
|
|
459
|
-
avatar2: "https://cdn.ing/assets/i/r/286240/vgf3rrkwn0769pfdtpal60uo5vpw/avatar-2.webp",
|
|
460
|
-
avatar3: "https://cdn.ing/assets/i/r/286241/05vbqt3lls0q974r8fv4zn0njllq/avatar-3.webp",
|
|
461
|
-
avatar4: "https://cdn.ing/assets/i/r/286242/y0zkazxawxrl3twwkw63twf04pdt/avatar-4.webp",
|
|
462
|
-
avatar5: "https://cdn.ing/assets/i/r/286243/alziyfoo570m3vade3usufzlzj6x/avatar-5.webp",
|
|
463
|
-
avatar6: "https://cdn.ing/assets/i/r/286244/t7u1jpe1phm0fvmh3ybh3flhfg6i/avatar-6.webp"};
|
|
464
|
-
var DEFAULT_TESTIMONIALS = [
|
|
465
|
-
{
|
|
466
|
-
quote: "This platform has completely transformed how we work. The efficiency gains have been remarkable.",
|
|
467
|
-
author: "Sarah Chen",
|
|
468
|
-
role: "Product Manager",
|
|
469
|
-
avatarSrc: blockBrandedIconsAndPlaceholders.avatar1
|
|
470
|
-
},
|
|
471
|
-
{
|
|
472
|
-
quote: "The best investment we've made this year. Our team loves it and productivity is through the roof.",
|
|
473
|
-
author: "Michael Torres",
|
|
474
|
-
role: "CEO",
|
|
475
|
-
avatarSrc: blockBrandedIconsAndPlaceholders.avatar2
|
|
476
|
-
},
|
|
477
|
-
{
|
|
478
|
-
quote: "Incredible support team and an even better product. Highly recommend to anyone looking to scale.",
|
|
479
|
-
author: "Emily Watson",
|
|
480
|
-
role: "Operations Lead",
|
|
481
|
-
avatarSrc: blockBrandedIconsAndPlaceholders.avatar3
|
|
482
|
-
},
|
|
483
|
-
{
|
|
484
|
-
quote: "Simple, elegant, and powerful. Everything we needed in one package. A game-changer for our workflow.",
|
|
485
|
-
author: "David Kim",
|
|
486
|
-
role: "CTO",
|
|
487
|
-
avatarSrc: blockBrandedIconsAndPlaceholders.avatar4
|
|
488
|
-
},
|
|
489
|
-
{
|
|
490
|
-
quote: "We've tried many solutions, but this one stands out for its reliability and ease of use.",
|
|
491
|
-
author: "Lisa Park",
|
|
492
|
-
role: "Engineering Manager",
|
|
493
|
-
avatarSrc: blockBrandedIconsAndPlaceholders.avatar5
|
|
494
|
-
},
|
|
495
|
-
{
|
|
496
|
-
quote: "The attention to detail is impressive. Every feature feels thoughtfully designed.",
|
|
497
|
-
author: "Alex Rivera",
|
|
498
|
-
role: "Design Director",
|
|
499
|
-
avatarSrc: blockBrandedIconsAndPlaceholders.avatar6
|
|
500
|
-
}
|
|
501
|
-
];
|
|
502
455
|
var speedMap = {
|
|
503
456
|
slow: "60s",
|
|
504
457
|
normal: "40s",
|
|
505
458
|
fast: "20s"
|
|
506
459
|
};
|
|
507
460
|
function TestimonialsMarquee({
|
|
508
|
-
testimonials
|
|
461
|
+
testimonials,
|
|
509
462
|
testimonialsSlot,
|
|
510
463
|
heading,
|
|
511
464
|
description,
|
|
512
|
-
speed
|
|
513
|
-
pauseOnHover
|
|
465
|
+
speed,
|
|
466
|
+
pauseOnHover,
|
|
514
467
|
className,
|
|
515
468
|
headerClassName,
|
|
516
469
|
headingClassName,
|
|
@@ -524,19 +477,21 @@ function TestimonialsMarquee({
|
|
|
524
477
|
pattern,
|
|
525
478
|
patternOpacity
|
|
526
479
|
}) {
|
|
527
|
-
const duplicatedTestimonials = [...testimonials, ...testimonials];
|
|
528
|
-
const
|
|
480
|
+
const duplicatedTestimonials = testimonials ? [...testimonials, ...testimonials] : [];
|
|
481
|
+
const effectiveSpeed = speed || "normal";
|
|
482
|
+
const getAuthorName = useCallback((testimonial) => {
|
|
529
483
|
if (typeof testimonial.author === "string") return testimonial.author;
|
|
530
484
|
return "";
|
|
531
|
-
};
|
|
532
|
-
const getAvatarSrc = (testimonial) => {
|
|
485
|
+
}, []);
|
|
486
|
+
const getAvatarSrc = useCallback((testimonial) => {
|
|
533
487
|
return testimonial.avatarSrc || testimonial.avatar?.src;
|
|
534
|
-
};
|
|
535
|
-
const getInitials = (name) => {
|
|
488
|
+
}, []);
|
|
489
|
+
const getInitials = useCallback((name) => {
|
|
536
490
|
return name.split(" ").map((n) => n[0]).join("");
|
|
537
|
-
};
|
|
491
|
+
}, []);
|
|
538
492
|
const renderedTestimonials = useMemo(() => {
|
|
539
493
|
if (testimonialsSlot) return testimonialsSlot;
|
|
494
|
+
if (!testimonials || testimonials.length === 0) return null;
|
|
540
495
|
return /* @__PURE__ */ jsxs("div", { className: cn("relative", marqueeClassName), children: [
|
|
541
496
|
/* @__PURE__ */ jsx("div", { className: "pointer-events-none absolute left-0 top-0 z-10 h-full w-24 bg-gradient-to-r from-background to-transparent" }),
|
|
542
497
|
/* @__PURE__ */ jsx("div", { className: "pointer-events-none absolute right-0 top-0 z-10 h-full w-24 bg-gradient-to-l from-background to-transparent" }),
|
|
@@ -545,14 +500,14 @@ function TestimonialsMarquee({
|
|
|
545
500
|
{
|
|
546
501
|
className: cn(
|
|
547
502
|
"flex gap-4",
|
|
548
|
-
pauseOnHover && "[&:hover_.marquee-content]:pause"
|
|
503
|
+
pauseOnHover !== false && "[&:hover_.marquee-content]:pause"
|
|
549
504
|
),
|
|
550
505
|
children: /* @__PURE__ */ jsx(
|
|
551
506
|
"div",
|
|
552
507
|
{
|
|
553
508
|
className: "marquee-content flex shrink-0 animate-marquee gap-4",
|
|
554
509
|
style: {
|
|
555
|
-
animationDuration: speedMap[
|
|
510
|
+
animationDuration: speedMap[effectiveSpeed]
|
|
556
511
|
},
|
|
557
512
|
children: duplicatedTestimonials.map((testimonial, index) => {
|
|
558
513
|
const authorName = getAuthorName(testimonial);
|
|
@@ -602,7 +557,7 @@ function TestimonialsMarquee({
|
|
|
602
557
|
}
|
|
603
558
|
)
|
|
604
559
|
] });
|
|
605
|
-
}, [testimonialsSlot, marqueeClassName, pauseOnHover,
|
|
560
|
+
}, [testimonialsSlot, marqueeClassName, pauseOnHover, effectiveSpeed, duplicatedTestimonials, cardClassName, quoteClassName, authorClassName, testimonials, getAuthorName, getAvatarSrc, getInitials]);
|
|
606
561
|
return /* @__PURE__ */ jsxs(
|
|
607
562
|
Section,
|
|
608
563
|
{
|