@opensite/ui 2.8.0 → 2.8.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/about-culture-tabs.cjs +25 -21
- package/dist/about-culture-tabs.js +23 -19
- package/dist/about-developer-profile.cjs +6 -2
- package/dist/about-developer-profile.js +6 -2
- package/dist/about-expandable-values.cjs +6 -2
- package/dist/about-expandable-values.js +6 -2
- package/dist/about-location-info-hero.cjs +6 -2
- package/dist/about-location-info-hero.js +6 -2
- package/dist/about-mission-principles.cjs +6 -2
- package/dist/about-mission-principles.js +6 -2
- package/dist/about-network-spotlight.cjs +18 -14
- package/dist/about-network-spotlight.js +16 -12
- package/dist/about-split-hero.cjs +6 -2
- package/dist/about-split-hero.js +6 -2
- package/dist/about-startup-team.cjs +6 -2
- package/dist/about-startup-team.js +6 -2
- package/dist/article-breadcrumb-social.cjs +27 -23
- package/dist/article-breadcrumb-social.js +27 -23
- package/dist/article-chapters-author.cjs +29 -25
- package/dist/article-chapters-author.js +29 -25
- package/dist/article-compact-toc.cjs +26 -22
- package/dist/article-compact-toc.js +26 -22
- package/dist/article-sidebar-sticky.cjs +6 -2
- package/dist/article-sidebar-sticky.js +6 -2
- package/dist/auto-scroll-carousel.cjs +28 -24
- package/dist/auto-scroll-carousel.js +26 -22
- package/dist/banner-announcement-dismissible.cjs +6 -2
- package/dist/banner-announcement-dismissible.js +6 -2
- package/dist/banner-delivery-countdown.cjs +6 -2
- package/dist/banner-delivery-countdown.js +6 -2
- package/dist/banner-floating-offer.cjs +6 -2
- package/dist/banner-floating-offer.js +6 -2
- package/dist/banner-gdpr-rights.cjs +6 -2
- package/dist/banner-gdpr-rights.js +6 -2
- package/dist/banner-privacy-notice.cjs +6 -2
- package/dist/banner-privacy-notice.js +6 -2
- package/dist/banner-social-follow.cjs +6 -2
- package/dist/banner-social-follow.js +6 -2
- package/dist/banner-survey-incentive.cjs +6 -2
- package/dist/banner-survey-incentive.js +6 -2
- package/dist/blog-cards-read-time.cjs +6 -2
- package/dist/blog-cards-read-time.js +6 -2
- package/dist/blog-cards-tagline-cta.cjs +6 -2
- package/dist/blog-cards-tagline-cta.js +6 -2
- package/dist/blog-carousel-apple.cjs +25 -21
- package/dist/blog-carousel-apple.js +21 -17
- package/dist/blog-category-overlay.cjs +6 -2
- package/dist/blog-category-overlay.js +6 -2
- package/dist/blog-filtered-results.cjs +30 -26
- package/dist/blog-filtered-results.js +24 -20
- package/dist/blog-horizontal-cards.cjs +6 -2
- package/dist/blog-horizontal-cards.js +6 -2
- package/dist/blog-horizontal-timeline.cjs +6 -2
- package/dist/blog-horizontal-timeline.js +6 -2
- package/dist/carousel-animated-sections.cjs +23 -19
- package/dist/carousel-animated-sections.js +23 -19
- package/dist/carousel-auto-progress-slides.cjs +6 -2
- package/dist/carousel-auto-progress-slides.js +6 -2
- package/dist/carousel-autoplay-progress.cjs +34 -30
- package/dist/carousel-autoplay-progress.js +34 -30
- package/dist/carousel-badge-cards.cjs +31 -27
- package/dist/carousel-badge-cards.js +26 -22
- package/dist/carousel-demo-link.cjs +32 -28
- package/dist/carousel-demo-link.js +26 -22
- package/dist/carousel-feature-badge.cjs +22 -18
- package/dist/carousel-feature-badge.js +22 -18
- package/dist/carousel-gallery-thumbnails.cjs +6 -2
- package/dist/carousel-gallery-thumbnails.js +6 -2
- package/dist/carousel-gradient-overlay.cjs +32 -28
- package/dist/carousel-gradient-overlay.js +26 -22
- package/dist/carousel-gradient-text.cjs +32 -28
- package/dist/carousel-gradient-text.js +26 -22
- package/dist/carousel-horizontal-cards.cjs +20 -16
- package/dist/carousel-horizontal-cards.js +20 -16
- package/dist/carousel-icon-sidebar.cjs +38 -34
- package/dist/carousel-icon-sidebar.js +26 -22
- package/dist/carousel-icon-tabs.cjs +39 -35
- package/dist/carousel-icon-tabs.js +26 -22
- package/dist/carousel-image-hero.cjs +22 -18
- package/dist/carousel-image-hero.js +22 -18
- package/dist/carousel-multi-step-showcase.cjs +6 -2
- package/dist/carousel-multi-step-showcase.js +6 -2
- package/dist/carousel-pagination.cjs +6 -2
- package/dist/carousel-pagination.js +6 -2
- package/dist/carousel-portfolio-hero.cjs +22 -18
- package/dist/carousel-portfolio-hero.js +22 -18
- package/dist/carousel-product-feature-showcase.cjs +6 -2
- package/dist/carousel-product-feature-showcase.js +6 -2
- package/dist/carousel-progress-slider.cjs +28 -24
- package/dist/carousel-progress-slider.js +28 -24
- package/dist/carousel-scale-focus.cjs +41 -37
- package/dist/carousel-scale-focus.js +26 -22
- package/dist/carousel-sidebar-resources.cjs +34 -30
- package/dist/carousel-sidebar-resources.js +26 -22
- package/dist/carousel-tabs-content.cjs +39 -35
- package/dist/carousel-tabs-content.js +26 -22
- package/dist/case-studies-featured-border.cjs +6 -2
- package/dist/case-studies-featured-border.js +6 -2
- package/dist/case-study-stats-metrics.cjs +6 -2
- package/dist/case-study-stats-metrics.js +6 -2
- package/dist/case-study-toc-social-sidebar.cjs +6 -2
- package/dist/case-study-toc-social-sidebar.js +6 -2
- package/dist/community-initiatives.cjs +19 -15
- package/dist/community-initiatives.js +17 -13
- package/dist/comparison-ai-models.cjs +18 -14
- package/dist/comparison-ai-models.js +17 -13
- package/dist/comparison-feature-cards.cjs +16 -12
- package/dist/comparison-feature-cards.js +16 -12
- package/dist/comparison-feature-grid.cjs +14 -10
- package/dist/comparison-feature-grid.js +14 -10
- package/dist/comparison-grid-badges.cjs +13 -9
- package/dist/comparison-grid-badges.js +13 -9
- package/dist/comparison-legacy-modern.cjs +15 -11
- package/dist/comparison-legacy-modern.js +15 -11
- package/dist/comparison-table-tabs.cjs +15 -11
- package/dist/comparison-table-tabs.js +14 -10
- package/dist/comparison-table-two-column.cjs +14 -10
- package/dist/comparison-table-two-column.js +14 -10
- package/dist/components.cjs +199 -179
- package/dist/components.js +104 -84
- package/dist/contact-callback.cjs +27 -7
- package/dist/contact-callback.js +10 -5
- package/dist/contact-card.cjs +6 -2
- package/dist/contact-card.js +6 -2
- package/dist/contact-careers.cjs +18 -14
- package/dist/contact-careers.js +16 -12
- package/dist/contact-dark.cjs +6 -2
- package/dist/contact-dark.js +6 -2
- package/dist/contact-emergency.cjs +6 -2
- package/dist/contact-emergency.js +6 -2
- package/dist/contact-faq.cjs +9 -7
- package/dist/contact-faq.js +10 -5
- package/dist/contact-floating-banner.cjs +6 -2
- package/dist/contact-floating-banner.js +6 -2
- package/dist/contact-help-center.cjs +16 -12
- package/dist/contact-help-center.js +16 -12
- package/dist/contact-image.cjs +18 -14
- package/dist/contact-image.js +17 -13
- package/dist/contact-map.cjs +78 -58
- package/dist/contact-map.js +78 -58
- package/dist/cta-app-download-newsletter.cjs +6 -2
- package/dist/cta-app-download-newsletter.js +6 -2
- package/dist/cta-background-icon-badge.cjs +6 -2
- package/dist/cta-background-icon-badge.js +6 -2
- package/dist/cta-case-study-testimonial.cjs +6 -2
- package/dist/cta-case-study-testimonial.js +6 -2
- package/dist/cta-documentation-links.cjs +6 -2
- package/dist/cta-documentation-links.js +6 -2
- package/dist/cta-enterprise-dark-features.cjs +6 -2
- package/dist/cta-enterprise-dark-features.js +6 -2
- package/dist/cta-enterprise-split.cjs +6 -2
- package/dist/cta-enterprise-split.js +6 -2
- package/dist/cta-feature-cards-grid.cjs +6 -2
- package/dist/cta-feature-cards-grid.js +6 -2
- package/dist/cta-feature-checklist.cjs +17 -13
- package/dist/cta-feature-checklist.js +16 -12
- package/dist/cta-feature-list.cjs +6 -2
- package/dist/cta-feature-list.js +6 -2
- package/dist/cta-gradient-logos-floating.cjs +6 -2
- package/dist/cta-gradient-logos-floating.js +6 -2
- package/dist/cta-gradient-stats-hero.cjs +6 -2
- package/dist/cta-gradient-stats-hero.js +6 -2
- package/dist/cta-hero-feature-cards.cjs +6 -2
- package/dist/cta-hero-feature-cards.js +6 -2
- package/dist/cta-image-overlay-arrow.cjs +6 -2
- package/dist/cta-image-overlay-arrow.js +6 -2
- package/dist/cta-newsletter-features.cjs +12 -8
- package/dist/cta-newsletter-features.js +12 -8
- package/dist/cta-platform-demo.cjs +6 -2
- package/dist/cta-platform-demo.js +6 -2
- package/dist/cta-simple-centered.cjs +6 -2
- package/dist/cta-simple-centered.js +6 -2
- package/dist/cta-split-image-logos.cjs +6 -2
- package/dist/cta-split-image-logos.js +6 -2
- package/dist/cta-video-background-hero.cjs +6 -2
- package/dist/cta-video-background-hero.js +6 -2
- package/dist/cta-workflow-tabs.cjs +6 -2
- package/dist/cta-workflow-tabs.js +6 -2
- package/dist/dynamic-icon.cjs +27 -2
- package/dist/dynamic-icon.d.cts +2 -2
- package/dist/dynamic-icon.d.ts +2 -2
- package/dist/dynamic-icon.js +7 -2
- package/dist/expandable-case-study-cards.cjs +26 -6
- package/dist/expandable-case-study-cards.js +10 -5
- package/dist/faq-badge-support.cjs +25 -21
- package/dist/faq-badge-support.js +22 -18
- package/dist/faq-bordered-badge.cjs +9 -7
- package/dist/faq-bordered-badge.js +10 -5
- package/dist/faq-card-categories.cjs +18 -14
- package/dist/faq-card-categories.js +16 -12
- package/dist/faq-categorized-sections.cjs +9 -7
- package/dist/faq-categorized-sections.js +10 -5
- package/dist/faq-centered-accordion.cjs +9 -7
- package/dist/faq-centered-accordion.js +10 -5
- package/dist/faq-gradient-categories.cjs +18 -14
- package/dist/faq-gradient-categories.js +16 -12
- package/dist/faq-icon-benefits.cjs +18 -14
- package/dist/faq-icon-benefits.js +16 -12
- package/dist/faq-muted-cards.cjs +18 -14
- package/dist/faq-muted-cards.js +16 -12
- package/dist/faq-profile-sidebar.cjs +25 -21
- package/dist/faq-profile-sidebar.js +22 -18
- package/dist/faq-rounded-cards.cjs +18 -14
- package/dist/faq-rounded-cards.js +16 -12
- package/dist/faq-sidebar-navigation.cjs +20 -16
- package/dist/faq-sidebar-navigation.js +17 -13
- package/dist/faq-simple-accordion.cjs +18 -14
- package/dist/faq-simple-accordion.js +16 -12
- package/dist/faq-split-help.cjs +25 -21
- package/dist/faq-split-help.js +22 -18
- package/dist/faq-split-hero.cjs +9 -7
- package/dist/faq-split-hero.js +10 -5
- package/dist/feature-accordion-image.cjs +20 -16
- package/dist/feature-accordion-image.js +17 -13
- package/dist/feature-animated-carousel.cjs +35 -31
- package/dist/feature-animated-carousel.js +28 -24
- package/dist/feature-badge-grid-six.cjs +20 -16
- package/dist/feature-badge-grid-six.js +16 -12
- package/dist/feature-bento-image-grid.cjs +21 -17
- package/dist/feature-bento-image-grid.js +20 -16
- package/dist/feature-bento-utilities.cjs +19 -15
- package/dist/feature-bento-utilities.js +18 -14
- package/dist/feature-capabilities-grid.cjs +18 -14
- package/dist/feature-capabilities-grid.js +17 -13
- package/dist/feature-carousel-progress.cjs +31 -27
- package/dist/feature-carousel-progress.js +26 -22
- package/dist/feature-checklist-image.cjs +6 -2
- package/dist/feature-checklist-image.js +6 -2
- package/dist/feature-checklist-three-column.cjs +22 -18
- package/dist/feature-checklist-three-column.js +16 -12
- package/dist/feature-icon-grid-accent.cjs +26 -6
- package/dist/feature-icon-grid-accent.js +10 -5
- package/dist/feature-icon-grid-bordered.cjs +18 -14
- package/dist/feature-icon-grid-bordered.js +16 -12
- package/dist/feature-icon-grid-muted.cjs +18 -14
- package/dist/feature-icon-grid-muted.js +16 -12
- package/dist/feature-icon-tabs-content.cjs +20 -16
- package/dist/feature-icon-tabs-content.js +16 -12
- package/dist/feature-image-cards-three-column.cjs +29 -25
- package/dist/feature-image-cards-three-column.js +22 -18
- package/dist/feature-image-overlay-badge.cjs +18 -14
- package/dist/feature-image-overlay-badge.js +16 -12
- package/dist/feature-numbered-cards.cjs +20 -16
- package/dist/feature-numbered-cards.js +16 -12
- package/dist/feature-pattern-grid-links.cjs +19 -15
- package/dist/feature-pattern-grid-links.js +16 -12
- package/dist/feature-showcase.cjs +6 -2
- package/dist/feature-showcase.js +6 -2
- package/dist/feature-tabbed-content-image.cjs +21 -17
- package/dist/feature-tabbed-content-image.js +19 -15
- package/dist/feature-three-column-values.cjs +18 -14
- package/dist/feature-three-column-values.js +17 -13
- package/dist/feature-utility-cards-grid.cjs +20 -16
- package/dist/feature-utility-cards-grid.js +17 -13
- package/dist/footer-accordion-social.cjs +6 -2
- package/dist/footer-accordion-social.js +6 -2
- package/dist/footer-animated-social.cjs +6 -2
- package/dist/footer-animated-social.js +6 -2
- package/dist/footer-background-card.cjs +6 -2
- package/dist/footer-background-card.js +6 -2
- package/dist/footer-brand-description.cjs +6 -2
- package/dist/footer-brand-description.js +6 -2
- package/dist/footer-brand-links-contact.cjs +6 -2
- package/dist/footer-brand-links-contact.js +6 -2
- package/dist/footer-comprehensive-links.cjs +6 -2
- package/dist/footer-comprehensive-links.js +6 -2
- package/dist/footer-contact-card.cjs +6 -2
- package/dist/footer-contact-card.js +6 -2
- package/dist/footer-cta-banner.cjs +6 -2
- package/dist/footer-cta-banner.js +6 -2
- package/dist/footer-cta-social.cjs +24 -20
- package/dist/footer-cta-social.js +22 -18
- package/dist/footer-info-cards-accordion.cjs +24 -20
- package/dist/footer-info-cards-accordion.js +23 -19
- package/dist/footer-nav-social.cjs +6 -2
- package/dist/footer-nav-social.js +6 -2
- package/dist/footer-newsletter-contact.cjs +6 -2
- package/dist/footer-newsletter-contact.js +6 -2
- package/dist/footer-newsletter-grid.cjs +6 -2
- package/dist/footer-newsletter-grid.js +6 -2
- package/dist/footer-newsletter-minimal.cjs +27 -23
- package/dist/footer-newsletter-minimal.js +26 -22
- package/dist/footer-social-apps.cjs +26 -22
- package/dist/footer-social-apps.js +22 -18
- package/dist/footer-social-newsletter.cjs +6 -2
- package/dist/footer-social-newsletter.js +6 -2
- package/dist/footer-split-image-accordion.cjs +24 -20
- package/dist/footer-split-image-accordion.js +23 -19
- package/dist/geo-map.cjs +74 -54
- package/dist/geo-map.js +73 -53
- package/dist/hero-badge-shadow-overlay.cjs +6 -2
- package/dist/hero-badge-shadow-overlay.js +6 -2
- package/dist/hero-coming-soon-countdown.cjs +6 -2
- package/dist/hero-coming-soon-countdown.js +6 -2
- package/dist/hero-conversion-video-play.cjs +29 -25
- package/dist/hero-conversion-video-play.js +26 -22
- package/dist/hero-creative-studio-stacked.cjs +19 -15
- package/dist/hero-creative-studio-stacked.js +16 -12
- package/dist/hero-dashed-border-features.cjs +6 -2
- package/dist/hero-dashed-border-features.js +6 -2
- package/dist/hero-design-carousel-portfolio.cjs +29 -25
- package/dist/hero-design-carousel-portfolio.js +26 -22
- package/dist/hero-design-system-3d.cjs +18 -14
- package/dist/hero-design-system-3d.js +16 -12
- package/dist/hero-developer-tools-code.cjs +18 -14
- package/dist/hero-developer-tools-code.js +16 -12
- package/dist/hero-ecommerce-product-showcase.cjs +20 -16
- package/dist/hero-ecommerce-product-showcase.js +17 -13
- package/dist/hero-enterprise-security.cjs +6 -2
- package/dist/hero-enterprise-security.js +6 -2
- package/dist/hero-event-registration.cjs +21 -17
- package/dist/hero-event-registration.js +17 -13
- package/dist/hero-feature-cards-grid.cjs +6 -2
- package/dist/hero-feature-cards-grid.js +6 -2
- package/dist/hero-floating-images.cjs +26 -6
- package/dist/hero-floating-images.js +10 -5
- package/dist/hero-gradient-avatars-rating.cjs +19 -15
- package/dist/hero-gradient-avatars-rating.js +16 -12
- package/dist/hero-grid-pattern-solutions.cjs +6 -2
- package/dist/hero-grid-pattern-solutions.js +6 -2
- package/dist/hero-marketplace-scattered-images.cjs +6 -2
- package/dist/hero-marketplace-scattered-images.js +6 -2
- package/dist/hero-mentorship-video-split.cjs +6 -2
- package/dist/hero-mentorship-video-split.js +6 -2
- package/dist/hero-mobile-app-download.cjs +6 -2
- package/dist/hero-mobile-app-download.js +6 -2
- package/dist/hero-overlay-cta-grid.cjs +20 -16
- package/dist/hero-overlay-cta-grid.js +16 -12
- package/dist/hero-platform-features-grid.cjs +6 -2
- package/dist/hero-platform-features-grid.js +6 -2
- package/dist/hero-portfolio-creative.cjs +6 -2
- package/dist/hero-portfolio-creative.js +6 -2
- package/dist/hero-pricing-comparison.cjs +6 -2
- package/dist/hero-pricing-comparison.js +6 -2
- package/dist/hero-product-showcase-floating.cjs +27 -23
- package/dist/hero-product-showcase-floating.js +22 -18
- package/dist/hero-saas-dashboard-preview.cjs +6 -2
- package/dist/hero-saas-dashboard-preview.js +6 -2
- package/dist/hero-simple-centered-image.cjs +5 -5
- package/dist/hero-simple-centered-image.js +5 -5
- package/dist/hero-software-growth-video-dialog.cjs +19 -15
- package/dist/hero-software-growth-video-dialog.js +16 -12
- package/dist/hero-split-icon-cards.cjs +18 -14
- package/dist/hero-split-icon-cards.js +16 -12
- package/dist/hero-video-dialog-gradient.cjs +19 -15
- package/dist/hero-video-dialog-gradient.js +16 -12
- package/dist/hero-video-overlay-stars.cjs +18 -14
- package/dist/hero-video-overlay-stars.js +16 -12
- package/dist/index.cjs +200 -180
- package/dist/index.js +104 -84
- package/dist/industries-expandable-showcase.cjs +6 -2
- package/dist/industries-expandable-showcase.js +6 -2
- package/dist/industries-hover-reveal-grid.cjs +6 -2
- package/dist/industries-hover-reveal-grid.js +6 -2
- package/dist/industries-timeline-table.cjs +6 -2
- package/dist/industries-timeline-table.js +6 -2
- package/dist/interior-carousel.cjs +33 -29
- package/dist/interior-carousel.js +26 -22
- package/dist/link-page-bento-layout.cjs +6 -2
- package/dist/link-page-bento-layout.js +6 -2
- package/dist/link-page-grid-cards.cjs +6 -2
- package/dist/link-page-grid-cards.js +6 -2
- package/dist/link-page-minimal-profile.cjs +6 -2
- package/dist/link-page-minimal-profile.js +6 -2
- package/dist/link-page-newsletter-social.cjs +6 -2
- package/dist/link-page-newsletter-social.js +6 -2
- package/dist/link-tree-block.cjs +30 -26
- package/dist/link-tree-block.js +30 -26
- package/dist/list-achievements-showcase.cjs +6 -2
- package/dist/list-achievements-showcase.js +6 -2
- package/dist/list-feature-comparison.cjs +6 -2
- package/dist/list-feature-comparison.js +6 -2
- package/dist/list-metrics-dashboard.cjs +6 -2
- package/dist/list-metrics-dashboard.js +6 -2
- package/dist/list-searchable-grid.cjs +19 -15
- package/dist/list-searchable-grid.js +18 -14
- package/dist/list-service-category-table.cjs +26 -6
- package/dist/list-service-category-table.js +10 -5
- package/dist/navbar-animated-preview.cjs +6 -2
- package/dist/navbar-animated-preview.js +6 -2
- package/dist/navbar-centered-menu.cjs +6 -2
- package/dist/navbar-centered-menu.js +6 -2
- package/dist/navbar-dark-icons.cjs +6 -2
- package/dist/navbar-dark-icons.js +6 -2
- package/dist/navbar-dropdown-menu.cjs +6 -2
- package/dist/navbar-dropdown-menu.js +6 -2
- package/dist/navbar-education-platform.cjs +6 -2
- package/dist/navbar-education-platform.js +6 -2
- package/dist/navbar-enterprise-mega.cjs +6 -2
- package/dist/navbar-enterprise-mega.js +6 -2
- package/dist/navbar-feature-grid.cjs +6 -2
- package/dist/navbar-feature-grid.js +6 -2
- package/dist/navbar-floating-pill.cjs +6 -2
- package/dist/navbar-floating-pill.js +6 -2
- package/dist/navbar-fullscreen-menu.cjs +6 -2
- package/dist/navbar-fullscreen-menu.js +6 -2
- package/dist/navbar-icon-links.cjs +6 -2
- package/dist/navbar-icon-links.js +6 -2
- package/dist/navbar-image-preview.cjs +6 -2
- package/dist/navbar-image-preview.js +6 -2
- package/dist/navbar-mega-menu.cjs +6 -2
- package/dist/navbar-mega-menu.js +6 -2
- package/dist/navbar-multi-column-groups.cjs +6 -2
- package/dist/navbar-multi-column-groups.js +6 -2
- package/dist/navbar-platform-resources.cjs +6 -2
- package/dist/navbar-platform-resources.js +6 -2
- package/dist/navbar-search-focused.cjs +6 -2
- package/dist/navbar-search-focused.js +6 -2
- package/dist/navbar-sidebar-mobile.cjs +6 -2
- package/dist/navbar-sidebar-mobile.js +6 -2
- package/dist/navbar-simple-links.cjs +6 -2
- package/dist/navbar-simple-links.js +6 -2
- package/dist/navbar-split-cta.cjs +6 -2
- package/dist/navbar-split-cta.js +6 -2
- package/dist/navbar-sticky-compact.cjs +6 -2
- package/dist/navbar-sticky-compact.js +6 -2
- package/dist/navbar-tabbed-sections.cjs +6 -2
- package/dist/navbar-tabbed-sections.js +6 -2
- package/dist/navbar-transparent-overlay.cjs +6 -2
- package/dist/navbar-transparent-overlay.js +6 -2
- package/dist/offer-modal-membership-image.cjs +6 -2
- package/dist/offer-modal-membership-image.js +6 -2
- package/dist/offer-modal-newsletter-discount.cjs +6 -2
- package/dist/offer-modal-newsletter-discount.js +6 -2
- package/dist/offer-modal-sheet-newsletter.cjs +6 -2
- package/dist/offer-modal-sheet-newsletter.js +6 -2
- package/dist/payment-platform-icon.cjs +27 -2
- package/dist/payment-platform-icon.js +7 -2
- package/dist/pricing-addons-cards.cjs +19 -15
- package/dist/pricing-addons-cards.js +16 -12
- package/dist/pricing-addons-featured.cjs +20 -16
- package/dist/pricing-addons-featured.js +16 -12
- package/dist/pricing-collapsible-plans.cjs +19 -15
- package/dist/pricing-collapsible-plans.js +16 -12
- package/dist/pricing-columns-toggle.cjs +20 -16
- package/dist/pricing-columns-toggle.js +16 -12
- package/dist/pricing-comparison-headers.cjs +21 -17
- package/dist/pricing-comparison-headers.js +16 -12
- package/dist/pricing-comparison-table.cjs +21 -17
- package/dist/pricing-comparison-table.js +16 -12
- package/dist/pricing-discount-card.cjs +18 -14
- package/dist/pricing-discount-card.js +16 -12
- package/dist/pricing-enterprise-contact.cjs +18 -14
- package/dist/pricing-enterprise-contact.js +16 -12
- package/dist/pricing-feature-matrix.cjs +19 -15
- package/dist/pricing-feature-matrix.js +16 -12
- package/dist/pricing-four-tier-toggle.cjs +20 -16
- package/dist/pricing-four-tier-toggle.js +16 -12
- package/dist/pricing-full-comparison.cjs +19 -15
- package/dist/pricing-full-comparison.js +17 -13
- package/dist/pricing-gradient-cards.cjs +20 -16
- package/dist/pricing-gradient-cards.js +16 -12
- package/dist/pricing-icon-headers.cjs +19 -15
- package/dist/pricing-icon-headers.js +16 -12
- package/dist/pricing-minimal-cards.cjs +19 -15
- package/dist/pricing-minimal-cards.js +16 -12
- package/dist/pricing-packages-radio.cjs +18 -14
- package/dist/pricing-packages-radio.js +16 -12
- package/dist/pricing-popular-highlight.cjs +20 -16
- package/dist/pricing-popular-highlight.js +16 -12
- package/dist/pricing-radio-toggle.cjs +20 -16
- package/dist/pricing-radio-toggle.js +16 -12
- package/dist/pricing-responsive-table.cjs +18 -14
- package/dist/pricing-responsive-table.js +16 -12
- package/dist/pricing-services-cards.cjs +19 -15
- package/dist/pricing-services-cards.js +16 -12
- package/dist/pricing-simple-card.cjs +18 -14
- package/dist/pricing-simple-card.js +16 -12
- package/dist/pricing-single-card.cjs +19 -15
- package/dist/pricing-single-card.js +16 -12
- package/dist/pricing-split-layout.cjs +16 -12
- package/dist/pricing-split-layout.js +16 -12
- package/dist/pricing-spotlight-card.cjs +18 -14
- package/dist/pricing-spotlight-card.js +16 -12
- package/dist/pricing-switch-cards.cjs +20 -16
- package/dist/pricing-switch-cards.js +16 -12
- package/dist/pricing-tabs-toggle.cjs +20 -16
- package/dist/pricing-tabs-toggle.js +16 -12
- package/dist/pricing-tier-grid.cjs +19 -15
- package/dist/pricing-tier-grid.js +16 -12
- package/dist/pricing-toggle-cards.cjs +20 -16
- package/dist/pricing-toggle-cards.js +16 -12
- package/dist/pricing-toggle-period.cjs +18 -14
- package/dist/pricing-toggle-period.js +16 -12
- package/dist/pricing-two-column-basic.cjs +20 -16
- package/dist/pricing-two-column-basic.js +16 -12
- package/dist/process-expandable-timeline.cjs +6 -2
- package/dist/process-expandable-timeline.js +6 -2
- package/dist/process-icon-timeline.cjs +26 -6
- package/dist/process-icon-timeline.js +10 -5
- package/dist/process-numbered-services.cjs +6 -2
- package/dist/process-numbered-services.js +6 -2
- package/dist/process-roadmap-timeline.cjs +26 -6
- package/dist/process-roadmap-timeline.js +10 -5
- package/dist/process-scroll-image.cjs +24 -20
- package/dist/process-scroll-image.js +22 -18
- package/dist/process-steps-grid.cjs +26 -6
- package/dist/process-steps-grid.js +10 -5
- package/dist/process-sticky-steps.cjs +6 -2
- package/dist/process-sticky-steps.js +6 -2
- package/dist/project-background-reveal.cjs +17 -13
- package/dist/project-background-reveal.js +16 -12
- package/dist/project-card-overlay.cjs +26 -6
- package/dist/project-card-overlay.js +10 -5
- package/dist/project-carousel-cinematic.cjs +31 -27
- package/dist/project-carousel-cinematic.js +26 -22
- package/dist/project-carousel-detail-cards.cjs +31 -27
- package/dist/project-carousel-detail-cards.js +26 -22
- package/dist/project-carousel-minimal.cjs +31 -27
- package/dist/project-carousel-minimal.js +26 -22
- package/dist/project-detail-architecture-carousel.cjs +6 -2
- package/dist/project-detail-architecture-carousel.js +6 -2
- package/dist/project-detail-list-related.cjs +6 -2
- package/dist/project-detail-list-related.js +6 -2
- package/dist/project-detail-photography-breadcrumb.cjs +6 -2
- package/dist/project-detail-photography-breadcrumb.js +6 -2
- package/dist/project-detail-tabbed-case-study.cjs +6 -2
- package/dist/project-detail-tabbed-case-study.js +6 -2
- package/dist/project-experience-quote.cjs +17 -13
- package/dist/project-experience-quote.js +16 -12
- package/dist/project-featured-carousel.cjs +27 -23
- package/dist/project-featured-carousel.js +26 -22
- package/dist/project-horizontal-cards.cjs +17 -13
- package/dist/project-horizontal-cards.js +16 -12
- package/dist/project-interactive-hover-reveal.cjs +18 -14
- package/dist/project-interactive-hover-reveal.js +16 -12
- package/dist/project-scroll-reveal.cjs +26 -6
- package/dist/project-scroll-reveal.js +10 -5
- package/dist/project-video-carousel.cjs +31 -27
- package/dist/project-video-carousel.js +26 -22
- package/dist/project-video-hover-bento.cjs +26 -6
- package/dist/project-video-hover-bento.js +10 -5
- package/dist/project-video-hover-grid.cjs +26 -6
- package/dist/project-video-hover-grid.js +10 -5
- package/dist/project-video-hover-rounded.cjs +26 -6
- package/dist/project-video-hover-rounded.js +10 -5
- package/dist/project-video-hover-stack.cjs +26 -6
- package/dist/project-video-hover-stack.js +10 -5
- package/dist/project-video-hover-two-by-two.cjs +26 -6
- package/dist/project-video-hover-two-by-two.js +10 -5
- package/dist/project-work-showcase.cjs +17 -13
- package/dist/project-work-showcase.js +16 -12
- package/dist/project-zigzag-layout.cjs +16 -12
- package/dist/project-zigzag-layout.js +16 -12
- package/dist/registry.cjs +1742 -1722
- package/dist/registry.js +512 -492
- package/dist/resource-detail-document-sidebar.cjs +6 -2
- package/dist/resource-detail-document-sidebar.js +6 -2
- package/dist/resource-detail-whitepaper-sidebar.cjs +6 -2
- package/dist/resource-detail-whitepaper-sidebar.js +6 -2
- package/dist/resource-list-course-cards.cjs +6 -2
- package/dist/resource-list-course-cards.js +6 -2
- package/dist/resource-list-featured-articles.cjs +6 -2
- package/dist/resource-list-featured-articles.js +6 -2
- package/dist/resource-list-featured-grid.cjs +6 -2
- package/dist/resource-list-featured-grid.js +6 -2
- package/dist/resource-list-hero-filter.cjs +6 -2
- package/dist/resource-list-hero-filter.js +6 -2
- package/dist/resource-list-news-updates.cjs +6 -2
- package/dist/resource-list-news-updates.js +6 -2
- package/dist/service-detail-centered-expertise.cjs +16 -12
- package/dist/service-detail-centered-expertise.js +16 -12
- package/dist/service-detail-compact-cards.cjs +16 -12
- package/dist/service-detail-compact-cards.js +16 -12
- package/dist/service-detail-sidebar-related.cjs +16 -12
- package/dist/service-detail-sidebar-related.js +16 -12
- package/dist/service-detail-sidebar-stats.cjs +27 -7
- package/dist/service-detail-sidebar-stats.js +10 -5
- package/dist/service-hover-carousel.cjs +38 -34
- package/dist/service-hover-carousel.js +26 -22
- package/dist/services-list-accordion-benefits.cjs +16 -12
- package/dist/services-list-accordion-benefits.js +16 -12
- package/dist/services-list-accordion.cjs +10 -8
- package/dist/services-list-accordion.js +10 -5
- package/dist/services-list-cards-hover.cjs +16 -12
- package/dist/services-list-cards-hover.js +16 -12
- package/dist/services-list-category-accordion.cjs +10 -8
- package/dist/services-list-category-accordion.js +10 -5
- package/dist/services-list-centered-icons.cjs +27 -7
- package/dist/services-list-centered-icons.js +10 -5
- package/dist/services-list-culture-tabs.cjs +16 -12
- package/dist/services-list-culture-tabs.js +16 -12
- package/dist/services-list-feature-spotlight.cjs +27 -7
- package/dist/services-list-feature-spotlight.js +10 -5
- package/dist/services-list-featured-highlight.cjs +16 -12
- package/dist/services-list-featured-highlight.js +16 -12
- package/dist/services-list-hero-cards.cjs +6 -2
- package/dist/services-list-hero-cards.js +6 -2
- package/dist/services-list-icon-grid.cjs +27 -7
- package/dist/services-list-icon-grid.js +10 -5
- package/dist/services-list-image-cards.cjs +6 -2
- package/dist/services-list-image-cards.js +6 -2
- package/dist/services-list-image-overlay-grid.cjs +6 -2
- package/dist/services-list-image-overlay-grid.js +6 -2
- package/dist/services-list-masonry.cjs +16 -12
- package/dist/services-list-masonry.js +16 -12
- package/dist/services-list-methodology-steps.cjs +16 -12
- package/dist/services-list-methodology-steps.js +16 -12
- package/dist/services-list-minimal-grid.cjs +16 -12
- package/dist/services-list-minimal-grid.js +16 -12
- package/dist/services-list-muted-cards.cjs +27 -7
- package/dist/services-list-muted-cards.js +10 -5
- package/dist/services-list-numbered-steps.cjs +16 -12
- package/dist/services-list-numbered-steps.js +16 -12
- package/dist/services-list-pricing-grid.cjs +16 -12
- package/dist/services-list-pricing-grid.js +16 -12
- package/dist/services-list-progress-sidebar.cjs +16 -12
- package/dist/services-list-progress-sidebar.js +16 -12
- package/dist/services-list-split-checklist.cjs +16 -12
- package/dist/services-list-split-checklist.js +16 -12
- package/dist/services-list-sticky-image.cjs +6 -2
- package/dist/services-list-sticky-image.js +6 -2
- package/dist/services-list-table-hover.cjs +6 -2
- package/dist/services-list-table-hover.js +6 -2
- package/dist/services-list-tabs-features.cjs +10 -8
- package/dist/services-list-tabs-features.js +10 -5
- package/dist/services-list-timeline.cjs +16 -12
- package/dist/services-list-timeline.js +16 -12
- package/dist/services-list-two-column-grid.cjs +16 -12
- package/dist/services-list-two-column-grid.js +16 -12
- package/dist/services-list-vertical-tags.cjs +27 -7
- package/dist/services-list-vertical-tags.js +10 -5
- package/dist/services-list-video-showcase.cjs +18 -14
- package/dist/services-list-video-showcase.js +18 -14
- package/dist/social-link-icon.cjs +6 -2
- package/dist/social-link-icon.js +6 -2
- package/dist/stats-animated-counter.cjs +17 -13
- package/dist/stats-animated-counter.js +15 -11
- package/dist/stats-card-group.cjs +26 -6
- package/dist/stats-card-group.js +10 -5
- package/dist/stats-growth-timeline.cjs +22 -18
- package/dist/stats-growth-timeline.js +16 -12
- package/dist/stats-icon-cards.cjs +26 -6
- package/dist/stats-icon-cards.js +10 -5
- package/dist/stats-impact-grid.cjs +23 -19
- package/dist/stats-impact-grid.js +16 -12
- package/dist/stats-primary-secondary.cjs +26 -6
- package/dist/stats-primary-secondary.js +10 -5
- package/dist/stats-timeline-tabs.cjs +9 -7
- package/dist/stats-timeline-tabs.js +10 -5
- package/dist/team-alternating-bios.cjs +17 -13
- package/dist/team-alternating-bios.js +17 -13
- package/dist/team-avatar-social.cjs +17 -13
- package/dist/team-avatar-social.js +17 -13
- package/dist/team-bio-badges.cjs +17 -13
- package/dist/team-bio-badges.js +17 -13
- package/dist/team-carousel-experience.cjs +27 -23
- package/dist/team-carousel-experience.js +27 -23
- package/dist/team-contact-cards.cjs +18 -14
- package/dist/team-contact-cards.js +18 -14
- package/dist/team-filterable-search.cjs +22 -18
- package/dist/team-filterable-search.js +22 -18
- package/dist/team-gradient-cards.cjs +17 -13
- package/dist/team-gradient-cards.js +17 -13
- package/dist/team-grid-animated.cjs +18 -14
- package/dist/team-grid-animated.js +18 -14
- package/dist/team-hover-highlight.cjs +17 -13
- package/dist/team-hover-highlight.js +17 -13
- package/dist/team-hover-overlay.cjs +17 -13
- package/dist/team-hover-overlay.js +17 -13
- package/dist/team-large-images.cjs +17 -13
- package/dist/team-large-images.js +17 -13
- package/dist/team-role-filter.cjs +20 -16
- package/dist/team-role-filter.js +20 -16
- package/dist/team-skill-badges.cjs +17 -13
- package/dist/team-skill-badges.js +17 -13
- package/dist/team-social-cards.cjs +17 -13
- package/dist/team-social-cards.js +17 -13
- package/dist/team-social-grid.cjs +17 -13
- package/dist/team-social-grid.js +17 -13
- package/dist/team-testimonial-stats.cjs +17 -13
- package/dist/team-testimonial-stats.js +17 -13
- package/dist/testimonial-carousel-cards.cjs +33 -29
- package/dist/testimonial-carousel-cards.js +26 -22
- package/dist/testimonials-animated-split.cjs +9 -7
- package/dist/testimonials-animated-split.js +10 -5
- package/dist/testimonials-bento-grid.cjs +9 -7
- package/dist/testimonials-bento-grid.js +10 -5
- package/dist/testimonials-carousel-image.cjs +18 -14
- package/dist/testimonials-carousel-image.js +13 -9
- package/dist/testimonials-company-logo.cjs +26 -6
- package/dist/testimonials-company-logo.js +10 -5
- package/dist/testimonials-grid-add-review.cjs +9 -7
- package/dist/testimonials-grid-add-review.js +10 -5
- package/dist/testimonials-images-helpful.cjs +21 -17
- package/dist/testimonials-images-helpful.js +16 -12
- package/dist/testimonials-large-quote.cjs +9 -7
- package/dist/testimonials-large-quote.js +10 -5
- package/dist/testimonials-list-verified.cjs +9 -7
- package/dist/testimonials-list-verified.js +10 -5
- package/dist/testimonials-mini-dividers.cjs +9 -7
- package/dist/testimonials-mini-dividers.js +10 -5
- package/dist/testimonials-minimal-numbered.cjs +9 -7
- package/dist/testimonials-minimal-numbered.js +10 -5
- package/dist/testimonials-quote-carousel.cjs +31 -27
- package/dist/testimonials-quote-carousel.js +26 -22
- package/dist/testimonials-scrolling-columns.cjs +26 -6
- package/dist/testimonials-scrolling-columns.js +10 -5
- package/dist/testimonials-split-image.cjs +9 -7
- package/dist/testimonials-split-image.js +10 -5
- package/dist/testimonials-stats-header.cjs +9 -7
- package/dist/testimonials-stats-header.js +10 -5
- package/dist/testimonials-twitter-cards.cjs +19 -15
- package/dist/testimonials-twitter-cards.js +16 -12
- package/dist/timeline-ai-workflow-cards.cjs +27 -7
- package/dist/timeline-ai-workflow-cards.js +10 -5
- package/dist/timeline-alternating-diagonal.cjs +12 -8
- package/dist/timeline-alternating-diagonal.js +12 -8
- package/dist/timeline-horizontal-icons.cjs +10 -8
- package/dist/timeline-horizontal-icons.js +10 -5
- package/dist/timeline-productivity-list.cjs +27 -7
- package/dist/timeline-productivity-list.js +10 -5
- package/dist/timeline-stepper-animated.cjs +22 -18
- package/dist/timeline-stepper-animated.js +21 -17
- package/dist/timeline-tabbed-phases.cjs +6 -2
- package/dist/timeline-tabbed-phases.js +6 -2
- package/dist/timeline-vertical-icon-dashed.cjs +6 -2
- package/dist/timeline-vertical-icon-dashed.js +6 -2
- package/package.json +3 -3
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
|
-
var
|
|
4
|
+
var React2 = require('react');
|
|
5
5
|
var clsx = require('clsx');
|
|
6
6
|
var tailwindMerge = require('tailwind-merge');
|
|
7
7
|
var icon = require('@page-speed/icon');
|
|
@@ -27,7 +27,7 @@ function _interopNamespace(e) {
|
|
|
27
27
|
return Object.freeze(n);
|
|
28
28
|
}
|
|
29
29
|
|
|
30
|
-
var
|
|
30
|
+
var React2__namespace = /*#__PURE__*/_interopNamespace(React2);
|
|
31
31
|
var SwitchPrimitive__namespace = /*#__PURE__*/_interopNamespace(SwitchPrimitive);
|
|
32
32
|
|
|
33
33
|
// components/blocks/pricing/pricing-gradient-cards.tsx
|
|
@@ -35,9 +35,13 @@ function cn(...inputs) {
|
|
|
35
35
|
return tailwindMerge.twMerge(clsx.clsx(inputs));
|
|
36
36
|
}
|
|
37
37
|
var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
|
|
38
|
-
|
|
38
|
+
var DynamicIcon = React2__namespace.memo(function DynamicIcon2({
|
|
39
|
+
apiKey,
|
|
40
|
+
...props
|
|
41
|
+
}) {
|
|
39
42
|
return /* @__PURE__ */ jsxRuntime.jsx(icon.Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
|
|
40
|
-
}
|
|
43
|
+
});
|
|
44
|
+
DynamicIcon.displayName = "DynamicIcon";
|
|
41
45
|
function normalizePhoneNumber(input) {
|
|
42
46
|
const trimmed = input.trim();
|
|
43
47
|
if (trimmed.toLowerCase().startsWith("tel:")) {
|
|
@@ -113,7 +117,7 @@ function useNavigation({
|
|
|
113
117
|
href,
|
|
114
118
|
onClick
|
|
115
119
|
} = {}) {
|
|
116
|
-
const linkType =
|
|
120
|
+
const linkType = React2__namespace.useMemo(() => {
|
|
117
121
|
if (!href || href.trim() === "") {
|
|
118
122
|
return onClick ? "none" : "none";
|
|
119
123
|
}
|
|
@@ -134,7 +138,7 @@ function useNavigation({
|
|
|
134
138
|
return "internal";
|
|
135
139
|
}
|
|
136
140
|
}, [href, onClick]);
|
|
137
|
-
const normalizedHref =
|
|
141
|
+
const normalizedHref = React2__namespace.useMemo(() => {
|
|
138
142
|
if (!href || href.trim() === "") {
|
|
139
143
|
return void 0;
|
|
140
144
|
}
|
|
@@ -152,7 +156,7 @@ function useNavigation({
|
|
|
152
156
|
return trimmed;
|
|
153
157
|
}
|
|
154
158
|
}, [href, linkType]);
|
|
155
|
-
const target =
|
|
159
|
+
const target = React2__namespace.useMemo(() => {
|
|
156
160
|
switch (linkType) {
|
|
157
161
|
case "external":
|
|
158
162
|
return "_blank";
|
|
@@ -165,7 +169,7 @@ function useNavigation({
|
|
|
165
169
|
return void 0;
|
|
166
170
|
}
|
|
167
171
|
}, [linkType]);
|
|
168
|
-
const rel =
|
|
172
|
+
const rel = React2__namespace.useMemo(() => {
|
|
169
173
|
if (linkType === "external") {
|
|
170
174
|
return "noopener noreferrer";
|
|
171
175
|
}
|
|
@@ -174,7 +178,7 @@ function useNavigation({
|
|
|
174
178
|
const isExternal = linkType === "external";
|
|
175
179
|
const isInternal = linkType === "internal";
|
|
176
180
|
const shouldUseRouter = isInternal && typeof normalizedHref === "string" && normalizedHref.startsWith("/");
|
|
177
|
-
const handleClick =
|
|
181
|
+
const handleClick = React2__namespace.useCallback(
|
|
178
182
|
(event) => {
|
|
179
183
|
if (onClick) {
|
|
180
184
|
try {
|
|
@@ -358,7 +362,7 @@ var buttonVariants = classVarianceAuthority.cva(baseStyles, {
|
|
|
358
362
|
size: "default"
|
|
359
363
|
}
|
|
360
364
|
});
|
|
361
|
-
var Pressable =
|
|
365
|
+
var Pressable = React2__namespace.forwardRef(
|
|
362
366
|
({
|
|
363
367
|
children,
|
|
364
368
|
className,
|
|
@@ -490,7 +494,7 @@ var maxWidthStyles = {
|
|
|
490
494
|
"4xl": "max-w-[1536px]",
|
|
491
495
|
full: "max-w-full"
|
|
492
496
|
};
|
|
493
|
-
var Container =
|
|
497
|
+
var Container = React2__namespace.default.forwardRef(
|
|
494
498
|
({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
|
|
495
499
|
const Component = as;
|
|
496
500
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -796,7 +800,7 @@ var spacingStyles = {
|
|
|
796
800
|
};
|
|
797
801
|
var predefinedSpacings = ["none", "sm", "md", "lg", "xl", "hero"];
|
|
798
802
|
var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
|
|
799
|
-
var Section =
|
|
803
|
+
var Section = React2__namespace.default.forwardRef(
|
|
800
804
|
({
|
|
801
805
|
id,
|
|
802
806
|
title,
|
|
@@ -897,8 +901,8 @@ function PricingGradientCards({
|
|
|
897
901
|
featureTextClassName,
|
|
898
902
|
actionClassName
|
|
899
903
|
}) {
|
|
900
|
-
const [isYearly, setIsYearly] =
|
|
901
|
-
const renderFeatures =
|
|
904
|
+
const [isYearly, setIsYearly] = React2.useState(false);
|
|
905
|
+
const renderFeatures = React2.useMemo(() => {
|
|
902
906
|
return (plan) => {
|
|
903
907
|
if (plan.featuresSlot) return plan.featuresSlot;
|
|
904
908
|
if (!plan.features || plan.features.length === 0) return null;
|
|
@@ -954,7 +958,7 @@ function PricingGradientCards({
|
|
|
954
958
|
}) });
|
|
955
959
|
};
|
|
956
960
|
}, [featuresClassName, featureIcon, featureIconName, featureIconClassName, featureItemClassName, featureTextClassName]);
|
|
957
|
-
const renderAction =
|
|
961
|
+
const renderAction = React2.useMemo(() => {
|
|
958
962
|
return (plan) => {
|
|
959
963
|
if (plan.actionSlot) return plan.actionSlot;
|
|
960
964
|
if (!plan.action) return null;
|
|
@@ -985,7 +989,7 @@ function PricingGradientCards({
|
|
|
985
989
|
);
|
|
986
990
|
};
|
|
987
991
|
}, [actionClassName]);
|
|
988
|
-
const renderPlans =
|
|
992
|
+
const renderPlans = React2.useMemo(() => {
|
|
989
993
|
if (plansSlot) return plansSlot;
|
|
990
994
|
if (!plans || plans.length === 0) return null;
|
|
991
995
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("grid gap-6 md:grid-cols-3", gridClassName), children: plans.map((plan, index) => {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import * as
|
|
3
|
-
import
|
|
2
|
+
import * as React2 from 'react';
|
|
3
|
+
import React2__default, { useState, useMemo } from 'react';
|
|
4
4
|
import { clsx } from 'clsx';
|
|
5
5
|
import { twMerge } from 'tailwind-merge';
|
|
6
6
|
import { Icon } from '@page-speed/icon';
|
|
@@ -13,9 +13,13 @@ function cn(...inputs) {
|
|
|
13
13
|
return twMerge(clsx(inputs));
|
|
14
14
|
}
|
|
15
15
|
var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
|
|
16
|
-
|
|
16
|
+
var DynamicIcon = React2.memo(function DynamicIcon2({
|
|
17
|
+
apiKey,
|
|
18
|
+
...props
|
|
19
|
+
}) {
|
|
17
20
|
return /* @__PURE__ */ jsx(Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
|
|
18
|
-
}
|
|
21
|
+
});
|
|
22
|
+
DynamicIcon.displayName = "DynamicIcon";
|
|
19
23
|
function normalizePhoneNumber(input) {
|
|
20
24
|
const trimmed = input.trim();
|
|
21
25
|
if (trimmed.toLowerCase().startsWith("tel:")) {
|
|
@@ -91,7 +95,7 @@ function useNavigation({
|
|
|
91
95
|
href,
|
|
92
96
|
onClick
|
|
93
97
|
} = {}) {
|
|
94
|
-
const linkType =
|
|
98
|
+
const linkType = React2.useMemo(() => {
|
|
95
99
|
if (!href || href.trim() === "") {
|
|
96
100
|
return onClick ? "none" : "none";
|
|
97
101
|
}
|
|
@@ -112,7 +116,7 @@ function useNavigation({
|
|
|
112
116
|
return "internal";
|
|
113
117
|
}
|
|
114
118
|
}, [href, onClick]);
|
|
115
|
-
const normalizedHref =
|
|
119
|
+
const normalizedHref = React2.useMemo(() => {
|
|
116
120
|
if (!href || href.trim() === "") {
|
|
117
121
|
return void 0;
|
|
118
122
|
}
|
|
@@ -130,7 +134,7 @@ function useNavigation({
|
|
|
130
134
|
return trimmed;
|
|
131
135
|
}
|
|
132
136
|
}, [href, linkType]);
|
|
133
|
-
const target =
|
|
137
|
+
const target = React2.useMemo(() => {
|
|
134
138
|
switch (linkType) {
|
|
135
139
|
case "external":
|
|
136
140
|
return "_blank";
|
|
@@ -143,7 +147,7 @@ function useNavigation({
|
|
|
143
147
|
return void 0;
|
|
144
148
|
}
|
|
145
149
|
}, [linkType]);
|
|
146
|
-
const rel =
|
|
150
|
+
const rel = React2.useMemo(() => {
|
|
147
151
|
if (linkType === "external") {
|
|
148
152
|
return "noopener noreferrer";
|
|
149
153
|
}
|
|
@@ -152,7 +156,7 @@ function useNavigation({
|
|
|
152
156
|
const isExternal = linkType === "external";
|
|
153
157
|
const isInternal = linkType === "internal";
|
|
154
158
|
const shouldUseRouter = isInternal && typeof normalizedHref === "string" && normalizedHref.startsWith("/");
|
|
155
|
-
const handleClick =
|
|
159
|
+
const handleClick = React2.useCallback(
|
|
156
160
|
(event) => {
|
|
157
161
|
if (onClick) {
|
|
158
162
|
try {
|
|
@@ -336,7 +340,7 @@ var buttonVariants = cva(baseStyles, {
|
|
|
336
340
|
size: "default"
|
|
337
341
|
}
|
|
338
342
|
});
|
|
339
|
-
var Pressable =
|
|
343
|
+
var Pressable = React2.forwardRef(
|
|
340
344
|
({
|
|
341
345
|
children,
|
|
342
346
|
className,
|
|
@@ -468,7 +472,7 @@ var maxWidthStyles = {
|
|
|
468
472
|
"4xl": "max-w-[1536px]",
|
|
469
473
|
full: "max-w-full"
|
|
470
474
|
};
|
|
471
|
-
var Container =
|
|
475
|
+
var Container = React2__default.forwardRef(
|
|
472
476
|
({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
|
|
473
477
|
const Component = as;
|
|
474
478
|
return /* @__PURE__ */ jsx(
|
|
@@ -774,7 +778,7 @@ var spacingStyles = {
|
|
|
774
778
|
};
|
|
775
779
|
var predefinedSpacings = ["none", "sm", "md", "lg", "xl", "hero"];
|
|
776
780
|
var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
|
|
777
|
-
var Section =
|
|
781
|
+
var Section = React2__default.forwardRef(
|
|
778
782
|
({
|
|
779
783
|
id,
|
|
780
784
|
title,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
|
-
var
|
|
4
|
+
var React2 = require('react');
|
|
5
5
|
var clsx = require('clsx');
|
|
6
6
|
var tailwindMerge = require('tailwind-merge');
|
|
7
7
|
var icon = require('@page-speed/icon');
|
|
@@ -26,16 +26,20 @@ function _interopNamespace(e) {
|
|
|
26
26
|
return Object.freeze(n);
|
|
27
27
|
}
|
|
28
28
|
|
|
29
|
-
var
|
|
29
|
+
var React2__namespace = /*#__PURE__*/_interopNamespace(React2);
|
|
30
30
|
|
|
31
31
|
// components/blocks/pricing/pricing-icon-headers.tsx
|
|
32
32
|
function cn(...inputs) {
|
|
33
33
|
return tailwindMerge.twMerge(clsx.clsx(inputs));
|
|
34
34
|
}
|
|
35
35
|
var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
|
|
36
|
-
|
|
36
|
+
var DynamicIcon = React2__namespace.memo(function DynamicIcon2({
|
|
37
|
+
apiKey,
|
|
38
|
+
...props
|
|
39
|
+
}) {
|
|
37
40
|
return /* @__PURE__ */ jsxRuntime.jsx(icon.Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
|
|
38
|
-
}
|
|
41
|
+
});
|
|
42
|
+
DynamicIcon.displayName = "DynamicIcon";
|
|
39
43
|
function normalizePhoneNumber(input) {
|
|
40
44
|
const trimmed = input.trim();
|
|
41
45
|
if (trimmed.toLowerCase().startsWith("tel:")) {
|
|
@@ -111,7 +115,7 @@ function useNavigation({
|
|
|
111
115
|
href,
|
|
112
116
|
onClick
|
|
113
117
|
} = {}) {
|
|
114
|
-
const linkType =
|
|
118
|
+
const linkType = React2__namespace.useMemo(() => {
|
|
115
119
|
if (!href || href.trim() === "") {
|
|
116
120
|
return onClick ? "none" : "none";
|
|
117
121
|
}
|
|
@@ -132,7 +136,7 @@ function useNavigation({
|
|
|
132
136
|
return "internal";
|
|
133
137
|
}
|
|
134
138
|
}, [href, onClick]);
|
|
135
|
-
const normalizedHref =
|
|
139
|
+
const normalizedHref = React2__namespace.useMemo(() => {
|
|
136
140
|
if (!href || href.trim() === "") {
|
|
137
141
|
return void 0;
|
|
138
142
|
}
|
|
@@ -150,7 +154,7 @@ function useNavigation({
|
|
|
150
154
|
return trimmed;
|
|
151
155
|
}
|
|
152
156
|
}, [href, linkType]);
|
|
153
|
-
const target =
|
|
157
|
+
const target = React2__namespace.useMemo(() => {
|
|
154
158
|
switch (linkType) {
|
|
155
159
|
case "external":
|
|
156
160
|
return "_blank";
|
|
@@ -163,7 +167,7 @@ function useNavigation({
|
|
|
163
167
|
return void 0;
|
|
164
168
|
}
|
|
165
169
|
}, [linkType]);
|
|
166
|
-
const rel =
|
|
170
|
+
const rel = React2__namespace.useMemo(() => {
|
|
167
171
|
if (linkType === "external") {
|
|
168
172
|
return "noopener noreferrer";
|
|
169
173
|
}
|
|
@@ -172,7 +176,7 @@ function useNavigation({
|
|
|
172
176
|
const isExternal = linkType === "external";
|
|
173
177
|
const isInternal = linkType === "internal";
|
|
174
178
|
const shouldUseRouter = isInternal && typeof normalizedHref === "string" && normalizedHref.startsWith("/");
|
|
175
|
-
const handleClick =
|
|
179
|
+
const handleClick = React2__namespace.useCallback(
|
|
176
180
|
(event) => {
|
|
177
181
|
if (onClick) {
|
|
178
182
|
try {
|
|
@@ -356,7 +360,7 @@ var buttonVariants = classVarianceAuthority.cva(baseStyles, {
|
|
|
356
360
|
size: "default"
|
|
357
361
|
}
|
|
358
362
|
});
|
|
359
|
-
var Pressable =
|
|
363
|
+
var Pressable = React2__namespace.forwardRef(
|
|
360
364
|
({
|
|
361
365
|
children,
|
|
362
366
|
className,
|
|
@@ -463,7 +467,7 @@ var maxWidthStyles = {
|
|
|
463
467
|
"4xl": "max-w-[1536px]",
|
|
464
468
|
full: "max-w-full"
|
|
465
469
|
};
|
|
466
|
-
var Container =
|
|
470
|
+
var Container = React2__namespace.default.forwardRef(
|
|
467
471
|
({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
|
|
468
472
|
const Component = as;
|
|
469
473
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -769,7 +773,7 @@ var spacingStyles = {
|
|
|
769
773
|
};
|
|
770
774
|
var predefinedSpacings = ["none", "sm", "md", "lg", "xl", "hero"];
|
|
771
775
|
var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
|
|
772
|
-
var Section =
|
|
776
|
+
var Section = React2__namespace.default.forwardRef(
|
|
773
777
|
({
|
|
774
778
|
id,
|
|
775
779
|
title,
|
|
@@ -860,7 +864,7 @@ function PricingIconHeaders({
|
|
|
860
864
|
featureTextClassName,
|
|
861
865
|
actionClassName
|
|
862
866
|
}) {
|
|
863
|
-
const renderFeatures =
|
|
867
|
+
const renderFeatures = React2.useMemo(() => {
|
|
864
868
|
return (plan) => {
|
|
865
869
|
if (plan.featuresSlot) return plan.featuresSlot;
|
|
866
870
|
if (!plan.features || plan.features.length === 0) return null;
|
|
@@ -916,7 +920,7 @@ function PricingIconHeaders({
|
|
|
916
920
|
}) });
|
|
917
921
|
};
|
|
918
922
|
}, [featuresClassName, featureIcon, featureIconName, featureIconClassName, featureItemClassName, featureTextClassName]);
|
|
919
|
-
const renderAction =
|
|
923
|
+
const renderAction = React2.useMemo(() => {
|
|
920
924
|
return (plan) => {
|
|
921
925
|
if (plan.actionSlot) return plan.actionSlot;
|
|
922
926
|
if (!plan.action) return null;
|
|
@@ -947,7 +951,7 @@ function PricingIconHeaders({
|
|
|
947
951
|
);
|
|
948
952
|
};
|
|
949
953
|
}, [actionClassName]);
|
|
950
|
-
const renderPlans =
|
|
954
|
+
const renderPlans = React2.useMemo(() => {
|
|
951
955
|
if (plansSlot) return plansSlot;
|
|
952
956
|
if (!plans || plans.length === 0) return null;
|
|
953
957
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("grid gap-6 md:grid-cols-3", gridClassName), children: plans.map((plan, index) => {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import * as
|
|
3
|
-
import
|
|
2
|
+
import * as React2 from 'react';
|
|
3
|
+
import React2__default, { useMemo } from 'react';
|
|
4
4
|
import { clsx } from 'clsx';
|
|
5
5
|
import { twMerge } from 'tailwind-merge';
|
|
6
6
|
import { Icon } from '@page-speed/icon';
|
|
@@ -12,9 +12,13 @@ function cn(...inputs) {
|
|
|
12
12
|
return twMerge(clsx(inputs));
|
|
13
13
|
}
|
|
14
14
|
var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
|
|
15
|
-
|
|
15
|
+
var DynamicIcon = React2.memo(function DynamicIcon2({
|
|
16
|
+
apiKey,
|
|
17
|
+
...props
|
|
18
|
+
}) {
|
|
16
19
|
return /* @__PURE__ */ jsx(Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
|
|
17
|
-
}
|
|
20
|
+
});
|
|
21
|
+
DynamicIcon.displayName = "DynamicIcon";
|
|
18
22
|
function normalizePhoneNumber(input) {
|
|
19
23
|
const trimmed = input.trim();
|
|
20
24
|
if (trimmed.toLowerCase().startsWith("tel:")) {
|
|
@@ -90,7 +94,7 @@ function useNavigation({
|
|
|
90
94
|
href,
|
|
91
95
|
onClick
|
|
92
96
|
} = {}) {
|
|
93
|
-
const linkType =
|
|
97
|
+
const linkType = React2.useMemo(() => {
|
|
94
98
|
if (!href || href.trim() === "") {
|
|
95
99
|
return onClick ? "none" : "none";
|
|
96
100
|
}
|
|
@@ -111,7 +115,7 @@ function useNavigation({
|
|
|
111
115
|
return "internal";
|
|
112
116
|
}
|
|
113
117
|
}, [href, onClick]);
|
|
114
|
-
const normalizedHref =
|
|
118
|
+
const normalizedHref = React2.useMemo(() => {
|
|
115
119
|
if (!href || href.trim() === "") {
|
|
116
120
|
return void 0;
|
|
117
121
|
}
|
|
@@ -129,7 +133,7 @@ function useNavigation({
|
|
|
129
133
|
return trimmed;
|
|
130
134
|
}
|
|
131
135
|
}, [href, linkType]);
|
|
132
|
-
const target =
|
|
136
|
+
const target = React2.useMemo(() => {
|
|
133
137
|
switch (linkType) {
|
|
134
138
|
case "external":
|
|
135
139
|
return "_blank";
|
|
@@ -142,7 +146,7 @@ function useNavigation({
|
|
|
142
146
|
return void 0;
|
|
143
147
|
}
|
|
144
148
|
}, [linkType]);
|
|
145
|
-
const rel =
|
|
149
|
+
const rel = React2.useMemo(() => {
|
|
146
150
|
if (linkType === "external") {
|
|
147
151
|
return "noopener noreferrer";
|
|
148
152
|
}
|
|
@@ -151,7 +155,7 @@ function useNavigation({
|
|
|
151
155
|
const isExternal = linkType === "external";
|
|
152
156
|
const isInternal = linkType === "internal";
|
|
153
157
|
const shouldUseRouter = isInternal && typeof normalizedHref === "string" && normalizedHref.startsWith("/");
|
|
154
|
-
const handleClick =
|
|
158
|
+
const handleClick = React2.useCallback(
|
|
155
159
|
(event) => {
|
|
156
160
|
if (onClick) {
|
|
157
161
|
try {
|
|
@@ -335,7 +339,7 @@ var buttonVariants = cva(baseStyles, {
|
|
|
335
339
|
size: "default"
|
|
336
340
|
}
|
|
337
341
|
});
|
|
338
|
-
var Pressable =
|
|
342
|
+
var Pressable = React2.forwardRef(
|
|
339
343
|
({
|
|
340
344
|
children,
|
|
341
345
|
className,
|
|
@@ -442,7 +446,7 @@ var maxWidthStyles = {
|
|
|
442
446
|
"4xl": "max-w-[1536px]",
|
|
443
447
|
full: "max-w-full"
|
|
444
448
|
};
|
|
445
|
-
var Container =
|
|
449
|
+
var Container = React2__default.forwardRef(
|
|
446
450
|
({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
|
|
447
451
|
const Component = as;
|
|
448
452
|
return /* @__PURE__ */ jsx(
|
|
@@ -748,7 +752,7 @@ var spacingStyles = {
|
|
|
748
752
|
};
|
|
749
753
|
var predefinedSpacings = ["none", "sm", "md", "lg", "xl", "hero"];
|
|
750
754
|
var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
|
|
751
|
-
var Section =
|
|
755
|
+
var Section = React2__default.forwardRef(
|
|
752
756
|
({
|
|
753
757
|
id,
|
|
754
758
|
title,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
|
-
var
|
|
4
|
+
var React2 = require('react');
|
|
5
5
|
var clsx = require('clsx');
|
|
6
6
|
var tailwindMerge = require('tailwind-merge');
|
|
7
7
|
var icon = require('@page-speed/icon');
|
|
@@ -26,16 +26,20 @@ function _interopNamespace(e) {
|
|
|
26
26
|
return Object.freeze(n);
|
|
27
27
|
}
|
|
28
28
|
|
|
29
|
-
var
|
|
29
|
+
var React2__namespace = /*#__PURE__*/_interopNamespace(React2);
|
|
30
30
|
|
|
31
31
|
// components/blocks/pricing/pricing-minimal-cards.tsx
|
|
32
32
|
function cn(...inputs) {
|
|
33
33
|
return tailwindMerge.twMerge(clsx.clsx(inputs));
|
|
34
34
|
}
|
|
35
35
|
var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
|
|
36
|
-
|
|
36
|
+
var DynamicIcon = React2__namespace.memo(function DynamicIcon2({
|
|
37
|
+
apiKey,
|
|
38
|
+
...props
|
|
39
|
+
}) {
|
|
37
40
|
return /* @__PURE__ */ jsxRuntime.jsx(icon.Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
|
|
38
|
-
}
|
|
41
|
+
});
|
|
42
|
+
DynamicIcon.displayName = "DynamicIcon";
|
|
39
43
|
function normalizePhoneNumber(input) {
|
|
40
44
|
const trimmed = input.trim();
|
|
41
45
|
if (trimmed.toLowerCase().startsWith("tel:")) {
|
|
@@ -111,7 +115,7 @@ function useNavigation({
|
|
|
111
115
|
href,
|
|
112
116
|
onClick
|
|
113
117
|
} = {}) {
|
|
114
|
-
const linkType =
|
|
118
|
+
const linkType = React2__namespace.useMemo(() => {
|
|
115
119
|
if (!href || href.trim() === "") {
|
|
116
120
|
return onClick ? "none" : "none";
|
|
117
121
|
}
|
|
@@ -132,7 +136,7 @@ function useNavigation({
|
|
|
132
136
|
return "internal";
|
|
133
137
|
}
|
|
134
138
|
}, [href, onClick]);
|
|
135
|
-
const normalizedHref =
|
|
139
|
+
const normalizedHref = React2__namespace.useMemo(() => {
|
|
136
140
|
if (!href || href.trim() === "") {
|
|
137
141
|
return void 0;
|
|
138
142
|
}
|
|
@@ -150,7 +154,7 @@ function useNavigation({
|
|
|
150
154
|
return trimmed;
|
|
151
155
|
}
|
|
152
156
|
}, [href, linkType]);
|
|
153
|
-
const target =
|
|
157
|
+
const target = React2__namespace.useMemo(() => {
|
|
154
158
|
switch (linkType) {
|
|
155
159
|
case "external":
|
|
156
160
|
return "_blank";
|
|
@@ -163,7 +167,7 @@ function useNavigation({
|
|
|
163
167
|
return void 0;
|
|
164
168
|
}
|
|
165
169
|
}, [linkType]);
|
|
166
|
-
const rel =
|
|
170
|
+
const rel = React2__namespace.useMemo(() => {
|
|
167
171
|
if (linkType === "external") {
|
|
168
172
|
return "noopener noreferrer";
|
|
169
173
|
}
|
|
@@ -172,7 +176,7 @@ function useNavigation({
|
|
|
172
176
|
const isExternal = linkType === "external";
|
|
173
177
|
const isInternal = linkType === "internal";
|
|
174
178
|
const shouldUseRouter = isInternal && typeof normalizedHref === "string" && normalizedHref.startsWith("/");
|
|
175
|
-
const handleClick =
|
|
179
|
+
const handleClick = React2__namespace.useCallback(
|
|
176
180
|
(event) => {
|
|
177
181
|
if (onClick) {
|
|
178
182
|
try {
|
|
@@ -356,7 +360,7 @@ var buttonVariants = classVarianceAuthority.cva(baseStyles, {
|
|
|
356
360
|
size: "default"
|
|
357
361
|
}
|
|
358
362
|
});
|
|
359
|
-
var Pressable =
|
|
363
|
+
var Pressable = React2__namespace.forwardRef(
|
|
360
364
|
({
|
|
361
365
|
children,
|
|
362
366
|
className,
|
|
@@ -463,7 +467,7 @@ var maxWidthStyles = {
|
|
|
463
467
|
"4xl": "max-w-[1536px]",
|
|
464
468
|
full: "max-w-full"
|
|
465
469
|
};
|
|
466
|
-
var Container =
|
|
470
|
+
var Container = React2__namespace.default.forwardRef(
|
|
467
471
|
({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
|
|
468
472
|
const Component = as;
|
|
469
473
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -769,7 +773,7 @@ var spacingStyles = {
|
|
|
769
773
|
};
|
|
770
774
|
var predefinedSpacings = ["none", "sm", "md", "lg", "xl", "hero"];
|
|
771
775
|
var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
|
|
772
|
-
var Section =
|
|
776
|
+
var Section = React2__namespace.default.forwardRef(
|
|
773
777
|
({
|
|
774
778
|
id,
|
|
775
779
|
title,
|
|
@@ -860,7 +864,7 @@ function PricingMinimalCards({
|
|
|
860
864
|
featureTextClassName,
|
|
861
865
|
actionClassName
|
|
862
866
|
}) {
|
|
863
|
-
const renderFeatures =
|
|
867
|
+
const renderFeatures = React2.useMemo(() => {
|
|
864
868
|
return (plan) => {
|
|
865
869
|
if (plan.featuresSlot) return plan.featuresSlot;
|
|
866
870
|
if (!plan.features || plan.features.length === 0) return null;
|
|
@@ -916,7 +920,7 @@ function PricingMinimalCards({
|
|
|
916
920
|
}) });
|
|
917
921
|
};
|
|
918
922
|
}, [featuresClassName, featureIcon, featureIconName, featureIconClassName, featureItemClassName, featureTextClassName]);
|
|
919
|
-
const renderAction =
|
|
923
|
+
const renderAction = React2.useMemo(() => {
|
|
920
924
|
return (plan) => {
|
|
921
925
|
if (plan.actionSlot) return plan.actionSlot;
|
|
922
926
|
if (!plan.action) return null;
|
|
@@ -947,7 +951,7 @@ function PricingMinimalCards({
|
|
|
947
951
|
);
|
|
948
952
|
};
|
|
949
953
|
}, [actionClassName]);
|
|
950
|
-
const renderPlans =
|
|
954
|
+
const renderPlans = React2.useMemo(() => {
|
|
951
955
|
if (plansSlot) return plansSlot;
|
|
952
956
|
if (!plans || plans.length === 0) return null;
|
|
953
957
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("grid gap-6 md:grid-cols-3", gridClassName), children: plans.map((plan, index) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import * as
|
|
3
|
-
import
|
|
2
|
+
import * as React2 from 'react';
|
|
3
|
+
import React2__default, { useMemo } from 'react';
|
|
4
4
|
import { clsx } from 'clsx';
|
|
5
5
|
import { twMerge } from 'tailwind-merge';
|
|
6
6
|
import { Icon } from '@page-speed/icon';
|
|
@@ -12,9 +12,13 @@ function cn(...inputs) {
|
|
|
12
12
|
return twMerge(clsx(inputs));
|
|
13
13
|
}
|
|
14
14
|
var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
|
|
15
|
-
|
|
15
|
+
var DynamicIcon = React2.memo(function DynamicIcon2({
|
|
16
|
+
apiKey,
|
|
17
|
+
...props
|
|
18
|
+
}) {
|
|
16
19
|
return /* @__PURE__ */ jsx(Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
|
|
17
|
-
}
|
|
20
|
+
});
|
|
21
|
+
DynamicIcon.displayName = "DynamicIcon";
|
|
18
22
|
function normalizePhoneNumber(input) {
|
|
19
23
|
const trimmed = input.trim();
|
|
20
24
|
if (trimmed.toLowerCase().startsWith("tel:")) {
|
|
@@ -90,7 +94,7 @@ function useNavigation({
|
|
|
90
94
|
href,
|
|
91
95
|
onClick
|
|
92
96
|
} = {}) {
|
|
93
|
-
const linkType =
|
|
97
|
+
const linkType = React2.useMemo(() => {
|
|
94
98
|
if (!href || href.trim() === "") {
|
|
95
99
|
return onClick ? "none" : "none";
|
|
96
100
|
}
|
|
@@ -111,7 +115,7 @@ function useNavigation({
|
|
|
111
115
|
return "internal";
|
|
112
116
|
}
|
|
113
117
|
}, [href, onClick]);
|
|
114
|
-
const normalizedHref =
|
|
118
|
+
const normalizedHref = React2.useMemo(() => {
|
|
115
119
|
if (!href || href.trim() === "") {
|
|
116
120
|
return void 0;
|
|
117
121
|
}
|
|
@@ -129,7 +133,7 @@ function useNavigation({
|
|
|
129
133
|
return trimmed;
|
|
130
134
|
}
|
|
131
135
|
}, [href, linkType]);
|
|
132
|
-
const target =
|
|
136
|
+
const target = React2.useMemo(() => {
|
|
133
137
|
switch (linkType) {
|
|
134
138
|
case "external":
|
|
135
139
|
return "_blank";
|
|
@@ -142,7 +146,7 @@ function useNavigation({
|
|
|
142
146
|
return void 0;
|
|
143
147
|
}
|
|
144
148
|
}, [linkType]);
|
|
145
|
-
const rel =
|
|
149
|
+
const rel = React2.useMemo(() => {
|
|
146
150
|
if (linkType === "external") {
|
|
147
151
|
return "noopener noreferrer";
|
|
148
152
|
}
|
|
@@ -151,7 +155,7 @@ function useNavigation({
|
|
|
151
155
|
const isExternal = linkType === "external";
|
|
152
156
|
const isInternal = linkType === "internal";
|
|
153
157
|
const shouldUseRouter = isInternal && typeof normalizedHref === "string" && normalizedHref.startsWith("/");
|
|
154
|
-
const handleClick =
|
|
158
|
+
const handleClick = React2.useCallback(
|
|
155
159
|
(event) => {
|
|
156
160
|
if (onClick) {
|
|
157
161
|
try {
|
|
@@ -335,7 +339,7 @@ var buttonVariants = cva(baseStyles, {
|
|
|
335
339
|
size: "default"
|
|
336
340
|
}
|
|
337
341
|
});
|
|
338
|
-
var Pressable =
|
|
342
|
+
var Pressable = React2.forwardRef(
|
|
339
343
|
({
|
|
340
344
|
children,
|
|
341
345
|
className,
|
|
@@ -442,7 +446,7 @@ var maxWidthStyles = {
|
|
|
442
446
|
"4xl": "max-w-[1536px]",
|
|
443
447
|
full: "max-w-full"
|
|
444
448
|
};
|
|
445
|
-
var Container =
|
|
449
|
+
var Container = React2__default.forwardRef(
|
|
446
450
|
({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
|
|
447
451
|
const Component = as;
|
|
448
452
|
return /* @__PURE__ */ jsx(
|
|
@@ -748,7 +752,7 @@ var spacingStyles = {
|
|
|
748
752
|
};
|
|
749
753
|
var predefinedSpacings = ["none", "sm", "md", "lg", "xl", "hero"];
|
|
750
754
|
var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
|
|
751
|
-
var Section =
|
|
755
|
+
var Section = React2__default.forwardRef(
|
|
752
756
|
({
|
|
753
757
|
id,
|
|
754
758
|
title,
|