dune-react 0.0.31 → 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 (345) 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 +3 -3
  60. package/dist/components/puck-block/feature-sections/feature-cards-grid/component.d.ts +2 -2
  61. package/dist/components/puck-block/feature-sections/feature-cards-grid/component.js +6 -6
  62. package/dist/components/puck-block/feature-sections/feature-cards-grid/index.d.ts +1 -1
  63. package/dist/components/puck-block/feature-sections/feature-cards-grid/index.js +3 -3
  64. package/dist/components/puck-block/feature-sections/feature-list-split/component.d.ts +2 -2
  65. package/dist/components/puck-block/feature-sections/feature-list-split/component.js +6 -6
  66. package/dist/components/puck-block/feature-sections/feature-list-split/index.d.ts +1 -1
  67. package/dist/components/puck-block/feature-sections/feature-list-split/index.js +3 -3
  68. package/dist/components/puck-block/feature-sections/props.d.ts +3 -3
  69. package/dist/components/puck-block/feature-sections/tab-feature/component.d.ts +2 -2
  70. package/dist/components/puck-block/feature-sections/tab-feature/component.js +12 -12
  71. package/dist/components/puck-block/feature-sections/tab-feature/index.d.ts +1 -1
  72. package/dist/components/puck-block/feature-sections/tab-feature/index.js +2 -2
  73. package/dist/components/puck-block/feature-sections/text-media-split/component.js +5 -5
  74. package/dist/components/puck-block/feature-sections/text-media-split/index.d.ts +1 -1
  75. package/dist/components/puck-block/feature-sections/text-media-split/index.js +2 -2
  76. package/dist/components/puck-block/feature-sections/text-only-section/component.d.ts +2 -2
  77. package/dist/components/puck-block/feature-sections/text-only-section/component.js +2 -2
  78. package/dist/components/puck-block/feature-sections/text-only-section/index.d.ts +1 -1
  79. package/dist/components/puck-block/feature-sections/text-only-section/index.js +2 -2
  80. package/dist/components/puck-block/footer-sections/centered-minimal-footer/centered-minimal-footer.js +9 -9
  81. package/dist/components/puck-block/footer-sections/centered-minimal-footer/index.js +2 -2
  82. package/dist/components/puck-block/footer-sections/contact-links-footer/contact-links-footer.d.ts +7 -2
  83. package/dist/components/puck-block/footer-sections/contact-links-footer/contact-links-footer.js +9 -9
  84. package/dist/components/puck-block/footer-sections/contact-links-footer/index.d.ts +50 -10
  85. package/dist/components/puck-block/footer-sections/contact-links-footer/index.js +3 -2
  86. package/dist/components/puck-block/footer-sections/cta-links-footer/cta-links-footer.js +9 -9
  87. package/dist/components/puck-block/footer-sections/cta-links-footer/index.d.ts +50 -10
  88. package/dist/components/puck-block/footer-sections/cta-links-footer/index.js +3 -3
  89. package/dist/components/puck-block/footer-sections/links-newsletter-footer/index.d.ts +50 -10
  90. package/dist/components/puck-block/footer-sections/newsletter-top-links-footer/index.d.ts +50 -10
  91. package/dist/components/puck-block/footer-sections/props.d.ts +17 -10
  92. package/dist/components/puck-block/footer-sections/props.js +8 -0
  93. package/dist/components/puck-block/gallery-sections/asymmetric-grid/asymmetric-grid.js +7 -7
  94. package/dist/components/puck-block/gallery-sections/asymmetric-grid/index.d.ts +1 -1
  95. package/dist/components/puck-block/gallery-sections/asymmetric-grid/index.js +2 -2
  96. package/dist/components/puck-block/gallery-sections/fullscreen-portfolio/fullscreen-portfolio.js +12 -12
  97. package/dist/components/puck-block/gallery-sections/fullscreen-portfolio/index.d.ts +1 -1
  98. package/dist/components/puck-block/gallery-sections/fullscreen-portfolio/index.js +2 -2
  99. package/dist/components/puck-block/gallery-sections/image-carousel/image-carousel.js +12 -12
  100. package/dist/components/puck-block/gallery-sections/image-carousel/index.d.ts +1 -1
  101. package/dist/components/puck-block/gallery-sections/image-carousel/index.js +2 -2
  102. package/dist/components/puck-block/gallery-sections/interactive-portfolio/index.d.ts +1 -1
  103. package/dist/components/puck-block/gallery-sections/interactive-portfolio/index.js +2 -2
  104. package/dist/components/puck-block/gallery-sections/interactive-portfolio/interactive-portfolio.js +14 -14
  105. package/dist/components/puck-block/gallery-sections/masonry-grid/index.d.ts +1 -1
  106. package/dist/components/puck-block/gallery-sections/masonry-grid/index.js +2 -2
  107. package/dist/components/puck-block/gallery-sections/masonry-grid/masonry-grid.js +7 -7
  108. package/dist/components/puck-block/gallery-sections/portfolio-cards/index.d.ts +1 -1
  109. package/dist/components/puck-block/gallery-sections/portfolio-cards/index.js +2 -2
  110. package/dist/components/puck-block/gallery-sections/portfolio-cards/portfolio-cards.js +6 -6
  111. package/dist/components/puck-block/gallery-sections/portfolio-divider/index.d.ts +1 -1
  112. package/dist/components/puck-block/gallery-sections/portfolio-divider/index.js +2 -2
  113. package/dist/components/puck-block/gallery-sections/portfolio-divider/portfolio-divider.js +9 -9
  114. package/dist/components/puck-block/gallery-sections/props.d.ts +8 -8
  115. package/dist/components/puck-block/gallery-sections/scroll-parallax/index.d.ts +1 -1
  116. package/dist/components/puck-block/gallery-sections/scroll-parallax/index.js +2 -2
  117. package/dist/components/puck-block/gallery-sections/scroll-parallax/scroll-parallax.js +11 -11
  118. package/dist/components/puck-block/gallery-sections/scroll-parallax-portfolio/index.d.ts +1 -1
  119. package/dist/components/puck-block/gallery-sections/scroll-parallax-portfolio/index.js +5 -5
  120. package/dist/components/puck-block/gallery-sections/scroll-parallax-portfolio/scroll-parallax-portfolio.js +26 -26
  121. package/dist/components/puck-block/gallery-sections/split-carousel/index.d.ts +1 -1
  122. package/dist/components/puck-block/gallery-sections/split-carousel/index.js +2 -2
  123. package/dist/components/puck-block/gallery-sections/split-carousel/split-carousel.js +6 -6
  124. package/dist/components/puck-block/gallery-sections/static-grid/index.d.ts +1 -1
  125. package/dist/components/puck-block/gallery-sections/static-grid/index.js +2 -2
  126. package/dist/components/puck-block/gallery-sections/static-grid/static-grid.js +7 -7
  127. package/dist/components/puck-block/header-sections/centered-navbar/centered-navbar.js +31 -24
  128. package/dist/components/puck-block/header-sections/centered-navbar/index.d.ts +81 -0
  129. package/dist/components/puck-block/header-sections/centered-navbar/index.js +8 -4
  130. package/dist/components/puck-block/header-sections/drawer-navbar/drawer-navbar.js +32 -25
  131. package/dist/components/puck-block/header-sections/drawer-navbar/index.d.ts +81 -0
  132. package/dist/components/puck-block/header-sections/drawer-navbar/index.js +5 -3
  133. package/dist/components/puck-block/header-sections/floating-bordered-navbar/floating-bordered-navbar.js +27 -22
  134. package/dist/components/puck-block/header-sections/floating-bordered-navbar/index.d.ts +80 -3
  135. package/dist/components/puck-block/header-sections/floating-bordered-navbar/index.js +3 -3
  136. package/dist/components/puck-block/header-sections/fullscreen-overlay-navbar/fullscreen-overlay-navbar.js +23 -18
  137. package/dist/components/puck-block/header-sections/fullscreen-overlay-navbar/index.d.ts +80 -3
  138. package/dist/components/puck-block/header-sections/fullscreen-overlay-navbar/index.js +3 -3
  139. package/dist/components/puck-block/header-sections/mega-menu-navbar/index.d.ts +53 -0
  140. package/dist/components/puck-block/header-sections/mega-menu-navbar/index.js +3 -3
  141. package/dist/components/puck-block/header-sections/mega-menu-navbar/mega-menu-navbar.js +13 -6
  142. package/dist/components/puck-block/header-sections/props.d.ts +17 -5
  143. package/dist/components/puck-block/header-sections/props.js +8 -0
  144. package/dist/components/puck-block/header-sections/standard-navbar/index.d.ts +53 -0
  145. package/dist/components/puck-block/header-sections/standard-navbar/index.js +5 -4
  146. package/dist/components/puck-block/header-sections/standard-navbar/standard-navbar.js +9 -5
  147. package/dist/components/puck-block/hero-sections/carousel-hero/component.js +8 -8
  148. package/dist/components/puck-block/hero-sections/carousel-hero/index.d.ts +1 -1
  149. package/dist/components/puck-block/hero-sections/carousel-hero/index.js +2 -2
  150. package/dist/components/puck-block/hero-sections/column-scroll-hero/component.d.ts +3 -3
  151. package/dist/components/puck-block/hero-sections/column-scroll-hero/component.js +14 -14
  152. package/dist/components/puck-block/hero-sections/column-scroll-hero/index.d.ts +2 -2
  153. package/dist/components/puck-block/hero-sections/column-scroll-hero/index.js +3 -3
  154. package/dist/components/puck-block/hero-sections/dual-marquee-hero/component.js +11 -11
  155. package/dist/components/puck-block/hero-sections/dual-marquee-hero/index.d.ts +1 -1
  156. package/dist/components/puck-block/hero-sections/dual-marquee-hero/index.js +2 -2
  157. package/dist/components/puck-block/hero-sections/fullscreen-hero/index.d.ts +1 -1
  158. package/dist/components/puck-block/hero-sections/fullscreen-video-hero/component.js +5 -5
  159. package/dist/components/puck-block/hero-sections/fullscreen-video-hero/index.d.ts +1 -1
  160. package/dist/components/puck-block/hero-sections/fullscreen-video-hero/index.js +2 -2
  161. package/dist/components/puck-block/hero-sections/grid-expand-hero/component.js +16 -16
  162. package/dist/components/puck-block/hero-sections/grid-expand-hero/index.d.ts +1 -1
  163. package/dist/components/puck-block/hero-sections/grid-expand-hero/index.js +2 -2
  164. package/dist/components/puck-block/hero-sections/horizontal-marquee-hero/component.js +11 -11
  165. package/dist/components/puck-block/hero-sections/horizontal-marquee-hero/index.d.ts +1 -1
  166. package/dist/components/puck-block/hero-sections/horizontal-marquee-hero/index.js +2 -2
  167. package/dist/components/puck-block/hero-sections/media-text-hero/index.d.ts +1 -1
  168. package/dist/components/puck-block/hero-sections/mouse-track-hero/component.d.ts +3 -3
  169. package/dist/components/puck-block/hero-sections/mouse-track-hero/component.js +6 -6
  170. package/dist/components/puck-block/hero-sections/mouse-track-hero/index.js +3 -3
  171. package/dist/components/puck-block/hero-sections/multi-image-grid-hero/index.d.ts +1 -1
  172. package/dist/components/puck-block/hero-sections/multi-image-grid-hero/index.js +2 -2
  173. package/dist/components/puck-block/hero-sections/multi-image-grid-hero/multi-image-grid-hero.js +7 -7
  174. package/dist/components/puck-block/hero-sections/overlapping-image-hero/index.js +4 -4
  175. package/dist/components/puck-block/hero-sections/overlapping-image-hero/overlapping-image-hero.d.ts +4 -4
  176. package/dist/components/puck-block/hero-sections/overlapping-image-hero/overlapping-image-hero.js +16 -16
  177. package/dist/components/puck-block/hero-sections/parallax-images-hero/component.js +12 -12
  178. package/dist/components/puck-block/hero-sections/parallax-images-hero/index.d.ts +1 -1
  179. package/dist/components/puck-block/hero-sections/parallax-images-hero/index.js +2 -2
  180. package/dist/components/puck-block/hero-sections/props.d.ts +3 -3
  181. package/dist/components/puck-block/hero-sections/scatter-parallax-hero/component.js +5 -5
  182. package/dist/components/puck-block/hero-sections/scatter-parallax-hero/index.d.ts +1 -1
  183. package/dist/components/puck-block/hero-sections/scatter-parallax-hero/index.js +2 -2
  184. package/dist/components/puck-block/hero-sections/scroll-expand-video-hero/component.js +5 -5
  185. package/dist/components/puck-block/hero-sections/scroll-expand-video-hero/index.d.ts +1 -1
  186. package/dist/components/puck-block/hero-sections/scroll-expand-video-hero/index.js +2 -2
  187. package/dist/components/puck-block/hero-sections/scroll-zoom-hero/component.js +9 -9
  188. package/dist/components/puck-block/hero-sections/scroll-zoom-hero/index.d.ts +1 -1
  189. package/dist/components/puck-block/hero-sections/scroll-zoom-hero/index.js +2 -2
  190. package/dist/components/puck-block/hero-sections/split-hero/index.d.ts +1 -1
  191. package/dist/components/puck-block/hero-sections/stacked-hero/index.d.ts +1 -1
  192. package/dist/components/puck-block/hero-sections/sticky-expand-hero/component.js +12 -12
  193. package/dist/components/puck-block/hero-sections/sticky-expand-hero/index.d.ts +1 -1
  194. package/dist/components/puck-block/hero-sections/sticky-expand-hero/index.js +2 -2
  195. package/dist/components/puck-block/hero-sections/sticky-video-hero/component.d.ts +2 -2
  196. package/dist/components/puck-block/hero-sections/sticky-video-hero/component.js +13 -13
  197. package/dist/components/puck-block/hero-sections/sticky-video-hero/index.d.ts +1 -1
  198. package/dist/components/puck-block/hero-sections/sticky-video-hero/index.js +3 -3
  199. package/dist/components/puck-block/hero-sections/tab-hero/component.d.ts +2 -2
  200. package/dist/components/puck-block/hero-sections/tab-hero/component.js +6 -6
  201. package/dist/components/puck-block/hero-sections/tab-hero/index.d.ts +1 -1
  202. package/dist/components/puck-block/hero-sections/tab-hero/index.js +2 -2
  203. package/dist/components/puck-block/hero-sections/three-image-parallax-hero/component.d.ts +4 -4
  204. package/dist/components/puck-block/hero-sections/three-image-parallax-hero/component.js +4 -4
  205. package/dist/components/puck-block/hero-sections/three-image-parallax-hero/index.js +4 -4
  206. package/dist/components/puck-block/hero-sections/vertical-gallery-hero/component.js +11 -11
  207. package/dist/components/puck-block/hero-sections/vertical-gallery-hero/index.d.ts +1 -1
  208. package/dist/components/puck-block/hero-sections/vertical-gallery-hero/index.js +2 -2
  209. package/dist/components/puck-block/hero-sections/zoom-grid-hero/component.js +7 -7
  210. package/dist/components/puck-block/hero-sections/zoom-grid-hero/index.d.ts +1 -1
  211. package/dist/components/puck-block/hero-sections/zoom-grid-hero/index.js +2 -2
  212. package/dist/components/puck-block/metrics-sections/center-media-stats/center-media-stats.js +5 -5
  213. package/dist/components/puck-block/metrics-sections/center-media-stats/index.d.ts +1 -1
  214. package/dist/components/puck-block/metrics-sections/center-media-stats/index.js +2 -2
  215. package/dist/components/puck-block/metrics-sections/header-stats-row/header-stats-row.js +4 -4
  216. package/dist/components/puck-block/metrics-sections/header-stats-row/index.d.ts +1 -1
  217. package/dist/components/puck-block/metrics-sections/header-stats-row/index.js +2 -2
  218. package/dist/components/puck-block/metrics-sections/mixed-grid-stats/index.d.ts +2 -2
  219. package/dist/components/puck-block/metrics-sections/mixed-grid-stats/index.js +3 -3
  220. package/dist/components/puck-block/metrics-sections/mixed-grid-stats/mixed-grid-stats.d.ts +2 -2
  221. package/dist/components/puck-block/metrics-sections/mixed-grid-stats/mixed-grid-stats.js +7 -7
  222. package/dist/components/puck-block/metrics-sections/props.d.ts +6 -6
  223. package/dist/components/puck-block/metrics-sections/split-stats/index.d.ts +1 -1
  224. package/dist/components/puck-block/metrics-sections/split-stats/index.js +2 -2
  225. package/dist/components/puck-block/metrics-sections/split-stats/split-stats.js +4 -4
  226. package/dist/components/puck-block/metrics-sections/tab-stats/index.d.ts +2 -2
  227. package/dist/components/puck-block/metrics-sections/tab-stats/index.js +3 -3
  228. package/dist/components/puck-block/metrics-sections/tab-stats/tab-stats.d.ts +3 -3
  229. package/dist/components/puck-block/metrics-sections/tab-stats/tab-stats.js +11 -11
  230. package/dist/components/puck-block/pricing-sections/props.d.ts +2 -2
  231. package/dist/components/puck-block/pricing-sections/single-pricing-card/component.d.ts +2 -2
  232. package/dist/components/puck-block/pricing-sections/single-pricing-card/component.js +3 -3
  233. package/dist/components/puck-block/pricing-sections/split-pricing/component.d.ts +2 -2
  234. package/dist/components/puck-block/pricing-sections/split-pricing/component.js +2 -2
  235. package/dist/components/puck-block/pricing-sections/tab-pricing-grid/component.d.ts +2 -2
  236. package/dist/components/puck-block/pricing-sections/tab-single-pricing/component.d.ts +2 -2
  237. package/dist/components/puck-block/registry.generated.d.ts +694 -118
  238. package/dist/components/puck-block/showcase-sections/compact-timeline/component.d.ts +2 -2
  239. package/dist/components/puck-block/showcase-sections/compact-timeline/component.js +3 -3
  240. package/dist/components/puck-block/showcase-sections/compact-timeline/index.d.ts +2 -2
  241. package/dist/components/puck-block/showcase-sections/compact-timeline/index.js +2 -2
  242. package/dist/components/puck-block/showcase-sections/horizontal-timeline/component.d.ts +2 -2
  243. package/dist/components/puck-block/showcase-sections/horizontal-timeline/component.js +3 -3
  244. package/dist/components/puck-block/showcase-sections/horizontal-timeline/index.d.ts +2 -2
  245. package/dist/components/puck-block/showcase-sections/horizontal-timeline/index.js +2 -2
  246. package/dist/components/puck-block/showcase-sections/props.d.ts +2 -2
  247. package/dist/components/puck-block/showcase-sections/single-column-timeline/component.d.ts +2 -2
  248. package/dist/components/puck-block/showcase-sections/single-column-timeline/component.js +3 -3
  249. package/dist/components/puck-block/showcase-sections/single-column-timeline/index.d.ts +2 -2
  250. package/dist/components/puck-block/showcase-sections/single-column-timeline/index.js +2 -2
  251. package/dist/components/puck-block/showcase-sections/sticky-scroll-timeline/component.d.ts +2 -2
  252. package/dist/components/puck-block/showcase-sections/sticky-scroll-timeline/component.js +3 -3
  253. package/dist/components/puck-block/showcase-sections/sticky-scroll-timeline/index.d.ts +2 -2
  254. package/dist/components/puck-block/showcase-sections/sticky-scroll-timeline/index.js +2 -2
  255. package/dist/components/puck-block/showcase-sections/tab-timeline/component.d.ts +2 -2
  256. package/dist/components/puck-block/showcase-sections/tab-timeline/component.js +8 -8
  257. package/dist/components/puck-block/showcase-sections/tab-timeline/index.d.ts +2 -2
  258. package/dist/components/puck-block/showcase-sections/tab-timeline/index.js +2 -2
  259. package/dist/components/puck-block/showcase-sections/zigzag-timeline/component.d.ts +2 -2
  260. package/dist/components/puck-block/showcase-sections/zigzag-timeline/component.js +3 -3
  261. package/dist/components/puck-block/showcase-sections/zigzag-timeline/index.d.ts +2 -2
  262. package/dist/components/puck-block/showcase-sections/zigzag-timeline/index.js +2 -2
  263. package/dist/components/puck-block/team-sections/props.d.ts +2 -3
  264. package/dist/components/puck-block/team-sections/team-carousel/component.d.ts +2 -2
  265. package/dist/components/puck-block/team-sections/team-carousel/component.js +3 -3
  266. package/dist/components/puck-block/team-sections/team-grid/component.d.ts +2 -2
  267. package/dist/components/puck-block/team-sections/team-grid/component.js +3 -3
  268. package/dist/components/puck-block/team-sections/team-inline-card/component.d.ts +2 -2
  269. package/dist/components/puck-block/team-sections/team-inline-card/component.js +3 -3
  270. package/dist/components/puck-block/team-sections/team-sticky-scatter/component.d.ts +2 -2
  271. package/dist/components/puck-block/team-sections/team-sticky-scatter/component.js +3 -3
  272. package/dist/components/puck-block/team-sections/team-two-column/component.d.ts +2 -2
  273. package/dist/components/puck-block/team-sections/team-two-column/component.js +3 -3
  274. package/dist/components/puck-block/testimonial-sections/bento-testimonial/component.d.ts +4 -4
  275. package/dist/components/puck-block/testimonial-sections/bento-testimonial/component.js +8 -8
  276. package/dist/components/puck-block/testimonial-sections/centered-testimonial/component.d.ts +3 -3
  277. package/dist/components/puck-block/testimonial-sections/centered-testimonial/component.js +4 -4
  278. package/dist/components/puck-block/testimonial-sections/centered-testimonial/index.js +3 -3
  279. package/dist/components/puck-block/testimonial-sections/halfscreen-testimonial-carousel/component.d.ts +3 -3
  280. package/dist/components/puck-block/testimonial-sections/halfscreen-testimonial-carousel/component.js +3 -3
  281. package/dist/components/puck-block/testimonial-sections/image-testimonial/component.d.ts +3 -3
  282. package/dist/components/puck-block/testimonial-sections/image-testimonial/component.js +10 -10
  283. package/dist/components/puck-block/testimonial-sections/image-testimonial/index.d.ts +1 -1
  284. package/dist/components/puck-block/testimonial-sections/image-testimonial/index.js +3 -3
  285. package/dist/components/puck-block/testimonial-sections/image-testimonial-carousel/component.d.ts +3 -3
  286. package/dist/components/puck-block/testimonial-sections/image-testimonial-carousel/component.js +7 -7
  287. package/dist/components/puck-block/testimonial-sections/image-testimonial-carousel/index.d.ts +1 -1
  288. package/dist/components/puck-block/testimonial-sections/image-testimonial-carousel/index.js +3 -3
  289. package/dist/components/puck-block/testimonial-sections/marquee-testimonial/component.d.ts +2 -2
  290. package/dist/components/puck-block/testimonial-sections/marquee-testimonial/component.js +2 -2
  291. package/dist/components/puck-block/testimonial-sections/masonry-testimonial/component.d.ts +2 -2
  292. package/dist/components/puck-block/testimonial-sections/masonry-testimonial/component.js +2 -2
  293. package/dist/components/puck-block/testimonial-sections/props.d.ts +3 -4
  294. package/dist/components/puck-block/testimonial-sections/sticky-testimonial/component.d.ts +3 -2
  295. package/dist/components/puck-block/testimonial-sections/sticky-testimonial/component.js +6 -3
  296. package/dist/components/puck-block/testimonial-sections/tab-testimonial/component.d.ts +4 -4
  297. package/dist/components/puck-block/testimonial-sections/tab-testimonial/component.js +5 -5
  298. package/dist/components/puck-block/testimonial-sections/testimonial-card-grid/component.d.ts +4 -4
  299. package/dist/components/puck-block/testimonial-sections/testimonial-card-grid/component.js +6 -6
  300. package/dist/components/puck-block/testimonial-sections/testimonial-carousel/component.d.ts +3 -3
  301. package/dist/components/puck-block/testimonial-sections/testimonial-carousel/component.js +3 -3
  302. package/dist/components/puck-block/text-sections/blog-article/component.d.ts +4 -7
  303. package/dist/components/puck-block/text-sections/blog-article/component.js +9 -17
  304. package/dist/components/puck-block/text-sections/blog-article/index.d.ts +39 -14
  305. package/dist/components/puck-block/text-sections/blog-article/index.js +4 -10
  306. package/dist/components/puck-block/text-sections/props.d.ts +3 -3
  307. package/dist/components/puck-block/text-sections/prose-content/component.d.ts +2 -2
  308. package/dist/components/puck-block/text-sections/prose-content/component.js +3 -3
  309. package/dist/components/puck-block/text-sections/prose-content/index.d.ts +1 -1
  310. package/dist/components/puck-block/text-sections/prose-content/index.js +2 -2
  311. package/dist/components/puck-block/text-sections/prose-sidebar/component.d.ts +2 -2
  312. package/dist/components/puck-block/text-sections/prose-sidebar/index.d.ts +1 -1
  313. package/dist/components/puck-block/text-sections/side-media-content/component.js +5 -5
  314. package/dist/components/puck-block/text-sections/side-media-content/index.d.ts +1 -1
  315. package/dist/components/puck-block/text-sections/side-media-content/index.js +2 -2
  316. package/dist/components/puck-block/text-sections/sticky-text-multi-image/component.d.ts +2 -2
  317. package/dist/components/puck-block/text-sections/sticky-text-multi-image/component.js +4 -4
  318. package/dist/components/puck-block/text-sections/sticky-text-multi-image/index.d.ts +2 -2
  319. package/dist/components/puck-block/text-sections/sticky-text-multi-image/index.js +2 -2
  320. package/dist/components/puck-block/text-sections/text-header/component.d.ts +2 -2
  321. package/dist/components/puck-block/text-sections/text-header/index.d.ts +1 -1
  322. package/dist/components/puck-core/core/context/editor-context.d.ts +2 -0
  323. package/dist/components/puck-core/core/fields.d.ts +2 -2
  324. package/dist/components/puck-core/core/props/content.d.ts +3 -3
  325. package/dist/components/puck-core/core/props/index.d.ts +2 -2
  326. package/dist/components/puck-core/core/props/index.js +7 -0
  327. package/dist/components/puck-core/core/props/interactive.d.ts +44 -1
  328. package/dist/components/puck-core/core/props/interactive.js +24 -1
  329. package/dist/components/puck-core/core/props/media.d.ts +8 -8
  330. package/dist/components/puck-core/core/props/media.js +21 -21
  331. package/dist/components/puck-core/core/social-icons.d.ts +5 -0
  332. package/dist/components/puck-core/core/social-icons.js +48 -0
  333. package/dist/components/puck-core/core/with-editable.js +9 -2
  334. package/dist/components/puck-core/fields/media-upload-field.d.ts +7 -0
  335. package/dist/components/puck-core/fields/{image-upload-field.js → media-upload-field.js} +71 -28
  336. package/dist/components/puck-core/index.d.ts +2 -2
  337. package/dist/components/shadcn/tabs.d.ts +2 -1
  338. package/dist/components/shadcn/tabs.js +21 -3
  339. package/dist/components/shadcn/video-iframe.d.ts +2 -1
  340. package/dist/components/shadcn/video-iframe.js +7 -6
  341. package/dist/index.js +15 -12
  342. package/package.json +1 -1
  343. package/dist/components/puck-base/image.d.ts +0 -6
  344. package/dist/components/puck-base/image.js +0 -360
  345. package/dist/components/puck-core/fields/image-upload-field.d.ts +0 -7
@@ -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;
@@ -2,7 +2,7 @@
2
2
  import { jsx, jsxs } from "react/jsx-runtime";
3
3
  import React__default from "react";
4
4
  import { CompoundButton } from "../../../puck-base/button.js";
5
- import { CompoundImage } from "../../../puck-base/image.js";
5
+ import { CompoundMedia } from "../../../puck-base/media.js";
6
6
  import { SectionWrapper } from "../../../puck-core/section-wrapper.js";
7
7
  import { cn } from "../../../../utils/css-utils.js";
8
8
  const imageColumns = [
@@ -13,7 +13,7 @@ const imageColumns = [
13
13
  { className: "mt-[-20%] animate-loop-vertically-top" }
14
14
  ];
15
15
  const ColumnScrollHero = (props) => {
16
- const { heading, description, buttons = [], imagesPartOne = [], imagesPartTwo = [], styles } = {
16
+ const { heading, description, buttons = [], mediasPartOne = [], mediasPartTwo = [], styles } = {
17
17
  ...ColumnScrollHeroDefaults,
18
18
  ...props
19
19
  };
@@ -29,8 +29,8 @@ const ColumnScrollHero = (props) => {
29
29
  /* @__PURE__ */ jsx("div", { className: "grid w-full grid-cols-2 gap-x-4 px-4 md:grid-cols-3 lg:grid-cols-5", children: imageColumns.map((column, index) => /* @__PURE__ */ jsx(
30
30
  AnimatedImageColumn,
31
31
  {
32
- imagesPartOne,
33
- imagesPartTwo,
32
+ mediasPartOne,
33
+ mediasPartTwo,
34
34
  className: column.className
35
35
  },
36
36
  index
@@ -38,27 +38,27 @@ const ColumnScrollHero = (props) => {
38
38
  ] })
39
39
  ] }) });
40
40
  };
41
- const ImageGrid = ({ images }) => /* @__PURE__ */ jsx(React__default.Fragment, { children: images.map((image, index) => /* @__PURE__ */ jsx("div", { className: "grid size-full grid-cols-1 gap-4", children: /* @__PURE__ */ jsx("div", { className: "relative w-full pt-[120%]", children: /* @__PURE__ */ jsx(
42
- CompoundImage,
41
+ const ImageGrid = ({ medias }) => /* @__PURE__ */ jsx(React__default.Fragment, { children: medias.map((item, index) => /* @__PURE__ */ jsx("div", { className: "grid size-full grid-cols-1 gap-4", children: /* @__PURE__ */ jsx("div", { className: "relative w-full pt-[120%]", children: /* @__PURE__ */ jsx(
42
+ CompoundMedia,
43
43
  {
44
44
  className: "absolute inset-0 size-full object-cover",
45
- src: image.src,
46
- alt: image.alt
45
+ src: item.src,
46
+ alt: item.alt
47
47
  }
48
48
  ) }) }, index)) });
49
49
  const AnimatedImageColumn = ({
50
- imagesPartOne,
51
- imagesPartTwo,
50
+ mediasPartOne,
51
+ mediasPartTwo,
52
52
  className
53
53
  }) => /* @__PURE__ */ jsxs("div", { className: `grid size-full columns-2 grid-cols-1 gap-4 self-center ${className}`, children: [
54
- /* @__PURE__ */ jsx(ImageGrid, { images: imagesPartOne }),
55
- /* @__PURE__ */ jsx(ImageGrid, { images: imagesPartTwo })
54
+ /* @__PURE__ */ jsx(ImageGrid, { medias: mediasPartOne }),
55
+ /* @__PURE__ */ jsx(ImageGrid, { medias: mediasPartTwo })
56
56
  ] });
57
57
  const ColumnScrollHeroDefaults = {
58
58
  heading: "Medium length hero heading goes here",
59
59
  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.",
60
60
  buttons: [{ label: "Button" }, { label: "Button", variant: "secondary" }],
61
- imagesPartOne: [
61
+ mediasPartOne: [
62
62
  {
63
63
  src: "https://picsum.photos/seed/hero-square/1200/1200",
64
64
  alt: "Placeholder image 1"
@@ -76,7 +76,7 @@ const ColumnScrollHeroDefaults = {
76
76
  alt: "Placeholder image 4"
77
77
  }
78
78
  ],
79
- imagesPartTwo: [
79
+ mediasPartTwo: [
80
80
  {
81
81
  src: "https://picsum.photos/seed/hero-square/1200/1200",
82
82
  alt: "Placeholder image 5"