@opensite/ui 2.8.0 → 2.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (717) hide show
  1. package/dist/about-culture-tabs.cjs +25 -21
  2. package/dist/about-culture-tabs.js +23 -19
  3. package/dist/about-developer-profile.cjs +6 -2
  4. package/dist/about-developer-profile.js +6 -2
  5. package/dist/about-expandable-values.cjs +6 -2
  6. package/dist/about-expandable-values.js +6 -2
  7. package/dist/about-location-info-hero.cjs +6 -2
  8. package/dist/about-location-info-hero.js +6 -2
  9. package/dist/about-mission-principles.cjs +6 -2
  10. package/dist/about-mission-principles.js +6 -2
  11. package/dist/about-network-spotlight.cjs +18 -14
  12. package/dist/about-network-spotlight.js +16 -12
  13. package/dist/about-split-hero.cjs +6 -2
  14. package/dist/about-split-hero.js +6 -2
  15. package/dist/about-startup-team.cjs +6 -2
  16. package/dist/about-startup-team.js +6 -2
  17. package/dist/article-breadcrumb-social.cjs +27 -23
  18. package/dist/article-breadcrumb-social.js +27 -23
  19. package/dist/article-chapters-author.cjs +29 -25
  20. package/dist/article-chapters-author.js +29 -25
  21. package/dist/article-compact-toc.cjs +26 -22
  22. package/dist/article-compact-toc.js +26 -22
  23. package/dist/article-sidebar-sticky.cjs +6 -2
  24. package/dist/article-sidebar-sticky.js +6 -2
  25. package/dist/auto-scroll-carousel.cjs +28 -24
  26. package/dist/auto-scroll-carousel.js +26 -22
  27. package/dist/banner-announcement-dismissible.cjs +6 -2
  28. package/dist/banner-announcement-dismissible.js +6 -2
  29. package/dist/banner-delivery-countdown.cjs +6 -2
  30. package/dist/banner-delivery-countdown.js +6 -2
  31. package/dist/banner-floating-offer.cjs +6 -2
  32. package/dist/banner-floating-offer.js +6 -2
  33. package/dist/banner-gdpr-rights.cjs +6 -2
  34. package/dist/banner-gdpr-rights.js +6 -2
  35. package/dist/banner-privacy-notice.cjs +6 -2
  36. package/dist/banner-privacy-notice.js +6 -2
  37. package/dist/banner-social-follow.cjs +6 -2
  38. package/dist/banner-social-follow.js +6 -2
  39. package/dist/banner-survey-incentive.cjs +6 -2
  40. package/dist/banner-survey-incentive.js +6 -2
  41. package/dist/blog-cards-read-time.cjs +6 -2
  42. package/dist/blog-cards-read-time.js +6 -2
  43. package/dist/blog-cards-tagline-cta.cjs +6 -2
  44. package/dist/blog-cards-tagline-cta.js +6 -2
  45. package/dist/blog-carousel-apple.cjs +25 -21
  46. package/dist/blog-carousel-apple.js +21 -17
  47. package/dist/blog-category-overlay.cjs +6 -2
  48. package/dist/blog-category-overlay.js +6 -2
  49. package/dist/blog-filtered-results.cjs +30 -26
  50. package/dist/blog-filtered-results.js +24 -20
  51. package/dist/blog-horizontal-cards.cjs +6 -2
  52. package/dist/blog-horizontal-cards.js +6 -2
  53. package/dist/blog-horizontal-timeline.cjs +6 -2
  54. package/dist/blog-horizontal-timeline.js +6 -2
  55. package/dist/carousel-animated-sections.cjs +23 -19
  56. package/dist/carousel-animated-sections.js +23 -19
  57. package/dist/carousel-auto-progress-slides.cjs +6 -2
  58. package/dist/carousel-auto-progress-slides.js +6 -2
  59. package/dist/carousel-autoplay-progress.cjs +34 -30
  60. package/dist/carousel-autoplay-progress.js +34 -30
  61. package/dist/carousel-badge-cards.cjs +31 -27
  62. package/dist/carousel-badge-cards.js +26 -22
  63. package/dist/carousel-demo-link.cjs +32 -28
  64. package/dist/carousel-demo-link.js +26 -22
  65. package/dist/carousel-feature-badge.cjs +22 -18
  66. package/dist/carousel-feature-badge.js +22 -18
  67. package/dist/carousel-gallery-thumbnails.cjs +6 -2
  68. package/dist/carousel-gallery-thumbnails.js +6 -2
  69. package/dist/carousel-gradient-overlay.cjs +32 -28
  70. package/dist/carousel-gradient-overlay.js +26 -22
  71. package/dist/carousel-gradient-text.cjs +32 -28
  72. package/dist/carousel-gradient-text.js +26 -22
  73. package/dist/carousel-horizontal-cards.cjs +20 -16
  74. package/dist/carousel-horizontal-cards.js +20 -16
  75. package/dist/carousel-icon-sidebar.cjs +38 -34
  76. package/dist/carousel-icon-sidebar.js +26 -22
  77. package/dist/carousel-icon-tabs.cjs +39 -35
  78. package/dist/carousel-icon-tabs.js +26 -22
  79. package/dist/carousel-image-hero.cjs +22 -18
  80. package/dist/carousel-image-hero.js +22 -18
  81. package/dist/carousel-multi-step-showcase.cjs +6 -2
  82. package/dist/carousel-multi-step-showcase.js +6 -2
  83. package/dist/carousel-pagination.cjs +6 -2
  84. package/dist/carousel-pagination.js +6 -2
  85. package/dist/carousel-portfolio-hero.cjs +22 -18
  86. package/dist/carousel-portfolio-hero.js +22 -18
  87. package/dist/carousel-product-feature-showcase.cjs +6 -2
  88. package/dist/carousel-product-feature-showcase.js +6 -2
  89. package/dist/carousel-progress-slider.cjs +28 -24
  90. package/dist/carousel-progress-slider.js +28 -24
  91. package/dist/carousel-scale-focus.cjs +41 -37
  92. package/dist/carousel-scale-focus.js +26 -22
  93. package/dist/carousel-sidebar-resources.cjs +34 -30
  94. package/dist/carousel-sidebar-resources.js +26 -22
  95. package/dist/carousel-tabs-content.cjs +39 -35
  96. package/dist/carousel-tabs-content.js +26 -22
  97. package/dist/case-studies-featured-border.cjs +6 -2
  98. package/dist/case-studies-featured-border.js +6 -2
  99. package/dist/case-study-stats-metrics.cjs +6 -2
  100. package/dist/case-study-stats-metrics.js +6 -2
  101. package/dist/case-study-toc-social-sidebar.cjs +6 -2
  102. package/dist/case-study-toc-social-sidebar.js +6 -2
  103. package/dist/community-initiatives.cjs +19 -15
  104. package/dist/community-initiatives.js +17 -13
  105. package/dist/comparison-ai-models.cjs +18 -14
  106. package/dist/comparison-ai-models.js +17 -13
  107. package/dist/comparison-feature-cards.cjs +16 -12
  108. package/dist/comparison-feature-cards.js +16 -12
  109. package/dist/comparison-feature-grid.cjs +14 -10
  110. package/dist/comparison-feature-grid.js +14 -10
  111. package/dist/comparison-grid-badges.cjs +13 -9
  112. package/dist/comparison-grid-badges.js +13 -9
  113. package/dist/comparison-legacy-modern.cjs +15 -11
  114. package/dist/comparison-legacy-modern.js +15 -11
  115. package/dist/comparison-table-tabs.cjs +15 -11
  116. package/dist/comparison-table-tabs.js +14 -10
  117. package/dist/comparison-table-two-column.cjs +14 -10
  118. package/dist/comparison-table-two-column.js +14 -10
  119. package/dist/components.cjs +199 -179
  120. package/dist/components.js +104 -84
  121. package/dist/contact-callback.cjs +27 -7
  122. package/dist/contact-callback.js +10 -5
  123. package/dist/contact-card.cjs +6 -2
  124. package/dist/contact-card.js +6 -2
  125. package/dist/contact-careers.cjs +18 -14
  126. package/dist/contact-careers.js +16 -12
  127. package/dist/contact-dark.cjs +6 -2
  128. package/dist/contact-dark.js +6 -2
  129. package/dist/contact-emergency.cjs +6 -2
  130. package/dist/contact-emergency.js +6 -2
  131. package/dist/contact-faq.cjs +9 -7
  132. package/dist/contact-faq.js +10 -5
  133. package/dist/contact-floating-banner.cjs +6 -2
  134. package/dist/contact-floating-banner.js +6 -2
  135. package/dist/contact-help-center.cjs +16 -12
  136. package/dist/contact-help-center.js +16 -12
  137. package/dist/contact-image.cjs +18 -14
  138. package/dist/contact-image.js +17 -13
  139. package/dist/contact-map.cjs +78 -58
  140. package/dist/contact-map.js +78 -58
  141. package/dist/cta-app-download-newsletter.cjs +6 -2
  142. package/dist/cta-app-download-newsletter.js +6 -2
  143. package/dist/cta-background-icon-badge.cjs +6 -2
  144. package/dist/cta-background-icon-badge.js +6 -2
  145. package/dist/cta-case-study-testimonial.cjs +6 -2
  146. package/dist/cta-case-study-testimonial.js +6 -2
  147. package/dist/cta-documentation-links.cjs +6 -2
  148. package/dist/cta-documentation-links.js +6 -2
  149. package/dist/cta-enterprise-dark-features.cjs +6 -2
  150. package/dist/cta-enterprise-dark-features.js +6 -2
  151. package/dist/cta-enterprise-split.cjs +6 -2
  152. package/dist/cta-enterprise-split.js +6 -2
  153. package/dist/cta-feature-cards-grid.cjs +6 -2
  154. package/dist/cta-feature-cards-grid.js +6 -2
  155. package/dist/cta-feature-checklist.cjs +17 -13
  156. package/dist/cta-feature-checklist.js +16 -12
  157. package/dist/cta-feature-list.cjs +6 -2
  158. package/dist/cta-feature-list.js +6 -2
  159. package/dist/cta-gradient-logos-floating.cjs +6 -2
  160. package/dist/cta-gradient-logos-floating.js +6 -2
  161. package/dist/cta-gradient-stats-hero.cjs +6 -2
  162. package/dist/cta-gradient-stats-hero.js +6 -2
  163. package/dist/cta-hero-feature-cards.cjs +6 -2
  164. package/dist/cta-hero-feature-cards.js +6 -2
  165. package/dist/cta-image-overlay-arrow.cjs +6 -2
  166. package/dist/cta-image-overlay-arrow.js +6 -2
  167. package/dist/cta-newsletter-features.cjs +12 -8
  168. package/dist/cta-newsletter-features.js +12 -8
  169. package/dist/cta-platform-demo.cjs +6 -2
  170. package/dist/cta-platform-demo.js +6 -2
  171. package/dist/cta-simple-centered.cjs +6 -2
  172. package/dist/cta-simple-centered.js +6 -2
  173. package/dist/cta-split-image-logos.cjs +6 -2
  174. package/dist/cta-split-image-logos.js +6 -2
  175. package/dist/cta-video-background-hero.cjs +6 -2
  176. package/dist/cta-video-background-hero.js +6 -2
  177. package/dist/cta-workflow-tabs.cjs +6 -2
  178. package/dist/cta-workflow-tabs.js +6 -2
  179. package/dist/dynamic-icon.cjs +27 -2
  180. package/dist/dynamic-icon.d.cts +2 -2
  181. package/dist/dynamic-icon.d.ts +2 -2
  182. package/dist/dynamic-icon.js +7 -2
  183. package/dist/expandable-case-study-cards.cjs +26 -6
  184. package/dist/expandable-case-study-cards.js +10 -5
  185. package/dist/faq-badge-support.cjs +25 -21
  186. package/dist/faq-badge-support.js +22 -18
  187. package/dist/faq-bordered-badge.cjs +9 -7
  188. package/dist/faq-bordered-badge.js +10 -5
  189. package/dist/faq-card-categories.cjs +18 -14
  190. package/dist/faq-card-categories.js +16 -12
  191. package/dist/faq-categorized-sections.cjs +9 -7
  192. package/dist/faq-categorized-sections.js +10 -5
  193. package/dist/faq-centered-accordion.cjs +9 -7
  194. package/dist/faq-centered-accordion.js +10 -5
  195. package/dist/faq-gradient-categories.cjs +18 -14
  196. package/dist/faq-gradient-categories.js +16 -12
  197. package/dist/faq-icon-benefits.cjs +18 -14
  198. package/dist/faq-icon-benefits.js +16 -12
  199. package/dist/faq-muted-cards.cjs +18 -14
  200. package/dist/faq-muted-cards.js +16 -12
  201. package/dist/faq-profile-sidebar.cjs +25 -21
  202. package/dist/faq-profile-sidebar.js +22 -18
  203. package/dist/faq-rounded-cards.cjs +18 -14
  204. package/dist/faq-rounded-cards.js +16 -12
  205. package/dist/faq-sidebar-navigation.cjs +20 -16
  206. package/dist/faq-sidebar-navigation.js +17 -13
  207. package/dist/faq-simple-accordion.cjs +18 -14
  208. package/dist/faq-simple-accordion.js +16 -12
  209. package/dist/faq-split-help.cjs +25 -21
  210. package/dist/faq-split-help.js +22 -18
  211. package/dist/faq-split-hero.cjs +9 -7
  212. package/dist/faq-split-hero.js +10 -5
  213. package/dist/feature-accordion-image.cjs +20 -16
  214. package/dist/feature-accordion-image.js +17 -13
  215. package/dist/feature-animated-carousel.cjs +35 -31
  216. package/dist/feature-animated-carousel.js +28 -24
  217. package/dist/feature-badge-grid-six.cjs +20 -16
  218. package/dist/feature-badge-grid-six.js +16 -12
  219. package/dist/feature-bento-image-grid.cjs +21 -17
  220. package/dist/feature-bento-image-grid.js +20 -16
  221. package/dist/feature-bento-utilities.cjs +19 -15
  222. package/dist/feature-bento-utilities.js +18 -14
  223. package/dist/feature-capabilities-grid.cjs +18 -14
  224. package/dist/feature-capabilities-grid.js +17 -13
  225. package/dist/feature-carousel-progress.cjs +31 -27
  226. package/dist/feature-carousel-progress.js +26 -22
  227. package/dist/feature-checklist-image.cjs +6 -2
  228. package/dist/feature-checklist-image.js +6 -2
  229. package/dist/feature-checklist-three-column.cjs +22 -18
  230. package/dist/feature-checklist-three-column.js +16 -12
  231. package/dist/feature-icon-grid-accent.cjs +26 -6
  232. package/dist/feature-icon-grid-accent.js +10 -5
  233. package/dist/feature-icon-grid-bordered.cjs +18 -14
  234. package/dist/feature-icon-grid-bordered.js +16 -12
  235. package/dist/feature-icon-grid-muted.cjs +18 -14
  236. package/dist/feature-icon-grid-muted.js +16 -12
  237. package/dist/feature-icon-tabs-content.cjs +20 -16
  238. package/dist/feature-icon-tabs-content.js +16 -12
  239. package/dist/feature-image-cards-three-column.cjs +29 -25
  240. package/dist/feature-image-cards-three-column.js +22 -18
  241. package/dist/feature-image-overlay-badge.cjs +18 -14
  242. package/dist/feature-image-overlay-badge.js +16 -12
  243. package/dist/feature-numbered-cards.cjs +20 -16
  244. package/dist/feature-numbered-cards.js +16 -12
  245. package/dist/feature-pattern-grid-links.cjs +19 -15
  246. package/dist/feature-pattern-grid-links.js +16 -12
  247. package/dist/feature-showcase.cjs +6 -2
  248. package/dist/feature-showcase.js +6 -2
  249. package/dist/feature-tabbed-content-image.cjs +21 -17
  250. package/dist/feature-tabbed-content-image.js +19 -15
  251. package/dist/feature-three-column-values.cjs +18 -14
  252. package/dist/feature-three-column-values.js +17 -13
  253. package/dist/feature-utility-cards-grid.cjs +20 -16
  254. package/dist/feature-utility-cards-grid.js +17 -13
  255. package/dist/footer-accordion-social.cjs +6 -2
  256. package/dist/footer-accordion-social.js +6 -2
  257. package/dist/footer-animated-social.cjs +6 -2
  258. package/dist/footer-animated-social.js +6 -2
  259. package/dist/footer-background-card.cjs +6 -2
  260. package/dist/footer-background-card.js +6 -2
  261. package/dist/footer-brand-description.cjs +6 -2
  262. package/dist/footer-brand-description.js +6 -2
  263. package/dist/footer-brand-links-contact.cjs +6 -2
  264. package/dist/footer-brand-links-contact.js +6 -2
  265. package/dist/footer-comprehensive-links.cjs +6 -2
  266. package/dist/footer-comprehensive-links.js +6 -2
  267. package/dist/footer-contact-card.cjs +6 -2
  268. package/dist/footer-contact-card.js +6 -2
  269. package/dist/footer-cta-banner.cjs +6 -2
  270. package/dist/footer-cta-banner.js +6 -2
  271. package/dist/footer-cta-social.cjs +24 -20
  272. package/dist/footer-cta-social.js +22 -18
  273. package/dist/footer-info-cards-accordion.cjs +24 -20
  274. package/dist/footer-info-cards-accordion.js +23 -19
  275. package/dist/footer-nav-social.cjs +6 -2
  276. package/dist/footer-nav-social.js +6 -2
  277. package/dist/footer-newsletter-contact.cjs +6 -2
  278. package/dist/footer-newsletter-contact.js +6 -2
  279. package/dist/footer-newsletter-grid.cjs +6 -2
  280. package/dist/footer-newsletter-grid.js +6 -2
  281. package/dist/footer-newsletter-minimal.cjs +27 -23
  282. package/dist/footer-newsletter-minimal.js +26 -22
  283. package/dist/footer-social-apps.cjs +26 -22
  284. package/dist/footer-social-apps.js +22 -18
  285. package/dist/footer-social-newsletter.cjs +6 -2
  286. package/dist/footer-social-newsletter.js +6 -2
  287. package/dist/footer-split-image-accordion.cjs +24 -20
  288. package/dist/footer-split-image-accordion.js +23 -19
  289. package/dist/geo-map.cjs +74 -54
  290. package/dist/geo-map.js +73 -53
  291. package/dist/hero-badge-shadow-overlay.cjs +6 -2
  292. package/dist/hero-badge-shadow-overlay.js +6 -2
  293. package/dist/hero-coming-soon-countdown.cjs +6 -2
  294. package/dist/hero-coming-soon-countdown.js +6 -2
  295. package/dist/hero-conversion-video-play.cjs +29 -25
  296. package/dist/hero-conversion-video-play.js +26 -22
  297. package/dist/hero-creative-studio-stacked.cjs +19 -15
  298. package/dist/hero-creative-studio-stacked.js +16 -12
  299. package/dist/hero-dashed-border-features.cjs +6 -2
  300. package/dist/hero-dashed-border-features.js +6 -2
  301. package/dist/hero-design-carousel-portfolio.cjs +29 -25
  302. package/dist/hero-design-carousel-portfolio.js +26 -22
  303. package/dist/hero-design-system-3d.cjs +18 -14
  304. package/dist/hero-design-system-3d.js +16 -12
  305. package/dist/hero-developer-tools-code.cjs +18 -14
  306. package/dist/hero-developer-tools-code.js +16 -12
  307. package/dist/hero-ecommerce-product-showcase.cjs +20 -16
  308. package/dist/hero-ecommerce-product-showcase.js +17 -13
  309. package/dist/hero-enterprise-security.cjs +6 -2
  310. package/dist/hero-enterprise-security.js +6 -2
  311. package/dist/hero-event-registration.cjs +21 -17
  312. package/dist/hero-event-registration.js +17 -13
  313. package/dist/hero-feature-cards-grid.cjs +6 -2
  314. package/dist/hero-feature-cards-grid.js +6 -2
  315. package/dist/hero-floating-images.cjs +26 -6
  316. package/dist/hero-floating-images.js +10 -5
  317. package/dist/hero-gradient-avatars-rating.cjs +19 -15
  318. package/dist/hero-gradient-avatars-rating.js +16 -12
  319. package/dist/hero-grid-pattern-solutions.cjs +6 -2
  320. package/dist/hero-grid-pattern-solutions.js +6 -2
  321. package/dist/hero-marketplace-scattered-images.cjs +6 -2
  322. package/dist/hero-marketplace-scattered-images.js +6 -2
  323. package/dist/hero-mentorship-video-split.cjs +6 -2
  324. package/dist/hero-mentorship-video-split.js +6 -2
  325. package/dist/hero-mobile-app-download.cjs +6 -2
  326. package/dist/hero-mobile-app-download.js +6 -2
  327. package/dist/hero-overlay-cta-grid.cjs +20 -16
  328. package/dist/hero-overlay-cta-grid.js +16 -12
  329. package/dist/hero-platform-features-grid.cjs +6 -2
  330. package/dist/hero-platform-features-grid.js +6 -2
  331. package/dist/hero-portfolio-creative.cjs +6 -2
  332. package/dist/hero-portfolio-creative.js +6 -2
  333. package/dist/hero-pricing-comparison.cjs +6 -2
  334. package/dist/hero-pricing-comparison.js +6 -2
  335. package/dist/hero-product-showcase-floating.cjs +27 -23
  336. package/dist/hero-product-showcase-floating.js +22 -18
  337. package/dist/hero-saas-dashboard-preview.cjs +6 -2
  338. package/dist/hero-saas-dashboard-preview.js +6 -2
  339. package/dist/hero-software-growth-video-dialog.cjs +19 -15
  340. package/dist/hero-software-growth-video-dialog.js +16 -12
  341. package/dist/hero-split-icon-cards.cjs +18 -14
  342. package/dist/hero-split-icon-cards.js +16 -12
  343. package/dist/hero-video-dialog-gradient.cjs +19 -15
  344. package/dist/hero-video-dialog-gradient.js +16 -12
  345. package/dist/hero-video-overlay-stars.cjs +18 -14
  346. package/dist/hero-video-overlay-stars.js +16 -12
  347. package/dist/index.cjs +200 -180
  348. package/dist/index.js +104 -84
  349. package/dist/industries-expandable-showcase.cjs +6 -2
  350. package/dist/industries-expandable-showcase.js +6 -2
  351. package/dist/industries-hover-reveal-grid.cjs +6 -2
  352. package/dist/industries-hover-reveal-grid.js +6 -2
  353. package/dist/industries-timeline-table.cjs +6 -2
  354. package/dist/industries-timeline-table.js +6 -2
  355. package/dist/interior-carousel.cjs +33 -29
  356. package/dist/interior-carousel.js +26 -22
  357. package/dist/link-page-bento-layout.cjs +6 -2
  358. package/dist/link-page-bento-layout.js +6 -2
  359. package/dist/link-page-grid-cards.cjs +6 -2
  360. package/dist/link-page-grid-cards.js +6 -2
  361. package/dist/link-page-minimal-profile.cjs +6 -2
  362. package/dist/link-page-minimal-profile.js +6 -2
  363. package/dist/link-page-newsletter-social.cjs +6 -2
  364. package/dist/link-page-newsletter-social.js +6 -2
  365. package/dist/link-tree-block.cjs +30 -26
  366. package/dist/link-tree-block.js +30 -26
  367. package/dist/list-achievements-showcase.cjs +6 -2
  368. package/dist/list-achievements-showcase.js +6 -2
  369. package/dist/list-feature-comparison.cjs +6 -2
  370. package/dist/list-feature-comparison.js +6 -2
  371. package/dist/list-metrics-dashboard.cjs +6 -2
  372. package/dist/list-metrics-dashboard.js +6 -2
  373. package/dist/list-searchable-grid.cjs +19 -15
  374. package/dist/list-searchable-grid.js +18 -14
  375. package/dist/list-service-category-table.cjs +26 -6
  376. package/dist/list-service-category-table.js +10 -5
  377. package/dist/navbar-animated-preview.cjs +6 -2
  378. package/dist/navbar-animated-preview.js +6 -2
  379. package/dist/navbar-centered-menu.cjs +6 -2
  380. package/dist/navbar-centered-menu.js +6 -2
  381. package/dist/navbar-dark-icons.cjs +6 -2
  382. package/dist/navbar-dark-icons.js +6 -2
  383. package/dist/navbar-dropdown-menu.cjs +6 -2
  384. package/dist/navbar-dropdown-menu.js +6 -2
  385. package/dist/navbar-education-platform.cjs +6 -2
  386. package/dist/navbar-education-platform.js +6 -2
  387. package/dist/navbar-enterprise-mega.cjs +6 -2
  388. package/dist/navbar-enterprise-mega.js +6 -2
  389. package/dist/navbar-feature-grid.cjs +6 -2
  390. package/dist/navbar-feature-grid.js +6 -2
  391. package/dist/navbar-floating-pill.cjs +6 -2
  392. package/dist/navbar-floating-pill.js +6 -2
  393. package/dist/navbar-fullscreen-menu.cjs +6 -2
  394. package/dist/navbar-fullscreen-menu.js +6 -2
  395. package/dist/navbar-icon-links.cjs +6 -2
  396. package/dist/navbar-icon-links.js +6 -2
  397. package/dist/navbar-image-preview.cjs +6 -2
  398. package/dist/navbar-image-preview.js +6 -2
  399. package/dist/navbar-mega-menu.cjs +6 -2
  400. package/dist/navbar-mega-menu.js +6 -2
  401. package/dist/navbar-multi-column-groups.cjs +6 -2
  402. package/dist/navbar-multi-column-groups.js +6 -2
  403. package/dist/navbar-platform-resources.cjs +6 -2
  404. package/dist/navbar-platform-resources.js +6 -2
  405. package/dist/navbar-search-focused.cjs +6 -2
  406. package/dist/navbar-search-focused.js +6 -2
  407. package/dist/navbar-sidebar-mobile.cjs +6 -2
  408. package/dist/navbar-sidebar-mobile.js +6 -2
  409. package/dist/navbar-simple-links.cjs +6 -2
  410. package/dist/navbar-simple-links.js +6 -2
  411. package/dist/navbar-split-cta.cjs +6 -2
  412. package/dist/navbar-split-cta.js +6 -2
  413. package/dist/navbar-sticky-compact.cjs +6 -2
  414. package/dist/navbar-sticky-compact.js +6 -2
  415. package/dist/navbar-tabbed-sections.cjs +6 -2
  416. package/dist/navbar-tabbed-sections.js +6 -2
  417. package/dist/navbar-transparent-overlay.cjs +6 -2
  418. package/dist/navbar-transparent-overlay.js +6 -2
  419. package/dist/offer-modal-membership-image.cjs +6 -2
  420. package/dist/offer-modal-membership-image.js +6 -2
  421. package/dist/offer-modal-newsletter-discount.cjs +6 -2
  422. package/dist/offer-modal-newsletter-discount.js +6 -2
  423. package/dist/offer-modal-sheet-newsletter.cjs +6 -2
  424. package/dist/offer-modal-sheet-newsletter.js +6 -2
  425. package/dist/payment-platform-icon.cjs +27 -2
  426. package/dist/payment-platform-icon.js +7 -2
  427. package/dist/pricing-addons-cards.cjs +19 -15
  428. package/dist/pricing-addons-cards.js +16 -12
  429. package/dist/pricing-addons-featured.cjs +20 -16
  430. package/dist/pricing-addons-featured.js +16 -12
  431. package/dist/pricing-collapsible-plans.cjs +19 -15
  432. package/dist/pricing-collapsible-plans.js +16 -12
  433. package/dist/pricing-columns-toggle.cjs +20 -16
  434. package/dist/pricing-columns-toggle.js +16 -12
  435. package/dist/pricing-comparison-headers.cjs +21 -17
  436. package/dist/pricing-comparison-headers.js +16 -12
  437. package/dist/pricing-comparison-table.cjs +21 -17
  438. package/dist/pricing-comparison-table.js +16 -12
  439. package/dist/pricing-discount-card.cjs +18 -14
  440. package/dist/pricing-discount-card.js +16 -12
  441. package/dist/pricing-enterprise-contact.cjs +18 -14
  442. package/dist/pricing-enterprise-contact.js +16 -12
  443. package/dist/pricing-feature-matrix.cjs +19 -15
  444. package/dist/pricing-feature-matrix.js +16 -12
  445. package/dist/pricing-four-tier-toggle.cjs +20 -16
  446. package/dist/pricing-four-tier-toggle.js +16 -12
  447. package/dist/pricing-full-comparison.cjs +19 -15
  448. package/dist/pricing-full-comparison.js +17 -13
  449. package/dist/pricing-gradient-cards.cjs +20 -16
  450. package/dist/pricing-gradient-cards.js +16 -12
  451. package/dist/pricing-icon-headers.cjs +19 -15
  452. package/dist/pricing-icon-headers.js +16 -12
  453. package/dist/pricing-minimal-cards.cjs +19 -15
  454. package/dist/pricing-minimal-cards.js +16 -12
  455. package/dist/pricing-packages-radio.cjs +18 -14
  456. package/dist/pricing-packages-radio.js +16 -12
  457. package/dist/pricing-popular-highlight.cjs +20 -16
  458. package/dist/pricing-popular-highlight.js +16 -12
  459. package/dist/pricing-radio-toggle.cjs +20 -16
  460. package/dist/pricing-radio-toggle.js +16 -12
  461. package/dist/pricing-responsive-table.cjs +18 -14
  462. package/dist/pricing-responsive-table.js +16 -12
  463. package/dist/pricing-services-cards.cjs +19 -15
  464. package/dist/pricing-services-cards.js +16 -12
  465. package/dist/pricing-simple-card.cjs +18 -14
  466. package/dist/pricing-simple-card.js +16 -12
  467. package/dist/pricing-single-card.cjs +19 -15
  468. package/dist/pricing-single-card.js +16 -12
  469. package/dist/pricing-split-layout.cjs +16 -12
  470. package/dist/pricing-split-layout.js +16 -12
  471. package/dist/pricing-spotlight-card.cjs +18 -14
  472. package/dist/pricing-spotlight-card.js +16 -12
  473. package/dist/pricing-switch-cards.cjs +20 -16
  474. package/dist/pricing-switch-cards.js +16 -12
  475. package/dist/pricing-tabs-toggle.cjs +20 -16
  476. package/dist/pricing-tabs-toggle.js +16 -12
  477. package/dist/pricing-tier-grid.cjs +19 -15
  478. package/dist/pricing-tier-grid.js +16 -12
  479. package/dist/pricing-toggle-cards.cjs +20 -16
  480. package/dist/pricing-toggle-cards.js +16 -12
  481. package/dist/pricing-toggle-period.cjs +18 -14
  482. package/dist/pricing-toggle-period.js +16 -12
  483. package/dist/pricing-two-column-basic.cjs +20 -16
  484. package/dist/pricing-two-column-basic.js +16 -12
  485. package/dist/process-expandable-timeline.cjs +6 -2
  486. package/dist/process-expandable-timeline.js +6 -2
  487. package/dist/process-icon-timeline.cjs +26 -6
  488. package/dist/process-icon-timeline.js +10 -5
  489. package/dist/process-numbered-services.cjs +6 -2
  490. package/dist/process-numbered-services.js +6 -2
  491. package/dist/process-roadmap-timeline.cjs +26 -6
  492. package/dist/process-roadmap-timeline.js +10 -5
  493. package/dist/process-scroll-image.cjs +24 -20
  494. package/dist/process-scroll-image.js +22 -18
  495. package/dist/process-steps-grid.cjs +26 -6
  496. package/dist/process-steps-grid.js +10 -5
  497. package/dist/process-sticky-steps.cjs +6 -2
  498. package/dist/process-sticky-steps.js +6 -2
  499. package/dist/project-background-reveal.cjs +17 -13
  500. package/dist/project-background-reveal.js +16 -12
  501. package/dist/project-card-overlay.cjs +26 -6
  502. package/dist/project-card-overlay.js +10 -5
  503. package/dist/project-carousel-cinematic.cjs +31 -27
  504. package/dist/project-carousel-cinematic.js +26 -22
  505. package/dist/project-carousel-detail-cards.cjs +31 -27
  506. package/dist/project-carousel-detail-cards.js +26 -22
  507. package/dist/project-carousel-minimal.cjs +31 -27
  508. package/dist/project-carousel-minimal.js +26 -22
  509. package/dist/project-detail-architecture-carousel.cjs +6 -2
  510. package/dist/project-detail-architecture-carousel.js +6 -2
  511. package/dist/project-detail-list-related.cjs +6 -2
  512. package/dist/project-detail-list-related.js +6 -2
  513. package/dist/project-detail-photography-breadcrumb.cjs +6 -2
  514. package/dist/project-detail-photography-breadcrumb.js +6 -2
  515. package/dist/project-detail-tabbed-case-study.cjs +6 -2
  516. package/dist/project-detail-tabbed-case-study.js +6 -2
  517. package/dist/project-experience-quote.cjs +17 -13
  518. package/dist/project-experience-quote.js +16 -12
  519. package/dist/project-featured-carousel.cjs +27 -23
  520. package/dist/project-featured-carousel.js +26 -22
  521. package/dist/project-horizontal-cards.cjs +17 -13
  522. package/dist/project-horizontal-cards.js +16 -12
  523. package/dist/project-interactive-hover-reveal.cjs +18 -14
  524. package/dist/project-interactive-hover-reveal.js +16 -12
  525. package/dist/project-scroll-reveal.cjs +26 -6
  526. package/dist/project-scroll-reveal.js +10 -5
  527. package/dist/project-video-carousel.cjs +31 -27
  528. package/dist/project-video-carousel.js +26 -22
  529. package/dist/project-video-hover-bento.cjs +26 -6
  530. package/dist/project-video-hover-bento.js +10 -5
  531. package/dist/project-video-hover-grid.cjs +26 -6
  532. package/dist/project-video-hover-grid.js +10 -5
  533. package/dist/project-video-hover-rounded.cjs +26 -6
  534. package/dist/project-video-hover-rounded.js +10 -5
  535. package/dist/project-video-hover-stack.cjs +26 -6
  536. package/dist/project-video-hover-stack.js +10 -5
  537. package/dist/project-video-hover-two-by-two.cjs +26 -6
  538. package/dist/project-video-hover-two-by-two.js +10 -5
  539. package/dist/project-work-showcase.cjs +17 -13
  540. package/dist/project-work-showcase.js +16 -12
  541. package/dist/project-zigzag-layout.cjs +16 -12
  542. package/dist/project-zigzag-layout.js +16 -12
  543. package/dist/registry.cjs +1737 -1717
  544. package/dist/registry.js +507 -487
  545. package/dist/resource-detail-document-sidebar.cjs +6 -2
  546. package/dist/resource-detail-document-sidebar.js +6 -2
  547. package/dist/resource-detail-whitepaper-sidebar.cjs +6 -2
  548. package/dist/resource-detail-whitepaper-sidebar.js +6 -2
  549. package/dist/resource-list-course-cards.cjs +6 -2
  550. package/dist/resource-list-course-cards.js +6 -2
  551. package/dist/resource-list-featured-articles.cjs +6 -2
  552. package/dist/resource-list-featured-articles.js +6 -2
  553. package/dist/resource-list-featured-grid.cjs +6 -2
  554. package/dist/resource-list-featured-grid.js +6 -2
  555. package/dist/resource-list-hero-filter.cjs +6 -2
  556. package/dist/resource-list-hero-filter.js +6 -2
  557. package/dist/resource-list-news-updates.cjs +6 -2
  558. package/dist/resource-list-news-updates.js +6 -2
  559. package/dist/service-detail-centered-expertise.cjs +16 -12
  560. package/dist/service-detail-centered-expertise.js +16 -12
  561. package/dist/service-detail-compact-cards.cjs +16 -12
  562. package/dist/service-detail-compact-cards.js +16 -12
  563. package/dist/service-detail-sidebar-related.cjs +16 -12
  564. package/dist/service-detail-sidebar-related.js +16 -12
  565. package/dist/service-detail-sidebar-stats.cjs +27 -7
  566. package/dist/service-detail-sidebar-stats.js +10 -5
  567. package/dist/service-hover-carousel.cjs +38 -34
  568. package/dist/service-hover-carousel.js +26 -22
  569. package/dist/services-list-accordion-benefits.cjs +16 -12
  570. package/dist/services-list-accordion-benefits.js +16 -12
  571. package/dist/services-list-accordion.cjs +10 -8
  572. package/dist/services-list-accordion.js +10 -5
  573. package/dist/services-list-cards-hover.cjs +16 -12
  574. package/dist/services-list-cards-hover.js +16 -12
  575. package/dist/services-list-category-accordion.cjs +10 -8
  576. package/dist/services-list-category-accordion.js +10 -5
  577. package/dist/services-list-centered-icons.cjs +27 -7
  578. package/dist/services-list-centered-icons.js +10 -5
  579. package/dist/services-list-culture-tabs.cjs +16 -12
  580. package/dist/services-list-culture-tabs.js +16 -12
  581. package/dist/services-list-feature-spotlight.cjs +27 -7
  582. package/dist/services-list-feature-spotlight.js +10 -5
  583. package/dist/services-list-featured-highlight.cjs +16 -12
  584. package/dist/services-list-featured-highlight.js +16 -12
  585. package/dist/services-list-hero-cards.cjs +6 -2
  586. package/dist/services-list-hero-cards.js +6 -2
  587. package/dist/services-list-icon-grid.cjs +27 -7
  588. package/dist/services-list-icon-grid.js +10 -5
  589. package/dist/services-list-image-cards.cjs +6 -2
  590. package/dist/services-list-image-cards.js +6 -2
  591. package/dist/services-list-image-overlay-grid.cjs +6 -2
  592. package/dist/services-list-image-overlay-grid.js +6 -2
  593. package/dist/services-list-masonry.cjs +16 -12
  594. package/dist/services-list-masonry.js +16 -12
  595. package/dist/services-list-methodology-steps.cjs +16 -12
  596. package/dist/services-list-methodology-steps.js +16 -12
  597. package/dist/services-list-minimal-grid.cjs +16 -12
  598. package/dist/services-list-minimal-grid.js +16 -12
  599. package/dist/services-list-muted-cards.cjs +27 -7
  600. package/dist/services-list-muted-cards.js +10 -5
  601. package/dist/services-list-numbered-steps.cjs +16 -12
  602. package/dist/services-list-numbered-steps.js +16 -12
  603. package/dist/services-list-pricing-grid.cjs +16 -12
  604. package/dist/services-list-pricing-grid.js +16 -12
  605. package/dist/services-list-progress-sidebar.cjs +16 -12
  606. package/dist/services-list-progress-sidebar.js +16 -12
  607. package/dist/services-list-split-checklist.cjs +16 -12
  608. package/dist/services-list-split-checklist.js +16 -12
  609. package/dist/services-list-sticky-image.cjs +6 -2
  610. package/dist/services-list-sticky-image.js +6 -2
  611. package/dist/services-list-table-hover.cjs +6 -2
  612. package/dist/services-list-table-hover.js +6 -2
  613. package/dist/services-list-tabs-features.cjs +10 -8
  614. package/dist/services-list-tabs-features.js +10 -5
  615. package/dist/services-list-timeline.cjs +16 -12
  616. package/dist/services-list-timeline.js +16 -12
  617. package/dist/services-list-two-column-grid.cjs +16 -12
  618. package/dist/services-list-two-column-grid.js +16 -12
  619. package/dist/services-list-vertical-tags.cjs +27 -7
  620. package/dist/services-list-vertical-tags.js +10 -5
  621. package/dist/services-list-video-showcase.cjs +18 -14
  622. package/dist/services-list-video-showcase.js +18 -14
  623. package/dist/social-link-icon.cjs +6 -2
  624. package/dist/social-link-icon.js +6 -2
  625. package/dist/stats-animated-counter.cjs +17 -13
  626. package/dist/stats-animated-counter.js +15 -11
  627. package/dist/stats-card-group.cjs +26 -6
  628. package/dist/stats-card-group.js +10 -5
  629. package/dist/stats-growth-timeline.cjs +22 -18
  630. package/dist/stats-growth-timeline.js +16 -12
  631. package/dist/stats-icon-cards.cjs +26 -6
  632. package/dist/stats-icon-cards.js +10 -5
  633. package/dist/stats-impact-grid.cjs +23 -19
  634. package/dist/stats-impact-grid.js +16 -12
  635. package/dist/stats-primary-secondary.cjs +26 -6
  636. package/dist/stats-primary-secondary.js +10 -5
  637. package/dist/stats-timeline-tabs.cjs +9 -7
  638. package/dist/stats-timeline-tabs.js +10 -5
  639. package/dist/team-alternating-bios.cjs +17 -13
  640. package/dist/team-alternating-bios.js +17 -13
  641. package/dist/team-avatar-social.cjs +17 -13
  642. package/dist/team-avatar-social.js +17 -13
  643. package/dist/team-bio-badges.cjs +17 -13
  644. package/dist/team-bio-badges.js +17 -13
  645. package/dist/team-carousel-experience.cjs +27 -23
  646. package/dist/team-carousel-experience.js +27 -23
  647. package/dist/team-contact-cards.cjs +18 -14
  648. package/dist/team-contact-cards.js +18 -14
  649. package/dist/team-filterable-search.cjs +22 -18
  650. package/dist/team-filterable-search.js +22 -18
  651. package/dist/team-gradient-cards.cjs +17 -13
  652. package/dist/team-gradient-cards.js +17 -13
  653. package/dist/team-grid-animated.cjs +18 -14
  654. package/dist/team-grid-animated.js +18 -14
  655. package/dist/team-hover-highlight.cjs +17 -13
  656. package/dist/team-hover-highlight.js +17 -13
  657. package/dist/team-hover-overlay.cjs +17 -13
  658. package/dist/team-hover-overlay.js +17 -13
  659. package/dist/team-large-images.cjs +17 -13
  660. package/dist/team-large-images.js +17 -13
  661. package/dist/team-role-filter.cjs +20 -16
  662. package/dist/team-role-filter.js +20 -16
  663. package/dist/team-skill-badges.cjs +17 -13
  664. package/dist/team-skill-badges.js +17 -13
  665. package/dist/team-social-cards.cjs +17 -13
  666. package/dist/team-social-cards.js +17 -13
  667. package/dist/team-social-grid.cjs +17 -13
  668. package/dist/team-social-grid.js +17 -13
  669. package/dist/team-testimonial-stats.cjs +17 -13
  670. package/dist/team-testimonial-stats.js +17 -13
  671. package/dist/testimonial-carousel-cards.cjs +33 -29
  672. package/dist/testimonial-carousel-cards.js +26 -22
  673. package/dist/testimonials-animated-split.cjs +9 -7
  674. package/dist/testimonials-animated-split.js +10 -5
  675. package/dist/testimonials-bento-grid.cjs +9 -7
  676. package/dist/testimonials-bento-grid.js +10 -5
  677. package/dist/testimonials-carousel-image.cjs +18 -14
  678. package/dist/testimonials-carousel-image.js +13 -9
  679. package/dist/testimonials-company-logo.cjs +26 -6
  680. package/dist/testimonials-company-logo.js +10 -5
  681. package/dist/testimonials-grid-add-review.cjs +9 -7
  682. package/dist/testimonials-grid-add-review.js +10 -5
  683. package/dist/testimonials-images-helpful.cjs +21 -17
  684. package/dist/testimonials-images-helpful.js +16 -12
  685. package/dist/testimonials-large-quote.cjs +9 -7
  686. package/dist/testimonials-large-quote.js +10 -5
  687. package/dist/testimonials-list-verified.cjs +9 -7
  688. package/dist/testimonials-list-verified.js +10 -5
  689. package/dist/testimonials-mini-dividers.cjs +9 -7
  690. package/dist/testimonials-mini-dividers.js +10 -5
  691. package/dist/testimonials-minimal-numbered.cjs +9 -7
  692. package/dist/testimonials-minimal-numbered.js +10 -5
  693. package/dist/testimonials-quote-carousel.cjs +31 -27
  694. package/dist/testimonials-quote-carousel.js +26 -22
  695. package/dist/testimonials-scrolling-columns.cjs +26 -6
  696. package/dist/testimonials-scrolling-columns.js +10 -5
  697. package/dist/testimonials-split-image.cjs +9 -7
  698. package/dist/testimonials-split-image.js +10 -5
  699. package/dist/testimonials-stats-header.cjs +9 -7
  700. package/dist/testimonials-stats-header.js +10 -5
  701. package/dist/testimonials-twitter-cards.cjs +19 -15
  702. package/dist/testimonials-twitter-cards.js +16 -12
  703. package/dist/timeline-ai-workflow-cards.cjs +27 -7
  704. package/dist/timeline-ai-workflow-cards.js +10 -5
  705. package/dist/timeline-alternating-diagonal.cjs +12 -8
  706. package/dist/timeline-alternating-diagonal.js +12 -8
  707. package/dist/timeline-horizontal-icons.cjs +10 -8
  708. package/dist/timeline-horizontal-icons.js +10 -5
  709. package/dist/timeline-productivity-list.cjs +27 -7
  710. package/dist/timeline-productivity-list.js +10 -5
  711. package/dist/timeline-stepper-animated.cjs +22 -18
  712. package/dist/timeline-stepper-animated.js +21 -17
  713. package/dist/timeline-tabbed-phases.cjs +6 -2
  714. package/dist/timeline-tabbed-phases.js +6 -2
  715. package/dist/timeline-vertical-icon-dashed.cjs +6 -2
  716. package/dist/timeline-vertical-icon-dashed.js +6 -2
  717. package/package.json +3 -3
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  'use strict';
3
3
 
4
- var React = require('react');
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 React__namespace = /*#__PURE__*/_interopNamespace(React);
32
+ var React2__namespace = /*#__PURE__*/_interopNamespace(React2);
33
33
  var AvatarPrimitive__namespace = /*#__PURE__*/_interopNamespace(AvatarPrimitive);
34
34
 
35
35
  // components/blocks/features/feature-image-cards-three-column.tsx
@@ -37,9 +37,13 @@ function cn(...inputs) {
37
37
  return tailwindMerge.twMerge(clsx.clsx(inputs));
38
38
  }
39
39
  var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
40
- function DynamicIcon({ apiKey, ...props }) {
40
+ var DynamicIcon = React2__namespace.memo(function DynamicIcon2({
41
+ apiKey,
42
+ ...props
43
+ }) {
41
44
  return /* @__PURE__ */ jsxRuntime.jsx(icon.Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
42
- }
45
+ });
46
+ DynamicIcon.displayName = "DynamicIcon";
43
47
  function normalizePhoneNumber(input) {
44
48
  const trimmed = input.trim();
45
49
  if (trimmed.toLowerCase().startsWith("tel:")) {
@@ -115,7 +119,7 @@ function useNavigation({
115
119
  href,
116
120
  onClick
117
121
  } = {}) {
118
- const linkType = React__namespace.useMemo(() => {
122
+ const linkType = React2__namespace.useMemo(() => {
119
123
  if (!href || href.trim() === "") {
120
124
  return onClick ? "none" : "none";
121
125
  }
@@ -136,7 +140,7 @@ function useNavigation({
136
140
  return "internal";
137
141
  }
138
142
  }, [href, onClick]);
139
- const normalizedHref = React__namespace.useMemo(() => {
143
+ const normalizedHref = React2__namespace.useMemo(() => {
140
144
  if (!href || href.trim() === "") {
141
145
  return void 0;
142
146
  }
@@ -154,7 +158,7 @@ function useNavigation({
154
158
  return trimmed;
155
159
  }
156
160
  }, [href, linkType]);
157
- const target = React__namespace.useMemo(() => {
161
+ const target = React2__namespace.useMemo(() => {
158
162
  switch (linkType) {
159
163
  case "external":
160
164
  return "_blank";
@@ -167,7 +171,7 @@ function useNavigation({
167
171
  return void 0;
168
172
  }
169
173
  }, [linkType]);
170
- const rel = React__namespace.useMemo(() => {
174
+ const rel = React2__namespace.useMemo(() => {
171
175
  if (linkType === "external") {
172
176
  return "noopener noreferrer";
173
177
  }
@@ -176,7 +180,7 @@ function useNavigation({
176
180
  const isExternal = linkType === "external";
177
181
  const isInternal = linkType === "internal";
178
182
  const shouldUseRouter = isInternal && typeof normalizedHref === "string" && normalizedHref.startsWith("/");
179
- const handleClick = React__namespace.useCallback(
183
+ const handleClick = React2__namespace.useCallback(
180
184
  (event) => {
181
185
  if (onClick) {
182
186
  try {
@@ -360,7 +364,7 @@ var buttonVariants = classVarianceAuthority.cva(baseStyles, {
360
364
  size: "default"
361
365
  }
362
366
  });
363
- var Pressable = React__namespace.forwardRef(
367
+ var Pressable = React2__namespace.forwardRef(
364
368
  ({
365
369
  children,
366
370
  className,
@@ -496,7 +500,7 @@ var maxWidthStyles = {
496
500
  "4xl": "max-w-[1536px]",
497
501
  full: "max-w-full"
498
502
  };
499
- var Container = React__namespace.default.forwardRef(
503
+ var Container = React2__namespace.default.forwardRef(
500
504
  ({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
501
505
  const Component = as;
502
506
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -802,7 +806,7 @@ var spacingStyles = {
802
806
  };
803
807
  var predefinedSpacings = ["none", "sm", "md", "lg", "xl", "hero"];
804
808
  var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
805
- var Section = React__namespace.default.forwardRef(
809
+ var Section = React2__namespace.default.forwardRef(
806
810
  ({
807
811
  id,
808
812
  title,
@@ -899,12 +903,12 @@ function TextInner({ as, className, children, ...props }, ref) {
899
903
  const Component = as || "span";
900
904
  return /* @__PURE__ */ jsxRuntime.jsx(Component, { ref, className: cn(className), ...props, children });
901
905
  }
902
- var Text = React__namespace.forwardRef(TextInner);
906
+ var Text = React2__namespace.forwardRef(TextInner);
903
907
  Text.displayName = "Text";
904
908
  function isContentTextItem(item) {
905
- return item !== null && typeof item === "object" && !React__namespace.isValidElement(item) && "_type" in item && item._type === "text";
909
+ return item !== null && typeof item === "object" && !React2__namespace.isValidElement(item) && "_type" in item && item._type === "text";
906
910
  }
907
- var ContentGroup = React__namespace.forwardRef(
911
+ var ContentGroup = React2__namespace.forwardRef(
908
912
  ({ items, className, children, ...props }, ref) => {
909
913
  const hasContent = items && items.length > 0;
910
914
  if (!hasContent) {
@@ -917,10 +921,10 @@ var ContentGroup = React__namespace.forwardRef(
917
921
  return /* @__PURE__ */ jsxRuntime.jsx(Text, { ...textProps }, idx);
918
922
  }
919
923
  const reactNode = item;
920
- if (React__namespace.isValidElement(reactNode)) {
921
- return React__namespace.cloneElement(reactNode, { key: reactNode.key ?? idx });
924
+ if (React2__namespace.isValidElement(reactNode)) {
925
+ return React2__namespace.cloneElement(reactNode, { key: reactNode.key ?? idx });
922
926
  }
923
- return /* @__PURE__ */ jsxRuntime.jsx(React__namespace.Fragment, { children: reactNode }, idx);
927
+ return /* @__PURE__ */ jsxRuntime.jsx(React2__namespace.Fragment, { children: reactNode }, idx);
924
928
  }),
925
929
  children
926
930
  ] });
@@ -952,7 +956,7 @@ function FeatureImageCardsThreeColumn({
952
956
  patternClassName,
953
957
  cardAspectRatios = { desktop: "vertical", mobile: "square" }
954
958
  }) {
955
- const renderImage = React.useCallback(
959
+ const renderImage = React2.useCallback(
956
960
  (card, imageAlt) => {
957
961
  if (card.imageSlot) return card.imageSlot;
958
962
  if (!card.imageSrc) return null;
@@ -969,7 +973,7 @@ function FeatureImageCardsThreeColumn({
969
973
  },
970
974
  [optixFlowConfig]
971
975
  );
972
- const renderBadgeIcon = React.useCallback(
976
+ const renderBadgeIcon = React2.useCallback(
973
977
  (card) => {
974
978
  if (card.avatarSrc) {
975
979
  return /* @__PURE__ */ jsxRuntime.jsx(Avatar, { className: "size-7 rounded-full", children: /* @__PURE__ */ jsxRuntime.jsx(AvatarImage, { src: card.avatarSrc, alt: "Avatar" }) });
@@ -980,7 +984,7 @@ function FeatureImageCardsThreeColumn({
980
984
  },
981
985
  []
982
986
  );
983
- const renderCardBadge = React.useCallback(
987
+ const renderCardBadge = React2.useCallback(
984
988
  (card) => {
985
989
  return card.badgeText || card.avatarSrc || card.icon || card.iconName ? /* @__PURE__ */ jsxRuntime.jsxs(
986
990
  Badge,
@@ -996,14 +1000,14 @@ function FeatureImageCardsThreeColumn({
996
1000
  },
997
1001
  [renderBadgeIcon]
998
1002
  );
999
- const cardHasTextContent = React.useCallback(
1003
+ const cardHasTextContent = React2.useCallback(
1000
1004
  (card) => {
1001
1005
  const hasBadge = !!(card.badgeText || card.avatarSrc || card.icon || card.iconName);
1002
1006
  return hasBadge || !!card.title || !!card.subtitle || !!card.linkText;
1003
1007
  },
1004
1008
  []
1005
1009
  );
1006
- const renderCardText = React.useCallback(
1010
+ const renderCardText = React2.useCallback(
1007
1011
  (card) => {
1008
1012
  if (!cardHasTextContent(card)) {
1009
1013
  return null;
@@ -1052,7 +1056,7 @@ function FeatureImageCardsThreeColumn({
1052
1056
  },
1053
1057
  [cardHasTextContent, renderCardBadge]
1054
1058
  );
1055
- const cardsContent = React.useMemo(() => {
1059
+ const cardsContent = React2.useMemo(() => {
1056
1060
  if (cardsSlot) return cardsSlot;
1057
1061
  if (!cards || cards.length === 0) return null;
1058
1062
  return cards.map((card, index) => {
@@ -1091,7 +1095,7 @@ function FeatureImageCardsThreeColumn({
1091
1095
  cardHasTextContent,
1092
1096
  renderCardText
1093
1097
  ]);
1094
- const contentItems = React.useMemo(() => {
1098
+ const contentItems = React2.useMemo(() => {
1095
1099
  const items = [];
1096
1100
  if (title) {
1097
1101
  if (typeof title === "string") {
@@ -1,6 +1,6 @@
1
1
  "use client";
2
- import * as React from 'react';
3
- import React__default, { useCallback, useMemo } from 'react';
2
+ import * as React2 from 'react';
3
+ import React2__default, { useCallback, 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
- function DynamicIcon({ apiKey, ...props }) {
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 = React.useMemo(() => {
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 = React.useMemo(() => {
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 = React.useMemo(() => {
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 = React.useMemo(() => {
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 = React.useCallback(
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 = React.forwardRef(
345
+ var Pressable = React2.forwardRef(
342
346
  ({
343
347
  children,
344
348
  className,
@@ -474,7 +478,7 @@ var maxWidthStyles = {
474
478
  "4xl": "max-w-[1536px]",
475
479
  full: "max-w-full"
476
480
  };
477
- var Container = React__default.forwardRef(
481
+ var Container = React2__default.forwardRef(
478
482
  ({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
479
483
  const Component = as;
480
484
  return /* @__PURE__ */ jsx(
@@ -780,7 +784,7 @@ var spacingStyles = {
780
784
  };
781
785
  var predefinedSpacings = ["none", "sm", "md", "lg", "xl", "hero"];
782
786
  var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
783
- var Section = React__default.forwardRef(
787
+ var Section = React2__default.forwardRef(
784
788
  ({
785
789
  id,
786
790
  title,
@@ -877,12 +881,12 @@ function TextInner({ as, className, children, ...props }, ref) {
877
881
  const Component = as || "span";
878
882
  return /* @__PURE__ */ jsx(Component, { ref, className: cn(className), ...props, children });
879
883
  }
880
- var Text = React.forwardRef(TextInner);
884
+ var Text = React2.forwardRef(TextInner);
881
885
  Text.displayName = "Text";
882
886
  function isContentTextItem(item) {
883
- return item !== null && typeof item === "object" && !React.isValidElement(item) && "_type" in item && item._type === "text";
887
+ return item !== null && typeof item === "object" && !React2.isValidElement(item) && "_type" in item && item._type === "text";
884
888
  }
885
- var ContentGroup = React.forwardRef(
889
+ var ContentGroup = React2.forwardRef(
886
890
  ({ items, className, children, ...props }, ref) => {
887
891
  const hasContent = items && items.length > 0;
888
892
  if (!hasContent) {
@@ -895,10 +899,10 @@ var ContentGroup = React.forwardRef(
895
899
  return /* @__PURE__ */ jsx(Text, { ...textProps }, idx);
896
900
  }
897
901
  const reactNode = item;
898
- if (React.isValidElement(reactNode)) {
899
- return React.cloneElement(reactNode, { key: reactNode.key ?? idx });
902
+ if (React2.isValidElement(reactNode)) {
903
+ return React2.cloneElement(reactNode, { key: reactNode.key ?? idx });
900
904
  }
901
- return /* @__PURE__ */ jsx(React.Fragment, { children: reactNode }, idx);
905
+ return /* @__PURE__ */ jsx(React2.Fragment, { children: reactNode }, idx);
902
906
  }),
903
907
  children
904
908
  ] });
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  'use strict';
3
3
 
4
- var React = require('react');
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 React__namespace = /*#__PURE__*/_interopNamespace(React);
32
+ var React2__namespace = /*#__PURE__*/_interopNamespace(React2);
33
33
  var AvatarPrimitive__namespace = /*#__PURE__*/_interopNamespace(AvatarPrimitive);
34
34
 
35
35
  // components/blocks/features/feature-image-overlay-badge.tsx
@@ -63,9 +63,13 @@ function getTextColor(parentBg, variant = "default", options) {
63
63
  }
64
64
  }
65
65
  var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
66
- function DynamicIcon({ apiKey, ...props }) {
66
+ var DynamicIcon = React2__namespace.memo(function DynamicIcon2({
67
+ apiKey,
68
+ ...props
69
+ }) {
67
70
  return /* @__PURE__ */ jsxRuntime.jsx(icon.Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
68
- }
71
+ });
72
+ DynamicIcon.displayName = "DynamicIcon";
69
73
  function normalizePhoneNumber(input) {
70
74
  const trimmed = input.trim();
71
75
  if (trimmed.toLowerCase().startsWith("tel:")) {
@@ -141,7 +145,7 @@ function useNavigation({
141
145
  href,
142
146
  onClick
143
147
  } = {}) {
144
- const linkType = React__namespace.useMemo(() => {
148
+ const linkType = React2__namespace.useMemo(() => {
145
149
  if (!href || href.trim() === "") {
146
150
  return onClick ? "none" : "none";
147
151
  }
@@ -162,7 +166,7 @@ function useNavigation({
162
166
  return "internal";
163
167
  }
164
168
  }, [href, onClick]);
165
- const normalizedHref = React__namespace.useMemo(() => {
169
+ const normalizedHref = React2__namespace.useMemo(() => {
166
170
  if (!href || href.trim() === "") {
167
171
  return void 0;
168
172
  }
@@ -180,7 +184,7 @@ function useNavigation({
180
184
  return trimmed;
181
185
  }
182
186
  }, [href, linkType]);
183
- const target = React__namespace.useMemo(() => {
187
+ const target = React2__namespace.useMemo(() => {
184
188
  switch (linkType) {
185
189
  case "external":
186
190
  return "_blank";
@@ -193,7 +197,7 @@ function useNavigation({
193
197
  return void 0;
194
198
  }
195
199
  }, [linkType]);
196
- const rel = React__namespace.useMemo(() => {
200
+ const rel = React2__namespace.useMemo(() => {
197
201
  if (linkType === "external") {
198
202
  return "noopener noreferrer";
199
203
  }
@@ -202,7 +206,7 @@ function useNavigation({
202
206
  const isExternal = linkType === "external";
203
207
  const isInternal = linkType === "internal";
204
208
  const shouldUseRouter = isInternal && typeof normalizedHref === "string" && normalizedHref.startsWith("/");
205
- const handleClick = React__namespace.useCallback(
209
+ const handleClick = React2__namespace.useCallback(
206
210
  (event) => {
207
211
  if (onClick) {
208
212
  try {
@@ -386,7 +390,7 @@ var buttonVariants = classVarianceAuthority.cva(baseStyles, {
386
390
  size: "default"
387
391
  }
388
392
  });
389
- var Pressable = React__namespace.forwardRef(
393
+ var Pressable = React2__namespace.forwardRef(
390
394
  ({
391
395
  children,
392
396
  className,
@@ -554,7 +558,7 @@ var maxWidthStyles = {
554
558
  "4xl": "max-w-[1536px]",
555
559
  full: "max-w-full"
556
560
  };
557
- var Container = React__namespace.default.forwardRef(
561
+ var Container = React2__namespace.default.forwardRef(
558
562
  ({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
559
563
  const Component = as;
560
564
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -860,7 +864,7 @@ var spacingStyles = {
860
864
  };
861
865
  var predefinedSpacings = ["none", "sm", "md", "lg", "xl", "hero"];
862
866
  var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
863
- var Section = React__namespace.default.forwardRef(
867
+ var Section = React2__namespace.default.forwardRef(
864
868
  ({
865
869
  id,
866
870
  title,
@@ -956,7 +960,7 @@ function FeatureImageOverlayBadge({
956
960
  patternOpacity,
957
961
  patternClassName
958
962
  }) {
959
- const actionsContent = React.useMemo(() => {
963
+ const actionsContent = React2.useMemo(() => {
960
964
  if (actionsSlot) return actionsSlot;
961
965
  if (!actions || actions.length === 0) return null;
962
966
  return actions.map((action, index) => {
@@ -996,7 +1000,7 @@ function FeatureImageOverlayBadge({
996
1000
  );
997
1001
  });
998
1002
  }, [actionsSlot, actions]);
999
- const imageContent = React.useMemo(() => {
1003
+ const imageContent = React2.useMemo(() => {
1000
1004
  if (imageSlot) return imageSlot;
1001
1005
  if (imageSrc) {
1002
1006
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -1,6 +1,6 @@
1
1
  "use client";
2
- import * as React from 'react';
3
- import React__default, { useMemo } from 'react';
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';
@@ -41,9 +41,13 @@ function getTextColor(parentBg, variant = "default", options) {
41
41
  }
42
42
  }
43
43
  var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
44
- function DynamicIcon({ apiKey, ...props }) {
44
+ var DynamicIcon = React2.memo(function DynamicIcon2({
45
+ apiKey,
46
+ ...props
47
+ }) {
45
48
  return /* @__PURE__ */ jsx(Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
46
- }
49
+ });
50
+ DynamicIcon.displayName = "DynamicIcon";
47
51
  function normalizePhoneNumber(input) {
48
52
  const trimmed = input.trim();
49
53
  if (trimmed.toLowerCase().startsWith("tel:")) {
@@ -119,7 +123,7 @@ function useNavigation({
119
123
  href,
120
124
  onClick
121
125
  } = {}) {
122
- const linkType = React.useMemo(() => {
126
+ const linkType = React2.useMemo(() => {
123
127
  if (!href || href.trim() === "") {
124
128
  return onClick ? "none" : "none";
125
129
  }
@@ -140,7 +144,7 @@ function useNavigation({
140
144
  return "internal";
141
145
  }
142
146
  }, [href, onClick]);
143
- const normalizedHref = React.useMemo(() => {
147
+ const normalizedHref = React2.useMemo(() => {
144
148
  if (!href || href.trim() === "") {
145
149
  return void 0;
146
150
  }
@@ -158,7 +162,7 @@ function useNavigation({
158
162
  return trimmed;
159
163
  }
160
164
  }, [href, linkType]);
161
- const target = React.useMemo(() => {
165
+ const target = React2.useMemo(() => {
162
166
  switch (linkType) {
163
167
  case "external":
164
168
  return "_blank";
@@ -171,7 +175,7 @@ function useNavigation({
171
175
  return void 0;
172
176
  }
173
177
  }, [linkType]);
174
- const rel = React.useMemo(() => {
178
+ const rel = React2.useMemo(() => {
175
179
  if (linkType === "external") {
176
180
  return "noopener noreferrer";
177
181
  }
@@ -180,7 +184,7 @@ function useNavigation({
180
184
  const isExternal = linkType === "external";
181
185
  const isInternal = linkType === "internal";
182
186
  const shouldUseRouter = isInternal && typeof normalizedHref === "string" && normalizedHref.startsWith("/");
183
- const handleClick = React.useCallback(
187
+ const handleClick = React2.useCallback(
184
188
  (event) => {
185
189
  if (onClick) {
186
190
  try {
@@ -364,7 +368,7 @@ var buttonVariants = cva(baseStyles, {
364
368
  size: "default"
365
369
  }
366
370
  });
367
- var Pressable = React.forwardRef(
371
+ var Pressable = React2.forwardRef(
368
372
  ({
369
373
  children,
370
374
  className,
@@ -532,7 +536,7 @@ var maxWidthStyles = {
532
536
  "4xl": "max-w-[1536px]",
533
537
  full: "max-w-full"
534
538
  };
535
- var Container = React__default.forwardRef(
539
+ var Container = React2__default.forwardRef(
536
540
  ({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
537
541
  const Component = as;
538
542
  return /* @__PURE__ */ jsx(
@@ -838,7 +842,7 @@ var spacingStyles = {
838
842
  };
839
843
  var predefinedSpacings = ["none", "sm", "md", "lg", "xl", "hero"];
840
844
  var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
841
- var Section = React__default.forwardRef(
845
+ var Section = React2__default.forwardRef(
842
846
  ({
843
847
  id,
844
848
  title,
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  'use strict';
3
3
 
4
- var React3 = require('react');
4
+ var React4 = require('react');
5
5
  var clsx = require('clsx');
6
6
  var tailwindMerge = require('tailwind-merge');
7
7
  var icon = require('@page-speed/icon');
@@ -27,16 +27,20 @@ function _interopNamespace(e) {
27
27
  return Object.freeze(n);
28
28
  }
29
29
 
30
- var React3__namespace = /*#__PURE__*/_interopNamespace(React3);
30
+ var React4__namespace = /*#__PURE__*/_interopNamespace(React4);
31
31
 
32
32
  // components/blocks/features/feature-numbered-cards.tsx
33
33
  function cn(...inputs) {
34
34
  return tailwindMerge.twMerge(clsx.clsx(inputs));
35
35
  }
36
36
  var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
37
- function DynamicIcon({ apiKey, ...props }) {
37
+ var DynamicIcon = React4__namespace.memo(function DynamicIcon2({
38
+ apiKey,
39
+ ...props
40
+ }) {
38
41
  return /* @__PURE__ */ jsxRuntime.jsx(icon.Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
39
- }
42
+ });
43
+ DynamicIcon.displayName = "DynamicIcon";
40
44
  var maxWidthStyles = {
41
45
  sm: "max-w-screen-sm",
42
46
  md: "max-w-screen-md",
@@ -46,7 +50,7 @@ var maxWidthStyles = {
46
50
  "4xl": "max-w-[1536px]",
47
51
  full: "max-w-full"
48
52
  };
49
- var Container = React3__namespace.default.forwardRef(
53
+ var Container = React4__namespace.default.forwardRef(
50
54
  ({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
51
55
  const Component = as;
52
56
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -352,7 +356,7 @@ var spacingStyles = {
352
356
  };
353
357
  var predefinedSpacings = ["none", "sm", "md", "lg", "xl", "hero"];
354
358
  var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
355
- var Section = React3__namespace.default.forwardRef(
359
+ var Section = React4__namespace.default.forwardRef(
356
360
  ({
357
361
  id,
358
362
  title,
@@ -488,7 +492,7 @@ function useNavigation({
488
492
  href,
489
493
  onClick
490
494
  } = {}) {
491
- const linkType = React3__namespace.useMemo(() => {
495
+ const linkType = React4__namespace.useMemo(() => {
492
496
  if (!href || href.trim() === "") {
493
497
  return onClick ? "none" : "none";
494
498
  }
@@ -509,7 +513,7 @@ function useNavigation({
509
513
  return "internal";
510
514
  }
511
515
  }, [href, onClick]);
512
- const normalizedHref = React3__namespace.useMemo(() => {
516
+ const normalizedHref = React4__namespace.useMemo(() => {
513
517
  if (!href || href.trim() === "") {
514
518
  return void 0;
515
519
  }
@@ -527,7 +531,7 @@ function useNavigation({
527
531
  return trimmed;
528
532
  }
529
533
  }, [href, linkType]);
530
- const target = React3__namespace.useMemo(() => {
534
+ const target = React4__namespace.useMemo(() => {
531
535
  switch (linkType) {
532
536
  case "external":
533
537
  return "_blank";
@@ -540,7 +544,7 @@ function useNavigation({
540
544
  return void 0;
541
545
  }
542
546
  }, [linkType]);
543
- const rel = React3__namespace.useMemo(() => {
547
+ const rel = React4__namespace.useMemo(() => {
544
548
  if (linkType === "external") {
545
549
  return "noopener noreferrer";
546
550
  }
@@ -549,7 +553,7 @@ function useNavigation({
549
553
  const isExternal = linkType === "external";
550
554
  const isInternal = linkType === "internal";
551
555
  const shouldUseRouter = isInternal && typeof normalizedHref === "string" && normalizedHref.startsWith("/");
552
- const handleClick = React3__namespace.useCallback(
556
+ const handleClick = React4__namespace.useCallback(
553
557
  (event) => {
554
558
  if (onClick) {
555
559
  try {
@@ -733,7 +737,7 @@ var buttonVariants = classVarianceAuthority.cva(baseStyles, {
733
737
  size: "default"
734
738
  }
735
739
  });
736
- var Pressable = React3__namespace.forwardRef(
740
+ var Pressable = React4__namespace.forwardRef(
737
741
  ({
738
742
  children,
739
743
  className,
@@ -851,7 +855,7 @@ function FeatureNumberedCards({
851
855
  patternOpacity,
852
856
  patternClassName
853
857
  }) {
854
- const renderChecklistItems = React3.useCallback(
858
+ const renderChecklistItems = React4.useCallback(
855
859
  (feature) => {
856
860
  if (feature.checklistSlot) return feature.checklistSlot;
857
861
  if (!feature.checklistItems || feature.checklistItems.length === 0)
@@ -890,7 +894,7 @@ function FeatureNumberedCards({
890
894
  },
891
895
  []
892
896
  );
893
- const actionsContent = React3.useCallback(
897
+ const actionsContent = React4.useCallback(
894
898
  (args) => {
895
899
  if (args?.actionsSlot) return args.actionsSlot;
896
900
  if (!args?.actions || args.actions.length === 0) return null;
@@ -921,7 +925,7 @@ function FeatureNumberedCards({
921
925
  },
922
926
  []
923
927
  );
924
- const cardImg = React3.useCallback((feature) => {
928
+ const cardImg = React4.useCallback((feature) => {
925
929
  if (!feature.image && !feature.imageSlot) return null;
926
930
  if (feature.imageSlot) return feature.imageSlot;
927
931
  const imageAlt = feature.imageAlt || (typeof feature.title === "string" ? feature.title : "Feature image");
@@ -936,7 +940,7 @@ function FeatureNumberedCards({
936
940
  }
937
941
  ) });
938
942
  }, []);
939
- const featuresContent = React3.useMemo(() => {
943
+ const featuresContent = React4.useMemo(() => {
940
944
  if (featuresSlot) return featuresSlot;
941
945
  if (!features || features.length === 0) return null;
942
946
  return features.map((feature, index) => {