@opensite/ui 2.1.2 → 2.1.4
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-company-profile.d.cts +3 -3
- package/dist/about-company-profile.d.ts +3 -3
- package/dist/about-culture-tabs.d.cts +3 -3
- package/dist/about-culture-tabs.d.ts +3 -3
- package/dist/about-developer-profile.d.cts +3 -3
- package/dist/about-developer-profile.d.ts +3 -3
- package/dist/about-developer-story.d.cts +3 -3
- package/dist/about-developer-story.d.ts +3 -3
- package/dist/about-expandable-values.d.cts +3 -3
- package/dist/about-expandable-values.d.ts +3 -3
- package/dist/about-interactive-tabs.d.cts +3 -3
- package/dist/about-interactive-tabs.d.ts +3 -3
- package/dist/about-location-info-hero.d.cts +3 -3
- package/dist/about-location-info-hero.d.ts +3 -3
- package/dist/about-minimal-story.d.cts +3 -3
- package/dist/about-minimal-story.d.ts +3 -3
- package/dist/about-mission-dual-image.d.cts +3 -3
- package/dist/about-mission-dual-image.d.ts +3 -3
- package/dist/about-mission-features.d.cts +3 -3
- package/dist/about-mission-features.d.ts +3 -3
- package/dist/about-mission-principles.d.cts +3 -3
- package/dist/about-mission-principles.d.ts +3 -3
- package/dist/about-network-spotlight.d.cts +3 -3
- package/dist/about-network-spotlight.d.ts +3 -3
- package/dist/about-split-hero.d.cts +3 -3
- package/dist/about-split-hero.d.ts +3 -3
- package/dist/about-startup-team.d.cts +3 -3
- package/dist/about-startup-team.d.ts +3 -3
- package/dist/about-stats-showcase.d.cts +3 -3
- package/dist/about-stats-showcase.d.ts +3 -3
- package/dist/about-stats-sidebar.d.cts +3 -3
- package/dist/about-stats-sidebar.d.ts +3 -3
- package/dist/about-story-expertise.d.cts +3 -3
- package/dist/about-story-expertise.d.ts +3 -3
- package/dist/about-story-gallery.d.cts +3 -3
- package/dist/about-story-gallery.d.ts +3 -3
- package/dist/about-story-hero.d.cts +3 -3
- package/dist/about-story-hero.d.ts +3 -3
- package/dist/about-streamline-team.d.cts +3 -3
- package/dist/about-streamline-team.d.ts +3 -3
- package/dist/about-vision-gallery.d.cts +3 -3
- package/dist/about-vision-gallery.d.ts +3 -3
- package/dist/alternating-blocks.d.cts +3 -3
- package/dist/alternating-blocks.d.ts +3 -3
- package/dist/animated-dialog.d.cts +3 -3
- package/dist/animated-dialog.d.ts +3 -3
- package/dist/article-breadcrumb-social.d.cts +3 -3
- package/dist/article-breadcrumb-social.d.ts +3 -3
- package/dist/article-chapters-author.d.cts +3 -3
- package/dist/article-chapters-author.d.ts +3 -3
- package/dist/article-compact-toc.d.cts +3 -3
- package/dist/article-compact-toc.d.ts +3 -3
- package/dist/article-hero-prose.d.cts +3 -3
- package/dist/article-hero-prose.d.ts +3 -3
- package/dist/article-sidebar-sticky.d.cts +3 -3
- package/dist/article-sidebar-sticky.d.ts +3 -3
- package/dist/article-split-animated.d.cts +3 -3
- package/dist/article-split-animated.d.ts +3 -3
- package/dist/article-toc-sidebar.d.cts +3 -3
- package/dist/article-toc-sidebar.d.ts +3 -3
- package/dist/auto-scroll-carousel.d.cts +3 -3
- package/dist/auto-scroll-carousel.d.ts +3 -3
- package/dist/badge.d.cts +1 -1
- package/dist/badge.d.ts +1 -1
- package/dist/banner-announcement-dismissible.d.cts +3 -3
- package/dist/banner-announcement-dismissible.d.ts +3 -3
- package/dist/banner-countdown-sale.d.cts +3 -3
- package/dist/banner-countdown-sale.d.ts +3 -3
- package/dist/banner-delivery-countdown.d.cts +3 -3
- package/dist/banner-delivery-countdown.d.ts +3 -3
- package/dist/banner-event-promo.d.cts +3 -3
- package/dist/banner-event-promo.d.ts +3 -3
- package/dist/banner-floating-offer.d.cts +3 -3
- package/dist/banner-floating-offer.d.ts +3 -3
- package/dist/banner-gdpr-rights.d.cts +3 -3
- package/dist/banner-gdpr-rights.d.ts +3 -3
- package/dist/banner-privacy-notice.d.cts +3 -3
- package/dist/banner-privacy-notice.d.ts +3 -3
- package/dist/banner-promo-cta.d.cts +3 -3
- package/dist/banner-promo-cta.d.ts +3 -3
- package/dist/banner-social-follow.d.cts +3 -3
- package/dist/banner-social-follow.d.ts +3 -3
- package/dist/banner-survey-incentive.d.cts +3 -3
- package/dist/banner-survey-incentive.d.ts +3 -3
- package/dist/{blocks-XLPGq8A5.d.ts → blocks-DRE-f6cS.d.ts} +1 -1
- package/dist/{blocks-DP3Vofl4.d.cts → blocks-tmd_MRJv.d.cts} +1 -1
- package/dist/blog-cards-read-time.d.cts +3 -3
- package/dist/blog-cards-read-time.d.ts +3 -3
- package/dist/blog-cards-tagline-cta.d.cts +3 -3
- package/dist/blog-cards-tagline-cta.d.ts +3 -3
- package/dist/blog-carousel-apple.d.cts +3 -3
- package/dist/blog-carousel-apple.d.ts +3 -3
- package/dist/blog-category-overlay.d.cts +3 -3
- package/dist/blog-category-overlay.d.ts +3 -3
- package/dist/blog-featured-popular.d.cts +3 -3
- package/dist/blog-featured-popular.d.ts +3 -3
- package/dist/blog-filtered-results.d.cts +3 -3
- package/dist/blog-filtered-results.d.ts +3 -3
- package/dist/blog-grid-author-cards.d.cts +3 -3
- package/dist/blog-grid-author-cards.d.ts +3 -3
- package/dist/blog-grid-nine-posts.d.cts +3 -3
- package/dist/blog-grid-nine-posts.d.ts +3 -3
- package/dist/blog-horizontal-cards.d.cts +3 -3
- package/dist/blog-horizontal-cards.d.ts +3 -3
- package/dist/blog-horizontal-timeline.d.cts +3 -3
- package/dist/blog-horizontal-timeline.d.ts +3 -3
- package/dist/blog-masonry-featured.d.cts +3 -3
- package/dist/blog-masonry-featured.d.ts +3 -3
- package/dist/blog-related-articles.d.cts +3 -3
- package/dist/blog-related-articles.d.ts +3 -3
- package/dist/blog-tech-insights.d.cts +3 -3
- package/dist/blog-tech-insights.d.ts +3 -3
- package/dist/blur-vignette-grid.d.cts +3 -3
- package/dist/blur-vignette-grid.d.ts +3 -3
- package/dist/{button-variants-CdNtNOuP.d.cts → button-variants-8mtEHxev.d.cts} +1 -1
- package/dist/{button-variants-CdNtNOuP.d.ts → button-variants-8mtEHxev.d.ts} +1 -1
- package/dist/button.d.cts +1 -1
- package/dist/button.d.ts +1 -1
- package/dist/carousel-animated-sections.d.cts +3 -3
- package/dist/carousel-animated-sections.d.ts +3 -3
- package/dist/carousel-auto-progress-slides.d.cts +3 -3
- package/dist/carousel-auto-progress-slides.d.ts +3 -3
- package/dist/carousel-autoplay-progress.d.cts +3 -3
- package/dist/carousel-autoplay-progress.d.ts +3 -3
- package/dist/carousel-badge-cards.d.cts +3 -3
- package/dist/carousel-badge-cards.d.ts +3 -3
- package/dist/carousel-demo-link.d.cts +3 -3
- package/dist/carousel-demo-link.d.ts +3 -3
- package/dist/carousel-feature-badge.d.cts +3 -3
- package/dist/carousel-feature-badge.d.ts +3 -3
- package/dist/carousel-fullscreen-scroll-fx.d.cts +3 -3
- package/dist/carousel-fullscreen-scroll-fx.d.ts +3 -3
- package/dist/carousel-gallery-thumbnails.d.cts +3 -3
- package/dist/carousel-gallery-thumbnails.d.ts +3 -3
- package/dist/carousel-gradient-overlay.d.cts +3 -3
- package/dist/carousel-gradient-overlay.d.ts +3 -3
- package/dist/carousel-gradient-text.d.cts +3 -3
- package/dist/carousel-gradient-text.d.ts +3 -3
- package/dist/carousel-horizontal-cards.d.cts +3 -3
- package/dist/carousel-horizontal-cards.d.ts +3 -3
- package/dist/carousel-icon-sidebar.d.cts +3 -3
- package/dist/carousel-icon-sidebar.d.ts +3 -3
- package/dist/carousel-icon-tabs.d.cts +3 -3
- package/dist/carousel-icon-tabs.d.ts +3 -3
- package/dist/carousel-image-hero.d.cts +3 -3
- package/dist/carousel-image-hero.d.ts +3 -3
- package/dist/carousel-multi-step-showcase.d.cts +3 -3
- package/dist/carousel-multi-step-showcase.d.ts +3 -3
- package/dist/carousel-portfolio-hero.d.cts +3 -3
- package/dist/carousel-portfolio-hero.d.ts +3 -3
- package/dist/carousel-product-feature-showcase.d.cts +3 -3
- package/dist/carousel-product-feature-showcase.d.ts +3 -3
- package/dist/carousel-progress-slider.d.cts +3 -3
- package/dist/carousel-progress-slider.d.ts +3 -3
- package/dist/carousel-scale-focus.d.cts +3 -3
- package/dist/carousel-scale-focus.d.ts +3 -3
- package/dist/carousel-scrolling-feature-showcase.d.cts +3 -3
- package/dist/carousel-scrolling-feature-showcase.d.ts +3 -3
- package/dist/carousel-sidebar-resources.d.cts +3 -3
- package/dist/carousel-sidebar-resources.d.ts +3 -3
- package/dist/carousel-tabs-content.d.cts +3 -3
- package/dist/carousel-tabs-content.d.ts +3 -3
- package/dist/case-studies-featured-border.d.cts +3 -3
- package/dist/case-studies-featured-border.d.ts +3 -3
- package/dist/case-studies-image-grid.d.cts +3 -3
- package/dist/case-studies-image-grid.d.ts +3 -3
- package/dist/case-studies-stats-card.d.cts +3 -3
- package/dist/case-studies-stats-card.d.ts +3 -3
- package/dist/case-studies-testimonial-stats.d.cts +3 -3
- package/dist/case-studies-testimonial-stats.d.ts +3 -3
- package/dist/case-study-prose-sidebar.d.cts +3 -3
- package/dist/case-study-prose-sidebar.d.ts +3 -3
- package/dist/case-study-stats-metrics.d.cts +3 -3
- package/dist/case-study-stats-metrics.d.ts +3 -3
- package/dist/case-study-toc-social-sidebar.d.cts +3 -3
- package/dist/case-study-toc-social-sidebar.d.ts +3 -3
- package/dist/{community-initiatives-r_NhxVet.d.cts → community-initiatives-CPyEa7IX.d.cts} +1 -1
- package/dist/{community-initiatives-DmVsuoHE.d.ts → community-initiatives-hxnFe3w6.d.ts} +1 -1
- package/dist/community-initiatives.d.cts +3 -3
- package/dist/community-initiatives.d.ts +3 -3
- package/dist/comparison-ai-models.d.cts +3 -3
- package/dist/comparison-ai-models.d.ts +3 -3
- package/dist/comparison-feature-cards.d.cts +3 -3
- package/dist/comparison-feature-cards.d.ts +3 -3
- package/dist/comparison-feature-grid.d.cts +3 -3
- package/dist/comparison-feature-grid.d.ts +3 -3
- package/dist/comparison-grid-badges.d.cts +3 -3
- package/dist/comparison-grid-badges.d.ts +3 -3
- package/dist/comparison-image-cards.d.cts +3 -3
- package/dist/comparison-image-cards.d.ts +3 -3
- package/dist/comparison-legacy-modern.d.cts +3 -3
- package/dist/comparison-legacy-modern.d.ts +3 -3
- package/dist/comparison-metrics-rows.d.cts +3 -3
- package/dist/comparison-metrics-rows.d.ts +3 -3
- package/dist/comparison-table-tabs.d.cts +3 -3
- package/dist/comparison-table-tabs.d.ts +3 -3
- package/dist/comparison-table-tooltips.d.cts +3 -3
- package/dist/comparison-table-tooltips.d.ts +3 -3
- package/dist/comparison-table-two-column.d.cts +3 -3
- package/dist/comparison-table-two-column.d.ts +3 -3
- package/dist/components.d.cts +3 -3
- package/dist/components.d.ts +3 -3
- package/dist/contact-callback.d.cts +3 -3
- package/dist/contact-callback.d.ts +3 -3
- package/dist/contact-card.d.cts +3 -3
- package/dist/contact-card.d.ts +3 -3
- package/dist/contact-careers.d.cts +3 -3
- package/dist/contact-careers.d.ts +3 -3
- package/dist/contact-catering.d.cts +3 -3
- package/dist/contact-catering.d.ts +3 -3
- package/dist/contact-consultation.d.cts +3 -3
- package/dist/contact-consultation.d.ts +3 -3
- package/dist/contact-dark.d.cts +3 -3
- package/dist/contact-dark.d.ts +3 -3
- package/dist/contact-demo.d.cts +3 -3
- package/dist/contact-demo.d.ts +3 -3
- package/dist/contact-emergency.d.cts +3 -3
- package/dist/contact-emergency.d.ts +3 -3
- package/dist/contact-event.d.cts +3 -3
- package/dist/contact-event.d.ts +3 -3
- package/dist/contact-faq.cjs +49 -544
- package/dist/contact-faq.d.cts +7 -53
- package/dist/contact-faq.d.ts +7 -53
- package/dist/contact-faq.js +49 -544
- package/dist/contact-feedback.d.cts +3 -3
- package/dist/contact-feedback.d.ts +3 -3
- package/dist/contact-fitness.d.cts +3 -3
- package/dist/contact-fitness.d.ts +3 -3
- package/dist/contact-floating-banner.d.cts +3 -3
- package/dist/contact-floating-banner.d.ts +3 -3
- package/dist/contact-guest.d.cts +3 -3
- package/dist/contact-guest.d.ts +3 -3
- package/dist/contact-help-center.d.cts +3 -3
- package/dist/contact-help-center.d.ts +3 -3
- package/dist/contact-image.d.cts +3 -3
- package/dist/contact-image.d.ts +3 -3
- package/dist/contact-insurance.d.cts +3 -3
- package/dist/contact-insurance.d.ts +3 -3
- package/dist/contact-interview.d.cts +3 -3
- package/dist/contact-interview.d.ts +3 -3
- package/dist/contact-locations.d.cts +3 -3
- package/dist/contact-locations.d.ts +3 -3
- package/dist/contact-maintenance.d.cts +3 -3
- package/dist/contact-maintenance.d.ts +3 -3
- package/dist/contact-map.d.cts +3 -3
- package/dist/contact-map.d.ts +3 -3
- package/dist/contact-minimal.d.cts +3 -3
- package/dist/contact-minimal.d.ts +3 -3
- package/dist/contact-moving.d.cts +3 -3
- package/dist/contact-moving.d.ts +3 -3
- package/dist/contact-multistep.d.cts +3 -3
- package/dist/contact-multistep.d.ts +3 -3
- package/dist/contact-partnership.d.cts +3 -3
- package/dist/contact-partnership.d.ts +3 -3
- package/dist/contact-photography.d.cts +3 -3
- package/dist/contact-photography.d.ts +3 -3
- package/dist/contact-press.d.cts +3 -3
- package/dist/contact-press.d.ts +3 -3
- package/dist/contact-quote.d.cts +3 -3
- package/dist/contact-quote.d.ts +3 -3
- package/dist/contact-referral.d.cts +3 -3
- package/dist/contact-referral.d.ts +3 -3
- package/dist/contact-report.d.cts +3 -3
- package/dist/contact-report.d.ts +3 -3
- package/dist/contact-reservation.d.cts +3 -3
- package/dist/contact-reservation.d.ts +3 -3
- package/dist/contact-retreat.d.cts +3 -3
- package/dist/contact-retreat.d.ts +3 -3
- package/dist/contact-rsvp.d.cts +3 -3
- package/dist/contact-rsvp.d.ts +3 -3
- package/dist/contact-sales.d.cts +3 -3
- package/dist/contact-sales.d.ts +3 -3
- package/dist/contact-schedule.d.cts +3 -3
- package/dist/contact-schedule.d.ts +3 -3
- package/dist/contact-sponsorship.d.cts +3 -3
- package/dist/contact-sponsorship.d.ts +3 -3
- package/dist/contact-support.d.cts +3 -3
- package/dist/contact-support.d.ts +3 -3
- package/dist/contact-tenant.d.cts +3 -3
- package/dist/contact-tenant.d.ts +3 -3
- package/dist/contact-vendor.cjs +41 -546
- package/dist/contact-vendor.d.cts +9 -39
- package/dist/contact-vendor.d.ts +9 -39
- package/dist/contact-vendor.js +43 -548
- package/dist/contact-volunteer.d.cts +3 -3
- package/dist/contact-volunteer.d.ts +3 -3
- package/dist/contact-warranty.d.cts +3 -3
- package/dist/contact-warranty.d.ts +3 -3
- package/dist/contact-wedding.d.cts +3 -3
- package/dist/contact-wedding.d.ts +3 -3
- package/dist/container.d.cts +3 -3
- package/dist/container.d.ts +3 -3
- package/dist/cta-accent-background.d.cts +3 -3
- package/dist/cta-accent-background.d.ts +3 -3
- package/dist/cta-app-download-newsletter.d.cts +3 -3
- package/dist/cta-app-download-newsletter.d.ts +3 -3
- package/dist/cta-background-icon-badge.d.cts +3 -3
- package/dist/cta-background-icon-badge.d.ts +3 -3
- package/dist/cta-case-study-testimonial.d.cts +3 -3
- package/dist/cta-case-study-testimonial.d.ts +3 -3
- package/dist/cta-documentation-links.d.cts +3 -3
- package/dist/cta-documentation-links.d.ts +3 -3
- package/dist/cta-enterprise-dark-features.d.cts +3 -3
- package/dist/cta-enterprise-dark-features.d.ts +3 -3
- package/dist/cta-enterprise-split.d.cts +3 -3
- package/dist/cta-enterprise-split.d.ts +3 -3
- package/dist/cta-feature-cards-grid.d.cts +3 -3
- package/dist/cta-feature-cards-grid.d.ts +3 -3
- package/dist/cta-feature-checklist.d.cts +3 -3
- package/dist/cta-feature-checklist.d.ts +3 -3
- package/dist/cta-feature-list.d.cts +3 -3
- package/dist/cta-feature-list.d.ts +3 -3
- package/dist/cta-fullwidth-background.d.cts +3 -3
- package/dist/cta-fullwidth-background.d.ts +3 -3
- package/dist/cta-gradient-logos-floating.d.cts +3 -3
- package/dist/cta-gradient-logos-floating.d.ts +3 -3
- package/dist/cta-gradient-stats-hero.d.cts +3 -3
- package/dist/cta-gradient-stats-hero.d.ts +3 -3
- package/dist/cta-hero-feature-cards.d.cts +3 -3
- package/dist/cta-hero-feature-cards.d.ts +3 -3
- package/dist/cta-image-overlay-arrow.d.cts +3 -3
- package/dist/cta-image-overlay-arrow.d.ts +3 -3
- package/dist/cta-image-overlay-centered.d.cts +3 -3
- package/dist/cta-image-overlay-centered.d.ts +3 -3
- package/dist/cta-minimal-separator.d.cts +3 -3
- package/dist/cta-minimal-separator.d.ts +3 -3
- package/dist/cta-newsletter-features.d.cts +3 -3
- package/dist/cta-newsletter-features.d.ts +3 -3
- package/dist/cta-pattern-background.d.cts +3 -3
- package/dist/cta-pattern-background.d.ts +3 -3
- package/dist/cta-platform-demo.d.cts +3 -3
- package/dist/cta-platform-demo.d.ts +3 -3
- package/dist/cta-simple-centered.d.cts +3 -3
- package/dist/cta-simple-centered.d.ts +3 -3
- package/dist/cta-split-gradient-image.d.cts +3 -3
- package/dist/cta-split-gradient-image.d.ts +3 -3
- package/dist/cta-split-image-logos.d.cts +3 -3
- package/dist/cta-split-image-logos.d.ts +3 -3
- package/dist/cta-split-image.d.cts +3 -3
- package/dist/cta-split-image.d.ts +3 -3
- package/dist/cta-stacked-cards.d.cts +3 -3
- package/dist/cta-stacked-cards.d.ts +3 -3
- package/dist/cta-video-background-hero.d.cts +3 -3
- package/dist/cta-video-background-hero.d.ts +3 -3
- package/dist/cta-workflow-tabs.d.cts +3 -3
- package/dist/cta-workflow-tabs.d.ts +3 -3
- package/dist/expandable-case-study-cards.d.cts +3 -3
- package/dist/expandable-case-study-cards.d.ts +3 -3
- package/dist/faq-badge-support.d.cts +3 -3
- package/dist/faq-badge-support.d.ts +3 -3
- package/dist/faq-bordered-badge.d.cts +3 -3
- package/dist/faq-bordered-badge.d.ts +3 -3
- package/dist/faq-card-categories.d.cts +3 -3
- package/dist/faq-card-categories.d.ts +3 -3
- package/dist/faq-categorized-sections.d.cts +3 -3
- package/dist/faq-categorized-sections.d.ts +3 -3
- package/dist/faq-centered-accordion.d.cts +3 -3
- package/dist/faq-centered-accordion.d.ts +3 -3
- package/dist/faq-gradient-categories.d.cts +3 -3
- package/dist/faq-gradient-categories.d.ts +3 -3
- package/dist/faq-icon-benefits.d.cts +3 -3
- package/dist/faq-icon-benefits.d.ts +3 -3
- package/dist/faq-muted-cards.d.cts +3 -3
- package/dist/faq-muted-cards.d.ts +3 -3
- package/dist/faq-numbered-grid.d.cts +3 -3
- package/dist/faq-numbered-grid.d.ts +3 -3
- package/dist/faq-numbered-list.d.cts +3 -3
- package/dist/faq-numbered-list.d.ts +3 -3
- package/dist/faq-profile-sidebar.d.cts +3 -3
- package/dist/faq-profile-sidebar.d.ts +3 -3
- package/dist/faq-rounded-cards.d.cts +3 -3
- package/dist/faq-rounded-cards.d.ts +3 -3
- package/dist/faq-sidebar-navigation.d.cts +3 -3
- package/dist/faq-sidebar-navigation.d.ts +3 -3
- package/dist/faq-simple-accordion.d.cts +3 -3
- package/dist/faq-simple-accordion.d.ts +3 -3
- package/dist/faq-split-help.d.cts +3 -3
- package/dist/faq-split-help.d.ts +3 -3
- package/dist/faq-split-hero.d.cts +3 -3
- package/dist/faq-split-hero.d.ts +3 -3
- package/dist/faq-static-list.d.cts +3 -3
- package/dist/faq-static-list.d.ts +3 -3
- package/dist/feature-accordion-image.d.cts +3 -3
- package/dist/feature-accordion-image.d.ts +3 -3
- package/dist/feature-animated-carousel.d.cts +3 -3
- package/dist/feature-animated-carousel.d.ts +3 -3
- package/dist/feature-badge-grid-six.d.cts +3 -3
- package/dist/feature-badge-grid-six.d.ts +3 -3
- package/dist/feature-bento-image-grid.d.cts +3 -3
- package/dist/feature-bento-image-grid.d.ts +3 -3
- package/dist/feature-bento-utilities.d.cts +3 -3
- package/dist/feature-bento-utilities.d.ts +3 -3
- package/dist/feature-capabilities-grid.d.cts +3 -3
- package/dist/feature-capabilities-grid.d.ts +3 -3
- package/dist/feature-card-grid-linked.d.cts +3 -3
- package/dist/feature-card-grid-linked.d.ts +3 -3
- package/dist/feature-carousel-progress.d.cts +3 -3
- package/dist/feature-carousel-progress.d.ts +3 -3
- package/dist/feature-category-image-cards.d.cts +3 -3
- package/dist/feature-category-image-cards.d.ts +3 -3
- package/dist/feature-checklist-image.d.cts +3 -3
- package/dist/feature-checklist-image.d.ts +3 -3
- package/dist/feature-checklist-three-column.d.cts +3 -3
- package/dist/feature-checklist-three-column.d.ts +3 -3
- package/dist/feature-icon-grid-accent.d.cts +3 -3
- package/dist/feature-icon-grid-accent.d.ts +3 -3
- package/dist/feature-icon-grid-bordered.d.cts +3 -3
- package/dist/feature-icon-grid-bordered.d.ts +3 -3
- package/dist/feature-icon-grid-muted.d.cts +3 -3
- package/dist/feature-icon-grid-muted.d.ts +3 -3
- package/dist/feature-icon-tabs-content.d.cts +3 -3
- package/dist/feature-icon-tabs-content.d.ts +3 -3
- package/dist/feature-image-cards-three-column.d.cts +3 -3
- package/dist/feature-image-cards-three-column.d.ts +3 -3
- package/dist/feature-image-overlay-badge.d.cts +3 -3
- package/dist/feature-image-overlay-badge.d.ts +3 -3
- package/dist/feature-integration-cards.d.cts +3 -3
- package/dist/feature-integration-cards.d.ts +3 -3
- package/dist/feature-numbered-cards.d.cts +3 -3
- package/dist/feature-numbered-cards.d.ts +3 -3
- package/dist/feature-pattern-grid-links.d.cts +3 -3
- package/dist/feature-pattern-grid-links.d.ts +3 -3
- package/dist/feature-showcase.d.cts +4 -4
- package/dist/feature-showcase.d.ts +4 -4
- package/dist/feature-split-image-reverse.d.cts +3 -3
- package/dist/feature-split-image-reverse.d.ts +3 -3
- package/dist/feature-split-image.d.cts +3 -3
- package/dist/feature-split-image.d.ts +3 -3
- package/dist/feature-stats-highlight.d.cts +3 -3
- package/dist/feature-stats-highlight.d.ts +3 -3
- package/dist/feature-tabbed-content-image.d.cts +3 -3
- package/dist/feature-tabbed-content-image.d.ts +3 -3
- package/dist/feature-three-column-values.d.cts +3 -3
- package/dist/feature-three-column-values.d.ts +3 -3
- package/dist/feature-utility-cards-grid.d.cts +3 -3
- package/dist/feature-utility-cards-grid.d.ts +3 -3
- package/dist/footer-accordion-social.d.cts +3 -3
- package/dist/footer-accordion-social.d.ts +3 -3
- package/dist/footer-animated-social.d.cts +3 -3
- package/dist/footer-animated-social.d.ts +3 -3
- package/dist/footer-background-card.d.cts +3 -3
- package/dist/footer-background-card.d.ts +3 -3
- package/dist/footer-brand-description.d.cts +3 -3
- package/dist/footer-brand-description.d.ts +3 -3
- package/dist/footer-brand-links-contact.d.cts +3 -3
- package/dist/footer-brand-links-contact.d.ts +3 -3
- package/dist/footer-comprehensive-links.d.cts +3 -3
- package/dist/footer-comprehensive-links.d.ts +3 -3
- package/dist/footer-contact-card.d.cts +3 -3
- package/dist/footer-contact-card.d.ts +3 -3
- package/dist/footer-cta-banner.d.cts +3 -3
- package/dist/footer-cta-banner.d.ts +3 -3
- package/dist/footer-cta-social.d.cts +3 -3
- package/dist/footer-cta-social.d.ts +3 -3
- package/dist/footer-info-cards-accordion.d.cts +3 -3
- package/dist/footer-info-cards-accordion.d.ts +3 -3
- package/dist/footer-links-grid.d.cts +3 -3
- package/dist/footer-links-grid.d.ts +3 -3
- package/dist/footer-nav-social.d.cts +3 -3
- package/dist/footer-nav-social.d.ts +3 -3
- package/dist/footer-newsletter-contact.d.cts +3 -3
- package/dist/footer-newsletter-contact.d.ts +3 -3
- package/dist/footer-newsletter-grid.d.cts +3 -3
- package/dist/footer-newsletter-grid.d.ts +3 -3
- package/dist/footer-newsletter-minimal.d.cts +3 -3
- package/dist/footer-newsletter-minimal.d.ts +3 -3
- package/dist/footer-simple-centered.d.cts +3 -3
- package/dist/footer-simple-centered.d.ts +3 -3
- package/dist/footer-social-apps.d.cts +3 -3
- package/dist/footer-social-apps.d.ts +3 -3
- package/dist/footer-social-newsletter.d.cts +3 -3
- package/dist/footer-social-newsletter.d.ts +3 -3
- package/dist/footer-split-image-accordion.d.cts +3 -3
- package/dist/footer-split-image-accordion.d.ts +3 -3
- package/dist/hero-ad-campaign-expert.d.cts +3 -3
- package/dist/hero-ad-campaign-expert.d.ts +3 -3
- package/dist/hero-adaptable-product-grid.d.cts +3 -3
- package/dist/hero-adaptable-product-grid.d.ts +3 -3
- package/dist/hero-agency-animated-images.d.cts +3 -3
- package/dist/hero-agency-animated-images.d.ts +3 -3
- package/dist/hero-ai-powered-carousel.d.cts +3 -3
- package/dist/hero-ai-powered-carousel.d.ts +3 -3
- package/dist/hero-announcement-badge.d.cts +3 -3
- package/dist/hero-announcement-badge.d.ts +3 -3
- package/dist/hero-architecture-fullscreen.d.cts +3 -3
- package/dist/hero-architecture-fullscreen.d.ts +3 -3
- package/dist/hero-badge-image-split.d.cts +3 -3
- package/dist/hero-badge-image-split.d.ts +3 -3
- package/dist/hero-badge-shadow-overlay.d.cts +3 -3
- package/dist/hero-badge-shadow-overlay.d.ts +3 -3
- package/dist/hero-billing-platform-logos.d.cts +3 -3
- package/dist/hero-billing-platform-logos.d.ts +3 -3
- package/dist/hero-business-carousel-dots.d.cts +3 -3
- package/dist/hero-business-carousel-dots.d.ts +3 -3
- package/dist/hero-business-operations-mosaic.d.cts +3 -3
- package/dist/hero-business-operations-mosaic.d.ts +3 -3
- package/dist/hero-centered-gradient-cta.d.cts +3 -3
- package/dist/hero-centered-gradient-cta.d.ts +3 -3
- package/dist/hero-centered-image-grid.d.cts +3 -3
- package/dist/hero-centered-image-grid.d.ts +3 -3
- package/dist/hero-centered-screenshot.d.cts +3 -3
- package/dist/hero-centered-screenshot.d.ts +3 -3
- package/dist/hero-coming-soon-countdown.d.cts +3 -3
- package/dist/hero-coming-soon-countdown.d.ts +3 -3
- package/dist/hero-community-survey-cta.d.cts +3 -3
- package/dist/hero-community-survey-cta.d.ts +3 -3
- package/dist/hero-conversation-intelligence.d.cts +3 -3
- package/dist/hero-conversation-intelligence.d.ts +3 -3
- package/dist/hero-conversion-video-play.d.cts +3 -3
- package/dist/hero-conversion-video-play.d.ts +3 -3
- package/dist/hero-creative-studio-stacked.d.cts +4 -4
- package/dist/hero-creative-studio-stacked.d.ts +4 -4
- package/dist/hero-crm-streamlined.d.cts +3 -3
- package/dist/hero-crm-streamlined.d.ts +3 -3
- package/dist/hero-customer-support-layered.d.cts +3 -3
- package/dist/hero-customer-support-layered.d.ts +3 -3
- package/dist/hero-dashed-border-features.d.cts +3 -3
- package/dist/hero-dashed-border-features.d.ts +3 -3
- package/dist/hero-design-carousel-portfolio.d.cts +3 -3
- package/dist/hero-design-carousel-portfolio.d.ts +3 -3
- package/dist/hero-design-showcase-logos.d.cts +3 -3
- package/dist/hero-design-showcase-logos.d.ts +3 -3
- package/dist/hero-design-system-3d.d.cts +3 -3
- package/dist/hero-design-system-3d.d.ts +3 -3
- package/dist/hero-developer-tools-code.d.cts +3 -3
- package/dist/hero-developer-tools-code.d.ts +3 -3
- package/dist/hero-digital-agency-fullscreen.d.cts +3 -3
- package/dist/hero-digital-agency-fullscreen.d.ts +3 -3
- package/dist/hero-ecommerce-product-showcase.d.cts +3 -3
- package/dist/hero-ecommerce-product-showcase.d.ts +3 -3
- package/dist/hero-enterprise-security.d.cts +3 -3
- package/dist/hero-enterprise-security.d.ts +3 -3
- package/dist/hero-event-registration.d.cts +3 -3
- package/dist/hero-event-registration.d.ts +3 -3
- package/dist/hero-feature-cards-grid.d.cts +3 -3
- package/dist/hero-feature-cards-grid.d.ts +3 -3
- package/dist/hero-floating-images.d.cts +3 -3
- package/dist/hero-floating-images.d.ts +3 -3
- package/dist/hero-fullscreen-background-image.d.cts +3 -3
- package/dist/hero-fullscreen-background-image.d.ts +3 -3
- package/dist/hero-fullscreen-logo-cta.d.cts +3 -3
- package/dist/hero-fullscreen-logo-cta.d.ts +3 -3
- package/dist/hero-gradient-avatars-rating.d.cts +3 -3
- package/dist/hero-gradient-avatars-rating.d.ts +3 -3
- package/dist/hero-gradient-client-focused.d.cts +3 -3
- package/dist/hero-gradient-client-focused.d.ts +3 -3
- package/dist/hero-grid-pattern-efficiency.d.cts +3 -3
- package/dist/hero-grid-pattern-efficiency.d.ts +3 -3
- package/dist/hero-grid-pattern-solutions.d.cts +3 -3
- package/dist/hero-grid-pattern-solutions.d.ts +3 -3
- package/dist/hero-hiring-animated-text.d.cts +3 -3
- package/dist/hero-hiring-animated-text.d.ts +3 -3
- package/dist/hero-image-left-content.d.cts +3 -3
- package/dist/hero-image-left-content.d.ts +3 -3
- package/dist/hero-image-slider.d.cts +3 -3
- package/dist/hero-image-slider.d.ts +3 -3
- package/dist/hero-innovation-image-grid.d.cts +3 -3
- package/dist/hero-innovation-image-grid.d.ts +3 -3
- package/dist/hero-logo-centered-screenshot.d.cts +3 -3
- package/dist/hero-logo-centered-screenshot.d.ts +3 -3
- package/dist/hero-marketplace-scattered-images.d.cts +3 -3
- package/dist/hero-marketplace-scattered-images.d.ts +3 -3
- package/dist/hero-mental-health-team.d.cts +3 -3
- package/dist/hero-mental-health-team.d.ts +3 -3
- package/dist/hero-mentorship-video-split.d.cts +3 -3
- package/dist/hero-mentorship-video-split.d.ts +3 -3
- package/dist/hero-minimal-centered-dark.d.cts +3 -3
- package/dist/hero-minimal-centered-dark.d.ts +3 -3
- package/dist/hero-mobile-app-download.d.cts +3 -3
- package/dist/hero-mobile-app-download.d.ts +3 -3
- package/dist/hero-newsletter-minimal.cjs +100 -571
- package/dist/hero-newsletter-minimal.d.cts +7 -27
- package/dist/hero-newsletter-minimal.d.ts +7 -27
- package/dist/hero-newsletter-minimal.js +102 -573
- package/dist/hero-overlay-cta-grid.d.cts +3 -3
- package/dist/hero-overlay-cta-grid.d.ts +3 -3
- package/dist/hero-pattern-badge-logos.d.cts +3 -3
- package/dist/hero-pattern-badge-logos.d.ts +3 -3
- package/dist/hero-pattern-logo-tech-stack.d.cts +3 -3
- package/dist/hero-pattern-logo-tech-stack.d.ts +3 -3
- package/dist/hero-platform-features-grid.d.cts +3 -3
- package/dist/hero-platform-features-grid.d.ts +3 -3
- package/dist/hero-portfolio-creative.d.cts +3 -3
- package/dist/hero-portfolio-creative.d.ts +3 -3
- package/dist/hero-premium-split-avatars.d.cts +3 -3
- package/dist/hero-premium-split-avatars.d.ts +3 -3
- package/dist/hero-presentation-platform-video.d.cts +3 -3
- package/dist/hero-presentation-platform-video.d.ts +3 -3
- package/dist/hero-pricing-comparison.d.cts +3 -3
- package/dist/hero-pricing-comparison.d.ts +3 -3
- package/dist/hero-product-showcase-floating.d.cts +3 -3
- package/dist/hero-product-showcase-floating.d.ts +3 -3
- package/dist/hero-productivity-launcher-video.d.cts +3 -3
- package/dist/hero-productivity-launcher-video.d.ts +3 -3
- package/dist/hero-saas-dashboard-preview.cjs +38 -38
- package/dist/hero-saas-dashboard-preview.d.cts +3 -3
- package/dist/hero-saas-dashboard-preview.d.ts +3 -3
- package/dist/hero-saas-dashboard-preview.js +38 -38
- package/dist/hero-shared-inbox-layered.d.cts +3 -3
- package/dist/hero-shared-inbox-layered.d.ts +3 -3
- package/dist/hero-simple-centered-image.d.cts +3 -3
- package/dist/hero-simple-centered-image.d.ts +3 -3
- package/dist/hero-software-growth-video-dialog.d.cts +3 -3
- package/dist/hero-software-growth-video-dialog.d.ts +3 -3
- package/dist/hero-spiral-pattern-cards.d.cts +3 -3
- package/dist/hero-spiral-pattern-cards.d.ts +3 -3
- package/dist/hero-split-geometric-shapes.d.cts +3 -3
- package/dist/hero-split-geometric-shapes.d.ts +3 -3
- package/dist/hero-split-icon-cards.d.cts +3 -3
- package/dist/hero-split-icon-cards.d.ts +3 -3
- package/dist/hero-split-image-newsletter.d.cts +3 -3
- package/dist/hero-split-image-newsletter.d.ts +3 -3
- package/dist/hero-split-spiral-shapes.d.cts +3 -3
- package/dist/hero-split-spiral-shapes.d.ts +3 -3
- package/dist/hero-startup-launch-cta.d.cts +3 -3
- package/dist/hero-startup-launch-cta.d.ts +3 -3
- package/dist/hero-stats-social-proof.d.cts +3 -3
- package/dist/hero-stats-social-proof.d.ts +3 -3
- package/dist/hero-task-timer-animated.d.cts +3 -3
- package/dist/hero-task-timer-animated.d.ts +3 -3
- package/dist/hero-tech-carousel.d.cts +3 -3
- package/dist/hero-tech-carousel.d.ts +3 -3
- package/dist/hero-testimonial-image-grid.d.cts +3 -3
- package/dist/hero-testimonial-image-grid.d.ts +3 -3
- package/dist/hero-therapy-testimonial-grid.d.cts +3 -3
- package/dist/hero-therapy-testimonial-grid.d.ts +3 -3
- package/dist/hero-ui-library-showcase.d.cts +3 -3
- package/dist/hero-ui-library-showcase.d.ts +3 -3
- package/dist/hero-video-background-dark.d.cts +3 -3
- package/dist/hero-video-background-dark.d.ts +3 -3
- package/dist/{hero-video-dialog-gradient-B__37IMI.d.ts → hero-video-dialog-gradient-DMaEfOfw.d.ts} +2 -2
- package/dist/{hero-video-dialog-gradient-6epEKovM.d.cts → hero-video-dialog-gradient-Si7mukH7.d.cts} +2 -2
- package/dist/hero-video-dialog-gradient.d.cts +4 -4
- package/dist/hero-video-dialog-gradient.d.ts +4 -4
- package/dist/hero-video-overlay-stars.d.cts +3 -3
- package/dist/hero-video-overlay-stars.d.ts +3 -3
- package/dist/hero-welcome-asymmetric-images.d.cts +3 -3
- package/dist/hero-welcome-asymmetric-images.d.ts +3 -3
- package/dist/image-slider.d.cts +2 -2
- package/dist/image-slider.d.ts +2 -2
- package/dist/index.d.cts +3 -3
- package/dist/index.d.ts +3 -3
- package/dist/industries-badge-list-bordered.d.cts +3 -3
- package/dist/industries-badge-list-bordered.d.ts +3 -3
- package/dist/industries-expandable-showcase.d.cts +3 -3
- package/dist/industries-expandable-showcase.d.ts +3 -3
- package/dist/industries-hover-reveal-grid.d.cts +3 -3
- package/dist/industries-hover-reveal-grid.d.ts +3 -3
- package/dist/industries-timeline-table.d.cts +3 -3
- package/dist/industries-timeline-table.d.ts +3 -3
- package/dist/interior-carousel.d.cts +3 -3
- package/dist/interior-carousel.d.ts +3 -3
- package/dist/link-page-bento-layout.d.cts +3 -3
- package/dist/link-page-bento-layout.d.ts +3 -3
- package/dist/link-page-grid-cards.d.cts +3 -3
- package/dist/link-page-grid-cards.d.ts +3 -3
- package/dist/link-page-minimal-profile.d.cts +3 -3
- package/dist/link-page-minimal-profile.d.ts +3 -3
- package/dist/link-page-newsletter-social.d.cts +3 -3
- package/dist/link-page-newsletter-social.d.ts +3 -3
- package/dist/link-tree-block.d.cts +3 -3
- package/dist/link-tree-block.d.ts +3 -3
- package/dist/list-achievements-showcase.d.cts +3 -3
- package/dist/list-achievements-showcase.d.ts +3 -3
- package/dist/list-career-timeline.d.cts +3 -3
- package/dist/list-career-timeline.d.ts +3 -3
- package/dist/list-feature-comparison.d.cts +3 -3
- package/dist/list-feature-comparison.d.ts +3 -3
- package/dist/list-metrics-dashboard.d.cts +3 -3
- package/dist/list-metrics-dashboard.d.ts +3 -3
- package/dist/list-searchable-grid.d.cts +3 -3
- package/dist/list-searchable-grid.d.ts +3 -3
- package/dist/list-service-category-table.d.cts +3 -3
- package/dist/list-service-category-table.d.ts +3 -3
- package/dist/logos-carousel-heading.d.cts +3 -3
- package/dist/logos-carousel-heading.d.ts +3 -3
- package/dist/logos-centered-simple.d.cts +3 -3
- package/dist/logos-centered-simple.d.ts +3 -3
- package/dist/logos-certifications-grid.d.cts +3 -3
- package/dist/logos-certifications-grid.d.ts +3 -3
- package/dist/logos-double-carousel-pattern.d.cts +3 -3
- package/dist/logos-double-carousel-pattern.d.ts +3 -3
- package/dist/logos-inline-tagline.d.cts +3 -3
- package/dist/logos-inline-tagline.d.ts +3 -3
- package/dist/logos-marquee-muted.d.cts +3 -3
- package/dist/logos-marquee-muted.d.ts +3 -3
- package/dist/logos-minimal-carousel.d.cts +3 -3
- package/dist/logos-minimal-carousel.d.ts +3 -3
- package/dist/logos-numbered-carousel.d.cts +3 -3
- package/dist/logos-numbered-carousel.d.ts +3 -3
- package/dist/logos-partner-grid-sidebar.d.cts +3 -3
- package/dist/logos-partner-grid-sidebar.d.ts +3 -3
- package/dist/logos-partner-network.d.cts +3 -3
- package/dist/logos-partner-network.d.ts +3 -3
- package/dist/logos-two-row-grid.d.cts +3 -3
- package/dist/logos-two-row-grid.d.ts +3 -3
- package/dist/masonry-motion-grid.d.cts +3 -3
- package/dist/masonry-motion-grid.d.ts +3 -3
- package/dist/media-hover-ctas.d.cts +3 -3
- package/dist/media-hover-ctas.d.ts +3 -3
- package/dist/navbar-animated-preview.d.cts +3 -3
- package/dist/navbar-animated-preview.d.ts +3 -3
- package/dist/navbar-centered-menu.d.cts +3 -3
- package/dist/navbar-centered-menu.d.ts +3 -3
- package/dist/navbar-dark-icons.d.cts +3 -3
- package/dist/navbar-dark-icons.d.ts +3 -3
- package/dist/navbar-dropdown-menu.d.cts +3 -3
- package/dist/navbar-dropdown-menu.d.ts +3 -3
- package/dist/navbar-education-platform.d.cts +3 -3
- package/dist/navbar-education-platform.d.ts +3 -3
- package/dist/navbar-enterprise-mega.d.cts +3 -3
- package/dist/navbar-enterprise-mega.d.ts +3 -3
- package/dist/navbar-feature-grid.d.cts +3 -3
- package/dist/navbar-feature-grid.d.ts +3 -3
- package/dist/navbar-floating-pill.d.cts +3 -3
- package/dist/navbar-floating-pill.d.ts +3 -3
- package/dist/navbar-fullscreen-menu.d.cts +3 -3
- package/dist/navbar-fullscreen-menu.d.ts +3 -3
- package/dist/navbar-icon-links.d.cts +3 -3
- package/dist/navbar-icon-links.d.ts +3 -3
- package/dist/navbar-image-preview.d.cts +3 -3
- package/dist/navbar-image-preview.d.ts +3 -3
- package/dist/navbar-mega-menu.d.cts +3 -3
- package/dist/navbar-mega-menu.d.ts +3 -3
- package/dist/navbar-multi-column-groups.d.cts +3 -3
- package/dist/navbar-multi-column-groups.d.ts +3 -3
- package/dist/navbar-platform-resources.d.cts +3 -3
- package/dist/navbar-platform-resources.d.ts +3 -3
- package/dist/navbar-search-focused.d.cts +3 -3
- package/dist/navbar-search-focused.d.ts +3 -3
- package/dist/navbar-sidebar-mobile.d.cts +3 -3
- package/dist/navbar-sidebar-mobile.d.ts +3 -3
- package/dist/navbar-simple-links.d.cts +3 -3
- package/dist/navbar-simple-links.d.ts +3 -3
- package/dist/navbar-split-cta.d.cts +3 -3
- package/dist/navbar-split-cta.d.ts +3 -3
- package/dist/navbar-sticky-compact.d.cts +3 -3
- package/dist/navbar-sticky-compact.d.ts +3 -3
- package/dist/navbar-tabbed-sections.d.cts +3 -3
- package/dist/navbar-tabbed-sections.d.ts +3 -3
- package/dist/navbar-transparent-overlay.d.cts +3 -3
- package/dist/navbar-transparent-overlay.d.ts +3 -3
- package/dist/offer-modal-membership-image.d.cts +3 -3
- package/dist/offer-modal-membership-image.d.ts +3 -3
- package/dist/offer-modal-newsletter-discount.d.cts +3 -3
- package/dist/offer-modal-newsletter-discount.d.ts +3 -3
- package/dist/offer-modal-sheet-newsletter.d.cts +3 -3
- package/dist/offer-modal-sheet-newsletter.d.ts +3 -3
- package/dist/page-hero-banner.d.cts +3 -3
- package/dist/page-hero-banner.d.ts +3 -3
- package/dist/pressable.d.cts +2 -2
- package/dist/pressable.d.ts +2 -2
- package/dist/pricing-addons-cards.d.cts +3 -3
- package/dist/pricing-addons-cards.d.ts +3 -3
- package/dist/pricing-addons-featured.d.cts +3 -3
- package/dist/pricing-addons-featured.d.ts +3 -3
- package/dist/pricing-collapsible-plans.d.cts +3 -3
- package/dist/pricing-collapsible-plans.d.ts +3 -3
- package/dist/pricing-columns-toggle.d.cts +3 -3
- package/dist/pricing-columns-toggle.d.ts +3 -3
- package/dist/pricing-comparison-headers.d.cts +3 -3
- package/dist/pricing-comparison-headers.d.ts +3 -3
- package/dist/pricing-comparison-table.d.cts +3 -3
- package/dist/pricing-comparison-table.d.ts +3 -3
- package/dist/pricing-discount-card.d.cts +3 -3
- package/dist/pricing-discount-card.d.ts +3 -3
- package/dist/pricing-enterprise-contact.d.cts +3 -3
- package/dist/pricing-enterprise-contact.d.ts +3 -3
- package/dist/pricing-feature-matrix.d.cts +3 -3
- package/dist/pricing-feature-matrix.d.ts +3 -3
- package/dist/pricing-four-tier-toggle.d.cts +3 -3
- package/dist/pricing-four-tier-toggle.d.ts +3 -3
- package/dist/pricing-full-comparison.d.cts +3 -3
- package/dist/pricing-full-comparison.d.ts +3 -3
- package/dist/pricing-gradient-cards.d.cts +3 -3
- package/dist/pricing-gradient-cards.d.ts +3 -3
- package/dist/pricing-icon-headers.d.cts +3 -3
- package/dist/pricing-icon-headers.d.ts +3 -3
- package/dist/pricing-minimal-cards.d.cts +3 -3
- package/dist/pricing-minimal-cards.d.ts +3 -3
- package/dist/pricing-packages-radio.d.cts +3 -3
- package/dist/pricing-packages-radio.d.ts +3 -3
- package/dist/pricing-popular-highlight.d.cts +3 -3
- package/dist/pricing-popular-highlight.d.ts +3 -3
- package/dist/pricing-radio-toggle.d.cts +3 -3
- package/dist/pricing-radio-toggle.d.ts +3 -3
- package/dist/pricing-responsive-table.d.cts +3 -3
- package/dist/pricing-responsive-table.d.ts +3 -3
- package/dist/pricing-services-cards.d.cts +3 -3
- package/dist/pricing-services-cards.d.ts +3 -3
- package/dist/pricing-simple-card.d.cts +3 -3
- package/dist/pricing-simple-card.d.ts +3 -3
- package/dist/pricing-single-card.d.cts +3 -3
- package/dist/pricing-single-card.d.ts +3 -3
- package/dist/pricing-split-layout.d.cts +3 -3
- package/dist/pricing-split-layout.d.ts +3 -3
- package/dist/pricing-spotlight-card.d.cts +3 -3
- package/dist/pricing-spotlight-card.d.ts +3 -3
- package/dist/pricing-switch-cards.d.cts +3 -3
- package/dist/pricing-switch-cards.d.ts +3 -3
- package/dist/pricing-tabs-toggle.d.cts +3 -3
- package/dist/pricing-tabs-toggle.d.ts +3 -3
- package/dist/pricing-tier-grid.d.cts +3 -3
- package/dist/pricing-tier-grid.d.ts +3 -3
- package/dist/pricing-toggle-cards.d.cts +3 -3
- package/dist/pricing-toggle-cards.d.ts +3 -3
- package/dist/pricing-toggle-period.d.cts +3 -3
- package/dist/pricing-toggle-period.d.ts +3 -3
- package/dist/pricing-two-column-basic.d.cts +3 -3
- package/dist/pricing-two-column-basic.d.ts +3 -3
- package/dist/process-expandable-timeline.d.cts +3 -3
- package/dist/process-expandable-timeline.d.ts +3 -3
- package/dist/process-hover-cards.d.cts +3 -3
- package/dist/process-hover-cards.d.ts +3 -3
- package/dist/process-icon-timeline.d.cts +3 -3
- package/dist/process-icon-timeline.d.ts +3 -3
- package/dist/process-mission-principles.d.cts +3 -3
- package/dist/process-mission-principles.d.ts +3 -3
- package/dist/process-numbered-services.d.cts +3 -3
- package/dist/process-numbered-services.d.ts +3 -3
- package/dist/process-roadmap-timeline.d.cts +3 -3
- package/dist/process-roadmap-timeline.d.ts +3 -3
- package/dist/process-scroll-image.d.cts +3 -3
- package/dist/process-scroll-image.d.ts +3 -3
- package/dist/process-steps-grid.d.cts +3 -3
- package/dist/process-steps-grid.d.ts +3 -3
- package/dist/process-sticky-steps.d.cts +3 -3
- package/dist/process-sticky-steps.d.ts +3 -3
- package/dist/project-alternating-motion.d.cts +3 -3
- package/dist/project-alternating-motion.d.ts +3 -3
- package/dist/project-background-reveal.d.cts +3 -3
- package/dist/project-background-reveal.d.ts +3 -3
- package/dist/project-card-overlay.d.cts +3 -3
- package/dist/project-card-overlay.d.ts +3 -3
- package/dist/project-carousel-cinematic.d.cts +3 -3
- package/dist/project-carousel-cinematic.d.ts +3 -3
- package/dist/project-carousel-detail-cards.d.cts +3 -3
- package/dist/project-carousel-detail-cards.d.ts +3 -3
- package/dist/project-carousel-minimal.d.cts +3 -3
- package/dist/project-carousel-minimal.d.ts +3 -3
- package/dist/project-detail-architecture-carousel.d.cts +3 -3
- package/dist/project-detail-architecture-carousel.d.ts +3 -3
- package/dist/project-detail-card-header.d.cts +3 -3
- package/dist/project-detail-card-header.d.ts +3 -3
- package/dist/project-detail-case-study-prose.d.cts +3 -3
- package/dist/project-detail-case-study-prose.d.ts +3 -3
- package/dist/project-detail-compact-metadata.d.cts +3 -3
- package/dist/project-detail-compact-metadata.d.ts +3 -3
- package/dist/project-detail-exhibition-sidebar.d.cts +3 -3
- package/dist/project-detail-exhibition-sidebar.d.ts +3 -3
- package/dist/project-detail-fashion-editorial.d.cts +3 -3
- package/dist/project-detail-fashion-editorial.d.ts +3 -3
- package/dist/project-detail-fullscreen-hero.d.cts +3 -3
- package/dist/project-detail-fullscreen-hero.d.ts +3 -3
- package/dist/project-detail-grid-gallery.d.cts +3 -3
- package/dist/project-detail-grid-gallery.d.ts +3 -3
- package/dist/project-detail-hero-metadata.d.cts +3 -3
- package/dist/project-detail-hero-metadata.d.ts +3 -3
- package/dist/project-detail-hover-gallery.d.cts +3 -3
- package/dist/project-detail-hover-gallery.d.ts +3 -3
- package/dist/project-detail-large-hero-featured.d.cts +3 -3
- package/dist/project-detail-large-hero-featured.d.ts +3 -3
- package/dist/project-detail-list-related.d.cts +3 -3
- package/dist/project-detail-list-related.d.ts +3 -3
- package/dist/project-detail-mask-reveal.d.cts +3 -3
- package/dist/project-detail-mask-reveal.d.ts +3 -3
- package/dist/project-detail-minimal-centered.d.cts +3 -3
- package/dist/project-detail-minimal-centered.d.ts +3 -3
- package/dist/project-detail-numbered-sections.d.cts +3 -3
- package/dist/project-detail-numbered-sections.d.ts +3 -3
- package/dist/project-detail-parallax-scroll.d.cts +3 -3
- package/dist/project-detail-parallax-scroll.d.ts +3 -3
- package/dist/project-detail-photography-breadcrumb.d.cts +3 -3
- package/dist/project-detail-photography-breadcrumb.d.ts +3 -3
- package/dist/project-detail-sculpture-showcase.d.cts +3 -3
- package/dist/project-detail-sculpture-showcase.d.ts +3 -3
- package/dist/project-detail-sidebar-navigation.d.cts +3 -3
- package/dist/project-detail-sidebar-navigation.d.ts +3 -3
- package/dist/project-detail-sidebar-sticky.d.cts +3 -3
- package/dist/project-detail-sidebar-sticky.d.ts +3 -3
- package/dist/project-detail-split-materials.d.cts +3 -3
- package/dist/project-detail-split-materials.d.ts +3 -3
- package/dist/project-detail-tabbed-case-study.d.cts +3 -3
- package/dist/project-detail-tabbed-case-study.d.ts +3 -3
- package/dist/project-experience-quote.d.cts +3 -3
- package/dist/project-experience-quote.d.ts +3 -3
- package/dist/project-featured-carousel.d.cts +3 -3
- package/dist/project-featured-carousel.d.ts +3 -3
- package/dist/project-filterable-gallery.d.cts +3 -3
- package/dist/project-filterable-gallery.d.ts +3 -3
- package/dist/project-filterable-three-column.d.cts +3 -3
- package/dist/project-filterable-three-column.d.ts +3 -3
- package/dist/project-grid-gallery.d.cts +3 -3
- package/dist/project-grid-gallery.d.ts +3 -3
- package/dist/project-grid-motion.d.cts +3 -3
- package/dist/project-grid-motion.d.ts +3 -3
- package/dist/project-horizontal-cards.d.cts +3 -3
- package/dist/project-horizontal-cards.d.ts +3 -3
- package/dist/project-hover-reveal-grid.d.cts +3 -3
- package/dist/project-hover-reveal-grid.d.ts +3 -3
- package/dist/project-interactive-hover-reveal.d.cts +3 -3
- package/dist/project-interactive-hover-reveal.d.ts +3 -3
- package/dist/project-masonry-columns.d.cts +3 -3
- package/dist/project-masonry-columns.d.ts +3 -3
- package/dist/project-nature-mosaic.d.cts +3 -3
- package/dist/project-nature-mosaic.d.ts +3 -3
- package/dist/project-scroll-reveal.d.cts +3 -3
- package/dist/project-scroll-reveal.d.ts +3 -3
- package/dist/project-showcase-alternating.d.cts +3 -3
- package/dist/project-showcase-alternating.d.ts +3 -3
- package/dist/project-sticky-scroll.d.cts +3 -3
- package/dist/project-sticky-scroll.d.ts +3 -3
- package/dist/project-studio-hover-preview.d.cts +3 -3
- package/dist/project-studio-hover-preview.d.ts +3 -3
- package/dist/project-table-list.d.cts +3 -3
- package/dist/project-table-list.d.ts +3 -3
- package/dist/project-video-carousel.d.cts +3 -3
- package/dist/project-video-carousel.d.ts +3 -3
- package/dist/project-video-hover-bento.d.cts +3 -3
- package/dist/project-video-hover-bento.d.ts +3 -3
- package/dist/project-video-hover-grid.d.cts +3 -3
- package/dist/project-video-hover-grid.d.ts +3 -3
- package/dist/project-video-hover-rounded.d.cts +3 -3
- package/dist/project-video-hover-rounded.d.ts +3 -3
- package/dist/project-video-hover-stack.d.cts +3 -3
- package/dist/project-video-hover-stack.d.ts +3 -3
- package/dist/project-video-hover-two-by-two.d.cts +3 -3
- package/dist/project-video-hover-two-by-two.d.ts +3 -3
- package/dist/project-work-showcase.d.cts +3 -3
- package/dist/project-work-showcase.d.ts +3 -3
- package/dist/project-zigzag-layout.d.cts +3 -3
- package/dist/project-zigzag-layout.d.ts +3 -3
- package/dist/registry.cjs +1874 -2085
- package/dist/registry.js +634 -845
- package/dist/resource-detail-article-hero.d.cts +3 -3
- package/dist/resource-detail-article-hero.d.ts +3 -3
- package/dist/resource-detail-document-sidebar.d.cts +3 -3
- package/dist/resource-detail-document-sidebar.d.ts +3 -3
- package/dist/resource-detail-whitepaper-sidebar.d.cts +3 -3
- package/dist/resource-detail-whitepaper-sidebar.d.ts +3 -3
- package/dist/resource-list-course-cards.d.cts +3 -3
- package/dist/resource-list-course-cards.d.ts +3 -3
- package/dist/resource-list-featured-articles.d.cts +3 -3
- package/dist/resource-list-featured-articles.d.ts +3 -3
- package/dist/resource-list-featured-grid.d.cts +3 -3
- package/dist/resource-list-featured-grid.d.ts +3 -3
- package/dist/resource-list-hero-filter.d.cts +2 -2
- package/dist/resource-list-hero-filter.d.ts +2 -2
- package/dist/resource-list-news-updates.d.cts +3 -3
- package/dist/resource-list-news-updates.d.ts +3 -3
- package/dist/section.d.cts +3 -3
- package/dist/section.d.ts +3 -3
- package/dist/service-detail-centered-expertise.d.cts +3 -3
- package/dist/service-detail-centered-expertise.d.ts +3 -3
- package/dist/service-detail-compact-cards.d.cts +3 -3
- package/dist/service-detail-compact-cards.d.ts +3 -3
- package/dist/service-detail-image-hero.d.cts +3 -3
- package/dist/service-detail-image-hero.d.ts +3 -3
- package/dist/service-detail-prose-minimal.d.cts +3 -3
- package/dist/service-detail-prose-minimal.d.ts +3 -3
- package/dist/service-detail-sidebar-related.d.cts +3 -3
- package/dist/service-detail-sidebar-related.d.ts +3 -3
- package/dist/service-detail-sidebar-stats.d.cts +3 -3
- package/dist/service-detail-sidebar-stats.d.ts +3 -3
- package/dist/service-detail-stats-hero.d.cts +3 -3
- package/dist/service-detail-stats-hero.d.ts +3 -3
- package/dist/service-hover-carousel.d.cts +3 -3
- package/dist/service-hover-carousel.d.ts +3 -3
- package/dist/services-list-accordion-benefits.d.cts +3 -3
- package/dist/services-list-accordion-benefits.d.ts +3 -3
- package/dist/services-list-accordion.d.cts +3 -3
- package/dist/services-list-accordion.d.ts +3 -3
- package/dist/services-list-cards-hover.d.cts +3 -3
- package/dist/services-list-cards-hover.d.ts +3 -3
- package/dist/services-list-category-accordion.d.cts +3 -3
- package/dist/services-list-category-accordion.d.ts +3 -3
- package/dist/services-list-centered-icons.d.cts +3 -3
- package/dist/services-list-centered-icons.d.ts +3 -3
- package/dist/services-list-culture-tabs.d.cts +3 -3
- package/dist/services-list-culture-tabs.d.ts +3 -3
- package/dist/services-list-expandable-cards.d.cts +3 -3
- package/dist/services-list-expandable-cards.d.ts +3 -3
- package/dist/services-list-feature-spotlight.d.cts +3 -3
- package/dist/services-list-feature-spotlight.d.ts +3 -3
- package/dist/services-list-featured-highlight.d.cts +3 -3
- package/dist/services-list-featured-highlight.d.ts +3 -3
- package/dist/services-list-hero-cards.d.cts +3 -3
- package/dist/services-list-hero-cards.d.ts +3 -3
- package/dist/services-list-icon-grid.d.cts +3 -3
- package/dist/services-list-icon-grid.d.ts +3 -3
- package/dist/services-list-image-cards.d.cts +3 -3
- package/dist/services-list-image-cards.d.ts +3 -3
- package/dist/services-list-image-overlay-grid.d.cts +3 -3
- package/dist/services-list-image-overlay-grid.d.ts +3 -3
- package/dist/services-list-masonry.d.cts +3 -3
- package/dist/services-list-masonry.d.ts +3 -3
- package/dist/services-list-methodology-steps.d.cts +3 -3
- package/dist/services-list-methodology-steps.d.ts +3 -3
- package/dist/services-list-minimal-grid.d.cts +3 -3
- package/dist/services-list-minimal-grid.d.ts +3 -3
- package/dist/services-list-muted-cards.d.cts +3 -3
- package/dist/services-list-muted-cards.d.ts +3 -3
- package/dist/services-list-numbered-steps.d.cts +3 -3
- package/dist/services-list-numbered-steps.d.ts +3 -3
- package/dist/services-list-pricing-grid.d.cts +3 -3
- package/dist/services-list-pricing-grid.d.ts +3 -3
- package/dist/services-list-progress-sidebar.d.cts +3 -3
- package/dist/services-list-progress-sidebar.d.ts +3 -3
- package/dist/services-list-split-checklist.d.cts +3 -3
- package/dist/services-list-split-checklist.d.ts +3 -3
- package/dist/services-list-sticky-image.d.cts +3 -3
- package/dist/services-list-sticky-image.d.ts +3 -3
- package/dist/services-list-table-hover.d.cts +3 -3
- package/dist/services-list-table-hover.d.ts +3 -3
- package/dist/services-list-tabs-features.d.cts +3 -3
- package/dist/services-list-tabs-features.d.ts +3 -3
- package/dist/services-list-timeline.d.cts +3 -3
- package/dist/services-list-timeline.d.ts +3 -3
- package/dist/services-list-two-column-grid.d.cts +3 -3
- package/dist/services-list-two-column-grid.d.ts +3 -3
- package/dist/services-list-vertical-tags.d.cts +3 -3
- package/dist/services-list-vertical-tags.d.ts +3 -3
- package/dist/services-list-video-showcase.d.cts +3 -3
- package/dist/services-list-video-showcase.d.ts +3 -3
- package/dist/social-link-icon.d.cts +2 -2
- package/dist/social-link-icon.d.ts +2 -2
- package/dist/stats-animated-counter.d.cts +3 -3
- package/dist/stats-animated-counter.d.ts +3 -3
- package/dist/stats-bar-comparison.d.cts +3 -3
- package/dist/stats-bar-comparison.d.ts +3 -3
- package/dist/stats-card-group.d.cts +3 -3
- package/dist/stats-card-group.d.ts +3 -3
- package/dist/stats-circular-progress.d.cts +3 -3
- package/dist/stats-circular-progress.d.ts +3 -3
- package/dist/stats-growth-timeline.d.cts +3 -3
- package/dist/stats-growth-timeline.d.ts +3 -3
- package/dist/stats-icon-cards.d.cts +3 -3
- package/dist/stats-icon-cards.d.ts +3 -3
- package/dist/stats-impact-grid.d.cts +3 -3
- package/dist/stats-impact-grid.d.ts +3 -3
- package/dist/stats-milestone-sidebar.d.cts +3 -3
- package/dist/stats-milestone-sidebar.d.ts +3 -3
- package/dist/stats-number-ticker.d.cts +3 -3
- package/dist/stats-number-ticker.d.ts +3 -3
- package/dist/stats-primary-secondary.d.cts +3 -3
- package/dist/stats-primary-secondary.d.ts +3 -3
- package/dist/stats-simple-grid.d.cts +3 -3
- package/dist/stats-simple-grid.d.ts +3 -3
- package/dist/stats-timeline-tabs.d.cts +3 -3
- package/dist/stats-timeline-tabs.d.ts +3 -3
- package/dist/team-alternating-bios.d.cts +3 -3
- package/dist/team-alternating-bios.d.ts +3 -3
- package/dist/team-avatar-social.d.cts +3 -3
- package/dist/team-avatar-social.d.ts +3 -3
- package/dist/team-bio-badges.d.cts +3 -3
- package/dist/team-bio-badges.d.ts +3 -3
- package/dist/team-carousel-experience.d.cts +3 -3
- package/dist/team-carousel-experience.d.ts +3 -3
- package/dist/team-compact-cta.d.cts +3 -3
- package/dist/team-compact-cta.d.ts +3 -3
- package/dist/team-compact-grid.d.cts +3 -3
- package/dist/team-compact-grid.d.ts +3 -3
- package/dist/team-contact-cards.d.cts +3 -3
- package/dist/team-contact-cards.d.ts +3 -3
- package/dist/team-department-sections.d.cts +3 -3
- package/dist/team-department-sections.d.ts +3 -3
- package/dist/team-expertise-cards.d.cts +3 -3
- package/dist/team-expertise-cards.d.ts +3 -3
- package/dist/team-filterable-search.d.cts +3 -3
- package/dist/team-filterable-search.d.ts +3 -3
- package/dist/team-gradient-cards.d.cts +3 -3
- package/dist/team-gradient-cards.d.ts +3 -3
- package/dist/team-grid-animated.d.cts +3 -3
- package/dist/team-grid-animated.d.ts +3 -3
- package/dist/team-hover-highlight.d.cts +3 -3
- package/dist/team-hover-highlight.d.ts +3 -3
- package/dist/team-hover-overlay.d.cts +3 -3
- package/dist/team-hover-overlay.d.ts +3 -3
- package/dist/team-investor-showcase.d.cts +3 -3
- package/dist/team-investor-showcase.d.ts +3 -3
- package/dist/team-large-images.d.cts +3 -3
- package/dist/team-large-images.d.ts +3 -3
- package/dist/team-media-showcase.d.cts +3 -3
- package/dist/team-media-showcase.d.ts +3 -3
- package/dist/team-role-filter.d.cts +3 -3
- package/dist/team-role-filter.d.ts +3 -3
- package/dist/team-simple-grid.d.cts +3 -3
- package/dist/team-simple-grid.d.ts +3 -3
- package/dist/team-skill-badges.d.cts +3 -3
- package/dist/team-skill-badges.d.ts +3 -3
- package/dist/team-social-cards.d.cts +3 -3
- package/dist/team-social-cards.d.ts +3 -3
- package/dist/team-social-grid.d.cts +3 -3
- package/dist/team-social-grid.d.ts +3 -3
- package/dist/team-testimonial-stats.d.cts +3 -3
- package/dist/team-testimonial-stats.d.ts +3 -3
- package/dist/testimonial-carousel-cards.d.cts +3 -3
- package/dist/testimonial-carousel-cards.d.ts +3 -3
- package/dist/testimonials-animated-split.d.cts +3 -3
- package/dist/testimonials-animated-split.d.ts +3 -3
- package/dist/testimonials-bento-grid.d.cts +3 -3
- package/dist/testimonials-bento-grid.d.ts +3 -3
- package/dist/testimonials-carousel-image.d.cts +3 -3
- package/dist/testimonials-carousel-image.d.ts +3 -3
- package/dist/testimonials-centered-avatars.d.cts +3 -3
- package/dist/testimonials-centered-avatars.d.ts +3 -3
- package/dist/testimonials-company-logo.d.cts +3 -3
- package/dist/testimonials-company-logo.d.ts +3 -3
- package/dist/testimonials-grid-add-review.d.cts +3 -3
- package/dist/testimonials-grid-add-review.d.ts +3 -3
- package/dist/testimonials-images-helpful.d.cts +3 -3
- package/dist/testimonials-images-helpful.d.ts +3 -3
- package/dist/testimonials-large-quote.d.cts +3 -3
- package/dist/testimonials-large-quote.d.ts +3 -3
- package/dist/testimonials-list-verified.d.cts +3 -3
- package/dist/testimonials-list-verified.d.ts +3 -3
- package/dist/testimonials-logo-cards.d.cts +3 -3
- package/dist/testimonials-logo-cards.d.ts +3 -3
- package/dist/testimonials-marquee.d.cts +3 -3
- package/dist/testimonials-marquee.d.ts +3 -3
- package/dist/testimonials-masonry-grid.d.cts +3 -3
- package/dist/testimonials-masonry-grid.d.ts +3 -3
- package/dist/testimonials-mini-dividers.d.cts +3 -3
- package/dist/testimonials-mini-dividers.d.ts +3 -3
- package/dist/testimonials-minimal-numbered.d.cts +3 -3
- package/dist/testimonials-minimal-numbered.d.ts +3 -3
- package/dist/testimonials-parallax-number.d.cts +3 -3
- package/dist/testimonials-parallax-number.d.ts +3 -3
- package/dist/testimonials-quote-carousel.d.cts +3 -3
- package/dist/testimonials-quote-carousel.d.ts +3 -3
- package/dist/testimonials-scrolling-columns.d.cts +3 -3
- package/dist/testimonials-scrolling-columns.d.ts +3 -3
- package/dist/testimonials-simple-grid.d.cts +3 -3
- package/dist/testimonials-simple-grid.d.ts +3 -3
- package/dist/testimonials-slider-minimal.d.cts +3 -3
- package/dist/testimonials-slider-minimal.d.ts +3 -3
- package/dist/testimonials-split-image.d.cts +3 -3
- package/dist/testimonials-split-image.d.ts +3 -3
- package/dist/testimonials-stats-header.d.cts +3 -3
- package/dist/testimonials-stats-header.d.ts +3 -3
- package/dist/testimonials-twitter-cards.d.cts +3 -3
- package/dist/testimonials-twitter-cards.d.ts +3 -3
- package/dist/testimonials-wall-compact.d.cts +3 -3
- package/dist/testimonials-wall-compact.d.ts +3 -3
- package/dist/timeline-ai-workflow-cards.d.cts +3 -3
- package/dist/timeline-ai-workflow-cards.d.ts +3 -3
- package/dist/timeline-alternating-diagonal.d.cts +3 -3
- package/dist/timeline-alternating-diagonal.d.ts +3 -3
- package/dist/timeline-changelog-badges.d.cts +3 -3
- package/dist/timeline-changelog-badges.d.ts +3 -3
- package/dist/timeline-history-prose.d.cts +3 -3
- package/dist/timeline-history-prose.d.ts +3 -3
- package/dist/timeline-horizontal-icons.d.cts +3 -3
- package/dist/timeline-horizontal-icons.d.ts +3 -3
- package/dist/timeline-horizontal-phases.d.cts +3 -3
- package/dist/timeline-horizontal-phases.d.ts +3 -3
- package/dist/timeline-product-launch.d.cts +3 -3
- package/dist/timeline-product-launch.d.ts +3 -3
- package/dist/timeline-productivity-list.d.cts +3 -3
- package/dist/timeline-productivity-list.d.ts +3 -3
- package/dist/timeline-scroll-highlight.d.cts +3 -3
- package/dist/timeline-scroll-highlight.d.ts +3 -3
- package/dist/timeline-scroll-sticky-image.d.cts +3 -3
- package/dist/timeline-scroll-sticky-image.d.ts +3 -3
- package/dist/timeline-stepper-animated.d.cts +3 -3
- package/dist/timeline-stepper-animated.d.ts +3 -3
- package/dist/timeline-tabbed-phases.d.cts +3 -3
- package/dist/timeline-tabbed-phases.d.ts +3 -3
- package/dist/timeline-two-column-featured.d.cts +3 -3
- package/dist/timeline-two-column-featured.d.ts +3 -3
- package/dist/timeline-vertical-icon-dashed.d.cts +3 -3
- package/dist/timeline-vertical-icon-dashed.d.ts +3 -3
- package/dist/types.d.cts +3 -3
- package/dist/types.d.ts +3 -3
- package/dist/utils.d.cts +3 -3
- package/dist/utils.d.ts +3 -3
- package/package.json +2 -2
package/dist/registry.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import * as
|
|
2
|
-
import
|
|
1
|
+
import * as React25 from 'react';
|
|
2
|
+
import React25__default, { Fragment, createContext, useMemo, forwardRef, useCallback, useState, useRef, useEffect, startTransition, useContext } from 'react';
|
|
3
3
|
import { clsx } from 'clsx';
|
|
4
4
|
import { twMerge } from 'tailwind-merge';
|
|
5
5
|
import { jsx, jsxs, Fragment as Fragment$1 } from 'react/jsx-runtime';
|
|
@@ -12,7 +12,7 @@ import * as PopoverPrimitive from '@radix-ui/react-popover';
|
|
|
12
12
|
import { usePlatformFromUrl } from '@opensite/hooks/usePlatformFromUrl';
|
|
13
13
|
import * as TabsPrimitive from '@radix-ui/react-tabs';
|
|
14
14
|
import { Form, useForm, Field } from '@page-speed/forms';
|
|
15
|
-
import { useFileUpload, useContactForm, DynamicFormField, submitPageSpeedForm, PageSpeedFormSubmissionError, isValidEmail, getColumnSpanClass } from '@page-speed/forms/integration';
|
|
15
|
+
import { useFileUpload, useContactForm, DynamicFormField, submitPageSpeedForm, PageSpeedFormSubmissionError, isValidEmail, getColumnSpanClass, FormEngine } from '@page-speed/forms/integration';
|
|
16
16
|
import { AnimatePresence, motion, useMotionValue, useMotionTemplate, useSpring, useTransform, useInView, useScroll, useMotionValueEvent } from 'framer-motion';
|
|
17
17
|
import { TextInput as TextInput$1 } from '@page-speed/forms/inputs';
|
|
18
18
|
import * as SeparatorPrimitive from '@radix-ui/react-separator';
|
|
@@ -140,7 +140,7 @@ var maxWidthStyles = {
|
|
|
140
140
|
"4xl": "max-w-[1536px]",
|
|
141
141
|
full: "max-w-full"
|
|
142
142
|
};
|
|
143
|
-
var Container =
|
|
143
|
+
var Container = React25__default.forwardRef(
|
|
144
144
|
({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
|
|
145
145
|
const Component = as;
|
|
146
146
|
return /* @__PURE__ */ jsx(
|
|
@@ -445,7 +445,7 @@ var spacingStyles = {
|
|
|
445
445
|
};
|
|
446
446
|
var predefinedSpacings = ["none", "sm", "md", "lg", "xl"];
|
|
447
447
|
var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
|
|
448
|
-
var Section =
|
|
448
|
+
var Section = React25__default.forwardRef(
|
|
449
449
|
({
|
|
450
450
|
id,
|
|
451
451
|
title,
|
|
@@ -1035,7 +1035,7 @@ function useNavigation({
|
|
|
1035
1035
|
href,
|
|
1036
1036
|
onClick
|
|
1037
1037
|
} = {}) {
|
|
1038
|
-
const linkType =
|
|
1038
|
+
const linkType = React25.useMemo(() => {
|
|
1039
1039
|
if (!href || href.trim() === "") {
|
|
1040
1040
|
return onClick ? "none" : "none";
|
|
1041
1041
|
}
|
|
@@ -1056,7 +1056,7 @@ function useNavigation({
|
|
|
1056
1056
|
return "internal";
|
|
1057
1057
|
}
|
|
1058
1058
|
}, [href, onClick]);
|
|
1059
|
-
const normalizedHref =
|
|
1059
|
+
const normalizedHref = React25.useMemo(() => {
|
|
1060
1060
|
if (!href || href.trim() === "") {
|
|
1061
1061
|
return void 0;
|
|
1062
1062
|
}
|
|
@@ -1074,7 +1074,7 @@ function useNavigation({
|
|
|
1074
1074
|
return trimmed;
|
|
1075
1075
|
}
|
|
1076
1076
|
}, [href, linkType]);
|
|
1077
|
-
const target =
|
|
1077
|
+
const target = React25.useMemo(() => {
|
|
1078
1078
|
switch (linkType) {
|
|
1079
1079
|
case "external":
|
|
1080
1080
|
return "_blank";
|
|
@@ -1087,7 +1087,7 @@ function useNavigation({
|
|
|
1087
1087
|
return void 0;
|
|
1088
1088
|
}
|
|
1089
1089
|
}, [linkType]);
|
|
1090
|
-
const rel =
|
|
1090
|
+
const rel = React25.useMemo(() => {
|
|
1091
1091
|
if (linkType === "external") {
|
|
1092
1092
|
return "noopener noreferrer";
|
|
1093
1093
|
}
|
|
@@ -1096,7 +1096,7 @@ function useNavigation({
|
|
|
1096
1096
|
const isExternal = linkType === "external";
|
|
1097
1097
|
const isInternal = linkType === "internal";
|
|
1098
1098
|
const shouldUseRouter = isInternal && typeof normalizedHref === "string" && normalizedHref.startsWith("/");
|
|
1099
|
-
const handleClick =
|
|
1099
|
+
const handleClick = React25.useCallback(
|
|
1100
1100
|
(event) => {
|
|
1101
1101
|
if (onClick) {
|
|
1102
1102
|
try {
|
|
@@ -1280,7 +1280,7 @@ var buttonVariants = cva(baseStyles, {
|
|
|
1280
1280
|
size: "default"
|
|
1281
1281
|
}
|
|
1282
1282
|
});
|
|
1283
|
-
var Pressable =
|
|
1283
|
+
var Pressable = React25.forwardRef(
|
|
1284
1284
|
({
|
|
1285
1285
|
children,
|
|
1286
1286
|
className,
|
|
@@ -2328,10 +2328,10 @@ var ImageSlider = ({
|
|
|
2328
2328
|
optixFlowConfig
|
|
2329
2329
|
}) => {
|
|
2330
2330
|
const hasImages = images.length > 0;
|
|
2331
|
-
const [currentIndex, setCurrentIndex] =
|
|
2331
|
+
const [currentIndex, setCurrentIndex] = React25.useState(
|
|
2332
2332
|
() => normalizeIndex(startIndex, images.length)
|
|
2333
2333
|
);
|
|
2334
|
-
const handleNext =
|
|
2334
|
+
const handleNext = React25.useCallback(() => {
|
|
2335
2335
|
if (!hasImages) return;
|
|
2336
2336
|
setCurrentIndex((prevIndex) => {
|
|
2337
2337
|
const nextIndex = prevIndex + 1 >= images.length ? 0 : prevIndex + 1;
|
|
@@ -2339,7 +2339,7 @@ var ImageSlider = ({
|
|
|
2339
2339
|
return nextIndex;
|
|
2340
2340
|
});
|
|
2341
2341
|
}, [hasImages, images.length, onSlideChange]);
|
|
2342
|
-
const handlePrevious =
|
|
2342
|
+
const handlePrevious = React25.useCallback(() => {
|
|
2343
2343
|
if (!hasImages) return;
|
|
2344
2344
|
setCurrentIndex((prevIndex) => {
|
|
2345
2345
|
const nextIndex = prevIndex - 1 < 0 ? images.length - 1 : prevIndex - 1;
|
|
@@ -2347,11 +2347,11 @@ var ImageSlider = ({
|
|
|
2347
2347
|
return nextIndex;
|
|
2348
2348
|
});
|
|
2349
2349
|
}, [hasImages, images.length, onSlideChange]);
|
|
2350
|
-
|
|
2350
|
+
React25.useEffect(() => {
|
|
2351
2351
|
if (!hasImages) return;
|
|
2352
2352
|
setCurrentIndex(normalizeIndex(startIndex, images.length));
|
|
2353
2353
|
}, [startIndex, images.length, hasImages]);
|
|
2354
|
-
|
|
2354
|
+
React25.useEffect(() => {
|
|
2355
2355
|
if (!enableKeyboard || !hasImages) return;
|
|
2356
2356
|
const handleKeyDown = (event) => {
|
|
2357
2357
|
if (event.key === "ArrowRight") {
|
|
@@ -2365,7 +2365,7 @@ var ImageSlider = ({
|
|
|
2365
2365
|
window.removeEventListener("keydown", handleKeyDown);
|
|
2366
2366
|
};
|
|
2367
2367
|
}, [enableKeyboard, handleNext, handlePrevious, hasImages]);
|
|
2368
|
-
|
|
2368
|
+
React25.useEffect(() => {
|
|
2369
2369
|
if (!autoplay || images.length < 2) return;
|
|
2370
2370
|
const interval = window.setInterval(handleNext, autoplayIntervalMs);
|
|
2371
2371
|
return () => window.clearInterval(interval);
|
|
@@ -2650,7 +2650,7 @@ var platformIconMap = {
|
|
|
2650
2650
|
dribbble: "cib/dribbble",
|
|
2651
2651
|
unknown: "icon-park-solid/circular-connection"
|
|
2652
2652
|
};
|
|
2653
|
-
var SocialLinkIcon =
|
|
2653
|
+
var SocialLinkIcon = React25.forwardRef(
|
|
2654
2654
|
({
|
|
2655
2655
|
platformName,
|
|
2656
2656
|
label,
|
|
@@ -2663,13 +2663,13 @@ var SocialLinkIcon = React23.forwardRef(
|
|
|
2663
2663
|
...pressableProps
|
|
2664
2664
|
}, ref) => {
|
|
2665
2665
|
const platform = usePlatformFromUrl(href);
|
|
2666
|
-
const smartPlatformName =
|
|
2666
|
+
const smartPlatformName = React25.useMemo(() => {
|
|
2667
2667
|
return platform || platformName;
|
|
2668
2668
|
}, [platform, platformName]);
|
|
2669
|
-
const iconName =
|
|
2669
|
+
const iconName = React25.useMemo(() => {
|
|
2670
2670
|
return iconNameOverride || platformIconMap[smartPlatformName];
|
|
2671
2671
|
}, [iconNameOverride, smartPlatformName]);
|
|
2672
|
-
const accessibleLabel =
|
|
2672
|
+
const accessibleLabel = React25.useMemo(() => {
|
|
2673
2673
|
return label || platformName;
|
|
2674
2674
|
}, [label, platformName]);
|
|
2675
2675
|
return /* @__PURE__ */ jsx(
|
|
@@ -3094,7 +3094,7 @@ function AboutExpandableValues({
|
|
|
3094
3094
|
pattern,
|
|
3095
3095
|
patternOpacity
|
|
3096
3096
|
}) {
|
|
3097
|
-
const [expandedValue, setExpandedValue] =
|
|
3097
|
+
const [expandedValue, setExpandedValue] = React25.useState(null);
|
|
3098
3098
|
const toggleExpand = useCallback((id) => {
|
|
3099
3099
|
setExpandedValue((prev) => prev === id ? null : id);
|
|
3100
3100
|
}, []);
|
|
@@ -3348,7 +3348,7 @@ function CommunityInitiatives({
|
|
|
3348
3348
|
pattern,
|
|
3349
3349
|
patternOpacity
|
|
3350
3350
|
}) {
|
|
3351
|
-
const [activeCategory, setActiveCategory] =
|
|
3351
|
+
const [activeCategory, setActiveCategory] = React25.useState(
|
|
3352
3352
|
categories?.[0]?.id || ""
|
|
3353
3353
|
);
|
|
3354
3354
|
const currentCategory = categories?.find((category) => category.id === activeCategory) || categories?.[0];
|
|
@@ -3621,7 +3621,7 @@ function AboutCultureTabs({
|
|
|
3621
3621
|
patternOpacity
|
|
3622
3622
|
}) {
|
|
3623
3623
|
const resolvedAspects = aspects ?? [];
|
|
3624
|
-
const [activeTab, setActiveTab] =
|
|
3624
|
+
const [activeTab, setActiveTab] = React25.useState(resolvedAspects[0]?.id || "");
|
|
3625
3625
|
const actionsContent = useMemo(() => {
|
|
3626
3626
|
if (actionsSlot) return actionsSlot;
|
|
3627
3627
|
if (!actions || actions.length === 0) return null;
|
|
@@ -4434,8 +4434,8 @@ var BrandAttribution = ({
|
|
|
4434
4434
|
}
|
|
4435
4435
|
const { prefix = "", anchorText, href, suffix = "" } = options[optionIndex];
|
|
4436
4436
|
const ContainerEl = variant;
|
|
4437
|
-
const [trackedHref, setTrackedHref] =
|
|
4438
|
-
|
|
4437
|
+
const [trackedHref, setTrackedHref] = React25.useState(href);
|
|
4438
|
+
React25.useEffect(() => {
|
|
4439
4439
|
setTrackedHref(buildTrackedHref(href));
|
|
4440
4440
|
}, [href]);
|
|
4441
4441
|
return /* @__PURE__ */ jsxs(ContainerEl, { className: containerClassName, children: [
|
|
@@ -4578,7 +4578,7 @@ function FooterSocialNewsletter({
|
|
|
4578
4578
|
onError,
|
|
4579
4579
|
uploadTokens
|
|
4580
4580
|
});
|
|
4581
|
-
const renderForm =
|
|
4581
|
+
const renderForm = React25.useMemo(() => {
|
|
4582
4582
|
if (formSlot) return formSlot;
|
|
4583
4583
|
const defaultButtonAction = {
|
|
4584
4584
|
label: "Subscribe",
|
|
@@ -4912,7 +4912,7 @@ function FooterSimpleCentered({
|
|
|
4912
4912
|
]);
|
|
4913
4913
|
const bottomLinksContent = useMemo(() => {
|
|
4914
4914
|
if (!bottomLinks || bottomLinks.length === 0) return null;
|
|
4915
|
-
return bottomLinks.map((link, idx) => /* @__PURE__ */ jsx(
|
|
4915
|
+
return bottomLinks.map((link, idx) => /* @__PURE__ */ jsx(React25.Fragment, { children: /* @__PURE__ */ jsx(
|
|
4916
4916
|
Pressable,
|
|
4917
4917
|
{
|
|
4918
4918
|
href: link.href,
|
|
@@ -7537,7 +7537,7 @@ function AboutInteractiveTabs({
|
|
|
7537
7537
|
pattern,
|
|
7538
7538
|
patternOpacity
|
|
7539
7539
|
}) {
|
|
7540
|
-
const [activeTab, setActiveTab] =
|
|
7540
|
+
const [activeTab, setActiveTab] = React25.useState(tabs?.[0]?.id ?? "");
|
|
7541
7541
|
const activeContent = useMemo(() => {
|
|
7542
7542
|
return tabs?.find((tab) => tab.id === activeTab)?.content;
|
|
7543
7543
|
}, [tabs, activeTab]);
|
|
@@ -11562,7 +11562,7 @@ function CtaVideoBackgroundHero({
|
|
|
11562
11562
|
pattern,
|
|
11563
11563
|
patternOpacity
|
|
11564
11564
|
}) {
|
|
11565
|
-
const [isModalOpen, setIsModalOpen] =
|
|
11565
|
+
const [isModalOpen, setIsModalOpen] = React25.useState(false);
|
|
11566
11566
|
const handleOpenModal = () => {
|
|
11567
11567
|
setIsModalOpen(true);
|
|
11568
11568
|
onModalOpen?.();
|
|
@@ -11750,7 +11750,7 @@ function CtaWorkflowTabs({
|
|
|
11750
11750
|
patternOpacity,
|
|
11751
11751
|
optixFlowConfig
|
|
11752
11752
|
}) {
|
|
11753
|
-
const [activeTab, setActiveTab] =
|
|
11753
|
+
const [activeTab, setActiveTab] = React25.useState(tabs?.[0]?.id || "");
|
|
11754
11754
|
const activeTabData = tabs?.find((tab) => tab.id === activeTab) || tabs?.[0];
|
|
11755
11755
|
const actionsContent = useMemo(() => {
|
|
11756
11756
|
if (actionsSlot) return actionsSlot;
|
|
@@ -12363,7 +12363,7 @@ function ContactFloatingBanner({
|
|
|
12363
12363
|
pattern,
|
|
12364
12364
|
patternOpacity
|
|
12365
12365
|
}) {
|
|
12366
|
-
const actionsContent =
|
|
12366
|
+
const actionsContent = React25.useMemo(() => {
|
|
12367
12367
|
if (actionsSlot) return actionsSlot;
|
|
12368
12368
|
if (actions && actions.length > 0) {
|
|
12369
12369
|
return actions.map((action, index) => {
|
|
@@ -12805,7 +12805,7 @@ function ContactCard({
|
|
|
12805
12805
|
onSuccess,
|
|
12806
12806
|
onError
|
|
12807
12807
|
});
|
|
12808
|
-
const actionsContent =
|
|
12808
|
+
const actionsContent = React25.useMemo(() => {
|
|
12809
12809
|
if (actionsSlot) return actionsSlot;
|
|
12810
12810
|
if (actions && actions.length > 0) {
|
|
12811
12811
|
return actions.map((action, index) => {
|
|
@@ -13397,7 +13397,7 @@ function ContactCatering({
|
|
|
13397
13397
|
onSuccess,
|
|
13398
13398
|
onError
|
|
13399
13399
|
});
|
|
13400
|
-
const actionsContent =
|
|
13400
|
+
const actionsContent = React25.useMemo(() => {
|
|
13401
13401
|
if (actionsSlot) return actionsSlot;
|
|
13402
13402
|
if (actions && actions.length > 0) {
|
|
13403
13403
|
return actions.map((action, index) => {
|
|
@@ -13641,7 +13641,7 @@ function ContactConsultation({
|
|
|
13641
13641
|
onSuccess,
|
|
13642
13642
|
onError
|
|
13643
13643
|
});
|
|
13644
|
-
const actionsContent =
|
|
13644
|
+
const actionsContent = React25.useMemo(() => {
|
|
13645
13645
|
if (actionsSlot) return actionsSlot;
|
|
13646
13646
|
if (actions && actions.length > 0) {
|
|
13647
13647
|
return actions.map((action, index) => {
|
|
@@ -13839,7 +13839,7 @@ function ContactDark({
|
|
|
13839
13839
|
resetOnSuccess: formConfig?.resetOnSuccess !== false,
|
|
13840
13840
|
uploadTokens
|
|
13841
13841
|
});
|
|
13842
|
-
const actionsContent =
|
|
13842
|
+
const actionsContent = React25.useMemo(() => {
|
|
13843
13843
|
if (actionsSlot) return actionsSlot;
|
|
13844
13844
|
if (actions && actions.length > 0) {
|
|
13845
13845
|
return actions.map((action, index) => {
|
|
@@ -13869,7 +13869,7 @@ function ContactDark({
|
|
|
13869
13869
|
}
|
|
13870
13870
|
return null;
|
|
13871
13871
|
}, [actionsSlot, actions]);
|
|
13872
|
-
const contactOptionsContent =
|
|
13872
|
+
const contactOptionsContent = React25.useMemo(() => {
|
|
13873
13873
|
if (contactOptionsSlot) return contactOptionsSlot;
|
|
13874
13874
|
if (contactOptions && contactOptions.length > 0) {
|
|
13875
13875
|
return contactOptions.map((option, key) => /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-3", children: [
|
|
@@ -13893,7 +13893,7 @@ function ContactDark({
|
|
|
13893
13893
|
}
|
|
13894
13894
|
return null;
|
|
13895
13895
|
}, [contactOptionsSlot, contactOptions]);
|
|
13896
|
-
const socialLinksContent =
|
|
13896
|
+
const socialLinksContent = React25.useMemo(() => {
|
|
13897
13897
|
if (socialLinksSlot) return socialLinksSlot;
|
|
13898
13898
|
if (socialLinks && socialLinks.length > 0) {
|
|
13899
13899
|
return socialLinks.map((social, key) => /* @__PURE__ */ jsx(
|
|
@@ -14847,6 +14847,14 @@ function AccordionContent({
|
|
|
14847
14847
|
}
|
|
14848
14848
|
);
|
|
14849
14849
|
}
|
|
14850
|
+
var DEFAULT_STYLE_RULES = {
|
|
14851
|
+
formContainer: "",
|
|
14852
|
+
fieldsContainer: "",
|
|
14853
|
+
fieldClassName: "",
|
|
14854
|
+
formClassName: "space-y-6",
|
|
14855
|
+
successMessageClassName: "text-green-600 dark:text-green-400 mt-4 p-3 rounded-md bg-green-50 dark:bg-green-950/20",
|
|
14856
|
+
errorMessageClassName: "text-red-600 dark:text-red-400 mt-4 p-3 rounded-md bg-red-50 dark:bg-red-950/20"
|
|
14857
|
+
};
|
|
14850
14858
|
var DEFAULT_FORM_FIELDS11 = [
|
|
14851
14859
|
{
|
|
14852
14860
|
name: "name",
|
|
@@ -14888,13 +14896,10 @@ function ContactFaq({
|
|
|
14888
14896
|
formHeading,
|
|
14889
14897
|
buttonText = "Submit",
|
|
14890
14898
|
buttonIcon,
|
|
14891
|
-
actions,
|
|
14892
|
-
actionsSlot,
|
|
14893
14899
|
items,
|
|
14894
14900
|
itemsSlot,
|
|
14895
14901
|
faqHeading,
|
|
14896
|
-
|
|
14897
|
-
successMessage = "Thank you! Your message has been sent successfully.",
|
|
14902
|
+
formEngineSetup,
|
|
14898
14903
|
className,
|
|
14899
14904
|
containerClassName = "px-6 sm:px-6 md:px-8 lg:px-8",
|
|
14900
14905
|
headerClassName,
|
|
@@ -14903,8 +14908,6 @@ function ContactFaq({
|
|
|
14903
14908
|
cardClassName,
|
|
14904
14909
|
cardContentClassName,
|
|
14905
14910
|
formHeadingClassName,
|
|
14906
|
-
formClassName,
|
|
14907
|
-
submitClassName,
|
|
14908
14911
|
faqHeadingClassName,
|
|
14909
14912
|
faqContainerClassName,
|
|
14910
14913
|
accordionClassName,
|
|
@@ -14912,67 +14915,28 @@ function ContactFaq({
|
|
|
14912
14915
|
accordionTriggerClassName,
|
|
14913
14916
|
accordionContentClassName,
|
|
14914
14917
|
gridClassName,
|
|
14915
|
-
successMessageClassName,
|
|
14916
|
-
errorMessageClassName,
|
|
14917
14918
|
background,
|
|
14918
14919
|
spacing = "py-8 md:py-32",
|
|
14919
14920
|
pattern,
|
|
14920
|
-
patternOpacity
|
|
14921
|
-
formConfig,
|
|
14922
|
-
onSubmit,
|
|
14923
|
-
onSuccess,
|
|
14924
|
-
onError
|
|
14921
|
+
patternOpacity
|
|
14925
14922
|
}) {
|
|
14926
|
-
const {
|
|
14927
|
-
|
|
14928
|
-
|
|
14929
|
-
|
|
14930
|
-
|
|
14931
|
-
|
|
14932
|
-
|
|
14933
|
-
|
|
14934
|
-
|
|
14935
|
-
|
|
14936
|
-
|
|
14937
|
-
|
|
14938
|
-
|
|
14939
|
-
|
|
14940
|
-
|
|
14941
|
-
},
|
|
14942
|
-
onError,
|
|
14943
|
-
resetOnSuccess: formConfig?.resetOnSuccess !== false,
|
|
14944
|
-
uploadTokens
|
|
14945
|
-
});
|
|
14946
|
-
const actionsContent = useMemo(() => {
|
|
14947
|
-
if (actionsSlot) return actionsSlot;
|
|
14948
|
-
if (actions && actions.length > 0) {
|
|
14949
|
-
return actions.map((action, index) => {
|
|
14950
|
-
const {
|
|
14951
|
-
label,
|
|
14952
|
-
icon,
|
|
14953
|
-
iconAfter,
|
|
14954
|
-
children,
|
|
14955
|
-
className: actionClassName,
|
|
14956
|
-
...pressableProps
|
|
14957
|
-
} = action;
|
|
14958
|
-
return /* @__PURE__ */ jsx(
|
|
14959
|
-
Pressable,
|
|
14960
|
-
{
|
|
14961
|
-
asButton: true,
|
|
14962
|
-
className: actionClassName,
|
|
14963
|
-
...pressableProps,
|
|
14964
|
-
children: children ?? /* @__PURE__ */ jsxs(Fragment$1, { children: [
|
|
14965
|
-
icon,
|
|
14966
|
-
label,
|
|
14967
|
-
iconAfter
|
|
14968
|
-
] })
|
|
14969
|
-
},
|
|
14970
|
-
index
|
|
14971
|
-
);
|
|
14972
|
-
});
|
|
14923
|
+
const formStyleRules = React25.useMemo(() => {
|
|
14924
|
+
return {
|
|
14925
|
+
formContainer: formEngineSetup?.formLayoutSettings?.styleRules?.formContainer ?? DEFAULT_STYLE_RULES.formContainer,
|
|
14926
|
+
fieldsContainer: formEngineSetup?.formLayoutSettings?.styleRules?.fieldsContainer ?? DEFAULT_STYLE_RULES.fieldsContainer,
|
|
14927
|
+
fieldClassName: formEngineSetup?.formLayoutSettings?.styleRules?.fieldClassName ?? DEFAULT_STYLE_RULES.fieldClassName,
|
|
14928
|
+
formClassName: formEngineSetup?.formLayoutSettings?.styleRules?.formClassName ?? DEFAULT_STYLE_RULES.formClassName,
|
|
14929
|
+
successMessageClassName: formEngineSetup?.formLayoutSettings?.styleRules?.successMessageClassName ?? DEFAULT_STYLE_RULES.successMessageClassName,
|
|
14930
|
+
errorMessageClassName: formEngineSetup?.formLayoutSettings?.styleRules?.errorMessageClassName ?? DEFAULT_STYLE_RULES.errorMessageClassName
|
|
14931
|
+
};
|
|
14932
|
+
}, [formEngineSetup?.formLayoutSettings?.styleRules]);
|
|
14933
|
+
const formFields = React25.useMemo(() => {
|
|
14934
|
+
if (formEngineSetup && formEngineSetup?.fields && formEngineSetup?.fields?.length > 0) {
|
|
14935
|
+
return formEngineSetup.fields;
|
|
14936
|
+
} else {
|
|
14937
|
+
return DEFAULT_FORM_FIELDS11;
|
|
14973
14938
|
}
|
|
14974
|
-
|
|
14975
|
-
}, [actionsSlot, actions]);
|
|
14939
|
+
}, [formEngineSetup?.fields]);
|
|
14976
14940
|
const hasFaqItems = itemsSlot || items && items.length > 0;
|
|
14977
14941
|
const faqContent = useMemo(() => {
|
|
14978
14942
|
if (itemsSlot) return itemsSlot;
|
|
@@ -15033,7 +14997,7 @@ function ContactFaq({
|
|
|
15033
14997
|
),
|
|
15034
14998
|
children: heading
|
|
15035
14999
|
}
|
|
15036
|
-
) :
|
|
15000
|
+
) : heading),
|
|
15037
15001
|
description && (typeof description === "string" ? /* @__PURE__ */ jsx(
|
|
15038
15002
|
"p",
|
|
15039
15003
|
{
|
|
@@ -15043,7 +15007,7 @@ function ContactFaq({
|
|
|
15043
15007
|
),
|
|
15044
15008
|
children: description
|
|
15045
15009
|
}
|
|
15046
|
-
) :
|
|
15010
|
+
) : description)
|
|
15047
15011
|
]
|
|
15048
15012
|
}
|
|
15049
15013
|
),
|
|
@@ -15067,64 +15031,25 @@ function ContactFaq({
|
|
|
15067
15031
|
children: formHeading
|
|
15068
15032
|
}
|
|
15069
15033
|
) : /* @__PURE__ */ jsx("div", { className: formHeadingClassName, children: formHeading })),
|
|
15070
|
-
/* @__PURE__ */
|
|
15071
|
-
|
|
15034
|
+
formEngineSetup ? /* @__PURE__ */ jsx(
|
|
15035
|
+
FormEngine,
|
|
15072
15036
|
{
|
|
15073
|
-
|
|
15074
|
-
|
|
15075
|
-
|
|
15076
|
-
|
|
15077
|
-
|
|
15078
|
-
|
|
15079
|
-
|
|
15080
|
-
|
|
15081
|
-
|
|
15082
|
-
|
|
15083
|
-
|
|
15084
|
-
|
|
15085
|
-
method: formMethod,
|
|
15086
|
-
submissionConfig: formConfig?.submissionConfig
|
|
15087
|
-
},
|
|
15088
|
-
onNewSubmission: () => {
|
|
15089
|
-
resetUpload();
|
|
15090
|
-
resetSubmissionState();
|
|
15037
|
+
...formEngineSetup,
|
|
15038
|
+
formLayoutSettings: {
|
|
15039
|
+
...formEngineSetup.formLayoutSettings,
|
|
15040
|
+
formLayout: "standard",
|
|
15041
|
+
submitButtonSetup: {
|
|
15042
|
+
...formEngineSetup.formLayoutSettings?.submitButtonSetup,
|
|
15043
|
+
submitLabel: /* @__PURE__ */ jsxs(Fragment$1, { children: [
|
|
15044
|
+
buttonIcon,
|
|
15045
|
+
buttonText
|
|
15046
|
+
] })
|
|
15047
|
+
},
|
|
15048
|
+
styleRules: formStyleRules
|
|
15091
15049
|
},
|
|
15092
|
-
|
|
15093
|
-
/* @__PURE__ */ jsx("div", { className: "grid grid-cols-12 gap-6", children: formFields.map((field) => /* @__PURE__ */ jsx(
|
|
15094
|
-
"div",
|
|
15095
|
-
{
|
|
15096
|
-
className: getColumnSpanClass(field.columnSpan),
|
|
15097
|
-
children: /* @__PURE__ */ jsx(
|
|
15098
|
-
DynamicFormField,
|
|
15099
|
-
{
|
|
15100
|
-
field,
|
|
15101
|
-
uploadProgress,
|
|
15102
|
-
onFileUpload: uploadFiles,
|
|
15103
|
-
onFileRemove: removeFile,
|
|
15104
|
-
isUploading
|
|
15105
|
-
}
|
|
15106
|
-
)
|
|
15107
|
-
},
|
|
15108
|
-
field.name
|
|
15109
|
-
)) }),
|
|
15110
|
-
actionsSlot || actions && actions.length > 0 ? actionsContent : /* @__PURE__ */ jsxs(
|
|
15111
|
-
Pressable,
|
|
15112
|
-
{
|
|
15113
|
-
componentType: "button",
|
|
15114
|
-
type: "submit",
|
|
15115
|
-
className: cn("w-full", submitClassName),
|
|
15116
|
-
size: "lg",
|
|
15117
|
-
asButton: true,
|
|
15118
|
-
disabled: form.isSubmitting,
|
|
15119
|
-
children: [
|
|
15120
|
-
buttonIcon,
|
|
15121
|
-
buttonText
|
|
15122
|
-
]
|
|
15123
|
-
}
|
|
15124
|
-
)
|
|
15125
|
-
]
|
|
15050
|
+
fields: formFields
|
|
15126
15051
|
}
|
|
15127
|
-
)
|
|
15052
|
+
) : null
|
|
15128
15053
|
] }) }),
|
|
15129
15054
|
hasFaqItems && /* @__PURE__ */ jsxs("div", { className: cn("relative", faqContainerClassName), children: [
|
|
15130
15055
|
faqHeading && (typeof faqHeading === "string" ? /* @__PURE__ */ jsx(
|
|
@@ -20787,6 +20712,14 @@ function ContactTenant({
|
|
|
20787
20712
|
}
|
|
20788
20713
|
);
|
|
20789
20714
|
}
|
|
20715
|
+
var DEFAULT_STYLE_RULES2 = {
|
|
20716
|
+
formContainer: "",
|
|
20717
|
+
fieldsContainer: "",
|
|
20718
|
+
fieldClassName: "",
|
|
20719
|
+
formClassName: "space-y-6",
|
|
20720
|
+
successMessageClassName: "text-green-600 dark:text-green-400 mt-4 p-3 rounded-md bg-green-50 dark:bg-green-950/20",
|
|
20721
|
+
errorMessageClassName: "text-red-600 dark:text-red-400 mt-4 p-3 rounded-md bg-red-50 dark:bg-red-950/20"
|
|
20722
|
+
};
|
|
20790
20723
|
var DEFAULT_FORM_FIELDS38 = [
|
|
20791
20724
|
{
|
|
20792
20725
|
name: "first_name",
|
|
@@ -20833,82 +20766,36 @@ var DEFAULT_FORM_FIELDS38 = [
|
|
|
20833
20766
|
function ContactVendor({
|
|
20834
20767
|
heading,
|
|
20835
20768
|
description,
|
|
20836
|
-
buttonText = "Submit",
|
|
20837
|
-
buttonIcon,
|
|
20838
|
-
actions,
|
|
20839
|
-
actionsSlot,
|
|
20840
|
-
formFields = DEFAULT_FORM_FIELDS38,
|
|
20841
|
-
successMessage = "Thank you! Your message has been sent successfully.",
|
|
20842
20769
|
className,
|
|
20770
|
+
formEngineSetup,
|
|
20843
20771
|
containerClassName = "px-6 sm:px-6 md:px-8 lg:px-8",
|
|
20844
20772
|
headerClassName,
|
|
20845
20773
|
headingClassName,
|
|
20846
20774
|
descriptionClassName,
|
|
20847
20775
|
cardClassName,
|
|
20848
20776
|
cardContentClassName,
|
|
20849
|
-
|
|
20850
|
-
submitClassName,
|
|
20851
|
-
successMessageClassName,
|
|
20852
|
-
errorMessageClassName,
|
|
20853
|
-
background = "white",
|
|
20777
|
+
background,
|
|
20854
20778
|
spacing = "xl",
|
|
20855
20779
|
pattern,
|
|
20856
|
-
patternOpacity = 0.1
|
|
20857
|
-
formConfig,
|
|
20858
|
-
onSubmit,
|
|
20859
|
-
onSuccess,
|
|
20860
|
-
onError
|
|
20780
|
+
patternOpacity = 0.1
|
|
20861
20781
|
}) {
|
|
20862
|
-
const {
|
|
20863
|
-
|
|
20864
|
-
|
|
20865
|
-
|
|
20866
|
-
|
|
20867
|
-
|
|
20868
|
-
|
|
20869
|
-
|
|
20870
|
-
|
|
20871
|
-
|
|
20872
|
-
|
|
20873
|
-
|
|
20874
|
-
|
|
20875
|
-
|
|
20876
|
-
|
|
20877
|
-
},
|
|
20878
|
-
onError,
|
|
20879
|
-
resetOnSuccess: formConfig?.resetOnSuccess !== false,
|
|
20880
|
-
uploadTokens
|
|
20881
|
-
});
|
|
20882
|
-
const actionsContent = useMemo(() => {
|
|
20883
|
-
if (actionsSlot) return actionsSlot;
|
|
20884
|
-
if (actions && actions.length > 0) {
|
|
20885
|
-
return actions.map((action, index) => {
|
|
20886
|
-
const {
|
|
20887
|
-
label,
|
|
20888
|
-
icon,
|
|
20889
|
-
iconAfter,
|
|
20890
|
-
children,
|
|
20891
|
-
className: actionClassName,
|
|
20892
|
-
...pressableProps
|
|
20893
|
-
} = action;
|
|
20894
|
-
return /* @__PURE__ */ jsx(
|
|
20895
|
-
Pressable,
|
|
20896
|
-
{
|
|
20897
|
-
asButton: true,
|
|
20898
|
-
className: actionClassName,
|
|
20899
|
-
...pressableProps,
|
|
20900
|
-
children: children ?? /* @__PURE__ */ jsxs(Fragment$1, { children: [
|
|
20901
|
-
icon,
|
|
20902
|
-
label,
|
|
20903
|
-
iconAfter
|
|
20904
|
-
] })
|
|
20905
|
-
},
|
|
20906
|
-
index
|
|
20907
|
-
);
|
|
20908
|
-
});
|
|
20782
|
+
const formStyleRules = React25.useMemo(() => {
|
|
20783
|
+
return {
|
|
20784
|
+
formContainer: formEngineSetup?.formLayoutSettings?.styleRules?.formContainer ?? DEFAULT_STYLE_RULES2.formContainer,
|
|
20785
|
+
fieldsContainer: formEngineSetup?.formLayoutSettings?.styleRules?.fieldsContainer ?? DEFAULT_STYLE_RULES2.fieldsContainer,
|
|
20786
|
+
fieldClassName: formEngineSetup?.formLayoutSettings?.styleRules?.fieldClassName ?? DEFAULT_STYLE_RULES2.fieldClassName,
|
|
20787
|
+
formClassName: formEngineSetup?.formLayoutSettings?.styleRules?.formClassName ?? DEFAULT_STYLE_RULES2.formClassName,
|
|
20788
|
+
successMessageClassName: formEngineSetup?.formLayoutSettings?.styleRules?.successMessageClassName ?? DEFAULT_STYLE_RULES2.successMessageClassName,
|
|
20789
|
+
errorMessageClassName: formEngineSetup?.formLayoutSettings?.styleRules?.errorMessageClassName ?? DEFAULT_STYLE_RULES2.errorMessageClassName
|
|
20790
|
+
};
|
|
20791
|
+
}, [formEngineSetup?.formLayoutSettings?.styleRules]);
|
|
20792
|
+
const formFields = React25.useMemo(() => {
|
|
20793
|
+
if (formEngineSetup && formEngineSetup?.fields && formEngineSetup?.fields?.length > 0) {
|
|
20794
|
+
return formEngineSetup.fields;
|
|
20795
|
+
} else {
|
|
20796
|
+
return DEFAULT_FORM_FIELDS38;
|
|
20909
20797
|
}
|
|
20910
|
-
|
|
20911
|
-
}, [actionsSlot, actions]);
|
|
20798
|
+
}, [formEngineSetup?.fields]);
|
|
20912
20799
|
return /* @__PURE__ */ jsx(
|
|
20913
20800
|
Section,
|
|
20914
20801
|
{
|
|
@@ -20929,7 +20816,7 @@ function ContactVendor({
|
|
|
20929
20816
|
),
|
|
20930
20817
|
children: heading
|
|
20931
20818
|
}
|
|
20932
|
-
) :
|
|
20819
|
+
) : heading),
|
|
20933
20820
|
description && (typeof description === "string" ? /* @__PURE__ */ jsx(
|
|
20934
20821
|
"p",
|
|
20935
20822
|
{
|
|
@@ -20939,66 +20826,19 @@ function ContactVendor({
|
|
|
20939
20826
|
),
|
|
20940
20827
|
children: description
|
|
20941
20828
|
}
|
|
20942
|
-
) :
|
|
20829
|
+
) : description)
|
|
20943
20830
|
] }),
|
|
20944
|
-
/* @__PURE__ */ jsx(Card, { className: cn("mx-auto max-w-xl", cardClassName), children: /* @__PURE__ */ jsx(CardContent, { className: cn("p-6 lg:p-8", cardContentClassName), children: /* @__PURE__ */
|
|
20945
|
-
|
|
20831
|
+
/* @__PURE__ */ jsx(Card, { className: cn("mx-auto max-w-xl", cardClassName), children: /* @__PURE__ */ jsx(CardContent, { className: cn("p-6 lg:p-8", cardContentClassName), children: formEngineSetup ? /* @__PURE__ */ jsx(
|
|
20832
|
+
FormEngine,
|
|
20946
20833
|
{
|
|
20947
|
-
|
|
20948
|
-
|
|
20949
|
-
|
|
20950
|
-
|
|
20834
|
+
...formEngineSetup,
|
|
20835
|
+
formLayoutSettings: {
|
|
20836
|
+
...formEngineSetup.formLayoutSettings,
|
|
20837
|
+
styleRules: formStyleRules
|
|
20951
20838
|
},
|
|
20952
|
-
|
|
20953
|
-
formClassName: cn("space-y-4", formClassName),
|
|
20954
|
-
successMessageClassName,
|
|
20955
|
-
errorMessageClassName
|
|
20956
|
-
},
|
|
20957
|
-
formConfig: {
|
|
20958
|
-
endpoint: formConfig?.endpoint,
|
|
20959
|
-
method: formMethod,
|
|
20960
|
-
submissionConfig: formConfig?.submissionConfig
|
|
20961
|
-
},
|
|
20962
|
-
onNewSubmission: () => {
|
|
20963
|
-
resetUpload();
|
|
20964
|
-
resetSubmissionState();
|
|
20965
|
-
},
|
|
20966
|
-
children: [
|
|
20967
|
-
/* @__PURE__ */ jsx("div", { className: "grid grid-cols-12 gap-6", children: formFields.map((field) => /* @__PURE__ */ jsx(
|
|
20968
|
-
"div",
|
|
20969
|
-
{
|
|
20970
|
-
className: getColumnSpanClass(field.columnSpan),
|
|
20971
|
-
children: /* @__PURE__ */ jsx(
|
|
20972
|
-
DynamicFormField,
|
|
20973
|
-
{
|
|
20974
|
-
field,
|
|
20975
|
-
uploadProgress,
|
|
20976
|
-
onFileUpload: uploadFiles,
|
|
20977
|
-
onFileRemove: removeFile,
|
|
20978
|
-
isUploading
|
|
20979
|
-
}
|
|
20980
|
-
)
|
|
20981
|
-
},
|
|
20982
|
-
field.name
|
|
20983
|
-
)) }),
|
|
20984
|
-
actionsSlot || actions && actions.length > 0 ? actionsContent : /* @__PURE__ */ jsxs(
|
|
20985
|
-
Pressable,
|
|
20986
|
-
{
|
|
20987
|
-
componentType: "button",
|
|
20988
|
-
type: "submit",
|
|
20989
|
-
className: cn("w-full", submitClassName),
|
|
20990
|
-
size: "lg",
|
|
20991
|
-
asButton: true,
|
|
20992
|
-
disabled: form.isSubmitting,
|
|
20993
|
-
children: [
|
|
20994
|
-
buttonIcon,
|
|
20995
|
-
buttonText
|
|
20996
|
-
]
|
|
20997
|
-
}
|
|
20998
|
-
)
|
|
20999
|
-
]
|
|
20839
|
+
fields: formFields
|
|
21000
20840
|
}
|
|
21001
|
-
) }) })
|
|
20841
|
+
) : null }) })
|
|
21002
20842
|
] })
|
|
21003
20843
|
}
|
|
21004
20844
|
);
|
|
@@ -21765,16 +21605,16 @@ function CarouselAnimatedSections({
|
|
|
21765
21605
|
pattern = "diagonalCrossBasic",
|
|
21766
21606
|
patternOpacity = 0.033
|
|
21767
21607
|
}) {
|
|
21768
|
-
const [currentIndex, setCurrentIndex] =
|
|
21769
|
-
const [direction, setDirection] =
|
|
21770
|
-
const [isAnimating, setIsAnimating] =
|
|
21771
|
-
const goToNext =
|
|
21608
|
+
const [currentIndex, setCurrentIndex] = React25.useState(0);
|
|
21609
|
+
const [direction, setDirection] = React25.useState(0);
|
|
21610
|
+
const [isAnimating, setIsAnimating] = React25.useState(false);
|
|
21611
|
+
const goToNext = React25.useCallback(() => {
|
|
21772
21612
|
if (isAnimating || currentIndex >= (sections?.length ?? 0) - 1) return;
|
|
21773
21613
|
setIsAnimating(true);
|
|
21774
21614
|
setDirection(1);
|
|
21775
21615
|
setCurrentIndex((prev) => prev + 1);
|
|
21776
21616
|
}, [currentIndex, isAnimating, sections?.length]);
|
|
21777
|
-
const goToPrev =
|
|
21617
|
+
const goToPrev = React25.useCallback(() => {
|
|
21778
21618
|
if (isAnimating || currentIndex <= 0) return;
|
|
21779
21619
|
setIsAnimating(true);
|
|
21780
21620
|
setDirection(-1);
|
|
@@ -21786,7 +21626,7 @@ function CarouselAnimatedSections({
|
|
|
21786
21626
|
setDirection(index > currentIndex ? 1 : -1);
|
|
21787
21627
|
setCurrentIndex(index);
|
|
21788
21628
|
};
|
|
21789
|
-
|
|
21629
|
+
React25.useEffect(() => {
|
|
21790
21630
|
const handleKeyDown = (e) => {
|
|
21791
21631
|
if (e.key === "ArrowDown" || e.key === "ArrowRight") {
|
|
21792
21632
|
goToNext();
|
|
@@ -21812,7 +21652,7 @@ function CarouselAnimatedSections({
|
|
|
21812
21652
|
})
|
|
21813
21653
|
};
|
|
21814
21654
|
const currentSection = sections?.[currentIndex];
|
|
21815
|
-
const actionElements =
|
|
21655
|
+
const actionElements = React25.useMemo(() => {
|
|
21816
21656
|
if (actionsSlot) return actionsSlot;
|
|
21817
21657
|
if (actions && actions.length > 0) {
|
|
21818
21658
|
return actions.map((action, index) => /* @__PURE__ */ jsxs(
|
|
@@ -22060,11 +21900,11 @@ function CarouselAutoProgressSlides({
|
|
|
22060
21900
|
pattern,
|
|
22061
21901
|
patternOpacity
|
|
22062
21902
|
}) {
|
|
22063
|
-
const [currentIndex, setCurrentIndex] =
|
|
21903
|
+
const [currentIndex, setCurrentIndex] = React25.useState(0);
|
|
22064
21904
|
const progress = useMotionValue(100);
|
|
22065
|
-
const [direction, setDirection] =
|
|
21905
|
+
const [direction, setDirection] = React25.useState(1);
|
|
22066
21906
|
const clipPath = useMotionTemplate`inset(0 ${progress}% 0 0 round 10px)`;
|
|
22067
|
-
|
|
21907
|
+
React25.useEffect(() => {
|
|
22068
21908
|
const interval = setInterval(() => {
|
|
22069
21909
|
const currentProgress = progress.get();
|
|
22070
21910
|
if (currentProgress > 0) {
|
|
@@ -22243,22 +22083,22 @@ function CarouselAutoProgressSlides({
|
|
|
22243
22083
|
);
|
|
22244
22084
|
}
|
|
22245
22085
|
function useDotButton(emblaApi) {
|
|
22246
|
-
const [selectedIndex, setSelectedIndex] =
|
|
22247
|
-
const [scrollSnaps, setScrollSnaps] =
|
|
22248
|
-
const onDotButtonClick =
|
|
22086
|
+
const [selectedIndex, setSelectedIndex] = React25.useState(0);
|
|
22087
|
+
const [scrollSnaps, setScrollSnaps] = React25.useState([]);
|
|
22088
|
+
const onDotButtonClick = React25.useCallback(
|
|
22249
22089
|
(index) => {
|
|
22250
22090
|
if (!emblaApi) return;
|
|
22251
22091
|
emblaApi.scrollTo(index);
|
|
22252
22092
|
},
|
|
22253
22093
|
[emblaApi]
|
|
22254
22094
|
);
|
|
22255
|
-
const onInit =
|
|
22095
|
+
const onInit = React25.useCallback((api) => {
|
|
22256
22096
|
setScrollSnaps(api.scrollSnapList());
|
|
22257
22097
|
}, []);
|
|
22258
|
-
const onSelect =
|
|
22098
|
+
const onSelect = React25.useCallback((api) => {
|
|
22259
22099
|
setSelectedIndex(api.selectedScrollSnap());
|
|
22260
22100
|
}, []);
|
|
22261
|
-
|
|
22101
|
+
React25.useEffect(() => {
|
|
22262
22102
|
if (!emblaApi) return;
|
|
22263
22103
|
onInit(emblaApi);
|
|
22264
22104
|
onSelect(emblaApi);
|
|
@@ -22267,8 +22107,8 @@ function useDotButton(emblaApi) {
|
|
|
22267
22107
|
return { selectedIndex, scrollSnaps, onDotButtonClick };
|
|
22268
22108
|
}
|
|
22269
22109
|
function useAutoplay(emblaApi) {
|
|
22270
|
-
const [autoplayIsPlaying, setAutoplayIsPlaying] =
|
|
22271
|
-
const onAutoplayButtonClick =
|
|
22110
|
+
const [autoplayIsPlaying, setAutoplayIsPlaying] = React25.useState(false);
|
|
22111
|
+
const onAutoplayButtonClick = React25.useCallback(
|
|
22272
22112
|
(callback) => {
|
|
22273
22113
|
const autoplay = emblaApi?.plugins()?.autoplay;
|
|
22274
22114
|
if (!autoplay) return;
|
|
@@ -22278,13 +22118,13 @@ function useAutoplay(emblaApi) {
|
|
|
22278
22118
|
},
|
|
22279
22119
|
[emblaApi]
|
|
22280
22120
|
);
|
|
22281
|
-
const toggleAutoplay =
|
|
22121
|
+
const toggleAutoplay = React25.useCallback(() => {
|
|
22282
22122
|
const autoplay = emblaApi?.plugins()?.autoplay;
|
|
22283
22123
|
if (!autoplay) return;
|
|
22284
22124
|
const playOrStop = autoplay.isPlaying() ? autoplay.stop : autoplay.play;
|
|
22285
22125
|
playOrStop();
|
|
22286
22126
|
}, [emblaApi]);
|
|
22287
|
-
|
|
22127
|
+
React25.useEffect(() => {
|
|
22288
22128
|
const autoplay = emblaApi?.plugins()?.autoplay;
|
|
22289
22129
|
if (!autoplay) return;
|
|
22290
22130
|
setAutoplayIsPlaying(autoplay.isPlaying());
|
|
@@ -22293,11 +22133,11 @@ function useAutoplay(emblaApi) {
|
|
|
22293
22133
|
return { autoplayIsPlaying, toggleAutoplay, onAutoplayButtonClick };
|
|
22294
22134
|
}
|
|
22295
22135
|
function useAutoplayProgress(emblaApi, progressNode) {
|
|
22296
|
-
const [showAutoplayProgress, setShowAutoplayProgress] =
|
|
22297
|
-
const animationName =
|
|
22298
|
-
const timeoutId =
|
|
22299
|
-
const rafId =
|
|
22300
|
-
const startProgress =
|
|
22136
|
+
const [showAutoplayProgress, setShowAutoplayProgress] = React25.useState(false);
|
|
22137
|
+
const animationName = React25.useRef("");
|
|
22138
|
+
const timeoutId = React25.useRef(0);
|
|
22139
|
+
const rafId = React25.useRef(0);
|
|
22140
|
+
const startProgress = React25.useCallback(
|
|
22301
22141
|
(timeUntilNext) => {
|
|
22302
22142
|
const node = progressNode.current;
|
|
22303
22143
|
if (!node || timeUntilNext === null) return;
|
|
@@ -22317,12 +22157,12 @@ function useAutoplayProgress(emblaApi, progressNode) {
|
|
|
22317
22157
|
},
|
|
22318
22158
|
[progressNode]
|
|
22319
22159
|
);
|
|
22320
|
-
|
|
22160
|
+
React25.useEffect(() => {
|
|
22321
22161
|
const autoplay = emblaApi?.plugins()?.autoplay;
|
|
22322
22162
|
if (!autoplay) return;
|
|
22323
22163
|
emblaApi.on("autoplay:timerset", () => startProgress(autoplay.timeUntilNext())).on("autoplay:timerstopped", () => setShowAutoplayProgress(false));
|
|
22324
22164
|
}, [emblaApi, startProgress]);
|
|
22325
|
-
|
|
22165
|
+
React25.useEffect(() => {
|
|
22326
22166
|
return () => {
|
|
22327
22167
|
cancelAnimationFrame(rafId.current);
|
|
22328
22168
|
clearTimeout(timeoutId.current);
|
|
@@ -22349,7 +22189,7 @@ function CarouselAutoplayProgress({
|
|
|
22349
22189
|
pattern,
|
|
22350
22190
|
patternOpacity
|
|
22351
22191
|
}) {
|
|
22352
|
-
const progressNode =
|
|
22192
|
+
const progressNode = React25.useRef(null);
|
|
22353
22193
|
const [emblaRef, emblaApi] = useEmblaCarousel(options, [
|
|
22354
22194
|
Autoplay({ playOnInit: true, delay: autoplayDelay })
|
|
22355
22195
|
]);
|
|
@@ -22472,20 +22312,20 @@ function CarouselFeatureBadge({
|
|
|
22472
22312
|
containerMaxWidth = "2xl"
|
|
22473
22313
|
}) {
|
|
22474
22314
|
const [emblaRef, emblaApi] = useEmblaCarousel();
|
|
22475
|
-
const [canScrollPrev, setCanScrollPrev] =
|
|
22476
|
-
const [canScrollNext, setCanScrollNext] =
|
|
22477
|
-
const scrollPrev =
|
|
22315
|
+
const [canScrollPrev, setCanScrollPrev] = React25.useState(false);
|
|
22316
|
+
const [canScrollNext, setCanScrollNext] = React25.useState(false);
|
|
22317
|
+
const scrollPrev = React25.useCallback(() => {
|
|
22478
22318
|
emblaApi?.scrollPrev();
|
|
22479
22319
|
}, [emblaApi]);
|
|
22480
|
-
const scrollNext =
|
|
22320
|
+
const scrollNext = React25.useCallback(() => {
|
|
22481
22321
|
emblaApi?.scrollNext();
|
|
22482
22322
|
}, [emblaApi]);
|
|
22483
|
-
const onSelect =
|
|
22323
|
+
const onSelect = React25.useCallback(() => {
|
|
22484
22324
|
if (!emblaApi) return;
|
|
22485
22325
|
setCanScrollPrev(emblaApi.canScrollPrev());
|
|
22486
22326
|
setCanScrollNext(emblaApi.canScrollNext());
|
|
22487
22327
|
}, [emblaApi]);
|
|
22488
|
-
|
|
22328
|
+
React25.useEffect(() => {
|
|
22489
22329
|
if (!emblaApi) return;
|
|
22490
22330
|
onSelect();
|
|
22491
22331
|
emblaApi.on("reInit", onSelect);
|
|
@@ -22605,10 +22445,10 @@ function CarouselFullscreenScrollFx({
|
|
|
22605
22445
|
pattern = "diagonalCrossBasic",
|
|
22606
22446
|
patternOpacity = 0.033
|
|
22607
22447
|
}) {
|
|
22608
|
-
const containerRef =
|
|
22609
|
-
const scrollContainerRef =
|
|
22610
|
-
const [activeIndex, setActiveIndex] =
|
|
22611
|
-
|
|
22448
|
+
const containerRef = React25.useRef(null);
|
|
22449
|
+
const scrollContainerRef = React25.useRef(null);
|
|
22450
|
+
const [activeIndex, setActiveIndex] = React25.useState(0);
|
|
22451
|
+
React25.useEffect(() => {
|
|
22612
22452
|
const scrollContainer = scrollContainerRef.current;
|
|
22613
22453
|
if (!scrollContainer || !slides?.length) return;
|
|
22614
22454
|
const handleScroll = () => {
|
|
@@ -22620,7 +22460,7 @@ function CarouselFullscreenScrollFx({
|
|
|
22620
22460
|
scrollContainer.addEventListener("scroll", handleScroll);
|
|
22621
22461
|
return () => scrollContainer.removeEventListener("scroll", handleScroll);
|
|
22622
22462
|
}, [slides]);
|
|
22623
|
-
const scrollToSlide =
|
|
22463
|
+
const scrollToSlide = React25.useCallback((index) => {
|
|
22624
22464
|
const scrollContainer = scrollContainerRef.current;
|
|
22625
22465
|
if (!scrollContainer) return;
|
|
22626
22466
|
const slideHeight = scrollContainer.clientHeight;
|
|
@@ -22703,7 +22543,7 @@ function CarouselFullscreenScrollFx({
|
|
|
22703
22543
|
className: "flex h-screen flex-col snap-y snap-mandatory overflow-x-hidden overflow-y-auto scroll-smooth",
|
|
22704
22544
|
style: { scrollbarWidth: "none", msOverflowStyle: "none" },
|
|
22705
22545
|
children: slidesSlot ? slidesSlot : slides?.map((slide, index) => {
|
|
22706
|
-
const renderActions =
|
|
22546
|
+
const renderActions = React25.useMemo(() => {
|
|
22707
22547
|
if (!slide.actions || slide.actions.length === 0) return null;
|
|
22708
22548
|
return slide.actions.map((action, actionIndex) => {
|
|
22709
22549
|
const {
|
|
@@ -22836,25 +22676,25 @@ function CarouselGalleryThumbnails({
|
|
|
22836
22676
|
patternOpacity,
|
|
22837
22677
|
slideMediaBrightness = "100"
|
|
22838
22678
|
}) {
|
|
22839
|
-
const [currentIndex, setCurrentIndex] =
|
|
22840
|
-
const prevSlide =
|
|
22679
|
+
const [currentIndex, setCurrentIndex] = React25.useState(0);
|
|
22680
|
+
const prevSlide = React25.useCallback(() => {
|
|
22841
22681
|
setCurrentIndex(
|
|
22842
22682
|
(prev) => prev === 0 ? (images?.length ?? 0) - 1 : prev - 1
|
|
22843
22683
|
);
|
|
22844
22684
|
}, [images?.length]);
|
|
22845
|
-
const nextSlide =
|
|
22685
|
+
const nextSlide = React25.useCallback(() => {
|
|
22846
22686
|
setCurrentIndex(
|
|
22847
22687
|
(prev) => prev === (images?.length ?? 0) - 1 ? 0 : prev + 1
|
|
22848
22688
|
);
|
|
22849
22689
|
}, [images?.length]);
|
|
22850
|
-
|
|
22690
|
+
React25.useEffect(() => {
|
|
22851
22691
|
if (!autoPlay) return;
|
|
22852
22692
|
const interval = setInterval(() => {
|
|
22853
22693
|
nextSlide();
|
|
22854
22694
|
}, autoPlayInterval);
|
|
22855
22695
|
return () => clearInterval(interval);
|
|
22856
22696
|
}, [currentIndex, autoPlay, autoPlayInterval, nextSlide]);
|
|
22857
|
-
|
|
22697
|
+
React25.useEffect(() => {
|
|
22858
22698
|
const handleKeyDown = (e) => {
|
|
22859
22699
|
if (e.key === "ArrowRight") {
|
|
22860
22700
|
nextSlide();
|
|
@@ -22999,9 +22839,9 @@ function CarouselHorizontalCards({
|
|
|
22999
22839
|
pattern,
|
|
23000
22840
|
patternOpacity
|
|
23001
22841
|
}) {
|
|
23002
|
-
const carouselRef =
|
|
23003
|
-
const [isAtStart, setIsAtStart] =
|
|
23004
|
-
const [isAtEnd, setIsAtEnd] =
|
|
22842
|
+
const carouselRef = React25.useRef(null);
|
|
22843
|
+
const [isAtStart, setIsAtStart] = React25.useState(true);
|
|
22844
|
+
const [isAtEnd, setIsAtEnd] = React25.useState(false);
|
|
23005
22845
|
const scrollLeft = () => {
|
|
23006
22846
|
if (carouselRef.current) {
|
|
23007
22847
|
carouselRef.current.scrollBy({ left: -300, behavior: "smooth" });
|
|
@@ -23012,7 +22852,7 @@ function CarouselHorizontalCards({
|
|
|
23012
22852
|
carouselRef.current.scrollBy({ left: 300, behavior: "smooth" });
|
|
23013
22853
|
}
|
|
23014
22854
|
};
|
|
23015
|
-
|
|
22855
|
+
React25.useEffect(() => {
|
|
23016
22856
|
const checkScrollPosition = () => {
|
|
23017
22857
|
if (carouselRef.current) {
|
|
23018
22858
|
const { scrollLeft: scrollLeft2, scrollWidth, clientWidth } = carouselRef.current;
|
|
@@ -23212,22 +23052,22 @@ function CarouselImageHero({
|
|
|
23212
23052
|
pattern,
|
|
23213
23053
|
patternOpacity
|
|
23214
23054
|
}) {
|
|
23215
|
-
const [currentImageIndex, setCurrentImageIndex] =
|
|
23216
|
-
const intervalRef =
|
|
23217
|
-
const goToNext =
|
|
23055
|
+
const [currentImageIndex, setCurrentImageIndex] = React25.useState(0);
|
|
23056
|
+
const intervalRef = React25.useRef(null);
|
|
23057
|
+
const goToNext = React25.useCallback(() => {
|
|
23218
23058
|
setCurrentImageIndex((prevIndex) => (prevIndex + 1) % (images?.length ?? 1));
|
|
23219
23059
|
}, [images?.length]);
|
|
23220
|
-
const resetInterval =
|
|
23060
|
+
const resetInterval = React25.useCallback(() => {
|
|
23221
23061
|
if (intervalRef.current) {
|
|
23222
23062
|
clearInterval(intervalRef.current);
|
|
23223
23063
|
}
|
|
23224
23064
|
intervalRef.current = setInterval(goToNext, autoPlayInterval);
|
|
23225
23065
|
}, [goToNext, autoPlayInterval]);
|
|
23226
|
-
const goToSlide =
|
|
23066
|
+
const goToSlide = React25.useCallback((index) => {
|
|
23227
23067
|
setCurrentImageIndex(index);
|
|
23228
23068
|
resetInterval();
|
|
23229
23069
|
}, [resetInterval]);
|
|
23230
|
-
|
|
23070
|
+
React25.useEffect(() => {
|
|
23231
23071
|
resetInterval();
|
|
23232
23072
|
return () => {
|
|
23233
23073
|
if (intervalRef.current) {
|
|
@@ -23400,8 +23240,8 @@ function CarouselMultiStepShowcase({
|
|
|
23400
23240
|
pattern,
|
|
23401
23241
|
patternOpacity
|
|
23402
23242
|
}) {
|
|
23403
|
-
const [activeStep, setActiveStep] =
|
|
23404
|
-
const [direction, setDirection] =
|
|
23243
|
+
const [activeStep, setActiveStep] = React25.useState(0);
|
|
23244
|
+
const [direction, setDirection] = React25.useState(0);
|
|
23405
23245
|
const goToStep = (index) => {
|
|
23406
23246
|
setDirection(index > activeStep ? 1 : -1);
|
|
23407
23247
|
setActiveStep(index);
|
|
@@ -23693,9 +23533,9 @@ function CarouselPortfolioHero({
|
|
|
23693
23533
|
patternOpacity,
|
|
23694
23534
|
slideMediaBrightness = "50"
|
|
23695
23535
|
}) {
|
|
23696
|
-
const [currentIndex, setCurrentIndex] =
|
|
23697
|
-
const intervalRef =
|
|
23698
|
-
const resetInterval =
|
|
23536
|
+
const [currentIndex, setCurrentIndex] = React25.useState(0);
|
|
23537
|
+
const intervalRef = React25.useRef(null);
|
|
23538
|
+
const resetInterval = React25.useCallback(() => {
|
|
23699
23539
|
if (intervalRef.current) {
|
|
23700
23540
|
clearInterval(intervalRef.current);
|
|
23701
23541
|
}
|
|
@@ -23703,17 +23543,17 @@ function CarouselPortfolioHero({
|
|
|
23703
23543
|
setCurrentIndex((prevIndex) => (prevIndex + 1) % (slides?.length ?? 1));
|
|
23704
23544
|
}, autoPlayInterval);
|
|
23705
23545
|
}, [autoPlayInterval, slides?.length]);
|
|
23706
|
-
const goToNext =
|
|
23546
|
+
const goToNext = React25.useCallback(() => {
|
|
23707
23547
|
setCurrentIndex((prevIndex) => (prevIndex + 1) % (slides?.length ?? 1));
|
|
23708
23548
|
resetInterval();
|
|
23709
23549
|
}, [slides?.length, resetInterval]);
|
|
23710
|
-
const goToPrev =
|
|
23550
|
+
const goToPrev = React25.useCallback(() => {
|
|
23711
23551
|
setCurrentIndex(
|
|
23712
23552
|
(prevIndex) => (prevIndex - 1 + (slides?.length ?? 1)) % (slides?.length ?? 1)
|
|
23713
23553
|
);
|
|
23714
23554
|
resetInterval();
|
|
23715
23555
|
}, [slides?.length, resetInterval]);
|
|
23716
|
-
|
|
23556
|
+
React25.useEffect(() => {
|
|
23717
23557
|
resetInterval();
|
|
23718
23558
|
return () => {
|
|
23719
23559
|
if (intervalRef.current) {
|
|
@@ -23905,9 +23745,9 @@ function CarouselProductFeatureShowcase({
|
|
|
23905
23745
|
pattern,
|
|
23906
23746
|
patternOpacity
|
|
23907
23747
|
}) {
|
|
23908
|
-
const [activeIndex, setActiveIndex] =
|
|
23909
|
-
const [activeColorIndex, setActiveColorIndex] =
|
|
23910
|
-
const [direction, setDirection] =
|
|
23748
|
+
const [activeIndex, setActiveIndex] = React25.useState(0);
|
|
23749
|
+
const [activeColorIndex, setActiveColorIndex] = React25.useState(0);
|
|
23750
|
+
const [direction, setDirection] = React25.useState(0);
|
|
23911
23751
|
const activeFeature = features?.[activeIndex];
|
|
23912
23752
|
const goToNext = () => {
|
|
23913
23753
|
setDirection(1);
|
|
@@ -24127,9 +23967,9 @@ function CarouselProductFeatureShowcase({
|
|
|
24127
23967
|
}
|
|
24128
23968
|
);
|
|
24129
23969
|
}
|
|
24130
|
-
var ProgressSliderContext =
|
|
23970
|
+
var ProgressSliderContext = React25.createContext(void 0);
|
|
24131
23971
|
function useProgressSliderContext() {
|
|
24132
|
-
const context =
|
|
23972
|
+
const context = React25.useContext(ProgressSliderContext);
|
|
24133
23973
|
if (!context) {
|
|
24134
23974
|
throw new Error(
|
|
24135
23975
|
"useProgressSliderContext must be used within a ProgressSlider"
|
|
@@ -24215,19 +24055,19 @@ function CarouselProgressSlider({
|
|
|
24215
24055
|
pattern,
|
|
24216
24056
|
patternOpacity
|
|
24217
24057
|
}) {
|
|
24218
|
-
const [active, setActive] =
|
|
24219
|
-
const [progress, setProgress] =
|
|
24220
|
-
const [isFastForward, setIsFastForward] =
|
|
24221
|
-
const [isPaused, setIsPaused] =
|
|
24222
|
-
const frame =
|
|
24223
|
-
const firstFrameTime =
|
|
24224
|
-
const targetValue =
|
|
24225
|
-
const pausedProgress =
|
|
24226
|
-
const sliderValues =
|
|
24058
|
+
const [active, setActive] = React25.useState(slides?.[0]?.id ?? "");
|
|
24059
|
+
const [progress, setProgress] = React25.useState(0);
|
|
24060
|
+
const [isFastForward, setIsFastForward] = React25.useState(false);
|
|
24061
|
+
const [isPaused, setIsPaused] = React25.useState(false);
|
|
24062
|
+
const frame = React25.useRef(0);
|
|
24063
|
+
const firstFrameTime = React25.useRef(performance.now());
|
|
24064
|
+
const targetValue = React25.useRef(null);
|
|
24065
|
+
const pausedProgress = React25.useRef(0);
|
|
24066
|
+
const sliderValues = React25.useMemo(
|
|
24227
24067
|
() => slides?.map((slide) => slide.id),
|
|
24228
24068
|
[slides]
|
|
24229
24069
|
);
|
|
24230
|
-
|
|
24070
|
+
React25.useEffect(() => {
|
|
24231
24071
|
if ((sliderValues?.length ?? 0) > 0 && !isPaused) {
|
|
24232
24072
|
firstFrameTime.current = performance.now();
|
|
24233
24073
|
if (pausedProgress.current > 0) {
|
|
@@ -24392,11 +24232,11 @@ function CarouselScrollingFeatureShowcase({
|
|
|
24392
24232
|
pattern,
|
|
24393
24233
|
patternOpacity
|
|
24394
24234
|
}) {
|
|
24395
|
-
const [activeFeature, setActiveFeature] =
|
|
24235
|
+
const [activeFeature, setActiveFeature] = React25.useState(
|
|
24396
24236
|
features?.[0]?.id ?? ""
|
|
24397
24237
|
);
|
|
24398
|
-
const featureRefs =
|
|
24399
|
-
|
|
24238
|
+
const featureRefs = React25.useRef(/* @__PURE__ */ new Map());
|
|
24239
|
+
React25.useEffect(() => {
|
|
24400
24240
|
if (!features || features.length === 0) return;
|
|
24401
24241
|
const observerOptions = {
|
|
24402
24242
|
root: null,
|
|
@@ -25321,9 +25161,9 @@ function FeatureChecklistImage({
|
|
|
25321
25161
|
}
|
|
25322
25162
|
);
|
|
25323
25163
|
}
|
|
25324
|
-
var CarouselContext =
|
|
25164
|
+
var CarouselContext = React25.createContext(null);
|
|
25325
25165
|
function useCarousel() {
|
|
25326
|
-
const context =
|
|
25166
|
+
const context = React25.useContext(CarouselContext);
|
|
25327
25167
|
if (!context) {
|
|
25328
25168
|
throw new Error("useCarousel must be used within a <Carousel />");
|
|
25329
25169
|
}
|
|
@@ -25345,20 +25185,20 @@ function Carousel({
|
|
|
25345
25185
|
},
|
|
25346
25186
|
plugins
|
|
25347
25187
|
);
|
|
25348
|
-
const [canScrollPrev, setCanScrollPrev] =
|
|
25349
|
-
const [canScrollNext, setCanScrollNext] =
|
|
25350
|
-
const onSelect =
|
|
25188
|
+
const [canScrollPrev, setCanScrollPrev] = React25.useState(false);
|
|
25189
|
+
const [canScrollNext, setCanScrollNext] = React25.useState(false);
|
|
25190
|
+
const onSelect = React25.useCallback((api2) => {
|
|
25351
25191
|
if (!api2) return;
|
|
25352
25192
|
setCanScrollPrev(api2.canScrollPrev());
|
|
25353
25193
|
setCanScrollNext(api2.canScrollNext());
|
|
25354
25194
|
}, []);
|
|
25355
|
-
const scrollPrev =
|
|
25195
|
+
const scrollPrev = React25.useCallback(() => {
|
|
25356
25196
|
api?.scrollPrev();
|
|
25357
25197
|
}, [api]);
|
|
25358
|
-
const scrollNext =
|
|
25198
|
+
const scrollNext = React25.useCallback(() => {
|
|
25359
25199
|
api?.scrollNext();
|
|
25360
25200
|
}, [api]);
|
|
25361
|
-
const handleKeyDown =
|
|
25201
|
+
const handleKeyDown = React25.useCallback(
|
|
25362
25202
|
(event) => {
|
|
25363
25203
|
if (event.key === "ArrowLeft") {
|
|
25364
25204
|
event.preventDefault();
|
|
@@ -25370,11 +25210,11 @@ function Carousel({
|
|
|
25370
25210
|
},
|
|
25371
25211
|
[scrollPrev, scrollNext]
|
|
25372
25212
|
);
|
|
25373
|
-
|
|
25213
|
+
React25.useEffect(() => {
|
|
25374
25214
|
if (!api || !setApi) return;
|
|
25375
25215
|
setApi(api);
|
|
25376
25216
|
}, [api, setApi]);
|
|
25377
|
-
|
|
25217
|
+
React25.useEffect(() => {
|
|
25378
25218
|
if (!api) return;
|
|
25379
25219
|
onSelect(api);
|
|
25380
25220
|
api.on("reInit", onSelect);
|
|
@@ -26298,7 +26138,7 @@ function FeatureThreeColumnValues({
|
|
|
26298
26138
|
patternOpacity,
|
|
26299
26139
|
patternClassName
|
|
26300
26140
|
}) {
|
|
26301
|
-
const renderValueIcon =
|
|
26141
|
+
const renderValueIcon = React25.useCallback(
|
|
26302
26142
|
(value) => {
|
|
26303
26143
|
if (value.icon) return value.icon;
|
|
26304
26144
|
if (value.iconName)
|
|
@@ -26800,7 +26640,7 @@ function FeatureTabbedContentImage({
|
|
|
26800
26640
|
patternOpacity,
|
|
26801
26641
|
patternClassName
|
|
26802
26642
|
}) {
|
|
26803
|
-
const renderFeatures =
|
|
26643
|
+
const renderFeatures = React25.useCallback(
|
|
26804
26644
|
(slide) => {
|
|
26805
26645
|
if (slide.featuresSlot) return slide.featuresSlot;
|
|
26806
26646
|
if (!slide.features || slide.features.length === 0) return null;
|
|
@@ -26824,7 +26664,7 @@ function FeatureTabbedContentImage({
|
|
|
26824
26664
|
},
|
|
26825
26665
|
[]
|
|
26826
26666
|
);
|
|
26827
|
-
const renderActions =
|
|
26667
|
+
const renderActions = React25.useCallback(
|
|
26828
26668
|
(slide) => {
|
|
26829
26669
|
if (slide.actionsSlot) return slide.actionsSlot;
|
|
26830
26670
|
if (!slide.actions || slide.actions.length === 0) return null;
|
|
@@ -26867,7 +26707,7 @@ function FeatureTabbedContentImage({
|
|
|
26867
26707
|
},
|
|
26868
26708
|
[]
|
|
26869
26709
|
);
|
|
26870
|
-
const renderImage =
|
|
26710
|
+
const renderImage = React25.useCallback(
|
|
26871
26711
|
(slide) => {
|
|
26872
26712
|
if (slide.imageSlot) return slide.imageSlot;
|
|
26873
26713
|
if (!slide.image) return null;
|
|
@@ -27103,7 +26943,7 @@ function FeatureUtilityCardsGrid({
|
|
|
27103
26943
|
}
|
|
27104
26944
|
);
|
|
27105
26945
|
}, [learnMoreSlot, learnMoreAction, background]);
|
|
27106
|
-
const renderUtilityImage =
|
|
26946
|
+
const renderUtilityImage = React25.useCallback(
|
|
27107
26947
|
(utility) => {
|
|
27108
26948
|
if (utility.imageSlot) return utility.imageSlot;
|
|
27109
26949
|
if (utility.image) {
|
|
@@ -27281,7 +27121,7 @@ function FeatureBentoUtilities({
|
|
|
27281
27121
|
patternOpacity,
|
|
27282
27122
|
patternClassName
|
|
27283
27123
|
}) {
|
|
27284
|
-
const renderCard =
|
|
27124
|
+
const renderCard = React25.useCallback(
|
|
27285
27125
|
(card, index) => {
|
|
27286
27126
|
const hasImage = card.imageSrc || card.imageSlot;
|
|
27287
27127
|
const cardClasses = cn(
|
|
@@ -27337,7 +27177,7 @@ function FeatureBentoUtilities({
|
|
|
27337
27177
|
},
|
|
27338
27178
|
[optixFlowConfig]
|
|
27339
27179
|
);
|
|
27340
|
-
const renderColumn =
|
|
27180
|
+
const renderColumn = React25.useCallback(
|
|
27341
27181
|
(cards, slot) => {
|
|
27342
27182
|
if (slot) return slot;
|
|
27343
27183
|
if (!cards || cards.length === 0) return null;
|
|
@@ -28583,7 +28423,7 @@ function FeatureBentoImageGrid({
|
|
|
28583
28423
|
patternOpacity,
|
|
28584
28424
|
patternClassName
|
|
28585
28425
|
}) {
|
|
28586
|
-
const renderItemIcon =
|
|
28426
|
+
const renderItemIcon = React25.useCallback(
|
|
28587
28427
|
(item) => {
|
|
28588
28428
|
if (item.icon) return item.icon;
|
|
28589
28429
|
if (item.iconName) return /* @__PURE__ */ jsx(DynamicIcon, { name: item.iconName, size: 24 });
|
|
@@ -28591,7 +28431,7 @@ function FeatureBentoImageGrid({
|
|
|
28591
28431
|
},
|
|
28592
28432
|
[]
|
|
28593
28433
|
);
|
|
28594
|
-
const renderItemImage =
|
|
28434
|
+
const renderItemImage = React25.useCallback(
|
|
28595
28435
|
(item, imageClassName) => {
|
|
28596
28436
|
if (item.imageSlot) return item.imageSlot;
|
|
28597
28437
|
if (item.imageSrc) {
|
|
@@ -28610,7 +28450,7 @@ function FeatureBentoImageGrid({
|
|
|
28610
28450
|
},
|
|
28611
28451
|
[optixFlowConfig]
|
|
28612
28452
|
);
|
|
28613
|
-
const renderLargeCard =
|
|
28453
|
+
const renderLargeCard = React25.useCallback(
|
|
28614
28454
|
(item) => {
|
|
28615
28455
|
const iconContent = renderItemIcon(item);
|
|
28616
28456
|
const hasIconBadgeContent = iconContent || item.iconBadge;
|
|
@@ -28698,7 +28538,7 @@ function FeatureBentoImageGrid({
|
|
|
28698
28538
|
},
|
|
28699
28539
|
[largeCardClassName, renderItemImage, renderItemIcon]
|
|
28700
28540
|
);
|
|
28701
|
-
const renderSmallCard =
|
|
28541
|
+
const renderSmallCard = React25.useCallback(
|
|
28702
28542
|
(item, index) => {
|
|
28703
28543
|
const iconContent = renderItemIcon(item);
|
|
28704
28544
|
const hasIconBadgeContent = iconContent || item.iconBadge;
|
|
@@ -29313,7 +29153,7 @@ function FeatureAccordionImage({
|
|
|
29313
29153
|
patternOpacity,
|
|
29314
29154
|
patternClassName
|
|
29315
29155
|
}) {
|
|
29316
|
-
const [activeItem, setActiveItem] =
|
|
29156
|
+
const [activeItem, setActiveItem] = React25.useState(defaultValue || "item-0");
|
|
29317
29157
|
const activeIndex = parseInt(activeItem.replace("item-", ""), 10) || 0;
|
|
29318
29158
|
const currentImage = items?.[activeIndex] || items?.[0];
|
|
29319
29159
|
const accordionItemsContent = useMemo(() => {
|
|
@@ -29462,7 +29302,7 @@ function FeatureCapabilitiesGrid({
|
|
|
29462
29302
|
patternOpacity,
|
|
29463
29303
|
patternClassName
|
|
29464
29304
|
}) {
|
|
29465
|
-
const renderItemIcon =
|
|
29305
|
+
const renderItemIcon = React25.useCallback(
|
|
29466
29306
|
(item) => {
|
|
29467
29307
|
if (item.icon) return item.icon;
|
|
29468
29308
|
if (item.iconName) return /* @__PURE__ */ jsx(DynamicIcon, { name: item.iconName, size: 20 });
|
|
@@ -29614,7 +29454,7 @@ function FeatureCapabilitiesGrid({
|
|
|
29614
29454
|
}
|
|
29615
29455
|
);
|
|
29616
29456
|
}
|
|
29617
|
-
var TeamMemberBackgroundImageCard =
|
|
29457
|
+
var TeamMemberBackgroundImageCard = React25.forwardRef(
|
|
29618
29458
|
({ className, imageUrl, imageAlt, children, optixFlowConfig, background, ...props }, ref) => {
|
|
29619
29459
|
return /* @__PURE__ */ jsxs(
|
|
29620
29460
|
"div",
|
|
@@ -29662,7 +29502,7 @@ function TeamMediaShowcase({
|
|
|
29662
29502
|
actionClassName,
|
|
29663
29503
|
optixFlowConfig
|
|
29664
29504
|
}) {
|
|
29665
|
-
const renderItems =
|
|
29505
|
+
const renderItems = React25.useMemo(() => {
|
|
29666
29506
|
if (itemsSlot) return itemsSlot;
|
|
29667
29507
|
return items.map((member, idx) => {
|
|
29668
29508
|
const imageAlt = member.imageAlt || (member.name && typeof member.name === "string" && member.name.trim() !== "" ? member.name : `member-${idx}`);
|
|
@@ -29760,7 +29600,7 @@ function TeamSimpleGrid({
|
|
|
29760
29600
|
memberNameClassName,
|
|
29761
29601
|
memberRoleClassName
|
|
29762
29602
|
}) {
|
|
29763
|
-
const renderMembers =
|
|
29603
|
+
const renderMembers = React25.useMemo(() => {
|
|
29764
29604
|
if (membersSlot) return membersSlot;
|
|
29765
29605
|
if (!members || members.length === 0) return null;
|
|
29766
29606
|
return members.map((member) => /* @__PURE__ */ jsxs(
|
|
@@ -29922,7 +29762,7 @@ function FooterBrandLinksContact({
|
|
|
29922
29762
|
linkListClassName,
|
|
29923
29763
|
linkItemClassName
|
|
29924
29764
|
]);
|
|
29925
|
-
const contactItemsContent =
|
|
29765
|
+
const contactItemsContent = React25.useMemo(() => {
|
|
29926
29766
|
if (!contactItems || contactItems.length === 0) return null;
|
|
29927
29767
|
return contactItems.map((item, idx) => /* @__PURE__ */ jsxs(
|
|
29928
29768
|
"div",
|
|
@@ -30280,7 +30120,7 @@ function TeamSocialGrid({
|
|
|
30280
30120
|
memberRoleClassName,
|
|
30281
30121
|
socialLinksClassName
|
|
30282
30122
|
}) {
|
|
30283
|
-
const renderMembers =
|
|
30123
|
+
const renderMembers = React25.useMemo(() => {
|
|
30284
30124
|
if (membersSlot) return membersSlot;
|
|
30285
30125
|
if (!members || members.length === 0) return null;
|
|
30286
30126
|
return members.map((member) => /* @__PURE__ */ jsxs(
|
|
@@ -30432,7 +30272,7 @@ function TeamGradientCards({
|
|
|
30432
30272
|
memberRoleClassName,
|
|
30433
30273
|
socialLinksClassName
|
|
30434
30274
|
}) {
|
|
30435
|
-
const renderMembers =
|
|
30275
|
+
const renderMembers = React25.useMemo(() => {
|
|
30436
30276
|
if (membersSlot) return membersSlot;
|
|
30437
30277
|
if (!members || members.length === 0) return null;
|
|
30438
30278
|
return members.map((member) => /* @__PURE__ */ jsx(
|
|
@@ -30588,7 +30428,7 @@ function TeamBioBadges({
|
|
|
30588
30428
|
memberBioClassName,
|
|
30589
30429
|
socialLinksClassName
|
|
30590
30430
|
}) {
|
|
30591
|
-
const renderMembers =
|
|
30431
|
+
const renderMembers = React25.useMemo(() => {
|
|
30592
30432
|
if (membersSlot) return membersSlot;
|
|
30593
30433
|
if (!members || members.length === 0) return null;
|
|
30594
30434
|
return members.map((member) => /* @__PURE__ */ jsxs(
|
|
@@ -30765,7 +30605,7 @@ function TeamExpertiseCards({
|
|
|
30765
30605
|
ctaDescriptionClassName,
|
|
30766
30606
|
ctaButtonClassName
|
|
30767
30607
|
}) {
|
|
30768
|
-
const renderMembers =
|
|
30608
|
+
const renderMembers = React25.useMemo(() => {
|
|
30769
30609
|
if (membersSlot) return membersSlot;
|
|
30770
30610
|
if (!members || members.length === 0) return null;
|
|
30771
30611
|
return members.map((member) => /* @__PURE__ */ jsx(
|
|
@@ -30842,7 +30682,7 @@ function TeamExpertiseCards({
|
|
|
30842
30682
|
member.id
|
|
30843
30683
|
));
|
|
30844
30684
|
}, [membersSlot, members, background, memberCardClassName, avatarClassName, memberNameClassName, memberRoleClassName, departmentBadgeClassName, memberDescriptionClassName, expertiseClassName]);
|
|
30845
|
-
const renderCta =
|
|
30685
|
+
const renderCta = React25.useMemo(() => {
|
|
30846
30686
|
if (ctaSlot) return ctaSlot;
|
|
30847
30687
|
return /* @__PURE__ */ jsxs(
|
|
30848
30688
|
"div",
|
|
@@ -30958,7 +30798,7 @@ function TeamCompactGrid({
|
|
|
30958
30798
|
ctaDescriptionClassName,
|
|
30959
30799
|
ctaButtonClassName
|
|
30960
30800
|
}) {
|
|
30961
|
-
const renderMembers =
|
|
30801
|
+
const renderMembers = React25.useMemo(() => {
|
|
30962
30802
|
if (membersSlot) return membersSlot;
|
|
30963
30803
|
if (!members || members.length === 0) return null;
|
|
30964
30804
|
return members.map((member) => /* @__PURE__ */ jsxs(
|
|
@@ -31013,7 +30853,7 @@ function TeamCompactGrid({
|
|
|
31013
30853
|
member.id
|
|
31014
30854
|
));
|
|
31015
30855
|
}, [membersSlot, members, background, memberCardClassName, avatarClassName, memberNameClassName, memberRoleClassName, departmentBadgeClassName]);
|
|
31016
|
-
const renderCta =
|
|
30856
|
+
const renderCta = React25.useMemo(() => {
|
|
31017
30857
|
if (ctaSlot) return ctaSlot;
|
|
31018
30858
|
return /* @__PURE__ */ jsxs(
|
|
31019
30859
|
"div",
|
|
@@ -31117,7 +30957,7 @@ function TeamInvestorShowcase({
|
|
|
31117
30957
|
investorCompanyClassName,
|
|
31118
30958
|
optixFlowConfig
|
|
31119
30959
|
}) {
|
|
31120
|
-
const renderInvestors =
|
|
30960
|
+
const renderInvestors = React25.useMemo(() => {
|
|
31121
30961
|
if (investorsSlot) return investorsSlot;
|
|
31122
30962
|
if (!investors || investors.length === 0) return null;
|
|
31123
30963
|
return investors.map((investor) => /* @__PURE__ */ jsxs("div", { className: investorCardClassName, children: [
|
|
@@ -31191,7 +31031,7 @@ function TeamCarouselExperience({
|
|
|
31191
31031
|
memberRoleClassName,
|
|
31192
31032
|
optixFlowConfig
|
|
31193
31033
|
}) {
|
|
31194
|
-
const renderMembers =
|
|
31034
|
+
const renderMembers = React25.useMemo(() => {
|
|
31195
31035
|
if (membersSlot) return membersSlot;
|
|
31196
31036
|
if (!members || members.length === 0) return null;
|
|
31197
31037
|
return members.map((member, idx) => /* @__PURE__ */ jsx(CarouselItem, { className: "max-w-72", children: /* @__PURE__ */ jsxs(
|
|
@@ -31341,20 +31181,20 @@ function TeamFilterableSearch({
|
|
|
31341
31181
|
emptyStateClassName,
|
|
31342
31182
|
emptyStateMessage
|
|
31343
31183
|
}) {
|
|
31344
|
-
const [searchQuery, setSearchQuery] =
|
|
31345
|
-
const [selectedDepartment, setSelectedDepartment] =
|
|
31346
|
-
const departments =
|
|
31184
|
+
const [searchQuery, setSearchQuery] = React25.useState("");
|
|
31185
|
+
const [selectedDepartment, setSelectedDepartment] = React25.useState("All");
|
|
31186
|
+
const departments = React25.useMemo(() => {
|
|
31347
31187
|
const depts = new Set(members.map((m) => m.department));
|
|
31348
31188
|
return ["All", ...Array.from(depts)];
|
|
31349
31189
|
}, [members]);
|
|
31350
|
-
const filteredMembers =
|
|
31190
|
+
const filteredMembers = React25.useMemo(() => {
|
|
31351
31191
|
return members.filter((member) => {
|
|
31352
31192
|
const matchesSearch = searchQuery === "" || member.name.toLowerCase().includes(searchQuery.toLowerCase()) || member.role.toLowerCase().includes(searchQuery.toLowerCase()) || member.description.toLowerCase().includes(searchQuery.toLowerCase());
|
|
31353
31193
|
const matchesDepartment = selectedDepartment === "All" || member.department === selectedDepartment;
|
|
31354
31194
|
return matchesSearch && matchesDepartment;
|
|
31355
31195
|
});
|
|
31356
31196
|
}, [members, searchQuery, selectedDepartment]);
|
|
31357
|
-
const renderFilters =
|
|
31197
|
+
const renderFilters = React25.useMemo(() => {
|
|
31358
31198
|
if (filtersSlot) return filtersSlot;
|
|
31359
31199
|
return /* @__PURE__ */ jsxs(
|
|
31360
31200
|
"div",
|
|
@@ -31409,7 +31249,7 @@ function TeamFilterableSearch({
|
|
|
31409
31249
|
selectedDepartment,
|
|
31410
31250
|
filterButtonClassName
|
|
31411
31251
|
]);
|
|
31412
|
-
const renderMembers =
|
|
31252
|
+
const renderMembers = React25.useMemo(() => {
|
|
31413
31253
|
if (membersSlot) return membersSlot;
|
|
31414
31254
|
return filteredMembers.map((member) => /* @__PURE__ */ jsx(
|
|
31415
31255
|
"div",
|
|
@@ -31596,7 +31436,7 @@ function TeamCompactCta({
|
|
|
31596
31436
|
memberRoleClassName,
|
|
31597
31437
|
ctaClassName
|
|
31598
31438
|
}) {
|
|
31599
|
-
const renderMembers =
|
|
31439
|
+
const renderMembers = React25.useMemo(() => {
|
|
31600
31440
|
if (membersSlot) return membersSlot;
|
|
31601
31441
|
if (!members || members.length === 0) return null;
|
|
31602
31442
|
return members.map((member) => /* @__PURE__ */ jsxs(
|
|
@@ -31624,7 +31464,7 @@ function TeamCompactCta({
|
|
|
31624
31464
|
member.id
|
|
31625
31465
|
));
|
|
31626
31466
|
}, [membersSlot, members, memberCardClassName, avatarClassName, memberNameClassName, memberRoleClassName, background]);
|
|
31627
|
-
const renderCta =
|
|
31467
|
+
const renderCta = React25.useMemo(() => {
|
|
31628
31468
|
if (ctaSlot) return ctaSlot;
|
|
31629
31469
|
return /* @__PURE__ */ jsx(
|
|
31630
31470
|
Pressable,
|
|
@@ -31715,7 +31555,7 @@ function TeamHoverHighlight({
|
|
|
31715
31555
|
socialLinksClassName,
|
|
31716
31556
|
optixFlowConfig
|
|
31717
31557
|
}) {
|
|
31718
|
-
const renderMembers =
|
|
31558
|
+
const renderMembers = React25.useMemo(() => {
|
|
31719
31559
|
if (membersSlot) return membersSlot;
|
|
31720
31560
|
if (!members || members.length === 0) return null;
|
|
31721
31561
|
return members.map((member) => /* @__PURE__ */ jsxs(
|
|
@@ -31864,7 +31704,7 @@ function TeamSocialCards({
|
|
|
31864
31704
|
socialLinksClassName,
|
|
31865
31705
|
optixFlowConfig
|
|
31866
31706
|
}) {
|
|
31867
|
-
const renderMembers =
|
|
31707
|
+
const renderMembers = React25.useMemo(() => {
|
|
31868
31708
|
if (membersSlot) return membersSlot;
|
|
31869
31709
|
if (!members || members.length === 0) return null;
|
|
31870
31710
|
return members.map((member) => /* @__PURE__ */ jsx(
|
|
@@ -32034,7 +31874,7 @@ function TeamGridAnimated({
|
|
|
32034
31874
|
"hsl(var(--muted))",
|
|
32035
31875
|
"hsl(var(--warning)/0.2)"
|
|
32036
31876
|
];
|
|
32037
|
-
const renderMembers =
|
|
31877
|
+
const renderMembers = React25.useMemo(() => {
|
|
32038
31878
|
if (membersSlot) return membersSlot;
|
|
32039
31879
|
if (!members || members.length === 0) return null;
|
|
32040
31880
|
return members.map((member, index) => /* @__PURE__ */ jsxs(
|
|
@@ -32134,7 +31974,7 @@ function TeamGridAnimated({
|
|
|
32134
31974
|
memberDesignationClassName,
|
|
32135
31975
|
socialLinksClassName
|
|
32136
31976
|
]);
|
|
32137
|
-
const renderSocialLinksMain =
|
|
31977
|
+
const renderSocialLinksMain = React25.useMemo(() => {
|
|
32138
31978
|
if (socialLinksMainSlot) return socialLinksMainSlot;
|
|
32139
31979
|
if (!socialLinksMain || socialLinksMain.length === 0) return null;
|
|
32140
31980
|
return /* @__PURE__ */ jsxs("div", { className: "flex w-full items-center justify-center gap-4 py-4 md:justify-center", children: [
|
|
@@ -32251,7 +32091,7 @@ function TeamDepartmentSections({
|
|
|
32251
32091
|
memberRoleClassName,
|
|
32252
32092
|
optixFlowConfig
|
|
32253
32093
|
}) {
|
|
32254
|
-
const renderDepartments =
|
|
32094
|
+
const renderDepartments = React25.useMemo(() => {
|
|
32255
32095
|
if (departmentsSlot) return departmentsSlot;
|
|
32256
32096
|
if (!departments || departments.length === 0) return null;
|
|
32257
32097
|
return departments.map((department, deptIndex) => /* @__PURE__ */ jsxs(
|
|
@@ -32355,7 +32195,7 @@ function TeamAlternatingBios({
|
|
|
32355
32195
|
socialLinksClassName,
|
|
32356
32196
|
optixFlowConfig
|
|
32357
32197
|
}) {
|
|
32358
|
-
const renderMembers =
|
|
32198
|
+
const renderMembers = React25.useMemo(() => {
|
|
32359
32199
|
if (membersSlot) return membersSlot;
|
|
32360
32200
|
if (!members || members.length === 0) return null;
|
|
32361
32201
|
return members.map((member, index) => /* @__PURE__ */ jsxs(
|
|
@@ -32537,7 +32377,7 @@ function TeamAvatarSocial({
|
|
|
32537
32377
|
memberRoleClassName,
|
|
32538
32378
|
socialLinksClassName
|
|
32539
32379
|
}) {
|
|
32540
|
-
const renderMembers =
|
|
32380
|
+
const renderMembers = React25.useMemo(() => {
|
|
32541
32381
|
if (membersSlot) return membersSlot;
|
|
32542
32382
|
if (!members || members.length === 0) return null;
|
|
32543
32383
|
return members.map((member) => /* @__PURE__ */ jsxs(
|
|
@@ -32680,7 +32520,7 @@ function TeamHoverOverlay({
|
|
|
32680
32520
|
socialLinksClassName,
|
|
32681
32521
|
optixFlowConfig
|
|
32682
32522
|
}) {
|
|
32683
|
-
const renderMembers =
|
|
32523
|
+
const renderMembers = React25.useMemo(() => {
|
|
32684
32524
|
if (membersSlot) return membersSlot;
|
|
32685
32525
|
if (!members || members.length === 0) return null;
|
|
32686
32526
|
return members.map((member) => /* @__PURE__ */ jsx(
|
|
@@ -32856,14 +32696,14 @@ function TeamRoleFilter({
|
|
|
32856
32696
|
socialLinksClassName,
|
|
32857
32697
|
optixFlowConfig
|
|
32858
32698
|
}) {
|
|
32859
|
-
const [selectedRole, setSelectedRole] =
|
|
32860
|
-
const filteredMembers =
|
|
32699
|
+
const [selectedRole, setSelectedRole] = React25.useState("All");
|
|
32700
|
+
const filteredMembers = React25.useMemo(() => {
|
|
32861
32701
|
if (!members) return [];
|
|
32862
32702
|
return members.filter(
|
|
32863
32703
|
(member) => selectedRole === "All" ? true : member.role === selectedRole
|
|
32864
32704
|
);
|
|
32865
32705
|
}, [members, selectedRole]);
|
|
32866
|
-
const renderRoles =
|
|
32706
|
+
const renderRoles = React25.useMemo(() => {
|
|
32867
32707
|
if (rolesSlot) return rolesSlot;
|
|
32868
32708
|
if (!roles) return null;
|
|
32869
32709
|
return /* @__PURE__ */ jsx(
|
|
@@ -32887,7 +32727,7 @@ function TeamRoleFilter({
|
|
|
32887
32727
|
}
|
|
32888
32728
|
);
|
|
32889
32729
|
}, [rolesSlot, filtersClassName, roles, selectedRole, filterButtonClassName]);
|
|
32890
|
-
const renderMembers =
|
|
32730
|
+
const renderMembers = React25.useMemo(() => {
|
|
32891
32731
|
if (membersSlot) return membersSlot;
|
|
32892
32732
|
return filteredMembers.map((member) => /* @__PURE__ */ jsx(
|
|
32893
32733
|
Card,
|
|
@@ -33047,7 +32887,7 @@ function TeamContactCards({
|
|
|
33047
32887
|
socialLinksClassName,
|
|
33048
32888
|
optixFlowConfig
|
|
33049
32889
|
}) {
|
|
33050
|
-
const getStatusColor =
|
|
32890
|
+
const getStatusColor = React25.useCallback((status) => {
|
|
33051
32891
|
switch (status) {
|
|
33052
32892
|
case "active":
|
|
33053
32893
|
return "bg-success";
|
|
@@ -33057,7 +32897,7 @@ function TeamContactCards({
|
|
|
33057
32897
|
return getTextColor(background, "muted");
|
|
33058
32898
|
}
|
|
33059
32899
|
}, [background]);
|
|
33060
|
-
const renderMembers =
|
|
32900
|
+
const renderMembers = React25.useMemo(() => {
|
|
33061
32901
|
if (membersSlot) return membersSlot;
|
|
33062
32902
|
if (!members || members.length === 0) return null;
|
|
33063
32903
|
return members.map((member) => /* @__PURE__ */ jsx(Card, { className: cn("p-0", memberCardClassName), children: /* @__PURE__ */ jsxs(CardContent, { className: "p-6!", children: [
|
|
@@ -33264,7 +33104,7 @@ function TeamLargeImages({
|
|
|
33264
33104
|
socialLinksClassName,
|
|
33265
33105
|
optixFlowConfig
|
|
33266
33106
|
}) {
|
|
33267
|
-
const renderMembers =
|
|
33107
|
+
const renderMembers = React25.useMemo(() => {
|
|
33268
33108
|
if (membersSlot) return membersSlot;
|
|
33269
33109
|
if (!members || members.length === 0) return null;
|
|
33270
33110
|
return members.map((member) => /* @__PURE__ */ jsxs(
|
|
@@ -33439,7 +33279,7 @@ function TeamSkillBadges({
|
|
|
33439
33279
|
socialLinksClassName,
|
|
33440
33280
|
optixFlowConfig
|
|
33441
33281
|
}) {
|
|
33442
|
-
const renderMembers =
|
|
33282
|
+
const renderMembers = React25.useMemo(() => {
|
|
33443
33283
|
if (membersSlot) return membersSlot;
|
|
33444
33284
|
if (!members || members.length === 0) return null;
|
|
33445
33285
|
return members.map((member) => /* @__PURE__ */ jsx(
|
|
@@ -33629,7 +33469,7 @@ function TeamTestimonialStats({
|
|
|
33629
33469
|
socialLinksClassName,
|
|
33630
33470
|
optixFlowConfig
|
|
33631
33471
|
}) {
|
|
33632
|
-
const renderMembers =
|
|
33472
|
+
const renderMembers = React25.useMemo(() => {
|
|
33633
33473
|
if (membersSlot) return membersSlot;
|
|
33634
33474
|
if (!members || members.length === 0) return null;
|
|
33635
33475
|
return members.map((member) => /* @__PURE__ */ jsx(
|
|
@@ -37773,7 +37613,7 @@ function BlogGridAuthorCardsComponent({
|
|
|
37773
37613
|
pattern,
|
|
37774
37614
|
patternOpacity
|
|
37775
37615
|
}) {
|
|
37776
|
-
const viewAllActionContent =
|
|
37616
|
+
const viewAllActionContent = React25.useMemo(() => {
|
|
37777
37617
|
if (viewAllSlot) return viewAllSlot;
|
|
37778
37618
|
if (!viewAllAction) return null;
|
|
37779
37619
|
const {
|
|
@@ -37798,7 +37638,7 @@ function BlogGridAuthorCardsComponent({
|
|
|
37798
37638
|
}
|
|
37799
37639
|
);
|
|
37800
37640
|
}, [viewAllSlot, viewAllAction]);
|
|
37801
|
-
const postsContent =
|
|
37641
|
+
const postsContent = React25.useMemo(() => {
|
|
37802
37642
|
if (postsSlot) return postsSlot;
|
|
37803
37643
|
if (!posts || posts.length === 0) return null;
|
|
37804
37644
|
return posts.map((post) => {
|
|
@@ -37910,7 +37750,7 @@ function BlogCardsTaglineCta({
|
|
|
37910
37750
|
pattern,
|
|
37911
37751
|
patternOpacity
|
|
37912
37752
|
}) {
|
|
37913
|
-
const ctaActionContent =
|
|
37753
|
+
const ctaActionContent = React25.useMemo(() => {
|
|
37914
37754
|
if (ctaSlot) return ctaSlot;
|
|
37915
37755
|
if (!ctaAction) return null;
|
|
37916
37756
|
const {
|
|
@@ -37938,7 +37778,7 @@ function BlogCardsTaglineCta({
|
|
|
37938
37778
|
}
|
|
37939
37779
|
);
|
|
37940
37780
|
}, [ctaSlot, ctaAction, ctaClassName]);
|
|
37941
|
-
const postsContent =
|
|
37781
|
+
const postsContent = React25.useMemo(() => {
|
|
37942
37782
|
if (postsSlot) return postsSlot;
|
|
37943
37783
|
if (!posts || posts.length === 0) return null;
|
|
37944
37784
|
return posts.map((post) => {
|
|
@@ -38084,7 +37924,7 @@ function BlogCardsReadTime({
|
|
|
38084
37924
|
pattern,
|
|
38085
37925
|
patternOpacity
|
|
38086
37926
|
}) {
|
|
38087
|
-
const renderedViewAllAction =
|
|
37927
|
+
const renderedViewAllAction = React25.useMemo(() => {
|
|
38088
37928
|
if (viewAllSlot) return viewAllSlot;
|
|
38089
37929
|
if (!viewAllAction) return null;
|
|
38090
37930
|
const {
|
|
@@ -38101,7 +37941,7 @@ function BlogCardsReadTime({
|
|
|
38101
37941
|
iconAfter
|
|
38102
37942
|
] }) });
|
|
38103
37943
|
}, [viewAllSlot, viewAllAction]);
|
|
38104
|
-
const renderedPosts =
|
|
37944
|
+
const renderedPosts = React25.useMemo(() => {
|
|
38105
37945
|
if (postsSlot) return postsSlot;
|
|
38106
37946
|
if (!posts || posts.length === 0) return null;
|
|
38107
37947
|
return posts.map((post) => {
|
|
@@ -38238,7 +38078,7 @@ function BlogCategoryOverlay({
|
|
|
38238
38078
|
pattern,
|
|
38239
38079
|
patternOpacity
|
|
38240
38080
|
}) {
|
|
38241
|
-
const viewAllActionContent =
|
|
38081
|
+
const viewAllActionContent = React25.useMemo(() => {
|
|
38242
38082
|
if (viewAllSlot) return viewAllSlot;
|
|
38243
38083
|
if (!viewAllAction) return null;
|
|
38244
38084
|
const {
|
|
@@ -38266,7 +38106,7 @@ function BlogCategoryOverlay({
|
|
|
38266
38106
|
}
|
|
38267
38107
|
);
|
|
38268
38108
|
}, [viewAllSlot, viewAllAction, viewAllClassName]);
|
|
38269
|
-
const postsContent =
|
|
38109
|
+
const postsContent = React25.useMemo(() => {
|
|
38270
38110
|
if (postsSlot) return postsSlot;
|
|
38271
38111
|
if (!posts || posts.length === 0) return null;
|
|
38272
38112
|
return posts.map((post) => {
|
|
@@ -38414,7 +38254,7 @@ function BlogFeaturedPopular({
|
|
|
38414
38254
|
}) {
|
|
38415
38255
|
const featuredPost = posts?.[0];
|
|
38416
38256
|
const popularPosts = posts?.slice(1);
|
|
38417
|
-
const renderedFeaturedPost =
|
|
38257
|
+
const renderedFeaturedPost = React25.useMemo(() => {
|
|
38418
38258
|
if (featuredSlot) return featuredSlot;
|
|
38419
38259
|
if (!featuredPost) return null;
|
|
38420
38260
|
const postHref = featuredPost.href || featuredPost.url || featuredPost.link;
|
|
@@ -38466,7 +38306,7 @@ function BlogFeaturedPopular({
|
|
|
38466
38306
|
featuredContentClassName,
|
|
38467
38307
|
optixFlowConfig
|
|
38468
38308
|
]);
|
|
38469
|
-
const renderedPopularPosts =
|
|
38309
|
+
const renderedPopularPosts = React25.useMemo(() => {
|
|
38470
38310
|
if (postsSlot) return postsSlot;
|
|
38471
38311
|
if (!popularPosts || popularPosts.length === 0) return null;
|
|
38472
38312
|
return popularPosts.map((post) => {
|
|
@@ -38583,7 +38423,7 @@ function BlogRelatedArticles({
|
|
|
38583
38423
|
pattern,
|
|
38584
38424
|
patternOpacity
|
|
38585
38425
|
}) {
|
|
38586
|
-
const renderedSeeAllAction =
|
|
38426
|
+
const renderedSeeAllAction = React25.useMemo(() => {
|
|
38587
38427
|
if (seeAllSlot) return seeAllSlot;
|
|
38588
38428
|
if (!seeAllAction) return null;
|
|
38589
38429
|
const {
|
|
@@ -38612,7 +38452,7 @@ function BlogRelatedArticles({
|
|
|
38612
38452
|
}
|
|
38613
38453
|
);
|
|
38614
38454
|
}, [seeAllSlot, seeAllAction, seeAllClassName]);
|
|
38615
|
-
const renderedArticles =
|
|
38455
|
+
const renderedArticles = React25.useMemo(() => {
|
|
38616
38456
|
if (articlesSlot) return articlesSlot;
|
|
38617
38457
|
if (!articles || articles.length === 0) return null;
|
|
38618
38458
|
return articles.map((item) => {
|
|
@@ -38920,7 +38760,7 @@ function BlogHorizontalCards({
|
|
|
38920
38760
|
pattern,
|
|
38921
38761
|
patternOpacity
|
|
38922
38762
|
}) {
|
|
38923
|
-
const ctaContent =
|
|
38763
|
+
const ctaContent = React25.useMemo(() => {
|
|
38924
38764
|
if (ctaSlot) return ctaSlot;
|
|
38925
38765
|
if (!ctaAction) return null;
|
|
38926
38766
|
const {
|
|
@@ -38945,7 +38785,7 @@ function BlogHorizontalCards({
|
|
|
38945
38785
|
}
|
|
38946
38786
|
);
|
|
38947
38787
|
}, [ctaSlot, ctaAction]);
|
|
38948
|
-
const postsContent =
|
|
38788
|
+
const postsContent = React25.useMemo(() => {
|
|
38949
38789
|
if (postsSlot) return postsSlot;
|
|
38950
38790
|
if (!posts || posts.length === 0) return null;
|
|
38951
38791
|
return posts.map((post) => {
|
|
@@ -39167,7 +39007,7 @@ function Label({
|
|
|
39167
39007
|
);
|
|
39168
39008
|
}
|
|
39169
39009
|
var POSTS_PER_PAGE = 6;
|
|
39170
|
-
var BlogCard =
|
|
39010
|
+
var BlogCard = React25.memo(function BlogCard2({
|
|
39171
39011
|
post,
|
|
39172
39012
|
optixFlowConfig,
|
|
39173
39013
|
className
|
|
@@ -39206,7 +39046,7 @@ var BlogCard = React23.memo(function BlogCard2({
|
|
|
39206
39046
|
] })
|
|
39207
39047
|
] }) });
|
|
39208
39048
|
});
|
|
39209
|
-
var FilterForm =
|
|
39049
|
+
var FilterForm = React25.memo(function FilterForm2({
|
|
39210
39050
|
categories,
|
|
39211
39051
|
selectedCategories,
|
|
39212
39052
|
onCategoryChange,
|
|
@@ -39239,7 +39079,7 @@ var FilterForm = React23.memo(function FilterForm2({
|
|
|
39239
39079
|
}
|
|
39240
39080
|
);
|
|
39241
39081
|
});
|
|
39242
|
-
var BreadcrumbBlog =
|
|
39082
|
+
var BreadcrumbBlog = React25.memo(function BreadcrumbBlog2({
|
|
39243
39083
|
breadcrumb
|
|
39244
39084
|
}) {
|
|
39245
39085
|
return /* @__PURE__ */ jsx(Breadcrumb, { children: /* @__PURE__ */ jsx(BreadcrumbList, { children: breadcrumb.map((item, i) => {
|
|
@@ -39321,12 +39161,12 @@ function BlogFilteredResultsComponent({
|
|
|
39321
39161
|
}, [posts, selectedCategories]);
|
|
39322
39162
|
const postsToDisplay = filteredPosts.length > 0 ? filteredPosts : posts || [];
|
|
39323
39163
|
const hasMore = visibleCount < postsToDisplay.length;
|
|
39324
|
-
const breadcrumbContent =
|
|
39164
|
+
const breadcrumbContent = React25.useMemo(() => {
|
|
39325
39165
|
if (breadcrumbSlot) return breadcrumbSlot;
|
|
39326
39166
|
if (!breadcrumb || breadcrumb.length === 0) return null;
|
|
39327
39167
|
return /* @__PURE__ */ jsx(BreadcrumbBlog, { breadcrumb });
|
|
39328
39168
|
}, [breadcrumbSlot, breadcrumb]);
|
|
39329
|
-
const primaryPostContent =
|
|
39169
|
+
const primaryPostContent = React25.useMemo(() => {
|
|
39330
39170
|
if (primaryPostSlot) return primaryPostSlot;
|
|
39331
39171
|
if (!primaryPost) return null;
|
|
39332
39172
|
return /* @__PURE__ */ jsx(
|
|
@@ -39338,7 +39178,7 @@ function BlogFilteredResultsComponent({
|
|
|
39338
39178
|
}
|
|
39339
39179
|
);
|
|
39340
39180
|
}, [primaryPostSlot, primaryPost, optixFlowConfig, postCardClassName]);
|
|
39341
|
-
const categoriesContent =
|
|
39181
|
+
const categoriesContent = React25.useMemo(() => {
|
|
39342
39182
|
if (categoriesSlot) return categoriesSlot;
|
|
39343
39183
|
if (!categories || categories.length === 0) return null;
|
|
39344
39184
|
return /* @__PURE__ */ jsx(
|
|
@@ -39357,7 +39197,7 @@ function BlogFilteredResultsComponent({
|
|
|
39357
39197
|
handleCategoryChange,
|
|
39358
39198
|
categoriesClassName
|
|
39359
39199
|
]);
|
|
39360
|
-
const postsContent =
|
|
39200
|
+
const postsContent = React25.useMemo(() => {
|
|
39361
39201
|
if (postsSlot) return postsSlot;
|
|
39362
39202
|
return postsToDisplay.slice(0, visibleCount).map((post) => {
|
|
39363
39203
|
const postKey = post.id || String(post.title) || Math.random().toString();
|
|
@@ -39378,7 +39218,7 @@ function BlogFilteredResultsComponent({
|
|
|
39378
39218
|
optixFlowConfig,
|
|
39379
39219
|
postCardClassName
|
|
39380
39220
|
]);
|
|
39381
|
-
const loadMoreContent =
|
|
39221
|
+
const loadMoreContent = React25.useMemo(() => {
|
|
39382
39222
|
if (loadMoreSlot) return loadMoreSlot;
|
|
39383
39223
|
if (!loadMoreAction || !hasMore) return null;
|
|
39384
39224
|
const {
|
|
@@ -39504,7 +39344,7 @@ function BlogMasonryFeaturedComponent({
|
|
|
39504
39344
|
}) {
|
|
39505
39345
|
const featuredPost = posts?.[0];
|
|
39506
39346
|
const otherPosts = posts?.slice(1);
|
|
39507
|
-
const featuredPostContent =
|
|
39347
|
+
const featuredPostContent = React25.useMemo(() => {
|
|
39508
39348
|
if (featuredSlot) return featuredSlot;
|
|
39509
39349
|
if (!featuredPost) return null;
|
|
39510
39350
|
const postHref = featuredPost.href || featuredPost.url || featuredPost.link || "#";
|
|
@@ -39554,7 +39394,7 @@ function BlogMasonryFeaturedComponent({
|
|
|
39554
39394
|
featuredImageClassName,
|
|
39555
39395
|
optixFlowConfig
|
|
39556
39396
|
]);
|
|
39557
|
-
const otherPostsContent =
|
|
39397
|
+
const otherPostsContent = React25.useMemo(() => {
|
|
39558
39398
|
if (postsSlot) return postsSlot;
|
|
39559
39399
|
if (!otherPosts || otherPosts.length === 0) return null;
|
|
39560
39400
|
return otherPosts.map((post) => {
|
|
@@ -39643,7 +39483,7 @@ function BlogHorizontalTimelineComponent({
|
|
|
39643
39483
|
pattern,
|
|
39644
39484
|
patternOpacity
|
|
39645
39485
|
}) {
|
|
39646
|
-
const renderPosts =
|
|
39486
|
+
const renderPosts = React25.useMemo(() => {
|
|
39647
39487
|
if (postsSlot) return postsSlot;
|
|
39648
39488
|
if (!posts || posts.length === 0) return null;
|
|
39649
39489
|
return posts.map((post, index) => {
|
|
@@ -39768,7 +39608,7 @@ function BlogGridNinePosts({
|
|
|
39768
39608
|
pattern,
|
|
39769
39609
|
patternOpacity
|
|
39770
39610
|
}) {
|
|
39771
|
-
const renderedCtaAction =
|
|
39611
|
+
const renderedCtaAction = React25.useMemo(() => {
|
|
39772
39612
|
if (ctaSlot) return ctaSlot;
|
|
39773
39613
|
if (!ctaAction) return null;
|
|
39774
39614
|
const {
|
|
@@ -39793,7 +39633,7 @@ function BlogGridNinePosts({
|
|
|
39793
39633
|
}
|
|
39794
39634
|
);
|
|
39795
39635
|
}, [ctaSlot, ctaAction]);
|
|
39796
|
-
const renderedPosts =
|
|
39636
|
+
const renderedPosts = React25.useMemo(() => {
|
|
39797
39637
|
if (postsSlot) return postsSlot;
|
|
39798
39638
|
if (!posts || posts.length === 0) return null;
|
|
39799
39639
|
return posts.map((post) => {
|
|
@@ -39891,9 +39731,9 @@ var AppleCarousel = ({
|
|
|
39891
39731
|
className,
|
|
39892
39732
|
containerClassName
|
|
39893
39733
|
}) => {
|
|
39894
|
-
const carouselRef =
|
|
39895
|
-
const [canScrollLeft, setCanScrollLeft] =
|
|
39896
|
-
const [canScrollRight, setCanScrollRight] =
|
|
39734
|
+
const carouselRef = React25__default.useRef(null);
|
|
39735
|
+
const [canScrollLeft, setCanScrollLeft] = React25__default.useState(false);
|
|
39736
|
+
const [canScrollRight, setCanScrollRight] = React25__default.useState(true);
|
|
39897
39737
|
const [currentIndex, setCurrentIndex] = useState(0);
|
|
39898
39738
|
useEffect(() => {
|
|
39899
39739
|
if (carouselRef.current) {
|
|
@@ -40130,7 +39970,7 @@ function BlogCarouselAppleComponent({
|
|
|
40130
39970
|
containerClassName,
|
|
40131
39971
|
cardClassName
|
|
40132
39972
|
}) {
|
|
40133
|
-
const carouselCards =
|
|
39973
|
+
const carouselCards = React25.useMemo(() => {
|
|
40134
39974
|
if (!posts || posts.length === 0) return [];
|
|
40135
39975
|
return posts.map(
|
|
40136
39976
|
(post, idx) => ({
|
|
@@ -40142,7 +39982,7 @@ function BlogCarouselAppleComponent({
|
|
|
40142
39982
|
})
|
|
40143
39983
|
);
|
|
40144
39984
|
}, [posts]);
|
|
40145
|
-
const cardElements =
|
|
39985
|
+
const cardElements = React25.useMemo(() => {
|
|
40146
39986
|
if (!posts || posts.length === 0) return [];
|
|
40147
39987
|
return carouselCards.map((card, index) => {
|
|
40148
39988
|
const post = posts[index];
|
|
@@ -40227,7 +40067,7 @@ function ArticleHeroProseComponent({
|
|
|
40227
40067
|
description,
|
|
40228
40068
|
authorImage
|
|
40229
40069
|
} = post ?? {};
|
|
40230
|
-
const authorContent =
|
|
40070
|
+
const authorContent = React25.useMemo(() => {
|
|
40231
40071
|
if (authorSlot) return authorSlot;
|
|
40232
40072
|
if (!authorName) return null;
|
|
40233
40073
|
return /* @__PURE__ */ jsxs(
|
|
@@ -40261,7 +40101,7 @@ function ArticleHeroProseComponent({
|
|
|
40261
40101
|
dateFormat,
|
|
40262
40102
|
authorClassName
|
|
40263
40103
|
]);
|
|
40264
|
-
const heroMediaContent =
|
|
40104
|
+
const heroMediaContent = React25.useMemo(() => {
|
|
40265
40105
|
if (heroMediaSlot) return heroMediaSlot;
|
|
40266
40106
|
if (!image) return null;
|
|
40267
40107
|
return /* @__PURE__ */ jsx(
|
|
@@ -40362,7 +40202,7 @@ function ArticleSidebarStickyComponent({
|
|
|
40362
40202
|
pattern,
|
|
40363
40203
|
patternOpacity
|
|
40364
40204
|
}) {
|
|
40365
|
-
const backLinkContent =
|
|
40205
|
+
const backLinkContent = React25.useMemo(() => {
|
|
40366
40206
|
if (backLinkSlot) return backLinkSlot;
|
|
40367
40207
|
if (!backHref && !backText) return null;
|
|
40368
40208
|
return /* @__PURE__ */ jsxs(
|
|
@@ -40380,7 +40220,7 @@ function ArticleSidebarStickyComponent({
|
|
|
40380
40220
|
}
|
|
40381
40221
|
);
|
|
40382
40222
|
}, [backLinkSlot, backHref, backText, backIcon, backLinkClassName]);
|
|
40383
|
-
const renderAuthor =
|
|
40223
|
+
const renderAuthor = React25.useCallback(
|
|
40384
40224
|
(isMobile = false) => {
|
|
40385
40225
|
if (authorSlot) return authorSlot;
|
|
40386
40226
|
if (!authorName) return null;
|
|
@@ -40412,7 +40252,7 @@ function ArticleSidebarStickyComponent({
|
|
|
40412
40252
|
authorClassName
|
|
40413
40253
|
]
|
|
40414
40254
|
);
|
|
40415
|
-
const heroMediaContent =
|
|
40255
|
+
const heroMediaContent = React25.useMemo(() => {
|
|
40416
40256
|
if (heroMediaSlot) return heroMediaSlot;
|
|
40417
40257
|
if (!heroImageSrc) return null;
|
|
40418
40258
|
return /* @__PURE__ */ jsx(
|
|
@@ -40519,10 +40359,10 @@ function ArticleTocSidebarComponent({
|
|
|
40519
40359
|
patternOpacity
|
|
40520
40360
|
}) {
|
|
40521
40361
|
const ctaActions = ctaActionsProp ?? (ctaButtonText ? [{ label: ctaButtonText, href: ctaButtonHref || "#", variant: "default", className: "w-full" }] : []);
|
|
40522
|
-
const [activeSection, setActiveSection] =
|
|
40362
|
+
const [activeSection, setActiveSection] = React25.useState(
|
|
40523
40363
|
sections?.[0]?.id || ""
|
|
40524
40364
|
);
|
|
40525
|
-
|
|
40365
|
+
React25.useEffect(() => {
|
|
40526
40366
|
if (!enableTocTracking || !sections || sections.length === 0) return;
|
|
40527
40367
|
const observer = new IntersectionObserver(
|
|
40528
40368
|
(entries) => {
|
|
@@ -40540,12 +40380,12 @@ function ArticleTocSidebarComponent({
|
|
|
40540
40380
|
});
|
|
40541
40381
|
return () => observer.disconnect();
|
|
40542
40382
|
}, [sections, enableTocTracking]);
|
|
40543
|
-
const categoryContent =
|
|
40383
|
+
const categoryContent = React25.useMemo(() => {
|
|
40544
40384
|
if (categorySlot) return categorySlot;
|
|
40545
40385
|
if (!category) return null;
|
|
40546
40386
|
return /* @__PURE__ */ jsx(Badge, { variant: "secondary", children: category });
|
|
40547
40387
|
}, [categorySlot, category]);
|
|
40548
|
-
const authorContent =
|
|
40388
|
+
const authorContent = React25.useMemo(() => {
|
|
40549
40389
|
if (authorSlot) return authorSlot;
|
|
40550
40390
|
if (!authorName) return null;
|
|
40551
40391
|
return /* @__PURE__ */ jsxs("div", { className: cn("mt-6 flex items-center gap-4", authorClassName), children: [
|
|
@@ -40565,7 +40405,7 @@ function ArticleTocSidebarComponent({
|
|
|
40565
40405
|
] })
|
|
40566
40406
|
] });
|
|
40567
40407
|
}, [authorSlot, authorName, authorImage, authorHref, publishDate, readTime, authorClassName]);
|
|
40568
|
-
const heroMediaContent =
|
|
40408
|
+
const heroMediaContent = React25.useMemo(() => {
|
|
40569
40409
|
if (heroMediaSlot) return heroMediaSlot;
|
|
40570
40410
|
if (!heroImageSrc) return null;
|
|
40571
40411
|
return /* @__PURE__ */ jsx(
|
|
@@ -40578,7 +40418,7 @@ function ArticleTocSidebarComponent({
|
|
|
40578
40418
|
}
|
|
40579
40419
|
);
|
|
40580
40420
|
}, [heroMediaSlot, heroImageSrc, heroImageAlt, heroImageClassName, optixFlowConfig]);
|
|
40581
|
-
const tocContent =
|
|
40421
|
+
const tocContent = React25.useMemo(() => {
|
|
40582
40422
|
if (tocSlot) return tocSlot;
|
|
40583
40423
|
if (!sections || sections.length === 0) return null;
|
|
40584
40424
|
return /* @__PURE__ */ jsxs("div", { className: cn("rounded-lg border p-4", tocClassName), children: [
|
|
@@ -40586,7 +40426,7 @@ function ArticleTocSidebarComponent({
|
|
|
40586
40426
|
/* @__PURE__ */ jsx("nav", { className: "space-y-2", children: sections.map((section) => {
|
|
40587
40427
|
const isActive = activeSection === section.id;
|
|
40588
40428
|
if (renderSectionLink) {
|
|
40589
|
-
return /* @__PURE__ */ jsx(
|
|
40429
|
+
return /* @__PURE__ */ jsx(React25.Fragment, { children: renderSectionLink(section, isActive) }, section.id);
|
|
40590
40430
|
}
|
|
40591
40431
|
return /* @__PURE__ */ jsx(
|
|
40592
40432
|
Pressable,
|
|
@@ -40603,7 +40443,7 @@ function ArticleTocSidebarComponent({
|
|
|
40603
40443
|
}) })
|
|
40604
40444
|
] });
|
|
40605
40445
|
}, [tocSlot, sections, activeSection, renderSectionLink, tocClassName]);
|
|
40606
|
-
const ctaContent =
|
|
40446
|
+
const ctaContent = React25.useMemo(() => {
|
|
40607
40447
|
if (ctaSlot) return ctaSlot;
|
|
40608
40448
|
if (!ctaTitle && !ctaDescription && (!ctaActions || ctaActions.length === 0)) return null;
|
|
40609
40449
|
return /* @__PURE__ */ jsxs("div", { className: cn("rounded-lg border p-4", getNestedCardBg(background, "subtle"), getNestedCardTextColor(background), ctaClassName), children: [
|
|
@@ -40692,11 +40532,11 @@ function ArticleBreadcrumbSocialComponent({
|
|
|
40692
40532
|
patternOpacity
|
|
40693
40533
|
}) {
|
|
40694
40534
|
const author = authorProp ?? (authorName ? { name: authorName, image: authorImage, role: authorRole } : void 0);
|
|
40695
|
-
const [activeSection, setActiveSection] =
|
|
40535
|
+
const [activeSection, setActiveSection] = React25.useState(
|
|
40696
40536
|
sections?.[0]?.id || ""
|
|
40697
40537
|
);
|
|
40698
|
-
const [showBackToTop, setShowBackToTop] =
|
|
40699
|
-
|
|
40538
|
+
const [showBackToTop, setShowBackToTop] = React25.useState(false);
|
|
40539
|
+
React25.useEffect(() => {
|
|
40700
40540
|
if (!enableTocTracking || !sections || sections.length === 0) return;
|
|
40701
40541
|
const observer = new IntersectionObserver(
|
|
40702
40542
|
(entries) => {
|
|
@@ -40714,7 +40554,7 @@ function ArticleBreadcrumbSocialComponent({
|
|
|
40714
40554
|
});
|
|
40715
40555
|
return () => observer.disconnect();
|
|
40716
40556
|
}, [sections, enableTocTracking]);
|
|
40717
|
-
|
|
40557
|
+
React25.useEffect(() => {
|
|
40718
40558
|
if (!enableBackToTop) return;
|
|
40719
40559
|
const handleScroll = () => {
|
|
40720
40560
|
setShowBackToTop(window.scrollY > 400);
|
|
@@ -40722,15 +40562,15 @@ function ArticleBreadcrumbSocialComponent({
|
|
|
40722
40562
|
window.addEventListener("scroll", handleScroll);
|
|
40723
40563
|
return () => window.removeEventListener("scroll", handleScroll);
|
|
40724
40564
|
}, [enableBackToTop]);
|
|
40725
|
-
const scrollToTop =
|
|
40565
|
+
const scrollToTop = React25.useCallback(() => {
|
|
40726
40566
|
window.scrollTo({ top: 0, behavior: "smooth" });
|
|
40727
40567
|
}, []);
|
|
40728
|
-
const breadcrumbsContent =
|
|
40568
|
+
const breadcrumbsContent = React25.useMemo(() => {
|
|
40729
40569
|
if (breadcrumbsSlot) return breadcrumbsSlot;
|
|
40730
40570
|
if (!breadcrumbs || breadcrumbs.length === 0) return null;
|
|
40731
40571
|
return /* @__PURE__ */ jsx(Breadcrumb, { className: cn("mb-8", breadcrumbClassName), children: /* @__PURE__ */ jsxs(BreadcrumbList, { children: [
|
|
40732
40572
|
/* @__PURE__ */ jsx(BreadcrumbItem, { children: /* @__PURE__ */ jsx(BreadcrumbLink, { asChild: true, children: /* @__PURE__ */ jsx(Pressable, { href: "#", children: /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/home", size: 16 }) }) }) }),
|
|
40733
|
-
breadcrumbs.map((crumb, index) => /* @__PURE__ */ jsxs(
|
|
40573
|
+
breadcrumbs.map((crumb, index) => /* @__PURE__ */ jsxs(React25.Fragment, { children: [
|
|
40734
40574
|
/* @__PURE__ */ jsx(BreadcrumbSeparator, {}),
|
|
40735
40575
|
/* @__PURE__ */ jsx(BreadcrumbItem, { children: /* @__PURE__ */ jsx(BreadcrumbLink, { asChild: true, children: /* @__PURE__ */ jsx(Pressable, { href: crumb.href, children: crumb.label }) }) })
|
|
40736
40576
|
] }, index)),
|
|
@@ -40740,7 +40580,7 @@ function ArticleBreadcrumbSocialComponent({
|
|
|
40740
40580
|
] })
|
|
40741
40581
|
] }) });
|
|
40742
40582
|
}, [breadcrumbsSlot, breadcrumbs, currentPage, breadcrumbClassName]);
|
|
40743
|
-
const authorContent =
|
|
40583
|
+
const authorContent = React25.useMemo(() => {
|
|
40744
40584
|
if (authorSlot) return authorSlot;
|
|
40745
40585
|
if (!author) return null;
|
|
40746
40586
|
return /* @__PURE__ */ jsxs(
|
|
@@ -40763,7 +40603,7 @@ function ArticleBreadcrumbSocialComponent({
|
|
|
40763
40603
|
}
|
|
40764
40604
|
);
|
|
40765
40605
|
}, [authorSlot, author, publishDate, readTime, authorClassName]);
|
|
40766
|
-
const heroMediaContent =
|
|
40606
|
+
const heroMediaContent = React25.useMemo(() => {
|
|
40767
40607
|
if (heroMediaSlot) return heroMediaSlot;
|
|
40768
40608
|
if (!heroImageSrc) return null;
|
|
40769
40609
|
return /* @__PURE__ */ jsx(
|
|
@@ -40785,7 +40625,7 @@ function ArticleBreadcrumbSocialComponent({
|
|
|
40785
40625
|
heroImageClassName,
|
|
40786
40626
|
optixFlowConfig
|
|
40787
40627
|
]);
|
|
40788
|
-
const tocContent =
|
|
40628
|
+
const tocContent = React25.useMemo(() => {
|
|
40789
40629
|
if (tocSlot) return tocSlot;
|
|
40790
40630
|
if (!sections || sections.length === 0) return null;
|
|
40791
40631
|
return /* @__PURE__ */ jsxs("div", { className: cn("rounded-lg border p-4", tocClassName), children: [
|
|
@@ -40793,7 +40633,7 @@ function ArticleBreadcrumbSocialComponent({
|
|
|
40793
40633
|
/* @__PURE__ */ jsx("nav", { className: "space-y-2", children: sections.map((section) => {
|
|
40794
40634
|
const isActive = activeSection === section.id;
|
|
40795
40635
|
if (renderSectionLink) {
|
|
40796
|
-
return /* @__PURE__ */ jsx(
|
|
40636
|
+
return /* @__PURE__ */ jsx(React25.Fragment, { children: renderSectionLink(section, isActive) }, section.id);
|
|
40797
40637
|
}
|
|
40798
40638
|
return /* @__PURE__ */ jsx(
|
|
40799
40639
|
Pressable,
|
|
@@ -40898,11 +40738,11 @@ function ArticleCompactTocComponent({
|
|
|
40898
40738
|
pattern,
|
|
40899
40739
|
patternOpacity
|
|
40900
40740
|
}) {
|
|
40901
|
-
const [activeSection, setActiveSection] =
|
|
40741
|
+
const [activeSection, setActiveSection] = React25.useState(
|
|
40902
40742
|
sections?.[0]?.id || ""
|
|
40903
40743
|
);
|
|
40904
|
-
const [isTocOpen, setIsTocOpen] =
|
|
40905
|
-
|
|
40744
|
+
const [isTocOpen, setIsTocOpen] = React25.useState(false);
|
|
40745
|
+
React25.useEffect(() => {
|
|
40906
40746
|
if (!enableTocTracking) return;
|
|
40907
40747
|
const observer = new IntersectionObserver(
|
|
40908
40748
|
(entries) => {
|
|
@@ -40920,12 +40760,12 @@ function ArticleCompactTocComponent({
|
|
|
40920
40760
|
});
|
|
40921
40761
|
return () => observer.disconnect();
|
|
40922
40762
|
}, [sections, enableTocTracking]);
|
|
40923
|
-
const breadcrumbsContent =
|
|
40763
|
+
const breadcrumbsContent = React25.useMemo(() => {
|
|
40924
40764
|
if (breadcrumbsSlot) return breadcrumbsSlot;
|
|
40925
40765
|
if (!breadcrumbs && !currentPage) return null;
|
|
40926
40766
|
return /* @__PURE__ */ jsx(Breadcrumb, { className: cn("mb-6 md:mb-20", breadcrumbClassName), children: /* @__PURE__ */ jsxs(BreadcrumbList, { children: [
|
|
40927
40767
|
/* @__PURE__ */ jsx(BreadcrumbItem, { children: /* @__PURE__ */ jsx(BreadcrumbLink, { asChild: true, children: /* @__PURE__ */ jsx(Pressable, { href: "#", children: /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/home", size: 16 }) }) }) }),
|
|
40928
|
-
breadcrumbs?.map((crumb, index) => /* @__PURE__ */ jsxs(
|
|
40768
|
+
breadcrumbs?.map((crumb, index) => /* @__PURE__ */ jsxs(React25.Fragment, { children: [
|
|
40929
40769
|
/* @__PURE__ */ jsx(BreadcrumbSeparator, {}),
|
|
40930
40770
|
/* @__PURE__ */ jsx(BreadcrumbItem, { children: /* @__PURE__ */ jsx(BreadcrumbLink, { asChild: true, children: /* @__PURE__ */ jsx(Pressable, { href: crumb.href, children: crumb.label }) }) })
|
|
40931
40771
|
] }, index)),
|
|
@@ -40933,7 +40773,7 @@ function ArticleCompactTocComponent({
|
|
|
40933
40773
|
/* @__PURE__ */ jsx(BreadcrumbItem, { children: /* @__PURE__ */ jsx(BreadcrumbPage, { children: currentPage }) })
|
|
40934
40774
|
] }) });
|
|
40935
40775
|
}, [breadcrumbsSlot, breadcrumbs, currentPage, breadcrumbClassName]);
|
|
40936
|
-
const shareContent =
|
|
40776
|
+
const shareContent = React25.useMemo(() => {
|
|
40937
40777
|
if (shareSlot) return shareSlot;
|
|
40938
40778
|
if (!socialLinks || socialLinks.length === 0) return null;
|
|
40939
40779
|
return /* @__PURE__ */ jsxs("div", { className: cn("mt-6 flex items-center gap-2", shareClassName), children: [
|
|
@@ -40950,13 +40790,13 @@ function ArticleCompactTocComponent({
|
|
|
40950
40790
|
))
|
|
40951
40791
|
] });
|
|
40952
40792
|
}, [shareSlot, socialLinks, shareClassName]);
|
|
40953
|
-
const renderTocLinks =
|
|
40793
|
+
const renderTocLinks = React25.useCallback(
|
|
40954
40794
|
(onLinkClick) => {
|
|
40955
40795
|
if (!sections) return null;
|
|
40956
40796
|
return sections.map((section) => {
|
|
40957
40797
|
const isActive = activeSection === section.id;
|
|
40958
40798
|
if (renderSectionLink) {
|
|
40959
|
-
return /* @__PURE__ */ jsx(
|
|
40799
|
+
return /* @__PURE__ */ jsx(React25.Fragment, { children: renderSectionLink(section, isActive) }, section.id);
|
|
40960
40800
|
}
|
|
40961
40801
|
return /* @__PURE__ */ jsx(
|
|
40962
40802
|
Pressable,
|
|
@@ -40975,7 +40815,7 @@ function ArticleCompactTocComponent({
|
|
|
40975
40815
|
},
|
|
40976
40816
|
[sections, activeSection, renderSectionLink]
|
|
40977
40817
|
);
|
|
40978
|
-
const tocContent =
|
|
40818
|
+
const tocContent = React25.useMemo(() => {
|
|
40979
40819
|
if (tocSlot) return tocSlot;
|
|
40980
40820
|
if (!sections || sections.length === 0) return null;
|
|
40981
40821
|
return /* @__PURE__ */ jsx("div", { className: "mb-8 lg:hidden", children: /* @__PURE__ */ jsxs(Popover, { open: isTocOpen, onOpenChange: setIsTocOpen, children: [
|
|
@@ -41008,7 +40848,7 @@ function ArticleCompactTocComponent({
|
|
|
41008
40848
|
)
|
|
41009
40849
|
] }) });
|
|
41010
40850
|
}, [tocSlot, sections, isTocOpen, tocClassName, renderTocLinks]);
|
|
41011
|
-
const desktopTocContent =
|
|
40851
|
+
const desktopTocContent = React25.useMemo(() => {
|
|
41012
40852
|
if (tocSlot) return null;
|
|
41013
40853
|
if (!sections || sections.length === 0) return null;
|
|
41014
40854
|
return /* @__PURE__ */ jsx(
|
|
@@ -41025,7 +40865,7 @@ function ArticleCompactTocComponent({
|
|
|
41025
40865
|
}
|
|
41026
40866
|
);
|
|
41027
40867
|
}, [tocSlot, sections, tocClassName, renderTocLinks]);
|
|
41028
|
-
const heroMediaContent =
|
|
40868
|
+
const heroMediaContent = React25.useMemo(() => {
|
|
41029
40869
|
if (heroMediaSlot) return heroMediaSlot;
|
|
41030
40870
|
if (!heroImageSrc) return null;
|
|
41031
40871
|
return /* @__PURE__ */ jsx(
|
|
@@ -41155,10 +40995,10 @@ function ArticleChaptersAuthorComponent({
|
|
|
41155
40995
|
variant: "default"
|
|
41156
40996
|
}
|
|
41157
40997
|
] : []);
|
|
41158
|
-
const [activeChapter, setActiveChapter] =
|
|
40998
|
+
const [activeChapter, setActiveChapter] = React25.useState(
|
|
41159
40999
|
chapters?.[0]?.id || ""
|
|
41160
41000
|
);
|
|
41161
|
-
|
|
41001
|
+
React25.useEffect(() => {
|
|
41162
41002
|
if (!enableChapterTracking || !chapters || chapters.length === 0) return;
|
|
41163
41003
|
const observer = new IntersectionObserver(
|
|
41164
41004
|
(entries) => {
|
|
@@ -41176,12 +41016,12 @@ function ArticleChaptersAuthorComponent({
|
|
|
41176
41016
|
});
|
|
41177
41017
|
return () => observer.disconnect();
|
|
41178
41018
|
}, [chapters, enableChapterTracking]);
|
|
41179
|
-
const breadcrumbsContent =
|
|
41019
|
+
const breadcrumbsContent = React25.useMemo(() => {
|
|
41180
41020
|
if (breadcrumbsSlot) return breadcrumbsSlot;
|
|
41181
41021
|
if (!breadcrumbs || breadcrumbs.length === 0) return null;
|
|
41182
41022
|
return /* @__PURE__ */ jsx(Breadcrumb, { className: cn("mb-8 md:mb-20", breadcrumbClassName), children: /* @__PURE__ */ jsxs(BreadcrumbList, { children: [
|
|
41183
41023
|
/* @__PURE__ */ jsx(BreadcrumbItem, { children: /* @__PURE__ */ jsx(BreadcrumbLink, { asChild: true, children: /* @__PURE__ */ jsx(Pressable, { href: "#", children: /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/home", size: 16 }) }) }) }),
|
|
41184
|
-
breadcrumbs.map((crumb, index) => /* @__PURE__ */ jsxs(
|
|
41024
|
+
breadcrumbs.map((crumb, index) => /* @__PURE__ */ jsxs(React25.Fragment, { children: [
|
|
41185
41025
|
/* @__PURE__ */ jsx(BreadcrumbSeparator, {}),
|
|
41186
41026
|
/* @__PURE__ */ jsx(BreadcrumbItem, { children: /* @__PURE__ */ jsx(BreadcrumbLink, { asChild: true, children: /* @__PURE__ */ jsx(Pressable, { href: crumb.href, children: crumb.label }) }) })
|
|
41187
41027
|
] }, index)),
|
|
@@ -41189,7 +41029,7 @@ function ArticleChaptersAuthorComponent({
|
|
|
41189
41029
|
/* @__PURE__ */ jsx(BreadcrumbItem, { children: /* @__PURE__ */ jsx(BreadcrumbPage, { children: typeof currentPage === "string" ? currentPage : currentPage }) })
|
|
41190
41030
|
] }) });
|
|
41191
41031
|
}, [breadcrumbsSlot, breadcrumbs, currentPage, breadcrumbClassName]);
|
|
41192
|
-
const chaptersNavContent =
|
|
41032
|
+
const chaptersNavContent = React25.useMemo(() => {
|
|
41193
41033
|
if (chaptersSlot) return chaptersSlot;
|
|
41194
41034
|
if (!chapters || chapters.length === 0) return null;
|
|
41195
41035
|
return /* @__PURE__ */ jsxs("div", { className: cn("rounded-lg border p-4", chaptersClassName), children: [
|
|
@@ -41197,7 +41037,7 @@ function ArticleChaptersAuthorComponent({
|
|
|
41197
41037
|
/* @__PURE__ */ jsx("nav", { className: "space-y-2", children: chapters.map((chapter) => {
|
|
41198
41038
|
const isActive = activeChapter === chapter.id;
|
|
41199
41039
|
if (renderChapterLink) {
|
|
41200
|
-
return /* @__PURE__ */ jsx(
|
|
41040
|
+
return /* @__PURE__ */ jsx(React25.Fragment, { children: renderChapterLink(chapter, isActive) }, chapter.id);
|
|
41201
41041
|
}
|
|
41202
41042
|
return /* @__PURE__ */ jsxs(
|
|
41203
41043
|
Pressable,
|
|
@@ -41223,7 +41063,7 @@ function ArticleChaptersAuthorComponent({
|
|
|
41223
41063
|
renderChapterLink,
|
|
41224
41064
|
chaptersClassName
|
|
41225
41065
|
]);
|
|
41226
|
-
const authorCardContent =
|
|
41066
|
+
const authorCardContent = React25.useMemo(() => {
|
|
41227
41067
|
if (authorSlot) return authorSlot;
|
|
41228
41068
|
if (!author) return null;
|
|
41229
41069
|
let socialLinksContent = null;
|
|
@@ -41284,7 +41124,7 @@ function ArticleChaptersAuthorComponent({
|
|
|
41284
41124
|
socialLinksContent
|
|
41285
41125
|
] });
|
|
41286
41126
|
}, [authorSlot, author, authorClassName]);
|
|
41287
|
-
const heroMediaContent =
|
|
41127
|
+
const heroMediaContent = React25.useMemo(() => {
|
|
41288
41128
|
if (heroMediaSlot) return heroMediaSlot;
|
|
41289
41129
|
if (!heroImageSrc) return null;
|
|
41290
41130
|
return /* @__PURE__ */ jsx(
|
|
@@ -41306,7 +41146,7 @@ function ArticleChaptersAuthorComponent({
|
|
|
41306
41146
|
heroImageClassName,
|
|
41307
41147
|
optixFlowConfig
|
|
41308
41148
|
]);
|
|
41309
|
-
const conclusionContent =
|
|
41149
|
+
const conclusionContent = React25.useMemo(() => {
|
|
41310
41150
|
if (conclusionSlot) return conclusionSlot;
|
|
41311
41151
|
if (!conclusionTitle && !conclusionDescription && (!conclusionActions || conclusionActions.length === 0))
|
|
41312
41152
|
return null;
|
|
@@ -41451,7 +41291,7 @@ function ArticleSplitAnimatedComponent({
|
|
|
41451
41291
|
}) {
|
|
41452
41292
|
const ctaActions = ctaActionsProp ?? (ctaText ? [{ label: ctaText, href: ctaHref || "#", variant: "default", size: "lg" }] : []);
|
|
41453
41293
|
const MotionWrapper = enableAnimations ? motion.div : "div";
|
|
41454
|
-
const categoryContent =
|
|
41294
|
+
const categoryContent = React25.useMemo(() => {
|
|
41455
41295
|
if (categorySlot) return categorySlot;
|
|
41456
41296
|
if (!category) return null;
|
|
41457
41297
|
return /* @__PURE__ */ jsx(
|
|
@@ -41466,7 +41306,7 @@ function ArticleSplitAnimatedComponent({
|
|
|
41466
41306
|
}
|
|
41467
41307
|
);
|
|
41468
41308
|
}, [categorySlot, category, categoryHref, categoryClassName]);
|
|
41469
|
-
const heroMediaContent =
|
|
41309
|
+
const heroMediaContent = React25.useMemo(() => {
|
|
41470
41310
|
if (heroMediaSlot) return heroMediaSlot;
|
|
41471
41311
|
if (!image) return null;
|
|
41472
41312
|
return /* @__PURE__ */ jsx(
|
|
@@ -41479,7 +41319,7 @@ function ArticleSplitAnimatedComponent({
|
|
|
41479
41319
|
}
|
|
41480
41320
|
);
|
|
41481
41321
|
}, [heroMediaSlot, image, imageAlt, title, optixFlowConfig]);
|
|
41482
|
-
const authorContent =
|
|
41322
|
+
const authorContent = React25.useMemo(() => {
|
|
41483
41323
|
if (authorSlot) return authorSlot;
|
|
41484
41324
|
if (!authorName) return null;
|
|
41485
41325
|
return /* @__PURE__ */ jsxs("div", { className: cn("mt-8 flex items-center gap-4", authorClassName), children: [
|
|
@@ -41493,7 +41333,7 @@ function ArticleSplitAnimatedComponent({
|
|
|
41493
41333
|
] })
|
|
41494
41334
|
] });
|
|
41495
41335
|
}, [authorSlot, authorName, authorImage, authorHref, authorRole, authorClassName]);
|
|
41496
|
-
const ctaContent =
|
|
41336
|
+
const ctaContent = React25.useMemo(() => {
|
|
41497
41337
|
if (ctaSlot) return ctaSlot;
|
|
41498
41338
|
if (!ctaActions || ctaActions.length === 0) return null;
|
|
41499
41339
|
return /* @__PURE__ */ jsx("div", { className: cn("mt-8 flex flex-wrap gap-3", ctaClassName), children: ctaActions.map((action, index) => {
|
|
@@ -42916,7 +42756,7 @@ function FaqSidebarNavigation({
|
|
|
42916
42756
|
accordionTriggerClassName,
|
|
42917
42757
|
accordionContentClassName
|
|
42918
42758
|
}) {
|
|
42919
|
-
const [activeCategory, setActiveCategory] =
|
|
42759
|
+
const [activeCategory, setActiveCategory] = React25.useState(
|
|
42920
42760
|
categories && categories.length > 1 ? "all" : categories?.[0]?.id || ""
|
|
42921
42761
|
);
|
|
42922
42762
|
const filteredCategories = useMemo(() => {
|
|
@@ -43805,7 +43645,7 @@ function FaqSplitHero({
|
|
|
43805
43645
|
imageArea
|
|
43806
43646
|
] }) });
|
|
43807
43647
|
}
|
|
43808
|
-
var Controls =
|
|
43648
|
+
var Controls = React25.memo(
|
|
43809
43649
|
({
|
|
43810
43650
|
handleNext,
|
|
43811
43651
|
handlePrevious,
|
|
@@ -43836,7 +43676,7 @@ var Controls = React23.memo(
|
|
|
43836
43676
|
] });
|
|
43837
43677
|
}
|
|
43838
43678
|
);
|
|
43839
|
-
var FeatureCard =
|
|
43679
|
+
var FeatureCard = React25.memo(
|
|
43840
43680
|
({ feature, isActive, onClick }) => {
|
|
43841
43681
|
const variants2 = useMemo(
|
|
43842
43682
|
() => ({
|
|
@@ -43944,7 +43784,7 @@ var FeatureCard = React23.memo(
|
|
|
43944
43784
|
) });
|
|
43945
43785
|
}
|
|
43946
43786
|
);
|
|
43947
|
-
var FeaturesDesktop =
|
|
43787
|
+
var FeaturesDesktop = React25.memo(
|
|
43948
43788
|
({
|
|
43949
43789
|
features,
|
|
43950
43790
|
handleNext,
|
|
@@ -43978,7 +43818,7 @@ var FeaturesDesktop = React23.memo(
|
|
|
43978
43818
|
] });
|
|
43979
43819
|
}
|
|
43980
43820
|
);
|
|
43981
|
-
var FeaturesMobile =
|
|
43821
|
+
var FeaturesMobile = React25.memo(
|
|
43982
43822
|
({
|
|
43983
43823
|
features,
|
|
43984
43824
|
handleNext,
|
|
@@ -44069,8 +43909,8 @@ function FeatureAnimatedCarousel({
|
|
|
44069
43909
|
spacing = "py-12 md:py-32",
|
|
44070
43910
|
containerClassName = "px-6 sm:px-6 md:px-8 lg:px-8"
|
|
44071
43911
|
}) {
|
|
44072
|
-
const [activeIndex, setActiveIndex] =
|
|
44073
|
-
const [direction, setDirection] =
|
|
43912
|
+
const [activeIndex, setActiveIndex] = React25.useState(0);
|
|
43913
|
+
const [direction, setDirection] = React25.useState(1);
|
|
44074
43914
|
const handleNext = useCallback(() => {
|
|
44075
43915
|
if (features && activeIndex < features.length - 1) {
|
|
44076
43916
|
setDirection(1);
|
|
@@ -44932,7 +44772,7 @@ function FooterInfoCardsAccordion({
|
|
|
44932
44772
|
patternOpacity,
|
|
44933
44773
|
optixFlowConfig
|
|
44934
44774
|
}) {
|
|
44935
|
-
const [email, setEmail] =
|
|
44775
|
+
const [email, setEmail] = React25.useState("");
|
|
44936
44776
|
(/* @__PURE__ */ new Date()).getFullYear();
|
|
44937
44777
|
const handleSubmit = (e) => {
|
|
44938
44778
|
e.preventDefault();
|
|
@@ -45237,13 +45077,13 @@ function CaseStudiesImageGrid({
|
|
|
45237
45077
|
patternOpacity,
|
|
45238
45078
|
optixFlowConfig
|
|
45239
45079
|
}) {
|
|
45240
|
-
const getGridClass =
|
|
45080
|
+
const getGridClass = React25.useCallback((index) => {
|
|
45241
45081
|
if (index === 0 || index === 4) {
|
|
45242
45082
|
return "row-span-2 aspect-square lg:aspect-auto";
|
|
45243
45083
|
}
|
|
45244
45084
|
return "aspect-3/2 md:aspect-2/1";
|
|
45245
45085
|
}, []);
|
|
45246
|
-
const renderedItems =
|
|
45086
|
+
const renderedItems = React25.useMemo(() => {
|
|
45247
45087
|
if (itemsSlot) return itemsSlot;
|
|
45248
45088
|
if (!items || items.length === 0) return null;
|
|
45249
45089
|
return items.map((item, index) => /* @__PURE__ */ jsxs(
|
|
@@ -45329,7 +45169,7 @@ function CaseStudiesTestimonialStats({
|
|
|
45329
45169
|
patternOpacity,
|
|
45330
45170
|
optixFlowConfig
|
|
45331
45171
|
}) {
|
|
45332
|
-
const renderedTestimonials =
|
|
45172
|
+
const renderedTestimonials = React25.useMemo(() => {
|
|
45333
45173
|
if (testimonialsSlot) return testimonialsSlot;
|
|
45334
45174
|
if (!testimonials || testimonials.length === 0) return null;
|
|
45335
45175
|
return testimonials.map((testimonial, index) => /* @__PURE__ */ jsxs("div", { className: testimonialItemClassName, children: [
|
|
@@ -48802,7 +48642,7 @@ function CaseStudiesFeaturedBorder({
|
|
|
48802
48642
|
patternOpacity,
|
|
48803
48643
|
optixFlowConfig
|
|
48804
48644
|
}) {
|
|
48805
|
-
const renderedFeatured =
|
|
48645
|
+
const renderedFeatured = React25.useMemo(() => {
|
|
48806
48646
|
if (featuredSlot) return featuredSlot;
|
|
48807
48647
|
if (!featuredCaseStudy) return null;
|
|
48808
48648
|
return /* @__PURE__ */ jsxs(
|
|
@@ -48876,7 +48716,7 @@ function CaseStudiesFeaturedBorder({
|
|
|
48876
48716
|
featuredImageClassName,
|
|
48877
48717
|
optixFlowConfig
|
|
48878
48718
|
]);
|
|
48879
|
-
const renderedCaseStudies =
|
|
48719
|
+
const renderedCaseStudies = React25.useMemo(() => {
|
|
48880
48720
|
if (caseStudiesSlot) return caseStudiesSlot;
|
|
48881
48721
|
if (!caseStudies || caseStudies.length === 0) return null;
|
|
48882
48722
|
return caseStudies.map((item, idx) => /* @__PURE__ */ jsxs(
|
|
@@ -48985,7 +48825,7 @@ function CaseStudiesStatsCard({
|
|
|
48985
48825
|
patternOpacity,
|
|
48986
48826
|
optixFlowConfig
|
|
48987
48827
|
}) {
|
|
48988
|
-
const renderedStats =
|
|
48828
|
+
const renderedStats = React25.useMemo(() => {
|
|
48989
48829
|
if (statsSlot) return statsSlot;
|
|
48990
48830
|
if (!stats || stats.length === 0) return null;
|
|
48991
48831
|
return /* @__PURE__ */ jsx("div", { className: cn("flex w-full flex-col gap-8 sm:flex-row", statsClassName), children: stats.map((item, i) => /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-1", children: [
|
|
@@ -48993,7 +48833,7 @@ function CaseStudiesStatsCard({
|
|
|
48993
48833
|
/* @__PURE__ */ jsx("div", { className: "text-sm font-medium text-muted-foreground", children: item.text })
|
|
48994
48834
|
] }, `stats-${i}`)) });
|
|
48995
48835
|
}, [statsSlot, stats, statsClassName]);
|
|
48996
|
-
const renderedAuthor =
|
|
48836
|
+
const renderedAuthor = React25.useMemo(() => {
|
|
48997
48837
|
if (authorSlot) return authorSlot;
|
|
48998
48838
|
if (!author) return null;
|
|
48999
48839
|
return /* @__PURE__ */ jsxs("div", { className: cn("flex items-center gap-2.5", authorClassName), children: [
|
|
@@ -49007,7 +48847,7 @@ function CaseStudiesStatsCard({
|
|
|
49007
48847
|
] })
|
|
49008
48848
|
] });
|
|
49009
48849
|
}, [authorSlot, author, authorClassName]);
|
|
49010
|
-
const renderedActions =
|
|
48850
|
+
const renderedActions = React25.useMemo(() => {
|
|
49011
48851
|
if (actionsSlot) return actionsSlot;
|
|
49012
48852
|
if (!actions || actions.length === 0) return null;
|
|
49013
48853
|
return /* @__PURE__ */ jsx("div", { className: cn("shrink-0", actionsClassName), children: actions.map((action, index) => {
|
|
@@ -56048,7 +55888,7 @@ function HeroSplitImageNewsletter({
|
|
|
56048
55888
|
onError,
|
|
56049
55889
|
uploadTokens
|
|
56050
55890
|
});
|
|
56051
|
-
const renderForm =
|
|
55891
|
+
const renderForm = React25.useMemo(() => {
|
|
56052
55892
|
if (formSlot) return formSlot;
|
|
56053
55893
|
if (!formFields || formFields.length === 0) return null;
|
|
56054
55894
|
const defaultButtonAction = {
|
|
@@ -56127,7 +55967,7 @@ function HeroSplitImageNewsletter({
|
|
|
56127
55967
|
resetUpload,
|
|
56128
55968
|
resetSubmissionState
|
|
56129
55969
|
]);
|
|
56130
|
-
const renderImage =
|
|
55970
|
+
const renderImage = React25.useMemo(() => {
|
|
56131
55971
|
if (imageSlot) return imageSlot;
|
|
56132
55972
|
if (!image) return null;
|
|
56133
55973
|
return /* @__PURE__ */ jsx("div", { className: "relative lg:w-1/2", children: /* @__PURE__ */ jsx(
|
|
@@ -57555,7 +57395,7 @@ function HeroSaasDashboardPreview({
|
|
|
57555
57395
|
onError,
|
|
57556
57396
|
uploadTokens
|
|
57557
57397
|
});
|
|
57558
|
-
const renderBadge =
|
|
57398
|
+
const renderBadge = React25.useMemo(() => {
|
|
57559
57399
|
if (badgeSlot) return badgeSlot;
|
|
57560
57400
|
return /* @__PURE__ */ jsxs(
|
|
57561
57401
|
"div",
|
|
@@ -57570,7 +57410,7 @@ function HeroSaasDashboardPreview({
|
|
|
57570
57410
|
}
|
|
57571
57411
|
);
|
|
57572
57412
|
}, [badgeSlot, badgeIcon, badgeText]);
|
|
57573
|
-
const renderForm =
|
|
57413
|
+
const renderForm = React25.useMemo(() => {
|
|
57574
57414
|
if (formSlot) return formSlot;
|
|
57575
57415
|
const defaultButtonAction = {
|
|
57576
57416
|
label: "Start Free Trial",
|
|
@@ -57578,7 +57418,7 @@ function HeroSaasDashboardPreview({
|
|
|
57578
57418
|
className: "h-12"
|
|
57579
57419
|
};
|
|
57580
57420
|
const action = buttonAction || defaultButtonAction;
|
|
57581
|
-
return /* @__PURE__ */ jsxs(
|
|
57421
|
+
return /* @__PURE__ */ jsx("div", { className: "mt-4 md:mt-6 w-full flex items-center justify-center", children: /* @__PURE__ */ jsxs(
|
|
57582
57422
|
Form,
|
|
57583
57423
|
{
|
|
57584
57424
|
form,
|
|
@@ -57601,7 +57441,7 @@ function HeroSaasDashboardPreview({
|
|
|
57601
57441
|
resetSubmissionState();
|
|
57602
57442
|
},
|
|
57603
57443
|
children: [
|
|
57604
|
-
/* @__PURE__ */ jsx("div", { className: "
|
|
57444
|
+
/* @__PURE__ */ jsx("div", { className: "flex flex-col items-center gap-4 sm:flex-row sm:justify-center", children: /* @__PURE__ */ jsxs("div", { className: "flex w-full max-w-md items-center gap-2", children: [
|
|
57605
57445
|
formFields.map((field) => /* @__PURE__ */ jsx("div", { className: "flex-1", children: /* @__PURE__ */ jsx(
|
|
57606
57446
|
DynamicFormField,
|
|
57607
57447
|
{
|
|
@@ -57627,7 +57467,7 @@ function HeroSaasDashboardPreview({
|
|
|
57627
57467
|
helperText && (typeof helperText === "string" ? /* @__PURE__ */ jsx("p", { className: cn("text-sm text-center mt-4"), children: helperText }) : helperText)
|
|
57628
57468
|
]
|
|
57629
57469
|
}
|
|
57630
|
-
);
|
|
57470
|
+
) });
|
|
57631
57471
|
}, [
|
|
57632
57472
|
formSlot,
|
|
57633
57473
|
formFields,
|
|
@@ -57645,10 +57485,10 @@ function HeroSaasDashboardPreview({
|
|
|
57645
57485
|
resetUpload,
|
|
57646
57486
|
resetSubmissionState
|
|
57647
57487
|
]);
|
|
57648
|
-
const renderBrowserPreview =
|
|
57488
|
+
const renderBrowserPreview = React25.useMemo(() => {
|
|
57649
57489
|
if (browserPreviewSlot) return browserPreviewSlot;
|
|
57650
57490
|
if (!browserPreview) return null;
|
|
57651
|
-
return /* @__PURE__ */ jsxs("div", { className: cn("relative mt-20", previewClassName), children: [
|
|
57491
|
+
return /* @__PURE__ */ jsxs("div", { className: cn("relative mt-12 md:mt-20", previewClassName), children: [
|
|
57652
57492
|
/* @__PURE__ */ jsx("div", { className: "absolute inset-0 z-10 pointer-events-none" }),
|
|
57653
57493
|
/* @__PURE__ */ jsxs(
|
|
57654
57494
|
"div",
|
|
@@ -57696,40 +57536,40 @@ function HeroSaasDashboardPreview({
|
|
|
57696
57536
|
patternOpacity,
|
|
57697
57537
|
className: cn(className),
|
|
57698
57538
|
containerClassName,
|
|
57699
|
-
children: /* @__PURE__ */ jsxs("div", { className: "pt-10 md:pt-0", children: [
|
|
57700
|
-
/* @__PURE__ */ jsxs(
|
|
57701
|
-
|
|
57702
|
-
|
|
57703
|
-
|
|
57704
|
-
|
|
57705
|
-
|
|
57706
|
-
|
|
57707
|
-
|
|
57708
|
-
|
|
57709
|
-
|
|
57710
|
-
|
|
57711
|
-
|
|
57712
|
-
|
|
57713
|
-
|
|
57714
|
-
|
|
57715
|
-
|
|
57716
|
-
|
|
57717
|
-
|
|
57718
|
-
|
|
57719
|
-
|
|
57720
|
-
|
|
57721
|
-
|
|
57722
|
-
|
|
57723
|
-
|
|
57724
|
-
|
|
57725
|
-
|
|
57726
|
-
|
|
57727
|
-
|
|
57728
|
-
|
|
57729
|
-
|
|
57730
|
-
|
|
57731
|
-
|
|
57732
|
-
|
|
57539
|
+
children: /* @__PURE__ */ jsxs("div", { className: "pt-10 md:pt-0 flex flex-col items-center justify-center", children: [
|
|
57540
|
+
/* @__PURE__ */ jsxs(
|
|
57541
|
+
"div",
|
|
57542
|
+
{
|
|
57543
|
+
className: cn(
|
|
57544
|
+
"mx-auto text-center flex flex-col items-center gap-4 md:gap-6 max-w-full md:max-w-md",
|
|
57545
|
+
headerClassName
|
|
57546
|
+
),
|
|
57547
|
+
children: [
|
|
57548
|
+
renderBadge,
|
|
57549
|
+
heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
|
|
57550
|
+
"h1",
|
|
57551
|
+
{
|
|
57552
|
+
className: cn(
|
|
57553
|
+
"text-4xl font-bold tracking-tight md:text-5xl lg:text-6xl text-balance",
|
|
57554
|
+
headingClassName
|
|
57555
|
+
),
|
|
57556
|
+
children: heading
|
|
57557
|
+
}
|
|
57558
|
+
) : heading),
|
|
57559
|
+
description && (typeof description === "string" ? /* @__PURE__ */ jsx(
|
|
57560
|
+
"p",
|
|
57561
|
+
{
|
|
57562
|
+
className: cn(
|
|
57563
|
+
"text-lg md:text-xl text-balance",
|
|
57564
|
+
descriptionClassName
|
|
57565
|
+
),
|
|
57566
|
+
children: description
|
|
57567
|
+
}
|
|
57568
|
+
) : description),
|
|
57569
|
+
renderForm
|
|
57570
|
+
]
|
|
57571
|
+
}
|
|
57572
|
+
),
|
|
57733
57573
|
renderBrowserPreview
|
|
57734
57574
|
] })
|
|
57735
57575
|
}
|
|
@@ -59896,7 +59736,7 @@ function HeroEcommerceProductShowcase({
|
|
|
59896
59736
|
"flex flex-col md:flex-row items-center gap-4 md:gap-6 pt-8 md:pt-12",
|
|
59897
59737
|
statsClassName
|
|
59898
59738
|
),
|
|
59899
|
-
children: stats.map((stat, index) => /* @__PURE__ */ jsxs(
|
|
59739
|
+
children: stats.map((stat, index) => /* @__PURE__ */ jsxs(React25.Fragment, { children: [
|
|
59900
59740
|
index > 0 && /* @__PURE__ */ jsx("div", { className: "h-12 w-px bg-border hidden md:flex" }),
|
|
59901
59741
|
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2 justify-between flex-row md:flex-col text-left md:text-center w-full md:w-fit border md:border-none rounded-xl md:rounded-none p-4 md:p-0", children: [
|
|
59902
59742
|
/* @__PURE__ */ jsxs(
|
|
@@ -60302,6 +60142,14 @@ function HeroPricingComparison({
|
|
|
60302
60142
|
}
|
|
60303
60143
|
);
|
|
60304
60144
|
}
|
|
60145
|
+
var DEFAULT_STYLE_RULES3 = {
|
|
60146
|
+
formContainer: "",
|
|
60147
|
+
fieldsContainer: "",
|
|
60148
|
+
fieldClassName: "",
|
|
60149
|
+
formClassName: "",
|
|
60150
|
+
successMessageClassName: "text-green-600 dark:text-green-400 mt-4 p-3 rounded-md bg-green-50 dark:bg-green-950/20",
|
|
60151
|
+
errorMessageClassName: "text-red-600 dark:text-red-400 mt-4 p-3 rounded-md bg-red-50 dark:bg-red-950/20"
|
|
60152
|
+
};
|
|
60305
60153
|
var DEFAULT_FORM_FIELDS44 = [
|
|
60306
60154
|
{
|
|
60307
60155
|
name: "email",
|
|
@@ -60315,12 +60163,7 @@ var DEFAULT_FORM_FIELDS44 = [
|
|
|
60315
60163
|
function HeroNewsletterMinimal({
|
|
60316
60164
|
heading,
|
|
60317
60165
|
description,
|
|
60318
|
-
|
|
60319
|
-
formConfig,
|
|
60320
|
-
onSubmit,
|
|
60321
|
-
onSuccess,
|
|
60322
|
-
onError,
|
|
60323
|
-
successMessage,
|
|
60166
|
+
formEngineSetup,
|
|
60324
60167
|
buttonAction,
|
|
60325
60168
|
helperText,
|
|
60326
60169
|
formSlot,
|
|
@@ -60329,7 +60172,7 @@ function HeroNewsletterMinimal({
|
|
|
60329
60172
|
patternClassName,
|
|
60330
60173
|
statsSlot,
|
|
60331
60174
|
background,
|
|
60332
|
-
containerClassName = "px-6 sm:px-6 md:px-8 lg:px-8",
|
|
60175
|
+
containerClassName = "pmx-auto w-full max-w-7xl relative z-10 px-6 sm:px-6 md:px-8 lg:px-8 flex flex-col items-center justify-center",
|
|
60333
60176
|
spacing = "xl",
|
|
60334
60177
|
pattern,
|
|
60335
60178
|
patternOpacity,
|
|
@@ -60340,26 +60183,24 @@ function HeroNewsletterMinimal({
|
|
|
60340
60183
|
disclaimerClassName,
|
|
60341
60184
|
statsClassName
|
|
60342
60185
|
}) {
|
|
60343
|
-
const {
|
|
60344
|
-
|
|
60345
|
-
|
|
60346
|
-
|
|
60347
|
-
|
|
60348
|
-
|
|
60349
|
-
|
|
60350
|
-
|
|
60351
|
-
|
|
60352
|
-
|
|
60353
|
-
|
|
60354
|
-
|
|
60355
|
-
|
|
60356
|
-
|
|
60357
|
-
|
|
60358
|
-
}
|
|
60359
|
-
|
|
60360
|
-
|
|
60361
|
-
});
|
|
60362
|
-
const renderStats = React23.useMemo(() => {
|
|
60186
|
+
const formStyleRules = React25.useMemo(() => {
|
|
60187
|
+
return {
|
|
60188
|
+
formContainer: formEngineSetup?.formLayoutSettings?.styleRules?.formContainer ?? DEFAULT_STYLE_RULES3.formContainer,
|
|
60189
|
+
fieldsContainer: formEngineSetup?.formLayoutSettings?.styleRules?.fieldsContainer ?? DEFAULT_STYLE_RULES3.fieldsContainer,
|
|
60190
|
+
fieldClassName: formEngineSetup?.formLayoutSettings?.styleRules?.fieldClassName ?? DEFAULT_STYLE_RULES3.fieldClassName,
|
|
60191
|
+
formClassName: formEngineSetup?.formLayoutSettings?.styleRules?.formClassName ?? DEFAULT_STYLE_RULES3.formClassName,
|
|
60192
|
+
successMessageClassName: formEngineSetup?.formLayoutSettings?.styleRules?.successMessageClassName ?? DEFAULT_STYLE_RULES3.successMessageClassName,
|
|
60193
|
+
errorMessageClassName: formEngineSetup?.formLayoutSettings?.styleRules?.errorMessageClassName ?? DEFAULT_STYLE_RULES3.errorMessageClassName
|
|
60194
|
+
};
|
|
60195
|
+
}, [formEngineSetup?.formLayoutSettings?.styleRules]);
|
|
60196
|
+
const formFields = React25.useMemo(() => {
|
|
60197
|
+
if (formEngineSetup && formEngineSetup?.fields && formEngineSetup?.fields?.length > 0) {
|
|
60198
|
+
return formEngineSetup.fields;
|
|
60199
|
+
} else {
|
|
60200
|
+
return DEFAULT_FORM_FIELDS44;
|
|
60201
|
+
}
|
|
60202
|
+
}, [formEngineSetup?.fields]);
|
|
60203
|
+
const renderStats = React25.useMemo(() => {
|
|
60363
60204
|
if (statsSlot) return statsSlot;
|
|
60364
60205
|
if (!stats || stats.length === 0) return null;
|
|
60365
60206
|
return stats.map((stat, index) => /* @__PURE__ */ jsx("div", { className: cn("flex items-center", stat.className), children: /* @__PURE__ */ jsxs("div", { className: "text-center", children: [
|
|
@@ -60385,82 +60226,39 @@ function HeroNewsletterMinimal({
|
|
|
60385
60226
|
/* @__PURE__ */ jsx("div", { className: cn("text-sm"), children: stat.label })
|
|
60386
60227
|
] }) }, index));
|
|
60387
60228
|
}, [statsSlot, stats]);
|
|
60388
|
-
const renderForm =
|
|
60229
|
+
const renderForm = React25.useMemo(() => {
|
|
60389
60230
|
if (formSlot) return formSlot;
|
|
60231
|
+
if (!formEngineSetup) return null;
|
|
60390
60232
|
const defaultButtonAction = {
|
|
60391
60233
|
label: "Subscribe",
|
|
60392
|
-
variant: "default"
|
|
60393
|
-
className: "h-12"
|
|
60234
|
+
variant: "default"
|
|
60394
60235
|
};
|
|
60395
60236
|
const action = buttonAction || defaultButtonAction;
|
|
60396
|
-
return /* @__PURE__ */ jsxs(
|
|
60397
|
-
|
|
60398
|
-
|
|
60399
|
-
|
|
60400
|
-
|
|
60401
|
-
|
|
60402
|
-
|
|
60403
|
-
|
|
60404
|
-
|
|
60405
|
-
|
|
60406
|
-
|
|
60407
|
-
|
|
60408
|
-
submissionConfig: formConfig?.submissionConfig,
|
|
60409
|
-
formLayout: "button-group",
|
|
60410
|
-
buttonGroupSize: "lg",
|
|
60411
|
-
submitLabel: action.label,
|
|
60412
|
-
submitVariant: action.variant || "default"
|
|
60413
|
-
},
|
|
60414
|
-
onNewSubmission: () => {
|
|
60415
|
-
resetUpload();
|
|
60416
|
-
resetSubmissionState();
|
|
60417
|
-
},
|
|
60418
|
-
children: [
|
|
60419
|
-
formFields.map((field) => /* @__PURE__ */ jsx("div", { className: "flex-1", children: /* @__PURE__ */ jsx(
|
|
60420
|
-
DynamicFormField,
|
|
60421
|
-
{
|
|
60422
|
-
field,
|
|
60423
|
-
uploadProgress,
|
|
60424
|
-
onFileUpload: uploadFiles,
|
|
60425
|
-
onFileRemove: removeFile,
|
|
60426
|
-
isUploading
|
|
60427
|
-
}
|
|
60428
|
-
) }, field.name)),
|
|
60429
|
-
/* @__PURE__ */ jsxs(
|
|
60430
|
-
Pressable,
|
|
60431
|
-
{
|
|
60432
|
-
onClick: form.handleSubmit,
|
|
60433
|
-
asButton: true,
|
|
60434
|
-
variant: action.variant,
|
|
60435
|
-
className: cn("h-12", action.className),
|
|
60436
|
-
disabled: form.isSubmitting,
|
|
60437
|
-
children: [
|
|
60237
|
+
return /* @__PURE__ */ jsxs(Fragment$1, { children: [
|
|
60238
|
+
/* @__PURE__ */ jsx(
|
|
60239
|
+
FormEngine,
|
|
60240
|
+
{
|
|
60241
|
+
...formEngineSetup,
|
|
60242
|
+
formLayoutSettings: {
|
|
60243
|
+
...formEngineSetup.formLayoutSettings,
|
|
60244
|
+
formLayout: "button-group",
|
|
60245
|
+
buttonGroupSetup: {
|
|
60246
|
+
...formEngineSetup.formLayoutSettings?.buttonGroupSetup,
|
|
60247
|
+
size: "lg",
|
|
60248
|
+
submitLabel: /* @__PURE__ */ jsxs(Fragment$1, { children: [
|
|
60438
60249
|
action.label,
|
|
60439
60250
|
action.iconAfter
|
|
60440
|
-
]
|
|
60441
|
-
|
|
60442
|
-
|
|
60443
|
-
|
|
60444
|
-
|
|
60445
|
-
|
|
60446
|
-
|
|
60447
|
-
|
|
60448
|
-
|
|
60449
|
-
|
|
60450
|
-
|
|
60451
|
-
formConfig,
|
|
60452
|
-
formMethod,
|
|
60453
|
-
buttonAction,
|
|
60454
|
-
uploadProgress,
|
|
60455
|
-
uploadFiles,
|
|
60456
|
-
removeFile,
|
|
60457
|
-
isUploading,
|
|
60458
|
-
submissionError,
|
|
60459
|
-
successMessage,
|
|
60460
|
-
helperText,
|
|
60461
|
-
resetUpload,
|
|
60462
|
-
resetSubmissionState
|
|
60463
|
-
]);
|
|
60251
|
+
] }),
|
|
60252
|
+
submitVariant: action.variant || "default"
|
|
60253
|
+
},
|
|
60254
|
+
styleRules: formStyleRules
|
|
60255
|
+
},
|
|
60256
|
+
fields: formFields
|
|
60257
|
+
}
|
|
60258
|
+
),
|
|
60259
|
+
helperText && (typeof helperText === "string" ? /* @__PURE__ */ jsx("p", { className: cn("text-sm mt-2 text-center"), children: helperText }) : helperText)
|
|
60260
|
+
] });
|
|
60261
|
+
}, [formSlot, formEngineSetup, buttonAction, formFields, formStyleRules, helperText]);
|
|
60464
60262
|
return /* @__PURE__ */ jsx(
|
|
60465
60263
|
Section,
|
|
60466
60264
|
{
|
|
@@ -60471,58 +60269,49 @@ function HeroNewsletterMinimal({
|
|
|
60471
60269
|
patternClassName,
|
|
60472
60270
|
className,
|
|
60473
60271
|
containerClassName,
|
|
60474
|
-
children: /* @__PURE__ */ jsxs(
|
|
60475
|
-
"
|
|
60476
|
-
|
|
60477
|
-
|
|
60478
|
-
|
|
60479
|
-
|
|
60480
|
-
|
|
60481
|
-
children: [
|
|
60482
|
-
heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
|
|
60483
|
-
"h1",
|
|
60484
|
-
{
|
|
60485
|
-
className: cn(
|
|
60486
|
-
"max-w-3xl text-5xl font-bold tracking-tight md:text-6xl lg:text-7xl text-pretty",
|
|
60487
|
-
headingClassName
|
|
60488
|
-
),
|
|
60489
|
-
children: heading
|
|
60490
|
-
}
|
|
60491
|
-
) : heading),
|
|
60492
|
-
description && (typeof description === "string" ? /* @__PURE__ */ jsx(
|
|
60493
|
-
"p",
|
|
60494
|
-
{
|
|
60495
|
-
className: cn(
|
|
60496
|
-
"mt-6 max-w-full md:max-w-lg text-lg md:text-xl text-balance",
|
|
60497
|
-
descriptionClassName
|
|
60498
|
-
),
|
|
60499
|
-
children: description
|
|
60500
|
-
}
|
|
60501
|
-
) : description),
|
|
60502
|
-
/* @__PURE__ */ jsx(
|
|
60503
|
-
"div",
|
|
60504
|
-
{
|
|
60505
|
-
className: cn(
|
|
60506
|
-
"mt-10 flex w-full max-w-md flex-col gap-4 sm:flex-row",
|
|
60507
|
-
formClassName
|
|
60508
|
-
),
|
|
60509
|
-
children: renderForm
|
|
60510
|
-
}
|
|
60272
|
+
children: /* @__PURE__ */ jsxs("div", { className: "flex flex-col items-center justify-center", children: [
|
|
60273
|
+
heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
|
|
60274
|
+
"h1",
|
|
60275
|
+
{
|
|
60276
|
+
className: cn(
|
|
60277
|
+
"max-w-3xl text-5xl font-bold tracking-tight md:text-6xl lg:text-7xl text-pretty text-center",
|
|
60278
|
+
headingClassName
|
|
60511
60279
|
),
|
|
60512
|
-
|
|
60513
|
-
|
|
60514
|
-
|
|
60515
|
-
|
|
60516
|
-
|
|
60517
|
-
|
|
60518
|
-
|
|
60519
|
-
|
|
60520
|
-
|
|
60521
|
-
|
|
60522
|
-
|
|
60523
|
-
|
|
60524
|
-
|
|
60525
|
-
|
|
60280
|
+
children: heading
|
|
60281
|
+
}
|
|
60282
|
+
) : heading),
|
|
60283
|
+
description && (typeof description === "string" ? /* @__PURE__ */ jsx(
|
|
60284
|
+
"p",
|
|
60285
|
+
{
|
|
60286
|
+
className: cn(
|
|
60287
|
+
"mt-6 max-w-full md:max-w-lg text-lg md:text-xl text-balance text-center",
|
|
60288
|
+
descriptionClassName
|
|
60289
|
+
),
|
|
60290
|
+
children: description
|
|
60291
|
+
}
|
|
60292
|
+
) : description),
|
|
60293
|
+
/* @__PURE__ */ jsx(
|
|
60294
|
+
"div",
|
|
60295
|
+
{
|
|
60296
|
+
className: cn(
|
|
60297
|
+
"mt-10 flex w-full max-w-md flex-col gap-4 sm:flex-row",
|
|
60298
|
+
formClassName
|
|
60299
|
+
),
|
|
60300
|
+
children: renderForm
|
|
60301
|
+
}
|
|
60302
|
+
),
|
|
60303
|
+
disclaimer && (typeof disclaimer === "string" ? /* @__PURE__ */ jsx("p", { className: cn("mt-4 text-sm", disclaimerClassName), children: disclaimer }) : disclaimer),
|
|
60304
|
+
(statsSlot || stats && stats.length > 0) && /* @__PURE__ */ jsx(
|
|
60305
|
+
"div",
|
|
60306
|
+
{
|
|
60307
|
+
className: cn(
|
|
60308
|
+
"mt-16 flex flex-wrap items-center justify-center gap-8 md:gap-12",
|
|
60309
|
+
statsClassName
|
|
60310
|
+
),
|
|
60311
|
+
children: renderStats
|
|
60312
|
+
}
|
|
60313
|
+
)
|
|
60314
|
+
] })
|
|
60526
60315
|
}
|
|
60527
60316
|
);
|
|
60528
60317
|
}
|
|
@@ -60606,7 +60395,7 @@ function HeroComingSoonCountdown({
|
|
|
60606
60395
|
formClassName,
|
|
60607
60396
|
socialLinksClassName
|
|
60608
60397
|
}) {
|
|
60609
|
-
const [timeLeft, setTimeLeft] =
|
|
60398
|
+
const [timeLeft, setTimeLeft] = React25.useState(null);
|
|
60610
60399
|
const {
|
|
60611
60400
|
uploadTokens,
|
|
60612
60401
|
uploadProgress,
|
|
@@ -60626,7 +60415,7 @@ function HeroComingSoonCountdown({
|
|
|
60626
60415
|
onError,
|
|
60627
60416
|
uploadTokens
|
|
60628
60417
|
});
|
|
60629
|
-
const calculateTimeLeft =
|
|
60418
|
+
const calculateTimeLeft = React25.useCallback(() => {
|
|
60630
60419
|
if (!countdownDate) return null;
|
|
60631
60420
|
const now = Date.now();
|
|
60632
60421
|
const target = countdownDate.getTime();
|
|
@@ -60639,7 +60428,7 @@ function HeroComingSoonCountdown({
|
|
|
60639
60428
|
seconds: Math.floor(diff % (1e3 * 60) / 1e3)
|
|
60640
60429
|
};
|
|
60641
60430
|
}, [countdownDate]);
|
|
60642
|
-
|
|
60431
|
+
React25.useEffect(() => {
|
|
60643
60432
|
setTimeLeft(calculateTimeLeft());
|
|
60644
60433
|
if (!countdownDate) return;
|
|
60645
60434
|
const timer = setInterval(() => {
|
|
@@ -60650,7 +60439,7 @@ function HeroComingSoonCountdown({
|
|
|
60650
60439
|
return () => clearInterval(timer);
|
|
60651
60440
|
}, [countdownDate, calculateTimeLeft]);
|
|
60652
60441
|
const showCountdown = countdownSlot || timeLeft;
|
|
60653
|
-
const renderForm =
|
|
60442
|
+
const renderForm = React25.useMemo(() => {
|
|
60654
60443
|
if (formSlot) return formSlot;
|
|
60655
60444
|
const defaultButtonAction = {
|
|
60656
60445
|
label: "Notify Me",
|
|
@@ -60726,7 +60515,7 @@ function HeroComingSoonCountdown({
|
|
|
60726
60515
|
resetUpload,
|
|
60727
60516
|
resetSubmissionState
|
|
60728
60517
|
]);
|
|
60729
|
-
const renderSocialLinks =
|
|
60518
|
+
const renderSocialLinks = React25.useMemo(() => {
|
|
60730
60519
|
if (socialLinksSlot) return socialLinksSlot;
|
|
60731
60520
|
if (!socialLinks || socialLinks.length === 0) return null;
|
|
60732
60521
|
return socialLinks.map((link, index) => /* @__PURE__ */ jsx(
|
|
@@ -60858,7 +60647,7 @@ function HeroEventRegistration({
|
|
|
60858
60647
|
"flex flex-col md:flex-row items-center gap-4 md:gap-6 pt-8 md:pt-12 w-full md:w-fit",
|
|
60859
60648
|
statsClassName
|
|
60860
60649
|
),
|
|
60861
|
-
children: stats.map((stat, index) => /* @__PURE__ */ jsxs(
|
|
60650
|
+
children: stats.map((stat, index) => /* @__PURE__ */ jsxs(React25.Fragment, { children: [
|
|
60862
60651
|
index > 0 && /* @__PURE__ */ jsx("div", { className: "h-12 w-px bg-border hidden md:flex" }),
|
|
60863
60652
|
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2 justify-between flex-row md:flex-col text-left md:text-center w-full md:w-fit border md:border-none rounded-xl md:rounded-none p-4 md:p-0", children: [
|
|
60864
60653
|
/* @__PURE__ */ jsxs(
|
|
@@ -61198,7 +60987,7 @@ function ComparisonTableTwoColumn({
|
|
|
61198
60987
|
patternOpacity,
|
|
61199
60988
|
optixFlowConfig
|
|
61200
60989
|
}) {
|
|
61201
|
-
const tableContent =
|
|
60990
|
+
const tableContent = React25.useMemo(() => {
|
|
61202
60991
|
if (tableSlot) return tableSlot;
|
|
61203
60992
|
if (!rows || rows.length === 0) return null;
|
|
61204
60993
|
return /* @__PURE__ */ jsx("div", { className: cn("-mr-4 overflow-x-auto", tableWrapperClassName), children: /* @__PURE__ */ jsx("div", { className: "min-w-2xl overflow-hidden", children: /* @__PURE__ */ jsxs(
|
|
@@ -61228,7 +61017,7 @@ function ComparisonTableTwoColumn({
|
|
|
61228
61017
|
optixFlowConfig
|
|
61229
61018
|
}
|
|
61230
61019
|
) : optionBLabel && (typeof optionBLabel === "string" ? /* @__PURE__ */ jsx("span", { className: "text-lg font-semibold", children: optionBLabel }) : optionBLabel) }),
|
|
61231
|
-
rows.map((row, idx) => /* @__PURE__ */ jsxs(
|
|
61020
|
+
rows.map((row, idx) => /* @__PURE__ */ jsxs(React25.Fragment, { children: [
|
|
61232
61021
|
/* @__PURE__ */ jsx("div", { className: "flex items-center border-b p-3 text-base font-medium md:p-4 md:text-lg", children: row.label }),
|
|
61233
61022
|
/* @__PURE__ */ jsx("div", { className: cn("border-b bg-success/5 p-3 md:p-6", optionACellClassName), children: /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2", children: [
|
|
61234
61023
|
row.hasIcon && /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/circle-check-big", size: 20, className: "text-success" }),
|
|
@@ -61257,14 +61046,14 @@ function ComparisonTableTwoColumn({
|
|
|
61257
61046
|
optionBLabel,
|
|
61258
61047
|
optixFlowConfig
|
|
61259
61048
|
]);
|
|
61260
|
-
const headingContent =
|
|
61049
|
+
const headingContent = React25.useMemo(() => {
|
|
61261
61050
|
if (!heading) return null;
|
|
61262
61051
|
if (typeof heading === "string") {
|
|
61263
61052
|
return /* @__PURE__ */ jsx("h1", { className: cn("mb-8 text-3xl font-bold md:mb-12 md:text-5xl", headingClassName), children: heading });
|
|
61264
61053
|
}
|
|
61265
61054
|
return /* @__PURE__ */ jsx("div", { className: headingClassName, children: heading });
|
|
61266
61055
|
}, [heading, headingClassName]);
|
|
61267
|
-
const descriptionContent =
|
|
61056
|
+
const descriptionContent = React25.useMemo(() => {
|
|
61268
61057
|
if (!description) return null;
|
|
61269
61058
|
if (typeof description === "string") {
|
|
61270
61059
|
return /* @__PURE__ */ jsx("p", { className: cn("mb-8 text-muted-foreground md:text-lg", descriptionClassName), children: description });
|
|
@@ -61311,7 +61100,7 @@ function ComparisonFeatureCards({
|
|
|
61311
61100
|
patternOpacity,
|
|
61312
61101
|
optixFlowConfig
|
|
61313
61102
|
}) {
|
|
61314
|
-
const renderCard =
|
|
61103
|
+
const renderCard = React25.useCallback(
|
|
61315
61104
|
(product, isHighlighted) => /* @__PURE__ */ jsxs(
|
|
61316
61105
|
"div",
|
|
61317
61106
|
{
|
|
@@ -61367,7 +61156,7 @@ function ComparisonFeatureCards({
|
|
|
61367
61156
|
),
|
|
61368
61157
|
[cardClassName, optixFlowConfig]
|
|
61369
61158
|
);
|
|
61370
|
-
const cardsContent =
|
|
61159
|
+
const cardsContent = React25.useMemo(() => {
|
|
61371
61160
|
if (cardsSlot) return cardsSlot;
|
|
61372
61161
|
if (!productA || !productB) return null;
|
|
61373
61162
|
return /* @__PURE__ */ jsxs(Fragment$1, { children: [
|
|
@@ -61375,28 +61164,28 @@ function ComparisonFeatureCards({
|
|
|
61375
61164
|
renderCard(productB, productB.highlighted ?? false)
|
|
61376
61165
|
] });
|
|
61377
61166
|
}, [cardsSlot, productA, productB, renderCard]);
|
|
61378
|
-
const headingContent =
|
|
61167
|
+
const headingContent = React25.useMemo(() => {
|
|
61379
61168
|
if (!heading) return null;
|
|
61380
61169
|
if (typeof heading === "string") {
|
|
61381
61170
|
return /* @__PURE__ */ jsx("h1", { className: cn("mb-6 text-4xl font-semibold md:text-7xl", headingClassName), children: heading });
|
|
61382
61171
|
}
|
|
61383
61172
|
return /* @__PURE__ */ jsx("div", { className: headingClassName, children: heading });
|
|
61384
61173
|
}, [heading, headingClassName]);
|
|
61385
|
-
const descriptionContent =
|
|
61174
|
+
const descriptionContent = React25.useMemo(() => {
|
|
61386
61175
|
if (!description) return null;
|
|
61387
61176
|
if (typeof description === "string") {
|
|
61388
61177
|
return /* @__PURE__ */ jsx("p", { className: cn("mx-auto max-w-4xl text-muted-foreground md:text-xl", descriptionClassName), children: description });
|
|
61389
61178
|
}
|
|
61390
61179
|
return /* @__PURE__ */ jsx("div", { className: descriptionClassName, children: description });
|
|
61391
61180
|
}, [description, descriptionClassName]);
|
|
61392
|
-
const suitabilityContent =
|
|
61181
|
+
const suitabilityContent = React25.useMemo(() => {
|
|
61393
61182
|
if (!suitabilityTitle && !suitabilityDescription) return null;
|
|
61394
61183
|
return /* @__PURE__ */ jsxs("div", { className: suitabilityClassName, children: [
|
|
61395
61184
|
suitabilityTitle && (typeof suitabilityTitle === "string" ? /* @__PURE__ */ jsx("h2", { className: "mb-4 text-3xl font-semibold", children: suitabilityTitle }) : suitabilityTitle),
|
|
61396
61185
|
suitabilityDescription && (typeof suitabilityDescription === "string" ? /* @__PURE__ */ jsx("p", { className: "leading-6 text-muted-foreground md:text-lg", children: suitabilityDescription }) : suitabilityDescription)
|
|
61397
61186
|
] });
|
|
61398
61187
|
}, [suitabilityTitle, suitabilityDescription, suitabilityClassName]);
|
|
61399
|
-
const differencesContent =
|
|
61188
|
+
const differencesContent = React25.useMemo(() => {
|
|
61400
61189
|
if (!differencesTitle && !differencesDescription) return null;
|
|
61401
61190
|
return /* @__PURE__ */ jsxs("div", { className: cn("mt-16", differencesClassName), children: [
|
|
61402
61191
|
differencesTitle && (typeof differencesTitle === "string" ? /* @__PURE__ */ jsx("h2", { className: "mb-4 text-3xl font-semibold", children: differencesTitle }) : differencesTitle),
|
|
@@ -61444,7 +61233,7 @@ function ComparisonGridBadges({
|
|
|
61444
61233
|
pattern,
|
|
61445
61234
|
patternOpacity
|
|
61446
61235
|
}) {
|
|
61447
|
-
const featuresContent =
|
|
61236
|
+
const featuresContent = React25.useMemo(() => {
|
|
61448
61237
|
if (featuresSlot) return featuresSlot;
|
|
61449
61238
|
if (!features || features.length === 0) return null;
|
|
61450
61239
|
return features.map((feature, idx) => /* @__PURE__ */ jsxs(
|
|
@@ -61491,14 +61280,14 @@ function ComparisonGridBadges({
|
|
|
61491
61280
|
idx
|
|
61492
61281
|
));
|
|
61493
61282
|
}, [featuresSlot, features, featureCardClassName, badgeClassName, optionALabel, optionBLabel]);
|
|
61494
|
-
const headingContent =
|
|
61283
|
+
const headingContent = React25.useMemo(() => {
|
|
61495
61284
|
if (!heading) return null;
|
|
61496
61285
|
if (typeof heading === "string") {
|
|
61497
61286
|
return /* @__PURE__ */ jsx("h2", { className: cn("mb-4 text-3xl font-bold md:text-5xl", headingClassName), children: heading });
|
|
61498
61287
|
}
|
|
61499
61288
|
return /* @__PURE__ */ jsx("div", { className: headingClassName, children: heading });
|
|
61500
61289
|
}, [heading, headingClassName]);
|
|
61501
|
-
const descriptionContent =
|
|
61290
|
+
const descriptionContent = React25.useMemo(() => {
|
|
61502
61291
|
if (!description) return null;
|
|
61503
61292
|
if (typeof description === "string") {
|
|
61504
61293
|
return /* @__PURE__ */ jsx("p", { className: cn("mx-auto max-w-2xl text-muted-foreground md:text-lg", descriptionClassName), children: description });
|
|
@@ -61546,7 +61335,7 @@ function ComparisonMetricsRows({
|
|
|
61546
61335
|
pattern,
|
|
61547
61336
|
patternOpacity
|
|
61548
61337
|
}) {
|
|
61549
|
-
const metricsContent =
|
|
61338
|
+
const metricsContent = React25.useMemo(() => {
|
|
61550
61339
|
if (metricsSlot) return metricsSlot;
|
|
61551
61340
|
if (!metrics || metrics.length === 0) return null;
|
|
61552
61341
|
return /* @__PURE__ */ jsx(
|
|
@@ -61586,7 +61375,7 @@ function ComparisonMetricsRows({
|
|
|
61586
61375
|
}
|
|
61587
61376
|
);
|
|
61588
61377
|
}, [metricsSlot, metrics, metricsClassName, metricRowClassName]);
|
|
61589
|
-
const actionsContent =
|
|
61378
|
+
const actionsContent = React25.useMemo(() => {
|
|
61590
61379
|
if (actionsSlot) return actionsSlot;
|
|
61591
61380
|
if (!actions || actions.length === 0) return null;
|
|
61592
61381
|
return /* @__PURE__ */ jsx("div", { className: cn("flex justify-end", actionsClassName), children: actions.map((action, idx) => /* @__PURE__ */ jsxs(
|
|
@@ -61607,7 +61396,7 @@ function ComparisonMetricsRows({
|
|
|
61607
61396
|
idx
|
|
61608
61397
|
)) });
|
|
61609
61398
|
}, [actionsSlot, actions, actionsClassName]);
|
|
61610
|
-
const headingContent =
|
|
61399
|
+
const headingContent = React25.useMemo(() => {
|
|
61611
61400
|
if (!heading) return null;
|
|
61612
61401
|
if (typeof heading === "string") {
|
|
61613
61402
|
return /* @__PURE__ */ jsx(
|
|
@@ -61623,7 +61412,7 @@ function ComparisonMetricsRows({
|
|
|
61623
61412
|
}
|
|
61624
61413
|
return /* @__PURE__ */ jsx("div", { className: headingClassName, children: heading });
|
|
61625
61414
|
}, [heading, headingClassName]);
|
|
61626
|
-
const descriptionContent =
|
|
61415
|
+
const descriptionContent = React25.useMemo(() => {
|
|
61627
61416
|
if (!description) return null;
|
|
61628
61417
|
if (typeof description === "string") {
|
|
61629
61418
|
return /* @__PURE__ */ jsx("p", { className: cn("text-muted-foreground md:text-lg", descriptionClassName), children: description });
|
|
@@ -61686,7 +61475,7 @@ function ComparisonImageCards({
|
|
|
61686
61475
|
patternOpacity,
|
|
61687
61476
|
optixFlowConfig
|
|
61688
61477
|
}) {
|
|
61689
|
-
const renderCard =
|
|
61478
|
+
const renderCard = React25.useCallback(
|
|
61690
61479
|
(option) => /* @__PURE__ */ jsx("div", { className: cn("relative h-full", cardClassName), children: /* @__PURE__ */ jsxs("div", { className: cn(
|
|
61691
61480
|
"relative aspect-4/5 min-h-[400px] overflow-hidden rounded-2xl sm:aspect-[0.9] sm:min-h-[480px] sm:rounded-3xl md:min-h-[520px]",
|
|
61692
61481
|
getNestedCardBg(background, "accent"),
|
|
@@ -61710,7 +61499,7 @@ function ComparisonImageCards({
|
|
|
61710
61499
|
] }) }),
|
|
61711
61500
|
[cardClassName, optixFlowConfig]
|
|
61712
61501
|
);
|
|
61713
|
-
const cardsContent =
|
|
61502
|
+
const cardsContent = React25.useMemo(() => {
|
|
61714
61503
|
if (cardsSlot) return cardsSlot;
|
|
61715
61504
|
if (!optionA || !optionB) return null;
|
|
61716
61505
|
return /* @__PURE__ */ jsxs(Fragment$1, { children: [
|
|
@@ -61728,14 +61517,14 @@ function ComparisonImageCards({
|
|
|
61728
61517
|
)
|
|
61729
61518
|
] });
|
|
61730
61519
|
}, [cardsSlot, optionA, optionB, dividerText, dividerClassName, renderCard]);
|
|
61731
|
-
const headingContent =
|
|
61520
|
+
const headingContent = React25.useMemo(() => {
|
|
61732
61521
|
if (!heading) return null;
|
|
61733
61522
|
if (typeof heading === "string") {
|
|
61734
61523
|
return /* @__PURE__ */ jsx("h2", { className: cn("text-3xl font-medium sm:text-4xl md:text-5xl lg:text-6xl", headingClassName), children: heading });
|
|
61735
61524
|
}
|
|
61736
61525
|
return /* @__PURE__ */ jsx("div", { className: headingClassName, children: heading });
|
|
61737
61526
|
}, [heading, headingClassName]);
|
|
61738
|
-
const descriptionContent =
|
|
61527
|
+
const descriptionContent = React25.useMemo(() => {
|
|
61739
61528
|
if (!description) return null;
|
|
61740
61529
|
if (typeof description === "string") {
|
|
61741
61530
|
return /* @__PURE__ */ jsx("p", { className: cn("mx-auto mt-4 max-w-3xl text-lg text-muted-foreground sm:mt-6 sm:text-xl", descriptionClassName), children: description });
|
|
@@ -61865,7 +61654,7 @@ function ComparisonTableTabs({
|
|
|
61865
61654
|
patternOpacity
|
|
61866
61655
|
}) {
|
|
61867
61656
|
const [selectedTab, setSelectedTab] = useState(models?.[0]?.name || "");
|
|
61868
|
-
const renderStatusIcon =
|
|
61657
|
+
const renderStatusIcon = React25.useCallback((status) => {
|
|
61869
61658
|
if (status === "positive") {
|
|
61870
61659
|
return /* @__PURE__ */ jsx("span", { className: "flex size-8 items-center justify-center rounded-full border bg-success/10", children: /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/circle-check", size: 16, className: "text-success" }) });
|
|
61871
61660
|
}
|
|
@@ -61874,7 +61663,7 @@ function ComparisonTableTabs({
|
|
|
61874
61663
|
}
|
|
61875
61664
|
return /* @__PURE__ */ jsx("span", { className: "flex size-8 items-center justify-center rounded-full border bg-accent/10", children: /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/circle-minus", size: 16, className: "text-accent" }) });
|
|
61876
61665
|
}, []);
|
|
61877
|
-
const tableContent =
|
|
61666
|
+
const tableContent = React25.useMemo(() => {
|
|
61878
61667
|
if (tableSlot) return tableSlot;
|
|
61879
61668
|
if (!models || models.length === 0 || !features || features.length === 0) return null;
|
|
61880
61669
|
return /* @__PURE__ */ jsxs(Fragment$1, { children: [
|
|
@@ -61933,14 +61722,14 @@ function ComparisonTableTabs({
|
|
|
61933
61722
|
] }) })
|
|
61934
61723
|
] });
|
|
61935
61724
|
}, [tableSlot, models, features, tabsClassName, tableClassName, tableHeaderClassName, tableCellClassName, selectedTab, renderStatusIcon]);
|
|
61936
|
-
const headingContent =
|
|
61725
|
+
const headingContent = React25.useMemo(() => {
|
|
61937
61726
|
if (!heading) return null;
|
|
61938
61727
|
if (typeof heading === "string") {
|
|
61939
61728
|
return /* @__PURE__ */ jsx("h2", { className: cn("text-3xl font-bold md:text-4xl lg:text-5xl", headingClassName), children: heading });
|
|
61940
61729
|
}
|
|
61941
61730
|
return /* @__PURE__ */ jsx("div", { className: headingClassName, children: heading });
|
|
61942
61731
|
}, [heading, headingClassName]);
|
|
61943
|
-
const descriptionContent =
|
|
61732
|
+
const descriptionContent = React25.useMemo(() => {
|
|
61944
61733
|
if (!description) return null;
|
|
61945
61734
|
if (typeof description === "string") {
|
|
61946
61735
|
return /* @__PURE__ */ jsx("p", { className: cn("mt-4 text-muted-foreground md:text-lg", descriptionClassName), children: description });
|
|
@@ -62031,7 +61820,7 @@ function ComparisonTableTooltips({
|
|
|
62031
61820
|
pattern,
|
|
62032
61821
|
patternOpacity
|
|
62033
61822
|
}) {
|
|
62034
|
-
const renderCellContent =
|
|
61823
|
+
const renderCellContent = React25.useCallback(
|
|
62035
61824
|
(cell, isHighlighted) => {
|
|
62036
61825
|
if (typeof cell === "string") {
|
|
62037
61826
|
return cell;
|
|
@@ -62058,7 +61847,7 @@ function ComparisonTableTooltips({
|
|
|
62058
61847
|
},
|
|
62059
61848
|
[]
|
|
62060
61849
|
);
|
|
62061
|
-
const tableContent =
|
|
61850
|
+
const tableContent = React25.useMemo(() => {
|
|
62062
61851
|
if (tableSlot) return tableSlot;
|
|
62063
61852
|
if (!rows || rows.length === 0) return null;
|
|
62064
61853
|
return /* @__PURE__ */ jsxs(Table, { className: cn("rounded border text-left shadow-lg", tableClassName), children: [
|
|
@@ -62084,14 +61873,14 @@ function ComparisonTableTooltips({
|
|
|
62084
61873
|
] }, idx)) })
|
|
62085
61874
|
] });
|
|
62086
61875
|
}, [tableSlot, rows, tableClassName, tableHeaderClassName, tableCellClassName, optionALabel, optionBLabel, renderCellContent]);
|
|
62087
|
-
const headingContent =
|
|
61876
|
+
const headingContent = React25.useMemo(() => {
|
|
62088
61877
|
if (!heading) return null;
|
|
62089
61878
|
if (typeof heading === "string") {
|
|
62090
61879
|
return /* @__PURE__ */ jsx("h2", { className: cn("mb-4 text-center text-4xl font-semibold", headingClassName), children: heading });
|
|
62091
61880
|
}
|
|
62092
61881
|
return /* @__PURE__ */ jsx("div", { className: headingClassName, children: heading });
|
|
62093
61882
|
}, [heading, headingClassName]);
|
|
62094
|
-
const descriptionContent =
|
|
61883
|
+
const descriptionContent = React25.useMemo(() => {
|
|
62095
61884
|
if (!description) return null;
|
|
62096
61885
|
if (typeof description === "string") {
|
|
62097
61886
|
return /* @__PURE__ */ jsx("p", { className: cn("mb-8 text-center text-muted-foreground", descriptionClassName), children: description });
|
|
@@ -62133,7 +61922,7 @@ function ComparisonFeatureGrid({
|
|
|
62133
61922
|
pattern,
|
|
62134
61923
|
patternOpacity
|
|
62135
61924
|
}) {
|
|
62136
|
-
const renderStatusIcon =
|
|
61925
|
+
const renderStatusIcon = React25.useCallback((status) => {
|
|
62137
61926
|
if (status === true) {
|
|
62138
61927
|
return /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/check", size: 20, className: "text-success" });
|
|
62139
61928
|
}
|
|
@@ -62142,7 +61931,7 @@ function ComparisonFeatureGrid({
|
|
|
62142
61931
|
}
|
|
62143
61932
|
return /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/x", size: 20, className: "text-destructive" });
|
|
62144
61933
|
}, []);
|
|
62145
|
-
const gridContent =
|
|
61934
|
+
const gridContent = React25.useMemo(() => {
|
|
62146
61935
|
if (gridSlot) return gridSlot;
|
|
62147
61936
|
if (!features || features.length === 0) return null;
|
|
62148
61937
|
return /* @__PURE__ */ jsxs(
|
|
@@ -62208,14 +61997,14 @@ function ComparisonFeatureGrid({
|
|
|
62208
61997
|
optionBLabel,
|
|
62209
61998
|
renderStatusIcon
|
|
62210
61999
|
]);
|
|
62211
|
-
const headingContent =
|
|
62000
|
+
const headingContent = React25.useMemo(() => {
|
|
62212
62001
|
if (!heading) return null;
|
|
62213
62002
|
if (typeof heading === "string") {
|
|
62214
62003
|
return /* @__PURE__ */ jsx("h2", { className: cn("mb-4 text-center text-4xl font-semibold", headingClassName), children: heading });
|
|
62215
62004
|
}
|
|
62216
62005
|
return /* @__PURE__ */ jsx("div", { className: headingClassName, children: heading });
|
|
62217
62006
|
}, [heading, headingClassName]);
|
|
62218
|
-
const descriptionContent =
|
|
62007
|
+
const descriptionContent = React25.useMemo(() => {
|
|
62219
62008
|
if (!description) return null;
|
|
62220
62009
|
if (typeof description === "string") {
|
|
62221
62010
|
return /* @__PURE__ */ jsx("p", { className: cn("mb-8 text-center text-muted-foreground", descriptionClassName), children: description });
|
|
@@ -62259,7 +62048,7 @@ function ComparisonAiModels({
|
|
|
62259
62048
|
optixFlowConfig
|
|
62260
62049
|
}) {
|
|
62261
62050
|
const [hoveredModel, setHoveredModel] = useState(null);
|
|
62262
|
-
const renderStatusIcon =
|
|
62051
|
+
const renderStatusIcon = React25.useCallback((status) => {
|
|
62263
62052
|
if (status === "best") {
|
|
62264
62053
|
return /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/circle-check", size: 16, className: "text-success" });
|
|
62265
62054
|
}
|
|
@@ -62268,7 +62057,7 @@ function ComparisonAiModels({
|
|
|
62268
62057
|
}
|
|
62269
62058
|
return /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/minus", size: 16, className: "text-muted-foreground" });
|
|
62270
62059
|
}, []);
|
|
62271
|
-
const getCellClassName =
|
|
62060
|
+
const getCellClassName = React25.useCallback(
|
|
62272
62061
|
(status, modelKey) => {
|
|
62273
62062
|
const baseClass = "cursor-pointer py-4 text-center font-medium transition-all duration-300";
|
|
62274
62063
|
let statusClass = "";
|
|
@@ -62289,7 +62078,7 @@ function ComparisonAiModels({
|
|
|
62289
62078
|
},
|
|
62290
62079
|
[hoveredModel]
|
|
62291
62080
|
);
|
|
62292
|
-
const getSummaryCardClassName =
|
|
62081
|
+
const getSummaryCardClassName = React25.useCallback(
|
|
62293
62082
|
(modelKey) => {
|
|
62294
62083
|
const baseClass = "rounded border border-border/30 bg-background/50 p-3 transition-all duration-300";
|
|
62295
62084
|
if (hoveredModel === modelKey) {
|
|
@@ -62304,7 +62093,7 @@ function ComparisonAiModels({
|
|
|
62304
62093
|
},
|
|
62305
62094
|
[hoveredModel]
|
|
62306
62095
|
);
|
|
62307
|
-
const tableContent =
|
|
62096
|
+
const tableContent = React25.useMemo(() => {
|
|
62308
62097
|
if (tableSlot) return tableSlot;
|
|
62309
62098
|
if (!models || !comparisonData || comparisonData.length === 0) return null;
|
|
62310
62099
|
return /* @__PURE__ */ jsx(
|
|
@@ -62382,7 +62171,7 @@ function ComparisonAiModels({
|
|
|
62382
62171
|
getCellClassName,
|
|
62383
62172
|
renderStatusIcon
|
|
62384
62173
|
]);
|
|
62385
|
-
const analysisContent =
|
|
62174
|
+
const analysisContent = React25.useMemo(() => {
|
|
62386
62175
|
if (analysisSlot) return analysisSlot;
|
|
62387
62176
|
if (!models) return null;
|
|
62388
62177
|
return /* @__PURE__ */ jsx("div", { className: cn(
|
|
@@ -62423,14 +62212,14 @@ function ComparisonAiModels({
|
|
|
62423
62212
|
] })
|
|
62424
62213
|
] }) });
|
|
62425
62214
|
}, [analysisSlot, models, analysisClassName, getSummaryCardClassName]);
|
|
62426
|
-
const headingContent =
|
|
62215
|
+
const headingContent = React25.useMemo(() => {
|
|
62427
62216
|
if (!heading) return null;
|
|
62428
62217
|
if (typeof heading === "string") {
|
|
62429
62218
|
return /* @__PURE__ */ jsx("h2", { className: cn("text-3xl font-bold md:text-4xl lg:text-5xl", headingClassName), children: heading });
|
|
62430
62219
|
}
|
|
62431
62220
|
return /* @__PURE__ */ jsx("div", { className: headingClassName, children: heading });
|
|
62432
62221
|
}, [heading, headingClassName]);
|
|
62433
|
-
const descriptionContent =
|
|
62222
|
+
const descriptionContent = React25.useMemo(() => {
|
|
62434
62223
|
if (!description) return null;
|
|
62435
62224
|
if (typeof description === "string") {
|
|
62436
62225
|
return /* @__PURE__ */ jsx("p", { className: cn("mt-4 text-muted-foreground md:text-lg", descriptionClassName), children: description });
|
|
@@ -62480,7 +62269,7 @@ function ComparisonLegacyModern({
|
|
|
62480
62269
|
pattern,
|
|
62481
62270
|
patternOpacity
|
|
62482
62271
|
}) {
|
|
62483
|
-
const columnsContent =
|
|
62272
|
+
const columnsContent = React25.useMemo(() => {
|
|
62484
62273
|
if (columnsSlot) return columnsSlot;
|
|
62485
62274
|
if (!legacyFeatures || legacyFeatures.length === 0 || !modernFeatures || modernFeatures.length === 0)
|
|
62486
62275
|
return null;
|
|
@@ -62492,7 +62281,7 @@ function ComparisonLegacyModern({
|
|
|
62492
62281
|
legacyColumnClassName
|
|
62493
62282
|
), children: [
|
|
62494
62283
|
legacyTitle && (typeof legacyTitle === "string" ? /* @__PURE__ */ jsx("h3", { className: "text-2xl font-medium", children: legacyTitle }) : legacyTitle),
|
|
62495
|
-
/* @__PURE__ */ jsx("ul", { className: "mt-9 space-y-3", children: legacyFeatures.map((feature, idx) => /* @__PURE__ */ jsxs(
|
|
62284
|
+
/* @__PURE__ */ jsx("ul", { className: "mt-9 space-y-3", children: legacyFeatures.map((feature, idx) => /* @__PURE__ */ jsxs(React25.Fragment, { children: [
|
|
62496
62285
|
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2", children: [
|
|
62497
62286
|
/* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/x", size: 16, className: "my-1.5 shrink-0 text-muted-foreground" }),
|
|
62498
62287
|
/* @__PURE__ */ jsx("li", { className: "text-sm", children: feature.text })
|
|
@@ -62509,7 +62298,7 @@ function ComparisonLegacyModern({
|
|
|
62509
62298
|
),
|
|
62510
62299
|
children: [
|
|
62511
62300
|
modernTitle && (typeof modernTitle === "string" ? /* @__PURE__ */ jsx("h3", { className: "text-2xl font-medium", children: modernTitle }) : modernTitle),
|
|
62512
|
-
/* @__PURE__ */ jsx("ul", { className: "mt-9 space-y-3", children: modernFeatures.map((feature, idx) => /* @__PURE__ */ jsxs(
|
|
62301
|
+
/* @__PURE__ */ jsx("ul", { className: "mt-9 space-y-3", children: modernFeatures.map((feature, idx) => /* @__PURE__ */ jsxs(React25.Fragment, { children: [
|
|
62513
62302
|
/* @__PURE__ */ jsxs("li", { className: "flex items-center gap-2 text-sm", children: [
|
|
62514
62303
|
/* @__PURE__ */ jsx("span", { className: "text-lg", children: feature.emoji }),
|
|
62515
62304
|
feature.text
|
|
@@ -62521,7 +62310,7 @@ function ComparisonLegacyModern({
|
|
|
62521
62310
|
)
|
|
62522
62311
|
] });
|
|
62523
62312
|
}, [columnsSlot, legacyFeatures, modernFeatures, legacyTitle, modernTitle, legacyColumnClassName, modernColumnClassName]);
|
|
62524
|
-
const headingContent =
|
|
62313
|
+
const headingContent = React25.useMemo(() => {
|
|
62525
62314
|
if (!heading && !headingHighlight) return null;
|
|
62526
62315
|
return /* @__PURE__ */ jsxs("h2", { className: cn("text-4xl font-medium md:text-5xl lg:text-7xl", headingClassName), children: [
|
|
62527
62316
|
heading && (typeof heading === "string" ? /* @__PURE__ */ jsxs("span", { className: "text-muted-foreground", children: [
|
|
@@ -62534,7 +62323,7 @@ function ComparisonLegacyModern({
|
|
|
62534
62323
|
] }) : headingHighlight)
|
|
62535
62324
|
] });
|
|
62536
62325
|
}, [heading, headingHighlight, headingClassName, headingHighlightClassName]);
|
|
62537
|
-
const descriptionContent =
|
|
62326
|
+
const descriptionContent = React25.useMemo(() => {
|
|
62538
62327
|
if (!description) return null;
|
|
62539
62328
|
if (typeof description === "string") {
|
|
62540
62329
|
return /* @__PURE__ */ jsx("p", { className: cn("text-lg", descriptionClassName), children: description });
|
|
@@ -62707,7 +62496,7 @@ var NavbarMobileMenu = ({
|
|
|
62707
62496
|
closeIconClassName,
|
|
62708
62497
|
title = "Mobile Navigation"
|
|
62709
62498
|
}) => {
|
|
62710
|
-
|
|
62499
|
+
React25.useEffect(() => {
|
|
62711
62500
|
if (open) {
|
|
62712
62501
|
const originalOverflow = document.body.style.overflow;
|
|
62713
62502
|
document.body.style.overflow = "hidden";
|
|
@@ -62936,7 +62725,7 @@ var NavbarDropdownMenu = ({
|
|
|
62936
62725
|
patternOpacity,
|
|
62937
62726
|
optixFlowConfig
|
|
62938
62727
|
}) => {
|
|
62939
|
-
const [open, setOpen] =
|
|
62728
|
+
const [open, setOpen] = React25.useState(false);
|
|
62940
62729
|
const renderAuthActions = useMemo(() => {
|
|
62941
62730
|
if (authActionsSlot) return authActionsSlot;
|
|
62942
62731
|
if (!authActions || authActions.length === 0) return null;
|
|
@@ -63162,7 +62951,7 @@ var NavbarCenteredMenu = ({
|
|
|
63162
62951
|
patternOpacity,
|
|
63163
62952
|
optixFlowConfig
|
|
63164
62953
|
}) => {
|
|
63165
|
-
const [open, setOpen] =
|
|
62954
|
+
const [open, setOpen] = React25.useState(false);
|
|
63166
62955
|
const renderAuthActions = useMemo(() => {
|
|
63167
62956
|
if (authActionsSlot) return authActionsSlot;
|
|
63168
62957
|
if (!authActions || authActions.length === 0) return null;
|
|
@@ -63302,7 +63091,7 @@ var DesktopMenuItem = ({
|
|
|
63302
63091
|
index,
|
|
63303
63092
|
optixFlowConfig
|
|
63304
63093
|
}) => {
|
|
63305
|
-
const imagesRef =
|
|
63094
|
+
const imagesRef = React25.useRef([]);
|
|
63306
63095
|
const layout = link.layout || "simple-grid";
|
|
63307
63096
|
const handleMouseEnter = (event) => {
|
|
63308
63097
|
const index2 = Number(event.currentTarget.getAttribute("data-index"));
|
|
@@ -64537,7 +64326,7 @@ var NavbarFeatureGrid = ({
|
|
|
64537
64326
|
patternOpacity,
|
|
64538
64327
|
optixFlowConfig
|
|
64539
64328
|
}) => {
|
|
64540
|
-
const [open, setOpen] =
|
|
64329
|
+
const [open, setOpen] = React25.useState(false);
|
|
64541
64330
|
const renderAuthActions = useMemo(() => {
|
|
64542
64331
|
if (authActionsSlot) return authActionsSlot;
|
|
64543
64332
|
if (!authActions || authActions.length === 0) return null;
|
|
@@ -67747,7 +67536,7 @@ var DesktopMenuItem7 = ({
|
|
|
67747
67536
|
if (item.groups && item.groups.length > 0) {
|
|
67748
67537
|
return /* @__PURE__ */ jsxs(NavigationMenuItem, { value: `${index}`, children: [
|
|
67749
67538
|
/* @__PURE__ */ jsx(NavigationMenuTrigger, { children: item.label }),
|
|
67750
|
-
/* @__PURE__ */ jsx(NavigationMenuContent, { className: "p-0", children: /* @__PURE__ */ jsx("div", { className: "flex", children: item.groups.map((group, groupIndex) => /* @__PURE__ */ jsxs(
|
|
67539
|
+
/* @__PURE__ */ jsx(NavigationMenuContent, { className: "p-0", children: /* @__PURE__ */ jsx("div", { className: "flex", children: item.groups.map((group, groupIndex) => /* @__PURE__ */ jsxs(React25.Fragment, { children: [
|
|
67751
67540
|
groupIndex > 0 && /* @__PURE__ */ jsx(
|
|
67752
67541
|
Separator,
|
|
67753
67542
|
{
|
|
@@ -68499,7 +68288,7 @@ var NavbarSimpleLinks = ({
|
|
|
68499
68288
|
const renderNavItems = useMemo(() => {
|
|
68500
68289
|
if (navItemsSlot) return navItemsSlot;
|
|
68501
68290
|
if (!navItems || navItems.length === 0) return null;
|
|
68502
|
-
return navItems.map((item) => /* @__PURE__ */ jsx(
|
|
68291
|
+
return navItems.map((item) => /* @__PURE__ */ jsx(React25.Fragment, { children: /* @__PURE__ */ jsx(NavigationMenuItem, { children: /* @__PURE__ */ jsx(
|
|
68503
68292
|
NavigationMenuLink,
|
|
68504
68293
|
{
|
|
68505
68294
|
"data-nav-item": item.name,
|
|
@@ -73528,7 +73317,7 @@ function PricingFullComparison({
|
|
|
73528
73317
|
resolvedPlanIds[index]
|
|
73529
73318
|
))
|
|
73530
73319
|
] }) }),
|
|
73531
|
-
/* @__PURE__ */ jsx("tbody", { children: categories.map((category) => /* @__PURE__ */ jsxs(
|
|
73320
|
+
/* @__PURE__ */ jsx("tbody", { children: categories.map((category) => /* @__PURE__ */ jsxs(React25.Fragment, { children: [
|
|
73532
73321
|
/* @__PURE__ */ jsx("tr", { className: cn(getNestedCardBg(background), getNestedCardTextColor(background), categoryRowClassName), children: /* @__PURE__ */ jsx(
|
|
73533
73322
|
"td",
|
|
73534
73323
|
{
|
|
@@ -78129,9 +77918,9 @@ function ProcessStickySteps({
|
|
|
78129
77918
|
);
|
|
78130
77919
|
}
|
|
78131
77920
|
var usePrevious = (value) => {
|
|
78132
|
-
const [prev, setPrev] =
|
|
78133
|
-
const ref =
|
|
78134
|
-
|
|
77921
|
+
const [prev, setPrev] = React25.useState(void 0);
|
|
77922
|
+
const ref = React25.useRef(value);
|
|
77923
|
+
React25.useEffect(() => {
|
|
78135
77924
|
setPrev(ref.current);
|
|
78136
77925
|
ref.current = value;
|
|
78137
77926
|
}, [value]);
|
|
@@ -78144,12 +77933,12 @@ var ProcessCard = ({
|
|
|
78144
77933
|
itemClassName,
|
|
78145
77934
|
background
|
|
78146
77935
|
}) => {
|
|
78147
|
-
const ref =
|
|
77936
|
+
const ref = React25.useRef(null);
|
|
78148
77937
|
const itemInView = useInView(ref, {
|
|
78149
77938
|
amount: 0,
|
|
78150
77939
|
margin: "0px 0px -60% 0px"
|
|
78151
77940
|
});
|
|
78152
|
-
|
|
77941
|
+
React25.useEffect(() => {
|
|
78153
77942
|
if (itemInView) {
|
|
78154
77943
|
setActive(index);
|
|
78155
77944
|
}
|
|
@@ -78199,7 +77988,7 @@ function ProcessScrollImage({
|
|
|
78199
77988
|
ctaText,
|
|
78200
77989
|
ctaUrl
|
|
78201
77990
|
}) {
|
|
78202
|
-
const [active, setActive] =
|
|
77991
|
+
const [active, setActive] = React25.useState(0);
|
|
78203
77992
|
const previousActive = usePrevious(active);
|
|
78204
77993
|
const resolvedHeading = title ?? heading;
|
|
78205
77994
|
const resolvedActions = actions ?? (ctaText && ctaUrl ? [
|
|
@@ -78383,7 +78172,7 @@ var ProcessCard2 = ({
|
|
|
78383
78172
|
hoverImageClassName,
|
|
78384
78173
|
background
|
|
78385
78174
|
}) => {
|
|
78386
|
-
const [isHovered, setIsHovered] =
|
|
78175
|
+
const [isHovered, setIsHovered] = React25.useState(false);
|
|
78387
78176
|
const titleText = typeof step.title === "string" ? step.title : `Step ${index + 1}`;
|
|
78388
78177
|
return /* @__PURE__ */ jsxs(
|
|
78389
78178
|
"li",
|
|
@@ -78707,7 +78496,7 @@ function ProcessExpandableTimeline({
|
|
|
78707
78496
|
// Backwards compatibility
|
|
78708
78497
|
title
|
|
78709
78498
|
}) {
|
|
78710
|
-
const [expandedIndex, setExpandedIndex] =
|
|
78499
|
+
const [expandedIndex, setExpandedIndex] = React25.useState(null);
|
|
78711
78500
|
const resolvedHeading = title ?? heading;
|
|
78712
78501
|
const toggleExpand = (index) => {
|
|
78713
78502
|
setExpandedIndex(expandedIndex === index ? null : index);
|
|
@@ -83478,7 +83267,7 @@ function ListAchievementsShowcase({
|
|
|
83478
83267
|
if (!items || items.length === 0) return null;
|
|
83479
83268
|
return /* @__PURE__ */ jsxs("div", { className: cn("flex flex-col", itemsClassName), children: [
|
|
83480
83269
|
/* @__PURE__ */ jsx(Separator, {}),
|
|
83481
|
-
items.map((item, index) => /* @__PURE__ */ jsxs(
|
|
83270
|
+
items.map((item, index) => /* @__PURE__ */ jsxs(React25.Fragment, { children: [
|
|
83482
83271
|
/* @__PURE__ */ jsxs(
|
|
83483
83272
|
"div",
|
|
83484
83273
|
{
|
|
@@ -83598,7 +83387,7 @@ function ListCareerTimeline({
|
|
|
83598
83387
|
const renderExperiences = useMemo(() => {
|
|
83599
83388
|
if (experiencesSlot) return experiencesSlot;
|
|
83600
83389
|
if (!experiences || experiences.length === 0) return null;
|
|
83601
|
-
return /* @__PURE__ */ jsx("div", { className: experiencesClassName, children: experiences.map((experience, idx) => /* @__PURE__ */ jsxs(
|
|
83390
|
+
return /* @__PURE__ */ jsx("div", { className: experiencesClassName, children: experiences.map((experience, idx) => /* @__PURE__ */ jsxs(React25.Fragment, { children: [
|
|
83602
83391
|
/* @__PURE__ */ jsx(Separator, {}),
|
|
83603
83392
|
/* @__PURE__ */ jsxs(
|
|
83604
83393
|
"div",
|
|
@@ -83619,7 +83408,7 @@ function ListCareerTimeline({
|
|
|
83619
83408
|
const renderAwards = useMemo(() => {
|
|
83620
83409
|
if (awardsSlot) return awardsSlot;
|
|
83621
83410
|
if (!awards || awards.length === 0) return null;
|
|
83622
|
-
return /* @__PURE__ */ jsx("div", { className: awardsClassName, children: awards.map((award, idx) => /* @__PURE__ */ jsxs(
|
|
83411
|
+
return /* @__PURE__ */ jsx("div", { className: awardsClassName, children: awards.map((award, idx) => /* @__PURE__ */ jsxs(React25.Fragment, { children: [
|
|
83623
83412
|
/* @__PURE__ */ jsx(Separator, {}),
|
|
83624
83413
|
/* @__PURE__ */ jsxs(
|
|
83625
83414
|
"div",
|
|
@@ -83754,7 +83543,7 @@ function ListMetricsDashboard({
|
|
|
83754
83543
|
activeCategory: controlledActiveCategory,
|
|
83755
83544
|
onActiveCategoryChange
|
|
83756
83545
|
}) {
|
|
83757
|
-
const [internalActiveTab, setInternalActiveTab] =
|
|
83546
|
+
const [internalActiveTab, setInternalActiveTab] = React25.useState("all");
|
|
83758
83547
|
const activeTab = controlledActiveCategory ?? internalActiveTab;
|
|
83759
83548
|
const handleTabChange = (value) => {
|
|
83760
83549
|
if (onActiveCategoryChange) {
|
|
@@ -84238,7 +84027,7 @@ function ListSearchableGrid({
|
|
|
84238
84027
|
searchTerm: controlledSearchTerm,
|
|
84239
84028
|
onSearchTermChange
|
|
84240
84029
|
}) {
|
|
84241
|
-
const [internalSearchTerm, setInternalSearchTerm] =
|
|
84030
|
+
const [internalSearchTerm, setInternalSearchTerm] = React25.useState("");
|
|
84242
84031
|
const searchTerm = controlledSearchTerm ?? internalSearchTerm;
|
|
84243
84032
|
const handleSearchChange = (value) => {
|
|
84244
84033
|
if (onSearchTermChange) {
|
|
@@ -84247,7 +84036,7 @@ function ListSearchableGrid({
|
|
|
84247
84036
|
setInternalSearchTerm(value);
|
|
84248
84037
|
}
|
|
84249
84038
|
};
|
|
84250
|
-
const filteredItems =
|
|
84039
|
+
const filteredItems = React25.useMemo(() => {
|
|
84251
84040
|
if (!searchTerm) {
|
|
84252
84041
|
return items ?? [];
|
|
84253
84042
|
}
|
|
@@ -84410,7 +84199,7 @@ function ListSearchableGrid({
|
|
|
84410
84199
|
}
|
|
84411
84200
|
);
|
|
84412
84201
|
}
|
|
84413
|
-
var { useMemo:
|
|
84202
|
+
var { useMemo: useMemo433 } = React25;
|
|
84414
84203
|
function OfferModalNewsletterDiscount({
|
|
84415
84204
|
title,
|
|
84416
84205
|
emailPlaceholder,
|
|
@@ -84478,7 +84267,7 @@ function OfferModalNewsletterDiscount({
|
|
|
84478
84267
|
});
|
|
84479
84268
|
const formMethod = formConfig?.method?.toLowerCase() === "get" ? "get" : "post";
|
|
84480
84269
|
const dialogProps = open !== void 0 ? { open, onOpenChange } : { defaultOpen };
|
|
84481
|
-
const renderCloseButton =
|
|
84270
|
+
const renderCloseButton = useMemo433(() => {
|
|
84482
84271
|
if (closeButtonSlot) return closeButtonSlot;
|
|
84483
84272
|
if (!closeButtonText) return null;
|
|
84484
84273
|
return /* @__PURE__ */ jsx("div", { className: "absolute end-1.5 top-1.5", children: /* @__PURE__ */ jsx(DialogClose, { asChild: true, children: /* @__PURE__ */ jsx(
|
|
@@ -84492,12 +84281,12 @@ function OfferModalNewsletterDiscount({
|
|
|
84492
84281
|
}
|
|
84493
84282
|
) }) });
|
|
84494
84283
|
}, [closeButtonSlot, closeButtonText, closeClassName]);
|
|
84495
|
-
const renderHeader =
|
|
84284
|
+
const renderHeader = useMemo433(() => {
|
|
84496
84285
|
if (headerSlot) return headerSlot;
|
|
84497
84286
|
if (!title) return null;
|
|
84498
84287
|
return /* @__PURE__ */ jsx(DialogHeader, { className: headerClassName, children: typeof title === "string" ? /* @__PURE__ */ jsx(DialogTitle, { className: cn("text-start font-serif text-2xl font-normal leading-snug", titleClassName), children: title }) : /* @__PURE__ */ jsx(DialogTitle, { className: cn("text-start font-serif text-2xl font-normal leading-snug", titleClassName), children: title }) });
|
|
84499
84288
|
}, [headerSlot, title, headerClassName, titleClassName]);
|
|
84500
|
-
const renderForm =
|
|
84289
|
+
const renderForm = useMemo433(() => {
|
|
84501
84290
|
if (formSlot) return formSlot;
|
|
84502
84291
|
return /* @__PURE__ */ jsxs(
|
|
84503
84292
|
Form,
|
|
@@ -84559,7 +84348,7 @@ function OfferModalNewsletterDiscount({
|
|
|
84559
84348
|
}
|
|
84560
84349
|
) });
|
|
84561
84350
|
}
|
|
84562
|
-
var { useMemo:
|
|
84351
|
+
var { useMemo: useMemo434 } = React25;
|
|
84563
84352
|
function OfferModalMembershipImage({
|
|
84564
84353
|
overline,
|
|
84565
84354
|
title,
|
|
@@ -84636,7 +84425,7 @@ function OfferModalMembershipImage({
|
|
|
84636
84425
|
});
|
|
84637
84426
|
const formMethod = formConfig?.method?.toLowerCase() === "get" ? "get" : "post";
|
|
84638
84427
|
const dialogProps = open !== void 0 ? { open, onOpenChange } : { defaultOpen };
|
|
84639
|
-
const renderImage =
|
|
84428
|
+
const renderImage = useMemo434(() => {
|
|
84640
84429
|
if (imageSlot) return imageSlot;
|
|
84641
84430
|
if (!image) return null;
|
|
84642
84431
|
return /* @__PURE__ */ jsx("div", { className: cn("max-h-[290px] h-full overflow-hidden max-lg:hidden", imageWrapperClassName), children: /* @__PURE__ */ jsx(
|
|
@@ -84649,7 +84438,7 @@ function OfferModalMembershipImage({
|
|
|
84649
84438
|
}
|
|
84650
84439
|
) });
|
|
84651
84440
|
}, [imageSlot, image, imageWrapperClassName, imageClassName, optixFlowConfig]);
|
|
84652
|
-
const renderCloseButton =
|
|
84441
|
+
const renderCloseButton = useMemo434(() => {
|
|
84653
84442
|
if (closeButtonSlot) return closeButtonSlot;
|
|
84654
84443
|
return /* @__PURE__ */ jsx("div", { className: "absolute -end-px -top-px z-10", children: /* @__PURE__ */ jsx(DialogClose, { asChild: true, children: /* @__PURE__ */ jsx(
|
|
84655
84444
|
Pressable,
|
|
@@ -84665,7 +84454,7 @@ function OfferModalMembershipImage({
|
|
|
84665
84454
|
}
|
|
84666
84455
|
) }) });
|
|
84667
84456
|
}, [closeButtonSlot, closeClassName]);
|
|
84668
|
-
const renderForm =
|
|
84457
|
+
const renderForm = useMemo434(() => {
|
|
84669
84458
|
if (formSlot) return formSlot;
|
|
84670
84459
|
return /* @__PURE__ */ jsxs(
|
|
84671
84460
|
Form,
|
|
@@ -84728,7 +84517,7 @@ function OfferModalMembershipImage({
|
|
|
84728
84517
|
}
|
|
84729
84518
|
);
|
|
84730
84519
|
}, [formSlot, form, formConfig, formMethod, emailPlaceholder, inputClassName, submitClassName, buttonText, formClassName]);
|
|
84731
|
-
const renderFooter =
|
|
84520
|
+
const renderFooter = useMemo434(() => {
|
|
84732
84521
|
if (footerSlot) return footerSlot;
|
|
84733
84522
|
if (!description) return null;
|
|
84734
84523
|
return /* @__PURE__ */ jsx(DialogFooter, { className: footerClassName, children: /* @__PURE__ */ jsx(DialogDescription, { className: cn("text-muted-foreground text-center text-xs leading-relaxed", descriptionClassName), children: description }) });
|
|
@@ -84848,7 +84637,7 @@ function SheetDescription({
|
|
|
84848
84637
|
}
|
|
84849
84638
|
);
|
|
84850
84639
|
}
|
|
84851
|
-
var { useMemo:
|
|
84640
|
+
var { useMemo: useMemo435 } = React25;
|
|
84852
84641
|
function OfferModalSheetNewsletter({
|
|
84853
84642
|
logo,
|
|
84854
84643
|
logoSlot,
|
|
@@ -84931,7 +84720,7 @@ function OfferModalSheetNewsletter({
|
|
|
84931
84720
|
});
|
|
84932
84721
|
const formMethod = formConfig?.method?.toLowerCase() === "get" ? "get" : "post";
|
|
84933
84722
|
const sheetProps = open !== void 0 ? { open, onOpenChange } : { defaultOpen };
|
|
84934
|
-
const renderLogo =
|
|
84723
|
+
const renderLogo = useMemo435(() => {
|
|
84935
84724
|
if (logoSlot) return logoSlot;
|
|
84936
84725
|
if (!logo) return null;
|
|
84937
84726
|
const logoSrc = typeof logo.src === "string" ? logo.src : logo.src.light;
|
|
@@ -84945,7 +84734,7 @@ function OfferModalSheetNewsletter({
|
|
|
84945
84734
|
}
|
|
84946
84735
|
);
|
|
84947
84736
|
}, [logoSlot, logo, logoClassName, optixFlowConfig]);
|
|
84948
|
-
const renderHeader =
|
|
84737
|
+
const renderHeader = useMemo435(() => {
|
|
84949
84738
|
if (headerSlot) return headerSlot;
|
|
84950
84739
|
return /* @__PURE__ */ jsxs(SheetHeader, { className: cn("gap-8 p-0", headerClassName), children: [
|
|
84951
84740
|
renderLogo,
|
|
@@ -84955,7 +84744,7 @@ function OfferModalSheetNewsletter({
|
|
|
84955
84744
|
] })
|
|
84956
84745
|
] });
|
|
84957
84746
|
}, [headerSlot, renderLogo, headerClassName, title, titleClassName, description, descriptionClassName]);
|
|
84958
|
-
const renderForm =
|
|
84747
|
+
const renderForm = useMemo435(() => {
|
|
84959
84748
|
if (formSlot) return formSlot;
|
|
84960
84749
|
return /* @__PURE__ */ jsx(
|
|
84961
84750
|
Form,
|
|
@@ -85003,7 +84792,7 @@ function OfferModalSheetNewsletter({
|
|
|
85003
84792
|
}
|
|
85004
84793
|
);
|
|
85005
84794
|
}, [formSlot, form, formConfig, formMethod, emailPlaceholder, inputClassName, submitClassName, buttonText, formClassName]);
|
|
85006
|
-
const renderLegal =
|
|
84795
|
+
const renderLegal = useMemo435(() => {
|
|
85007
84796
|
if (legalSlot) return legalSlot;
|
|
85008
84797
|
if (!termsUrl || !termsText || !privacyUrl || !privacyText) return null;
|
|
85009
84798
|
return /* @__PURE__ */ jsxs("p", { className: cn("text-muted-foreground text-xs", legalClassName), children: [
|
|
@@ -85017,7 +84806,7 @@ function OfferModalSheetNewsletter({
|
|
|
85017
84806
|
"."
|
|
85018
84807
|
] });
|
|
85019
84808
|
}, [legalSlot, termsUrl, termsText, privacyUrl, privacyText, legalClassName]);
|
|
85020
|
-
const renderImage =
|
|
84809
|
+
const renderImage = useMemo435(() => {
|
|
85021
84810
|
if (imageSlot) return imageSlot;
|
|
85022
84811
|
if (!image) return null;
|
|
85023
84812
|
return /* @__PURE__ */ jsx("div", { className: cn("h-1/2 basis-1/2", imageWrapperClassName), children: /* @__PURE__ */ jsx(AspectRatio, { ratio: 1, className: "overflow-hidden", children: /* @__PURE__ */ jsx(
|
|
@@ -85597,10 +85386,10 @@ function ProjectDetailSidebarNavigation(props) {
|
|
|
85597
85386
|
heroImageClassName,
|
|
85598
85387
|
metadataClassName
|
|
85599
85388
|
} = props;
|
|
85600
|
-
const [activeSection, setActiveSection] =
|
|
85389
|
+
const [activeSection, setActiveSection] = React25.useState(
|
|
85601
85390
|
sections?.[0]?.id || ""
|
|
85602
85391
|
);
|
|
85603
|
-
|
|
85392
|
+
React25.useEffect(() => {
|
|
85604
85393
|
const handleScroll = () => {
|
|
85605
85394
|
const sectionElements = sections?.map(
|
|
85606
85395
|
(section) => document.getElementById(section.id)
|
|
@@ -88460,7 +88249,7 @@ function ProjectDetailTabbedCaseStudy(props) {
|
|
|
88460
88249
|
testimonialClassName,
|
|
88461
88250
|
toolsClassName
|
|
88462
88251
|
} = props;
|
|
88463
|
-
const [activeTab, setActiveTab] =
|
|
88252
|
+
const [activeTab, setActiveTab] = React25.useState(tabs?.[0]?.id || "");
|
|
88464
88253
|
const renderedBackAction = useMemo(() => {
|
|
88465
88254
|
if (backActionSlot) return backActionSlot;
|
|
88466
88255
|
if (!backAction) return null;
|
|
@@ -88848,7 +88637,7 @@ function RevealImage({
|
|
|
88848
88637
|
index,
|
|
88849
88638
|
optixFlowConfig
|
|
88850
88639
|
}) {
|
|
88851
|
-
const ref =
|
|
88640
|
+
const ref = React25.useRef(null);
|
|
88852
88641
|
const { scrollYProgress } = useScroll({
|
|
88853
88642
|
target: ref,
|
|
88854
88643
|
offset: ["start end", "end start"]
|
|
@@ -89043,7 +88832,7 @@ function ParallaxSection({
|
|
|
89043
88832
|
index,
|
|
89044
88833
|
optixFlowConfig
|
|
89045
88834
|
}) {
|
|
89046
|
-
const ref =
|
|
88835
|
+
const ref = React25.useRef(null);
|
|
89047
88836
|
const { scrollYProgress } = useScroll({
|
|
89048
88837
|
target: ref,
|
|
89049
88838
|
offset: ["start end", "end start"]
|
|
@@ -89116,7 +88905,7 @@ function ProjectDetailParallaxScroll(props) {
|
|
|
89116
88905
|
heroImageClassName,
|
|
89117
88906
|
sectionsClassName
|
|
89118
88907
|
} = props;
|
|
89119
|
-
const heroRef =
|
|
88908
|
+
const heroRef = React25.useRef(null);
|
|
89120
88909
|
const { scrollYProgress } = useScroll({
|
|
89121
88910
|
target: heroRef,
|
|
89122
88911
|
offset: ["start start", "end start"]
|
|
@@ -89446,7 +89235,7 @@ function BannerDeliveryCountdown({
|
|
|
89446
89235
|
}, [prefixText, timerContent, middleText, deliveryDateContent]);
|
|
89447
89236
|
return /* @__PURE__ */ jsx(Section, { background, spacing: "none", className: cn("bg-accent text-accent-foreground", className), children: /* @__PURE__ */ jsx("div", { className: cn("container py-2.5", containerClassName), children: /* @__PURE__ */ jsx("div", { className: cn("flex flex-wrap items-center justify-center gap-3 text-sm", contentClassName), children: /* @__PURE__ */ jsxs("div", { className: cn("flex items-center gap-2", messageClassName), children: [
|
|
89448
89237
|
iconContent,
|
|
89449
|
-
messageParts.length > 0 && /* @__PURE__ */ jsx("span", { children: messageParts.map((part, index) => /* @__PURE__ */ jsxs(
|
|
89238
|
+
messageParts.length > 0 && /* @__PURE__ */ jsx("span", { children: messageParts.map((part, index) => /* @__PURE__ */ jsxs(React25.Fragment, { children: [
|
|
89450
89239
|
index > 0 ? " " : null,
|
|
89451
89240
|
part
|
|
89452
89241
|
] }, index)) })
|
|
@@ -90582,7 +90371,7 @@ function IndustriesExpandableShowcase({
|
|
|
90582
90371
|
patternClassName,
|
|
90583
90372
|
optixFlowConfig
|
|
90584
90373
|
}) {
|
|
90585
|
-
const [activeContractor, setActiveContractor] =
|
|
90374
|
+
const [activeContractor, setActiveContractor] = React25.useState(
|
|
90586
90375
|
contractors?.[0]?.id || ""
|
|
90587
90376
|
);
|
|
90588
90377
|
const handleContractorHover = (contractorId) => {
|
|
@@ -91235,7 +91024,7 @@ function ResourceDetailDocumentSidebar({
|
|
|
91235
91024
|
}) {
|
|
91236
91025
|
const renderedBreadcrumbs = useMemo(() => {
|
|
91237
91026
|
if (breadcrumbsSlot) return breadcrumbsSlot;
|
|
91238
|
-
return /* @__PURE__ */ jsx(Breadcrumb, { className: breadcrumbsClassName, children: /* @__PURE__ */ jsx(BreadcrumbList, { children: breadcrumbs?.map((crumb, index) => /* @__PURE__ */ jsxs(
|
|
91027
|
+
return /* @__PURE__ */ jsx(Breadcrumb, { className: breadcrumbsClassName, children: /* @__PURE__ */ jsx(BreadcrumbList, { children: breadcrumbs?.map((crumb, index) => /* @__PURE__ */ jsxs(React25.Fragment, { children: [
|
|
91239
91028
|
/* @__PURE__ */ jsx(BreadcrumbItem, { children: !crumb.href ? /* @__PURE__ */ jsx(BreadcrumbPage, { children: typeof crumb.label === "string" ? crumb.label : crumb.label }) : /* @__PURE__ */ jsx(BreadcrumbLink, { href: crumb.href, children: index === 0 ? /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/home", size: 16 }) : typeof crumb.label === "string" ? crumb.label : crumb.label }) }),
|
|
91240
91029
|
index < (breadcrumbs?.length || 0) - 1 && /* @__PURE__ */ jsx(BreadcrumbSeparator, {})
|
|
91241
91030
|
] }, index)) }) });
|
|
@@ -94636,8 +94425,8 @@ function ServicesListTableHover({
|
|
|
94636
94425
|
patternOpacity,
|
|
94637
94426
|
optixFlowConfig
|
|
94638
94427
|
}) {
|
|
94639
|
-
const [hoveredIndex, setHoveredIndex] =
|
|
94640
|
-
const [mousePosition, setMousePosition] =
|
|
94428
|
+
const [hoveredIndex, setHoveredIndex] = React25.useState(null);
|
|
94429
|
+
const [mousePosition, setMousePosition] = React25.useState({ x: 0, y: 0 });
|
|
94641
94430
|
const handleMouseMove = (e) => {
|
|
94642
94431
|
setMousePosition({ x: e.clientX, y: e.clientY });
|
|
94643
94432
|
};
|
|
@@ -94887,7 +94676,7 @@ function ServicesListStickyImage({
|
|
|
94887
94676
|
patternOpacity,
|
|
94888
94677
|
optixFlowConfig
|
|
94889
94678
|
}) {
|
|
94890
|
-
const [activeIndex, setActiveIndex] =
|
|
94679
|
+
const [activeIndex, setActiveIndex] = React25.useState(0);
|
|
94891
94680
|
const renderServices = () => {
|
|
94892
94681
|
if (servicesSlot) return servicesSlot;
|
|
94893
94682
|
if (!services || services.length === 0) return null;
|
|
@@ -95139,8 +94928,8 @@ function ServicesListVideoShowcase({
|
|
|
95139
94928
|
patternOpacity,
|
|
95140
94929
|
optixFlowConfig
|
|
95141
94930
|
}) {
|
|
95142
|
-
const [playingIndex, setPlayingIndex] =
|
|
95143
|
-
const videoRefs =
|
|
94931
|
+
const [playingIndex, setPlayingIndex] = React25.useState(null);
|
|
94932
|
+
const videoRefs = React25.useRef([]);
|
|
95144
94933
|
const handleMouseEnter = (index) => {
|
|
95145
94934
|
setPlayingIndex(index);
|
|
95146
94935
|
videoRefs.current[index]?.play();
|
|
@@ -98433,7 +98222,7 @@ function StatsCircularProgress({
|
|
|
98433
98222
|
statInfoClassName
|
|
98434
98223
|
}) {
|
|
98435
98224
|
const effectiveDefaultCategory = defaultCategory || (categories && categories.length > 0 ? categories[0].id : "");
|
|
98436
|
-
const [category, setCategory] =
|
|
98225
|
+
const [category, setCategory] = React25.useState(effectiveDefaultCategory);
|
|
98437
98226
|
const badgeContent = useMemo(() => {
|
|
98438
98227
|
if (badgeSlot) return badgeSlot;
|
|
98439
98228
|
if (!badge) return null;
|
|
@@ -98726,8 +98515,8 @@ function StatsCardGroup({
|
|
|
98726
98515
|
);
|
|
98727
98516
|
}
|
|
98728
98517
|
function useAnimatedCounter(endValue, duration = 2e3, isVisible) {
|
|
98729
|
-
const [count, setCount] =
|
|
98730
|
-
|
|
98518
|
+
const [count, setCount] = React25.useState(0);
|
|
98519
|
+
React25.useEffect(() => {
|
|
98731
98520
|
if (!isVisible) return;
|
|
98732
98521
|
let startTime = null;
|
|
98733
98522
|
let animationFrame;
|
|
@@ -98815,9 +98604,9 @@ function StatsAnimatedCounter({
|
|
|
98815
98604
|
statLabelClassName,
|
|
98816
98605
|
statIconClassName
|
|
98817
98606
|
}) {
|
|
98818
|
-
const [isVisible, setIsVisible] =
|
|
98819
|
-
const sectionRef =
|
|
98820
|
-
|
|
98607
|
+
const [isVisible, setIsVisible] = React25.useState(false);
|
|
98608
|
+
const sectionRef = React25.useRef(null);
|
|
98609
|
+
React25.useEffect(() => {
|
|
98821
98610
|
const observer = new IntersectionObserver(
|
|
98822
98611
|
([entry]) => {
|
|
98823
98612
|
if (entry.isIntersecting) {
|
|
@@ -98905,8 +98694,8 @@ function StatsAnimatedCounter({
|
|
|
98905
98694
|
);
|
|
98906
98695
|
}
|
|
98907
98696
|
function useNumberTicker(endValue, duration = 2500, isVisible, decimals = 0) {
|
|
98908
|
-
const [displayValue, setDisplayValue] =
|
|
98909
|
-
|
|
98697
|
+
const [displayValue, setDisplayValue] = React25.useState("0");
|
|
98698
|
+
React25.useEffect(() => {
|
|
98910
98699
|
if (!isVisible) return;
|
|
98911
98700
|
let startTime = null;
|
|
98912
98701
|
let animationFrame;
|
|
@@ -99021,9 +98810,9 @@ function StatsNumberTicker({
|
|
|
99021
98810
|
statLabelClassName,
|
|
99022
98811
|
statDescriptionClassName
|
|
99023
98812
|
}) {
|
|
99024
|
-
const [isVisible, setIsVisible] =
|
|
99025
|
-
const sectionRef =
|
|
99026
|
-
|
|
98813
|
+
const [isVisible, setIsVisible] = React25.useState(false);
|
|
98814
|
+
const sectionRef = React25.useRef(null);
|
|
98815
|
+
React25.useEffect(() => {
|
|
99027
98816
|
const observer = new IntersectionObserver(
|
|
99028
98817
|
([entry]) => {
|
|
99029
98818
|
if (entry.isIntersecting) {
|
|
@@ -99282,9 +99071,9 @@ function StatsBarComparison({
|
|
|
99282
99071
|
barValueClassName,
|
|
99283
99072
|
barTrackClassName
|
|
99284
99073
|
}) {
|
|
99285
|
-
const [isVisible, setIsVisible] =
|
|
99286
|
-
const sectionRef =
|
|
99287
|
-
|
|
99074
|
+
const [isVisible, setIsVisible] = React25.useState(!animate);
|
|
99075
|
+
const sectionRef = React25.useRef(null);
|
|
99076
|
+
React25.useEffect(() => {
|
|
99288
99077
|
if (!animate) return;
|
|
99289
99078
|
const observer = new IntersectionObserver(
|
|
99290
99079
|
([entry]) => {
|
|
@@ -99462,7 +99251,7 @@ function TimelineVerticalIconDashed({
|
|
|
99462
99251
|
"mx-auto flex flex-col items-center justify-center text-center sm:max-w-xl",
|
|
99463
99252
|
stepsClassName
|
|
99464
99253
|
),
|
|
99465
|
-
children: steps.map((step, index) => /* @__PURE__ */ jsxs(
|
|
99254
|
+
children: steps.map((step, index) => /* @__PURE__ */ jsxs(React25.Fragment, { children: [
|
|
99466
99255
|
/* @__PURE__ */ jsxs("div", { className: cn("flex flex-col items-center", stepClassName), children: [
|
|
99467
99256
|
/* @__PURE__ */ jsx(
|
|
99468
99257
|
"span",
|
|
@@ -99729,7 +99518,7 @@ function TimelineTwoColumnFeatured({
|
|
|
99729
99518
|
style,
|
|
99730
99519
|
optixFlowConfig
|
|
99731
99520
|
}) {
|
|
99732
|
-
const renderActions =
|
|
99521
|
+
const renderActions = React25.useMemo(() => {
|
|
99733
99522
|
if (actionsSlot) {
|
|
99734
99523
|
return actionsSlot;
|
|
99735
99524
|
}
|
|
@@ -99857,7 +99646,7 @@ function TimelineTwoColumnFeatured({
|
|
|
99857
99646
|
}
|
|
99858
99647
|
);
|
|
99859
99648
|
}
|
|
99860
|
-
var DiagonalPattern =
|
|
99649
|
+
var DiagonalPattern = React25.memo(({
|
|
99861
99650
|
className,
|
|
99862
99651
|
patternOpacity = 0.15
|
|
99863
99652
|
}) => {
|
|
@@ -99896,7 +99685,7 @@ function TimelineAlternatingDiagonal({
|
|
|
99896
99685
|
style,
|
|
99897
99686
|
optixFlowConfig
|
|
99898
99687
|
}) {
|
|
99899
|
-
const renderedBadge =
|
|
99688
|
+
const renderedBadge = React25.useMemo(() => {
|
|
99900
99689
|
if (badgeSlot) {
|
|
99901
99690
|
return badgeSlot;
|
|
99902
99691
|
}
|
|
@@ -100274,7 +100063,7 @@ function TimelineProductivityList({
|
|
|
100274
100063
|
}
|
|
100275
100064
|
);
|
|
100276
100065
|
}
|
|
100277
|
-
var ProcessBar =
|
|
100066
|
+
var ProcessBar = React25.memo(({ currentStep, steps }) => /* @__PURE__ */ jsx("div", { className: "relative w-full scale-75", children: /* @__PURE__ */ jsx("div", { className: "flex items-center justify-between", children: steps.map((step, index) => /* @__PURE__ */ jsxs(React25.Fragment, { children: [
|
|
100278
100067
|
/* @__PURE__ */ jsx("div", { className: "flex flex-col items-center", children: /* @__PURE__ */ jsx(
|
|
100279
100068
|
motion.div,
|
|
100280
100069
|
{
|
|
@@ -100301,7 +100090,7 @@ var ProcessBar = React23.memo(({ currentStep, steps }) => /* @__PURE__ */ jsx("d
|
|
|
100301
100090
|
)
|
|
100302
100091
|
] })
|
|
100303
100092
|
] }, index)) }) }));
|
|
100304
|
-
var StepperContent =
|
|
100093
|
+
var StepperContent = React25.memo(({ step, optixFlowConfig, imageClassName, descriptionClassName, background }) => {
|
|
100305
100094
|
return /* @__PURE__ */ jsxs("div", { className: cn("my-4 flex min-h-[400px] w-full flex-col items-center justify-center overflow-hidden rounded-2xl p-6 text-center", getNestedCardBg(background), getNestedCardTextColor(background)), children: [
|
|
100306
100095
|
/* @__PURE__ */ jsx(
|
|
100307
100096
|
motion.div,
|
|
@@ -100334,7 +100123,7 @@ var StepperContent = React23.memo(({ step, optixFlowConfig, imageClassName, desc
|
|
|
100334
100123
|
)
|
|
100335
100124
|
] });
|
|
100336
100125
|
});
|
|
100337
|
-
var NavButtons =
|
|
100126
|
+
var NavButtons = React25.memo(({ handlePrev, handleNext }) => /* @__PURE__ */ jsxs("div", { className: "flex w-full justify-end gap-3 tracking-tight", children: [
|
|
100338
100127
|
/* @__PURE__ */ jsxs(
|
|
100339
100128
|
Pressable,
|
|
100340
100129
|
{
|
|
@@ -100385,10 +100174,10 @@ function TimelineStepperAnimated({
|
|
|
100385
100174
|
}) {
|
|
100386
100175
|
const safeInitialStep = (steps?.length ?? 0) > 0 ? Math.max(0, Math.min(initialStep ?? 0, (steps?.length ?? 1) - 1)) : 0;
|
|
100387
100176
|
const [currentStep, setCurrentStep] = useState(safeInitialStep);
|
|
100388
|
-
const handleNext =
|
|
100177
|
+
const handleNext = React25.useCallback(() => {
|
|
100389
100178
|
setCurrentStep((prev) => Math.min(prev + 1, (steps?.length ?? 1) - 1));
|
|
100390
100179
|
}, [steps?.length]);
|
|
100391
|
-
const handlePrev =
|
|
100180
|
+
const handlePrev = React25.useCallback(() => {
|
|
100392
100181
|
setCurrentStep((prev) => Math.max(prev - 1, 0));
|
|
100393
100182
|
}, []);
|
|
100394
100183
|
const safeCurrentStep = (steps?.length ?? 0) > 0 ? Math.max(0, Math.min(currentStep, (steps?.length ?? 1) - 1)) : 0;
|
|
@@ -101097,7 +100886,7 @@ function TimelineTabbedPhases({
|
|
|
101097
100886
|
style,
|
|
101098
100887
|
optixFlowConfig
|
|
101099
100888
|
}) {
|
|
101100
|
-
const renderDownloadButton =
|
|
100889
|
+
const renderDownloadButton = React25.useMemo(() => {
|
|
101101
100890
|
if (downloadSlot) {
|
|
101102
100891
|
return downloadSlot;
|
|
101103
100892
|
}
|
|
@@ -101317,7 +101106,7 @@ function TimelineProductLaunch({
|
|
|
101317
101106
|
id,
|
|
101318
101107
|
style
|
|
101319
101108
|
}) {
|
|
101320
|
-
const renderCta =
|
|
101109
|
+
const renderCta = React25.useMemo(() => {
|
|
101321
101110
|
if (ctaSlot) {
|
|
101322
101111
|
return ctaSlot;
|
|
101323
101112
|
}
|
|
@@ -101782,9 +101571,9 @@ function LinkTreeBlock({
|
|
|
101782
101571
|
}) {
|
|
101783
101572
|
const resolvedBackground = background;
|
|
101784
101573
|
const resolvedPattern = pattern ?? backgroundPattern;
|
|
101785
|
-
const [lightboxOpen, setLightboxOpen] =
|
|
101786
|
-
const [lightboxIndex, setLightboxIndex] =
|
|
101787
|
-
const lightboxItems =
|
|
101574
|
+
const [lightboxOpen, setLightboxOpen] = React25.useState(false);
|
|
101575
|
+
const [lightboxIndex, setLightboxIndex] = React25.useState(0);
|
|
101576
|
+
const lightboxItems = React25.useMemo(() => {
|
|
101788
101577
|
if (!mediaGallery || mediaGallery.length === 0) return [];
|
|
101789
101578
|
return mediaGallery.slice(0, mediaGalleryLimit).map((item, index) => ({
|
|
101790
101579
|
id: item.id ?? `media-${index}`,
|
|
@@ -101796,11 +101585,11 @@ function LinkTreeBlock({
|
|
|
101796
101585
|
share: true
|
|
101797
101586
|
}));
|
|
101798
101587
|
}, [mediaGallery, mediaGalleryLimit]);
|
|
101799
|
-
const handleMediaClick =
|
|
101588
|
+
const handleMediaClick = React25.useCallback((index) => {
|
|
101800
101589
|
setLightboxIndex(index);
|
|
101801
101590
|
setLightboxOpen(true);
|
|
101802
101591
|
}, []);
|
|
101803
|
-
const handleLightboxClose =
|
|
101592
|
+
const handleLightboxClose = React25.useCallback(() => {
|
|
101804
101593
|
setLightboxOpen(false);
|
|
101805
101594
|
}, []);
|
|
101806
101595
|
const resolveImage = (value, fallbackAlt) => {
|
|
@@ -101812,7 +101601,7 @@ function LinkTreeBlock({
|
|
|
101812
101601
|
};
|
|
101813
101602
|
const nameForAlt = typeof brandName === "string" ? brandName : "Brand avatar";
|
|
101814
101603
|
const resolvedAvatar = resolveImage(brandAvatar || brandLogo, nameForAlt) || resolveImage(blockBrandedIconsAndPlaceholders.avatar1, nameForAlt);
|
|
101815
|
-
const renderBrandHeader =
|
|
101604
|
+
const renderBrandHeader = React25.useMemo(() => {
|
|
101816
101605
|
if (brandSlot) return brandSlot;
|
|
101817
101606
|
return /* @__PURE__ */ jsxs(
|
|
101818
101607
|
"div",
|
|
@@ -101899,7 +101688,7 @@ function LinkTreeBlock({
|
|
|
101899
101688
|
brandTagline,
|
|
101900
101689
|
taglineClassName
|
|
101901
101690
|
]);
|
|
101902
|
-
const renderLinks =
|
|
101691
|
+
const renderLinks = React25.useMemo(() => {
|
|
101903
101692
|
if (linksSlot) return linksSlot;
|
|
101904
101693
|
if (!links || links.length === 0) return null;
|
|
101905
101694
|
return /* @__PURE__ */ jsx("div", { className: cn("space-y-3", linksClassName), children: links.map((link, index) => {
|
|
@@ -102016,7 +101805,7 @@ function LinkTreeBlock({
|
|
|
102016
101805
|
linkBadgeClassName,
|
|
102017
101806
|
linkChevronClassName
|
|
102018
101807
|
]);
|
|
102019
|
-
const renderMediaGallery =
|
|
101808
|
+
const renderMediaGallery = React25.useMemo(() => {
|
|
102020
101809
|
if (mediaGallerySlot) return mediaGallerySlot;
|
|
102021
101810
|
if (!mediaGallery || mediaGallery.length === 0) return null;
|
|
102022
101811
|
const items = mediaGallery.slice(0, mediaGalleryLimit);
|
|
@@ -102130,7 +101919,7 @@ function LinkTreeBlock({
|
|
|
102130
101919
|
mediaGalleryOverlayClassName,
|
|
102131
101920
|
mediaGalleryPlayIconClassName
|
|
102132
101921
|
]);
|
|
102133
|
-
const renderSocialLinks =
|
|
101922
|
+
const renderSocialLinks = React25.useMemo(() => {
|
|
102134
101923
|
if (socialLinksSlot) return socialLinksSlot;
|
|
102135
101924
|
if (!socialLinks || socialLinks.length === 0) return null;
|
|
102136
101925
|
return /* @__PURE__ */ jsx(
|
|
@@ -102176,7 +101965,7 @@ function LinkTreeBlock({
|
|
|
102176
101965
|
socialIconClassName,
|
|
102177
101966
|
socialLinkClassName
|
|
102178
101967
|
]);
|
|
102179
|
-
const renderFooter =
|
|
101968
|
+
const renderFooter = React25.useMemo(() => {
|
|
102180
101969
|
if (footerSlot) return footerSlot;
|
|
102181
101970
|
if (!footerAction) return null;
|
|
102182
101971
|
const resolvedFooterAction = footerAction;
|