@opensite/ui 0.5.3 → 0.5.5

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 (585) hide show
  1. package/dist/about-company-profile.cjs +11 -11
  2. package/dist/about-company-profile.js +12 -11
  3. package/dist/about-developer-profile.cjs +11 -11
  4. package/dist/about-developer-profile.js +12 -11
  5. package/dist/about-developer-story.cjs +11 -11
  6. package/dist/about-developer-story.js +12 -11
  7. package/dist/about-interactive-tabs.cjs +10 -5
  8. package/dist/about-interactive-tabs.js +12 -6
  9. package/dist/about-location-info-hero.cjs +14 -14
  10. package/dist/about-location-info-hero.js +15 -15
  11. package/dist/about-minimal-story.cjs +5 -4
  12. package/dist/about-minimal-story.js +6 -5
  13. package/dist/about-mission-dual-image.cjs +5 -5
  14. package/dist/about-mission-dual-image.js +6 -5
  15. package/dist/about-mission-features.cjs +5 -4
  16. package/dist/about-mission-features.js +6 -5
  17. package/dist/about-network-spotlight.cjs +12 -134
  18. package/dist/about-network-spotlight.js +13 -135
  19. package/dist/about-startup-team.cjs +10 -12
  20. package/dist/about-startup-team.js +11 -12
  21. package/dist/about-stats-showcase.cjs +17 -16
  22. package/dist/about-stats-showcase.js +17 -16
  23. package/dist/about-stats-sidebar.cjs +8 -7
  24. package/dist/about-stats-sidebar.js +8 -7
  25. package/dist/about-story-expertise.cjs +17 -139
  26. package/dist/about-story-expertise.js +18 -140
  27. package/dist/about-story-gallery.cjs +6 -9
  28. package/dist/about-story-gallery.js +6 -9
  29. package/dist/about-story-hero.cjs +6 -9
  30. package/dist/about-story-hero.js +7 -10
  31. package/dist/about-streamline-team.cjs +10 -10
  32. package/dist/about-streamline-team.js +11 -10
  33. package/dist/about-vision-gallery.cjs +33 -40
  34. package/dist/about-vision-gallery.d.cts +44 -24
  35. package/dist/about-vision-gallery.d.ts +44 -24
  36. package/dist/about-vision-gallery.js +34 -40
  37. package/dist/alternating-blocks.cjs +5 -5
  38. package/dist/alternating-blocks.js +5 -5
  39. package/dist/article-breadcrumb-social.cjs +35 -41
  40. package/dist/article-breadcrumb-social.d.cts +0 -2
  41. package/dist/article-breadcrumb-social.d.ts +0 -2
  42. package/dist/article-breadcrumb-social.js +35 -41
  43. package/dist/article-chapters-author.cjs +80 -80
  44. package/dist/article-chapters-author.js +79 -79
  45. package/dist/article-compact-toc.cjs +31 -30
  46. package/dist/article-compact-toc.js +30 -29
  47. package/dist/article-hero-prose.cjs +9 -9
  48. package/dist/article-hero-prose.d.cts +5 -5
  49. package/dist/article-hero-prose.d.ts +5 -5
  50. package/dist/article-hero-prose.js +9 -9
  51. package/dist/article-sidebar-sticky.cjs +12 -11
  52. package/dist/article-sidebar-sticky.js +12 -11
  53. package/dist/article-split-animated.cjs +23 -142
  54. package/dist/article-split-animated.js +23 -142
  55. package/dist/article-toc-sidebar.cjs +31 -31
  56. package/dist/article-toc-sidebar.js +30 -30
  57. package/dist/banner-announcement-dismissible.cjs +37 -17
  58. package/dist/banner-announcement-dismissible.d.cts +0 -2
  59. package/dist/banner-announcement-dismissible.d.ts +0 -2
  60. package/dist/banner-announcement-dismissible.js +38 -18
  61. package/dist/banner-countdown-sale.cjs +19 -11
  62. package/dist/banner-countdown-sale.d.cts +0 -1
  63. package/dist/banner-countdown-sale.d.ts +0 -1
  64. package/dist/banner-countdown-sale.js +21 -13
  65. package/dist/banner-delivery-countdown.cjs +29 -24
  66. package/dist/banner-delivery-countdown.d.cts +0 -2
  67. package/dist/banner-delivery-countdown.d.ts +0 -2
  68. package/dist/banner-delivery-countdown.js +30 -25
  69. package/dist/banner-event-promo.cjs +28 -13
  70. package/dist/banner-event-promo.js +29 -13
  71. package/dist/banner-floating-offer.cjs +42 -24
  72. package/dist/banner-floating-offer.d.cts +0 -3
  73. package/dist/banner-floating-offer.d.ts +0 -3
  74. package/dist/banner-floating-offer.js +43 -25
  75. package/dist/banner-gdpr-rights.cjs +36 -19
  76. package/dist/banner-gdpr-rights.d.cts +3 -5
  77. package/dist/banner-gdpr-rights.d.ts +3 -5
  78. package/dist/banner-gdpr-rights.js +37 -20
  79. package/dist/banner-privacy-notice.cjs +34 -17
  80. package/dist/banner-privacy-notice.d.cts +0 -2
  81. package/dist/banner-privacy-notice.d.ts +0 -2
  82. package/dist/banner-privacy-notice.js +35 -18
  83. package/dist/banner-promo-cta.cjs +27 -12
  84. package/dist/banner-promo-cta.js +28 -12
  85. package/dist/banner-social-follow.cjs +37 -17
  86. package/dist/banner-social-follow.d.cts +0 -2
  87. package/dist/banner-social-follow.d.ts +0 -2
  88. package/dist/banner-social-follow.js +38 -18
  89. package/dist/banner-survey-incentive.cjs +34 -17
  90. package/dist/banner-survey-incentive.d.cts +0 -2
  91. package/dist/banner-survey-incentive.d.ts +0 -2
  92. package/dist/banner-survey-incentive.js +35 -18
  93. package/dist/blog-cards-read-time.cjs +408 -24
  94. package/dist/blog-cards-read-time.d.cts +20 -1
  95. package/dist/blog-cards-read-time.d.ts +20 -1
  96. package/dist/blog-cards-read-time.js +409 -24
  97. package/dist/blog-cards-tagline-cta.cjs +406 -19
  98. package/dist/blog-cards-tagline-cta.d.cts +20 -1
  99. package/dist/blog-cards-tagline-cta.d.ts +20 -1
  100. package/dist/blog-cards-tagline-cta.js +407 -19
  101. package/dist/blog-category-overlay.cjs +407 -20
  102. package/dist/blog-category-overlay.d.cts +27 -8
  103. package/dist/blog-category-overlay.d.ts +27 -8
  104. package/dist/blog-category-overlay.js +408 -20
  105. package/dist/blog-featured-popular.cjs +406 -19
  106. package/dist/blog-featured-popular.d.cts +20 -1
  107. package/dist/blog-featured-popular.d.ts +20 -1
  108. package/dist/blog-featured-popular.js +407 -19
  109. package/dist/blog-filtered-results.cjs +457 -71
  110. package/dist/blog-filtered-results.d.cts +38 -19
  111. package/dist/blog-filtered-results.d.ts +38 -19
  112. package/dist/blog-filtered-results.js +455 -69
  113. package/dist/blog-grid-author-cards.cjs +408 -20
  114. package/dist/blog-grid-author-cards.d.cts +28 -9
  115. package/dist/blog-grid-author-cards.d.ts +28 -9
  116. package/dist/blog-grid-author-cards.js +409 -20
  117. package/dist/blog-grid-nine-posts.cjs +403 -16
  118. package/dist/blog-grid-nine-posts.d.cts +24 -5
  119. package/dist/blog-grid-nine-posts.d.ts +24 -5
  120. package/dist/blog-grid-nine-posts.js +404 -16
  121. package/dist/blog-horizontal-cards.cjs +407 -20
  122. package/dist/blog-horizontal-cards.d.cts +21 -2
  123. package/dist/blog-horizontal-cards.d.ts +21 -2
  124. package/dist/blog-horizontal-cards.js +408 -20
  125. package/dist/blog-horizontal-timeline.cjs +401 -14
  126. package/dist/blog-horizontal-timeline.d.cts +28 -9
  127. package/dist/blog-horizontal-timeline.d.ts +28 -9
  128. package/dist/blog-horizontal-timeline.js +402 -14
  129. package/dist/blog-masonry-featured.cjs +405 -18
  130. package/dist/blog-masonry-featured.d.cts +28 -9
  131. package/dist/blog-masonry-featured.d.ts +28 -9
  132. package/dist/blog-masonry-featured.js +406 -18
  133. package/dist/blog-related-articles.cjs +401 -14
  134. package/dist/blog-related-articles.d.cts +20 -1
  135. package/dist/blog-related-articles.d.ts +20 -1
  136. package/dist/blog-related-articles.js +402 -14
  137. package/dist/blog-tech-insights.cjs +410 -23
  138. package/dist/blog-tech-insights.d.cts +31 -12
  139. package/dist/blog-tech-insights.d.ts +31 -12
  140. package/dist/blog-tech-insights.js +411 -23
  141. package/dist/case-studies-featured-border.cjs +423 -14
  142. package/dist/case-studies-featured-border.d.cts +20 -1
  143. package/dist/case-studies-featured-border.d.ts +20 -1
  144. package/dist/case-studies-featured-border.js +424 -14
  145. package/dist/case-studies-image-grid.cjs +404 -7
  146. package/dist/case-studies-image-grid.d.cts +20 -1
  147. package/dist/case-studies-image-grid.d.ts +20 -1
  148. package/dist/case-studies-image-grid.js +405 -7
  149. package/dist/case-studies-stats-card.cjs +416 -29
  150. package/dist/case-studies-stats-card.d.cts +20 -1
  151. package/dist/case-studies-stats-card.d.ts +20 -1
  152. package/dist/case-studies-stats-card.js +417 -29
  153. package/dist/case-studies-testimonial-stats.cjs +409 -10
  154. package/dist/case-studies-testimonial-stats.d.cts +20 -1
  155. package/dist/case-studies-testimonial-stats.d.ts +20 -1
  156. package/dist/case-studies-testimonial-stats.js +409 -10
  157. package/dist/case-study-prose-sidebar.cjs +414 -23
  158. package/dist/case-study-prose-sidebar.d.cts +34 -15
  159. package/dist/case-study-prose-sidebar.d.ts +34 -15
  160. package/dist/case-study-prose-sidebar.js +415 -23
  161. package/dist/case-study-stats-metrics.cjs +443 -43
  162. package/dist/case-study-stats-metrics.d.cts +39 -20
  163. package/dist/case-study-stats-metrics.d.ts +39 -20
  164. package/dist/case-study-stats-metrics.js +444 -43
  165. package/dist/case-study-toc-social-sidebar.cjs +436 -46
  166. package/dist/case-study-toc-social-sidebar.d.cts +36 -17
  167. package/dist/case-study-toc-social-sidebar.d.ts +36 -17
  168. package/dist/case-study-toc-social-sidebar.js +437 -47
  169. package/dist/comparison-ai-models.cjs +498 -77
  170. package/dist/comparison-ai-models.d.cts +25 -7
  171. package/dist/comparison-ai-models.d.ts +25 -7
  172. package/dist/comparison-ai-models.js +497 -76
  173. package/dist/comparison-feature-cards.cjs +492 -80
  174. package/dist/comparison-feature-cards.d.cts +25 -6
  175. package/dist/comparison-feature-cards.d.ts +25 -6
  176. package/dist/comparison-feature-cards.js +492 -79
  177. package/dist/comparison-feature-grid.cjs +475 -47
  178. package/dist/comparison-feature-grid.d.cts +24 -1
  179. package/dist/comparison-feature-grid.d.ts +24 -1
  180. package/dist/comparison-feature-grid.js +476 -47
  181. package/dist/comparison-grid-badges.cjs +422 -25
  182. package/dist/comparison-grid-badges.d.cts +26 -3
  183. package/dist/comparison-grid-badges.d.ts +26 -3
  184. package/dist/comparison-grid-badges.js +423 -25
  185. package/dist/comparison-image-cards.cjs +450 -36
  186. package/dist/comparison-image-cards.d.cts +23 -4
  187. package/dist/comparison-image-cards.d.ts +23 -4
  188. package/dist/comparison-image-cards.js +451 -36
  189. package/dist/comparison-legacy-modern.cjs +442 -41
  190. package/dist/comparison-legacy-modern.d.cts +29 -6
  191. package/dist/comparison-legacy-modern.d.ts +29 -6
  192. package/dist/comparison-legacy-modern.js +443 -41
  193. package/dist/comparison-metrics-rows.cjs +478 -47
  194. package/dist/comparison-metrics-rows.d.cts +20 -1
  195. package/dist/comparison-metrics-rows.d.ts +20 -1
  196. package/dist/comparison-metrics-rows.js +479 -47
  197. package/dist/comparison-table-tabs.cjs +423 -13
  198. package/dist/comparison-table-tabs.d.cts +25 -2
  199. package/dist/comparison-table-tabs.d.ts +25 -2
  200. package/dist/comparison-table-tabs.js +424 -14
  201. package/dist/comparison-table-tooltips.cjs +443 -37
  202. package/dist/comparison-table-tooltips.d.cts +24 -1
  203. package/dist/comparison-table-tooltips.d.ts +24 -1
  204. package/dist/comparison-table-tooltips.js +443 -37
  205. package/dist/comparison-table-two-column.cjs +463 -53
  206. package/dist/comparison-table-two-column.d.cts +24 -6
  207. package/dist/comparison-table-two-column.d.ts +24 -6
  208. package/dist/comparison-table-two-column.js +464 -53
  209. package/dist/components.cjs +8 -8
  210. package/dist/components.js +9 -9
  211. package/dist/contact-callback.cjs +577 -190
  212. package/dist/contact-callback.d.cts +35 -1
  213. package/dist/contact-callback.d.ts +35 -1
  214. package/dist/contact-callback.js +578 -190
  215. package/dist/contact-card.cjs +502 -115
  216. package/dist/contact-card.d.cts +20 -1
  217. package/dist/contact-card.d.ts +20 -1
  218. package/dist/contact-card.js +503 -115
  219. package/dist/contact-careers.cjs +628 -241
  220. package/dist/contact-careers.d.cts +20 -2
  221. package/dist/contact-careers.d.ts +20 -2
  222. package/dist/contact-careers.js +629 -242
  223. package/dist/contact-catering.cjs +664 -277
  224. package/dist/contact-catering.d.cts +20 -1
  225. package/dist/contact-catering.d.ts +20 -1
  226. package/dist/contact-catering.js +665 -277
  227. package/dist/contact-consultation.cjs +567 -180
  228. package/dist/contact-consultation.d.cts +20 -2
  229. package/dist/contact-consultation.d.ts +20 -2
  230. package/dist/contact-consultation.js +568 -180
  231. package/dist/contact-dark.cjs +486 -99
  232. package/dist/contact-dark.d.cts +20 -2
  233. package/dist/contact-dark.d.ts +20 -2
  234. package/dist/contact-dark.js +487 -99
  235. package/dist/contact-demo.cjs +558 -171
  236. package/dist/contact-demo.d.cts +20 -2
  237. package/dist/contact-demo.d.ts +20 -2
  238. package/dist/contact-demo.js +559 -171
  239. package/dist/contact-emergency.cjs +571 -184
  240. package/dist/contact-emergency.d.cts +20 -2
  241. package/dist/contact-emergency.d.ts +20 -2
  242. package/dist/contact-emergency.js +572 -184
  243. package/dist/contact-event.cjs +489 -102
  244. package/dist/contact-event.d.cts +20 -2
  245. package/dist/contact-event.d.ts +20 -2
  246. package/dist/contact-event.js +490 -102
  247. package/dist/contact-faq.cjs +478 -91
  248. package/dist/contact-faq.d.cts +20 -2
  249. package/dist/contact-faq.d.ts +20 -2
  250. package/dist/contact-faq.js +479 -91
  251. package/dist/contact-feedback.cjs +450 -63
  252. package/dist/contact-feedback.d.cts +20 -2
  253. package/dist/contact-feedback.d.ts +20 -2
  254. package/dist/contact-feedback.js +451 -63
  255. package/dist/contact-fitness.cjs +489 -102
  256. package/dist/contact-fitness.d.cts +20 -2
  257. package/dist/contact-fitness.d.ts +20 -2
  258. package/dist/contact-fitness.js +490 -102
  259. package/dist/contact-floating-banner.cjs +5 -5
  260. package/dist/contact-floating-banner.js +5 -5
  261. package/dist/contact-guest.cjs +489 -102
  262. package/dist/contact-guest.d.cts +20 -2
  263. package/dist/contact-guest.d.ts +20 -2
  264. package/dist/contact-guest.js +490 -102
  265. package/dist/contact-image.cjs +489 -102
  266. package/dist/contact-image.d.cts +20 -2
  267. package/dist/contact-image.d.ts +20 -2
  268. package/dist/contact-image.js +490 -102
  269. package/dist/contact-insurance.cjs +489 -102
  270. package/dist/contact-insurance.d.cts +20 -2
  271. package/dist/contact-insurance.d.ts +20 -2
  272. package/dist/contact-insurance.js +490 -102
  273. package/dist/contact-interview.cjs +489 -102
  274. package/dist/contact-interview.d.cts +20 -2
  275. package/dist/contact-interview.d.ts +20 -2
  276. package/dist/contact-interview.js +490 -102
  277. package/dist/contact-locations.cjs +489 -102
  278. package/dist/contact-locations.d.cts +20 -2
  279. package/dist/contact-locations.d.ts +20 -2
  280. package/dist/contact-locations.js +490 -102
  281. package/dist/contact-maintenance.cjs +489 -102
  282. package/dist/contact-maintenance.d.cts +20 -2
  283. package/dist/contact-maintenance.d.ts +20 -2
  284. package/dist/contact-maintenance.js +490 -102
  285. package/dist/contact-map.cjs +489 -102
  286. package/dist/contact-map.d.cts +20 -2
  287. package/dist/contact-map.d.ts +20 -2
  288. package/dist/contact-map.js +490 -102
  289. package/dist/contact-minimal.cjs +466 -79
  290. package/dist/contact-minimal.d.cts +32 -1
  291. package/dist/contact-minimal.d.ts +32 -1
  292. package/dist/contact-minimal.js +467 -79
  293. package/dist/contact-moving.cjs +489 -102
  294. package/dist/contact-moving.d.cts +20 -2
  295. package/dist/contact-moving.d.ts +20 -2
  296. package/dist/contact-moving.js +490 -102
  297. package/dist/contact-multistep.cjs +489 -102
  298. package/dist/contact-multistep.d.cts +20 -2
  299. package/dist/contact-multistep.d.ts +20 -2
  300. package/dist/contact-multistep.js +490 -102
  301. package/dist/contact-partnership.cjs +489 -102
  302. package/dist/contact-partnership.d.cts +20 -2
  303. package/dist/contact-partnership.d.ts +20 -2
  304. package/dist/contact-partnership.js +490 -102
  305. package/dist/contact-photography.cjs +489 -102
  306. package/dist/contact-photography.d.cts +20 -2
  307. package/dist/contact-photography.d.ts +20 -2
  308. package/dist/contact-photography.js +490 -102
  309. package/dist/contact-press.cjs +489 -102
  310. package/dist/contact-press.d.cts +20 -2
  311. package/dist/contact-press.d.ts +20 -2
  312. package/dist/contact-press.js +490 -102
  313. package/dist/contact-quote.cjs +489 -102
  314. package/dist/contact-quote.d.cts +20 -2
  315. package/dist/contact-quote.d.ts +20 -2
  316. package/dist/contact-quote.js +490 -102
  317. package/dist/contact-referral.cjs +489 -102
  318. package/dist/contact-referral.d.cts +20 -2
  319. package/dist/contact-referral.d.ts +20 -2
  320. package/dist/contact-referral.js +490 -102
  321. package/dist/contact-report.cjs +489 -102
  322. package/dist/contact-report.d.cts +20 -2
  323. package/dist/contact-report.d.ts +20 -2
  324. package/dist/contact-report.js +490 -102
  325. package/dist/contact-reservation.cjs +489 -102
  326. package/dist/contact-reservation.d.cts +20 -2
  327. package/dist/contact-reservation.d.ts +20 -2
  328. package/dist/contact-reservation.js +490 -102
  329. package/dist/contact-retreat.cjs +489 -102
  330. package/dist/contact-retreat.d.cts +20 -2
  331. package/dist/contact-retreat.d.ts +20 -2
  332. package/dist/contact-retreat.js +490 -102
  333. package/dist/contact-rsvp.cjs +489 -102
  334. package/dist/contact-rsvp.d.cts +20 -2
  335. package/dist/contact-rsvp.d.ts +20 -2
  336. package/dist/contact-rsvp.js +490 -102
  337. package/dist/contact-sales.cjs +489 -102
  338. package/dist/contact-sales.d.cts +20 -1
  339. package/dist/contact-sales.d.ts +20 -1
  340. package/dist/contact-sales.js +490 -102
  341. package/dist/contact-schedule.cjs +489 -102
  342. package/dist/contact-schedule.d.cts +20 -2
  343. package/dist/contact-schedule.d.ts +20 -2
  344. package/dist/contact-schedule.js +490 -102
  345. package/dist/contact-sponsorship.cjs +489 -102
  346. package/dist/contact-sponsorship.d.cts +20 -2
  347. package/dist/contact-sponsorship.d.ts +20 -2
  348. package/dist/contact-sponsorship.js +490 -102
  349. package/dist/contact-support.cjs +463 -76
  350. package/dist/contact-support.d.cts +20 -2
  351. package/dist/contact-support.d.ts +20 -2
  352. package/dist/contact-support.js +464 -76
  353. package/dist/contact-tenant.cjs +489 -102
  354. package/dist/contact-tenant.d.cts +20 -2
  355. package/dist/contact-tenant.d.ts +20 -2
  356. package/dist/contact-tenant.js +490 -102
  357. package/dist/contact-vendor.cjs +489 -102
  358. package/dist/contact-vendor.d.cts +20 -2
  359. package/dist/contact-vendor.d.ts +20 -2
  360. package/dist/contact-vendor.js +490 -102
  361. package/dist/contact-volunteer.cjs +489 -102
  362. package/dist/contact-volunteer.d.cts +20 -2
  363. package/dist/contact-volunteer.d.ts +20 -2
  364. package/dist/contact-volunteer.js +490 -102
  365. package/dist/contact-warranty.cjs +489 -102
  366. package/dist/contact-warranty.d.cts +20 -2
  367. package/dist/contact-warranty.d.ts +20 -2
  368. package/dist/contact-warranty.js +490 -102
  369. package/dist/contact-wedding.cjs +489 -102
  370. package/dist/contact-wedding.d.cts +20 -2
  371. package/dist/contact-wedding.d.ts +20 -2
  372. package/dist/contact-wedding.js +490 -102
  373. package/dist/cta-accent-background.cjs +11 -11
  374. package/dist/cta-accent-background.js +12 -12
  375. package/dist/cta-app-download-newsletter.cjs +16 -135
  376. package/dist/cta-app-download-newsletter.js +17 -136
  377. package/dist/cta-background-icon-badge.cjs +12 -131
  378. package/dist/cta-background-icon-badge.js +13 -132
  379. package/dist/cta-case-study-testimonial.cjs +31 -154
  380. package/dist/cta-case-study-testimonial.js +32 -155
  381. package/dist/cta-documentation-links.cjs +15 -15
  382. package/dist/cta-documentation-links.js +16 -16
  383. package/dist/cta-enterprise-dark-features.cjs +21 -21
  384. package/dist/cta-enterprise-dark-features.js +22 -22
  385. package/dist/cta-enterprise-split.cjs +14 -14
  386. package/dist/cta-enterprise-split.js +15 -15
  387. package/dist/cta-feature-cards-grid.cjs +16 -16
  388. package/dist/cta-feature-cards-grid.js +17 -17
  389. package/dist/cta-feature-checklist.cjs +14 -14
  390. package/dist/cta-feature-checklist.js +15 -15
  391. package/dist/cta-feature-list.cjs +16 -135
  392. package/dist/cta-feature-list.js +17 -136
  393. package/dist/cta-fullwidth-background.cjs +14 -133
  394. package/dist/cta-fullwidth-background.js +15 -134
  395. package/dist/cta-gradient-logos-floating.cjs +17 -17
  396. package/dist/cta-gradient-logos-floating.js +18 -18
  397. package/dist/cta-gradient-stats-hero.cjs +16 -16
  398. package/dist/cta-gradient-stats-hero.js +17 -17
  399. package/dist/cta-hero-feature-cards.cjs +36 -136
  400. package/dist/cta-hero-feature-cards.js +37 -137
  401. package/dist/cta-image-overlay-arrow.cjs +12 -131
  402. package/dist/cta-image-overlay-arrow.js +13 -132
  403. package/dist/cta-image-overlay-centered.cjs +12 -131
  404. package/dist/cta-image-overlay-centered.js +13 -132
  405. package/dist/cta-minimal-separator.cjs +8 -8
  406. package/dist/cta-minimal-separator.js +9 -9
  407. package/dist/cta-newsletter-features.cjs +14 -14
  408. package/dist/cta-newsletter-features.js +15 -15
  409. package/dist/cta-pattern-background.cjs +11 -11
  410. package/dist/cta-pattern-background.js +12 -12
  411. package/dist/cta-platform-demo.cjs +16 -139
  412. package/dist/cta-platform-demo.js +17 -140
  413. package/dist/cta-simple-centered.cjs +11 -11
  414. package/dist/cta-simple-centered.js +12 -12
  415. package/dist/cta-split-gradient-image.cjs +14 -133
  416. package/dist/cta-split-gradient-image.js +15 -134
  417. package/dist/cta-split-image-logos.cjs +17 -136
  418. package/dist/cta-split-image-logos.js +18 -137
  419. package/dist/cta-split-image.cjs +60 -174
  420. package/dist/cta-split-image.js +61 -175
  421. package/dist/cta-stacked-cards.cjs +11 -11
  422. package/dist/cta-stacked-cards.js +12 -12
  423. package/dist/cta-video-background-hero.cjs +16 -100
  424. package/dist/cta-video-background-hero.js +17 -101
  425. package/dist/cta-workflow-tabs.cjs +18 -137
  426. package/dist/cta-workflow-tabs.js +19 -138
  427. package/dist/hero-ad-campaign-expert.cjs +2 -2
  428. package/dist/hero-ad-campaign-expert.js +2 -2
  429. package/dist/hero-adaptable-product-grid.cjs +2 -2
  430. package/dist/hero-adaptable-product-grid.js +2 -2
  431. package/dist/hero-agency-animated-images.cjs +2 -2
  432. package/dist/hero-agency-animated-images.js +2 -2
  433. package/dist/hero-ai-powered-carousel.cjs +2 -2
  434. package/dist/hero-ai-powered-carousel.js +2 -2
  435. package/dist/hero-announcement-badge.cjs +2 -2
  436. package/dist/hero-announcement-badge.js +2 -2
  437. package/dist/hero-architecture-fullscreen.cjs +2 -2
  438. package/dist/hero-architecture-fullscreen.js +2 -2
  439. package/dist/hero-badge-image-split.cjs +2 -2
  440. package/dist/hero-badge-image-split.js +2 -2
  441. package/dist/hero-badge-shadow-overlay.cjs +2 -2
  442. package/dist/hero-badge-shadow-overlay.js +2 -2
  443. package/dist/hero-billing-platform-logos.cjs +2 -2
  444. package/dist/hero-billing-platform-logos.js +2 -2
  445. package/dist/hero-business-carousel-dots.cjs +2 -2
  446. package/dist/hero-business-carousel-dots.js +2 -2
  447. package/dist/hero-business-operations-mosaic.cjs +2 -2
  448. package/dist/hero-business-operations-mosaic.js +2 -2
  449. package/dist/hero-centered-gradient-cta.cjs +2 -2
  450. package/dist/hero-centered-gradient-cta.js +2 -2
  451. package/dist/hero-centered-image-grid.cjs +2 -2
  452. package/dist/hero-centered-image-grid.js +2 -2
  453. package/dist/hero-centered-screenshot.cjs +2 -2
  454. package/dist/hero-centered-screenshot.js +2 -2
  455. package/dist/hero-coming-soon-countdown.cjs +2 -2
  456. package/dist/hero-coming-soon-countdown.js +2 -2
  457. package/dist/hero-community-survey-cta.cjs +2 -2
  458. package/dist/hero-community-survey-cta.js +2 -2
  459. package/dist/hero-conversation-intelligence.cjs +2 -2
  460. package/dist/hero-conversation-intelligence.js +2 -2
  461. package/dist/hero-conversion-video-play.cjs +2 -2
  462. package/dist/hero-conversion-video-play.js +2 -2
  463. package/dist/hero-creative-studio-stacked.cjs +2 -2
  464. package/dist/hero-creative-studio-stacked.js +2 -2
  465. package/dist/hero-crm-streamlined.cjs +2 -2
  466. package/dist/hero-crm-streamlined.js +2 -2
  467. package/dist/hero-customer-support-layered.cjs +2 -2
  468. package/dist/hero-customer-support-layered.js +2 -2
  469. package/dist/hero-dashed-border-features.cjs +2 -2
  470. package/dist/hero-dashed-border-features.js +2 -2
  471. package/dist/hero-design-carousel-portfolio.cjs +2 -2
  472. package/dist/hero-design-carousel-portfolio.js +2 -2
  473. package/dist/hero-design-showcase-logos.cjs +2 -2
  474. package/dist/hero-design-showcase-logos.js +2 -2
  475. package/dist/hero-design-system-3d.cjs +2 -2
  476. package/dist/hero-design-system-3d.js +2 -2
  477. package/dist/hero-developer-tools-code.cjs +2 -2
  478. package/dist/hero-developer-tools-code.js +2 -2
  479. package/dist/hero-digital-agency-fullscreen.cjs +2 -2
  480. package/dist/hero-digital-agency-fullscreen.js +2 -2
  481. package/dist/hero-ecommerce-product-showcase.cjs +2 -2
  482. package/dist/hero-ecommerce-product-showcase.js +2 -2
  483. package/dist/hero-enterprise-security.cjs +2 -2
  484. package/dist/hero-enterprise-security.js +2 -2
  485. package/dist/hero-event-registration.cjs +2 -2
  486. package/dist/hero-event-registration.js +2 -2
  487. package/dist/hero-feature-cards-grid.cjs +2 -2
  488. package/dist/hero-feature-cards-grid.js +2 -2
  489. package/dist/hero-fullscreen-background-image.cjs +2 -2
  490. package/dist/hero-fullscreen-background-image.js +2 -2
  491. package/dist/hero-fullscreen-logo-cta.cjs +2 -2
  492. package/dist/hero-fullscreen-logo-cta.js +2 -2
  493. package/dist/hero-gradient-avatars-rating.cjs +2 -2
  494. package/dist/hero-gradient-avatars-rating.js +2 -2
  495. package/dist/hero-gradient-client-focused.cjs +2 -2
  496. package/dist/hero-gradient-client-focused.js +2 -2
  497. package/dist/hero-grid-pattern-efficiency.cjs +2 -2
  498. package/dist/hero-grid-pattern-efficiency.js +2 -2
  499. package/dist/hero-grid-pattern-solutions.cjs +2 -2
  500. package/dist/hero-grid-pattern-solutions.js +2 -2
  501. package/dist/hero-hiring-animated-text.cjs +2 -2
  502. package/dist/hero-hiring-animated-text.js +2 -2
  503. package/dist/hero-image-left-content.cjs +2 -2
  504. package/dist/hero-image-left-content.js +2 -2
  505. package/dist/hero-image-slider.cjs +2 -2
  506. package/dist/hero-image-slider.js +2 -2
  507. package/dist/hero-innovation-image-grid.cjs +2 -2
  508. package/dist/hero-innovation-image-grid.js +2 -2
  509. package/dist/hero-logo-centered-screenshot.cjs +2 -2
  510. package/dist/hero-logo-centered-screenshot.js +2 -2
  511. package/dist/hero-marketplace-scattered-images.cjs +2 -2
  512. package/dist/hero-marketplace-scattered-images.js +2 -2
  513. package/dist/hero-mental-health-team.cjs +2 -2
  514. package/dist/hero-mental-health-team.js +2 -2
  515. package/dist/hero-mentorship-video-split.cjs +2 -2
  516. package/dist/hero-mentorship-video-split.js +2 -2
  517. package/dist/hero-minimal-centered-dark.cjs +2 -2
  518. package/dist/hero-minimal-centered-dark.js +2 -2
  519. package/dist/hero-mobile-app-download.cjs +2 -2
  520. package/dist/hero-mobile-app-download.js +2 -2
  521. package/dist/hero-newsletter-minimal.cjs +2 -2
  522. package/dist/hero-newsletter-minimal.js +2 -2
  523. package/dist/hero-pattern-badge-logos.cjs +2 -2
  524. package/dist/hero-pattern-badge-logos.js +2 -2
  525. package/dist/hero-pattern-logo-tech-stack.cjs +2 -2
  526. package/dist/hero-pattern-logo-tech-stack.js +2 -2
  527. package/dist/hero-platform-features-grid.cjs +2 -2
  528. package/dist/hero-platform-features-grid.js +2 -2
  529. package/dist/hero-portfolio-creative.cjs +2 -2
  530. package/dist/hero-portfolio-creative.js +2 -2
  531. package/dist/hero-premium-split-avatars.cjs +2 -2
  532. package/dist/hero-premium-split-avatars.js +2 -2
  533. package/dist/hero-presentation-platform-video.cjs +2 -2
  534. package/dist/hero-presentation-platform-video.js +2 -2
  535. package/dist/hero-pricing-comparison.cjs +2 -2
  536. package/dist/hero-pricing-comparison.js +2 -2
  537. package/dist/hero-product-showcase-floating.cjs +2 -2
  538. package/dist/hero-product-showcase-floating.js +2 -2
  539. package/dist/hero-productivity-launcher-video.cjs +2 -2
  540. package/dist/hero-productivity-launcher-video.js +2 -2
  541. package/dist/hero-saas-dashboard-preview.cjs +2 -2
  542. package/dist/hero-saas-dashboard-preview.js +2 -2
  543. package/dist/hero-shared-inbox-layered.cjs +2 -2
  544. package/dist/hero-shared-inbox-layered.js +2 -2
  545. package/dist/hero-simple-centered-image.cjs +2 -2
  546. package/dist/hero-simple-centered-image.js +2 -2
  547. package/dist/hero-software-growth-video-dialog.cjs +2 -2
  548. package/dist/hero-software-growth-video-dialog.js +2 -2
  549. package/dist/hero-spiral-pattern-cards.cjs +2 -2
  550. package/dist/hero-spiral-pattern-cards.js +2 -2
  551. package/dist/hero-split-geometric-shapes.cjs +2 -2
  552. package/dist/hero-split-geometric-shapes.js +2 -2
  553. package/dist/hero-split-icon-cards.cjs +1 -1
  554. package/dist/hero-split-icon-cards.js +1 -1
  555. package/dist/hero-split-image-newsletter.cjs +2 -2
  556. package/dist/hero-split-image-newsletter.js +2 -2
  557. package/dist/hero-split-spiral-shapes.cjs +2 -2
  558. package/dist/hero-split-spiral-shapes.js +2 -2
  559. package/dist/hero-startup-launch-cta.cjs +2 -2
  560. package/dist/hero-startup-launch-cta.js +2 -2
  561. package/dist/hero-stats-social-proof.cjs +2 -2
  562. package/dist/hero-stats-social-proof.js +2 -2
  563. package/dist/hero-task-timer-animated.cjs +2 -2
  564. package/dist/hero-task-timer-animated.js +2 -2
  565. package/dist/hero-tech-carousel.cjs +2 -2
  566. package/dist/hero-tech-carousel.js +2 -2
  567. package/dist/hero-therapy-testimonial-grid.cjs +2 -2
  568. package/dist/hero-therapy-testimonial-grid.js +2 -2
  569. package/dist/hero-ui-library-showcase.cjs +2 -2
  570. package/dist/hero-ui-library-showcase.js +2 -2
  571. package/dist/hero-video-background-dark.cjs +2 -2
  572. package/dist/hero-video-background-dark.js +2 -2
  573. package/dist/hero-video-dialog-gradient.cjs +2 -2
  574. package/dist/hero-video-dialog-gradient.js +2 -2
  575. package/dist/hero-video-overlay-stars.cjs +2 -2
  576. package/dist/hero-video-overlay-stars.js +2 -2
  577. package/dist/hero-welcome-asymmetric-images.cjs +2 -2
  578. package/dist/hero-welcome-asymmetric-images.js +2 -2
  579. package/dist/index.cjs +8 -8
  580. package/dist/index.js +9 -9
  581. package/dist/media-hover-ctas.cjs +7 -7
  582. package/dist/media-hover-ctas.js +7 -7
  583. package/dist/registry.cjs +10071 -8111
  584. package/dist/registry.js +10033 -8073
  585. package/package.json +2 -2
@@ -1,10 +1,10 @@
1
1
  "use client";
2
2
  'use strict';
3
3
 
4
+ var React = require('react');
4
5
  var clsx = require('clsx');
5
6
  var tailwindMerge = require('tailwind-merge');
6
7
  var img = require('@page-speed/img');
7
- var React = require('react');
8
8
  var classVarianceAuthority = require('class-variance-authority');
9
9
  var jsxRuntime = require('react/jsx-runtime');
10
10
 
@@ -28,7 +28,7 @@ function _interopNamespace(e) {
28
28
 
29
29
  var React__namespace = /*#__PURE__*/_interopNamespace(React);
30
30
 
31
- // lib/utils.ts
31
+ // components/blocks/about/about-vision-gallery.tsx
32
32
  function cn(...inputs) {
33
33
  return tailwindMerge.twMerge(clsx.clsx(inputs));
34
34
  }
@@ -460,34 +460,24 @@ function AboutVisionGallery({
460
460
  images,
461
461
  imagesSlot,
462
462
  imagesClassName,
463
- visionTitle = "Our Vision",
464
- visionTitleClassName,
465
- visionContent = `For years, the process of building custom software has remained challenging. Today, visual builders exist, but tailored solutions still require technical expertise and a lot of time. This is a problem for businesses and individuals alike.
466
-
467
- What if you could create custom software without writing a single line of code? What if you could build your own tools.
468
-
469
- With our platform, you can! Our tools let you design layouts and create functionality\u2014all without needing to code.
470
-
471
- We believe that everyone should be able to build their own solutions, regardless of their technical background.`,
472
- visionContentClassName,
473
- creatorsTitle = "Our Creators",
474
- creatorsTitleClassName,
475
- creatorsContent = `has been building web tools for over a decade, focusing on efficiency and user control in every project. We know that the best solutions are the ones that you can create yourself.
476
-
477
- We initially developed these solutions for our own team, and now everyone can benefit from them too. We are proud to offer a platform that is accessible to all, regardless of technical expertise.
478
-
479
- Our team is made up of talented individuals who are passionate about creating tools that empower users to build their own solutions with ease. We are dedicated to helping you achieve your goals, and we can't wait to see what you create!`,
480
- creatorsContentClassName,
481
- creatorsLinkText = "Our Company",
482
- creatorsLinkUrl = "#",
483
- ctaTitle = "Part of Our Global Team",
463
+ primarySectionTitle,
464
+ primarySectionTitleClassName,
465
+ primarySectionContent,
466
+ primarySectionContentClassName,
467
+ secondarySectionTitle,
468
+ secondarySectionTitleClassName,
469
+ secondarySectionContent,
470
+ secondarySectionContentClassName,
471
+ secondarySectionLinkText,
472
+ secondarySectionLinkUrl,
473
+ ctaTitle,
484
474
  ctaTitleClassName,
485
475
  ctaAction,
486
476
  ctaSlot,
487
477
  ctaClassName,
488
478
  optixFlowConfig
489
479
  }) {
490
- const renderImages = () => {
480
+ const imagesContent = React.useMemo(() => {
491
481
  if (imagesSlot) return imagesSlot;
492
482
  if (!images || images.length === 0) return null;
493
483
  return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("grid gap-3 md:grid-cols-2 lg:grid-cols-3", imagesClassName), children: images.map((image, idx) => /* @__PURE__ */ jsxRuntime.jsx(
@@ -500,8 +490,8 @@ Our team is made up of talented individuals who are passionate about creating to
500
490
  },
501
491
  idx
502
492
  )) });
503
- };
504
- const renderCta = () => {
493
+ }, [imagesSlot, images, imagesClassName, optixFlowConfig]);
494
+ const ctaContent = React.useMemo(() => {
505
495
  if (ctaSlot) return ctaSlot;
506
496
  if (!ctaAction) return null;
507
497
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -515,29 +505,32 @@ Our team is made up of talented individuals who are passionate about creating to
515
505
  children: ctaAction.label
516
506
  }
517
507
  );
518
- };
508
+ }, [ctaSlot, ctaAction]);
509
+ const hasPrimarySection = primarySectionTitle || primarySectionContent;
510
+ const hasSecondarySection = secondarySectionTitle || secondarySectionContent || secondarySectionLinkText;
511
+ const hasCtaSection = ctaTitle || ctaSlot || ctaAction;
519
512
  return /* @__PURE__ */ jsxRuntime.jsx("section", { className: cn("py-32", className), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("container", containerClassName), children: [
520
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mx-auto flex max-w-3xl flex-col gap-8 pb-28 text-center", children: [
513
+ (title || subtitle) && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mx-auto flex max-w-3xl flex-col gap-8 pb-28 text-center", children: [
521
514
  title && (typeof title === "string" ? /* @__PURE__ */ jsxRuntime.jsx("h1", { className: cn("text-4xl font-semibold md:text-7xl", titleClassName), children: title }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: titleClassName, children: title })),
522
515
  subtitle && (typeof subtitle === "string" ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: cn("text-xl font-medium text-muted-foreground", subtitleClassName), children: subtitle }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: subtitleClassName, children: subtitle }))
523
516
  ] }),
524
- renderImages(),
525
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mx-auto grid max-w-5xl gap-28 py-28 md:grid-cols-2", children: [
526
- /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
527
- visionTitle && (typeof visionTitle === "string" ? /* @__PURE__ */ jsxRuntime.jsx("h2", { className: cn("mb-5 text-4xl font-semibold", visionTitleClassName), children: visionTitle }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("mb-5", visionTitleClassName), children: visionTitle })),
528
- visionContent && (typeof visionContent === "string" ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: cn("text-xl leading-8 font-medium text-muted-foreground whitespace-pre-line", visionContentClassName), children: visionContent }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: visionContentClassName, children: visionContent }))
517
+ imagesContent,
518
+ (hasPrimarySection || hasSecondarySection) && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mx-auto grid max-w-5xl gap-28 py-28 md:grid-cols-2", children: [
519
+ hasPrimarySection && /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
520
+ primarySectionTitle && (typeof primarySectionTitle === "string" ? /* @__PURE__ */ jsxRuntime.jsx("h2", { className: cn("mb-5 text-4xl font-semibold", primarySectionTitleClassName), children: primarySectionTitle }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("mb-5", primarySectionTitleClassName), children: primarySectionTitle })),
521
+ primarySectionContent && (typeof primarySectionContent === "string" ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: cn("text-xl leading-8 font-medium text-muted-foreground whitespace-pre-line", primarySectionContentClassName), children: primarySectionContent }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: primarySectionContentClassName, children: primarySectionContent }))
529
522
  ] }),
530
- /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
531
- creatorsTitle && (typeof creatorsTitle === "string" ? /* @__PURE__ */ jsxRuntime.jsx("h2", { className: cn("mb-5 text-4xl font-semibold", creatorsTitleClassName), children: creatorsTitle }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("mb-5", creatorsTitleClassName), children: creatorsTitle })),
532
- /* @__PURE__ */ jsxRuntime.jsxs("p", { className: cn("text-xl leading-8 font-medium text-muted-foreground", creatorsContentClassName), children: [
533
- creatorsLinkText && creatorsLinkUrl && /* @__PURE__ */ jsxRuntime.jsx(Pressable, { href: creatorsLinkUrl, className: "mr-1 underline", children: creatorsLinkText }),
534
- creatorsContent
523
+ hasSecondarySection && /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
524
+ secondarySectionTitle && (typeof secondarySectionTitle === "string" ? /* @__PURE__ */ jsxRuntime.jsx("h2", { className: cn("mb-5 text-4xl font-semibold", secondarySectionTitleClassName), children: secondarySectionTitle }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("mb-5", secondarySectionTitleClassName), children: secondarySectionTitle })),
525
+ (secondarySectionContent || secondarySectionLinkText) && /* @__PURE__ */ jsxRuntime.jsxs("p", { className: cn("text-xl leading-8 font-medium text-muted-foreground", secondarySectionContentClassName), children: [
526
+ secondarySectionLinkText && secondarySectionLinkUrl && /* @__PURE__ */ jsxRuntime.jsx(Pressable, { href: secondarySectionLinkUrl, className: "mr-1 underline", children: secondarySectionLinkText }),
527
+ secondarySectionContent
535
528
  ] })
536
529
  ] })
537
530
  ] }),
538
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("mx-auto flex max-w-5xl flex-col items-center justify-between gap-8 rounded-2xl bg-muted/50 p-14 text-center md:flex-row md:text-left", ctaClassName), children: [
531
+ hasCtaSection && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("mx-auto flex max-w-5xl flex-col items-center justify-between gap-8 rounded-2xl bg-muted/50 p-14 text-center md:flex-row md:text-left", ctaClassName), children: [
539
532
  ctaTitle && (typeof ctaTitle === "string" ? /* @__PURE__ */ jsxRuntime.jsx("h3", { className: cn("text-3xl font-semibold whitespace-pre-line", ctaTitleClassName), children: ctaTitle }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: ctaTitleClassName, children: ctaTitle })),
540
- renderCta()
533
+ ctaContent
541
534
  ] })
542
535
  ] }) });
543
536
  }
@@ -4,7 +4,7 @@ import 'class-variance-authority';
4
4
  import './button-variants-lRElsmTc.cjs';
5
5
  import 'class-variance-authority/types';
6
6
 
7
- interface VisionGalleryImageItem {
7
+ interface GalleryImageItem {
8
8
  src: string;
9
9
  alt: string;
10
10
  }
@@ -36,7 +36,7 @@ interface AboutVisionGalleryProps {
36
36
  /**
37
37
  * Array of gallery images
38
38
  */
39
- images?: VisionGalleryImageItem[];
39
+ images?: GalleryImageItem[];
40
40
  /**
41
41
  * Custom slot for rendering images (overrides images array)
42
42
  */
@@ -46,47 +46,47 @@ interface AboutVisionGalleryProps {
46
46
  */
47
47
  imagesClassName?: string;
48
48
  /**
49
- * Vision section title
49
+ * Primary content section title
50
50
  */
51
- visionTitle?: React.ReactNode;
51
+ primarySectionTitle?: React.ReactNode;
52
52
  /**
53
- * Additional CSS classes for the vision title
53
+ * Additional CSS classes for the primary section title
54
54
  */
55
- visionTitleClassName?: string;
55
+ primarySectionTitleClassName?: string;
56
56
  /**
57
- * Vision section content
57
+ * Primary content section body
58
58
  */
59
- visionContent?: React.ReactNode;
59
+ primarySectionContent?: React.ReactNode;
60
60
  /**
61
- * Additional CSS classes for the vision content
61
+ * Additional CSS classes for the primary section content
62
62
  */
63
- visionContentClassName?: string;
63
+ primarySectionContentClassName?: string;
64
64
  /**
65
- * Creators section title
65
+ * Secondary content section title
66
66
  */
67
- creatorsTitle?: React.ReactNode;
67
+ secondarySectionTitle?: React.ReactNode;
68
68
  /**
69
- * Additional CSS classes for the creators title
69
+ * Additional CSS classes for the secondary section title
70
70
  */
71
- creatorsTitleClassName?: string;
71
+ secondarySectionTitleClassName?: string;
72
72
  /**
73
- * Creators section content
73
+ * Secondary content section body
74
74
  */
75
- creatorsContent?: React.ReactNode;
75
+ secondarySectionContent?: React.ReactNode;
76
76
  /**
77
- * Additional CSS classes for the creators content
77
+ * Additional CSS classes for the secondary section content
78
78
  */
79
- creatorsContentClassName?: string;
79
+ secondarySectionContentClassName?: string;
80
80
  /**
81
- * Creators link text
81
+ * Secondary section link text
82
82
  */
83
- creatorsLinkText?: React.ReactNode;
83
+ secondarySectionLinkText?: React.ReactNode;
84
84
  /**
85
- * Creators link URL
85
+ * Secondary section link URL
86
86
  */
87
- creatorsLinkUrl?: string;
87
+ secondarySectionLinkUrl?: string;
88
88
  /**
89
- * CTA section title
89
+ * Call-to-action section title
90
90
  */
91
91
  ctaTitle?: React.ReactNode;
92
92
  /**
@@ -110,6 +110,26 @@ interface AboutVisionGalleryProps {
110
110
  */
111
111
  optixFlowConfig?: OptixFlowConfig;
112
112
  }
113
- declare function AboutVisionGallery({ className, containerClassName, title, titleClassName, subtitle, subtitleClassName, images, imagesSlot, imagesClassName, visionTitle, visionTitleClassName, visionContent, visionContentClassName, creatorsTitle, creatorsTitleClassName, creatorsContent, creatorsContentClassName, creatorsLinkText, creatorsLinkUrl, ctaTitle, ctaTitleClassName, ctaAction, ctaSlot, ctaClassName, optixFlowConfig, }: AboutVisionGalleryProps): React.JSX.Element;
113
+ /**
114
+ * AboutVisionGallery - A two-column about section with image gallery, dual content areas,
115
+ * and a call-to-action banner. Features a hero area with title/subtitle, responsive image
116
+ * grid, two side-by-side content sections, and a prominent CTA section.
117
+ *
118
+ * @example
119
+ * ```tsx
120
+ * <AboutVisionGallery
121
+ * title="About Our Company"
122
+ * subtitle="Learn more about what we do"
123
+ * images={[{ src: "/image1.jpg", alt: "Team photo" }]}
124
+ * primarySectionTitle="Our Mission"
125
+ * primarySectionContent="We are dedicated to excellence..."
126
+ * secondarySectionTitle="Our Story"
127
+ * secondarySectionContent="Founded in 2020..."
128
+ * ctaTitle="Join Our Team"
129
+ * ctaAction={{ label: "View Careers", href: "/careers" }}
130
+ * />
131
+ * ```
132
+ */
133
+ declare function AboutVisionGallery({ className, containerClassName, title, titleClassName, subtitle, subtitleClassName, images, imagesSlot, imagesClassName, primarySectionTitle, primarySectionTitleClassName, primarySectionContent, primarySectionContentClassName, secondarySectionTitle, secondarySectionTitleClassName, secondarySectionContent, secondarySectionContentClassName, secondarySectionLinkText, secondarySectionLinkUrl, ctaTitle, ctaTitleClassName, ctaAction, ctaSlot, ctaClassName, optixFlowConfig, }: AboutVisionGalleryProps): React.JSX.Element;
114
134
 
115
135
  export { AboutVisionGallery, type AboutVisionGalleryProps };
@@ -4,7 +4,7 @@ import 'class-variance-authority';
4
4
  import './button-variants-lRElsmTc.js';
5
5
  import 'class-variance-authority/types';
6
6
 
7
- interface VisionGalleryImageItem {
7
+ interface GalleryImageItem {
8
8
  src: string;
9
9
  alt: string;
10
10
  }
@@ -36,7 +36,7 @@ interface AboutVisionGalleryProps {
36
36
  /**
37
37
  * Array of gallery images
38
38
  */
39
- images?: VisionGalleryImageItem[];
39
+ images?: GalleryImageItem[];
40
40
  /**
41
41
  * Custom slot for rendering images (overrides images array)
42
42
  */
@@ -46,47 +46,47 @@ interface AboutVisionGalleryProps {
46
46
  */
47
47
  imagesClassName?: string;
48
48
  /**
49
- * Vision section title
49
+ * Primary content section title
50
50
  */
51
- visionTitle?: React.ReactNode;
51
+ primarySectionTitle?: React.ReactNode;
52
52
  /**
53
- * Additional CSS classes for the vision title
53
+ * Additional CSS classes for the primary section title
54
54
  */
55
- visionTitleClassName?: string;
55
+ primarySectionTitleClassName?: string;
56
56
  /**
57
- * Vision section content
57
+ * Primary content section body
58
58
  */
59
- visionContent?: React.ReactNode;
59
+ primarySectionContent?: React.ReactNode;
60
60
  /**
61
- * Additional CSS classes for the vision content
61
+ * Additional CSS classes for the primary section content
62
62
  */
63
- visionContentClassName?: string;
63
+ primarySectionContentClassName?: string;
64
64
  /**
65
- * Creators section title
65
+ * Secondary content section title
66
66
  */
67
- creatorsTitle?: React.ReactNode;
67
+ secondarySectionTitle?: React.ReactNode;
68
68
  /**
69
- * Additional CSS classes for the creators title
69
+ * Additional CSS classes for the secondary section title
70
70
  */
71
- creatorsTitleClassName?: string;
71
+ secondarySectionTitleClassName?: string;
72
72
  /**
73
- * Creators section content
73
+ * Secondary content section body
74
74
  */
75
- creatorsContent?: React.ReactNode;
75
+ secondarySectionContent?: React.ReactNode;
76
76
  /**
77
- * Additional CSS classes for the creators content
77
+ * Additional CSS classes for the secondary section content
78
78
  */
79
- creatorsContentClassName?: string;
79
+ secondarySectionContentClassName?: string;
80
80
  /**
81
- * Creators link text
81
+ * Secondary section link text
82
82
  */
83
- creatorsLinkText?: React.ReactNode;
83
+ secondarySectionLinkText?: React.ReactNode;
84
84
  /**
85
- * Creators link URL
85
+ * Secondary section link URL
86
86
  */
87
- creatorsLinkUrl?: string;
87
+ secondarySectionLinkUrl?: string;
88
88
  /**
89
- * CTA section title
89
+ * Call-to-action section title
90
90
  */
91
91
  ctaTitle?: React.ReactNode;
92
92
  /**
@@ -110,6 +110,26 @@ interface AboutVisionGalleryProps {
110
110
  */
111
111
  optixFlowConfig?: OptixFlowConfig;
112
112
  }
113
- declare function AboutVisionGallery({ className, containerClassName, title, titleClassName, subtitle, subtitleClassName, images, imagesSlot, imagesClassName, visionTitle, visionTitleClassName, visionContent, visionContentClassName, creatorsTitle, creatorsTitleClassName, creatorsContent, creatorsContentClassName, creatorsLinkText, creatorsLinkUrl, ctaTitle, ctaTitleClassName, ctaAction, ctaSlot, ctaClassName, optixFlowConfig, }: AboutVisionGalleryProps): React.JSX.Element;
113
+ /**
114
+ * AboutVisionGallery - A two-column about section with image gallery, dual content areas,
115
+ * and a call-to-action banner. Features a hero area with title/subtitle, responsive image
116
+ * grid, two side-by-side content sections, and a prominent CTA section.
117
+ *
118
+ * @example
119
+ * ```tsx
120
+ * <AboutVisionGallery
121
+ * title="About Our Company"
122
+ * subtitle="Learn more about what we do"
123
+ * images={[{ src: "/image1.jpg", alt: "Team photo" }]}
124
+ * primarySectionTitle="Our Mission"
125
+ * primarySectionContent="We are dedicated to excellence..."
126
+ * secondarySectionTitle="Our Story"
127
+ * secondarySectionContent="Founded in 2020..."
128
+ * ctaTitle="Join Our Team"
129
+ * ctaAction={{ label: "View Careers", href: "/careers" }}
130
+ * />
131
+ * ```
132
+ */
133
+ declare function AboutVisionGallery({ className, containerClassName, title, titleClassName, subtitle, subtitleClassName, images, imagesSlot, imagesClassName, primarySectionTitle, primarySectionTitleClassName, primarySectionContent, primarySectionContentClassName, secondarySectionTitle, secondarySectionTitleClassName, secondarySectionContent, secondarySectionContentClassName, secondarySectionLinkText, secondarySectionLinkUrl, ctaTitle, ctaTitleClassName, ctaAction, ctaSlot, ctaClassName, optixFlowConfig, }: AboutVisionGalleryProps): React.JSX.Element;
114
134
 
115
135
  export { AboutVisionGallery, type AboutVisionGalleryProps };
@@ -1,12 +1,13 @@
1
1
  "use client";
2
+ import * as React from 'react';
3
+ import { useMemo } from 'react';
2
4
  import { clsx } from 'clsx';
3
5
  import { twMerge } from 'tailwind-merge';
4
6
  import { Img } from '@page-speed/img';
5
- import * as React from 'react';
6
7
  import { cva } from 'class-variance-authority';
7
8
  import { jsx, jsxs } from 'react/jsx-runtime';
8
9
 
9
- // lib/utils.ts
10
+ // components/blocks/about/about-vision-gallery.tsx
10
11
  function cn(...inputs) {
11
12
  return twMerge(clsx(inputs));
12
13
  }
@@ -438,34 +439,24 @@ function AboutVisionGallery({
438
439
  images,
439
440
  imagesSlot,
440
441
  imagesClassName,
441
- visionTitle = "Our Vision",
442
- visionTitleClassName,
443
- visionContent = `For years, the process of building custom software has remained challenging. Today, visual builders exist, but tailored solutions still require technical expertise and a lot of time. This is a problem for businesses and individuals alike.
444
-
445
- What if you could create custom software without writing a single line of code? What if you could build your own tools.
446
-
447
- With our platform, you can! Our tools let you design layouts and create functionality\u2014all without needing to code.
448
-
449
- We believe that everyone should be able to build their own solutions, regardless of their technical background.`,
450
- visionContentClassName,
451
- creatorsTitle = "Our Creators",
452
- creatorsTitleClassName,
453
- creatorsContent = `has been building web tools for over a decade, focusing on efficiency and user control in every project. We know that the best solutions are the ones that you can create yourself.
454
-
455
- We initially developed these solutions for our own team, and now everyone can benefit from them too. We are proud to offer a platform that is accessible to all, regardless of technical expertise.
456
-
457
- Our team is made up of talented individuals who are passionate about creating tools that empower users to build their own solutions with ease. We are dedicated to helping you achieve your goals, and we can't wait to see what you create!`,
458
- creatorsContentClassName,
459
- creatorsLinkText = "Our Company",
460
- creatorsLinkUrl = "#",
461
- ctaTitle = "Part of Our Global Team",
442
+ primarySectionTitle,
443
+ primarySectionTitleClassName,
444
+ primarySectionContent,
445
+ primarySectionContentClassName,
446
+ secondarySectionTitle,
447
+ secondarySectionTitleClassName,
448
+ secondarySectionContent,
449
+ secondarySectionContentClassName,
450
+ secondarySectionLinkText,
451
+ secondarySectionLinkUrl,
452
+ ctaTitle,
462
453
  ctaTitleClassName,
463
454
  ctaAction,
464
455
  ctaSlot,
465
456
  ctaClassName,
466
457
  optixFlowConfig
467
458
  }) {
468
- const renderImages = () => {
459
+ const imagesContent = useMemo(() => {
469
460
  if (imagesSlot) return imagesSlot;
470
461
  if (!images || images.length === 0) return null;
471
462
  return /* @__PURE__ */ jsx("div", { className: cn("grid gap-3 md:grid-cols-2 lg:grid-cols-3", imagesClassName), children: images.map((image, idx) => /* @__PURE__ */ jsx(
@@ -478,8 +469,8 @@ Our team is made up of talented individuals who are passionate about creating to
478
469
  },
479
470
  idx
480
471
  )) });
481
- };
482
- const renderCta = () => {
472
+ }, [imagesSlot, images, imagesClassName, optixFlowConfig]);
473
+ const ctaContent = useMemo(() => {
483
474
  if (ctaSlot) return ctaSlot;
484
475
  if (!ctaAction) return null;
485
476
  return /* @__PURE__ */ jsx(
@@ -493,29 +484,32 @@ Our team is made up of talented individuals who are passionate about creating to
493
484
  children: ctaAction.label
494
485
  }
495
486
  );
496
- };
487
+ }, [ctaSlot, ctaAction]);
488
+ const hasPrimarySection = primarySectionTitle || primarySectionContent;
489
+ const hasSecondarySection = secondarySectionTitle || secondarySectionContent || secondarySectionLinkText;
490
+ const hasCtaSection = ctaTitle || ctaSlot || ctaAction;
497
491
  return /* @__PURE__ */ jsx("section", { className: cn("py-32", className), children: /* @__PURE__ */ jsxs("div", { className: cn("container", containerClassName), children: [
498
- /* @__PURE__ */ jsxs("div", { className: "mx-auto flex max-w-3xl flex-col gap-8 pb-28 text-center", children: [
492
+ (title || subtitle) && /* @__PURE__ */ jsxs("div", { className: "mx-auto flex max-w-3xl flex-col gap-8 pb-28 text-center", children: [
499
493
  title && (typeof title === "string" ? /* @__PURE__ */ jsx("h1", { className: cn("text-4xl font-semibold md:text-7xl", titleClassName), children: title }) : /* @__PURE__ */ jsx("div", { className: titleClassName, children: title })),
500
494
  subtitle && (typeof subtitle === "string" ? /* @__PURE__ */ jsx("p", { className: cn("text-xl font-medium text-muted-foreground", subtitleClassName), children: subtitle }) : /* @__PURE__ */ jsx("div", { className: subtitleClassName, children: subtitle }))
501
495
  ] }),
502
- renderImages(),
503
- /* @__PURE__ */ jsxs("div", { className: "mx-auto grid max-w-5xl gap-28 py-28 md:grid-cols-2", children: [
504
- /* @__PURE__ */ jsxs("div", { children: [
505
- visionTitle && (typeof visionTitle === "string" ? /* @__PURE__ */ jsx("h2", { className: cn("mb-5 text-4xl font-semibold", visionTitleClassName), children: visionTitle }) : /* @__PURE__ */ jsx("div", { className: cn("mb-5", visionTitleClassName), children: visionTitle })),
506
- visionContent && (typeof visionContent === "string" ? /* @__PURE__ */ jsx("p", { className: cn("text-xl leading-8 font-medium text-muted-foreground whitespace-pre-line", visionContentClassName), children: visionContent }) : /* @__PURE__ */ jsx("div", { className: visionContentClassName, children: visionContent }))
496
+ imagesContent,
497
+ (hasPrimarySection || hasSecondarySection) && /* @__PURE__ */ jsxs("div", { className: "mx-auto grid max-w-5xl gap-28 py-28 md:grid-cols-2", children: [
498
+ hasPrimarySection && /* @__PURE__ */ jsxs("div", { children: [
499
+ primarySectionTitle && (typeof primarySectionTitle === "string" ? /* @__PURE__ */ jsx("h2", { className: cn("mb-5 text-4xl font-semibold", primarySectionTitleClassName), children: primarySectionTitle }) : /* @__PURE__ */ jsx("div", { className: cn("mb-5", primarySectionTitleClassName), children: primarySectionTitle })),
500
+ primarySectionContent && (typeof primarySectionContent === "string" ? /* @__PURE__ */ jsx("p", { className: cn("text-xl leading-8 font-medium text-muted-foreground whitespace-pre-line", primarySectionContentClassName), children: primarySectionContent }) : /* @__PURE__ */ jsx("div", { className: primarySectionContentClassName, children: primarySectionContent }))
507
501
  ] }),
508
- /* @__PURE__ */ jsxs("div", { children: [
509
- creatorsTitle && (typeof creatorsTitle === "string" ? /* @__PURE__ */ jsx("h2", { className: cn("mb-5 text-4xl font-semibold", creatorsTitleClassName), children: creatorsTitle }) : /* @__PURE__ */ jsx("div", { className: cn("mb-5", creatorsTitleClassName), children: creatorsTitle })),
510
- /* @__PURE__ */ jsxs("p", { className: cn("text-xl leading-8 font-medium text-muted-foreground", creatorsContentClassName), children: [
511
- creatorsLinkText && creatorsLinkUrl && /* @__PURE__ */ jsx(Pressable, { href: creatorsLinkUrl, className: "mr-1 underline", children: creatorsLinkText }),
512
- creatorsContent
502
+ hasSecondarySection && /* @__PURE__ */ jsxs("div", { children: [
503
+ secondarySectionTitle && (typeof secondarySectionTitle === "string" ? /* @__PURE__ */ jsx("h2", { className: cn("mb-5 text-4xl font-semibold", secondarySectionTitleClassName), children: secondarySectionTitle }) : /* @__PURE__ */ jsx("div", { className: cn("mb-5", secondarySectionTitleClassName), children: secondarySectionTitle })),
504
+ (secondarySectionContent || secondarySectionLinkText) && /* @__PURE__ */ jsxs("p", { className: cn("text-xl leading-8 font-medium text-muted-foreground", secondarySectionContentClassName), children: [
505
+ secondarySectionLinkText && secondarySectionLinkUrl && /* @__PURE__ */ jsx(Pressable, { href: secondarySectionLinkUrl, className: "mr-1 underline", children: secondarySectionLinkText }),
506
+ secondarySectionContent
513
507
  ] })
514
508
  ] })
515
509
  ] }),
516
- /* @__PURE__ */ jsxs("div", { className: cn("mx-auto flex max-w-5xl flex-col items-center justify-between gap-8 rounded-2xl bg-muted/50 p-14 text-center md:flex-row md:text-left", ctaClassName), children: [
510
+ hasCtaSection && /* @__PURE__ */ jsxs("div", { className: cn("mx-auto flex max-w-5xl flex-col items-center justify-between gap-8 rounded-2xl bg-muted/50 p-14 text-center md:flex-row md:text-left", ctaClassName), children: [
517
511
  ctaTitle && (typeof ctaTitle === "string" ? /* @__PURE__ */ jsx("h3", { className: cn("text-3xl font-semibold whitespace-pre-line", ctaTitleClassName), children: ctaTitle }) : /* @__PURE__ */ jsx("div", { className: ctaTitleClassName, children: ctaTitle })),
518
- renderCta()
512
+ ctaContent
519
513
  ] })
520
514
  ] }) });
521
515
  }
@@ -1,15 +1,15 @@
1
1
  'use strict';
2
2
 
3
+ var React = require('react');
3
4
  var clsx = require('clsx');
4
5
  var tailwindMerge = require('tailwind-merge');
5
- var React = require('react');
6
6
  var jsxRuntime = require('react/jsx-runtime');
7
7
 
8
8
  function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
9
9
 
10
10
  var React__default = /*#__PURE__*/_interopDefault(React);
11
11
 
12
- // lib/utils.ts
12
+ // components/blocks/about/alternating-blocks.tsx
13
13
  function cn(...inputs) {
14
14
  return tailwindMerge.twMerge(clsx.clsx(inputs));
15
15
  }
@@ -400,7 +400,7 @@ function AlternatingBlocks({
400
400
  sectionContentClassName,
401
401
  sectionMediaClassName
402
402
  }) {
403
- const renderSections = () => {
403
+ const sectionsContent = React.useMemo(() => {
404
404
  if (sectionsSlot) return sectionsSlot;
405
405
  if (!sections || sections.length === 0) return null;
406
406
  return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("space-y-12", sectionsClassName), children: sections.map((section, index) => /* @__PURE__ */ jsxRuntime.jsxs(
@@ -424,7 +424,7 @@ function AlternatingBlocks({
424
424
  },
425
425
  index
426
426
  )) });
427
- };
427
+ }, [sectionsSlot, sections, sectionsClassName, sectionItemClassName, sectionContentClassName, sectionMediaClassName]);
428
428
  return /* @__PURE__ */ jsxRuntime.jsxs(
429
429
  Section,
430
430
  {
@@ -438,7 +438,7 @@ function AlternatingBlocks({
438
438
  subtitle && typeof subtitle !== "string" && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mb-2 text-sm font-semibold uppercase tracking-wider text-primary", children: subtitle }),
439
439
  title && typeof title !== "string" && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-3xl font-bold tracking-tight md:text-4xl lg:text-5xl", children: title })
440
440
  ] }) : null,
441
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("mx-auto w-full max-w-[900px]", contentClassName), children: renderSections() })
441
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("mx-auto w-full max-w-[900px]", contentClassName), children: sectionsContent })
442
442
  ]
443
443
  }
444
444
  );
@@ -1,9 +1,9 @@
1
+ import React, { useMemo } from 'react';
1
2
  import { clsx } from 'clsx';
2
3
  import { twMerge } from 'tailwind-merge';
3
- import React from 'react';
4
4
  import { jsx, jsxs } from 'react/jsx-runtime';
5
5
 
6
- // lib/utils.ts
6
+ // components/blocks/about/alternating-blocks.tsx
7
7
  function cn(...inputs) {
8
8
  return twMerge(clsx(inputs));
9
9
  }
@@ -394,7 +394,7 @@ function AlternatingBlocks({
394
394
  sectionContentClassName,
395
395
  sectionMediaClassName
396
396
  }) {
397
- const renderSections = () => {
397
+ const sectionsContent = useMemo(() => {
398
398
  if (sectionsSlot) return sectionsSlot;
399
399
  if (!sections || sections.length === 0) return null;
400
400
  return /* @__PURE__ */ jsx("div", { className: cn("space-y-12", sectionsClassName), children: sections.map((section, index) => /* @__PURE__ */ jsxs(
@@ -418,7 +418,7 @@ function AlternatingBlocks({
418
418
  },
419
419
  index
420
420
  )) });
421
- };
421
+ }, [sectionsSlot, sections, sectionsClassName, sectionItemClassName, sectionContentClassName, sectionMediaClassName]);
422
422
  return /* @__PURE__ */ jsxs(
423
423
  Section,
424
424
  {
@@ -432,7 +432,7 @@ function AlternatingBlocks({
432
432
  subtitle && typeof subtitle !== "string" && /* @__PURE__ */ jsx("div", { className: "mb-2 text-sm font-semibold uppercase tracking-wider text-primary", children: subtitle }),
433
433
  title && typeof title !== "string" && /* @__PURE__ */ jsx("div", { className: "text-3xl font-bold tracking-tight md:text-4xl lg:text-5xl", children: title })
434
434
  ] }) : null,
435
- /* @__PURE__ */ jsx("div", { className: cn("mx-auto w-full max-w-[900px]", contentClassName), children: renderSections() })
435
+ /* @__PURE__ */ jsx("div", { className: cn("mx-auto w-full max-w-[900px]", contentClassName), children: sectionsContent })
436
436
  ]
437
437
  }
438
438
  );