@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
@@ -3,9 +3,9 @@
3
3
 
4
4
  var clsx = require('clsx');
5
5
  var tailwindMerge = require('tailwind-merge');
6
+ var React2 = require('react');
6
7
  var icon = require('@page-speed/icon');
7
8
  var jsxRuntime = require('react/jsx-runtime');
8
- var React = require('react');
9
9
  var classVarianceAuthority = require('class-variance-authority');
10
10
  var AccordionPrimitive = require('@radix-ui/react-accordion');
11
11
 
@@ -27,7 +27,7 @@ function _interopNamespace(e) {
27
27
  return Object.freeze(n);
28
28
  }
29
29
 
30
- var React__namespace = /*#__PURE__*/_interopNamespace(React);
30
+ var React2__namespace = /*#__PURE__*/_interopNamespace(React2);
31
31
  var AccordionPrimitive__namespace = /*#__PURE__*/_interopNamespace(AccordionPrimitive);
32
32
 
33
33
  // lib/utils.ts
@@ -35,9 +35,13 @@ function cn(...inputs) {
35
35
  return tailwindMerge.twMerge(clsx.clsx(inputs));
36
36
  }
37
37
  var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
38
- function DynamicIcon({ apiKey, ...props }) {
38
+ var DynamicIcon = React2__namespace.memo(function DynamicIcon2({
39
+ apiKey,
40
+ ...props
41
+ }) {
39
42
  return /* @__PURE__ */ jsxRuntime.jsx(icon.Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
40
- }
43
+ });
44
+ DynamicIcon.displayName = "DynamicIcon";
41
45
  function normalizePhoneNumber(input) {
42
46
  const trimmed = input.trim();
43
47
  if (trimmed.toLowerCase().startsWith("tel:")) {
@@ -113,7 +117,7 @@ function useNavigation({
113
117
  href,
114
118
  onClick
115
119
  } = {}) {
116
- const linkType = React__namespace.useMemo(() => {
120
+ const linkType = React2__namespace.useMemo(() => {
117
121
  if (!href || href.trim() === "") {
118
122
  return onClick ? "none" : "none";
119
123
  }
@@ -134,7 +138,7 @@ function useNavigation({
134
138
  return "internal";
135
139
  }
136
140
  }, [href, onClick]);
137
- const normalizedHref = React__namespace.useMemo(() => {
141
+ const normalizedHref = React2__namespace.useMemo(() => {
138
142
  if (!href || href.trim() === "") {
139
143
  return void 0;
140
144
  }
@@ -152,7 +156,7 @@ function useNavigation({
152
156
  return trimmed;
153
157
  }
154
158
  }, [href, linkType]);
155
- const target = React__namespace.useMemo(() => {
159
+ const target = React2__namespace.useMemo(() => {
156
160
  switch (linkType) {
157
161
  case "external":
158
162
  return "_blank";
@@ -165,7 +169,7 @@ function useNavigation({
165
169
  return void 0;
166
170
  }
167
171
  }, [linkType]);
168
- const rel = React__namespace.useMemo(() => {
172
+ const rel = React2__namespace.useMemo(() => {
169
173
  if (linkType === "external") {
170
174
  return "noopener noreferrer";
171
175
  }
@@ -174,7 +178,7 @@ function useNavigation({
174
178
  const isExternal = linkType === "external";
175
179
  const isInternal = linkType === "internal";
176
180
  const shouldUseRouter = isInternal && typeof normalizedHref === "string" && normalizedHref.startsWith("/");
177
- const handleClick = React__namespace.useCallback(
181
+ const handleClick = React2__namespace.useCallback(
178
182
  (event) => {
179
183
  if (onClick) {
180
184
  try {
@@ -358,7 +362,7 @@ var buttonVariants = classVarianceAuthority.cva(baseStyles, {
358
362
  size: "default"
359
363
  }
360
364
  });
361
- var Pressable = React__namespace.forwardRef(
365
+ var Pressable = React2__namespace.forwardRef(
362
366
  ({
363
367
  children,
364
368
  className,
@@ -525,7 +529,7 @@ var maxWidthStyles = {
525
529
  "4xl": "max-w-[1536px]",
526
530
  full: "max-w-full"
527
531
  };
528
- var Container = React__namespace.default.forwardRef(
532
+ var Container = React2__namespace.default.forwardRef(
529
533
  ({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
530
534
  const Component = as;
531
535
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -831,7 +835,7 @@ var spacingStyles = {
831
835
  };
832
836
  var predefinedSpacings = ["none", "sm", "md", "lg", "xl", "hero"];
833
837
  var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
834
- var Section = React__namespace.default.forwardRef(
838
+ var Section = React2__namespace.default.forwardRef(
835
839
  ({
836
840
  id,
837
841
  title,
@@ -1,10 +1,10 @@
1
1
  "use client";
2
2
  import { clsx } from 'clsx';
3
3
  import { twMerge } from 'tailwind-merge';
4
+ import * as React2 from 'react';
5
+ import React2__default from 'react';
4
6
  import { Icon } from '@page-speed/icon';
5
7
  import { jsx, jsxs } from 'react/jsx-runtime';
6
- import * as React from 'react';
7
- import React__default from 'react';
8
8
  import { cva } from 'class-variance-authority';
9
9
  import * as AccordionPrimitive from '@radix-ui/react-accordion';
10
10
 
@@ -13,9 +13,13 @@ function cn(...inputs) {
13
13
  return twMerge(clsx(inputs));
14
14
  }
15
15
  var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
16
- function DynamicIcon({ apiKey, ...props }) {
16
+ var DynamicIcon = React2.memo(function DynamicIcon2({
17
+ apiKey,
18
+ ...props
19
+ }) {
17
20
  return /* @__PURE__ */ jsx(Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
18
- }
21
+ });
22
+ DynamicIcon.displayName = "DynamicIcon";
19
23
  function normalizePhoneNumber(input) {
20
24
  const trimmed = input.trim();
21
25
  if (trimmed.toLowerCase().startsWith("tel:")) {
@@ -91,7 +95,7 @@ function useNavigation({
91
95
  href,
92
96
  onClick
93
97
  } = {}) {
94
- const linkType = React.useMemo(() => {
98
+ const linkType = React2.useMemo(() => {
95
99
  if (!href || href.trim() === "") {
96
100
  return onClick ? "none" : "none";
97
101
  }
@@ -112,7 +116,7 @@ function useNavigation({
112
116
  return "internal";
113
117
  }
114
118
  }, [href, onClick]);
115
- const normalizedHref = React.useMemo(() => {
119
+ const normalizedHref = React2.useMemo(() => {
116
120
  if (!href || href.trim() === "") {
117
121
  return void 0;
118
122
  }
@@ -130,7 +134,7 @@ function useNavigation({
130
134
  return trimmed;
131
135
  }
132
136
  }, [href, linkType]);
133
- const target = React.useMemo(() => {
137
+ const target = React2.useMemo(() => {
134
138
  switch (linkType) {
135
139
  case "external":
136
140
  return "_blank";
@@ -143,7 +147,7 @@ function useNavigation({
143
147
  return void 0;
144
148
  }
145
149
  }, [linkType]);
146
- const rel = React.useMemo(() => {
150
+ const rel = React2.useMemo(() => {
147
151
  if (linkType === "external") {
148
152
  return "noopener noreferrer";
149
153
  }
@@ -152,7 +156,7 @@ function useNavigation({
152
156
  const isExternal = linkType === "external";
153
157
  const isInternal = linkType === "internal";
154
158
  const shouldUseRouter = isInternal && typeof normalizedHref === "string" && normalizedHref.startsWith("/");
155
- const handleClick = React.useCallback(
159
+ const handleClick = React2.useCallback(
156
160
  (event) => {
157
161
  if (onClick) {
158
162
  try {
@@ -336,7 +340,7 @@ var buttonVariants = cva(baseStyles, {
336
340
  size: "default"
337
341
  }
338
342
  });
339
- var Pressable = React.forwardRef(
343
+ var Pressable = React2.forwardRef(
340
344
  ({
341
345
  children,
342
346
  className,
@@ -503,7 +507,7 @@ var maxWidthStyles = {
503
507
  "4xl": "max-w-[1536px]",
504
508
  full: "max-w-full"
505
509
  };
506
- var Container = React__default.forwardRef(
510
+ var Container = React2__default.forwardRef(
507
511
  ({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
508
512
  const Component = as;
509
513
  return /* @__PURE__ */ jsx(
@@ -809,7 +813,7 @@ var spacingStyles = {
809
813
  };
810
814
  var predefinedSpacings = ["none", "sm", "md", "lg", "xl", "hero"];
811
815
  var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
812
- var Section = React__default.forwardRef(
816
+ var Section = React2__default.forwardRef(
813
817
  ({
814
818
  id,
815
819
  title,
@@ -3,12 +3,10 @@
3
3
 
4
4
  var clsx = require('clsx');
5
5
  var tailwindMerge = require('tailwind-merge');
6
+ var React = require('react');
6
7
  var icon = require('@page-speed/icon');
7
8
  var jsxRuntime = require('react/jsx-runtime');
8
9
  var AccordionPrimitive = require('@radix-ui/react-accordion');
9
- var React = require('react');
10
-
11
- function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
12
10
 
13
11
  function _interopNamespace(e) {
14
12
  if (e && e.__esModule) return e;
@@ -28,8 +26,8 @@ function _interopNamespace(e) {
28
26
  return Object.freeze(n);
29
27
  }
30
28
 
29
+ var React__namespace = /*#__PURE__*/_interopNamespace(React);
31
30
  var AccordionPrimitive__namespace = /*#__PURE__*/_interopNamespace(AccordionPrimitive);
32
- var React__default = /*#__PURE__*/_interopDefault(React);
33
31
 
34
32
  // lib/utils.ts
35
33
  function cn(...inputs) {
@@ -66,9 +64,13 @@ function getNestedCardTextColor(parentBg, options) {
66
64
  return isDark ? "text-foreground" : "";
67
65
  }
68
66
  var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
69
- function DynamicIcon({ apiKey, ...props }) {
67
+ var DynamicIcon = React__namespace.memo(function DynamicIcon2({
68
+ apiKey,
69
+ ...props
70
+ }) {
70
71
  return /* @__PURE__ */ jsxRuntime.jsx(icon.Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
71
- }
72
+ });
73
+ DynamicIcon.displayName = "DynamicIcon";
72
74
  function Accordion({
73
75
  ...props
74
76
  }) {
@@ -138,7 +140,7 @@ var maxWidthStyles = {
138
140
  "4xl": "max-w-[1536px]",
139
141
  full: "max-w-full"
140
142
  };
141
- var Container = React__default.default.forwardRef(
143
+ var Container = React__namespace.default.forwardRef(
142
144
  ({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
143
145
  const Component = as;
144
146
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -444,7 +446,7 @@ var spacingStyles = {
444
446
  };
445
447
  var predefinedSpacings = ["none", "sm", "md", "lg", "xl", "hero"];
446
448
  var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
447
- var Section = React__default.default.forwardRef(
449
+ var Section = React__namespace.default.forwardRef(
448
450
  ({
449
451
  id,
450
452
  title,
@@ -1,10 +1,11 @@
1
1
  "use client";
2
2
  import { clsx } from 'clsx';
3
3
  import { twMerge } from 'tailwind-merge';
4
+ import * as React from 'react';
5
+ import React__default from 'react';
4
6
  import { Icon } from '@page-speed/icon';
5
7
  import { jsx, jsxs } from 'react/jsx-runtime';
6
8
  import * as AccordionPrimitive from '@radix-ui/react-accordion';
7
- import React from 'react';
8
9
 
9
10
  // lib/utils.ts
10
11
  function cn(...inputs) {
@@ -41,9 +42,13 @@ function getNestedCardTextColor(parentBg, options) {
41
42
  return isDark ? "text-foreground" : "";
42
43
  }
43
44
  var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
44
- function DynamicIcon({ apiKey, ...props }) {
45
+ var DynamicIcon = React.memo(function DynamicIcon2({
46
+ apiKey,
47
+ ...props
48
+ }) {
45
49
  return /* @__PURE__ */ jsx(Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
46
- }
50
+ });
51
+ DynamicIcon.displayName = "DynamicIcon";
47
52
  function Accordion({
48
53
  ...props
49
54
  }) {
@@ -113,7 +118,7 @@ var maxWidthStyles = {
113
118
  "4xl": "max-w-[1536px]",
114
119
  full: "max-w-full"
115
120
  };
116
- var Container = React.forwardRef(
121
+ var Container = React__default.forwardRef(
117
122
  ({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
118
123
  const Component = as;
119
124
  return /* @__PURE__ */ jsx(
@@ -419,7 +424,7 @@ var spacingStyles = {
419
424
  };
420
425
  var predefinedSpacings = ["none", "sm", "md", "lg", "xl", "hero"];
421
426
  var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
422
- var Section = React.forwardRef(
427
+ var Section = React__default.forwardRef(
423
428
  ({
424
429
  id,
425
430
  title,
@@ -3,9 +3,9 @@
3
3
 
4
4
  var clsx = require('clsx');
5
5
  var tailwindMerge = require('tailwind-merge');
6
+ var React2 = require('react');
6
7
  var icon = require('@page-speed/icon');
7
8
  var jsxRuntime = require('react/jsx-runtime');
8
- var React = require('react');
9
9
  var classVarianceAuthority = require('class-variance-authority');
10
10
 
11
11
  function _interopNamespace(e) {
@@ -26,7 +26,7 @@ function _interopNamespace(e) {
26
26
  return Object.freeze(n);
27
27
  }
28
28
 
29
- var React__namespace = /*#__PURE__*/_interopNamespace(React);
29
+ var React2__namespace = /*#__PURE__*/_interopNamespace(React2);
30
30
 
31
31
  // lib/utils.ts
32
32
  function cn(...inputs) {
@@ -63,9 +63,13 @@ function getNestedCardTextColor(parentBg, options) {
63
63
  return isDark ? "text-foreground" : "";
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,
@@ -493,7 +497,7 @@ var maxWidthStyles = {
493
497
  "4xl": "max-w-[1536px]",
494
498
  full: "max-w-full"
495
499
  };
496
- var Container = React__namespace.default.forwardRef(
500
+ var Container = React2__namespace.default.forwardRef(
497
501
  ({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
498
502
  const Component = as;
499
503
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -799,7 +803,7 @@ var spacingStyles = {
799
803
  };
800
804
  var predefinedSpacings = ["none", "sm", "md", "lg", "xl", "hero"];
801
805
  var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
802
- var Section = React__namespace.default.forwardRef(
806
+ var Section = React2__namespace.default.forwardRef(
803
807
  ({
804
808
  id,
805
809
  title,
@@ -1,10 +1,10 @@
1
1
  "use client";
2
2
  import { clsx } from 'clsx';
3
3
  import { twMerge } from 'tailwind-merge';
4
+ import * as React2 from 'react';
5
+ import React2__default from 'react';
4
6
  import { Icon } from '@page-speed/icon';
5
7
  import { jsx, jsxs } from 'react/jsx-runtime';
6
- import * as React from 'react';
7
- import React__default from 'react';
8
8
  import { cva } from 'class-variance-authority';
9
9
 
10
10
  // lib/utils.ts
@@ -42,9 +42,13 @@ function getNestedCardTextColor(parentBg, options) {
42
42
  return isDark ? "text-foreground" : "";
43
43
  }
44
44
  var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
45
- function DynamicIcon({ apiKey, ...props }) {
45
+ var DynamicIcon = React2.memo(function DynamicIcon2({
46
+ apiKey,
47
+ ...props
48
+ }) {
46
49
  return /* @__PURE__ */ jsx(Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
47
- }
50
+ });
51
+ DynamicIcon.displayName = "DynamicIcon";
48
52
  function normalizePhoneNumber(input) {
49
53
  const trimmed = input.trim();
50
54
  if (trimmed.toLowerCase().startsWith("tel:")) {
@@ -120,7 +124,7 @@ function useNavigation({
120
124
  href,
121
125
  onClick
122
126
  } = {}) {
123
- const linkType = React.useMemo(() => {
127
+ const linkType = React2.useMemo(() => {
124
128
  if (!href || href.trim() === "") {
125
129
  return onClick ? "none" : "none";
126
130
  }
@@ -141,7 +145,7 @@ function useNavigation({
141
145
  return "internal";
142
146
  }
143
147
  }, [href, onClick]);
144
- const normalizedHref = React.useMemo(() => {
148
+ const normalizedHref = React2.useMemo(() => {
145
149
  if (!href || href.trim() === "") {
146
150
  return void 0;
147
151
  }
@@ -159,7 +163,7 @@ function useNavigation({
159
163
  return trimmed;
160
164
  }
161
165
  }, [href, linkType]);
162
- const target = React.useMemo(() => {
166
+ const target = React2.useMemo(() => {
163
167
  switch (linkType) {
164
168
  case "external":
165
169
  return "_blank";
@@ -172,7 +176,7 @@ function useNavigation({
172
176
  return void 0;
173
177
  }
174
178
  }, [linkType]);
175
- const rel = React.useMemo(() => {
179
+ const rel = React2.useMemo(() => {
176
180
  if (linkType === "external") {
177
181
  return "noopener noreferrer";
178
182
  }
@@ -181,7 +185,7 @@ function useNavigation({
181
185
  const isExternal = linkType === "external";
182
186
  const isInternal = linkType === "internal";
183
187
  const shouldUseRouter = isInternal && typeof normalizedHref === "string" && normalizedHref.startsWith("/");
184
- const handleClick = React.useCallback(
188
+ const handleClick = React2.useCallback(
185
189
  (event) => {
186
190
  if (onClick) {
187
191
  try {
@@ -365,7 +369,7 @@ var buttonVariants = cva(baseStyles, {
365
369
  size: "default"
366
370
  }
367
371
  });
368
- var Pressable = React.forwardRef(
372
+ var Pressable = React2.forwardRef(
369
373
  ({
370
374
  children,
371
375
  className,
@@ -472,7 +476,7 @@ var maxWidthStyles = {
472
476
  "4xl": "max-w-[1536px]",
473
477
  full: "max-w-full"
474
478
  };
475
- var Container = React__default.forwardRef(
479
+ var Container = React2__default.forwardRef(
476
480
  ({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
477
481
  const Component = as;
478
482
  return /* @__PURE__ */ jsx(
@@ -778,7 +782,7 @@ var spacingStyles = {
778
782
  };
779
783
  var predefinedSpacings = ["none", "sm", "md", "lg", "xl", "hero"];
780
784
  var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
781
- var Section = React__default.forwardRef(
785
+ var Section = React2__default.forwardRef(
782
786
  ({
783
787
  id,
784
788
  title,
@@ -3,14 +3,12 @@
3
3
 
4
4
  var clsx = require('clsx');
5
5
  var tailwindMerge = require('tailwind-merge');
6
+ var React = require('react');
6
7
  var icon = require('@page-speed/icon');
7
8
  var jsxRuntime = require('react/jsx-runtime');
8
9
  var reactSlot = require('@radix-ui/react-slot');
9
10
  var classVarianceAuthority = require('class-variance-authority');
10
11
  var AccordionPrimitive = require('@radix-ui/react-accordion');
11
- var React = require('react');
12
-
13
- function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
14
12
 
15
13
  function _interopNamespace(e) {
16
14
  if (e && e.__esModule) return e;
@@ -30,17 +28,21 @@ function _interopNamespace(e) {
30
28
  return Object.freeze(n);
31
29
  }
32
30
 
31
+ var React__namespace = /*#__PURE__*/_interopNamespace(React);
33
32
  var AccordionPrimitive__namespace = /*#__PURE__*/_interopNamespace(AccordionPrimitive);
34
- var React__default = /*#__PURE__*/_interopDefault(React);
35
33
 
36
34
  // lib/utils.ts
37
35
  function cn(...inputs) {
38
36
  return tailwindMerge.twMerge(clsx.clsx(inputs));
39
37
  }
40
38
  var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
41
- function DynamicIcon({ apiKey, ...props }) {
39
+ var DynamicIcon = React__namespace.memo(function DynamicIcon2({
40
+ apiKey,
41
+ ...props
42
+ }) {
42
43
  return /* @__PURE__ */ jsxRuntime.jsx(icon.Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
43
- }
44
+ });
45
+ DynamicIcon.displayName = "DynamicIcon";
44
46
  var badgeVariants = classVarianceAuthority.cva(
45
47
  "inline-flex items-center justify-center rounded-full border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",
46
48
  {
@@ -142,7 +144,7 @@ var maxWidthStyles = {
142
144
  "4xl": "max-w-[1536px]",
143
145
  full: "max-w-full"
144
146
  };
145
- var Container = React__default.default.forwardRef(
147
+ var Container = React__namespace.default.forwardRef(
146
148
  ({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
147
149
  const Component = as;
148
150
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -448,7 +450,7 @@ var spacingStyles = {
448
450
  };
449
451
  var predefinedSpacings = ["none", "sm", "md", "lg", "xl", "hero"];
450
452
  var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
451
- var Section = React__default.default.forwardRef(
453
+ var Section = React__namespace.default.forwardRef(
452
454
  ({
453
455
  id,
454
456
  title,
@@ -1,21 +1,26 @@
1
1
  "use client";
2
2
  import { clsx } from 'clsx';
3
3
  import { twMerge } from 'tailwind-merge';
4
+ import * as React from 'react';
5
+ import React__default from 'react';
4
6
  import { Icon } from '@page-speed/icon';
5
7
  import { jsx, jsxs } from 'react/jsx-runtime';
6
8
  import { Slot } from '@radix-ui/react-slot';
7
9
  import { cva } from 'class-variance-authority';
8
10
  import * as AccordionPrimitive from '@radix-ui/react-accordion';
9
- import React from 'react';
10
11
 
11
12
  // lib/utils.ts
12
13
  function cn(...inputs) {
13
14
  return twMerge(clsx(inputs));
14
15
  }
15
16
  var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
16
- function DynamicIcon({ apiKey, ...props }) {
17
+ var DynamicIcon = React.memo(function DynamicIcon2({
18
+ apiKey,
19
+ ...props
20
+ }) {
17
21
  return /* @__PURE__ */ jsx(Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
18
- }
22
+ });
23
+ DynamicIcon.displayName = "DynamicIcon";
19
24
  var badgeVariants = cva(
20
25
  "inline-flex items-center justify-center rounded-full border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",
21
26
  {
@@ -117,7 +122,7 @@ var maxWidthStyles = {
117
122
  "4xl": "max-w-[1536px]",
118
123
  full: "max-w-full"
119
124
  };
120
- var Container = React.forwardRef(
125
+ var Container = React__default.forwardRef(
121
126
  ({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
122
127
  const Component = as;
123
128
  return /* @__PURE__ */ jsx(
@@ -423,7 +428,7 @@ var spacingStyles = {
423
428
  };
424
429
  var predefinedSpacings = ["none", "sm", "md", "lg", "xl", "hero"];
425
430
  var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
426
- var Section = React.forwardRef(
431
+ var Section = React__default.forwardRef(
427
432
  ({
428
433
  id,
429
434
  title,
@@ -3,13 +3,29 @@
3
3
 
4
4
  var clsx = require('clsx');
5
5
  var tailwindMerge = require('tailwind-merge');
6
+ var React = require('react');
6
7
  var icon = require('@page-speed/icon');
7
8
  var jsxRuntime = require('react/jsx-runtime');
8
- var React = require('react');
9
9
 
10
- function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
10
+ function _interopNamespace(e) {
11
+ if (e && e.__esModule) return e;
12
+ var n = Object.create(null);
13
+ if (e) {
14
+ Object.keys(e).forEach(function (k) {
15
+ if (k !== 'default') {
16
+ var d = Object.getOwnPropertyDescriptor(e, k);
17
+ Object.defineProperty(n, k, d.get ? d : {
18
+ enumerable: true,
19
+ get: function () { return e[k]; }
20
+ });
21
+ }
22
+ });
23
+ }
24
+ n.default = e;
25
+ return Object.freeze(n);
26
+ }
11
27
 
12
- var React__default = /*#__PURE__*/_interopDefault(React);
28
+ var React__namespace = /*#__PURE__*/_interopNamespace(React);
13
29
 
14
30
  // lib/utils.ts
15
31
  function cn(...inputs) {
@@ -46,9 +62,13 @@ function getNestedCardTextColor(parentBg, options) {
46
62
  return isDark ? "text-foreground" : "";
47
63
  }
48
64
  var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
49
- function DynamicIcon({ apiKey, ...props }) {
65
+ var DynamicIcon = React__namespace.memo(function DynamicIcon2({
66
+ apiKey,
67
+ ...props
68
+ }) {
50
69
  return /* @__PURE__ */ jsxRuntime.jsx(icon.Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
51
- }
70
+ });
71
+ DynamicIcon.displayName = "DynamicIcon";
52
72
  var maxWidthStyles = {
53
73
  sm: "max-w-screen-sm",
54
74
  md: "max-w-screen-md",
@@ -58,7 +78,7 @@ var maxWidthStyles = {
58
78
  "4xl": "max-w-[1536px]",
59
79
  full: "max-w-full"
60
80
  };
61
- var Container = React__default.default.forwardRef(
81
+ var Container = React__namespace.default.forwardRef(
62
82
  ({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
63
83
  const Component = as;
64
84
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -364,7 +384,7 @@ var spacingStyles = {
364
384
  };
365
385
  var predefinedSpacings = ["none", "sm", "md", "lg", "xl", "hero"];
366
386
  var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
367
- var Section = React__default.default.forwardRef(
387
+ var Section = React__namespace.default.forwardRef(
368
388
  ({
369
389
  id,
370
390
  title,