dune-react 0.0.30 → 0.0.32

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 (348) hide show
  1. package/dist/components/puck-base/article-card.d.ts +2 -2
  2. package/dist/components/puck-base/article-card.js +2 -2
  3. package/dist/components/puck-base/card.d.ts +2 -2
  4. package/dist/components/puck-base/card.js +2 -2
  5. package/dist/components/puck-base/index.d.ts +2 -1
  6. package/dist/components/puck-base/media.d.ts +12 -0
  7. package/dist/components/puck-base/media.js +576 -0
  8. package/dist/components/puck-base/social-links.d.ts +7 -0
  9. package/dist/components/puck-base/social-links.js +23 -0
  10. package/dist/components/puck-block/banner-sections/css-marquee-banner/css-marquee-banner.js +6 -6
  11. package/dist/components/puck-block/banner-sections/css-marquee-banner/index.d.ts +1 -1
  12. package/dist/components/puck-block/banner-sections/css-marquee-banner/index.js +2 -2
  13. package/dist/components/puck-block/banner-sections/dismissible-banner/index.d.ts +42 -0
  14. package/dist/components/puck-block/banner-sections/dual-row-marquee/dual-row-marquee.js +10 -10
  15. package/dist/components/puck-block/banner-sections/dual-row-marquee/index.d.ts +2 -2
  16. package/dist/components/puck-block/banner-sections/dual-row-marquee/index.js +3 -3
  17. package/dist/components/puck-block/banner-sections/props.d.ts +9 -12
  18. package/dist/components/puck-block/contact-sections/centered-form/centered-form.js +1 -5
  19. package/dist/components/puck-block/contact-sections/contact-cards-grid/contact-cards-grid.js +1 -5
  20. package/dist/components/puck-block/contact-sections/contact-modal/contact-modal.js +1 -5
  21. package/dist/components/puck-block/contact-sections/form-with-media/form-with-media.js +4 -8
  22. package/dist/components/puck-block/contact-sections/form-with-media/index.d.ts +1 -1
  23. package/dist/components/puck-block/contact-sections/form-with-media/index.js +2 -2
  24. package/dist/components/puck-block/contact-sections/header-form-cards/header-form-cards.js +1 -5
  25. package/dist/components/puck-block/contact-sections/header-info-fullwidth/header-info-fullwidth.js +4 -8
  26. package/dist/components/puck-block/contact-sections/header-info-fullwidth/index.d.ts +1 -1
  27. package/dist/components/puck-block/contact-sections/header-info-fullwidth/index.js +2 -2
  28. package/dist/components/puck-block/contact-sections/info-cards-media/index.d.ts +1 -1
  29. package/dist/components/puck-block/contact-sections/info-cards-media/index.js +2 -2
  30. package/dist/components/puck-block/contact-sections/info-cards-media/info-cards-media.js +4 -8
  31. package/dist/components/puck-block/contact-sections/location-cards-grid/index.d.ts +1 -1
  32. package/dist/components/puck-block/contact-sections/location-cards-grid/index.js +2 -2
  33. package/dist/components/puck-block/contact-sections/location-cards-grid/location-cards-grid.js +10 -14
  34. package/dist/components/puck-block/contact-sections/props.d.ts +5 -16
  35. package/dist/components/puck-block/contact-sections/split-info-form/index.d.ts +1 -1
  36. package/dist/components/puck-block/contact-sections/split-info-form/split-info-form.d.ts +7 -2
  37. package/dist/components/puck-block/contact-sections/split-info-form/split-info-form.js +1 -2
  38. package/dist/components/puck-block/contact-sections/tab-locations/index.d.ts +57 -8
  39. package/dist/components/puck-block/contact-sections/tab-locations/index.js +7 -7
  40. package/dist/components/puck-block/contact-sections/tab-locations/tab-locations.js +40 -47
  41. package/dist/components/puck-block/cta-sections/feature-card-cta/feature-card-cta.d.ts +2 -2
  42. package/dist/components/puck-block/cta-sections/feature-card-cta/feature-card-cta.js +2 -2
  43. package/dist/components/puck-block/cta-sections/feature-card-cta/index.js +2 -2
  44. package/dist/components/puck-block/cta-sections/mouse-track-cta/index.d.ts +1 -1
  45. package/dist/components/puck-block/cta-sections/mouse-track-cta/index.js +2 -2
  46. package/dist/components/puck-block/cta-sections/mouse-track-cta/mouse-track-cta.d.ts +2 -2
  47. package/dist/components/puck-block/cta-sections/mouse-track-cta/mouse-track-cta.js +6 -6
  48. package/dist/components/puck-block/cta-sections/props.d.ts +3 -3
  49. package/dist/components/puck-block/cta-sections/side-media-cta/index.d.ts +1 -1
  50. package/dist/components/puck-block/cta-sections/side-media-cta/index.js +2 -2
  51. package/dist/components/puck-block/cta-sections/side-media-cta/side-media-cta.js +4 -4
  52. package/dist/components/puck-block/cta-sections/text-block-cta/index.d.ts +2 -2
  53. package/dist/components/puck-block/cta-sections/text-block-cta/index.js +3 -3
  54. package/dist/components/puck-block/cta-sections/text-block-cta/text-block-cta.d.ts +3 -3
  55. package/dist/components/puck-block/cta-sections/text-block-cta/text-block-cta.js +10 -10
  56. package/dist/components/puck-block/faq-sections/icon-card-faq/icon-card-faq.d.ts +2 -2
  57. package/dist/components/puck-block/faq-sections/icon-card-faq/icon-card-faq.js +2 -2
  58. package/dist/components/puck-block/faq-sections/icon-card-faq/index.js +2 -2
  59. package/dist/components/puck-block/faq-sections/props.d.ts +4 -4
  60. package/dist/components/puck-block/faq-sections/stacked-static-faq/stacked-static-faq.js +7 -7
  61. package/dist/components/puck-block/feature-sections/feature-cards-grid/component.d.ts +2 -2
  62. package/dist/components/puck-block/feature-sections/feature-cards-grid/component.js +6 -6
  63. package/dist/components/puck-block/feature-sections/feature-cards-grid/index.d.ts +1 -1
  64. package/dist/components/puck-block/feature-sections/feature-cards-grid/index.js +3 -3
  65. package/dist/components/puck-block/feature-sections/feature-list-split/component.d.ts +2 -2
  66. package/dist/components/puck-block/feature-sections/feature-list-split/component.js +6 -6
  67. package/dist/components/puck-block/feature-sections/feature-list-split/index.d.ts +1 -1
  68. package/dist/components/puck-block/feature-sections/feature-list-split/index.js +3 -3
  69. package/dist/components/puck-block/feature-sections/props.d.ts +3 -3
  70. package/dist/components/puck-block/feature-sections/tab-feature/component.d.ts +2 -2
  71. package/dist/components/puck-block/feature-sections/tab-feature/component.js +12 -12
  72. package/dist/components/puck-block/feature-sections/tab-feature/index.d.ts +1 -1
  73. package/dist/components/puck-block/feature-sections/tab-feature/index.js +2 -2
  74. package/dist/components/puck-block/feature-sections/text-media-split/component.js +5 -5
  75. package/dist/components/puck-block/feature-sections/text-media-split/index.d.ts +1 -1
  76. package/dist/components/puck-block/feature-sections/text-media-split/index.js +2 -2
  77. package/dist/components/puck-block/feature-sections/text-only-section/component.d.ts +2 -2
  78. package/dist/components/puck-block/feature-sections/text-only-section/component.js +2 -2
  79. package/dist/components/puck-block/feature-sections/text-only-section/index.d.ts +1 -1
  80. package/dist/components/puck-block/feature-sections/text-only-section/index.js +2 -2
  81. package/dist/components/puck-block/footer-sections/centered-minimal-footer/centered-minimal-footer.js +9 -9
  82. package/dist/components/puck-block/footer-sections/centered-minimal-footer/index.js +2 -2
  83. package/dist/components/puck-block/footer-sections/contact-links-footer/contact-links-footer.d.ts +7 -2
  84. package/dist/components/puck-block/footer-sections/contact-links-footer/contact-links-footer.js +9 -9
  85. package/dist/components/puck-block/footer-sections/contact-links-footer/index.d.ts +50 -10
  86. package/dist/components/puck-block/footer-sections/contact-links-footer/index.js +3 -2
  87. package/dist/components/puck-block/footer-sections/cta-links-footer/cta-links-footer.js +9 -9
  88. package/dist/components/puck-block/footer-sections/cta-links-footer/index.d.ts +50 -10
  89. package/dist/components/puck-block/footer-sections/cta-links-footer/index.js +3 -3
  90. package/dist/components/puck-block/footer-sections/links-newsletter-footer/index.d.ts +50 -10
  91. package/dist/components/puck-block/footer-sections/newsletter-top-links-footer/index.d.ts +50 -10
  92. package/dist/components/puck-block/footer-sections/props.d.ts +17 -10
  93. package/dist/components/puck-block/footer-sections/props.js +8 -0
  94. package/dist/components/puck-block/gallery-sections/asymmetric-grid/asymmetric-grid.js +7 -7
  95. package/dist/components/puck-block/gallery-sections/asymmetric-grid/index.d.ts +1 -1
  96. package/dist/components/puck-block/gallery-sections/asymmetric-grid/index.js +2 -2
  97. package/dist/components/puck-block/gallery-sections/fullscreen-portfolio/fullscreen-portfolio.js +12 -12
  98. package/dist/components/puck-block/gallery-sections/fullscreen-portfolio/index.d.ts +1 -1
  99. package/dist/components/puck-block/gallery-sections/fullscreen-portfolio/index.js +2 -2
  100. package/dist/components/puck-block/gallery-sections/image-carousel/image-carousel.js +12 -12
  101. package/dist/components/puck-block/gallery-sections/image-carousel/index.d.ts +1 -1
  102. package/dist/components/puck-block/gallery-sections/image-carousel/index.js +2 -2
  103. package/dist/components/puck-block/gallery-sections/interactive-portfolio/index.d.ts +1 -1
  104. package/dist/components/puck-block/gallery-sections/interactive-portfolio/index.js +2 -2
  105. package/dist/components/puck-block/gallery-sections/interactive-portfolio/interactive-portfolio.js +14 -14
  106. package/dist/components/puck-block/gallery-sections/masonry-grid/index.d.ts +1 -1
  107. package/dist/components/puck-block/gallery-sections/masonry-grid/index.js +2 -2
  108. package/dist/components/puck-block/gallery-sections/masonry-grid/masonry-grid.js +7 -7
  109. package/dist/components/puck-block/gallery-sections/portfolio-cards/index.d.ts +1 -1
  110. package/dist/components/puck-block/gallery-sections/portfolio-cards/index.js +2 -2
  111. package/dist/components/puck-block/gallery-sections/portfolio-cards/portfolio-cards.js +6 -6
  112. package/dist/components/puck-block/gallery-sections/portfolio-divider/index.d.ts +1 -1
  113. package/dist/components/puck-block/gallery-sections/portfolio-divider/index.js +2 -2
  114. package/dist/components/puck-block/gallery-sections/portfolio-divider/portfolio-divider.js +9 -9
  115. package/dist/components/puck-block/gallery-sections/props.d.ts +8 -8
  116. package/dist/components/puck-block/gallery-sections/scroll-parallax/index.d.ts +1 -1
  117. package/dist/components/puck-block/gallery-sections/scroll-parallax/index.js +2 -2
  118. package/dist/components/puck-block/gallery-sections/scroll-parallax/scroll-parallax.js +11 -11
  119. package/dist/components/puck-block/gallery-sections/scroll-parallax-portfolio/index.d.ts +1 -1
  120. package/dist/components/puck-block/gallery-sections/scroll-parallax-portfolio/index.js +5 -5
  121. package/dist/components/puck-block/gallery-sections/scroll-parallax-portfolio/scroll-parallax-portfolio.js +26 -26
  122. package/dist/components/puck-block/gallery-sections/split-carousel/index.d.ts +1 -1
  123. package/dist/components/puck-block/gallery-sections/split-carousel/index.js +2 -2
  124. package/dist/components/puck-block/gallery-sections/split-carousel/split-carousel.js +6 -6
  125. package/dist/components/puck-block/gallery-sections/static-grid/index.d.ts +1 -1
  126. package/dist/components/puck-block/gallery-sections/static-grid/index.js +2 -2
  127. package/dist/components/puck-block/gallery-sections/static-grid/static-grid.js +7 -7
  128. package/dist/components/puck-block/header-sections/centered-navbar/centered-navbar.js +31 -24
  129. package/dist/components/puck-block/header-sections/centered-navbar/index.d.ts +81 -0
  130. package/dist/components/puck-block/header-sections/centered-navbar/index.js +8 -4
  131. package/dist/components/puck-block/header-sections/drawer-navbar/drawer-navbar.js +32 -25
  132. package/dist/components/puck-block/header-sections/drawer-navbar/index.d.ts +81 -0
  133. package/dist/components/puck-block/header-sections/drawer-navbar/index.js +5 -3
  134. package/dist/components/puck-block/header-sections/floating-bordered-navbar/floating-bordered-navbar.js +27 -22
  135. package/dist/components/puck-block/header-sections/floating-bordered-navbar/index.d.ts +80 -3
  136. package/dist/components/puck-block/header-sections/floating-bordered-navbar/index.js +3 -3
  137. package/dist/components/puck-block/header-sections/fullscreen-overlay-navbar/fullscreen-overlay-navbar.js +23 -18
  138. package/dist/components/puck-block/header-sections/fullscreen-overlay-navbar/index.d.ts +80 -3
  139. package/dist/components/puck-block/header-sections/fullscreen-overlay-navbar/index.js +3 -3
  140. package/dist/components/puck-block/header-sections/mega-menu-navbar/index.d.ts +53 -0
  141. package/dist/components/puck-block/header-sections/mega-menu-navbar/index.js +3 -3
  142. package/dist/components/puck-block/header-sections/mega-menu-navbar/mega-menu-navbar.js +13 -6
  143. package/dist/components/puck-block/header-sections/props.d.ts +17 -5
  144. package/dist/components/puck-block/header-sections/props.js +8 -0
  145. package/dist/components/puck-block/header-sections/standard-navbar/index.d.ts +53 -0
  146. package/dist/components/puck-block/header-sections/standard-navbar/index.js +5 -4
  147. package/dist/components/puck-block/header-sections/standard-navbar/standard-navbar.js +9 -5
  148. package/dist/components/puck-block/hero-sections/carousel-hero/component.js +8 -8
  149. package/dist/components/puck-block/hero-sections/carousel-hero/index.d.ts +1 -1
  150. package/dist/components/puck-block/hero-sections/carousel-hero/index.js +2 -2
  151. package/dist/components/puck-block/hero-sections/column-scroll-hero/component.d.ts +3 -3
  152. package/dist/components/puck-block/hero-sections/column-scroll-hero/component.js +14 -14
  153. package/dist/components/puck-block/hero-sections/column-scroll-hero/index.d.ts +2 -2
  154. package/dist/components/puck-block/hero-sections/column-scroll-hero/index.js +3 -3
  155. package/dist/components/puck-block/hero-sections/dual-marquee-hero/component.js +11 -11
  156. package/dist/components/puck-block/hero-sections/dual-marquee-hero/index.d.ts +1 -1
  157. package/dist/components/puck-block/hero-sections/dual-marquee-hero/index.js +2 -2
  158. package/dist/components/puck-block/hero-sections/fullscreen-hero/index.d.ts +1 -1
  159. package/dist/components/puck-block/hero-sections/fullscreen-video-hero/component.js +5 -5
  160. package/dist/components/puck-block/hero-sections/fullscreen-video-hero/index.d.ts +1 -1
  161. package/dist/components/puck-block/hero-sections/fullscreen-video-hero/index.js +2 -2
  162. package/dist/components/puck-block/hero-sections/grid-expand-hero/component.js +16 -16
  163. package/dist/components/puck-block/hero-sections/grid-expand-hero/index.d.ts +1 -1
  164. package/dist/components/puck-block/hero-sections/grid-expand-hero/index.js +2 -2
  165. package/dist/components/puck-block/hero-sections/horizontal-marquee-hero/component.js +11 -11
  166. package/dist/components/puck-block/hero-sections/horizontal-marquee-hero/index.d.ts +1 -1
  167. package/dist/components/puck-block/hero-sections/horizontal-marquee-hero/index.js +2 -2
  168. package/dist/components/puck-block/hero-sections/media-text-hero/index.d.ts +1 -1
  169. package/dist/components/puck-block/hero-sections/mouse-track-hero/component.d.ts +3 -3
  170. package/dist/components/puck-block/hero-sections/mouse-track-hero/component.js +6 -6
  171. package/dist/components/puck-block/hero-sections/mouse-track-hero/index.js +3 -3
  172. package/dist/components/puck-block/hero-sections/multi-image-grid-hero/index.d.ts +1 -1
  173. package/dist/components/puck-block/hero-sections/multi-image-grid-hero/index.js +2 -2
  174. package/dist/components/puck-block/hero-sections/multi-image-grid-hero/multi-image-grid-hero.js +7 -7
  175. package/dist/components/puck-block/hero-sections/overlapping-image-hero/index.js +4 -4
  176. package/dist/components/puck-block/hero-sections/overlapping-image-hero/overlapping-image-hero.d.ts +4 -4
  177. package/dist/components/puck-block/hero-sections/overlapping-image-hero/overlapping-image-hero.js +18 -18
  178. package/dist/components/puck-block/hero-sections/parallax-images-hero/component.js +12 -12
  179. package/dist/components/puck-block/hero-sections/parallax-images-hero/index.d.ts +1 -1
  180. package/dist/components/puck-block/hero-sections/parallax-images-hero/index.js +2 -2
  181. package/dist/components/puck-block/hero-sections/props.d.ts +4 -4
  182. package/dist/components/puck-block/hero-sections/scatter-parallax-hero/component.js +5 -5
  183. package/dist/components/puck-block/hero-sections/scatter-parallax-hero/index.d.ts +1 -1
  184. package/dist/components/puck-block/hero-sections/scatter-parallax-hero/index.js +2 -2
  185. package/dist/components/puck-block/hero-sections/scroll-expand-video-hero/component.js +5 -5
  186. package/dist/components/puck-block/hero-sections/scroll-expand-video-hero/index.d.ts +1 -1
  187. package/dist/components/puck-block/hero-sections/scroll-expand-video-hero/index.js +2 -2
  188. package/dist/components/puck-block/hero-sections/scroll-zoom-hero/component.js +9 -9
  189. package/dist/components/puck-block/hero-sections/scroll-zoom-hero/index.d.ts +1 -1
  190. package/dist/components/puck-block/hero-sections/scroll-zoom-hero/index.js +2 -2
  191. package/dist/components/puck-block/hero-sections/split-hero/index.d.ts +1 -1
  192. package/dist/components/puck-block/hero-sections/stacked-hero/index.d.ts +1 -1
  193. package/dist/components/puck-block/hero-sections/sticky-expand-hero/component.js +12 -12
  194. package/dist/components/puck-block/hero-sections/sticky-expand-hero/index.d.ts +1 -1
  195. package/dist/components/puck-block/hero-sections/sticky-expand-hero/index.js +2 -2
  196. package/dist/components/puck-block/hero-sections/sticky-video-hero/component.d.ts +2 -2
  197. package/dist/components/puck-block/hero-sections/sticky-video-hero/component.js +13 -13
  198. package/dist/components/puck-block/hero-sections/sticky-video-hero/index.d.ts +1 -1
  199. package/dist/components/puck-block/hero-sections/sticky-video-hero/index.js +3 -3
  200. package/dist/components/puck-block/hero-sections/tab-hero/component.d.ts +2 -2
  201. package/dist/components/puck-block/hero-sections/tab-hero/component.js +6 -6
  202. package/dist/components/puck-block/hero-sections/tab-hero/index.d.ts +1 -1
  203. package/dist/components/puck-block/hero-sections/tab-hero/index.js +2 -2
  204. package/dist/components/puck-block/hero-sections/three-image-parallax-hero/component.d.ts +4 -4
  205. package/dist/components/puck-block/hero-sections/three-image-parallax-hero/component.js +4 -4
  206. package/dist/components/puck-block/hero-sections/three-image-parallax-hero/index.js +4 -4
  207. package/dist/components/puck-block/hero-sections/vertical-gallery-hero/component.js +11 -11
  208. package/dist/components/puck-block/hero-sections/vertical-gallery-hero/index.d.ts +1 -1
  209. package/dist/components/puck-block/hero-sections/vertical-gallery-hero/index.js +2 -2
  210. package/dist/components/puck-block/hero-sections/zoom-grid-hero/component.js +7 -7
  211. package/dist/components/puck-block/hero-sections/zoom-grid-hero/index.d.ts +1 -1
  212. package/dist/components/puck-block/hero-sections/zoom-grid-hero/index.js +2 -2
  213. package/dist/components/puck-block/metrics-sections/center-media-stats/center-media-stats.js +5 -5
  214. package/dist/components/puck-block/metrics-sections/center-media-stats/index.d.ts +1 -1
  215. package/dist/components/puck-block/metrics-sections/center-media-stats/index.js +2 -2
  216. package/dist/components/puck-block/metrics-sections/header-stats-row/header-stats-row.js +4 -4
  217. package/dist/components/puck-block/metrics-sections/header-stats-row/index.d.ts +1 -1
  218. package/dist/components/puck-block/metrics-sections/header-stats-row/index.js +2 -2
  219. package/dist/components/puck-block/metrics-sections/mixed-grid-stats/index.d.ts +2 -2
  220. package/dist/components/puck-block/metrics-sections/mixed-grid-stats/index.js +3 -3
  221. package/dist/components/puck-block/metrics-sections/mixed-grid-stats/mixed-grid-stats.d.ts +2 -2
  222. package/dist/components/puck-block/metrics-sections/mixed-grid-stats/mixed-grid-stats.js +7 -7
  223. package/dist/components/puck-block/metrics-sections/props.d.ts +6 -6
  224. package/dist/components/puck-block/metrics-sections/split-stats/index.d.ts +1 -1
  225. package/dist/components/puck-block/metrics-sections/split-stats/index.js +2 -2
  226. package/dist/components/puck-block/metrics-sections/split-stats/split-stats.js +4 -4
  227. package/dist/components/puck-block/metrics-sections/tab-stats/index.d.ts +2 -2
  228. package/dist/components/puck-block/metrics-sections/tab-stats/index.js +3 -3
  229. package/dist/components/puck-block/metrics-sections/tab-stats/tab-stats.d.ts +3 -3
  230. package/dist/components/puck-block/metrics-sections/tab-stats/tab-stats.js +11 -11
  231. package/dist/components/puck-block/pricing-sections/pricing-card-grid/component.js +4 -4
  232. package/dist/components/puck-block/pricing-sections/props.d.ts +3 -3
  233. package/dist/components/puck-block/pricing-sections/single-pricing-card/component.d.ts +2 -2
  234. package/dist/components/puck-block/pricing-sections/single-pricing-card/component.js +3 -3
  235. package/dist/components/puck-block/pricing-sections/split-pricing/component.d.ts +2 -2
  236. package/dist/components/puck-block/pricing-sections/split-pricing/component.js +2 -2
  237. package/dist/components/puck-block/pricing-sections/tab-pricing-grid/component.d.ts +2 -2
  238. package/dist/components/puck-block/pricing-sections/tab-pricing-grid/component.js +4 -4
  239. package/dist/components/puck-block/pricing-sections/tab-single-pricing/component.d.ts +2 -2
  240. package/dist/components/puck-block/registry.generated.d.ts +694 -118
  241. package/dist/components/puck-block/showcase-sections/compact-timeline/component.d.ts +2 -2
  242. package/dist/components/puck-block/showcase-sections/compact-timeline/component.js +3 -3
  243. package/dist/components/puck-block/showcase-sections/compact-timeline/index.d.ts +2 -2
  244. package/dist/components/puck-block/showcase-sections/compact-timeline/index.js +2 -2
  245. package/dist/components/puck-block/showcase-sections/horizontal-timeline/component.d.ts +2 -2
  246. package/dist/components/puck-block/showcase-sections/horizontal-timeline/component.js +3 -3
  247. package/dist/components/puck-block/showcase-sections/horizontal-timeline/index.d.ts +2 -2
  248. package/dist/components/puck-block/showcase-sections/horizontal-timeline/index.js +2 -2
  249. package/dist/components/puck-block/showcase-sections/props.d.ts +2 -2
  250. package/dist/components/puck-block/showcase-sections/single-column-timeline/component.d.ts +2 -2
  251. package/dist/components/puck-block/showcase-sections/single-column-timeline/component.js +3 -3
  252. package/dist/components/puck-block/showcase-sections/single-column-timeline/index.d.ts +2 -2
  253. package/dist/components/puck-block/showcase-sections/single-column-timeline/index.js +2 -2
  254. package/dist/components/puck-block/showcase-sections/sticky-scroll-timeline/component.d.ts +2 -2
  255. package/dist/components/puck-block/showcase-sections/sticky-scroll-timeline/component.js +3 -3
  256. package/dist/components/puck-block/showcase-sections/sticky-scroll-timeline/index.d.ts +2 -2
  257. package/dist/components/puck-block/showcase-sections/sticky-scroll-timeline/index.js +2 -2
  258. package/dist/components/puck-block/showcase-sections/tab-timeline/component.d.ts +2 -2
  259. package/dist/components/puck-block/showcase-sections/tab-timeline/component.js +8 -8
  260. package/dist/components/puck-block/showcase-sections/tab-timeline/index.d.ts +2 -2
  261. package/dist/components/puck-block/showcase-sections/tab-timeline/index.js +2 -2
  262. package/dist/components/puck-block/showcase-sections/zigzag-timeline/component.d.ts +2 -2
  263. package/dist/components/puck-block/showcase-sections/zigzag-timeline/component.js +3 -3
  264. package/dist/components/puck-block/showcase-sections/zigzag-timeline/index.d.ts +2 -2
  265. package/dist/components/puck-block/showcase-sections/zigzag-timeline/index.js +2 -2
  266. package/dist/components/puck-block/team-sections/props.d.ts +4 -5
  267. package/dist/components/puck-block/team-sections/team-carousel/component.d.ts +2 -2
  268. package/dist/components/puck-block/team-sections/team-carousel/component.js +3 -3
  269. package/dist/components/puck-block/team-sections/team-grid/component.d.ts +2 -2
  270. package/dist/components/puck-block/team-sections/team-grid/component.js +6 -6
  271. package/dist/components/puck-block/team-sections/team-inline-card/component.d.ts +2 -2
  272. package/dist/components/puck-block/team-sections/team-inline-card/component.js +3 -3
  273. package/dist/components/puck-block/team-sections/team-sticky-scatter/component.d.ts +2 -2
  274. package/dist/components/puck-block/team-sections/team-sticky-scatter/component.js +3 -3
  275. package/dist/components/puck-block/team-sections/team-two-column/component.d.ts +2 -2
  276. package/dist/components/puck-block/team-sections/team-two-column/component.js +7 -7
  277. package/dist/components/puck-block/testimonial-sections/bento-testimonial/component.d.ts +4 -4
  278. package/dist/components/puck-block/testimonial-sections/bento-testimonial/component.js +8 -8
  279. package/dist/components/puck-block/testimonial-sections/centered-testimonial/component.d.ts +3 -3
  280. package/dist/components/puck-block/testimonial-sections/centered-testimonial/component.js +4 -4
  281. package/dist/components/puck-block/testimonial-sections/centered-testimonial/index.js +3 -3
  282. package/dist/components/puck-block/testimonial-sections/halfscreen-testimonial-carousel/component.d.ts +3 -3
  283. package/dist/components/puck-block/testimonial-sections/halfscreen-testimonial-carousel/component.js +3 -3
  284. package/dist/components/puck-block/testimonial-sections/image-testimonial/component.d.ts +3 -3
  285. package/dist/components/puck-block/testimonial-sections/image-testimonial/component.js +10 -10
  286. package/dist/components/puck-block/testimonial-sections/image-testimonial/index.d.ts +1 -1
  287. package/dist/components/puck-block/testimonial-sections/image-testimonial/index.js +3 -3
  288. package/dist/components/puck-block/testimonial-sections/image-testimonial-carousel/component.d.ts +3 -3
  289. package/dist/components/puck-block/testimonial-sections/image-testimonial-carousel/component.js +7 -7
  290. package/dist/components/puck-block/testimonial-sections/image-testimonial-carousel/index.d.ts +1 -1
  291. package/dist/components/puck-block/testimonial-sections/image-testimonial-carousel/index.js +3 -3
  292. package/dist/components/puck-block/testimonial-sections/marquee-testimonial/component.d.ts +2 -2
  293. package/dist/components/puck-block/testimonial-sections/marquee-testimonial/component.js +2 -2
  294. package/dist/components/puck-block/testimonial-sections/masonry-testimonial/component.d.ts +2 -2
  295. package/dist/components/puck-block/testimonial-sections/masonry-testimonial/component.js +5 -5
  296. package/dist/components/puck-block/testimonial-sections/props.d.ts +6 -7
  297. package/dist/components/puck-block/testimonial-sections/sticky-testimonial/component.d.ts +3 -2
  298. package/dist/components/puck-block/testimonial-sections/sticky-testimonial/component.js +6 -3
  299. package/dist/components/puck-block/testimonial-sections/tab-testimonial/component.d.ts +4 -4
  300. package/dist/components/puck-block/testimonial-sections/tab-testimonial/component.js +5 -5
  301. package/dist/components/puck-block/testimonial-sections/testimonial-card-grid/component.d.ts +4 -4
  302. package/dist/components/puck-block/testimonial-sections/testimonial-card-grid/component.js +9 -9
  303. package/dist/components/puck-block/testimonial-sections/testimonial-carousel/component.d.ts +3 -3
  304. package/dist/components/puck-block/testimonial-sections/testimonial-carousel/component.js +8 -8
  305. package/dist/components/puck-block/text-sections/blog-article/component.d.ts +4 -7
  306. package/dist/components/puck-block/text-sections/blog-article/component.js +9 -17
  307. package/dist/components/puck-block/text-sections/blog-article/index.d.ts +39 -14
  308. package/dist/components/puck-block/text-sections/blog-article/index.js +4 -10
  309. package/dist/components/puck-block/text-sections/props.d.ts +3 -3
  310. package/dist/components/puck-block/text-sections/prose-content/component.d.ts +2 -2
  311. package/dist/components/puck-block/text-sections/prose-content/component.js +3 -3
  312. package/dist/components/puck-block/text-sections/prose-content/index.d.ts +1 -1
  313. package/dist/components/puck-block/text-sections/prose-content/index.js +2 -2
  314. package/dist/components/puck-block/text-sections/prose-sidebar/component.d.ts +2 -2
  315. package/dist/components/puck-block/text-sections/prose-sidebar/index.d.ts +1 -1
  316. package/dist/components/puck-block/text-sections/side-media-content/component.js +5 -5
  317. package/dist/components/puck-block/text-sections/side-media-content/index.d.ts +1 -1
  318. package/dist/components/puck-block/text-sections/side-media-content/index.js +2 -2
  319. package/dist/components/puck-block/text-sections/sticky-text-multi-image/component.d.ts +2 -2
  320. package/dist/components/puck-block/text-sections/sticky-text-multi-image/component.js +4 -4
  321. package/dist/components/puck-block/text-sections/sticky-text-multi-image/index.d.ts +2 -2
  322. package/dist/components/puck-block/text-sections/sticky-text-multi-image/index.js +2 -2
  323. package/dist/components/puck-block/text-sections/text-header/component.d.ts +2 -2
  324. package/dist/components/puck-block/text-sections/text-header/index.d.ts +1 -1
  325. package/dist/components/puck-core/core/context/editor-context.d.ts +2 -0
  326. package/dist/components/puck-core/core/fields.d.ts +2 -2
  327. package/dist/components/puck-core/core/props/content.d.ts +3 -3
  328. package/dist/components/puck-core/core/props/index.d.ts +2 -2
  329. package/dist/components/puck-core/core/props/index.js +7 -0
  330. package/dist/components/puck-core/core/props/interactive.d.ts +44 -1
  331. package/dist/components/puck-core/core/props/interactive.js +24 -1
  332. package/dist/components/puck-core/core/props/media.d.ts +8 -8
  333. package/dist/components/puck-core/core/props/media.js +21 -21
  334. package/dist/components/puck-core/core/social-icons.d.ts +5 -0
  335. package/dist/components/puck-core/core/social-icons.js +48 -0
  336. package/dist/components/puck-core/core/with-editable.js +9 -2
  337. package/dist/components/puck-core/fields/media-upload-field.d.ts +7 -0
  338. package/dist/components/puck-core/fields/{image-upload-field.js → media-upload-field.js} +71 -28
  339. package/dist/components/puck-core/index.d.ts +2 -2
  340. package/dist/components/shadcn/tabs.d.ts +2 -1
  341. package/dist/components/shadcn/tabs.js +21 -3
  342. package/dist/components/shadcn/video-iframe.d.ts +2 -1
  343. package/dist/components/shadcn/video-iframe.js +7 -6
  344. package/dist/index.js +15 -12
  345. package/package.json +2 -2
  346. package/dist/components/puck-base/image.d.ts +0 -6
  347. package/dist/components/puck-base/image.js +0 -360
  348. package/dist/components/puck-core/fields/image-upload-field.d.ts +0 -7
@@ -2,12 +2,13 @@
2
2
  import { jsxs, jsx } from "react/jsx-runtime";
3
3
  import { useState } from "react";
4
4
  import { Button } from "../../../shadcn/button.js";
5
- import { CompoundImage } from "../../../puck-base/image.js";
5
+ import { CompoundMedia } from "../../../puck-base/media.js";
6
6
  import { motion, AnimatePresence } from "motion/react";
7
7
  import { cn } from "../../../../utils/css-utils.js";
8
8
  import { SectionWrapper } from "../../../puck-core/section-wrapper.js";
9
+ import { CompoundSocialLinks } from "../../../puck-base/social-links.js";
9
10
  const FullscreenOverlayNavbar = (props) => {
10
- const { logo, navLinks, button, styles } = {
11
+ const { logo, navLinks, buttons, socialLinks, styles } = {
11
12
  ...FullscreenOverlayNavbarDefaults,
12
13
  ...props
13
14
  };
@@ -28,17 +29,18 @@ const FullscreenOverlayNavbar = (props) => {
28
29
  css,
29
30
  children: [
30
31
  /* @__PURE__ */ jsxs("div", { className: "mx-auto flex size-full items-center justify-between", children: [
31
- /* @__PURE__ */ jsx("a", { href: logo == null ? void 0 : logo.url, children: /* @__PURE__ */ jsx(CompoundImage, { src: logo == null ? void 0 : logo.src, alt: logo == null ? void 0 : logo.alt, className: "h-9 w-auto" }) }),
32
+ /* @__PURE__ */ jsx("a", { href: logo == null ? void 0 : logo.url, children: /* @__PURE__ */ jsx(CompoundMedia, { src: logo == null ? void 0 : logo.src, alt: logo == null ? void 0 : logo.alt, className: "h-9 w-auto" }) }),
32
33
  /* @__PURE__ */ jsxs("div", { className: "flex items-center justify-center gap-2 lg:gap-4", children: [
33
- button && /* @__PURE__ */ jsx(
34
+ (buttons == null ? void 0 : buttons[0]) && /* @__PURE__ */ jsx(
34
35
  Button,
35
36
  {
36
- variant: button.variant,
37
- size: button.size,
37
+ variant: buttons[0].variant,
38
+ size: buttons[0].size,
38
39
  className: "px-4 py-1 md:px-6 md:py-2",
39
- children: button.label
40
+ children: buttons[0].label
40
41
  }
41
42
  ),
43
+ (styles == null ? void 0 : styles.showSocialLinks) === "true" && /* @__PURE__ */ jsx(CompoundSocialLinks, { links: socialLinks ?? [], iconClassName: "size-5", className: "gap-2" }),
42
44
  /* @__PURE__ */ jsx(
43
45
  "button",
44
46
  {
@@ -123,15 +125,18 @@ const FullscreenOverlayNavbar = (props) => {
123
125
  exit: "close",
124
126
  transition: { duration: 0.5 },
125
127
  className: "absolute left-0 right-0 top-0 block h-dvh overflow-auto bg-background-primary px-[5%]",
126
- children: /* @__PURE__ */ jsx("div", { className: "-mt-18 flex h-full flex-col", children: navLinks == null ? void 0 : navLinks.map((navLink, index) => /* @__PURE__ */ jsx(
127
- "a",
128
- {
129
- href: navLink.url,
130
- className: "static block py-3 text-xl leading-[30px] lg:my-2 lg:py-2 lg:text-2xl lg:leading-[1.5]",
131
- children: navLink.title
132
- },
133
- index
134
- )) })
128
+ children: /* @__PURE__ */ jsxs("div", { className: "-mt-18 flex h-full flex-col", children: [
129
+ navLinks == null ? void 0 : navLinks.map((navLink, index) => /* @__PURE__ */ jsx(
130
+ "a",
131
+ {
132
+ href: navLink.url,
133
+ className: "static block py-3 text-xl leading-[30px] lg:my-2 lg:py-2 lg:text-2xl lg:leading-[1.5]",
134
+ children: navLink.title
135
+ },
136
+ index
137
+ )),
138
+ (styles == null ? void 0 : styles.showSocialLinks) === "true" && /* @__PURE__ */ jsx(CompoundSocialLinks, { links: socialLinks ?? [], className: "pt-6" })
139
+ ] })
135
140
  }
136
141
  )
137
142
  }
@@ -153,8 +158,8 @@ const FullscreenOverlayNavbarDefaults = {
153
158
  { url: "#", title: "Link Three" },
154
159
  { url: "#", title: "Link Four" }
155
160
  ],
156
- button: { label: "Button", size: "sm" },
157
- buttons: [],
161
+ buttons: [{ label: "Button", size: "sm" }],
162
+ socialLinks: [],
158
163
  styles: { overlayContent: "linksOnly" }
159
164
  };
160
165
  export {
@@ -28,9 +28,13 @@ declare const conf: {
28
28
  };
29
29
  };
30
30
  };
31
- button: {
32
- readonly type: "object";
33
- readonly objectFields: {
31
+ buttons: {
32
+ readonly type: "array";
33
+ readonly max: 3;
34
+ readonly getItemSummary: (item: {
35
+ label?: string;
36
+ }, index?: number) => string;
37
+ readonly arrayFields: {
34
38
  readonly label: {
35
39
  readonly type: "text";
36
40
  };
@@ -82,6 +86,68 @@ declare const conf: {
82
86
  render: typeof import("../../../puck-core/fields/icon-picker-field").IconPickerField;
83
87
  };
84
88
  };
89
+ readonly defaultItemProps: {
90
+ readonly label: "Button";
91
+ readonly action: {
92
+ readonly type: "page";
93
+ readonly pageUrl: "";
94
+ readonly externalUrl: "";
95
+ readonly openInNewTab: "false";
96
+ readonly email: "";
97
+ readonly subject: "";
98
+ readonly phone: "";
99
+ readonly sectionId: "";
100
+ readonly downloadUrl: "";
101
+ };
102
+ readonly variant: "default";
103
+ readonly size: "default";
104
+ readonly icon: "none";
105
+ };
106
+ readonly ai: {
107
+ readonly instructions: "Buttons must use the same size";
108
+ };
109
+ };
110
+ socialLinks: {
111
+ readonly type: "array";
112
+ readonly label: "Social Links";
113
+ readonly getItemSummary: (item: {
114
+ platform?: string;
115
+ }, i?: number) => string;
116
+ readonly arrayFields: {
117
+ readonly platform: {
118
+ readonly type: "select";
119
+ readonly label: "Platform";
120
+ readonly options: readonly [{
121
+ readonly label: "Twitter / X";
122
+ readonly value: "twitter";
123
+ }, {
124
+ readonly label: "Facebook";
125
+ readonly value: "facebook";
126
+ }, {
127
+ readonly label: "Instagram";
128
+ readonly value: "instagram";
129
+ }, {
130
+ readonly label: "LinkedIn";
131
+ readonly value: "linkedin";
132
+ }, {
133
+ readonly label: "YouTube";
134
+ readonly value: "youtube";
135
+ }, {
136
+ readonly label: "GitHub";
137
+ readonly value: "github";
138
+ }, {
139
+ readonly label: "TikTok";
140
+ readonly value: "tiktok";
141
+ }, {
142
+ readonly label: "Discord";
143
+ readonly value: "discord";
144
+ }];
145
+ };
146
+ readonly url: {
147
+ readonly type: "text";
148
+ readonly label: "URL";
149
+ };
150
+ };
85
151
  };
86
152
  styles: {
87
153
  type: string;
@@ -129,6 +195,17 @@ declare const conf: {
129
195
  readonly value: "withForm";
130
196
  }];
131
197
  };
198
+ showSocialLinks: {
199
+ readonly type: "radio";
200
+ readonly label: "Display Social Links";
201
+ readonly options: readonly [{
202
+ readonly label: "Yes";
203
+ readonly value: "true";
204
+ }, {
205
+ readonly label: "No";
206
+ readonly value: "false";
207
+ }];
208
+ };
132
209
  };
133
210
  };
134
211
  };
@@ -1,10 +1,10 @@
1
1
  import { FullscreenOverlayNavbar, FullscreenOverlayNavbarDefaults } from "./fullscreen-overlay-navbar.js";
2
- import { imageField } from "../../../puck-core/core/props/media.js";
3
- import { buttonField } from "../../../puck-core/core/props/interactive.js";
2
+ import { mediaField } from "../../../puck-core/core/props/media.js";
3
+ import { socialLinksField, buttonsField } from "../../../puck-core/core/props/interactive.js";
4
4
  import { headerStyleFields } from "../props.js";
5
5
  import { sectionWrapperFields } from "../../../puck-core/section-wrapper.js";
6
6
  const conf = {
7
- fields: { logo: imageField, navLinks: { type: "array", max: 8, getItemSummary: (item, i = 0) => item.title || `Link ${i + 1}`, arrayFields: { title: { type: "text" }, url: { type: "text" } } }, button: buttonField, styles: { type: "object", label: "Styles", objectFields: { overlayContent: headerStyleFields.overlayContent, ...sectionWrapperFields } } },
7
+ fields: { logo: mediaField, navLinks: { type: "array", max: 8, getItemSummary: (item, i = 0) => item.title || `Link ${i + 1}`, arrayFields: { title: { type: "text" }, url: { type: "text" } } }, buttons: buttonsField, socialLinks: socialLinksField, styles: { type: "object", label: "Styles", objectFields: { overlayContent: headerStyleFields.overlayContent, showSocialLinks: headerStyleFields.showSocialLinks, ...sectionWrapperFields } } },
8
8
  defaultProps: FullscreenOverlayNavbarDefaults,
9
9
  render: FullscreenOverlayNavbar
10
10
  };
@@ -107,6 +107,48 @@ declare const conf: {
107
107
  readonly instructions: "Buttons must use the same size";
108
108
  };
109
109
  };
110
+ socialLinks: {
111
+ readonly type: "array";
112
+ readonly label: "Social Links";
113
+ readonly getItemSummary: (item: {
114
+ platform?: string;
115
+ }, i?: number) => string;
116
+ readonly arrayFields: {
117
+ readonly platform: {
118
+ readonly type: "select";
119
+ readonly label: "Platform";
120
+ readonly options: readonly [{
121
+ readonly label: "Twitter / X";
122
+ readonly value: "twitter";
123
+ }, {
124
+ readonly label: "Facebook";
125
+ readonly value: "facebook";
126
+ }, {
127
+ readonly label: "Instagram";
128
+ readonly value: "instagram";
129
+ }, {
130
+ readonly label: "LinkedIn";
131
+ readonly value: "linkedin";
132
+ }, {
133
+ readonly label: "YouTube";
134
+ readonly value: "youtube";
135
+ }, {
136
+ readonly label: "GitHub";
137
+ readonly value: "github";
138
+ }, {
139
+ readonly label: "TikTok";
140
+ readonly value: "tiktok";
141
+ }, {
142
+ readonly label: "Discord";
143
+ readonly value: "discord";
144
+ }];
145
+ };
146
+ readonly url: {
147
+ readonly type: "text";
148
+ readonly label: "URL";
149
+ };
150
+ };
151
+ };
110
152
  styles: {
111
153
  type: string;
112
154
  label: string;
@@ -156,6 +198,17 @@ declare const conf: {
156
198
  readonly value: "linksBlog";
157
199
  }];
158
200
  };
201
+ showSocialLinks: {
202
+ readonly type: "radio";
203
+ readonly label: "Display Social Links";
204
+ readonly options: readonly [{
205
+ readonly label: "Yes";
206
+ readonly value: "true";
207
+ }, {
208
+ readonly label: "No";
209
+ readonly value: "false";
210
+ }];
211
+ };
159
212
  };
160
213
  };
161
214
  };
@@ -1,10 +1,10 @@
1
1
  import { MegaMenuNavbar, MegaMenuNavbarDefaults } from "./mega-menu-navbar.js";
2
- import { imageField } from "../../../puck-core/core/props/media.js";
3
- import { buttonsField } from "../../../puck-core/core/props/interactive.js";
2
+ import { mediaField } from "../../../puck-core/core/props/media.js";
3
+ import { socialLinksField, buttonsField } from "../../../puck-core/core/props/interactive.js";
4
4
  import { headerStyleFields } from "../props.js";
5
5
  import { sectionWrapperFields } from "../../../puck-core/section-wrapper.js";
6
6
  const conf = {
7
- fields: { logo: imageField, navLinks: { type: "array", max: 6, getItemSummary: (item, i = 0) => item.title || `Link ${i + 1}`, arrayFields: { title: { type: "text" }, url: { type: "text" } } }, buttons: buttonsField, styles: { type: "object", label: "Styles", objectFields: { megaMenuLayout: headerStyleFields.megaMenuLayout, ...sectionWrapperFields } } },
7
+ fields: { logo: mediaField, navLinks: { type: "array", max: 6, getItemSummary: (item, i = 0) => item.title || `Link ${i + 1}`, arrayFields: { title: { type: "text" }, url: { type: "text" } } }, buttons: buttonsField, socialLinks: socialLinksField, styles: { type: "object", label: "Styles", objectFields: { megaMenuLayout: headerStyleFields.megaMenuLayout, showSocialLinks: headerStyleFields.showSocialLinks, ...sectionWrapperFields } } },
8
8
  defaultProps: MegaMenuNavbarDefaults,
9
9
  render: MegaMenuNavbar
10
10
  };
@@ -3,34 +3,41 @@ import { jsx, jsxs } from "react/jsx-runtime";
3
3
  import { useState } from "react";
4
4
  import { Button } from "../../../shadcn/button.js";
5
5
  import { CompoundButton } from "../../../puck-base/button.js";
6
- import { CompoundImage } from "../../../puck-base/image.js";
6
+ import { CompoundMedia } from "../../../puck-base/media.js";
7
7
  import { motion } from "motion/react";
8
8
  import { cn } from "../../../../utils/css-utils.js";
9
9
  import { SectionWrapper } from "../../../puck-core/section-wrapper.js";
10
+ import { CompoundSocialLinks } from "../../../puck-base/social-links.js";
10
11
  const MegaMenuNavbar = (props) => {
11
- const { logo, navLinks, buttons, styles } = { ...MegaMenuNavbarDefaults, ...props };
12
+ const { logo, navLinks, buttons, socialLinks, styles } = { ...MegaMenuNavbarDefaults, ...props };
12
13
  const { className: sectionClassName, style: sectionStyle, css } = styles ?? {};
13
14
  const [isMobileMenuOpen, setIsMobileMenuOpen] = useState(false);
14
15
  return /* @__PURE__ */ jsx(SectionWrapper, { className: cn("relative z-[999] flex w-full items-center justify-between border-b border-border-primary bg-background-primary lg:min-h-18 lg:px-[5%]", sectionClassName), style: sectionStyle, css, children: /* @__PURE__ */ jsxs("div", { className: "size-full lg:flex lg:items-center lg:justify-between", children: [
15
16
  /* @__PURE__ */ jsxs("div", { className: "lg:flex", children: [
16
17
  /* @__PURE__ */ jsxs("div", { className: "flex min-h-16 items-center justify-between px-[5%] md:min-h-18 lg:min-h-full lg:px-0", children: [
17
- /* @__PURE__ */ jsx("a", { href: logo == null ? void 0 : logo.url, children: /* @__PURE__ */ jsx(CompoundImage, { src: logo == null ? void 0 : logo.src, alt: logo == null ? void 0 : logo.alt, className: "h-9 w-auto" }) }),
18
+ /* @__PURE__ */ jsx("a", { href: logo == null ? void 0 : logo.url, children: /* @__PURE__ */ jsx(CompoundMedia, { src: logo == null ? void 0 : logo.src, alt: logo == null ? void 0 : logo.alt, className: "h-9 w-auto" }) }),
18
19
  /* @__PURE__ */ jsx("button", { className: "-mr-2 flex size-12 flex-col items-center justify-center lg:hidden", onClick: () => setIsMobileMenuOpen((prev) => !prev), children: [0, 1, 2].map((i) => /* @__PURE__ */ jsx("span", { className: "my-[3px] h-0.5 w-6 bg-black" }, i)) })
19
20
  ] }),
20
21
  /* @__PURE__ */ jsxs(motion.div, { variants: { open: { height: "var(--height-open, 100dvh)" }, close: { height: "var(--height-closed, 0)" } }, initial: "close", exit: "close", animate: isMobileMenuOpen ? "open" : "close", transition: { duration: 0.4 }, className: "overflow-auto px-[5%] lg:ml-6 lg:flex lg:items-center lg:px-0 lg:[--height-closed:auto] lg:[--height-open:auto]", children: [
21
22
  navLinks == null ? void 0 : navLinks.map((navLink, index) => /* @__PURE__ */ jsx("a", { href: navLink.url, className: "block py-3 text-md first:pt-7 lg:px-4 lg:py-6 lg:text-base first:lg:pt-6", children: navLink.title }, index)),
22
- /* @__PURE__ */ jsx("div", { className: "mt-6 flex w-full flex-col gap-y-4 pb-24 lg:hidden lg:pb-0", children: buttons == null ? void 0 : buttons.map((b, i) => /* @__PURE__ */ jsx(Button, { className: "w-full", variant: b.variant, size: b.size, children: b.label }, i)) })
23
+ /* @__PURE__ */ jsxs("div", { className: "mt-6 flex w-full flex-col gap-y-4 pb-24 lg:hidden lg:pb-0", children: [
24
+ buttons == null ? void 0 : buttons.map((b, i) => /* @__PURE__ */ jsx(Button, { className: "w-full", variant: b.variant, size: b.size, children: b.label }, i)),
25
+ (styles == null ? void 0 : styles.showSocialLinks) === "true" && /* @__PURE__ */ jsx(CompoundSocialLinks, { links: socialLinks ?? [], iconClassName: "size-5", className: "pt-4" })
26
+ ] })
23
27
  ] })
24
28
  ] }),
25
- /* @__PURE__ */ jsx("div", { className: "hidden lg:flex lg:gap-4", children: buttons == null ? void 0 : buttons.map((b, i) => /* @__PURE__ */ jsx(CompoundButton, { label: b.label, variant: b.variant, size: b.size, action: b.action, icon: b.icon }, i)) })
29
+ /* @__PURE__ */ jsxs("div", { className: "hidden lg:flex lg:items-center lg:gap-4", children: [
30
+ buttons == null ? void 0 : buttons.map((b, i) => /* @__PURE__ */ jsx(CompoundButton, { label: b.label, variant: b.variant, size: b.size, action: b.action, icon: b.icon }, i)),
31
+ (styles == null ? void 0 : styles.showSocialLinks) === "true" && /* @__PURE__ */ jsx(CompoundSocialLinks, { links: socialLinks ?? [], iconClassName: "size-5", className: "gap-2" })
32
+ ] })
26
33
  ] }) });
27
34
  };
28
35
  const MegaMenuNavbarDefaults = {
29
36
  __metadata: { type: "header" },
30
37
  logo: { url: "#", src: "https://file.springbrand.ai/web_assets/template-logo.svg", alt: "Logo image" },
31
38
  navLinks: [{ title: "Link One", url: "#" }, { title: "Link Two", url: "#" }, { title: "Link Three", url: "#" }, { title: "Link Four", url: "#" }],
32
- button: { label: "Button", size: "sm" },
33
39
  buttons: [{ label: "Button", variant: "secondary", size: "sm" }, { label: "Button", size: "sm" }],
40
+ socialLinks: [],
34
41
  styles: { megaMenuLayout: "2colGrid" }
35
42
  };
36
43
  export {
@@ -4,9 +4,9 @@
4
4
  * 基础类型引用自 ../props/(全局共享)
5
5
  * HeaderSectionStyles 为 header 特有的样式字段
6
6
  */
7
- import type { BaseImage } from "@/components/puck-core/core/props/media";
8
- import type { BaseButton } from "@/components/puck-core/core/props/interactive";
9
- export type { BaseImage, BaseButton };
7
+ import type { BaseMedia } from "@/components/puck-core/core/props/media";
8
+ import type { BaseButton, BaseSocialLink } from "@/components/puck-core/core/props/interactive";
9
+ export type { BaseMedia, BaseButton, BaseSocialLink };
10
10
  export interface HeaderSectionStyles {
11
11
  className?: string;
12
12
  style?: React.CSSProperties;
@@ -15,6 +15,7 @@ export interface HeaderSectionStyles {
15
15
  overlayContent?: "linksOnly" | "withSocial" | "withContact" | "withArticles" | "withForm";
16
16
  megaMenuLayout?: "2colGrid" | "3colGrid" | "4colGrid" | "3colSidebar" | "4colFooter" | "linksBlog";
17
17
  position?: "relative" | "fixed";
18
+ showSocialLinks?: string;
18
19
  }
19
20
  export interface NavLink {
20
21
  url: string;
@@ -22,12 +23,12 @@ export interface NavLink {
22
23
  subMenuLinks?: NavLink[];
23
24
  }
24
25
  export interface HeaderSectionBaseProps {
25
- logo: BaseImage & {
26
+ logo: BaseMedia & {
26
27
  url?: string;
27
28
  };
28
29
  navLinks: NavLink[];
29
- button: BaseButton;
30
30
  buttons: BaseButton[];
31
+ socialLinks: BaseSocialLink[];
31
32
  styles: HeaderSectionStyles;
32
33
  __metadata?: {
33
34
  type: "header";
@@ -102,6 +103,17 @@ export declare const headerStyleFields: {
102
103
  readonly value: "fixed";
103
104
  }];
104
105
  };
106
+ readonly showSocialLinks: {
107
+ readonly type: "radio";
108
+ readonly label: "Display Social Links";
109
+ readonly options: readonly [{
110
+ readonly label: "Yes";
111
+ readonly value: "true";
112
+ }, {
113
+ readonly label: "No";
114
+ readonly value: "false";
115
+ }];
116
+ };
105
117
  };
106
118
  /** 将 HeaderSectionBaseProps 与组件特有字段合并,生成最终 Props */
107
119
  export type HeaderComponentProps<T extends object = object> = React.ComponentPropsWithoutRef<"section"> & Partial<HeaderSectionBaseProps> & Partial<T>;
@@ -38,6 +38,14 @@ const headerStyleFields = {
38
38
  { label: "Relative", value: "relative" },
39
39
  { label: "Fixed", value: "fixed" }
40
40
  ]
41
+ },
42
+ showSocialLinks: {
43
+ type: "radio",
44
+ label: "Display Social Links",
45
+ options: [
46
+ { label: "Yes", value: "true" },
47
+ { label: "No", value: "false" }
48
+ ]
41
49
  }
42
50
  };
43
51
  export {
@@ -107,6 +107,48 @@ declare const conf: {
107
107
  readonly instructions: "Buttons must use the same size";
108
108
  };
109
109
  };
110
+ socialLinks: {
111
+ readonly type: "array";
112
+ readonly label: "Social Links";
113
+ readonly getItemSummary: (item: {
114
+ platform?: string;
115
+ }, i?: number) => string;
116
+ readonly arrayFields: {
117
+ readonly platform: {
118
+ readonly type: "select";
119
+ readonly label: "Platform";
120
+ readonly options: readonly [{
121
+ readonly label: "Twitter / X";
122
+ readonly value: "twitter";
123
+ }, {
124
+ readonly label: "Facebook";
125
+ readonly value: "facebook";
126
+ }, {
127
+ readonly label: "Instagram";
128
+ readonly value: "instagram";
129
+ }, {
130
+ readonly label: "LinkedIn";
131
+ readonly value: "linkedin";
132
+ }, {
133
+ readonly label: "YouTube";
134
+ readonly value: "youtube";
135
+ }, {
136
+ readonly label: "GitHub";
137
+ readonly value: "github";
138
+ }, {
139
+ readonly label: "TikTok";
140
+ readonly value: "tiktok";
141
+ }, {
142
+ readonly label: "Discord";
143
+ readonly value: "discord";
144
+ }];
145
+ };
146
+ readonly url: {
147
+ readonly type: "text";
148
+ readonly label: "URL";
149
+ };
150
+ };
151
+ };
110
152
  styles: {
111
153
  type: string;
112
154
  label: string;
@@ -147,6 +189,17 @@ declare const conf: {
147
189
  readonly value: "richGrouped";
148
190
  }];
149
191
  };
192
+ showSocialLinks: {
193
+ readonly type: "radio";
194
+ readonly label: "Display Social Links";
195
+ readonly options: readonly [{
196
+ readonly label: "Yes";
197
+ readonly value: "true";
198
+ }, {
199
+ readonly label: "No";
200
+ readonly value: "false";
201
+ }];
202
+ };
150
203
  };
151
204
  };
152
205
  };
@@ -1,14 +1,15 @@
1
1
  import { StandardNavbar, StandardNavbarDefaults } from "./standard-navbar.js";
2
- import { imageField } from "../../../puck-core/core/props/media.js";
3
- import { buttonsField } from "../../../puck-core/core/props/interactive.js";
2
+ import { mediaField } from "../../../puck-core/core/props/media.js";
3
+ import { socialLinksField, buttonsField } from "../../../puck-core/core/props/interactive.js";
4
4
  import { headerStyleFields } from "../props.js";
5
5
  import { sectionWrapperFields } from "../../../puck-core/section-wrapper.js";
6
6
  const conf = {
7
7
  fields: {
8
- logo: imageField,
8
+ logo: mediaField,
9
9
  navLinks: { type: "array", max: 6, getItemSummary: (item, i = 0) => item.title || `Link ${i + 1}`, arrayFields: { title: { type: "text" }, url: { type: "text" } } },
10
10
  buttons: buttonsField,
11
- styles: { type: "object", label: "Styles", objectFields: { dropdownType: headerStyleFields.dropdownType, ...sectionWrapperFields } }
11
+ socialLinks: socialLinksField,
12
+ styles: { type: "object", label: "Styles", objectFields: { dropdownType: headerStyleFields.dropdownType, showSocialLinks: headerStyleFields.showSocialLinks, ...sectionWrapperFields } }
12
13
  },
13
14
  defaultProps: StandardNavbarDefaults,
14
15
  render: StandardNavbar
@@ -3,19 +3,20 @@ import { jsx, jsxs } from "react/jsx-runtime";
3
3
  import { useState } from "react";
4
4
  import { Button } from "../../../shadcn/button.js";
5
5
  import { useMediaQuery } from "../../../../hooks/use-media-query.js";
6
- import { CompoundImage } from "../../../puck-base/image.js";
6
+ import { CompoundMedia } from "../../../puck-base/media.js";
7
7
  import { motion, AnimatePresence } from "motion/react";
8
8
  import { RxChevronDown } from "../../../../node_modules/.pnpm/react-icons@5.6.0_react@19.2.4/node_modules/react-icons/rx/index.js";
9
9
  import { cn } from "../../../../utils/css-utils.js";
10
10
  import { SectionWrapper } from "../../../puck-core/section-wrapper.js";
11
+ import { CompoundSocialLinks } from "../../../puck-base/social-links.js";
11
12
  const StandardNavbar = (props) => {
12
- const { logo, navLinks, buttons, styles } = { ...StandardNavbarDefaults, ...props };
13
+ const { logo, navLinks, buttons, socialLinks, styles } = { ...StandardNavbarDefaults, ...props };
13
14
  const { className: sectionClassName, style: sectionStyle, css } = styles ?? {};
14
15
  const [isMobileMenuOpen, setIsMobileMenuOpen] = useState(false);
15
16
  const isMobile = useMediaQuery("(max-width: 991px)");
16
17
  return /* @__PURE__ */ jsx(SectionWrapper, { className: cn("z-[999] flex w-full items-center border-b border-border-primary bg-background-primary lg:min-h-18 lg:px-[5%]", sectionClassName), style: sectionStyle, css, children: /* @__PURE__ */ jsxs("div", { className: "size-full lg:flex lg:items-center lg:justify-between", children: [
17
18
  /* @__PURE__ */ jsxs("div", { className: "flex min-h-16 items-center justify-between px-[5%] md:min-h-18 lg:min-h-full lg:px-0", children: [
18
- /* @__PURE__ */ jsx("a", { href: logo == null ? void 0 : logo.url, children: /* @__PURE__ */ jsx(CompoundImage, { src: logo == null ? void 0 : logo.src, alt: logo == null ? void 0 : logo.alt, className: "h-9 w-auto" }) }),
19
+ /* @__PURE__ */ jsx("a", { href: logo == null ? void 0 : logo.url, children: /* @__PURE__ */ jsx(CompoundMedia, { src: logo == null ? void 0 : logo.src, alt: logo == null ? void 0 : logo.alt, className: "h-9 w-auto" }) }),
19
20
  /* @__PURE__ */ jsxs("button", { className: "-mr-2 flex size-12 flex-col items-center justify-center lg:hidden", onClick: () => setIsMobileMenuOpen((prev) => !prev), children: [
20
21
  /* @__PURE__ */ jsx(motion.span, { className: "my-[3px] h-0.5 w-6 bg-black", animate: isMobileMenuOpen ? ["open", "rotatePhase"] : "closed", variants: topLineVariants }),
21
22
  /* @__PURE__ */ jsx(motion.span, { className: "my-[3px] h-0.5 w-6 bg-black", animate: isMobileMenuOpen ? "open" : "closed", variants: middleLineVariants }),
@@ -26,7 +27,10 @@ const StandardNavbar = (props) => {
26
27
  navLinks == null ? void 0 : navLinks.map(
27
28
  (navLink, index) => navLink.subMenuLinks && navLink.subMenuLinks.length > 0 ? /* @__PURE__ */ jsx(SubMenu, { navLink, isMobile }, index) : /* @__PURE__ */ jsx("a", { href: navLink.url, className: "block py-3 text-md first:pt-7 lg:px-4 lg:py-2 lg:text-base first:lg:pt-2", children: navLink.title }, index)
28
29
  ),
29
- /* @__PURE__ */ jsx("div", { className: "mt-6 flex flex-col items-center gap-4 lg:ml-4 lg:mt-0 lg:flex-row", children: buttons == null ? void 0 : buttons.map((button, index) => /* @__PURE__ */ jsx(Button, { variant: button.variant, size: button.size, className: "w-full", children: button.label }, index)) })
30
+ /* @__PURE__ */ jsxs("div", { className: "mt-6 flex flex-col items-center gap-4 lg:ml-4 lg:mt-0 lg:flex-row", children: [
31
+ buttons == null ? void 0 : buttons.map((button, index) => /* @__PURE__ */ jsx(Button, { variant: button.variant, size: button.size, className: "w-full", children: button.label }, index)),
32
+ (styles == null ? void 0 : styles.showSocialLinks) === "true" && /* @__PURE__ */ jsx(CompoundSocialLinks, { links: socialLinks ?? [], iconClassName: "size-5", className: "gap-2" })
33
+ ] })
30
34
  ] })
31
35
  ] }) });
32
36
  };
@@ -53,8 +57,8 @@ const StandardNavbarDefaults = {
53
57
  { title: "Link Three", url: "#" },
54
58
  { title: "Link Four", url: "#", subMenuLinks: [{ title: "Link Five", url: "#" }, { title: "Link Six", url: "#" }, { title: "Link Seven", url: "#" }] }
55
59
  ],
56
- button: { label: "Button", size: "sm" },
57
60
  buttons: [{ label: "Button", variant: "secondary", size: "sm" }, { label: "Button", size: "sm" }],
61
+ socialLinks: [],
58
62
  styles: { dropdownType: "simple" }
59
63
  };
60
64
  export {
@@ -3,7 +3,7 @@ import { jsxs, jsx } from "react/jsx-runtime";
3
3
  import { useState, useEffect } from "react";
4
4
  import { Carousel, CarouselContent, CarouselItem, CarouselPrevious, CarouselNext } from "../../../shadcn/carousel.js";
5
5
  import { CompoundButton } from "../../../puck-base/button.js";
6
- import { CompoundImage } from "../../../puck-base/image.js";
6
+ import { CompoundMedia } from "../../../puck-base/media.js";
7
7
  import { SectionWrapper } from "../../../puck-core/section-wrapper.js";
8
8
  import { cn } from "../../../../utils/css-utils.js";
9
9
  import Autoplay from "embla-carousel-autoplay";
@@ -14,7 +14,7 @@ const CarouselHero = (props) => {
14
14
  heading,
15
15
  description,
16
16
  buttons,
17
- images,
17
+ medias,
18
18
  carouselHeading,
19
19
  carouselDescription,
20
20
  styles
@@ -67,13 +67,13 @@ const CarouselHero = (props) => {
67
67
  setApi,
68
68
  className: "relative left-0 right-0 z-10 block h-full overflow-hidden whitespace-nowrap pl-4",
69
69
  children: [
70
- /* @__PURE__ */ jsx(CarouselContent, { children: images.map((image, index) => /* @__PURE__ */ jsx(CarouselItem, { className: "pl-0", children: /* @__PURE__ */ jsx("div", { className: "relative inline-block size-full whitespace-normal text-left align-top", children: /* @__PURE__ */ jsxs("div", { className: "flex h-screen flex-col", children: [
70
+ /* @__PURE__ */ jsx(CarouselContent, { children: medias.map((item, index) => /* @__PURE__ */ jsx(CarouselItem, { className: "pl-0", children: /* @__PURE__ */ jsx("div", { className: "relative inline-block size-full whitespace-normal text-left align-top", children: /* @__PURE__ */ jsxs("div", { className: "flex h-screen flex-col", children: [
71
71
  /* @__PURE__ */ jsx("div", { className: "relative flex-1", children: /* @__PURE__ */ jsx(
72
- CompoundImage,
72
+ CompoundMedia,
73
73
  {
74
74
  className: "absolute size-full object-cover",
75
- src: image.src,
76
- alt: image.alt
75
+ src: item.src,
76
+ alt: item.alt
77
77
  }
78
78
  ) }),
79
79
  /* @__PURE__ */ jsx("div", { className: "relative bg-background-secondary px-6 pb-32 pt-6 sm:px-8 sm:pt-8", children: /* @__PURE__ */ jsxs("div", { className: "w-full max-w-lg", children: [
@@ -82,7 +82,7 @@ const CarouselHero = (props) => {
82
82
  ] }) })
83
83
  ] }) }) }, index)) }),
84
84
  /* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between pl-4", children: [
85
- /* @__PURE__ */ jsx("div", { className: "absolute bottom-[52px] left-8 right-auto top-auto flex w-full items-start justify-start", children: images.map((_, index) => /* @__PURE__ */ jsx(
85
+ /* @__PURE__ */ jsx("div", { className: "absolute bottom-[52px] left-8 right-auto top-auto flex w-full items-start justify-start", children: medias.map((_, index) => /* @__PURE__ */ jsx(
86
86
  "button",
87
87
  {
88
88
  onClick: () => api == null ? void 0 : api.scrollTo(index),
@@ -107,7 +107,7 @@ const CarouselHeroDefaults = {
107
107
  heading: "Medium length hero heading goes here",
108
108
  description: "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat.",
109
109
  buttons: [{ label: "Button" }, { label: "Button", variant: "secondary" }],
110
- images: [
110
+ medias: [
111
111
  {
112
112
  src: "https://picsum.photos/seed/hero-square/1200/1200",
113
113
  alt: "Placeholder image 1"
@@ -91,7 +91,7 @@ declare const conf: {
91
91
  readonly instructions: "Buttons must use the same size";
92
92
  };
93
93
  };
94
- images: {
94
+ medias: {
95
95
  readonly type: "array";
96
96
  readonly max: 10;
97
97
  readonly getItemSummary: (item: {
@@ -1,13 +1,13 @@
1
1
  import { CarouselHero, CarouselHeroDefaults } from "./component.js";
2
2
  import { descriptionField, headingField } from "../../../puck-core/core/props/content.js";
3
3
  import { buttonsField } from "../../../puck-core/core/props/interactive.js";
4
- import { imagesField } from "../../../puck-core/core/props/media.js";
4
+ import { mediasField } from "../../../puck-core/core/props/media.js";
5
5
  const conf = {
6
6
  fields: {
7
7
  heading: headingField,
8
8
  description: descriptionField,
9
9
  buttons: buttonsField,
10
- images: imagesField,
10
+ medias: mediasField,
11
11
  carouselHeading: { type: "text" },
12
12
  carouselDescription: { type: "textarea" }
13
13
  },
@@ -1,7 +1,7 @@
1
- import type { BaseImage, HeroComponentProps } from "../props";
1
+ import type { BaseMedia, HeroComponentProps } from "../props";
2
2
  type ColumnScrollHeroExtra = {
3
- imagesPartOne: BaseImage[];
4
- imagesPartTwo: BaseImage[];
3
+ mediasPartOne: BaseMedia[];
4
+ mediasPartTwo: BaseMedia[];
5
5
  };
6
6
  export type ColumnScrollHeroProps = HeroComponentProps<ColumnScrollHeroExtra>;
7
7
  export declare const ColumnScrollHero: (props: ColumnScrollHeroProps) => import("react/jsx-runtime").JSX.Element;