@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-switch-cards.tsx
|
|
@@ -61,9 +61,13 @@ function getNestedCardBg(parentBg, variant = "muted", options) {
|
|
|
61
61
|
}
|
|
62
62
|
}
|
|
63
63
|
var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
|
|
64
|
-
|
|
64
|
+
var DynamicIcon = React2__namespace.memo(function DynamicIcon2({
|
|
65
|
+
apiKey,
|
|
66
|
+
...props
|
|
67
|
+
}) {
|
|
65
68
|
return /* @__PURE__ */ jsxRuntime.jsx(icon.Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
|
|
66
|
-
}
|
|
69
|
+
});
|
|
70
|
+
DynamicIcon.displayName = "DynamicIcon";
|
|
67
71
|
function normalizePhoneNumber(input) {
|
|
68
72
|
const trimmed = input.trim();
|
|
69
73
|
if (trimmed.toLowerCase().startsWith("tel:")) {
|
|
@@ -139,7 +143,7 @@ function useNavigation({
|
|
|
139
143
|
href,
|
|
140
144
|
onClick
|
|
141
145
|
} = {}) {
|
|
142
|
-
const linkType =
|
|
146
|
+
const linkType = React2__namespace.useMemo(() => {
|
|
143
147
|
if (!href || href.trim() === "") {
|
|
144
148
|
return onClick ? "none" : "none";
|
|
145
149
|
}
|
|
@@ -160,7 +164,7 @@ function useNavigation({
|
|
|
160
164
|
return "internal";
|
|
161
165
|
}
|
|
162
166
|
}, [href, onClick]);
|
|
163
|
-
const normalizedHref =
|
|
167
|
+
const normalizedHref = React2__namespace.useMemo(() => {
|
|
164
168
|
if (!href || href.trim() === "") {
|
|
165
169
|
return void 0;
|
|
166
170
|
}
|
|
@@ -178,7 +182,7 @@ function useNavigation({
|
|
|
178
182
|
return trimmed;
|
|
179
183
|
}
|
|
180
184
|
}, [href, linkType]);
|
|
181
|
-
const target =
|
|
185
|
+
const target = React2__namespace.useMemo(() => {
|
|
182
186
|
switch (linkType) {
|
|
183
187
|
case "external":
|
|
184
188
|
return "_blank";
|
|
@@ -191,7 +195,7 @@ function useNavigation({
|
|
|
191
195
|
return void 0;
|
|
192
196
|
}
|
|
193
197
|
}, [linkType]);
|
|
194
|
-
const rel =
|
|
198
|
+
const rel = React2__namespace.useMemo(() => {
|
|
195
199
|
if (linkType === "external") {
|
|
196
200
|
return "noopener noreferrer";
|
|
197
201
|
}
|
|
@@ -200,7 +204,7 @@ function useNavigation({
|
|
|
200
204
|
const isExternal = linkType === "external";
|
|
201
205
|
const isInternal = linkType === "internal";
|
|
202
206
|
const shouldUseRouter = isInternal && typeof normalizedHref === "string" && normalizedHref.startsWith("/");
|
|
203
|
-
const handleClick =
|
|
207
|
+
const handleClick = React2__namespace.useCallback(
|
|
204
208
|
(event) => {
|
|
205
209
|
if (onClick) {
|
|
206
210
|
try {
|
|
@@ -384,7 +388,7 @@ var buttonVariants = classVarianceAuthority.cva(baseStyles, {
|
|
|
384
388
|
size: "default"
|
|
385
389
|
}
|
|
386
390
|
});
|
|
387
|
-
var Pressable =
|
|
391
|
+
var Pressable = React2__namespace.forwardRef(
|
|
388
392
|
({
|
|
389
393
|
children,
|
|
390
394
|
className,
|
|
@@ -516,7 +520,7 @@ var maxWidthStyles = {
|
|
|
516
520
|
"4xl": "max-w-[1536px]",
|
|
517
521
|
full: "max-w-full"
|
|
518
522
|
};
|
|
519
|
-
var Container =
|
|
523
|
+
var Container = React2__namespace.default.forwardRef(
|
|
520
524
|
({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
|
|
521
525
|
const Component = as;
|
|
522
526
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -822,7 +826,7 @@ var spacingStyles = {
|
|
|
822
826
|
};
|
|
823
827
|
var predefinedSpacings = ["none", "sm", "md", "lg", "xl", "hero"];
|
|
824
828
|
var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
|
|
825
|
-
var Section =
|
|
829
|
+
var Section = React2__namespace.default.forwardRef(
|
|
826
830
|
({
|
|
827
831
|
id,
|
|
828
832
|
title,
|
|
@@ -923,8 +927,8 @@ function PricingSwitchCards({
|
|
|
923
927
|
featureTextClassName,
|
|
924
928
|
actionClassName
|
|
925
929
|
}) {
|
|
926
|
-
const [isYearly, setIsYearly] =
|
|
927
|
-
const renderFeatures =
|
|
930
|
+
const [isYearly, setIsYearly] = React2.useState(false);
|
|
931
|
+
const renderFeatures = React2.useMemo(() => {
|
|
928
932
|
return (plan) => {
|
|
929
933
|
if (plan.featuresSlot) return plan.featuresSlot;
|
|
930
934
|
if (!plan.features || plan.features.length === 0) return null;
|
|
@@ -980,7 +984,7 @@ function PricingSwitchCards({
|
|
|
980
984
|
}) });
|
|
981
985
|
};
|
|
982
986
|
}, [featuresClassName, featureIcon, featureIconName, featureIconClassName, featureItemClassName, featureTextClassName]);
|
|
983
|
-
const renderAction =
|
|
987
|
+
const renderAction = React2.useMemo(() => {
|
|
984
988
|
return (plan) => {
|
|
985
989
|
if (plan.actionSlot) return plan.actionSlot;
|
|
986
990
|
if (!plan.action) return null;
|
|
@@ -1011,7 +1015,7 @@ function PricingSwitchCards({
|
|
|
1011
1015
|
);
|
|
1012
1016
|
};
|
|
1013
1017
|
}, [actionClassName]);
|
|
1014
|
-
const renderPlans =
|
|
1018
|
+
const renderPlans = React2.useMemo(() => {
|
|
1015
1019
|
if (plansSlot) return plansSlot;
|
|
1016
1020
|
if (!plans || plans.length === 0) return null;
|
|
1017
1021
|
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';
|
|
@@ -39,9 +39,13 @@ function getNestedCardBg(parentBg, variant = "muted", options) {
|
|
|
39
39
|
}
|
|
40
40
|
}
|
|
41
41
|
var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
|
|
42
|
-
|
|
42
|
+
var DynamicIcon = React2.memo(function DynamicIcon2({
|
|
43
|
+
apiKey,
|
|
44
|
+
...props
|
|
45
|
+
}) {
|
|
43
46
|
return /* @__PURE__ */ jsx(Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
|
|
44
|
-
}
|
|
47
|
+
});
|
|
48
|
+
DynamicIcon.displayName = "DynamicIcon";
|
|
45
49
|
function normalizePhoneNumber(input) {
|
|
46
50
|
const trimmed = input.trim();
|
|
47
51
|
if (trimmed.toLowerCase().startsWith("tel:")) {
|
|
@@ -117,7 +121,7 @@ function useNavigation({
|
|
|
117
121
|
href,
|
|
118
122
|
onClick
|
|
119
123
|
} = {}) {
|
|
120
|
-
const linkType =
|
|
124
|
+
const linkType = React2.useMemo(() => {
|
|
121
125
|
if (!href || href.trim() === "") {
|
|
122
126
|
return onClick ? "none" : "none";
|
|
123
127
|
}
|
|
@@ -138,7 +142,7 @@ function useNavigation({
|
|
|
138
142
|
return "internal";
|
|
139
143
|
}
|
|
140
144
|
}, [href, onClick]);
|
|
141
|
-
const normalizedHref =
|
|
145
|
+
const normalizedHref = React2.useMemo(() => {
|
|
142
146
|
if (!href || href.trim() === "") {
|
|
143
147
|
return void 0;
|
|
144
148
|
}
|
|
@@ -156,7 +160,7 @@ function useNavigation({
|
|
|
156
160
|
return trimmed;
|
|
157
161
|
}
|
|
158
162
|
}, [href, linkType]);
|
|
159
|
-
const target =
|
|
163
|
+
const target = React2.useMemo(() => {
|
|
160
164
|
switch (linkType) {
|
|
161
165
|
case "external":
|
|
162
166
|
return "_blank";
|
|
@@ -169,7 +173,7 @@ function useNavigation({
|
|
|
169
173
|
return void 0;
|
|
170
174
|
}
|
|
171
175
|
}, [linkType]);
|
|
172
|
-
const rel =
|
|
176
|
+
const rel = React2.useMemo(() => {
|
|
173
177
|
if (linkType === "external") {
|
|
174
178
|
return "noopener noreferrer";
|
|
175
179
|
}
|
|
@@ -178,7 +182,7 @@ function useNavigation({
|
|
|
178
182
|
const isExternal = linkType === "external";
|
|
179
183
|
const isInternal = linkType === "internal";
|
|
180
184
|
const shouldUseRouter = isInternal && typeof normalizedHref === "string" && normalizedHref.startsWith("/");
|
|
181
|
-
const handleClick =
|
|
185
|
+
const handleClick = React2.useCallback(
|
|
182
186
|
(event) => {
|
|
183
187
|
if (onClick) {
|
|
184
188
|
try {
|
|
@@ -362,7 +366,7 @@ var buttonVariants = cva(baseStyles, {
|
|
|
362
366
|
size: "default"
|
|
363
367
|
}
|
|
364
368
|
});
|
|
365
|
-
var Pressable =
|
|
369
|
+
var Pressable = React2.forwardRef(
|
|
366
370
|
({
|
|
367
371
|
children,
|
|
368
372
|
className,
|
|
@@ -494,7 +498,7 @@ var maxWidthStyles = {
|
|
|
494
498
|
"4xl": "max-w-[1536px]",
|
|
495
499
|
full: "max-w-full"
|
|
496
500
|
};
|
|
497
|
-
var Container =
|
|
501
|
+
var Container = React2__default.forwardRef(
|
|
498
502
|
({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
|
|
499
503
|
const Component = as;
|
|
500
504
|
return /* @__PURE__ */ jsx(
|
|
@@ -800,7 +804,7 @@ var spacingStyles = {
|
|
|
800
804
|
};
|
|
801
805
|
var predefinedSpacings = ["none", "sm", "md", "lg", "xl", "hero"];
|
|
802
806
|
var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
|
|
803
|
-
var Section =
|
|
807
|
+
var Section = React2__default.forwardRef(
|
|
804
808
|
({
|
|
805
809
|
id,
|
|
806
810
|
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');
|
|
@@ -29,7 +29,7 @@ function _interopNamespace(e) {
|
|
|
29
29
|
return Object.freeze(n);
|
|
30
30
|
}
|
|
31
31
|
|
|
32
|
-
var
|
|
32
|
+
var React2__namespace = /*#__PURE__*/_interopNamespace(React2);
|
|
33
33
|
var SeparatorPrimitive__namespace = /*#__PURE__*/_interopNamespace(SeparatorPrimitive);
|
|
34
34
|
var TabsPrimitive__namespace = /*#__PURE__*/_interopNamespace(TabsPrimitive);
|
|
35
35
|
|
|
@@ -38,9 +38,13 @@ function cn(...inputs) {
|
|
|
38
38
|
return tailwindMerge.twMerge(clsx.clsx(inputs));
|
|
39
39
|
}
|
|
40
40
|
var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
|
|
41
|
-
|
|
41
|
+
var DynamicIcon = React2__namespace.memo(function DynamicIcon2({
|
|
42
|
+
apiKey,
|
|
43
|
+
...props
|
|
44
|
+
}) {
|
|
42
45
|
return /* @__PURE__ */ jsxRuntime.jsx(icon.Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
|
|
43
|
-
}
|
|
46
|
+
});
|
|
47
|
+
DynamicIcon.displayName = "DynamicIcon";
|
|
44
48
|
function normalizePhoneNumber(input) {
|
|
45
49
|
const trimmed = input.trim();
|
|
46
50
|
if (trimmed.toLowerCase().startsWith("tel:")) {
|
|
@@ -116,7 +120,7 @@ function useNavigation({
|
|
|
116
120
|
href,
|
|
117
121
|
onClick
|
|
118
122
|
} = {}) {
|
|
119
|
-
const linkType =
|
|
123
|
+
const linkType = React2__namespace.useMemo(() => {
|
|
120
124
|
if (!href || href.trim() === "") {
|
|
121
125
|
return onClick ? "none" : "none";
|
|
122
126
|
}
|
|
@@ -137,7 +141,7 @@ function useNavigation({
|
|
|
137
141
|
return "internal";
|
|
138
142
|
}
|
|
139
143
|
}, [href, onClick]);
|
|
140
|
-
const normalizedHref =
|
|
144
|
+
const normalizedHref = React2__namespace.useMemo(() => {
|
|
141
145
|
if (!href || href.trim() === "") {
|
|
142
146
|
return void 0;
|
|
143
147
|
}
|
|
@@ -155,7 +159,7 @@ function useNavigation({
|
|
|
155
159
|
return trimmed;
|
|
156
160
|
}
|
|
157
161
|
}, [href, linkType]);
|
|
158
|
-
const target =
|
|
162
|
+
const target = React2__namespace.useMemo(() => {
|
|
159
163
|
switch (linkType) {
|
|
160
164
|
case "external":
|
|
161
165
|
return "_blank";
|
|
@@ -168,7 +172,7 @@ function useNavigation({
|
|
|
168
172
|
return void 0;
|
|
169
173
|
}
|
|
170
174
|
}, [linkType]);
|
|
171
|
-
const rel =
|
|
175
|
+
const rel = React2__namespace.useMemo(() => {
|
|
172
176
|
if (linkType === "external") {
|
|
173
177
|
return "noopener noreferrer";
|
|
174
178
|
}
|
|
@@ -177,7 +181,7 @@ function useNavigation({
|
|
|
177
181
|
const isExternal = linkType === "external";
|
|
178
182
|
const isInternal = linkType === "internal";
|
|
179
183
|
const shouldUseRouter = isInternal && typeof normalizedHref === "string" && normalizedHref.startsWith("/");
|
|
180
|
-
const handleClick =
|
|
184
|
+
const handleClick = React2__namespace.useCallback(
|
|
181
185
|
(event) => {
|
|
182
186
|
if (onClick) {
|
|
183
187
|
try {
|
|
@@ -361,7 +365,7 @@ var buttonVariants = classVarianceAuthority.cva(baseStyles, {
|
|
|
361
365
|
size: "default"
|
|
362
366
|
}
|
|
363
367
|
});
|
|
364
|
-
var Pressable =
|
|
368
|
+
var Pressable = React2__namespace.forwardRef(
|
|
365
369
|
({
|
|
366
370
|
children,
|
|
367
371
|
className,
|
|
@@ -565,7 +569,7 @@ var maxWidthStyles = {
|
|
|
565
569
|
"4xl": "max-w-[1536px]",
|
|
566
570
|
full: "max-w-full"
|
|
567
571
|
};
|
|
568
|
-
var Container =
|
|
572
|
+
var Container = React2__namespace.default.forwardRef(
|
|
569
573
|
({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
|
|
570
574
|
const Component = as;
|
|
571
575
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -871,7 +875,7 @@ var spacingStyles = {
|
|
|
871
875
|
};
|
|
872
876
|
var predefinedSpacings = ["none", "sm", "md", "lg", "xl", "hero"];
|
|
873
877
|
var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
|
|
874
|
-
var Section =
|
|
878
|
+
var Section = React2__namespace.default.forwardRef(
|
|
875
879
|
({
|
|
876
880
|
id,
|
|
877
881
|
title,
|
|
@@ -975,10 +979,10 @@ function PricingTabsToggle({
|
|
|
975
979
|
featureTextClassName,
|
|
976
980
|
actionClassName
|
|
977
981
|
}) {
|
|
978
|
-
const [billingPeriod, setBillingPeriod] =
|
|
982
|
+
const [billingPeriod, setBillingPeriod] = React2.useState(
|
|
979
983
|
"monthly"
|
|
980
984
|
);
|
|
981
|
-
const renderFeatures =
|
|
985
|
+
const renderFeatures = React2.useMemo(() => {
|
|
982
986
|
return (plan) => {
|
|
983
987
|
if (plan.featuresSlot) return plan.featuresSlot;
|
|
984
988
|
if (!plan.features || plan.features.length === 0) return null;
|
|
@@ -1034,7 +1038,7 @@ function PricingTabsToggle({
|
|
|
1034
1038
|
}) });
|
|
1035
1039
|
};
|
|
1036
1040
|
}, [featuresClassName, featureIcon, featureIconName, featureIconClassName, featureItemClassName, featureTextClassName]);
|
|
1037
|
-
const renderAction =
|
|
1041
|
+
const renderAction = React2.useMemo(() => {
|
|
1038
1042
|
return (plan) => {
|
|
1039
1043
|
if (plan.actionSlot) return plan.actionSlot;
|
|
1040
1044
|
if (!plan.action) return null;
|
|
@@ -1065,7 +1069,7 @@ function PricingTabsToggle({
|
|
|
1065
1069
|
);
|
|
1066
1070
|
};
|
|
1067
1071
|
}, [actionClassName]);
|
|
1068
|
-
const renderPlans =
|
|
1072
|
+
const renderPlans = React2.useMemo(() => {
|
|
1069
1073
|
if (plansSlot) return plansSlot;
|
|
1070
1074
|
if (!plans || plans.length === 0) return null;
|
|
1071
1075
|
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';
|
|
@@ -15,9 +15,13 @@ function cn(...inputs) {
|
|
|
15
15
|
return twMerge(clsx(inputs));
|
|
16
16
|
}
|
|
17
17
|
var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
|
|
18
|
-
|
|
18
|
+
var DynamicIcon = React2.memo(function DynamicIcon2({
|
|
19
|
+
apiKey,
|
|
20
|
+
...props
|
|
21
|
+
}) {
|
|
19
22
|
return /* @__PURE__ */ jsx(Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
|
|
20
|
-
}
|
|
23
|
+
});
|
|
24
|
+
DynamicIcon.displayName = "DynamicIcon";
|
|
21
25
|
function normalizePhoneNumber(input) {
|
|
22
26
|
const trimmed = input.trim();
|
|
23
27
|
if (trimmed.toLowerCase().startsWith("tel:")) {
|
|
@@ -93,7 +97,7 @@ function useNavigation({
|
|
|
93
97
|
href,
|
|
94
98
|
onClick
|
|
95
99
|
} = {}) {
|
|
96
|
-
const linkType =
|
|
100
|
+
const linkType = React2.useMemo(() => {
|
|
97
101
|
if (!href || href.trim() === "") {
|
|
98
102
|
return onClick ? "none" : "none";
|
|
99
103
|
}
|
|
@@ -114,7 +118,7 @@ function useNavigation({
|
|
|
114
118
|
return "internal";
|
|
115
119
|
}
|
|
116
120
|
}, [href, onClick]);
|
|
117
|
-
const normalizedHref =
|
|
121
|
+
const normalizedHref = React2.useMemo(() => {
|
|
118
122
|
if (!href || href.trim() === "") {
|
|
119
123
|
return void 0;
|
|
120
124
|
}
|
|
@@ -132,7 +136,7 @@ function useNavigation({
|
|
|
132
136
|
return trimmed;
|
|
133
137
|
}
|
|
134
138
|
}, [href, linkType]);
|
|
135
|
-
const target =
|
|
139
|
+
const target = React2.useMemo(() => {
|
|
136
140
|
switch (linkType) {
|
|
137
141
|
case "external":
|
|
138
142
|
return "_blank";
|
|
@@ -145,7 +149,7 @@ function useNavigation({
|
|
|
145
149
|
return void 0;
|
|
146
150
|
}
|
|
147
151
|
}, [linkType]);
|
|
148
|
-
const rel =
|
|
152
|
+
const rel = React2.useMemo(() => {
|
|
149
153
|
if (linkType === "external") {
|
|
150
154
|
return "noopener noreferrer";
|
|
151
155
|
}
|
|
@@ -154,7 +158,7 @@ function useNavigation({
|
|
|
154
158
|
const isExternal = linkType === "external";
|
|
155
159
|
const isInternal = linkType === "internal";
|
|
156
160
|
const shouldUseRouter = isInternal && typeof normalizedHref === "string" && normalizedHref.startsWith("/");
|
|
157
|
-
const handleClick =
|
|
161
|
+
const handleClick = React2.useCallback(
|
|
158
162
|
(event) => {
|
|
159
163
|
if (onClick) {
|
|
160
164
|
try {
|
|
@@ -338,7 +342,7 @@ var buttonVariants = cva(baseStyles, {
|
|
|
338
342
|
size: "default"
|
|
339
343
|
}
|
|
340
344
|
});
|
|
341
|
-
var Pressable =
|
|
345
|
+
var Pressable = React2.forwardRef(
|
|
342
346
|
({
|
|
343
347
|
children,
|
|
344
348
|
className,
|
|
@@ -542,7 +546,7 @@ var maxWidthStyles = {
|
|
|
542
546
|
"4xl": "max-w-[1536px]",
|
|
543
547
|
full: "max-w-full"
|
|
544
548
|
};
|
|
545
|
-
var Container =
|
|
549
|
+
var Container = React2__default.forwardRef(
|
|
546
550
|
({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
|
|
547
551
|
const Component = as;
|
|
548
552
|
return /* @__PURE__ */ jsx(
|
|
@@ -848,7 +852,7 @@ var spacingStyles = {
|
|
|
848
852
|
};
|
|
849
853
|
var predefinedSpacings = ["none", "sm", "md", "lg", "xl", "hero"];
|
|
850
854
|
var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
|
|
851
|
-
var Section =
|
|
855
|
+
var Section = React2__default.forwardRef(
|
|
852
856
|
({
|
|
853
857
|
id,
|
|
854
858
|
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-tier-grid.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,
|
|
@@ -861,7 +865,7 @@ function PricingTierGrid({
|
|
|
861
865
|
featureIconClassName,
|
|
862
866
|
featureTextClassName
|
|
863
867
|
}) {
|
|
864
|
-
const renderFeatures =
|
|
868
|
+
const renderFeatures = React2.useMemo(() => {
|
|
865
869
|
return (tier, isFeatured) => {
|
|
866
870
|
if (tier.featuresSlot) return tier.featuresSlot;
|
|
867
871
|
if (!tier.features || tier.features.length === 0) return null;
|
|
@@ -920,7 +924,7 @@ function PricingTierGrid({
|
|
|
920
924
|
}) });
|
|
921
925
|
};
|
|
922
926
|
}, [featuresClassName, featureIcon, featureIconName, featureIconClassName, featureItemClassName, featureTextClassName]);
|
|
923
|
-
const renderAction =
|
|
927
|
+
const renderAction = React2.useMemo(() => {
|
|
924
928
|
return (tier, isFeatured) => {
|
|
925
929
|
if (tier.actionSlot) return tier.actionSlot;
|
|
926
930
|
if (!tier.action) return null;
|
|
@@ -952,7 +956,7 @@ function PricingTierGrid({
|
|
|
952
956
|
);
|
|
953
957
|
};
|
|
954
958
|
}, [actionClassName]);
|
|
955
|
-
const renderTiers =
|
|
959
|
+
const renderTiers = React2.useMemo(() => {
|
|
956
960
|
if (tiersSlot) return tiersSlot;
|
|
957
961
|
if (!tiers || tiers.length === 0) return null;
|
|
958
962
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -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,
|