@opensite/ui 2.8.0 → 2.8.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (719) 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-simple-centered-image.cjs +5 -5
  340. package/dist/hero-simple-centered-image.js +5 -5
  341. package/dist/hero-software-growth-video-dialog.cjs +19 -15
  342. package/dist/hero-software-growth-video-dialog.js +16 -12
  343. package/dist/hero-split-icon-cards.cjs +18 -14
  344. package/dist/hero-split-icon-cards.js +16 -12
  345. package/dist/hero-video-dialog-gradient.cjs +19 -15
  346. package/dist/hero-video-dialog-gradient.js +16 -12
  347. package/dist/hero-video-overlay-stars.cjs +18 -14
  348. package/dist/hero-video-overlay-stars.js +16 -12
  349. package/dist/index.cjs +200 -180
  350. package/dist/index.js +104 -84
  351. package/dist/industries-expandable-showcase.cjs +6 -2
  352. package/dist/industries-expandable-showcase.js +6 -2
  353. package/dist/industries-hover-reveal-grid.cjs +6 -2
  354. package/dist/industries-hover-reveal-grid.js +6 -2
  355. package/dist/industries-timeline-table.cjs +6 -2
  356. package/dist/industries-timeline-table.js +6 -2
  357. package/dist/interior-carousel.cjs +33 -29
  358. package/dist/interior-carousel.js +26 -22
  359. package/dist/link-page-bento-layout.cjs +6 -2
  360. package/dist/link-page-bento-layout.js +6 -2
  361. package/dist/link-page-grid-cards.cjs +6 -2
  362. package/dist/link-page-grid-cards.js +6 -2
  363. package/dist/link-page-minimal-profile.cjs +6 -2
  364. package/dist/link-page-minimal-profile.js +6 -2
  365. package/dist/link-page-newsletter-social.cjs +6 -2
  366. package/dist/link-page-newsletter-social.js +6 -2
  367. package/dist/link-tree-block.cjs +30 -26
  368. package/dist/link-tree-block.js +30 -26
  369. package/dist/list-achievements-showcase.cjs +6 -2
  370. package/dist/list-achievements-showcase.js +6 -2
  371. package/dist/list-feature-comparison.cjs +6 -2
  372. package/dist/list-feature-comparison.js +6 -2
  373. package/dist/list-metrics-dashboard.cjs +6 -2
  374. package/dist/list-metrics-dashboard.js +6 -2
  375. package/dist/list-searchable-grid.cjs +19 -15
  376. package/dist/list-searchable-grid.js +18 -14
  377. package/dist/list-service-category-table.cjs +26 -6
  378. package/dist/list-service-category-table.js +10 -5
  379. package/dist/navbar-animated-preview.cjs +6 -2
  380. package/dist/navbar-animated-preview.js +6 -2
  381. package/dist/navbar-centered-menu.cjs +6 -2
  382. package/dist/navbar-centered-menu.js +6 -2
  383. package/dist/navbar-dark-icons.cjs +6 -2
  384. package/dist/navbar-dark-icons.js +6 -2
  385. package/dist/navbar-dropdown-menu.cjs +6 -2
  386. package/dist/navbar-dropdown-menu.js +6 -2
  387. package/dist/navbar-education-platform.cjs +6 -2
  388. package/dist/navbar-education-platform.js +6 -2
  389. package/dist/navbar-enterprise-mega.cjs +6 -2
  390. package/dist/navbar-enterprise-mega.js +6 -2
  391. package/dist/navbar-feature-grid.cjs +6 -2
  392. package/dist/navbar-feature-grid.js +6 -2
  393. package/dist/navbar-floating-pill.cjs +6 -2
  394. package/dist/navbar-floating-pill.js +6 -2
  395. package/dist/navbar-fullscreen-menu.cjs +6 -2
  396. package/dist/navbar-fullscreen-menu.js +6 -2
  397. package/dist/navbar-icon-links.cjs +6 -2
  398. package/dist/navbar-icon-links.js +6 -2
  399. package/dist/navbar-image-preview.cjs +6 -2
  400. package/dist/navbar-image-preview.js +6 -2
  401. package/dist/navbar-mega-menu.cjs +6 -2
  402. package/dist/navbar-mega-menu.js +6 -2
  403. package/dist/navbar-multi-column-groups.cjs +6 -2
  404. package/dist/navbar-multi-column-groups.js +6 -2
  405. package/dist/navbar-platform-resources.cjs +6 -2
  406. package/dist/navbar-platform-resources.js +6 -2
  407. package/dist/navbar-search-focused.cjs +6 -2
  408. package/dist/navbar-search-focused.js +6 -2
  409. package/dist/navbar-sidebar-mobile.cjs +6 -2
  410. package/dist/navbar-sidebar-mobile.js +6 -2
  411. package/dist/navbar-simple-links.cjs +6 -2
  412. package/dist/navbar-simple-links.js +6 -2
  413. package/dist/navbar-split-cta.cjs +6 -2
  414. package/dist/navbar-split-cta.js +6 -2
  415. package/dist/navbar-sticky-compact.cjs +6 -2
  416. package/dist/navbar-sticky-compact.js +6 -2
  417. package/dist/navbar-tabbed-sections.cjs +6 -2
  418. package/dist/navbar-tabbed-sections.js +6 -2
  419. package/dist/navbar-transparent-overlay.cjs +6 -2
  420. package/dist/navbar-transparent-overlay.js +6 -2
  421. package/dist/offer-modal-membership-image.cjs +6 -2
  422. package/dist/offer-modal-membership-image.js +6 -2
  423. package/dist/offer-modal-newsletter-discount.cjs +6 -2
  424. package/dist/offer-modal-newsletter-discount.js +6 -2
  425. package/dist/offer-modal-sheet-newsletter.cjs +6 -2
  426. package/dist/offer-modal-sheet-newsletter.js +6 -2
  427. package/dist/payment-platform-icon.cjs +27 -2
  428. package/dist/payment-platform-icon.js +7 -2
  429. package/dist/pricing-addons-cards.cjs +19 -15
  430. package/dist/pricing-addons-cards.js +16 -12
  431. package/dist/pricing-addons-featured.cjs +20 -16
  432. package/dist/pricing-addons-featured.js +16 -12
  433. package/dist/pricing-collapsible-plans.cjs +19 -15
  434. package/dist/pricing-collapsible-plans.js +16 -12
  435. package/dist/pricing-columns-toggle.cjs +20 -16
  436. package/dist/pricing-columns-toggle.js +16 -12
  437. package/dist/pricing-comparison-headers.cjs +21 -17
  438. package/dist/pricing-comparison-headers.js +16 -12
  439. package/dist/pricing-comparison-table.cjs +21 -17
  440. package/dist/pricing-comparison-table.js +16 -12
  441. package/dist/pricing-discount-card.cjs +18 -14
  442. package/dist/pricing-discount-card.js +16 -12
  443. package/dist/pricing-enterprise-contact.cjs +18 -14
  444. package/dist/pricing-enterprise-contact.js +16 -12
  445. package/dist/pricing-feature-matrix.cjs +19 -15
  446. package/dist/pricing-feature-matrix.js +16 -12
  447. package/dist/pricing-four-tier-toggle.cjs +20 -16
  448. package/dist/pricing-four-tier-toggle.js +16 -12
  449. package/dist/pricing-full-comparison.cjs +19 -15
  450. package/dist/pricing-full-comparison.js +17 -13
  451. package/dist/pricing-gradient-cards.cjs +20 -16
  452. package/dist/pricing-gradient-cards.js +16 -12
  453. package/dist/pricing-icon-headers.cjs +19 -15
  454. package/dist/pricing-icon-headers.js +16 -12
  455. package/dist/pricing-minimal-cards.cjs +19 -15
  456. package/dist/pricing-minimal-cards.js +16 -12
  457. package/dist/pricing-packages-radio.cjs +18 -14
  458. package/dist/pricing-packages-radio.js +16 -12
  459. package/dist/pricing-popular-highlight.cjs +20 -16
  460. package/dist/pricing-popular-highlight.js +16 -12
  461. package/dist/pricing-radio-toggle.cjs +20 -16
  462. package/dist/pricing-radio-toggle.js +16 -12
  463. package/dist/pricing-responsive-table.cjs +18 -14
  464. package/dist/pricing-responsive-table.js +16 -12
  465. package/dist/pricing-services-cards.cjs +19 -15
  466. package/dist/pricing-services-cards.js +16 -12
  467. package/dist/pricing-simple-card.cjs +18 -14
  468. package/dist/pricing-simple-card.js +16 -12
  469. package/dist/pricing-single-card.cjs +19 -15
  470. package/dist/pricing-single-card.js +16 -12
  471. package/dist/pricing-split-layout.cjs +16 -12
  472. package/dist/pricing-split-layout.js +16 -12
  473. package/dist/pricing-spotlight-card.cjs +18 -14
  474. package/dist/pricing-spotlight-card.js +16 -12
  475. package/dist/pricing-switch-cards.cjs +20 -16
  476. package/dist/pricing-switch-cards.js +16 -12
  477. package/dist/pricing-tabs-toggle.cjs +20 -16
  478. package/dist/pricing-tabs-toggle.js +16 -12
  479. package/dist/pricing-tier-grid.cjs +19 -15
  480. package/dist/pricing-tier-grid.js +16 -12
  481. package/dist/pricing-toggle-cards.cjs +20 -16
  482. package/dist/pricing-toggle-cards.js +16 -12
  483. package/dist/pricing-toggle-period.cjs +18 -14
  484. package/dist/pricing-toggle-period.js +16 -12
  485. package/dist/pricing-two-column-basic.cjs +20 -16
  486. package/dist/pricing-two-column-basic.js +16 -12
  487. package/dist/process-expandable-timeline.cjs +6 -2
  488. package/dist/process-expandable-timeline.js +6 -2
  489. package/dist/process-icon-timeline.cjs +26 -6
  490. package/dist/process-icon-timeline.js +10 -5
  491. package/dist/process-numbered-services.cjs +6 -2
  492. package/dist/process-numbered-services.js +6 -2
  493. package/dist/process-roadmap-timeline.cjs +26 -6
  494. package/dist/process-roadmap-timeline.js +10 -5
  495. package/dist/process-scroll-image.cjs +24 -20
  496. package/dist/process-scroll-image.js +22 -18
  497. package/dist/process-steps-grid.cjs +26 -6
  498. package/dist/process-steps-grid.js +10 -5
  499. package/dist/process-sticky-steps.cjs +6 -2
  500. package/dist/process-sticky-steps.js +6 -2
  501. package/dist/project-background-reveal.cjs +17 -13
  502. package/dist/project-background-reveal.js +16 -12
  503. package/dist/project-card-overlay.cjs +26 -6
  504. package/dist/project-card-overlay.js +10 -5
  505. package/dist/project-carousel-cinematic.cjs +31 -27
  506. package/dist/project-carousel-cinematic.js +26 -22
  507. package/dist/project-carousel-detail-cards.cjs +31 -27
  508. package/dist/project-carousel-detail-cards.js +26 -22
  509. package/dist/project-carousel-minimal.cjs +31 -27
  510. package/dist/project-carousel-minimal.js +26 -22
  511. package/dist/project-detail-architecture-carousel.cjs +6 -2
  512. package/dist/project-detail-architecture-carousel.js +6 -2
  513. package/dist/project-detail-list-related.cjs +6 -2
  514. package/dist/project-detail-list-related.js +6 -2
  515. package/dist/project-detail-photography-breadcrumb.cjs +6 -2
  516. package/dist/project-detail-photography-breadcrumb.js +6 -2
  517. package/dist/project-detail-tabbed-case-study.cjs +6 -2
  518. package/dist/project-detail-tabbed-case-study.js +6 -2
  519. package/dist/project-experience-quote.cjs +17 -13
  520. package/dist/project-experience-quote.js +16 -12
  521. package/dist/project-featured-carousel.cjs +27 -23
  522. package/dist/project-featured-carousel.js +26 -22
  523. package/dist/project-horizontal-cards.cjs +17 -13
  524. package/dist/project-horizontal-cards.js +16 -12
  525. package/dist/project-interactive-hover-reveal.cjs +18 -14
  526. package/dist/project-interactive-hover-reveal.js +16 -12
  527. package/dist/project-scroll-reveal.cjs +26 -6
  528. package/dist/project-scroll-reveal.js +10 -5
  529. package/dist/project-video-carousel.cjs +31 -27
  530. package/dist/project-video-carousel.js +26 -22
  531. package/dist/project-video-hover-bento.cjs +26 -6
  532. package/dist/project-video-hover-bento.js +10 -5
  533. package/dist/project-video-hover-grid.cjs +26 -6
  534. package/dist/project-video-hover-grid.js +10 -5
  535. package/dist/project-video-hover-rounded.cjs +26 -6
  536. package/dist/project-video-hover-rounded.js +10 -5
  537. package/dist/project-video-hover-stack.cjs +26 -6
  538. package/dist/project-video-hover-stack.js +10 -5
  539. package/dist/project-video-hover-two-by-two.cjs +26 -6
  540. package/dist/project-video-hover-two-by-two.js +10 -5
  541. package/dist/project-work-showcase.cjs +17 -13
  542. package/dist/project-work-showcase.js +16 -12
  543. package/dist/project-zigzag-layout.cjs +16 -12
  544. package/dist/project-zigzag-layout.js +16 -12
  545. package/dist/registry.cjs +1742 -1722
  546. package/dist/registry.js +512 -492
  547. package/dist/resource-detail-document-sidebar.cjs +6 -2
  548. package/dist/resource-detail-document-sidebar.js +6 -2
  549. package/dist/resource-detail-whitepaper-sidebar.cjs +6 -2
  550. package/dist/resource-detail-whitepaper-sidebar.js +6 -2
  551. package/dist/resource-list-course-cards.cjs +6 -2
  552. package/dist/resource-list-course-cards.js +6 -2
  553. package/dist/resource-list-featured-articles.cjs +6 -2
  554. package/dist/resource-list-featured-articles.js +6 -2
  555. package/dist/resource-list-featured-grid.cjs +6 -2
  556. package/dist/resource-list-featured-grid.js +6 -2
  557. package/dist/resource-list-hero-filter.cjs +6 -2
  558. package/dist/resource-list-hero-filter.js +6 -2
  559. package/dist/resource-list-news-updates.cjs +6 -2
  560. package/dist/resource-list-news-updates.js +6 -2
  561. package/dist/service-detail-centered-expertise.cjs +16 -12
  562. package/dist/service-detail-centered-expertise.js +16 -12
  563. package/dist/service-detail-compact-cards.cjs +16 -12
  564. package/dist/service-detail-compact-cards.js +16 -12
  565. package/dist/service-detail-sidebar-related.cjs +16 -12
  566. package/dist/service-detail-sidebar-related.js +16 -12
  567. package/dist/service-detail-sidebar-stats.cjs +27 -7
  568. package/dist/service-detail-sidebar-stats.js +10 -5
  569. package/dist/service-hover-carousel.cjs +38 -34
  570. package/dist/service-hover-carousel.js +26 -22
  571. package/dist/services-list-accordion-benefits.cjs +16 -12
  572. package/dist/services-list-accordion-benefits.js +16 -12
  573. package/dist/services-list-accordion.cjs +10 -8
  574. package/dist/services-list-accordion.js +10 -5
  575. package/dist/services-list-cards-hover.cjs +16 -12
  576. package/dist/services-list-cards-hover.js +16 -12
  577. package/dist/services-list-category-accordion.cjs +10 -8
  578. package/dist/services-list-category-accordion.js +10 -5
  579. package/dist/services-list-centered-icons.cjs +27 -7
  580. package/dist/services-list-centered-icons.js +10 -5
  581. package/dist/services-list-culture-tabs.cjs +16 -12
  582. package/dist/services-list-culture-tabs.js +16 -12
  583. package/dist/services-list-feature-spotlight.cjs +27 -7
  584. package/dist/services-list-feature-spotlight.js +10 -5
  585. package/dist/services-list-featured-highlight.cjs +16 -12
  586. package/dist/services-list-featured-highlight.js +16 -12
  587. package/dist/services-list-hero-cards.cjs +6 -2
  588. package/dist/services-list-hero-cards.js +6 -2
  589. package/dist/services-list-icon-grid.cjs +27 -7
  590. package/dist/services-list-icon-grid.js +10 -5
  591. package/dist/services-list-image-cards.cjs +6 -2
  592. package/dist/services-list-image-cards.js +6 -2
  593. package/dist/services-list-image-overlay-grid.cjs +6 -2
  594. package/dist/services-list-image-overlay-grid.js +6 -2
  595. package/dist/services-list-masonry.cjs +16 -12
  596. package/dist/services-list-masonry.js +16 -12
  597. package/dist/services-list-methodology-steps.cjs +16 -12
  598. package/dist/services-list-methodology-steps.js +16 -12
  599. package/dist/services-list-minimal-grid.cjs +16 -12
  600. package/dist/services-list-minimal-grid.js +16 -12
  601. package/dist/services-list-muted-cards.cjs +27 -7
  602. package/dist/services-list-muted-cards.js +10 -5
  603. package/dist/services-list-numbered-steps.cjs +16 -12
  604. package/dist/services-list-numbered-steps.js +16 -12
  605. package/dist/services-list-pricing-grid.cjs +16 -12
  606. package/dist/services-list-pricing-grid.js +16 -12
  607. package/dist/services-list-progress-sidebar.cjs +16 -12
  608. package/dist/services-list-progress-sidebar.js +16 -12
  609. package/dist/services-list-split-checklist.cjs +16 -12
  610. package/dist/services-list-split-checklist.js +16 -12
  611. package/dist/services-list-sticky-image.cjs +6 -2
  612. package/dist/services-list-sticky-image.js +6 -2
  613. package/dist/services-list-table-hover.cjs +6 -2
  614. package/dist/services-list-table-hover.js +6 -2
  615. package/dist/services-list-tabs-features.cjs +10 -8
  616. package/dist/services-list-tabs-features.js +10 -5
  617. package/dist/services-list-timeline.cjs +16 -12
  618. package/dist/services-list-timeline.js +16 -12
  619. package/dist/services-list-two-column-grid.cjs +16 -12
  620. package/dist/services-list-two-column-grid.js +16 -12
  621. package/dist/services-list-vertical-tags.cjs +27 -7
  622. package/dist/services-list-vertical-tags.js +10 -5
  623. package/dist/services-list-video-showcase.cjs +18 -14
  624. package/dist/services-list-video-showcase.js +18 -14
  625. package/dist/social-link-icon.cjs +6 -2
  626. package/dist/social-link-icon.js +6 -2
  627. package/dist/stats-animated-counter.cjs +17 -13
  628. package/dist/stats-animated-counter.js +15 -11
  629. package/dist/stats-card-group.cjs +26 -6
  630. package/dist/stats-card-group.js +10 -5
  631. package/dist/stats-growth-timeline.cjs +22 -18
  632. package/dist/stats-growth-timeline.js +16 -12
  633. package/dist/stats-icon-cards.cjs +26 -6
  634. package/dist/stats-icon-cards.js +10 -5
  635. package/dist/stats-impact-grid.cjs +23 -19
  636. package/dist/stats-impact-grid.js +16 -12
  637. package/dist/stats-primary-secondary.cjs +26 -6
  638. package/dist/stats-primary-secondary.js +10 -5
  639. package/dist/stats-timeline-tabs.cjs +9 -7
  640. package/dist/stats-timeline-tabs.js +10 -5
  641. package/dist/team-alternating-bios.cjs +17 -13
  642. package/dist/team-alternating-bios.js +17 -13
  643. package/dist/team-avatar-social.cjs +17 -13
  644. package/dist/team-avatar-social.js +17 -13
  645. package/dist/team-bio-badges.cjs +17 -13
  646. package/dist/team-bio-badges.js +17 -13
  647. package/dist/team-carousel-experience.cjs +27 -23
  648. package/dist/team-carousel-experience.js +27 -23
  649. package/dist/team-contact-cards.cjs +18 -14
  650. package/dist/team-contact-cards.js +18 -14
  651. package/dist/team-filterable-search.cjs +22 -18
  652. package/dist/team-filterable-search.js +22 -18
  653. package/dist/team-gradient-cards.cjs +17 -13
  654. package/dist/team-gradient-cards.js +17 -13
  655. package/dist/team-grid-animated.cjs +18 -14
  656. package/dist/team-grid-animated.js +18 -14
  657. package/dist/team-hover-highlight.cjs +17 -13
  658. package/dist/team-hover-highlight.js +17 -13
  659. package/dist/team-hover-overlay.cjs +17 -13
  660. package/dist/team-hover-overlay.js +17 -13
  661. package/dist/team-large-images.cjs +17 -13
  662. package/dist/team-large-images.js +17 -13
  663. package/dist/team-role-filter.cjs +20 -16
  664. package/dist/team-role-filter.js +20 -16
  665. package/dist/team-skill-badges.cjs +17 -13
  666. package/dist/team-skill-badges.js +17 -13
  667. package/dist/team-social-cards.cjs +17 -13
  668. package/dist/team-social-cards.js +17 -13
  669. package/dist/team-social-grid.cjs +17 -13
  670. package/dist/team-social-grid.js +17 -13
  671. package/dist/team-testimonial-stats.cjs +17 -13
  672. package/dist/team-testimonial-stats.js +17 -13
  673. package/dist/testimonial-carousel-cards.cjs +33 -29
  674. package/dist/testimonial-carousel-cards.js +26 -22
  675. package/dist/testimonials-animated-split.cjs +9 -7
  676. package/dist/testimonials-animated-split.js +10 -5
  677. package/dist/testimonials-bento-grid.cjs +9 -7
  678. package/dist/testimonials-bento-grid.js +10 -5
  679. package/dist/testimonials-carousel-image.cjs +18 -14
  680. package/dist/testimonials-carousel-image.js +13 -9
  681. package/dist/testimonials-company-logo.cjs +26 -6
  682. package/dist/testimonials-company-logo.js +10 -5
  683. package/dist/testimonials-grid-add-review.cjs +9 -7
  684. package/dist/testimonials-grid-add-review.js +10 -5
  685. package/dist/testimonials-images-helpful.cjs +21 -17
  686. package/dist/testimonials-images-helpful.js +16 -12
  687. package/dist/testimonials-large-quote.cjs +9 -7
  688. package/dist/testimonials-large-quote.js +10 -5
  689. package/dist/testimonials-list-verified.cjs +9 -7
  690. package/dist/testimonials-list-verified.js +10 -5
  691. package/dist/testimonials-mini-dividers.cjs +9 -7
  692. package/dist/testimonials-mini-dividers.js +10 -5
  693. package/dist/testimonials-minimal-numbered.cjs +9 -7
  694. package/dist/testimonials-minimal-numbered.js +10 -5
  695. package/dist/testimonials-quote-carousel.cjs +31 -27
  696. package/dist/testimonials-quote-carousel.js +26 -22
  697. package/dist/testimonials-scrolling-columns.cjs +26 -6
  698. package/dist/testimonials-scrolling-columns.js +10 -5
  699. package/dist/testimonials-split-image.cjs +9 -7
  700. package/dist/testimonials-split-image.js +10 -5
  701. package/dist/testimonials-stats-header.cjs +9 -7
  702. package/dist/testimonials-stats-header.js +10 -5
  703. package/dist/testimonials-twitter-cards.cjs +19 -15
  704. package/dist/testimonials-twitter-cards.js +16 -12
  705. package/dist/timeline-ai-workflow-cards.cjs +27 -7
  706. package/dist/timeline-ai-workflow-cards.js +10 -5
  707. package/dist/timeline-alternating-diagonal.cjs +12 -8
  708. package/dist/timeline-alternating-diagonal.js +12 -8
  709. package/dist/timeline-horizontal-icons.cjs +10 -8
  710. package/dist/timeline-horizontal-icons.js +10 -5
  711. package/dist/timeline-productivity-list.cjs +27 -7
  712. package/dist/timeline-productivity-list.js +10 -5
  713. package/dist/timeline-stepper-animated.cjs +22 -18
  714. package/dist/timeline-stepper-animated.js +21 -17
  715. package/dist/timeline-tabbed-phases.cjs +6 -2
  716. package/dist/timeline-tabbed-phases.js +6 -2
  717. package/dist/timeline-vertical-icon-dashed.cjs +6 -2
  718. package/dist/timeline-vertical-icon-dashed.js +6 -2
  719. package/package.json +3 -3
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  'use strict';
3
3
 
4
- var React5 = require('react');
4
+ var React6 = require('react');
5
5
  var img = require('@page-speed/img');
6
6
  var clsx = require('clsx');
7
7
  var tailwindMerge = require('tailwind-merge');
@@ -31,7 +31,7 @@ function _interopNamespace(e) {
31
31
  return Object.freeze(n);
32
32
  }
33
33
 
34
- var React5__namespace = /*#__PURE__*/_interopNamespace(React5);
34
+ var React6__namespace = /*#__PURE__*/_interopNamespace(React6);
35
35
  var useEmblaCarousel__default = /*#__PURE__*/_interopDefault(useEmblaCarousel);
36
36
 
37
37
  // components/blocks/project-list/project-carousel-detail-cards.tsx
@@ -69,9 +69,13 @@ function getNestedCardTextColor(parentBg, options) {
69
69
  return isDark ? "text-foreground" : "";
70
70
  }
71
71
  var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
72
- function DynamicIcon({ apiKey, ...props }) {
72
+ var DynamicIcon = React6__namespace.memo(function DynamicIcon2({
73
+ apiKey,
74
+ ...props
75
+ }) {
73
76
  return /* @__PURE__ */ jsxRuntime.jsx(icon.Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
74
- }
77
+ });
78
+ DynamicIcon.displayName = "DynamicIcon";
75
79
  function normalizePhoneNumber(input) {
76
80
  const trimmed = input.trim();
77
81
  if (trimmed.toLowerCase().startsWith("tel:")) {
@@ -147,7 +151,7 @@ function useNavigation({
147
151
  href,
148
152
  onClick
149
153
  } = {}) {
150
- const linkType = React5__namespace.useMemo(() => {
154
+ const linkType = React6__namespace.useMemo(() => {
151
155
  if (!href || href.trim() === "") {
152
156
  return onClick ? "none" : "none";
153
157
  }
@@ -168,7 +172,7 @@ function useNavigation({
168
172
  return "internal";
169
173
  }
170
174
  }, [href, onClick]);
171
- const normalizedHref = React5__namespace.useMemo(() => {
175
+ const normalizedHref = React6__namespace.useMemo(() => {
172
176
  if (!href || href.trim() === "") {
173
177
  return void 0;
174
178
  }
@@ -186,7 +190,7 @@ function useNavigation({
186
190
  return trimmed;
187
191
  }
188
192
  }, [href, linkType]);
189
- const target = React5__namespace.useMemo(() => {
193
+ const target = React6__namespace.useMemo(() => {
190
194
  switch (linkType) {
191
195
  case "external":
192
196
  return "_blank";
@@ -199,7 +203,7 @@ function useNavigation({
199
203
  return void 0;
200
204
  }
201
205
  }, [linkType]);
202
- const rel = React5__namespace.useMemo(() => {
206
+ const rel = React6__namespace.useMemo(() => {
203
207
  if (linkType === "external") {
204
208
  return "noopener noreferrer";
205
209
  }
@@ -208,7 +212,7 @@ function useNavigation({
208
212
  const isExternal = linkType === "external";
209
213
  const isInternal = linkType === "internal";
210
214
  const shouldUseRouter = isInternal && typeof normalizedHref === "string" && normalizedHref.startsWith("/");
211
- const handleClick = React5__namespace.useCallback(
215
+ const handleClick = React6__namespace.useCallback(
212
216
  (event) => {
213
217
  if (onClick) {
214
218
  try {
@@ -392,7 +396,7 @@ var buttonVariants = classVarianceAuthority.cva(baseStyles, {
392
396
  size: "default"
393
397
  }
394
398
  });
395
- var Pressable = React5__namespace.forwardRef(
399
+ var Pressable = React6__namespace.forwardRef(
396
400
  ({
397
401
  children,
398
402
  className,
@@ -531,7 +535,7 @@ var maxWidthStyles = {
531
535
  "4xl": "max-w-[1536px]",
532
536
  full: "max-w-full"
533
537
  };
534
- var Container = React5__namespace.default.forwardRef(
538
+ var Container = React6__namespace.default.forwardRef(
535
539
  ({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
536
540
  const Component = as;
537
541
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -837,7 +841,7 @@ var spacingStyles = {
837
841
  };
838
842
  var predefinedSpacings = ["none", "sm", "md", "lg", "xl", "hero"];
839
843
  var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
840
- var Section = React5__namespace.default.forwardRef(
844
+ var Section = React6__namespace.default.forwardRef(
841
845
  ({
842
846
  id,
843
847
  title,
@@ -898,9 +902,9 @@ var Section = React5__namespace.default.forwardRef(
898
902
  }
899
903
  );
900
904
  Section.displayName = "Section";
901
- var CarouselContext = React5__namespace.createContext(null);
905
+ var CarouselContext = React6__namespace.createContext(null);
902
906
  function useCarousel() {
903
- const context = React5__namespace.useContext(CarouselContext);
907
+ const context = React6__namespace.useContext(CarouselContext);
904
908
  if (!context) {
905
909
  throw new Error("useCarousel must be used within a <Carousel />");
906
910
  }
@@ -922,20 +926,20 @@ function Carousel({
922
926
  },
923
927
  plugins
924
928
  );
925
- const [canScrollPrev, setCanScrollPrev] = React5__namespace.useState(false);
926
- const [canScrollNext, setCanScrollNext] = React5__namespace.useState(false);
927
- const onSelect = React5__namespace.useCallback((api2) => {
929
+ const [canScrollPrev, setCanScrollPrev] = React6__namespace.useState(false);
930
+ const [canScrollNext, setCanScrollNext] = React6__namespace.useState(false);
931
+ const onSelect = React6__namespace.useCallback((api2) => {
928
932
  if (!api2) return;
929
933
  setCanScrollPrev(api2.canScrollPrev());
930
934
  setCanScrollNext(api2.canScrollNext());
931
935
  }, []);
932
- const scrollPrev = React5__namespace.useCallback(() => {
936
+ const scrollPrev = React6__namespace.useCallback(() => {
933
937
  api?.scrollPrev();
934
938
  }, [api]);
935
- const scrollNext = React5__namespace.useCallback(() => {
939
+ const scrollNext = React6__namespace.useCallback(() => {
936
940
  api?.scrollNext();
937
941
  }, [api]);
938
- const handleKeyDown = React5__namespace.useCallback(
942
+ const handleKeyDown = React6__namespace.useCallback(
939
943
  (event) => {
940
944
  if (event.key === "ArrowLeft") {
941
945
  event.preventDefault();
@@ -947,11 +951,11 @@ function Carousel({
947
951
  },
948
952
  [scrollPrev, scrollNext]
949
953
  );
950
- React5__namespace.useEffect(() => {
954
+ React6__namespace.useEffect(() => {
951
955
  if (!api || !setApi) return;
952
956
  setApi(api);
953
957
  }, [api, setApi]);
954
- React5__namespace.useEffect(() => {
958
+ React6__namespace.useEffect(() => {
955
959
  if (!api) return;
956
960
  onSelect(api);
957
961
  api.on("reInit", onSelect);
@@ -1045,10 +1049,10 @@ function ProjectCarouselDetailCards({
1045
1049
  carouselClassName,
1046
1050
  cardClassName
1047
1051
  }) {
1048
- const [carouselApi, setCarouselApi] = React5.useState();
1049
- const [canScrollPrev, setCanScrollPrev] = React5.useState(false);
1050
- const [canScrollNext, setCanScrollNext] = React5.useState(false);
1051
- React5.useEffect(() => {
1052
+ const [carouselApi, setCarouselApi] = React6.useState();
1053
+ const [canScrollPrev, setCanScrollPrev] = React6.useState(false);
1054
+ const [canScrollNext, setCanScrollNext] = React6.useState(false);
1055
+ React6.useEffect(() => {
1052
1056
  if (!carouselApi) return;
1053
1057
  const updateSelection = () => {
1054
1058
  setCanScrollPrev(carouselApi.canScrollPrev());
@@ -1060,7 +1064,7 @@ function ProjectCarouselDetailCards({
1060
1064
  carouselApi.off("select", updateSelection);
1061
1065
  };
1062
1066
  }, [carouselApi]);
1063
- const renderedProjects = React5.useMemo(() => {
1067
+ const renderedProjects = React6.useMemo(() => {
1064
1068
  if (projectsSlot) return projectsSlot;
1065
1069
  if (!projects || projects.length === 0) return null;
1066
1070
  return projects.map((project) => /* @__PURE__ */ jsxRuntime.jsx(CarouselItem, { className: "basis-auto pl-8", children: /* @__PURE__ */ jsxRuntime.jsxs(
@@ -1,6 +1,6 @@
1
1
  "use client";
2
- import * as React5 from 'react';
3
- import React5__default, { useState, useEffect, useMemo } from 'react';
2
+ import * as React6 from 'react';
3
+ import React6__default, { useState, useEffect, useMemo } from 'react';
4
4
  import { Img } from '@page-speed/img';
5
5
  import { clsx } from 'clsx';
6
6
  import { twMerge } from 'tailwind-merge';
@@ -45,9 +45,13 @@ function getNestedCardTextColor(parentBg, options) {
45
45
  return isDark ? "text-foreground" : "";
46
46
  }
47
47
  var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
48
- function DynamicIcon({ apiKey, ...props }) {
48
+ var DynamicIcon = React6.memo(function DynamicIcon2({
49
+ apiKey,
50
+ ...props
51
+ }) {
49
52
  return /* @__PURE__ */ jsx(Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
50
- }
53
+ });
54
+ DynamicIcon.displayName = "DynamicIcon";
51
55
  function normalizePhoneNumber(input) {
52
56
  const trimmed = input.trim();
53
57
  if (trimmed.toLowerCase().startsWith("tel:")) {
@@ -123,7 +127,7 @@ function useNavigation({
123
127
  href,
124
128
  onClick
125
129
  } = {}) {
126
- const linkType = React5.useMemo(() => {
130
+ const linkType = React6.useMemo(() => {
127
131
  if (!href || href.trim() === "") {
128
132
  return onClick ? "none" : "none";
129
133
  }
@@ -144,7 +148,7 @@ function useNavigation({
144
148
  return "internal";
145
149
  }
146
150
  }, [href, onClick]);
147
- const normalizedHref = React5.useMemo(() => {
151
+ const normalizedHref = React6.useMemo(() => {
148
152
  if (!href || href.trim() === "") {
149
153
  return void 0;
150
154
  }
@@ -162,7 +166,7 @@ function useNavigation({
162
166
  return trimmed;
163
167
  }
164
168
  }, [href, linkType]);
165
- const target = React5.useMemo(() => {
169
+ const target = React6.useMemo(() => {
166
170
  switch (linkType) {
167
171
  case "external":
168
172
  return "_blank";
@@ -175,7 +179,7 @@ function useNavigation({
175
179
  return void 0;
176
180
  }
177
181
  }, [linkType]);
178
- const rel = React5.useMemo(() => {
182
+ const rel = React6.useMemo(() => {
179
183
  if (linkType === "external") {
180
184
  return "noopener noreferrer";
181
185
  }
@@ -184,7 +188,7 @@ function useNavigation({
184
188
  const isExternal = linkType === "external";
185
189
  const isInternal = linkType === "internal";
186
190
  const shouldUseRouter = isInternal && typeof normalizedHref === "string" && normalizedHref.startsWith("/");
187
- const handleClick = React5.useCallback(
191
+ const handleClick = React6.useCallback(
188
192
  (event) => {
189
193
  if (onClick) {
190
194
  try {
@@ -368,7 +372,7 @@ var buttonVariants = cva(baseStyles, {
368
372
  size: "default"
369
373
  }
370
374
  });
371
- var Pressable = React5.forwardRef(
375
+ var Pressable = React6.forwardRef(
372
376
  ({
373
377
  children,
374
378
  className,
@@ -507,7 +511,7 @@ var maxWidthStyles = {
507
511
  "4xl": "max-w-[1536px]",
508
512
  full: "max-w-full"
509
513
  };
510
- var Container = React5__default.forwardRef(
514
+ var Container = React6__default.forwardRef(
511
515
  ({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
512
516
  const Component = as;
513
517
  return /* @__PURE__ */ jsx(
@@ -813,7 +817,7 @@ var spacingStyles = {
813
817
  };
814
818
  var predefinedSpacings = ["none", "sm", "md", "lg", "xl", "hero"];
815
819
  var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
816
- var Section = React5__default.forwardRef(
820
+ var Section = React6__default.forwardRef(
817
821
  ({
818
822
  id,
819
823
  title,
@@ -874,9 +878,9 @@ var Section = React5__default.forwardRef(
874
878
  }
875
879
  );
876
880
  Section.displayName = "Section";
877
- var CarouselContext = React5.createContext(null);
881
+ var CarouselContext = React6.createContext(null);
878
882
  function useCarousel() {
879
- const context = React5.useContext(CarouselContext);
883
+ const context = React6.useContext(CarouselContext);
880
884
  if (!context) {
881
885
  throw new Error("useCarousel must be used within a <Carousel />");
882
886
  }
@@ -898,20 +902,20 @@ function Carousel({
898
902
  },
899
903
  plugins
900
904
  );
901
- const [canScrollPrev, setCanScrollPrev] = React5.useState(false);
902
- const [canScrollNext, setCanScrollNext] = React5.useState(false);
903
- const onSelect = React5.useCallback((api2) => {
905
+ const [canScrollPrev, setCanScrollPrev] = React6.useState(false);
906
+ const [canScrollNext, setCanScrollNext] = React6.useState(false);
907
+ const onSelect = React6.useCallback((api2) => {
904
908
  if (!api2) return;
905
909
  setCanScrollPrev(api2.canScrollPrev());
906
910
  setCanScrollNext(api2.canScrollNext());
907
911
  }, []);
908
- const scrollPrev = React5.useCallback(() => {
912
+ const scrollPrev = React6.useCallback(() => {
909
913
  api?.scrollPrev();
910
914
  }, [api]);
911
- const scrollNext = React5.useCallback(() => {
915
+ const scrollNext = React6.useCallback(() => {
912
916
  api?.scrollNext();
913
917
  }, [api]);
914
- const handleKeyDown = React5.useCallback(
918
+ const handleKeyDown = React6.useCallback(
915
919
  (event) => {
916
920
  if (event.key === "ArrowLeft") {
917
921
  event.preventDefault();
@@ -923,11 +927,11 @@ function Carousel({
923
927
  },
924
928
  [scrollPrev, scrollNext]
925
929
  );
926
- React5.useEffect(() => {
930
+ React6.useEffect(() => {
927
931
  if (!api || !setApi) return;
928
932
  setApi(api);
929
933
  }, [api, setApi]);
930
- React5.useEffect(() => {
934
+ React6.useEffect(() => {
931
935
  if (!api) return;
932
936
  onSelect(api);
933
937
  api.on("reInit", onSelect);
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  'use strict';
3
3
 
4
- var React5 = require('react');
4
+ var React6 = require('react');
5
5
  var img = require('@page-speed/img');
6
6
  var clsx = require('clsx');
7
7
  var tailwindMerge = require('tailwind-merge');
@@ -30,7 +30,7 @@ function _interopNamespace(e) {
30
30
  return Object.freeze(n);
31
31
  }
32
32
 
33
- var React5__namespace = /*#__PURE__*/_interopNamespace(React5);
33
+ var React6__namespace = /*#__PURE__*/_interopNamespace(React6);
34
34
  var useEmblaCarousel__default = /*#__PURE__*/_interopDefault(useEmblaCarousel);
35
35
 
36
36
  // components/blocks/project-list/project-carousel-minimal.tsx
@@ -38,9 +38,13 @@ function cn(...inputs) {
38
38
  return tailwindMerge.twMerge(clsx.clsx(inputs));
39
39
  }
40
40
  var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
41
- function DynamicIcon({ apiKey, ...props }) {
41
+ var DynamicIcon = React6__namespace.memo(function DynamicIcon2({
42
+ apiKey,
43
+ ...props
44
+ }) {
42
45
  return /* @__PURE__ */ jsxRuntime.jsx(icon.Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
43
- }
46
+ });
47
+ DynamicIcon.displayName = "DynamicIcon";
44
48
  function normalizePhoneNumber(input) {
45
49
  const trimmed = input.trim();
46
50
  if (trimmed.toLowerCase().startsWith("tel:")) {
@@ -116,7 +120,7 @@ function useNavigation({
116
120
  href,
117
121
  onClick
118
122
  } = {}) {
119
- const linkType = React5__namespace.useMemo(() => {
123
+ const linkType = React6__namespace.useMemo(() => {
120
124
  if (!href || href.trim() === "") {
121
125
  return onClick ? "none" : "none";
122
126
  }
@@ -137,7 +141,7 @@ function useNavigation({
137
141
  return "internal";
138
142
  }
139
143
  }, [href, onClick]);
140
- const normalizedHref = React5__namespace.useMemo(() => {
144
+ const normalizedHref = React6__namespace.useMemo(() => {
141
145
  if (!href || href.trim() === "") {
142
146
  return void 0;
143
147
  }
@@ -155,7 +159,7 @@ function useNavigation({
155
159
  return trimmed;
156
160
  }
157
161
  }, [href, linkType]);
158
- const target = React5__namespace.useMemo(() => {
162
+ const target = React6__namespace.useMemo(() => {
159
163
  switch (linkType) {
160
164
  case "external":
161
165
  return "_blank";
@@ -168,7 +172,7 @@ function useNavigation({
168
172
  return void 0;
169
173
  }
170
174
  }, [linkType]);
171
- const rel = React5__namespace.useMemo(() => {
175
+ const rel = React6__namespace.useMemo(() => {
172
176
  if (linkType === "external") {
173
177
  return "noopener noreferrer";
174
178
  }
@@ -177,7 +181,7 @@ function useNavigation({
177
181
  const isExternal = linkType === "external";
178
182
  const isInternal = linkType === "internal";
179
183
  const shouldUseRouter = isInternal && typeof normalizedHref === "string" && normalizedHref.startsWith("/");
180
- const handleClick = React5__namespace.useCallback(
184
+ const handleClick = React6__namespace.useCallback(
181
185
  (event) => {
182
186
  if (onClick) {
183
187
  try {
@@ -361,7 +365,7 @@ var buttonVariants = classVarianceAuthority.cva(baseStyles, {
361
365
  size: "default"
362
366
  }
363
367
  });
364
- var Pressable = React5__namespace.forwardRef(
368
+ var Pressable = React6__namespace.forwardRef(
365
369
  ({
366
370
  children,
367
371
  className,
@@ -468,7 +472,7 @@ var maxWidthStyles = {
468
472
  "4xl": "max-w-[1536px]",
469
473
  full: "max-w-full"
470
474
  };
471
- var Container = React5__namespace.default.forwardRef(
475
+ var Container = React6__namespace.default.forwardRef(
472
476
  ({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
473
477
  const Component = as;
474
478
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -774,7 +778,7 @@ var spacingStyles = {
774
778
  };
775
779
  var predefinedSpacings = ["none", "sm", "md", "lg", "xl", "hero"];
776
780
  var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
777
- var Section = React5__namespace.default.forwardRef(
781
+ var Section = React6__namespace.default.forwardRef(
778
782
  ({
779
783
  id,
780
784
  title,
@@ -835,9 +839,9 @@ var Section = React5__namespace.default.forwardRef(
835
839
  }
836
840
  );
837
841
  Section.displayName = "Section";
838
- var CarouselContext = React5__namespace.createContext(null);
842
+ var CarouselContext = React6__namespace.createContext(null);
839
843
  function useCarousel() {
840
- const context = React5__namespace.useContext(CarouselContext);
844
+ const context = React6__namespace.useContext(CarouselContext);
841
845
  if (!context) {
842
846
  throw new Error("useCarousel must be used within a <Carousel />");
843
847
  }
@@ -859,20 +863,20 @@ function Carousel({
859
863
  },
860
864
  plugins
861
865
  );
862
- const [canScrollPrev, setCanScrollPrev] = React5__namespace.useState(false);
863
- const [canScrollNext, setCanScrollNext] = React5__namespace.useState(false);
864
- const onSelect = React5__namespace.useCallback((api2) => {
866
+ const [canScrollPrev, setCanScrollPrev] = React6__namespace.useState(false);
867
+ const [canScrollNext, setCanScrollNext] = React6__namespace.useState(false);
868
+ const onSelect = React6__namespace.useCallback((api2) => {
865
869
  if (!api2) return;
866
870
  setCanScrollPrev(api2.canScrollPrev());
867
871
  setCanScrollNext(api2.canScrollNext());
868
872
  }, []);
869
- const scrollPrev = React5__namespace.useCallback(() => {
873
+ const scrollPrev = React6__namespace.useCallback(() => {
870
874
  api?.scrollPrev();
871
875
  }, [api]);
872
- const scrollNext = React5__namespace.useCallback(() => {
876
+ const scrollNext = React6__namespace.useCallback(() => {
873
877
  api?.scrollNext();
874
878
  }, [api]);
875
- const handleKeyDown = React5__namespace.useCallback(
879
+ const handleKeyDown = React6__namespace.useCallback(
876
880
  (event) => {
877
881
  if (event.key === "ArrowLeft") {
878
882
  event.preventDefault();
@@ -884,11 +888,11 @@ function Carousel({
884
888
  },
885
889
  [scrollPrev, scrollNext]
886
890
  );
887
- React5__namespace.useEffect(() => {
891
+ React6__namespace.useEffect(() => {
888
892
  if (!api || !setApi) return;
889
893
  setApi(api);
890
894
  }, [api, setApi]);
891
- React5__namespace.useEffect(() => {
895
+ React6__namespace.useEffect(() => {
892
896
  if (!api) return;
893
897
  onSelect(api);
894
898
  api.on("reInit", onSelect);
@@ -980,10 +984,10 @@ function ProjectCarouselMinimal({
980
984
  carouselClassName,
981
985
  cardClassName
982
986
  }) {
983
- const [carouselApi, setCarouselApi] = React5.useState();
984
- const [canScrollPrev, setCanScrollPrev] = React5.useState(false);
985
- const [canScrollNext, setCanScrollNext] = React5.useState(false);
986
- React5.useEffect(() => {
987
+ const [carouselApi, setCarouselApi] = React6.useState();
988
+ const [canScrollPrev, setCanScrollPrev] = React6.useState(false);
989
+ const [canScrollNext, setCanScrollNext] = React6.useState(false);
990
+ React6.useEffect(() => {
987
991
  if (!carouselApi) return;
988
992
  const updateSelection = () => {
989
993
  setCanScrollPrev(carouselApi.canScrollPrev());
@@ -995,7 +999,7 @@ function ProjectCarouselMinimal({
995
999
  carouselApi.off("select", updateSelection);
996
1000
  };
997
1001
  }, [carouselApi]);
998
- const renderedProjects = React5.useMemo(() => {
1002
+ const renderedProjects = React6.useMemo(() => {
999
1003
  if (projectsSlot) return projectsSlot;
1000
1004
  if (!projects || projects.length === 0) return null;
1001
1005
  return projects.map((project) => /* @__PURE__ */ jsxRuntime.jsx(CarouselItem, { className: "basis-auto pl-8", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("w-[500px] space-y-6", cardClassName), children: [
@@ -1,6 +1,6 @@
1
1
  "use client";
2
- import * as React5 from 'react';
3
- import React5__default, { useState, useEffect, useMemo } from 'react';
2
+ import * as React6 from 'react';
3
+ import React6__default, { useState, useEffect, useMemo } from 'react';
4
4
  import { Img } from '@page-speed/img';
5
5
  import { clsx } from 'clsx';
6
6
  import { twMerge } from 'tailwind-merge';
@@ -14,9 +14,13 @@ function cn(...inputs) {
14
14
  return twMerge(clsx(inputs));
15
15
  }
16
16
  var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
17
- function DynamicIcon({ apiKey, ...props }) {
17
+ var DynamicIcon = React6.memo(function DynamicIcon2({
18
+ apiKey,
19
+ ...props
20
+ }) {
18
21
  return /* @__PURE__ */ jsx(Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
19
- }
22
+ });
23
+ DynamicIcon.displayName = "DynamicIcon";
20
24
  function normalizePhoneNumber(input) {
21
25
  const trimmed = input.trim();
22
26
  if (trimmed.toLowerCase().startsWith("tel:")) {
@@ -92,7 +96,7 @@ function useNavigation({
92
96
  href,
93
97
  onClick
94
98
  } = {}) {
95
- const linkType = React5.useMemo(() => {
99
+ const linkType = React6.useMemo(() => {
96
100
  if (!href || href.trim() === "") {
97
101
  return onClick ? "none" : "none";
98
102
  }
@@ -113,7 +117,7 @@ function useNavigation({
113
117
  return "internal";
114
118
  }
115
119
  }, [href, onClick]);
116
- const normalizedHref = React5.useMemo(() => {
120
+ const normalizedHref = React6.useMemo(() => {
117
121
  if (!href || href.trim() === "") {
118
122
  return void 0;
119
123
  }
@@ -131,7 +135,7 @@ function useNavigation({
131
135
  return trimmed;
132
136
  }
133
137
  }, [href, linkType]);
134
- const target = React5.useMemo(() => {
138
+ const target = React6.useMemo(() => {
135
139
  switch (linkType) {
136
140
  case "external":
137
141
  return "_blank";
@@ -144,7 +148,7 @@ function useNavigation({
144
148
  return void 0;
145
149
  }
146
150
  }, [linkType]);
147
- const rel = React5.useMemo(() => {
151
+ const rel = React6.useMemo(() => {
148
152
  if (linkType === "external") {
149
153
  return "noopener noreferrer";
150
154
  }
@@ -153,7 +157,7 @@ function useNavigation({
153
157
  const isExternal = linkType === "external";
154
158
  const isInternal = linkType === "internal";
155
159
  const shouldUseRouter = isInternal && typeof normalizedHref === "string" && normalizedHref.startsWith("/");
156
- const handleClick = React5.useCallback(
160
+ const handleClick = React6.useCallback(
157
161
  (event) => {
158
162
  if (onClick) {
159
163
  try {
@@ -337,7 +341,7 @@ var buttonVariants = cva(baseStyles, {
337
341
  size: "default"
338
342
  }
339
343
  });
340
- var Pressable = React5.forwardRef(
344
+ var Pressable = React6.forwardRef(
341
345
  ({
342
346
  children,
343
347
  className,
@@ -444,7 +448,7 @@ var maxWidthStyles = {
444
448
  "4xl": "max-w-[1536px]",
445
449
  full: "max-w-full"
446
450
  };
447
- var Container = React5__default.forwardRef(
451
+ var Container = React6__default.forwardRef(
448
452
  ({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
449
453
  const Component = as;
450
454
  return /* @__PURE__ */ jsx(
@@ -750,7 +754,7 @@ var spacingStyles = {
750
754
  };
751
755
  var predefinedSpacings = ["none", "sm", "md", "lg", "xl", "hero"];
752
756
  var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
753
- var Section = React5__default.forwardRef(
757
+ var Section = React6__default.forwardRef(
754
758
  ({
755
759
  id,
756
760
  title,
@@ -811,9 +815,9 @@ var Section = React5__default.forwardRef(
811
815
  }
812
816
  );
813
817
  Section.displayName = "Section";
814
- var CarouselContext = React5.createContext(null);
818
+ var CarouselContext = React6.createContext(null);
815
819
  function useCarousel() {
816
- const context = React5.useContext(CarouselContext);
820
+ const context = React6.useContext(CarouselContext);
817
821
  if (!context) {
818
822
  throw new Error("useCarousel must be used within a <Carousel />");
819
823
  }
@@ -835,20 +839,20 @@ function Carousel({
835
839
  },
836
840
  plugins
837
841
  );
838
- const [canScrollPrev, setCanScrollPrev] = React5.useState(false);
839
- const [canScrollNext, setCanScrollNext] = React5.useState(false);
840
- const onSelect = React5.useCallback((api2) => {
842
+ const [canScrollPrev, setCanScrollPrev] = React6.useState(false);
843
+ const [canScrollNext, setCanScrollNext] = React6.useState(false);
844
+ const onSelect = React6.useCallback((api2) => {
841
845
  if (!api2) return;
842
846
  setCanScrollPrev(api2.canScrollPrev());
843
847
  setCanScrollNext(api2.canScrollNext());
844
848
  }, []);
845
- const scrollPrev = React5.useCallback(() => {
849
+ const scrollPrev = React6.useCallback(() => {
846
850
  api?.scrollPrev();
847
851
  }, [api]);
848
- const scrollNext = React5.useCallback(() => {
852
+ const scrollNext = React6.useCallback(() => {
849
853
  api?.scrollNext();
850
854
  }, [api]);
851
- const handleKeyDown = React5.useCallback(
855
+ const handleKeyDown = React6.useCallback(
852
856
  (event) => {
853
857
  if (event.key === "ArrowLeft") {
854
858
  event.preventDefault();
@@ -860,11 +864,11 @@ function Carousel({
860
864
  },
861
865
  [scrollPrev, scrollNext]
862
866
  );
863
- React5.useEffect(() => {
867
+ React6.useEffect(() => {
864
868
  if (!api || !setApi) return;
865
869
  setApi(api);
866
870
  }, [api, setApi]);
867
- React5.useEffect(() => {
871
+ React6.useEffect(() => {
868
872
  if (!api) return;
869
873
  onSelect(api);
870
874
  api.on("reInit", onSelect);
@@ -861,9 +861,13 @@ var Pressable = React3__namespace.forwardRef(
861
861
  );
862
862
  Pressable.displayName = "Pressable";
863
863
  var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
864
- function DynamicIcon({ apiKey, ...props }) {
864
+ var DynamicIcon = React3__namespace.memo(function DynamicIcon2({
865
+ apiKey,
866
+ ...props
867
+ }) {
865
868
  return /* @__PURE__ */ jsxRuntime.jsx(icon.Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
866
- }
869
+ });
870
+ DynamicIcon.displayName = "DynamicIcon";
867
871
 
868
872
  // lib/mediaPlaceholders.ts
869
873
  var imagePlaceholders = [
@@ -840,9 +840,13 @@ var Pressable = React3.forwardRef(
840
840
  );
841
841
  Pressable.displayName = "Pressable";
842
842
  var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
843
- function DynamicIcon({ apiKey, ...props }) {
843
+ var DynamicIcon = React3.memo(function DynamicIcon2({
844
+ apiKey,
845
+ ...props
846
+ }) {
844
847
  return /* @__PURE__ */ jsx(Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
845
- }
848
+ });
849
+ DynamicIcon.displayName = "DynamicIcon";
846
850
 
847
851
  // lib/mediaPlaceholders.ts
848
852
  var imagePlaceholders = [