@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
@@ -452,9 +452,13 @@ var Pressable = React__namespace.forwardRef(
452
452
  );
453
453
  Pressable.displayName = "Pressable";
454
454
  var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
455
- function DynamicIcon({ apiKey, ...props }) {
455
+ var DynamicIcon = React__namespace.memo(function DynamicIcon2({
456
+ apiKey,
457
+ ...props
458
+ }) {
456
459
  return /* @__PURE__ */ jsxRuntime.jsx(icon.Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
457
- }
460
+ });
461
+ DynamicIcon.displayName = "DynamicIcon";
458
462
  var maxWidthStyles = {
459
463
  sm: "max-w-screen-sm",
460
464
  md: "max-w-screen-md",
@@ -431,9 +431,13 @@ var Pressable = React.forwardRef(
431
431
  );
432
432
  Pressable.displayName = "Pressable";
433
433
  var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
434
- function DynamicIcon({ apiKey, ...props }) {
434
+ var DynamicIcon = React.memo(function DynamicIcon2({
435
+ apiKey,
436
+ ...props
437
+ }) {
435
438
  return /* @__PURE__ */ jsx(Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
436
- }
439
+ });
440
+ DynamicIcon.displayName = "DynamicIcon";
437
441
  var maxWidthStyles = {
438
442
  sm: "max-w-screen-sm",
439
443
  md: "max-w-screen-md",
@@ -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 clsx = require('clsx');
6
6
  var tailwindMerge = require('tailwind-merge');
7
7
  var img = require('@page-speed/img');
@@ -29,7 +29,7 @@ function _interopNamespace(e) {
29
29
  return Object.freeze(n);
30
30
  }
31
31
 
32
- var React5__namespace = /*#__PURE__*/_interopNamespace(React5);
32
+ var React6__namespace = /*#__PURE__*/_interopNamespace(React6);
33
33
  var AvatarPrimitive__namespace = /*#__PURE__*/_interopNamespace(AvatarPrimitive);
34
34
 
35
35
  // components/blocks/article/article-breadcrumb-social.tsx
@@ -118,7 +118,7 @@ function useNavigation({
118
118
  href,
119
119
  onClick
120
120
  } = {}) {
121
- const linkType = React5__namespace.useMemo(() => {
121
+ const linkType = React6__namespace.useMemo(() => {
122
122
  if (!href || href.trim() === "") {
123
123
  return onClick ? "none" : "none";
124
124
  }
@@ -139,7 +139,7 @@ function useNavigation({
139
139
  return "internal";
140
140
  }
141
141
  }, [href, onClick]);
142
- const normalizedHref = React5__namespace.useMemo(() => {
142
+ const normalizedHref = React6__namespace.useMemo(() => {
143
143
  if (!href || href.trim() === "") {
144
144
  return void 0;
145
145
  }
@@ -157,7 +157,7 @@ function useNavigation({
157
157
  return trimmed;
158
158
  }
159
159
  }, [href, linkType]);
160
- const target = React5__namespace.useMemo(() => {
160
+ const target = React6__namespace.useMemo(() => {
161
161
  switch (linkType) {
162
162
  case "external":
163
163
  return "_blank";
@@ -170,7 +170,7 @@ function useNavigation({
170
170
  return void 0;
171
171
  }
172
172
  }, [linkType]);
173
- const rel = React5__namespace.useMemo(() => {
173
+ const rel = React6__namespace.useMemo(() => {
174
174
  if (linkType === "external") {
175
175
  return "noopener noreferrer";
176
176
  }
@@ -179,7 +179,7 @@ function useNavigation({
179
179
  const isExternal = linkType === "external";
180
180
  const isInternal = linkType === "internal";
181
181
  const shouldUseRouter = isInternal && typeof normalizedHref === "string" && normalizedHref.startsWith("/");
182
- const handleClick = React5__namespace.useCallback(
182
+ const handleClick = React6__namespace.useCallback(
183
183
  (event) => {
184
184
  if (onClick) {
185
185
  try {
@@ -363,7 +363,7 @@ var buttonVariants = classVarianceAuthority.cva(baseStyles, {
363
363
  size: "default"
364
364
  }
365
365
  });
366
- var Pressable = React5__namespace.forwardRef(
366
+ var Pressable = React6__namespace.forwardRef(
367
367
  ({
368
368
  children,
369
369
  className,
@@ -462,9 +462,13 @@ var Pressable = React5__namespace.forwardRef(
462
462
  );
463
463
  Pressable.displayName = "Pressable";
464
464
  var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
465
- function DynamicIcon({ apiKey, ...props }) {
465
+ var DynamicIcon = React6__namespace.memo(function DynamicIcon2({
466
+ apiKey,
467
+ ...props
468
+ }) {
466
469
  return /* @__PURE__ */ jsxRuntime.jsx(icon.Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
467
- }
470
+ });
471
+ DynamicIcon.displayName = "DynamicIcon";
468
472
  function Avatar({
469
473
  className,
470
474
  ...props
@@ -590,7 +594,7 @@ var maxWidthStyles = {
590
594
  "4xl": "max-w-[1536px]",
591
595
  full: "max-w-full"
592
596
  };
593
- var Container = React5__namespace.default.forwardRef(
597
+ var Container = React6__namespace.default.forwardRef(
594
598
  ({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
595
599
  const Component = as;
596
600
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -896,7 +900,7 @@ var spacingStyles = {
896
900
  };
897
901
  var predefinedSpacings = ["none", "sm", "md", "lg", "xl", "hero"];
898
902
  var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
899
- var Section = React5__namespace.default.forwardRef(
903
+ var Section = React6__namespace.default.forwardRef(
900
904
  ({
901
905
  id,
902
906
  title,
@@ -991,11 +995,11 @@ function ArticleBreadcrumbSocialComponent({
991
995
  patternOpacity,
992
996
  patternClassName
993
997
  }) {
994
- const [activeSection, setActiveSection] = React5__namespace.useState(
998
+ const [activeSection, setActiveSection] = React6__namespace.useState(
995
999
  sections?.[0]?.id || ""
996
1000
  );
997
- const [showBackToTop, setShowBackToTop] = React5__namespace.useState(false);
998
- React5__namespace.useEffect(() => {
1001
+ const [showBackToTop, setShowBackToTop] = React6__namespace.useState(false);
1002
+ React6__namespace.useEffect(() => {
999
1003
  if (!enableTocTracking || !sections || sections.length === 0) return;
1000
1004
  const observer = new IntersectionObserver(
1001
1005
  (entries) => {
@@ -1013,7 +1017,7 @@ function ArticleBreadcrumbSocialComponent({
1013
1017
  });
1014
1018
  return () => observer.disconnect();
1015
1019
  }, [sections, enableTocTracking]);
1016
- React5__namespace.useEffect(() => {
1020
+ React6__namespace.useEffect(() => {
1017
1021
  if (!enableBackToTop) return;
1018
1022
  const handleScroll = () => {
1019
1023
  setShowBackToTop(window.scrollY > 400);
@@ -1021,15 +1025,15 @@ function ArticleBreadcrumbSocialComponent({
1021
1025
  window.addEventListener("scroll", handleScroll);
1022
1026
  return () => window.removeEventListener("scroll", handleScroll);
1023
1027
  }, [enableBackToTop]);
1024
- const scrollToTop = React5__namespace.useCallback(() => {
1028
+ const scrollToTop = React6__namespace.useCallback(() => {
1025
1029
  window.scrollTo({ top: 0, behavior: "smooth" });
1026
1030
  }, []);
1027
- const breadcrumbsContent = React5__namespace.useMemo(() => {
1031
+ const breadcrumbsContent = React6__namespace.useMemo(() => {
1028
1032
  if (breadcrumbsSlot) return breadcrumbsSlot;
1029
1033
  if (!breadcrumbs || breadcrumbs.length === 0) return null;
1030
1034
  return /* @__PURE__ */ jsxRuntime.jsx(Breadcrumb, { className: cn("mb-8", breadcrumbClassName), children: /* @__PURE__ */ jsxRuntime.jsxs(BreadcrumbList, { children: [
1031
1035
  /* @__PURE__ */ jsxRuntime.jsx(BreadcrumbItem, { children: /* @__PURE__ */ jsxRuntime.jsx(BreadcrumbLink, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(Pressable, { href: "#", children: /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/home", size: 16 }) }) }) }),
1032
- breadcrumbs.map((crumb, index) => /* @__PURE__ */ jsxRuntime.jsxs(React5__namespace.Fragment, { children: [
1036
+ breadcrumbs.map((crumb, index) => /* @__PURE__ */ jsxRuntime.jsxs(React6__namespace.Fragment, { children: [
1033
1037
  /* @__PURE__ */ jsxRuntime.jsx(BreadcrumbSeparator, {}),
1034
1038
  /* @__PURE__ */ jsxRuntime.jsx(BreadcrumbItem, { children: /* @__PURE__ */ jsxRuntime.jsx(BreadcrumbLink, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(Pressable, { href: crumb.href, children: crumb.label }) }) })
1035
1039
  ] }, index)),
@@ -1039,7 +1043,7 @@ function ArticleBreadcrumbSocialComponent({
1039
1043
  ] })
1040
1044
  ] }) });
1041
1045
  }, [breadcrumbsSlot, breadcrumbs, currentPage, breadcrumbClassName]);
1042
- const authorContent = React5__namespace.useMemo(() => {
1046
+ const authorContent = React6__namespace.useMemo(() => {
1043
1047
  if (authorSlot) return authorSlot;
1044
1048
  if (!author) return null;
1045
1049
  return /* @__PURE__ */ jsxRuntime.jsxs(
@@ -1062,7 +1066,7 @@ function ArticleBreadcrumbSocialComponent({
1062
1066
  }
1063
1067
  );
1064
1068
  }, [authorSlot, author, publishDate, readTime, authorClassName]);
1065
- const heroMediaContent = React5__namespace.useMemo(() => {
1069
+ const heroMediaContent = React6__namespace.useMemo(() => {
1066
1070
  if (heroMediaSlot) return heroMediaSlot;
1067
1071
  if (!heroImageSrc) return null;
1068
1072
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -1084,7 +1088,7 @@ function ArticleBreadcrumbSocialComponent({
1084
1088
  heroImageClassName,
1085
1089
  optixFlowConfig
1086
1090
  ]);
1087
- const tocContent = React5__namespace.useMemo(() => {
1091
+ const tocContent = React6__namespace.useMemo(() => {
1088
1092
  if (tocSlot) return tocSlot;
1089
1093
  if (!sections || sections.length === 0) return null;
1090
1094
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("rounded-lg border p-4", tocClassName), children: [
@@ -1092,7 +1096,7 @@ function ArticleBreadcrumbSocialComponent({
1092
1096
  /* @__PURE__ */ jsxRuntime.jsx("nav", { className: "space-y-2", children: sections.map((section) => {
1093
1097
  const isActive = activeSection === section.id;
1094
1098
  if (renderSectionLink) {
1095
- return /* @__PURE__ */ jsxRuntime.jsx(React5__namespace.Fragment, { children: renderSectionLink(section, isActive) }, section.id);
1099
+ return /* @__PURE__ */ jsxRuntime.jsx(React6__namespace.Fragment, { children: renderSectionLink(section, isActive) }, section.id);
1096
1100
  }
1097
1101
  return /* @__PURE__ */ jsxRuntime.jsx(
1098
1102
  Pressable,
@@ -1,6 +1,6 @@
1
1
  "use client";
2
- import * as React5 from 'react';
3
- import React5__default from 'react';
2
+ import * as React6 from 'react';
3
+ import React6__default from 'react';
4
4
  import { clsx } from 'clsx';
5
5
  import { twMerge } from 'tailwind-merge';
6
6
  import { Img } from '@page-speed/img';
@@ -96,7 +96,7 @@ function useNavigation({
96
96
  href,
97
97
  onClick
98
98
  } = {}) {
99
- const linkType = React5.useMemo(() => {
99
+ const linkType = React6.useMemo(() => {
100
100
  if (!href || href.trim() === "") {
101
101
  return onClick ? "none" : "none";
102
102
  }
@@ -117,7 +117,7 @@ function useNavigation({
117
117
  return "internal";
118
118
  }
119
119
  }, [href, onClick]);
120
- const normalizedHref = React5.useMemo(() => {
120
+ const normalizedHref = React6.useMemo(() => {
121
121
  if (!href || href.trim() === "") {
122
122
  return void 0;
123
123
  }
@@ -135,7 +135,7 @@ function useNavigation({
135
135
  return trimmed;
136
136
  }
137
137
  }, [href, linkType]);
138
- const target = React5.useMemo(() => {
138
+ const target = React6.useMemo(() => {
139
139
  switch (linkType) {
140
140
  case "external":
141
141
  return "_blank";
@@ -148,7 +148,7 @@ function useNavigation({
148
148
  return void 0;
149
149
  }
150
150
  }, [linkType]);
151
- const rel = React5.useMemo(() => {
151
+ const rel = React6.useMemo(() => {
152
152
  if (linkType === "external") {
153
153
  return "noopener noreferrer";
154
154
  }
@@ -157,7 +157,7 @@ function useNavigation({
157
157
  const isExternal = linkType === "external";
158
158
  const isInternal = linkType === "internal";
159
159
  const shouldUseRouter = isInternal && typeof normalizedHref === "string" && normalizedHref.startsWith("/");
160
- const handleClick = React5.useCallback(
160
+ const handleClick = React6.useCallback(
161
161
  (event) => {
162
162
  if (onClick) {
163
163
  try {
@@ -341,7 +341,7 @@ var buttonVariants = cva(baseStyles, {
341
341
  size: "default"
342
342
  }
343
343
  });
344
- var Pressable = React5.forwardRef(
344
+ var Pressable = React6.forwardRef(
345
345
  ({
346
346
  children,
347
347
  className,
@@ -440,9 +440,13 @@ var Pressable = React5.forwardRef(
440
440
  );
441
441
  Pressable.displayName = "Pressable";
442
442
  var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
443
- function DynamicIcon({ apiKey, ...props }) {
443
+ var DynamicIcon = React6.memo(function DynamicIcon2({
444
+ apiKey,
445
+ ...props
446
+ }) {
444
447
  return /* @__PURE__ */ jsx(Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
445
- }
448
+ });
449
+ DynamicIcon.displayName = "DynamicIcon";
446
450
  function Avatar({
447
451
  className,
448
452
  ...props
@@ -568,7 +572,7 @@ var maxWidthStyles = {
568
572
  "4xl": "max-w-[1536px]",
569
573
  full: "max-w-full"
570
574
  };
571
- var Container = React5__default.forwardRef(
575
+ var Container = React6__default.forwardRef(
572
576
  ({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
573
577
  const Component = as;
574
578
  return /* @__PURE__ */ jsx(
@@ -874,7 +878,7 @@ var spacingStyles = {
874
878
  };
875
879
  var predefinedSpacings = ["none", "sm", "md", "lg", "xl", "hero"];
876
880
  var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
877
- var Section = React5__default.forwardRef(
881
+ var Section = React6__default.forwardRef(
878
882
  ({
879
883
  id,
880
884
  title,
@@ -969,11 +973,11 @@ function ArticleBreadcrumbSocialComponent({
969
973
  patternOpacity,
970
974
  patternClassName
971
975
  }) {
972
- const [activeSection, setActiveSection] = React5.useState(
976
+ const [activeSection, setActiveSection] = React6.useState(
973
977
  sections?.[0]?.id || ""
974
978
  );
975
- const [showBackToTop, setShowBackToTop] = React5.useState(false);
976
- React5.useEffect(() => {
979
+ const [showBackToTop, setShowBackToTop] = React6.useState(false);
980
+ React6.useEffect(() => {
977
981
  if (!enableTocTracking || !sections || sections.length === 0) return;
978
982
  const observer = new IntersectionObserver(
979
983
  (entries) => {
@@ -991,7 +995,7 @@ function ArticleBreadcrumbSocialComponent({
991
995
  });
992
996
  return () => observer.disconnect();
993
997
  }, [sections, enableTocTracking]);
994
- React5.useEffect(() => {
998
+ React6.useEffect(() => {
995
999
  if (!enableBackToTop) return;
996
1000
  const handleScroll = () => {
997
1001
  setShowBackToTop(window.scrollY > 400);
@@ -999,15 +1003,15 @@ function ArticleBreadcrumbSocialComponent({
999
1003
  window.addEventListener("scroll", handleScroll);
1000
1004
  return () => window.removeEventListener("scroll", handleScroll);
1001
1005
  }, [enableBackToTop]);
1002
- const scrollToTop = React5.useCallback(() => {
1006
+ const scrollToTop = React6.useCallback(() => {
1003
1007
  window.scrollTo({ top: 0, behavior: "smooth" });
1004
1008
  }, []);
1005
- const breadcrumbsContent = React5.useMemo(() => {
1009
+ const breadcrumbsContent = React6.useMemo(() => {
1006
1010
  if (breadcrumbsSlot) return breadcrumbsSlot;
1007
1011
  if (!breadcrumbs || breadcrumbs.length === 0) return null;
1008
1012
  return /* @__PURE__ */ jsx(Breadcrumb, { className: cn("mb-8", breadcrumbClassName), children: /* @__PURE__ */ jsxs(BreadcrumbList, { children: [
1009
1013
  /* @__PURE__ */ jsx(BreadcrumbItem, { children: /* @__PURE__ */ jsx(BreadcrumbLink, { asChild: true, children: /* @__PURE__ */ jsx(Pressable, { href: "#", children: /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/home", size: 16 }) }) }) }),
1010
- breadcrumbs.map((crumb, index) => /* @__PURE__ */ jsxs(React5.Fragment, { children: [
1014
+ breadcrumbs.map((crumb, index) => /* @__PURE__ */ jsxs(React6.Fragment, { children: [
1011
1015
  /* @__PURE__ */ jsx(BreadcrumbSeparator, {}),
1012
1016
  /* @__PURE__ */ jsx(BreadcrumbItem, { children: /* @__PURE__ */ jsx(BreadcrumbLink, { asChild: true, children: /* @__PURE__ */ jsx(Pressable, { href: crumb.href, children: crumb.label }) }) })
1013
1017
  ] }, index)),
@@ -1017,7 +1021,7 @@ function ArticleBreadcrumbSocialComponent({
1017
1021
  ] })
1018
1022
  ] }) });
1019
1023
  }, [breadcrumbsSlot, breadcrumbs, currentPage, breadcrumbClassName]);
1020
- const authorContent = React5.useMemo(() => {
1024
+ const authorContent = React6.useMemo(() => {
1021
1025
  if (authorSlot) return authorSlot;
1022
1026
  if (!author) return null;
1023
1027
  return /* @__PURE__ */ jsxs(
@@ -1040,7 +1044,7 @@ function ArticleBreadcrumbSocialComponent({
1040
1044
  }
1041
1045
  );
1042
1046
  }, [authorSlot, author, publishDate, readTime, authorClassName]);
1043
- const heroMediaContent = React5.useMemo(() => {
1047
+ const heroMediaContent = React6.useMemo(() => {
1044
1048
  if (heroMediaSlot) return heroMediaSlot;
1045
1049
  if (!heroImageSrc) return null;
1046
1050
  return /* @__PURE__ */ jsx(
@@ -1062,7 +1066,7 @@ function ArticleBreadcrumbSocialComponent({
1062
1066
  heroImageClassName,
1063
1067
  optixFlowConfig
1064
1068
  ]);
1065
- const tocContent = React5.useMemo(() => {
1069
+ const tocContent = React6.useMemo(() => {
1066
1070
  if (tocSlot) return tocSlot;
1067
1071
  if (!sections || sections.length === 0) return null;
1068
1072
  return /* @__PURE__ */ jsxs("div", { className: cn("rounded-lg border p-4", tocClassName), children: [
@@ -1070,7 +1074,7 @@ function ArticleBreadcrumbSocialComponent({
1070
1074
  /* @__PURE__ */ jsx("nav", { className: "space-y-2", children: sections.map((section) => {
1071
1075
  const isActive = activeSection === section.id;
1072
1076
  if (renderSectionLink) {
1073
- return /* @__PURE__ */ jsx(React5.Fragment, { children: renderSectionLink(section, isActive) }, section.id);
1077
+ return /* @__PURE__ */ jsx(React6.Fragment, { children: renderSectionLink(section, isActive) }, section.id);
1074
1078
  }
1075
1079
  return /* @__PURE__ */ jsx(
1076
1080
  Pressable,
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  'use strict';
3
3
 
4
- var React6 = require('react');
4
+ var React7 = require('react');
5
5
  var clsx = require('clsx');
6
6
  var tailwindMerge = require('tailwind-merge');
7
7
  var img = require('@page-speed/img');
@@ -30,7 +30,7 @@ function _interopNamespace(e) {
30
30
  return Object.freeze(n);
31
31
  }
32
32
 
33
- var React6__namespace = /*#__PURE__*/_interopNamespace(React6);
33
+ var React7__namespace = /*#__PURE__*/_interopNamespace(React7);
34
34
  var AvatarPrimitive__namespace = /*#__PURE__*/_interopNamespace(AvatarPrimitive);
35
35
 
36
36
  // components/blocks/article/article-chapters-author.tsx
@@ -119,7 +119,7 @@ function useNavigation({
119
119
  href,
120
120
  onClick
121
121
  } = {}) {
122
- const linkType = React6__namespace.useMemo(() => {
122
+ const linkType = React7__namespace.useMemo(() => {
123
123
  if (!href || href.trim() === "") {
124
124
  return onClick ? "none" : "none";
125
125
  }
@@ -140,7 +140,7 @@ function useNavigation({
140
140
  return "internal";
141
141
  }
142
142
  }, [href, onClick]);
143
- const normalizedHref = React6__namespace.useMemo(() => {
143
+ const normalizedHref = React7__namespace.useMemo(() => {
144
144
  if (!href || href.trim() === "") {
145
145
  return void 0;
146
146
  }
@@ -158,7 +158,7 @@ function useNavigation({
158
158
  return trimmed;
159
159
  }
160
160
  }, [href, linkType]);
161
- const target = React6__namespace.useMemo(() => {
161
+ const target = React7__namespace.useMemo(() => {
162
162
  switch (linkType) {
163
163
  case "external":
164
164
  return "_blank";
@@ -171,7 +171,7 @@ function useNavigation({
171
171
  return void 0;
172
172
  }
173
173
  }, [linkType]);
174
- const rel = React6__namespace.useMemo(() => {
174
+ const rel = React7__namespace.useMemo(() => {
175
175
  if (linkType === "external") {
176
176
  return "noopener noreferrer";
177
177
  }
@@ -180,7 +180,7 @@ function useNavigation({
180
180
  const isExternal = linkType === "external";
181
181
  const isInternal = linkType === "internal";
182
182
  const shouldUseRouter = isInternal && typeof normalizedHref === "string" && normalizedHref.startsWith("/");
183
- const handleClick = React6__namespace.useCallback(
183
+ const handleClick = React7__namespace.useCallback(
184
184
  (event) => {
185
185
  if (onClick) {
186
186
  try {
@@ -364,7 +364,7 @@ var buttonVariants = classVarianceAuthority.cva(baseStyles, {
364
364
  size: "default"
365
365
  }
366
366
  });
367
- var Pressable = React6__namespace.forwardRef(
367
+ var Pressable = React7__namespace.forwardRef(
368
368
  ({
369
369
  children,
370
370
  className,
@@ -463,9 +463,13 @@ var Pressable = React6__namespace.forwardRef(
463
463
  );
464
464
  Pressable.displayName = "Pressable";
465
465
  var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
466
- function DynamicIcon({ apiKey, ...props }) {
466
+ var DynamicIcon = React7__namespace.memo(function DynamicIcon2({
467
+ apiKey,
468
+ ...props
469
+ }) {
467
470
  return /* @__PURE__ */ jsxRuntime.jsx(icon.Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
468
- }
471
+ });
472
+ DynamicIcon.displayName = "DynamicIcon";
469
473
  function Avatar({
470
474
  className,
471
475
  ...props
@@ -591,7 +595,7 @@ var maxWidthStyles = {
591
595
  "4xl": "max-w-[1536px]",
592
596
  full: "max-w-full"
593
597
  };
594
- var Container = React6__namespace.default.forwardRef(
598
+ var Container = React7__namespace.default.forwardRef(
595
599
  ({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
596
600
  const Component = as;
597
601
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -897,7 +901,7 @@ var spacingStyles = {
897
901
  };
898
902
  var predefinedSpacings = ["none", "sm", "md", "lg", "xl", "hero"];
899
903
  var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
900
- var Section = React6__namespace.default.forwardRef(
904
+ var Section = React7__namespace.default.forwardRef(
901
905
  ({
902
906
  id,
903
907
  title,
@@ -991,7 +995,7 @@ var platformIconMap = {
991
995
  dribbble: "cib/dribbble",
992
996
  unknown: "icon-park-solid/circular-connection"
993
997
  };
994
- var SocialLinkIcon = React6__namespace.forwardRef(
998
+ var SocialLinkIcon = React7__namespace.forwardRef(
995
999
  ({
996
1000
  platformName,
997
1001
  label,
@@ -1004,13 +1008,13 @@ var SocialLinkIcon = React6__namespace.forwardRef(
1004
1008
  ...pressableProps
1005
1009
  }, ref) => {
1006
1010
  const platform = usePlatformFromUrl.usePlatformFromUrl(href);
1007
- const smartPlatformName = React6__namespace.useMemo(() => {
1011
+ const smartPlatformName = React7__namespace.useMemo(() => {
1008
1012
  return platform || platformName;
1009
1013
  }, [platform, platformName]);
1010
- const iconName = React6__namespace.useMemo(() => {
1014
+ const iconName = React7__namespace.useMemo(() => {
1011
1015
  return iconNameOverride || platformIconMap[smartPlatformName];
1012
1016
  }, [iconNameOverride, smartPlatformName]);
1013
- const accessibleLabel = React6__namespace.useMemo(() => {
1017
+ const accessibleLabel = React7__namespace.useMemo(() => {
1014
1018
  return label || platformName;
1015
1019
  }, [label, platformName]);
1016
1020
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -1078,10 +1082,10 @@ function ArticleChaptersAuthorComponent({
1078
1082
  pattern,
1079
1083
  patternOpacity
1080
1084
  }) {
1081
- const [activeChapter, setActiveChapter] = React6__namespace.useState(
1085
+ const [activeChapter, setActiveChapter] = React7__namespace.useState(
1082
1086
  chapters?.[0]?.id || ""
1083
1087
  );
1084
- React6__namespace.useEffect(() => {
1088
+ React7__namespace.useEffect(() => {
1085
1089
  if (!enableChapterTracking || !chapters || chapters.length === 0) return;
1086
1090
  const observer = new IntersectionObserver(
1087
1091
  (entries) => {
@@ -1099,12 +1103,12 @@ function ArticleChaptersAuthorComponent({
1099
1103
  });
1100
1104
  return () => observer.disconnect();
1101
1105
  }, [chapters, enableChapterTracking]);
1102
- const breadcrumbsContent = React6__namespace.useMemo(() => {
1106
+ const breadcrumbsContent = React7__namespace.useMemo(() => {
1103
1107
  if (breadcrumbsSlot) return breadcrumbsSlot;
1104
1108
  if (!breadcrumbs || breadcrumbs.length === 0) return null;
1105
1109
  return /* @__PURE__ */ jsxRuntime.jsx(Breadcrumb, { className: cn("mb-8 md:mb-20", breadcrumbClassName), children: /* @__PURE__ */ jsxRuntime.jsxs(BreadcrumbList, { children: [
1106
1110
  /* @__PURE__ */ jsxRuntime.jsx(BreadcrumbItem, { children: /* @__PURE__ */ jsxRuntime.jsx(BreadcrumbLink, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(Pressable, { href: "#", children: /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/home", size: 16 }) }) }) }),
1107
- breadcrumbs.map((crumb, index) => /* @__PURE__ */ jsxRuntime.jsxs(React6__namespace.Fragment, { children: [
1111
+ breadcrumbs.map((crumb, index) => /* @__PURE__ */ jsxRuntime.jsxs(React7__namespace.Fragment, { children: [
1108
1112
  /* @__PURE__ */ jsxRuntime.jsx(BreadcrumbSeparator, {}),
1109
1113
  /* @__PURE__ */ jsxRuntime.jsx(BreadcrumbItem, { children: /* @__PURE__ */ jsxRuntime.jsx(BreadcrumbLink, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(Pressable, { href: crumb.href, children: crumb.label }) }) })
1110
1114
  ] }, index)),
@@ -1112,7 +1116,7 @@ function ArticleChaptersAuthorComponent({
1112
1116
  /* @__PURE__ */ jsxRuntime.jsx(BreadcrumbItem, { children: /* @__PURE__ */ jsxRuntime.jsx(BreadcrumbPage, { children: typeof currentPage === "string" ? currentPage : currentPage }) })
1113
1117
  ] }) });
1114
1118
  }, [breadcrumbsSlot, breadcrumbs, currentPage, breadcrumbClassName]);
1115
- const chaptersNavContent = React6__namespace.useMemo(() => {
1119
+ const chaptersNavContent = React7__namespace.useMemo(() => {
1116
1120
  if (chaptersSlot) return chaptersSlot;
1117
1121
  if (!chapters || chapters.length === 0) return null;
1118
1122
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("rounded-lg border p-4", chaptersClassName), children: [
@@ -1120,7 +1124,7 @@ function ArticleChaptersAuthorComponent({
1120
1124
  /* @__PURE__ */ jsxRuntime.jsx("nav", { className: "space-y-2", children: chapters.map((chapter) => {
1121
1125
  const isActive = activeChapter === chapter.id;
1122
1126
  if (renderChapterLink) {
1123
- return /* @__PURE__ */ jsxRuntime.jsx(React6__namespace.Fragment, { children: renderChapterLink(chapter, isActive) }, chapter.id);
1127
+ return /* @__PURE__ */ jsxRuntime.jsx(React7__namespace.Fragment, { children: renderChapterLink(chapter, isActive) }, chapter.id);
1124
1128
  }
1125
1129
  return /* @__PURE__ */ jsxRuntime.jsxs(
1126
1130
  Pressable,
@@ -1154,7 +1158,7 @@ function ArticleChaptersAuthorComponent({
1154
1158
  renderChapterLink,
1155
1159
  chaptersClassName
1156
1160
  ]);
1157
- const authorCardContent = React6__namespace.useMemo(() => {
1161
+ const authorCardContent = React7__namespace.useMemo(() => {
1158
1162
  if (authorSlot) return authorSlot;
1159
1163
  if (!author) return null;
1160
1164
  let socialLinksContent = null;
@@ -1203,7 +1207,7 @@ function ArticleChaptersAuthorComponent({
1203
1207
  socialLinksContent
1204
1208
  ] });
1205
1209
  }, [authorSlot, author, authorClassName]);
1206
- const heroMediaContent = React6__namespace.useMemo(() => {
1210
+ const heroMediaContent = React7__namespace.useMemo(() => {
1207
1211
  if (heroMediaSlot) return heroMediaSlot;
1208
1212
  if (!heroImageSrc) return null;
1209
1213
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -1225,7 +1229,7 @@ function ArticleChaptersAuthorComponent({
1225
1229
  heroImageClassName,
1226
1230
  optixFlowConfig
1227
1231
  ]);
1228
- const conclusionContent = React6__namespace.useMemo(() => {
1232
+ const conclusionContent = React7__namespace.useMemo(() => {
1229
1233
  if (conclusionSlot) return conclusionSlot;
1230
1234
  if (!conclusionTitle && !conclusionDescription && (!conclusionActions || conclusionActions.length === 0))
1231
1235
  return null;