@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
package/dist/index.cjs CHANGED
@@ -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
 
@@ -143,7 +143,7 @@ var maxWidthStyles = {
143
143
  "4xl": "max-w-[1536px]",
144
144
  full: "max-w-full"
145
145
  };
146
- var Container = React5__namespace.default.forwardRef(
146
+ var Container = React6__namespace.default.forwardRef(
147
147
  ({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
148
148
  const Component = as;
149
149
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -449,7 +449,7 @@ var spacingStyles = {
449
449
  };
450
450
  var predefinedSpacings = ["none", "sm", "md", "lg", "xl", "hero"];
451
451
  var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
452
- var Section = React5__namespace.default.forwardRef(
452
+ var Section = React6__namespace.default.forwardRef(
453
453
  ({
454
454
  id,
455
455
  title,
@@ -585,7 +585,7 @@ function useNavigation({
585
585
  href,
586
586
  onClick
587
587
  } = {}) {
588
- const linkType = React5__namespace.useMemo(() => {
588
+ const linkType = React6__namespace.useMemo(() => {
589
589
  if (!href || href.trim() === "") {
590
590
  return onClick ? "none" : "none";
591
591
  }
@@ -606,7 +606,7 @@ function useNavigation({
606
606
  return "internal";
607
607
  }
608
608
  }, [href, onClick]);
609
- const normalizedHref = React5__namespace.useMemo(() => {
609
+ const normalizedHref = React6__namespace.useMemo(() => {
610
610
  if (!href || href.trim() === "") {
611
611
  return void 0;
612
612
  }
@@ -624,7 +624,7 @@ function useNavigation({
624
624
  return trimmed;
625
625
  }
626
626
  }, [href, linkType]);
627
- const target = React5__namespace.useMemo(() => {
627
+ const target = React6__namespace.useMemo(() => {
628
628
  switch (linkType) {
629
629
  case "external":
630
630
  return "_blank";
@@ -637,7 +637,7 @@ function useNavigation({
637
637
  return void 0;
638
638
  }
639
639
  }, [linkType]);
640
- const rel = React5__namespace.useMemo(() => {
640
+ const rel = React6__namespace.useMemo(() => {
641
641
  if (linkType === "external") {
642
642
  return "noopener noreferrer";
643
643
  }
@@ -646,7 +646,7 @@ function useNavigation({
646
646
  const isExternal = linkType === "external";
647
647
  const isInternal = linkType === "internal";
648
648
  const shouldUseRouter = isInternal && typeof normalizedHref === "string" && normalizedHref.startsWith("/");
649
- const handleClick = React5__namespace.useCallback(
649
+ const handleClick = React6__namespace.useCallback(
650
650
  (event) => {
651
651
  if (onClick) {
652
652
  try {
@@ -830,7 +830,7 @@ var buttonVariants = classVarianceAuthority.cva(baseStyles, {
830
830
  size: "default"
831
831
  }
832
832
  });
833
- var Pressable = React5__namespace.forwardRef(
833
+ var Pressable = React6__namespace.forwardRef(
834
834
  ({
835
835
  children,
836
836
  className,
@@ -930,9 +930,13 @@ var Pressable = React5__namespace.forwardRef(
930
930
  );
931
931
  Pressable.displayName = "Pressable";
932
932
  var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
933
- function DynamicIcon({ apiKey, ...props }) {
933
+ var DynamicIcon = React6__namespace.memo(function DynamicIcon2({
934
+ apiKey,
935
+ ...props
936
+ }) {
934
937
  return /* @__PURE__ */ jsxRuntime.jsx(icon.Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
935
- }
938
+ });
939
+ DynamicIcon.displayName = "DynamicIcon";
936
940
  var PANEL_POSITION_CLASS = {
937
941
  "top-left": "left-4 top-4",
938
942
  "top-right": "right-4 top-4",
@@ -1024,12 +1028,20 @@ function MarkerMediaCarousel({
1024
1028
  mediaItems,
1025
1029
  optixFlowConfig
1026
1030
  }) {
1027
- const [activeIndex, setActiveIndex] = React5__namespace.useState(0);
1031
+ const [activeIndex, setActiveIndex] = React6__namespace.useState(0);
1028
1032
  const totalItems = mediaItems.length;
1029
- React5__namespace.useEffect(() => {
1033
+ const mediaResetKey = React6__namespace.useMemo(
1034
+ () => mediaItems.map((item, index) => {
1035
+ const itemId = normalizeId(item.id, `media-${index}`);
1036
+ return `${itemId}:${item.src}:${item.type ?? ""}:${item.poster ?? ""}`;
1037
+ }).join("|"),
1038
+ [mediaItems]
1039
+ );
1040
+ const activeItemIndex = Math.min(activeIndex, Math.max(0, totalItems - 1));
1041
+ React6__namespace.useEffect(() => {
1030
1042
  setActiveIndex(0);
1031
- }, [mediaItems]);
1032
- const activeMediaItem = mediaItems[activeIndex];
1043
+ }, [mediaResetKey]);
1044
+ const activeMediaItem = mediaItems[activeItemIndex];
1033
1045
  const mediaType = resolveMediaType(activeMediaItem);
1034
1046
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "relative border-b border-border/60 bg-muted/40", children: [
1035
1047
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "relative h-44 w-full overflow-hidden", children: mediaType === "video" ? /* @__PURE__ */ jsxRuntime.jsx(
@@ -1063,7 +1075,7 @@ function MarkerMediaCarousel({
1063
1075
  (current) => (current - 1 + totalItems) % totalItems
1064
1076
  );
1065
1077
  },
1066
- children: /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/arrow-left" })
1078
+ children: /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/arrow-left", size: 16 })
1067
1079
  }
1068
1080
  ),
1069
1081
  /* @__PURE__ */ jsxRuntime.jsx(
@@ -1075,7 +1087,7 @@ function MarkerMediaCarousel({
1075
1087
  onClick: () => {
1076
1088
  setActiveIndex((current) => (current + 1) % totalItems);
1077
1089
  },
1078
- children: /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/arrow-right" })
1090
+ children: /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/arrow-right", size: 16 })
1079
1091
  }
1080
1092
  ),
1081
1093
  /* @__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(
@@ -1085,7 +1097,7 @@ function MarkerMediaCarousel({
1085
1097
  "aria-label": `Show media item ${index + 1}`,
1086
1098
  className: cn(
1087
1099
  "h-2 rounded-full transition-all",
1088
- index === activeIndex ? "w-6 bg-card" : "w-2 bg-card opacity-50 hover:opacity-100"
1100
+ index === activeItemIndex ? "w-6 bg-card" : "w-2 bg-card opacity-50 hover:opacity-100"
1089
1101
  ),
1090
1102
  onClick: () => setActiveIndex(index)
1091
1103
  },
@@ -1134,14 +1146,14 @@ function GeoMap({
1134
1146
  mapChildren,
1135
1147
  optixFlowConfig
1136
1148
  }) {
1137
- const normalizedStandaloneMarkers = React5__namespace.useMemo(
1149
+ const normalizedStandaloneMarkers = React6__namespace.useMemo(
1138
1150
  () => markers.map((marker, index) => ({
1139
1151
  ...marker,
1140
1152
  id: normalizeId(marker.id, `marker-${index}`)
1141
1153
  })),
1142
1154
  [markers]
1143
1155
  );
1144
- const normalizedClusters = React5__namespace.useMemo(() => {
1156
+ const normalizedClusters = React6__namespace.useMemo(() => {
1145
1157
  const results = [];
1146
1158
  clusters.forEach((cluster, clusterIndex) => {
1147
1159
  const clusterId = normalizeId(cluster.id, `cluster-${clusterIndex}`);
@@ -1166,7 +1178,7 @@ function GeoMap({
1166
1178
  });
1167
1179
  return results;
1168
1180
  }, [clusters]);
1169
- const markerLookup = React5__namespace.useMemo(() => {
1181
+ const markerLookup = React6__namespace.useMemo(() => {
1170
1182
  const lookup = /* @__PURE__ */ new Map();
1171
1183
  normalizedStandaloneMarkers.forEach((marker) => {
1172
1184
  lookup.set(marker.id, marker);
@@ -1178,14 +1190,14 @@ function GeoMap({
1178
1190
  });
1179
1191
  return lookup;
1180
1192
  }, [normalizedClusters, normalizedStandaloneMarkers]);
1181
- const clusterLookup = React5__namespace.useMemo(() => {
1193
+ const clusterLookup = React6__namespace.useMemo(() => {
1182
1194
  const lookup = /* @__PURE__ */ new Map();
1183
1195
  normalizedClusters.forEach((cluster) => {
1184
1196
  lookup.set(cluster.id, cluster);
1185
1197
  });
1186
1198
  return lookup;
1187
1199
  }, [normalizedClusters]);
1188
- const firstCoordinate = React5__namespace.useMemo(() => {
1200
+ const firstCoordinate = React6__namespace.useMemo(() => {
1189
1201
  if (normalizedStandaloneMarkers.length > 0) {
1190
1202
  const firstStandaloneMarker = normalizedStandaloneMarkers[0];
1191
1203
  return {
@@ -1205,23 +1217,27 @@ function GeoMap({
1205
1217
  longitude: DEFAULT_VIEW_STATE.longitude
1206
1218
  };
1207
1219
  }, [normalizedClusters, normalizedStandaloneMarkers]);
1208
- const [uncontrolledViewState, setUncontrolledViewState] = React5__namespace.useState({
1220
+ const [uncontrolledViewState, setUncontrolledViewState] = React6__namespace.useState({
1209
1221
  latitude: defaultViewState?.latitude ?? firstCoordinate.latitude,
1210
1222
  longitude: defaultViewState?.longitude ?? firstCoordinate.longitude,
1211
1223
  zoom: defaultViewState?.zoom ?? DEFAULT_VIEW_STATE.zoom
1212
1224
  });
1213
1225
  const isControlledViewState = viewState !== void 0;
1214
1226
  const resolvedViewState = isControlledViewState ? viewState : uncontrolledViewState;
1215
- const applyViewState = React5__namespace.useCallback(
1227
+ const applyViewState = React6__namespace.useCallback(
1216
1228
  (nextState) => {
1217
1229
  if (!isControlledViewState) {
1218
- setUncontrolledViewState((current) => ({ ...current, ...nextState }));
1230
+ setUncontrolledViewState((current) => {
1231
+ const next = { ...current, ...nextState };
1232
+ const hasChanged = current.latitude !== next.latitude || current.longitude !== next.longitude || current.zoom !== next.zoom;
1233
+ return hasChanged ? next : current;
1234
+ });
1219
1235
  }
1220
1236
  onViewStateChange?.(nextState);
1221
1237
  },
1222
1238
  [isControlledViewState, onViewStateChange]
1223
1239
  );
1224
- const [selection, setSelection] = React5__namespace.useState(() => {
1240
+ const [selection, setSelection] = React6__namespace.useState(() => {
1225
1241
  if (initialSelectedMarkerId !== void 0 && initialSelectedMarkerId !== null) {
1226
1242
  return {
1227
1243
  type: "marker",
@@ -1230,7 +1246,7 @@ function GeoMap({
1230
1246
  }
1231
1247
  return { type: "none" };
1232
1248
  });
1233
- React5__namespace.useEffect(() => {
1249
+ React6__namespace.useEffect(() => {
1234
1250
  if (selectedMarkerId === void 0 || selectedMarkerId === null) {
1235
1251
  return;
1236
1252
  }
@@ -1241,13 +1257,13 @@ function GeoMap({
1241
1257
  }, [selectedMarkerId]);
1242
1258
  const selectedMarker = selection.markerId ? markerLookup.get(selection.markerId) : void 0;
1243
1259
  const selectedCluster = selection.clusterId ? clusterLookup.get(selection.clusterId) : void 0;
1244
- React5__namespace.useEffect(() => {
1260
+ React6__namespace.useEffect(() => {
1245
1261
  if (selection.type === "marker" && selection.markerId && !selectedMarker) {
1246
1262
  setSelection({ type: "none" });
1247
1263
  onSelectionChange?.({ type: "none" });
1248
1264
  }
1249
1265
  }, [onSelectionChange, selectedMarker, selection]);
1250
- const emitSelectionChange = React5__namespace.useCallback(
1266
+ const emitSelectionChange = React6__namespace.useCallback(
1251
1267
  (nextSelection) => {
1252
1268
  if (nextSelection.type === "none") {
1253
1269
  onSelectionChange?.({ type: "none" });
@@ -1269,7 +1285,7 @@ function GeoMap({
1269
1285
  },
1270
1286
  [clusterLookup, onSelectionChange]
1271
1287
  );
1272
- const selectMarker = React5__namespace.useCallback(
1288
+ const selectMarker = React6__namespace.useCallback(
1273
1289
  (marker) => {
1274
1290
  setSelection({
1275
1291
  type: "marker",
@@ -1285,7 +1301,7 @@ function GeoMap({
1285
1301
  },
1286
1302
  [applyViewState, emitSelectionChange, markerFocusZoom]
1287
1303
  );
1288
- const selectCluster = React5__namespace.useCallback(
1304
+ const selectCluster = React6__namespace.useCallback(
1289
1305
  (cluster) => {
1290
1306
  setSelection({
1291
1307
  type: "cluster",
@@ -1300,11 +1316,11 @@ function GeoMap({
1300
1316
  },
1301
1317
  [applyViewState, clusterFocusZoom, emitSelectionChange]
1302
1318
  );
1303
- const clearSelection = React5__namespace.useCallback(() => {
1319
+ const clearSelection = React6__namespace.useCallback(() => {
1304
1320
  setSelection({ type: "none" });
1305
1321
  emitSelectionChange({ type: "none" });
1306
1322
  }, [emitSelectionChange]);
1307
- const mapMarkers = React5__namespace.useMemo(() => {
1323
+ const mapMarkers = React6__namespace.useMemo(() => {
1308
1324
  const resolvedMarkers = [];
1309
1325
  normalizedClusters.forEach((cluster) => {
1310
1326
  const isSelected = selection.type === "cluster" && selection.clusterId === cluster.id;
@@ -1413,7 +1429,7 @@ function GeoMap({
1413
1429
  "aria-label": "Close marker details",
1414
1430
  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",
1415
1431
  onClick: clearSelection,
1416
- children: /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/x" })
1432
+ children: /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/x", size: 16 })
1417
1433
  }
1418
1434
  ),
1419
1435
  markerMediaItems.length > 0 ? /* @__PURE__ */ jsxRuntime.jsx(
@@ -1429,36 +1445,40 @@ function GeoMap({
1429
1445
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-base font-semibold leading-tight", children: selectedMarker.title ?? selectedMarker.label ?? "Location" })
1430
1446
  ] }) }),
1431
1447
  selectedMarker.summary ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-sm leading-relaxed", children: selectedMarker.summary }) : null,
1432
- selectedMarker.locationLine ? /* @__PURE__ */ jsxRuntime.jsxs(
1433
- Pressable,
1434
- {
1435
- href: selectedMarker.locationUrl,
1436
- className: "flex flex-row items-center justify-start text-sm gap-2",
1437
- children: [
1438
- /* @__PURE__ */ jsxRuntime.jsx(
1439
- DynamicIcon,
1440
- {
1441
- name: "lucide:map-pin",
1442
- className: "opacity-50",
1443
- size: 12
1444
- }
1448
+ selectedMarker.locationLine ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-row items-center justify-start text-sm gap-2", children: [
1449
+ /* @__PURE__ */ jsxRuntime.jsx(
1450
+ DynamicIcon,
1451
+ {
1452
+ name: "lucide:map-pin",
1453
+ className: "opacity-50",
1454
+ size: 14
1455
+ }
1456
+ ),
1457
+ typeof selectedMarker.locationLine === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
1458
+ Pressable,
1459
+ {
1460
+ href: selectedMarker.locationUrl,
1461
+ className: cn(
1462
+ "transition-all duration-500",
1463
+ "font-medium opacity-75 hover:opacity-100",
1464
+ selectedMarker.locationUrl ? "underline underline-offset-4" : ""
1445
1465
  ),
1446
- typeof selectedMarker.locationLine === "string" ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "font-medium", children: selectedMarker.locationLine }) : selectedMarker.locationLine
1447
- ]
1448
- }
1449
- ) : null,
1466
+ children: selectedMarker.locationLine
1467
+ }
1468
+ ) : selectedMarker.locationLine
1469
+ ] }) : null,
1450
1470
  selectedMarker.hoursLine ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-row items-center justify-start text-sm gap-2", children: [
1451
1471
  /* @__PURE__ */ jsxRuntime.jsx(
1452
1472
  DynamicIcon,
1453
1473
  {
1454
1474
  name: "lucide:clock",
1455
1475
  className: "opacity-50",
1456
- size: 12
1476
+ size: 14
1457
1477
  }
1458
1478
  ),
1459
1479
  typeof selectedMarker.hoursLine === "string" ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "font-medium", children: selectedMarker.hoursLine }) : selectedMarker.hoursLine
1460
1480
  ] }) : null,
1461
- selectedMarker.markerContentComponent ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-sm", children: selectedMarker.markerContentComponent }) : null,
1481
+ selectedMarker.markerContentComponent ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "relative", children: selectedMarker.markerContentComponent }) : null,
1462
1482
  /* @__PURE__ */ jsxRuntime.jsx(MarkerActions, { actions: selectedMarker.actions })
1463
1483
  ] })
1464
1484
  ]
@@ -1481,7 +1501,7 @@ function GeoMap({
1481
1501
  "aria-label": "Close cluster details",
1482
1502
  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",
1483
1503
  onClick: clearSelection,
1484
- children: /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/x" })
1504
+ children: /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/x", size: 16 })
1485
1505
  }
1486
1506
  ),
1487
1507
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mb-3 flex items-start justify-between gap-3", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "min-w-0", children: [
@@ -1582,15 +1602,15 @@ function AnimatedDialog({
1582
1602
  contentClassName,
1583
1603
  featuredMediaHeader
1584
1604
  }) {
1585
- const titleId = React5.useId();
1586
- const descriptionId = React5.useId();
1587
- const containerRef = React5.useRef(null);
1605
+ const titleId = React6.useId();
1606
+ const descriptionId = React6.useId();
1607
+ const containerRef = React6.useRef(null);
1588
1608
  useOnClickOutside.useOnClickOutside(containerRef, () => {
1589
1609
  if (open) {
1590
1610
  onOpenChange(false);
1591
1611
  }
1592
1612
  });
1593
- React5.useEffect(() => {
1613
+ React6.useEffect(() => {
1594
1614
  if (!open) {
1595
1615
  return;
1596
1616
  }
@@ -1913,10 +1933,10 @@ var ImageSlider = ({
1913
1933
  optixFlowConfig
1914
1934
  }) => {
1915
1935
  const hasImages = images.length > 0;
1916
- const [currentIndex, setCurrentIndex] = React5__namespace.useState(
1936
+ const [currentIndex, setCurrentIndex] = React6__namespace.useState(
1917
1937
  () => normalizeIndex(startIndex, images.length)
1918
1938
  );
1919
- const handleNext = React5__namespace.useCallback(() => {
1939
+ const handleNext = React6__namespace.useCallback(() => {
1920
1940
  if (!hasImages) return;
1921
1941
  setCurrentIndex((prevIndex) => {
1922
1942
  const nextIndex = prevIndex + 1 >= images.length ? 0 : prevIndex + 1;
@@ -1924,7 +1944,7 @@ var ImageSlider = ({
1924
1944
  return nextIndex;
1925
1945
  });
1926
1946
  }, [hasImages, images.length, onSlideChange]);
1927
- const handlePrevious = React5__namespace.useCallback(() => {
1947
+ const handlePrevious = React6__namespace.useCallback(() => {
1928
1948
  if (!hasImages) return;
1929
1949
  setCurrentIndex((prevIndex) => {
1930
1950
  const nextIndex = prevIndex - 1 < 0 ? images.length - 1 : prevIndex - 1;
@@ -1932,11 +1952,11 @@ var ImageSlider = ({
1932
1952
  return nextIndex;
1933
1953
  });
1934
1954
  }, [hasImages, images.length, onSlideChange]);
1935
- React5__namespace.useEffect(() => {
1955
+ React6__namespace.useEffect(() => {
1936
1956
  if (!hasImages) return;
1937
1957
  setCurrentIndex(normalizeIndex(startIndex, images.length));
1938
1958
  }, [startIndex, images.length, hasImages]);
1939
- React5__namespace.useEffect(() => {
1959
+ React6__namespace.useEffect(() => {
1940
1960
  if (!enableKeyboard || !hasImages) return;
1941
1961
  const handleKeyDown = (event) => {
1942
1962
  if (event.key === "ArrowRight") {
@@ -1950,7 +1970,7 @@ var ImageSlider = ({
1950
1970
  window.removeEventListener("keydown", handleKeyDown);
1951
1971
  };
1952
1972
  }, [enableKeyboard, handleNext, handlePrevious, hasImages]);
1953
- React5__namespace.useEffect(() => {
1973
+ React6__namespace.useEffect(() => {
1954
1974
  if (!autoplay || images.length < 2) return;
1955
1975
  const interval = window.setInterval(handleNext, autoplayIntervalMs);
1956
1976
  return () => window.clearInterval(interval);
@@ -2261,7 +2281,7 @@ var platformIconMap = {
2261
2281
  dribbble: "cib/dribbble",
2262
2282
  unknown: "icon-park-solid/circular-connection"
2263
2283
  };
2264
- var SocialLinkIcon = React5__namespace.forwardRef(
2284
+ var SocialLinkIcon = React6__namespace.forwardRef(
2265
2285
  ({
2266
2286
  platformName,
2267
2287
  label,
@@ -2274,13 +2294,13 @@ var SocialLinkIcon = React5__namespace.forwardRef(
2274
2294
  ...pressableProps
2275
2295
  }, ref) => {
2276
2296
  const platform = usePlatformFromUrl.usePlatformFromUrl(href);
2277
- const smartPlatformName = React5__namespace.useMemo(() => {
2297
+ const smartPlatformName = React6__namespace.useMemo(() => {
2278
2298
  return platform || platformName;
2279
2299
  }, [platform, platformName]);
2280
- const iconName = React5__namespace.useMemo(() => {
2300
+ const iconName = React6__namespace.useMemo(() => {
2281
2301
  return iconNameOverride || platformIconMap[smartPlatformName];
2282
2302
  }, [iconNameOverride, smartPlatformName]);
2283
- const accessibleLabel = React5__namespace.useMemo(() => {
2303
+ const accessibleLabel = React6__namespace.useMemo(() => {
2284
2304
  return label || platformName;
2285
2305
  }, [label, platformName]);
2286
2306
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -2357,12 +2377,12 @@ function TextInner({ as, className, children, ...props }, ref) {
2357
2377
  const Component = as || "span";
2358
2378
  return /* @__PURE__ */ jsxRuntime.jsx(Component, { ref, className: cn(className), ...props, children });
2359
2379
  }
2360
- var Text = React5__namespace.forwardRef(TextInner);
2380
+ var Text = React6__namespace.forwardRef(TextInner);
2361
2381
  Text.displayName = "Text";
2362
2382
  function isContentTextItem(item) {
2363
- return item !== null && typeof item === "object" && !React5__namespace.isValidElement(item) && "_type" in item && item._type === "text";
2383
+ return item !== null && typeof item === "object" && !React6__namespace.isValidElement(item) && "_type" in item && item._type === "text";
2364
2384
  }
2365
- var ContentGroup = React5__namespace.forwardRef(
2385
+ var ContentGroup = React6__namespace.forwardRef(
2366
2386
  ({ items, className, children, ...props }, ref) => {
2367
2387
  const hasContent = items && items.length > 0;
2368
2388
  if (!hasContent) {
@@ -2375,10 +2395,10 @@ var ContentGroup = React5__namespace.forwardRef(
2375
2395
  return /* @__PURE__ */ jsxRuntime.jsx(Text, { ...textProps }, idx);
2376
2396
  }
2377
2397
  const reactNode = item;
2378
- if (React5__namespace.isValidElement(reactNode)) {
2379
- return React5__namespace.cloneElement(reactNode, { key: reactNode.key ?? idx });
2398
+ if (React6__namespace.isValidElement(reactNode)) {
2399
+ return React6__namespace.cloneElement(reactNode, { key: reactNode.key ?? idx });
2380
2400
  }
2381
- return /* @__PURE__ */ jsxRuntime.jsx(React5__namespace.Fragment, { children: reactNode }, idx);
2401
+ return /* @__PURE__ */ jsxRuntime.jsx(React6__namespace.Fragment, { children: reactNode }, idx);
2382
2402
  }),
2383
2403
  children
2384
2404
  ] });
@@ -2402,7 +2422,7 @@ function AlternatingBlocks({
2402
2422
  pattern,
2403
2423
  patternOpacity
2404
2424
  }) {
2405
- const sectionsContent = React5.useMemo(() => {
2425
+ const sectionsContent = React6.useMemo(() => {
2406
2426
  if (sectionsSlot) return sectionsSlot;
2407
2427
  if (!sections || sections.length === 0) return null;
2408
2428
  return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("space-y-12", sectionsClassName), children: sections.map((section, index) => /* @__PURE__ */ jsxRuntime.jsxs(
@@ -2446,7 +2466,7 @@ function AlternatingBlocks({
2446
2466
  sectionContentClassName,
2447
2467
  sectionMediaClassName
2448
2468
  ]);
2449
- const headerItems = React5.useMemo(() => {
2469
+ const headerItems = React6.useMemo(() => {
2450
2470
  const items = [];
2451
2471
  if (subtitle) {
2452
2472
  items.push(
@@ -2515,7 +2535,7 @@ function AboutSplitHero({
2515
2535
  patternOpacity,
2516
2536
  directionConfig = { desktop: "mediaRight", mobile: "mediaTop" }
2517
2537
  }) {
2518
- const ctaContent = React5.useMemo(() => {
2538
+ const ctaContent = React6.useMemo(() => {
2519
2539
  if (ctaSlot) return ctaSlot;
2520
2540
  if (!ctaAction) return null;
2521
2541
  return /* @__PURE__ */ jsxRuntime.jsxs(
@@ -2537,7 +2557,7 @@ function AboutSplitHero({
2537
2557
  }
2538
2558
  );
2539
2559
  }, [ctaSlot, ctaAction, ctaClassName]);
2540
- const bgColorClass = React5.useMemo(() => {
2560
+ const bgColorClass = React6.useMemo(() => {
2541
2561
  switch (background) {
2542
2562
  case "dark":
2543
2563
  return "bg-foreground text-background";
@@ -2665,7 +2685,7 @@ function AboutMissionPrinciples({
2665
2685
  pattern,
2666
2686
  patternOpacity
2667
2687
  }) {
2668
- const missionActionContent = React5.useMemo(() => {
2688
+ const missionActionContent = React6.useMemo(() => {
2669
2689
  if (missionActionSlot) return missionActionSlot;
2670
2690
  if (!missionAction) return null;
2671
2691
  return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("pt-2", missionActionClassName), children: /* @__PURE__ */ jsxRuntime.jsxs(
@@ -2690,7 +2710,7 @@ function AboutMissionPrinciples({
2690
2710
  }
2691
2711
  ) });
2692
2712
  }, [missionActionSlot, missionAction, missionActionClassName]);
2693
- const principlesContent = React5.useMemo(() => {
2713
+ const principlesContent = React6.useMemo(() => {
2694
2714
  if (principlesSlot) return principlesSlot;
2695
2715
  if (!principles || principles.length === 0) return null;
2696
2716
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -2728,7 +2748,7 @@ function AboutMissionPrinciples({
2728
2748
  }
2729
2749
  );
2730
2750
  }, [principlesSlot, principles, principlesClassName]);
2731
- const visionActionContent = React5.useMemo(() => {
2751
+ const visionActionContent = React6.useMemo(() => {
2732
2752
  if (visionActionSlot) return visionActionSlot;
2733
2753
  if (!visionAction) return null;
2734
2754
  return /* @__PURE__ */ jsxRuntime.jsxs(
@@ -2903,11 +2923,11 @@ function AboutExpandableValues({
2903
2923
  pattern,
2904
2924
  patternOpacity
2905
2925
  }) {
2906
- const [expandedValue, setExpandedValue] = React5__namespace.useState(null);
2907
- const toggleExpand = React5.useCallback((id) => {
2926
+ const [expandedValue, setExpandedValue] = React6__namespace.useState(null);
2927
+ const toggleExpand = React6.useCallback((id) => {
2908
2928
  setExpandedValue((prev) => prev === id ? null : id);
2909
2929
  }, []);
2910
- React5.useMemo(() => {
2930
+ React6.useMemo(() => {
2911
2931
  if (actionsSlot) return actionsSlot;
2912
2932
  if (!actions || actions.length === 0) return null;
2913
2933
  return /* @__PURE__ */ jsxRuntime.jsx("div", { className: actionsClassName, children: actions.map((action, idx) => /* @__PURE__ */ jsxRuntime.jsx(
@@ -2923,7 +2943,7 @@ function AboutExpandableValues({
2923
2943
  idx
2924
2944
  )) });
2925
2945
  }, [actionsSlot, actions, actionsClassName]);
2926
- const valuesContent = React5.useMemo(() => {
2946
+ const valuesContent = React6.useMemo(() => {
2927
2947
  if (valuesSlot) return valuesSlot;
2928
2948
  if (!values || values.length === 0) return null;
2929
2949
  return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("grid grid-cols-1 gap-6 mt-8", valuesClassName), children: values.map((value) => /* @__PURE__ */ jsxRuntime.jsxs(
@@ -3139,17 +3159,17 @@ function CommunityInitiatives({
3139
3159
  pattern,
3140
3160
  patternOpacity
3141
3161
  }) {
3142
- const [activeCategory, setActiveCategory] = React5__namespace.useState(
3162
+ const [activeCategory, setActiveCategory] = React6__namespace.useState(
3143
3163
  categories?.[0]?.id || ""
3144
3164
  );
3145
3165
  const currentCategory = categories?.find((category) => category.id === activeCategory) || categories?.[0];
3146
- const handleCategoryChange = React5.useCallback(
3166
+ const handleCategoryChange = React6.useCallback(
3147
3167
  (e) => {
3148
3168
  setActiveCategory(e.target.value);
3149
3169
  },
3150
3170
  []
3151
3171
  );
3152
- const categoriesContent = React5.useMemo(() => {
3172
+ const categoriesContent = React6.useMemo(() => {
3153
3173
  if (categoriesSlot) return categoriesSlot;
3154
3174
  if (!categories || categories.length === 0) return null;
3155
3175
  return /* @__PURE__ */ jsxRuntime.jsxs(
@@ -3403,10 +3423,10 @@ function AboutCultureTabs({
3403
3423
  patternOpacity
3404
3424
  }) {
3405
3425
  const resolvedAspects = aspects ?? [];
3406
- const [activeTab, setActiveTab] = React5__namespace.useState(
3426
+ const [activeTab, setActiveTab] = React6__namespace.useState(
3407
3427
  resolvedAspects[0]?.id || ""
3408
3428
  );
3409
- const headerItems = React5.useMemo(() => {
3429
+ const headerItems = React6.useMemo(() => {
3410
3430
  const items = [];
3411
3431
  if (badgeText) {
3412
3432
  if (typeof badgeText === "string") {
@@ -3453,7 +3473,7 @@ function AboutCultureTabs({
3453
3473
  description,
3454
3474
  descriptionClassName
3455
3475
  ]);
3456
- const ctaImagesContent = React5.useMemo(() => {
3476
+ const ctaImagesContent = React6.useMemo(() => {
3457
3477
  if (ctaImagesSlot) return ctaImagesSlot;
3458
3478
  if (!ctaImages || ctaImages.length === 0) return null;
3459
3479
  return ctaImages.map((src, i) => /* @__PURE__ */ jsxRuntime.jsx(
@@ -3619,7 +3639,7 @@ function MediaHoverCtas({
3619
3639
  optixFlowConfig
3620
3640
  }) {
3621
3641
  const resolvedItems = items ?? [];
3622
- const itemsContent = React5.useMemo(() => {
3642
+ const itemsContent = React6.useMemo(() => {
3623
3643
  if (itemsSlot) return itemsSlot;
3624
3644
  return resolvedItems.map((item, index) => {
3625
3645
  const CardComponent = item.cardHref ? "a" : "div";
@@ -3709,13 +3729,13 @@ function BannerAnnouncementDismissible({
3709
3729
  actionsClassName,
3710
3730
  dismissButtonClassName
3711
3731
  }) {
3712
- const [isVisible, setIsVisible] = React5.useState(true);
3732
+ const [isVisible, setIsVisible] = React6.useState(true);
3713
3733
  const dismissLabel = dismissAriaLabel ?? "Dismiss banner";
3714
- const handleDismiss = React5.useCallback(() => {
3734
+ const handleDismiss = React6.useCallback(() => {
3715
3735
  setIsVisible(false);
3716
3736
  onDismiss?.();
3717
3737
  }, [onDismiss]);
3718
- const actionsContent = React5.useMemo(() => {
3738
+ const actionsContent = React6.useMemo(() => {
3719
3739
  if (actionsSlot) return actionsSlot;
3720
3740
  if (!actions || actions.length === 0) return null;
3721
3741
  return actions.map((action, index) => {
@@ -3743,7 +3763,7 @@ function BannerAnnouncementDismissible({
3743
3763
  );
3744
3764
  });
3745
3765
  }, [actions, actionsSlot]);
3746
- const iconContent = React5.useMemo(() => {
3766
+ const iconContent = React6.useMemo(() => {
3747
3767
  if (icon) return icon;
3748
3768
  if (!iconName) return null;
3749
3769
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -3755,11 +3775,11 @@ function BannerAnnouncementDismissible({
3755
3775
  }
3756
3776
  );
3757
3777
  }, [icon, iconName, iconClassName]);
3758
- const dismissIconContent = React5.useMemo(() => {
3778
+ const dismissIconContent = React6.useMemo(() => {
3759
3779
  if (dismissIcon) return dismissIcon;
3760
3780
  return /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "mynaui/x", size: 16 });
3761
3781
  }, [dismissIcon]);
3762
- const messageContent = React5.useMemo(() => {
3782
+ const messageContent = React6.useMemo(() => {
3763
3783
  if (!message) return null;
3764
3784
  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 });
3765
3785
  }, [message, messageClassName]);
@@ -3805,12 +3825,12 @@ function BannerCountdownSale({
3805
3825
  separatorClassName
3806
3826
  }) {
3807
3827
  const targetTime = endTime;
3808
- const [timeLeft, setTimeLeft] = React5.useState({
3828
+ const [timeLeft, setTimeLeft] = React6.useState({
3809
3829
  hours: 0,
3810
3830
  minutes: 0,
3811
3831
  seconds: 0
3812
3832
  });
3813
- React5.useEffect(() => {
3833
+ React6.useEffect(() => {
3814
3834
  if (!targetTime) {
3815
3835
  return;
3816
3836
  }
@@ -3833,8 +3853,8 @@ function BannerCountdownSale({
3833
3853
  }, 1e3);
3834
3854
  return () => clearInterval(timer);
3835
3855
  }, [targetTime]);
3836
- const pad = React5.useCallback((n) => n.toString().padStart(2, "0"), []);
3837
- const timerContent = React5.useMemo(() => {
3856
+ const pad = React6.useCallback((n) => n.toString().padStart(2, "0"), []);
3857
+ const timerContent = React6.useMemo(() => {
3838
3858
  if (timerSlot) return timerSlot;
3839
3859
  if (renderTimer) return renderTimer(timeLeft);
3840
3860
  if (!targetTime) return null;
@@ -3846,11 +3866,11 @@ function BannerCountdownSale({
3846
3866
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: cn("rounded bg-destructive px-2 py-0.5", timeUnitClassName), children: pad(timeLeft.seconds) })
3847
3867
  ] });
3848
3868
  }, [timerSlot, renderTimer, timeLeft, timerClassName, timeUnitClassName, separatorClassName, pad, targetTime]);
3849
- const messageContent = React5.useMemo(() => {
3869
+ const messageContent = React6.useMemo(() => {
3850
3870
  if (!message) return null;
3851
3871
  return typeof message === "string" ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: cn("font-medium", messageClassName), children: message }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: messageClassName, children: message });
3852
3872
  }, [message, messageClassName]);
3853
- const descriptionContent = React5.useMemo(() => {
3873
+ const descriptionContent = React6.useMemo(() => {
3854
3874
  if (!description) return null;
3855
3875
  return typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: cn("text-destructive-foreground", descriptionClassName), children: description }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: descriptionClassName, children: description });
3856
3876
  }, [description, descriptionClassName]);
@@ -3879,12 +3899,12 @@ function BannerDeliveryCountdown({
3879
3899
  deliveryDateClassName
3880
3900
  }) {
3881
3901
  const targetTime = cutoffTime;
3882
- const [timeLeft, setTimeLeft] = React5.useState({
3902
+ const [timeLeft, setTimeLeft] = React6.useState({
3883
3903
  hours: 0,
3884
3904
  minutes: 0,
3885
3905
  seconds: 0
3886
3906
  });
3887
- React5.useEffect(() => {
3907
+ React6.useEffect(() => {
3888
3908
  if (!targetTime) {
3889
3909
  return;
3890
3910
  }
@@ -3907,13 +3927,13 @@ function BannerDeliveryCountdown({
3907
3927
  }, 1e3);
3908
3928
  return () => clearInterval(timer);
3909
3929
  }, [targetTime]);
3910
- const pad = React5.useCallback((n) => n.toString().padStart(2, "0"), []);
3911
- const iconContent = React5.useMemo(() => {
3930
+ const pad = React6.useCallback((n) => n.toString().padStart(2, "0"), []);
3931
+ const iconContent = React6.useMemo(() => {
3912
3932
  if (icon) return icon;
3913
3933
  if (!iconName) return null;
3914
3934
  return /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: iconName, size: 16, className: iconClassName });
3915
3935
  }, [icon, iconName, iconClassName]);
3916
- const timerContent = React5.useMemo(() => {
3936
+ const timerContent = React6.useMemo(() => {
3917
3937
  if (timerSlot) return timerSlot;
3918
3938
  if (renderTimer) return renderTimer(timeLeft);
3919
3939
  if (!targetTime) return null;
@@ -3925,18 +3945,18 @@ function BannerDeliveryCountdown({
3925
3945
  pad(timeLeft.seconds)
3926
3946
  ] });
3927
3947
  }, [timerSlot, renderTimer, timeLeft, timerClassName, pad, targetTime]);
3928
- const deliveryDateContent = React5.useMemo(() => {
3948
+ const deliveryDateContent = React6.useMemo(() => {
3929
3949
  if (!deliveryDate) return null;
3930
3950
  return typeof deliveryDate === "string" ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: cn("font-semibold", deliveryDateClassName), children: deliveryDate }) : /* @__PURE__ */ jsxRuntime.jsx("span", { className: deliveryDateClassName, children: deliveryDate });
3931
3951
  }, [deliveryDate, deliveryDateClassName]);
3932
- const messageParts = React5.useMemo(() => {
3952
+ const messageParts = React6.useMemo(() => {
3933
3953
  return [prefixText, timerContent, middleText, deliveryDateContent].filter(
3934
3954
  (part) => part !== null && part !== void 0
3935
3955
  );
3936
3956
  }, [prefixText, timerContent, middleText, deliveryDateContent]);
3937
3957
  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: [
3938
3958
  iconContent,
3939
- messageParts.length > 0 && /* @__PURE__ */ jsxRuntime.jsx("span", { children: messageParts.map((part, index) => /* @__PURE__ */ jsxRuntime.jsxs(React5__namespace.Fragment, { children: [
3959
+ messageParts.length > 0 && /* @__PURE__ */ jsxRuntime.jsx("span", { children: messageParts.map((part, index) => /* @__PURE__ */ jsxRuntime.jsxs(React6__namespace.Fragment, { children: [
3940
3960
  index > 0 ? " " : null,
3941
3961
  part
3942
3962
  ] }, index)) })
@@ -3958,7 +3978,7 @@ function BannerEventPromo({
3958
3978
  eventDetailsClassName,
3959
3979
  actionsClassName
3960
3980
  }) {
3961
- const actionsContent = React5.useMemo(() => {
3981
+ const actionsContent = React6.useMemo(() => {
3962
3982
  if (actionsSlot) return actionsSlot;
3963
3983
  if (!actions || actions.length === 0) return null;
3964
3984
  return actions.map((action, index) => {
@@ -3986,7 +4006,7 @@ function BannerEventPromo({
3986
4006
  );
3987
4007
  });
3988
4008
  }, [actions, actionsSlot]);
3989
- const separatorContent = React5.useMemo(() => {
4009
+ const separatorContent = React6.useMemo(() => {
3990
4010
  if (separator) return separator;
3991
4011
  return /* @__PURE__ */ jsxRuntime.jsx(
3992
4012
  "svg",
@@ -3998,11 +4018,11 @@ function BannerEventPromo({
3998
4018
  }
3999
4019
  );
4000
4020
  }, [separator, separatorClassName]);
4001
- const eventNameContent = React5.useMemo(() => {
4021
+ const eventNameContent = React6.useMemo(() => {
4002
4022
  if (!eventName) return null;
4003
4023
  return typeof eventName === "string" ? /* @__PURE__ */ jsxRuntime.jsx("strong", { className: cn("font-semibold", eventNameClassName), children: eventName }) : /* @__PURE__ */ jsxRuntime.jsx("span", { className: eventNameClassName, children: eventName });
4004
4024
  }, [eventName, eventNameClassName]);
4005
- const eventDetailsContent = React5.useMemo(() => {
4025
+ const eventDetailsContent = React6.useMemo(() => {
4006
4026
  if (!eventDetails) return null;
4007
4027
  return /* @__PURE__ */ jsxRuntime.jsx("span", { className: eventDetailsClassName, children: eventDetails });
4008
4028
  }, [eventDetails, eventDetailsClassName]);
@@ -4039,22 +4059,22 @@ function BannerFloatingOffer({
4039
4059
  }) {
4040
4060
  const isControlled = open !== void 0;
4041
4061
  const initialOpen = defaultOpen ?? true;
4042
- const [internalOpen, setInternalOpen] = React5.useState(initialOpen);
4062
+ const [internalOpen, setInternalOpen] = React6.useState(initialOpen);
4043
4063
  const isVisible = isControlled ? open : internalOpen;
4044
4064
  const dismissLabel = dismissAriaLabel ?? "Dismiss banner";
4045
4065
  const isDismissible = dismissible ?? false;
4046
- React5.useEffect(() => {
4066
+ React6.useEffect(() => {
4047
4067
  if (!isControlled && defaultOpen !== internalOpen) {
4048
4068
  setInternalOpen(initialOpen);
4049
4069
  }
4050
4070
  }, [defaultOpen, initialOpen, isControlled, internalOpen]);
4051
- const handleDismiss = React5.useCallback(() => {
4071
+ const handleDismiss = React6.useCallback(() => {
4052
4072
  if (!isControlled) {
4053
4073
  setInternalOpen(false);
4054
4074
  }
4055
4075
  onOpenChange?.(false);
4056
4076
  }, [isControlled, onOpenChange]);
4057
- const actionsContent = React5.useMemo(() => {
4077
+ const actionsContent = React6.useMemo(() => {
4058
4078
  if (actionsSlot) return actionsSlot;
4059
4079
  if (!actions || actions.length === 0) return null;
4060
4080
  return actions.map((action, index) => {
@@ -4082,7 +4102,7 @@ function BannerFloatingOffer({
4082
4102
  );
4083
4103
  });
4084
4104
  }, [actions, actionsSlot]);
4085
- const separatorContent = React5.useMemo(() => {
4105
+ const separatorContent = React6.useMemo(() => {
4086
4106
  if (separator) return separator;
4087
4107
  return /* @__PURE__ */ jsxRuntime.jsx(
4088
4108
  "svg",
@@ -4094,15 +4114,15 @@ function BannerFloatingOffer({
4094
4114
  }
4095
4115
  );
4096
4116
  }, [separator, separatorClassName]);
4097
- const dismissIconContent = React5.useMemo(() => {
4117
+ const dismissIconContent = React6.useMemo(() => {
4098
4118
  if (dismissIcon) return dismissIcon;
4099
4119
  return /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "mynaui/x", size: 16 });
4100
4120
  }, [dismissIcon]);
4101
- const offerTitleContent = React5.useMemo(() => {
4121
+ const offerTitleContent = React6.useMemo(() => {
4102
4122
  if (!offerTitle) return null;
4103
4123
  return typeof offerTitle === "string" ? /* @__PURE__ */ jsxRuntime.jsx("strong", { className: cn("font-semibold", offerTitleClassName), children: offerTitle }) : /* @__PURE__ */ jsxRuntime.jsx("span", { className: offerTitleClassName, children: offerTitle });
4104
4124
  }, [offerTitle, offerTitleClassName]);
4105
- const offerDescriptionContent = React5.useMemo(() => {
4125
+ const offerDescriptionContent = React6.useMemo(() => {
4106
4126
  if (!offerDescription) return null;
4107
4127
  return /* @__PURE__ */ jsxRuntime.jsx("span", { className: offerDescriptionClassName, children: offerDescription });
4108
4128
  }, [offerDescription, offerDescriptionClassName]);
@@ -4163,13 +4183,13 @@ function BannerGdprRights({
4163
4183
  actionsClassName,
4164
4184
  dismissButtonClassName
4165
4185
  }) {
4166
- const [isVisible, setIsVisible] = React5.useState(true);
4186
+ const [isVisible, setIsVisible] = React6.useState(true);
4167
4187
  const dismissLabel = dismissAriaLabel ?? "Dismiss banner";
4168
- const handleDismiss = React5.useCallback(() => {
4188
+ const handleDismiss = React6.useCallback(() => {
4169
4189
  setIsVisible(false);
4170
4190
  onDismiss?.();
4171
4191
  }, [onDismiss]);
4172
- const iconContent = React5.useMemo(() => {
4192
+ const iconContent = React6.useMemo(() => {
4173
4193
  if (icon) return icon;
4174
4194
  if (!iconName) return null;
4175
4195
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -4181,7 +4201,7 @@ function BannerGdprRights({
4181
4201
  }
4182
4202
  );
4183
4203
  }, [icon, iconName, iconClassName]);
4184
- const actionsContent = React5.useMemo(() => {
4204
+ const actionsContent = React6.useMemo(() => {
4185
4205
  if (actionsSlot) return actionsSlot;
4186
4206
  if (!actions || actions.length === 0) return null;
4187
4207
  return actions.map((action, index) => {
@@ -4208,15 +4228,15 @@ function BannerGdprRights({
4208
4228
  );
4209
4229
  });
4210
4230
  }, [actions, actionsSlot]);
4211
- const dismissIconContent = React5.useMemo(() => {
4231
+ const dismissIconContent = React6.useMemo(() => {
4212
4232
  if (dismissIcon) return dismissIcon;
4213
4233
  return /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "mynaui/x", size: 16 });
4214
4234
  }, [dismissIcon]);
4215
- const titleContent = React5.useMemo(() => {
4235
+ const titleContent = React6.useMemo(() => {
4216
4236
  if (!title) return null;
4217
4237
  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 });
4218
4238
  }, [title, titleClassName]);
4219
- const descriptionContent = React5.useMemo(() => {
4239
+ const descriptionContent = React6.useMemo(() => {
4220
4240
  if (!description && !actionsContent) return null;
4221
4241
  return /* @__PURE__ */ jsxRuntime.jsxs("p", { className: cn("text-sm text-muted-foreground mt-1", descriptionClassName), children: [
4222
4242
  description,
@@ -4270,13 +4290,13 @@ function BannerPrivacyNotice({
4270
4290
  actionsClassName,
4271
4291
  dismissButtonClassName
4272
4292
  }) {
4273
- const [isVisible, setIsVisible] = React5.useState(true);
4293
+ const [isVisible, setIsVisible] = React6.useState(true);
4274
4294
  const dismissLabel = dismissAriaLabel ?? "Dismiss banner";
4275
- const handleDismiss = React5.useCallback(() => {
4295
+ const handleDismiss = React6.useCallback(() => {
4276
4296
  setIsVisible(false);
4277
4297
  onDismiss?.();
4278
4298
  }, [onDismiss]);
4279
- const iconContent = React5.useMemo(() => {
4299
+ const iconContent = React6.useMemo(() => {
4280
4300
  if (icon) return icon;
4281
4301
  if (!iconName) return null;
4282
4302
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -4288,7 +4308,7 @@ function BannerPrivacyNotice({
4288
4308
  }
4289
4309
  );
4290
4310
  }, [icon, iconName, iconClassName]);
4291
- const actionsContent = React5.useMemo(() => {
4311
+ const actionsContent = React6.useMemo(() => {
4292
4312
  if (actionsSlot) return actionsSlot;
4293
4313
  if (!actions || actions.length === 0) return null;
4294
4314
  return actions.map((action, index) => {
@@ -4315,15 +4335,15 @@ function BannerPrivacyNotice({
4315
4335
  );
4316
4336
  });
4317
4337
  }, [actions, actionsSlot]);
4318
- const dismissIconContent = React5.useMemo(() => {
4338
+ const dismissIconContent = React6.useMemo(() => {
4319
4339
  if (dismissIcon) return dismissIcon;
4320
4340
  return /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "mynaui/x", size: 16 });
4321
4341
  }, [dismissIcon]);
4322
- const titleContent = React5.useMemo(() => {
4342
+ const titleContent = React6.useMemo(() => {
4323
4343
  if (!title) return null;
4324
4344
  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 });
4325
4345
  }, [title, titleClassName]);
4326
- const descriptionContent = React5.useMemo(() => {
4346
+ const descriptionContent = React6.useMemo(() => {
4327
4347
  if (!description) return null;
4328
4348
  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 });
4329
4349
  }, [description, descriptionClassName]);
@@ -4370,7 +4390,7 @@ function BannerPromoCta({
4370
4390
  discountClassName,
4371
4391
  actionsClassName
4372
4392
  }) {
4373
- const actionsContent = React5.useMemo(() => {
4393
+ const actionsContent = React6.useMemo(() => {
4374
4394
  if (actionsSlot) return actionsSlot;
4375
4395
  if (!actions || actions.length === 0) return null;
4376
4396
  return actions.map((action, index) => {
@@ -4397,15 +4417,15 @@ function BannerPromoCta({
4397
4417
  );
4398
4418
  });
4399
4419
  }, [actions, actionsSlot]);
4400
- const separatorContent = React5.useMemo(() => {
4420
+ const separatorContent = React6.useMemo(() => {
4401
4421
  if (separator) return separator;
4402
4422
  return /* @__PURE__ */ jsxRuntime.jsx("span", { className: cn("hidden sm:inline", separatorClassName), children: "\xB7" });
4403
4423
  }, [separator, separatorClassName]);
4404
- const messageContent = React5.useMemo(() => {
4424
+ const messageContent = React6.useMemo(() => {
4405
4425
  if (!message) return null;
4406
4426
  return typeof message === "string" ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: cn("font-semibold", messageClassName), children: message }) : /* @__PURE__ */ jsxRuntime.jsx("span", { className: messageClassName, children: message });
4407
4427
  }, [message, messageClassName]);
4408
- const discountContent = React5.useMemo(() => {
4428
+ const discountContent = React6.useMemo(() => {
4409
4429
  if (!discount) return null;
4410
4430
  return /* @__PURE__ */ jsxRuntime.jsx("span", { className: discountClassName, children: discount });
4411
4431
  }, [discount, discountClassName]);
@@ -4433,13 +4453,13 @@ function BannerSocialFollow({
4433
4453
  actionsClassName,
4434
4454
  dismissButtonClassName
4435
4455
  }) {
4436
- const [isVisible, setIsVisible] = React5.useState(true);
4456
+ const [isVisible, setIsVisible] = React6.useState(true);
4437
4457
  const dismissLabel = dismissAriaLabel ?? "Dismiss banner";
4438
- const handleDismiss = React5.useCallback(() => {
4458
+ const handleDismiss = React6.useCallback(() => {
4439
4459
  setIsVisible(false);
4440
4460
  onDismiss?.();
4441
4461
  }, [onDismiss]);
4442
- const iconContent = React5.useMemo(() => {
4462
+ const iconContent = React6.useMemo(() => {
4443
4463
  if (icon) return icon;
4444
4464
  if (!iconName) return null;
4445
4465
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -4451,7 +4471,7 @@ function BannerSocialFollow({
4451
4471
  }
4452
4472
  );
4453
4473
  }, [icon, iconName, iconClassName]);
4454
- const actionsContent = React5.useMemo(() => {
4474
+ const actionsContent = React6.useMemo(() => {
4455
4475
  if (actionsSlot) return actionsSlot;
4456
4476
  if (!actions || actions.length === 0) return null;
4457
4477
  return actions.map((action, index) => {
@@ -4479,11 +4499,11 @@ function BannerSocialFollow({
4479
4499
  );
4480
4500
  });
4481
4501
  }, [actions, actionsSlot]);
4482
- const dismissIconContent = React5.useMemo(() => {
4502
+ const dismissIconContent = React6.useMemo(() => {
4483
4503
  if (dismissIcon) return dismissIcon;
4484
4504
  return /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "mynaui/x", size: 16 });
4485
4505
  }, [dismissIcon]);
4486
- const messageContent = React5.useMemo(() => {
4506
+ const messageContent = React6.useMemo(() => {
4487
4507
  if (!message) return null;
4488
4508
  return typeof message === "string" ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: cn("font-medium", messageClassName), children: message }) : /* @__PURE__ */ jsxRuntime.jsx("span", { className: messageClassName, children: message });
4489
4509
  }, [message, messageClassName]);
@@ -4531,13 +4551,13 @@ function BannerSurveyIncentive({
4531
4551
  actionsClassName,
4532
4552
  dismissButtonClassName
4533
4553
  }) {
4534
- const [isVisible, setIsVisible] = React5.useState(true);
4554
+ const [isVisible, setIsVisible] = React6.useState(true);
4535
4555
  const dismissLabel = dismissAriaLabel ?? "Dismiss banner";
4536
- const handleDismiss = React5.useCallback(() => {
4556
+ const handleDismiss = React6.useCallback(() => {
4537
4557
  setIsVisible(false);
4538
4558
  onDismiss?.();
4539
4559
  }, [onDismiss]);
4540
- const iconContent = React5.useMemo(() => {
4560
+ const iconContent = React6.useMemo(() => {
4541
4561
  if (icon) return icon;
4542
4562
  if (!iconName) return null;
4543
4563
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -4549,7 +4569,7 @@ function BannerSurveyIncentive({
4549
4569
  }
4550
4570
  );
4551
4571
  }, [icon, iconName, iconClassName]);
4552
- const actionsContent = React5.useMemo(() => {
4572
+ const actionsContent = React6.useMemo(() => {
4553
4573
  if (actionsSlot) return actionsSlot;
4554
4574
  if (!actions || actions.length === 0) return null;
4555
4575
  return actions.map((action, index) => {
@@ -4577,15 +4597,15 @@ function BannerSurveyIncentive({
4577
4597
  );
4578
4598
  });
4579
4599
  }, [actions, actionsSlot]);
4580
- const dismissIconContent = React5.useMemo(() => {
4600
+ const dismissIconContent = React6.useMemo(() => {
4581
4601
  if (dismissIcon) return dismissIcon;
4582
4602
  return /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "mynaui/x", size: 16 });
4583
4603
  }, [dismissIcon]);
4584
- const titleContent = React5.useMemo(() => {
4604
+ const titleContent = React6.useMemo(() => {
4585
4605
  if (!title) return null;
4586
4606
  return typeof title === "string" ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: cn("font-medium", titleClassName), children: title }) : /* @__PURE__ */ jsxRuntime.jsx("span", { className: titleClassName, children: title });
4587
4607
  }, [title, titleClassName]);
4588
- const descriptionContent = React5.useMemo(() => {
4608
+ const descriptionContent = React6.useMemo(() => {
4589
4609
  if (!description) return null;
4590
4610
  return typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: cn("text-muted-foreground", descriptionClassName), children: description }) : /* @__PURE__ */ jsxRuntime.jsx("span", { className: descriptionClassName, children: description });
4591
4611
  }, [description, descriptionClassName]);
@@ -4695,7 +4715,7 @@ function FooterCopyright({
4695
4715
  copyright,
4696
4716
  className
4697
4717
  }) {
4698
- const currentYear = React5.useMemo(() => (/* @__PURE__ */ new Date()).getFullYear(), []);
4718
+ const currentYear = React6.useMemo(() => (/* @__PURE__ */ new Date()).getFullYear(), []);
4699
4719
  if (!copyright) {
4700
4720
  return null;
4701
4721
  }
@@ -5207,8 +5227,8 @@ var BrandAttribution = ({
5207
5227
  }
5208
5228
  const { prefix = "", anchorText, href, suffix = "" } = options[optionIndex];
5209
5229
  const ContainerEl = variant;
5210
- const [trackedHref, setTrackedHref] = React5__namespace.useState(href);
5211
- React5__namespace.useEffect(() => {
5230
+ const [trackedHref, setTrackedHref] = React6__namespace.useState(href);
5231
+ React6__namespace.useEffect(() => {
5212
5232
  setTrackedHref(buildTrackedHref(href));
5213
5233
  }, [href]);
5214
5234
  return /* @__PURE__ */ jsxRuntime.jsxs(ContainerEl, { className: containerClassName, children: [
@@ -5328,7 +5348,7 @@ function FooterSocialNewsletter({
5328
5348
  patternOpacity,
5329
5349
  optixFlowConfig
5330
5350
  }) {
5331
- const renderForm = React5__namespace.useMemo(() => {
5351
+ const renderForm = React6__namespace.useMemo(() => {
5332
5352
  if (!formEngineSetup) return null;
5333
5353
  const action = {
5334
5354
  variant: "default",
@@ -5481,14 +5501,14 @@ function FooterSocialApps({
5481
5501
  patternOpacity,
5482
5502
  optixFlowConfig
5483
5503
  }) {
5484
- const sectionsContent = React5.useMemo(() => {
5504
+ const sectionsContent = React6.useMemo(() => {
5485
5505
  if (!sections || sections.length === 0) return null;
5486
5506
  return sections.map((section, sectionIdx) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mt-8 md:mt-0", children: [
5487
5507
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "mb-4 font-bold", children: section.title }),
5488
5508
  /* @__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)) })
5489
5509
  ] }, sectionIdx));
5490
5510
  }, [sections]);
5491
- const socialLinksContent = React5.useMemo(() => {
5511
+ const socialLinksContent = React6.useMemo(() => {
5492
5512
  if (!socialLinks || socialLinks.length === 0) return null;
5493
5513
  return socialLinks.map((social, idx) => /* @__PURE__ */ jsxRuntime.jsx("li", { className: "font-medium", children: /* @__PURE__ */ jsxRuntime.jsx(
5494
5514
  SocialLinkIcon,
@@ -5503,7 +5523,7 @@ function FooterSocialApps({
5503
5523
  }
5504
5524
  ) }, idx));
5505
5525
  }, [socialLinks, background]);
5506
- const appLinksContent = React5.useMemo(() => {
5526
+ const appLinksContent = React6.useMemo(() => {
5507
5527
  if (!appLinks || appLinks.length === 0) return null;
5508
5528
  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(
5509
5529
  "span",
@@ -5592,7 +5612,7 @@ function FooterSimpleCentered({
5592
5612
  patternOpacity,
5593
5613
  optixFlowConfig
5594
5614
  }) {
5595
- const sitemapContent = React5.useMemo(() => {
5615
+ const sitemapContent = React6.useMemo(() => {
5596
5616
  if (!sitemap || sitemap.length === 0) return null;
5597
5617
  return sitemap.map((section) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn(sitemapSectionClassName), children: [
5598
5618
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: cn("mb-4 text-sm font-semibold", sitemapTitleClassName), children: section.title }),
@@ -5615,9 +5635,9 @@ function FooterSimpleCentered({
5615
5635
  sitemapLinksClassName,
5616
5636
  sitemapLinkClassName
5617
5637
  ]);
5618
- const bottomLinksContent = React5.useMemo(() => {
5638
+ const bottomLinksContent = React6.useMemo(() => {
5619
5639
  if (!bottomLinks || bottomLinks.length === 0) return null;
5620
- return bottomLinks.map((link, idx) => /* @__PURE__ */ jsxRuntime.jsx(React5__namespace.Fragment, { children: /* @__PURE__ */ jsxRuntime.jsx(
5640
+ return bottomLinks.map((link, idx) => /* @__PURE__ */ jsxRuntime.jsx(React6__namespace.Fragment, { children: /* @__PURE__ */ jsxRuntime.jsx(
5621
5641
  Pressable,
5622
5642
  {
5623
5643
  href: link.href,
@@ -5942,7 +5962,7 @@ function FooterNewsletterGrid({
5942
5962
  patternOpacity,
5943
5963
  optixFlowConfig
5944
5964
  }) {
5945
- const sectionsContent = React5.useMemo(() => {
5965
+ const sectionsContent = React6.useMemo(() => {
5946
5966
  if (!sections || sections.length === 0) return null;
5947
5967
  return sections.map((section, sectionIdx) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "col-span-2 md:col-span-1", children: [
5948
5968
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "mb-5 font-medium", children: section.title }),
@@ -5956,7 +5976,7 @@ function FooterNewsletterGrid({
5956
5976
  )) })
5957
5977
  ] }, sectionIdx));
5958
5978
  }, [sections]);
5959
- const socialLinksContent = React5.useMemo(() => {
5979
+ const socialLinksContent = React6.useMemo(() => {
5960
5980
  if (!socialLinks || socialLinks.length === 0) return null;
5961
5981
  return socialLinks.map((social, idx) => /* @__PURE__ */ jsxRuntime.jsx("li", { children: /* @__PURE__ */ jsxRuntime.jsx(
5962
5982
  SocialLinkIcon,
@@ -6472,7 +6492,7 @@ function FooterBackgroundCard({
6472
6492
  patternOpacity,
6473
6493
  optixFlowConfig
6474
6494
  }) {
6475
- const sectionStyle = React5.useMemo(
6495
+ const sectionStyle = React6.useMemo(
6476
6496
  () => backgroundImage ? { backgroundImage: `url('${backgroundImage}')` } : void 0,
6477
6497
  [backgroundImage]
6478
6498
  );
@@ -6746,7 +6766,7 @@ function FooterAnimatedSocial({
6746
6766
  pattern,
6747
6767
  patternOpacity
6748
6768
  }) {
6749
- const socialLinksContent = React5.useMemo(() => {
6769
+ const socialLinksContent = React6.useMemo(() => {
6750
6770
  if (!socialLinks || socialLinks.length === 0) return null;
6751
6771
  return socialLinks.map((link, idx) => /* @__PURE__ */ jsxRuntime.jsx(
6752
6772
  framerMotion.motion.div,
@@ -6964,7 +6984,7 @@ function FooterNewsletterMinimal({
6964
6984
  buttonAction,
6965
6985
  formSlot
6966
6986
  }) {
6967
- const navLinksContent = React5__namespace.useMemo(() => {
6987
+ const navLinksContent = React6__namespace.useMemo(() => {
6968
6988
  if (!navLinks || navLinks.length === 0) return null;
6969
6989
  return navLinks.map((item, idx) => /* @__PURE__ */ jsxRuntime.jsx("li", { children: /* @__PURE__ */ jsxRuntime.jsx(
6970
6990
  Pressable,
@@ -6975,7 +6995,7 @@ function FooterNewsletterMinimal({
6975
6995
  }
6976
6996
  ) }, idx));
6977
6997
  }, [navLinks, navLinkClassName]);
6978
- const socialLinksContent = React5__namespace.useMemo(() => {
6998
+ const socialLinksContent = React6__namespace.useMemo(() => {
6979
6999
  if (!socialLinks || socialLinks.length === 0) return null;
6980
7000
  return socialLinks.map((item, idx) => /* @__PURE__ */ jsxRuntime.jsx("li", { children: /* @__PURE__ */ jsxRuntime.jsx(
6981
7001
  SocialLinkIcon,
@@ -6991,7 +7011,7 @@ function FooterNewsletterMinimal({
6991
7011
  }
6992
7012
  ) }, idx));
6993
7013
  }, [socialLinks, socialLinkClassName]);
6994
- const footerLinksContent = React5__namespace.useMemo(() => {
7014
+ const footerLinksContent = React6__namespace.useMemo(() => {
6995
7015
  if (!footerLinks || footerLinks.length === 0) return null;
6996
7016
  return footerLinks.map((item) => /* @__PURE__ */ jsxRuntime.jsx("li", { children: /* @__PURE__ */ jsxRuntime.jsx(
6997
7017
  Pressable,
@@ -7005,7 +7025,7 @@ function FooterNewsletterMinimal({
7005
7025
  }
7006
7026
  ) }, item.label));
7007
7027
  }, [footerLinks, footerLinkClassName]);
7008
- const renderForm = React5__namespace.useMemo(() => {
7028
+ const renderForm = React6__namespace.useMemo(() => {
7009
7029
  if (formSlot) return formSlot;
7010
7030
  if (!formEngineSetup) return null;
7011
7031
  const defaultButtonAction = {
@@ -7240,7 +7260,7 @@ function FooterCtaSocial({
7240
7260
  pattern,
7241
7261
  patternOpacity
7242
7262
  }) {
7243
- const socialLinksContent = React5.useMemo(() => {
7263
+ const socialLinksContent = React6.useMemo(() => {
7244
7264
  if (!socialLinks || socialLinks.length === 0) return null;
7245
7265
  return socialLinks.map((link) => /* @__PURE__ */ jsxRuntime.jsx(
7246
7266
  SocialLinkIcon,
@@ -7358,7 +7378,7 @@ function FooterNavSocial({
7358
7378
  patternOpacity,
7359
7379
  optixFlowConfig
7360
7380
  }) {
7361
- const sectionsContent = React5.useMemo(() => {
7381
+ const sectionsContent = React6.useMemo(() => {
7362
7382
  if (!sections || sections.length === 0) return null;
7363
7383
  return sections.map((section, sectionIdx) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn(navSectionClassName), children: [
7364
7384
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: cn("mb-4 font-semibold", navTitleClassName), children: section.title }),
@@ -7371,7 +7391,7 @@ function FooterNavSocial({
7371
7391
  navLinksClassName,
7372
7392
  navLinkClassName
7373
7393
  ]);
7374
- const socialLinksContent = React5.useMemo(() => {
7394
+ const socialLinksContent = React6.useMemo(() => {
7375
7395
  if (!socialLinks || socialLinks.length === 0) return null;
7376
7396
  return socialLinks.map((social, idx) => /* @__PURE__ */ jsxRuntime.jsx("li", { children: /* @__PURE__ */ jsxRuntime.jsx(
7377
7397
  SocialLinkIcon,
@@ -7386,7 +7406,7 @@ function FooterNavSocial({
7386
7406
  }
7387
7407
  ) }, idx));
7388
7408
  }, [socialLinks, socialLinkClassName]);
7389
- const legalLinksContent = React5.useMemo(() => {
7409
+ const legalLinksContent = React6.useMemo(() => {
7390
7410
  if (!legalLinks || legalLinks.length === 0) return null;
7391
7411
  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));
7392
7412
  }, [legalLinks, legalLinkClassName]);
@@ -7554,7 +7574,7 @@ function FooterNavSocial({
7554
7574
  var useResponsiveLayout = ({
7555
7575
  directionConfig = { desktop: "mediaRight", mobile: "mediaTop" }
7556
7576
  }) => {
7557
- const responsiveClassName = React5.useMemo(() => {
7577
+ const responsiveClassName = React6.useMemo(() => {
7558
7578
  const desktopOrder = directionConfig.desktop === "mediaRight" ? "lg:flex-row" : "lg:flex-row-reverse";
7559
7579
  const mobileOrder = directionConfig.mobile === "mediaTop" ? "flex-col-reverse" : "flex-col";
7560
7580
  return `${mobileOrder} ${desktopOrder}`;