@opensite/ui 0.5.4 → 0.5.6

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 (1717) hide show
  1. package/dist/about-company-profile.cjs +465 -56
  2. package/dist/about-company-profile.d.cts +22 -3
  3. package/dist/about-company-profile.d.ts +22 -3
  4. package/dist/about-company-profile.js +466 -56
  5. package/dist/about-culture-tabs.cjs +1185 -0
  6. package/dist/about-culture-tabs.d.cts +8 -0
  7. package/dist/about-culture-tabs.d.ts +8 -0
  8. package/dist/about-culture-tabs.js +1163 -0
  9. package/dist/about-developer-profile.cjs +420 -32
  10. package/dist/about-developer-profile.d.cts +22 -3
  11. package/dist/about-developer-profile.d.ts +22 -3
  12. package/dist/about-developer-profile.js +421 -32
  13. package/dist/about-developer-story.cjs +453 -44
  14. package/dist/about-developer-story.d.cts +22 -3
  15. package/dist/about-developer-story.d.ts +22 -3
  16. package/dist/about-developer-story.js +454 -44
  17. package/dist/about-expandable-values.cjs +1063 -0
  18. package/dist/about-expandable-values.d.cts +8 -0
  19. package/dist/about-expandable-values.d.ts +8 -0
  20. package/dist/about-expandable-values.js +1042 -0
  21. package/dist/about-interactive-tabs.cjs +405 -12
  22. package/dist/about-interactive-tabs.d.cts +22 -3
  23. package/dist/about-interactive-tabs.d.ts +22 -3
  24. package/dist/about-interactive-tabs.js +406 -12
  25. package/dist/about-location-info-hero.cjs +22 -19
  26. package/dist/about-location-info-hero.d.cts +12 -7
  27. package/dist/about-location-info-hero.d.ts +12 -7
  28. package/dist/about-location-info-hero.js +23 -20
  29. package/dist/about-minimal-story.cjs +411 -18
  30. package/dist/about-minimal-story.d.cts +22 -3
  31. package/dist/about-minimal-story.d.ts +22 -3
  32. package/dist/about-minimal-story.js +407 -18
  33. package/dist/about-mission-dual-image.cjs +426 -38
  34. package/dist/about-mission-dual-image.d.cts +22 -3
  35. package/dist/about-mission-dual-image.d.ts +22 -3
  36. package/dist/about-mission-dual-image.js +427 -38
  37. package/dist/about-mission-features.cjs +443 -44
  38. package/dist/about-mission-features.d.cts +22 -3
  39. package/dist/about-mission-features.d.ts +22 -3
  40. package/dist/about-mission-features.js +440 -45
  41. package/dist/about-mission-principles.cjs +1057 -0
  42. package/dist/about-mission-principles.d.cts +8 -0
  43. package/dist/about-mission-principles.d.ts +8 -0
  44. package/dist/about-mission-principles.js +1036 -0
  45. package/dist/about-network-spotlight.cjs +15 -137
  46. package/dist/about-network-spotlight.d.cts +3 -3
  47. package/dist/about-network-spotlight.d.ts +3 -3
  48. package/dist/about-network-spotlight.js +16 -138
  49. package/dist/about-split-hero.cjs +1009 -0
  50. package/dist/about-split-hero.d.cts +8 -0
  51. package/dist/about-split-hero.d.ts +8 -0
  52. package/dist/about-split-hero.js +988 -0
  53. package/dist/about-startup-team.cjs +420 -25
  54. package/dist/about-startup-team.d.cts +31 -5
  55. package/dist/about-startup-team.d.ts +31 -5
  56. package/dist/about-startup-team.js +421 -25
  57. package/dist/about-stats-showcase.cjs +421 -28
  58. package/dist/about-stats-showcase.d.cts +22 -3
  59. package/dist/about-stats-showcase.d.ts +22 -3
  60. package/dist/about-stats-showcase.js +417 -28
  61. package/dist/about-stats-sidebar.cjs +409 -16
  62. package/dist/about-stats-sidebar.d.cts +22 -3
  63. package/dist/about-stats-sidebar.d.ts +22 -3
  64. package/dist/about-stats-sidebar.js +405 -16
  65. package/dist/about-story-expertise.cjs +19 -141
  66. package/dist/about-story-expertise.d.cts +3 -3
  67. package/dist/about-story-expertise.d.ts +3 -3
  68. package/dist/about-story-expertise.js +20 -142
  69. package/dist/about-story-gallery.cjs +405 -16
  70. package/dist/about-story-gallery.d.cts +22 -3
  71. package/dist/about-story-gallery.d.ts +22 -3
  72. package/dist/about-story-gallery.js +401 -16
  73. package/dist/about-story-hero.cjs +415 -26
  74. package/dist/about-story-hero.d.cts +22 -3
  75. package/dist/about-story-hero.d.ts +22 -3
  76. package/dist/about-story-hero.js +411 -26
  77. package/dist/about-streamline-team.cjs +431 -43
  78. package/dist/about-streamline-team.d.cts +22 -3
  79. package/dist/about-streamline-team.d.ts +22 -3
  80. package/dist/about-streamline-team.js +432 -43
  81. package/dist/about-vision-gallery.cjs +432 -51
  82. package/dist/about-vision-gallery.d.cts +65 -26
  83. package/dist/about-vision-gallery.d.ts +65 -26
  84. package/dist/about-vision-gallery.js +433 -51
  85. package/dist/alternating-blocks.cjs +12 -8
  86. package/dist/alternating-blocks.d.cts +13 -5
  87. package/dist/alternating-blocks.d.ts +13 -5
  88. package/dist/alternating-blocks.js +12 -8
  89. package/dist/animated-dialog.d.cts +3 -3
  90. package/dist/animated-dialog.d.ts +3 -3
  91. package/dist/article-breadcrumb-social.cjs +35 -41
  92. package/dist/article-breadcrumb-social.d.cts +2 -4
  93. package/dist/article-breadcrumb-social.d.ts +2 -4
  94. package/dist/article-breadcrumb-social.js +35 -41
  95. package/dist/article-chapters-author.cjs +80 -80
  96. package/dist/article-chapters-author.d.cts +2 -2
  97. package/dist/article-chapters-author.d.ts +2 -2
  98. package/dist/article-chapters-author.js +79 -79
  99. package/dist/article-compact-toc.cjs +31 -30
  100. package/dist/article-compact-toc.d.cts +2 -2
  101. package/dist/article-compact-toc.d.ts +2 -2
  102. package/dist/article-compact-toc.js +30 -29
  103. package/dist/article-hero-prose.cjs +9 -9
  104. package/dist/article-hero-prose.d.cts +7 -7
  105. package/dist/article-hero-prose.d.ts +7 -7
  106. package/dist/article-hero-prose.js +9 -9
  107. package/dist/article-sidebar-sticky.cjs +12 -11
  108. package/dist/article-sidebar-sticky.d.cts +2 -2
  109. package/dist/article-sidebar-sticky.d.ts +2 -2
  110. package/dist/article-sidebar-sticky.js +12 -11
  111. package/dist/article-split-animated.cjs +23 -142
  112. package/dist/article-split-animated.d.cts +2 -2
  113. package/dist/article-split-animated.d.ts +2 -2
  114. package/dist/article-split-animated.js +23 -142
  115. package/dist/article-toc-sidebar.cjs +31 -31
  116. package/dist/article-toc-sidebar.d.cts +2 -2
  117. package/dist/article-toc-sidebar.d.ts +2 -2
  118. package/dist/article-toc-sidebar.js +30 -30
  119. package/dist/auto-scroll-carousel.cjs +10 -10
  120. package/dist/auto-scroll-carousel.d.cts +3 -3
  121. package/dist/auto-scroll-carousel.d.ts +3 -3
  122. package/dist/auto-scroll-carousel.js +10 -10
  123. package/dist/badge.d.cts +1 -1
  124. package/dist/badge.d.ts +1 -1
  125. package/dist/banner-announcement-dismissible.d.cts +2 -2
  126. package/dist/banner-announcement-dismissible.d.ts +2 -2
  127. package/dist/banner-event-promo.d.cts +2 -2
  128. package/dist/banner-event-promo.d.ts +2 -2
  129. package/dist/banner-floating-offer.d.cts +2 -2
  130. package/dist/banner-floating-offer.d.ts +2 -2
  131. package/dist/banner-gdpr-rights.d.cts +2 -2
  132. package/dist/banner-gdpr-rights.d.ts +2 -2
  133. package/dist/banner-privacy-notice.d.cts +2 -2
  134. package/dist/banner-privacy-notice.d.ts +2 -2
  135. package/dist/banner-promo-cta.d.cts +2 -2
  136. package/dist/banner-promo-cta.d.ts +2 -2
  137. package/dist/banner-social-follow.d.cts +2 -2
  138. package/dist/banner-social-follow.d.ts +2 -2
  139. package/dist/banner-survey-incentive.d.cts +2 -2
  140. package/dist/banner-survey-incentive.d.ts +2 -2
  141. package/dist/{blocks-DP3Vofl4.d.cts → blocks-Cohq4eio.d.cts} +1 -1
  142. package/dist/{blocks-XLPGq8A5.d.ts → blocks-k17uluAz.d.ts} +1 -1
  143. package/dist/blog-cards-read-time.cjs +408 -24
  144. package/dist/blog-cards-read-time.d.cts +22 -3
  145. package/dist/blog-cards-read-time.d.ts +22 -3
  146. package/dist/blog-cards-read-time.js +409 -24
  147. package/dist/blog-cards-tagline-cta.cjs +406 -19
  148. package/dist/blog-cards-tagline-cta.d.cts +22 -3
  149. package/dist/blog-cards-tagline-cta.d.ts +22 -3
  150. package/dist/blog-cards-tagline-cta.js +407 -19
  151. package/dist/blog-category-overlay.cjs +407 -20
  152. package/dist/blog-category-overlay.d.cts +29 -10
  153. package/dist/blog-category-overlay.d.ts +29 -10
  154. package/dist/blog-category-overlay.js +408 -20
  155. package/dist/blog-featured-popular.cjs +406 -19
  156. package/dist/blog-featured-popular.d.cts +22 -3
  157. package/dist/blog-featured-popular.d.ts +22 -3
  158. package/dist/blog-featured-popular.js +407 -19
  159. package/dist/blog-filtered-results.cjs +457 -71
  160. package/dist/blog-filtered-results.d.cts +40 -21
  161. package/dist/blog-filtered-results.d.ts +40 -21
  162. package/dist/blog-filtered-results.js +455 -69
  163. package/dist/blog-grid-author-cards.cjs +408 -20
  164. package/dist/blog-grid-author-cards.d.cts +30 -11
  165. package/dist/blog-grid-author-cards.d.ts +30 -11
  166. package/dist/blog-grid-author-cards.js +409 -20
  167. package/dist/blog-grid-nine-posts.cjs +403 -16
  168. package/dist/blog-grid-nine-posts.d.cts +26 -7
  169. package/dist/blog-grid-nine-posts.d.ts +26 -7
  170. package/dist/blog-grid-nine-posts.js +404 -16
  171. package/dist/blog-horizontal-cards.cjs +407 -20
  172. package/dist/blog-horizontal-cards.d.cts +23 -4
  173. package/dist/blog-horizontal-cards.d.ts +23 -4
  174. package/dist/blog-horizontal-cards.js +408 -20
  175. package/dist/blog-horizontal-timeline.cjs +401 -14
  176. package/dist/blog-horizontal-timeline.d.cts +30 -11
  177. package/dist/blog-horizontal-timeline.d.ts +30 -11
  178. package/dist/blog-horizontal-timeline.js +402 -14
  179. package/dist/blog-masonry-featured.cjs +405 -18
  180. package/dist/blog-masonry-featured.d.cts +30 -11
  181. package/dist/blog-masonry-featured.d.ts +30 -11
  182. package/dist/blog-masonry-featured.js +406 -18
  183. package/dist/blog-related-articles.cjs +401 -14
  184. package/dist/blog-related-articles.d.cts +22 -3
  185. package/dist/blog-related-articles.d.ts +22 -3
  186. package/dist/blog-related-articles.js +402 -14
  187. package/dist/blog-tech-insights.cjs +410 -23
  188. package/dist/blog-tech-insights.d.cts +33 -14
  189. package/dist/blog-tech-insights.d.ts +33 -14
  190. package/dist/blog-tech-insights.js +411 -23
  191. package/dist/blur-vignette-grid.cjs +95 -25
  192. package/dist/blur-vignette-grid.d.cts +3 -3
  193. package/dist/blur-vignette-grid.d.ts +3 -3
  194. package/dist/blur-vignette-grid.js +95 -25
  195. package/dist/{button-variants-CdNtNOuP.d.cts → button-variants-lRElsmTc.d.cts} +1 -1
  196. package/dist/{button-variants-CdNtNOuP.d.ts → button-variants-lRElsmTc.d.ts} +1 -1
  197. package/dist/button.d.cts +1 -1
  198. package/dist/button.d.ts +1 -1
  199. package/dist/carousel-badge-cards.cjs +90 -20
  200. package/dist/carousel-badge-cards.d.cts +3 -4
  201. package/dist/carousel-badge-cards.d.ts +3 -4
  202. package/dist/carousel-badge-cards.js +91 -21
  203. package/dist/carousel-demo-link.cjs +92 -23
  204. package/dist/carousel-demo-link.d.cts +3 -4
  205. package/dist/carousel-demo-link.d.ts +3 -4
  206. package/dist/carousel-demo-link.js +93 -24
  207. package/dist/carousel-gradient-overlay.cjs +75 -11
  208. package/dist/carousel-gradient-overlay.d.cts +3 -4
  209. package/dist/carousel-gradient-overlay.d.ts +3 -4
  210. package/dist/carousel-gradient-overlay.js +76 -12
  211. package/dist/carousel-gradient-text.cjs +15 -7
  212. package/dist/carousel-gradient-text.d.cts +3 -4
  213. package/dist/carousel-gradient-text.d.ts +3 -4
  214. package/dist/carousel-gradient-text.js +16 -8
  215. package/dist/carousel-icon-sidebar.cjs +74 -13
  216. package/dist/carousel-icon-sidebar.d.cts +3 -3
  217. package/dist/carousel-icon-sidebar.d.ts +3 -3
  218. package/dist/carousel-icon-sidebar.js +75 -14
  219. package/dist/carousel-icon-tabs.cjs +64 -13
  220. package/dist/carousel-icon-tabs.d.cts +3 -3
  221. package/dist/carousel-icon-tabs.d.ts +3 -3
  222. package/dist/carousel-icon-tabs.js +65 -14
  223. package/dist/carousel-scale-focus.cjs +127 -66
  224. package/dist/carousel-scale-focus.d.cts +3 -3
  225. package/dist/carousel-scale-focus.d.ts +3 -3
  226. package/dist/carousel-scale-focus.js +128 -67
  227. package/dist/carousel-sidebar-resources.cjs +84 -20
  228. package/dist/carousel-sidebar-resources.d.cts +3 -4
  229. package/dist/carousel-sidebar-resources.d.ts +3 -4
  230. package/dist/carousel-sidebar-resources.js +85 -21
  231. package/dist/carousel-tabs-content.cjs +114 -47
  232. package/dist/carousel-tabs-content.d.cts +3 -3
  233. package/dist/carousel-tabs-content.d.ts +3 -3
  234. package/dist/carousel-tabs-content.js +115 -48
  235. package/dist/case-studies-featured-border.cjs +423 -14
  236. package/dist/case-studies-featured-border.d.cts +22 -3
  237. package/dist/case-studies-featured-border.d.ts +22 -3
  238. package/dist/case-studies-featured-border.js +424 -14
  239. package/dist/case-studies-image-grid.cjs +404 -7
  240. package/dist/case-studies-image-grid.d.cts +22 -3
  241. package/dist/case-studies-image-grid.d.ts +22 -3
  242. package/dist/case-studies-image-grid.js +405 -7
  243. package/dist/case-studies-stats-card.cjs +416 -29
  244. package/dist/case-studies-stats-card.d.cts +22 -3
  245. package/dist/case-studies-stats-card.d.ts +22 -3
  246. package/dist/case-studies-stats-card.js +417 -29
  247. package/dist/case-studies-testimonial-stats.cjs +409 -10
  248. package/dist/case-studies-testimonial-stats.d.cts +22 -3
  249. package/dist/case-studies-testimonial-stats.d.ts +22 -3
  250. package/dist/case-studies-testimonial-stats.js +409 -10
  251. package/dist/case-study-prose-sidebar.cjs +414 -23
  252. package/dist/case-study-prose-sidebar.d.cts +36 -17
  253. package/dist/case-study-prose-sidebar.d.ts +36 -17
  254. package/dist/case-study-prose-sidebar.js +415 -23
  255. package/dist/case-study-stats-metrics.cjs +443 -43
  256. package/dist/case-study-stats-metrics.d.cts +41 -22
  257. package/dist/case-study-stats-metrics.d.ts +41 -22
  258. package/dist/case-study-stats-metrics.js +444 -43
  259. package/dist/case-study-toc-social-sidebar.cjs +436 -46
  260. package/dist/case-study-toc-social-sidebar.d.cts +38 -19
  261. package/dist/case-study-toc-social-sidebar.d.ts +38 -19
  262. package/dist/case-study-toc-social-sidebar.js +437 -47
  263. package/dist/community-initiatives-BudEyO90.d.cts +1136 -0
  264. package/dist/community-initiatives-FG_f_Y4z.d.ts +1136 -0
  265. package/dist/community-initiatives.cjs +1250 -0
  266. package/dist/community-initiatives.d.cts +8 -0
  267. package/dist/community-initiatives.d.ts +8 -0
  268. package/dist/community-initiatives.js +1228 -0
  269. package/dist/comparison-ai-models.cjs +498 -77
  270. package/dist/comparison-ai-models.d.cts +27 -9
  271. package/dist/comparison-ai-models.d.ts +27 -9
  272. package/dist/comparison-ai-models.js +497 -76
  273. package/dist/comparison-feature-cards.cjs +492 -80
  274. package/dist/comparison-feature-cards.d.cts +27 -8
  275. package/dist/comparison-feature-cards.d.ts +27 -8
  276. package/dist/comparison-feature-cards.js +492 -79
  277. package/dist/comparison-feature-grid.cjs +475 -47
  278. package/dist/comparison-feature-grid.d.cts +24 -1
  279. package/dist/comparison-feature-grid.d.ts +24 -1
  280. package/dist/comparison-feature-grid.js +476 -47
  281. package/dist/comparison-grid-badges.cjs +422 -25
  282. package/dist/comparison-grid-badges.d.cts +26 -3
  283. package/dist/comparison-grid-badges.d.ts +26 -3
  284. package/dist/comparison-grid-badges.js +423 -25
  285. package/dist/comparison-image-cards.cjs +450 -36
  286. package/dist/comparison-image-cards.d.cts +25 -6
  287. package/dist/comparison-image-cards.d.ts +25 -6
  288. package/dist/comparison-image-cards.js +451 -36
  289. package/dist/comparison-legacy-modern.cjs +442 -41
  290. package/dist/comparison-legacy-modern.d.cts +29 -6
  291. package/dist/comparison-legacy-modern.d.ts +29 -6
  292. package/dist/comparison-legacy-modern.js +443 -41
  293. package/dist/comparison-metrics-rows.cjs +478 -47
  294. package/dist/comparison-metrics-rows.d.cts +22 -3
  295. package/dist/comparison-metrics-rows.d.ts +22 -3
  296. package/dist/comparison-metrics-rows.js +479 -47
  297. package/dist/comparison-table-tabs.cjs +423 -13
  298. package/dist/comparison-table-tabs.d.cts +25 -2
  299. package/dist/comparison-table-tabs.d.ts +25 -2
  300. package/dist/comparison-table-tabs.js +424 -14
  301. package/dist/comparison-table-tooltips.cjs +443 -37
  302. package/dist/comparison-table-tooltips.d.cts +24 -1
  303. package/dist/comparison-table-tooltips.d.ts +24 -1
  304. package/dist/comparison-table-tooltips.js +443 -37
  305. package/dist/comparison-table-two-column.cjs +463 -53
  306. package/dist/comparison-table-two-column.d.cts +26 -8
  307. package/dist/comparison-table-two-column.d.ts +26 -8
  308. package/dist/comparison-table-two-column.js +464 -53
  309. package/dist/components.cjs +1324 -542
  310. package/dist/components.d.cts +3 -3
  311. package/dist/components.d.ts +3 -3
  312. package/dist/components.js +1321 -545
  313. package/dist/contact-callback.cjs +577 -190
  314. package/dist/contact-callback.d.cts +37 -3
  315. package/dist/contact-callback.d.ts +37 -3
  316. package/dist/contact-callback.js +578 -190
  317. package/dist/contact-card.cjs +502 -115
  318. package/dist/contact-card.d.cts +22 -3
  319. package/dist/contact-card.d.ts +22 -3
  320. package/dist/contact-card.js +503 -115
  321. package/dist/contact-careers.cjs +628 -241
  322. package/dist/contact-careers.d.cts +22 -4
  323. package/dist/contact-careers.d.ts +22 -4
  324. package/dist/contact-careers.js +629 -242
  325. package/dist/contact-catering.cjs +664 -277
  326. package/dist/contact-catering.d.cts +22 -3
  327. package/dist/contact-catering.d.ts +22 -3
  328. package/dist/contact-catering.js +665 -277
  329. package/dist/contact-consultation.cjs +567 -180
  330. package/dist/contact-consultation.d.cts +22 -4
  331. package/dist/contact-consultation.d.ts +22 -4
  332. package/dist/contact-consultation.js +568 -180
  333. package/dist/contact-dark.cjs +486 -99
  334. package/dist/contact-dark.d.cts +22 -4
  335. package/dist/contact-dark.d.ts +22 -4
  336. package/dist/contact-dark.js +487 -99
  337. package/dist/contact-demo.cjs +558 -171
  338. package/dist/contact-demo.d.cts +22 -4
  339. package/dist/contact-demo.d.ts +22 -4
  340. package/dist/contact-demo.js +559 -171
  341. package/dist/contact-emergency.cjs +571 -184
  342. package/dist/contact-emergency.d.cts +22 -4
  343. package/dist/contact-emergency.d.ts +22 -4
  344. package/dist/contact-emergency.js +572 -184
  345. package/dist/contact-event.cjs +489 -102
  346. package/dist/contact-event.d.cts +22 -4
  347. package/dist/contact-event.d.ts +22 -4
  348. package/dist/contact-event.js +490 -102
  349. package/dist/contact-faq.cjs +478 -91
  350. package/dist/contact-faq.d.cts +22 -4
  351. package/dist/contact-faq.d.ts +22 -4
  352. package/dist/contact-faq.js +479 -91
  353. package/dist/contact-feedback.cjs +450 -63
  354. package/dist/contact-feedback.d.cts +22 -4
  355. package/dist/contact-feedback.d.ts +22 -4
  356. package/dist/contact-feedback.js +451 -63
  357. package/dist/contact-fitness.cjs +489 -102
  358. package/dist/contact-fitness.d.cts +22 -4
  359. package/dist/contact-fitness.d.ts +22 -4
  360. package/dist/contact-fitness.js +490 -102
  361. package/dist/contact-floating-banner.cjs +5 -5
  362. package/dist/contact-floating-banner.d.cts +2 -2
  363. package/dist/contact-floating-banner.d.ts +2 -2
  364. package/dist/contact-floating-banner.js +5 -5
  365. package/dist/contact-guest.cjs +489 -102
  366. package/dist/contact-guest.d.cts +22 -4
  367. package/dist/contact-guest.d.ts +22 -4
  368. package/dist/contact-guest.js +490 -102
  369. package/dist/contact-help-center.d.cts +3 -3
  370. package/dist/contact-help-center.d.ts +3 -3
  371. package/dist/contact-image.cjs +489 -102
  372. package/dist/contact-image.d.cts +22 -4
  373. package/dist/contact-image.d.ts +22 -4
  374. package/dist/contact-image.js +490 -102
  375. package/dist/contact-insurance.cjs +489 -102
  376. package/dist/contact-insurance.d.cts +22 -4
  377. package/dist/contact-insurance.d.ts +22 -4
  378. package/dist/contact-insurance.js +490 -102
  379. package/dist/contact-interview.cjs +489 -102
  380. package/dist/contact-interview.d.cts +22 -4
  381. package/dist/contact-interview.d.ts +22 -4
  382. package/dist/contact-interview.js +490 -102
  383. package/dist/contact-locations.cjs +489 -102
  384. package/dist/contact-locations.d.cts +22 -4
  385. package/dist/contact-locations.d.ts +22 -4
  386. package/dist/contact-locations.js +490 -102
  387. package/dist/contact-maintenance.cjs +489 -102
  388. package/dist/contact-maintenance.d.cts +22 -4
  389. package/dist/contact-maintenance.d.ts +22 -4
  390. package/dist/contact-maintenance.js +490 -102
  391. package/dist/contact-map.cjs +489 -102
  392. package/dist/contact-map.d.cts +22 -4
  393. package/dist/contact-map.d.ts +22 -4
  394. package/dist/contact-map.js +490 -102
  395. package/dist/contact-minimal.cjs +466 -79
  396. package/dist/contact-minimal.d.cts +34 -3
  397. package/dist/contact-minimal.d.ts +34 -3
  398. package/dist/contact-minimal.js +467 -79
  399. package/dist/contact-moving.cjs +489 -102
  400. package/dist/contact-moving.d.cts +22 -4
  401. package/dist/contact-moving.d.ts +22 -4
  402. package/dist/contact-moving.js +490 -102
  403. package/dist/contact-multistep.cjs +489 -102
  404. package/dist/contact-multistep.d.cts +22 -4
  405. package/dist/contact-multistep.d.ts +22 -4
  406. package/dist/contact-multistep.js +490 -102
  407. package/dist/contact-partnership.cjs +489 -102
  408. package/dist/contact-partnership.d.cts +22 -4
  409. package/dist/contact-partnership.d.ts +22 -4
  410. package/dist/contact-partnership.js +490 -102
  411. package/dist/contact-photography.cjs +489 -102
  412. package/dist/contact-photography.d.cts +22 -4
  413. package/dist/contact-photography.d.ts +22 -4
  414. package/dist/contact-photography.js +490 -102
  415. package/dist/contact-press.cjs +489 -102
  416. package/dist/contact-press.d.cts +22 -4
  417. package/dist/contact-press.d.ts +22 -4
  418. package/dist/contact-press.js +490 -102
  419. package/dist/contact-quote.cjs +489 -102
  420. package/dist/contact-quote.d.cts +22 -4
  421. package/dist/contact-quote.d.ts +22 -4
  422. package/dist/contact-quote.js +490 -102
  423. package/dist/contact-referral.cjs +489 -102
  424. package/dist/contact-referral.d.cts +22 -4
  425. package/dist/contact-referral.d.ts +22 -4
  426. package/dist/contact-referral.js +490 -102
  427. package/dist/contact-report.cjs +489 -102
  428. package/dist/contact-report.d.cts +22 -4
  429. package/dist/contact-report.d.ts +22 -4
  430. package/dist/contact-report.js +490 -102
  431. package/dist/contact-reservation.cjs +489 -102
  432. package/dist/contact-reservation.d.cts +22 -4
  433. package/dist/contact-reservation.d.ts +22 -4
  434. package/dist/contact-reservation.js +490 -102
  435. package/dist/contact-retreat.cjs +489 -102
  436. package/dist/contact-retreat.d.cts +22 -4
  437. package/dist/contact-retreat.d.ts +22 -4
  438. package/dist/contact-retreat.js +490 -102
  439. package/dist/contact-rsvp.cjs +489 -102
  440. package/dist/contact-rsvp.d.cts +22 -4
  441. package/dist/contact-rsvp.d.ts +22 -4
  442. package/dist/contact-rsvp.js +490 -102
  443. package/dist/contact-sales.cjs +489 -102
  444. package/dist/contact-sales.d.cts +22 -3
  445. package/dist/contact-sales.d.ts +22 -3
  446. package/dist/contact-sales.js +490 -102
  447. package/dist/contact-schedule.cjs +489 -102
  448. package/dist/contact-schedule.d.cts +22 -4
  449. package/dist/contact-schedule.d.ts +22 -4
  450. package/dist/contact-schedule.js +490 -102
  451. package/dist/contact-sponsorship.cjs +489 -102
  452. package/dist/contact-sponsorship.d.cts +22 -4
  453. package/dist/contact-sponsorship.d.ts +22 -4
  454. package/dist/contact-sponsorship.js +490 -102
  455. package/dist/contact-support.cjs +463 -76
  456. package/dist/contact-support.d.cts +22 -4
  457. package/dist/contact-support.d.ts +22 -4
  458. package/dist/contact-support.js +464 -76
  459. package/dist/contact-tenant.cjs +489 -102
  460. package/dist/contact-tenant.d.cts +22 -4
  461. package/dist/contact-tenant.d.ts +22 -4
  462. package/dist/contact-tenant.js +490 -102
  463. package/dist/contact-vendor.cjs +489 -102
  464. package/dist/contact-vendor.d.cts +22 -4
  465. package/dist/contact-vendor.d.ts +22 -4
  466. package/dist/contact-vendor.js +490 -102
  467. package/dist/contact-volunteer.cjs +489 -102
  468. package/dist/contact-volunteer.d.cts +22 -4
  469. package/dist/contact-volunteer.d.ts +22 -4
  470. package/dist/contact-volunteer.js +490 -102
  471. package/dist/contact-warranty.cjs +489 -102
  472. package/dist/contact-warranty.d.cts +22 -4
  473. package/dist/contact-warranty.d.ts +22 -4
  474. package/dist/contact-warranty.js +490 -102
  475. package/dist/contact-wedding.cjs +489 -102
  476. package/dist/contact-wedding.d.cts +22 -4
  477. package/dist/contact-wedding.d.ts +22 -4
  478. package/dist/contact-wedding.js +490 -102
  479. package/dist/container.d.cts +3 -3
  480. package/dist/container.d.ts +3 -3
  481. package/dist/cta-accent-background.cjs +11 -11
  482. package/dist/cta-accent-background.d.cts +3 -3
  483. package/dist/cta-accent-background.d.ts +3 -3
  484. package/dist/cta-accent-background.js +12 -12
  485. package/dist/cta-app-download-newsletter.cjs +16 -135
  486. package/dist/cta-app-download-newsletter.d.cts +3 -3
  487. package/dist/cta-app-download-newsletter.d.ts +3 -3
  488. package/dist/cta-app-download-newsletter.js +17 -136
  489. package/dist/cta-background-icon-badge.cjs +12 -131
  490. package/dist/cta-background-icon-badge.d.cts +3 -3
  491. package/dist/cta-background-icon-badge.d.ts +3 -3
  492. package/dist/cta-background-icon-badge.js +13 -132
  493. package/dist/cta-case-study-testimonial.cjs +31 -154
  494. package/dist/cta-case-study-testimonial.d.cts +3 -3
  495. package/dist/cta-case-study-testimonial.d.ts +3 -3
  496. package/dist/cta-case-study-testimonial.js +32 -155
  497. package/dist/cta-documentation-links.cjs +15 -15
  498. package/dist/cta-documentation-links.d.cts +3 -3
  499. package/dist/cta-documentation-links.d.ts +3 -3
  500. package/dist/cta-documentation-links.js +16 -16
  501. package/dist/cta-enterprise-dark-features.cjs +21 -21
  502. package/dist/cta-enterprise-dark-features.d.cts +3 -3
  503. package/dist/cta-enterprise-dark-features.d.ts +3 -3
  504. package/dist/cta-enterprise-dark-features.js +22 -22
  505. package/dist/cta-enterprise-split.cjs +14 -14
  506. package/dist/cta-enterprise-split.d.cts +3 -3
  507. package/dist/cta-enterprise-split.d.ts +3 -3
  508. package/dist/cta-enterprise-split.js +15 -15
  509. package/dist/cta-feature-cards-grid.cjs +16 -16
  510. package/dist/cta-feature-cards-grid.d.cts +3 -3
  511. package/dist/cta-feature-cards-grid.d.ts +3 -3
  512. package/dist/cta-feature-cards-grid.js +17 -17
  513. package/dist/cta-feature-checklist.cjs +14 -14
  514. package/dist/cta-feature-checklist.d.cts +3 -3
  515. package/dist/cta-feature-checklist.d.ts +3 -3
  516. package/dist/cta-feature-checklist.js +15 -15
  517. package/dist/cta-feature-list.cjs +16 -135
  518. package/dist/cta-feature-list.d.cts +3 -3
  519. package/dist/cta-feature-list.d.ts +3 -3
  520. package/dist/cta-feature-list.js +17 -136
  521. package/dist/cta-fullwidth-background.cjs +14 -133
  522. package/dist/cta-fullwidth-background.d.cts +3 -3
  523. package/dist/cta-fullwidth-background.d.ts +3 -3
  524. package/dist/cta-fullwidth-background.js +15 -134
  525. package/dist/cta-gradient-logos-floating.cjs +17 -17
  526. package/dist/cta-gradient-logos-floating.d.cts +3 -3
  527. package/dist/cta-gradient-logos-floating.d.ts +3 -3
  528. package/dist/cta-gradient-logos-floating.js +18 -18
  529. package/dist/cta-gradient-stats-hero.cjs +16 -16
  530. package/dist/cta-gradient-stats-hero.d.cts +3 -3
  531. package/dist/cta-gradient-stats-hero.d.ts +3 -3
  532. package/dist/cta-gradient-stats-hero.js +17 -17
  533. package/dist/cta-hero-feature-cards.cjs +36 -136
  534. package/dist/cta-hero-feature-cards.d.cts +3 -3
  535. package/dist/cta-hero-feature-cards.d.ts +3 -3
  536. package/dist/cta-hero-feature-cards.js +37 -137
  537. package/dist/cta-image-overlay-arrow.cjs +12 -131
  538. package/dist/cta-image-overlay-arrow.d.cts +3 -3
  539. package/dist/cta-image-overlay-arrow.d.ts +3 -3
  540. package/dist/cta-image-overlay-arrow.js +13 -132
  541. package/dist/cta-image-overlay-centered.cjs +12 -131
  542. package/dist/cta-image-overlay-centered.d.cts +3 -3
  543. package/dist/cta-image-overlay-centered.d.ts +3 -3
  544. package/dist/cta-image-overlay-centered.js +13 -132
  545. package/dist/cta-minimal-separator.cjs +8 -8
  546. package/dist/cta-minimal-separator.d.cts +3 -3
  547. package/dist/cta-minimal-separator.d.ts +3 -3
  548. package/dist/cta-minimal-separator.js +9 -9
  549. package/dist/cta-newsletter-features.cjs +14 -14
  550. package/dist/cta-newsletter-features.d.cts +3 -3
  551. package/dist/cta-newsletter-features.d.ts +3 -3
  552. package/dist/cta-newsletter-features.js +15 -15
  553. package/dist/cta-pattern-background.cjs +11 -11
  554. package/dist/cta-pattern-background.d.cts +3 -3
  555. package/dist/cta-pattern-background.d.ts +3 -3
  556. package/dist/cta-pattern-background.js +12 -12
  557. package/dist/cta-platform-demo.cjs +16 -139
  558. package/dist/cta-platform-demo.d.cts +3 -3
  559. package/dist/cta-platform-demo.d.ts +3 -3
  560. package/dist/cta-platform-demo.js +17 -140
  561. package/dist/cta-simple-centered.cjs +11 -11
  562. package/dist/cta-simple-centered.d.cts +3 -3
  563. package/dist/cta-simple-centered.d.ts +3 -3
  564. package/dist/cta-simple-centered.js +12 -12
  565. package/dist/cta-split-gradient-image.cjs +14 -133
  566. package/dist/cta-split-gradient-image.d.cts +3 -3
  567. package/dist/cta-split-gradient-image.d.ts +3 -3
  568. package/dist/cta-split-gradient-image.js +15 -134
  569. package/dist/cta-split-image-logos.cjs +17 -136
  570. package/dist/cta-split-image-logos.d.cts +3 -3
  571. package/dist/cta-split-image-logos.d.ts +3 -3
  572. package/dist/cta-split-image-logos.js +18 -137
  573. package/dist/cta-split-image.cjs +60 -174
  574. package/dist/cta-split-image.d.cts +3 -3
  575. package/dist/cta-split-image.d.ts +3 -3
  576. package/dist/cta-split-image.js +61 -175
  577. package/dist/cta-stacked-cards.cjs +11 -11
  578. package/dist/cta-stacked-cards.d.cts +3 -3
  579. package/dist/cta-stacked-cards.d.ts +3 -3
  580. package/dist/cta-stacked-cards.js +12 -12
  581. package/dist/cta-video-background-hero.cjs +16 -100
  582. package/dist/cta-video-background-hero.d.cts +3 -3
  583. package/dist/cta-video-background-hero.d.ts +3 -3
  584. package/dist/cta-video-background-hero.js +17 -101
  585. package/dist/cta-workflow-tabs.cjs +18 -137
  586. package/dist/cta-workflow-tabs.d.cts +3 -3
  587. package/dist/cta-workflow-tabs.d.ts +3 -3
  588. package/dist/cta-workflow-tabs.js +19 -138
  589. package/dist/expandable-case-study-cards.cjs +162 -43
  590. package/dist/expandable-case-study-cards.d.cts +3 -3
  591. package/dist/expandable-case-study-cards.d.ts +3 -3
  592. package/dist/expandable-case-study-cards.js +163 -44
  593. package/dist/faq-badge-support.cjs +12 -12
  594. package/dist/faq-badge-support.d.cts +3 -3
  595. package/dist/faq-badge-support.d.ts +3 -3
  596. package/dist/faq-badge-support.js +12 -12
  597. package/dist/faq-bordered-badge.cjs +8 -8
  598. package/dist/faq-bordered-badge.d.cts +3 -3
  599. package/dist/faq-bordered-badge.d.ts +3 -3
  600. package/dist/faq-bordered-badge.js +8 -8
  601. package/dist/faq-card-categories.cjs +8 -8
  602. package/dist/faq-card-categories.d.cts +3 -3
  603. package/dist/faq-card-categories.d.ts +3 -3
  604. package/dist/faq-card-categories.js +8 -8
  605. package/dist/faq-categorized-sections.cjs +8 -8
  606. package/dist/faq-categorized-sections.d.cts +3 -3
  607. package/dist/faq-categorized-sections.d.ts +3 -3
  608. package/dist/faq-categorized-sections.js +8 -8
  609. package/dist/faq-centered-accordion.cjs +8 -8
  610. package/dist/faq-centered-accordion.d.cts +3 -3
  611. package/dist/faq-centered-accordion.d.ts +3 -3
  612. package/dist/faq-centered-accordion.js +8 -8
  613. package/dist/faq-gradient-categories.cjs +8 -8
  614. package/dist/faq-gradient-categories.d.cts +3 -3
  615. package/dist/faq-gradient-categories.d.ts +3 -3
  616. package/dist/faq-gradient-categories.js +8 -8
  617. package/dist/faq-icon-benefits.cjs +7 -7
  618. package/dist/faq-icon-benefits.d.cts +3 -3
  619. package/dist/faq-icon-benefits.d.ts +3 -3
  620. package/dist/faq-icon-benefits.js +8 -8
  621. package/dist/faq-muted-cards.cjs +8 -8
  622. package/dist/faq-muted-cards.d.cts +3 -3
  623. package/dist/faq-muted-cards.d.ts +3 -3
  624. package/dist/faq-muted-cards.js +8 -8
  625. package/dist/faq-numbered-grid.cjs +7 -7
  626. package/dist/faq-numbered-grid.d.cts +3 -3
  627. package/dist/faq-numbered-grid.d.ts +3 -3
  628. package/dist/faq-numbered-grid.js +7 -7
  629. package/dist/faq-numbered-list.cjs +7 -7
  630. package/dist/faq-numbered-list.d.cts +3 -3
  631. package/dist/faq-numbered-list.d.ts +3 -3
  632. package/dist/faq-numbered-list.js +7 -7
  633. package/dist/faq-profile-sidebar.cjs +23 -142
  634. package/dist/faq-profile-sidebar.d.cts +3 -3
  635. package/dist/faq-profile-sidebar.d.ts +3 -3
  636. package/dist/faq-profile-sidebar.js +23 -142
  637. package/dist/faq-rounded-cards.cjs +8 -8
  638. package/dist/faq-rounded-cards.d.cts +3 -3
  639. package/dist/faq-rounded-cards.d.ts +3 -3
  640. package/dist/faq-rounded-cards.js +8 -8
  641. package/dist/faq-sidebar-navigation.cjs +5 -5
  642. package/dist/faq-sidebar-navigation.d.cts +3 -3
  643. package/dist/faq-sidebar-navigation.d.ts +3 -3
  644. package/dist/faq-sidebar-navigation.js +6 -6
  645. package/dist/faq-simple-accordion.cjs +8 -8
  646. package/dist/faq-simple-accordion.d.cts +3 -3
  647. package/dist/faq-simple-accordion.d.ts +3 -3
  648. package/dist/faq-simple-accordion.js +8 -8
  649. package/dist/faq-split-help.cjs +13 -13
  650. package/dist/faq-split-help.d.cts +3 -3
  651. package/dist/faq-split-help.d.ts +3 -3
  652. package/dist/faq-split-help.js +13 -13
  653. package/dist/faq-static-list.cjs +7 -7
  654. package/dist/faq-static-list.d.cts +3 -3
  655. package/dist/faq-static-list.d.ts +3 -3
  656. package/dist/faq-static-list.js +7 -7
  657. package/dist/feature-accordion-image.cjs +415 -25
  658. package/dist/feature-accordion-image.d.cts +26 -3
  659. package/dist/feature-accordion-image.d.ts +26 -3
  660. package/dist/feature-accordion-image.js +416 -25
  661. package/dist/feature-badge-grid-six.cjs +407 -17
  662. package/dist/feature-badge-grid-six.d.cts +26 -3
  663. package/dist/feature-badge-grid-six.d.ts +26 -3
  664. package/dist/feature-badge-grid-six.js +408 -17
  665. package/dist/feature-bento-image-grid.cjs +408 -18
  666. package/dist/feature-bento-image-grid.d.cts +26 -3
  667. package/dist/feature-bento-image-grid.d.ts +26 -3
  668. package/dist/feature-bento-image-grid.js +409 -18
  669. package/dist/feature-bento-utilities.cjs +413 -23
  670. package/dist/feature-bento-utilities.d.cts +26 -3
  671. package/dist/feature-bento-utilities.d.ts +26 -3
  672. package/dist/feature-bento-utilities.js +414 -23
  673. package/dist/feature-capabilities-grid.cjs +399 -9
  674. package/dist/feature-capabilities-grid.d.cts +28 -1
  675. package/dist/feature-capabilities-grid.d.ts +28 -1
  676. package/dist/feature-capabilities-grid.js +400 -9
  677. package/dist/feature-card-grid-linked.cjs +399 -9
  678. package/dist/feature-card-grid-linked.d.cts +26 -3
  679. package/dist/feature-card-grid-linked.d.ts +26 -3
  680. package/dist/feature-card-grid-linked.js +400 -9
  681. package/dist/feature-carousel-progress.cjs +416 -26
  682. package/dist/feature-carousel-progress.d.cts +28 -1
  683. package/dist/feature-carousel-progress.d.ts +28 -1
  684. package/dist/feature-carousel-progress.js +417 -27
  685. package/dist/feature-category-image-cards.cjs +407 -12
  686. package/dist/feature-category-image-cards.d.cts +26 -3
  687. package/dist/feature-category-image-cards.d.ts +26 -3
  688. package/dist/feature-category-image-cards.js +403 -12
  689. package/dist/feature-checklist-image.cjs +411 -24
  690. package/dist/feature-checklist-image.d.cts +26 -3
  691. package/dist/feature-checklist-image.d.ts +26 -3
  692. package/dist/feature-checklist-image.js +412 -24
  693. package/dist/feature-checklist-three-column.cjs +411 -21
  694. package/dist/feature-checklist-three-column.d.cts +26 -3
  695. package/dist/feature-checklist-three-column.d.ts +26 -3
  696. package/dist/feature-checklist-three-column.js +412 -21
  697. package/dist/feature-icon-grid-accent.cjs +403 -13
  698. package/dist/feature-icon-grid-accent.d.cts +26 -3
  699. package/dist/feature-icon-grid-accent.d.ts +26 -3
  700. package/dist/feature-icon-grid-accent.js +404 -13
  701. package/dist/feature-icon-grid-bordered.cjs +400 -10
  702. package/dist/feature-icon-grid-bordered.d.cts +28 -1
  703. package/dist/feature-icon-grid-bordered.d.ts +28 -1
  704. package/dist/feature-icon-grid-bordered.js +401 -10
  705. package/dist/feature-icon-grid-muted.cjs +402 -12
  706. package/dist/feature-icon-grid-muted.d.cts +28 -1
  707. package/dist/feature-icon-grid-muted.d.ts +28 -1
  708. package/dist/feature-icon-grid-muted.js +403 -12
  709. package/dist/feature-icon-tabs-content.cjs +409 -19
  710. package/dist/feature-icon-tabs-content.d.cts +26 -3
  711. package/dist/feature-icon-tabs-content.d.ts +26 -3
  712. package/dist/feature-icon-tabs-content.js +410 -19
  713. package/dist/feature-image-cards-three-column.cjs +400 -10
  714. package/dist/feature-image-cards-three-column.d.cts +26 -3
  715. package/dist/feature-image-cards-three-column.d.ts +26 -3
  716. package/dist/feature-image-cards-three-column.js +401 -10
  717. package/dist/feature-image-overlay-badge.cjs +431 -46
  718. package/dist/feature-image-overlay-badge.d.cts +26 -3
  719. package/dist/feature-image-overlay-badge.d.ts +26 -3
  720. package/dist/feature-image-overlay-badge.js +432 -46
  721. package/dist/feature-integration-cards.cjs +406 -16
  722. package/dist/feature-integration-cards.d.cts +26 -3
  723. package/dist/feature-integration-cards.d.ts +26 -3
  724. package/dist/feature-integration-cards.js +407 -16
  725. package/dist/feature-numbered-cards.cjs +396 -6
  726. package/dist/feature-numbered-cards.d.cts +26 -3
  727. package/dist/feature-numbered-cards.d.ts +26 -3
  728. package/dist/feature-numbered-cards.js +397 -6
  729. package/dist/feature-pattern-grid-links.cjs +389 -12
  730. package/dist/feature-pattern-grid-links.d.cts +28 -1
  731. package/dist/feature-pattern-grid-links.d.ts +28 -1
  732. package/dist/feature-pattern-grid-links.js +390 -12
  733. package/dist/feature-showcase.d.cts +3 -3
  734. package/dist/feature-showcase.d.ts +3 -3
  735. package/dist/feature-split-image-reverse.cjs +416 -32
  736. package/dist/feature-split-image-reverse.d.cts +26 -3
  737. package/dist/feature-split-image-reverse.d.ts +26 -3
  738. package/dist/feature-split-image-reverse.js +417 -32
  739. package/dist/feature-split-image.cjs +408 -21
  740. package/dist/feature-split-image.d.cts +26 -3
  741. package/dist/feature-split-image.d.ts +26 -3
  742. package/dist/feature-split-image.js +409 -21
  743. package/dist/feature-stats-highlight.cjs +406 -16
  744. package/dist/feature-stats-highlight.d.cts +26 -3
  745. package/dist/feature-stats-highlight.d.ts +26 -3
  746. package/dist/feature-stats-highlight.js +407 -16
  747. package/dist/feature-tabbed-content-image.cjs +415 -25
  748. package/dist/feature-tabbed-content-image.d.cts +26 -3
  749. package/dist/feature-tabbed-content-image.d.ts +26 -3
  750. package/dist/feature-tabbed-content-image.js +416 -25
  751. package/dist/feature-three-column-values.cjs +400 -10
  752. package/dist/feature-three-column-values.d.cts +28 -1
  753. package/dist/feature-three-column-values.d.ts +28 -1
  754. package/dist/feature-three-column-values.js +401 -10
  755. package/dist/feature-utility-cards-grid.cjs +412 -22
  756. package/dist/feature-utility-cards-grid.d.cts +26 -3
  757. package/dist/feature-utility-cards-grid.d.ts +26 -3
  758. package/dist/feature-utility-cards-grid.js +413 -22
  759. package/dist/footer-animated-social.cjs +42 -40
  760. package/dist/footer-animated-social.d.cts +3 -3
  761. package/dist/footer-animated-social.d.ts +3 -3
  762. package/dist/footer-animated-social.js +43 -41
  763. package/dist/footer-background-card.cjs +35 -38
  764. package/dist/footer-background-card.d.cts +5 -5
  765. package/dist/footer-background-card.d.ts +5 -5
  766. package/dist/footer-background-card.js +36 -39
  767. package/dist/footer-brand-description.cjs +15 -20
  768. package/dist/footer-brand-description.d.cts +4 -4
  769. package/dist/footer-brand-description.d.ts +4 -4
  770. package/dist/footer-brand-description.js +16 -21
  771. package/dist/footer-brand-links-contact.cjs +62 -83
  772. package/dist/footer-brand-links-contact.d.cts +4 -4
  773. package/dist/footer-brand-links-contact.d.ts +4 -4
  774. package/dist/footer-brand-links-contact.js +63 -84
  775. package/dist/footer-comprehensive-links.cjs +14 -19
  776. package/dist/footer-comprehensive-links.d.cts +0 -1
  777. package/dist/footer-comprehensive-links.d.ts +0 -1
  778. package/dist/footer-comprehensive-links.js +15 -20
  779. package/dist/footer-contact-card.cjs +21 -26
  780. package/dist/footer-contact-card.d.cts +4 -4
  781. package/dist/footer-contact-card.d.ts +4 -4
  782. package/dist/footer-contact-card.js +22 -27
  783. package/dist/footer-cta-banner.cjs +12 -17
  784. package/dist/footer-cta-banner.d.cts +5 -5
  785. package/dist/footer-cta-banner.d.ts +5 -5
  786. package/dist/footer-cta-banner.js +13 -18
  787. package/dist/footer-cta-social.cjs +23 -20
  788. package/dist/footer-cta-social.d.cts +3 -3
  789. package/dist/footer-cta-social.d.ts +3 -3
  790. package/dist/footer-cta-social.js +24 -21
  791. package/dist/footer-links-grid.cjs +438 -52
  792. package/dist/footer-links-grid.d.cts +21 -2
  793. package/dist/footer-links-grid.d.ts +21 -2
  794. package/dist/footer-links-grid.js +439 -52
  795. package/dist/footer-nav-social.cjs +51 -46
  796. package/dist/footer-nav-social.d.cts +4 -4
  797. package/dist/footer-nav-social.d.ts +4 -4
  798. package/dist/footer-nav-social.js +52 -47
  799. package/dist/footer-newsletter-grid.cjs +470 -95
  800. package/dist/footer-newsletter-grid.d.cts +17 -2
  801. package/dist/footer-newsletter-grid.d.ts +17 -2
  802. package/dist/footer-newsletter-grid.js +471 -95
  803. package/dist/footer-newsletter-minimal.cjs +62 -52
  804. package/dist/footer-newsletter-minimal.d.cts +4 -4
  805. package/dist/footer-newsletter-minimal.d.ts +4 -4
  806. package/dist/footer-newsletter-minimal.js +63 -53
  807. package/dist/footer-simple-centered.cjs +47 -62
  808. package/dist/footer-simple-centered.d.cts +4 -4
  809. package/dist/footer-simple-centered.d.ts +4 -4
  810. package/dist/footer-simple-centered.js +48 -63
  811. package/dist/footer-social-apps.cjs +439 -57
  812. package/dist/footer-social-apps.d.cts +16 -1
  813. package/dist/footer-social-apps.d.ts +16 -1
  814. package/dist/footer-social-apps.js +440 -57
  815. package/dist/footer-social-newsletter.cjs +22 -27
  816. package/dist/footer-social-newsletter.d.cts +5 -5
  817. package/dist/footer-social-newsletter.d.ts +5 -5
  818. package/dist/footer-social-newsletter.js +23 -28
  819. package/dist/hero-ad-campaign-expert.cjs +7 -7
  820. package/dist/hero-ad-campaign-expert.d.cts +3 -3
  821. package/dist/hero-ad-campaign-expert.d.ts +3 -3
  822. package/dist/hero-ad-campaign-expert.js +8 -8
  823. package/dist/hero-adaptable-product-grid.cjs +7 -7
  824. package/dist/hero-adaptable-product-grid.d.cts +3 -3
  825. package/dist/hero-adaptable-product-grid.d.ts +3 -3
  826. package/dist/hero-adaptable-product-grid.js +8 -8
  827. package/dist/hero-agency-animated-images.cjs +10 -10
  828. package/dist/hero-agency-animated-images.d.cts +3 -3
  829. package/dist/hero-agency-animated-images.d.ts +3 -3
  830. package/dist/hero-agency-animated-images.js +11 -11
  831. package/dist/hero-ai-powered-carousel.cjs +7 -7
  832. package/dist/hero-ai-powered-carousel.d.cts +3 -3
  833. package/dist/hero-ai-powered-carousel.d.ts +3 -3
  834. package/dist/hero-ai-powered-carousel.js +7 -7
  835. package/dist/hero-announcement-badge.cjs +7 -7
  836. package/dist/hero-announcement-badge.d.cts +3 -3
  837. package/dist/hero-announcement-badge.d.ts +3 -3
  838. package/dist/hero-announcement-badge.js +8 -8
  839. package/dist/hero-architecture-fullscreen.cjs +7 -7
  840. package/dist/hero-architecture-fullscreen.d.cts +3 -3
  841. package/dist/hero-architecture-fullscreen.d.ts +3 -3
  842. package/dist/hero-architecture-fullscreen.js +8 -8
  843. package/dist/hero-badge-image-split.cjs +7 -7
  844. package/dist/hero-badge-image-split.d.cts +3 -3
  845. package/dist/hero-badge-image-split.d.ts +3 -3
  846. package/dist/hero-badge-image-split.js +8 -8
  847. package/dist/hero-badge-shadow-overlay.cjs +7 -7
  848. package/dist/hero-badge-shadow-overlay.d.cts +3 -3
  849. package/dist/hero-badge-shadow-overlay.d.ts +3 -3
  850. package/dist/hero-badge-shadow-overlay.js +8 -8
  851. package/dist/hero-billing-platform-logos.cjs +7 -7
  852. package/dist/hero-billing-platform-logos.d.cts +3 -3
  853. package/dist/hero-billing-platform-logos.d.ts +3 -3
  854. package/dist/hero-billing-platform-logos.js +7 -7
  855. package/dist/hero-business-carousel-dots.cjs +5 -5
  856. package/dist/hero-business-carousel-dots.d.cts +3 -3
  857. package/dist/hero-business-carousel-dots.d.ts +3 -3
  858. package/dist/hero-business-carousel-dots.js +6 -6
  859. package/dist/hero-business-operations-mosaic.cjs +8 -8
  860. package/dist/hero-business-operations-mosaic.d.cts +3 -3
  861. package/dist/hero-business-operations-mosaic.d.ts +3 -3
  862. package/dist/hero-business-operations-mosaic.js +7 -7
  863. package/dist/hero-centered-gradient-cta.cjs +10 -10
  864. package/dist/hero-centered-gradient-cta.d.cts +3 -3
  865. package/dist/hero-centered-gradient-cta.d.ts +3 -3
  866. package/dist/hero-centered-gradient-cta.js +11 -11
  867. package/dist/hero-centered-image-grid.cjs +11 -11
  868. package/dist/hero-centered-image-grid.d.cts +3 -3
  869. package/dist/hero-centered-image-grid.d.ts +3 -3
  870. package/dist/hero-centered-image-grid.js +12 -12
  871. package/dist/hero-centered-screenshot.cjs +7 -7
  872. package/dist/hero-centered-screenshot.d.cts +3 -3
  873. package/dist/hero-centered-screenshot.d.ts +3 -3
  874. package/dist/hero-centered-screenshot.js +8 -8
  875. package/dist/hero-coming-soon-countdown.cjs +13 -13
  876. package/dist/hero-coming-soon-countdown.d.cts +3 -3
  877. package/dist/hero-coming-soon-countdown.d.ts +3 -3
  878. package/dist/hero-coming-soon-countdown.js +14 -14
  879. package/dist/hero-community-survey-cta.cjs +13 -13
  880. package/dist/hero-community-survey-cta.d.cts +3 -3
  881. package/dist/hero-community-survey-cta.d.ts +3 -3
  882. package/dist/hero-community-survey-cta.js +14 -14
  883. package/dist/hero-conversation-intelligence.cjs +10 -10
  884. package/dist/hero-conversation-intelligence.d.cts +3 -3
  885. package/dist/hero-conversation-intelligence.d.ts +3 -3
  886. package/dist/hero-conversation-intelligence.js +11 -11
  887. package/dist/hero-conversion-video-play.cjs +8 -8
  888. package/dist/hero-conversion-video-play.d.cts +3 -3
  889. package/dist/hero-conversion-video-play.d.ts +3 -3
  890. package/dist/hero-conversion-video-play.js +13 -13
  891. package/dist/hero-creative-studio-stacked.cjs +8 -8
  892. package/dist/hero-creative-studio-stacked.d.cts +3 -3
  893. package/dist/hero-creative-studio-stacked.d.ts +3 -3
  894. package/dist/hero-creative-studio-stacked.js +13 -13
  895. package/dist/hero-crm-streamlined.cjs +7 -7
  896. package/dist/hero-crm-streamlined.d.cts +3 -3
  897. package/dist/hero-crm-streamlined.d.ts +3 -3
  898. package/dist/hero-crm-streamlined.js +8 -8
  899. package/dist/hero-customer-support-layered.cjs +8 -8
  900. package/dist/hero-customer-support-layered.d.cts +3 -3
  901. package/dist/hero-customer-support-layered.d.ts +3 -3
  902. package/dist/hero-customer-support-layered.js +7 -7
  903. package/dist/hero-dashed-border-features.cjs +13 -13
  904. package/dist/hero-dashed-border-features.d.cts +3 -3
  905. package/dist/hero-dashed-border-features.d.ts +3 -3
  906. package/dist/hero-dashed-border-features.js +14 -14
  907. package/dist/hero-design-carousel-portfolio.cjs +19 -19
  908. package/dist/hero-design-carousel-portfolio.d.cts +3 -3
  909. package/dist/hero-design-carousel-portfolio.d.ts +3 -3
  910. package/dist/hero-design-carousel-portfolio.js +19 -19
  911. package/dist/hero-design-showcase-logos.cjs +13 -13
  912. package/dist/hero-design-showcase-logos.d.cts +3 -3
  913. package/dist/hero-design-showcase-logos.d.ts +3 -3
  914. package/dist/hero-design-showcase-logos.js +14 -14
  915. package/dist/hero-design-system-3d.cjs +13 -13
  916. package/dist/hero-design-system-3d.d.cts +3 -3
  917. package/dist/hero-design-system-3d.d.ts +3 -3
  918. package/dist/hero-design-system-3d.js +14 -14
  919. package/dist/hero-developer-tools-code.cjs +13 -13
  920. package/dist/hero-developer-tools-code.d.cts +3 -3
  921. package/dist/hero-developer-tools-code.d.ts +3 -3
  922. package/dist/hero-developer-tools-code.js +14 -14
  923. package/dist/hero-digital-agency-fullscreen.cjs +14 -14
  924. package/dist/hero-digital-agency-fullscreen.d.cts +5 -5
  925. package/dist/hero-digital-agency-fullscreen.d.ts +5 -5
  926. package/dist/hero-digital-agency-fullscreen.js +15 -15
  927. package/dist/hero-ecommerce-product-showcase.cjs +14 -14
  928. package/dist/hero-ecommerce-product-showcase.d.cts +3 -3
  929. package/dist/hero-ecommerce-product-showcase.d.ts +3 -3
  930. package/dist/hero-ecommerce-product-showcase.js +15 -15
  931. package/dist/hero-enterprise-security.cjs +16 -16
  932. package/dist/hero-enterprise-security.d.cts +3 -3
  933. package/dist/hero-enterprise-security.d.ts +3 -3
  934. package/dist/hero-enterprise-security.js +17 -17
  935. package/dist/hero-event-registration.cjs +37 -36
  936. package/dist/hero-event-registration.d.cts +5 -5
  937. package/dist/hero-event-registration.d.ts +5 -5
  938. package/dist/hero-event-registration.js +38 -37
  939. package/dist/hero-feature-cards-grid.cjs +10 -10
  940. package/dist/hero-feature-cards-grid.d.cts +3 -3
  941. package/dist/hero-feature-cards-grid.d.ts +3 -3
  942. package/dist/hero-feature-cards-grid.js +11 -11
  943. package/dist/hero-floating-images.d.cts +3 -3
  944. package/dist/hero-floating-images.d.ts +3 -3
  945. package/dist/hero-fullscreen-background-image.cjs +7 -7
  946. package/dist/hero-fullscreen-background-image.d.cts +3 -3
  947. package/dist/hero-fullscreen-background-image.d.ts +3 -3
  948. package/dist/hero-fullscreen-background-image.js +8 -8
  949. package/dist/hero-fullscreen-logo-cta.cjs +10 -10
  950. package/dist/hero-fullscreen-logo-cta.d.cts +3 -3
  951. package/dist/hero-fullscreen-logo-cta.d.ts +3 -3
  952. package/dist/hero-fullscreen-logo-cta.js +11 -11
  953. package/dist/hero-gradient-avatars-rating.cjs +19 -19
  954. package/dist/hero-gradient-avatars-rating.d.cts +3 -3
  955. package/dist/hero-gradient-avatars-rating.d.ts +3 -3
  956. package/dist/hero-gradient-avatars-rating.js +20 -20
  957. package/dist/hero-gradient-client-focused.cjs +10 -10
  958. package/dist/hero-gradient-client-focused.d.cts +3 -3
  959. package/dist/hero-gradient-client-focused.d.ts +3 -3
  960. package/dist/hero-gradient-client-focused.js +11 -11
  961. package/dist/hero-grid-pattern-efficiency.cjs +10 -10
  962. package/dist/hero-grid-pattern-efficiency.d.cts +3 -3
  963. package/dist/hero-grid-pattern-efficiency.d.ts +3 -3
  964. package/dist/hero-grid-pattern-efficiency.js +11 -11
  965. package/dist/hero-grid-pattern-solutions.cjs +13 -13
  966. package/dist/hero-grid-pattern-solutions.d.cts +3 -3
  967. package/dist/hero-grid-pattern-solutions.d.ts +3 -3
  968. package/dist/hero-grid-pattern-solutions.js +14 -14
  969. package/dist/hero-hiring-animated-text.cjs +13 -13
  970. package/dist/hero-hiring-animated-text.d.cts +3 -3
  971. package/dist/hero-hiring-animated-text.d.ts +3 -3
  972. package/dist/hero-hiring-animated-text.js +14 -14
  973. package/dist/hero-image-left-content.cjs +7 -7
  974. package/dist/hero-image-left-content.d.cts +3 -3
  975. package/dist/hero-image-left-content.d.ts +3 -3
  976. package/dist/hero-image-left-content.js +8 -8
  977. package/dist/hero-image-slider.cjs +14 -10
  978. package/dist/hero-image-slider.d.cts +13 -5
  979. package/dist/hero-image-slider.d.ts +13 -5
  980. package/dist/hero-image-slider.js +15 -11
  981. package/dist/hero-innovation-image-grid.cjs +10 -10
  982. package/dist/hero-innovation-image-grid.d.cts +3 -3
  983. package/dist/hero-innovation-image-grid.d.ts +3 -3
  984. package/dist/hero-innovation-image-grid.js +11 -11
  985. package/dist/hero-logo-centered-screenshot.cjs +13 -13
  986. package/dist/hero-logo-centered-screenshot.d.cts +3 -3
  987. package/dist/hero-logo-centered-screenshot.d.ts +3 -3
  988. package/dist/hero-logo-centered-screenshot.js +14 -14
  989. package/dist/hero-marketplace-scattered-images.cjs +13 -13
  990. package/dist/hero-marketplace-scattered-images.d.cts +3 -3
  991. package/dist/hero-marketplace-scattered-images.d.ts +3 -3
  992. package/dist/hero-marketplace-scattered-images.js +14 -14
  993. package/dist/hero-mental-health-team.cjs +13 -13
  994. package/dist/hero-mental-health-team.d.cts +3 -3
  995. package/dist/hero-mental-health-team.d.ts +3 -3
  996. package/dist/hero-mental-health-team.js +13 -13
  997. package/dist/hero-mentorship-video-split.cjs +11 -11
  998. package/dist/hero-mentorship-video-split.d.cts +3 -3
  999. package/dist/hero-mentorship-video-split.d.ts +3 -3
  1000. package/dist/hero-mentorship-video-split.js +15 -15
  1001. package/dist/hero-minimal-centered-dark.cjs +10 -10
  1002. package/dist/hero-minimal-centered-dark.d.cts +3 -3
  1003. package/dist/hero-minimal-centered-dark.d.ts +3 -3
  1004. package/dist/hero-minimal-centered-dark.js +11 -11
  1005. package/dist/hero-mobile-app-download.cjs +19 -19
  1006. package/dist/hero-mobile-app-download.d.cts +3 -3
  1007. package/dist/hero-mobile-app-download.d.ts +3 -3
  1008. package/dist/hero-mobile-app-download.js +20 -20
  1009. package/dist/hero-newsletter-minimal.cjs +10 -10
  1010. package/dist/hero-newsletter-minimal.d.cts +3 -3
  1011. package/dist/hero-newsletter-minimal.d.ts +3 -3
  1012. package/dist/hero-newsletter-minimal.js +11 -11
  1013. package/dist/hero-overlay-cta-grid.cjs +26 -17
  1014. package/dist/hero-overlay-cta-grid.d.cts +24 -1
  1015. package/dist/hero-overlay-cta-grid.d.ts +24 -1
  1016. package/dist/hero-overlay-cta-grid.js +27 -18
  1017. package/dist/hero-pattern-badge-logos.cjs +10 -10
  1018. package/dist/hero-pattern-badge-logos.d.cts +3 -3
  1019. package/dist/hero-pattern-badge-logos.d.ts +3 -3
  1020. package/dist/hero-pattern-badge-logos.js +11 -11
  1021. package/dist/hero-pattern-logo-tech-stack.cjs +13 -13
  1022. package/dist/hero-pattern-logo-tech-stack.d.cts +3 -3
  1023. package/dist/hero-pattern-logo-tech-stack.d.ts +3 -3
  1024. package/dist/hero-pattern-logo-tech-stack.js +14 -14
  1025. package/dist/hero-platform-features-grid.cjs +13 -13
  1026. package/dist/hero-platform-features-grid.d.cts +3 -3
  1027. package/dist/hero-platform-features-grid.d.ts +3 -3
  1028. package/dist/hero-platform-features-grid.js +14 -14
  1029. package/dist/hero-portfolio-creative.cjs +16 -16
  1030. package/dist/hero-portfolio-creative.d.cts +3 -3
  1031. package/dist/hero-portfolio-creative.d.ts +3 -3
  1032. package/dist/hero-portfolio-creative.js +17 -17
  1033. package/dist/hero-premium-split-avatars.cjs +16 -16
  1034. package/dist/hero-premium-split-avatars.d.cts +3 -3
  1035. package/dist/hero-premium-split-avatars.d.ts +3 -3
  1036. package/dist/hero-premium-split-avatars.js +17 -17
  1037. package/dist/hero-presentation-platform-video.cjs +10 -10
  1038. package/dist/hero-presentation-platform-video.d.cts +3 -3
  1039. package/dist/hero-presentation-platform-video.d.ts +3 -3
  1040. package/dist/hero-presentation-platform-video.js +11 -11
  1041. package/dist/hero-pricing-comparison.cjs +10 -10
  1042. package/dist/hero-pricing-comparison.d.cts +3 -3
  1043. package/dist/hero-pricing-comparison.d.ts +3 -3
  1044. package/dist/hero-pricing-comparison.js +11 -11
  1045. package/dist/hero-product-showcase-floating.cjs +19 -19
  1046. package/dist/hero-product-showcase-floating.d.cts +3 -3
  1047. package/dist/hero-product-showcase-floating.d.ts +3 -3
  1048. package/dist/hero-product-showcase-floating.js +20 -20
  1049. package/dist/hero-productivity-launcher-video.cjs +16 -16
  1050. package/dist/hero-productivity-launcher-video.d.cts +3 -3
  1051. package/dist/hero-productivity-launcher-video.d.ts +3 -3
  1052. package/dist/hero-productivity-launcher-video.js +17 -17
  1053. package/dist/hero-saas-dashboard-preview.cjs +13 -13
  1054. package/dist/hero-saas-dashboard-preview.d.cts +3 -3
  1055. package/dist/hero-saas-dashboard-preview.d.ts +3 -3
  1056. package/dist/hero-saas-dashboard-preview.js +14 -14
  1057. package/dist/hero-shared-inbox-layered.cjs +8 -8
  1058. package/dist/hero-shared-inbox-layered.d.cts +3 -3
  1059. package/dist/hero-shared-inbox-layered.d.ts +3 -3
  1060. package/dist/hero-shared-inbox-layered.js +7 -7
  1061. package/dist/hero-simple-centered-image.cjs +7 -7
  1062. package/dist/hero-simple-centered-image.d.cts +3 -3
  1063. package/dist/hero-simple-centered-image.d.ts +3 -3
  1064. package/dist/hero-simple-centered-image.js +8 -8
  1065. package/dist/hero-software-growth-video-dialog.cjs +8 -8
  1066. package/dist/hero-software-growth-video-dialog.d.cts +3 -3
  1067. package/dist/hero-software-growth-video-dialog.d.ts +3 -3
  1068. package/dist/hero-software-growth-video-dialog.js +9 -9
  1069. package/dist/hero-spiral-pattern-cards.cjs +7 -7
  1070. package/dist/hero-spiral-pattern-cards.d.cts +3 -3
  1071. package/dist/hero-spiral-pattern-cards.d.ts +3 -3
  1072. package/dist/hero-spiral-pattern-cards.js +8 -8
  1073. package/dist/hero-split-geometric-shapes.cjs +10 -10
  1074. package/dist/hero-split-geometric-shapes.d.cts +3 -3
  1075. package/dist/hero-split-geometric-shapes.d.ts +3 -3
  1076. package/dist/hero-split-geometric-shapes.js +11 -11
  1077. package/dist/hero-split-icon-cards.cjs +19 -14
  1078. package/dist/hero-split-icon-cards.d.cts +14 -6
  1079. package/dist/hero-split-icon-cards.d.ts +14 -6
  1080. package/dist/hero-split-icon-cards.js +20 -15
  1081. package/dist/hero-split-image-newsletter.cjs +10 -10
  1082. package/dist/hero-split-image-newsletter.d.cts +3 -3
  1083. package/dist/hero-split-image-newsletter.d.ts +3 -3
  1084. package/dist/hero-split-image-newsletter.js +11 -11
  1085. package/dist/hero-split-spiral-shapes.cjs +10 -10
  1086. package/dist/hero-split-spiral-shapes.d.cts +3 -3
  1087. package/dist/hero-split-spiral-shapes.d.ts +3 -3
  1088. package/dist/hero-split-spiral-shapes.js +11 -11
  1089. package/dist/hero-startup-launch-cta.cjs +13 -13
  1090. package/dist/hero-startup-launch-cta.d.cts +3 -3
  1091. package/dist/hero-startup-launch-cta.d.ts +3 -3
  1092. package/dist/hero-startup-launch-cta.js +14 -14
  1093. package/dist/hero-stats-social-proof.cjs +13 -13
  1094. package/dist/hero-stats-social-proof.d.cts +3 -3
  1095. package/dist/hero-stats-social-proof.d.ts +3 -3
  1096. package/dist/hero-stats-social-proof.js +14 -14
  1097. package/dist/hero-task-timer-animated.cjs +10 -10
  1098. package/dist/hero-task-timer-animated.d.cts +3 -3
  1099. package/dist/hero-task-timer-animated.d.ts +3 -3
  1100. package/dist/hero-task-timer-animated.js +11 -11
  1101. package/dist/hero-tech-carousel.cjs +5 -5
  1102. package/dist/hero-tech-carousel.d.cts +3 -3
  1103. package/dist/hero-tech-carousel.d.ts +3 -3
  1104. package/dist/hero-tech-carousel.js +6 -6
  1105. package/dist/hero-testimonial-image-grid.cjs +33 -19
  1106. package/dist/hero-testimonial-image-grid.d.cts +24 -1
  1107. package/dist/hero-testimonial-image-grid.d.ts +24 -1
  1108. package/dist/hero-testimonial-image-grid.js +34 -20
  1109. package/dist/hero-therapy-testimonial-grid.cjs +13 -13
  1110. package/dist/hero-therapy-testimonial-grid.d.cts +3 -3
  1111. package/dist/hero-therapy-testimonial-grid.d.ts +3 -3
  1112. package/dist/hero-therapy-testimonial-grid.js +14 -14
  1113. package/dist/hero-ui-library-showcase.cjs +13 -13
  1114. package/dist/hero-ui-library-showcase.d.cts +3 -3
  1115. package/dist/hero-ui-library-showcase.d.ts +3 -3
  1116. package/dist/hero-ui-library-showcase.js +14 -14
  1117. package/dist/hero-video-background-dark.cjs +10 -10
  1118. package/dist/hero-video-background-dark.d.cts +3 -3
  1119. package/dist/hero-video-background-dark.d.ts +3 -3
  1120. package/dist/hero-video-background-dark.js +11 -11
  1121. package/dist/hero-video-dialog-gradient.cjs +8 -8
  1122. package/dist/hero-video-dialog-gradient.d.cts +3 -3
  1123. package/dist/hero-video-dialog-gradient.d.ts +3 -3
  1124. package/dist/hero-video-dialog-gradient.js +12 -12
  1125. package/dist/hero-video-overlay-stars.cjs +13 -13
  1126. package/dist/hero-video-overlay-stars.d.cts +3 -3
  1127. package/dist/hero-video-overlay-stars.d.ts +3 -3
  1128. package/dist/hero-video-overlay-stars.js +14 -14
  1129. package/dist/hero-welcome-asymmetric-images.cjs +10 -10
  1130. package/dist/hero-welcome-asymmetric-images.d.cts +3 -3
  1131. package/dist/hero-welcome-asymmetric-images.d.ts +3 -3
  1132. package/dist/hero-welcome-asymmetric-images.js +11 -11
  1133. package/dist/image-slider.d.cts +2 -2
  1134. package/dist/image-slider.d.ts +2 -2
  1135. package/dist/index.cjs +1324 -542
  1136. package/dist/index.d.cts +3 -3
  1137. package/dist/index.d.ts +3 -3
  1138. package/dist/index.js +1321 -545
  1139. package/dist/industries-badge-list-bordered.cjs +12 -12
  1140. package/dist/industries-badge-list-bordered.d.cts +3 -5
  1141. package/dist/industries-badge-list-bordered.d.ts +3 -5
  1142. package/dist/industries-badge-list-bordered.js +12 -12
  1143. package/dist/industries-expandable-showcase.cjs +8 -8
  1144. package/dist/industries-expandable-showcase.d.cts +3 -5
  1145. package/dist/industries-expandable-showcase.d.ts +3 -5
  1146. package/dist/industries-expandable-showcase.js +9 -9
  1147. package/dist/industries-hover-reveal-grid.cjs +11 -11
  1148. package/dist/industries-hover-reveal-grid.d.cts +3 -5
  1149. package/dist/industries-hover-reveal-grid.d.ts +3 -5
  1150. package/dist/industries-hover-reveal-grid.js +12 -12
  1151. package/dist/industries-timeline-table.cjs +13 -13
  1152. package/dist/industries-timeline-table.d.cts +3 -5
  1153. package/dist/industries-timeline-table.d.ts +3 -5
  1154. package/dist/industries-timeline-table.js +14 -14
  1155. package/dist/interior-carousel.cjs +59 -29
  1156. package/dist/interior-carousel.d.cts +3 -3
  1157. package/dist/interior-carousel.d.ts +3 -3
  1158. package/dist/interior-carousel.js +60 -30
  1159. package/dist/link-page-bento-layout.cjs +21 -21
  1160. package/dist/link-page-bento-layout.d.cts +3 -3
  1161. package/dist/link-page-bento-layout.d.ts +3 -3
  1162. package/dist/link-page-bento-layout.js +22 -22
  1163. package/dist/link-page-grid-cards.cjs +15 -15
  1164. package/dist/link-page-grid-cards.d.cts +3 -3
  1165. package/dist/link-page-grid-cards.d.ts +3 -3
  1166. package/dist/link-page-grid-cards.js +16 -16
  1167. package/dist/link-page-minimal-profile.cjs +15 -15
  1168. package/dist/link-page-minimal-profile.d.cts +3 -3
  1169. package/dist/link-page-minimal-profile.d.ts +3 -3
  1170. package/dist/link-page-minimal-profile.js +16 -16
  1171. package/dist/link-page-newsletter-social.cjs +25 -25
  1172. package/dist/link-page-newsletter-social.d.cts +3 -3
  1173. package/dist/link-page-newsletter-social.d.ts +3 -3
  1174. package/dist/link-page-newsletter-social.js +27 -27
  1175. package/dist/link-tree-block.cjs +19 -19
  1176. package/dist/link-tree-block.d.cts +3 -3
  1177. package/dist/link-tree-block.d.ts +3 -3
  1178. package/dist/link-tree-block.js +19 -19
  1179. package/dist/list-searchable-grid.cjs +9 -9
  1180. package/dist/list-searchable-grid.d.cts +3 -3
  1181. package/dist/list-searchable-grid.d.ts +3 -3
  1182. package/dist/list-searchable-grid.js +10 -10
  1183. package/dist/logos-carousel-heading.cjs +7 -7
  1184. package/dist/logos-carousel-heading.d.cts +3 -3
  1185. package/dist/logos-carousel-heading.d.ts +3 -3
  1186. package/dist/logos-carousel-heading.js +7 -7
  1187. package/dist/logos-centered-simple.cjs +7 -7
  1188. package/dist/logos-centered-simple.d.cts +3 -3
  1189. package/dist/logos-centered-simple.d.ts +3 -3
  1190. package/dist/logos-centered-simple.js +7 -7
  1191. package/dist/logos-certifications-grid.cjs +10 -10
  1192. package/dist/logos-certifications-grid.d.cts +3 -3
  1193. package/dist/logos-certifications-grid.d.ts +3 -3
  1194. package/dist/logos-certifications-grid.js +11 -11
  1195. package/dist/logos-double-carousel-pattern.cjs +16 -16
  1196. package/dist/logos-double-carousel-pattern.d.cts +3 -3
  1197. package/dist/logos-double-carousel-pattern.d.ts +3 -3
  1198. package/dist/logos-double-carousel-pattern.js +16 -16
  1199. package/dist/logos-inline-tagline.cjs +8 -8
  1200. package/dist/logos-inline-tagline.d.cts +3 -3
  1201. package/dist/logos-inline-tagline.d.ts +3 -3
  1202. package/dist/logos-inline-tagline.js +8 -8
  1203. package/dist/logos-marquee-muted.cjs +7 -7
  1204. package/dist/logos-marquee-muted.d.cts +3 -3
  1205. package/dist/logos-marquee-muted.d.ts +3 -3
  1206. package/dist/logos-marquee-muted.js +7 -7
  1207. package/dist/logos-minimal-carousel.cjs +7 -7
  1208. package/dist/logos-minimal-carousel.d.cts +3 -3
  1209. package/dist/logos-minimal-carousel.d.ts +3 -3
  1210. package/dist/logos-minimal-carousel.js +7 -7
  1211. package/dist/logos-numbered-carousel.cjs +10 -10
  1212. package/dist/logos-numbered-carousel.d.cts +3 -3
  1213. package/dist/logos-numbered-carousel.d.ts +3 -3
  1214. package/dist/logos-numbered-carousel.js +10 -10
  1215. package/dist/logos-partner-grid-sidebar.cjs +12 -12
  1216. package/dist/logos-partner-grid-sidebar.d.cts +3 -3
  1217. package/dist/logos-partner-grid-sidebar.d.ts +3 -3
  1218. package/dist/logos-partner-grid-sidebar.js +12 -12
  1219. package/dist/logos-partner-network.cjs +10 -10
  1220. package/dist/logos-partner-network.d.cts +3 -3
  1221. package/dist/logos-partner-network.d.ts +3 -3
  1222. package/dist/logos-partner-network.js +11 -11
  1223. package/dist/logos-two-row-grid.cjs +40 -31
  1224. package/dist/logos-two-row-grid.d.cts +3 -3
  1225. package/dist/logos-two-row-grid.d.ts +3 -3
  1226. package/dist/logos-two-row-grid.js +41 -32
  1227. package/dist/masonry-motion-grid.cjs +2 -2
  1228. package/dist/masonry-motion-grid.d.cts +3 -3
  1229. package/dist/masonry-motion-grid.d.ts +3 -3
  1230. package/dist/masonry-motion-grid.js +2 -2
  1231. package/dist/media-hover-ctas.cjs +7 -7
  1232. package/dist/media-hover-ctas.d.cts +3 -3
  1233. package/dist/media-hover-ctas.d.ts +3 -3
  1234. package/dist/media-hover-ctas.js +7 -7
  1235. package/dist/navbar-animated-preview.cjs +14 -14
  1236. package/dist/navbar-animated-preview.d.cts +3 -3
  1237. package/dist/navbar-animated-preview.d.ts +3 -3
  1238. package/dist/navbar-animated-preview.js +15 -15
  1239. package/dist/navbar-centered-menu.cjs +19 -19
  1240. package/dist/navbar-centered-menu.d.cts +3 -3
  1241. package/dist/navbar-centered-menu.d.ts +3 -3
  1242. package/dist/navbar-centered-menu.js +19 -19
  1243. package/dist/navbar-dark-icons.cjs +18 -18
  1244. package/dist/navbar-dark-icons.d.cts +3 -3
  1245. package/dist/navbar-dark-icons.d.ts +3 -3
  1246. package/dist/navbar-dark-icons.js +19 -19
  1247. package/dist/navbar-dropdown-menu.cjs +19 -19
  1248. package/dist/navbar-dropdown-menu.d.cts +3 -3
  1249. package/dist/navbar-dropdown-menu.d.ts +3 -3
  1250. package/dist/navbar-dropdown-menu.js +20 -20
  1251. package/dist/navbar-education-platform.cjs +19 -82
  1252. package/dist/navbar-education-platform.d.cts +3 -3
  1253. package/dist/navbar-education-platform.d.ts +3 -3
  1254. package/dist/navbar-education-platform.js +20 -83
  1255. package/dist/navbar-enterprise-mega.cjs +11 -11
  1256. package/dist/navbar-enterprise-mega.d.cts +3 -3
  1257. package/dist/navbar-enterprise-mega.d.ts +3 -3
  1258. package/dist/navbar-enterprise-mega.js +16 -16
  1259. package/dist/navbar-feature-grid.cjs +27 -58
  1260. package/dist/navbar-feature-grid.d.cts +3 -3
  1261. package/dist/navbar-feature-grid.d.ts +3 -3
  1262. package/dist/navbar-feature-grid.js +28 -59
  1263. package/dist/navbar-floating-pill.cjs +12 -12
  1264. package/dist/navbar-floating-pill.d.cts +3 -3
  1265. package/dist/navbar-floating-pill.d.ts +3 -3
  1266. package/dist/navbar-floating-pill.js +13 -13
  1267. package/dist/navbar-fullscreen-menu.cjs +13 -13
  1268. package/dist/navbar-fullscreen-menu.d.cts +3 -3
  1269. package/dist/navbar-fullscreen-menu.d.ts +3 -3
  1270. package/dist/navbar-fullscreen-menu.js +14 -14
  1271. package/dist/navbar-icon-links.cjs +12 -12
  1272. package/dist/navbar-icon-links.d.cts +3 -3
  1273. package/dist/navbar-icon-links.d.ts +3 -3
  1274. package/dist/navbar-icon-links.js +13 -13
  1275. package/dist/navbar-image-preview.cjs +20 -20
  1276. package/dist/navbar-image-preview.d.cts +3 -3
  1277. package/dist/navbar-image-preview.d.ts +3 -3
  1278. package/dist/navbar-image-preview.js +21 -21
  1279. package/dist/navbar-mega-menu.d.cts +3 -3
  1280. package/dist/navbar-mega-menu.d.ts +3 -3
  1281. package/dist/navbar-multi-column-groups.cjs +14 -14
  1282. package/dist/navbar-multi-column-groups.d.cts +3 -3
  1283. package/dist/navbar-multi-column-groups.d.ts +3 -3
  1284. package/dist/navbar-multi-column-groups.js +15 -15
  1285. package/dist/navbar-platform-resources.cjs +7 -7
  1286. package/dist/navbar-platform-resources.d.cts +3 -3
  1287. package/dist/navbar-platform-resources.d.ts +3 -3
  1288. package/dist/navbar-platform-resources.js +8 -8
  1289. package/dist/navbar-search-focused.cjs +12 -13
  1290. package/dist/navbar-search-focused.d.cts +3 -3
  1291. package/dist/navbar-search-focused.d.ts +3 -3
  1292. package/dist/navbar-search-focused.js +13 -14
  1293. package/dist/navbar-sidebar-mobile.cjs +2 -2
  1294. package/dist/navbar-sidebar-mobile.d.cts +3 -3
  1295. package/dist/navbar-sidebar-mobile.d.ts +3 -3
  1296. package/dist/navbar-sidebar-mobile.js +2 -2
  1297. package/dist/navbar-simple-links.cjs +14 -14
  1298. package/dist/navbar-simple-links.d.cts +3 -3
  1299. package/dist/navbar-simple-links.d.ts +3 -3
  1300. package/dist/navbar-simple-links.js +15 -15
  1301. package/dist/navbar-split-cta.cjs +13 -13
  1302. package/dist/navbar-split-cta.d.cts +3 -3
  1303. package/dist/navbar-split-cta.d.ts +3 -3
  1304. package/dist/navbar-split-cta.js +14 -14
  1305. package/dist/navbar-sticky-compact.cjs +15 -15
  1306. package/dist/navbar-sticky-compact.d.cts +3 -3
  1307. package/dist/navbar-sticky-compact.d.ts +3 -3
  1308. package/dist/navbar-sticky-compact.js +16 -16
  1309. package/dist/navbar-tabbed-sections.cjs +15 -15
  1310. package/dist/navbar-tabbed-sections.d.cts +3 -3
  1311. package/dist/navbar-tabbed-sections.d.ts +3 -3
  1312. package/dist/navbar-tabbed-sections.js +16 -16
  1313. package/dist/navbar-transparent-overlay.cjs +14 -14
  1314. package/dist/navbar-transparent-overlay.d.cts +3 -3
  1315. package/dist/navbar-transparent-overlay.d.ts +3 -3
  1316. package/dist/navbar-transparent-overlay.js +15 -15
  1317. package/dist/page-hero-banner.d.cts +3 -3
  1318. package/dist/page-hero-banner.d.ts +3 -3
  1319. package/dist/pressable.d.cts +2 -2
  1320. package/dist/pressable.d.ts +2 -2
  1321. package/dist/process-expandable-timeline.cjs +6 -6
  1322. package/dist/process-expandable-timeline.d.cts +3 -3
  1323. package/dist/process-expandable-timeline.d.ts +3 -3
  1324. package/dist/process-expandable-timeline.js +7 -7
  1325. package/dist/process-hover-cards.cjs +6 -6
  1326. package/dist/process-hover-cards.d.cts +3 -3
  1327. package/dist/process-hover-cards.d.ts +3 -3
  1328. package/dist/process-hover-cards.js +7 -7
  1329. package/dist/process-icon-timeline.cjs +10 -10
  1330. package/dist/process-icon-timeline.d.cts +3 -3
  1331. package/dist/process-icon-timeline.d.ts +3 -3
  1332. package/dist/process-icon-timeline.js +11 -11
  1333. package/dist/process-mission-principles.cjs +12 -12
  1334. package/dist/process-mission-principles.d.cts +3 -3
  1335. package/dist/process-mission-principles.d.ts +3 -3
  1336. package/dist/process-mission-principles.js +12 -12
  1337. package/dist/process-numbered-services.cjs +45 -43
  1338. package/dist/process-numbered-services.d.cts +3 -3
  1339. package/dist/process-numbered-services.d.ts +3 -3
  1340. package/dist/process-numbered-services.js +46 -44
  1341. package/dist/process-roadmap-timeline.cjs +9 -9
  1342. package/dist/process-roadmap-timeline.d.cts +3 -3
  1343. package/dist/process-roadmap-timeline.d.ts +3 -3
  1344. package/dist/process-roadmap-timeline.js +10 -10
  1345. package/dist/process-scroll-image.cjs +44 -40
  1346. package/dist/process-scroll-image.d.cts +3 -3
  1347. package/dist/process-scroll-image.d.ts +3 -3
  1348. package/dist/process-scroll-image.js +45 -41
  1349. package/dist/process-steps-grid.cjs +7 -7
  1350. package/dist/process-steps-grid.d.cts +3 -3
  1351. package/dist/process-steps-grid.d.ts +3 -3
  1352. package/dist/process-steps-grid.js +8 -8
  1353. package/dist/process-sticky-steps.cjs +41 -39
  1354. package/dist/process-sticky-steps.d.cts +3 -3
  1355. package/dist/process-sticky-steps.d.ts +3 -3
  1356. package/dist/process-sticky-steps.js +42 -40
  1357. package/dist/project-alternating-motion.cjs +4 -4
  1358. package/dist/project-alternating-motion.d.cts +3 -3
  1359. package/dist/project-alternating-motion.d.ts +3 -3
  1360. package/dist/project-alternating-motion.js +4 -4
  1361. package/dist/project-background-reveal.cjs +5 -5
  1362. package/dist/project-background-reveal.d.cts +3 -3
  1363. package/dist/project-background-reveal.d.ts +3 -3
  1364. package/dist/project-background-reveal.js +6 -6
  1365. package/dist/project-card-overlay.cjs +4 -4
  1366. package/dist/project-card-overlay.d.cts +3 -3
  1367. package/dist/project-card-overlay.d.ts +3 -3
  1368. package/dist/project-card-overlay.js +5 -5
  1369. package/dist/project-carousel-cinematic.cjs +3 -3
  1370. package/dist/project-carousel-cinematic.d.cts +3 -3
  1371. package/dist/project-carousel-cinematic.d.ts +3 -3
  1372. package/dist/project-carousel-cinematic.js +4 -4
  1373. package/dist/project-carousel-detail-cards.cjs +3 -3
  1374. package/dist/project-carousel-detail-cards.d.cts +3 -3
  1375. package/dist/project-carousel-detail-cards.d.ts +3 -3
  1376. package/dist/project-carousel-detail-cards.js +4 -4
  1377. package/dist/project-carousel-minimal.cjs +3 -3
  1378. package/dist/project-carousel-minimal.d.cts +3 -3
  1379. package/dist/project-carousel-minimal.d.ts +3 -3
  1380. package/dist/project-carousel-minimal.js +4 -4
  1381. package/dist/project-detail-architecture-carousel.cjs +5 -5
  1382. package/dist/project-detail-architecture-carousel.d.cts +3 -3
  1383. package/dist/project-detail-architecture-carousel.d.ts +3 -3
  1384. package/dist/project-detail-architecture-carousel.js +5 -5
  1385. package/dist/project-experience-quote.cjs +5 -5
  1386. package/dist/project-experience-quote.d.cts +3 -3
  1387. package/dist/project-experience-quote.d.ts +3 -3
  1388. package/dist/project-experience-quote.js +6 -6
  1389. package/dist/project-featured-carousel.cjs +4 -4
  1390. package/dist/project-featured-carousel.d.cts +3 -3
  1391. package/dist/project-featured-carousel.d.ts +3 -3
  1392. package/dist/project-featured-carousel.js +5 -5
  1393. package/dist/project-filterable-gallery.cjs +3 -3
  1394. package/dist/project-filterable-gallery.d.cts +3 -3
  1395. package/dist/project-filterable-gallery.d.ts +3 -3
  1396. package/dist/project-filterable-gallery.js +4 -4
  1397. package/dist/project-filterable-three-column.cjs +3 -3
  1398. package/dist/project-filterable-three-column.d.cts +3 -3
  1399. package/dist/project-filterable-three-column.d.ts +3 -3
  1400. package/dist/project-filterable-three-column.js +4 -4
  1401. package/dist/project-grid-gallery.cjs +4 -4
  1402. package/dist/project-grid-gallery.d.cts +3 -3
  1403. package/dist/project-grid-gallery.d.ts +3 -3
  1404. package/dist/project-grid-gallery.js +4 -4
  1405. package/dist/project-grid-motion.cjs +4 -4
  1406. package/dist/project-grid-motion.d.cts +3 -3
  1407. package/dist/project-grid-motion.d.ts +3 -3
  1408. package/dist/project-grid-motion.js +4 -4
  1409. package/dist/project-horizontal-cards.cjs +17 -7
  1410. package/dist/project-horizontal-cards.d.cts +16 -4
  1411. package/dist/project-horizontal-cards.d.ts +16 -4
  1412. package/dist/project-horizontal-cards.js +18 -8
  1413. package/dist/project-hover-reveal-grid.cjs +4 -4
  1414. package/dist/project-hover-reveal-grid.d.cts +3 -3
  1415. package/dist/project-hover-reveal-grid.d.ts +3 -3
  1416. package/dist/project-hover-reveal-grid.js +4 -4
  1417. package/dist/project-interactive-hover-reveal.cjs +8 -5
  1418. package/dist/project-interactive-hover-reveal.d.cts +16 -4
  1419. package/dist/project-interactive-hover-reveal.d.ts +16 -4
  1420. package/dist/project-interactive-hover-reveal.js +9 -6
  1421. package/dist/project-masonry-columns.cjs +4 -4
  1422. package/dist/project-masonry-columns.d.cts +3 -3
  1423. package/dist/project-masonry-columns.d.ts +3 -3
  1424. package/dist/project-masonry-columns.js +4 -4
  1425. package/dist/project-nature-mosaic.cjs +4 -4
  1426. package/dist/project-nature-mosaic.d.cts +3 -3
  1427. package/dist/project-nature-mosaic.d.ts +3 -3
  1428. package/dist/project-nature-mosaic.js +5 -5
  1429. package/dist/project-scroll-reveal.cjs +3 -3
  1430. package/dist/project-scroll-reveal.d.cts +3 -3
  1431. package/dist/project-scroll-reveal.d.ts +3 -3
  1432. package/dist/project-scroll-reveal.js +4 -4
  1433. package/dist/project-showcase-alternating.cjs +4 -4
  1434. package/dist/project-showcase-alternating.d.cts +3 -3
  1435. package/dist/project-showcase-alternating.d.ts +3 -3
  1436. package/dist/project-showcase-alternating.js +4 -4
  1437. package/dist/project-sticky-scroll.cjs +3 -3
  1438. package/dist/project-sticky-scroll.d.cts +3 -3
  1439. package/dist/project-sticky-scroll.d.ts +3 -3
  1440. package/dist/project-sticky-scroll.js +4 -4
  1441. package/dist/project-studio-hover-preview.cjs +5 -4
  1442. package/dist/project-studio-hover-preview.d.cts +8 -4
  1443. package/dist/project-studio-hover-preview.d.ts +8 -4
  1444. package/dist/project-studio-hover-preview.js +6 -5
  1445. package/dist/project-table-list.cjs +10 -7
  1446. package/dist/project-table-list.d.cts +16 -4
  1447. package/dist/project-table-list.d.ts +16 -4
  1448. package/dist/project-table-list.js +10 -7
  1449. package/dist/project-video-carousel.cjs +3 -3
  1450. package/dist/project-video-carousel.d.cts +3 -3
  1451. package/dist/project-video-carousel.d.ts +3 -3
  1452. package/dist/project-video-carousel.js +4 -4
  1453. package/dist/project-video-hover-bento.cjs +3 -3
  1454. package/dist/project-video-hover-bento.d.cts +3 -3
  1455. package/dist/project-video-hover-bento.d.ts +3 -3
  1456. package/dist/project-video-hover-bento.js +4 -4
  1457. package/dist/project-video-hover-grid.cjs +3 -3
  1458. package/dist/project-video-hover-grid.d.cts +3 -3
  1459. package/dist/project-video-hover-grid.d.ts +3 -3
  1460. package/dist/project-video-hover-grid.js +4 -4
  1461. package/dist/project-video-hover-rounded.cjs +3 -3
  1462. package/dist/project-video-hover-rounded.d.cts +3 -3
  1463. package/dist/project-video-hover-rounded.d.ts +3 -3
  1464. package/dist/project-video-hover-rounded.js +4 -4
  1465. package/dist/project-video-hover-stack.cjs +3 -3
  1466. package/dist/project-video-hover-stack.d.cts +3 -3
  1467. package/dist/project-video-hover-stack.d.ts +3 -3
  1468. package/dist/project-video-hover-stack.js +4 -4
  1469. package/dist/project-video-hover-two-by-two.cjs +3 -3
  1470. package/dist/project-video-hover-two-by-two.d.cts +3 -3
  1471. package/dist/project-video-hover-two-by-two.d.ts +3 -3
  1472. package/dist/project-video-hover-two-by-two.js +4 -4
  1473. package/dist/project-work-showcase.cjs +6 -5
  1474. package/dist/project-work-showcase.d.cts +8 -4
  1475. package/dist/project-work-showcase.d.ts +8 -4
  1476. package/dist/project-work-showcase.js +7 -6
  1477. package/dist/registry.cjs +20999 -17385
  1478. package/dist/registry.js +20978 -17364
  1479. package/dist/resource-detail-whitepaper-sidebar.cjs +38 -14
  1480. package/dist/resource-detail-whitepaper-sidebar.d.cts +16 -4
  1481. package/dist/resource-detail-whitepaper-sidebar.d.ts +16 -4
  1482. package/dist/resource-detail-whitepaper-sidebar.js +39 -15
  1483. package/dist/resource-list-course-cards.cjs +11 -9
  1484. package/dist/resource-list-course-cards.d.cts +12 -4
  1485. package/dist/resource-list-course-cards.d.ts +12 -4
  1486. package/dist/resource-list-course-cards.js +12 -10
  1487. package/dist/resource-list-featured-articles.cjs +9 -9
  1488. package/dist/resource-list-featured-articles.d.cts +3 -3
  1489. package/dist/resource-list-featured-articles.d.ts +3 -3
  1490. package/dist/resource-list-featured-articles.js +10 -10
  1491. package/dist/resource-list-featured-grid.cjs +19 -15
  1492. package/dist/resource-list-featured-grid.d.cts +8 -4
  1493. package/dist/resource-list-featured-grid.d.ts +8 -4
  1494. package/dist/resource-list-featured-grid.js +20 -16
  1495. package/dist/resource-list-hero-filter.cjs +10 -10
  1496. package/dist/resource-list-hero-filter.d.cts +2 -2
  1497. package/dist/resource-list-hero-filter.d.ts +2 -2
  1498. package/dist/resource-list-hero-filter.js +11 -11
  1499. package/dist/resource-list-news-updates.cjs +5 -5
  1500. package/dist/resource-list-news-updates.d.cts +3 -3
  1501. package/dist/resource-list-news-updates.d.ts +3 -3
  1502. package/dist/resource-list-news-updates.js +9 -9
  1503. package/dist/reviews-images-helpful.cjs +8 -7
  1504. package/dist/reviews-images-helpful.d.cts +8 -4
  1505. package/dist/reviews-images-helpful.d.ts +8 -4
  1506. package/dist/reviews-images-helpful.js +9 -8
  1507. package/dist/reviews-list-verified.cjs +10 -8
  1508. package/dist/reviews-list-verified.d.cts +8 -4
  1509. package/dist/reviews-list-verified.d.ts +8 -4
  1510. package/dist/reviews-list-verified.js +11 -9
  1511. package/dist/section.d.cts +3 -3
  1512. package/dist/section.d.ts +3 -3
  1513. package/dist/service-detail-centered-expertise.d.cts +3 -3
  1514. package/dist/service-detail-centered-expertise.d.ts +3 -3
  1515. package/dist/service-detail-compact-cards.d.cts +3 -3
  1516. package/dist/service-detail-compact-cards.d.ts +3 -3
  1517. package/dist/service-detail-image-hero.cjs +2 -2
  1518. package/dist/service-detail-image-hero.d.cts +3 -3
  1519. package/dist/service-detail-image-hero.d.ts +3 -3
  1520. package/dist/service-detail-image-hero.js +2 -2
  1521. package/dist/service-detail-prose-minimal.cjs +1 -1
  1522. package/dist/service-detail-prose-minimal.d.cts +3 -3
  1523. package/dist/service-detail-prose-minimal.d.ts +3 -3
  1524. package/dist/service-detail-prose-minimal.js +1 -1
  1525. package/dist/service-detail-sidebar-related.d.cts +3 -3
  1526. package/dist/service-detail-sidebar-related.d.ts +3 -3
  1527. package/dist/service-detail-sidebar-stats.cjs +1 -1
  1528. package/dist/service-detail-sidebar-stats.d.cts +3 -3
  1529. package/dist/service-detail-sidebar-stats.d.ts +3 -3
  1530. package/dist/service-detail-sidebar-stats.js +1 -1
  1531. package/dist/service-detail-stats-hero.cjs +3 -3
  1532. package/dist/service-detail-stats-hero.d.cts +3 -3
  1533. package/dist/service-detail-stats-hero.d.ts +3 -3
  1534. package/dist/service-detail-stats-hero.js +3 -3
  1535. package/dist/service-hover-carousel.cjs +132 -52
  1536. package/dist/service-hover-carousel.d.cts +3 -4
  1537. package/dist/service-hover-carousel.d.ts +3 -4
  1538. package/dist/service-hover-carousel.js +133 -53
  1539. package/dist/services-list-feature-spotlight.cjs +2 -2
  1540. package/dist/services-list-feature-spotlight.d.cts +3 -3
  1541. package/dist/services-list-feature-spotlight.d.ts +3 -3
  1542. package/dist/services-list-feature-spotlight.js +2 -2
  1543. package/dist/stats-animated-counter.d.cts +3 -3
  1544. package/dist/stats-animated-counter.d.ts +3 -3
  1545. package/dist/stats-bar-comparison.d.cts +3 -3
  1546. package/dist/stats-bar-comparison.d.ts +3 -3
  1547. package/dist/stats-card-group.d.cts +3 -3
  1548. package/dist/stats-card-group.d.ts +3 -3
  1549. package/dist/stats-circular-progress.d.cts +3 -3
  1550. package/dist/stats-circular-progress.d.ts +3 -3
  1551. package/dist/stats-growth-timeline.d.cts +3 -3
  1552. package/dist/stats-growth-timeline.d.ts +3 -3
  1553. package/dist/stats-icon-cards.d.cts +3 -3
  1554. package/dist/stats-icon-cards.d.ts +3 -3
  1555. package/dist/stats-impact-grid.d.cts +3 -3
  1556. package/dist/stats-impact-grid.d.ts +3 -3
  1557. package/dist/stats-milestone-sidebar.d.cts +3 -3
  1558. package/dist/stats-milestone-sidebar.d.ts +3 -3
  1559. package/dist/stats-number-ticker.d.cts +3 -3
  1560. package/dist/stats-number-ticker.d.ts +3 -3
  1561. package/dist/stats-primary-secondary.d.cts +3 -3
  1562. package/dist/stats-primary-secondary.d.ts +3 -3
  1563. package/dist/stats-simple-grid.d.cts +3 -3
  1564. package/dist/stats-simple-grid.d.ts +3 -3
  1565. package/dist/stats-timeline-tabs.d.cts +3 -3
  1566. package/dist/stats-timeline-tabs.d.ts +3 -3
  1567. package/dist/team-media-showcase.cjs +11 -11
  1568. package/dist/team-media-showcase.d.cts +3 -3
  1569. package/dist/team-media-showcase.d.ts +3 -3
  1570. package/dist/team-media-showcase.js +11 -11
  1571. package/dist/testimonial-carousel-cards.cjs +27 -8
  1572. package/dist/testimonial-carousel-cards.d.cts +3 -3
  1573. package/dist/testimonial-carousel-cards.d.ts +3 -3
  1574. package/dist/testimonial-carousel-cards.js +28 -9
  1575. package/dist/testimonials-animated-split.cjs +5 -5
  1576. package/dist/testimonials-animated-split.d.cts +3 -3
  1577. package/dist/testimonials-animated-split.d.ts +3 -3
  1578. package/dist/testimonials-animated-split.js +6 -6
  1579. package/dist/testimonials-bento-grid.cjs +7 -7
  1580. package/dist/testimonials-bento-grid.d.cts +3 -3
  1581. package/dist/testimonials-bento-grid.d.ts +3 -3
  1582. package/dist/testimonials-bento-grid.js +8 -8
  1583. package/dist/testimonials-carousel-image.cjs +9 -7
  1584. package/dist/testimonials-carousel-image.d.cts +11 -3
  1585. package/dist/testimonials-carousel-image.d.ts +11 -3
  1586. package/dist/testimonials-carousel-image.js +10 -8
  1587. package/dist/testimonials-centered-avatars.cjs +8 -8
  1588. package/dist/testimonials-centered-avatars.d.cts +3 -3
  1589. package/dist/testimonials-centered-avatars.d.ts +3 -3
  1590. package/dist/testimonials-centered-avatars.js +7 -7
  1591. package/dist/testimonials-company-logo.cjs +10 -133
  1592. package/dist/testimonials-company-logo.d.cts +3 -3
  1593. package/dist/testimonials-company-logo.d.ts +3 -3
  1594. package/dist/testimonials-company-logo.js +11 -134
  1595. package/dist/testimonials-grid-add-review.cjs +9 -9
  1596. package/dist/testimonials-grid-add-review.d.cts +3 -3
  1597. package/dist/testimonials-grid-add-review.d.ts +3 -3
  1598. package/dist/testimonials-grid-add-review.js +10 -10
  1599. package/dist/testimonials-large-quote.cjs +7 -7
  1600. package/dist/testimonials-large-quote.d.cts +3 -3
  1601. package/dist/testimonials-large-quote.d.ts +3 -3
  1602. package/dist/testimonials-large-quote.js +8 -8
  1603. package/dist/testimonials-logo-cards.cjs +8 -8
  1604. package/dist/testimonials-logo-cards.d.cts +3 -3
  1605. package/dist/testimonials-logo-cards.d.ts +3 -3
  1606. package/dist/testimonials-logo-cards.js +7 -7
  1607. package/dist/testimonials-marquee.cjs +8 -8
  1608. package/dist/testimonials-marquee.d.cts +3 -3
  1609. package/dist/testimonials-marquee.d.ts +3 -3
  1610. package/dist/testimonials-marquee.js +7 -7
  1611. package/dist/testimonials-masonry-grid.cjs +8 -8
  1612. package/dist/testimonials-masonry-grid.d.cts +3 -3
  1613. package/dist/testimonials-masonry-grid.d.ts +3 -3
  1614. package/dist/testimonials-masonry-grid.js +7 -7
  1615. package/dist/testimonials-mini-dividers.cjs +7 -7
  1616. package/dist/testimonials-mini-dividers.d.cts +3 -3
  1617. package/dist/testimonials-mini-dividers.d.ts +3 -3
  1618. package/dist/testimonials-mini-dividers.js +8 -8
  1619. package/dist/testimonials-minimal-numbered.cjs +5 -5
  1620. package/dist/testimonials-minimal-numbered.d.cts +3 -3
  1621. package/dist/testimonials-minimal-numbered.d.ts +3 -3
  1622. package/dist/testimonials-minimal-numbered.js +6 -6
  1623. package/dist/testimonials-parallax-number.cjs +11 -7
  1624. package/dist/testimonials-parallax-number.d.cts +8 -4
  1625. package/dist/testimonials-parallax-number.d.ts +8 -4
  1626. package/dist/testimonials-parallax-number.js +12 -8
  1627. package/dist/testimonials-quote-carousel.cjs +11 -11
  1628. package/dist/testimonials-quote-carousel.d.cts +3 -3
  1629. package/dist/testimonials-quote-carousel.d.ts +3 -3
  1630. package/dist/testimonials-quote-carousel.js +11 -11
  1631. package/dist/testimonials-scrolling-columns.cjs +6 -6
  1632. package/dist/testimonials-scrolling-columns.d.cts +3 -3
  1633. package/dist/testimonials-scrolling-columns.d.ts +3 -3
  1634. package/dist/testimonials-scrolling-columns.js +7 -7
  1635. package/dist/testimonials-simple-grid.cjs +8 -8
  1636. package/dist/testimonials-simple-grid.d.cts +3 -3
  1637. package/dist/testimonials-simple-grid.d.ts +3 -3
  1638. package/dist/testimonials-simple-grid.js +7 -7
  1639. package/dist/testimonials-slider-minimal.cjs +5 -5
  1640. package/dist/testimonials-slider-minimal.d.cts +3 -3
  1641. package/dist/testimonials-slider-minimal.d.ts +3 -3
  1642. package/dist/testimonials-slider-minimal.js +6 -6
  1643. package/dist/testimonials-split-image.cjs +9 -128
  1644. package/dist/testimonials-split-image.d.cts +3 -3
  1645. package/dist/testimonials-split-image.d.ts +3 -3
  1646. package/dist/testimonials-split-image.js +10 -129
  1647. package/dist/testimonials-stats-header.cjs +12 -17
  1648. package/dist/testimonials-stats-header.d.cts +3 -3
  1649. package/dist/testimonials-stats-header.d.ts +3 -3
  1650. package/dist/testimonials-stats-header.js +13 -18
  1651. package/dist/testimonials-twitter-cards.cjs +7 -7
  1652. package/dist/testimonials-twitter-cards.d.cts +3 -3
  1653. package/dist/testimonials-twitter-cards.d.ts +3 -3
  1654. package/dist/testimonials-twitter-cards.js +8 -8
  1655. package/dist/testimonials-wall-compact.cjs +8 -8
  1656. package/dist/testimonials-wall-compact.d.cts +3 -3
  1657. package/dist/testimonials-wall-compact.d.ts +3 -3
  1658. package/dist/testimonials-wall-compact.js +7 -7
  1659. package/dist/timeline-ai-workflow-cards.cjs +2 -2
  1660. package/dist/timeline-ai-workflow-cards.d.cts +3 -3
  1661. package/dist/timeline-ai-workflow-cards.d.ts +3 -3
  1662. package/dist/timeline-ai-workflow-cards.js +2 -2
  1663. package/dist/timeline-alternating-diagonal.cjs +10 -13
  1664. package/dist/timeline-alternating-diagonal.d.cts +3 -3
  1665. package/dist/timeline-alternating-diagonal.d.ts +3 -3
  1666. package/dist/timeline-alternating-diagonal.js +11 -14
  1667. package/dist/timeline-changelog-badges.cjs +3 -3
  1668. package/dist/timeline-changelog-badges.d.cts +3 -3
  1669. package/dist/timeline-changelog-badges.d.ts +3 -3
  1670. package/dist/timeline-changelog-badges.js +3 -3
  1671. package/dist/timeline-history-prose.cjs +2 -2
  1672. package/dist/timeline-history-prose.d.cts +3 -3
  1673. package/dist/timeline-history-prose.d.ts +3 -3
  1674. package/dist/timeline-history-prose.js +2 -2
  1675. package/dist/timeline-horizontal-icons.cjs +4 -4
  1676. package/dist/timeline-horizontal-icons.d.cts +3 -3
  1677. package/dist/timeline-horizontal-icons.d.ts +3 -3
  1678. package/dist/timeline-horizontal-icons.js +4 -4
  1679. package/dist/timeline-horizontal-phases.cjs +4 -4
  1680. package/dist/timeline-horizontal-phases.d.cts +3 -3
  1681. package/dist/timeline-horizontal-phases.d.ts +3 -3
  1682. package/dist/timeline-horizontal-phases.js +4 -4
  1683. package/dist/timeline-product-launch.cjs +9 -12
  1684. package/dist/timeline-product-launch.d.cts +3 -3
  1685. package/dist/timeline-product-launch.d.ts +3 -3
  1686. package/dist/timeline-product-launch.js +10 -13
  1687. package/dist/timeline-productivity-list.cjs +2 -2
  1688. package/dist/timeline-productivity-list.d.cts +3 -3
  1689. package/dist/timeline-productivity-list.d.ts +3 -3
  1690. package/dist/timeline-productivity-list.js +2 -2
  1691. package/dist/timeline-scroll-highlight.cjs +2 -2
  1692. package/dist/timeline-scroll-highlight.d.cts +3 -3
  1693. package/dist/timeline-scroll-highlight.d.ts +3 -3
  1694. package/dist/timeline-scroll-highlight.js +2 -2
  1695. package/dist/timeline-scroll-sticky-image.cjs +2 -2
  1696. package/dist/timeline-scroll-sticky-image.d.cts +3 -3
  1697. package/dist/timeline-scroll-sticky-image.d.ts +3 -3
  1698. package/dist/timeline-scroll-sticky-image.js +2 -2
  1699. package/dist/timeline-stepper-animated.cjs +30 -30
  1700. package/dist/timeline-stepper-animated.d.cts +3 -3
  1701. package/dist/timeline-stepper-animated.d.ts +3 -3
  1702. package/dist/timeline-stepper-animated.js +29 -29
  1703. package/dist/timeline-tabbed-phases.cjs +7 -10
  1704. package/dist/timeline-tabbed-phases.d.cts +3 -3
  1705. package/dist/timeline-tabbed-phases.d.ts +3 -3
  1706. package/dist/timeline-tabbed-phases.js +8 -11
  1707. package/dist/timeline-two-column-featured.cjs +7 -7
  1708. package/dist/timeline-two-column-featured.d.cts +3 -3
  1709. package/dist/timeline-two-column-featured.d.ts +3 -3
  1710. package/dist/timeline-two-column-featured.js +8 -8
  1711. package/dist/timeline-vertical-icon-dashed.cjs +2 -2
  1712. package/dist/timeline-vertical-icon-dashed.d.cts +3 -3
  1713. package/dist/timeline-vertical-icon-dashed.d.ts +3 -3
  1714. package/dist/timeline-vertical-icon-dashed.js +2 -2
  1715. package/dist/types.d.cts +5 -376
  1716. package/dist/types.d.ts +5 -376
  1717. package/package.json +2 -2
package/dist/index.js CHANGED
@@ -1,9 +1,9 @@
1
1
  "use client";
2
2
  import * as React4 from 'react';
3
- import React4__default, { useId, useRef, useEffect } from 'react';
3
+ import React4__default, { useId, useRef, useEffect, useMemo, useCallback } from 'react';
4
4
  import { clsx } from 'clsx';
5
5
  import { twMerge } from 'tailwind-merge';
6
- import { jsx, jsxs } from 'react/jsx-runtime';
6
+ import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
7
7
  import { AnimatePresence, motion } from 'framer-motion';
8
8
  import { useOnClickOutside } from '@opensite/hooks/core/useOnClickOutside';
9
9
  import { AnimatePresence as AnimatePresence$1, motion as motion$1 } from 'motion/react';
@@ -11,6 +11,7 @@ import { Img } from '@page-speed/img';
11
11
  import { Slot } from '@radix-ui/react-slot';
12
12
  import { cva } from 'class-variance-authority';
13
13
  import * as PopoverPrimitive from '@radix-ui/react-popover';
14
+ import * as TabsPrimitive from '@radix-ui/react-tabs';
14
15
  import { useForm, Form, Field } from '@page-speed/forms';
15
16
  import { TextInput as TextInput$1 } from '@page-speed/forms/inputs';
16
17
  import { serializeForRails, deserializeErrors } from '@page-speed/forms/integration';
@@ -1509,16 +1510,18 @@ function AlternatingBlocks({
1509
1510
  sectionsSlot,
1510
1511
  title,
1511
1512
  subtitle,
1512
- background = "white",
1513
- spacing = "lg",
1513
+ background,
1514
+ spacing,
1514
1515
  className,
1515
1516
  contentClassName,
1516
1517
  sectionsClassName,
1517
1518
  sectionItemClassName,
1518
1519
  sectionContentClassName,
1519
- sectionMediaClassName
1520
+ sectionMediaClassName,
1521
+ pattern,
1522
+ patternOpacity
1520
1523
  }) {
1521
- const renderSections = () => {
1524
+ const sectionsContent = useMemo(() => {
1522
1525
  if (sectionsSlot) return sectionsSlot;
1523
1526
  if (!sections || sections.length === 0) return null;
1524
1527
  return /* @__PURE__ */ jsx("div", { className: cn("space-y-12", sectionsClassName), children: sections.map((section, index) => /* @__PURE__ */ jsxs(
@@ -1542,7 +1545,7 @@ function AlternatingBlocks({
1542
1545
  },
1543
1546
  index
1544
1547
  )) });
1545
- };
1548
+ }, [sectionsSlot, sections, sectionsClassName, sectionItemClassName, sectionContentClassName, sectionMediaClassName]);
1546
1549
  return /* @__PURE__ */ jsxs(
1547
1550
  Section,
1548
1551
  {
@@ -1550,13 +1553,780 @@ function AlternatingBlocks({
1550
1553
  subtitle: typeof subtitle === "string" ? subtitle : void 0,
1551
1554
  background,
1552
1555
  spacing,
1556
+ pattern,
1557
+ patternOpacity,
1553
1558
  className,
1554
1559
  children: [
1555
1560
  title && typeof title !== "string" || subtitle && typeof subtitle !== "string" ? /* @__PURE__ */ jsxs("div", { className: "mb-12 text-center md:mb-16", children: [
1556
1561
  subtitle && typeof subtitle !== "string" && /* @__PURE__ */ jsx("div", { className: "mb-2 text-sm font-semibold uppercase tracking-wider text-primary", children: subtitle }),
1557
1562
  title && typeof title !== "string" && /* @__PURE__ */ jsx("div", { className: "text-3xl font-bold tracking-tight md:text-4xl lg:text-5xl", children: title })
1558
1563
  ] }) : null,
1559
- /* @__PURE__ */ jsx("div", { className: cn("mx-auto w-full max-w-[900px]", contentClassName), children: renderSections() })
1564
+ /* @__PURE__ */ jsx("div", { className: cn("mx-auto w-full max-w-[900px]", contentClassName), children: sectionsContent })
1565
+ ]
1566
+ }
1567
+ );
1568
+ }
1569
+ function AboutSplitHero({
1570
+ brandText,
1571
+ brandTextClassName,
1572
+ brandHighlight,
1573
+ brandHighlightClassName,
1574
+ heading,
1575
+ headingClassName,
1576
+ description,
1577
+ descriptionClassName,
1578
+ ctaAction,
1579
+ ctaSlot,
1580
+ ctaClassName,
1581
+ imageSrc,
1582
+ imageAlt,
1583
+ imageClassName,
1584
+ className,
1585
+ containerClassName,
1586
+ optixFlowConfig,
1587
+ background,
1588
+ spacing,
1589
+ pattern,
1590
+ patternOpacity
1591
+ }) {
1592
+ const ctaContent = useMemo(() => {
1593
+ if (ctaSlot) return ctaSlot;
1594
+ if (!ctaAction) return null;
1595
+ return /* @__PURE__ */ jsxs(
1596
+ Pressable,
1597
+ {
1598
+ href: ctaAction.href,
1599
+ onClick: ctaAction.onClick,
1600
+ variant: ctaAction.variant || "default",
1601
+ size: ctaAction.size || "lg",
1602
+ asButton: true,
1603
+ className: cn("mt-10 flex h-fit items-center gap-2.5 rounded-xl px-5 py-4 font-bold", ctaClassName),
1604
+ children: [
1605
+ /* @__PURE__ */ jsx("span", { children: ctaAction.label }),
1606
+ /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/chevron-right", size: 20 })
1607
+ ]
1608
+ }
1609
+ );
1610
+ }, [ctaSlot, ctaAction, ctaClassName]);
1611
+ return /* @__PURE__ */ jsxs(
1612
+ Section,
1613
+ {
1614
+ background,
1615
+ spacing,
1616
+ pattern,
1617
+ patternOpacity,
1618
+ className: cn(className),
1619
+ containerClassName,
1620
+ children: [
1621
+ /* @__PURE__ */ jsxs("div", { className: "container my-10 flex w-[500px] flex-col gap-24", children: [
1622
+ (brandText || brandHighlight) && /* @__PURE__ */ jsxs("h1", { className: cn("text-4xl text-foreground", brandTextClassName), children: [
1623
+ brandText,
1624
+ " ",
1625
+ brandHighlight && /* @__PURE__ */ jsx("span", { className: cn("bg-gradient-to-tr from-foreground to-muted bg-clip-text text-transparent", brandHighlightClassName), children: brandHighlight })
1626
+ ] }),
1627
+ /* @__PURE__ */ jsxs("div", { children: [
1628
+ heading && (typeof heading === "string" ? /* @__PURE__ */ jsx("h2", { className: cn("text-4xl text-foreground lg:text-6xl", headingClassName), children: heading }) : /* @__PURE__ */ jsx("div", { className: headingClassName, children: heading })),
1629
+ description && (typeof description === "string" ? /* @__PURE__ */ jsx("p", { className: cn("mt-2.5 text-foreground lg:text-xl", descriptionClassName), children: description }) : /* @__PURE__ */ jsx("div", { className: cn("mt-2.5", descriptionClassName), children: description })),
1630
+ ctaContent
1631
+ ] })
1632
+ ] }),
1633
+ imageSrc && /* @__PURE__ */ jsx(
1634
+ Img,
1635
+ {
1636
+ src: imageSrc,
1637
+ alt: imageAlt || "",
1638
+ className: cn("hidden h-screen w-1/2 object-cover lg:block", imageClassName),
1639
+ optixFlowConfig
1640
+ }
1641
+ )
1642
+ ]
1643
+ }
1644
+ );
1645
+ }
1646
+ function AboutMissionPrinciples({
1647
+ badgeText,
1648
+ badgeClassName,
1649
+ missionHeading,
1650
+ missionHeadingClassName,
1651
+ missionDescription,
1652
+ missionDescriptionClassName,
1653
+ missionAction,
1654
+ missionActionSlot,
1655
+ missionActionClassName,
1656
+ principles,
1657
+ principlesSlot,
1658
+ principlesClassName,
1659
+ visionHeading,
1660
+ visionHeadingClassName,
1661
+ visionDescription,
1662
+ visionDescriptionClassName,
1663
+ visionAction,
1664
+ visionActionSlot,
1665
+ visionClassName,
1666
+ className,
1667
+ containerClassName,
1668
+ background,
1669
+ spacing,
1670
+ pattern,
1671
+ patternOpacity
1672
+ }) {
1673
+ const missionActionContent = useMemo(() => {
1674
+ if (missionActionSlot) return missionActionSlot;
1675
+ if (!missionAction) return null;
1676
+ return /* @__PURE__ */ jsx("div", { className: cn("pt-2", missionActionClassName), children: /* @__PURE__ */ jsxs(
1677
+ Pressable,
1678
+ {
1679
+ href: missionAction.href,
1680
+ onClick: missionAction.onClick,
1681
+ variant: missionAction.variant || "default",
1682
+ asButton: true,
1683
+ className: "group inline-flex items-center",
1684
+ children: [
1685
+ missionAction.label,
1686
+ /* @__PURE__ */ jsx(
1687
+ DynamicIcon,
1688
+ {
1689
+ name: "lucide/arrow-right",
1690
+ size: 16,
1691
+ className: "ml-2 transition-transform group-hover:translate-x-1"
1692
+ }
1693
+ )
1694
+ ]
1695
+ }
1696
+ ) });
1697
+ }, [missionActionSlot, missionAction, missionActionClassName]);
1698
+ const principlesContent = useMemo(() => {
1699
+ if (principlesSlot) return principlesSlot;
1700
+ if (!principles || principles.length === 0) return null;
1701
+ return /* @__PURE__ */ jsx("div", { className: cn("grid grid-cols-1 gap-6 sm:grid-cols-2", principlesClassName), children: principles.map((principle, idx) => /* @__PURE__ */ jsxs(
1702
+ "div",
1703
+ {
1704
+ className: "relative rounded-lg border p-6 transition-colors hover:bg-accent/50",
1705
+ children: [
1706
+ principle.number && /* @__PURE__ */ jsx("div", { className: "absolute right-4 top-4 text-3xl font-bold text-primary/20", children: principle.number }),
1707
+ /* @__PURE__ */ jsxs("div", { className: "space-y-3", children: [
1708
+ principle.title && (typeof principle.title === "string" ? /* @__PURE__ */ jsx("h3", { className: "text-xl font-bold", children: principle.title }) : principle.title),
1709
+ principle.description && (typeof principle.description === "string" ? /* @__PURE__ */ jsx("p", { className: "text-muted-foreground", children: principle.description }) : principle.description)
1710
+ ] })
1711
+ ]
1712
+ },
1713
+ idx
1714
+ )) });
1715
+ }, [principlesSlot, principles, principlesClassName]);
1716
+ const visionActionContent = useMemo(() => {
1717
+ if (visionActionSlot) return visionActionSlot;
1718
+ if (!visionAction) return null;
1719
+ return /* @__PURE__ */ jsxs(
1720
+ Pressable,
1721
+ {
1722
+ href: visionAction.href,
1723
+ onClick: visionAction.onClick,
1724
+ variant: visionAction.variant || "outline",
1725
+ size: visionAction.size || "lg",
1726
+ asButton: true,
1727
+ className: "group inline-flex items-center",
1728
+ children: [
1729
+ visionAction.label,
1730
+ /* @__PURE__ */ jsx(
1731
+ DynamicIcon,
1732
+ {
1733
+ name: "lucide/arrow-right",
1734
+ size: 16,
1735
+ className: "ml-2 transition-transform group-hover:translate-x-1"
1736
+ }
1737
+ )
1738
+ ]
1739
+ }
1740
+ );
1741
+ }, [visionActionSlot, visionAction]);
1742
+ return /* @__PURE__ */ jsxs(
1743
+ Section,
1744
+ {
1745
+ background,
1746
+ spacing,
1747
+ pattern,
1748
+ patternOpacity,
1749
+ className: cn(className),
1750
+ containerClassName,
1751
+ children: [
1752
+ /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-1 items-center gap-12 lg:grid-cols-2 lg:gap-24", children: [
1753
+ /* @__PURE__ */ jsxs("div", { className: "space-y-8", children: [
1754
+ badgeText && (typeof badgeText === "string" ? /* @__PURE__ */ jsx("div", { className: cn("inline-block rounded-lg bg-primary/10 px-3 py-1 text-sm text-primary", badgeClassName), children: badgeText }) : /* @__PURE__ */ jsx("div", { className: badgeClassName, children: badgeText })),
1755
+ missionHeading && (typeof missionHeading === "string" ? /* @__PURE__ */ jsx("h2", { className: cn("text-4xl font-bold leading-tight tracking-tight lg:text-5xl", missionHeadingClassName), children: missionHeading }) : /* @__PURE__ */ jsx("div", { className: missionHeadingClassName, children: missionHeading })),
1756
+ missionDescription && (typeof missionDescription === "string" ? /* @__PURE__ */ jsx("p", { className: cn("text-xl text-muted-foreground", missionDescriptionClassName), children: missionDescription }) : /* @__PURE__ */ jsx("div", { className: missionDescriptionClassName, children: missionDescription })),
1757
+ missionActionContent
1758
+ ] }),
1759
+ principlesContent
1760
+ ] }),
1761
+ /* @__PURE__ */ jsx("div", { className: cn("mt-24 rounded-lg bg-accent p-8 lg:p-12", visionClassName), children: /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-1 items-center gap-8 lg:grid-cols-3", children: [
1762
+ /* @__PURE__ */ jsxs("div", { className: "lg:col-span-2", children: [
1763
+ visionHeading && (typeof visionHeading === "string" ? /* @__PURE__ */ jsx("h3", { className: cn("mb-4 text-2xl font-bold", visionHeadingClassName), children: visionHeading }) : /* @__PURE__ */ jsx("div", { className: cn("mb-4", visionHeadingClassName), children: visionHeading })),
1764
+ visionDescription && (typeof visionDescription === "string" ? /* @__PURE__ */ jsx("p", { className: cn("mb-4 text-muted-foreground", visionDescriptionClassName), children: visionDescription }) : /* @__PURE__ */ jsx("div", { className: cn("mb-4", visionDescriptionClassName), children: visionDescription }))
1765
+ ] }),
1766
+ /* @__PURE__ */ jsx("div", { className: "flex justify-center lg:col-span-1 lg:justify-end", children: visionActionContent })
1767
+ ] }) })
1768
+ ]
1769
+ }
1770
+ );
1771
+ }
1772
+ function AboutExpandableValues({
1773
+ badgeText,
1774
+ heading,
1775
+ description,
1776
+ values,
1777
+ valuesSlot,
1778
+ ctaHeading,
1779
+ ctaDescription,
1780
+ actions,
1781
+ actionsSlot,
1782
+ className,
1783
+ containerClassName,
1784
+ headerClassName,
1785
+ badgeClassName,
1786
+ headingClassName,
1787
+ descriptionClassName,
1788
+ valuesClassName,
1789
+ ctaClassName,
1790
+ ctaHeadingClassName,
1791
+ ctaDescriptionClassName,
1792
+ actionsClassName,
1793
+ background,
1794
+ spacing,
1795
+ pattern,
1796
+ patternOpacity
1797
+ }) {
1798
+ const [expandedValue, setExpandedValue] = React4.useState(null);
1799
+ const toggleExpand = useCallback((id) => {
1800
+ setExpandedValue((prev) => prev === id ? null : id);
1801
+ }, []);
1802
+ const actionsContent = useMemo(() => {
1803
+ if (actionsSlot) return actionsSlot;
1804
+ if (!actions || actions.length === 0) return null;
1805
+ return /* @__PURE__ */ jsx("div", { className: actionsClassName, children: actions.map((action, idx) => /* @__PURE__ */ jsx(
1806
+ Pressable,
1807
+ {
1808
+ href: action.href,
1809
+ onClick: action.onClick,
1810
+ variant: action.variant || "default",
1811
+ size: action.size,
1812
+ asButton: true,
1813
+ children: action.label
1814
+ },
1815
+ idx
1816
+ )) });
1817
+ }, [actionsSlot, actions, actionsClassName]);
1818
+ const valuesContent = useMemo(() => {
1819
+ if (valuesSlot) return valuesSlot;
1820
+ if (!values || values.length === 0) return null;
1821
+ return /* @__PURE__ */ jsx("div", { className: cn("grid grid-cols-1 gap-6 md:grid-cols-2 lg:grid-cols-3", valuesClassName), children: values.map((value) => /* @__PURE__ */ jsxs(
1822
+ "div",
1823
+ {
1824
+ className: cn(
1825
+ "group overflow-hidden rounded-xl border bg-card text-card-foreground transition-all duration-300",
1826
+ expandedValue === value.id ? "col-span-1 shadow-lg md:col-span-2 lg:col-span-3" : ""
1827
+ ),
1828
+ children: [
1829
+ /* @__PURE__ */ jsxs(
1830
+ "button",
1831
+ {
1832
+ onClick: () => toggleExpand(value.id),
1833
+ className: "flex w-full items-start justify-between p-6 text-left",
1834
+ type: "button",
1835
+ children: [
1836
+ /* @__PURE__ */ jsxs("div", { className: "flex items-start gap-4", children: [
1837
+ /* @__PURE__ */ jsx("div", { className: "flex-shrink-0 rounded-md bg-primary/10 p-3", children: value.icon }),
1838
+ /* @__PURE__ */ jsxs("div", { children: [
1839
+ value.title && (typeof value.title === "string" ? /* @__PURE__ */ jsx("h3", { className: "text-lg font-bold", children: value.title }) : value.title),
1840
+ value.shortDescription && (typeof value.shortDescription === "string" ? /* @__PURE__ */ jsx("p", { className: "mt-1 text-sm text-muted-foreground", children: value.shortDescription }) : /* @__PURE__ */ jsx("div", { className: "mt-1", children: value.shortDescription }))
1841
+ ] })
1842
+ ] }),
1843
+ /* @__PURE__ */ jsx(
1844
+ DynamicIcon,
1845
+ {
1846
+ name: "lucide/chevron-down",
1847
+ size: 20,
1848
+ className: cn(
1849
+ "mt-1 flex-shrink-0 text-muted-foreground transition-transform duration-300",
1850
+ expandedValue === value.id ? "rotate-180" : ""
1851
+ )
1852
+ }
1853
+ )
1854
+ ]
1855
+ }
1856
+ ),
1857
+ expandedValue === value.id && /* @__PURE__ */ jsxs("div", { className: "space-y-6 px-6 pb-6", children: [
1858
+ value.longDescription && /* @__PURE__ */ jsx("div", { className: "rounded-lg bg-muted/50 p-4", children: typeof value.longDescription === "string" ? /* @__PURE__ */ jsx("p", { className: "text-muted-foreground", children: value.longDescription }) : value.longDescription }),
1859
+ value.examples && value.examples.length > 0 && /* @__PURE__ */ jsxs("div", { children: [
1860
+ /* @__PURE__ */ jsx("h4", { className: "mb-2 text-sm font-semibold text-muted-foreground", children: "How we put this into practice:" }),
1861
+ /* @__PURE__ */ jsx("ul", { className: "space-y-2", children: value.examples.map((example, index) => /* @__PURE__ */ jsxs("li", { className: "flex items-start gap-2", children: [
1862
+ /* @__PURE__ */ jsx("div", { className: "mt-0.5 flex-shrink-0 rounded-full bg-primary/10 p-1", children: /* @__PURE__ */ jsx(
1863
+ DynamicIcon,
1864
+ {
1865
+ name: "lucide/check",
1866
+ size: 12,
1867
+ className: "text-primary"
1868
+ }
1869
+ ) }),
1870
+ typeof example === "string" ? /* @__PURE__ */ jsx("span", { className: "text-sm", children: example }) : example
1871
+ ] }, index)) })
1872
+ ] })
1873
+ ] })
1874
+ ]
1875
+ },
1876
+ value.id
1877
+ )) });
1878
+ }, [valuesSlot, values, valuesClassName, expandedValue, toggleExpand]);
1879
+ return /* @__PURE__ */ jsxs(
1880
+ Section,
1881
+ {
1882
+ background,
1883
+ spacing,
1884
+ pattern,
1885
+ patternOpacity,
1886
+ className: cn(className),
1887
+ containerClassName,
1888
+ children: [
1889
+ /* @__PURE__ */ jsxs("div", { className: cn("mx-auto max-w-3xl space-y-4 text-center", headerClassName), children: [
1890
+ badgeText && (typeof badgeText === "string" ? /* @__PURE__ */ jsx("div", { className: cn("inline-block rounded-lg bg-primary/10 px-3 py-1 text-sm text-primary", badgeClassName), children: badgeText }) : /* @__PURE__ */ jsx("div", { className: badgeClassName, children: badgeText })),
1891
+ heading && (typeof heading === "string" ? /* @__PURE__ */ jsx("h2", { className: cn("text-3xl font-bold tracking-tight", headingClassName), children: heading }) : /* @__PURE__ */ jsx("div", { className: headingClassName, children: heading })),
1892
+ description && (typeof description === "string" ? /* @__PURE__ */ jsx("p", { className: cn("text-muted-foreground", descriptionClassName), children: description }) : /* @__PURE__ */ jsx("div", { className: descriptionClassName, children: description }))
1893
+ ] }),
1894
+ valuesContent,
1895
+ /* @__PURE__ */ jsx("div", { className: cn("relative mt-8 rounded-lg bg-accent/50 p-8", ctaClassName), children: /* @__PURE__ */ jsxs("div", { className: "mx-auto max-w-3xl space-y-6 text-center", children: [
1896
+ ctaHeading && (typeof ctaHeading === "string" ? /* @__PURE__ */ jsx("h3", { className: cn("text-2xl font-bold", ctaHeadingClassName), children: ctaHeading }) : /* @__PURE__ */ jsx("div", { className: ctaHeadingClassName, children: ctaHeading })),
1897
+ ctaDescription && (typeof ctaDescription === "string" ? /* @__PURE__ */ jsx("p", { className: cn("text-muted-foreground", ctaDescriptionClassName), children: ctaDescription }) : /* @__PURE__ */ jsx("div", { className: ctaDescriptionClassName, children: ctaDescription })),
1898
+ actionsContent
1899
+ ] }) })
1900
+ ]
1901
+ }
1902
+ );
1903
+ }
1904
+ function Tabs({
1905
+ className,
1906
+ ...props
1907
+ }) {
1908
+ return /* @__PURE__ */ jsx(
1909
+ TabsPrimitive.Root,
1910
+ {
1911
+ "data-slot": "tabs",
1912
+ className: cn("flex flex-col gap-2", className),
1913
+ ...props
1914
+ }
1915
+ );
1916
+ }
1917
+ function TabsList({
1918
+ className,
1919
+ ...props
1920
+ }) {
1921
+ return /* @__PURE__ */ jsx(
1922
+ TabsPrimitive.List,
1923
+ {
1924
+ "data-slot": "tabs-list",
1925
+ className: cn(
1926
+ "bg-muted text-muted-foreground inline-flex h-9 w-fit items-center justify-center rounded-lg p-[3px]",
1927
+ className
1928
+ ),
1929
+ ...props
1930
+ }
1931
+ );
1932
+ }
1933
+ function TabsTrigger({
1934
+ className,
1935
+ ...props
1936
+ }) {
1937
+ return /* @__PURE__ */ jsx(
1938
+ TabsPrimitive.Trigger,
1939
+ {
1940
+ "data-slot": "tabs-trigger",
1941
+ className: cn(
1942
+ "data-[state=active]:bg-background dark:data-[state=active]:text-foreground focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:outline-ring dark:data-[state=active]:border-input dark:data-[state=active]:bg-input/30 text-foreground dark:text-muted-foreground inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center gap-1.5 rounded-md border border-transparent px-2 py-1 text-sm font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:ring-[3px] focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow-sm [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
1943
+ className
1944
+ ),
1945
+ ...props
1946
+ }
1947
+ );
1948
+ }
1949
+ function TabsContent({
1950
+ className,
1951
+ ...props
1952
+ }) {
1953
+ return /* @__PURE__ */ jsx(
1954
+ TabsPrimitive.Content,
1955
+ {
1956
+ "data-slot": "tabs-content",
1957
+ className: cn("flex-1 outline-none", className),
1958
+ ...props
1959
+ }
1960
+ );
1961
+ }
1962
+ function CommunityInitiatives({
1963
+ badgeText,
1964
+ heading,
1965
+ description,
1966
+ categories,
1967
+ categoriesSlot,
1968
+ ctaBadgeText,
1969
+ ctaHeading,
1970
+ ctaDescription,
1971
+ actions,
1972
+ actionsSlot,
1973
+ className,
1974
+ containerClassName,
1975
+ headerClassName,
1976
+ badgeClassName,
1977
+ headingClassName,
1978
+ descriptionClassName,
1979
+ tabsClassName,
1980
+ ctaClassName,
1981
+ ctaHeadingClassName,
1982
+ ctaDescriptionClassName,
1983
+ actionsClassName,
1984
+ optixFlowConfig,
1985
+ background,
1986
+ spacing,
1987
+ pattern,
1988
+ patternOpacity
1989
+ }) {
1990
+ const [activeCategory, setActiveCategory] = React4.useState(
1991
+ categories?.[0]?.id || ""
1992
+ );
1993
+ const currentCategory = categories?.find((category) => category.id === activeCategory) || categories?.[0];
1994
+ const handleCategoryChange = useCallback((e) => {
1995
+ setActiveCategory(e.target.value);
1996
+ }, []);
1997
+ const actionsContent = useMemo(() => {
1998
+ if (actionsSlot) return actionsSlot;
1999
+ if (!actions || actions.length === 0) return null;
2000
+ return /* @__PURE__ */ jsx("div", { className: cn("flex flex-wrap justify-center gap-4", actionsClassName), children: actions.map((action, idx) => /* @__PURE__ */ jsx(
2001
+ Pressable,
2002
+ {
2003
+ href: action.href,
2004
+ onClick: action.onClick,
2005
+ variant: action.variant || "default",
2006
+ size: action.size || "lg",
2007
+ asButton: true,
2008
+ children: action.label
2009
+ },
2010
+ idx
2011
+ )) });
2012
+ }, [actionsSlot, actions, actionsClassName]);
2013
+ const categoriesContent = useMemo(() => {
2014
+ if (categoriesSlot) return categoriesSlot;
2015
+ if (!categories || categories.length === 0) return null;
2016
+ return /* @__PURE__ */ jsxs(
2017
+ Tabs,
2018
+ {
2019
+ defaultValue: categories[0]?.id,
2020
+ value: activeCategory,
2021
+ onValueChange: setActiveCategory,
2022
+ className: cn("space-y-8", tabsClassName),
2023
+ children: [
2024
+ /* @__PURE__ */ jsxs("div", { className: "flex justify-center", children: [
2025
+ /* @__PURE__ */ jsx("div", { className: "mb-6 w-full md:hidden", children: /* @__PURE__ */ jsx(
2026
+ "select",
2027
+ {
2028
+ value: activeCategory,
2029
+ onChange: handleCategoryChange,
2030
+ className: "flex h-10 w-full items-center justify-between rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",
2031
+ children: categories.map((category) => /* @__PURE__ */ jsx("option", { value: category.id, children: category.title }, category.id))
2032
+ }
2033
+ ) }),
2034
+ /* @__PURE__ */ jsx(TabsList, { className: "hidden h-auto grid-cols-4 p-1 md:grid", children: categories.map((category) => /* @__PURE__ */ jsx(
2035
+ TabsTrigger,
2036
+ {
2037
+ value: category.id,
2038
+ className: "px-3 py-2.5 data-[state=active]:bg-primary data-[state=active]:text-primary-foreground",
2039
+ children: category.title
2040
+ },
2041
+ category.id
2042
+ )) })
2043
+ ] }),
2044
+ /* @__PURE__ */ jsx("div", { className: "mx-auto max-w-2xl text-center", children: /* @__PURE__ */ jsx("p", { className: "text-muted-foreground", children: currentCategory?.description }) }),
2045
+ categories.map((category) => /* @__PURE__ */ jsx(
2046
+ TabsContent,
2047
+ {
2048
+ value: category.id,
2049
+ className: "space-y-12",
2050
+ children: category.initiatives.map((initiative, index) => {
2051
+ const isEven = index % 2 === 0;
2052
+ return /* @__PURE__ */ jsxs(
2053
+ "div",
2054
+ {
2055
+ className: "grid items-center gap-8 md:grid-cols-12",
2056
+ children: [
2057
+ /* @__PURE__ */ jsxs(
2058
+ "div",
2059
+ {
2060
+ className: cn(
2061
+ "space-y-6 md:col-span-7",
2062
+ isEven ? "md:order-1" : "md:order-2"
2063
+ ),
2064
+ children: [
2065
+ /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-3", children: [
2066
+ /* @__PURE__ */ jsx("div", { className: "rounded-md bg-primary/10 p-2", children: /* @__PURE__ */ jsx(
2067
+ DynamicIcon,
2068
+ {
2069
+ name: initiative.icon,
2070
+ size: 24,
2071
+ className: "text-primary"
2072
+ }
2073
+ ) }),
2074
+ /* @__PURE__ */ jsx("h3", { className: "text-2xl font-bold", children: initiative.title })
2075
+ ] }),
2076
+ /* @__PURE__ */ jsx("p", { className: "text-muted-foreground", children: initiative.description }),
2077
+ initiative.metrics && /* @__PURE__ */ jsx("div", { className: "grid grid-cols-3 gap-4 pt-2", children: initiative.metrics.map((metric, i) => /* @__PURE__ */ jsxs("div", { className: "text-center", children: [
2078
+ /* @__PURE__ */ jsx("div", { className: "text-2xl font-bold text-primary", children: metric.value }),
2079
+ /* @__PURE__ */ jsx("div", { className: "mt-1 text-xs text-muted-foreground", children: metric.label })
2080
+ ] }, i)) })
2081
+ ]
2082
+ }
2083
+ ),
2084
+ initiative.image ? /* @__PURE__ */ jsx(
2085
+ "div",
2086
+ {
2087
+ className: cn(
2088
+ "md:col-span-5",
2089
+ isEven ? "md:order-2" : "md:order-1"
2090
+ ),
2091
+ children: /* @__PURE__ */ jsx("div", { className: "relative aspect-4/3 overflow-hidden rounded-xl", children: /* @__PURE__ */ jsx(
2092
+ Img,
2093
+ {
2094
+ src: initiative.image,
2095
+ alt: initiative.title,
2096
+ className: "h-full w-full object-cover",
2097
+ optixFlowConfig
2098
+ }
2099
+ ) })
2100
+ }
2101
+ ) : /* @__PURE__ */ jsx(
2102
+ "div",
2103
+ {
2104
+ className: cn(
2105
+ "flex h-full items-center justify-center md:col-span-5",
2106
+ isEven ? "md:order-2" : "md:order-1"
2107
+ ),
2108
+ children: /* @__PURE__ */ jsx(Card, { className: "flex h-full min-h-[280px] w-full items-center justify-center bg-muted/30", children: /* @__PURE__ */ jsxs(CardContent, { className: "p-6 text-center", children: [
2109
+ /* @__PURE__ */ jsx(
2110
+ DynamicIcon,
2111
+ {
2112
+ name: initiative.icon,
2113
+ size: 64,
2114
+ className: "mx-auto mb-4 text-muted-foreground/50"
2115
+ }
2116
+ ),
2117
+ /* @__PURE__ */ jsxs(Badge, { variant: "secondary", className: "mx-auto", children: [
2118
+ "Learn more about our",
2119
+ " ",
2120
+ initiative.title.toLowerCase(),
2121
+ " initiative"
2122
+ ] })
2123
+ ] }) })
2124
+ }
2125
+ )
2126
+ ]
2127
+ },
2128
+ initiative.id
2129
+ );
2130
+ })
2131
+ },
2132
+ category.id
2133
+ ))
2134
+ ]
2135
+ }
2136
+ );
2137
+ }, [categoriesSlot, categories, activeCategory, setActiveCategory, tabsClassName, handleCategoryChange, currentCategory, optixFlowConfig]);
2138
+ return /* @__PURE__ */ jsxs(
2139
+ Section,
2140
+ {
2141
+ background,
2142
+ spacing,
2143
+ pattern,
2144
+ patternOpacity,
2145
+ className: cn(className),
2146
+ containerClassName,
2147
+ children: [
2148
+ /* @__PURE__ */ jsxs("div", { className: cn("mx-auto mb-16 max-w-3xl space-y-4 text-center", headerClassName), children: [
2149
+ badgeText && (typeof badgeText === "string" ? /* @__PURE__ */ jsx("div", { className: cn("inline-block rounded-lg bg-primary/10 px-3 py-1 text-sm text-primary", badgeClassName), children: badgeText }) : /* @__PURE__ */ jsx("div", { className: badgeClassName, children: badgeText })),
2150
+ heading && (typeof heading === "string" ? /* @__PURE__ */ jsx("h2", { className: cn("text-3xl font-bold tracking-tight md:text-4xl", headingClassName), children: heading }) : /* @__PURE__ */ jsx("div", { className: headingClassName, children: heading })),
2151
+ description && (typeof description === "string" ? /* @__PURE__ */ jsx("p", { className: cn("text-muted-foreground", descriptionClassName), children: description }) : /* @__PURE__ */ jsx("div", { className: descriptionClassName, children: description }))
2152
+ ] }),
2153
+ categoriesContent,
2154
+ /* @__PURE__ */ jsxs("div", { className: cn("mt-20 text-center", ctaClassName), children: [
2155
+ ctaBadgeText && /* @__PURE__ */ jsx("div", { className: "mb-8 inline-flex items-center justify-center rounded-full bg-muted p-1", children: /* @__PURE__ */ jsx(Badge, { className: "rounded-full bg-primary px-4 py-1 text-primary-foreground", children: ctaBadgeText }) }),
2156
+ ctaHeading && (typeof ctaHeading === "string" ? /* @__PURE__ */ jsx("h3", { className: cn("mb-4 text-2xl font-bold", ctaHeadingClassName), children: ctaHeading }) : /* @__PURE__ */ jsx("div", { className: cn("mb-4", ctaHeadingClassName), children: ctaHeading })),
2157
+ ctaDescription && (typeof ctaDescription === "string" ? /* @__PURE__ */ jsx("p", { className: cn("mx-auto mb-8 max-w-2xl text-muted-foreground", ctaDescriptionClassName), children: ctaDescription }) : /* @__PURE__ */ jsx("div", { className: cn("mx-auto mb-8 max-w-2xl", ctaDescriptionClassName), children: ctaDescription })),
2158
+ actionsContent
2159
+ ] })
2160
+ ]
2161
+ }
2162
+ );
2163
+ }
2164
+ function AboutCultureTabs({
2165
+ badgeText,
2166
+ heading,
2167
+ description,
2168
+ aspects,
2169
+ aspectsSlot,
2170
+ ctaHeading,
2171
+ ctaDescription,
2172
+ actions,
2173
+ actionsSlot,
2174
+ ctaImages,
2175
+ ctaImagesSlot,
2176
+ className,
2177
+ containerClassName,
2178
+ headerClassName,
2179
+ badgeClassName,
2180
+ headingClassName,
2181
+ descriptionClassName,
2182
+ tabsClassName,
2183
+ ctaClassName,
2184
+ ctaHeadingClassName,
2185
+ ctaDescriptionClassName,
2186
+ actionsClassName,
2187
+ optixFlowConfig,
2188
+ background,
2189
+ spacing,
2190
+ pattern,
2191
+ patternOpacity
2192
+ }) {
2193
+ const resolvedAspects = aspects ?? [];
2194
+ const [activeTab, setActiveTab] = React4.useState(resolvedAspects[0]?.id || "");
2195
+ const actionsContent = useMemo(() => {
2196
+ if (actionsSlot) return actionsSlot;
2197
+ if (!actions || actions.length === 0) return null;
2198
+ return actions.map((action, index) => {
2199
+ const { label, icon, iconAfter, children, className: actionClassName, ...pressableProps } = action;
2200
+ return /* @__PURE__ */ jsx(
2201
+ Pressable,
2202
+ {
2203
+ asButton: true,
2204
+ className: actionClassName,
2205
+ ...pressableProps,
2206
+ children: children ?? /* @__PURE__ */ jsxs(Fragment, { children: [
2207
+ icon,
2208
+ label,
2209
+ iconAfter
2210
+ ] })
2211
+ },
2212
+ index
2213
+ );
2214
+ });
2215
+ }, [actionsSlot, actions]);
2216
+ const ctaImagesContent = useMemo(() => {
2217
+ if (ctaImagesSlot) return ctaImagesSlot;
2218
+ if (!ctaImages || ctaImages.length === 0) return null;
2219
+ return ctaImages.map((src, i) => /* @__PURE__ */ jsx("div", { className: "relative aspect-square overflow-hidden rounded-md", children: /* @__PURE__ */ jsx(
2220
+ Img,
2221
+ {
2222
+ src,
2223
+ alt: "Team culture",
2224
+ className: "h-full w-full object-cover",
2225
+ optixFlowConfig
2226
+ }
2227
+ ) }, i));
2228
+ }, [ctaImagesSlot, ctaImages, optixFlowConfig]);
2229
+ return /* @__PURE__ */ jsxs(
2230
+ Section,
2231
+ {
2232
+ background,
2233
+ spacing,
2234
+ pattern,
2235
+ patternOpacity,
2236
+ className: cn(className),
2237
+ containerClassName,
2238
+ children: [
2239
+ /* @__PURE__ */ jsxs("div", { className: cn("mx-auto mb-12 max-w-3xl space-y-4 text-center", headerClassName), children: [
2240
+ badgeText && (typeof badgeText === "string" ? /* @__PURE__ */ jsx("div", { className: cn("inline-block rounded-lg bg-primary/10 px-3 py-1 text-sm text-primary", badgeClassName), children: badgeText }) : /* @__PURE__ */ jsx("div", { className: badgeClassName, children: badgeText })),
2241
+ heading && (typeof heading === "string" ? /* @__PURE__ */ jsx("h2", { className: cn("text-3xl font-bold tracking-tight md:text-4xl", headingClassName), children: heading }) : /* @__PURE__ */ jsx("div", { className: headingClassName, children: heading })),
2242
+ description && (typeof description === "string" ? /* @__PURE__ */ jsx("p", { className: cn("text-muted-foreground", descriptionClassName), children: description }) : /* @__PURE__ */ jsx("div", { className: descriptionClassName, children: description }))
2243
+ ] }),
2244
+ aspectsSlot ? aspectsSlot : resolvedAspects.length > 0 ? /* @__PURE__ */ jsxs(
2245
+ Tabs,
2246
+ {
2247
+ defaultValue: resolvedAspects[0]?.id,
2248
+ value: activeTab,
2249
+ onValueChange: setActiveTab,
2250
+ className: cn("space-y-8", tabsClassName),
2251
+ children: [
2252
+ /* @__PURE__ */ jsx("div", { className: "flex justify-center", children: /* @__PURE__ */ jsx(TabsList, { className: "grid h-auto grid-cols-2 p-1 md:grid-cols-4", children: resolvedAspects.map((aspect) => /* @__PURE__ */ jsx(
2253
+ TabsTrigger,
2254
+ {
2255
+ value: aspect.id,
2256
+ className: "px-3 py-2.5 data-[state=active]:bg-primary data-[state=active]:text-primary-foreground",
2257
+ children: aspect.title
2258
+ },
2259
+ aspect.id
2260
+ )) }) }),
2261
+ resolvedAspects.map((aspect) => /* @__PURE__ */ jsxs(TabsContent, { value: aspect.id, className: "space-y-8", children: [
2262
+ /* @__PURE__ */ jsxs("div", { className: "grid gap-6 md:grid-cols-2", children: [
2263
+ /* @__PURE__ */ jsxs("div", { className: "space-y-4", children: [
2264
+ /* @__PURE__ */ jsx("h3", { className: "text-2xl font-bold tracking-tight", children: aspect.title }),
2265
+ /* @__PURE__ */ jsx("p", { className: "leading-relaxed text-muted-foreground", children: aspect.description })
2266
+ ] }),
2267
+ /* @__PURE__ */ jsx(Card, { className: "border-0 bg-gradient-to-br from-primary/5 to-primary/10 p-0", children: /* @__PURE__ */ jsxs(CardContent, { className: "space-y-4 p-6 pt-6", children: [
2268
+ /* @__PURE__ */ jsx(
2269
+ DynamicIcon,
2270
+ {
2271
+ name: "lucide/quote",
2272
+ size: 32,
2273
+ className: "text-primary/40"
2274
+ }
2275
+ ),
2276
+ /* @__PURE__ */ jsxs("p", { className: "italic text-muted-foreground", children: [
2277
+ '"',
2278
+ aspect.testimonial.quote,
2279
+ '"'
2280
+ ] }),
2281
+ /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-3 pt-2", children: [
2282
+ /* @__PURE__ */ jsx("div", { className: "relative h-10 w-10 overflow-hidden rounded-full", children: /* @__PURE__ */ jsx(
2283
+ Img,
2284
+ {
2285
+ src: aspect.testimonial.avatar,
2286
+ alt: aspect.testimonial.author,
2287
+ className: "h-full w-full object-cover",
2288
+ optixFlowConfig
2289
+ }
2290
+ ) }),
2291
+ /* @__PURE__ */ jsxs("div", { children: [
2292
+ /* @__PURE__ */ jsx("h4", { className: "text-sm font-medium", children: aspect.testimonial.author }),
2293
+ /* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground", children: aspect.testimonial.role })
2294
+ ] })
2295
+ ] })
2296
+ ] }) })
2297
+ ] }),
2298
+ /* @__PURE__ */ jsx("div", { className: "grid grid-cols-1 gap-4 md:grid-cols-3", children: aspect.images.map((image, idx) => /* @__PURE__ */ jsx(
2299
+ "div",
2300
+ {
2301
+ className: "relative aspect-[4/3] overflow-hidden rounded-lg",
2302
+ children: /* @__PURE__ */ jsx(
2303
+ Img,
2304
+ {
2305
+ src: image,
2306
+ alt: `${aspect.title} culture`,
2307
+ className: "h-full w-full transform object-cover transition-transform duration-500 hover:scale-105",
2308
+ optixFlowConfig
2309
+ }
2310
+ )
2311
+ },
2312
+ idx
2313
+ )) })
2314
+ ] }, aspect.id))
2315
+ ]
2316
+ }
2317
+ ) : null,
2318
+ /* @__PURE__ */ jsxs("div", { className: cn("relative mt-16 rounded-xl border bg-background p-8 md:p-12", ctaClassName), children: [
2319
+ /* @__PURE__ */ jsxs("div", { className: "grid items-center gap-8 md:grid-cols-2", children: [
2320
+ /* @__PURE__ */ jsxs("div", { children: [
2321
+ ctaHeading && (typeof ctaHeading === "string" ? /* @__PURE__ */ jsx("h3", { className: cn("mb-4 text-2xl font-bold", ctaHeadingClassName), children: ctaHeading }) : /* @__PURE__ */ jsx("div", { className: cn("mb-4", ctaHeadingClassName), children: ctaHeading })),
2322
+ ctaDescription && (typeof ctaDescription === "string" ? /* @__PURE__ */ jsx("p", { className: cn("mb-6 text-muted-foreground", ctaDescriptionClassName), children: ctaDescription }) : /* @__PURE__ */ jsx("div", { className: cn("mb-6", ctaDescriptionClassName), children: ctaDescription })),
2323
+ (actionsSlot || actions && actions.length > 0) && /* @__PURE__ */ jsx("div", { className: cn("flex gap-4", actionsClassName), children: actionsContent })
2324
+ ] }),
2325
+ /* @__PURE__ */ jsx("div", { className: "grid grid-cols-3 gap-2", children: ctaImagesContent })
2326
+ ] }),
2327
+ /* @__PURE__ */ jsx("div", { className: "absolute -left-5 -top-5 h-10 w-10 rounded-full bg-primary/10" }),
2328
+ /* @__PURE__ */ jsx("div", { className: "absolute -bottom-5 -right-5 h-10 w-10 rounded-full bg-primary/10" })
2329
+ ] })
1560
2330
  ]
1561
2331
  }
1562
2332
  );
@@ -1567,14 +2337,14 @@ function MediaHoverCtas({
1567
2337
  gridClassName,
1568
2338
  items,
1569
2339
  itemsSlot,
1570
- background = "white",
1571
- spacing = "lg",
2340
+ background,
2341
+ spacing,
1572
2342
  pattern,
1573
2343
  patternOpacity,
1574
2344
  optixFlowConfig
1575
2345
  }) {
1576
2346
  const resolvedItems = items ?? [];
1577
- const renderItems = () => {
2347
+ const itemsContent = useMemo(() => {
1578
2348
  if (itemsSlot) return itemsSlot;
1579
2349
  return resolvedItems.map((item, index) => {
1580
2350
  const CardComponent = item.cardHref ? "a" : "div";
@@ -1624,7 +2394,7 @@ function MediaHoverCtas({
1624
2394
  index
1625
2395
  );
1626
2396
  });
1627
- };
2397
+ }, [itemsSlot, resolvedItems, optixFlowConfig]);
1628
2398
  return /* @__PURE__ */ jsx(
1629
2399
  Section,
1630
2400
  {
@@ -1640,89 +2410,97 @@ function MediaHoverCtas({
1640
2410
  "grid min-h-100 grid-cols-1 gap-1 lg:grid-cols-2",
1641
2411
  gridClassName
1642
2412
  ),
1643
- children: renderItems()
2413
+ children: itemsContent
1644
2414
  }
1645
2415
  )
1646
2416
  }
1647
2417
  );
1648
2418
  }
1649
2419
  function FooterLinksGrid({
1650
- logo = {
1651
- src: "https://cdn.ing/assets/i/r/285975/eud79qeya11q5w6ueyhklueardyx/os-suircle-black-white.png",
1652
- alt: "Opensite AI",
1653
- title: "Opensite AI",
1654
- url: "https://opensite.ai"
1655
- },
2420
+ logo,
1656
2421
  className,
1657
2422
  tagline,
1658
2423
  menuItems,
1659
2424
  copyright,
2425
+ attributionText,
2426
+ attributionHref,
1660
2427
  bottomLinks,
2428
+ background,
2429
+ spacing,
2430
+ pattern,
2431
+ patternOpacity,
1661
2432
  optixFlowConfig
1662
2433
  }) {
1663
- return /* @__PURE__ */ jsx("section", { className: cn("py-32", className), children: /* @__PURE__ */ jsx("div", { className: "container", children: /* @__PURE__ */ jsxs("footer", { children: [
1664
- /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-2 gap-8 lg:grid-cols-6", children: [
1665
- /* @__PURE__ */ jsxs("div", { className: "col-span-2 mb-8 lg:mb-0", children: [
1666
- /* @__PURE__ */ jsx("div", { className: "flex items-center gap-2 lg:justify-start", children: /* @__PURE__ */ jsxs(Pressable, { href: logo.url, className: "flex items-center gap-2", children: [
1667
- /* @__PURE__ */ jsx(
1668
- Img,
1669
- {
1670
- src: logo.src,
1671
- alt: logo.alt,
1672
- className: "h-10 dark:invert",
1673
- optixFlowConfig
1674
- }
1675
- ),
1676
- /* @__PURE__ */ jsx("span", { className: "text-xl font-semibold", children: logo.title })
1677
- ] }) }),
1678
- /* @__PURE__ */ jsx("p", { className: "mt-4 font-bold", children: tagline })
1679
- ] }),
1680
- menuItems?.map((section, sectionIdx) => /* @__PURE__ */ jsxs("div", { children: [
1681
- /* @__PURE__ */ jsx("h3", { className: "mb-4 font-bold", children: section.title }),
1682
- /* @__PURE__ */ jsx("ul", { className: "space-y-4 text-muted-foreground", children: section.links.map((link, linkIdx) => /* @__PURE__ */ jsx(
1683
- "li",
1684
- {
1685
- className: "font-medium hover:text-primary",
1686
- children: /* @__PURE__ */ jsx(Pressable, { href: link.url, children: link.text })
1687
- },
1688
- linkIdx
1689
- )) })
1690
- ] }, sectionIdx))
1691
- ] }),
1692
- /* @__PURE__ */ jsxs("div", { className: "mt-24 flex flex-col justify-between gap-4 border-t pt-8 text-sm font-medium text-muted-foreground md:flex-row md:items-center", children: [
1693
- /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-2 md:flex-row md:items-center md:gap-4", children: [
1694
- /* @__PURE__ */ jsx("p", { children: copyright }),
1695
- /* @__PURE__ */ jsx(
1696
- Pressable,
1697
- {
1698
- href: "https://opensite.ai",
1699
- className: "hover:text-primary",
1700
- children: "AI Website and Automation Platform by Opensite"
1701
- }
1702
- )
1703
- ] }),
1704
- /* @__PURE__ */ jsx("ul", { className: "flex gap-4", children: bottomLinks?.map((link, linkIdx) => /* @__PURE__ */ jsx("li", { className: "underline hover:text-primary", children: /* @__PURE__ */ jsx(Pressable, { href: link.url, children: link.text }) }, linkIdx)) })
1705
- ] })
1706
- ] }) }) });
2434
+ const currentYear = useMemo(() => (/* @__PURE__ */ new Date()).getFullYear(), []);
2435
+ const copyrightText = copyright ?? `\xA9 ${currentYear}`;
2436
+ return /* @__PURE__ */ jsx(
2437
+ Section,
2438
+ {
2439
+ background,
2440
+ spacing,
2441
+ pattern,
2442
+ patternOpacity,
2443
+ className: cn(className),
2444
+ children: /* @__PURE__ */ jsxs("footer", { children: [
2445
+ /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-2 gap-8 lg:grid-cols-6", children: [
2446
+ (logo || tagline) && /* @__PURE__ */ jsxs("div", { className: "col-span-2 mb-8 lg:mb-0", children: [
2447
+ logo && /* @__PURE__ */ jsx("div", { className: "flex items-center gap-2 lg:justify-start", children: /* @__PURE__ */ jsxs(Pressable, { href: logo.url, className: "flex items-center gap-2", children: [
2448
+ /* @__PURE__ */ jsx(
2449
+ Img,
2450
+ {
2451
+ src: logo.src,
2452
+ alt: logo.alt,
2453
+ className: "h-10 dark:invert",
2454
+ optixFlowConfig
2455
+ }
2456
+ ),
2457
+ /* @__PURE__ */ jsx("span", { className: "text-xl font-semibold", children: logo.title })
2458
+ ] }) }),
2459
+ tagline && /* @__PURE__ */ jsx("p", { className: "mt-4 font-bold", children: tagline })
2460
+ ] }),
2461
+ menuItems && menuItems.length > 0 && menuItems.map((section, sectionIdx) => /* @__PURE__ */ jsxs("div", { children: [
2462
+ /* @__PURE__ */ jsx("h3", { className: "mb-4 font-bold", children: section.title }),
2463
+ /* @__PURE__ */ jsx("ul", { className: "space-y-4 text-muted-foreground", children: section.links.map((link, linkIdx) => /* @__PURE__ */ jsx(
2464
+ "li",
2465
+ {
2466
+ className: "font-medium hover:text-primary",
2467
+ children: /* @__PURE__ */ jsx(Pressable, { href: link.url, children: link.text })
2468
+ },
2469
+ linkIdx
2470
+ )) })
2471
+ ] }, sectionIdx))
2472
+ ] }),
2473
+ /* @__PURE__ */ jsxs("div", { className: "mt-24 flex flex-col justify-between gap-4 border-t pt-8 text-sm font-medium text-muted-foreground md:flex-row md:items-center", children: [
2474
+ /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-2 md:flex-row md:items-center md:gap-4", children: [
2475
+ /* @__PURE__ */ jsx("p", { children: copyrightText }),
2476
+ attributionText && /* @__PURE__ */ jsx(
2477
+ Pressable,
2478
+ {
2479
+ href: attributionHref || "https://opensite.ai",
2480
+ className: "hover:text-primary",
2481
+ children: attributionText
2482
+ }
2483
+ )
2484
+ ] }),
2485
+ bottomLinks && bottomLinks.length > 0 && /* @__PURE__ */ jsx("ul", { className: "flex gap-4", children: bottomLinks.map((link, linkIdx) => /* @__PURE__ */ jsx("li", { className: "underline hover:text-primary", children: /* @__PURE__ */ jsx(Pressable, { href: link.url, children: link.text }) }, linkIdx)) })
2486
+ ] })
2487
+ ] })
2488
+ }
2489
+ );
1707
2490
  }
1708
2491
  function FooterSocialNewsletter({
1709
- logo = {
1710
- url: "https://opensite.ai",
1711
- src: "https://cdn.ing/assets/i/r/285975/eud79qeya11q5w6ueyhklueardyx/os-suircle-black-white.png",
1712
- alt: "Opensite AI",
1713
- title: "Opensite AI"
1714
- },
2492
+ logo,
1715
2493
  sections,
1716
2494
  socialLinks,
1717
2495
  newsletterLabel,
1718
- newsletterPlaceholder = "Email",
2496
+ newsletterPlaceholder,
1719
2497
  newsletterButtonText,
1720
2498
  privacyLinkText,
1721
- privacyLinkUrl = "#",
2499
+ privacyLinkUrl,
1722
2500
  privacyConsentText,
1723
2501
  copyright,
1724
2502
  attributionText,
1725
- attributionHref = "https://opensite.ai",
2503
+ attributionHref,
1726
2504
  className,
1727
2505
  contentClassName,
1728
2506
  logoWrapperClassName,
@@ -1742,13 +2520,13 @@ function FooterSocialNewsletter({
1742
2520
  privacyClassName,
1743
2521
  bottomClassName,
1744
2522
  copyrightClassName,
1745
- background = "white",
1746
- spacing = "lg",
2523
+ background,
2524
+ spacing,
1747
2525
  pattern,
1748
2526
  patternOpacity,
1749
2527
  optixFlowConfig
1750
2528
  }) {
1751
- const currentYear = (/* @__PURE__ */ new Date()).getFullYear();
2529
+ const currentYear = useMemo(() => (/* @__PURE__ */ new Date()).getFullYear(), []);
1752
2530
  const copyrightText = copyright ?? `\xA9 ${currentYear} Opensite AI. All rights reserved.`;
1753
2531
  return /* @__PURE__ */ jsx(
1754
2532
  Section,
@@ -1759,7 +2537,7 @@ function FooterSocialNewsletter({
1759
2537
  patternOpacity,
1760
2538
  className: cn(className),
1761
2539
  children: /* @__PURE__ */ jsx("div", { className: cn(contentClassName), children: /* @__PURE__ */ jsxs("footer", { children: [
1762
- /* @__PURE__ */ jsxs(Pressable, { href: logo.url, className: cn("flex items-center gap-2", logoWrapperClassName), children: [
2540
+ logo && /* @__PURE__ */ jsxs(Pressable, { href: logo.url, className: cn("flex items-center gap-2", logoWrapperClassName), children: [
1763
2541
  /* @__PURE__ */ jsx(
1764
2542
  Img,
1765
2543
  {
@@ -1771,8 +2549,8 @@ function FooterSocialNewsletter({
1771
2549
  ),
1772
2550
  /* @__PURE__ */ jsx("span", { className: cn("text-xl font-semibold", logoTitleClassName), children: logo.title })
1773
2551
  ] }),
1774
- /* @__PURE__ */ jsxs("div", { className: cn("mt-14 grid gap-8 md:grid-cols-2 lg:grid-cols-5 xl:grid-cols-4", gridClassName), children: [
1775
- sections?.map((section, sectionIdx) => /* @__PURE__ */ jsxs("div", { className: cn(navSectionClassName), children: [
2552
+ (sections && sections.length > 0 || socialLinks && socialLinks.length > 0 || newsletterLabel || newsletterButtonText) && /* @__PURE__ */ jsxs("div", { className: cn("mt-14 grid gap-8 md:grid-cols-2 lg:grid-cols-5 xl:grid-cols-4", gridClassName), children: [
2553
+ sections && sections.length > 0 && sections.map((section, sectionIdx) => /* @__PURE__ */ jsxs("div", { className: cn(navSectionClassName), children: [
1776
2554
  /* @__PURE__ */ jsx("h3", { className: cn("mb-4 font-bold", navTitleClassName), children: section.title }),
1777
2555
  /* @__PURE__ */ jsx("ul", { className: cn("space-y-4 text-muted-foreground", navLinksClassName), children: section.links.map((link, linkIdx) => /* @__PURE__ */ jsx(
1778
2556
  "li",
@@ -1783,21 +2561,21 @@ function FooterSocialNewsletter({
1783
2561
  linkIdx
1784
2562
  )) })
1785
2563
  ] }, sectionIdx)),
1786
- /* @__PURE__ */ jsxs("div", { className: cn("lg:col-span-2 xl:col-span-1", socialColumnClassName), children: [
1787
- /* @__PURE__ */ jsx("ul", { className: cn("mb-10 flex items-center gap-2 text-muted-foreground", socialLinksClassName), children: socialLinks?.map((social, idx) => /* @__PURE__ */ jsx("li", { className: "font-medium", children: /* @__PURE__ */ jsx(Pressable, { href: social.href, "aria-label": social.label, children: /* @__PURE__ */ jsx("span", { className: cn("flex size-12 items-center justify-center rounded-full bg-muted transition-colors hover:text-primary", socialLinkClassName), children: /* @__PURE__ */ jsx(DynamicIcon, { name: social.icon, size: 24 }) }) }) }, idx)) }),
1788
- /* @__PURE__ */ jsxs("div", { className: cn("grid w-full max-w-sm items-center gap-1.5", newsletterClassName), children: [
1789
- /* @__PURE__ */ jsx("label", { htmlFor: "newsletter-email", className: "text-sm font-medium", children: newsletterLabel }),
2564
+ (socialLinks && socialLinks.length > 0 || newsletterLabel || newsletterButtonText) && /* @__PURE__ */ jsxs("div", { className: cn("lg:col-span-2 xl:col-span-1", socialColumnClassName), children: [
2565
+ socialLinks && socialLinks.length > 0 && /* @__PURE__ */ jsx("ul", { className: cn("mb-10 flex items-center gap-2 text-muted-foreground", socialLinksClassName), children: socialLinks.map((social, idx) => /* @__PURE__ */ jsx("li", { className: "font-medium", children: /* @__PURE__ */ jsx(Pressable, { href: social.href, "aria-label": social.label, children: /* @__PURE__ */ jsx("span", { className: cn("flex size-12 items-center justify-center rounded-full bg-muted transition-colors hover:text-primary", socialLinkClassName), children: /* @__PURE__ */ jsx(DynamicIcon, { name: social.icon, size: 24 }) }) }) }, idx)) }),
2566
+ (newsletterLabel || newsletterButtonText) && /* @__PURE__ */ jsxs("div", { className: cn("grid w-full max-w-sm items-center gap-1.5", newsletterClassName), children: [
2567
+ newsletterLabel && /* @__PURE__ */ jsx("label", { htmlFor: "newsletter-email", className: "text-sm font-medium", children: newsletterLabel }),
1790
2568
  /* @__PURE__ */ jsxs("div", { className: "flex w-full max-w-sm items-center space-x-2", children: [
1791
2569
  /* @__PURE__ */ jsx(
1792
2570
  "input",
1793
2571
  {
1794
2572
  type: "email",
1795
2573
  id: "newsletter-email",
1796
- placeholder: newsletterPlaceholder,
2574
+ placeholder: newsletterPlaceholder || "Email",
1797
2575
  className: cn("flex h-10 w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50", newsletterInputClassName)
1798
2576
  }
1799
2577
  ),
1800
- /* @__PURE__ */ jsx(
2578
+ newsletterButtonText && /* @__PURE__ */ jsx(
1801
2579
  Pressable,
1802
2580
  {
1803
2581
  onClick: (e) => {
@@ -1811,19 +2589,19 @@ function FooterSocialNewsletter({
1811
2589
  }
1812
2590
  )
1813
2591
  ] }),
1814
- /* @__PURE__ */ jsxs("p", { className: cn("mt-1 text-xs text-muted-foreground", privacyClassName), children: [
2592
+ (privacyConsentText || privacyLinkText) && /* @__PURE__ */ jsxs("p", { className: cn("mt-1 text-xs text-muted-foreground", privacyClassName), children: [
1815
2593
  privacyConsentText,
1816
- /* @__PURE__ */ jsx(Pressable, { href: privacyLinkUrl, className: "ml-1 text-primary hover:underline", children: privacyLinkText })
2594
+ privacyLinkText && /* @__PURE__ */ jsx(Pressable, { href: privacyLinkUrl || "#", className: "ml-1 text-primary hover:underline", children: privacyLinkText })
1817
2595
  ] })
1818
2596
  ] })
1819
2597
  ] })
1820
2598
  ] }),
1821
2599
  /* @__PURE__ */ jsx("div", { className: cn("mt-20 flex flex-col justify-between gap-4 border-t pt-8 text-sm font-medium text-muted-foreground md:flex-row md:items-center", bottomClassName), children: /* @__PURE__ */ jsxs("div", { className: cn("flex flex-col gap-2 md:flex-row md:items-center md:gap-4", copyrightClassName), children: [
1822
2600
  /* @__PURE__ */ jsx("p", { children: copyrightText }),
1823
- /* @__PURE__ */ jsx(
2601
+ attributionText && /* @__PURE__ */ jsx(
1824
2602
  Pressable,
1825
2603
  {
1826
- href: attributionHref,
2604
+ href: attributionHref || "https://opensite.ai",
1827
2605
  className: "hover:text-primary",
1828
2606
  children: attributionText
1829
2607
  }
@@ -1834,12 +2612,7 @@ function FooterSocialNewsletter({
1834
2612
  );
1835
2613
  }
1836
2614
  function FooterSocialApps({
1837
- logo = {
1838
- url: "https://opensite.ai",
1839
- src: "https://cdn.ing/assets/i/r/285975/eud79qeya11q5w6ueyhklueardyx/os-suircle-black-white.png",
1840
- alt: "Opensite AI",
1841
- title: "Opensite AI"
1842
- },
2615
+ logo,
1843
2616
  className,
1844
2617
  sections,
1845
2618
  socialLinks,
@@ -1847,58 +2620,72 @@ function FooterSocialApps({
1847
2620
  socialLabel,
1848
2621
  appLabel,
1849
2622
  copyright,
2623
+ background,
2624
+ spacing,
2625
+ pattern,
2626
+ patternOpacity,
1850
2627
  optixFlowConfig
1851
- }) {
1852
- return /* @__PURE__ */ jsx("section", { className: cn("py-32", className), children: /* @__PURE__ */ jsx("div", { className: "container", children: /* @__PURE__ */ jsxs("footer", { children: [
1853
- /* @__PURE__ */ jsxs("div", { className: "flex flex-col justify-between gap-10 lg:flex-row lg:gap-20", children: [
1854
- /* @__PURE__ */ jsx("div", { className: "flex flex-col gap-6", children: /* @__PURE__ */ jsxs(Pressable, { href: logo.url, className: "flex items-center gap-2", children: [
1855
- /* @__PURE__ */ jsx(
1856
- Img,
1857
- {
1858
- src: logo.src,
1859
- alt: logo.alt,
1860
- className: "h-10",
1861
- optixFlowConfig
1862
- }
1863
- ),
1864
- /* @__PURE__ */ jsx("span", { className: "text-xl font-semibold", children: logo.title })
1865
- ] }) }),
1866
- /* @__PURE__ */ jsx("div", { className: "grid flex-1 gap-8 sm:grid-cols-2 md:grid-cols-3", children: sections?.map((section, sectionIdx) => /* @__PURE__ */ jsxs("div", { children: [
1867
- /* @__PURE__ */ jsx("h3", { className: "mb-4 font-bold", children: section.title }),
1868
- /* @__PURE__ */ jsx("ul", { className: "space-y-4 text-muted-foreground", children: section.links.map((link, linkIdx) => /* @__PURE__ */ jsx(
1869
- "li",
1870
- {
1871
- className: "font-medium hover:text-primary",
1872
- children: /* @__PURE__ */ jsx(Pressable, { href: link.href, children: link.name })
1873
- },
1874
- linkIdx
1875
- )) })
1876
- ] }, sectionIdx)) }),
1877
- /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-6", children: [
1878
- /* @__PURE__ */ jsxs("div", { children: [
1879
- /* @__PURE__ */ jsx("p", { className: "mb-3 font-bold", children: socialLabel }),
1880
- /* @__PURE__ */ jsx("ul", { className: "flex items-center gap-2 text-muted-foreground", children: socialLinks?.map((social, idx) => /* @__PURE__ */ jsx("li", { className: "font-medium", children: /* @__PURE__ */ jsx(Pressable, { href: social.href, "aria-label": social.label, children: /* @__PURE__ */ jsx("span", { className: "flex size-12 items-center justify-center rounded-full bg-muted transition-colors hover:text-primary", children: /* @__PURE__ */ jsx(DynamicIcon, { name: social.icon, size: 24 }) }) }) }, idx)) })
1881
- ] }),
1882
- /* @__PURE__ */ jsxs("div", { children: [
1883
- /* @__PURE__ */ jsx("p", { className: "mb-3 font-bold", children: appLabel }),
1884
- /* @__PURE__ */ jsx("ul", { className: "flex items-center gap-2 text-muted-foreground", children: appLinks?.map((app, idx) => /* @__PURE__ */ jsx("li", { className: "font-medium", children: /* @__PURE__ */ jsx(Pressable, { href: app.href, "aria-label": app.label, children: /* @__PURE__ */ jsx("span", { className: "flex size-12 items-center justify-center rounded-full bg-muted transition-colors hover:text-primary", children: /* @__PURE__ */ jsx(DynamicIcon, { name: app.icon, size: 24 }) }) }) }, idx)) })
1885
- ] })
1886
- ] })
1887
- ] }),
1888
- /* @__PURE__ */ jsx("div", { className: "mt-24 border-t pt-8", children: /* @__PURE__ */ jsxs("div", { className: "flex flex-col justify-between gap-4 text-center text-sm font-medium text-muted-foreground md:flex-row md:text-left", children: [
1889
- /* @__PURE__ */ jsx("p", { children: copyright }),
1890
- /* @__PURE__ */ jsx(
1891
- Pressable,
2628
+ }) {
2629
+ const sectionsContent = useMemo(() => {
2630
+ if (!sections || sections.length === 0) return null;
2631
+ return sections.map((section, sectionIdx) => /* @__PURE__ */ jsxs("div", { children: [
2632
+ /* @__PURE__ */ jsx("h3", { className: "mb-4 font-bold", children: section.title }),
2633
+ /* @__PURE__ */ jsx("ul", { className: "space-y-4 text-muted-foreground", children: section.links.map((link, linkIdx) => /* @__PURE__ */ jsx(
2634
+ "li",
1892
2635
  {
1893
- href: "https://opensite.ai",
1894
- className: "hover:text-primary",
1895
- target: "_blank",
1896
- rel: "noopener noreferrer",
1897
- children: "AI Website and Automation Platform by Opensite"
1898
- }
1899
- )
1900
- ] }) })
1901
- ] }) }) });
2636
+ className: "font-medium hover:text-primary",
2637
+ children: /* @__PURE__ */ jsx(Pressable, { href: link.href, children: link.name })
2638
+ },
2639
+ linkIdx
2640
+ )) })
2641
+ ] }, sectionIdx));
2642
+ }, [sections]);
2643
+ const socialLinksContent = useMemo(() => {
2644
+ if (!socialLinks || socialLinks.length === 0) return null;
2645
+ return socialLinks.map((social, idx) => /* @__PURE__ */ jsx("li", { className: "font-medium", children: /* @__PURE__ */ jsx(Pressable, { href: social.href, "aria-label": social.label, children: /* @__PURE__ */ jsx("span", { className: "flex size-12 items-center justify-center rounded-full bg-muted transition-colors hover:text-primary", children: /* @__PURE__ */ jsx(DynamicIcon, { name: social.icon, size: 24 }) }) }) }, idx));
2646
+ }, [socialLinks]);
2647
+ const appLinksContent = useMemo(() => {
2648
+ if (!appLinks || appLinks.length === 0) return null;
2649
+ return appLinks.map((app, idx) => /* @__PURE__ */ jsx("li", { className: "font-medium", children: /* @__PURE__ */ jsx(Pressable, { href: app.href, "aria-label": app.label, children: /* @__PURE__ */ jsx("span", { className: "flex size-12 items-center justify-center rounded-full bg-muted transition-colors hover:text-primary", children: /* @__PURE__ */ jsx(DynamicIcon, { name: app.icon, size: 24 }) }) }) }, idx));
2650
+ }, [appLinks]);
2651
+ return /* @__PURE__ */ jsx(
2652
+ Section,
2653
+ {
2654
+ background,
2655
+ spacing,
2656
+ pattern,
2657
+ patternOpacity,
2658
+ className: cn(className),
2659
+ children: /* @__PURE__ */ jsx("div", { children: /* @__PURE__ */ jsxs("footer", { children: [
2660
+ /* @__PURE__ */ jsxs("div", { className: "flex flex-col justify-between gap-10 lg:flex-row lg:gap-20", children: [
2661
+ logo && /* @__PURE__ */ jsx("div", { className: "flex flex-col gap-6", children: /* @__PURE__ */ jsxs(Pressable, { href: logo.url, className: "flex items-center gap-2", children: [
2662
+ logo.src && /* @__PURE__ */ jsx(
2663
+ Img,
2664
+ {
2665
+ src: logo.src,
2666
+ alt: logo.alt,
2667
+ className: "h-10",
2668
+ optixFlowConfig
2669
+ }
2670
+ ),
2671
+ logo.title && /* @__PURE__ */ jsx("span", { className: "text-xl font-semibold", children: logo.title })
2672
+ ] }) }),
2673
+ sections && sections.length > 0 && /* @__PURE__ */ jsx("div", { className: "grid flex-1 gap-8 sm:grid-cols-2 md:grid-cols-3", children: sectionsContent }),
2674
+ (socialLinks && socialLinks.length > 0 || appLinks && appLinks.length > 0) && /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-6", children: [
2675
+ socialLinks && socialLinks.length > 0 && /* @__PURE__ */ jsxs("div", { children: [
2676
+ socialLabel && /* @__PURE__ */ jsx("p", { className: "mb-3 font-bold", children: socialLabel }),
2677
+ /* @__PURE__ */ jsx("ul", { className: "flex items-center gap-2 text-muted-foreground", children: socialLinksContent })
2678
+ ] }),
2679
+ appLinks && appLinks.length > 0 && /* @__PURE__ */ jsxs("div", { children: [
2680
+ appLabel && /* @__PURE__ */ jsx("p", { className: "mb-3 font-bold", children: appLabel }),
2681
+ /* @__PURE__ */ jsx("ul", { className: "flex items-center gap-2 text-muted-foreground", children: appLinksContent })
2682
+ ] })
2683
+ ] })
2684
+ ] }),
2685
+ copyright && /* @__PURE__ */ jsx("div", { className: "mt-24 border-t pt-8", children: /* @__PURE__ */ jsx("div", { className: "flex flex-col justify-between gap-4 text-center text-sm font-medium text-muted-foreground md:flex-row md:text-left", children: /* @__PURE__ */ jsx("p", { children: copyright }) }) })
2686
+ ] }) })
2687
+ }
2688
+ );
1902
2689
  }
1903
2690
  function FooterSimpleCentered({
1904
2691
  logo,
@@ -1925,12 +2712,46 @@ function FooterSimpleCentered({
1925
2712
  copyrightClassName,
1926
2713
  bottomLinksClassName,
1927
2714
  bottomLinkClassName,
1928
- background = "white",
1929
- spacing = "lg",
2715
+ background,
2716
+ spacing,
1930
2717
  pattern,
1931
2718
  patternOpacity,
1932
2719
  optixFlowConfig
1933
2720
  }) {
2721
+ const sitemapContent = useMemo(() => {
2722
+ if (!sitemap || sitemap.length === 0) return null;
2723
+ return sitemap.map((section) => /* @__PURE__ */ jsxs("div", { className: cn(sitemapSectionClassName), children: [
2724
+ /* @__PURE__ */ jsx("h3", { className: cn("mb-4 text-sm font-semibold", sitemapTitleClassName), children: section.title }),
2725
+ /* @__PURE__ */ jsx("ul", { className: cn("space-y-2", sitemapLinksClassName), children: section.links.map((link) => /* @__PURE__ */ jsx("li", { children: /* @__PURE__ */ jsx(
2726
+ Pressable,
2727
+ {
2728
+ href: link.href,
2729
+ className: cn(
2730
+ "text-sm text-muted-foreground transition-colors hover:text-foreground",
2731
+ sitemapLinkClassName
2732
+ ),
2733
+ children: link.label
2734
+ }
2735
+ ) }, link.href)) })
2736
+ ] }, section.title));
2737
+ }, [sitemap, sitemapSectionClassName, sitemapTitleClassName, sitemapLinksClassName, sitemapLinkClassName]);
2738
+ const bottomLinksContent = useMemo(() => {
2739
+ if (!bottomLinks || bottomLinks.length === 0) return null;
2740
+ return bottomLinks.map((link, idx) => /* @__PURE__ */ jsxs(React4.Fragment, { children: [
2741
+ idx > 0 && /* @__PURE__ */ jsx("span", { className: "text-muted-foreground", children: "\u2022" }),
2742
+ /* @__PURE__ */ jsx(
2743
+ Pressable,
2744
+ {
2745
+ href: link.href,
2746
+ className: cn(
2747
+ "text-sm text-muted-foreground transition-colors hover:text-foreground",
2748
+ bottomLinkClassName
2749
+ ),
2750
+ children: link.text
2751
+ }
2752
+ )
2753
+ ] }, link.href));
2754
+ }, [bottomLinks, bottomLinkClassName]);
1934
2755
  return /* @__PURE__ */ jsx(
1935
2756
  Section,
1936
2757
  {
@@ -1949,7 +2770,7 @@ function FooterSimpleCentered({
1949
2770
  ),
1950
2771
  children: [
1951
2772
  /* @__PURE__ */ jsxs("div", { className: cn("max-w-96", brandClassName), children: [
1952
- /* @__PURE__ */ jsxs(
2773
+ (logo?.src || logo?.title) && /* @__PURE__ */ jsxs(
1953
2774
  "div",
1954
2775
  {
1955
2776
  className: cn(
@@ -1957,10 +2778,10 @@ function FooterSimpleCentered({
1957
2778
  logoWrapperClassName
1958
2779
  ),
1959
2780
  children: [
1960
- /* @__PURE__ */ jsx("div", { className: "flex size-12 items-center justify-center rounded-lg border border-border bg-accent p-2", children: /* @__PURE__ */ jsx(
2781
+ logo?.src && /* @__PURE__ */ jsx("div", { className: "flex size-12 items-center justify-center rounded-lg border border-border bg-accent p-2", children: /* @__PURE__ */ jsx(
1961
2782
  Img,
1962
2783
  {
1963
- src: logo?.src,
2784
+ src: logo.src,
1964
2785
  alt: logo?.alt,
1965
2786
  className: cn(
1966
2787
  "size-12 h-full w-full object-contain object-center",
@@ -1969,11 +2790,11 @@ function FooterSimpleCentered({
1969
2790
  optixFlowConfig
1970
2791
  }
1971
2792
  ) }),
1972
- /* @__PURE__ */ jsx("h3", { className: cn("text-xl font-bold", logoTitleClassName), children: logo?.title })
2793
+ logo?.title && /* @__PURE__ */ jsx("h3", { className: cn("text-xl font-bold", logoTitleClassName), children: logo.title })
1973
2794
  ]
1974
2795
  }
1975
2796
  ),
1976
- /* @__PURE__ */ jsx(
2797
+ tagline && /* @__PURE__ */ jsx(
1977
2798
  "p",
1978
2799
  {
1979
2800
  className: cn(
@@ -1991,45 +2812,7 @@ function FooterSimpleCentered({
1991
2812
  "flex flex-col items-start gap-x-20 gap-y-14 xl:flex-row",
1992
2813
  sitemapWrapperClassName
1993
2814
  ),
1994
- children: /* @__PURE__ */ jsx("div", { className: "inline-grid w-fit grid-cols-1 gap-x-20 gap-y-14 sm:grid-cols-2", children: sitemap?.map((section) => /* @__PURE__ */ jsxs(
1995
- "div",
1996
- {
1997
- className: cn("h-fit w-min", sitemapSectionClassName),
1998
- children: [
1999
- /* @__PURE__ */ jsx(
2000
- "h4",
2001
- {
2002
- className: cn(
2003
- "mb-6 text-base font-semibold whitespace-nowrap",
2004
- sitemapTitleClassName
2005
- ),
2006
- children: section.title
2007
- }
2008
- ),
2009
- /* @__PURE__ */ jsx(
2010
- "ul",
2011
- {
2012
- className: cn(
2013
- "space-y-3 text-base font-medium text-muted-foreground",
2014
- sitemapLinksClassName
2015
- ),
2016
- children: section.links.map((link) => /* @__PURE__ */ jsx("li", { children: /* @__PURE__ */ jsx(
2017
- Pressable,
2018
- {
2019
- href: link.href,
2020
- className: cn(
2021
- "text-base whitespace-nowrap hover:text-accent-foreground",
2022
- sitemapLinkClassName
2023
- ),
2024
- children: link.label
2025
- }
2026
- ) }, String(link.label)))
2027
- }
2028
- )
2029
- ]
2030
- },
2031
- section.title
2032
- )) })
2815
+ children: /* @__PURE__ */ jsx("div", { className: "inline-grid w-fit grid-cols-1 gap-x-20 gap-y-14 sm:grid-cols-2", children: sitemapContent })
2033
2816
  }
2034
2817
  )
2035
2818
  ]
@@ -2051,8 +2834,8 @@ function FooterSimpleCentered({
2051
2834
  copyrightClassName
2052
2835
  ),
2053
2836
  children: [
2054
- /* @__PURE__ */ jsx("span", { children: copyright }),
2055
- /* @__PURE__ */ jsx(
2837
+ copyright && /* @__PURE__ */ jsx("span", { children: copyright }),
2838
+ attributionHref && attributionText && /* @__PURE__ */ jsx(
2056
2839
  Pressable,
2057
2840
  {
2058
2841
  href: attributionHref,
@@ -2072,18 +2855,7 @@ function FooterSimpleCentered({
2072
2855
  "flex flex-col items-start gap-4 text-xs text-muted-foreground sm:text-sm md:flex-row lg:items-center",
2073
2856
  bottomLinksClassName
2074
2857
  ),
2075
- children: bottomLinks?.map((link, idx) => /* @__PURE__ */ jsx(
2076
- Pressable,
2077
- {
2078
- href: link.href,
2079
- className: cn(
2080
- "hover:text-accent-foreground",
2081
- bottomLinkClassName
2082
- ),
2083
- children: link.text
2084
- },
2085
- idx
2086
- ))
2858
+ children: bottomLinksContent
2087
2859
  }
2088
2860
  )
2089
2861
  ]
@@ -2094,18 +2866,13 @@ function FooterSimpleCentered({
2094
2866
  );
2095
2867
  }
2096
2868
  function FooterBrandDescription({
2097
- logo = {
2098
- url: "https://opensite.ai",
2099
- src: "https://cdn.ing/assets/i/r/285975/eud79qeya11q5w6ueyhklueardyx/os-suircle-black-white.png",
2100
- alt: "Opensite AI",
2101
- title: "Opensite AI"
2102
- },
2869
+ logo,
2103
2870
  sections,
2104
2871
  description,
2105
2872
  socialLinks,
2106
2873
  copyright,
2107
2874
  attributionText,
2108
- attributionHref = "https://opensite.ai",
2875
+ attributionHref,
2109
2876
  legalLinks,
2110
2877
  className,
2111
2878
  contentClassName,
@@ -2126,13 +2893,13 @@ function FooterBrandDescription({
2126
2893
  copyrightClassName,
2127
2894
  legalLinksClassName,
2128
2895
  legalLinkClassName,
2129
- background = "white",
2130
- spacing = "lg",
2896
+ background,
2897
+ spacing,
2131
2898
  pattern,
2132
2899
  patternOpacity,
2133
2900
  optixFlowConfig
2134
2901
  }) {
2135
- const currentYear = (/* @__PURE__ */ new Date()).getFullYear();
2902
+ const currentYear = useMemo(() => (/* @__PURE__ */ new Date()).getFullYear(), []);
2136
2903
  const copyrightText = copyright ?? `\xA9 ${currentYear} Opensite AI. All rights reserved.`;
2137
2904
  return /* @__PURE__ */ jsx(
2138
2905
  Section,
@@ -2144,8 +2911,8 @@ function FooterBrandDescription({
2144
2911
  className: cn(className),
2145
2912
  children: /* @__PURE__ */ jsxs("div", { className: cn(contentClassName), children: [
2146
2913
  /* @__PURE__ */ jsxs("div", { className: cn("flex w-full flex-col justify-between gap-10 lg:flex-row lg:items-start lg:text-left", layoutClassName), children: [
2147
- /* @__PURE__ */ jsxs("div", { className: cn("flex w-full flex-col justify-between gap-6 lg:items-start", brandColumnClassName), children: [
2148
- /* @__PURE__ */ jsxs("div", { className: cn("flex items-center gap-2 lg:justify-start", logoWrapperClassName), children: [
2914
+ (logo || description || socialLinks && socialLinks.length > 0) && /* @__PURE__ */ jsxs("div", { className: cn("flex w-full flex-col justify-between gap-6 lg:items-start", brandColumnClassName), children: [
2915
+ logo && /* @__PURE__ */ jsxs("div", { className: cn("flex items-center gap-2 lg:justify-start", logoWrapperClassName), children: [
2149
2916
  /* @__PURE__ */ jsx(Pressable, { href: logo.url, children: /* @__PURE__ */ jsx(
2150
2917
  Img,
2151
2918
  {
@@ -2157,10 +2924,10 @@ function FooterBrandDescription({
2157
2924
  ) }),
2158
2925
  /* @__PURE__ */ jsx("h2", { className: cn("text-xl font-semibold", logoTitleClassName), children: logo.title })
2159
2926
  ] }),
2160
- /* @__PURE__ */ jsx("p", { className: cn("max-w-[70%] text-sm text-muted-foreground", descriptionClassName), children: description }),
2161
- /* @__PURE__ */ jsx("ul", { className: cn("flex items-center space-x-6 text-muted-foreground", socialLinksClassName), children: socialLinks?.map((social, idx) => /* @__PURE__ */ jsx("li", { className: cn("font-medium hover:text-primary", socialLinkClassName), children: /* @__PURE__ */ jsx(Pressable, { href: social.href, "aria-label": social.label, children: /* @__PURE__ */ jsx(DynamicIcon, { name: social.icon, size: 20 }) }) }, idx)) })
2927
+ description && /* @__PURE__ */ jsx("p", { className: cn("max-w-[70%] text-sm text-muted-foreground", descriptionClassName), children: description }),
2928
+ socialLinks && socialLinks.length > 0 && /* @__PURE__ */ jsx("ul", { className: cn("flex items-center space-x-6 text-muted-foreground", socialLinksClassName), children: socialLinks.map((social, idx) => /* @__PURE__ */ jsx("li", { className: cn("font-medium hover:text-primary", socialLinkClassName), children: /* @__PURE__ */ jsx(Pressable, { href: social.href, "aria-label": social.label, children: /* @__PURE__ */ jsx(DynamicIcon, { name: social.icon, size: 20 }) }) }, idx)) })
2162
2929
  ] }),
2163
- /* @__PURE__ */ jsx("div", { className: cn("grid w-full gap-6 md:grid-cols-3 lg:gap-20", navGridClassName), children: sections?.map((section, sectionIdx) => /* @__PURE__ */ jsxs("div", { className: cn(navSectionClassName), children: [
2930
+ sections && sections.length > 0 && /* @__PURE__ */ jsx("div", { className: cn("grid w-full gap-6 md:grid-cols-3 lg:gap-20", navGridClassName), children: sections.map((section, sectionIdx) => /* @__PURE__ */ jsxs("div", { className: cn(navSectionClassName), children: [
2164
2931
  /* @__PURE__ */ jsx("h3", { className: cn("mb-4 font-bold", navTitleClassName), children: section.title }),
2165
2932
  /* @__PURE__ */ jsx("ul", { className: cn("space-y-3 text-sm text-muted-foreground", navLinksClassName), children: section.links.map((link, linkIdx) => /* @__PURE__ */ jsx(
2166
2933
  "li",
@@ -2175,10 +2942,10 @@ function FooterBrandDescription({
2175
2942
  /* @__PURE__ */ jsxs("div", { className: cn("mt-8 flex flex-col justify-between gap-4 border-t py-8 text-xs font-medium text-muted-foreground md:flex-row md:items-center md:text-left", bottomClassName), children: [
2176
2943
  /* @__PURE__ */ jsxs("div", { className: cn("order-2 flex flex-col gap-2 lg:order-1 lg:flex-row lg:items-center lg:gap-4", copyrightClassName), children: [
2177
2944
  /* @__PURE__ */ jsx("p", { children: copyrightText }),
2178
- /* @__PURE__ */ jsx(
2945
+ attributionText && /* @__PURE__ */ jsx(
2179
2946
  Pressable,
2180
2947
  {
2181
- href: attributionHref,
2948
+ href: attributionHref || "https://opensite.ai",
2182
2949
  className: "hover:text-primary",
2183
2950
  target: "_blank",
2184
2951
  rel: "noopener noreferrer",
@@ -2186,138 +2953,135 @@ function FooterBrandDescription({
2186
2953
  }
2187
2954
  )
2188
2955
  ] }),
2189
- /* @__PURE__ */ jsx("ul", { className: cn("order-1 flex flex-col gap-2 md:order-2 md:flex-row", legalLinksClassName), children: legalLinks?.map((link, idx) => /* @__PURE__ */ jsx("li", { className: cn("hover:text-primary", legalLinkClassName), children: /* @__PURE__ */ jsx(Pressable, { href: link.href, children: link.name }) }, idx)) })
2956
+ legalLinks && legalLinks.length > 0 && /* @__PURE__ */ jsx("ul", { className: cn("order-1 flex flex-col gap-2 md:order-2 md:flex-row", legalLinksClassName), children: legalLinks.map((link, idx) => /* @__PURE__ */ jsx("li", { className: cn("hover:text-primary", legalLinkClassName), children: /* @__PURE__ */ jsx(Pressable, { href: link.href, children: link.name }) }, idx)) })
2190
2957
  ] })
2191
2958
  ] })
2192
2959
  }
2193
2960
  );
2194
2961
  }
2195
2962
  function FooterNewsletterGrid({
2196
- logo = {
2197
- url: "https://opensite.ai",
2198
- src: "https://cdn.ing/assets/i/r/285975/eud79qeya11q5w6ueyhklueardyx/os-suircle-black-white.png",
2199
- alt: "Opensite AI",
2200
- title: "Opensite AI"
2201
- },
2963
+ logo,
2202
2964
  className,
2203
2965
  description,
2204
2966
  sections,
2205
2967
  socialLinks,
2206
2968
  newsletterTitle,
2207
- newsletterPlaceholder = "Email",
2969
+ newsletterPlaceholder,
2208
2970
  newsletterButtonText,
2209
2971
  privacyText,
2210
2972
  privacyLinkText,
2211
- privacyLinkUrl = "#",
2973
+ privacyLinkUrl,
2212
2974
  copyright,
2975
+ background,
2976
+ spacing,
2977
+ pattern,
2978
+ patternOpacity,
2213
2979
  optixFlowConfig
2214
2980
  }) {
2215
- return /* @__PURE__ */ jsx("section", { className: cn("py-32", className), children: /* @__PURE__ */ jsx("div", { className: "container", children: /* @__PURE__ */ jsxs("footer", { children: [
2216
- /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-4 justify-between gap-10 lg:grid-cols-6 lg:text-left", children: [
2217
- /* @__PURE__ */ jsxs("div", { className: "col-span-4 flex w-full flex-col gap-6 lg:col-span-2", children: [
2218
- /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2 lg:justify-start", children: [
2219
- /* @__PURE__ */ jsx(Pressable, { href: logo.url, children: /* @__PURE__ */ jsx(
2220
- Img,
2221
- {
2222
- src: logo.src,
2223
- alt: logo.alt,
2224
- className: "h-8",
2225
- optixFlowConfig
2226
- }
2227
- ) }),
2228
- /* @__PURE__ */ jsx("h2", { className: "text-xl font-semibold", children: logo.title })
2229
- ] }),
2230
- /* @__PURE__ */ jsx("p", { className: "text-muted-foreground", children: description }),
2231
- /* @__PURE__ */ jsx("ul", { className: "flex items-center space-x-6", children: socialLinks?.map((social, idx) => /* @__PURE__ */ jsx(
2232
- "li",
2233
- {
2234
- className: "font-medium duration-200 hover:scale-110 hover:text-muted-foreground",
2235
- children: /* @__PURE__ */ jsx(Pressable, { href: social.href, "aria-label": social.label, children: /* @__PURE__ */ jsx(DynamicIcon, { name: social.icon, size: 24 }) })
2236
- },
2237
- idx
2238
- )) })
2239
- ] }),
2240
- sections?.map((section, sectionIdx) => /* @__PURE__ */ jsxs("div", { className: "col-span-2 md:col-span-1", children: [
2241
- /* @__PURE__ */ jsx("h3", { className: "mb-5 font-medium", children: section.title }),
2242
- /* @__PURE__ */ jsx("ul", { className: "space-y-4 text-sm text-muted-foreground", children: section.links.map((link, linkIdx) => /* @__PURE__ */ jsx(
2243
- "li",
2244
- {
2245
- className: "font-medium hover:text-primary",
2246
- children: /* @__PURE__ */ jsx(Pressable, { href: link.href, children: link.name })
2247
- },
2248
- linkIdx
2249
- )) })
2250
- ] }, sectionIdx)),
2251
- /* @__PURE__ */ jsxs("div", { className: "col-span-4 md:col-span-2", children: [
2252
- /* @__PURE__ */ jsx("h3", { className: "mb-5 font-medium", children: newsletterTitle }),
2253
- /* @__PURE__ */ jsx("div", { className: "grid gap-1.5", children: /* @__PURE__ */ jsxs("div", { className: "flex w-full items-center space-x-2", children: [
2254
- /* @__PURE__ */ jsx(
2255
- "input",
2256
- {
2257
- type: "email",
2258
- placeholder: newsletterPlaceholder,
2259
- className: "flex h-10 w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50"
2260
- }
2261
- ),
2262
- /* @__PURE__ */ jsx(
2263
- "button",
2264
- {
2265
- type: "submit",
2266
- className: "inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 bg-primary text-primary-foreground hover:bg-primary/90 h-10 px-4 py-2",
2267
- children: newsletterButtonText
2268
- }
2269
- )
2270
- ] }) }),
2271
- /* @__PURE__ */ jsxs("p", { className: "mt-1 text-xs font-medium text-muted-foreground", children: [
2272
- privacyText,
2273
- /* @__PURE__ */ jsx(
2274
- Pressable,
2275
- {
2276
- href: privacyLinkUrl,
2277
- className: "ml-1 text-primary hover:underline",
2278
- children: privacyLinkText
2279
- }
2280
- )
2281
- ] })
2282
- ] })
2283
- ] }),
2284
- /* @__PURE__ */ jsxs("div", { className: "mt-20 flex flex-col justify-between gap-4 border-t pt-8 text-sm font-medium text-muted-foreground lg:flex-row lg:items-center lg:text-left", children: [
2285
- /* @__PURE__ */ jsx("div", { className: "flex flex-col gap-2 lg:flex-row lg:items-center lg:gap-4", children: /* @__PURE__ */ jsxs("p", { children: [
2286
- /* @__PURE__ */ jsx("span", { className: "mr-1 font-bold text-primary", children: "Opensite AI" }),
2287
- copyright
2288
- ] }) }),
2289
- /* @__PURE__ */ jsx(
2290
- Pressable,
2981
+ const sectionsContent = useMemo(() => {
2982
+ if (!sections || sections.length === 0) return null;
2983
+ return sections.map((section, sectionIdx) => /* @__PURE__ */ jsxs("div", { className: "col-span-2 md:col-span-1", children: [
2984
+ /* @__PURE__ */ jsx("h3", { className: "mb-5 font-medium", children: section.title }),
2985
+ /* @__PURE__ */ jsx("ul", { className: "space-y-4 text-sm text-muted-foreground", children: section.links.map((link, linkIdx) => /* @__PURE__ */ jsx(
2986
+ "li",
2291
2987
  {
2292
- href: "https://opensite.ai",
2293
- className: "hover:text-primary",
2294
- target: "_blank",
2295
- rel: "noopener noreferrer",
2296
- children: "AI Website and Automation Platform by Opensite"
2297
- }
2298
- )
2299
- ] })
2300
- ] }) }) });
2988
+ className: "font-medium hover:text-primary",
2989
+ children: /* @__PURE__ */ jsx(Pressable, { href: link.href, children: link.name })
2990
+ },
2991
+ linkIdx
2992
+ )) })
2993
+ ] }, sectionIdx));
2994
+ }, [sections]);
2995
+ const socialLinksContent = useMemo(() => {
2996
+ if (!socialLinks || socialLinks.length === 0) return null;
2997
+ return socialLinks.map((social, idx) => /* @__PURE__ */ jsx(
2998
+ "li",
2999
+ {
3000
+ className: "font-medium duration-200 hover:scale-110 hover:text-muted-foreground",
3001
+ children: /* @__PURE__ */ jsx(Pressable, { href: social.href, "aria-label": social.label, children: /* @__PURE__ */ jsx(DynamicIcon, { name: social.icon, size: 24 }) })
3002
+ },
3003
+ idx
3004
+ ));
3005
+ }, [socialLinks]);
3006
+ return /* @__PURE__ */ jsx(
3007
+ Section,
3008
+ {
3009
+ background,
3010
+ spacing,
3011
+ pattern,
3012
+ patternOpacity,
3013
+ className: cn(className),
3014
+ children: /* @__PURE__ */ jsx("div", { children: /* @__PURE__ */ jsxs("footer", { children: [
3015
+ /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-4 justify-between gap-10 lg:grid-cols-6 lg:text-left", children: [
3016
+ /* @__PURE__ */ jsxs("div", { className: "col-span-4 flex w-full flex-col gap-6 lg:col-span-2", children: [
3017
+ logo && /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2 lg:justify-start", children: [
3018
+ /* @__PURE__ */ jsx(Pressable, { href: logo.url, children: logo.src && /* @__PURE__ */ jsx(
3019
+ Img,
3020
+ {
3021
+ src: logo.src,
3022
+ alt: logo.alt,
3023
+ className: "h-8",
3024
+ optixFlowConfig
3025
+ }
3026
+ ) }),
3027
+ logo.title && /* @__PURE__ */ jsx("h2", { className: "text-xl font-semibold", children: logo.title })
3028
+ ] }),
3029
+ description && /* @__PURE__ */ jsx("p", { className: "text-muted-foreground", children: description }),
3030
+ socialLinks && socialLinks.length > 0 && /* @__PURE__ */ jsx("ul", { className: "flex items-center space-x-6", children: socialLinksContent })
3031
+ ] }),
3032
+ sectionsContent,
3033
+ (newsletterTitle || newsletterButtonText) && /* @__PURE__ */ jsxs("div", { className: "col-span-4 md:col-span-2", children: [
3034
+ newsletterTitle && /* @__PURE__ */ jsx("h3", { className: "mb-5 font-medium", children: newsletterTitle }),
3035
+ /* @__PURE__ */ jsx("div", { className: "grid gap-1.5", children: /* @__PURE__ */ jsxs("div", { className: "flex w-full items-center space-x-2", children: [
3036
+ /* @__PURE__ */ jsx(
3037
+ "input",
3038
+ {
3039
+ type: "email",
3040
+ placeholder: newsletterPlaceholder,
3041
+ className: "flex h-10 w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50"
3042
+ }
3043
+ ),
3044
+ newsletterButtonText && /* @__PURE__ */ jsx(
3045
+ "button",
3046
+ {
3047
+ type: "submit",
3048
+ className: "inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 bg-primary text-primary-foreground hover:bg-primary/90 h-10 px-4 py-2",
3049
+ children: newsletterButtonText
3050
+ }
3051
+ )
3052
+ ] }) }),
3053
+ (privacyText || privacyLinkText) && /* @__PURE__ */ jsxs("p", { className: "mt-1 text-xs font-medium text-muted-foreground", children: [
3054
+ privacyText,
3055
+ privacyLinkText && privacyLinkUrl && /* @__PURE__ */ jsx(
3056
+ Pressable,
3057
+ {
3058
+ href: privacyLinkUrl,
3059
+ className: "ml-1 text-primary hover:underline",
3060
+ children: privacyLinkText
3061
+ }
3062
+ )
3063
+ ] })
3064
+ ] })
3065
+ ] }),
3066
+ copyright && /* @__PURE__ */ jsx("div", { className: "mt-20 flex flex-col justify-between gap-4 border-t pt-8 text-sm font-medium text-muted-foreground lg:flex-row lg:items-center lg:text-left", children: /* @__PURE__ */ jsx("p", { children: copyright }) })
3067
+ ] }) })
3068
+ }
3069
+ );
2301
3070
  }
2302
3071
  function FooterCtaBanner({
2303
- logo = {
2304
- url: "https://opensite.ai",
2305
- src: "https://cdn.ing/assets/i/r/285975/eud79qeya11q5w6ueyhklueardyx/os-suircle-black-white.png",
2306
- alt: "Opensite AI",
2307
- title: "Opensite AI"
2308
- },
3072
+ logo,
2309
3073
  ctaHeading,
2310
3074
  ctaDescription,
2311
3075
  ctaButtonText,
2312
- ctaButtonUrl = "#",
3076
+ ctaButtonUrl,
2313
3077
  sections,
2314
3078
  socialLinks,
2315
3079
  newsletterLabel,
2316
- newsletterPlaceholder = "Enter your email",
3080
+ newsletterPlaceholder,
2317
3081
  newsletterButtonText,
2318
3082
  copyright,
2319
3083
  attributionText,
2320
- attributionHref = "https://opensite.ai",
3084
+ attributionHref,
2321
3085
  legalLinks,
2322
3086
  className,
2323
3087
  contentClassName,
@@ -2343,13 +3107,13 @@ function FooterCtaBanner({
2343
3107
  copyrightClassName,
2344
3108
  legalLinksClassName,
2345
3109
  legalLinkClassName,
2346
- background = "dark",
2347
- spacing = "lg",
3110
+ background,
3111
+ spacing,
2348
3112
  pattern,
2349
3113
  patternOpacity,
2350
3114
  optixFlowConfig
2351
3115
  }) {
2352
- const currentYear = (/* @__PURE__ */ new Date()).getFullYear();
3116
+ const currentYear = useMemo(() => (/* @__PURE__ */ new Date()).getFullYear(), []);
2353
3117
  const copyrightText = copyright ?? `\xA9 ${currentYear} Opensite AI. All rights reserved.`;
2354
3118
  return /* @__PURE__ */ jsx(
2355
3119
  Section,
@@ -2374,13 +3138,13 @@ function FooterCtaBanner({
2374
3138
  ] }),
2375
3139
  /* @__PURE__ */ jsxs("div", { className: cn("grid gap-10 lg:grid-cols-5", gridClassName), children: [
2376
3140
  /* @__PURE__ */ jsxs("div", { className: cn("lg:col-span-2", brandClassName), children: [
2377
- /* @__PURE__ */ jsxs(
3141
+ logo && /* @__PURE__ */ jsxs(
2378
3142
  Pressable,
2379
3143
  {
2380
3144
  href: logo.url,
2381
3145
  className: cn("mb-6 flex items-center gap-2", logoWrapperClassName),
2382
3146
  children: [
2383
- /* @__PURE__ */ jsx(
3147
+ logo.src && /* @__PURE__ */ jsx(
2384
3148
  Img,
2385
3149
  {
2386
3150
  src: logo.src,
@@ -2389,7 +3153,7 @@ function FooterCtaBanner({
2389
3153
  optixFlowConfig
2390
3154
  }
2391
3155
  ),
2392
- /* @__PURE__ */ jsx("span", { className: cn("text-xl font-semibold", logoTitleClassName), children: logo.title })
3156
+ logo.title && /* @__PURE__ */ jsx("span", { className: cn("text-xl font-semibold", logoTitleClassName), children: logo.title })
2393
3157
  ]
2394
3158
  }
2395
3159
  ),
@@ -2457,12 +3221,7 @@ function FooterCtaBanner({
2457
3221
  );
2458
3222
  }
2459
3223
  function FooterContactCard({
2460
- logo = {
2461
- url: "https://opensite.ai",
2462
- src: "https://cdn.ing/assets/i/r/285975/eud79qeya11q5w6ueyhklueardyx/os-suircle-black-white.png",
2463
- alt: "Opensite AI",
2464
- title: "Opensite AI"
2465
- },
3224
+ logo,
2466
3225
  heading,
2467
3226
  email,
2468
3227
  phone,
@@ -2474,7 +3233,7 @@ function FooterContactCard({
2474
3233
  locationLabel,
2475
3234
  copyright,
2476
3235
  attributionText,
2477
- attributionHref = "https://opensite.ai",
3236
+ attributionHref,
2478
3237
  className,
2479
3238
  contentClassName,
2480
3239
  gridClassName,
@@ -2494,13 +3253,13 @@ function FooterContactCard({
2494
3253
  bottomClassName,
2495
3254
  copyrightClassName,
2496
3255
  locationClassName,
2497
- background = "white",
2498
- spacing = "lg",
3256
+ background,
3257
+ spacing,
2499
3258
  pattern,
2500
3259
  patternOpacity,
2501
3260
  optixFlowConfig
2502
3261
  }) {
2503
- const currentYear = (/* @__PURE__ */ new Date()).getFullYear();
3262
+ const currentYear = useMemo(() => (/* @__PURE__ */ new Date()).getFullYear(), []);
2504
3263
  const copyrightText = copyright ?? `\xA9 ${currentYear} Opensite AI. All rights reserved.`;
2505
3264
  return /* @__PURE__ */ jsx(
2506
3265
  Section,
@@ -2513,7 +3272,7 @@ function FooterContactCard({
2513
3272
  children: /* @__PURE__ */ jsx("div", { className: cn(contentClassName), children: /* @__PURE__ */ jsxs("footer", { children: [
2514
3273
  /* @__PURE__ */ jsxs("div", { className: cn("grid gap-12 lg:grid-cols-2", gridClassName), children: [
2515
3274
  /* @__PURE__ */ jsxs("div", { className: cn(leftColumnClassName), children: [
2516
- /* @__PURE__ */ jsxs(
3275
+ logo && /* @__PURE__ */ jsxs(
2517
3276
  Pressable,
2518
3277
  {
2519
3278
  href: logo.url,
@@ -2532,9 +3291,9 @@ function FooterContactCard({
2532
3291
  ]
2533
3292
  }
2534
3293
  ),
2535
- /* @__PURE__ */ jsx("h2", { className: cn("mb-8 text-4xl font-bold tracking-tight md:text-5xl lg:text-6xl", headingClassName), children: heading }),
2536
- /* @__PURE__ */ jsxs("div", { className: cn("space-y-4 text-muted-foreground", contactClassName), children: [
2537
- /* @__PURE__ */ jsx("p", { children: /* @__PURE__ */ jsx(
3294
+ heading && /* @__PURE__ */ jsx("h2", { className: cn("mb-8 text-4xl font-bold tracking-tight md:text-5xl lg:text-6xl", headingClassName), children: heading }),
3295
+ (email || phone || address) && /* @__PURE__ */ jsxs("div", { className: cn("space-y-4 text-muted-foreground", contactClassName), children: [
3296
+ email && /* @__PURE__ */ jsx("p", { children: /* @__PURE__ */ jsx(
2538
3297
  Pressable,
2539
3298
  {
2540
3299
  href: `mailto:${email}`,
@@ -2542,7 +3301,7 @@ function FooterContactCard({
2542
3301
  children: email
2543
3302
  }
2544
3303
  ) }),
2545
- /* @__PURE__ */ jsx("p", { children: /* @__PURE__ */ jsx(
3304
+ phone && /* @__PURE__ */ jsx("p", { children: /* @__PURE__ */ jsx(
2546
3305
  Pressable,
2547
3306
  {
2548
3307
  href: `tel:${phone}`,
@@ -2550,13 +3309,13 @@ function FooterContactCard({
2550
3309
  children: phone
2551
3310
  }
2552
3311
  ) }),
2553
- /* @__PURE__ */ jsx("p", { children: address })
3312
+ address && /* @__PURE__ */ jsx("p", { children: address })
2554
3313
  ] })
2555
3314
  ] }),
2556
3315
  /* @__PURE__ */ jsxs("div", { className: cn("flex flex-col justify-between", rightColumnClassName), children: [
2557
- /* @__PURE__ */ jsxs("div", { className: cn(socialSectionClassName), children: [
2558
- /* @__PURE__ */ jsx("p", { className: cn("mb-4 font-medium", socialTitleClassName), children: socialTitle }),
2559
- /* @__PURE__ */ jsx("ul", { className: cn("flex items-center gap-4", socialLinksClassName), children: socialLinks?.map((social, idx) => /* @__PURE__ */ jsx("li", { children: /* @__PURE__ */ jsx(
3316
+ (socialTitle || socialLinks && socialLinks.length > 0) && /* @__PURE__ */ jsxs("div", { className: cn(socialSectionClassName), children: [
3317
+ socialTitle && /* @__PURE__ */ jsx("p", { className: cn("mb-4 font-medium", socialTitleClassName), children: socialTitle }),
3318
+ socialLinks && socialLinks.length > 0 && /* @__PURE__ */ jsx("ul", { className: cn("flex items-center gap-4", socialLinksClassName), children: socialLinks.map((social, idx) => /* @__PURE__ */ jsx("li", { children: /* @__PURE__ */ jsx(
2560
3319
  Pressable,
2561
3320
  {
2562
3321
  href: social.href,
@@ -2566,7 +3325,7 @@ function FooterContactCard({
2566
3325
  }
2567
3326
  ) }, idx)) })
2568
3327
  ] }),
2569
- /* @__PURE__ */ jsx("nav", { className: cn("mt-8", navClassName), children: /* @__PURE__ */ jsx("ul", { className: "flex flex-wrap gap-6", children: navLinks?.map((link, idx) => /* @__PURE__ */ jsx("li", { children: /* @__PURE__ */ jsx(
3328
+ navLinks && navLinks.length > 0 && /* @__PURE__ */ jsx("nav", { className: cn("mt-8", navClassName), children: /* @__PURE__ */ jsx("ul", { className: "flex flex-wrap gap-6", children: navLinks.map((link, idx) => /* @__PURE__ */ jsx("li", { children: /* @__PURE__ */ jsx(
2570
3329
  Pressable,
2571
3330
  {
2572
3331
  href: link.href,
@@ -2579,10 +3338,10 @@ function FooterContactCard({
2579
3338
  /* @__PURE__ */ jsxs("div", { className: cn("mt-16 flex flex-col justify-between gap-4 border-t pt-8 text-sm text-muted-foreground md:flex-row md:items-center", bottomClassName), children: [
2580
3339
  /* @__PURE__ */ jsxs("div", { className: cn("flex flex-col gap-2 md:flex-row md:items-center md:gap-4", copyrightClassName), children: [
2581
3340
  /* @__PURE__ */ jsx("p", { children: copyrightText }),
2582
- /* @__PURE__ */ jsx(
3341
+ attributionText && /* @__PURE__ */ jsx(
2583
3342
  Pressable,
2584
3343
  {
2585
- href: attributionHref,
3344
+ href: attributionHref || "https://opensite.ai",
2586
3345
  className: "hover:text-primary",
2587
3346
  target: "_blank",
2588
3347
  rel: "noopener noreferrer",
@@ -2590,10 +3349,10 @@ function FooterContactCard({
2590
3349
  }
2591
3350
  )
2592
3351
  ] }),
2593
- /* @__PURE__ */ jsxs("p", { className: cn(locationClassName), children: [
3352
+ (locationLabel || location) && /* @__PURE__ */ jsxs("p", { className: cn(locationClassName), children: [
2594
3353
  locationLabel,
2595
3354
  " ",
2596
- /* @__PURE__ */ jsx("strong", { children: location })
3355
+ location && /* @__PURE__ */ jsx("strong", { children: location })
2597
3356
  ] })
2598
3357
  ] })
2599
3358
  ] }) })
@@ -2601,24 +3360,19 @@ function FooterContactCard({
2601
3360
  );
2602
3361
  }
2603
3362
  function FooterBackgroundCard({
2604
- logo = {
2605
- url: "https://opensite.ai",
2606
- src: "https://cdn.ing/assets/i/r/285975/eud79qeya11q5w6ueyhklueardyx/os-suircle-black-white.png",
2607
- alt: "Opensite AI",
2608
- title: "Opensite AI"
2609
- },
2610
- backgroundImage = "https://images.unsplash.com/photo-1506905925346-21bda4d32df4?w=1920&q=80",
2611
- profileImage = "https://images.unsplash.com/photo-1472099645785-5658abf4ff4e?w=200&q=80",
3363
+ logo,
3364
+ backgroundImage,
3365
+ profileImage,
2612
3366
  tagline,
2613
3367
  personalMessage,
2614
3368
  ctaText,
2615
- ctaUrl = "#",
3369
+ ctaUrl,
2616
3370
  contactTitle,
2617
3371
  contact,
2618
3372
  menuItems,
2619
3373
  copyright,
2620
3374
  attributionText,
2621
- attributionHref = "https://opensite.ai",
3375
+ attributionHref,
2622
3376
  bottomLinks,
2623
3377
  className,
2624
3378
  cardClassName,
@@ -2637,14 +3391,18 @@ function FooterBackgroundCard({
2637
3391
  bottomClassName,
2638
3392
  copyrightClassName,
2639
3393
  bottomLinksClassName,
2640
- background = "white",
2641
- spacing = "lg",
3394
+ background,
3395
+ spacing,
2642
3396
  pattern,
2643
3397
  patternOpacity,
2644
3398
  optixFlowConfig
2645
3399
  }) {
2646
- const currentYear = (/* @__PURE__ */ new Date()).getFullYear();
3400
+ const currentYear = useMemo(() => (/* @__PURE__ */ new Date()).getFullYear(), []);
2647
3401
  const copyrightText = copyright ?? `\xA9 ${currentYear} Opensite AI. All rights reserved.`;
3402
+ const sectionStyle = useMemo(
3403
+ () => backgroundImage ? { backgroundImage: `url('${backgroundImage}')` } : void 0,
3404
+ [backgroundImage]
3405
+ );
2648
3406
  return /* @__PURE__ */ jsx(
2649
3407
  Section,
2650
3408
  {
@@ -2653,14 +3411,12 @@ function FooterBackgroundCard({
2653
3411
  pattern,
2654
3412
  patternOpacity,
2655
3413
  className: cn("bg-cover bg-center bg-no-repeat", className),
2656
- style: {
2657
- backgroundImage: `url('${backgroundImage}')`
2658
- },
3414
+ style: sectionStyle,
2659
3415
  children: /* @__PURE__ */ jsxs("div", { className: cn("mx-auto max-w-7xl rounded-lg bg-background p-8 shadow-lg md:p-12", cardClassName), children: [
2660
3416
  /* @__PURE__ */ jsxs("div", { className: cn("grid grid-cols-1 gap-8 md:grid-cols-2 lg:grid-cols-4 lg:gap-12", gridClassName), children: [
2661
- /* @__PURE__ */ jsxs("div", { className: cn("lg:col-span-1", profileSectionClassName), children: [
2662
- /* @__PURE__ */ jsxs("div", { className: "mb-4 flex items-center gap-4", children: [
2663
- /* @__PURE__ */ jsx(
3417
+ (profileImage || tagline || personalMessage || ctaText) && /* @__PURE__ */ jsxs("div", { className: cn("lg:col-span-1", profileSectionClassName), children: [
3418
+ (profileImage || tagline) && /* @__PURE__ */ jsxs("div", { className: "mb-4 flex items-center gap-4", children: [
3419
+ profileImage && /* @__PURE__ */ jsx(
2664
3420
  Img,
2665
3421
  {
2666
3422
  src: profileImage,
@@ -2669,19 +3425,19 @@ function FooterBackgroundCard({
2669
3425
  optixFlowConfig
2670
3426
  }
2671
3427
  ),
2672
- /* @__PURE__ */ jsx("h3", { className: cn("text-2xl font-medium", taglineClassName), children: tagline })
3428
+ tagline && /* @__PURE__ */ jsx("h3", { className: cn("text-2xl font-medium", taglineClassName), children: tagline })
2673
3429
  ] }),
2674
- /* @__PURE__ */ jsx("p", { className: cn("mb-6 text-sm leading-relaxed text-muted-foreground", messageClassName), children: personalMessage }),
2675
- /* @__PURE__ */ jsx(
3430
+ personalMessage && /* @__PURE__ */ jsx("p", { className: cn("mb-6 text-sm leading-relaxed text-muted-foreground", messageClassName), children: personalMessage }),
3431
+ ctaText && /* @__PURE__ */ jsx(
2676
3432
  Pressable,
2677
3433
  {
2678
- href: ctaUrl,
3434
+ href: ctaUrl || "#",
2679
3435
  className: cn("inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 bg-primary text-primary-foreground hover:bg-primary/90 h-10 px-4 py-2", ctaClassName),
2680
3436
  children: ctaText
2681
3437
  }
2682
3438
  )
2683
3439
  ] }),
2684
- menuItems?.map((menu, idx) => /* @__PURE__ */ jsxs("div", { className: cn(menuSectionClassName), children: [
3440
+ menuItems && menuItems.length > 0 && menuItems.map((menu, idx) => /* @__PURE__ */ jsxs("div", { className: cn(menuSectionClassName), children: [
2685
3441
  /* @__PURE__ */ jsx("h3", { className: cn("mb-4 text-sm font-medium tracking-wider text-primary uppercase", menuTitleClassName), children: menu.title }),
2686
3442
  /* @__PURE__ */ jsx("ul", { className: "space-y-3", children: menu.links.map((link, index) => /* @__PURE__ */ jsx("li", { children: /* @__PURE__ */ jsx(
2687
3443
  Pressable,
@@ -2692,15 +3448,15 @@ function FooterBackgroundCard({
2692
3448
  }
2693
3449
  ) }, index)) })
2694
3450
  ] }, idx)),
2695
- /* @__PURE__ */ jsxs("div", { className: cn(contactSectionClassName), children: [
2696
- /* @__PURE__ */ jsx("h3", { className: cn("mb-4 text-sm font-medium tracking-wider text-primary uppercase", contactTitleClassName), children: contactTitle }),
2697
- /* @__PURE__ */ jsxs("ul", { className: "space-y-3", children: [
2698
- /* @__PURE__ */ jsx("li", { className: cn("text-muted-foreground", contactItemClassName), children: contact?.phone }),
2699
- /* @__PURE__ */ jsx("li", { className: cn("text-muted-foreground", contactItemClassName), children: contact?.email }),
2700
- /* @__PURE__ */ jsxs("li", { className: cn("text-muted-foreground", contactItemClassName), children: [
2701
- contact?.location,
2702
- " \u2022 ",
2703
- contact?.timezone
3451
+ (contactTitle || contact) && /* @__PURE__ */ jsxs("div", { className: cn(contactSectionClassName), children: [
3452
+ contactTitle && /* @__PURE__ */ jsx("h3", { className: cn("mb-4 text-sm font-medium tracking-wider text-primary uppercase", contactTitleClassName), children: contactTitle }),
3453
+ contact && /* @__PURE__ */ jsxs("ul", { className: "space-y-3", children: [
3454
+ contact.phone && /* @__PURE__ */ jsx("li", { className: cn("text-muted-foreground", contactItemClassName), children: contact.phone }),
3455
+ contact.email && /* @__PURE__ */ jsx("li", { className: cn("text-muted-foreground", contactItemClassName), children: contact.email }),
3456
+ (contact.location || contact.timezone) && /* @__PURE__ */ jsxs("li", { className: cn("text-muted-foreground", contactItemClassName), children: [
3457
+ contact.location,
3458
+ contact.location && contact.timezone && " \u2022 ",
3459
+ contact.timezone
2704
3460
  ] })
2705
3461
  ] })
2706
3462
  ] })
@@ -2708,10 +3464,10 @@ function FooterBackgroundCard({
2708
3464
  /* @__PURE__ */ jsxs("div", { className: cn("mt-12 flex flex-col items-center justify-between gap-4 border-t border-border pt-8 md:flex-row", bottomClassName), children: [
2709
3465
  /* @__PURE__ */ jsxs("div", { className: cn("flex flex-col gap-2 text-sm text-muted-foreground md:flex-row md:items-center md:gap-4", copyrightClassName), children: [
2710
3466
  /* @__PURE__ */ jsx("p", { children: copyrightText }),
2711
- /* @__PURE__ */ jsx(
3467
+ attributionText && /* @__PURE__ */ jsx(
2712
3468
  Pressable,
2713
3469
  {
2714
- href: attributionHref,
3470
+ href: attributionHref || "https://opensite.ai",
2715
3471
  className: "hover:text-primary",
2716
3472
  target: "_blank",
2717
3473
  rel: "noopener noreferrer",
@@ -2719,7 +3475,7 @@ function FooterBackgroundCard({
2719
3475
  }
2720
3476
  )
2721
3477
  ] }),
2722
- /* @__PURE__ */ jsx("div", { className: cn("flex gap-4", bottomLinksClassName), children: bottomLinks?.map((link, idx) => /* @__PURE__ */ jsx(
3478
+ bottomLinks && bottomLinks.length > 0 && /* @__PURE__ */ jsx("div", { className: cn("flex gap-4", bottomLinksClassName), children: bottomLinks.map((link, idx) => /* @__PURE__ */ jsx(
2723
3479
  Pressable,
2724
3480
  {
2725
3481
  href: link.url,
@@ -2755,11 +3511,11 @@ function FooterAnimatedSocial({
2755
3511
  heading,
2756
3512
  description,
2757
3513
  ctaText,
2758
- ctaUrl = "#",
3514
+ ctaUrl,
2759
3515
  socialLinks,
2760
3516
  copyright,
2761
3517
  attributionText,
2762
- attributionHref = "https://opensite.ai",
3518
+ attributionHref,
2763
3519
  className,
2764
3520
  contentClassName,
2765
3521
  layoutClassName,
@@ -2773,13 +3529,45 @@ function FooterAnimatedSocial({
2773
3529
  bottomClassName,
2774
3530
  separatorClassName,
2775
3531
  copyrightClassName,
2776
- background = "white",
2777
- spacing = "lg",
3532
+ background,
3533
+ spacing,
2778
3534
  pattern,
2779
3535
  patternOpacity
2780
3536
  }) {
2781
- const currentYear = (/* @__PURE__ */ new Date()).getFullYear();
2782
- const copyrightText = copyright ?? `\xA9 Copyright ${currentYear}. All rights Reserved.`;
3537
+ const socialLinksContent = useMemo(() => {
3538
+ if (!socialLinks || socialLinks.length === 0) return null;
3539
+ return socialLinks.map((link) => /* @__PURE__ */ jsx(
3540
+ motion.div,
3541
+ {
3542
+ variants: itemVariants,
3543
+ whileHover: { x: 4 },
3544
+ transition: {
3545
+ type: "spring",
3546
+ stiffness: 300,
3547
+ damping: 20
3548
+ },
3549
+ children: /* @__PURE__ */ jsxs(
3550
+ Pressable,
3551
+ {
3552
+ href: link.href,
3553
+ className: cn("group flex items-center gap-2 py-2 text-foreground transition-colors hover:text-foreground/80", socialLinkClassName),
3554
+ children: [
3555
+ /* @__PURE__ */ jsx("span", { className: "text-xl font-medium", children: link.name }),
3556
+ /* @__PURE__ */ jsx(
3557
+ DynamicIcon,
3558
+ {
3559
+ name: "lucide/arrow-up-right",
3560
+ size: 24,
3561
+ className: "transition-transform group-hover:translate-x-0.5 group-hover:-translate-y-0.5"
3562
+ }
3563
+ )
3564
+ ]
3565
+ }
3566
+ )
3567
+ },
3568
+ link.name
3569
+ ));
3570
+ }, [socialLinks, socialLinkClassName]);
2783
3571
  return /* @__PURE__ */ jsx(
2784
3572
  Section,
2785
3573
  {
@@ -2803,7 +3591,7 @@ function FooterAnimatedSocial({
2803
3591
  /* @__PURE__ */ jsx("h2", { className: cn("text-4xl leading-tight font-bold text-foreground lg:text-5xl", headingClassName), children: heading }),
2804
3592
  /* @__PURE__ */ jsx("p", { className: cn("max-w-md text-lg leading-relaxed text-muted-foreground", descriptionClassName), children: description })
2805
3593
  ] }),
2806
- /* @__PURE__ */ jsx(motion.div, { variants: itemVariants, children: /* @__PURE__ */ jsx(
3594
+ ctaUrl && ctaText && /* @__PURE__ */ jsx(motion.div, { variants: itemVariants, children: /* @__PURE__ */ jsx(
2807
3595
  Pressable,
2808
3596
  {
2809
3597
  href: ctaUrl,
@@ -2812,37 +3600,7 @@ function FooterAnimatedSocial({
2812
3600
  }
2813
3601
  ) })
2814
3602
  ] }),
2815
- /* @__PURE__ */ jsx("div", { className: cn("mt-5 space-y-8 md:mt-0", rightColumnClassName), children: /* @__PURE__ */ jsx(motion.div, { variants: itemVariants, children: /* @__PURE__ */ jsx("div", { className: cn("space-y-6", socialLinksClassName), children: socialLinks?.map((link) => /* @__PURE__ */ jsx(
2816
- motion.div,
2817
- {
2818
- variants: itemVariants,
2819
- whileHover: { x: 4 },
2820
- transition: {
2821
- type: "spring",
2822
- stiffness: 300,
2823
- damping: 20
2824
- },
2825
- children: /* @__PURE__ */ jsxs(
2826
- Pressable,
2827
- {
2828
- href: link.href,
2829
- className: cn("group flex items-center gap-2 py-2 text-foreground transition-colors hover:text-foreground/80", socialLinkClassName),
2830
- children: [
2831
- /* @__PURE__ */ jsx("span", { className: "text-xl font-medium", children: link.name }),
2832
- /* @__PURE__ */ jsx(
2833
- DynamicIcon,
2834
- {
2835
- name: "lucide/arrow-up-right",
2836
- size: 24,
2837
- className: "transition-transform group-hover:translate-x-0.5 group-hover:-translate-y-0.5"
2838
- }
2839
- )
2840
- ]
2841
- }
2842
- )
2843
- },
2844
- link.name
2845
- )) }) }) })
3603
+ /* @__PURE__ */ jsx("div", { className: cn("mt-5 space-y-8 md:mt-0", rightColumnClassName), children: /* @__PURE__ */ jsx(motion.div, { variants: itemVariants, children: /* @__PURE__ */ jsx("div", { className: cn("space-y-6", socialLinksClassName), children: socialLinksContent }) }) })
2846
3604
  ]
2847
3605
  }
2848
3606
  ),
@@ -2862,7 +3620,7 @@ function FooterAnimatedSocial({
2862
3620
  variants: itemVariants,
2863
3621
  className: cn("flex flex-col items-start justify-between gap-4 sm:flex-row sm:items-center", copyrightClassName),
2864
3622
  children: [
2865
- /* @__PURE__ */ jsx("p", { className: "text-sm text-muted-foreground", children: copyrightText }),
3623
+ copyright && /* @__PURE__ */ jsx("p", { className: "text-sm text-muted-foreground", children: copyright }),
2866
3624
  /* @__PURE__ */ jsx("div", { className: "flex items-center gap-6 text-sm", children: /* @__PURE__ */ jsx("span", { className: "text-muted-foreground", children: /* @__PURE__ */ jsx(
2867
3625
  motion.a,
2868
3626
  {
@@ -3016,11 +3774,11 @@ function FooterNewsletterMinimal({
3016
3774
  socialLinks,
3017
3775
  footerLinks,
3018
3776
  newsletterLabel,
3019
- newsletterPlaceholder = "Email*",
3777
+ newsletterPlaceholder,
3020
3778
  brandText,
3021
3779
  copyright,
3022
3780
  attributionText,
3023
- attributionHref = "https://opensite.ai",
3781
+ attributionHref,
3024
3782
  location,
3025
3783
  className,
3026
3784
  contentClassName,
@@ -3043,8 +3801,8 @@ function FooterNewsletterMinimal({
3043
3801
  brandSectionClassName,
3044
3802
  brandTextClassName,
3045
3803
  copyrightClassName,
3046
- background = "dark",
3047
- spacing = "lg",
3804
+ background,
3805
+ spacing,
3048
3806
  pattern,
3049
3807
  patternOpacity,
3050
3808
  formConfig,
@@ -3052,6 +3810,50 @@ function FooterNewsletterMinimal({
3052
3810
  onSuccess,
3053
3811
  onError
3054
3812
  }) {
3813
+ const navLinksContent = useMemo(() => {
3814
+ if (!navLinks || navLinks.length === 0) return null;
3815
+ return navLinks.map((item, idx) => /* @__PURE__ */ jsx("li", { children: /* @__PURE__ */ jsx(
3816
+ Pressable,
3817
+ {
3818
+ href: item.href,
3819
+ className: cn("tracking-tight text-foreground hover:text-foreground/30", navLinkClassName),
3820
+ children: item.label
3821
+ }
3822
+ ) }, idx));
3823
+ }, [navLinks, navLinkClassName]);
3824
+ const socialLinksContent = useMemo(() => {
3825
+ if (!socialLinks || socialLinks.length === 0) return null;
3826
+ return socialLinks.map((item) => /* @__PURE__ */ jsx("li", { children: /* @__PURE__ */ jsxs(
3827
+ Pressable,
3828
+ {
3829
+ href: item.href,
3830
+ className: cn("group flex items-center gap-1 tracking-tight text-foreground hover:text-foreground/30", socialLinkClassName),
3831
+ children: [
3832
+ item.label,
3833
+ " ",
3834
+ /* @__PURE__ */ jsx(
3835
+ DynamicIcon,
3836
+ {
3837
+ name: "lucide/arrow-up-right",
3838
+ size: 14,
3839
+ className: "text-foreground group-hover:text-muted-foreground/50"
3840
+ }
3841
+ )
3842
+ ]
3843
+ }
3844
+ ) }, item.label));
3845
+ }, [socialLinks, socialLinkClassName]);
3846
+ const footerLinksContent = useMemo(() => {
3847
+ if (!footerLinks || footerLinks.length === 0) return null;
3848
+ return footerLinks.map((item) => /* @__PURE__ */ jsx("li", { children: /* @__PURE__ */ jsx(
3849
+ Pressable,
3850
+ {
3851
+ href: item.href,
3852
+ className: cn("group flex items-center gap-1 tracking-tight text-foreground hover:text-foreground/30", footerLinkClassName),
3853
+ children: item.label
3854
+ }
3855
+ ) }, item.label));
3856
+ }, [footerLinks, footerLinkClassName]);
3055
3857
  const form = useForm({
3056
3858
  initialValues: {
3057
3859
  email: ""
@@ -3092,8 +3894,6 @@ function FooterNewsletterMinimal({
3092
3894
  }
3093
3895
  });
3094
3896
  const formMethod = formConfig?.method?.toLowerCase() === "get" ? "get" : "post";
3095
- const currentYear = (/* @__PURE__ */ new Date()).getFullYear();
3096
- const copyrightText = copyright ?? `\xA9 ${currentYear} Opensite AI. All rights reserved.`;
3097
3897
  return /* @__PURE__ */ jsx(
3098
3898
  Section,
3099
3899
  {
@@ -3105,45 +3905,20 @@ function FooterNewsletterMinimal({
3105
3905
  children: /* @__PURE__ */ jsxs("div", { className: cn(contentClassName), children: [
3106
3906
  /* @__PURE__ */ jsxs("div", { className: cn("flex flex-col justify-between gap-15 lg:flex-row", topSectionClassName), children: [
3107
3907
  /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-10", children: [
3108
- /* @__PURE__ */ jsx("p", { className: cn("relative text-4xl font-medium tracking-tight lg:text-5xl", headingClassName), children: heading }),
3109
- /* @__PURE__ */ jsxs("div", { className: cn("space-y-1 text-sm font-light tracking-tight lg:text-base", supportClassName), children: [
3110
- /* @__PURE__ */ jsx("p", { children: supportLabel }),
3111
- /* @__PURE__ */ jsx(Pressable, { href: `mailto:${supportEmail}`, children: supportEmail })
3908
+ heading && /* @__PURE__ */ jsx("p", { className: cn("relative text-4xl font-medium tracking-tight lg:text-5xl", headingClassName), children: heading }),
3909
+ (supportLabel || supportEmail) && /* @__PURE__ */ jsxs("div", { className: cn("space-y-1 text-sm font-light tracking-tight lg:text-base", supportClassName), children: [
3910
+ supportLabel && /* @__PURE__ */ jsx("p", { children: supportLabel }),
3911
+ supportEmail && /* @__PURE__ */ jsx(Pressable, { href: `mailto:${supportEmail}`, children: supportEmail })
3112
3912
  ] })
3113
3913
  ] }),
3114
3914
  /* @__PURE__ */ jsxs("div", { className: cn("grid w-full max-w-xs grid-cols-2 gap-10 text-sm font-light lg:text-base", navGridClassName), children: [
3115
- /* @__PURE__ */ jsx("ul", { className: cn("space-y-1", navLinksClassName), children: navLinks?.map((item, idx) => /* @__PURE__ */ jsx("li", { children: /* @__PURE__ */ jsx(
3116
- Pressable,
3117
- {
3118
- href: item.href,
3119
- className: cn("tracking-tight text-foreground hover:text-foreground/30", navLinkClassName),
3120
- children: item.label
3121
- }
3122
- ) }, idx)) }),
3123
- /* @__PURE__ */ jsx("ul", { className: cn("space-y-1", socialLinksClassName), children: socialLinks?.map((item) => /* @__PURE__ */ jsx("li", { children: /* @__PURE__ */ jsxs(
3124
- Pressable,
3125
- {
3126
- href: item.href,
3127
- className: cn("group flex items-center gap-1 tracking-tight text-foreground hover:text-foreground/30", socialLinkClassName),
3128
- children: [
3129
- item.label,
3130
- " ",
3131
- /* @__PURE__ */ jsx(
3132
- DynamicIcon,
3133
- {
3134
- name: "lucide/arrow-up-right",
3135
- size: 14,
3136
- className: "text-foreground group-hover:text-muted-foreground/50"
3137
- }
3138
- )
3139
- ]
3140
- }
3141
- ) }, item.label)) })
3915
+ /* @__PURE__ */ jsx("ul", { className: cn("space-y-1", navLinksClassName), children: navLinksContent }),
3916
+ /* @__PURE__ */ jsx("ul", { className: cn("space-y-1", socialLinksClassName), children: socialLinksContent })
3142
3917
  ] })
3143
3918
  ] }),
3144
3919
  /* @__PURE__ */ jsxs("div", { className: cn("mt-20 flex flex-col justify-between gap-15 lg:flex-row", newsletterSectionClassName), children: [
3145
3920
  /* @__PURE__ */ jsx("div", { className: "flex w-full max-w-md flex-col gap-10", children: /* @__PURE__ */ jsxs("div", { className: "space-y-1 text-sm font-light tracking-tight lg:text-base", children: [
3146
- /* @__PURE__ */ jsx("p", { children: newsletterLabel }),
3921
+ newsletterLabel && /* @__PURE__ */ jsx("p", { children: newsletterLabel }),
3147
3922
  /* @__PURE__ */ jsxs(
3148
3923
  Form,
3149
3924
  {
@@ -3179,18 +3954,11 @@ function FooterNewsletterMinimal({
3179
3954
  )
3180
3955
  ] }) }),
3181
3956
  /* @__PURE__ */ jsxs("div", { className: cn("grid w-full max-w-xs grid-cols-2 gap-10 text-sm font-light lg:text-base", bottomGridClassName), children: [
3182
- /* @__PURE__ */ jsx("div", { className: cn("w-32", locationClassName), children: location }),
3183
- /* @__PURE__ */ jsx("ul", { className: cn("space-y-1", footerLinksClassName), children: footerLinks?.map((item) => /* @__PURE__ */ jsx("li", { children: /* @__PURE__ */ jsx(
3184
- Pressable,
3185
- {
3186
- href: item.href,
3187
- className: cn("group flex items-center gap-1 tracking-tight text-foreground hover:text-foreground/30", footerLinkClassName),
3188
- children: item.label
3189
- }
3190
- ) }, item.label)) })
3957
+ location && /* @__PURE__ */ jsx("div", { className: cn("w-32", locationClassName), children: location }),
3958
+ /* @__PURE__ */ jsx("ul", { className: cn("space-y-1", footerLinksClassName), children: footerLinksContent })
3191
3959
  ] })
3192
3960
  ] }),
3193
- /* @__PURE__ */ jsx("div", { className: cn("mt-20 w-full lg:mt-32", brandSectionClassName), children: /* @__PURE__ */ jsx(
3961
+ brandText && /* @__PURE__ */ jsx("div", { className: cn("mt-20 w-full lg:mt-32", brandSectionClassName), children: /* @__PURE__ */ jsx(
3194
3962
  motion.div,
3195
3963
  {
3196
3964
  initial: { opacity: 0, y: 20 },
@@ -3201,9 +3969,9 @@ function FooterNewsletterMinimal({
3201
3969
  children: /* @__PURE__ */ jsx("span", { className: cn("text-6xl font-bold tracking-tighter md:text-8xl lg:text-9xl", brandTextClassName), children: brandText })
3202
3970
  }
3203
3971
  ) }),
3204
- /* @__PURE__ */ jsxs("div", { className: cn("mt-8 text-center text-sm text-muted-foreground", copyrightClassName), children: [
3205
- /* @__PURE__ */ jsx("p", { children: copyrightText }),
3206
- /* @__PURE__ */ jsx(
3972
+ (copyright || attributionText) && /* @__PURE__ */ jsxs("div", { className: cn("mt-8 text-center text-sm text-muted-foreground", copyrightClassName), children: [
3973
+ copyright && /* @__PURE__ */ jsx("p", { children: copyright }),
3974
+ attributionText && attributionHref && /* @__PURE__ */ jsx(
3207
3975
  Pressable,
3208
3976
  {
3209
3977
  href: attributionHref,
@@ -3228,7 +3996,7 @@ function FooterCtaSocial({
3228
3996
  socialLinks,
3229
3997
  copyright,
3230
3998
  attributionText,
3231
- attributionHref = "https://opensite.ai",
3999
+ attributionHref,
3232
4000
  className,
3233
4001
  contentClassName,
3234
4002
  containerClassName,
@@ -3243,13 +4011,27 @@ function FooterCtaSocial({
3243
4011
  emailClassName,
3244
4012
  bottomClassName,
3245
4013
  copyrightClassName,
3246
- background = "white",
3247
- spacing = "lg",
4014
+ background,
4015
+ spacing,
3248
4016
  pattern,
3249
4017
  patternOpacity
3250
4018
  }) {
3251
- const currentYear = (/* @__PURE__ */ new Date()).getFullYear();
3252
- const copyrightText = copyright ?? `\xA9 ${currentYear} Opensite AI. All rights reserved.`;
4019
+ const socialLinksContent = useMemo(() => {
4020
+ if (!socialLinks || socialLinks.length === 0) return null;
4021
+ return socialLinks.map((link) => /* @__PURE__ */ jsx(
4022
+ Pressable,
4023
+ {
4024
+ href: link.url,
4025
+ variant: "outline",
4026
+ size: "icon",
4027
+ asButton: true,
4028
+ className: cn("h-12 w-12 rounded-full", socialLinkClassName),
4029
+ "aria-label": link.label,
4030
+ children: /* @__PURE__ */ jsx(DynamicIcon, { name: link.icon, size: 20 })
4031
+ },
4032
+ link.url
4033
+ ));
4034
+ }, [socialLinks, socialLinkClassName]);
3253
4035
  return /* @__PURE__ */ jsx(
3254
4036
  Section,
3255
4037
  {
@@ -3284,19 +4066,8 @@ function FooterCtaSocial({
3284
4066
  ]
3285
4067
  }
3286
4068
  ),
3287
- /* @__PURE__ */ jsx("div", { className: cn("flex items-center gap-6 pt-8", socialLinksClassName), children: socialLinks?.map((link, idx) => /* @__PURE__ */ jsxs(React4.Fragment, { children: [
3288
- /* @__PURE__ */ jsx(
3289
- Pressable,
3290
- {
3291
- href: link.url,
3292
- className: cn("text-muted-foreground transition-colors hover:text-foreground", socialLinkClassName),
3293
- "aria-label": link.label,
3294
- children: /* @__PURE__ */ jsx(DynamicIcon, { name: link.icon, size: 20 })
3295
- }
3296
- ),
3297
- idx < (socialLinks?.length ?? 0) - 1 && /* @__PURE__ */ jsx("div", { className: "h-4 w-px bg-border" })
3298
- ] }, idx)) }),
3299
- /* @__PURE__ */ jsx("p", { className: cn("pt-2 text-sm text-muted-foreground md:text-base", emailClassName), children: /* @__PURE__ */ jsx(
4069
+ socialLinks && socialLinks.length > 0 && /* @__PURE__ */ jsx("div", { className: cn("flex items-center gap-6 pt-8", socialLinksClassName), children: socialLinksContent }),
4070
+ email && /* @__PURE__ */ jsx("p", { className: cn("pt-2 text-sm text-muted-foreground md:text-base", emailClassName), children: /* @__PURE__ */ jsx(
3300
4071
  Pressable,
3301
4072
  {
3302
4073
  href: `mailto:${email}`,
@@ -3305,8 +4076,8 @@ function FooterCtaSocial({
3305
4076
  }
3306
4077
  ) }),
3307
4078
  /* @__PURE__ */ jsxs("div", { className: cn("mt-8 border-t pt-8 text-sm text-muted-foreground", bottomClassName), children: [
3308
- /* @__PURE__ */ jsx("p", { className: cn(copyrightClassName), children: copyrightText }),
3309
- /* @__PURE__ */ jsx(
4079
+ copyright && /* @__PURE__ */ jsx("p", { className: cn(copyrightClassName), children: copyright }),
4080
+ attributionHref && attributionText && /* @__PURE__ */ jsx(
3310
4081
  Pressable,
3311
4082
  {
3312
4083
  href: attributionHref,
@@ -3322,22 +4093,17 @@ function FooterCtaSocial({
3322
4093
  );
3323
4094
  }
3324
4095
  function FooterNavSocial({
3325
- logo = {
3326
- url: "https://opensite.ai",
3327
- src: "https://cdn.ing/assets/i/r/285975/eud79qeya11q5w6ueyhklueardyx/os-suircle-black-white.png",
3328
- alt: "Opensite AI",
3329
- title: "Opensite AI"
3330
- },
4096
+ logo,
3331
4097
  sections,
3332
4098
  socialLinks,
3333
4099
  newsletterHeading,
3334
4100
  newsletterDescription,
3335
- newsletterPlaceholder = "Enter your email",
4101
+ newsletterPlaceholder,
3336
4102
  newsletterButtonText,
3337
4103
  socialTitle,
3338
4104
  copyright,
3339
4105
  attributionText,
3340
- attributionHref = "https://opensite.ai",
4106
+ attributionHref,
3341
4107
  legalLinks,
3342
4108
  className,
3343
4109
  contentClassName,
@@ -3364,14 +4130,42 @@ function FooterNavSocial({
3364
4130
  copyrightClassName,
3365
4131
  legalLinksClassName,
3366
4132
  legalLinkClassName,
3367
- background = "white",
3368
- spacing = "lg",
4133
+ background,
4134
+ spacing,
3369
4135
  pattern,
3370
4136
  patternOpacity,
3371
4137
  optixFlowConfig
3372
4138
  }) {
3373
- const currentYear = (/* @__PURE__ */ new Date()).getFullYear();
3374
- const copyrightText = copyright ?? `\xA9 ${currentYear} Opensite AI. All rights reserved.`;
4139
+ const sectionsContent = useMemo(() => {
4140
+ if (!sections || sections.length === 0) return null;
4141
+ return sections.map((section, sectionIdx) => /* @__PURE__ */ jsxs("div", { className: cn(navSectionClassName), children: [
4142
+ /* @__PURE__ */ jsx("h3", { className: cn("mb-4 font-semibold", navTitleClassName), children: section.title }),
4143
+ /* @__PURE__ */ jsx("ul", { className: cn("space-y-3 text-sm text-muted-foreground", navLinksClassName), children: section.links.map((link, linkIdx) => /* @__PURE__ */ jsx("li", { className: cn(navLinkClassName), children: /* @__PURE__ */ jsx(
4144
+ Pressable,
4145
+ {
4146
+ href: link.href,
4147
+ className: "hover:text-primary",
4148
+ children: link.name
4149
+ }
4150
+ ) }, linkIdx)) })
4151
+ ] }, sectionIdx));
4152
+ }, [sections, navSectionClassName, navTitleClassName, navLinksClassName, navLinkClassName]);
4153
+ const socialLinksContent = useMemo(() => {
4154
+ if (!socialLinks || socialLinks.length === 0) return null;
4155
+ return socialLinks.map((social, idx) => /* @__PURE__ */ jsx("li", { children: /* @__PURE__ */ jsx(
4156
+ Pressable,
4157
+ {
4158
+ href: social.href,
4159
+ "aria-label": social.label,
4160
+ className: cn("text-muted-foreground transition-colors hover:text-primary", socialLinkClassName),
4161
+ children: /* @__PURE__ */ jsx(DynamicIcon, { name: social.icon, size: 20 })
4162
+ }
4163
+ ) }, idx));
4164
+ }, [socialLinks, socialLinkClassName]);
4165
+ const legalLinksContent = useMemo(() => {
4166
+ if (!legalLinks || legalLinks.length === 0) return null;
4167
+ return legalLinks.map((link, idx) => /* @__PURE__ */ jsx("li", { className: cn(legalLinkClassName), children: /* @__PURE__ */ jsx(Pressable, { href: link.href, className: "hover:text-primary", children: link.name }) }, idx));
4168
+ }, [legalLinks, legalLinkClassName]);
3375
4169
  return /* @__PURE__ */ jsx(
3376
4170
  Section,
3377
4171
  {
@@ -3383,13 +4177,13 @@ function FooterNavSocial({
3383
4177
  children: /* @__PURE__ */ jsx("div", { className: cn(contentClassName), children: /* @__PURE__ */ jsxs("footer", { children: [
3384
4178
  /* @__PURE__ */ jsxs("div", { className: cn("grid gap-10 lg:grid-cols-2", gridClassName), children: [
3385
4179
  /* @__PURE__ */ jsxs("div", { className: cn(leftColumnClassName), children: [
3386
- /* @__PURE__ */ jsxs(
4180
+ logo && /* @__PURE__ */ jsxs(
3387
4181
  Pressable,
3388
4182
  {
3389
4183
  href: logo.url,
3390
4184
  className: cn("mb-8 flex items-center gap-2", logoWrapperClassName),
3391
4185
  children: [
3392
- /* @__PURE__ */ jsx(
4186
+ logo.src && /* @__PURE__ */ jsx(
3393
4187
  Img,
3394
4188
  {
3395
4189
  src: logo.src,
@@ -3398,26 +4192,16 @@ function FooterNavSocial({
3398
4192
  optixFlowConfig
3399
4193
  }
3400
4194
  ),
3401
- /* @__PURE__ */ jsx("span", { className: cn("text-xl font-semibold", logoTitleClassName), children: logo.title })
4195
+ logo.title && /* @__PURE__ */ jsx("span", { className: cn("text-xl font-semibold", logoTitleClassName), children: logo.title })
3402
4196
  ]
3403
4197
  }
3404
4198
  ),
3405
- /* @__PURE__ */ jsx("div", { className: cn("grid gap-8 sm:grid-cols-3", navGridClassName), children: sections?.map((section, sectionIdx) => /* @__PURE__ */ jsxs("div", { className: cn(navSectionClassName), children: [
3406
- /* @__PURE__ */ jsx("h3", { className: cn("mb-4 font-semibold", navTitleClassName), children: section.title }),
3407
- /* @__PURE__ */ jsx("ul", { className: cn("space-y-3 text-sm text-muted-foreground", navLinksClassName), children: section.links.map((link, linkIdx) => /* @__PURE__ */ jsx("li", { className: cn(navLinkClassName), children: /* @__PURE__ */ jsx(
3408
- Pressable,
3409
- {
3410
- href: link.href,
3411
- className: "hover:text-primary",
3412
- children: link.name
3413
- }
3414
- ) }, linkIdx)) })
3415
- ] }, sectionIdx)) })
4199
+ /* @__PURE__ */ jsx("div", { className: cn("grid gap-8 sm:grid-cols-3", navGridClassName), children: sectionsContent })
3416
4200
  ] }),
3417
4201
  /* @__PURE__ */ jsxs("div", { className: cn("flex flex-col justify-between", rightColumnClassName), children: [
3418
- /* @__PURE__ */ jsxs("div", { className: cn("mb-8", newsletterClassName), children: [
3419
- /* @__PURE__ */ jsx("h3", { className: cn("mb-2 text-lg font-semibold", newsletterHeadingClassName), children: newsletterHeading }),
3420
- /* @__PURE__ */ jsx("p", { className: cn("mb-4 text-sm text-muted-foreground", newsletterDescriptionClassName), children: newsletterDescription }),
4202
+ (newsletterHeading || newsletterDescription) && /* @__PURE__ */ jsxs("div", { className: cn("mb-8", newsletterClassName), children: [
4203
+ newsletterHeading && /* @__PURE__ */ jsx("h3", { className: cn("mb-2 text-lg font-semibold", newsletterHeadingClassName), children: newsletterHeading }),
4204
+ newsletterDescription && /* @__PURE__ */ jsx("p", { className: cn("mb-4 text-sm text-muted-foreground", newsletterDescriptionClassName), children: newsletterDescription }),
3421
4205
  /* @__PURE__ */ jsxs("div", { className: cn("flex max-w-md gap-2", newsletterFormClassName), children: [
3422
4206
  /* @__PURE__ */ jsx(
3423
4207
  "input",
@@ -3427,7 +4211,7 @@ function FooterNavSocial({
3427
4211
  className: "flex h-10 w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50"
3428
4212
  }
3429
4213
  ),
3430
- /* @__PURE__ */ jsx(
4214
+ newsletterButtonText && /* @__PURE__ */ jsx(
3431
4215
  "button",
3432
4216
  {
3433
4217
  type: "submit",
@@ -3437,24 +4221,16 @@ function FooterNavSocial({
3437
4221
  )
3438
4222
  ] })
3439
4223
  ] }),
3440
- /* @__PURE__ */ jsxs("div", { className: cn(socialSectionClassName), children: [
3441
- /* @__PURE__ */ jsx("p", { className: cn("mb-4 font-medium", socialTitleClassName), children: socialTitle }),
3442
- /* @__PURE__ */ jsx("ul", { className: cn("flex items-center gap-4", socialLinksClassName), children: socialLinks?.map((social, idx) => /* @__PURE__ */ jsx("li", { children: /* @__PURE__ */ jsx(
3443
- Pressable,
3444
- {
3445
- href: social.href,
3446
- "aria-label": social.label,
3447
- className: cn("text-muted-foreground transition-colors hover:text-primary", socialLinkClassName),
3448
- children: /* @__PURE__ */ jsx(DynamicIcon, { name: social.icon, size: 20 })
3449
- }
3450
- ) }, idx)) })
4224
+ (socialTitle || socialLinksContent) && /* @__PURE__ */ jsxs("div", { className: cn(socialSectionClassName), children: [
4225
+ socialTitle && /* @__PURE__ */ jsx("p", { className: cn("mb-4 font-medium", socialTitleClassName), children: socialTitle }),
4226
+ /* @__PURE__ */ jsx("ul", { className: cn("flex items-center gap-4", socialLinksClassName), children: socialLinksContent })
3451
4227
  ] })
3452
4228
  ] })
3453
4229
  ] }),
3454
4230
  /* @__PURE__ */ jsxs("div", { className: cn("mt-16 flex flex-col justify-between gap-4 border-t pt-8 text-sm text-muted-foreground md:flex-row md:items-center", bottomClassName), children: [
3455
4231
  /* @__PURE__ */ jsxs("div", { className: cn("flex flex-col gap-2 md:flex-row md:items-center md:gap-4", copyrightClassName), children: [
3456
- /* @__PURE__ */ jsx("p", { children: copyrightText }),
3457
- /* @__PURE__ */ jsx(
4232
+ copyright && /* @__PURE__ */ jsx("p", { children: copyright }),
4233
+ attributionText && attributionHref && /* @__PURE__ */ jsx(
3458
4234
  Pressable,
3459
4235
  {
3460
4236
  href: attributionHref,
@@ -3465,11 +4241,11 @@ function FooterNavSocial({
3465
4241
  }
3466
4242
  )
3467
4243
  ] }),
3468
- /* @__PURE__ */ jsx("ul", { className: cn("flex gap-4", legalLinksClassName), children: legalLinks?.map((link, idx) => /* @__PURE__ */ jsx("li", { className: cn(legalLinkClassName), children: /* @__PURE__ */ jsx(Pressable, { href: link.href, className: "hover:text-primary", children: link.name }) }, idx)) })
4244
+ legalLinksContent && /* @__PURE__ */ jsx("ul", { className: cn("flex gap-4", legalLinksClassName), children: legalLinksContent })
3469
4245
  ] })
3470
4246
  ] }) })
3471
4247
  }
3472
4248
  );
3473
4249
  }
3474
4250
 
3475
- export { AlternatingBlocks, AnimatedDialog, Badge, Button, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Container, DynamicIcon, FooterAnimatedSocial, FooterBackgroundCard, FooterBrandDescription, FooterContactCard, FooterCtaBanner, FooterCtaSocial, FooterLinksGrid, FooterNavSocial, FooterNewsletterGrid, FooterNewsletterMinimal, FooterSimpleCentered, FooterSocialApps, FooterSocialNewsletter, ImageSlider, MediaHoverCtas, PageHeroBanner, Popover, PopoverContent, PopoverTrigger, Pressable, Section, cn, useNavigation };
4251
+ export { AboutCultureTabs, AboutExpandableValues, AboutMissionPrinciples, AboutSplitHero, AlternatingBlocks, AnimatedDialog, Badge, Button, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, CommunityInitiatives, Container, DynamicIcon, FooterAnimatedSocial, FooterBackgroundCard, FooterBrandDescription, FooterContactCard, FooterCtaBanner, FooterCtaSocial, FooterLinksGrid, FooterNavSocial, FooterNewsletterGrid, FooterNewsletterMinimal, FooterSimpleCentered, FooterSocialApps, FooterSocialNewsletter, ImageSlider, MediaHoverCtas, PageHeroBanner, Popover, PopoverContent, PopoverTrigger, Pressable, Section, cn, useNavigation };