@opensite/ui 2.8.0 → 2.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (717) hide show
  1. package/dist/about-culture-tabs.cjs +25 -21
  2. package/dist/about-culture-tabs.js +23 -19
  3. package/dist/about-developer-profile.cjs +6 -2
  4. package/dist/about-developer-profile.js +6 -2
  5. package/dist/about-expandable-values.cjs +6 -2
  6. package/dist/about-expandable-values.js +6 -2
  7. package/dist/about-location-info-hero.cjs +6 -2
  8. package/dist/about-location-info-hero.js +6 -2
  9. package/dist/about-mission-principles.cjs +6 -2
  10. package/dist/about-mission-principles.js +6 -2
  11. package/dist/about-network-spotlight.cjs +18 -14
  12. package/dist/about-network-spotlight.js +16 -12
  13. package/dist/about-split-hero.cjs +6 -2
  14. package/dist/about-split-hero.js +6 -2
  15. package/dist/about-startup-team.cjs +6 -2
  16. package/dist/about-startup-team.js +6 -2
  17. package/dist/article-breadcrumb-social.cjs +27 -23
  18. package/dist/article-breadcrumb-social.js +27 -23
  19. package/dist/article-chapters-author.cjs +29 -25
  20. package/dist/article-chapters-author.js +29 -25
  21. package/dist/article-compact-toc.cjs +26 -22
  22. package/dist/article-compact-toc.js +26 -22
  23. package/dist/article-sidebar-sticky.cjs +6 -2
  24. package/dist/article-sidebar-sticky.js +6 -2
  25. package/dist/auto-scroll-carousel.cjs +28 -24
  26. package/dist/auto-scroll-carousel.js +26 -22
  27. package/dist/banner-announcement-dismissible.cjs +6 -2
  28. package/dist/banner-announcement-dismissible.js +6 -2
  29. package/dist/banner-delivery-countdown.cjs +6 -2
  30. package/dist/banner-delivery-countdown.js +6 -2
  31. package/dist/banner-floating-offer.cjs +6 -2
  32. package/dist/banner-floating-offer.js +6 -2
  33. package/dist/banner-gdpr-rights.cjs +6 -2
  34. package/dist/banner-gdpr-rights.js +6 -2
  35. package/dist/banner-privacy-notice.cjs +6 -2
  36. package/dist/banner-privacy-notice.js +6 -2
  37. package/dist/banner-social-follow.cjs +6 -2
  38. package/dist/banner-social-follow.js +6 -2
  39. package/dist/banner-survey-incentive.cjs +6 -2
  40. package/dist/banner-survey-incentive.js +6 -2
  41. package/dist/blog-cards-read-time.cjs +6 -2
  42. package/dist/blog-cards-read-time.js +6 -2
  43. package/dist/blog-cards-tagline-cta.cjs +6 -2
  44. package/dist/blog-cards-tagline-cta.js +6 -2
  45. package/dist/blog-carousel-apple.cjs +25 -21
  46. package/dist/blog-carousel-apple.js +21 -17
  47. package/dist/blog-category-overlay.cjs +6 -2
  48. package/dist/blog-category-overlay.js +6 -2
  49. package/dist/blog-filtered-results.cjs +30 -26
  50. package/dist/blog-filtered-results.js +24 -20
  51. package/dist/blog-horizontal-cards.cjs +6 -2
  52. package/dist/blog-horizontal-cards.js +6 -2
  53. package/dist/blog-horizontal-timeline.cjs +6 -2
  54. package/dist/blog-horizontal-timeline.js +6 -2
  55. package/dist/carousel-animated-sections.cjs +23 -19
  56. package/dist/carousel-animated-sections.js +23 -19
  57. package/dist/carousel-auto-progress-slides.cjs +6 -2
  58. package/dist/carousel-auto-progress-slides.js +6 -2
  59. package/dist/carousel-autoplay-progress.cjs +34 -30
  60. package/dist/carousel-autoplay-progress.js +34 -30
  61. package/dist/carousel-badge-cards.cjs +31 -27
  62. package/dist/carousel-badge-cards.js +26 -22
  63. package/dist/carousel-demo-link.cjs +32 -28
  64. package/dist/carousel-demo-link.js +26 -22
  65. package/dist/carousel-feature-badge.cjs +22 -18
  66. package/dist/carousel-feature-badge.js +22 -18
  67. package/dist/carousel-gallery-thumbnails.cjs +6 -2
  68. package/dist/carousel-gallery-thumbnails.js +6 -2
  69. package/dist/carousel-gradient-overlay.cjs +32 -28
  70. package/dist/carousel-gradient-overlay.js +26 -22
  71. package/dist/carousel-gradient-text.cjs +32 -28
  72. package/dist/carousel-gradient-text.js +26 -22
  73. package/dist/carousel-horizontal-cards.cjs +20 -16
  74. package/dist/carousel-horizontal-cards.js +20 -16
  75. package/dist/carousel-icon-sidebar.cjs +38 -34
  76. package/dist/carousel-icon-sidebar.js +26 -22
  77. package/dist/carousel-icon-tabs.cjs +39 -35
  78. package/dist/carousel-icon-tabs.js +26 -22
  79. package/dist/carousel-image-hero.cjs +22 -18
  80. package/dist/carousel-image-hero.js +22 -18
  81. package/dist/carousel-multi-step-showcase.cjs +6 -2
  82. package/dist/carousel-multi-step-showcase.js +6 -2
  83. package/dist/carousel-pagination.cjs +6 -2
  84. package/dist/carousel-pagination.js +6 -2
  85. package/dist/carousel-portfolio-hero.cjs +22 -18
  86. package/dist/carousel-portfolio-hero.js +22 -18
  87. package/dist/carousel-product-feature-showcase.cjs +6 -2
  88. package/dist/carousel-product-feature-showcase.js +6 -2
  89. package/dist/carousel-progress-slider.cjs +28 -24
  90. package/dist/carousel-progress-slider.js +28 -24
  91. package/dist/carousel-scale-focus.cjs +41 -37
  92. package/dist/carousel-scale-focus.js +26 -22
  93. package/dist/carousel-sidebar-resources.cjs +34 -30
  94. package/dist/carousel-sidebar-resources.js +26 -22
  95. package/dist/carousel-tabs-content.cjs +39 -35
  96. package/dist/carousel-tabs-content.js +26 -22
  97. package/dist/case-studies-featured-border.cjs +6 -2
  98. package/dist/case-studies-featured-border.js +6 -2
  99. package/dist/case-study-stats-metrics.cjs +6 -2
  100. package/dist/case-study-stats-metrics.js +6 -2
  101. package/dist/case-study-toc-social-sidebar.cjs +6 -2
  102. package/dist/case-study-toc-social-sidebar.js +6 -2
  103. package/dist/community-initiatives.cjs +19 -15
  104. package/dist/community-initiatives.js +17 -13
  105. package/dist/comparison-ai-models.cjs +18 -14
  106. package/dist/comparison-ai-models.js +17 -13
  107. package/dist/comparison-feature-cards.cjs +16 -12
  108. package/dist/comparison-feature-cards.js +16 -12
  109. package/dist/comparison-feature-grid.cjs +14 -10
  110. package/dist/comparison-feature-grid.js +14 -10
  111. package/dist/comparison-grid-badges.cjs +13 -9
  112. package/dist/comparison-grid-badges.js +13 -9
  113. package/dist/comparison-legacy-modern.cjs +15 -11
  114. package/dist/comparison-legacy-modern.js +15 -11
  115. package/dist/comparison-table-tabs.cjs +15 -11
  116. package/dist/comparison-table-tabs.js +14 -10
  117. package/dist/comparison-table-two-column.cjs +14 -10
  118. package/dist/comparison-table-two-column.js +14 -10
  119. package/dist/components.cjs +199 -179
  120. package/dist/components.js +104 -84
  121. package/dist/contact-callback.cjs +27 -7
  122. package/dist/contact-callback.js +10 -5
  123. package/dist/contact-card.cjs +6 -2
  124. package/dist/contact-card.js +6 -2
  125. package/dist/contact-careers.cjs +18 -14
  126. package/dist/contact-careers.js +16 -12
  127. package/dist/contact-dark.cjs +6 -2
  128. package/dist/contact-dark.js +6 -2
  129. package/dist/contact-emergency.cjs +6 -2
  130. package/dist/contact-emergency.js +6 -2
  131. package/dist/contact-faq.cjs +9 -7
  132. package/dist/contact-faq.js +10 -5
  133. package/dist/contact-floating-banner.cjs +6 -2
  134. package/dist/contact-floating-banner.js +6 -2
  135. package/dist/contact-help-center.cjs +16 -12
  136. package/dist/contact-help-center.js +16 -12
  137. package/dist/contact-image.cjs +18 -14
  138. package/dist/contact-image.js +17 -13
  139. package/dist/contact-map.cjs +78 -58
  140. package/dist/contact-map.js +78 -58
  141. package/dist/cta-app-download-newsletter.cjs +6 -2
  142. package/dist/cta-app-download-newsletter.js +6 -2
  143. package/dist/cta-background-icon-badge.cjs +6 -2
  144. package/dist/cta-background-icon-badge.js +6 -2
  145. package/dist/cta-case-study-testimonial.cjs +6 -2
  146. package/dist/cta-case-study-testimonial.js +6 -2
  147. package/dist/cta-documentation-links.cjs +6 -2
  148. package/dist/cta-documentation-links.js +6 -2
  149. package/dist/cta-enterprise-dark-features.cjs +6 -2
  150. package/dist/cta-enterprise-dark-features.js +6 -2
  151. package/dist/cta-enterprise-split.cjs +6 -2
  152. package/dist/cta-enterprise-split.js +6 -2
  153. package/dist/cta-feature-cards-grid.cjs +6 -2
  154. package/dist/cta-feature-cards-grid.js +6 -2
  155. package/dist/cta-feature-checklist.cjs +17 -13
  156. package/dist/cta-feature-checklist.js +16 -12
  157. package/dist/cta-feature-list.cjs +6 -2
  158. package/dist/cta-feature-list.js +6 -2
  159. package/dist/cta-gradient-logos-floating.cjs +6 -2
  160. package/dist/cta-gradient-logos-floating.js +6 -2
  161. package/dist/cta-gradient-stats-hero.cjs +6 -2
  162. package/dist/cta-gradient-stats-hero.js +6 -2
  163. package/dist/cta-hero-feature-cards.cjs +6 -2
  164. package/dist/cta-hero-feature-cards.js +6 -2
  165. package/dist/cta-image-overlay-arrow.cjs +6 -2
  166. package/dist/cta-image-overlay-arrow.js +6 -2
  167. package/dist/cta-newsletter-features.cjs +12 -8
  168. package/dist/cta-newsletter-features.js +12 -8
  169. package/dist/cta-platform-demo.cjs +6 -2
  170. package/dist/cta-platform-demo.js +6 -2
  171. package/dist/cta-simple-centered.cjs +6 -2
  172. package/dist/cta-simple-centered.js +6 -2
  173. package/dist/cta-split-image-logos.cjs +6 -2
  174. package/dist/cta-split-image-logos.js +6 -2
  175. package/dist/cta-video-background-hero.cjs +6 -2
  176. package/dist/cta-video-background-hero.js +6 -2
  177. package/dist/cta-workflow-tabs.cjs +6 -2
  178. package/dist/cta-workflow-tabs.js +6 -2
  179. package/dist/dynamic-icon.cjs +27 -2
  180. package/dist/dynamic-icon.d.cts +2 -2
  181. package/dist/dynamic-icon.d.ts +2 -2
  182. package/dist/dynamic-icon.js +7 -2
  183. package/dist/expandable-case-study-cards.cjs +26 -6
  184. package/dist/expandable-case-study-cards.js +10 -5
  185. package/dist/faq-badge-support.cjs +25 -21
  186. package/dist/faq-badge-support.js +22 -18
  187. package/dist/faq-bordered-badge.cjs +9 -7
  188. package/dist/faq-bordered-badge.js +10 -5
  189. package/dist/faq-card-categories.cjs +18 -14
  190. package/dist/faq-card-categories.js +16 -12
  191. package/dist/faq-categorized-sections.cjs +9 -7
  192. package/dist/faq-categorized-sections.js +10 -5
  193. package/dist/faq-centered-accordion.cjs +9 -7
  194. package/dist/faq-centered-accordion.js +10 -5
  195. package/dist/faq-gradient-categories.cjs +18 -14
  196. package/dist/faq-gradient-categories.js +16 -12
  197. package/dist/faq-icon-benefits.cjs +18 -14
  198. package/dist/faq-icon-benefits.js +16 -12
  199. package/dist/faq-muted-cards.cjs +18 -14
  200. package/dist/faq-muted-cards.js +16 -12
  201. package/dist/faq-profile-sidebar.cjs +25 -21
  202. package/dist/faq-profile-sidebar.js +22 -18
  203. package/dist/faq-rounded-cards.cjs +18 -14
  204. package/dist/faq-rounded-cards.js +16 -12
  205. package/dist/faq-sidebar-navigation.cjs +20 -16
  206. package/dist/faq-sidebar-navigation.js +17 -13
  207. package/dist/faq-simple-accordion.cjs +18 -14
  208. package/dist/faq-simple-accordion.js +16 -12
  209. package/dist/faq-split-help.cjs +25 -21
  210. package/dist/faq-split-help.js +22 -18
  211. package/dist/faq-split-hero.cjs +9 -7
  212. package/dist/faq-split-hero.js +10 -5
  213. package/dist/feature-accordion-image.cjs +20 -16
  214. package/dist/feature-accordion-image.js +17 -13
  215. package/dist/feature-animated-carousel.cjs +35 -31
  216. package/dist/feature-animated-carousel.js +28 -24
  217. package/dist/feature-badge-grid-six.cjs +20 -16
  218. package/dist/feature-badge-grid-six.js +16 -12
  219. package/dist/feature-bento-image-grid.cjs +21 -17
  220. package/dist/feature-bento-image-grid.js +20 -16
  221. package/dist/feature-bento-utilities.cjs +19 -15
  222. package/dist/feature-bento-utilities.js +18 -14
  223. package/dist/feature-capabilities-grid.cjs +18 -14
  224. package/dist/feature-capabilities-grid.js +17 -13
  225. package/dist/feature-carousel-progress.cjs +31 -27
  226. package/dist/feature-carousel-progress.js +26 -22
  227. package/dist/feature-checklist-image.cjs +6 -2
  228. package/dist/feature-checklist-image.js +6 -2
  229. package/dist/feature-checklist-three-column.cjs +22 -18
  230. package/dist/feature-checklist-three-column.js +16 -12
  231. package/dist/feature-icon-grid-accent.cjs +26 -6
  232. package/dist/feature-icon-grid-accent.js +10 -5
  233. package/dist/feature-icon-grid-bordered.cjs +18 -14
  234. package/dist/feature-icon-grid-bordered.js +16 -12
  235. package/dist/feature-icon-grid-muted.cjs +18 -14
  236. package/dist/feature-icon-grid-muted.js +16 -12
  237. package/dist/feature-icon-tabs-content.cjs +20 -16
  238. package/dist/feature-icon-tabs-content.js +16 -12
  239. package/dist/feature-image-cards-three-column.cjs +29 -25
  240. package/dist/feature-image-cards-three-column.js +22 -18
  241. package/dist/feature-image-overlay-badge.cjs +18 -14
  242. package/dist/feature-image-overlay-badge.js +16 -12
  243. package/dist/feature-numbered-cards.cjs +20 -16
  244. package/dist/feature-numbered-cards.js +16 -12
  245. package/dist/feature-pattern-grid-links.cjs +19 -15
  246. package/dist/feature-pattern-grid-links.js +16 -12
  247. package/dist/feature-showcase.cjs +6 -2
  248. package/dist/feature-showcase.js +6 -2
  249. package/dist/feature-tabbed-content-image.cjs +21 -17
  250. package/dist/feature-tabbed-content-image.js +19 -15
  251. package/dist/feature-three-column-values.cjs +18 -14
  252. package/dist/feature-three-column-values.js +17 -13
  253. package/dist/feature-utility-cards-grid.cjs +20 -16
  254. package/dist/feature-utility-cards-grid.js +17 -13
  255. package/dist/footer-accordion-social.cjs +6 -2
  256. package/dist/footer-accordion-social.js +6 -2
  257. package/dist/footer-animated-social.cjs +6 -2
  258. package/dist/footer-animated-social.js +6 -2
  259. package/dist/footer-background-card.cjs +6 -2
  260. package/dist/footer-background-card.js +6 -2
  261. package/dist/footer-brand-description.cjs +6 -2
  262. package/dist/footer-brand-description.js +6 -2
  263. package/dist/footer-brand-links-contact.cjs +6 -2
  264. package/dist/footer-brand-links-contact.js +6 -2
  265. package/dist/footer-comprehensive-links.cjs +6 -2
  266. package/dist/footer-comprehensive-links.js +6 -2
  267. package/dist/footer-contact-card.cjs +6 -2
  268. package/dist/footer-contact-card.js +6 -2
  269. package/dist/footer-cta-banner.cjs +6 -2
  270. package/dist/footer-cta-banner.js +6 -2
  271. package/dist/footer-cta-social.cjs +24 -20
  272. package/dist/footer-cta-social.js +22 -18
  273. package/dist/footer-info-cards-accordion.cjs +24 -20
  274. package/dist/footer-info-cards-accordion.js +23 -19
  275. package/dist/footer-nav-social.cjs +6 -2
  276. package/dist/footer-nav-social.js +6 -2
  277. package/dist/footer-newsletter-contact.cjs +6 -2
  278. package/dist/footer-newsletter-contact.js +6 -2
  279. package/dist/footer-newsletter-grid.cjs +6 -2
  280. package/dist/footer-newsletter-grid.js +6 -2
  281. package/dist/footer-newsletter-minimal.cjs +27 -23
  282. package/dist/footer-newsletter-minimal.js +26 -22
  283. package/dist/footer-social-apps.cjs +26 -22
  284. package/dist/footer-social-apps.js +22 -18
  285. package/dist/footer-social-newsletter.cjs +6 -2
  286. package/dist/footer-social-newsletter.js +6 -2
  287. package/dist/footer-split-image-accordion.cjs +24 -20
  288. package/dist/footer-split-image-accordion.js +23 -19
  289. package/dist/geo-map.cjs +74 -54
  290. package/dist/geo-map.js +73 -53
  291. package/dist/hero-badge-shadow-overlay.cjs +6 -2
  292. package/dist/hero-badge-shadow-overlay.js +6 -2
  293. package/dist/hero-coming-soon-countdown.cjs +6 -2
  294. package/dist/hero-coming-soon-countdown.js +6 -2
  295. package/dist/hero-conversion-video-play.cjs +29 -25
  296. package/dist/hero-conversion-video-play.js +26 -22
  297. package/dist/hero-creative-studio-stacked.cjs +19 -15
  298. package/dist/hero-creative-studio-stacked.js +16 -12
  299. package/dist/hero-dashed-border-features.cjs +6 -2
  300. package/dist/hero-dashed-border-features.js +6 -2
  301. package/dist/hero-design-carousel-portfolio.cjs +29 -25
  302. package/dist/hero-design-carousel-portfolio.js +26 -22
  303. package/dist/hero-design-system-3d.cjs +18 -14
  304. package/dist/hero-design-system-3d.js +16 -12
  305. package/dist/hero-developer-tools-code.cjs +18 -14
  306. package/dist/hero-developer-tools-code.js +16 -12
  307. package/dist/hero-ecommerce-product-showcase.cjs +20 -16
  308. package/dist/hero-ecommerce-product-showcase.js +17 -13
  309. package/dist/hero-enterprise-security.cjs +6 -2
  310. package/dist/hero-enterprise-security.js +6 -2
  311. package/dist/hero-event-registration.cjs +21 -17
  312. package/dist/hero-event-registration.js +17 -13
  313. package/dist/hero-feature-cards-grid.cjs +6 -2
  314. package/dist/hero-feature-cards-grid.js +6 -2
  315. package/dist/hero-floating-images.cjs +26 -6
  316. package/dist/hero-floating-images.js +10 -5
  317. package/dist/hero-gradient-avatars-rating.cjs +19 -15
  318. package/dist/hero-gradient-avatars-rating.js +16 -12
  319. package/dist/hero-grid-pattern-solutions.cjs +6 -2
  320. package/dist/hero-grid-pattern-solutions.js +6 -2
  321. package/dist/hero-marketplace-scattered-images.cjs +6 -2
  322. package/dist/hero-marketplace-scattered-images.js +6 -2
  323. package/dist/hero-mentorship-video-split.cjs +6 -2
  324. package/dist/hero-mentorship-video-split.js +6 -2
  325. package/dist/hero-mobile-app-download.cjs +6 -2
  326. package/dist/hero-mobile-app-download.js +6 -2
  327. package/dist/hero-overlay-cta-grid.cjs +20 -16
  328. package/dist/hero-overlay-cta-grid.js +16 -12
  329. package/dist/hero-platform-features-grid.cjs +6 -2
  330. package/dist/hero-platform-features-grid.js +6 -2
  331. package/dist/hero-portfolio-creative.cjs +6 -2
  332. package/dist/hero-portfolio-creative.js +6 -2
  333. package/dist/hero-pricing-comparison.cjs +6 -2
  334. package/dist/hero-pricing-comparison.js +6 -2
  335. package/dist/hero-product-showcase-floating.cjs +27 -23
  336. package/dist/hero-product-showcase-floating.js +22 -18
  337. package/dist/hero-saas-dashboard-preview.cjs +6 -2
  338. package/dist/hero-saas-dashboard-preview.js +6 -2
  339. package/dist/hero-software-growth-video-dialog.cjs +19 -15
  340. package/dist/hero-software-growth-video-dialog.js +16 -12
  341. package/dist/hero-split-icon-cards.cjs +18 -14
  342. package/dist/hero-split-icon-cards.js +16 -12
  343. package/dist/hero-video-dialog-gradient.cjs +19 -15
  344. package/dist/hero-video-dialog-gradient.js +16 -12
  345. package/dist/hero-video-overlay-stars.cjs +18 -14
  346. package/dist/hero-video-overlay-stars.js +16 -12
  347. package/dist/index.cjs +200 -180
  348. package/dist/index.js +104 -84
  349. package/dist/industries-expandable-showcase.cjs +6 -2
  350. package/dist/industries-expandable-showcase.js +6 -2
  351. package/dist/industries-hover-reveal-grid.cjs +6 -2
  352. package/dist/industries-hover-reveal-grid.js +6 -2
  353. package/dist/industries-timeline-table.cjs +6 -2
  354. package/dist/industries-timeline-table.js +6 -2
  355. package/dist/interior-carousel.cjs +33 -29
  356. package/dist/interior-carousel.js +26 -22
  357. package/dist/link-page-bento-layout.cjs +6 -2
  358. package/dist/link-page-bento-layout.js +6 -2
  359. package/dist/link-page-grid-cards.cjs +6 -2
  360. package/dist/link-page-grid-cards.js +6 -2
  361. package/dist/link-page-minimal-profile.cjs +6 -2
  362. package/dist/link-page-minimal-profile.js +6 -2
  363. package/dist/link-page-newsletter-social.cjs +6 -2
  364. package/dist/link-page-newsletter-social.js +6 -2
  365. package/dist/link-tree-block.cjs +30 -26
  366. package/dist/link-tree-block.js +30 -26
  367. package/dist/list-achievements-showcase.cjs +6 -2
  368. package/dist/list-achievements-showcase.js +6 -2
  369. package/dist/list-feature-comparison.cjs +6 -2
  370. package/dist/list-feature-comparison.js +6 -2
  371. package/dist/list-metrics-dashboard.cjs +6 -2
  372. package/dist/list-metrics-dashboard.js +6 -2
  373. package/dist/list-searchable-grid.cjs +19 -15
  374. package/dist/list-searchable-grid.js +18 -14
  375. package/dist/list-service-category-table.cjs +26 -6
  376. package/dist/list-service-category-table.js +10 -5
  377. package/dist/navbar-animated-preview.cjs +6 -2
  378. package/dist/navbar-animated-preview.js +6 -2
  379. package/dist/navbar-centered-menu.cjs +6 -2
  380. package/dist/navbar-centered-menu.js +6 -2
  381. package/dist/navbar-dark-icons.cjs +6 -2
  382. package/dist/navbar-dark-icons.js +6 -2
  383. package/dist/navbar-dropdown-menu.cjs +6 -2
  384. package/dist/navbar-dropdown-menu.js +6 -2
  385. package/dist/navbar-education-platform.cjs +6 -2
  386. package/dist/navbar-education-platform.js +6 -2
  387. package/dist/navbar-enterprise-mega.cjs +6 -2
  388. package/dist/navbar-enterprise-mega.js +6 -2
  389. package/dist/navbar-feature-grid.cjs +6 -2
  390. package/dist/navbar-feature-grid.js +6 -2
  391. package/dist/navbar-floating-pill.cjs +6 -2
  392. package/dist/navbar-floating-pill.js +6 -2
  393. package/dist/navbar-fullscreen-menu.cjs +6 -2
  394. package/dist/navbar-fullscreen-menu.js +6 -2
  395. package/dist/navbar-icon-links.cjs +6 -2
  396. package/dist/navbar-icon-links.js +6 -2
  397. package/dist/navbar-image-preview.cjs +6 -2
  398. package/dist/navbar-image-preview.js +6 -2
  399. package/dist/navbar-mega-menu.cjs +6 -2
  400. package/dist/navbar-mega-menu.js +6 -2
  401. package/dist/navbar-multi-column-groups.cjs +6 -2
  402. package/dist/navbar-multi-column-groups.js +6 -2
  403. package/dist/navbar-platform-resources.cjs +6 -2
  404. package/dist/navbar-platform-resources.js +6 -2
  405. package/dist/navbar-search-focused.cjs +6 -2
  406. package/dist/navbar-search-focused.js +6 -2
  407. package/dist/navbar-sidebar-mobile.cjs +6 -2
  408. package/dist/navbar-sidebar-mobile.js +6 -2
  409. package/dist/navbar-simple-links.cjs +6 -2
  410. package/dist/navbar-simple-links.js +6 -2
  411. package/dist/navbar-split-cta.cjs +6 -2
  412. package/dist/navbar-split-cta.js +6 -2
  413. package/dist/navbar-sticky-compact.cjs +6 -2
  414. package/dist/navbar-sticky-compact.js +6 -2
  415. package/dist/navbar-tabbed-sections.cjs +6 -2
  416. package/dist/navbar-tabbed-sections.js +6 -2
  417. package/dist/navbar-transparent-overlay.cjs +6 -2
  418. package/dist/navbar-transparent-overlay.js +6 -2
  419. package/dist/offer-modal-membership-image.cjs +6 -2
  420. package/dist/offer-modal-membership-image.js +6 -2
  421. package/dist/offer-modal-newsletter-discount.cjs +6 -2
  422. package/dist/offer-modal-newsletter-discount.js +6 -2
  423. package/dist/offer-modal-sheet-newsletter.cjs +6 -2
  424. package/dist/offer-modal-sheet-newsletter.js +6 -2
  425. package/dist/payment-platform-icon.cjs +27 -2
  426. package/dist/payment-platform-icon.js +7 -2
  427. package/dist/pricing-addons-cards.cjs +19 -15
  428. package/dist/pricing-addons-cards.js +16 -12
  429. package/dist/pricing-addons-featured.cjs +20 -16
  430. package/dist/pricing-addons-featured.js +16 -12
  431. package/dist/pricing-collapsible-plans.cjs +19 -15
  432. package/dist/pricing-collapsible-plans.js +16 -12
  433. package/dist/pricing-columns-toggle.cjs +20 -16
  434. package/dist/pricing-columns-toggle.js +16 -12
  435. package/dist/pricing-comparison-headers.cjs +21 -17
  436. package/dist/pricing-comparison-headers.js +16 -12
  437. package/dist/pricing-comparison-table.cjs +21 -17
  438. package/dist/pricing-comparison-table.js +16 -12
  439. package/dist/pricing-discount-card.cjs +18 -14
  440. package/dist/pricing-discount-card.js +16 -12
  441. package/dist/pricing-enterprise-contact.cjs +18 -14
  442. package/dist/pricing-enterprise-contact.js +16 -12
  443. package/dist/pricing-feature-matrix.cjs +19 -15
  444. package/dist/pricing-feature-matrix.js +16 -12
  445. package/dist/pricing-four-tier-toggle.cjs +20 -16
  446. package/dist/pricing-four-tier-toggle.js +16 -12
  447. package/dist/pricing-full-comparison.cjs +19 -15
  448. package/dist/pricing-full-comparison.js +17 -13
  449. package/dist/pricing-gradient-cards.cjs +20 -16
  450. package/dist/pricing-gradient-cards.js +16 -12
  451. package/dist/pricing-icon-headers.cjs +19 -15
  452. package/dist/pricing-icon-headers.js +16 -12
  453. package/dist/pricing-minimal-cards.cjs +19 -15
  454. package/dist/pricing-minimal-cards.js +16 -12
  455. package/dist/pricing-packages-radio.cjs +18 -14
  456. package/dist/pricing-packages-radio.js +16 -12
  457. package/dist/pricing-popular-highlight.cjs +20 -16
  458. package/dist/pricing-popular-highlight.js +16 -12
  459. package/dist/pricing-radio-toggle.cjs +20 -16
  460. package/dist/pricing-radio-toggle.js +16 -12
  461. package/dist/pricing-responsive-table.cjs +18 -14
  462. package/dist/pricing-responsive-table.js +16 -12
  463. package/dist/pricing-services-cards.cjs +19 -15
  464. package/dist/pricing-services-cards.js +16 -12
  465. package/dist/pricing-simple-card.cjs +18 -14
  466. package/dist/pricing-simple-card.js +16 -12
  467. package/dist/pricing-single-card.cjs +19 -15
  468. package/dist/pricing-single-card.js +16 -12
  469. package/dist/pricing-split-layout.cjs +16 -12
  470. package/dist/pricing-split-layout.js +16 -12
  471. package/dist/pricing-spotlight-card.cjs +18 -14
  472. package/dist/pricing-spotlight-card.js +16 -12
  473. package/dist/pricing-switch-cards.cjs +20 -16
  474. package/dist/pricing-switch-cards.js +16 -12
  475. package/dist/pricing-tabs-toggle.cjs +20 -16
  476. package/dist/pricing-tabs-toggle.js +16 -12
  477. package/dist/pricing-tier-grid.cjs +19 -15
  478. package/dist/pricing-tier-grid.js +16 -12
  479. package/dist/pricing-toggle-cards.cjs +20 -16
  480. package/dist/pricing-toggle-cards.js +16 -12
  481. package/dist/pricing-toggle-period.cjs +18 -14
  482. package/dist/pricing-toggle-period.js +16 -12
  483. package/dist/pricing-two-column-basic.cjs +20 -16
  484. package/dist/pricing-two-column-basic.js +16 -12
  485. package/dist/process-expandable-timeline.cjs +6 -2
  486. package/dist/process-expandable-timeline.js +6 -2
  487. package/dist/process-icon-timeline.cjs +26 -6
  488. package/dist/process-icon-timeline.js +10 -5
  489. package/dist/process-numbered-services.cjs +6 -2
  490. package/dist/process-numbered-services.js +6 -2
  491. package/dist/process-roadmap-timeline.cjs +26 -6
  492. package/dist/process-roadmap-timeline.js +10 -5
  493. package/dist/process-scroll-image.cjs +24 -20
  494. package/dist/process-scroll-image.js +22 -18
  495. package/dist/process-steps-grid.cjs +26 -6
  496. package/dist/process-steps-grid.js +10 -5
  497. package/dist/process-sticky-steps.cjs +6 -2
  498. package/dist/process-sticky-steps.js +6 -2
  499. package/dist/project-background-reveal.cjs +17 -13
  500. package/dist/project-background-reveal.js +16 -12
  501. package/dist/project-card-overlay.cjs +26 -6
  502. package/dist/project-card-overlay.js +10 -5
  503. package/dist/project-carousel-cinematic.cjs +31 -27
  504. package/dist/project-carousel-cinematic.js +26 -22
  505. package/dist/project-carousel-detail-cards.cjs +31 -27
  506. package/dist/project-carousel-detail-cards.js +26 -22
  507. package/dist/project-carousel-minimal.cjs +31 -27
  508. package/dist/project-carousel-minimal.js +26 -22
  509. package/dist/project-detail-architecture-carousel.cjs +6 -2
  510. package/dist/project-detail-architecture-carousel.js +6 -2
  511. package/dist/project-detail-list-related.cjs +6 -2
  512. package/dist/project-detail-list-related.js +6 -2
  513. package/dist/project-detail-photography-breadcrumb.cjs +6 -2
  514. package/dist/project-detail-photography-breadcrumb.js +6 -2
  515. package/dist/project-detail-tabbed-case-study.cjs +6 -2
  516. package/dist/project-detail-tabbed-case-study.js +6 -2
  517. package/dist/project-experience-quote.cjs +17 -13
  518. package/dist/project-experience-quote.js +16 -12
  519. package/dist/project-featured-carousel.cjs +27 -23
  520. package/dist/project-featured-carousel.js +26 -22
  521. package/dist/project-horizontal-cards.cjs +17 -13
  522. package/dist/project-horizontal-cards.js +16 -12
  523. package/dist/project-interactive-hover-reveal.cjs +18 -14
  524. package/dist/project-interactive-hover-reveal.js +16 -12
  525. package/dist/project-scroll-reveal.cjs +26 -6
  526. package/dist/project-scroll-reveal.js +10 -5
  527. package/dist/project-video-carousel.cjs +31 -27
  528. package/dist/project-video-carousel.js +26 -22
  529. package/dist/project-video-hover-bento.cjs +26 -6
  530. package/dist/project-video-hover-bento.js +10 -5
  531. package/dist/project-video-hover-grid.cjs +26 -6
  532. package/dist/project-video-hover-grid.js +10 -5
  533. package/dist/project-video-hover-rounded.cjs +26 -6
  534. package/dist/project-video-hover-rounded.js +10 -5
  535. package/dist/project-video-hover-stack.cjs +26 -6
  536. package/dist/project-video-hover-stack.js +10 -5
  537. package/dist/project-video-hover-two-by-two.cjs +26 -6
  538. package/dist/project-video-hover-two-by-two.js +10 -5
  539. package/dist/project-work-showcase.cjs +17 -13
  540. package/dist/project-work-showcase.js +16 -12
  541. package/dist/project-zigzag-layout.cjs +16 -12
  542. package/dist/project-zigzag-layout.js +16 -12
  543. package/dist/registry.cjs +1737 -1717
  544. package/dist/registry.js +507 -487
  545. package/dist/resource-detail-document-sidebar.cjs +6 -2
  546. package/dist/resource-detail-document-sidebar.js +6 -2
  547. package/dist/resource-detail-whitepaper-sidebar.cjs +6 -2
  548. package/dist/resource-detail-whitepaper-sidebar.js +6 -2
  549. package/dist/resource-list-course-cards.cjs +6 -2
  550. package/dist/resource-list-course-cards.js +6 -2
  551. package/dist/resource-list-featured-articles.cjs +6 -2
  552. package/dist/resource-list-featured-articles.js +6 -2
  553. package/dist/resource-list-featured-grid.cjs +6 -2
  554. package/dist/resource-list-featured-grid.js +6 -2
  555. package/dist/resource-list-hero-filter.cjs +6 -2
  556. package/dist/resource-list-hero-filter.js +6 -2
  557. package/dist/resource-list-news-updates.cjs +6 -2
  558. package/dist/resource-list-news-updates.js +6 -2
  559. package/dist/service-detail-centered-expertise.cjs +16 -12
  560. package/dist/service-detail-centered-expertise.js +16 -12
  561. package/dist/service-detail-compact-cards.cjs +16 -12
  562. package/dist/service-detail-compact-cards.js +16 -12
  563. package/dist/service-detail-sidebar-related.cjs +16 -12
  564. package/dist/service-detail-sidebar-related.js +16 -12
  565. package/dist/service-detail-sidebar-stats.cjs +27 -7
  566. package/dist/service-detail-sidebar-stats.js +10 -5
  567. package/dist/service-hover-carousel.cjs +38 -34
  568. package/dist/service-hover-carousel.js +26 -22
  569. package/dist/services-list-accordion-benefits.cjs +16 -12
  570. package/dist/services-list-accordion-benefits.js +16 -12
  571. package/dist/services-list-accordion.cjs +10 -8
  572. package/dist/services-list-accordion.js +10 -5
  573. package/dist/services-list-cards-hover.cjs +16 -12
  574. package/dist/services-list-cards-hover.js +16 -12
  575. package/dist/services-list-category-accordion.cjs +10 -8
  576. package/dist/services-list-category-accordion.js +10 -5
  577. package/dist/services-list-centered-icons.cjs +27 -7
  578. package/dist/services-list-centered-icons.js +10 -5
  579. package/dist/services-list-culture-tabs.cjs +16 -12
  580. package/dist/services-list-culture-tabs.js +16 -12
  581. package/dist/services-list-feature-spotlight.cjs +27 -7
  582. package/dist/services-list-feature-spotlight.js +10 -5
  583. package/dist/services-list-featured-highlight.cjs +16 -12
  584. package/dist/services-list-featured-highlight.js +16 -12
  585. package/dist/services-list-hero-cards.cjs +6 -2
  586. package/dist/services-list-hero-cards.js +6 -2
  587. package/dist/services-list-icon-grid.cjs +27 -7
  588. package/dist/services-list-icon-grid.js +10 -5
  589. package/dist/services-list-image-cards.cjs +6 -2
  590. package/dist/services-list-image-cards.js +6 -2
  591. package/dist/services-list-image-overlay-grid.cjs +6 -2
  592. package/dist/services-list-image-overlay-grid.js +6 -2
  593. package/dist/services-list-masonry.cjs +16 -12
  594. package/dist/services-list-masonry.js +16 -12
  595. package/dist/services-list-methodology-steps.cjs +16 -12
  596. package/dist/services-list-methodology-steps.js +16 -12
  597. package/dist/services-list-minimal-grid.cjs +16 -12
  598. package/dist/services-list-minimal-grid.js +16 -12
  599. package/dist/services-list-muted-cards.cjs +27 -7
  600. package/dist/services-list-muted-cards.js +10 -5
  601. package/dist/services-list-numbered-steps.cjs +16 -12
  602. package/dist/services-list-numbered-steps.js +16 -12
  603. package/dist/services-list-pricing-grid.cjs +16 -12
  604. package/dist/services-list-pricing-grid.js +16 -12
  605. package/dist/services-list-progress-sidebar.cjs +16 -12
  606. package/dist/services-list-progress-sidebar.js +16 -12
  607. package/dist/services-list-split-checklist.cjs +16 -12
  608. package/dist/services-list-split-checklist.js +16 -12
  609. package/dist/services-list-sticky-image.cjs +6 -2
  610. package/dist/services-list-sticky-image.js +6 -2
  611. package/dist/services-list-table-hover.cjs +6 -2
  612. package/dist/services-list-table-hover.js +6 -2
  613. package/dist/services-list-tabs-features.cjs +10 -8
  614. package/dist/services-list-tabs-features.js +10 -5
  615. package/dist/services-list-timeline.cjs +16 -12
  616. package/dist/services-list-timeline.js +16 -12
  617. package/dist/services-list-two-column-grid.cjs +16 -12
  618. package/dist/services-list-two-column-grid.js +16 -12
  619. package/dist/services-list-vertical-tags.cjs +27 -7
  620. package/dist/services-list-vertical-tags.js +10 -5
  621. package/dist/services-list-video-showcase.cjs +18 -14
  622. package/dist/services-list-video-showcase.js +18 -14
  623. package/dist/social-link-icon.cjs +6 -2
  624. package/dist/social-link-icon.js +6 -2
  625. package/dist/stats-animated-counter.cjs +17 -13
  626. package/dist/stats-animated-counter.js +15 -11
  627. package/dist/stats-card-group.cjs +26 -6
  628. package/dist/stats-card-group.js +10 -5
  629. package/dist/stats-growth-timeline.cjs +22 -18
  630. package/dist/stats-growth-timeline.js +16 -12
  631. package/dist/stats-icon-cards.cjs +26 -6
  632. package/dist/stats-icon-cards.js +10 -5
  633. package/dist/stats-impact-grid.cjs +23 -19
  634. package/dist/stats-impact-grid.js +16 -12
  635. package/dist/stats-primary-secondary.cjs +26 -6
  636. package/dist/stats-primary-secondary.js +10 -5
  637. package/dist/stats-timeline-tabs.cjs +9 -7
  638. package/dist/stats-timeline-tabs.js +10 -5
  639. package/dist/team-alternating-bios.cjs +17 -13
  640. package/dist/team-alternating-bios.js +17 -13
  641. package/dist/team-avatar-social.cjs +17 -13
  642. package/dist/team-avatar-social.js +17 -13
  643. package/dist/team-bio-badges.cjs +17 -13
  644. package/dist/team-bio-badges.js +17 -13
  645. package/dist/team-carousel-experience.cjs +27 -23
  646. package/dist/team-carousel-experience.js +27 -23
  647. package/dist/team-contact-cards.cjs +18 -14
  648. package/dist/team-contact-cards.js +18 -14
  649. package/dist/team-filterable-search.cjs +22 -18
  650. package/dist/team-filterable-search.js +22 -18
  651. package/dist/team-gradient-cards.cjs +17 -13
  652. package/dist/team-gradient-cards.js +17 -13
  653. package/dist/team-grid-animated.cjs +18 -14
  654. package/dist/team-grid-animated.js +18 -14
  655. package/dist/team-hover-highlight.cjs +17 -13
  656. package/dist/team-hover-highlight.js +17 -13
  657. package/dist/team-hover-overlay.cjs +17 -13
  658. package/dist/team-hover-overlay.js +17 -13
  659. package/dist/team-large-images.cjs +17 -13
  660. package/dist/team-large-images.js +17 -13
  661. package/dist/team-role-filter.cjs +20 -16
  662. package/dist/team-role-filter.js +20 -16
  663. package/dist/team-skill-badges.cjs +17 -13
  664. package/dist/team-skill-badges.js +17 -13
  665. package/dist/team-social-cards.cjs +17 -13
  666. package/dist/team-social-cards.js +17 -13
  667. package/dist/team-social-grid.cjs +17 -13
  668. package/dist/team-social-grid.js +17 -13
  669. package/dist/team-testimonial-stats.cjs +17 -13
  670. package/dist/team-testimonial-stats.js +17 -13
  671. package/dist/testimonial-carousel-cards.cjs +33 -29
  672. package/dist/testimonial-carousel-cards.js +26 -22
  673. package/dist/testimonials-animated-split.cjs +9 -7
  674. package/dist/testimonials-animated-split.js +10 -5
  675. package/dist/testimonials-bento-grid.cjs +9 -7
  676. package/dist/testimonials-bento-grid.js +10 -5
  677. package/dist/testimonials-carousel-image.cjs +18 -14
  678. package/dist/testimonials-carousel-image.js +13 -9
  679. package/dist/testimonials-company-logo.cjs +26 -6
  680. package/dist/testimonials-company-logo.js +10 -5
  681. package/dist/testimonials-grid-add-review.cjs +9 -7
  682. package/dist/testimonials-grid-add-review.js +10 -5
  683. package/dist/testimonials-images-helpful.cjs +21 -17
  684. package/dist/testimonials-images-helpful.js +16 -12
  685. package/dist/testimonials-large-quote.cjs +9 -7
  686. package/dist/testimonials-large-quote.js +10 -5
  687. package/dist/testimonials-list-verified.cjs +9 -7
  688. package/dist/testimonials-list-verified.js +10 -5
  689. package/dist/testimonials-mini-dividers.cjs +9 -7
  690. package/dist/testimonials-mini-dividers.js +10 -5
  691. package/dist/testimonials-minimal-numbered.cjs +9 -7
  692. package/dist/testimonials-minimal-numbered.js +10 -5
  693. package/dist/testimonials-quote-carousel.cjs +31 -27
  694. package/dist/testimonials-quote-carousel.js +26 -22
  695. package/dist/testimonials-scrolling-columns.cjs +26 -6
  696. package/dist/testimonials-scrolling-columns.js +10 -5
  697. package/dist/testimonials-split-image.cjs +9 -7
  698. package/dist/testimonials-split-image.js +10 -5
  699. package/dist/testimonials-stats-header.cjs +9 -7
  700. package/dist/testimonials-stats-header.js +10 -5
  701. package/dist/testimonials-twitter-cards.cjs +19 -15
  702. package/dist/testimonials-twitter-cards.js +16 -12
  703. package/dist/timeline-ai-workflow-cards.cjs +27 -7
  704. package/dist/timeline-ai-workflow-cards.js +10 -5
  705. package/dist/timeline-alternating-diagonal.cjs +12 -8
  706. package/dist/timeline-alternating-diagonal.js +12 -8
  707. package/dist/timeline-horizontal-icons.cjs +10 -8
  708. package/dist/timeline-horizontal-icons.js +10 -5
  709. package/dist/timeline-productivity-list.cjs +27 -7
  710. package/dist/timeline-productivity-list.js +10 -5
  711. package/dist/timeline-stepper-animated.cjs +22 -18
  712. package/dist/timeline-stepper-animated.js +21 -17
  713. package/dist/timeline-tabbed-phases.cjs +6 -2
  714. package/dist/timeline-tabbed-phases.js +6 -2
  715. package/dist/timeline-vertical-icon-dashed.cjs +6 -2
  716. package/dist/timeline-vertical-icon-dashed.js +6 -2
  717. package/package.json +3 -3
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  'use strict';
3
3
 
4
- var React5 = require('react');
4
+ var React6 = require('react');
5
5
  var clsx = require('clsx');
6
6
  var tailwindMerge = require('tailwind-merge');
7
7
  var jsxRuntime = require('react/jsx-runtime');
@@ -36,7 +36,7 @@ function _interopNamespace(e) {
36
36
  return Object.freeze(n);
37
37
  }
38
38
 
39
- var React5__namespace = /*#__PURE__*/_interopNamespace(React5);
39
+ var React6__namespace = /*#__PURE__*/_interopNamespace(React6);
40
40
  var PopoverPrimitive__namespace = /*#__PURE__*/_interopNamespace(PopoverPrimitive);
41
41
  var TabsPrimitive__namespace = /*#__PURE__*/_interopNamespace(TabsPrimitive);
42
42
 
@@ -83,7 +83,7 @@ var maxWidthStyles = {
83
83
  "4xl": "max-w-[1536px]",
84
84
  full: "max-w-full"
85
85
  };
86
- var Container = React5__namespace.default.forwardRef(
86
+ var Container = React6__namespace.default.forwardRef(
87
87
  ({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
88
88
  const Component = as;
89
89
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -389,7 +389,7 @@ var spacingStyles = {
389
389
  };
390
390
  var predefinedSpacings = ["none", "sm", "md", "lg", "xl", "hero"];
391
391
  var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
392
- var Section = React5__namespace.default.forwardRef(
392
+ var Section = React6__namespace.default.forwardRef(
393
393
  ({
394
394
  id,
395
395
  title,
@@ -525,7 +525,7 @@ function useNavigation({
525
525
  href,
526
526
  onClick
527
527
  } = {}) {
528
- const linkType = React5__namespace.useMemo(() => {
528
+ const linkType = React6__namespace.useMemo(() => {
529
529
  if (!href || href.trim() === "") {
530
530
  return onClick ? "none" : "none";
531
531
  }
@@ -546,7 +546,7 @@ function useNavigation({
546
546
  return "internal";
547
547
  }
548
548
  }, [href, onClick]);
549
- const normalizedHref = React5__namespace.useMemo(() => {
549
+ const normalizedHref = React6__namespace.useMemo(() => {
550
550
  if (!href || href.trim() === "") {
551
551
  return void 0;
552
552
  }
@@ -564,7 +564,7 @@ function useNavigation({
564
564
  return trimmed;
565
565
  }
566
566
  }, [href, linkType]);
567
- const target = React5__namespace.useMemo(() => {
567
+ const target = React6__namespace.useMemo(() => {
568
568
  switch (linkType) {
569
569
  case "external":
570
570
  return "_blank";
@@ -577,7 +577,7 @@ function useNavigation({
577
577
  return void 0;
578
578
  }
579
579
  }, [linkType]);
580
- const rel = React5__namespace.useMemo(() => {
580
+ const rel = React6__namespace.useMemo(() => {
581
581
  if (linkType === "external") {
582
582
  return "noopener noreferrer";
583
583
  }
@@ -586,7 +586,7 @@ function useNavigation({
586
586
  const isExternal = linkType === "external";
587
587
  const isInternal = linkType === "internal";
588
588
  const shouldUseRouter = isInternal && typeof normalizedHref === "string" && normalizedHref.startsWith("/");
589
- const handleClick = React5__namespace.useCallback(
589
+ const handleClick = React6__namespace.useCallback(
590
590
  (event) => {
591
591
  if (onClick) {
592
592
  try {
@@ -770,7 +770,7 @@ var buttonVariants = classVarianceAuthority.cva(baseStyles, {
770
770
  size: "default"
771
771
  }
772
772
  });
773
- var Pressable = React5__namespace.forwardRef(
773
+ var Pressable = React6__namespace.forwardRef(
774
774
  ({
775
775
  children,
776
776
  className,
@@ -869,9 +869,13 @@ var Pressable = React5__namespace.forwardRef(
869
869
  );
870
870
  Pressable.displayName = "Pressable";
871
871
  var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
872
- function DynamicIcon({ apiKey, ...props }) {
872
+ var DynamicIcon = React6__namespace.memo(function DynamicIcon2({
873
+ apiKey,
874
+ ...props
875
+ }) {
873
876
  return /* @__PURE__ */ jsxRuntime.jsx(icon.Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
874
- }
877
+ });
878
+ DynamicIcon.displayName = "DynamicIcon";
875
879
  var PANEL_POSITION_CLASS = {
876
880
  "top-left": "left-4 top-4",
877
881
  "top-right": "right-4 top-4",
@@ -963,12 +967,20 @@ function MarkerMediaCarousel({
963
967
  mediaItems,
964
968
  optixFlowConfig
965
969
  }) {
966
- const [activeIndex, setActiveIndex] = React5__namespace.useState(0);
970
+ const [activeIndex, setActiveIndex] = React6__namespace.useState(0);
967
971
  const totalItems = mediaItems.length;
968
- React5__namespace.useEffect(() => {
972
+ const mediaResetKey = React6__namespace.useMemo(
973
+ () => mediaItems.map((item, index) => {
974
+ const itemId = normalizeId(item.id, `media-${index}`);
975
+ return `${itemId}:${item.src}:${item.type ?? ""}:${item.poster ?? ""}`;
976
+ }).join("|"),
977
+ [mediaItems]
978
+ );
979
+ const activeItemIndex = Math.min(activeIndex, Math.max(0, totalItems - 1));
980
+ React6__namespace.useEffect(() => {
969
981
  setActiveIndex(0);
970
- }, [mediaItems]);
971
- const activeMediaItem = mediaItems[activeIndex];
982
+ }, [mediaResetKey]);
983
+ const activeMediaItem = mediaItems[activeItemIndex];
972
984
  const mediaType = resolveMediaType(activeMediaItem);
973
985
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "relative border-b border-border/60 bg-muted/40", children: [
974
986
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "relative h-44 w-full overflow-hidden", children: mediaType === "video" ? /* @__PURE__ */ jsxRuntime.jsx(
@@ -1002,7 +1014,7 @@ function MarkerMediaCarousel({
1002
1014
  (current) => (current - 1 + totalItems) % totalItems
1003
1015
  );
1004
1016
  },
1005
- children: /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/arrow-left" })
1017
+ children: /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/arrow-left", size: 16 })
1006
1018
  }
1007
1019
  ),
1008
1020
  /* @__PURE__ */ jsxRuntime.jsx(
@@ -1014,7 +1026,7 @@ function MarkerMediaCarousel({
1014
1026
  onClick: () => {
1015
1027
  setActiveIndex((current) => (current + 1) % totalItems);
1016
1028
  },
1017
- children: /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/arrow-right" })
1029
+ children: /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/arrow-right", size: 16 })
1018
1030
  }
1019
1031
  ),
1020
1032
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute bottom-2 left-1/2 flex -translate-x-1/2 items-center gap-1.5", children: mediaItems.map((item, index) => /* @__PURE__ */ jsxRuntime.jsx(
@@ -1024,7 +1036,7 @@ function MarkerMediaCarousel({
1024
1036
  "aria-label": `Show media item ${index + 1}`,
1025
1037
  className: cn(
1026
1038
  "h-2 rounded-full transition-all",
1027
- index === activeIndex ? "w-6 bg-card" : "w-2 bg-card opacity-50 hover:opacity-100"
1039
+ index === activeItemIndex ? "w-6 bg-card" : "w-2 bg-card opacity-50 hover:opacity-100"
1028
1040
  ),
1029
1041
  onClick: () => setActiveIndex(index)
1030
1042
  },
@@ -1073,14 +1085,14 @@ function GeoMap({
1073
1085
  mapChildren,
1074
1086
  optixFlowConfig
1075
1087
  }) {
1076
- const normalizedStandaloneMarkers = React5__namespace.useMemo(
1088
+ const normalizedStandaloneMarkers = React6__namespace.useMemo(
1077
1089
  () => markers.map((marker, index) => ({
1078
1090
  ...marker,
1079
1091
  id: normalizeId(marker.id, `marker-${index}`)
1080
1092
  })),
1081
1093
  [markers]
1082
1094
  );
1083
- const normalizedClusters = React5__namespace.useMemo(() => {
1095
+ const normalizedClusters = React6__namespace.useMemo(() => {
1084
1096
  const results = [];
1085
1097
  clusters.forEach((cluster, clusterIndex) => {
1086
1098
  const clusterId = normalizeId(cluster.id, `cluster-${clusterIndex}`);
@@ -1105,7 +1117,7 @@ function GeoMap({
1105
1117
  });
1106
1118
  return results;
1107
1119
  }, [clusters]);
1108
- const markerLookup = React5__namespace.useMemo(() => {
1120
+ const markerLookup = React6__namespace.useMemo(() => {
1109
1121
  const lookup = /* @__PURE__ */ new Map();
1110
1122
  normalizedStandaloneMarkers.forEach((marker) => {
1111
1123
  lookup.set(marker.id, marker);
@@ -1117,14 +1129,14 @@ function GeoMap({
1117
1129
  });
1118
1130
  return lookup;
1119
1131
  }, [normalizedClusters, normalizedStandaloneMarkers]);
1120
- const clusterLookup = React5__namespace.useMemo(() => {
1132
+ const clusterLookup = React6__namespace.useMemo(() => {
1121
1133
  const lookup = /* @__PURE__ */ new Map();
1122
1134
  normalizedClusters.forEach((cluster) => {
1123
1135
  lookup.set(cluster.id, cluster);
1124
1136
  });
1125
1137
  return lookup;
1126
1138
  }, [normalizedClusters]);
1127
- const firstCoordinate = React5__namespace.useMemo(() => {
1139
+ const firstCoordinate = React6__namespace.useMemo(() => {
1128
1140
  if (normalizedStandaloneMarkers.length > 0) {
1129
1141
  const firstStandaloneMarker = normalizedStandaloneMarkers[0];
1130
1142
  return {
@@ -1144,23 +1156,27 @@ function GeoMap({
1144
1156
  longitude: DEFAULT_VIEW_STATE.longitude
1145
1157
  };
1146
1158
  }, [normalizedClusters, normalizedStandaloneMarkers]);
1147
- const [uncontrolledViewState, setUncontrolledViewState] = React5__namespace.useState({
1159
+ const [uncontrolledViewState, setUncontrolledViewState] = React6__namespace.useState({
1148
1160
  latitude: defaultViewState?.latitude ?? firstCoordinate.latitude,
1149
1161
  longitude: defaultViewState?.longitude ?? firstCoordinate.longitude,
1150
1162
  zoom: defaultViewState?.zoom ?? DEFAULT_VIEW_STATE.zoom
1151
1163
  });
1152
1164
  const isControlledViewState = viewState !== void 0;
1153
1165
  const resolvedViewState = isControlledViewState ? viewState : uncontrolledViewState;
1154
- const applyViewState = React5__namespace.useCallback(
1166
+ const applyViewState = React6__namespace.useCallback(
1155
1167
  (nextState) => {
1156
1168
  if (!isControlledViewState) {
1157
- setUncontrolledViewState((current) => ({ ...current, ...nextState }));
1169
+ setUncontrolledViewState((current) => {
1170
+ const next = { ...current, ...nextState };
1171
+ const hasChanged = current.latitude !== next.latitude || current.longitude !== next.longitude || current.zoom !== next.zoom;
1172
+ return hasChanged ? next : current;
1173
+ });
1158
1174
  }
1159
1175
  onViewStateChange?.(nextState);
1160
1176
  },
1161
1177
  [isControlledViewState, onViewStateChange]
1162
1178
  );
1163
- const [selection, setSelection] = React5__namespace.useState(() => {
1179
+ const [selection, setSelection] = React6__namespace.useState(() => {
1164
1180
  if (initialSelectedMarkerId !== void 0 && initialSelectedMarkerId !== null) {
1165
1181
  return {
1166
1182
  type: "marker",
@@ -1169,7 +1185,7 @@ function GeoMap({
1169
1185
  }
1170
1186
  return { type: "none" };
1171
1187
  });
1172
- React5__namespace.useEffect(() => {
1188
+ React6__namespace.useEffect(() => {
1173
1189
  if (selectedMarkerId === void 0 || selectedMarkerId === null) {
1174
1190
  return;
1175
1191
  }
@@ -1180,13 +1196,13 @@ function GeoMap({
1180
1196
  }, [selectedMarkerId]);
1181
1197
  const selectedMarker = selection.markerId ? markerLookup.get(selection.markerId) : void 0;
1182
1198
  const selectedCluster = selection.clusterId ? clusterLookup.get(selection.clusterId) : void 0;
1183
- React5__namespace.useEffect(() => {
1199
+ React6__namespace.useEffect(() => {
1184
1200
  if (selection.type === "marker" && selection.markerId && !selectedMarker) {
1185
1201
  setSelection({ type: "none" });
1186
1202
  onSelectionChange?.({ type: "none" });
1187
1203
  }
1188
1204
  }, [onSelectionChange, selectedMarker, selection]);
1189
- const emitSelectionChange = React5__namespace.useCallback(
1205
+ const emitSelectionChange = React6__namespace.useCallback(
1190
1206
  (nextSelection) => {
1191
1207
  if (nextSelection.type === "none") {
1192
1208
  onSelectionChange?.({ type: "none" });
@@ -1208,7 +1224,7 @@ function GeoMap({
1208
1224
  },
1209
1225
  [clusterLookup, onSelectionChange]
1210
1226
  );
1211
- const selectMarker = React5__namespace.useCallback(
1227
+ const selectMarker = React6__namespace.useCallback(
1212
1228
  (marker) => {
1213
1229
  setSelection({
1214
1230
  type: "marker",
@@ -1224,7 +1240,7 @@ function GeoMap({
1224
1240
  },
1225
1241
  [applyViewState, emitSelectionChange, markerFocusZoom]
1226
1242
  );
1227
- const selectCluster = React5__namespace.useCallback(
1243
+ const selectCluster = React6__namespace.useCallback(
1228
1244
  (cluster) => {
1229
1245
  setSelection({
1230
1246
  type: "cluster",
@@ -1239,11 +1255,11 @@ function GeoMap({
1239
1255
  },
1240
1256
  [applyViewState, clusterFocusZoom, emitSelectionChange]
1241
1257
  );
1242
- const clearSelection = React5__namespace.useCallback(() => {
1258
+ const clearSelection = React6__namespace.useCallback(() => {
1243
1259
  setSelection({ type: "none" });
1244
1260
  emitSelectionChange({ type: "none" });
1245
1261
  }, [emitSelectionChange]);
1246
- const mapMarkers = React5__namespace.useMemo(() => {
1262
+ const mapMarkers = React6__namespace.useMemo(() => {
1247
1263
  const resolvedMarkers = [];
1248
1264
  normalizedClusters.forEach((cluster) => {
1249
1265
  const isSelected = selection.type === "cluster" && selection.clusterId === cluster.id;
@@ -1352,7 +1368,7 @@ function GeoMap({
1352
1368
  "aria-label": "Close marker details",
1353
1369
  className: "flex size-8 items-center justify-center rounded-full border border-border bg-card text-card-foreground transition hover:bg-muted hover:text-foreground absolute top-2 right-2 z-10",
1354
1370
  onClick: clearSelection,
1355
- children: /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/x" })
1371
+ children: /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/x", size: 16 })
1356
1372
  }
1357
1373
  ),
1358
1374
  markerMediaItems.length > 0 ? /* @__PURE__ */ jsxRuntime.jsx(
@@ -1368,36 +1384,40 @@ function GeoMap({
1368
1384
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-base font-semibold leading-tight", children: selectedMarker.title ?? selectedMarker.label ?? "Location" })
1369
1385
  ] }) }),
1370
1386
  selectedMarker.summary ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-sm leading-relaxed", children: selectedMarker.summary }) : null,
1371
- selectedMarker.locationLine ? /* @__PURE__ */ jsxRuntime.jsxs(
1372
- Pressable,
1373
- {
1374
- href: selectedMarker.locationUrl,
1375
- className: "flex flex-row items-center justify-start text-sm gap-2",
1376
- children: [
1377
- /* @__PURE__ */ jsxRuntime.jsx(
1378
- DynamicIcon,
1379
- {
1380
- name: "lucide:map-pin",
1381
- className: "opacity-50",
1382
- size: 12
1383
- }
1387
+ selectedMarker.locationLine ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-row items-center justify-start text-sm gap-2", children: [
1388
+ /* @__PURE__ */ jsxRuntime.jsx(
1389
+ DynamicIcon,
1390
+ {
1391
+ name: "lucide:map-pin",
1392
+ className: "opacity-50",
1393
+ size: 14
1394
+ }
1395
+ ),
1396
+ typeof selectedMarker.locationLine === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
1397
+ Pressable,
1398
+ {
1399
+ href: selectedMarker.locationUrl,
1400
+ className: cn(
1401
+ "transition-all duration-500",
1402
+ "font-medium opacity-75 hover:opacity-100",
1403
+ selectedMarker.locationUrl ? "underline underline-offset-4" : ""
1384
1404
  ),
1385
- typeof selectedMarker.locationLine === "string" ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "font-medium", children: selectedMarker.locationLine }) : selectedMarker.locationLine
1386
- ]
1387
- }
1388
- ) : null,
1405
+ children: selectedMarker.locationLine
1406
+ }
1407
+ ) : selectedMarker.locationLine
1408
+ ] }) : null,
1389
1409
  selectedMarker.hoursLine ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-row items-center justify-start text-sm gap-2", children: [
1390
1410
  /* @__PURE__ */ jsxRuntime.jsx(
1391
1411
  DynamicIcon,
1392
1412
  {
1393
1413
  name: "lucide:clock",
1394
1414
  className: "opacity-50",
1395
- size: 12
1415
+ size: 14
1396
1416
  }
1397
1417
  ),
1398
1418
  typeof selectedMarker.hoursLine === "string" ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "font-medium", children: selectedMarker.hoursLine }) : selectedMarker.hoursLine
1399
1419
  ] }) : null,
1400
- selectedMarker.markerContentComponent ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-sm", children: selectedMarker.markerContentComponent }) : null,
1420
+ selectedMarker.markerContentComponent ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "relative", children: selectedMarker.markerContentComponent }) : null,
1401
1421
  /* @__PURE__ */ jsxRuntime.jsx(MarkerActions, { actions: selectedMarker.actions })
1402
1422
  ] })
1403
1423
  ]
@@ -1420,7 +1440,7 @@ function GeoMap({
1420
1440
  "aria-label": "Close cluster details",
1421
1441
  className: "flex size-8 items-center justify-center rounded-full border border-border bg-card text-card-foreground transition hover:bg-muted hover:text-foreground absolute top-2 right-2 z-10",
1422
1442
  onClick: clearSelection,
1423
- children: /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/x" })
1443
+ children: /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/x", size: 16 })
1424
1444
  }
1425
1445
  ),
1426
1446
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mb-3 flex items-start justify-between gap-3", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "min-w-0", children: [
@@ -1521,15 +1541,15 @@ function AnimatedDialog({
1521
1541
  contentClassName,
1522
1542
  featuredMediaHeader
1523
1543
  }) {
1524
- const titleId = React5.useId();
1525
- const descriptionId = React5.useId();
1526
- const containerRef = React5.useRef(null);
1544
+ const titleId = React6.useId();
1545
+ const descriptionId = React6.useId();
1546
+ const containerRef = React6.useRef(null);
1527
1547
  useOnClickOutside.useOnClickOutside(containerRef, () => {
1528
1548
  if (open) {
1529
1549
  onOpenChange(false);
1530
1550
  }
1531
1551
  });
1532
- React5.useEffect(() => {
1552
+ React6.useEffect(() => {
1533
1553
  if (!open) {
1534
1554
  return;
1535
1555
  }
@@ -1852,10 +1872,10 @@ var ImageSlider = ({
1852
1872
  optixFlowConfig
1853
1873
  }) => {
1854
1874
  const hasImages = images.length > 0;
1855
- const [currentIndex, setCurrentIndex] = React5__namespace.useState(
1875
+ const [currentIndex, setCurrentIndex] = React6__namespace.useState(
1856
1876
  () => normalizeIndex(startIndex, images.length)
1857
1877
  );
1858
- const handleNext = React5__namespace.useCallback(() => {
1878
+ const handleNext = React6__namespace.useCallback(() => {
1859
1879
  if (!hasImages) return;
1860
1880
  setCurrentIndex((prevIndex) => {
1861
1881
  const nextIndex = prevIndex + 1 >= images.length ? 0 : prevIndex + 1;
@@ -1863,7 +1883,7 @@ var ImageSlider = ({
1863
1883
  return nextIndex;
1864
1884
  });
1865
1885
  }, [hasImages, images.length, onSlideChange]);
1866
- const handlePrevious = React5__namespace.useCallback(() => {
1886
+ const handlePrevious = React6__namespace.useCallback(() => {
1867
1887
  if (!hasImages) return;
1868
1888
  setCurrentIndex((prevIndex) => {
1869
1889
  const nextIndex = prevIndex - 1 < 0 ? images.length - 1 : prevIndex - 1;
@@ -1871,11 +1891,11 @@ var ImageSlider = ({
1871
1891
  return nextIndex;
1872
1892
  });
1873
1893
  }, [hasImages, images.length, onSlideChange]);
1874
- React5__namespace.useEffect(() => {
1894
+ React6__namespace.useEffect(() => {
1875
1895
  if (!hasImages) return;
1876
1896
  setCurrentIndex(normalizeIndex(startIndex, images.length));
1877
1897
  }, [startIndex, images.length, hasImages]);
1878
- React5__namespace.useEffect(() => {
1898
+ React6__namespace.useEffect(() => {
1879
1899
  if (!enableKeyboard || !hasImages) return;
1880
1900
  const handleKeyDown = (event) => {
1881
1901
  if (event.key === "ArrowRight") {
@@ -1889,7 +1909,7 @@ var ImageSlider = ({
1889
1909
  window.removeEventListener("keydown", handleKeyDown);
1890
1910
  };
1891
1911
  }, [enableKeyboard, handleNext, handlePrevious, hasImages]);
1892
- React5__namespace.useEffect(() => {
1912
+ React6__namespace.useEffect(() => {
1893
1913
  if (!autoplay || images.length < 2) return;
1894
1914
  const interval = window.setInterval(handleNext, autoplayIntervalMs);
1895
1915
  return () => window.clearInterval(interval);
@@ -2200,7 +2220,7 @@ var platformIconMap = {
2200
2220
  dribbble: "cib/dribbble",
2201
2221
  unknown: "icon-park-solid/circular-connection"
2202
2222
  };
2203
- var SocialLinkIcon = React5__namespace.forwardRef(
2223
+ var SocialLinkIcon = React6__namespace.forwardRef(
2204
2224
  ({
2205
2225
  platformName,
2206
2226
  label,
@@ -2213,13 +2233,13 @@ var SocialLinkIcon = React5__namespace.forwardRef(
2213
2233
  ...pressableProps
2214
2234
  }, ref) => {
2215
2235
  const platform = usePlatformFromUrl.usePlatformFromUrl(href);
2216
- const smartPlatformName = React5__namespace.useMemo(() => {
2236
+ const smartPlatformName = React6__namespace.useMemo(() => {
2217
2237
  return platform || platformName;
2218
2238
  }, [platform, platformName]);
2219
- const iconName = React5__namespace.useMemo(() => {
2239
+ const iconName = React6__namespace.useMemo(() => {
2220
2240
  return iconNameOverride || platformIconMap[smartPlatformName];
2221
2241
  }, [iconNameOverride, smartPlatformName]);
2222
- const accessibleLabel = React5__namespace.useMemo(() => {
2242
+ const accessibleLabel = React6__namespace.useMemo(() => {
2223
2243
  return label || platformName;
2224
2244
  }, [label, platformName]);
2225
2245
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -2296,12 +2316,12 @@ function TextInner({ as, className, children, ...props }, ref) {
2296
2316
  const Component = as || "span";
2297
2317
  return /* @__PURE__ */ jsxRuntime.jsx(Component, { ref, className: cn(className), ...props, children });
2298
2318
  }
2299
- var Text = React5__namespace.forwardRef(TextInner);
2319
+ var Text = React6__namespace.forwardRef(TextInner);
2300
2320
  Text.displayName = "Text";
2301
2321
  function isContentTextItem(item) {
2302
- return item !== null && typeof item === "object" && !React5__namespace.isValidElement(item) && "_type" in item && item._type === "text";
2322
+ return item !== null && typeof item === "object" && !React6__namespace.isValidElement(item) && "_type" in item && item._type === "text";
2303
2323
  }
2304
- var ContentGroup = React5__namespace.forwardRef(
2324
+ var ContentGroup = React6__namespace.forwardRef(
2305
2325
  ({ items, className, children, ...props }, ref) => {
2306
2326
  const hasContent = items && items.length > 0;
2307
2327
  if (!hasContent) {
@@ -2314,10 +2334,10 @@ var ContentGroup = React5__namespace.forwardRef(
2314
2334
  return /* @__PURE__ */ jsxRuntime.jsx(Text, { ...textProps }, idx);
2315
2335
  }
2316
2336
  const reactNode = item;
2317
- if (React5__namespace.isValidElement(reactNode)) {
2318
- return React5__namespace.cloneElement(reactNode, { key: reactNode.key ?? idx });
2337
+ if (React6__namespace.isValidElement(reactNode)) {
2338
+ return React6__namespace.cloneElement(reactNode, { key: reactNode.key ?? idx });
2319
2339
  }
2320
- return /* @__PURE__ */ jsxRuntime.jsx(React5__namespace.Fragment, { children: reactNode }, idx);
2340
+ return /* @__PURE__ */ jsxRuntime.jsx(React6__namespace.Fragment, { children: reactNode }, idx);
2321
2341
  }),
2322
2342
  children
2323
2343
  ] });
@@ -2341,7 +2361,7 @@ function AlternatingBlocks({
2341
2361
  pattern,
2342
2362
  patternOpacity
2343
2363
  }) {
2344
- const sectionsContent = React5.useMemo(() => {
2364
+ const sectionsContent = React6.useMemo(() => {
2345
2365
  if (sectionsSlot) return sectionsSlot;
2346
2366
  if (!sections || sections.length === 0) return null;
2347
2367
  return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("space-y-12", sectionsClassName), children: sections.map((section, index) => /* @__PURE__ */ jsxRuntime.jsxs(
@@ -2385,7 +2405,7 @@ function AlternatingBlocks({
2385
2405
  sectionContentClassName,
2386
2406
  sectionMediaClassName
2387
2407
  ]);
2388
- const headerItems = React5.useMemo(() => {
2408
+ const headerItems = React6.useMemo(() => {
2389
2409
  const items = [];
2390
2410
  if (subtitle) {
2391
2411
  items.push(
@@ -2454,7 +2474,7 @@ function AboutSplitHero({
2454
2474
  patternOpacity,
2455
2475
  directionConfig = { desktop: "mediaRight", mobile: "mediaTop" }
2456
2476
  }) {
2457
- const ctaContent = React5.useMemo(() => {
2477
+ const ctaContent = React6.useMemo(() => {
2458
2478
  if (ctaSlot) return ctaSlot;
2459
2479
  if (!ctaAction) return null;
2460
2480
  return /* @__PURE__ */ jsxRuntime.jsxs(
@@ -2476,7 +2496,7 @@ function AboutSplitHero({
2476
2496
  }
2477
2497
  );
2478
2498
  }, [ctaSlot, ctaAction, ctaClassName]);
2479
- const bgColorClass = React5.useMemo(() => {
2499
+ const bgColorClass = React6.useMemo(() => {
2480
2500
  switch (background) {
2481
2501
  case "dark":
2482
2502
  return "bg-foreground text-background";
@@ -2604,7 +2624,7 @@ function AboutMissionPrinciples({
2604
2624
  pattern,
2605
2625
  patternOpacity
2606
2626
  }) {
2607
- const missionActionContent = React5.useMemo(() => {
2627
+ const missionActionContent = React6.useMemo(() => {
2608
2628
  if (missionActionSlot) return missionActionSlot;
2609
2629
  if (!missionAction) return null;
2610
2630
  return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("pt-2", missionActionClassName), children: /* @__PURE__ */ jsxRuntime.jsxs(
@@ -2629,7 +2649,7 @@ function AboutMissionPrinciples({
2629
2649
  }
2630
2650
  ) });
2631
2651
  }, [missionActionSlot, missionAction, missionActionClassName]);
2632
- const principlesContent = React5.useMemo(() => {
2652
+ const principlesContent = React6.useMemo(() => {
2633
2653
  if (principlesSlot) return principlesSlot;
2634
2654
  if (!principles || principles.length === 0) return null;
2635
2655
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -2667,7 +2687,7 @@ function AboutMissionPrinciples({
2667
2687
  }
2668
2688
  );
2669
2689
  }, [principlesSlot, principles, principlesClassName]);
2670
- const visionActionContent = React5.useMemo(() => {
2690
+ const visionActionContent = React6.useMemo(() => {
2671
2691
  if (visionActionSlot) return visionActionSlot;
2672
2692
  if (!visionAction) return null;
2673
2693
  return /* @__PURE__ */ jsxRuntime.jsxs(
@@ -2842,11 +2862,11 @@ function AboutExpandableValues({
2842
2862
  pattern,
2843
2863
  patternOpacity
2844
2864
  }) {
2845
- const [expandedValue, setExpandedValue] = React5__namespace.useState(null);
2846
- const toggleExpand = React5.useCallback((id) => {
2865
+ const [expandedValue, setExpandedValue] = React6__namespace.useState(null);
2866
+ const toggleExpand = React6.useCallback((id) => {
2847
2867
  setExpandedValue((prev) => prev === id ? null : id);
2848
2868
  }, []);
2849
- React5.useMemo(() => {
2869
+ React6.useMemo(() => {
2850
2870
  if (actionsSlot) return actionsSlot;
2851
2871
  if (!actions || actions.length === 0) return null;
2852
2872
  return /* @__PURE__ */ jsxRuntime.jsx("div", { className: actionsClassName, children: actions.map((action, idx) => /* @__PURE__ */ jsxRuntime.jsx(
@@ -2862,7 +2882,7 @@ function AboutExpandableValues({
2862
2882
  idx
2863
2883
  )) });
2864
2884
  }, [actionsSlot, actions, actionsClassName]);
2865
- const valuesContent = React5.useMemo(() => {
2885
+ const valuesContent = React6.useMemo(() => {
2866
2886
  if (valuesSlot) return valuesSlot;
2867
2887
  if (!values || values.length === 0) return null;
2868
2888
  return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("grid grid-cols-1 gap-6 mt-8", valuesClassName), children: values.map((value) => /* @__PURE__ */ jsxRuntime.jsxs(
@@ -3078,17 +3098,17 @@ function CommunityInitiatives({
3078
3098
  pattern,
3079
3099
  patternOpacity
3080
3100
  }) {
3081
- const [activeCategory, setActiveCategory] = React5__namespace.useState(
3101
+ const [activeCategory, setActiveCategory] = React6__namespace.useState(
3082
3102
  categories?.[0]?.id || ""
3083
3103
  );
3084
3104
  const currentCategory = categories?.find((category) => category.id === activeCategory) || categories?.[0];
3085
- const handleCategoryChange = React5.useCallback(
3105
+ const handleCategoryChange = React6.useCallback(
3086
3106
  (e) => {
3087
3107
  setActiveCategory(e.target.value);
3088
3108
  },
3089
3109
  []
3090
3110
  );
3091
- const categoriesContent = React5.useMemo(() => {
3111
+ const categoriesContent = React6.useMemo(() => {
3092
3112
  if (categoriesSlot) return categoriesSlot;
3093
3113
  if (!categories || categories.length === 0) return null;
3094
3114
  return /* @__PURE__ */ jsxRuntime.jsxs(
@@ -3342,10 +3362,10 @@ function AboutCultureTabs({
3342
3362
  patternOpacity
3343
3363
  }) {
3344
3364
  const resolvedAspects = aspects ?? [];
3345
- const [activeTab, setActiveTab] = React5__namespace.useState(
3365
+ const [activeTab, setActiveTab] = React6__namespace.useState(
3346
3366
  resolvedAspects[0]?.id || ""
3347
3367
  );
3348
- const headerItems = React5.useMemo(() => {
3368
+ const headerItems = React6.useMemo(() => {
3349
3369
  const items = [];
3350
3370
  if (badgeText) {
3351
3371
  if (typeof badgeText === "string") {
@@ -3392,7 +3412,7 @@ function AboutCultureTabs({
3392
3412
  description,
3393
3413
  descriptionClassName
3394
3414
  ]);
3395
- const ctaImagesContent = React5.useMemo(() => {
3415
+ const ctaImagesContent = React6.useMemo(() => {
3396
3416
  if (ctaImagesSlot) return ctaImagesSlot;
3397
3417
  if (!ctaImages || ctaImages.length === 0) return null;
3398
3418
  return ctaImages.map((src, i) => /* @__PURE__ */ jsxRuntime.jsx(
@@ -3558,7 +3578,7 @@ function MediaHoverCtas({
3558
3578
  optixFlowConfig
3559
3579
  }) {
3560
3580
  const resolvedItems = items ?? [];
3561
- const itemsContent = React5.useMemo(() => {
3581
+ const itemsContent = React6.useMemo(() => {
3562
3582
  if (itemsSlot) return itemsSlot;
3563
3583
  return resolvedItems.map((item, index) => {
3564
3584
  const CardComponent = item.cardHref ? "a" : "div";
@@ -3648,13 +3668,13 @@ function BannerAnnouncementDismissible({
3648
3668
  actionsClassName,
3649
3669
  dismissButtonClassName
3650
3670
  }) {
3651
- const [isVisible, setIsVisible] = React5.useState(true);
3671
+ const [isVisible, setIsVisible] = React6.useState(true);
3652
3672
  const dismissLabel = dismissAriaLabel ?? "Dismiss banner";
3653
- const handleDismiss = React5.useCallback(() => {
3673
+ const handleDismiss = React6.useCallback(() => {
3654
3674
  setIsVisible(false);
3655
3675
  onDismiss?.();
3656
3676
  }, [onDismiss]);
3657
- const actionsContent = React5.useMemo(() => {
3677
+ const actionsContent = React6.useMemo(() => {
3658
3678
  if (actionsSlot) return actionsSlot;
3659
3679
  if (!actions || actions.length === 0) return null;
3660
3680
  return actions.map((action, index) => {
@@ -3682,7 +3702,7 @@ function BannerAnnouncementDismissible({
3682
3702
  );
3683
3703
  });
3684
3704
  }, [actions, actionsSlot]);
3685
- const iconContent = React5.useMemo(() => {
3705
+ const iconContent = React6.useMemo(() => {
3686
3706
  if (icon) return icon;
3687
3707
  if (!iconName) return null;
3688
3708
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -3694,11 +3714,11 @@ function BannerAnnouncementDismissible({
3694
3714
  }
3695
3715
  );
3696
3716
  }, [icon, iconName, iconClassName]);
3697
- const dismissIconContent = React5.useMemo(() => {
3717
+ const dismissIconContent = React6.useMemo(() => {
3698
3718
  if (dismissIcon) return dismissIcon;
3699
3719
  return /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "mynaui/x", size: 16 });
3700
3720
  }, [dismissIcon]);
3701
- const messageContent = React5.useMemo(() => {
3721
+ const messageContent = React6.useMemo(() => {
3702
3722
  if (!message) return null;
3703
3723
  return typeof message === "string" ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: cn("font-medium text-sm", messageClassName), children: message }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: messageClassName, children: message });
3704
3724
  }, [message, messageClassName]);
@@ -3744,12 +3764,12 @@ function BannerCountdownSale({
3744
3764
  separatorClassName
3745
3765
  }) {
3746
3766
  const targetTime = endTime;
3747
- const [timeLeft, setTimeLeft] = React5.useState({
3767
+ const [timeLeft, setTimeLeft] = React6.useState({
3748
3768
  hours: 0,
3749
3769
  minutes: 0,
3750
3770
  seconds: 0
3751
3771
  });
3752
- React5.useEffect(() => {
3772
+ React6.useEffect(() => {
3753
3773
  if (!targetTime) {
3754
3774
  return;
3755
3775
  }
@@ -3772,8 +3792,8 @@ function BannerCountdownSale({
3772
3792
  }, 1e3);
3773
3793
  return () => clearInterval(timer);
3774
3794
  }, [targetTime]);
3775
- const pad = React5.useCallback((n) => n.toString().padStart(2, "0"), []);
3776
- const timerContent = React5.useMemo(() => {
3795
+ const pad = React6.useCallback((n) => n.toString().padStart(2, "0"), []);
3796
+ const timerContent = React6.useMemo(() => {
3777
3797
  if (timerSlot) return timerSlot;
3778
3798
  if (renderTimer) return renderTimer(timeLeft);
3779
3799
  if (!targetTime) return null;
@@ -3785,11 +3805,11 @@ function BannerCountdownSale({
3785
3805
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: cn("rounded bg-destructive px-2 py-0.5", timeUnitClassName), children: pad(timeLeft.seconds) })
3786
3806
  ] });
3787
3807
  }, [timerSlot, renderTimer, timeLeft, timerClassName, timeUnitClassName, separatorClassName, pad, targetTime]);
3788
- const messageContent = React5.useMemo(() => {
3808
+ const messageContent = React6.useMemo(() => {
3789
3809
  if (!message) return null;
3790
3810
  return typeof message === "string" ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: cn("font-medium", messageClassName), children: message }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: messageClassName, children: message });
3791
3811
  }, [message, messageClassName]);
3792
- const descriptionContent = React5.useMemo(() => {
3812
+ const descriptionContent = React6.useMemo(() => {
3793
3813
  if (!description) return null;
3794
3814
  return typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: cn("text-destructive-foreground", descriptionClassName), children: description }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: descriptionClassName, children: description });
3795
3815
  }, [description, descriptionClassName]);
@@ -3818,12 +3838,12 @@ function BannerDeliveryCountdown({
3818
3838
  deliveryDateClassName
3819
3839
  }) {
3820
3840
  const targetTime = cutoffTime;
3821
- const [timeLeft, setTimeLeft] = React5.useState({
3841
+ const [timeLeft, setTimeLeft] = React6.useState({
3822
3842
  hours: 0,
3823
3843
  minutes: 0,
3824
3844
  seconds: 0
3825
3845
  });
3826
- React5.useEffect(() => {
3846
+ React6.useEffect(() => {
3827
3847
  if (!targetTime) {
3828
3848
  return;
3829
3849
  }
@@ -3846,13 +3866,13 @@ function BannerDeliveryCountdown({
3846
3866
  }, 1e3);
3847
3867
  return () => clearInterval(timer);
3848
3868
  }, [targetTime]);
3849
- const pad = React5.useCallback((n) => n.toString().padStart(2, "0"), []);
3850
- const iconContent = React5.useMemo(() => {
3869
+ const pad = React6.useCallback((n) => n.toString().padStart(2, "0"), []);
3870
+ const iconContent = React6.useMemo(() => {
3851
3871
  if (icon) return icon;
3852
3872
  if (!iconName) return null;
3853
3873
  return /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: iconName, size: 16, className: iconClassName });
3854
3874
  }, [icon, iconName, iconClassName]);
3855
- const timerContent = React5.useMemo(() => {
3875
+ const timerContent = React6.useMemo(() => {
3856
3876
  if (timerSlot) return timerSlot;
3857
3877
  if (renderTimer) return renderTimer(timeLeft);
3858
3878
  if (!targetTime) return null;
@@ -3864,18 +3884,18 @@ function BannerDeliveryCountdown({
3864
3884
  pad(timeLeft.seconds)
3865
3885
  ] });
3866
3886
  }, [timerSlot, renderTimer, timeLeft, timerClassName, pad, targetTime]);
3867
- const deliveryDateContent = React5.useMemo(() => {
3887
+ const deliveryDateContent = React6.useMemo(() => {
3868
3888
  if (!deliveryDate) return null;
3869
3889
  return typeof deliveryDate === "string" ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: cn("font-semibold", deliveryDateClassName), children: deliveryDate }) : /* @__PURE__ */ jsxRuntime.jsx("span", { className: deliveryDateClassName, children: deliveryDate });
3870
3890
  }, [deliveryDate, deliveryDateClassName]);
3871
- const messageParts = React5.useMemo(() => {
3891
+ const messageParts = React6.useMemo(() => {
3872
3892
  return [prefixText, timerContent, middleText, deliveryDateContent].filter(
3873
3893
  (part) => part !== null && part !== void 0
3874
3894
  );
3875
3895
  }, [prefixText, timerContent, middleText, deliveryDateContent]);
3876
3896
  return /* @__PURE__ */ jsxRuntime.jsx(Section, { background, spacing: "none", className: cn("bg-accent text-accent-foreground", className), children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("container py-2.5", containerClassName), children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("flex flex-wrap items-center justify-center gap-3 text-sm", contentClassName), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("flex items-center gap-2", messageClassName), children: [
3877
3897
  iconContent,
3878
- messageParts.length > 0 && /* @__PURE__ */ jsxRuntime.jsx("span", { children: messageParts.map((part, index) => /* @__PURE__ */ jsxRuntime.jsxs(React5__namespace.Fragment, { children: [
3898
+ messageParts.length > 0 && /* @__PURE__ */ jsxRuntime.jsx("span", { children: messageParts.map((part, index) => /* @__PURE__ */ jsxRuntime.jsxs(React6__namespace.Fragment, { children: [
3879
3899
  index > 0 ? " " : null,
3880
3900
  part
3881
3901
  ] }, index)) })
@@ -3897,7 +3917,7 @@ function BannerEventPromo({
3897
3917
  eventDetailsClassName,
3898
3918
  actionsClassName
3899
3919
  }) {
3900
- const actionsContent = React5.useMemo(() => {
3920
+ const actionsContent = React6.useMemo(() => {
3901
3921
  if (actionsSlot) return actionsSlot;
3902
3922
  if (!actions || actions.length === 0) return null;
3903
3923
  return actions.map((action, index) => {
@@ -3925,7 +3945,7 @@ function BannerEventPromo({
3925
3945
  );
3926
3946
  });
3927
3947
  }, [actions, actionsSlot]);
3928
- const separatorContent = React5.useMemo(() => {
3948
+ const separatorContent = React6.useMemo(() => {
3929
3949
  if (separator) return separator;
3930
3950
  return /* @__PURE__ */ jsxRuntime.jsx(
3931
3951
  "svg",
@@ -3937,11 +3957,11 @@ function BannerEventPromo({
3937
3957
  }
3938
3958
  );
3939
3959
  }, [separator, separatorClassName]);
3940
- const eventNameContent = React5.useMemo(() => {
3960
+ const eventNameContent = React6.useMemo(() => {
3941
3961
  if (!eventName) return null;
3942
3962
  return typeof eventName === "string" ? /* @__PURE__ */ jsxRuntime.jsx("strong", { className: cn("font-semibold", eventNameClassName), children: eventName }) : /* @__PURE__ */ jsxRuntime.jsx("span", { className: eventNameClassName, children: eventName });
3943
3963
  }, [eventName, eventNameClassName]);
3944
- const eventDetailsContent = React5.useMemo(() => {
3964
+ const eventDetailsContent = React6.useMemo(() => {
3945
3965
  if (!eventDetails) return null;
3946
3966
  return /* @__PURE__ */ jsxRuntime.jsx("span", { className: eventDetailsClassName, children: eventDetails });
3947
3967
  }, [eventDetails, eventDetailsClassName]);
@@ -3978,22 +3998,22 @@ function BannerFloatingOffer({
3978
3998
  }) {
3979
3999
  const isControlled = open !== void 0;
3980
4000
  const initialOpen = defaultOpen ?? true;
3981
- const [internalOpen, setInternalOpen] = React5.useState(initialOpen);
4001
+ const [internalOpen, setInternalOpen] = React6.useState(initialOpen);
3982
4002
  const isVisible = isControlled ? open : internalOpen;
3983
4003
  const dismissLabel = dismissAriaLabel ?? "Dismiss banner";
3984
4004
  const isDismissible = dismissible ?? false;
3985
- React5.useEffect(() => {
4005
+ React6.useEffect(() => {
3986
4006
  if (!isControlled && defaultOpen !== internalOpen) {
3987
4007
  setInternalOpen(initialOpen);
3988
4008
  }
3989
4009
  }, [defaultOpen, initialOpen, isControlled, internalOpen]);
3990
- const handleDismiss = React5.useCallback(() => {
4010
+ const handleDismiss = React6.useCallback(() => {
3991
4011
  if (!isControlled) {
3992
4012
  setInternalOpen(false);
3993
4013
  }
3994
4014
  onOpenChange?.(false);
3995
4015
  }, [isControlled, onOpenChange]);
3996
- const actionsContent = React5.useMemo(() => {
4016
+ const actionsContent = React6.useMemo(() => {
3997
4017
  if (actionsSlot) return actionsSlot;
3998
4018
  if (!actions || actions.length === 0) return null;
3999
4019
  return actions.map((action, index) => {
@@ -4021,7 +4041,7 @@ function BannerFloatingOffer({
4021
4041
  );
4022
4042
  });
4023
4043
  }, [actions, actionsSlot]);
4024
- const separatorContent = React5.useMemo(() => {
4044
+ const separatorContent = React6.useMemo(() => {
4025
4045
  if (separator) return separator;
4026
4046
  return /* @__PURE__ */ jsxRuntime.jsx(
4027
4047
  "svg",
@@ -4033,15 +4053,15 @@ function BannerFloatingOffer({
4033
4053
  }
4034
4054
  );
4035
4055
  }, [separator, separatorClassName]);
4036
- const dismissIconContent = React5.useMemo(() => {
4056
+ const dismissIconContent = React6.useMemo(() => {
4037
4057
  if (dismissIcon) return dismissIcon;
4038
4058
  return /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "mynaui/x", size: 16 });
4039
4059
  }, [dismissIcon]);
4040
- const offerTitleContent = React5.useMemo(() => {
4060
+ const offerTitleContent = React6.useMemo(() => {
4041
4061
  if (!offerTitle) return null;
4042
4062
  return typeof offerTitle === "string" ? /* @__PURE__ */ jsxRuntime.jsx("strong", { className: cn("font-semibold", offerTitleClassName), children: offerTitle }) : /* @__PURE__ */ jsxRuntime.jsx("span", { className: offerTitleClassName, children: offerTitle });
4043
4063
  }, [offerTitle, offerTitleClassName]);
4044
- const offerDescriptionContent = React5.useMemo(() => {
4064
+ const offerDescriptionContent = React6.useMemo(() => {
4045
4065
  if (!offerDescription) return null;
4046
4066
  return /* @__PURE__ */ jsxRuntime.jsx("span", { className: offerDescriptionClassName, children: offerDescription });
4047
4067
  }, [offerDescription, offerDescriptionClassName]);
@@ -4102,13 +4122,13 @@ function BannerGdprRights({
4102
4122
  actionsClassName,
4103
4123
  dismissButtonClassName
4104
4124
  }) {
4105
- const [isVisible, setIsVisible] = React5.useState(true);
4125
+ const [isVisible, setIsVisible] = React6.useState(true);
4106
4126
  const dismissLabel = dismissAriaLabel ?? "Dismiss banner";
4107
- const handleDismiss = React5.useCallback(() => {
4127
+ const handleDismiss = React6.useCallback(() => {
4108
4128
  setIsVisible(false);
4109
4129
  onDismiss?.();
4110
4130
  }, [onDismiss]);
4111
- const iconContent = React5.useMemo(() => {
4131
+ const iconContent = React6.useMemo(() => {
4112
4132
  if (icon) return icon;
4113
4133
  if (!iconName) return null;
4114
4134
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -4120,7 +4140,7 @@ function BannerGdprRights({
4120
4140
  }
4121
4141
  );
4122
4142
  }, [icon, iconName, iconClassName]);
4123
- const actionsContent = React5.useMemo(() => {
4143
+ const actionsContent = React6.useMemo(() => {
4124
4144
  if (actionsSlot) return actionsSlot;
4125
4145
  if (!actions || actions.length === 0) return null;
4126
4146
  return actions.map((action, index) => {
@@ -4147,15 +4167,15 @@ function BannerGdprRights({
4147
4167
  );
4148
4168
  });
4149
4169
  }, [actions, actionsSlot]);
4150
- const dismissIconContent = React5.useMemo(() => {
4170
+ const dismissIconContent = React6.useMemo(() => {
4151
4171
  if (dismissIcon) return dismissIcon;
4152
4172
  return /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "mynaui/x", size: 16 });
4153
4173
  }, [dismissIcon]);
4154
- const titleContent = React5.useMemo(() => {
4174
+ const titleContent = React6.useMemo(() => {
4155
4175
  if (!title) return null;
4156
4176
  return typeof title === "string" ? /* @__PURE__ */ jsxRuntime.jsx("h3", { className: cn("font-semibold text-sm", titleClassName), children: title }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: titleClassName, children: title });
4157
4177
  }, [title, titleClassName]);
4158
- const descriptionContent = React5.useMemo(() => {
4178
+ const descriptionContent = React6.useMemo(() => {
4159
4179
  if (!description && !actionsContent) return null;
4160
4180
  return /* @__PURE__ */ jsxRuntime.jsxs("p", { className: cn("text-sm text-muted-foreground mt-1", descriptionClassName), children: [
4161
4181
  description,
@@ -4209,13 +4229,13 @@ function BannerPrivacyNotice({
4209
4229
  actionsClassName,
4210
4230
  dismissButtonClassName
4211
4231
  }) {
4212
- const [isVisible, setIsVisible] = React5.useState(true);
4232
+ const [isVisible, setIsVisible] = React6.useState(true);
4213
4233
  const dismissLabel = dismissAriaLabel ?? "Dismiss banner";
4214
- const handleDismiss = React5.useCallback(() => {
4234
+ const handleDismiss = React6.useCallback(() => {
4215
4235
  setIsVisible(false);
4216
4236
  onDismiss?.();
4217
4237
  }, [onDismiss]);
4218
- const iconContent = React5.useMemo(() => {
4238
+ const iconContent = React6.useMemo(() => {
4219
4239
  if (icon) return icon;
4220
4240
  if (!iconName) return null;
4221
4241
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -4227,7 +4247,7 @@ function BannerPrivacyNotice({
4227
4247
  }
4228
4248
  );
4229
4249
  }, [icon, iconName, iconClassName]);
4230
- const actionsContent = React5.useMemo(() => {
4250
+ const actionsContent = React6.useMemo(() => {
4231
4251
  if (actionsSlot) return actionsSlot;
4232
4252
  if (!actions || actions.length === 0) return null;
4233
4253
  return actions.map((action, index) => {
@@ -4254,15 +4274,15 @@ function BannerPrivacyNotice({
4254
4274
  );
4255
4275
  });
4256
4276
  }, [actions, actionsSlot]);
4257
- const dismissIconContent = React5.useMemo(() => {
4277
+ const dismissIconContent = React6.useMemo(() => {
4258
4278
  if (dismissIcon) return dismissIcon;
4259
4279
  return /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "mynaui/x", size: 16 });
4260
4280
  }, [dismissIcon]);
4261
- const titleContent = React5.useMemo(() => {
4281
+ const titleContent = React6.useMemo(() => {
4262
4282
  if (!title) return null;
4263
4283
  return typeof title === "string" ? /* @__PURE__ */ jsxRuntime.jsx("h3", { className: cn("font-semibold text-sm", titleClassName), children: title }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: titleClassName, children: title });
4264
4284
  }, [title, titleClassName]);
4265
- const descriptionContent = React5.useMemo(() => {
4285
+ const descriptionContent = React6.useMemo(() => {
4266
4286
  if (!description) return null;
4267
4287
  return typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: cn("text-sm text-muted-foreground mt-1", descriptionClassName), children: description }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("text-sm text-muted-foreground mt-1", descriptionClassName), children: description });
4268
4288
  }, [description, descriptionClassName]);
@@ -4309,7 +4329,7 @@ function BannerPromoCta({
4309
4329
  discountClassName,
4310
4330
  actionsClassName
4311
4331
  }) {
4312
- const actionsContent = React5.useMemo(() => {
4332
+ const actionsContent = React6.useMemo(() => {
4313
4333
  if (actionsSlot) return actionsSlot;
4314
4334
  if (!actions || actions.length === 0) return null;
4315
4335
  return actions.map((action, index) => {
@@ -4336,15 +4356,15 @@ function BannerPromoCta({
4336
4356
  );
4337
4357
  });
4338
4358
  }, [actions, actionsSlot]);
4339
- const separatorContent = React5.useMemo(() => {
4359
+ const separatorContent = React6.useMemo(() => {
4340
4360
  if (separator) return separator;
4341
4361
  return /* @__PURE__ */ jsxRuntime.jsx("span", { className: cn("hidden sm:inline", separatorClassName), children: "\xB7" });
4342
4362
  }, [separator, separatorClassName]);
4343
- const messageContent = React5.useMemo(() => {
4363
+ const messageContent = React6.useMemo(() => {
4344
4364
  if (!message) return null;
4345
4365
  return typeof message === "string" ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: cn("font-semibold", messageClassName), children: message }) : /* @__PURE__ */ jsxRuntime.jsx("span", { className: messageClassName, children: message });
4346
4366
  }, [message, messageClassName]);
4347
- const discountContent = React5.useMemo(() => {
4367
+ const discountContent = React6.useMemo(() => {
4348
4368
  if (!discount) return null;
4349
4369
  return /* @__PURE__ */ jsxRuntime.jsx("span", { className: discountClassName, children: discount });
4350
4370
  }, [discount, discountClassName]);
@@ -4372,13 +4392,13 @@ function BannerSocialFollow({
4372
4392
  actionsClassName,
4373
4393
  dismissButtonClassName
4374
4394
  }) {
4375
- const [isVisible, setIsVisible] = React5.useState(true);
4395
+ const [isVisible, setIsVisible] = React6.useState(true);
4376
4396
  const dismissLabel = dismissAriaLabel ?? "Dismiss banner";
4377
- const handleDismiss = React5.useCallback(() => {
4397
+ const handleDismiss = React6.useCallback(() => {
4378
4398
  setIsVisible(false);
4379
4399
  onDismiss?.();
4380
4400
  }, [onDismiss]);
4381
- const iconContent = React5.useMemo(() => {
4401
+ const iconContent = React6.useMemo(() => {
4382
4402
  if (icon) return icon;
4383
4403
  if (!iconName) return null;
4384
4404
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -4390,7 +4410,7 @@ function BannerSocialFollow({
4390
4410
  }
4391
4411
  );
4392
4412
  }, [icon, iconName, iconClassName]);
4393
- const actionsContent = React5.useMemo(() => {
4413
+ const actionsContent = React6.useMemo(() => {
4394
4414
  if (actionsSlot) return actionsSlot;
4395
4415
  if (!actions || actions.length === 0) return null;
4396
4416
  return actions.map((action, index) => {
@@ -4418,11 +4438,11 @@ function BannerSocialFollow({
4418
4438
  );
4419
4439
  });
4420
4440
  }, [actions, actionsSlot]);
4421
- const dismissIconContent = React5.useMemo(() => {
4441
+ const dismissIconContent = React6.useMemo(() => {
4422
4442
  if (dismissIcon) return dismissIcon;
4423
4443
  return /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "mynaui/x", size: 16 });
4424
4444
  }, [dismissIcon]);
4425
- const messageContent = React5.useMemo(() => {
4445
+ const messageContent = React6.useMemo(() => {
4426
4446
  if (!message) return null;
4427
4447
  return typeof message === "string" ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: cn("font-medium", messageClassName), children: message }) : /* @__PURE__ */ jsxRuntime.jsx("span", { className: messageClassName, children: message });
4428
4448
  }, [message, messageClassName]);
@@ -4470,13 +4490,13 @@ function BannerSurveyIncentive({
4470
4490
  actionsClassName,
4471
4491
  dismissButtonClassName
4472
4492
  }) {
4473
- const [isVisible, setIsVisible] = React5.useState(true);
4493
+ const [isVisible, setIsVisible] = React6.useState(true);
4474
4494
  const dismissLabel = dismissAriaLabel ?? "Dismiss banner";
4475
- const handleDismiss = React5.useCallback(() => {
4495
+ const handleDismiss = React6.useCallback(() => {
4476
4496
  setIsVisible(false);
4477
4497
  onDismiss?.();
4478
4498
  }, [onDismiss]);
4479
- const iconContent = React5.useMemo(() => {
4499
+ const iconContent = React6.useMemo(() => {
4480
4500
  if (icon) return icon;
4481
4501
  if (!iconName) return null;
4482
4502
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -4488,7 +4508,7 @@ function BannerSurveyIncentive({
4488
4508
  }
4489
4509
  );
4490
4510
  }, [icon, iconName, iconClassName]);
4491
- const actionsContent = React5.useMemo(() => {
4511
+ const actionsContent = React6.useMemo(() => {
4492
4512
  if (actionsSlot) return actionsSlot;
4493
4513
  if (!actions || actions.length === 0) return null;
4494
4514
  return actions.map((action, index) => {
@@ -4516,15 +4536,15 @@ function BannerSurveyIncentive({
4516
4536
  );
4517
4537
  });
4518
4538
  }, [actions, actionsSlot]);
4519
- const dismissIconContent = React5.useMemo(() => {
4539
+ const dismissIconContent = React6.useMemo(() => {
4520
4540
  if (dismissIcon) return dismissIcon;
4521
4541
  return /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "mynaui/x", size: 16 });
4522
4542
  }, [dismissIcon]);
4523
- const titleContent = React5.useMemo(() => {
4543
+ const titleContent = React6.useMemo(() => {
4524
4544
  if (!title) return null;
4525
4545
  return typeof title === "string" ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: cn("font-medium", titleClassName), children: title }) : /* @__PURE__ */ jsxRuntime.jsx("span", { className: titleClassName, children: title });
4526
4546
  }, [title, titleClassName]);
4527
- const descriptionContent = React5.useMemo(() => {
4547
+ const descriptionContent = React6.useMemo(() => {
4528
4548
  if (!description) return null;
4529
4549
  return typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: cn("text-muted-foreground", descriptionClassName), children: description }) : /* @__PURE__ */ jsxRuntime.jsx("span", { className: descriptionClassName, children: description });
4530
4550
  }, [description, descriptionClassName]);
@@ -4634,7 +4654,7 @@ function FooterCopyright({
4634
4654
  copyright,
4635
4655
  className
4636
4656
  }) {
4637
- const currentYear = React5.useMemo(() => (/* @__PURE__ */ new Date()).getFullYear(), []);
4657
+ const currentYear = React6.useMemo(() => (/* @__PURE__ */ new Date()).getFullYear(), []);
4638
4658
  if (!copyright) {
4639
4659
  return null;
4640
4660
  }
@@ -5146,8 +5166,8 @@ var BrandAttribution = ({
5146
5166
  }
5147
5167
  const { prefix = "", anchorText, href, suffix = "" } = options[optionIndex];
5148
5168
  const ContainerEl = variant;
5149
- const [trackedHref, setTrackedHref] = React5__namespace.useState(href);
5150
- React5__namespace.useEffect(() => {
5169
+ const [trackedHref, setTrackedHref] = React6__namespace.useState(href);
5170
+ React6__namespace.useEffect(() => {
5151
5171
  setTrackedHref(buildTrackedHref(href));
5152
5172
  }, [href]);
5153
5173
  return /* @__PURE__ */ jsxRuntime.jsxs(ContainerEl, { className: containerClassName, children: [
@@ -5267,7 +5287,7 @@ function FooterSocialNewsletter({
5267
5287
  patternOpacity,
5268
5288
  optixFlowConfig
5269
5289
  }) {
5270
- const renderForm = React5__namespace.useMemo(() => {
5290
+ const renderForm = React6__namespace.useMemo(() => {
5271
5291
  if (!formEngineSetup) return null;
5272
5292
  const action = {
5273
5293
  variant: "default",
@@ -5420,14 +5440,14 @@ function FooterSocialApps({
5420
5440
  patternOpacity,
5421
5441
  optixFlowConfig
5422
5442
  }) {
5423
- const sectionsContent = React5.useMemo(() => {
5443
+ const sectionsContent = React6.useMemo(() => {
5424
5444
  if (!sections || sections.length === 0) return null;
5425
5445
  return sections.map((section, sectionIdx) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mt-8 md:mt-0", children: [
5426
5446
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "mb-4 font-bold", children: section.title }),
5427
5447
  /* @__PURE__ */ jsxRuntime.jsx("ul", { className: "space-y-4", children: section.links.map((link, linkIdx) => /* @__PURE__ */ jsxRuntime.jsx("li", { className: "font-medium ", children: /* @__PURE__ */ jsxRuntime.jsx(Pressable, { href: link.href, children: link.name }) }, linkIdx)) })
5428
5448
  ] }, sectionIdx));
5429
5449
  }, [sections]);
5430
- const socialLinksContent = React5.useMemo(() => {
5450
+ const socialLinksContent = React6.useMemo(() => {
5431
5451
  if (!socialLinks || socialLinks.length === 0) return null;
5432
5452
  return socialLinks.map((social, idx) => /* @__PURE__ */ jsxRuntime.jsx("li", { className: "font-medium", children: /* @__PURE__ */ jsxRuntime.jsx(
5433
5453
  SocialLinkIcon,
@@ -5442,7 +5462,7 @@ function FooterSocialApps({
5442
5462
  }
5443
5463
  ) }, idx));
5444
5464
  }, [socialLinks, background]);
5445
- const appLinksContent = React5.useMemo(() => {
5465
+ const appLinksContent = React6.useMemo(() => {
5446
5466
  if (!appLinks || appLinks.length === 0) return null;
5447
5467
  return appLinks.map((app, idx) => /* @__PURE__ */ jsxRuntime.jsx("li", { className: "font-medium", children: /* @__PURE__ */ jsxRuntime.jsx(Pressable, { href: app.href, "aria-label": app.label, children: /* @__PURE__ */ jsxRuntime.jsx(
5448
5468
  "span",
@@ -5531,7 +5551,7 @@ function FooterSimpleCentered({
5531
5551
  patternOpacity,
5532
5552
  optixFlowConfig
5533
5553
  }) {
5534
- const sitemapContent = React5.useMemo(() => {
5554
+ const sitemapContent = React6.useMemo(() => {
5535
5555
  if (!sitemap || sitemap.length === 0) return null;
5536
5556
  return sitemap.map((section) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn(sitemapSectionClassName), children: [
5537
5557
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: cn("mb-4 text-sm font-semibold", sitemapTitleClassName), children: section.title }),
@@ -5554,9 +5574,9 @@ function FooterSimpleCentered({
5554
5574
  sitemapLinksClassName,
5555
5575
  sitemapLinkClassName
5556
5576
  ]);
5557
- const bottomLinksContent = React5.useMemo(() => {
5577
+ const bottomLinksContent = React6.useMemo(() => {
5558
5578
  if (!bottomLinks || bottomLinks.length === 0) return null;
5559
- return bottomLinks.map((link, idx) => /* @__PURE__ */ jsxRuntime.jsx(React5__namespace.Fragment, { children: /* @__PURE__ */ jsxRuntime.jsx(
5579
+ return bottomLinks.map((link, idx) => /* @__PURE__ */ jsxRuntime.jsx(React6__namespace.Fragment, { children: /* @__PURE__ */ jsxRuntime.jsx(
5560
5580
  Pressable,
5561
5581
  {
5562
5582
  href: link.href,
@@ -5881,7 +5901,7 @@ function FooterNewsletterGrid({
5881
5901
  patternOpacity,
5882
5902
  optixFlowConfig
5883
5903
  }) {
5884
- const sectionsContent = React5.useMemo(() => {
5904
+ const sectionsContent = React6.useMemo(() => {
5885
5905
  if (!sections || sections.length === 0) return null;
5886
5906
  return sections.map((section, sectionIdx) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "col-span-2 md:col-span-1", children: [
5887
5907
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "mb-5 font-medium", children: section.title }),
@@ -5895,7 +5915,7 @@ function FooterNewsletterGrid({
5895
5915
  )) })
5896
5916
  ] }, sectionIdx));
5897
5917
  }, [sections]);
5898
- const socialLinksContent = React5.useMemo(() => {
5918
+ const socialLinksContent = React6.useMemo(() => {
5899
5919
  if (!socialLinks || socialLinks.length === 0) return null;
5900
5920
  return socialLinks.map((social, idx) => /* @__PURE__ */ jsxRuntime.jsx("li", { children: /* @__PURE__ */ jsxRuntime.jsx(
5901
5921
  SocialLinkIcon,
@@ -6411,7 +6431,7 @@ function FooterBackgroundCard({
6411
6431
  patternOpacity,
6412
6432
  optixFlowConfig
6413
6433
  }) {
6414
- const sectionStyle = React5.useMemo(
6434
+ const sectionStyle = React6.useMemo(
6415
6435
  () => backgroundImage ? { backgroundImage: `url('${backgroundImage}')` } : void 0,
6416
6436
  [backgroundImage]
6417
6437
  );
@@ -6685,7 +6705,7 @@ function FooterAnimatedSocial({
6685
6705
  pattern,
6686
6706
  patternOpacity
6687
6707
  }) {
6688
- const socialLinksContent = React5.useMemo(() => {
6708
+ const socialLinksContent = React6.useMemo(() => {
6689
6709
  if (!socialLinks || socialLinks.length === 0) return null;
6690
6710
  return socialLinks.map((link, idx) => /* @__PURE__ */ jsxRuntime.jsx(
6691
6711
  framerMotion.motion.div,
@@ -6903,7 +6923,7 @@ function FooterNewsletterMinimal({
6903
6923
  buttonAction,
6904
6924
  formSlot
6905
6925
  }) {
6906
- const navLinksContent = React5__namespace.useMemo(() => {
6926
+ const navLinksContent = React6__namespace.useMemo(() => {
6907
6927
  if (!navLinks || navLinks.length === 0) return null;
6908
6928
  return navLinks.map((item, idx) => /* @__PURE__ */ jsxRuntime.jsx("li", { children: /* @__PURE__ */ jsxRuntime.jsx(
6909
6929
  Pressable,
@@ -6914,7 +6934,7 @@ function FooterNewsletterMinimal({
6914
6934
  }
6915
6935
  ) }, idx));
6916
6936
  }, [navLinks, navLinkClassName]);
6917
- const socialLinksContent = React5__namespace.useMemo(() => {
6937
+ const socialLinksContent = React6__namespace.useMemo(() => {
6918
6938
  if (!socialLinks || socialLinks.length === 0) return null;
6919
6939
  return socialLinks.map((item, idx) => /* @__PURE__ */ jsxRuntime.jsx("li", { children: /* @__PURE__ */ jsxRuntime.jsx(
6920
6940
  SocialLinkIcon,
@@ -6930,7 +6950,7 @@ function FooterNewsletterMinimal({
6930
6950
  }
6931
6951
  ) }, idx));
6932
6952
  }, [socialLinks, socialLinkClassName]);
6933
- const footerLinksContent = React5__namespace.useMemo(() => {
6953
+ const footerLinksContent = React6__namespace.useMemo(() => {
6934
6954
  if (!footerLinks || footerLinks.length === 0) return null;
6935
6955
  return footerLinks.map((item) => /* @__PURE__ */ jsxRuntime.jsx("li", { children: /* @__PURE__ */ jsxRuntime.jsx(
6936
6956
  Pressable,
@@ -6944,7 +6964,7 @@ function FooterNewsletterMinimal({
6944
6964
  }
6945
6965
  ) }, item.label));
6946
6966
  }, [footerLinks, footerLinkClassName]);
6947
- const renderForm = React5__namespace.useMemo(() => {
6967
+ const renderForm = React6__namespace.useMemo(() => {
6948
6968
  if (formSlot) return formSlot;
6949
6969
  if (!formEngineSetup) return null;
6950
6970
  const defaultButtonAction = {
@@ -7179,7 +7199,7 @@ function FooterCtaSocial({
7179
7199
  pattern,
7180
7200
  patternOpacity
7181
7201
  }) {
7182
- const socialLinksContent = React5.useMemo(() => {
7202
+ const socialLinksContent = React6.useMemo(() => {
7183
7203
  if (!socialLinks || socialLinks.length === 0) return null;
7184
7204
  return socialLinks.map((link) => /* @__PURE__ */ jsxRuntime.jsx(
7185
7205
  SocialLinkIcon,
@@ -7297,7 +7317,7 @@ function FooterNavSocial({
7297
7317
  patternOpacity,
7298
7318
  optixFlowConfig
7299
7319
  }) {
7300
- const sectionsContent = React5.useMemo(() => {
7320
+ const sectionsContent = React6.useMemo(() => {
7301
7321
  if (!sections || sections.length === 0) return null;
7302
7322
  return sections.map((section, sectionIdx) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn(navSectionClassName), children: [
7303
7323
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: cn("mb-4 font-semibold", navTitleClassName), children: section.title }),
@@ -7310,7 +7330,7 @@ function FooterNavSocial({
7310
7330
  navLinksClassName,
7311
7331
  navLinkClassName
7312
7332
  ]);
7313
- const socialLinksContent = React5.useMemo(() => {
7333
+ const socialLinksContent = React6.useMemo(() => {
7314
7334
  if (!socialLinks || socialLinks.length === 0) return null;
7315
7335
  return socialLinks.map((social, idx) => /* @__PURE__ */ jsxRuntime.jsx("li", { children: /* @__PURE__ */ jsxRuntime.jsx(
7316
7336
  SocialLinkIcon,
@@ -7325,7 +7345,7 @@ function FooterNavSocial({
7325
7345
  }
7326
7346
  ) }, idx));
7327
7347
  }, [socialLinks, socialLinkClassName]);
7328
- const legalLinksContent = React5.useMemo(() => {
7348
+ const legalLinksContent = React6.useMemo(() => {
7329
7349
  if (!legalLinks || legalLinks.length === 0) return null;
7330
7350
  return legalLinks.map((link, idx) => /* @__PURE__ */ jsxRuntime.jsx("li", { className: cn(legalLinkClassName), children: /* @__PURE__ */ jsxRuntime.jsx(Pressable, { href: link.href, className: "hover:opacity-100", children: link.name }) }, idx));
7331
7351
  }, [legalLinks, legalLinkClassName]);