@opensite/ui 2.0.7 → 2.0.9

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 (1207) hide show
  1. package/dist/about-company-profile.d.cts +3 -3
  2. package/dist/about-company-profile.d.ts +3 -3
  3. package/dist/about-culture-tabs.d.cts +3 -3
  4. package/dist/about-culture-tabs.d.ts +3 -3
  5. package/dist/about-developer-profile.d.cts +3 -3
  6. package/dist/about-developer-profile.d.ts +3 -3
  7. package/dist/about-developer-story.d.cts +3 -3
  8. package/dist/about-developer-story.d.ts +3 -3
  9. package/dist/about-expandable-values.d.cts +3 -3
  10. package/dist/about-expandable-values.d.ts +3 -3
  11. package/dist/about-interactive-tabs.d.cts +3 -3
  12. package/dist/about-interactive-tabs.d.ts +3 -3
  13. package/dist/about-location-info-hero.d.cts +3 -3
  14. package/dist/about-location-info-hero.d.ts +3 -3
  15. package/dist/about-minimal-story.d.cts +3 -3
  16. package/dist/about-minimal-story.d.ts +3 -3
  17. package/dist/about-mission-dual-image.d.cts +3 -3
  18. package/dist/about-mission-dual-image.d.ts +3 -3
  19. package/dist/about-mission-features.d.cts +3 -3
  20. package/dist/about-mission-features.d.ts +3 -3
  21. package/dist/about-mission-principles.d.cts +3 -3
  22. package/dist/about-mission-principles.d.ts +3 -3
  23. package/dist/about-network-spotlight.d.cts +3 -3
  24. package/dist/about-network-spotlight.d.ts +3 -3
  25. package/dist/about-split-hero.d.cts +3 -3
  26. package/dist/about-split-hero.d.ts +3 -3
  27. package/dist/about-startup-team.d.cts +3 -3
  28. package/dist/about-startup-team.d.ts +3 -3
  29. package/dist/about-stats-showcase.d.cts +3 -3
  30. package/dist/about-stats-showcase.d.ts +3 -3
  31. package/dist/about-stats-sidebar.d.cts +3 -3
  32. package/dist/about-stats-sidebar.d.ts +3 -3
  33. package/dist/about-story-expertise.d.cts +3 -3
  34. package/dist/about-story-expertise.d.ts +3 -3
  35. package/dist/about-story-gallery.d.cts +3 -3
  36. package/dist/about-story-gallery.d.ts +3 -3
  37. package/dist/about-story-hero.d.cts +3 -3
  38. package/dist/about-story-hero.d.ts +3 -3
  39. package/dist/about-streamline-team.d.cts +3 -3
  40. package/dist/about-streamline-team.d.ts +3 -3
  41. package/dist/about-vision-gallery.d.cts +3 -3
  42. package/dist/about-vision-gallery.d.ts +3 -3
  43. package/dist/alternating-blocks.d.cts +3 -3
  44. package/dist/alternating-blocks.d.ts +3 -3
  45. package/dist/animated-dialog.d.cts +3 -3
  46. package/dist/animated-dialog.d.ts +3 -3
  47. package/dist/article-breadcrumb-social.d.cts +3 -3
  48. package/dist/article-breadcrumb-social.d.ts +3 -3
  49. package/dist/article-chapters-author.d.cts +3 -3
  50. package/dist/article-chapters-author.d.ts +3 -3
  51. package/dist/article-compact-toc.d.cts +3 -3
  52. package/dist/article-compact-toc.d.ts +3 -3
  53. package/dist/article-hero-prose.d.cts +3 -3
  54. package/dist/article-hero-prose.d.ts +3 -3
  55. package/dist/article-sidebar-sticky.d.cts +3 -3
  56. package/dist/article-sidebar-sticky.d.ts +3 -3
  57. package/dist/article-split-animated.d.cts +3 -3
  58. package/dist/article-split-animated.d.ts +3 -3
  59. package/dist/article-toc-sidebar.d.cts +3 -3
  60. package/dist/article-toc-sidebar.d.ts +3 -3
  61. package/dist/auto-scroll-carousel.d.cts +3 -3
  62. package/dist/auto-scroll-carousel.d.ts +3 -3
  63. package/dist/badge.d.cts +1 -1
  64. package/dist/badge.d.ts +1 -1
  65. package/dist/banner-announcement-dismissible.d.cts +3 -3
  66. package/dist/banner-announcement-dismissible.d.ts +3 -3
  67. package/dist/banner-countdown-sale.d.cts +3 -3
  68. package/dist/banner-countdown-sale.d.ts +3 -3
  69. package/dist/banner-delivery-countdown.d.cts +3 -3
  70. package/dist/banner-delivery-countdown.d.ts +3 -3
  71. package/dist/banner-event-promo.d.cts +3 -3
  72. package/dist/banner-event-promo.d.ts +3 -3
  73. package/dist/banner-floating-offer.d.cts +3 -3
  74. package/dist/banner-floating-offer.d.ts +3 -3
  75. package/dist/banner-gdpr-rights.d.cts +3 -3
  76. package/dist/banner-gdpr-rights.d.ts +3 -3
  77. package/dist/banner-privacy-notice.d.cts +3 -3
  78. package/dist/banner-privacy-notice.d.ts +3 -3
  79. package/dist/banner-promo-cta.d.cts +3 -3
  80. package/dist/banner-promo-cta.d.ts +3 -3
  81. package/dist/banner-social-follow.d.cts +3 -3
  82. package/dist/banner-social-follow.d.ts +3 -3
  83. package/dist/banner-survey-incentive.d.cts +3 -3
  84. package/dist/banner-survey-incentive.d.ts +3 -3
  85. package/dist/{blocks-tmd_MRJv.d.cts → blocks-DP3Vofl4.d.cts} +1 -1
  86. package/dist/{blocks-DRE-f6cS.d.ts → blocks-XLPGq8A5.d.ts} +1 -1
  87. package/dist/blog-cards-read-time.d.cts +3 -3
  88. package/dist/blog-cards-read-time.d.ts +3 -3
  89. package/dist/blog-cards-tagline-cta.d.cts +3 -3
  90. package/dist/blog-cards-tagline-cta.d.ts +3 -3
  91. package/dist/blog-carousel-apple.d.cts +3 -3
  92. package/dist/blog-carousel-apple.d.ts +3 -3
  93. package/dist/blog-category-overlay.d.cts +3 -3
  94. package/dist/blog-category-overlay.d.ts +3 -3
  95. package/dist/blog-featured-popular.d.cts +3 -3
  96. package/dist/blog-featured-popular.d.ts +3 -3
  97. package/dist/blog-filtered-results.d.cts +3 -3
  98. package/dist/blog-filtered-results.d.ts +3 -3
  99. package/dist/blog-grid-author-cards.d.cts +3 -3
  100. package/dist/blog-grid-author-cards.d.ts +3 -3
  101. package/dist/blog-grid-nine-posts.d.cts +3 -3
  102. package/dist/blog-grid-nine-posts.d.ts +3 -3
  103. package/dist/blog-horizontal-cards.d.cts +3 -3
  104. package/dist/blog-horizontal-cards.d.ts +3 -3
  105. package/dist/blog-horizontal-timeline.d.cts +3 -3
  106. package/dist/blog-horizontal-timeline.d.ts +3 -3
  107. package/dist/blog-masonry-featured.d.cts +3 -3
  108. package/dist/blog-masonry-featured.d.ts +3 -3
  109. package/dist/blog-related-articles.d.cts +3 -3
  110. package/dist/blog-related-articles.d.ts +3 -3
  111. package/dist/blog-tech-insights.d.cts +3 -3
  112. package/dist/blog-tech-insights.d.ts +3 -3
  113. package/dist/blur-vignette-grid.d.cts +3 -3
  114. package/dist/blur-vignette-grid.d.ts +3 -3
  115. package/dist/{button-variants-8mtEHxev.d.cts → button-variants-CdNtNOuP.d.cts} +1 -1
  116. package/dist/{button-variants-8mtEHxev.d.ts → button-variants-CdNtNOuP.d.ts} +1 -1
  117. package/dist/button.d.cts +1 -1
  118. package/dist/button.d.ts +1 -1
  119. package/dist/carousel-animated-sections.d.cts +3 -3
  120. package/dist/carousel-animated-sections.d.ts +3 -3
  121. package/dist/carousel-auto-progress-slides.d.cts +3 -3
  122. package/dist/carousel-auto-progress-slides.d.ts +3 -3
  123. package/dist/carousel-autoplay-progress.d.cts +3 -3
  124. package/dist/carousel-autoplay-progress.d.ts +3 -3
  125. package/dist/carousel-badge-cards.d.cts +3 -3
  126. package/dist/carousel-badge-cards.d.ts +3 -3
  127. package/dist/carousel-demo-link.d.cts +3 -3
  128. package/dist/carousel-demo-link.d.ts +3 -3
  129. package/dist/carousel-feature-badge.d.cts +3 -3
  130. package/dist/carousel-feature-badge.d.ts +3 -3
  131. package/dist/carousel-fullscreen-scroll-fx.d.cts +3 -3
  132. package/dist/carousel-fullscreen-scroll-fx.d.ts +3 -3
  133. package/dist/carousel-gallery-thumbnails.d.cts +3 -3
  134. package/dist/carousel-gallery-thumbnails.d.ts +3 -3
  135. package/dist/carousel-gradient-overlay.d.cts +3 -3
  136. package/dist/carousel-gradient-overlay.d.ts +3 -3
  137. package/dist/carousel-gradient-text.d.cts +3 -3
  138. package/dist/carousel-gradient-text.d.ts +3 -3
  139. package/dist/carousel-horizontal-cards.d.cts +3 -3
  140. package/dist/carousel-horizontal-cards.d.ts +3 -3
  141. package/dist/carousel-icon-sidebar.d.cts +3 -3
  142. package/dist/carousel-icon-sidebar.d.ts +3 -3
  143. package/dist/carousel-icon-tabs.d.cts +3 -3
  144. package/dist/carousel-icon-tabs.d.ts +3 -3
  145. package/dist/carousel-image-hero.d.cts +3 -3
  146. package/dist/carousel-image-hero.d.ts +3 -3
  147. package/dist/carousel-multi-step-showcase.d.cts +3 -3
  148. package/dist/carousel-multi-step-showcase.d.ts +3 -3
  149. package/dist/carousel-portfolio-hero.d.cts +3 -3
  150. package/dist/carousel-portfolio-hero.d.ts +3 -3
  151. package/dist/carousel-product-feature-showcase.d.cts +3 -3
  152. package/dist/carousel-product-feature-showcase.d.ts +3 -3
  153. package/dist/carousel-progress-slider.d.cts +3 -3
  154. package/dist/carousel-progress-slider.d.ts +3 -3
  155. package/dist/carousel-scale-focus.d.cts +3 -3
  156. package/dist/carousel-scale-focus.d.ts +3 -3
  157. package/dist/carousel-scrolling-feature-showcase.d.cts +3 -3
  158. package/dist/carousel-scrolling-feature-showcase.d.ts +3 -3
  159. package/dist/carousel-sidebar-resources.d.cts +3 -3
  160. package/dist/carousel-sidebar-resources.d.ts +3 -3
  161. package/dist/carousel-tabs-content.d.cts +3 -3
  162. package/dist/carousel-tabs-content.d.ts +3 -3
  163. package/dist/case-studies-featured-border.d.cts +3 -3
  164. package/dist/case-studies-featured-border.d.ts +3 -3
  165. package/dist/case-studies-image-grid.d.cts +3 -3
  166. package/dist/case-studies-image-grid.d.ts +3 -3
  167. package/dist/case-studies-stats-card.d.cts +3 -3
  168. package/dist/case-studies-stats-card.d.ts +3 -3
  169. package/dist/case-studies-testimonial-stats.d.cts +3 -3
  170. package/dist/case-studies-testimonial-stats.d.ts +3 -3
  171. package/dist/case-study-prose-sidebar.d.cts +3 -3
  172. package/dist/case-study-prose-sidebar.d.ts +3 -3
  173. package/dist/case-study-stats-metrics.d.cts +3 -3
  174. package/dist/case-study-stats-metrics.d.ts +3 -3
  175. package/dist/case-study-toc-social-sidebar.d.cts +3 -3
  176. package/dist/case-study-toc-social-sidebar.d.ts +3 -3
  177. package/dist/{community-initiatives-hxnFe3w6.d.ts → community-initiatives-DmVsuoHE.d.ts} +1 -1
  178. package/dist/{community-initiatives-CPyEa7IX.d.cts → community-initiatives-r_NhxVet.d.cts} +1 -1
  179. package/dist/community-initiatives.d.cts +3 -3
  180. package/dist/community-initiatives.d.ts +3 -3
  181. package/dist/comparison-ai-models.d.cts +3 -3
  182. package/dist/comparison-ai-models.d.ts +3 -3
  183. package/dist/comparison-feature-cards.d.cts +3 -3
  184. package/dist/comparison-feature-cards.d.ts +3 -3
  185. package/dist/comparison-feature-grid.d.cts +3 -3
  186. package/dist/comparison-feature-grid.d.ts +3 -3
  187. package/dist/comparison-grid-badges.d.cts +3 -3
  188. package/dist/comparison-grid-badges.d.ts +3 -3
  189. package/dist/comparison-image-cards.d.cts +3 -3
  190. package/dist/comparison-image-cards.d.ts +3 -3
  191. package/dist/comparison-legacy-modern.d.cts +3 -3
  192. package/dist/comparison-legacy-modern.d.ts +3 -3
  193. package/dist/comparison-metrics-rows.d.cts +3 -3
  194. package/dist/comparison-metrics-rows.d.ts +3 -3
  195. package/dist/comparison-table-tabs.d.cts +3 -3
  196. package/dist/comparison-table-tabs.d.ts +3 -3
  197. package/dist/comparison-table-tooltips.d.cts +3 -3
  198. package/dist/comparison-table-tooltips.d.ts +3 -3
  199. package/dist/comparison-table-two-column.d.cts +3 -3
  200. package/dist/comparison-table-two-column.d.ts +3 -3
  201. package/dist/components.d.cts +3 -3
  202. package/dist/components.d.ts +3 -3
  203. package/dist/contact-callback.d.cts +3 -3
  204. package/dist/contact-callback.d.ts +3 -3
  205. package/dist/contact-card.d.cts +3 -3
  206. package/dist/contact-card.d.ts +3 -3
  207. package/dist/contact-careers.d.cts +3 -3
  208. package/dist/contact-careers.d.ts +3 -3
  209. package/dist/contact-catering.d.cts +3 -3
  210. package/dist/contact-catering.d.ts +3 -3
  211. package/dist/contact-consultation.d.cts +3 -3
  212. package/dist/contact-consultation.d.ts +3 -3
  213. package/dist/contact-dark.d.cts +3 -3
  214. package/dist/contact-dark.d.ts +3 -3
  215. package/dist/contact-demo.d.cts +3 -3
  216. package/dist/contact-demo.d.ts +3 -3
  217. package/dist/contact-emergency.d.cts +3 -3
  218. package/dist/contact-emergency.d.ts +3 -3
  219. package/dist/contact-event.d.cts +3 -3
  220. package/dist/contact-event.d.ts +3 -3
  221. package/dist/contact-faq.d.cts +3 -3
  222. package/dist/contact-faq.d.ts +3 -3
  223. package/dist/contact-feedback.d.cts +3 -3
  224. package/dist/contact-feedback.d.ts +3 -3
  225. package/dist/contact-fitness.d.cts +3 -3
  226. package/dist/contact-fitness.d.ts +3 -3
  227. package/dist/contact-floating-banner.d.cts +3 -3
  228. package/dist/contact-floating-banner.d.ts +3 -3
  229. package/dist/contact-guest.d.cts +3 -3
  230. package/dist/contact-guest.d.ts +3 -3
  231. package/dist/contact-help-center.d.cts +3 -3
  232. package/dist/contact-help-center.d.ts +3 -3
  233. package/dist/contact-image.d.cts +3 -3
  234. package/dist/contact-image.d.ts +3 -3
  235. package/dist/contact-insurance.d.cts +3 -3
  236. package/dist/contact-insurance.d.ts +3 -3
  237. package/dist/contact-interview.d.cts +3 -3
  238. package/dist/contact-interview.d.ts +3 -3
  239. package/dist/contact-locations.d.cts +3 -3
  240. package/dist/contact-locations.d.ts +3 -3
  241. package/dist/contact-maintenance.d.cts +3 -3
  242. package/dist/contact-maintenance.d.ts +3 -3
  243. package/dist/contact-map.d.cts +3 -3
  244. package/dist/contact-map.d.ts +3 -3
  245. package/dist/contact-minimal.d.cts +3 -3
  246. package/dist/contact-minimal.d.ts +3 -3
  247. package/dist/contact-moving.d.cts +3 -3
  248. package/dist/contact-moving.d.ts +3 -3
  249. package/dist/contact-multistep.d.cts +3 -3
  250. package/dist/contact-multistep.d.ts +3 -3
  251. package/dist/contact-partnership.d.cts +3 -3
  252. package/dist/contact-partnership.d.ts +3 -3
  253. package/dist/contact-photography.d.cts +3 -3
  254. package/dist/contact-photography.d.ts +3 -3
  255. package/dist/contact-press.d.cts +3 -3
  256. package/dist/contact-press.d.ts +3 -3
  257. package/dist/contact-quote.d.cts +3 -3
  258. package/dist/contact-quote.d.ts +3 -3
  259. package/dist/contact-referral.d.cts +3 -3
  260. package/dist/contact-referral.d.ts +3 -3
  261. package/dist/contact-report.d.cts +3 -3
  262. package/dist/contact-report.d.ts +3 -3
  263. package/dist/contact-reservation.d.cts +3 -3
  264. package/dist/contact-reservation.d.ts +3 -3
  265. package/dist/contact-retreat.d.cts +3 -3
  266. package/dist/contact-retreat.d.ts +3 -3
  267. package/dist/contact-rsvp.d.cts +3 -3
  268. package/dist/contact-rsvp.d.ts +3 -3
  269. package/dist/contact-sales.d.cts +3 -3
  270. package/dist/contact-sales.d.ts +3 -3
  271. package/dist/contact-schedule.d.cts +3 -3
  272. package/dist/contact-schedule.d.ts +3 -3
  273. package/dist/contact-sponsorship.d.cts +3 -3
  274. package/dist/contact-sponsorship.d.ts +3 -3
  275. package/dist/contact-support.d.cts +3 -3
  276. package/dist/contact-support.d.ts +3 -3
  277. package/dist/contact-tenant.d.cts +3 -3
  278. package/dist/contact-tenant.d.ts +3 -3
  279. package/dist/contact-vendor.d.cts +3 -3
  280. package/dist/contact-vendor.d.ts +3 -3
  281. package/dist/contact-volunteer.d.cts +3 -3
  282. package/dist/contact-volunteer.d.ts +3 -3
  283. package/dist/contact-warranty.d.cts +3 -3
  284. package/dist/contact-warranty.d.ts +3 -3
  285. package/dist/contact-wedding.d.cts +3 -3
  286. package/dist/contact-wedding.d.ts +3 -3
  287. package/dist/container.d.cts +3 -3
  288. package/dist/container.d.ts +3 -3
  289. package/dist/cta-accent-background.d.cts +3 -3
  290. package/dist/cta-accent-background.d.ts +3 -3
  291. package/dist/cta-app-download-newsletter.d.cts +3 -3
  292. package/dist/cta-app-download-newsletter.d.ts +3 -3
  293. package/dist/cta-background-icon-badge.d.cts +3 -3
  294. package/dist/cta-background-icon-badge.d.ts +3 -3
  295. package/dist/cta-case-study-testimonial.d.cts +3 -3
  296. package/dist/cta-case-study-testimonial.d.ts +3 -3
  297. package/dist/cta-documentation-links.d.cts +3 -3
  298. package/dist/cta-documentation-links.d.ts +3 -3
  299. package/dist/cta-enterprise-dark-features.d.cts +3 -3
  300. package/dist/cta-enterprise-dark-features.d.ts +3 -3
  301. package/dist/cta-enterprise-split.d.cts +3 -3
  302. package/dist/cta-enterprise-split.d.ts +3 -3
  303. package/dist/cta-feature-cards-grid.d.cts +3 -3
  304. package/dist/cta-feature-cards-grid.d.ts +3 -3
  305. package/dist/cta-feature-checklist.d.cts +3 -3
  306. package/dist/cta-feature-checklist.d.ts +3 -3
  307. package/dist/cta-feature-list.d.cts +3 -3
  308. package/dist/cta-feature-list.d.ts +3 -3
  309. package/dist/cta-fullwidth-background.d.cts +3 -3
  310. package/dist/cta-fullwidth-background.d.ts +3 -3
  311. package/dist/cta-gradient-logos-floating.d.cts +3 -3
  312. package/dist/cta-gradient-logos-floating.d.ts +3 -3
  313. package/dist/cta-gradient-stats-hero.d.cts +3 -3
  314. package/dist/cta-gradient-stats-hero.d.ts +3 -3
  315. package/dist/cta-hero-feature-cards.d.cts +3 -3
  316. package/dist/cta-hero-feature-cards.d.ts +3 -3
  317. package/dist/cta-image-overlay-arrow.d.cts +3 -3
  318. package/dist/cta-image-overlay-arrow.d.ts +3 -3
  319. package/dist/cta-image-overlay-centered.d.cts +3 -3
  320. package/dist/cta-image-overlay-centered.d.ts +3 -3
  321. package/dist/cta-minimal-separator.d.cts +3 -3
  322. package/dist/cta-minimal-separator.d.ts +3 -3
  323. package/dist/cta-newsletter-features.d.cts +3 -3
  324. package/dist/cta-newsletter-features.d.ts +3 -3
  325. package/dist/cta-pattern-background.d.cts +3 -3
  326. package/dist/cta-pattern-background.d.ts +3 -3
  327. package/dist/cta-platform-demo.d.cts +3 -3
  328. package/dist/cta-platform-demo.d.ts +3 -3
  329. package/dist/cta-simple-centered.d.cts +3 -3
  330. package/dist/cta-simple-centered.d.ts +3 -3
  331. package/dist/cta-split-gradient-image.d.cts +3 -3
  332. package/dist/cta-split-gradient-image.d.ts +3 -3
  333. package/dist/cta-split-image-logos.d.cts +3 -3
  334. package/dist/cta-split-image-logos.d.ts +3 -3
  335. package/dist/cta-split-image.d.cts +3 -3
  336. package/dist/cta-split-image.d.ts +3 -3
  337. package/dist/cta-stacked-cards.d.cts +3 -3
  338. package/dist/cta-stacked-cards.d.ts +3 -3
  339. package/dist/cta-video-background-hero.d.cts +3 -3
  340. package/dist/cta-video-background-hero.d.ts +3 -3
  341. package/dist/cta-workflow-tabs.d.cts +3 -3
  342. package/dist/cta-workflow-tabs.d.ts +3 -3
  343. package/dist/expandable-case-study-cards.d.cts +3 -3
  344. package/dist/expandable-case-study-cards.d.ts +3 -3
  345. package/dist/faq-badge-support.d.cts +3 -3
  346. package/dist/faq-badge-support.d.ts +3 -3
  347. package/dist/faq-bordered-badge.d.cts +3 -3
  348. package/dist/faq-bordered-badge.d.ts +3 -3
  349. package/dist/faq-card-categories.d.cts +3 -3
  350. package/dist/faq-card-categories.d.ts +3 -3
  351. package/dist/faq-categorized-sections.d.cts +3 -3
  352. package/dist/faq-categorized-sections.d.ts +3 -3
  353. package/dist/faq-centered-accordion.d.cts +3 -3
  354. package/dist/faq-centered-accordion.d.ts +3 -3
  355. package/dist/faq-gradient-categories.d.cts +3 -3
  356. package/dist/faq-gradient-categories.d.ts +3 -3
  357. package/dist/faq-icon-benefits.d.cts +3 -3
  358. package/dist/faq-icon-benefits.d.ts +3 -3
  359. package/dist/faq-muted-cards.d.cts +3 -3
  360. package/dist/faq-muted-cards.d.ts +3 -3
  361. package/dist/faq-numbered-grid.d.cts +3 -3
  362. package/dist/faq-numbered-grid.d.ts +3 -3
  363. package/dist/faq-numbered-list.d.cts +3 -3
  364. package/dist/faq-numbered-list.d.ts +3 -3
  365. package/dist/faq-profile-sidebar.d.cts +3 -3
  366. package/dist/faq-profile-sidebar.d.ts +3 -3
  367. package/dist/faq-rounded-cards.d.cts +3 -3
  368. package/dist/faq-rounded-cards.d.ts +3 -3
  369. package/dist/faq-sidebar-navigation.d.cts +3 -3
  370. package/dist/faq-sidebar-navigation.d.ts +3 -3
  371. package/dist/faq-simple-accordion.d.cts +3 -3
  372. package/dist/faq-simple-accordion.d.ts +3 -3
  373. package/dist/faq-split-help.d.cts +3 -3
  374. package/dist/faq-split-help.d.ts +3 -3
  375. package/dist/faq-split-hero.d.cts +3 -3
  376. package/dist/faq-split-hero.d.ts +3 -3
  377. package/dist/faq-static-list.d.cts +3 -3
  378. package/dist/faq-static-list.d.ts +3 -3
  379. package/dist/feature-accordion-image.d.cts +3 -3
  380. package/dist/feature-accordion-image.d.ts +3 -3
  381. package/dist/feature-animated-carousel.d.cts +3 -3
  382. package/dist/feature-animated-carousel.d.ts +3 -3
  383. package/dist/feature-badge-grid-six.d.cts +3 -3
  384. package/dist/feature-badge-grid-six.d.ts +3 -3
  385. package/dist/feature-bento-image-grid.d.cts +3 -3
  386. package/dist/feature-bento-image-grid.d.ts +3 -3
  387. package/dist/feature-bento-utilities.d.cts +3 -3
  388. package/dist/feature-bento-utilities.d.ts +3 -3
  389. package/dist/feature-capabilities-grid.d.cts +3 -3
  390. package/dist/feature-capabilities-grid.d.ts +3 -3
  391. package/dist/feature-card-grid-linked.d.cts +3 -3
  392. package/dist/feature-card-grid-linked.d.ts +3 -3
  393. package/dist/feature-carousel-progress.d.cts +3 -3
  394. package/dist/feature-carousel-progress.d.ts +3 -3
  395. package/dist/feature-category-image-cards.d.cts +3 -3
  396. package/dist/feature-category-image-cards.d.ts +3 -3
  397. package/dist/feature-checklist-image.d.cts +3 -3
  398. package/dist/feature-checklist-image.d.ts +3 -3
  399. package/dist/feature-checklist-three-column.d.cts +3 -3
  400. package/dist/feature-checklist-three-column.d.ts +3 -3
  401. package/dist/feature-icon-grid-accent.d.cts +3 -3
  402. package/dist/feature-icon-grid-accent.d.ts +3 -3
  403. package/dist/feature-icon-grid-bordered.d.cts +3 -3
  404. package/dist/feature-icon-grid-bordered.d.ts +3 -3
  405. package/dist/feature-icon-grid-muted.d.cts +3 -3
  406. package/dist/feature-icon-grid-muted.d.ts +3 -3
  407. package/dist/feature-icon-tabs-content.d.cts +3 -3
  408. package/dist/feature-icon-tabs-content.d.ts +3 -3
  409. package/dist/feature-image-cards-three-column.d.cts +3 -3
  410. package/dist/feature-image-cards-three-column.d.ts +3 -3
  411. package/dist/feature-image-overlay-badge.d.cts +3 -3
  412. package/dist/feature-image-overlay-badge.d.ts +3 -3
  413. package/dist/feature-integration-cards.d.cts +3 -3
  414. package/dist/feature-integration-cards.d.ts +3 -3
  415. package/dist/feature-numbered-cards.d.cts +3 -3
  416. package/dist/feature-numbered-cards.d.ts +3 -3
  417. package/dist/feature-pattern-grid-links.d.cts +3 -3
  418. package/dist/feature-pattern-grid-links.d.ts +3 -3
  419. package/dist/feature-showcase.d.cts +4 -4
  420. package/dist/feature-showcase.d.ts +4 -4
  421. package/dist/feature-split-image-reverse.d.cts +3 -3
  422. package/dist/feature-split-image-reverse.d.ts +3 -3
  423. package/dist/feature-split-image.d.cts +3 -3
  424. package/dist/feature-split-image.d.ts +3 -3
  425. package/dist/feature-stats-highlight.d.cts +3 -3
  426. package/dist/feature-stats-highlight.d.ts +3 -3
  427. package/dist/feature-tabbed-content-image.d.cts +3 -3
  428. package/dist/feature-tabbed-content-image.d.ts +3 -3
  429. package/dist/feature-three-column-values.d.cts +3 -3
  430. package/dist/feature-three-column-values.d.ts +3 -3
  431. package/dist/feature-utility-cards-grid.d.cts +3 -3
  432. package/dist/feature-utility-cards-grid.d.ts +3 -3
  433. package/dist/footer-accordion-social.d.cts +3 -3
  434. package/dist/footer-accordion-social.d.ts +3 -3
  435. package/dist/footer-animated-social.d.cts +3 -3
  436. package/dist/footer-animated-social.d.ts +3 -3
  437. package/dist/footer-background-card.d.cts +3 -3
  438. package/dist/footer-background-card.d.ts +3 -3
  439. package/dist/footer-brand-description.d.cts +3 -3
  440. package/dist/footer-brand-description.d.ts +3 -3
  441. package/dist/footer-brand-links-contact.d.cts +3 -3
  442. package/dist/footer-brand-links-contact.d.ts +3 -3
  443. package/dist/footer-comprehensive-links.d.cts +3 -3
  444. package/dist/footer-comprehensive-links.d.ts +3 -3
  445. package/dist/footer-contact-card.d.cts +3 -3
  446. package/dist/footer-contact-card.d.ts +3 -3
  447. package/dist/footer-cta-banner.d.cts +3 -3
  448. package/dist/footer-cta-banner.d.ts +3 -3
  449. package/dist/footer-cta-social.d.cts +3 -3
  450. package/dist/footer-cta-social.d.ts +3 -3
  451. package/dist/footer-info-cards-accordion.d.cts +3 -3
  452. package/dist/footer-info-cards-accordion.d.ts +3 -3
  453. package/dist/footer-links-grid.d.cts +3 -3
  454. package/dist/footer-links-grid.d.ts +3 -3
  455. package/dist/footer-nav-social.d.cts +3 -3
  456. package/dist/footer-nav-social.d.ts +3 -3
  457. package/dist/footer-newsletter-contact.d.cts +3 -3
  458. package/dist/footer-newsletter-contact.d.ts +3 -3
  459. package/dist/footer-newsletter-grid.d.cts +3 -3
  460. package/dist/footer-newsletter-grid.d.ts +3 -3
  461. package/dist/footer-newsletter-minimal.d.cts +3 -3
  462. package/dist/footer-newsletter-minimal.d.ts +3 -3
  463. package/dist/footer-simple-centered.d.cts +3 -3
  464. package/dist/footer-simple-centered.d.ts +3 -3
  465. package/dist/footer-social-apps.d.cts +3 -3
  466. package/dist/footer-social-apps.d.ts +3 -3
  467. package/dist/footer-social-newsletter.d.cts +3 -3
  468. package/dist/footer-social-newsletter.d.ts +3 -3
  469. package/dist/footer-split-image-accordion.d.cts +3 -3
  470. package/dist/footer-split-image-accordion.d.ts +3 -3
  471. package/dist/hero-ad-campaign-expert.d.cts +3 -3
  472. package/dist/hero-ad-campaign-expert.d.ts +3 -3
  473. package/dist/hero-adaptable-product-grid.d.cts +3 -3
  474. package/dist/hero-adaptable-product-grid.d.ts +3 -3
  475. package/dist/hero-agency-animated-images.cjs +780 -625
  476. package/dist/hero-agency-animated-images.d.cts +16 -12
  477. package/dist/hero-agency-animated-images.d.ts +16 -12
  478. package/dist/hero-agency-animated-images.js +779 -624
  479. package/dist/hero-ai-powered-carousel.d.cts +3 -3
  480. package/dist/hero-ai-powered-carousel.d.ts +3 -3
  481. package/dist/hero-announcement-badge.d.cts +3 -3
  482. package/dist/hero-announcement-badge.d.ts +3 -3
  483. package/dist/hero-architecture-fullscreen.d.cts +3 -3
  484. package/dist/hero-architecture-fullscreen.d.ts +3 -3
  485. package/dist/hero-badge-image-split.d.cts +3 -3
  486. package/dist/hero-badge-image-split.d.ts +3 -3
  487. package/dist/hero-badge-shadow-overlay.d.cts +3 -3
  488. package/dist/hero-badge-shadow-overlay.d.ts +3 -3
  489. package/dist/hero-billing-platform-logos.d.cts +3 -3
  490. package/dist/hero-billing-platform-logos.d.ts +3 -3
  491. package/dist/hero-business-carousel-dots.cjs +835 -914
  492. package/dist/hero-business-carousel-dots.d.cts +8 -4
  493. package/dist/hero-business-carousel-dots.d.ts +8 -4
  494. package/dist/hero-business-carousel-dots.js +837 -913
  495. package/dist/hero-business-operations-mosaic.d.cts +3 -3
  496. package/dist/hero-business-operations-mosaic.d.ts +3 -3
  497. package/dist/hero-centered-gradient-cta.d.cts +3 -3
  498. package/dist/hero-centered-gradient-cta.d.ts +3 -3
  499. package/dist/hero-centered-image-grid.d.cts +3 -3
  500. package/dist/hero-centered-image-grid.d.ts +3 -3
  501. package/dist/hero-centered-screenshot.d.cts +3 -3
  502. package/dist/hero-centered-screenshot.d.ts +3 -3
  503. package/dist/hero-coming-soon-countdown.cjs +267 -110
  504. package/dist/hero-coming-soon-countdown.d.cts +11 -14
  505. package/dist/hero-coming-soon-countdown.d.ts +11 -14
  506. package/dist/hero-coming-soon-countdown.js +268 -111
  507. package/dist/hero-community-survey-cta.d.cts +3 -3
  508. package/dist/hero-community-survey-cta.d.ts +3 -3
  509. package/dist/hero-conversation-intelligence.cjs +673 -639
  510. package/dist/hero-conversation-intelligence.d.cts +3 -3
  511. package/dist/hero-conversation-intelligence.d.ts +3 -3
  512. package/dist/hero-conversation-intelligence.js +663 -629
  513. package/dist/hero-conversion-video-play.d.cts +3 -3
  514. package/dist/hero-conversion-video-play.d.ts +3 -3
  515. package/dist/hero-creative-studio-stacked.cjs +904 -863
  516. package/dist/hero-creative-studio-stacked.d.cts +23 -18
  517. package/dist/hero-creative-studio-stacked.d.ts +23 -18
  518. package/dist/hero-creative-studio-stacked.js +902 -861
  519. package/dist/hero-crm-streamlined.d.cts +3 -3
  520. package/dist/hero-crm-streamlined.d.ts +3 -3
  521. package/dist/hero-customer-support-layered.cjs +89 -76
  522. package/dist/hero-customer-support-layered.d.cts +3 -3
  523. package/dist/hero-customer-support-layered.d.ts +3 -3
  524. package/dist/hero-customer-support-layered.js +89 -76
  525. package/dist/hero-dashed-border-features.d.cts +3 -3
  526. package/dist/hero-dashed-border-features.d.ts +3 -3
  527. package/dist/hero-design-carousel-portfolio.d.cts +3 -3
  528. package/dist/hero-design-carousel-portfolio.d.ts +3 -3
  529. package/dist/hero-design-showcase-logos.d.cts +3 -3
  530. package/dist/hero-design-showcase-logos.d.ts +3 -3
  531. package/dist/hero-design-system-3d.d.cts +3 -3
  532. package/dist/hero-design-system-3d.d.ts +3 -3
  533. package/dist/hero-developer-tools-code.cjs +722 -670
  534. package/dist/hero-developer-tools-code.d.cts +8 -4
  535. package/dist/hero-developer-tools-code.d.ts +8 -4
  536. package/dist/hero-developer-tools-code.js +720 -668
  537. package/dist/hero-digital-agency-fullscreen.cjs +724 -680
  538. package/dist/hero-digital-agency-fullscreen.d.cts +6 -22
  539. package/dist/hero-digital-agency-fullscreen.d.ts +6 -22
  540. package/dist/hero-digital-agency-fullscreen.js +724 -680
  541. package/dist/hero-ecommerce-product-showcase.cjs +900 -835
  542. package/dist/hero-ecommerce-product-showcase.d.cts +3 -3
  543. package/dist/hero-ecommerce-product-showcase.d.ts +3 -3
  544. package/dist/hero-ecommerce-product-showcase.js +897 -832
  545. package/dist/hero-enterprise-security.cjs +191 -134
  546. package/dist/hero-enterprise-security.d.cts +14 -21
  547. package/dist/hero-enterprise-security.d.ts +14 -21
  548. package/dist/hero-enterprise-security.js +191 -134
  549. package/dist/hero-event-registration.cjs +74 -41
  550. package/dist/hero-event-registration.d.cts +3 -3
  551. package/dist/hero-event-registration.d.ts +3 -3
  552. package/dist/hero-event-registration.js +74 -41
  553. package/dist/hero-feature-cards-grid.d.cts +3 -3
  554. package/dist/hero-feature-cards-grid.d.ts +3 -3
  555. package/dist/hero-floating-images.d.cts +3 -3
  556. package/dist/hero-floating-images.d.ts +3 -3
  557. package/dist/hero-fullscreen-background-image.d.cts +3 -3
  558. package/dist/hero-fullscreen-background-image.d.ts +3 -3
  559. package/dist/hero-fullscreen-logo-cta.d.cts +3 -3
  560. package/dist/hero-fullscreen-logo-cta.d.ts +3 -3
  561. package/dist/hero-gradient-avatars-rating.d.cts +3 -3
  562. package/dist/hero-gradient-avatars-rating.d.ts +3 -3
  563. package/dist/hero-gradient-client-focused.d.cts +3 -3
  564. package/dist/hero-gradient-client-focused.d.ts +3 -3
  565. package/dist/hero-grid-pattern-efficiency.d.cts +3 -3
  566. package/dist/hero-grid-pattern-efficiency.d.ts +3 -3
  567. package/dist/hero-grid-pattern-solutions.d.cts +3 -3
  568. package/dist/hero-grid-pattern-solutions.d.ts +3 -3
  569. package/dist/hero-hiring-animated-text.cjs +2 -2
  570. package/dist/hero-hiring-animated-text.d.cts +4 -4
  571. package/dist/hero-hiring-animated-text.d.ts +4 -4
  572. package/dist/hero-hiring-animated-text.js +2 -2
  573. package/dist/hero-image-left-content.d.cts +3 -3
  574. package/dist/hero-image-left-content.d.ts +3 -3
  575. package/dist/hero-image-slider.d.cts +3 -3
  576. package/dist/hero-image-slider.d.ts +3 -3
  577. package/dist/hero-innovation-image-grid.d.cts +3 -3
  578. package/dist/hero-innovation-image-grid.d.ts +3 -3
  579. package/dist/hero-logo-centered-screenshot.d.cts +3 -3
  580. package/dist/hero-logo-centered-screenshot.d.ts +3 -3
  581. package/dist/hero-marketplace-scattered-images.d.cts +3 -3
  582. package/dist/hero-marketplace-scattered-images.d.ts +3 -3
  583. package/dist/hero-mental-health-team.cjs +1 -1
  584. package/dist/hero-mental-health-team.d.cts +4 -4
  585. package/dist/hero-mental-health-team.d.ts +4 -4
  586. package/dist/hero-mental-health-team.js +1 -1
  587. package/dist/hero-mentorship-video-split.d.cts +3 -3
  588. package/dist/hero-mentorship-video-split.d.ts +3 -3
  589. package/dist/hero-minimal-centered-dark.d.cts +3 -3
  590. package/dist/hero-minimal-centered-dark.d.ts +3 -3
  591. package/dist/hero-mobile-app-download.cjs +2 -2
  592. package/dist/hero-mobile-app-download.d.cts +3 -3
  593. package/dist/hero-mobile-app-download.d.ts +3 -3
  594. package/dist/hero-mobile-app-download.js +2 -2
  595. package/dist/hero-newsletter-minimal.cjs +97 -57
  596. package/dist/hero-newsletter-minimal.d.cts +8 -4
  597. package/dist/hero-newsletter-minimal.d.ts +8 -4
  598. package/dist/hero-newsletter-minimal.js +97 -57
  599. package/dist/hero-overlay-cta-grid.d.cts +3 -3
  600. package/dist/hero-overlay-cta-grid.d.ts +3 -3
  601. package/dist/hero-pattern-badge-logos.d.cts +3 -3
  602. package/dist/hero-pattern-badge-logos.d.ts +3 -3
  603. package/dist/hero-pattern-logo-tech-stack.d.cts +3 -3
  604. package/dist/hero-pattern-logo-tech-stack.d.ts +3 -3
  605. package/dist/hero-platform-features-grid.d.cts +3 -3
  606. package/dist/hero-platform-features-grid.d.ts +3 -3
  607. package/dist/hero-portfolio-creative.d.cts +3 -3
  608. package/dist/hero-portfolio-creative.d.ts +3 -3
  609. package/dist/hero-premium-split-avatars.d.cts +3 -3
  610. package/dist/hero-premium-split-avatars.d.ts +3 -3
  611. package/dist/hero-presentation-platform-video.d.cts +3 -3
  612. package/dist/hero-presentation-platform-video.d.ts +3 -3
  613. package/dist/hero-pricing-comparison.d.cts +3 -3
  614. package/dist/hero-pricing-comparison.d.ts +3 -3
  615. package/dist/hero-product-showcase-floating.d.cts +3 -3
  616. package/dist/hero-product-showcase-floating.d.ts +3 -3
  617. package/dist/hero-productivity-launcher-video.d.cts +3 -3
  618. package/dist/hero-productivity-launcher-video.d.ts +3 -3
  619. package/dist/hero-saas-dashboard-preview.d.cts +3 -3
  620. package/dist/hero-saas-dashboard-preview.d.ts +3 -3
  621. package/dist/hero-shared-inbox-layered.cjs +522 -42
  622. package/dist/hero-shared-inbox-layered.d.cts +22 -6
  623. package/dist/hero-shared-inbox-layered.d.ts +22 -6
  624. package/dist/hero-shared-inbox-layered.js +505 -40
  625. package/dist/hero-simple-centered-image.d.cts +3 -3
  626. package/dist/hero-simple-centered-image.d.ts +3 -3
  627. package/dist/hero-software-growth-video-dialog.d.cts +3 -3
  628. package/dist/hero-software-growth-video-dialog.d.ts +3 -3
  629. package/dist/hero-spiral-pattern-cards.d.cts +3 -3
  630. package/dist/hero-spiral-pattern-cards.d.ts +3 -3
  631. package/dist/hero-split-geometric-shapes.d.cts +3 -3
  632. package/dist/hero-split-geometric-shapes.d.ts +3 -3
  633. package/dist/hero-split-icon-cards.d.cts +3 -3
  634. package/dist/hero-split-icon-cards.d.ts +3 -3
  635. package/dist/hero-split-image-newsletter.d.cts +3 -3
  636. package/dist/hero-split-image-newsletter.d.ts +3 -3
  637. package/dist/hero-split-spiral-shapes.d.cts +3 -3
  638. package/dist/hero-split-spiral-shapes.d.ts +3 -3
  639. package/dist/hero-startup-launch-cta.cjs +859 -816
  640. package/dist/hero-startup-launch-cta.d.cts +6 -5
  641. package/dist/hero-startup-launch-cta.d.ts +6 -5
  642. package/dist/hero-startup-launch-cta.js +858 -815
  643. package/dist/hero-stats-social-proof.d.cts +3 -3
  644. package/dist/hero-stats-social-proof.d.ts +3 -3
  645. package/dist/hero-task-timer-animated.d.cts +3 -3
  646. package/dist/hero-task-timer-animated.d.ts +3 -3
  647. package/dist/hero-tech-carousel.d.cts +3 -3
  648. package/dist/hero-tech-carousel.d.ts +3 -3
  649. package/dist/hero-testimonial-image-grid.d.cts +3 -3
  650. package/dist/hero-testimonial-image-grid.d.ts +3 -3
  651. package/dist/hero-therapy-testimonial-grid.d.cts +3 -3
  652. package/dist/hero-therapy-testimonial-grid.d.ts +3 -3
  653. package/dist/hero-ui-library-showcase.d.cts +3 -3
  654. package/dist/hero-ui-library-showcase.d.ts +3 -3
  655. package/dist/hero-video-background-dark.d.cts +3 -3
  656. package/dist/hero-video-background-dark.d.ts +3 -3
  657. package/dist/hero-video-dialog-gradient-6epEKovM.d.cts +99 -0
  658. package/dist/hero-video-dialog-gradient-B__37IMI.d.ts +99 -0
  659. package/dist/hero-video-dialog-gradient.cjs +24 -23
  660. package/dist/hero-video-dialog-gradient.d.cts +5 -95
  661. package/dist/hero-video-dialog-gradient.d.ts +5 -95
  662. package/dist/hero-video-dialog-gradient.js +24 -23
  663. package/dist/hero-video-overlay-stars.d.cts +3 -3
  664. package/dist/hero-video-overlay-stars.d.ts +3 -3
  665. package/dist/hero-welcome-asymmetric-images.cjs +652 -617
  666. package/dist/hero-welcome-asymmetric-images.d.cts +8 -4
  667. package/dist/hero-welcome-asymmetric-images.d.ts +8 -4
  668. package/dist/hero-welcome-asymmetric-images.js +651 -616
  669. package/dist/image-slider.d.cts +2 -2
  670. package/dist/image-slider.d.ts +2 -2
  671. package/dist/index.d.cts +3 -3
  672. package/dist/index.d.ts +3 -3
  673. package/dist/industries-badge-list-bordered.d.cts +3 -3
  674. package/dist/industries-badge-list-bordered.d.ts +3 -3
  675. package/dist/industries-expandable-showcase.d.cts +3 -3
  676. package/dist/industries-expandable-showcase.d.ts +3 -3
  677. package/dist/industries-hover-reveal-grid.d.cts +3 -3
  678. package/dist/industries-hover-reveal-grid.d.ts +3 -3
  679. package/dist/industries-timeline-table.d.cts +3 -3
  680. package/dist/industries-timeline-table.d.ts +3 -3
  681. package/dist/interior-carousel.d.cts +3 -3
  682. package/dist/interior-carousel.d.ts +3 -3
  683. package/dist/link-page-bento-layout.d.cts +3 -3
  684. package/dist/link-page-bento-layout.d.ts +3 -3
  685. package/dist/link-page-grid-cards.d.cts +3 -3
  686. package/dist/link-page-grid-cards.d.ts +3 -3
  687. package/dist/link-page-minimal-profile.d.cts +3 -3
  688. package/dist/link-page-minimal-profile.d.ts +3 -3
  689. package/dist/link-page-newsletter-social.d.cts +3 -3
  690. package/dist/link-page-newsletter-social.d.ts +3 -3
  691. package/dist/link-tree-block.d.cts +3 -3
  692. package/dist/link-tree-block.d.ts +3 -3
  693. package/dist/list-achievements-showcase.d.cts +3 -3
  694. package/dist/list-achievements-showcase.d.ts +3 -3
  695. package/dist/list-career-timeline.d.cts +3 -3
  696. package/dist/list-career-timeline.d.ts +3 -3
  697. package/dist/list-feature-comparison.d.cts +3 -3
  698. package/dist/list-feature-comparison.d.ts +3 -3
  699. package/dist/list-metrics-dashboard.d.cts +3 -3
  700. package/dist/list-metrics-dashboard.d.ts +3 -3
  701. package/dist/list-searchable-grid.d.cts +3 -3
  702. package/dist/list-searchable-grid.d.ts +3 -3
  703. package/dist/list-service-category-table.d.cts +3 -3
  704. package/dist/list-service-category-table.d.ts +3 -3
  705. package/dist/logos-carousel-heading.d.cts +3 -3
  706. package/dist/logos-carousel-heading.d.ts +3 -3
  707. package/dist/logos-centered-simple.d.cts +3 -3
  708. package/dist/logos-centered-simple.d.ts +3 -3
  709. package/dist/logos-certifications-grid.d.cts +3 -3
  710. package/dist/logos-certifications-grid.d.ts +3 -3
  711. package/dist/logos-double-carousel-pattern.d.cts +3 -3
  712. package/dist/logos-double-carousel-pattern.d.ts +3 -3
  713. package/dist/logos-inline-tagline.d.cts +3 -3
  714. package/dist/logos-inline-tagline.d.ts +3 -3
  715. package/dist/logos-marquee-muted.d.cts +3 -3
  716. package/dist/logos-marquee-muted.d.ts +3 -3
  717. package/dist/logos-minimal-carousel.d.cts +3 -3
  718. package/dist/logos-minimal-carousel.d.ts +3 -3
  719. package/dist/logos-numbered-carousel.d.cts +3 -3
  720. package/dist/logos-numbered-carousel.d.ts +3 -3
  721. package/dist/logos-partner-grid-sidebar.d.cts +3 -3
  722. package/dist/logos-partner-grid-sidebar.d.ts +3 -3
  723. package/dist/logos-partner-network.d.cts +3 -3
  724. package/dist/logos-partner-network.d.ts +3 -3
  725. package/dist/logos-two-row-grid.d.cts +3 -3
  726. package/dist/logos-two-row-grid.d.ts +3 -3
  727. package/dist/masonry-motion-grid.d.cts +3 -3
  728. package/dist/masonry-motion-grid.d.ts +3 -3
  729. package/dist/media-hover-ctas.d.cts +3 -3
  730. package/dist/media-hover-ctas.d.ts +3 -3
  731. package/dist/navbar-animated-preview.d.cts +3 -3
  732. package/dist/navbar-animated-preview.d.ts +3 -3
  733. package/dist/navbar-centered-menu.d.cts +3 -3
  734. package/dist/navbar-centered-menu.d.ts +3 -3
  735. package/dist/navbar-dark-icons.d.cts +3 -3
  736. package/dist/navbar-dark-icons.d.ts +3 -3
  737. package/dist/navbar-dropdown-menu.d.cts +3 -3
  738. package/dist/navbar-dropdown-menu.d.ts +3 -3
  739. package/dist/navbar-education-platform.d.cts +3 -3
  740. package/dist/navbar-education-platform.d.ts +3 -3
  741. package/dist/navbar-enterprise-mega.d.cts +3 -3
  742. package/dist/navbar-enterprise-mega.d.ts +3 -3
  743. package/dist/navbar-feature-grid.d.cts +3 -3
  744. package/dist/navbar-feature-grid.d.ts +3 -3
  745. package/dist/navbar-floating-pill.d.cts +3 -3
  746. package/dist/navbar-floating-pill.d.ts +3 -3
  747. package/dist/navbar-fullscreen-menu.d.cts +3 -3
  748. package/dist/navbar-fullscreen-menu.d.ts +3 -3
  749. package/dist/navbar-icon-links.d.cts +3 -3
  750. package/dist/navbar-icon-links.d.ts +3 -3
  751. package/dist/navbar-image-preview.d.cts +3 -3
  752. package/dist/navbar-image-preview.d.ts +3 -3
  753. package/dist/navbar-mega-menu.d.cts +3 -3
  754. package/dist/navbar-mega-menu.d.ts +3 -3
  755. package/dist/navbar-multi-column-groups.d.cts +3 -3
  756. package/dist/navbar-multi-column-groups.d.ts +3 -3
  757. package/dist/navbar-platform-resources.d.cts +3 -3
  758. package/dist/navbar-platform-resources.d.ts +3 -3
  759. package/dist/navbar-search-focused.d.cts +3 -3
  760. package/dist/navbar-search-focused.d.ts +3 -3
  761. package/dist/navbar-sidebar-mobile.d.cts +3 -3
  762. package/dist/navbar-sidebar-mobile.d.ts +3 -3
  763. package/dist/navbar-simple-links.d.cts +3 -3
  764. package/dist/navbar-simple-links.d.ts +3 -3
  765. package/dist/navbar-split-cta.d.cts +3 -3
  766. package/dist/navbar-split-cta.d.ts +3 -3
  767. package/dist/navbar-sticky-compact.d.cts +3 -3
  768. package/dist/navbar-sticky-compact.d.ts +3 -3
  769. package/dist/navbar-tabbed-sections.d.cts +3 -3
  770. package/dist/navbar-tabbed-sections.d.ts +3 -3
  771. package/dist/navbar-transparent-overlay.d.cts +3 -3
  772. package/dist/navbar-transparent-overlay.d.ts +3 -3
  773. package/dist/offer-modal-membership-image.d.cts +3 -3
  774. package/dist/offer-modal-membership-image.d.ts +3 -3
  775. package/dist/offer-modal-newsletter-discount.d.cts +3 -3
  776. package/dist/offer-modal-newsletter-discount.d.ts +3 -3
  777. package/dist/offer-modal-sheet-newsletter.d.cts +3 -3
  778. package/dist/offer-modal-sheet-newsletter.d.ts +3 -3
  779. package/dist/page-hero-banner.d.cts +3 -3
  780. package/dist/page-hero-banner.d.ts +3 -3
  781. package/dist/pressable.d.cts +2 -2
  782. package/dist/pressable.d.ts +2 -2
  783. package/dist/pricing-addons-cards.d.cts +3 -3
  784. package/dist/pricing-addons-cards.d.ts +3 -3
  785. package/dist/pricing-addons-featured.d.cts +3 -3
  786. package/dist/pricing-addons-featured.d.ts +3 -3
  787. package/dist/pricing-collapsible-plans.d.cts +3 -3
  788. package/dist/pricing-collapsible-plans.d.ts +3 -3
  789. package/dist/pricing-columns-toggle.d.cts +3 -3
  790. package/dist/pricing-columns-toggle.d.ts +3 -3
  791. package/dist/pricing-comparison-headers.d.cts +3 -3
  792. package/dist/pricing-comparison-headers.d.ts +3 -3
  793. package/dist/pricing-comparison-table.d.cts +3 -3
  794. package/dist/pricing-comparison-table.d.ts +3 -3
  795. package/dist/pricing-discount-card.d.cts +3 -3
  796. package/dist/pricing-discount-card.d.ts +3 -3
  797. package/dist/pricing-enterprise-contact.d.cts +3 -3
  798. package/dist/pricing-enterprise-contact.d.ts +3 -3
  799. package/dist/pricing-feature-matrix.d.cts +3 -3
  800. package/dist/pricing-feature-matrix.d.ts +3 -3
  801. package/dist/pricing-four-tier-toggle.d.cts +3 -3
  802. package/dist/pricing-four-tier-toggle.d.ts +3 -3
  803. package/dist/pricing-full-comparison.d.cts +3 -3
  804. package/dist/pricing-full-comparison.d.ts +3 -3
  805. package/dist/pricing-gradient-cards.d.cts +3 -3
  806. package/dist/pricing-gradient-cards.d.ts +3 -3
  807. package/dist/pricing-icon-headers.d.cts +3 -3
  808. package/dist/pricing-icon-headers.d.ts +3 -3
  809. package/dist/pricing-minimal-cards.d.cts +3 -3
  810. package/dist/pricing-minimal-cards.d.ts +3 -3
  811. package/dist/pricing-packages-radio.d.cts +3 -3
  812. package/dist/pricing-packages-radio.d.ts +3 -3
  813. package/dist/pricing-popular-highlight.d.cts +3 -3
  814. package/dist/pricing-popular-highlight.d.ts +3 -3
  815. package/dist/pricing-radio-toggle.d.cts +3 -3
  816. package/dist/pricing-radio-toggle.d.ts +3 -3
  817. package/dist/pricing-responsive-table.d.cts +3 -3
  818. package/dist/pricing-responsive-table.d.ts +3 -3
  819. package/dist/pricing-services-cards.d.cts +3 -3
  820. package/dist/pricing-services-cards.d.ts +3 -3
  821. package/dist/pricing-simple-card.d.cts +3 -3
  822. package/dist/pricing-simple-card.d.ts +3 -3
  823. package/dist/pricing-single-card.d.cts +3 -3
  824. package/dist/pricing-single-card.d.ts +3 -3
  825. package/dist/pricing-split-layout.d.cts +3 -3
  826. package/dist/pricing-split-layout.d.ts +3 -3
  827. package/dist/pricing-spotlight-card.d.cts +3 -3
  828. package/dist/pricing-spotlight-card.d.ts +3 -3
  829. package/dist/pricing-switch-cards.d.cts +3 -3
  830. package/dist/pricing-switch-cards.d.ts +3 -3
  831. package/dist/pricing-tabs-toggle.d.cts +3 -3
  832. package/dist/pricing-tabs-toggle.d.ts +3 -3
  833. package/dist/pricing-tier-grid.d.cts +3 -3
  834. package/dist/pricing-tier-grid.d.ts +3 -3
  835. package/dist/pricing-toggle-cards.d.cts +3 -3
  836. package/dist/pricing-toggle-cards.d.ts +3 -3
  837. package/dist/pricing-toggle-period.d.cts +3 -3
  838. package/dist/pricing-toggle-period.d.ts +3 -3
  839. package/dist/pricing-two-column-basic.d.cts +3 -3
  840. package/dist/pricing-two-column-basic.d.ts +3 -3
  841. package/dist/process-expandable-timeline.d.cts +3 -3
  842. package/dist/process-expandable-timeline.d.ts +3 -3
  843. package/dist/process-hover-cards.d.cts +3 -3
  844. package/dist/process-hover-cards.d.ts +3 -3
  845. package/dist/process-icon-timeline.d.cts +3 -3
  846. package/dist/process-icon-timeline.d.ts +3 -3
  847. package/dist/process-mission-principles.d.cts +3 -3
  848. package/dist/process-mission-principles.d.ts +3 -3
  849. package/dist/process-numbered-services.d.cts +3 -3
  850. package/dist/process-numbered-services.d.ts +3 -3
  851. package/dist/process-roadmap-timeline.d.cts +3 -3
  852. package/dist/process-roadmap-timeline.d.ts +3 -3
  853. package/dist/process-scroll-image.d.cts +3 -3
  854. package/dist/process-scroll-image.d.ts +3 -3
  855. package/dist/process-steps-grid.d.cts +3 -3
  856. package/dist/process-steps-grid.d.ts +3 -3
  857. package/dist/process-sticky-steps.d.cts +3 -3
  858. package/dist/process-sticky-steps.d.ts +3 -3
  859. package/dist/project-alternating-motion.d.cts +3 -3
  860. package/dist/project-alternating-motion.d.ts +3 -3
  861. package/dist/project-background-reveal.d.cts +3 -3
  862. package/dist/project-background-reveal.d.ts +3 -3
  863. package/dist/project-card-overlay.d.cts +3 -3
  864. package/dist/project-card-overlay.d.ts +3 -3
  865. package/dist/project-carousel-cinematic.d.cts +3 -3
  866. package/dist/project-carousel-cinematic.d.ts +3 -3
  867. package/dist/project-carousel-detail-cards.d.cts +3 -3
  868. package/dist/project-carousel-detail-cards.d.ts +3 -3
  869. package/dist/project-carousel-minimal.d.cts +3 -3
  870. package/dist/project-carousel-minimal.d.ts +3 -3
  871. package/dist/project-detail-architecture-carousel.d.cts +3 -3
  872. package/dist/project-detail-architecture-carousel.d.ts +3 -3
  873. package/dist/project-detail-card-header.d.cts +3 -3
  874. package/dist/project-detail-card-header.d.ts +3 -3
  875. package/dist/project-detail-case-study-prose.d.cts +3 -3
  876. package/dist/project-detail-case-study-prose.d.ts +3 -3
  877. package/dist/project-detail-compact-metadata.d.cts +3 -3
  878. package/dist/project-detail-compact-metadata.d.ts +3 -3
  879. package/dist/project-detail-exhibition-sidebar.d.cts +3 -3
  880. package/dist/project-detail-exhibition-sidebar.d.ts +3 -3
  881. package/dist/project-detail-fashion-editorial.d.cts +3 -3
  882. package/dist/project-detail-fashion-editorial.d.ts +3 -3
  883. package/dist/project-detail-fullscreen-hero.d.cts +3 -3
  884. package/dist/project-detail-fullscreen-hero.d.ts +3 -3
  885. package/dist/project-detail-grid-gallery.d.cts +3 -3
  886. package/dist/project-detail-grid-gallery.d.ts +3 -3
  887. package/dist/project-detail-hero-metadata.d.cts +3 -3
  888. package/dist/project-detail-hero-metadata.d.ts +3 -3
  889. package/dist/project-detail-hover-gallery.d.cts +3 -3
  890. package/dist/project-detail-hover-gallery.d.ts +3 -3
  891. package/dist/project-detail-large-hero-featured.d.cts +3 -3
  892. package/dist/project-detail-large-hero-featured.d.ts +3 -3
  893. package/dist/project-detail-list-related.d.cts +3 -3
  894. package/dist/project-detail-list-related.d.ts +3 -3
  895. package/dist/project-detail-mask-reveal.d.cts +3 -3
  896. package/dist/project-detail-mask-reveal.d.ts +3 -3
  897. package/dist/project-detail-minimal-centered.d.cts +3 -3
  898. package/dist/project-detail-minimal-centered.d.ts +3 -3
  899. package/dist/project-detail-numbered-sections.d.cts +3 -3
  900. package/dist/project-detail-numbered-sections.d.ts +3 -3
  901. package/dist/project-detail-parallax-scroll.d.cts +3 -3
  902. package/dist/project-detail-parallax-scroll.d.ts +3 -3
  903. package/dist/project-detail-photography-breadcrumb.d.cts +3 -3
  904. package/dist/project-detail-photography-breadcrumb.d.ts +3 -3
  905. package/dist/project-detail-sculpture-showcase.d.cts +3 -3
  906. package/dist/project-detail-sculpture-showcase.d.ts +3 -3
  907. package/dist/project-detail-sidebar-navigation.d.cts +3 -3
  908. package/dist/project-detail-sidebar-navigation.d.ts +3 -3
  909. package/dist/project-detail-sidebar-sticky.d.cts +3 -3
  910. package/dist/project-detail-sidebar-sticky.d.ts +3 -3
  911. package/dist/project-detail-split-materials.d.cts +3 -3
  912. package/dist/project-detail-split-materials.d.ts +3 -3
  913. package/dist/project-detail-tabbed-case-study.d.cts +3 -3
  914. package/dist/project-detail-tabbed-case-study.d.ts +3 -3
  915. package/dist/project-experience-quote.d.cts +3 -3
  916. package/dist/project-experience-quote.d.ts +3 -3
  917. package/dist/project-featured-carousel.d.cts +3 -3
  918. package/dist/project-featured-carousel.d.ts +3 -3
  919. package/dist/project-filterable-gallery.d.cts +3 -3
  920. package/dist/project-filterable-gallery.d.ts +3 -3
  921. package/dist/project-filterable-three-column.d.cts +3 -3
  922. package/dist/project-filterable-three-column.d.ts +3 -3
  923. package/dist/project-grid-gallery.d.cts +3 -3
  924. package/dist/project-grid-gallery.d.ts +3 -3
  925. package/dist/project-grid-motion.d.cts +3 -3
  926. package/dist/project-grid-motion.d.ts +3 -3
  927. package/dist/project-horizontal-cards.d.cts +3 -3
  928. package/dist/project-horizontal-cards.d.ts +3 -3
  929. package/dist/project-hover-reveal-grid.d.cts +3 -3
  930. package/dist/project-hover-reveal-grid.d.ts +3 -3
  931. package/dist/project-interactive-hover-reveal.d.cts +3 -3
  932. package/dist/project-interactive-hover-reveal.d.ts +3 -3
  933. package/dist/project-masonry-columns.d.cts +3 -3
  934. package/dist/project-masonry-columns.d.ts +3 -3
  935. package/dist/project-nature-mosaic.d.cts +3 -3
  936. package/dist/project-nature-mosaic.d.ts +3 -3
  937. package/dist/project-scroll-reveal.d.cts +3 -3
  938. package/dist/project-scroll-reveal.d.ts +3 -3
  939. package/dist/project-showcase-alternating.d.cts +3 -3
  940. package/dist/project-showcase-alternating.d.ts +3 -3
  941. package/dist/project-sticky-scroll.d.cts +3 -3
  942. package/dist/project-sticky-scroll.d.ts +3 -3
  943. package/dist/project-studio-hover-preview.d.cts +3 -3
  944. package/dist/project-studio-hover-preview.d.ts +3 -3
  945. package/dist/project-table-list.d.cts +3 -3
  946. package/dist/project-table-list.d.ts +3 -3
  947. package/dist/project-video-carousel.d.cts +3 -3
  948. package/dist/project-video-carousel.d.ts +3 -3
  949. package/dist/project-video-hover-bento.d.cts +3 -3
  950. package/dist/project-video-hover-bento.d.ts +3 -3
  951. package/dist/project-video-hover-grid.d.cts +3 -3
  952. package/dist/project-video-hover-grid.d.ts +3 -3
  953. package/dist/project-video-hover-rounded.d.cts +3 -3
  954. package/dist/project-video-hover-rounded.d.ts +3 -3
  955. package/dist/project-video-hover-stack.d.cts +3 -3
  956. package/dist/project-video-hover-stack.d.ts +3 -3
  957. package/dist/project-video-hover-two-by-two.d.cts +3 -3
  958. package/dist/project-video-hover-two-by-two.d.ts +3 -3
  959. package/dist/project-work-showcase.d.cts +3 -3
  960. package/dist/project-work-showcase.d.ts +3 -3
  961. package/dist/project-zigzag-layout.d.cts +3 -3
  962. package/dist/project-zigzag-layout.d.ts +3 -3
  963. package/dist/registry.cjs +1169 -830
  964. package/dist/registry.js +1169 -830
  965. package/dist/resource-detail-article-hero.d.cts +3 -3
  966. package/dist/resource-detail-article-hero.d.ts +3 -3
  967. package/dist/resource-detail-document-sidebar.d.cts +3 -3
  968. package/dist/resource-detail-document-sidebar.d.ts +3 -3
  969. package/dist/resource-detail-whitepaper-sidebar.d.cts +3 -3
  970. package/dist/resource-detail-whitepaper-sidebar.d.ts +3 -3
  971. package/dist/resource-list-course-cards.d.cts +3 -3
  972. package/dist/resource-list-course-cards.d.ts +3 -3
  973. package/dist/resource-list-featured-articles.d.cts +3 -3
  974. package/dist/resource-list-featured-articles.d.ts +3 -3
  975. package/dist/resource-list-featured-grid.d.cts +3 -3
  976. package/dist/resource-list-featured-grid.d.ts +3 -3
  977. package/dist/resource-list-hero-filter.d.cts +2 -2
  978. package/dist/resource-list-hero-filter.d.ts +2 -2
  979. package/dist/resource-list-news-updates.d.cts +3 -3
  980. package/dist/resource-list-news-updates.d.ts +3 -3
  981. package/dist/section.d.cts +3 -3
  982. package/dist/section.d.ts +3 -3
  983. package/dist/service-detail-centered-expertise.d.cts +3 -3
  984. package/dist/service-detail-centered-expertise.d.ts +3 -3
  985. package/dist/service-detail-compact-cards.d.cts +3 -3
  986. package/dist/service-detail-compact-cards.d.ts +3 -3
  987. package/dist/service-detail-image-hero.d.cts +3 -3
  988. package/dist/service-detail-image-hero.d.ts +3 -3
  989. package/dist/service-detail-prose-minimal.d.cts +3 -3
  990. package/dist/service-detail-prose-minimal.d.ts +3 -3
  991. package/dist/service-detail-sidebar-related.d.cts +3 -3
  992. package/dist/service-detail-sidebar-related.d.ts +3 -3
  993. package/dist/service-detail-sidebar-stats.d.cts +3 -3
  994. package/dist/service-detail-sidebar-stats.d.ts +3 -3
  995. package/dist/service-detail-stats-hero.d.cts +3 -3
  996. package/dist/service-detail-stats-hero.d.ts +3 -3
  997. package/dist/service-hover-carousel.d.cts +3 -3
  998. package/dist/service-hover-carousel.d.ts +3 -3
  999. package/dist/services-list-accordion-benefits.d.cts +3 -3
  1000. package/dist/services-list-accordion-benefits.d.ts +3 -3
  1001. package/dist/services-list-accordion.d.cts +3 -3
  1002. package/dist/services-list-accordion.d.ts +3 -3
  1003. package/dist/services-list-cards-hover.d.cts +3 -3
  1004. package/dist/services-list-cards-hover.d.ts +3 -3
  1005. package/dist/services-list-category-accordion.d.cts +3 -3
  1006. package/dist/services-list-category-accordion.d.ts +3 -3
  1007. package/dist/services-list-centered-icons.d.cts +3 -3
  1008. package/dist/services-list-centered-icons.d.ts +3 -3
  1009. package/dist/services-list-culture-tabs.d.cts +3 -3
  1010. package/dist/services-list-culture-tabs.d.ts +3 -3
  1011. package/dist/services-list-expandable-cards.d.cts +3 -3
  1012. package/dist/services-list-expandable-cards.d.ts +3 -3
  1013. package/dist/services-list-feature-spotlight.d.cts +3 -3
  1014. package/dist/services-list-feature-spotlight.d.ts +3 -3
  1015. package/dist/services-list-featured-highlight.d.cts +3 -3
  1016. package/dist/services-list-featured-highlight.d.ts +3 -3
  1017. package/dist/services-list-hero-cards.d.cts +3 -3
  1018. package/dist/services-list-hero-cards.d.ts +3 -3
  1019. package/dist/services-list-icon-grid.d.cts +3 -3
  1020. package/dist/services-list-icon-grid.d.ts +3 -3
  1021. package/dist/services-list-image-cards.d.cts +3 -3
  1022. package/dist/services-list-image-cards.d.ts +3 -3
  1023. package/dist/services-list-image-overlay-grid.d.cts +3 -3
  1024. package/dist/services-list-image-overlay-grid.d.ts +3 -3
  1025. package/dist/services-list-masonry.d.cts +3 -3
  1026. package/dist/services-list-masonry.d.ts +3 -3
  1027. package/dist/services-list-methodology-steps.d.cts +3 -3
  1028. package/dist/services-list-methodology-steps.d.ts +3 -3
  1029. package/dist/services-list-minimal-grid.d.cts +3 -3
  1030. package/dist/services-list-minimal-grid.d.ts +3 -3
  1031. package/dist/services-list-muted-cards.d.cts +3 -3
  1032. package/dist/services-list-muted-cards.d.ts +3 -3
  1033. package/dist/services-list-numbered-steps.d.cts +3 -3
  1034. package/dist/services-list-numbered-steps.d.ts +3 -3
  1035. package/dist/services-list-pricing-grid.d.cts +3 -3
  1036. package/dist/services-list-pricing-grid.d.ts +3 -3
  1037. package/dist/services-list-progress-sidebar.d.cts +3 -3
  1038. package/dist/services-list-progress-sidebar.d.ts +3 -3
  1039. package/dist/services-list-split-checklist.d.cts +3 -3
  1040. package/dist/services-list-split-checklist.d.ts +3 -3
  1041. package/dist/services-list-sticky-image.d.cts +3 -3
  1042. package/dist/services-list-sticky-image.d.ts +3 -3
  1043. package/dist/services-list-table-hover.d.cts +3 -3
  1044. package/dist/services-list-table-hover.d.ts +3 -3
  1045. package/dist/services-list-tabs-features.d.cts +3 -3
  1046. package/dist/services-list-tabs-features.d.ts +3 -3
  1047. package/dist/services-list-timeline.d.cts +3 -3
  1048. package/dist/services-list-timeline.d.ts +3 -3
  1049. package/dist/services-list-two-column-grid.d.cts +3 -3
  1050. package/dist/services-list-two-column-grid.d.ts +3 -3
  1051. package/dist/services-list-vertical-tags.d.cts +3 -3
  1052. package/dist/services-list-vertical-tags.d.ts +3 -3
  1053. package/dist/services-list-video-showcase.d.cts +3 -3
  1054. package/dist/services-list-video-showcase.d.ts +3 -3
  1055. package/dist/social-link-icon.d.cts +2 -2
  1056. package/dist/social-link-icon.d.ts +2 -2
  1057. package/dist/stats-animated-counter.d.cts +3 -3
  1058. package/dist/stats-animated-counter.d.ts +3 -3
  1059. package/dist/stats-bar-comparison.d.cts +3 -3
  1060. package/dist/stats-bar-comparison.d.ts +3 -3
  1061. package/dist/stats-card-group.d.cts +3 -3
  1062. package/dist/stats-card-group.d.ts +3 -3
  1063. package/dist/stats-circular-progress.d.cts +3 -3
  1064. package/dist/stats-circular-progress.d.ts +3 -3
  1065. package/dist/stats-growth-timeline.d.cts +3 -3
  1066. package/dist/stats-growth-timeline.d.ts +3 -3
  1067. package/dist/stats-icon-cards.d.cts +3 -3
  1068. package/dist/stats-icon-cards.d.ts +3 -3
  1069. package/dist/stats-impact-grid.d.cts +3 -3
  1070. package/dist/stats-impact-grid.d.ts +3 -3
  1071. package/dist/stats-milestone-sidebar.d.cts +3 -3
  1072. package/dist/stats-milestone-sidebar.d.ts +3 -3
  1073. package/dist/stats-number-ticker.d.cts +3 -3
  1074. package/dist/stats-number-ticker.d.ts +3 -3
  1075. package/dist/stats-primary-secondary.d.cts +3 -3
  1076. package/dist/stats-primary-secondary.d.ts +3 -3
  1077. package/dist/stats-simple-grid.d.cts +3 -3
  1078. package/dist/stats-simple-grid.d.ts +3 -3
  1079. package/dist/stats-timeline-tabs.d.cts +3 -3
  1080. package/dist/stats-timeline-tabs.d.ts +3 -3
  1081. package/dist/team-alternating-bios.d.cts +3 -3
  1082. package/dist/team-alternating-bios.d.ts +3 -3
  1083. package/dist/team-avatar-social.d.cts +3 -3
  1084. package/dist/team-avatar-social.d.ts +3 -3
  1085. package/dist/team-bio-badges.d.cts +3 -3
  1086. package/dist/team-bio-badges.d.ts +3 -3
  1087. package/dist/team-carousel-experience.d.cts +3 -3
  1088. package/dist/team-carousel-experience.d.ts +3 -3
  1089. package/dist/team-compact-cta.d.cts +3 -3
  1090. package/dist/team-compact-cta.d.ts +3 -3
  1091. package/dist/team-compact-grid.d.cts +3 -3
  1092. package/dist/team-compact-grid.d.ts +3 -3
  1093. package/dist/team-contact-cards.d.cts +3 -3
  1094. package/dist/team-contact-cards.d.ts +3 -3
  1095. package/dist/team-department-sections.d.cts +3 -3
  1096. package/dist/team-department-sections.d.ts +3 -3
  1097. package/dist/team-expertise-cards.d.cts +3 -3
  1098. package/dist/team-expertise-cards.d.ts +3 -3
  1099. package/dist/team-filterable-search.d.cts +3 -3
  1100. package/dist/team-filterable-search.d.ts +3 -3
  1101. package/dist/team-gradient-cards.d.cts +3 -3
  1102. package/dist/team-gradient-cards.d.ts +3 -3
  1103. package/dist/team-grid-animated.d.cts +3 -3
  1104. package/dist/team-grid-animated.d.ts +3 -3
  1105. package/dist/team-hover-highlight.d.cts +3 -3
  1106. package/dist/team-hover-highlight.d.ts +3 -3
  1107. package/dist/team-hover-overlay.d.cts +3 -3
  1108. package/dist/team-hover-overlay.d.ts +3 -3
  1109. package/dist/team-investor-showcase.d.cts +3 -3
  1110. package/dist/team-investor-showcase.d.ts +3 -3
  1111. package/dist/team-large-images.d.cts +3 -3
  1112. package/dist/team-large-images.d.ts +3 -3
  1113. package/dist/team-media-showcase.d.cts +3 -3
  1114. package/dist/team-media-showcase.d.ts +3 -3
  1115. package/dist/team-role-filter.d.cts +3 -3
  1116. package/dist/team-role-filter.d.ts +3 -3
  1117. package/dist/team-simple-grid.d.cts +3 -3
  1118. package/dist/team-simple-grid.d.ts +3 -3
  1119. package/dist/team-skill-badges.d.cts +3 -3
  1120. package/dist/team-skill-badges.d.ts +3 -3
  1121. package/dist/team-social-cards.d.cts +3 -3
  1122. package/dist/team-social-cards.d.ts +3 -3
  1123. package/dist/team-social-grid.d.cts +3 -3
  1124. package/dist/team-social-grid.d.ts +3 -3
  1125. package/dist/team-testimonial-stats.d.cts +3 -3
  1126. package/dist/team-testimonial-stats.d.ts +3 -3
  1127. package/dist/testimonial-carousel-cards.d.cts +3 -3
  1128. package/dist/testimonial-carousel-cards.d.ts +3 -3
  1129. package/dist/testimonials-animated-split.d.cts +3 -3
  1130. package/dist/testimonials-animated-split.d.ts +3 -3
  1131. package/dist/testimonials-bento-grid.d.cts +3 -3
  1132. package/dist/testimonials-bento-grid.d.ts +3 -3
  1133. package/dist/testimonials-carousel-image.d.cts +3 -3
  1134. package/dist/testimonials-carousel-image.d.ts +3 -3
  1135. package/dist/testimonials-centered-avatars.d.cts +3 -3
  1136. package/dist/testimonials-centered-avatars.d.ts +3 -3
  1137. package/dist/testimonials-company-logo.d.cts +3 -3
  1138. package/dist/testimonials-company-logo.d.ts +3 -3
  1139. package/dist/testimonials-grid-add-review.d.cts +3 -3
  1140. package/dist/testimonials-grid-add-review.d.ts +3 -3
  1141. package/dist/testimonials-images-helpful.d.cts +3 -3
  1142. package/dist/testimonials-images-helpful.d.ts +3 -3
  1143. package/dist/testimonials-large-quote.d.cts +3 -3
  1144. package/dist/testimonials-large-quote.d.ts +3 -3
  1145. package/dist/testimonials-list-verified.d.cts +3 -3
  1146. package/dist/testimonials-list-verified.d.ts +3 -3
  1147. package/dist/testimonials-logo-cards.d.cts +3 -3
  1148. package/dist/testimonials-logo-cards.d.ts +3 -3
  1149. package/dist/testimonials-marquee.d.cts +3 -3
  1150. package/dist/testimonials-marquee.d.ts +3 -3
  1151. package/dist/testimonials-masonry-grid.d.cts +3 -3
  1152. package/dist/testimonials-masonry-grid.d.ts +3 -3
  1153. package/dist/testimonials-mini-dividers.d.cts +3 -3
  1154. package/dist/testimonials-mini-dividers.d.ts +3 -3
  1155. package/dist/testimonials-minimal-numbered.d.cts +3 -3
  1156. package/dist/testimonials-minimal-numbered.d.ts +3 -3
  1157. package/dist/testimonials-parallax-number.d.cts +3 -3
  1158. package/dist/testimonials-parallax-number.d.ts +3 -3
  1159. package/dist/testimonials-quote-carousel.d.cts +3 -3
  1160. package/dist/testimonials-quote-carousel.d.ts +3 -3
  1161. package/dist/testimonials-scrolling-columns.d.cts +3 -3
  1162. package/dist/testimonials-scrolling-columns.d.ts +3 -3
  1163. package/dist/testimonials-simple-grid.d.cts +3 -3
  1164. package/dist/testimonials-simple-grid.d.ts +3 -3
  1165. package/dist/testimonials-slider-minimal.d.cts +3 -3
  1166. package/dist/testimonials-slider-minimal.d.ts +3 -3
  1167. package/dist/testimonials-split-image.d.cts +3 -3
  1168. package/dist/testimonials-split-image.d.ts +3 -3
  1169. package/dist/testimonials-stats-header.d.cts +3 -3
  1170. package/dist/testimonials-stats-header.d.ts +3 -3
  1171. package/dist/testimonials-twitter-cards.d.cts +3 -3
  1172. package/dist/testimonials-twitter-cards.d.ts +3 -3
  1173. package/dist/testimonials-wall-compact.d.cts +3 -3
  1174. package/dist/testimonials-wall-compact.d.ts +3 -3
  1175. package/dist/timeline-ai-workflow-cards.d.cts +3 -3
  1176. package/dist/timeline-ai-workflow-cards.d.ts +3 -3
  1177. package/dist/timeline-alternating-diagonal.d.cts +3 -3
  1178. package/dist/timeline-alternating-diagonal.d.ts +3 -3
  1179. package/dist/timeline-changelog-badges.d.cts +3 -3
  1180. package/dist/timeline-changelog-badges.d.ts +3 -3
  1181. package/dist/timeline-history-prose.d.cts +3 -3
  1182. package/dist/timeline-history-prose.d.ts +3 -3
  1183. package/dist/timeline-horizontal-icons.d.cts +3 -3
  1184. package/dist/timeline-horizontal-icons.d.ts +3 -3
  1185. package/dist/timeline-horizontal-phases.d.cts +3 -3
  1186. package/dist/timeline-horizontal-phases.d.ts +3 -3
  1187. package/dist/timeline-product-launch.d.cts +3 -3
  1188. package/dist/timeline-product-launch.d.ts +3 -3
  1189. package/dist/timeline-productivity-list.d.cts +3 -3
  1190. package/dist/timeline-productivity-list.d.ts +3 -3
  1191. package/dist/timeline-scroll-highlight.d.cts +3 -3
  1192. package/dist/timeline-scroll-highlight.d.ts +3 -3
  1193. package/dist/timeline-scroll-sticky-image.d.cts +3 -3
  1194. package/dist/timeline-scroll-sticky-image.d.ts +3 -3
  1195. package/dist/timeline-stepper-animated.d.cts +3 -3
  1196. package/dist/timeline-stepper-animated.d.ts +3 -3
  1197. package/dist/timeline-tabbed-phases.d.cts +3 -3
  1198. package/dist/timeline-tabbed-phases.d.ts +3 -3
  1199. package/dist/timeline-two-column-featured.d.cts +3 -3
  1200. package/dist/timeline-two-column-featured.d.ts +3 -3
  1201. package/dist/timeline-vertical-icon-dashed.d.cts +3 -3
  1202. package/dist/timeline-vertical-icon-dashed.d.ts +3 -3
  1203. package/dist/types.d.cts +3 -3
  1204. package/dist/types.d.ts +3 -3
  1205. package/dist/utils.d.cts +3 -3
  1206. package/dist/utils.d.ts +3 -3
  1207. package/package.json +1 -1
@@ -1,844 +1,908 @@
1
1
  "use client";
2
- import * as React from 'react';
3
- import React__default, { useMemo } from 'react';
2
+ import * as React3 from 'react';
3
+ import React3__default, { useMemo } from 'react';
4
4
  import { clsx } from 'clsx';
5
5
  import { twMerge } from 'tailwind-merge';
6
- import { cva } from 'class-variance-authority';
7
- import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
8
6
  import { Icon } from '@page-speed/icon';
7
+ import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
9
8
  import { Img } from '@page-speed/img';
9
+ import { cva } from 'class-variance-authority';
10
10
  import { Slot } from '@radix-ui/react-slot';
11
11
 
12
12
  // components/blocks/hero/hero-ecommerce-product-showcase.tsx
13
13
  function cn(...inputs) {
14
14
  return twMerge(clsx(inputs));
15
15
  }
16
- function normalizePhoneNumber(input) {
17
- const trimmed = input.trim();
18
- if (trimmed.toLowerCase().startsWith("tel:")) {
19
- return trimmed;
20
- }
21
- const match = trimmed.match(/^[\s\+\-\(\)]*(\d[\d\s\-\(\)\.]*\d)[\s\-]*(x|ext\.?|extension)?[\s\-]*(\d+)?$/i);
22
- if (match) {
23
- const mainNumber = match[1].replace(/[\s\-\(\)\.]/g, "");
24
- const extension = match[3];
25
- const normalized = mainNumber.length >= 10 && !trimmed.startsWith("+") ? `+${mainNumber}` : mainNumber;
26
- const withExtension = extension ? `${normalized};ext=${extension}` : normalized;
27
- return `tel:${withExtension}`;
28
- }
29
- const cleaned = trimmed.replace(/[\s\-\(\)\.]/g, "");
30
- return `tel:${cleaned}`;
31
- }
32
- function normalizeEmail(input) {
33
- const trimmed = input.trim();
34
- if (trimmed.toLowerCase().startsWith("mailto:")) {
35
- return trimmed;
36
- }
37
- return `mailto:${trimmed}`;
38
- }
39
- function isEmail(input) {
40
- const emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
41
- return emailRegex.test(input.trim());
42
- }
43
- function isPhoneNumber(input) {
44
- const trimmed = input.trim();
45
- if (trimmed.toLowerCase().startsWith("tel:")) {
46
- return true;
47
- }
48
- const phoneRegex = /^[\s\+\-\(\)]*\d[\d\s\-\(\)\.]*\d[\s\-]*(x|ext\.?|extension)?[\s\-]*\d*$/i;
49
- return phoneRegex.test(trimmed);
16
+ var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
17
+ function DynamicIcon({ apiKey, ...props }) {
18
+ return /* @__PURE__ */ jsx(Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
50
19
  }
51
- function isInternalUrl(href) {
52
- if (typeof window === "undefined") {
53
- return href.startsWith("/") && !href.startsWith("//");
54
- }
55
- const trimmed = href.trim();
56
- if (trimmed.startsWith("/") && !trimmed.startsWith("//")) {
57
- return true;
20
+ var maxWidthStyles = {
21
+ sm: "max-w-screen-sm",
22
+ md: "max-w-screen-md",
23
+ lg: "max-w-screen-lg",
24
+ xl: "max-w-7xl",
25
+ "2xl": "max-w-screen-2xl",
26
+ "4xl": "max-w-[1536px]",
27
+ full: "max-w-full"
28
+ };
29
+ var Container = React3__default.forwardRef(
30
+ ({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
31
+ const Component = as;
32
+ return /* @__PURE__ */ jsx(
33
+ Component,
34
+ {
35
+ ref,
36
+ className: cn(
37
+ "mx-auto w-full px-2 sm:px-4 lg:px-8",
38
+ maxWidthStyles[maxWidth],
39
+ className
40
+ ),
41
+ ...props,
42
+ children
43
+ }
44
+ );
58
45
  }
59
- try {
60
- const url = new URL(trimmed, window.location.href);
61
- const currentOrigin = window.location.origin;
62
- const normalizeOrigin = (origin) => origin.replace(/^(https?:\/\/)(www\.)?/, "$1");
63
- return normalizeOrigin(url.origin) === normalizeOrigin(currentOrigin);
64
- } catch {
65
- return false;
46
+ );
47
+ Container.displayName = "Container";
48
+
49
+ // lib/patternSvgs.ts
50
+ var patternSvgs = {
51
+ squareAltGrid: "https://cdn.ing/assets/files/record/286187/4gpn0yq2ptra8iwlvmwwv860ggwv",
52
+ grid1: "https://cdn.ing/assets/files/record/286186/nbdflpgp4ostrno079hygibsflp3",
53
+ noise: "https://cdn.ing/assets/i/r/286188/zrqcp9hynh3j7p2laihwzfbujgrl/noise.png",
54
+ dots: "https://cdn.ing/assets/files/record/286198/yfsjx9thvtxzhl2qtshxyhkrm524",
55
+ dotPattern: "https://cdn.ing/assets/files/record/286192/7ig0cku8aqbboiza8nuk6hw0nnsr",
56
+ dotPattern2: "https://cdn.ing/assets/files/record/286189/arez6gd2s7isn9i1o6c7sexdq7bl",
57
+ circles: "https://cdn.ing/assets/files/record/286190/gtmia3sncjtzetdshc20zf1d3c17",
58
+ waves: "https://cdn.ing/assets/files/record/286191/mqlb33fzxz9cdth1bx7if0wmpkp1",
59
+ crossPattern: "https://cdn.ing/assets/files/record/286193/9yfqwdbnqaipbp7fsb3wbzzmq472",
60
+ architect: "https://cdn.ing/assets/files/record/286194/vgs88ugpvyhxu13wqgy0acvae6re",
61
+ tinyCheckers: "https://cdn.ing/assets/files/record/286195/65efaknsw8kcpf9o3c2gybytsl5b",
62
+ p6: "https://cdn.ing/assets/i/r/286196/6kl0rqnd6mjk8j7e525fo8fo0vkc/p6.webp"
63
+ };
64
+ var maskTop = "radial-gradient(ellipse 70% 60% at 50% 0%, #000 60%, transparent 100%)";
65
+ var maskBottom = "radial-gradient(ellipse 100% 80% at 50% 100%, #000 50%, transparent 90%)";
66
+ var maskCenter = "radial-gradient(ellipse 60% 60% at 50% 50%, #000 30%, transparent 70%)";
67
+ var maskTopLeft = "radial-gradient(ellipse 80% 80% at 0% 0%, #000 50%, transparent 90%)";
68
+ var maskTopRight = "radial-gradient(ellipse 80% 80% at 100% 0%, #000 50%, transparent 90%)";
69
+ var maskBottomLeft = "radial-gradient(ellipse 80% 80% at 0% 100%, #000 50%, transparent 90%)";
70
+ var maskBottomRight = "radial-gradient(ellipse 80% 80% at 100% 100%, #000 50%, transparent 90%)";
71
+ var circuitBoardPattern = (id, mask) => /* @__PURE__ */ jsxs(
72
+ "svg",
73
+ {
74
+ className: "h-full w-full",
75
+ xmlns: "http://www.w3.org/2000/svg",
76
+ style: mask ? {
77
+ maskImage: mask,
78
+ WebkitMaskImage: mask
79
+ } : void 0,
80
+ children: [
81
+ /* @__PURE__ */ jsx("defs", { children: /* @__PURE__ */ jsxs(
82
+ "pattern",
83
+ {
84
+ id,
85
+ x: "0",
86
+ y: "0",
87
+ width: "100",
88
+ height: "100",
89
+ patternUnits: "userSpaceOnUse",
90
+ children: [
91
+ /* @__PURE__ */ jsx(
92
+ "path",
93
+ {
94
+ d: "M0 50h40M60 50h40M50 0v40M50 60v40",
95
+ stroke: "hsl(var(--muted))",
96
+ strokeWidth: "1",
97
+ fill: "none"
98
+ }
99
+ ),
100
+ /* @__PURE__ */ jsx("circle", { cx: "50", cy: "50", r: "3", fill: "hsl(var(--muted))" }),
101
+ /* @__PURE__ */ jsx("circle", { cx: "0", cy: "50", r: "2", fill: "hsl(var(--muted))" }),
102
+ /* @__PURE__ */ jsx("circle", { cx: "100", cy: "50", r: "2", fill: "hsl(var(--muted))" }),
103
+ /* @__PURE__ */ jsx("circle", { cx: "50", cy: "0", r: "2", fill: "hsl(var(--muted))" }),
104
+ /* @__PURE__ */ jsx("circle", { cx: "50", cy: "100", r: "2", fill: "hsl(var(--muted))" })
105
+ ]
106
+ }
107
+ ) }),
108
+ /* @__PURE__ */ jsx("rect", { width: "100%", height: "100%", fill: `url(#${id})` })
109
+ ]
66
110
  }
67
- }
68
- function toRelativePath(href) {
69
- if (typeof window === "undefined") {
70
- return href;
111
+ );
112
+ var gridDotsPattern = (id, mask) => /* @__PURE__ */ jsxs(
113
+ "svg",
114
+ {
115
+ className: "h-full w-full",
116
+ xmlns: "http://www.w3.org/2000/svg",
117
+ style: mask ? {
118
+ maskImage: mask,
119
+ WebkitMaskImage: mask
120
+ } : void 0,
121
+ children: [
122
+ /* @__PURE__ */ jsx("defs", { children: /* @__PURE__ */ jsxs(
123
+ "pattern",
124
+ {
125
+ id,
126
+ x: "0",
127
+ y: "0",
128
+ width: "40",
129
+ height: "40",
130
+ patternUnits: "userSpaceOnUse",
131
+ children: [
132
+ /* @__PURE__ */ jsx(
133
+ "path",
134
+ {
135
+ d: "M0 20h40M20 0v40",
136
+ stroke: "hsl(var(--muted))",
137
+ strokeWidth: "0.5",
138
+ fill: "none"
139
+ }
140
+ ),
141
+ /* @__PURE__ */ jsx("circle", { cx: "20", cy: "20", r: "2", fill: "hsl(var(--muted))" })
142
+ ]
143
+ }
144
+ ) }),
145
+ /* @__PURE__ */ jsx("rect", { width: "100%", height: "100%", fill: `url(#${id})` })
146
+ ]
71
147
  }
72
- const trimmed = href.trim();
73
- if (trimmed.startsWith("/") && !trimmed.startsWith("//")) {
74
- return trimmed;
148
+ );
149
+ var gridPattern = (size, mask) => /* @__PURE__ */ jsx(
150
+ "div",
151
+ {
152
+ className: "h-full w-full bg-[linear-gradient(to_right,_hsl(var(--muted))_1px,_transparent_1px),linear-gradient(to_bottom,_hsl(var(--muted))_1px,_transparent_1px)]",
153
+ style: {
154
+ backgroundSize: `${size}px ${size}px`,
155
+ ...mask ? {
156
+ maskImage: mask,
157
+ WebkitMaskImage: mask
158
+ } : {}
159
+ }
75
160
  }
76
- try {
77
- const url = new URL(trimmed, window.location.href);
78
- const currentOrigin = window.location.origin;
79
- const normalizeOrigin = (origin) => origin.replace(/^(https?:\/\/)(www\.)?/, "$1");
80
- if (normalizeOrigin(url.origin) === normalizeOrigin(currentOrigin)) {
81
- return url.pathname + url.search + url.hash;
161
+ );
162
+ var diagonalCrossPattern = (mask) => /* @__PURE__ */ jsx(
163
+ "div",
164
+ {
165
+ className: "h-full w-full",
166
+ style: {
167
+ backgroundImage: "repeating-linear-gradient(45deg, transparent, transparent 32px, hsl(var(--muted)) 32px, hsl(var(--muted)) 33px), repeating-linear-gradient(135deg, transparent, transparent 32px, hsl(var(--muted)) 32px, hsl(var(--muted)) 33px)",
168
+ ...mask ? {
169
+ maskImage: mask,
170
+ WebkitMaskImage: mask
171
+ } : {}
82
172
  }
83
- } catch {
84
173
  }
85
- return trimmed;
86
- }
87
- function useNavigation({
88
- href,
89
- onClick
90
- } = {}) {
91
- const linkType = React.useMemo(() => {
92
- if (!href || href.trim() === "") {
93
- return onClick ? "none" : "none";
174
+ );
175
+ var dashedGridMaskBase = "repeating-linear-gradient(to right, black 0px, black 3px, transparent 3px, transparent 8px), repeating-linear-gradient(to bottom, black 0px, black 3px, transparent 3px, transparent 8px)";
176
+ var dashedGridPattern = (fadeMask) => {
177
+ const mask = fadeMask ? `${dashedGridMaskBase}, ${fadeMask}` : dashedGridMaskBase;
178
+ return /* @__PURE__ */ jsx(
179
+ "div",
180
+ {
181
+ className: "h-full w-full",
182
+ style: {
183
+ backgroundImage: "linear-gradient(to right, hsl(var(--muted)) 1px, transparent 1px), linear-gradient(to bottom, hsl(var(--muted)) 1px, transparent 1px)",
184
+ backgroundSize: "20px 20px",
185
+ backgroundPosition: "0 0, 0 0",
186
+ maskImage: mask,
187
+ WebkitMaskImage: mask,
188
+ maskComposite: "intersect",
189
+ WebkitMaskComposite: "source-in"
190
+ }
94
191
  }
95
- const trimmed = href.trim();
96
- if (trimmed.toLowerCase().startsWith("mailto:") || isEmail(trimmed)) {
97
- return "mailto";
192
+ );
193
+ };
194
+ var gradientGlow = (position) => /* @__PURE__ */ jsx(
195
+ "div",
196
+ {
197
+ className: cn(
198
+ "pointer-events-none absolute left-1/2 z-0 aspect-square w-3/4 -translate-x-1/2 rounded-full opacity-50 blur-3xl",
199
+ position === "top" ? "-top-1/4" : "-bottom-1/4"
200
+ ),
201
+ style: {
202
+ background: "radial-gradient(circle, hsl(var(--primary)) 0%, transparent 70%)"
98
203
  }
99
- if (trimmed.toLowerCase().startsWith("tel:") || isPhoneNumber(trimmed)) {
100
- return "tel";
101
- }
102
- if (isInternalUrl(trimmed)) {
103
- return "internal";
104
- }
105
- try {
106
- new URL(trimmed, typeof window !== "undefined" ? window.location.href : "http://localhost");
107
- return "external";
108
- } catch {
109
- return "internal";
110
- }
111
- }, [href, onClick]);
112
- const normalizedHref = React.useMemo(() => {
113
- if (!href || href.trim() === "") {
114
- return void 0;
115
- }
116
- const trimmed = href.trim();
117
- switch (linkType) {
118
- case "tel":
119
- return normalizePhoneNumber(trimmed);
120
- case "mailto":
121
- return normalizeEmail(trimmed);
122
- case "internal":
123
- return toRelativePath(trimmed);
124
- case "external":
125
- return trimmed;
126
- default:
127
- return trimmed;
128
- }
129
- }, [href, linkType]);
130
- const target = React.useMemo(() => {
131
- switch (linkType) {
132
- case "external":
133
- return "_blank";
134
- case "internal":
135
- return "_self";
136
- case "mailto":
137
- case "tel":
138
- return void 0;
139
- default:
140
- return void 0;
141
- }
142
- }, [linkType]);
143
- const rel = React.useMemo(() => {
144
- if (linkType === "external") {
145
- return "noopener noreferrer";
146
- }
147
- return void 0;
148
- }, [linkType]);
149
- const isExternal = linkType === "external";
150
- const isInternal = linkType === "internal";
151
- const shouldUseRouter = isInternal && typeof normalizedHref === "string" && normalizedHref.startsWith("/");
152
- const handleClick = React.useCallback(
153
- (event) => {
154
- if (onClick) {
155
- try {
156
- onClick(event);
157
- } catch (error) {
158
- console.error("Error in user onClick handler:", error);
159
- }
160
- }
161
- if (event.defaultPrevented) {
162
- return;
163
- }
164
- if (shouldUseRouter && normalizedHref && event.button === 0 && // left-click only
165
- !event.metaKey && !event.altKey && !event.ctrlKey && !event.shiftKey) {
166
- if (typeof window !== "undefined") {
167
- const handler = window.__opensiteNavigationHandler;
168
- if (typeof handler === "function") {
169
- try {
170
- const handled = handler(normalizedHref, event.nativeEvent || event);
171
- if (handled !== false) {
172
- event.preventDefault();
173
- }
174
- } catch (error) {
175
- console.error("Error in navigation handler:", error);
176
- }
177
- }
178
- }
179
- }
180
- },
181
- [onClick, shouldUseRouter, normalizedHref]
182
- );
183
- return {
184
- linkType,
185
- normalizedHref,
186
- target,
187
- rel,
188
- isExternal,
189
- isInternal,
190
- shouldUseRouter,
191
- handleClick
192
- };
193
- }
194
- var baseStyles = [
195
- // Layout
196
- "inline-flex items-center justify-center gap-2 whitespace-nowrap shrink-0",
197
- // Typography - using CSS variables with sensible defaults
198
- "font-[var(--button-font-family,inherit)]",
199
- "font-[var(--button-font-weight,500)]",
200
- "tracking-[var(--button-letter-spacing,0)]",
201
- "leading-[var(--button-line-height,1.25)]",
202
- "[text-transform:var(--button-text-transform,none)]",
203
- "text-sm",
204
- // Border radius
205
- "rounded-[var(--button-radius,var(--radius,0.375rem))]",
206
- // Smooth transition - using [transition:...] to set full shorthand property (not just transition-property)
207
- "[transition:var(--button-transition,all_250ms_cubic-bezier(0.4,0,0.2,1))]",
208
- // Box shadow (master level) - using [box-shadow:...] for complex multi-value shadows
209
- "[box-shadow:var(--button-shadow,none)]",
210
- "hover:[box-shadow:var(--button-shadow-hover,var(--button-shadow,none))]",
211
- // Disabled state
212
- "disabled:pointer-events-none disabled:opacity-50",
213
- // SVG handling
214
- "[&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 [&_svg]:shrink-0",
215
- // Focus styles
216
- "outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]",
217
- // Invalid state
218
- "aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive"
219
- ].join(" ");
220
- var buttonVariants = cva(baseStyles, {
221
- variants: {
222
- variant: {
223
- // Default (Primary) variant - full customization
224
- default: [
225
- "bg-[var(--button-default-bg,hsl(var(--primary)))]",
226
- "text-[var(--button-default-fg,hsl(var(--primary-foreground)))]",
227
- "border-[length:var(--button-default-border-width,0px)]",
228
- "border-[color:var(--button-default-border,transparent)]",
229
- "[box-shadow:var(--button-default-shadow,var(--button-shadow,none))]",
230
- "hover:bg-[var(--button-default-hover-bg,hsl(var(--primary)/0.9))]",
231
- "hover:text-[var(--button-default-hover-fg,var(--button-default-fg,hsl(var(--primary-foreground))))]",
232
- "hover:border-[color:var(--button-default-hover-border,var(--button-default-border,transparent))]",
233
- "hover:[box-shadow:var(--button-default-shadow-hover,var(--button-shadow-hover,var(--button-default-shadow,var(--button-shadow,none))))]"
234
- ].join(" "),
235
- // Destructive variant - full customization
236
- destructive: [
237
- "bg-[var(--button-destructive-bg,hsl(var(--destructive)))]",
238
- "text-[var(--button-destructive-fg,white)]",
239
- "border-[length:var(--button-destructive-border-width,0px)]",
240
- "border-[color:var(--button-destructive-border,transparent)]",
241
- "[box-shadow:var(--button-destructive-shadow,var(--button-shadow,none))]",
242
- "hover:bg-[var(--button-destructive-hover-bg,hsl(var(--destructive)/0.9))]",
243
- "hover:text-[var(--button-destructive-hover-fg,var(--button-destructive-fg,white))]",
244
- "hover:border-[color:var(--button-destructive-hover-border,var(--button-destructive-border,transparent))]",
245
- "hover:[box-shadow:var(--button-destructive-shadow-hover,var(--button-shadow-hover,var(--button-destructive-shadow,var(--button-shadow,none))))]",
246
- "focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40",
247
- "dark:bg-destructive/60"
248
- ].join(" "),
249
- // Outline variant - full customization with proper border handling
250
- outline: [
251
- "bg-[var(--button-outline-bg,hsl(var(--background)))]",
252
- "text-[var(--button-outline-fg,inherit)]",
253
- "border-[length:var(--button-outline-border-width,1px)]",
254
- "border-[color:var(--button-outline-border,hsl(var(--border)))]",
255
- "[box-shadow:var(--button-outline-shadow,var(--button-shadow,0_1px_2px_0_rgb(0_0_0/0.05)))]",
256
- "hover:bg-[var(--button-outline-hover-bg,hsl(var(--accent)))]",
257
- "hover:text-[var(--button-outline-hover-fg,hsl(var(--accent-foreground)))]",
258
- "hover:border-[color:var(--button-outline-hover-border,var(--button-outline-border,hsl(var(--border))))]",
259
- "hover:[box-shadow:var(--button-outline-shadow-hover,var(--button-shadow-hover,var(--button-outline-shadow,var(--button-shadow,none))))]",
260
- "dark:bg-input/30 dark:border-input dark:hover:bg-input/50"
261
- ].join(" "),
262
- // Secondary variant - full customization
263
- secondary: [
264
- "bg-[var(--button-secondary-bg,hsl(var(--secondary)))]",
265
- "text-[var(--button-secondary-fg,hsl(var(--secondary-foreground)))]",
266
- "border-[length:var(--button-secondary-border-width,0px)]",
267
- "border-[color:var(--button-secondary-border,transparent)]",
268
- "[box-shadow:var(--button-secondary-shadow,var(--button-shadow,none))]",
269
- "hover:bg-[var(--button-secondary-hover-bg,hsl(var(--secondary)/0.8))]",
270
- "hover:text-[var(--button-secondary-hover-fg,var(--button-secondary-fg,hsl(var(--secondary-foreground))))]",
271
- "hover:border-[color:var(--button-secondary-hover-border,var(--button-secondary-border,transparent))]",
272
- "hover:[box-shadow:var(--button-secondary-shadow-hover,var(--button-shadow-hover,var(--button-secondary-shadow,var(--button-shadow,none))))]"
273
- ].join(" "),
274
- // Ghost variant - full customization
275
- ghost: [
276
- "bg-[var(--button-ghost-bg,transparent)]",
277
- "text-[var(--button-ghost-fg,inherit)]",
278
- "border-[length:var(--button-ghost-border-width,0px)]",
279
- "border-[color:var(--button-ghost-border,transparent)]",
280
- "[box-shadow:var(--button-ghost-shadow,var(--button-shadow,none))]",
281
- "hover:bg-[var(--button-ghost-hover-bg,hsl(var(--accent)))]",
282
- "hover:text-[var(--button-ghost-hover-fg,hsl(var(--accent-foreground)))]",
283
- "hover:border-[color:var(--button-ghost-hover-border,var(--button-ghost-border,transparent))]",
284
- "hover:[box-shadow:var(--button-ghost-shadow-hover,var(--button-shadow-hover,var(--button-ghost-shadow,var(--button-shadow,none))))]",
285
- "dark:hover:bg-accent/50"
286
- ].join(" "),
287
- // Link variant - full customization
288
- link: [
289
- "bg-[var(--button-link-bg,transparent)]",
290
- "text-[var(--button-link-fg,hsl(var(--primary)))]",
291
- "border-[length:var(--button-link-border-width,0px)]",
292
- "border-[color:var(--button-link-border,transparent)]",
293
- "[box-shadow:var(--button-link-shadow,none)]",
294
- "hover:bg-[var(--button-link-hover-bg,transparent)]",
295
- "hover:text-[var(--button-link-hover-fg,var(--button-link-fg,hsl(var(--primary))))]",
296
- "hover:[box-shadow:var(--button-link-shadow-hover,none)]",
297
- "underline-offset-4 hover:underline"
298
- ].join(" ")
299
- },
300
- size: {
301
- default: [
302
- "h-[var(--button-height-md,2.25rem)]",
303
- "px-[var(--button-padding-x-md,1rem)]",
304
- "py-[var(--button-padding-y-md,0.5rem)]",
305
- "has-[>svg]:px-[calc(var(--button-padding-x-md,1rem)*0.75)]"
306
- ].join(" "),
307
- sm: [
308
- "h-[var(--button-height-sm,2rem)]",
309
- "px-[var(--button-padding-x-sm,0.75rem)]",
310
- "py-[var(--button-padding-y-sm,0.25rem)]",
311
- "gap-1.5",
312
- "has-[>svg]:px-[calc(var(--button-padding-x-sm,0.75rem)*0.83)]"
313
- ].join(" "),
314
- md: [
315
- "h-[var(--button-height-md,2.25rem)]",
316
- "px-[var(--button-padding-x-md,1rem)]",
317
- "py-[var(--button-padding-y-md,0.5rem)]",
318
- "has-[>svg]:px-[calc(var(--button-padding-x-md,1rem)*0.75)]"
319
- ].join(" "),
320
- lg: [
321
- "h-[var(--button-height-lg,2.5rem)]",
322
- "px-[var(--button-padding-x-lg,1.5rem)]",
323
- "py-[var(--button-padding-y-lg,0.5rem)]",
324
- "has-[>svg]:px-[calc(var(--button-padding-x-lg,1.5rem)*0.67)]"
325
- ].join(" "),
326
- icon: "size-[var(--button-height-md,2.25rem)]",
327
- "icon-sm": "size-[var(--button-height-sm,2rem)]",
328
- "icon-lg": "size-[var(--button-height-lg,2.5rem)]"
329
- }
330
- },
331
- defaultVariants: {
332
- variant: "default",
333
- size: "default"
334
- }
335
- });
336
- var Pressable = React.forwardRef(
337
- ({
338
- children,
339
- className,
340
- href,
341
- onClick,
342
- variant,
343
- size,
344
- asButton = false,
345
- fallbackComponentType = "span",
346
- componentType,
347
- "aria-label": ariaLabel,
348
- "aria-describedby": ariaDescribedby,
349
- id,
350
- ...props
351
- }, ref) => {
352
- const navigation = useNavigation({ href, onClick });
353
- const {
354
- normalizedHref,
355
- target,
356
- rel,
357
- linkType,
358
- isInternal,
359
- handleClick
360
- } = navigation;
361
- const shouldRenderLink = normalizedHref && linkType !== "none";
362
- const shouldRenderButton = !shouldRenderLink && onClick;
363
- const effectiveComponentType = componentType || (shouldRenderLink ? "a" : shouldRenderButton ? "button" : fallbackComponentType);
364
- const finalComponentType = isInternal && shouldRenderLink ? "a" : effectiveComponentType;
365
- const shouldApplyButtonStyles = asButton || variant || size;
366
- const combinedClassName = cn(
367
- shouldApplyButtonStyles && buttonVariants({ variant, size }),
368
- className
369
- );
370
- const dataProps = Object.fromEntries(
371
- Object.entries(props).filter(([key]) => key.startsWith("data-"))
372
- );
373
- const buttonDataAttributes = shouldApplyButtonStyles ? {
374
- "data-slot": "button",
375
- "data-variant": variant ?? "default",
376
- "data-size": size ?? "default"
377
- } : {};
378
- const commonProps = {
379
- className: combinedClassName,
380
- onClick: handleClick,
381
- "aria-label": ariaLabel,
382
- "aria-describedby": ariaDescribedby,
383
- id,
384
- ...dataProps,
385
- ...buttonDataAttributes
386
- };
387
- if (finalComponentType === "a" && shouldRenderLink) {
388
- return /* @__PURE__ */ jsx(
389
- "a",
390
- {
391
- ref,
392
- href: normalizedHref,
393
- target,
394
- rel,
395
- ...commonProps,
396
- ...props,
397
- children
398
- }
399
- );
400
- }
401
- if (finalComponentType === "button") {
402
- return /* @__PURE__ */ jsx(
403
- "button",
404
- {
405
- ref,
406
- type: props.type || "button",
407
- ...commonProps,
408
- ...props,
409
- children
410
- }
411
- );
412
- }
413
- if (finalComponentType === "div") {
414
- return /* @__PURE__ */ jsx(
415
- "div",
416
- {
417
- ref,
418
- ...commonProps,
419
- children
420
- }
421
- );
204
+ }
205
+ );
206
+ var spotlight = (position) => /* @__PURE__ */ jsx(
207
+ "div",
208
+ {
209
+ className: cn(
210
+ "pointer-events-none absolute top-1/2 z-0 aspect-square w-3/4 -translate-y-1/2 rounded-full opacity-40 blur-3xl",
211
+ position === "left" ? "-left-1/4" : "-right-1/4"
212
+ ),
213
+ style: {
214
+ background: "radial-gradient(circle, hsl(var(--primary)) 0%, transparent 70%)"
422
215
  }
423
- return /* @__PURE__ */ jsx(
424
- "span",
425
- {
426
- ref,
427
- ...commonProps,
428
- children
429
- }
430
- );
431
216
  }
432
217
  );
433
- Pressable.displayName = "Pressable";
434
- var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
435
- function DynamicIcon({ apiKey, ...props }) {
436
- return /* @__PURE__ */ jsx(Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
437
- }
438
- var maxWidthStyles = {
439
- sm: "max-w-screen-sm",
440
- md: "max-w-screen-md",
441
- lg: "max-w-screen-lg",
442
- xl: "max-w-7xl",
443
- "2xl": "max-w-screen-2xl",
444
- "4xl": "max-w-[1536px]",
445
- full: "max-w-full"
218
+ var patternOverlays = {
219
+ circuitBoardBasic: () => circuitBoardPattern("circuit-board-basic"),
220
+ circuitBoardFadeTop: () => circuitBoardPattern("circuit-board-fade-top", maskTop),
221
+ circuitBoardFadeBottom: () => circuitBoardPattern("circuit-board-fade-bottom", maskBottom),
222
+ circuitBoardFadeCenter: () => circuitBoardPattern("circuit-board-fade-center", maskCenter),
223
+ circuitBoardFadeTopLeft: () => circuitBoardPattern("circuit-board-fade-top-left", maskTopLeft),
224
+ circuitBoardFadeTopRight: () => circuitBoardPattern("circuit-board-fade-top-right", maskTopRight),
225
+ circuitBoardFadeBottomLeft: () => circuitBoardPattern("circuit-board-fade-bottom-left", maskBottomLeft),
226
+ circuitBoardFadeBottomRight: () => circuitBoardPattern("circuit-board-fade-bottom-right", maskBottomRight),
227
+ dashedGridBasic: () => dashedGridPattern(),
228
+ dashedGridFadeTop: () => dashedGridPattern(maskTop),
229
+ dashedGridFadeBottom: () => dashedGridPattern(maskBottom),
230
+ dashedGridFadeCenter: () => dashedGridPattern(maskCenter),
231
+ dashedGridFadeTopLeft: () => dashedGridPattern(maskTopLeft),
232
+ dashedGridFadeTopRight: () => dashedGridPattern(maskTopRight),
233
+ dashedGridFadeBottomLeft: () => dashedGridPattern(maskBottomLeft),
234
+ dashedGridFadeBottomRight: () => dashedGridPattern(maskBottomRight),
235
+ diagonalCrossBasic: () => diagonalCrossPattern(),
236
+ diagonalCrossFadeTop: () => diagonalCrossPattern(maskTop),
237
+ diagonalCrossFadeBottom: () => diagonalCrossPattern(maskBottom),
238
+ diagonalCrossFadeCenter: () => diagonalCrossPattern(maskCenter),
239
+ diagonalCrossFadeTopLeft: () => diagonalCrossPattern(maskTopLeft),
240
+ diagonalCrossFadeTopRight: () => diagonalCrossPattern(maskTopRight),
241
+ diagonalCrossFadeBottomLeft: () => diagonalCrossPattern(maskBottomLeft),
242
+ diagonalCrossFadeBottomRight: () => diagonalCrossPattern(maskBottomRight),
243
+ gridBasic: () => gridPattern(40),
244
+ gridFadeTop: () => gridPattern(32, maskTop),
245
+ gridFadeBottom: () => gridPattern(32, maskBottom),
246
+ gridFadeCenter: () => gridPattern(40, maskCenter),
247
+ gridFadeTopLeft: () => gridPattern(32, maskTopLeft),
248
+ gridFadeTopRight: () => gridPattern(32, maskTopRight),
249
+ gridFadeBottomLeft: () => gridPattern(32, maskBottomLeft),
250
+ gridFadeBottomRight: () => gridPattern(32, maskBottomRight),
251
+ gridDotsBasic: () => gridDotsPattern("grid-dots-basic"),
252
+ gridDotsFadeCenter: () => gridDotsPattern("grid-dots-fade-center", maskCenter),
253
+ gradientGlowTop: () => gradientGlow("top"),
254
+ gradientGlowBottom: () => gradientGlow("bottom"),
255
+ spotlightLeft: () => spotlight("left"),
256
+ spotlightRight: () => spotlight("right")
446
257
  };
447
- var Container = React__default.forwardRef(
448
- ({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
449
- const Component = as;
258
+ var inlinePatternStyles = {
259
+ radialGradientTop: {
260
+ background: "radial-gradient(125% 125% at 50% 10%, hsl(var(--background)) 40%, hsl(var(--primary)) 100%)"
261
+ },
262
+ radialGradientBottom: {
263
+ background: "radial-gradient(125% 125% at 50% 90%, hsl(var(--background)) 40%, hsl(var(--primary)) 100%)"
264
+ }
265
+ };
266
+ function PatternBackground({
267
+ pattern,
268
+ opacity = 0.08,
269
+ className,
270
+ style
271
+ }) {
272
+ if (!pattern) {
273
+ return null;
274
+ }
275
+ if (pattern in inlinePatternStyles) {
276
+ const inlineStyle = inlinePatternStyles[pattern];
450
277
  return /* @__PURE__ */ jsx(
451
- Component,
278
+ "div",
452
279
  {
453
- ref,
454
- className: cn(
455
- "mx-auto w-full px-2 sm:px-4 lg:px-8",
456
- maxWidthStyles[maxWidth],
457
- className
458
- ),
459
- ...props,
460
- children
280
+ className: cn("pointer-events-none absolute inset-0 z-0", className),
281
+ style: { ...inlineStyle, opacity, ...style },
282
+ "aria-hidden": "true"
461
283
  }
462
284
  );
463
285
  }
464
- );
465
- Container.displayName = "Container";
466
-
467
- // lib/patternSvgs.ts
468
- var patternSvgs = {
469
- squareAltGrid: "https://cdn.ing/assets/files/record/286187/4gpn0yq2ptra8iwlvmwwv860ggwv",
470
- grid1: "https://cdn.ing/assets/files/record/286186/nbdflpgp4ostrno079hygibsflp3",
471
- noise: "https://cdn.ing/assets/i/r/286188/zrqcp9hynh3j7p2laihwzfbujgrl/noise.png",
472
- dots: "https://cdn.ing/assets/files/record/286198/yfsjx9thvtxzhl2qtshxyhkrm524",
473
- dotPattern: "https://cdn.ing/assets/files/record/286192/7ig0cku8aqbboiza8nuk6hw0nnsr",
474
- dotPattern2: "https://cdn.ing/assets/files/record/286189/arez6gd2s7isn9i1o6c7sexdq7bl",
475
- circles: "https://cdn.ing/assets/files/record/286190/gtmia3sncjtzetdshc20zf1d3c17",
476
- waves: "https://cdn.ing/assets/files/record/286191/mqlb33fzxz9cdth1bx7if0wmpkp1",
477
- crossPattern: "https://cdn.ing/assets/files/record/286193/9yfqwdbnqaipbp7fsb3wbzzmq472",
478
- architect: "https://cdn.ing/assets/files/record/286194/vgs88ugpvyhxu13wqgy0acvae6re",
479
- tinyCheckers: "https://cdn.ing/assets/files/record/286195/65efaknsw8kcpf9o3c2gybytsl5b",
480
- p6: "https://cdn.ing/assets/i/r/286196/6kl0rqnd6mjk8j7e525fo8fo0vkc/p6.webp"
481
- };
482
- var maskTop = "radial-gradient(ellipse 70% 60% at 50% 0%, #000 60%, transparent 100%)";
483
- var maskBottom = "radial-gradient(ellipse 100% 80% at 50% 100%, #000 50%, transparent 90%)";
484
- var maskCenter = "radial-gradient(ellipse 60% 60% at 50% 50%, #000 30%, transparent 70%)";
485
- var maskTopLeft = "radial-gradient(ellipse 80% 80% at 0% 0%, #000 50%, transparent 90%)";
486
- var maskTopRight = "radial-gradient(ellipse 80% 80% at 100% 0%, #000 50%, transparent 90%)";
487
- var maskBottomLeft = "radial-gradient(ellipse 80% 80% at 0% 100%, #000 50%, transparent 90%)";
488
- var maskBottomRight = "radial-gradient(ellipse 80% 80% at 100% 100%, #000 50%, transparent 90%)";
489
- var circuitBoardPattern = (id, mask) => /* @__PURE__ */ jsxs(
490
- "svg",
491
- {
492
- className: "h-full w-full",
493
- xmlns: "http://www.w3.org/2000/svg",
494
- style: mask ? {
495
- maskImage: mask,
496
- WebkitMaskImage: mask
497
- } : void 0,
498
- children: [
499
- /* @__PURE__ */ jsx("defs", { children: /* @__PURE__ */ jsxs(
500
- "pattern",
501
- {
502
- id,
503
- x: "0",
504
- y: "0",
505
- width: "100",
506
- height: "100",
507
- patternUnits: "userSpaceOnUse",
508
- children: [
509
- /* @__PURE__ */ jsx(
510
- "path",
511
- {
512
- d: "M0 50h40M60 50h40M50 0v40M50 60v40",
513
- stroke: "hsl(var(--muted))",
514
- strokeWidth: "1",
515
- fill: "none"
516
- }
517
- ),
518
- /* @__PURE__ */ jsx("circle", { cx: "50", cy: "50", r: "3", fill: "hsl(var(--muted))" }),
519
- /* @__PURE__ */ jsx("circle", { cx: "0", cy: "50", r: "2", fill: "hsl(var(--muted))" }),
520
- /* @__PURE__ */ jsx("circle", { cx: "100", cy: "50", r: "2", fill: "hsl(var(--muted))" }),
521
- /* @__PURE__ */ jsx("circle", { cx: "50", cy: "0", r: "2", fill: "hsl(var(--muted))" }),
522
- /* @__PURE__ */ jsx("circle", { cx: "50", cy: "100", r: "2", fill: "hsl(var(--muted))" })
523
- ]
524
- }
525
- ) }),
526
- /* @__PURE__ */ jsx("rect", { width: "100%", height: "100%", fill: `url(#${id})` })
527
- ]
528
- }
529
- );
530
- var gridDotsPattern = (id, mask) => /* @__PURE__ */ jsxs(
531
- "svg",
532
- {
533
- className: "h-full w-full",
534
- xmlns: "http://www.w3.org/2000/svg",
535
- style: mask ? {
536
- maskImage: mask,
537
- WebkitMaskImage: mask
538
- } : void 0,
539
- children: [
540
- /* @__PURE__ */ jsx("defs", { children: /* @__PURE__ */ jsxs(
541
- "pattern",
542
- {
543
- id,
544
- x: "0",
545
- y: "0",
546
- width: "40",
547
- height: "40",
548
- patternUnits: "userSpaceOnUse",
549
- children: [
550
- /* @__PURE__ */ jsx(
551
- "path",
552
- {
553
- d: "M0 20h40M20 0v40",
554
- stroke: "hsl(var(--muted))",
555
- strokeWidth: "0.5",
556
- fill: "none"
557
- }
558
- ),
559
- /* @__PURE__ */ jsx("circle", { cx: "20", cy: "20", r: "2", fill: "hsl(var(--muted))" })
560
- ]
561
- }
562
- ) }),
563
- /* @__PURE__ */ jsx("rect", { width: "100%", height: "100%", fill: `url(#${id})` })
564
- ]
565
- }
566
- );
567
- var gridPattern = (size, mask) => /* @__PURE__ */ jsx(
568
- "div",
569
- {
570
- className: "h-full w-full bg-[linear-gradient(to_right,_hsl(var(--muted))_1px,_transparent_1px),linear-gradient(to_bottom,_hsl(var(--muted))_1px,_transparent_1px)]",
571
- style: {
572
- backgroundSize: `${size}px ${size}px`,
573
- ...mask ? {
574
- maskImage: mask,
575
- WebkitMaskImage: mask
576
- } : {}
577
- }
578
- }
579
- );
580
- var diagonalCrossPattern = (mask) => /* @__PURE__ */ jsx(
581
- "div",
582
- {
583
- className: "h-full w-full",
584
- style: {
585
- backgroundImage: "repeating-linear-gradient(45deg, transparent, transparent 32px, hsl(var(--muted)) 32px, hsl(var(--muted)) 33px), repeating-linear-gradient(135deg, transparent, transparent 32px, hsl(var(--muted)) 32px, hsl(var(--muted)) 33px)",
586
- ...mask ? {
587
- maskImage: mask,
588
- WebkitMaskImage: mask
589
- } : {}
590
- }
286
+ if (pattern in patternOverlays) {
287
+ const Overlay = patternOverlays[pattern];
288
+ return /* @__PURE__ */ jsx(
289
+ "div",
290
+ {
291
+ className: cn("pointer-events-none absolute inset-0 z-0", className),
292
+ style: { opacity, ...style },
293
+ "aria-hidden": "true",
294
+ children: Overlay()
295
+ }
296
+ );
591
297
  }
592
- );
593
- var dashedGridMaskBase = "repeating-linear-gradient(to right, black 0px, black 3px, transparent 3px, transparent 8px), repeating-linear-gradient(to bottom, black 0px, black 3px, transparent 3px, transparent 8px)";
594
- var dashedGridPattern = (fadeMask) => {
595
- const mask = fadeMask ? `${dashedGridMaskBase}, ${fadeMask}` : dashedGridMaskBase;
298
+ const patternUrl = pattern in patternSvgs ? patternSvgs[pattern] : pattern;
596
299
  return /* @__PURE__ */ jsx(
597
300
  "div",
598
301
  {
599
- className: "h-full w-full",
302
+ className: cn("pointer-events-none absolute inset-0 z-0", className),
600
303
  style: {
601
- backgroundImage: "linear-gradient(to right, hsl(var(--muted)) 1px, transparent 1px), linear-gradient(to bottom, hsl(var(--muted)) 1px, transparent 1px)",
602
- backgroundSize: "20px 20px",
603
- backgroundPosition: "0 0, 0 0",
604
- maskImage: mask,
605
- WebkitMaskImage: mask,
606
- maskComposite: "intersect",
607
- WebkitMaskComposite: "source-in"
608
- }
304
+ backgroundImage: `url(${patternUrl})`,
305
+ backgroundRepeat: "repeat",
306
+ backgroundSize: "auto",
307
+ opacity,
308
+ ...style
309
+ },
310
+ "aria-hidden": "true"
609
311
  }
610
312
  );
313
+ }
314
+ var backgroundStyles = {
315
+ default: "bg-background text-foreground",
316
+ white: "bg-white text-dark",
317
+ gray: "bg-muted/30 text-foreground",
318
+ dark: "bg-foreground text-background",
319
+ transparent: "bg-transparent text-foreground",
320
+ gradient: "bg-linear-to-br from-primary via-primary/90 to-foreground text-primary-foreground",
321
+ primary: "bg-primary text-primary-foreground",
322
+ secondary: "bg-secondary text-secondary-foreground",
323
+ muted: "bg-muted text-muted-foreground"
611
324
  };
612
- var gradientGlow = (position) => /* @__PURE__ */ jsx(
613
- "div",
614
- {
615
- className: cn(
616
- "pointer-events-none absolute left-1/2 z-0 aspect-square w-3/4 -translate-x-1/2 rounded-full opacity-50 blur-3xl",
617
- position === "top" ? "-top-1/4" : "-bottom-1/4"
618
- ),
619
- style: {
620
- background: "radial-gradient(circle, hsl(var(--primary)) 0%, transparent 70%)"
621
- }
325
+ var spacingStyles = {
326
+ none: "py-0 md:py-0",
327
+ sm: "py-12 md:py-16",
328
+ md: "py-16 md:py-24",
329
+ lg: "py-20 md:py-32",
330
+ xl: "py-24 md:py-40"
331
+ };
332
+ var predefinedSpacings = ["none", "sm", "md", "lg", "xl"];
333
+ var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
334
+ var Section = React3__default.forwardRef(
335
+ ({
336
+ id,
337
+ title,
338
+ subtitle,
339
+ children,
340
+ className,
341
+ style,
342
+ background = "default",
343
+ spacing = "lg",
344
+ pattern,
345
+ patternOpacity,
346
+ patternClassName,
347
+ containerClassName,
348
+ containerMaxWidth = "xl",
349
+ ...props
350
+ }, ref) => {
351
+ const effectivePatternOpacity = patternOpacity !== void 0 ? patternOpacity : pattern ? 1 : 0;
352
+ return /* @__PURE__ */ jsxs(
353
+ "section",
354
+ {
355
+ ref,
356
+ id,
357
+ className: cn(
358
+ "relative",
359
+ pattern ? "overflow-hidden" : null,
360
+ backgroundStyles[background],
361
+ isPredefinedSpacing(spacing) ? spacingStyles[spacing] : spacing,
362
+ className
363
+ ),
364
+ style,
365
+ ...props,
366
+ children: [
367
+ /* @__PURE__ */ jsx(
368
+ PatternBackground,
369
+ {
370
+ pattern,
371
+ opacity: effectivePatternOpacity,
372
+ className: patternClassName
373
+ }
374
+ ),
375
+ /* @__PURE__ */ jsxs(
376
+ Container,
377
+ {
378
+ maxWidth: containerMaxWidth,
379
+ className: cn("relative z-10", containerClassName),
380
+ children: [
381
+ (title || subtitle) && /* @__PURE__ */ jsxs("div", { className: "mb-6 text-center md:mb-16", children: [
382
+ subtitle && /* @__PURE__ */ jsx("p", { className: "mb-2 text-sm font-semibold uppercase tracking-wider", children: subtitle }),
383
+ title && /* @__PURE__ */ jsx("h2", { className: "text-3xl font-bold tracking-tight md:text-4xl lg:text-5xl", children: title })
384
+ ] }),
385
+ children
386
+ ]
387
+ }
388
+ )
389
+ ]
390
+ }
391
+ );
622
392
  }
623
393
  );
624
- var spotlight = (position) => /* @__PURE__ */ jsx(
625
- "div",
394
+ Section.displayName = "Section";
395
+ var baseStyles = [
396
+ // Layout
397
+ "inline-flex items-center justify-center gap-2 whitespace-nowrap shrink-0",
398
+ // Typography - using CSS variables with sensible defaults
399
+ "font-[var(--button-font-family,inherit)]",
400
+ "font-[var(--button-font-weight,500)]",
401
+ "tracking-[var(--button-letter-spacing,0)]",
402
+ "leading-[var(--button-line-height,1.25)]",
403
+ "[text-transform:var(--button-text-transform,none)]",
404
+ "text-sm",
405
+ // Border radius
406
+ "rounded-[var(--button-radius,var(--radius,0.375rem))]",
407
+ // Smooth transition - using [transition:...] to set full shorthand property (not just transition-property)
408
+ "[transition:var(--button-transition,all_250ms_cubic-bezier(0.4,0,0.2,1))]",
409
+ // Box shadow (master level) - using [box-shadow:...] for complex multi-value shadows
410
+ "[box-shadow:var(--button-shadow,none)]",
411
+ "hover:[box-shadow:var(--button-shadow-hover,var(--button-shadow,none))]",
412
+ // Disabled state
413
+ "disabled:pointer-events-none disabled:opacity-50",
414
+ // SVG handling
415
+ "[&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 [&_svg]:shrink-0",
416
+ // Focus styles
417
+ "outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]",
418
+ // Invalid state
419
+ "aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive"
420
+ ].join(" ");
421
+ var buttonVariants = cva(baseStyles, {
422
+ variants: {
423
+ variant: {
424
+ // Default (Primary) variant - full customization
425
+ default: [
426
+ "bg-[var(--button-default-bg,hsl(var(--primary)))]",
427
+ "text-[var(--button-default-fg,hsl(var(--primary-foreground)))]",
428
+ "border-[length:var(--button-default-border-width,0px)]",
429
+ "border-[color:var(--button-default-border,transparent)]",
430
+ "[box-shadow:var(--button-default-shadow,var(--button-shadow,none))]",
431
+ "hover:bg-[var(--button-default-hover-bg,hsl(var(--primary)/0.9))]",
432
+ "hover:text-[var(--button-default-hover-fg,var(--button-default-fg,hsl(var(--primary-foreground))))]",
433
+ "hover:border-[color:var(--button-default-hover-border,var(--button-default-border,transparent))]",
434
+ "hover:[box-shadow:var(--button-default-shadow-hover,var(--button-shadow-hover,var(--button-default-shadow,var(--button-shadow,none))))]"
435
+ ].join(" "),
436
+ // Destructive variant - full customization
437
+ destructive: [
438
+ "bg-[var(--button-destructive-bg,hsl(var(--destructive)))]",
439
+ "text-[var(--button-destructive-fg,white)]",
440
+ "border-[length:var(--button-destructive-border-width,0px)]",
441
+ "border-[color:var(--button-destructive-border,transparent)]",
442
+ "[box-shadow:var(--button-destructive-shadow,var(--button-shadow,none))]",
443
+ "hover:bg-[var(--button-destructive-hover-bg,hsl(var(--destructive)/0.9))]",
444
+ "hover:text-[var(--button-destructive-hover-fg,var(--button-destructive-fg,white))]",
445
+ "hover:border-[color:var(--button-destructive-hover-border,var(--button-destructive-border,transparent))]",
446
+ "hover:[box-shadow:var(--button-destructive-shadow-hover,var(--button-shadow-hover,var(--button-destructive-shadow,var(--button-shadow,none))))]",
447
+ "focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40",
448
+ "dark:bg-destructive/60"
449
+ ].join(" "),
450
+ // Outline variant - full customization with proper border handling
451
+ outline: [
452
+ "bg-[var(--button-outline-bg,hsl(var(--background)))]",
453
+ "text-[var(--button-outline-fg,inherit)]",
454
+ "border-[length:var(--button-outline-border-width,1px)]",
455
+ "border-[color:var(--button-outline-border,hsl(var(--border)))]",
456
+ "[box-shadow:var(--button-outline-shadow,var(--button-shadow,0_1px_2px_0_rgb(0_0_0/0.05)))]",
457
+ "hover:bg-[var(--button-outline-hover-bg,hsl(var(--accent)))]",
458
+ "hover:text-[var(--button-outline-hover-fg,hsl(var(--accent-foreground)))]",
459
+ "hover:border-[color:var(--button-outline-hover-border,var(--button-outline-border,hsl(var(--border))))]",
460
+ "hover:[box-shadow:var(--button-outline-shadow-hover,var(--button-shadow-hover,var(--button-outline-shadow,var(--button-shadow,none))))]",
461
+ "dark:bg-input/30 dark:border-input dark:hover:bg-input/50"
462
+ ].join(" "),
463
+ // Secondary variant - full customization
464
+ secondary: [
465
+ "bg-[var(--button-secondary-bg,hsl(var(--secondary)))]",
466
+ "text-[var(--button-secondary-fg,hsl(var(--secondary-foreground)))]",
467
+ "border-[length:var(--button-secondary-border-width,0px)]",
468
+ "border-[color:var(--button-secondary-border,transparent)]",
469
+ "[box-shadow:var(--button-secondary-shadow,var(--button-shadow,none))]",
470
+ "hover:bg-[var(--button-secondary-hover-bg,hsl(var(--secondary)/0.8))]",
471
+ "hover:text-[var(--button-secondary-hover-fg,var(--button-secondary-fg,hsl(var(--secondary-foreground))))]",
472
+ "hover:border-[color:var(--button-secondary-hover-border,var(--button-secondary-border,transparent))]",
473
+ "hover:[box-shadow:var(--button-secondary-shadow-hover,var(--button-shadow-hover,var(--button-secondary-shadow,var(--button-shadow,none))))]"
474
+ ].join(" "),
475
+ // Ghost variant - full customization
476
+ ghost: [
477
+ "bg-[var(--button-ghost-bg,transparent)]",
478
+ "text-[var(--button-ghost-fg,inherit)]",
479
+ "border-[length:var(--button-ghost-border-width,0px)]",
480
+ "border-[color:var(--button-ghost-border,transparent)]",
481
+ "[box-shadow:var(--button-ghost-shadow,var(--button-shadow,none))]",
482
+ "hover:bg-[var(--button-ghost-hover-bg,hsl(var(--accent)))]",
483
+ "hover:text-[var(--button-ghost-hover-fg,hsl(var(--accent-foreground)))]",
484
+ "hover:border-[color:var(--button-ghost-hover-border,var(--button-ghost-border,transparent))]",
485
+ "hover:[box-shadow:var(--button-ghost-shadow-hover,var(--button-shadow-hover,var(--button-ghost-shadow,var(--button-shadow,none))))]",
486
+ "dark:hover:bg-accent/50"
487
+ ].join(" "),
488
+ // Link variant - full customization
489
+ link: [
490
+ "bg-[var(--button-link-bg,transparent)]",
491
+ "text-[var(--button-link-fg,hsl(var(--primary)))]",
492
+ "border-[length:var(--button-link-border-width,0px)]",
493
+ "border-[color:var(--button-link-border,transparent)]",
494
+ "[box-shadow:var(--button-link-shadow,none)]",
495
+ "hover:bg-[var(--button-link-hover-bg,transparent)]",
496
+ "hover:text-[var(--button-link-hover-fg,var(--button-link-fg,hsl(var(--primary))))]",
497
+ "hover:[box-shadow:var(--button-link-shadow-hover,none)]",
498
+ "underline-offset-4 hover:underline"
499
+ ].join(" ")
500
+ },
501
+ size: {
502
+ default: [
503
+ "h-[var(--button-height-md,2.25rem)]",
504
+ "px-[var(--button-padding-x-md,1rem)]",
505
+ "py-[var(--button-padding-y-md,0.5rem)]",
506
+ "has-[>svg]:px-[calc(var(--button-padding-x-md,1rem)*0.75)]"
507
+ ].join(" "),
508
+ sm: [
509
+ "h-[var(--button-height-sm,2rem)]",
510
+ "px-[var(--button-padding-x-sm,0.75rem)]",
511
+ "py-[var(--button-padding-y-sm,0.25rem)]",
512
+ "gap-1.5",
513
+ "has-[>svg]:px-[calc(var(--button-padding-x-sm,0.75rem)*0.83)]"
514
+ ].join(" "),
515
+ md: [
516
+ "h-[var(--button-height-md,2.25rem)]",
517
+ "px-[var(--button-padding-x-md,1rem)]",
518
+ "py-[var(--button-padding-y-md,0.5rem)]",
519
+ "has-[>svg]:px-[calc(var(--button-padding-x-md,1rem)*0.75)]"
520
+ ].join(" "),
521
+ lg: [
522
+ "h-[var(--button-height-lg,2.5rem)]",
523
+ "px-[var(--button-padding-x-lg,1.5rem)]",
524
+ "py-[var(--button-padding-y-lg,0.5rem)]",
525
+ "has-[>svg]:px-[calc(var(--button-padding-x-lg,1.5rem)*0.67)]"
526
+ ].join(" "),
527
+ icon: "size-[var(--button-height-md,2.25rem)]",
528
+ "icon-sm": "size-[var(--button-height-sm,2rem)]",
529
+ "icon-lg": "size-[var(--button-height-lg,2.5rem)]"
530
+ }
531
+ },
532
+ defaultVariants: {
533
+ variant: "default",
534
+ size: "default"
535
+ }
536
+ });
537
+ var badgeVariants = cva(
538
+ "inline-flex items-center justify-center rounded-full border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",
626
539
  {
627
- className: cn(
628
- "pointer-events-none absolute top-1/2 z-0 aspect-square w-3/4 -translate-y-1/2 rounded-full opacity-40 blur-3xl",
629
- position === "left" ? "-left-1/4" : "-right-1/4"
630
- ),
631
- style: {
632
- background: "radial-gradient(circle, hsl(var(--primary)) 0%, transparent 70%)"
540
+ variants: {
541
+ variant: {
542
+ default: "border-transparent bg-primary text-primary-foreground [a&]:hover:bg-primary/90",
543
+ secondary: "border-transparent bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",
544
+ destructive: "border-transparent bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",
545
+ outline: "text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground"
546
+ }
547
+ },
548
+ defaultVariants: {
549
+ variant: "default"
633
550
  }
634
551
  }
635
552
  );
636
- var patternOverlays = {
637
- circuitBoardBasic: () => circuitBoardPattern("circuit-board-basic"),
638
- circuitBoardFadeTop: () => circuitBoardPattern("circuit-board-fade-top", maskTop),
639
- circuitBoardFadeBottom: () => circuitBoardPattern("circuit-board-fade-bottom", maskBottom),
640
- circuitBoardFadeCenter: () => circuitBoardPattern("circuit-board-fade-center", maskCenter),
641
- circuitBoardFadeTopLeft: () => circuitBoardPattern("circuit-board-fade-top-left", maskTopLeft),
642
- circuitBoardFadeTopRight: () => circuitBoardPattern("circuit-board-fade-top-right", maskTopRight),
643
- circuitBoardFadeBottomLeft: () => circuitBoardPattern("circuit-board-fade-bottom-left", maskBottomLeft),
644
- circuitBoardFadeBottomRight: () => circuitBoardPattern("circuit-board-fade-bottom-right", maskBottomRight),
645
- dashedGridBasic: () => dashedGridPattern(),
646
- dashedGridFadeTop: () => dashedGridPattern(maskTop),
647
- dashedGridFadeBottom: () => dashedGridPattern(maskBottom),
648
- dashedGridFadeCenter: () => dashedGridPattern(maskCenter),
649
- dashedGridFadeTopLeft: () => dashedGridPattern(maskTopLeft),
650
- dashedGridFadeTopRight: () => dashedGridPattern(maskTopRight),
651
- dashedGridFadeBottomLeft: () => dashedGridPattern(maskBottomLeft),
652
- dashedGridFadeBottomRight: () => dashedGridPattern(maskBottomRight),
653
- diagonalCrossBasic: () => diagonalCrossPattern(),
654
- diagonalCrossFadeTop: () => diagonalCrossPattern(maskTop),
655
- diagonalCrossFadeBottom: () => diagonalCrossPattern(maskBottom),
656
- diagonalCrossFadeCenter: () => diagonalCrossPattern(maskCenter),
657
- diagonalCrossFadeTopLeft: () => diagonalCrossPattern(maskTopLeft),
658
- diagonalCrossFadeTopRight: () => diagonalCrossPattern(maskTopRight),
659
- diagonalCrossFadeBottomLeft: () => diagonalCrossPattern(maskBottomLeft),
660
- diagonalCrossFadeBottomRight: () => diagonalCrossPattern(maskBottomRight),
661
- gridBasic: () => gridPattern(40),
662
- gridFadeTop: () => gridPattern(32, maskTop),
663
- gridFadeBottom: () => gridPattern(32, maskBottom),
664
- gridFadeCenter: () => gridPattern(40, maskCenter),
665
- gridFadeTopLeft: () => gridPattern(32, maskTopLeft),
666
- gridFadeTopRight: () => gridPattern(32, maskTopRight),
667
- gridFadeBottomLeft: () => gridPattern(32, maskBottomLeft),
668
- gridFadeBottomRight: () => gridPattern(32, maskBottomRight),
669
- gridDotsBasic: () => gridDotsPattern("grid-dots-basic"),
670
- gridDotsFadeCenter: () => gridDotsPattern("grid-dots-fade-center", maskCenter),
671
- gradientGlowTop: () => gradientGlow("top"),
672
- gradientGlowBottom: () => gradientGlow("bottom"),
673
- spotlightLeft: () => spotlight("left"),
674
- spotlightRight: () => spotlight("right")
675
- };
676
- var inlinePatternStyles = {
677
- radialGradientTop: {
678
- background: "radial-gradient(125% 125% at 50% 10%, hsl(var(--background)) 40%, hsl(var(--primary)) 100%)"
679
- },
680
- radialGradientBottom: {
681
- background: "radial-gradient(125% 125% at 50% 90%, hsl(var(--background)) 40%, hsl(var(--primary)) 100%)"
682
- }
683
- };
684
- function PatternBackground({
685
- pattern,
686
- opacity = 0.08,
553
+ function Badge({
687
554
  className,
688
- style
555
+ variant,
556
+ asChild = false,
557
+ ...props
689
558
  }) {
690
- if (!pattern) {
691
- return null;
559
+ const Comp = asChild ? Slot : "span";
560
+ return /* @__PURE__ */ jsx(
561
+ Comp,
562
+ {
563
+ "data-slot": "badge",
564
+ className: cn(badgeVariants({ variant }), className),
565
+ ...props
566
+ }
567
+ );
568
+ }
569
+ function normalizePhoneNumber(input) {
570
+ const trimmed = input.trim();
571
+ if (trimmed.toLowerCase().startsWith("tel:")) {
572
+ return trimmed;
692
573
  }
693
- if (pattern in inlinePatternStyles) {
694
- const inlineStyle = inlinePatternStyles[pattern];
695
- return /* @__PURE__ */ jsx(
696
- "div",
697
- {
698
- className: cn("pointer-events-none absolute inset-0 z-0", className),
699
- style: { ...inlineStyle, opacity, ...style },
700
- "aria-hidden": "true"
701
- }
702
- );
574
+ const match = trimmed.match(/^[\s\+\-\(\)]*(\d[\d\s\-\(\)\.]*\d)[\s\-]*(x|ext\.?|extension)?[\s\-]*(\d+)?$/i);
575
+ if (match) {
576
+ const mainNumber = match[1].replace(/[\s\-\(\)\.]/g, "");
577
+ const extension = match[3];
578
+ const normalized = mainNumber.length >= 10 && !trimmed.startsWith("+") ? `+${mainNumber}` : mainNumber;
579
+ const withExtension = extension ? `${normalized};ext=${extension}` : normalized;
580
+ return `tel:${withExtension}`;
703
581
  }
704
- if (pattern in patternOverlays) {
705
- const Overlay = patternOverlays[pattern];
706
- return /* @__PURE__ */ jsx(
707
- "div",
708
- {
709
- className: cn("pointer-events-none absolute inset-0 z-0", className),
710
- style: { opacity, ...style },
711
- "aria-hidden": "true",
712
- children: Overlay()
582
+ const cleaned = trimmed.replace(/[\s\-\(\)\.]/g, "");
583
+ return `tel:${cleaned}`;
584
+ }
585
+ function normalizeEmail(input) {
586
+ const trimmed = input.trim();
587
+ if (trimmed.toLowerCase().startsWith("mailto:")) {
588
+ return trimmed;
589
+ }
590
+ return `mailto:${trimmed}`;
591
+ }
592
+ function isEmail(input) {
593
+ const emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
594
+ return emailRegex.test(input.trim());
595
+ }
596
+ function isPhoneNumber(input) {
597
+ const trimmed = input.trim();
598
+ if (trimmed.toLowerCase().startsWith("tel:")) {
599
+ return true;
600
+ }
601
+ const phoneRegex = /^[\s\+\-\(\)]*\d[\d\s\-\(\)\.]*\d[\s\-]*(x|ext\.?|extension)?[\s\-]*\d*$/i;
602
+ return phoneRegex.test(trimmed);
603
+ }
604
+ function isInternalUrl(href) {
605
+ if (typeof window === "undefined") {
606
+ return href.startsWith("/") && !href.startsWith("//");
607
+ }
608
+ const trimmed = href.trim();
609
+ if (trimmed.startsWith("/") && !trimmed.startsWith("//")) {
610
+ return true;
611
+ }
612
+ try {
613
+ const url = new URL(trimmed, window.location.href);
614
+ const currentOrigin = window.location.origin;
615
+ const normalizeOrigin = (origin) => origin.replace(/^(https?:\/\/)(www\.)?/, "$1");
616
+ return normalizeOrigin(url.origin) === normalizeOrigin(currentOrigin);
617
+ } catch {
618
+ return false;
619
+ }
620
+ }
621
+ function toRelativePath(href) {
622
+ if (typeof window === "undefined") {
623
+ return href;
624
+ }
625
+ const trimmed = href.trim();
626
+ if (trimmed.startsWith("/") && !trimmed.startsWith("//")) {
627
+ return trimmed;
628
+ }
629
+ try {
630
+ const url = new URL(trimmed, window.location.href);
631
+ const currentOrigin = window.location.origin;
632
+ const normalizeOrigin = (origin) => origin.replace(/^(https?:\/\/)(www\.)?/, "$1");
633
+ if (normalizeOrigin(url.origin) === normalizeOrigin(currentOrigin)) {
634
+ return url.pathname + url.search + url.hash;
635
+ }
636
+ } catch {
637
+ }
638
+ return trimmed;
639
+ }
640
+ function useNavigation({
641
+ href,
642
+ onClick
643
+ } = {}) {
644
+ const linkType = React3.useMemo(() => {
645
+ if (!href || href.trim() === "") {
646
+ return onClick ? "none" : "none";
647
+ }
648
+ const trimmed = href.trim();
649
+ if (trimmed.toLowerCase().startsWith("mailto:") || isEmail(trimmed)) {
650
+ return "mailto";
651
+ }
652
+ if (trimmed.toLowerCase().startsWith("tel:") || isPhoneNumber(trimmed)) {
653
+ return "tel";
654
+ }
655
+ if (isInternalUrl(trimmed)) {
656
+ return "internal";
657
+ }
658
+ try {
659
+ new URL(trimmed, typeof window !== "undefined" ? window.location.href : "http://localhost");
660
+ return "external";
661
+ } catch {
662
+ return "internal";
663
+ }
664
+ }, [href, onClick]);
665
+ const normalizedHref = React3.useMemo(() => {
666
+ if (!href || href.trim() === "") {
667
+ return void 0;
668
+ }
669
+ const trimmed = href.trim();
670
+ switch (linkType) {
671
+ case "tel":
672
+ return normalizePhoneNumber(trimmed);
673
+ case "mailto":
674
+ return normalizeEmail(trimmed);
675
+ case "internal":
676
+ return toRelativePath(trimmed);
677
+ case "external":
678
+ return trimmed;
679
+ default:
680
+ return trimmed;
681
+ }
682
+ }, [href, linkType]);
683
+ const target = React3.useMemo(() => {
684
+ switch (linkType) {
685
+ case "external":
686
+ return "_blank";
687
+ case "internal":
688
+ return "_self";
689
+ case "mailto":
690
+ case "tel":
691
+ return void 0;
692
+ default:
693
+ return void 0;
694
+ }
695
+ }, [linkType]);
696
+ const rel = React3.useMemo(() => {
697
+ if (linkType === "external") {
698
+ return "noopener noreferrer";
699
+ }
700
+ return void 0;
701
+ }, [linkType]);
702
+ const isExternal = linkType === "external";
703
+ const isInternal = linkType === "internal";
704
+ const shouldUseRouter = isInternal && typeof normalizedHref === "string" && normalizedHref.startsWith("/");
705
+ const handleClick = React3.useCallback(
706
+ (event) => {
707
+ if (onClick) {
708
+ try {
709
+ onClick(event);
710
+ } catch (error) {
711
+ console.error("Error in user onClick handler:", error);
712
+ }
713
+ }
714
+ if (event.defaultPrevented) {
715
+ return;
716
+ }
717
+ if (shouldUseRouter && normalizedHref && event.button === 0 && // left-click only
718
+ !event.metaKey && !event.altKey && !event.ctrlKey && !event.shiftKey) {
719
+ if (typeof window !== "undefined") {
720
+ const handler = window.__opensiteNavigationHandler;
721
+ if (typeof handler === "function") {
722
+ try {
723
+ const handled = handler(normalizedHref, event.nativeEvent || event);
724
+ if (handled !== false) {
725
+ event.preventDefault();
726
+ }
727
+ } catch (error) {
728
+ console.error("Error in navigation handler:", error);
729
+ }
730
+ }
731
+ }
713
732
  }
714
- );
715
- }
716
- const patternUrl = pattern in patternSvgs ? patternSvgs[pattern] : pattern;
717
- return /* @__PURE__ */ jsx(
718
- "div",
719
- {
720
- className: cn("pointer-events-none absolute inset-0 z-0", className),
721
- style: {
722
- backgroundImage: `url(${patternUrl})`,
723
- backgroundRepeat: "repeat",
724
- backgroundSize: "auto",
725
- opacity,
726
- ...style
727
- },
728
- "aria-hidden": "true"
729
- }
733
+ },
734
+ [onClick, shouldUseRouter, normalizedHref]
730
735
  );
736
+ return {
737
+ linkType,
738
+ normalizedHref,
739
+ target,
740
+ rel,
741
+ isExternal,
742
+ isInternal,
743
+ shouldUseRouter,
744
+ handleClick
745
+ };
731
746
  }
732
- var backgroundStyles = {
733
- default: "bg-background text-foreground",
734
- white: "bg-white text-dark",
735
- gray: "bg-muted/30 text-foreground",
736
- dark: "bg-foreground text-background",
737
- transparent: "bg-transparent text-foreground",
738
- gradient: "bg-linear-to-br from-primary via-primary/90 to-foreground text-primary-foreground",
739
- primary: "bg-primary text-primary-foreground",
740
- secondary: "bg-secondary text-secondary-foreground",
741
- muted: "bg-muted text-muted-foreground"
742
- };
743
- var spacingStyles = {
744
- none: "py-0 md:py-0",
745
- sm: "py-12 md:py-16",
746
- md: "py-16 md:py-24",
747
- lg: "py-20 md:py-32",
748
- xl: "py-24 md:py-40"
749
- };
750
- var predefinedSpacings = ["none", "sm", "md", "lg", "xl"];
751
- var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
752
- var Section = React__default.forwardRef(
747
+ var Pressable = React3.forwardRef(
753
748
  ({
754
- id,
755
- title,
756
- subtitle,
757
749
  children,
758
750
  className,
759
- style,
760
- background = "default",
761
- spacing = "lg",
762
- pattern,
763
- patternOpacity,
764
- patternClassName,
765
- containerClassName,
766
- containerMaxWidth = "xl",
751
+ href,
752
+ onClick,
753
+ variant,
754
+ size,
755
+ asButton = false,
756
+ fallbackComponentType = "span",
757
+ componentType,
758
+ "aria-label": ariaLabel,
759
+ "aria-describedby": ariaDescribedby,
760
+ id,
767
761
  ...props
768
762
  }, ref) => {
769
- const effectivePatternOpacity = patternOpacity !== void 0 ? patternOpacity : pattern ? 1 : 0;
770
- return /* @__PURE__ */ jsxs(
771
- "section",
763
+ const navigation = useNavigation({ href, onClick });
764
+ const {
765
+ normalizedHref,
766
+ target,
767
+ rel,
768
+ linkType,
769
+ isInternal,
770
+ handleClick
771
+ } = navigation;
772
+ const shouldRenderLink = normalizedHref && linkType !== "none";
773
+ const shouldRenderButton = !shouldRenderLink && onClick;
774
+ const effectiveComponentType = componentType || (shouldRenderLink ? "a" : shouldRenderButton ? "button" : fallbackComponentType);
775
+ const finalComponentType = isInternal && shouldRenderLink ? "a" : effectiveComponentType;
776
+ const shouldApplyButtonStyles = asButton || variant || size;
777
+ const combinedClassName = cn(
778
+ shouldApplyButtonStyles && buttonVariants({ variant, size }),
779
+ className
780
+ );
781
+ const dataProps = Object.fromEntries(
782
+ Object.entries(props).filter(([key]) => key.startsWith("data-"))
783
+ );
784
+ const buttonDataAttributes = shouldApplyButtonStyles ? {
785
+ "data-slot": "button",
786
+ "data-variant": variant ?? "default",
787
+ "data-size": size ?? "default"
788
+ } : {};
789
+ const commonProps = {
790
+ className: combinedClassName,
791
+ onClick: handleClick,
792
+ "aria-label": ariaLabel,
793
+ "aria-describedby": ariaDescribedby,
794
+ id,
795
+ ...dataProps,
796
+ ...buttonDataAttributes
797
+ };
798
+ if (finalComponentType === "a" && shouldRenderLink) {
799
+ return /* @__PURE__ */ jsx(
800
+ "a",
801
+ {
802
+ ref,
803
+ href: normalizedHref,
804
+ target,
805
+ rel,
806
+ ...commonProps,
807
+ ...props,
808
+ children
809
+ }
810
+ );
811
+ }
812
+ if (finalComponentType === "button") {
813
+ return /* @__PURE__ */ jsx(
814
+ "button",
815
+ {
816
+ ref,
817
+ type: props.type || "button",
818
+ ...commonProps,
819
+ ...props,
820
+ children
821
+ }
822
+ );
823
+ }
824
+ if (finalComponentType === "div") {
825
+ return /* @__PURE__ */ jsx(
826
+ "div",
827
+ {
828
+ ref,
829
+ ...commonProps,
830
+ children
831
+ }
832
+ );
833
+ }
834
+ return /* @__PURE__ */ jsx(
835
+ "span",
772
836
  {
773
837
  ref,
774
- id,
775
- className: cn(
776
- "relative",
777
- pattern ? "overflow-hidden" : null,
778
- backgroundStyles[background],
779
- isPredefinedSpacing(spacing) ? spacingStyles[spacing] : spacing,
780
- className
781
- ),
782
- style,
783
- ...props,
784
- children: [
785
- /* @__PURE__ */ jsx(
786
- PatternBackground,
787
- {
788
- pattern,
789
- opacity: effectivePatternOpacity,
790
- className: patternClassName
791
- }
792
- ),
793
- /* @__PURE__ */ jsxs(
794
- Container,
795
- {
796
- maxWidth: containerMaxWidth,
797
- className: cn("relative z-10", containerClassName),
798
- children: [
799
- (title || subtitle) && /* @__PURE__ */ jsxs("div", { className: "mb-6 text-center md:mb-16", children: [
800
- subtitle && /* @__PURE__ */ jsx("p", { className: "mb-2 text-sm font-semibold uppercase tracking-wider", children: subtitle }),
801
- title && /* @__PURE__ */ jsx("h2", { className: "text-3xl font-bold tracking-tight md:text-4xl lg:text-5xl", children: title })
802
- ] }),
803
- children
804
- ]
805
- }
806
- )
807
- ]
838
+ ...commonProps,
839
+ children
808
840
  }
809
841
  );
810
842
  }
811
843
  );
812
- Section.displayName = "Section";
813
- var badgeVariants = cva(
814
- "inline-flex items-center justify-center rounded-full border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",
815
- {
816
- variants: {
817
- variant: {
818
- default: "border-transparent bg-primary text-primary-foreground [a&]:hover:bg-primary/90",
819
- secondary: "border-transparent bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",
820
- destructive: "border-transparent bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",
821
- outline: "text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground"
844
+ Pressable.displayName = "Pressable";
845
+ var MOBILE_CLASSES = {
846
+ "fit-left": "items-start md:items-center",
847
+ "fit-center": "items-center",
848
+ "fit-right": "items-end md:items-center",
849
+ "full-left": "items-stretch md:items-center",
850
+ "full-center": "items-stretch md:items-center",
851
+ "full-right": "items-stretch md:items-center"
852
+ };
853
+ function BlockActions({
854
+ mobileConfig,
855
+ actionsClassName,
856
+ verticalSpacing = "mt-4 md:mt-8",
857
+ actions,
858
+ actionsSlot
859
+ }) {
860
+ const width = mobileConfig?.width ?? "full";
861
+ const position = mobileConfig?.position ?? "center";
862
+ const mobileLayoutClass = MOBILE_CLASSES[`${width}-${position}`];
863
+ if (actionsSlot) {
864
+ return /* @__PURE__ */ jsx("div", { children: actionsSlot });
865
+ } else if (actions && actions?.length > 0) {
866
+ return /* @__PURE__ */ jsx(
867
+ "div",
868
+ {
869
+ className: cn(
870
+ "flex flex-col md:flex-row flex-wrap gap-4",
871
+ mobileLayoutClass,
872
+ actionsClassName,
873
+ verticalSpacing
874
+ ),
875
+ children: actions.map((action, index) => /* @__PURE__ */ jsx(ActionComponent, { action }, index))
822
876
  }
823
- },
824
- defaultVariants: {
825
- variant: "default"
826
- }
877
+ );
878
+ } else {
879
+ return null;
827
880
  }
828
- );
829
- function Badge({
830
- className,
831
- variant,
832
- asChild = false,
833
- ...props
834
- }) {
835
- const Comp = asChild ? Slot : "span";
881
+ }
882
+ function ActionComponent({ action }) {
883
+ const {
884
+ label,
885
+ icon,
886
+ iconAfter,
887
+ children,
888
+ href,
889
+ onClick,
890
+ className: actionClassName,
891
+ ...pressableProps
892
+ } = action;
836
893
  return /* @__PURE__ */ jsx(
837
- Comp,
894
+ Pressable,
838
895
  {
839
- "data-slot": "badge",
840
- className: cn(badgeVariants({ variant }), className),
841
- ...props
896
+ href,
897
+ onClick,
898
+ asButton: action.asButton ?? true,
899
+ className: actionClassName,
900
+ ...pressableProps,
901
+ children: children ?? /* @__PURE__ */ jsxs(Fragment, { children: [
902
+ icon,
903
+ label,
904
+ iconAfter
905
+ ] })
842
906
  }
843
907
  );
844
908
  }
@@ -856,7 +920,7 @@ function HeroEcommerceProductShowcase({
856
920
  imagesSlot,
857
921
  background,
858
922
  containerClassName = "px-6 sm:px-6 md:px-8 lg:px-8",
859
- spacing = "py-32 md:py-32",
923
+ spacing = "xl",
860
924
  pattern,
861
925
  patternOpacity,
862
926
  patternClassName,
@@ -876,51 +940,54 @@ function HeroEcommerceProductShowcase({
876
940
  /* @__PURE__ */ jsx("span", { children: badgeText })
877
941
  ] });
878
942
  }, [badgeSlot, badgeIcon, badgeText]);
879
- const renderActions = useMemo(() => {
880
- if (actionsSlot) return actionsSlot;
881
- if (!actions || actions.length === 0) return null;
882
- return /* @__PURE__ */ jsx("div", { className: cn("flex flex-col gap-4 sm:flex-row", actionsClassName), children: actions.map((action, index) => {
883
- const {
884
- label,
885
- icon,
886
- iconAfter,
887
- children,
888
- className: actionClassName,
889
- ...pressableProps
890
- } = action;
891
- return /* @__PURE__ */ jsx(
892
- Pressable,
893
- {
894
- asButton: true,
895
- className: actionClassName,
896
- ...pressableProps,
897
- children: children ?? /* @__PURE__ */ jsxs(Fragment, { children: [
898
- icon,
899
- label,
900
- iconAfter
901
- ] })
902
- },
903
- index
904
- );
905
- }) });
906
- }, [actionsSlot, actions, actionsClassName]);
907
943
  const renderStats = useMemo(() => {
908
944
  if (statsSlot) return statsSlot;
909
945
  if (!stats || stats.length === 0) return null;
910
- return /* @__PURE__ */ jsx("div", { className: cn("flex items-center gap-6 pt-4", statsClassName), children: stats.map((stat, index) => /* @__PURE__ */ jsxs(React.Fragment, { children: [
911
- index > 0 && /* @__PURE__ */ jsx("div", { className: "h-12 w-px bg-border" }),
912
- /* @__PURE__ */ jsxs("div", { className: "text-center", children: [
913
- /* @__PURE__ */ jsx("div", { className: "text-2xl font-bold ", children: stat.value }),
914
- /* @__PURE__ */ jsx("div", { className: cn("text-sm"), children: stat.label })
915
- ] })
916
- ] }, index)) });
946
+ return /* @__PURE__ */ jsx(
947
+ "div",
948
+ {
949
+ className: cn(
950
+ "flex flex-col md:flex-row items-center gap-4 md:gap-6 pt-8 md:pt-12",
951
+ statsClassName
952
+ ),
953
+ children: stats.map((stat, index) => /* @__PURE__ */ jsxs(React3.Fragment, { children: [
954
+ index > 0 && /* @__PURE__ */ jsx("div", { className: "h-12 w-px bg-border hidden md:flex" }),
955
+ /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2 justify-between flex-row md:flex-col text-left md:text-center w-full md:w-fit border md:border-none rounded-xl md:rounded-none p-4 md:p-0", children: [
956
+ /* @__PURE__ */ jsxs(
957
+ "div",
958
+ {
959
+ className: cn(
960
+ "flex items-center gap-2 w-fit md:w-full",
961
+ stat.icon ? "justify-between" : "justify-center"
962
+ ),
963
+ children: [
964
+ stat.icon,
965
+ /* @__PURE__ */ jsx(
966
+ "div",
967
+ {
968
+ className: cn(
969
+ "font-bold ",
970
+ stat.icon ? "text-xl" : "text-2xl"
971
+ ),
972
+ children: stat.value
973
+ }
974
+ )
975
+ ]
976
+ }
977
+ ),
978
+ /* @__PURE__ */ jsx("div", { className: cn("text-sm"), children: stat.label })
979
+ ] })
980
+ ] }, index))
981
+ }
982
+ );
917
983
  }, [statsSlot, stats, statsClassName]);
918
984
  const renderImages = useMemo(() => {
919
985
  if (imagesSlot) return imagesSlot;
920
986
  if (!images || images.length === 0) return null;
921
- return /* @__PURE__ */ jsxs("div", { className: cn("grid grid-cols-2 gap-4", imagesClassName), children: [
922
- /* @__PURE__ */ jsxs("div", { className: "space-y-4", children: [
923
- images[0] && /* @__PURE__ */ jsx("div", { className: cn("overflow-hidden rounded-2xl"), children: /* @__PURE__ */ jsx(
987
+ const imgClassWrapper = "overflow-hidden rounded-3xl ring-4 ring-primary shadow-2xl";
988
+ return /* @__PURE__ */ jsxs("div", { className: cn("grid grid-cols-2 gap-4 md:gap-8", imagesClassName), children: [
989
+ /* @__PURE__ */ jsxs("div", { className: "space-y-4 md:space-y-8", children: [
990
+ images[0] && /* @__PURE__ */ jsx("div", { className: imgClassWrapper, children: /* @__PURE__ */ jsx(
924
991
  Img,
925
992
  {
926
993
  src: images[0].src,
@@ -932,7 +999,7 @@ function HeroEcommerceProductShowcase({
932
999
  optixFlowConfig
933
1000
  }
934
1001
  ) }),
935
- images[1] && /* @__PURE__ */ jsx("div", { className: cn("overflow-hidden rounded-2xl"), children: /* @__PURE__ */ jsx(
1002
+ images[1] && /* @__PURE__ */ jsx("div", { className: imgClassWrapper, children: /* @__PURE__ */ jsx(
936
1003
  Img,
937
1004
  {
938
1005
  src: images[1].src,
@@ -945,8 +1012,8 @@ function HeroEcommerceProductShowcase({
945
1012
  }
946
1013
  ) })
947
1014
  ] }),
948
- /* @__PURE__ */ jsxs("div", { className: "space-y-4 pt-8", children: [
949
- images[2] && /* @__PURE__ */ jsx("div", { className: cn("overflow-hidden rounded-2xl"), children: /* @__PURE__ */ jsx(
1015
+ /* @__PURE__ */ jsxs("div", { className: "space-y-4 md:space-y-8 pt-12", children: [
1016
+ images[2] && /* @__PURE__ */ jsx("div", { className: imgClassWrapper, children: /* @__PURE__ */ jsx(
950
1017
  Img,
951
1018
  {
952
1019
  src: images[2].src,
@@ -958,7 +1025,7 @@ function HeroEcommerceProductShowcase({
958
1025
  optixFlowConfig
959
1026
  }
960
1027
  ) }),
961
- images[3] && /* @__PURE__ */ jsx("div", { className: cn("overflow-hidden rounded-2xl"), children: /* @__PURE__ */ jsx(
1028
+ images[3] && /* @__PURE__ */ jsx("div", { className: imgClassWrapper, children: /* @__PURE__ */ jsx(
962
1029
  Img,
963
1030
  {
964
1031
  src: images[3].src,
@@ -983,13 +1050,13 @@ function HeroEcommerceProductShowcase({
983
1050
  patternClassName,
984
1051
  className,
985
1052
  containerClassName,
986
- children: /* @__PURE__ */ jsx("div", { className: "relative", children: /* @__PURE__ */ jsxs("div", { className: "grid items-center gap-12 lg:grid-cols-2 lg:gap-20", children: [
987
- /* @__PURE__ */ jsx("div", { className: "order-2 lg:order-1", children: renderImages }),
1053
+ children: /* @__PURE__ */ jsx("div", { className: "pt-8 md:pt-0", children: /* @__PURE__ */ jsxs("div", { className: "grid items-center gap-12 lg:grid-cols-2 lg:gap-20", children: [
1054
+ /* @__PURE__ */ jsx("div", { className: "order-2 md:order-1", children: renderImages }),
988
1055
  /* @__PURE__ */ jsxs(
989
1056
  "div",
990
1057
  {
991
1058
  className: cn(
992
- "order-1 flex flex-col gap-8 lg:order-2",
1059
+ "flex flex-col gap-4 md:gap-6 order-1 md:order-2",
993
1060
  contentClassName
994
1061
  ),
995
1062
  children: [
@@ -1003,18 +1070,16 @@ function HeroEcommerceProductShowcase({
1003
1070
  ),
1004
1071
  children: heading
1005
1072
  }
1006
- ) : /* @__PURE__ */ jsx(
1007
- "h1",
1073
+ ) : heading),
1074
+ description && (typeof description === "string" ? /* @__PURE__ */ jsx("p", { className: cn("text-lg text-balance", descriptionClassName), children: description }) : description),
1075
+ /* @__PURE__ */ jsx(
1076
+ BlockActions,
1008
1077
  {
1009
- className: cn(
1010
- "text-4xl font-bold tracking-tight md:text-5xl lg:text-6xl text-balance",
1011
- headingClassName
1012
- ),
1013
- children: heading
1078
+ actions,
1079
+ actionsSlot,
1080
+ actionsClassName
1014
1081
  }
1015
- )),
1016
- description && (typeof description === "string" ? /* @__PURE__ */ jsx("p", { className: cn("text-lg text-balance", descriptionClassName), children: description }) : /* @__PURE__ */ jsx("div", { className: descriptionClassName, children: description })),
1017
- renderActions,
1082
+ ),
1018
1083
  renderStats
1019
1084
  ]
1020
1085
  }