dune-react 0.0.21 → 0.0.23

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 (249) hide show
  1. package/dist/components/index.d.ts +1 -0
  2. package/dist/components/puck-base/button.d.ts +1 -1
  3. package/dist/components/puck-base/button.js +5 -6
  4. package/dist/components/puck-base/card.d.ts +1 -1
  5. package/dist/components/puck-base/container.js +1 -1
  6. package/dist/components/puck-base/content.d.ts +1 -1
  7. package/dist/components/puck-base/image.js +16 -16
  8. package/dist/components/puck-base/index.d.ts +1 -13
  9. package/dist/components/puck-block/banner-sections/css-marquee-banner/css-marquee-banner.js +13 -13
  10. package/dist/components/puck-block/banner-sections/dismissible-banner/index.d.ts +3 -25
  11. package/dist/components/puck-block/banner-sections/dual-row-marquee/dual-row-marquee.js +8 -8
  12. package/dist/components/puck-block/banner-sections/scroll-driven-marquee/scroll-driven-marquee.js +8 -6
  13. package/dist/components/puck-block/banner-sections/scroll-parallax-text/scroll-parallax-text.js +3 -1
  14. package/dist/components/puck-block/contact-sections/centered-form/index.d.ts +1 -1
  15. package/dist/components/puck-block/contact-sections/contact-cards-grid/contact-cards-grid.js +1 -1
  16. package/dist/components/puck-block/contact-sections/contact-modal/contact-modal.js +1 -1
  17. package/dist/components/puck-block/contact-sections/contact-modal/index.d.ts +1 -1
  18. package/dist/components/puck-block/contact-sections/form-with-media/form-with-media.js +1 -1
  19. package/dist/components/puck-block/contact-sections/form-with-media/index.d.ts +1 -1
  20. package/dist/components/puck-block/contact-sections/header-form-cards/header-form-cards.js +1 -1
  21. package/dist/components/puck-block/contact-sections/header-form-cards/index.d.ts +1 -1
  22. package/dist/components/puck-block/contact-sections/header-info-fullwidth/header-info-fullwidth.js +2 -2
  23. package/dist/components/puck-block/contact-sections/info-cards-media/info-cards-media.js +2 -2
  24. package/dist/components/puck-block/contact-sections/location-cards-grid/index.d.ts +1 -1
  25. package/dist/components/puck-block/contact-sections/split-info-form/index.d.ts +1 -1
  26. package/dist/components/puck-block/contact-sections/split-info-form/split-info-form.js +1 -1
  27. package/dist/components/puck-block/cta-sections/feature-card-cta/index.d.ts +1 -1
  28. package/dist/components/puck-block/cta-sections/index.d.ts +2 -0
  29. package/dist/components/puck-block/cta-sections/mouse-track-cta/index.d.ts +1 -1
  30. package/dist/components/puck-block/cta-sections/mouse-track-cta/mouse-track-cta.js +92 -63
  31. package/dist/components/puck-block/cta-sections/props.js +46 -0
  32. package/dist/components/puck-block/cta-sections/side-media-cta/index.d.ts +1 -73
  33. package/dist/components/puck-block/cta-sections/side-media-cta/index.js +35 -0
  34. package/dist/components/puck-block/cta-sections/side-media-cta/side-media-cta.js +84 -0
  35. package/dist/components/puck-block/cta-sections/text-block-cta/index.d.ts +2 -74
  36. package/dist/components/puck-block/cta-sections/text-block-cta/index.js +38 -0
  37. package/dist/components/puck-block/cta-sections/text-block-cta/text-block-cta.d.ts +1 -1
  38. package/dist/components/puck-block/cta-sections/text-block-cta/text-block-cta.js +165 -0
  39. package/dist/components/puck-block/faq-sections/dual-column-accordion-faq/index.d.ts +1 -1
  40. package/dist/components/puck-block/faq-sections/icon-card-faq/index.d.ts +1 -1
  41. package/dist/components/puck-block/faq-sections/stacked-accordion-faq/index.d.ts +1 -1
  42. package/dist/components/puck-block/faq-sections/stacked-static-faq/index.d.ts +1 -1
  43. package/dist/components/puck-block/faq-sections/two-column-accordion-faq/index.d.ts +1 -1
  44. package/dist/components/puck-block/faq-sections/two-column-static-faq/index.d.ts +1 -1
  45. package/dist/components/puck-block/feature-sections/feature-cards-grid/component.js +1 -1
  46. package/dist/components/puck-block/feature-sections/feature-cards-grid/index.d.ts +2 -2
  47. package/dist/components/puck-block/feature-sections/feature-list-split/component.js +1 -1
  48. package/dist/components/puck-block/feature-sections/feature-list-split/index.d.ts +2 -2
  49. package/dist/components/puck-block/feature-sections/tab-feature/component.js +80 -64
  50. package/dist/components/puck-block/feature-sections/text-media-split/component.js +1 -1
  51. package/dist/components/puck-block/feature-sections/text-media-split/index.d.ts +1 -1
  52. package/dist/components/puck-block/feature-sections/text-only-section/index.d.ts +1 -1
  53. package/dist/components/puck-block/footer-sections/centered-minimal-footer/centered-minimal-footer.js +72 -18
  54. package/dist/components/puck-block/footer-sections/centered-minimal-footer/index.d.ts +79 -0
  55. package/dist/components/puck-block/footer-sections/centered-minimal-footer/index.js +43 -1
  56. package/dist/components/puck-block/footer-sections/compact-newsletter-footer/index.d.ts +42 -1
  57. package/dist/components/puck-block/footer-sections/contact-links-footer/contact-links-footer.js +4 -3
  58. package/dist/components/puck-block/footer-sections/contact-links-footer/index.d.ts +86 -0
  59. package/dist/components/puck-block/footer-sections/contact-links-footer/index.js +1 -1
  60. package/dist/components/puck-block/footer-sections/cta-links-footer/cta-links-footer.js +3 -2
  61. package/dist/components/puck-block/footer-sections/cta-links-footer/index.d.ts +38 -1
  62. package/dist/components/puck-block/footer-sections/cta-links-footer/index.js +1 -1
  63. package/dist/components/puck-block/footer-sections/links-newsletter-footer/index.d.ts +55 -1
  64. package/dist/components/puck-block/footer-sections/newsletter-links-footer/index.d.ts +42 -1
  65. package/dist/components/puck-block/footer-sections/newsletter-top-links-footer/index.d.ts +55 -1
  66. package/dist/components/puck-block/footer-sections/props.d.ts +3 -0
  67. package/dist/components/puck-block/gallery-sections/fullscreen-portfolio/fullscreen-portfolio.js +1 -1
  68. package/dist/components/puck-block/gallery-sections/fullscreen-portfolio/index.d.ts +25 -28
  69. package/dist/components/puck-block/gallery-sections/fullscreen-portfolio/index.js +3 -2
  70. package/dist/components/puck-block/gallery-sections/interactive-portfolio/interactive-portfolio.js +1 -1
  71. package/dist/components/puck-block/gallery-sections/portfolio-cards/index.d.ts +2 -2
  72. package/dist/components/puck-block/gallery-sections/portfolio-cards/portfolio-cards.js +1 -1
  73. package/dist/components/puck-block/gallery-sections/portfolio-divider/index.d.ts +2 -2
  74. package/dist/components/puck-block/gallery-sections/portfolio-divider/portfolio-divider.js +68 -65
  75. package/dist/components/puck-block/gallery-sections/props.d.ts +11 -1
  76. package/dist/components/puck-block/gallery-sections/props.js +7 -2
  77. package/dist/components/puck-block/gallery-sections/scroll-parallax/scroll-parallax.js +18 -0
  78. package/dist/components/puck-block/gallery-sections/scroll-parallax-portfolio/index.d.ts +24 -27
  79. package/dist/components/puck-block/gallery-sections/scroll-parallax-portfolio/index.js +3 -2
  80. package/dist/components/puck-block/gallery-sections/scroll-parallax-portfolio/scroll-parallax-portfolio.js +25 -22
  81. package/dist/components/puck-block/gallery-sections/split-carousel/index.d.ts +11 -1
  82. package/dist/components/puck-block/header-sections/centered-navbar/centered-navbar.js +3 -2
  83. package/dist/components/puck-block/header-sections/centered-navbar/index.d.ts +1 -1
  84. package/dist/components/puck-block/header-sections/drawer-navbar/drawer-navbar.js +119 -17
  85. package/dist/components/puck-block/header-sections/drawer-navbar/index.d.ts +1 -1
  86. package/dist/components/puck-block/header-sections/floating-bordered-navbar/floating-bordered-navbar.js +162 -22
  87. package/dist/components/puck-block/header-sections/floating-bordered-navbar/index.d.ts +1 -1
  88. package/dist/components/puck-block/header-sections/fullscreen-overlay-navbar/fullscreen-overlay-navbar.js +143 -19
  89. package/dist/components/puck-block/header-sections/fullscreen-overlay-navbar/index.d.ts +1 -1
  90. package/dist/components/puck-block/header-sections/mega-menu-navbar/index.d.ts +1 -1
  91. package/dist/components/puck-block/header-sections/mega-menu-navbar/mega-menu-navbar.js +3 -2
  92. package/dist/components/puck-block/header-sections/props.d.ts +3 -0
  93. package/dist/components/puck-block/header-sections/standard-navbar/index.d.ts +1 -1
  94. package/dist/components/puck-block/header-sections/standard-navbar/standard-navbar.js +3 -2
  95. package/dist/components/puck-block/hero-sections/carousel-hero/component.js +50 -9
  96. package/dist/components/puck-block/hero-sections/carousel-hero/index.d.ts +1 -1
  97. package/dist/components/puck-block/hero-sections/centered-hero/index.d.ts +2 -2
  98. package/dist/components/puck-block/hero-sections/column-scroll-hero/component.js +8 -8
  99. package/dist/components/puck-block/hero-sections/column-scroll-hero/index.d.ts +1 -1
  100. package/dist/components/puck-block/hero-sections/dual-marquee-hero/component.js +6 -6
  101. package/dist/components/puck-block/hero-sections/dual-marquee-hero/index.d.ts +1 -1
  102. package/dist/components/puck-block/hero-sections/fullscreen-hero/index.d.ts +2 -2
  103. package/dist/components/puck-block/hero-sections/fullscreen-video-hero/component.js +5 -3
  104. package/dist/components/puck-block/hero-sections/fullscreen-video-hero/index.d.ts +1 -1
  105. package/dist/components/puck-block/hero-sections/grid-expand-hero/component.js +26 -17
  106. package/dist/components/puck-block/hero-sections/grid-expand-hero/index.d.ts +1 -1
  107. package/dist/components/puck-block/hero-sections/horizontal-marquee-hero/component.js +3 -3
  108. package/dist/components/puck-block/hero-sections/horizontal-marquee-hero/index.d.ts +1 -1
  109. package/dist/components/puck-block/hero-sections/inline-image-hero/index.d.ts +1 -1
  110. package/dist/components/puck-block/hero-sections/media-text-hero/index.d.ts +26 -29
  111. package/dist/components/puck-block/hero-sections/mouse-track-hero/component.js +60 -19
  112. package/dist/components/puck-block/hero-sections/mouse-track-hero/index.d.ts +1 -1
  113. package/dist/components/puck-block/hero-sections/multi-image-grid-hero/index.d.ts +25 -28
  114. package/dist/components/puck-block/hero-sections/multi-image-grid-hero/index.js +3 -2
  115. package/dist/components/puck-block/hero-sections/multi-image-grid-hero/multi-image-grid-hero.js +2 -2
  116. package/dist/components/puck-block/hero-sections/overlapping-image-hero/index.d.ts +1 -1
  117. package/dist/components/puck-block/hero-sections/overlapping-image-hero/overlapping-image-hero.js +3 -3
  118. package/dist/components/puck-block/hero-sections/parallax-images-hero/component.js +18 -6
  119. package/dist/components/puck-block/hero-sections/parallax-images-hero/index.d.ts +1 -1
  120. package/dist/components/puck-block/hero-sections/scatter-parallax-hero/component.js +9 -7
  121. package/dist/components/puck-block/hero-sections/scatter-parallax-hero/index.d.ts +1 -1
  122. package/dist/components/puck-block/hero-sections/scroll-expand-video-hero/component.js +7 -5
  123. package/dist/components/puck-block/hero-sections/scroll-expand-video-hero/index.d.ts +1 -1
  124. package/dist/components/puck-block/hero-sections/scroll-zoom-hero/component.js +93 -44
  125. package/dist/components/puck-block/hero-sections/scroll-zoom-hero/index.d.ts +1 -1
  126. package/dist/components/puck-block/hero-sections/split-hero/index.d.ts +2 -2
  127. package/dist/components/puck-block/hero-sections/stacked-hero/index.d.ts +2 -2
  128. package/dist/components/puck-block/hero-sections/sticky-expand-hero/component.js +1 -1
  129. package/dist/components/puck-block/hero-sections/sticky-expand-hero/index.d.ts +14 -6
  130. package/dist/components/puck-block/hero-sections/sticky-expand-hero/index.js +2 -2
  131. package/dist/components/puck-block/hero-sections/sticky-video-hero/component.js +2 -2
  132. package/dist/components/puck-block/hero-sections/sticky-video-hero/index.d.ts +1 -1
  133. package/dist/components/puck-block/hero-sections/tab-hero/component.js +4 -4
  134. package/dist/components/puck-block/hero-sections/tab-hero/index.d.ts +28 -44
  135. package/dist/components/puck-block/hero-sections/tab-hero/index.js +7 -2
  136. package/dist/components/puck-block/hero-sections/three-image-parallax-hero/component.js +96 -46
  137. package/dist/components/puck-block/hero-sections/three-image-parallax-hero/index.d.ts +1 -1
  138. package/dist/components/puck-block/hero-sections/vertical-gallery-hero/component.js +33 -10
  139. package/dist/components/puck-block/hero-sections/vertical-gallery-hero/index.d.ts +1 -1
  140. package/dist/components/puck-block/hero-sections/zoom-grid-hero/component.js +14 -12
  141. package/dist/components/puck-block/hero-sections/zoom-grid-hero/index.d.ts +1 -1
  142. package/dist/components/puck-block/index.d.ts +2 -0
  143. package/dist/components/puck-block/location-sections/location-1/location.d.ts +1 -1
  144. package/dist/components/puck-block/location-sections/location-2/location.d.ts +1 -1
  145. package/dist/components/puck-block/location-sections/location-3/location.d.ts +2 -2
  146. package/dist/components/puck-block/location-sections/props.d.ts +1 -1
  147. package/dist/components/puck-block/metrics-sections/center-media-stats/center-media-stats.js +1 -1
  148. package/dist/components/puck-block/metrics-sections/header-stats-row/header-stats-row.js +1 -1
  149. package/dist/components/puck-block/metrics-sections/header-stats-row/index.d.ts +1 -1
  150. package/dist/components/puck-block/metrics-sections/mixed-grid-stats/index.d.ts +1 -1
  151. package/dist/components/puck-block/metrics-sections/mixed-grid-stats/mixed-grid-stats.js +2 -2
  152. package/dist/components/puck-block/metrics-sections/split-stats/index.d.ts +1 -1
  153. package/dist/components/puck-block/metrics-sections/split-stats/split-stats.js +1 -1
  154. package/dist/components/puck-block/metrics-sections/tab-stats/index.d.ts +0 -22
  155. package/dist/components/puck-block/metrics-sections/tab-stats/index.js +1 -1
  156. package/dist/components/puck-block/metrics-sections/tab-stats/tab-stats.js +39 -26
  157. package/dist/components/puck-block/pricing-sections/pricing-comparison-table/index.d.ts +47 -0
  158. package/dist/components/puck-block/pricing-sections/pricing-comparison-table/index.js +34 -0
  159. package/dist/components/puck-block/pricing-sections/single-pricing-card/index.d.ts +0 -22
  160. package/dist/components/puck-block/pricing-sections/single-pricing-card/index.js +1 -1
  161. package/dist/components/puck-block/pricing-sections/split-pricing/component.js +3 -3
  162. package/dist/components/puck-block/pricing-sections/split-pricing/index.d.ts +28 -22
  163. package/dist/components/puck-block/pricing-sections/split-pricing/index.js +8 -1
  164. package/dist/components/puck-block/registry.generated.d.ts +13408 -0
  165. package/dist/components/puck-block/registry.generated.js +558 -0
  166. package/dist/components/puck-block/showcase-sections/compact-timeline/index.d.ts +1 -1
  167. package/dist/components/puck-block/showcase-sections/horizontal-timeline/index.d.ts +1 -1
  168. package/dist/components/puck-block/showcase-sections/single-column-timeline/index.d.ts +2 -2
  169. package/dist/components/puck-block/showcase-sections/sticky-scroll-timeline/index.d.ts +2 -2
  170. package/dist/components/puck-block/showcase-sections/tab-timeline/component.js +1 -1
  171. package/dist/components/puck-block/showcase-sections/tab-timeline/index.d.ts +1 -23
  172. package/dist/components/puck-block/showcase-sections/tab-timeline/index.js +1 -1
  173. package/dist/components/puck-block/showcase-sections/zigzag-timeline/index.d.ts +2 -2
  174. package/dist/components/puck-block/team-sections/team-carousel/index.d.ts +1 -23
  175. package/dist/components/puck-block/team-sections/team-carousel/index.js +1 -2
  176. package/dist/components/puck-block/team-sections/team-grid/index.d.ts +1 -23
  177. package/dist/components/puck-block/team-sections/team-grid/index.js +1 -2
  178. package/dist/components/puck-block/team-sections/team-inline-card/index.d.ts +1 -23
  179. package/dist/components/puck-block/team-sections/team-inline-card/index.js +1 -2
  180. package/dist/components/puck-block/team-sections/team-two-column/index.d.ts +1 -1
  181. package/dist/components/puck-block/testimonial-sections/bento-testimonial/component.js +2 -2
  182. package/dist/components/puck-block/testimonial-sections/sticky-testimonial/index.d.ts +1 -1
  183. package/dist/components/puck-block/testimonial-sections/tab-testimonial/component.js +2 -2
  184. package/dist/components/puck-block/text-sections/aside-nav-content/index.d.ts +0 -22
  185. package/dist/components/puck-block/text-sections/aside-nav-content/index.js +1 -1
  186. package/dist/components/puck-block/text-sections/blog-article/index.d.ts +0 -22
  187. package/dist/components/puck-block/text-sections/blog-article/index.js +1 -1
  188. package/dist/components/puck-block/text-sections/prose-content/component.js +1 -1
  189. package/dist/components/puck-block/text-sections/prose-sidebar/index.d.ts +1 -23
  190. package/dist/components/puck-block/text-sections/side-media-content/component.js +1 -1
  191. package/dist/components/puck-block/text-sections/sticky-text-multi-image/component.js +3 -3
  192. package/dist/components/puck-block/text-sections/text-header/index.d.ts +2 -2
  193. package/dist/components/puck-core/core/props/content.js +41 -1
  194. package/dist/components/puck-core/core/props/form.js +76 -0
  195. package/dist/components/puck-core/core/props/index.js +34 -0
  196. package/dist/components/puck-core/core/props/interactive.js +17 -0
  197. package/dist/components/puck-core/core/props/media.js +14 -5
  198. package/dist/components/puck-core/core/styles.d.ts +1 -1
  199. package/dist/components/{puck-base → puck-core}/core/styles.js +3 -1
  200. package/dist/components/{puck-base → puck-core}/core/with-editable.js +1 -1
  201. package/dist/components/puck-core/fields/action-field.js +1 -1
  202. package/dist/components/puck-core/fields/array-field.d.ts +7 -0
  203. package/dist/components/puck-core/fields/array-field.js +229 -0
  204. package/dist/components/{puck-base → puck-core}/fields/auto-field.js +11 -0
  205. package/dist/components/{puck-base → puck-core/fields}/image-upload-field.js +5 -5
  206. package/dist/components/puck-core/fields/index.d.ts +1 -0
  207. package/dist/components/{puck-base → puck-core}/fields/location-field.js +1 -1
  208. package/dist/components/{puck-base → puck-core}/fields/object-field.js +1 -1
  209. package/dist/components/puck-core/index.d.ts +1 -0
  210. package/dist/components/{puck-base → puck-core}/inline-editable.js +1 -1
  211. package/dist/index.js +121 -104
  212. package/dist/node_modules/.pnpm/@dnd-kit_accessibility@3.1.1_react@19.2.4/node_modules/@dnd-kit/accessibility/dist/accessibility.esm.js +59 -0
  213. package/dist/node_modules/.pnpm/@dnd-kit_core@6.3.1_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@dnd-kit/core/dist/core.esm.js +3093 -0
  214. package/dist/node_modules/.pnpm/@dnd-kit_sortable@10.0.0_@dnd-kit_core@6.3.1_react-dom@19.2.4_react@19.2.4__react@19.2.4__react@19.2.4/node_modules/@dnd-kit/sortable/dist/sortable.esm.js +592 -0
  215. package/dist/node_modules/.pnpm/@dnd-kit_utilities@3.2.2_react@19.2.4/node_modules/@dnd-kit/utilities/dist/utilities.esm.js +301 -0
  216. package/package.json +4 -1
  217. package/dist/components/puck-base/core/fields.d.ts +0 -827
  218. package/dist/components/puck-base/core/fields.js +0 -267
  219. package/dist/components/puck-base/core/hooks.d.ts +0 -19
  220. package/dist/components/puck-base/core/icon-catalog.d.ts +0 -14
  221. package/dist/components/puck-base/core/icon-catalog.js +0 -193
  222. package/dist/components/puck-base/core/styles.d.ts +0 -1942
  223. package/dist/components/puck-base/core/types.d.ts +0 -20
  224. package/dist/components/puck-base/core/types.js +0 -26
  225. package/dist/components/puck-base/core/utils.d.ts +0 -5
  226. package/dist/components/puck-base/core/with-editable.d.ts +0 -16
  227. package/dist/components/puck-base/error-boundary.d.ts +0 -4
  228. package/dist/components/puck-base/fields/action-field.d.ts +0 -30
  229. package/dist/components/puck-base/fields/action-field.js +0 -265
  230. package/dist/components/puck-base/fields/auto-field.d.ts +0 -2
  231. package/dist/components/puck-base/fields/color-field.d.ts +0 -6
  232. package/dist/components/puck-base/fields/index.d.ts +0 -8
  233. package/dist/components/puck-base/fields/location-field.d.ts +0 -44
  234. package/dist/components/puck-base/fields/object-field.d.ts +0 -8
  235. package/dist/components/puck-base/fields/radio-toggle-field.d.ts +0 -10
  236. package/dist/components/puck-base/fields/types.d.ts +0 -29
  237. package/dist/components/puck-base/fields/virtualized-select-field.d.ts +0 -13
  238. package/dist/components/puck-base/icon-picker-field.d.ts +0 -8
  239. package/dist/components/puck-base/icon-picker-field.js +0 -153
  240. package/dist/components/puck-base/image-upload-field.d.ts +0 -7
  241. package/dist/components/puck-base/inline-editable.d.ts +0 -14
  242. package/dist/components/puck-base/use-upload.d.ts +0 -42
  243. /package/dist/components/{puck-base → puck-core}/core/hooks.js +0 -0
  244. /package/dist/components/{puck-base → puck-core}/core/utils.js +0 -0
  245. /package/dist/components/{puck-base → puck-core}/error-boundary.js +0 -0
  246. /package/dist/components/{puck-base → puck-core}/fields/color-field.js +0 -0
  247. /package/dist/components/{puck-base → puck-core}/fields/radio-toggle-field.js +0 -0
  248. /package/dist/components/{puck-base → puck-core}/fields/virtualized-select-field.js +0 -0
  249. /package/dist/components/{puck-base → puck-core}/use-upload.js +0 -0
@@ -12,7 +12,7 @@ const CenteredNavbar = (props) => {
12
12
  const [isMobileMenuOpen, setIsMobileMenuOpen] = useState(false);
13
13
  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: "mx-auto size-full lg:grid lg:grid-cols-[0.375fr_1fr_0.375fr] lg:items-center lg:justify-between lg:gap-4", children: [
14
14
  /* @__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: [
15
- /* @__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 }) }),
15
+ /* @__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" }) }),
16
16
  /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-4 lg:hidden", children: [
17
17
  /* @__PURE__ */ jsx("div", { children: buttons == null ? void 0 : buttons.map((b, i) => /* @__PURE__ */ jsx(Button, { className: "w-full px-4 py-1", variant: b.variant, size: b.size, children: b.label }, i)) }),
18
18
  /* @__PURE__ */ jsx("button", { className: "-mr-2 flex size-12 flex-col items-center justify-center", onClick: () => setIsMobileMenuOpen((prev) => !prev), children: [0, 1, 2].map((i) => /* @__PURE__ */ jsx("span", { className: "my-[3px] h-0.5 w-6 bg-black" }, i)) })
@@ -23,7 +23,8 @@ const CenteredNavbar = (props) => {
23
23
  ] }) });
24
24
  };
25
25
  const CenteredNavbarDefaults = {
26
- logo: { url: "#", src: "https://d22po4pjz3o32e.cloudfront.net/logo-image.svg", alt: "Logo image" },
26
+ __metadata: { type: "header" },
27
+ logo: { url: "#", src: "https://file.springbrand.ai/web_assets/template-logo.svg", alt: "Logo image" },
27
28
  navLinks: [{ title: "Link One", url: "#" }, { title: "Link Two", url: "#" }, { title: "Link Three", url: "#" }, { title: "Link Four", url: "#" }],
28
29
  button: { label: "Button", size: "sm" },
29
30
  buttons: [{ label: "Button", size: "sm" }],
@@ -41,7 +41,7 @@ declare const conf: {
41
41
  readonly action: {
42
42
  type: "custom";
43
43
  label: string;
44
- render: typeof import("../../../puck-core").ActionField;
44
+ render: typeof import("../../..").ActionField;
45
45
  };
46
46
  readonly variant: {
47
47
  readonly type: "select";
@@ -7,26 +7,128 @@ import { AnimatePresence, motion } from "framer-motion";
7
7
  import { cn } from "../../../../utils/css-utils.js";
8
8
  import { SectionWrapper } from "../../../puck-core/section-wrapper.js";
9
9
  const DrawerNavbar = (props) => {
10
- const { logo, navLinks, buttons, styles } = { ...DrawerNavbarDefaults, ...props };
11
- const { className: sectionClassName, style: sectionStyle, css } = styles ?? {};
10
+ const { logo, navLinks, buttons, styles } = {
11
+ ...DrawerNavbarDefaults,
12
+ ...props
13
+ };
14
+ const {
15
+ className: sectionClassName,
16
+ style: sectionStyle,
17
+ css
18
+ } = styles ?? {};
12
19
  const [isMobileMenuOpen, setIsMobileMenuOpen] = useState(false);
13
- return /* @__PURE__ */ jsxs(SectionWrapper, { className: cn("z-[999] grid w-full grid-cols-[1fr_max-content_1fr] items-center justify-between border-b border-border-primary bg-background-primary px-[5%] md:min-h-18", sectionClassName), style: sectionStyle, css, children: [
14
- /* @__PURE__ */ jsx("button", { className: "flex size-12 flex-col 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 lg:hidden" }, i)) }),
15
- /* @__PURE__ */ jsxs(AnimatePresence, { children: [
16
- /* @__PURE__ */ jsxs(motion.div, { initial: "closed", animate: isMobileMenuOpen ? "open" : "closed", exit: "closed", variants: { closed: { x: "-100%", opacity: 1, transition: { type: "spring", duration: 0.6, bounce: 0 }, transitionEnd: { opacity: "var(--opacity-closed, 0%)", x: "var(--x-closed, -100%)" } }, open: { x: 0, opacity: 1, transition: { type: "spring", duration: 0.4, bounce: 0 } } }, className: "absolute left-0 top-0 z-50 flex h-dvh w-[90%] flex-col border-r border-border-primary bg-white px-[5%] pb-4 md:w-[80%] lg:visible lg:static lg:-ml-4 lg:flex lg:h-auto lg:w-auto lg:flex-row lg:border-none lg:px-0 lg:pb-0 lg:[--opacity-closed:100%] lg:[--x-closed:0%]", children: [
17
- /* @__PURE__ */ jsx("a", { href: logo == null ? void 0 : logo.url, className: "mb-8 mt-10 flex flex-shrink-0 lg:hidden", children: /* @__PURE__ */ jsx(CompoundImage, { src: logo == null ? void 0 : logo.src, alt: logo == null ? void 0 : logo.alt }) }),
18
- navLinks == null ? void 0 : navLinks.map((navLink, index) => /* @__PURE__ */ jsx("a", { href: navLink.url, className: "relative block py-3 text-md lg:px-4 lg:py-2 lg:text-base", children: navLink.title }, index)),
19
- /* @__PURE__ */ jsx("div", { className: "mt-6 lg:hidden", children: buttons == null ? void 0 : buttons.map((b, i) => /* @__PURE__ */ jsx(Button, { variant: b.variant, size: b.size, className: "w-full", children: b.label }, i)) })
20
- ] }),
21
- isMobileMenuOpen && /* @__PURE__ */ jsx(motion.div, { initial: { opacity: 0 }, exit: { opacity: 0 }, animate: { opacity: 0.5 }, transition: { duration: 0.2 }, className: "fixed inset-0 z-40 bg-black lg:hidden", onClick: () => setIsMobileMenuOpen(false) })
22
- ] }),
23
- /* @__PURE__ */ jsx("a", { href: logo == null ? void 0 : logo.url, className: "flex min-h-16 flex-shrink-0 items-center", children: /* @__PURE__ */ jsx(CompoundImage, { src: logo == null ? void 0 : logo.src, alt: logo == null ? void 0 : logo.alt }) }),
24
- /* @__PURE__ */ jsx("div", { className: "flex min-h-16 items-center justify-end gap-x-4", children: buttons == null ? void 0 : buttons.map((b, i) => /* @__PURE__ */ jsx(Button, { variant: b.variant, size: b.size, className: "px-4 py-1 md:px-6 md:py-2", children: b.label }, i)) })
25
- ] });
20
+ return /* @__PURE__ */ jsxs(
21
+ SectionWrapper,
22
+ {
23
+ className: cn(
24
+ "z-[999] grid w-full grid-cols-[1fr_max-content_1fr] items-center justify-between border-b border-border-primary bg-background-primary px-[5%] md:min-h-18",
25
+ sectionClassName
26
+ ),
27
+ style: sectionStyle,
28
+ css,
29
+ children: [
30
+ /* @__PURE__ */ jsx(
31
+ "button",
32
+ {
33
+ className: "flex size-12 flex-col justify-center lg:hidden",
34
+ onClick: () => setIsMobileMenuOpen((prev) => !prev),
35
+ children: [0, 1, 2].map((i) => /* @__PURE__ */ jsx("span", { className: "my-[3px] h-0.5 w-6 bg-black lg:hidden" }, i))
36
+ }
37
+ ),
38
+ /* @__PURE__ */ jsxs(AnimatePresence, { children: [
39
+ /* @__PURE__ */ jsxs(
40
+ motion.div,
41
+ {
42
+ initial: "closed",
43
+ animate: isMobileMenuOpen ? "open" : "closed",
44
+ exit: "closed",
45
+ variants: {
46
+ closed: {
47
+ x: "-100%",
48
+ opacity: 1,
49
+ transition: { type: "spring", duration: 0.6, bounce: 0 },
50
+ transitionEnd: {
51
+ opacity: "var(--opacity-closed, 0%)",
52
+ x: "var(--x-closed, -100%)"
53
+ }
54
+ },
55
+ open: {
56
+ x: 0,
57
+ opacity: 1,
58
+ transition: { type: "spring", duration: 0.4, bounce: 0 }
59
+ }
60
+ },
61
+ className: "absolute left-0 top-0 z-50 flex h-dvh w-[90%] flex-col border-r border-border-primary px-[5%] pb-4 md:w-[80%] lg:visible lg:static lg:-ml-4 lg:flex lg:h-auto lg:w-auto lg:flex-row lg:border-none lg:px-0 lg:pb-0 lg:[--opacity-closed:100%] lg:[--x-closed:0%]",
62
+ children: [
63
+ /* @__PURE__ */ jsx(
64
+ "a",
65
+ {
66
+ href: logo == null ? void 0 : logo.url,
67
+ className: "mb-8 mt-10 flex flex-shrink-0 lg:hidden",
68
+ children: /* @__PURE__ */ jsx(CompoundImage, { src: logo == null ? void 0 : logo.src, alt: logo == null ? void 0 : logo.alt, className: "h-9 w-auto" })
69
+ }
70
+ ),
71
+ navLinks == null ? void 0 : navLinks.map((navLink, index) => /* @__PURE__ */ jsx(
72
+ "a",
73
+ {
74
+ href: navLink.url,
75
+ className: "relative block py-3 text-md lg:px-4 lg:py-2 lg:text-base",
76
+ children: navLink.title
77
+ },
78
+ index
79
+ )),
80
+ /* @__PURE__ */ jsx("div", { className: "mt-6 lg:hidden", children: buttons == null ? void 0 : buttons.map((b, i) => /* @__PURE__ */ jsx(
81
+ Button,
82
+ {
83
+ variant: b.variant,
84
+ size: b.size,
85
+ className: "w-full",
86
+ children: b.label
87
+ },
88
+ i
89
+ )) })
90
+ ]
91
+ }
92
+ ),
93
+ isMobileMenuOpen && /* @__PURE__ */ jsx(
94
+ motion.div,
95
+ {
96
+ initial: { opacity: 0 },
97
+ exit: { opacity: 0 },
98
+ animate: { opacity: 0.5 },
99
+ transition: { duration: 0.2 },
100
+ className: "fixed inset-0 z-40 bg-black lg:hidden",
101
+ onClick: () => setIsMobileMenuOpen(false)
102
+ }
103
+ )
104
+ ] }),
105
+ /* @__PURE__ */ jsx("a", { href: logo == null ? void 0 : logo.url, className: "flex min-h-16 flex-shrink-0 items-center", children: /* @__PURE__ */ jsx(CompoundImage, { src: logo == null ? void 0 : logo.src, alt: logo == null ? void 0 : logo.alt, className: "h-9 w-auto" }) }),
106
+ /* @__PURE__ */ jsx("div", { className: "flex min-h-16 items-center justify-end gap-x-4", children: buttons == null ? void 0 : buttons.map((b, i) => /* @__PURE__ */ jsx(
107
+ Button,
108
+ {
109
+ variant: b.variant,
110
+ size: b.size,
111
+ className: "px-4 py-1 md:px-6 md:py-2",
112
+ children: b.label
113
+ },
114
+ i
115
+ )) })
116
+ ]
117
+ }
118
+ );
26
119
  };
27
120
  const DrawerNavbarDefaults = {
28
- logo: { url: "#", src: "https://d22po4pjz3o32e.cloudfront.net/logo-image.svg", alt: "Logo image" },
29
- navLinks: [{ title: "Link One", url: "#" }, { title: "Link Two", url: "#" }, { title: "Link Three", url: "#" }],
121
+ __metadata: { type: "header" },
122
+ logo: {
123
+ url: "#",
124
+ src: "https://file.springbrand.ai/web_assets/template-logo.svg",
125
+ alt: "Logo image"
126
+ },
127
+ navLinks: [
128
+ { title: "Link One", url: "#" },
129
+ { title: "Link Two", url: "#" },
130
+ { title: "Link Three", url: "#" }
131
+ ],
30
132
  button: { label: "Button", size: "sm" },
31
133
  buttons: [{ label: "Button", size: "sm" }],
32
134
  styles: {}
@@ -41,7 +41,7 @@ declare const conf: {
41
41
  readonly action: {
42
42
  type: "custom";
43
43
  label: string;
44
- render: typeof import("../../../puck-core").ActionField;
44
+ render: typeof import("../../..").ActionField;
45
45
  };
46
46
  readonly variant: {
47
47
  readonly type: "select";
@@ -9,35 +9,175 @@ import { RxChevronDown } from "../../../../node_modules/.pnpm/react-icons@5.6.0_
9
9
  import { cn } from "../../../../utils/css-utils.js";
10
10
  import { SectionWrapper } from "../../../puck-core/section-wrapper.js";
11
11
  const FloatingBorderedNavbar = (props) => {
12
- const { logo, navLinks, button, styles } = { ...FloatingBorderedNavbarDefaults, ...props };
13
- const { className: sectionClassName, style: sectionStyle, css, position = "relative" } = styles ?? {};
12
+ const { logo, navLinks, button, styles } = {
13
+ ...FloatingBorderedNavbarDefaults,
14
+ ...props
15
+ };
16
+ const {
17
+ className: sectionClassName,
18
+ style: sectionStyle,
19
+ css,
20
+ position = "relative"
21
+ } = styles ?? {};
14
22
  const [isMobileMenuOpen, setIsMobileMenuOpen] = useState(false);
15
23
  const isMobile = useMediaQuery("(max-width: 991px)");
16
- return /* @__PURE__ */ jsx(SectionWrapper, { className: cn(`${position === "fixed" ? "fixed" : "relative"} z-[999] mx-auto mt-5 flex w-full items-start justify-center bg-background-primary px-[5%] md:mt-6 lg:mx-[5%] lg:w-auto lg:px-0`, sectionClassName), style: sectionStyle, css, children: /* @__PURE__ */ jsxs("div", { className: "flex min-h-16 w-full items-center justify-between gap-4 border border-border-primary px-5 md:min-h-18 md:px-8 lg:w-auto", 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 }) }),
18
- /* @__PURE__ */ jsx(motion.div, { variants: { open: { height: "var(--height, 100vh)" }, close: { height: "auto" } }, initial: "close", exit: "close", animate: isMobileMenuOpen ? "open" : "close", className: "absolute left-0 right-0 top-full w-full overflow-hidden lg:static lg:left-auto lg:right-auto lg:top-auto lg:w-auto lg:overflow-visible lg:[--height:auto]", children: /* @__PURE__ */ jsx(motion.div, { variants: { open: { y: 0 }, close: { y: "var(--translate-y, -100%)" } }, animate: isMobileMenuOpen ? "open" : "close", initial: "close", exit: "close", transition: { duration: 0.3 }, className: "absolute left-0 right-0 top-0 mx-auto min-w-[200px] justify-self-center bg-background-primary px-[5%] text-center lg:static lg:inset-auto lg:mx-0 lg:px-0 lg:text-left lg:[--translate-y:0%]", children: /* @__PURE__ */ jsx("div", { className: "flex w-full flex-col border border-t-0 border-border-primary bg-background-primary p-5 md:p-8 lg:w-auto lg:flex-row lg:border-none lg:bg-none lg:p-0", children: navLinks == null ? void 0 : navLinks.map(
19
- (navLink, index) => navLink.subMenuLinks && navLink.subMenuLinks.length > 0 ? /* @__PURE__ */ jsx(SubMenu, { navLink, isMobile }, index) : /* @__PURE__ */ jsx("a", { href: navLink.url, className: "relative block py-3 text-center text-md lg:px-4 lg:py-2 lg:text-left lg:text-base", children: navLink.title }, index)
20
- ) }) }) }),
21
- /* @__PURE__ */ jsxs("div", { className: "flex items-center justify-center gap-4", children: [
22
- button && /* @__PURE__ */ jsx(CompoundButton, { label: button.label, variant: button.variant, size: button.size, action: button.action, icon: button.icon }),
23
- /* @__PURE__ */ jsx("button", { className: "-mr-2 flex size-12 flex-col items-center justify-center justify-self-end lg:hidden", onClick: () => setIsMobileMenuOpen((prev) => !prev), children: [0, 1, 2].map((i) => /* @__PURE__ */ jsx(motion.span, { className: "my-[3px] h-0.5 w-6 bg-black" }, i)) })
24
- ] })
25
- ] }) });
24
+ return /* @__PURE__ */ jsx(
25
+ SectionWrapper,
26
+ {
27
+ className: cn(
28
+ `${position === "fixed" ? "fixed" : "relative"} z-[999] mx-auto flex w-full items-start justify-center bg-background-primary px-[5%] md:mt-6 lg:mx-[5%] lg:w-auto lg:px-0`,
29
+ sectionClassName
30
+ ),
31
+ style: sectionStyle,
32
+ css,
33
+ children: /* @__PURE__ */ jsxs("div", { className: "flex min-h-16 w-full items-center justify-between gap-4 border-border-primary px-5 md:min-h-18 md:px-8 lg:w-auto", children: [
34
+ /* @__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" }) }),
35
+ /* @__PURE__ */ jsx(
36
+ motion.div,
37
+ {
38
+ variants: {
39
+ open: { height: "var(--height, 100vh)" },
40
+ close: { height: "auto" }
41
+ },
42
+ initial: "close",
43
+ exit: "close",
44
+ animate: isMobileMenuOpen ? "open" : "close",
45
+ className: "absolute left-0 right-0 top-full w-full overflow-hidden lg:static lg:left-auto lg:right-auto lg:top-auto lg:w-auto lg:overflow-visible lg:[--height:auto]",
46
+ children: /* @__PURE__ */ jsx(
47
+ motion.div,
48
+ {
49
+ variants: {
50
+ open: { y: 0 },
51
+ close: { y: "var(--translate-y, -100%)" }
52
+ },
53
+ animate: isMobileMenuOpen ? "open" : "close",
54
+ initial: "close",
55
+ exit: "close",
56
+ transition: { duration: 0.3 },
57
+ className: "absolute left-0 right-0 top-0 mx-auto min-w-[200px] justify-self-center bg-background-primary px-[5%] text-center lg:static lg:inset-auto lg:mx-0 lg:px-0 lg:text-left lg:[--translate-y:0%]",
58
+ children: /* @__PURE__ */ jsx("div", { className: "flex w-full flex-col border border-t-0 border-border-primary bg-background-primary p-5 md:p-8 lg:w-auto lg:flex-row lg:border-none lg:bg-none lg:p-0", children: navLinks == null ? void 0 : navLinks.map(
59
+ (navLink, index) => navLink.subMenuLinks && navLink.subMenuLinks.length > 0 ? /* @__PURE__ */ jsx(SubMenu, { navLink, isMobile }, index) : /* @__PURE__ */ jsx(
60
+ "a",
61
+ {
62
+ href: navLink.url,
63
+ className: "relative block py-3 text-center text-md lg:px-4 lg:py-2 lg:text-left lg:text-base",
64
+ children: navLink.title
65
+ },
66
+ index
67
+ )
68
+ ) })
69
+ }
70
+ )
71
+ }
72
+ ),
73
+ /* @__PURE__ */ jsxs("div", { className: "flex items-center justify-center gap-4", children: [
74
+ button && /* @__PURE__ */ jsx(
75
+ CompoundButton,
76
+ {
77
+ label: button.label,
78
+ variant: button.variant,
79
+ size: button.size,
80
+ action: button.action,
81
+ icon: button.icon
82
+ }
83
+ ),
84
+ /* @__PURE__ */ jsx(
85
+ "button",
86
+ {
87
+ className: "-mr-2 flex size-12 flex-col items-center justify-center justify-self-end lg:hidden",
88
+ onClick: () => setIsMobileMenuOpen((prev) => !prev),
89
+ children: [0, 1, 2].map((i) => /* @__PURE__ */ jsx(motion.span, { className: "my-[3px] h-0.5 w-6 bg-black" }, i))
90
+ }
91
+ )
92
+ ] })
93
+ ] })
94
+ }
95
+ );
26
96
  };
27
- const SubMenu = ({ navLink, isMobile }) => {
97
+ const SubMenu = ({
98
+ navLink,
99
+ isMobile
100
+ }) => {
28
101
  var _a;
29
102
  const [isDropdownOpen, setIsDropdownOpen] = useState(false);
30
- return /* @__PURE__ */ jsxs("div", { className: "relative", onMouseEnter: () => !isMobile && setIsDropdownOpen(true), onMouseLeave: () => !isMobile && setIsDropdownOpen(false), children: [
31
- /* @__PURE__ */ jsxs("button", { className: "relative flex w-full items-center justify-center gap-4 whitespace-nowrap py-3 text-center text-md lg:gap-2 lg:px-4 lg:py-2 lg:text-left lg:text-base", onClick: () => setIsDropdownOpen((prev) => !prev), children: [
32
- /* @__PURE__ */ jsx("span", { children: navLink.title }),
33
- /* @__PURE__ */ jsx(motion.span, { variants: { rotate: { rotate: 180 }, initial: { rotate: 0 } }, animate: isDropdownOpen ? "rotate" : "initial", transition: { duration: 0.3 }, children: /* @__PURE__ */ jsx(RxChevronDown, {}) })
34
- ] }),
35
- /* @__PURE__ */ jsx(AnimatePresence, { children: isDropdownOpen && /* @__PURE__ */ jsx(motion.nav, { animate: "open", initial: "close", exit: "close", variants: { open: { opacity: 1, visibility: "visible", height: "auto" }, close: { opacity: 0, visibility: "hidden", height: 0 } }, transition: { duration: 0.2 }, className: "static flex w-full min-w-full flex-col overflow-hidden whitespace-nowrap border-0 border-border-primary bg-background-primary p-0 lg:absolute lg:overflow-visible lg:border lg:p-2", children: (_a = navLink.subMenuLinks) == null ? void 0 : _a.map((link, i) => /* @__PURE__ */ jsx("a", { href: link.url, className: "px-0 py-3 text-center lg:px-4 lg:py-2 lg:text-left", children: link.title }, i)) }) })
36
- ] });
103
+ return /* @__PURE__ */ jsxs(
104
+ "div",
105
+ {
106
+ className: "relative",
107
+ onMouseEnter: () => !isMobile && setIsDropdownOpen(true),
108
+ onMouseLeave: () => !isMobile && setIsDropdownOpen(false),
109
+ children: [
110
+ /* @__PURE__ */ jsxs(
111
+ "button",
112
+ {
113
+ className: "relative flex w-full items-center justify-center gap-4 whitespace-nowrap py-3 text-center text-md lg:gap-2 lg:px-4 lg:py-2 lg:text-left lg:text-base",
114
+ onClick: () => setIsDropdownOpen((prev) => !prev),
115
+ children: [
116
+ /* @__PURE__ */ jsx("span", { children: navLink.title }),
117
+ /* @__PURE__ */ jsx(
118
+ motion.span,
119
+ {
120
+ variants: { rotate: { rotate: 180 }, initial: { rotate: 0 } },
121
+ animate: isDropdownOpen ? "rotate" : "initial",
122
+ transition: { duration: 0.3 },
123
+ children: /* @__PURE__ */ jsx(RxChevronDown, {})
124
+ }
125
+ )
126
+ ]
127
+ }
128
+ ),
129
+ /* @__PURE__ */ jsx(AnimatePresence, { children: isDropdownOpen && /* @__PURE__ */ jsx(
130
+ motion.nav,
131
+ {
132
+ animate: "open",
133
+ initial: "close",
134
+ exit: "close",
135
+ variants: {
136
+ open: {
137
+ opacity: 1,
138
+ visibility: "visible",
139
+ height: "auto"
140
+ },
141
+ close: { opacity: 0, visibility: "hidden", height: 0 }
142
+ },
143
+ transition: { duration: 0.2 },
144
+ className: "static flex w-full min-w-full flex-col overflow-hidden whitespace-nowrap border-0 border-border-primary bg-background-primary p-0 lg:absolute lg:overflow-visible lg:border lg:p-2",
145
+ children: (_a = navLink.subMenuLinks) == null ? void 0 : _a.map((link, i) => /* @__PURE__ */ jsx(
146
+ "a",
147
+ {
148
+ href: link.url,
149
+ className: "px-0 py-3 text-center lg:px-4 lg:py-2 lg:text-left",
150
+ children: link.title
151
+ },
152
+ i
153
+ ))
154
+ }
155
+ ) })
156
+ ]
157
+ }
158
+ );
37
159
  };
38
160
  const FloatingBorderedNavbarDefaults = {
39
- logo: { url: "#", src: "https://d22po4pjz3o32e.cloudfront.net/logo-image.svg", alt: "Relume placeholder logo" },
40
- navLinks: [{ url: "#", title: "Link One" }, { url: "#", title: "Link Two" }, { url: "#", title: "Link Three" }, { url: "#", title: "Link Four", subMenuLinks: [{ url: "#", title: "Link Five" }, { url: "#", title: "Link Six" }, { url: "#", title: "Link Seven" }] }],
161
+ __metadata: { type: "header" },
162
+ logo: {
163
+ url: "#",
164
+ src: "https://file.springbrand.ai/web_assets/template-logo.svg",
165
+ alt: "Placeholder logo"
166
+ },
167
+ navLinks: [
168
+ { url: "#", title: "Link One" },
169
+ { url: "#", title: "Link Two" },
170
+ { url: "#", title: "Link Three" },
171
+ {
172
+ url: "#",
173
+ title: "Link Four",
174
+ subMenuLinks: [
175
+ { url: "#", title: "Link Five" },
176
+ { url: "#", title: "Link Six" },
177
+ { url: "#", title: "Link Seven" }
178
+ ]
179
+ }
180
+ ],
41
181
  button: { label: "Button", size: "sm" },
42
182
  buttons: [],
43
183
  styles: { position: "relative" }
@@ -37,7 +37,7 @@ declare const conf: {
37
37
  readonly action: {
38
38
  type: "custom";
39
39
  label: string;
40
- render: typeof import("../../../puck-core").ActionField;
40
+ render: typeof import("../../..").ActionField;
41
41
  };
42
42
  readonly variant: {
43
43
  readonly type: "select";
@@ -7,28 +7,152 @@ import { motion, AnimatePresence } from "framer-motion";
7
7
  import { cn } from "../../../../utils/css-utils.js";
8
8
  import { SectionWrapper } from "../../../puck-core/section-wrapper.js";
9
9
  const FullscreenOverlayNavbar = (props) => {
10
- const { logo, navLinks, button, styles } = { ...FullscreenOverlayNavbarDefaults, ...props };
11
- const { className: sectionClassName, style: sectionStyle, css } = styles ?? {};
10
+ const { logo, navLinks, button, styles } = {
11
+ ...FullscreenOverlayNavbarDefaults,
12
+ ...props
13
+ };
14
+ const {
15
+ className: sectionClassName,
16
+ style: sectionStyle,
17
+ css
18
+ } = styles ?? {};
12
19
  const [isMobileMenuOpen, setIsMobileMenuOpen] = useState(false);
13
- return /* @__PURE__ */ jsxs(SectionWrapper, { className: cn("relative z-[999] flex min-h-16 w-full items-center border-b border-b-border-primary bg-background-primary px-[5%] md:min-h-18", sectionClassName), style: sectionStyle, css, children: [
14
- /* @__PURE__ */ jsxs("div", { className: "mx-auto flex size-full items-center justify-between", children: [
15
- /* @__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 }) }),
16
- /* @__PURE__ */ jsxs("div", { className: "flex items-center justify-center gap-2 lg:gap-4", children: [
17
- button && /* @__PURE__ */ jsx(Button, { variant: button.variant, size: button.size, className: "px-4 py-1 md:px-6 md:py-2", children: button.label }),
18
- /* @__PURE__ */ jsx("button", { className: "-mr-2 flex size-12 flex-col items-center justify-center justify-self-end lg:mr-0", onClick: () => setIsMobileMenuOpen((prev) => !prev), children: /* @__PURE__ */ jsxs("span", { className: "relative flex size-6 flex-col items-center justify-center", children: [
19
- /* @__PURE__ */ jsx(motion.span, { className: "absolute top-[3px] h-0.5 w-full bg-black", animate: isMobileMenuOpen ? "open" : "close", variants: { open: { width: 0, transition: { duration: 0.1 } }, close: { width: "100%", transition: { duration: 0.1, delay: 0.3 } } } }),
20
- /* @__PURE__ */ jsx(motion.span, { className: "absolute h-0.5 w-full bg-black", animate: isMobileMenuOpen ? "open" : "close", variants: { open: { rotate: 135, transition: { duration: 0.3, delay: 0.1 } }, close: { rotate: 0, transition: { duration: 0.3 } } } }),
21
- /* @__PURE__ */ jsx(motion.span, { className: "absolute h-0.5 w-full bg-black", animate: isMobileMenuOpen ? "open" : "close", variants: { open: { rotate: 45, transition: { duration: 0.3, delay: 0.1 } }, close: { rotate: 0, transition: { duration: 0.3 } } } }),
22
- /* @__PURE__ */ jsx(motion.span, { className: "absolute bottom-[3px] h-0.5 w-full bg-black", animate: isMobileMenuOpen ? "open" : "close", variants: { open: { width: 0, transition: { duration: 0.1 } }, close: { width: "100%", transition: { duration: 0.1, delay: 0.3 } } } })
23
- ] }) })
24
- ] })
25
- ] }),
26
- /* @__PURE__ */ jsx(AnimatePresence, { children: isMobileMenuOpen && /* @__PURE__ */ jsx(motion.div, { variants: { open: { height: "100dvh" }, close: { height: "auto" } }, animate: "open", initial: "close", exit: "close", className: "absolute left-0 right-0 top-full w-full overflow-hidden", children: /* @__PURE__ */ jsx(motion.div, { variants: { open: { y: 0 }, close: { y: "-100%" } }, animate: "open", initial: "close", exit: "close", transition: { duration: 0.5 }, className: "absolute left-0 right-0 top-0 block h-dvh overflow-auto bg-background-primary px-[5%]", children: /* @__PURE__ */ jsx("div", { className: "-mt-18 flex h-full flex-col justify-center", children: navLinks == null ? void 0 : navLinks.map((navLink, index) => /* @__PURE__ */ jsx("a", { href: navLink.url, className: "static block py-3 text-xl leading-[30px] lg:my-2 lg:py-2 lg:text-2xl lg:leading-[1.5]", children: navLink.title }, index)) }) }) }) })
27
- ] });
20
+ return /* @__PURE__ */ jsxs(
21
+ SectionWrapper,
22
+ {
23
+ className: cn(
24
+ "relative z-[999] flex min-h-16 w-full items-center border-b border-b-border-primary bg-background-primary px-[5%] md:min-h-18",
25
+ sectionClassName
26
+ ),
27
+ style: sectionStyle,
28
+ css,
29
+ children: [
30
+ /* @__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__ */ jsxs("div", { className: "flex items-center justify-center gap-2 lg:gap-4", children: [
33
+ button && /* @__PURE__ */ jsx(
34
+ Button,
35
+ {
36
+ variant: button.variant,
37
+ size: button.size,
38
+ className: "px-4 py-1 md:px-6 md:py-2",
39
+ children: button.label
40
+ }
41
+ ),
42
+ /* @__PURE__ */ jsx(
43
+ "button",
44
+ {
45
+ className: "-mr-2 flex size-12 flex-col items-center justify-center justify-self-end lg:mr-0",
46
+ onClick: () => setIsMobileMenuOpen((prev) => !prev),
47
+ children: /* @__PURE__ */ jsxs("span", { className: "relative flex size-6 flex-col items-center justify-center", children: [
48
+ /* @__PURE__ */ jsx(
49
+ motion.span,
50
+ {
51
+ className: "absolute top-[3px] h-0.5 w-full bg-black",
52
+ animate: isMobileMenuOpen ? "open" : "close",
53
+ variants: {
54
+ open: { width: 0, transition: { duration: 0.1 } },
55
+ close: {
56
+ width: "100%",
57
+ transition: { duration: 0.1, delay: 0.3 }
58
+ }
59
+ }
60
+ }
61
+ ),
62
+ /* @__PURE__ */ jsx(
63
+ motion.span,
64
+ {
65
+ className: "absolute h-0.5 w-full bg-black",
66
+ animate: isMobileMenuOpen ? "open" : "close",
67
+ variants: {
68
+ open: {
69
+ rotate: 135,
70
+ transition: { duration: 0.3, delay: 0.1 }
71
+ },
72
+ close: { rotate: 0, transition: { duration: 0.3 } }
73
+ }
74
+ }
75
+ ),
76
+ /* @__PURE__ */ jsx(
77
+ motion.span,
78
+ {
79
+ className: "absolute h-0.5 w-full bg-black",
80
+ animate: isMobileMenuOpen ? "open" : "close",
81
+ variants: {
82
+ open: {
83
+ rotate: 45,
84
+ transition: { duration: 0.3, delay: 0.1 }
85
+ },
86
+ close: { rotate: 0, transition: { duration: 0.3 } }
87
+ }
88
+ }
89
+ ),
90
+ /* @__PURE__ */ jsx(
91
+ motion.span,
92
+ {
93
+ className: "absolute bottom-[3px] h-0.5 w-full bg-black",
94
+ animate: isMobileMenuOpen ? "open" : "close",
95
+ variants: {
96
+ open: { width: 0, transition: { duration: 0.1 } },
97
+ close: {
98
+ width: "100%",
99
+ transition: { duration: 0.1, delay: 0.3 }
100
+ }
101
+ }
102
+ }
103
+ )
104
+ ] })
105
+ }
106
+ )
107
+ ] })
108
+ ] }),
109
+ /* @__PURE__ */ jsx(AnimatePresence, { children: isMobileMenuOpen && /* @__PURE__ */ jsx(
110
+ motion.div,
111
+ {
112
+ variants: { open: { height: "100dvh" }, close: { height: "auto" } },
113
+ animate: "open",
114
+ initial: "close",
115
+ exit: "close",
116
+ className: "absolute left-0 right-0 top-full w-full overflow-hidden",
117
+ children: /* @__PURE__ */ jsx(
118
+ motion.div,
119
+ {
120
+ variants: { open: { y: 0 }, close: { y: "-100%" } },
121
+ animate: "open",
122
+ initial: "close",
123
+ exit: "close",
124
+ transition: { duration: 0.5 },
125
+ 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
+ )) })
135
+ }
136
+ )
137
+ }
138
+ ) })
139
+ ]
140
+ }
141
+ );
28
142
  };
29
143
  const FullscreenOverlayNavbarDefaults = {
30
- logo: { url: "#", src: "https://d22po4pjz3o32e.cloudfront.net/logo-image.svg", alt: "Relume placeholder logo" },
31
- navLinks: [{ url: "#", title: "Link One" }, { url: "#", title: "Link Two" }, { url: "#", title: "Link Three" }, { url: "#", title: "Link Four" }],
144
+ __metadata: { type: "header" },
145
+ logo: {
146
+ url: "#",
147
+ src: "https://file.springbrand.ai/web_assets/template-logo.svg",
148
+ alt: "Placeholder logo"
149
+ },
150
+ navLinks: [
151
+ { url: "#", title: "Link One" },
152
+ { url: "#", title: "Link Two" },
153
+ { url: "#", title: "Link Three" },
154
+ { url: "#", title: "Link Four" }
155
+ ],
32
156
  button: { label: "Button", size: "sm" },
33
157
  buttons: [],
34
158
  styles: { overlayContent: "linksOnly" }
@@ -37,7 +37,7 @@ declare const conf: {
37
37
  readonly action: {
38
38
  type: "custom";
39
39
  label: string;
40
- render: typeof import("../../../puck-core").ActionField;
40
+ render: typeof import("../../..").ActionField;
41
41
  };
42
42
  readonly variant: {
43
43
  readonly type: "select";
@@ -41,7 +41,7 @@ declare const conf: {
41
41
  readonly action: {
42
42
  type: "custom";
43
43
  label: string;
44
- render: typeof import("../../../puck-core").ActionField;
44
+ render: typeof import("../../..").ActionField;
45
45
  };
46
46
  readonly variant: {
47
47
  readonly type: "select";
@@ -14,7 +14,7 @@ const MegaMenuNavbar = (props) => {
14
14
  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
15
  /* @__PURE__ */ jsxs("div", { className: "lg:flex", children: [
16
16
  /* @__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 }) }),
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
18
  /* @__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
19
  ] }),
20
20
  /* @__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: [
@@ -26,7 +26,8 @@ const MegaMenuNavbar = (props) => {
26
26
  ] }) });
27
27
  };
28
28
  const MegaMenuNavbarDefaults = {
29
- logo: { url: "#", src: "https://d22po4pjz3o32e.cloudfront.net/logo-image.svg", alt: "Logo image" },
29
+ __metadata: { type: "header" },
30
+ logo: { url: "#", src: "https://file.springbrand.ai/web_assets/template-logo.svg", alt: "Logo image" },
30
31
  navLinks: [{ title: "Link One", url: "#" }, { title: "Link Two", url: "#" }, { title: "Link Three", url: "#" }, { title: "Link Four", url: "#" }],
31
32
  button: { label: "Button", size: "sm" },
32
33
  buttons: [{ label: "Button", variant: "secondary", size: "sm" }, { label: "Button", size: "sm" }],
@@ -29,6 +29,9 @@ export interface HeaderSectionBaseProps {
29
29
  button: BaseButton;
30
30
  buttons: BaseButton[];
31
31
  styles: HeaderSectionStyles;
32
+ __metadata?: {
33
+ type: "header";
34
+ };
32
35
  }
33
36
  export declare const headerStyleFields: {
34
37
  readonly dropdownType: {