dune-react 0.0.31 → 0.0.33
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.
- package/dist/components/puck-base/article-card.d.ts +2 -2
- package/dist/components/puck-base/article-card.js +2 -2
- package/dist/components/puck-base/card.d.ts +2 -2
- package/dist/components/puck-base/card.js +2 -2
- package/dist/components/puck-base/index.d.ts +2 -1
- package/dist/components/puck-base/media.d.ts +12 -0
- package/dist/components/puck-base/media.js +576 -0
- package/dist/components/puck-base/social-links.d.ts +7 -0
- package/dist/components/puck-base/social-links.js +23 -0
- package/dist/components/puck-block/banner-sections/css-marquee-banner/css-marquee-banner.js +6 -6
- package/dist/components/puck-block/banner-sections/css-marquee-banner/index.d.ts +1 -1
- package/dist/components/puck-block/banner-sections/css-marquee-banner/index.js +2 -2
- package/dist/components/puck-block/banner-sections/dismissible-banner/index.d.ts +42 -0
- package/dist/components/puck-block/banner-sections/dual-row-marquee/dual-row-marquee.js +10 -10
- package/dist/components/puck-block/banner-sections/dual-row-marquee/index.d.ts +2 -2
- package/dist/components/puck-block/banner-sections/dual-row-marquee/index.js +3 -3
- package/dist/components/puck-block/banner-sections/props.d.ts +9 -12
- package/dist/components/puck-block/contact-sections/centered-form/centered-form.js +1 -5
- package/dist/components/puck-block/contact-sections/contact-cards-grid/contact-cards-grid.js +1 -5
- package/dist/components/puck-block/contact-sections/contact-modal/contact-modal.js +1 -5
- package/dist/components/puck-block/contact-sections/form-with-media/form-with-media.js +4 -8
- package/dist/components/puck-block/contact-sections/form-with-media/index.d.ts +1 -1
- package/dist/components/puck-block/contact-sections/form-with-media/index.js +2 -2
- package/dist/components/puck-block/contact-sections/header-form-cards/header-form-cards.js +1 -5
- package/dist/components/puck-block/contact-sections/header-info-fullwidth/header-info-fullwidth.js +4 -8
- package/dist/components/puck-block/contact-sections/header-info-fullwidth/index.d.ts +1 -1
- package/dist/components/puck-block/contact-sections/header-info-fullwidth/index.js +2 -2
- package/dist/components/puck-block/contact-sections/info-cards-media/index.d.ts +1 -1
- package/dist/components/puck-block/contact-sections/info-cards-media/index.js +2 -2
- package/dist/components/puck-block/contact-sections/info-cards-media/info-cards-media.js +4 -8
- package/dist/components/puck-block/contact-sections/location-cards-grid/index.d.ts +1 -1
- package/dist/components/puck-block/contact-sections/location-cards-grid/index.js +2 -2
- package/dist/components/puck-block/contact-sections/location-cards-grid/location-cards-grid.js +10 -14
- package/dist/components/puck-block/contact-sections/props.d.ts +5 -16
- package/dist/components/puck-block/contact-sections/split-info-form/index.d.ts +1 -1
- package/dist/components/puck-block/contact-sections/split-info-form/split-info-form.d.ts +7 -2
- package/dist/components/puck-block/contact-sections/split-info-form/split-info-form.js +1 -2
- package/dist/components/puck-block/contact-sections/tab-locations/index.d.ts +57 -8
- package/dist/components/puck-block/contact-sections/tab-locations/index.js +7 -7
- package/dist/components/puck-block/contact-sections/tab-locations/tab-locations.js +40 -47
- package/dist/components/puck-block/cta-sections/feature-card-cta/feature-card-cta.d.ts +2 -2
- package/dist/components/puck-block/cta-sections/feature-card-cta/feature-card-cta.js +2 -2
- package/dist/components/puck-block/cta-sections/feature-card-cta/index.js +2 -2
- package/dist/components/puck-block/cta-sections/mouse-track-cta/index.d.ts +1 -1
- package/dist/components/puck-block/cta-sections/mouse-track-cta/index.js +2 -2
- package/dist/components/puck-block/cta-sections/mouse-track-cta/mouse-track-cta.d.ts +2 -2
- package/dist/components/puck-block/cta-sections/mouse-track-cta/mouse-track-cta.js +6 -6
- package/dist/components/puck-block/cta-sections/props.d.ts +3 -3
- package/dist/components/puck-block/cta-sections/side-media-cta/index.d.ts +1 -1
- package/dist/components/puck-block/cta-sections/side-media-cta/index.js +2 -2
- package/dist/components/puck-block/cta-sections/side-media-cta/side-media-cta.js +4 -4
- package/dist/components/puck-block/cta-sections/text-block-cta/index.d.ts +2 -2
- package/dist/components/puck-block/cta-sections/text-block-cta/index.js +3 -3
- package/dist/components/puck-block/cta-sections/text-block-cta/text-block-cta.d.ts +3 -3
- package/dist/components/puck-block/cta-sections/text-block-cta/text-block-cta.js +10 -10
- package/dist/components/puck-block/faq-sections/icon-card-faq/icon-card-faq.d.ts +2 -2
- package/dist/components/puck-block/faq-sections/icon-card-faq/icon-card-faq.js +2 -2
- package/dist/components/puck-block/faq-sections/icon-card-faq/index.js +2 -2
- package/dist/components/puck-block/faq-sections/props.d.ts +3 -3
- package/dist/components/puck-block/feature-sections/feature-cards-grid/component.d.ts +2 -2
- package/dist/components/puck-block/feature-sections/feature-cards-grid/component.js +6 -6
- package/dist/components/puck-block/feature-sections/feature-cards-grid/index.d.ts +1 -1
- package/dist/components/puck-block/feature-sections/feature-cards-grid/index.js +3 -3
- package/dist/components/puck-block/feature-sections/feature-list-split/component.d.ts +2 -2
- package/dist/components/puck-block/feature-sections/feature-list-split/component.js +6 -6
- package/dist/components/puck-block/feature-sections/feature-list-split/index.d.ts +1 -1
- package/dist/components/puck-block/feature-sections/feature-list-split/index.js +3 -3
- package/dist/components/puck-block/feature-sections/props.d.ts +3 -3
- package/dist/components/puck-block/feature-sections/tab-feature/component.d.ts +2 -2
- package/dist/components/puck-block/feature-sections/tab-feature/component.js +12 -12
- package/dist/components/puck-block/feature-sections/tab-feature/index.d.ts +1 -1
- package/dist/components/puck-block/feature-sections/tab-feature/index.js +2 -2
- package/dist/components/puck-block/feature-sections/text-media-split/component.js +5 -5
- package/dist/components/puck-block/feature-sections/text-media-split/index.d.ts +1 -1
- package/dist/components/puck-block/feature-sections/text-media-split/index.js +2 -2
- package/dist/components/puck-block/feature-sections/text-only-section/component.d.ts +2 -2
- package/dist/components/puck-block/feature-sections/text-only-section/component.js +2 -2
- package/dist/components/puck-block/feature-sections/text-only-section/index.d.ts +1 -1
- package/dist/components/puck-block/feature-sections/text-only-section/index.js +2 -2
- package/dist/components/puck-block/footer-sections/centered-minimal-footer/centered-minimal-footer.js +9 -9
- package/dist/components/puck-block/footer-sections/centered-minimal-footer/index.d.ts +11 -0
- package/dist/components/puck-block/footer-sections/centered-minimal-footer/index.js +3 -2
- package/dist/components/puck-block/footer-sections/compact-newsletter-footer/index.d.ts +11 -0
- package/dist/components/puck-block/footer-sections/contact-links-footer/contact-links-footer.d.ts +7 -2
- package/dist/components/puck-block/footer-sections/contact-links-footer/contact-links-footer.js +9 -9
- package/dist/components/puck-block/footer-sections/contact-links-footer/index.d.ts +61 -10
- package/dist/components/puck-block/footer-sections/contact-links-footer/index.js +3 -2
- package/dist/components/puck-block/footer-sections/cta-links-footer/cta-links-footer.js +9 -9
- package/dist/components/puck-block/footer-sections/cta-links-footer/index.d.ts +61 -10
- package/dist/components/puck-block/footer-sections/cta-links-footer/index.js +3 -3
- package/dist/components/puck-block/footer-sections/links-newsletter-footer/index.d.ts +61 -10
- package/dist/components/puck-block/footer-sections/newsletter-links-footer/index.d.ts +11 -0
- package/dist/components/puck-block/footer-sections/newsletter-top-links-footer/index.d.ts +61 -10
- package/dist/components/puck-block/footer-sections/props.d.ts +17 -10
- package/dist/components/puck-block/footer-sections/props.js +8 -0
- package/dist/components/puck-block/gallery-sections/asymmetric-grid/asymmetric-grid.js +7 -7
- package/dist/components/puck-block/gallery-sections/asymmetric-grid/index.d.ts +1 -1
- package/dist/components/puck-block/gallery-sections/asymmetric-grid/index.js +2 -2
- package/dist/components/puck-block/gallery-sections/fullscreen-portfolio/fullscreen-portfolio.js +12 -12
- package/dist/components/puck-block/gallery-sections/fullscreen-portfolio/index.d.ts +1 -1
- package/dist/components/puck-block/gallery-sections/fullscreen-portfolio/index.js +2 -2
- package/dist/components/puck-block/gallery-sections/image-carousel/image-carousel.js +12 -12
- package/dist/components/puck-block/gallery-sections/image-carousel/index.d.ts +1 -1
- package/dist/components/puck-block/gallery-sections/image-carousel/index.js +2 -2
- package/dist/components/puck-block/gallery-sections/interactive-portfolio/index.d.ts +1 -1
- package/dist/components/puck-block/gallery-sections/interactive-portfolio/index.js +2 -2
- package/dist/components/puck-block/gallery-sections/interactive-portfolio/interactive-portfolio.js +14 -14
- package/dist/components/puck-block/gallery-sections/masonry-grid/index.d.ts +1 -1
- package/dist/components/puck-block/gallery-sections/masonry-grid/index.js +2 -2
- package/dist/components/puck-block/gallery-sections/masonry-grid/masonry-grid.js +7 -7
- package/dist/components/puck-block/gallery-sections/portfolio-cards/index.d.ts +1 -1
- package/dist/components/puck-block/gallery-sections/portfolio-cards/index.js +2 -2
- package/dist/components/puck-block/gallery-sections/portfolio-cards/portfolio-cards.js +6 -6
- package/dist/components/puck-block/gallery-sections/portfolio-divider/index.d.ts +1 -1
- package/dist/components/puck-block/gallery-sections/portfolio-divider/index.js +2 -2
- package/dist/components/puck-block/gallery-sections/portfolio-divider/portfolio-divider.js +9 -9
- package/dist/components/puck-block/gallery-sections/props.d.ts +8 -8
- package/dist/components/puck-block/gallery-sections/scroll-parallax/index.d.ts +1 -1
- package/dist/components/puck-block/gallery-sections/scroll-parallax/index.js +2 -2
- package/dist/components/puck-block/gallery-sections/scroll-parallax/scroll-parallax.js +11 -11
- package/dist/components/puck-block/gallery-sections/scroll-parallax-portfolio/index.d.ts +1 -1
- package/dist/components/puck-block/gallery-sections/scroll-parallax-portfolio/index.js +5 -5
- package/dist/components/puck-block/gallery-sections/scroll-parallax-portfolio/scroll-parallax-portfolio.js +26 -26
- package/dist/components/puck-block/gallery-sections/split-carousel/index.d.ts +1 -1
- package/dist/components/puck-block/gallery-sections/split-carousel/index.js +2 -2
- package/dist/components/puck-block/gallery-sections/split-carousel/split-carousel.js +6 -6
- package/dist/components/puck-block/gallery-sections/static-grid/index.d.ts +1 -1
- package/dist/components/puck-block/gallery-sections/static-grid/index.js +2 -2
- package/dist/components/puck-block/gallery-sections/static-grid/static-grid.js +7 -7
- package/dist/components/puck-block/header-sections/centered-navbar/centered-navbar.js +31 -24
- package/dist/components/puck-block/header-sections/centered-navbar/index.d.ts +92 -0
- package/dist/components/puck-block/header-sections/centered-navbar/index.js +9 -4
- package/dist/components/puck-block/header-sections/drawer-navbar/drawer-navbar.js +32 -25
- package/dist/components/puck-block/header-sections/drawer-navbar/index.d.ts +92 -0
- package/dist/components/puck-block/header-sections/drawer-navbar/index.js +5 -3
- package/dist/components/puck-block/header-sections/floating-bordered-navbar/floating-bordered-navbar.js +27 -22
- package/dist/components/puck-block/header-sections/floating-bordered-navbar/index.d.ts +91 -3
- package/dist/components/puck-block/header-sections/floating-bordered-navbar/index.js +3 -3
- package/dist/components/puck-block/header-sections/fullscreen-overlay-navbar/fullscreen-overlay-navbar.js +23 -18
- package/dist/components/puck-block/header-sections/fullscreen-overlay-navbar/index.d.ts +91 -3
- package/dist/components/puck-block/header-sections/fullscreen-overlay-navbar/index.js +3 -3
- package/dist/components/puck-block/header-sections/mega-menu-navbar/index.d.ts +64 -0
- package/dist/components/puck-block/header-sections/mega-menu-navbar/index.js +3 -3
- package/dist/components/puck-block/header-sections/mega-menu-navbar/mega-menu-navbar.js +13 -6
- package/dist/components/puck-block/header-sections/props.d.ts +17 -5
- package/dist/components/puck-block/header-sections/props.js +8 -0
- package/dist/components/puck-block/header-sections/standard-navbar/index.d.ts +64 -0
- package/dist/components/puck-block/header-sections/standard-navbar/index.js +6 -4
- package/dist/components/puck-block/header-sections/standard-navbar/standard-navbar.js +9 -5
- package/dist/components/puck-block/hero-sections/carousel-hero/component.js +8 -8
- package/dist/components/puck-block/hero-sections/carousel-hero/index.d.ts +1 -1
- package/dist/components/puck-block/hero-sections/carousel-hero/index.js +2 -2
- package/dist/components/puck-block/hero-sections/column-scroll-hero/component.d.ts +3 -3
- package/dist/components/puck-block/hero-sections/column-scroll-hero/component.js +14 -14
- package/dist/components/puck-block/hero-sections/column-scroll-hero/index.d.ts +2 -2
- package/dist/components/puck-block/hero-sections/column-scroll-hero/index.js +3 -3
- package/dist/components/puck-block/hero-sections/dual-marquee-hero/component.js +11 -11
- package/dist/components/puck-block/hero-sections/dual-marquee-hero/index.d.ts +1 -1
- package/dist/components/puck-block/hero-sections/dual-marquee-hero/index.js +2 -2
- package/dist/components/puck-block/hero-sections/fullscreen-hero/index.d.ts +1 -1
- package/dist/components/puck-block/hero-sections/fullscreen-video-hero/component.js +5 -5
- package/dist/components/puck-block/hero-sections/fullscreen-video-hero/index.d.ts +1 -1
- package/dist/components/puck-block/hero-sections/fullscreen-video-hero/index.js +2 -2
- package/dist/components/puck-block/hero-sections/grid-expand-hero/component.js +16 -16
- package/dist/components/puck-block/hero-sections/grid-expand-hero/index.d.ts +1 -1
- package/dist/components/puck-block/hero-sections/grid-expand-hero/index.js +2 -2
- package/dist/components/puck-block/hero-sections/horizontal-marquee-hero/component.js +11 -11
- package/dist/components/puck-block/hero-sections/horizontal-marquee-hero/index.d.ts +1 -1
- package/dist/components/puck-block/hero-sections/horizontal-marquee-hero/index.js +2 -2
- package/dist/components/puck-block/hero-sections/media-text-hero/index.d.ts +1 -1
- package/dist/components/puck-block/hero-sections/mouse-track-hero/component.d.ts +3 -3
- package/dist/components/puck-block/hero-sections/mouse-track-hero/component.js +6 -6
- package/dist/components/puck-block/hero-sections/mouse-track-hero/index.js +3 -3
- package/dist/components/puck-block/hero-sections/multi-image-grid-hero/index.d.ts +1 -1
- package/dist/components/puck-block/hero-sections/multi-image-grid-hero/index.js +2 -2
- package/dist/components/puck-block/hero-sections/multi-image-grid-hero/multi-image-grid-hero.js +7 -7
- package/dist/components/puck-block/hero-sections/overlapping-image-hero/index.js +4 -4
- package/dist/components/puck-block/hero-sections/overlapping-image-hero/overlapping-image-hero.d.ts +4 -4
- package/dist/components/puck-block/hero-sections/overlapping-image-hero/overlapping-image-hero.js +16 -16
- package/dist/components/puck-block/hero-sections/parallax-images-hero/component.js +12 -12
- package/dist/components/puck-block/hero-sections/parallax-images-hero/index.d.ts +1 -1
- package/dist/components/puck-block/hero-sections/parallax-images-hero/index.js +2 -2
- package/dist/components/puck-block/hero-sections/props.d.ts +3 -3
- package/dist/components/puck-block/hero-sections/scatter-parallax-hero/component.js +5 -5
- package/dist/components/puck-block/hero-sections/scatter-parallax-hero/index.d.ts +1 -1
- package/dist/components/puck-block/hero-sections/scatter-parallax-hero/index.js +2 -2
- package/dist/components/puck-block/hero-sections/scroll-expand-video-hero/component.js +5 -5
- package/dist/components/puck-block/hero-sections/scroll-expand-video-hero/index.d.ts +1 -1
- package/dist/components/puck-block/hero-sections/scroll-expand-video-hero/index.js +2 -2
- package/dist/components/puck-block/hero-sections/scroll-zoom-hero/component.js +9 -9
- package/dist/components/puck-block/hero-sections/scroll-zoom-hero/index.d.ts +1 -1
- package/dist/components/puck-block/hero-sections/scroll-zoom-hero/index.js +2 -2
- package/dist/components/puck-block/hero-sections/split-hero/index.d.ts +1 -1
- package/dist/components/puck-block/hero-sections/stacked-hero/index.d.ts +1 -1
- package/dist/components/puck-block/hero-sections/sticky-expand-hero/component.js +12 -12
- package/dist/components/puck-block/hero-sections/sticky-expand-hero/index.d.ts +1 -1
- package/dist/components/puck-block/hero-sections/sticky-expand-hero/index.js +2 -2
- package/dist/components/puck-block/hero-sections/sticky-video-hero/component.d.ts +2 -2
- package/dist/components/puck-block/hero-sections/sticky-video-hero/component.js +13 -13
- package/dist/components/puck-block/hero-sections/sticky-video-hero/index.d.ts +1 -1
- package/dist/components/puck-block/hero-sections/sticky-video-hero/index.js +3 -3
- package/dist/components/puck-block/hero-sections/tab-hero/component.d.ts +2 -2
- package/dist/components/puck-block/hero-sections/tab-hero/component.js +7 -6
- package/dist/components/puck-block/hero-sections/tab-hero/index.d.ts +4 -7
- package/dist/components/puck-block/hero-sections/tab-hero/index.js +2 -7
- package/dist/components/puck-block/hero-sections/three-image-parallax-hero/component.d.ts +4 -4
- package/dist/components/puck-block/hero-sections/three-image-parallax-hero/component.js +4 -4
- package/dist/components/puck-block/hero-sections/three-image-parallax-hero/index.js +4 -4
- package/dist/components/puck-block/hero-sections/vertical-gallery-hero/component.js +11 -11
- package/dist/components/puck-block/hero-sections/vertical-gallery-hero/index.d.ts +1 -1
- package/dist/components/puck-block/hero-sections/vertical-gallery-hero/index.js +2 -2
- package/dist/components/puck-block/hero-sections/zoom-grid-hero/component.js +7 -7
- package/dist/components/puck-block/hero-sections/zoom-grid-hero/index.d.ts +1 -1
- package/dist/components/puck-block/hero-sections/zoom-grid-hero/index.js +2 -2
- package/dist/components/puck-block/metrics-sections/center-media-stats/center-media-stats.js +5 -5
- package/dist/components/puck-block/metrics-sections/center-media-stats/index.d.ts +1 -1
- package/dist/components/puck-block/metrics-sections/center-media-stats/index.js +2 -2
- package/dist/components/puck-block/metrics-sections/header-stats-row/header-stats-row.js +4 -4
- package/dist/components/puck-block/metrics-sections/header-stats-row/index.d.ts +1 -1
- package/dist/components/puck-block/metrics-sections/header-stats-row/index.js +2 -2
- package/dist/components/puck-block/metrics-sections/mixed-grid-stats/index.d.ts +2 -2
- package/dist/components/puck-block/metrics-sections/mixed-grid-stats/index.js +3 -3
- package/dist/components/puck-block/metrics-sections/mixed-grid-stats/mixed-grid-stats.d.ts +2 -2
- package/dist/components/puck-block/metrics-sections/mixed-grid-stats/mixed-grid-stats.js +7 -7
- package/dist/components/puck-block/metrics-sections/props.d.ts +6 -6
- package/dist/components/puck-block/metrics-sections/split-stats/index.d.ts +1 -1
- package/dist/components/puck-block/metrics-sections/split-stats/index.js +2 -2
- package/dist/components/puck-block/metrics-sections/split-stats/split-stats.js +4 -4
- package/dist/components/puck-block/metrics-sections/tab-stats/index.d.ts +2 -2
- package/dist/components/puck-block/metrics-sections/tab-stats/index.js +3 -3
- package/dist/components/puck-block/metrics-sections/tab-stats/tab-stats.d.ts +3 -3
- package/dist/components/puck-block/metrics-sections/tab-stats/tab-stats.js +11 -11
- package/dist/components/puck-block/pricing-sections/pricing-comparison-table/component.js +13 -0
- package/dist/components/puck-block/pricing-sections/props.d.ts +2 -2
- package/dist/components/puck-block/pricing-sections/single-pricing-card/component.d.ts +2 -2
- package/dist/components/puck-block/pricing-sections/single-pricing-card/component.js +3 -3
- package/dist/components/puck-block/pricing-sections/split-pricing/component.d.ts +2 -2
- package/dist/components/puck-block/pricing-sections/split-pricing/component.js +4 -3
- package/dist/components/puck-block/pricing-sections/tab-pricing-grid/component.d.ts +2 -2
- package/dist/components/puck-block/pricing-sections/tab-single-pricing/component.d.ts +2 -2
- package/dist/components/puck-block/registry.generated.d.ts +796 -124
- package/dist/components/puck-block/showcase-sections/compact-timeline/component.d.ts +2 -2
- package/dist/components/puck-block/showcase-sections/compact-timeline/component.js +3 -3
- package/dist/components/puck-block/showcase-sections/compact-timeline/index.d.ts +2 -2
- package/dist/components/puck-block/showcase-sections/compact-timeline/index.js +2 -2
- package/dist/components/puck-block/showcase-sections/horizontal-timeline/component.d.ts +2 -2
- package/dist/components/puck-block/showcase-sections/horizontal-timeline/component.js +3 -3
- package/dist/components/puck-block/showcase-sections/horizontal-timeline/index.d.ts +2 -2
- package/dist/components/puck-block/showcase-sections/horizontal-timeline/index.js +2 -2
- package/dist/components/puck-block/showcase-sections/props.d.ts +2 -2
- package/dist/components/puck-block/showcase-sections/single-column-timeline/component.d.ts +2 -2
- package/dist/components/puck-block/showcase-sections/single-column-timeline/component.js +3 -3
- package/dist/components/puck-block/showcase-sections/single-column-timeline/index.d.ts +2 -2
- package/dist/components/puck-block/showcase-sections/single-column-timeline/index.js +2 -2
- package/dist/components/puck-block/showcase-sections/sticky-scroll-timeline/component.d.ts +2 -2
- package/dist/components/puck-block/showcase-sections/sticky-scroll-timeline/component.js +3 -3
- package/dist/components/puck-block/showcase-sections/sticky-scroll-timeline/index.d.ts +2 -2
- package/dist/components/puck-block/showcase-sections/sticky-scroll-timeline/index.js +2 -2
- package/dist/components/puck-block/showcase-sections/tab-timeline/component.d.ts +2 -2
- package/dist/components/puck-block/showcase-sections/tab-timeline/component.js +8 -8
- package/dist/components/puck-block/showcase-sections/tab-timeline/index.d.ts +2 -2
- package/dist/components/puck-block/showcase-sections/tab-timeline/index.js +2 -2
- package/dist/components/puck-block/showcase-sections/zigzag-timeline/component.d.ts +2 -2
- package/dist/components/puck-block/showcase-sections/zigzag-timeline/component.js +3 -3
- package/dist/components/puck-block/showcase-sections/zigzag-timeline/index.d.ts +2 -2
- package/dist/components/puck-block/showcase-sections/zigzag-timeline/index.js +2 -2
- package/dist/components/puck-block/team-sections/props.d.ts +2 -3
- package/dist/components/puck-block/team-sections/team-carousel/component.d.ts +2 -2
- package/dist/components/puck-block/team-sections/team-carousel/component.js +3 -3
- package/dist/components/puck-block/team-sections/team-grid/component.d.ts +2 -2
- package/dist/components/puck-block/team-sections/team-grid/component.js +3 -3
- package/dist/components/puck-block/team-sections/team-inline-card/component.d.ts +2 -2
- package/dist/components/puck-block/team-sections/team-inline-card/component.js +3 -3
- package/dist/components/puck-block/team-sections/team-sticky-scatter/component.d.ts +2 -2
- package/dist/components/puck-block/team-sections/team-sticky-scatter/component.js +3 -3
- package/dist/components/puck-block/team-sections/team-two-column/component.d.ts +2 -2
- package/dist/components/puck-block/team-sections/team-two-column/component.js +3 -3
- package/dist/components/puck-block/testimonial-sections/bento-testimonial/component.d.ts +4 -4
- package/dist/components/puck-block/testimonial-sections/bento-testimonial/component.js +8 -8
- package/dist/components/puck-block/testimonial-sections/centered-testimonial/component.d.ts +3 -3
- package/dist/components/puck-block/testimonial-sections/centered-testimonial/component.js +4 -4
- package/dist/components/puck-block/testimonial-sections/centered-testimonial/index.js +3 -3
- package/dist/components/puck-block/testimonial-sections/halfscreen-testimonial-carousel/component.d.ts +3 -3
- package/dist/components/puck-block/testimonial-sections/halfscreen-testimonial-carousel/component.js +3 -3
- package/dist/components/puck-block/testimonial-sections/image-testimonial/component.d.ts +3 -3
- package/dist/components/puck-block/testimonial-sections/image-testimonial/component.js +10 -10
- package/dist/components/puck-block/testimonial-sections/image-testimonial/index.d.ts +1 -1
- package/dist/components/puck-block/testimonial-sections/image-testimonial/index.js +3 -3
- package/dist/components/puck-block/testimonial-sections/image-testimonial-carousel/component.d.ts +3 -3
- package/dist/components/puck-block/testimonial-sections/image-testimonial-carousel/component.js +7 -7
- package/dist/components/puck-block/testimonial-sections/image-testimonial-carousel/index.d.ts +1 -1
- package/dist/components/puck-block/testimonial-sections/image-testimonial-carousel/index.js +3 -3
- package/dist/components/puck-block/testimonial-sections/marquee-testimonial/component.d.ts +2 -2
- package/dist/components/puck-block/testimonial-sections/marquee-testimonial/component.js +2 -2
- package/dist/components/puck-block/testimonial-sections/masonry-testimonial/component.d.ts +2 -2
- package/dist/components/puck-block/testimonial-sections/masonry-testimonial/component.js +2 -2
- package/dist/components/puck-block/testimonial-sections/props.d.ts +3 -4
- package/dist/components/puck-block/testimonial-sections/sticky-testimonial/component.d.ts +3 -2
- package/dist/components/puck-block/testimonial-sections/sticky-testimonial/component.js +6 -3
- package/dist/components/puck-block/testimonial-sections/tab-testimonial/component.d.ts +4 -4
- package/dist/components/puck-block/testimonial-sections/tab-testimonial/component.js +5 -5
- package/dist/components/puck-block/testimonial-sections/testimonial-card-grid/component.d.ts +4 -4
- package/dist/components/puck-block/testimonial-sections/testimonial-card-grid/component.js +6 -6
- package/dist/components/puck-block/testimonial-sections/testimonial-carousel/component.d.ts +3 -3
- package/dist/components/puck-block/testimonial-sections/testimonial-carousel/component.js +3 -3
- package/dist/components/puck-block/text-sections/blog-article/component.d.ts +4 -7
- package/dist/components/puck-block/text-sections/blog-article/component.js +9 -17
- package/dist/components/puck-block/text-sections/blog-article/index.d.ts +39 -14
- package/dist/components/puck-block/text-sections/blog-article/index.js +4 -10
- package/dist/components/puck-block/text-sections/props.d.ts +3 -3
- package/dist/components/puck-block/text-sections/prose-content/component.d.ts +2 -2
- package/dist/components/puck-block/text-sections/prose-content/component.js +3 -3
- package/dist/components/puck-block/text-sections/prose-content/index.d.ts +1 -1
- package/dist/components/puck-block/text-sections/prose-content/index.js +2 -2
- package/dist/components/puck-block/text-sections/prose-sidebar/component.d.ts +2 -2
- package/dist/components/puck-block/text-sections/prose-sidebar/index.d.ts +1 -1
- package/dist/components/puck-block/text-sections/side-media-content/component.js +5 -5
- package/dist/components/puck-block/text-sections/side-media-content/index.d.ts +1 -1
- package/dist/components/puck-block/text-sections/side-media-content/index.js +2 -2
- package/dist/components/puck-block/text-sections/sticky-text-multi-image/component.d.ts +2 -2
- package/dist/components/puck-block/text-sections/sticky-text-multi-image/component.js +4 -4
- package/dist/components/puck-block/text-sections/sticky-text-multi-image/index.d.ts +2 -2
- package/dist/components/puck-block/text-sections/sticky-text-multi-image/index.js +2 -2
- package/dist/components/puck-block/text-sections/text-header/component.d.ts +2 -2
- package/dist/components/puck-block/text-sections/text-header/index.d.ts +1 -1
- package/dist/components/puck-core/core/context/editor-context.d.ts +2 -0
- package/dist/components/puck-core/core/fields.d.ts +2 -2
- package/dist/components/puck-core/core/props/content.d.ts +3 -3
- package/dist/components/puck-core/core/props/index.d.ts +2 -2
- package/dist/components/puck-core/core/props/index.js +7 -0
- package/dist/components/puck-core/core/props/interactive.d.ts +44 -1
- package/dist/components/puck-core/core/props/interactive.js +24 -1
- package/dist/components/puck-core/core/props/media.d.ts +8 -8
- package/dist/components/puck-core/core/props/media.js +21 -21
- package/dist/components/puck-core/core/puck-fields-to-zod.d.ts +40 -0
- package/dist/components/puck-core/core/puck-fields-to-zod.js +113 -0
- package/dist/components/puck-core/core/social-icons.d.ts +5 -0
- package/dist/components/puck-core/core/social-icons.js +48 -0
- package/dist/components/puck-core/core/with-editable.js +9 -2
- package/dist/components/puck-core/fields/media-upload-field.d.ts +7 -0
- package/dist/components/puck-core/fields/{image-upload-field.js → media-upload-field.js} +71 -28
- package/dist/components/puck-core/index.d.ts +3 -2
- package/dist/components/shadcn/tabs.d.ts +2 -1
- package/dist/components/shadcn/tabs.js +21 -3
- package/dist/components/shadcn/video-iframe.d.ts +2 -1
- package/dist/components/shadcn/video-iframe.js +7 -6
- package/dist/index.js +18 -12
- package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/classic/errors.js +44 -0
- package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/classic/iso.js +43 -0
- package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/classic/parse.js +29 -0
- package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/classic/schemas.js +665 -0
- package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/api.js +569 -0
- package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/checks.js +410 -0
- package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/core.js +74 -0
- package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/doc.js +37 -0
- package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/errors.js +72 -0
- package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/json-schema-processors.js +314 -0
- package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/parse.js +95 -0
- package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/regexes.js +81 -0
- package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/registries.js +51 -0
- package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/schemas.js +1345 -0
- package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/to-json-schema.js +362 -0
- package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/util.js +430 -0
- package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/versions.js +8 -0
- package/package.json +3 -2
- package/dist/components/puck-base/image.d.ts +0 -6
- package/dist/components/puck-base/image.js +0 -360
- package/dist/components/puck-core/fields/image-upload-field.d.ts +0 -7
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { FloatingBorderedNavbar, FloatingBorderedNavbarDefaults } from "./floating-bordered-navbar.js";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
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:
|
|
7
|
+
fields: { __metadata: { type: "object", ai: { instructions: "Layout metadata identifying this component as a header section. The type field must always be 'header'." }, objectFields: { type: { type: "text" } } }, 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: { position: headerStyleFields.position, showSocialLinks: headerStyleFields.showSocialLinks, ...sectionWrapperFields } } },
|
|
8
8
|
defaultProps: FloatingBorderedNavbarDefaults,
|
|
9
9
|
render: FloatingBorderedNavbar
|
|
10
10
|
};
|
|
@@ -2,12 +2,13 @@
|
|
|
2
2
|
import { jsxs, jsx } from "react/jsx-runtime";
|
|
3
3
|
import { useState } from "react";
|
|
4
4
|
import { Button } from "../../../shadcn/button.js";
|
|
5
|
-
import {
|
|
5
|
+
import { CompoundMedia } from "../../../puck-base/media.js";
|
|
6
6
|
import { motion, AnimatePresence } from "motion/react";
|
|
7
7
|
import { cn } from "../../../../utils/css-utils.js";
|
|
8
8
|
import { SectionWrapper } from "../../../puck-core/section-wrapper.js";
|
|
9
|
+
import { CompoundSocialLinks } from "../../../puck-base/social-links.js";
|
|
9
10
|
const FullscreenOverlayNavbar = (props) => {
|
|
10
|
-
const { logo, navLinks,
|
|
11
|
+
const { logo, navLinks, buttons, socialLinks, styles } = {
|
|
11
12
|
...FullscreenOverlayNavbarDefaults,
|
|
12
13
|
...props
|
|
13
14
|
};
|
|
@@ -28,17 +29,18 @@ const FullscreenOverlayNavbar = (props) => {
|
|
|
28
29
|
css,
|
|
29
30
|
children: [
|
|
30
31
|
/* @__PURE__ */ jsxs("div", { className: "mx-auto flex size-full items-center justify-between", children: [
|
|
31
|
-
/* @__PURE__ */ jsx("a", { href: logo == null ? void 0 : logo.url, children: /* @__PURE__ */ jsx(
|
|
32
|
+
/* @__PURE__ */ jsx("a", { href: logo == null ? void 0 : logo.url, children: /* @__PURE__ */ jsx(CompoundMedia, { src: logo == null ? void 0 : logo.src, alt: logo == null ? void 0 : logo.alt, className: "h-9 w-auto" }) }),
|
|
32
33
|
/* @__PURE__ */ jsxs("div", { className: "flex items-center justify-center gap-2 lg:gap-4", children: [
|
|
33
|
-
|
|
34
|
+
(buttons == null ? void 0 : buttons[0]) && /* @__PURE__ */ jsx(
|
|
34
35
|
Button,
|
|
35
36
|
{
|
|
36
|
-
variant:
|
|
37
|
-
size:
|
|
37
|
+
variant: buttons[0].variant,
|
|
38
|
+
size: buttons[0].size,
|
|
38
39
|
className: "px-4 py-1 md:px-6 md:py-2",
|
|
39
|
-
children:
|
|
40
|
+
children: buttons[0].label
|
|
40
41
|
}
|
|
41
42
|
),
|
|
43
|
+
(styles == null ? void 0 : styles.showSocialLinks) === "true" && /* @__PURE__ */ jsx(CompoundSocialLinks, { links: socialLinks ?? [], iconClassName: "size-5", className: "gap-2" }),
|
|
42
44
|
/* @__PURE__ */ jsx(
|
|
43
45
|
"button",
|
|
44
46
|
{
|
|
@@ -123,15 +125,18 @@ const FullscreenOverlayNavbar = (props) => {
|
|
|
123
125
|
exit: "close",
|
|
124
126
|
transition: { duration: 0.5 },
|
|
125
127
|
className: "absolute left-0 right-0 top-0 block h-dvh overflow-auto bg-background-primary px-[5%]",
|
|
126
|
-
children: /* @__PURE__ */
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
128
|
+
children: /* @__PURE__ */ jsxs("div", { className: "-mt-18 flex h-full flex-col", children: [
|
|
129
|
+
navLinks == null ? void 0 : navLinks.map((navLink, index) => /* @__PURE__ */ jsx(
|
|
130
|
+
"a",
|
|
131
|
+
{
|
|
132
|
+
href: navLink.url,
|
|
133
|
+
className: "static block py-3 text-xl leading-[30px] lg:my-2 lg:py-2 lg:text-2xl lg:leading-[1.5]",
|
|
134
|
+
children: navLink.title
|
|
135
|
+
},
|
|
136
|
+
index
|
|
137
|
+
)),
|
|
138
|
+
(styles == null ? void 0 : styles.showSocialLinks) === "true" && /* @__PURE__ */ jsx(CompoundSocialLinks, { links: socialLinks ?? [], className: "pt-6" })
|
|
139
|
+
] })
|
|
135
140
|
}
|
|
136
141
|
)
|
|
137
142
|
}
|
|
@@ -153,8 +158,8 @@ const FullscreenOverlayNavbarDefaults = {
|
|
|
153
158
|
{ url: "#", title: "Link Three" },
|
|
154
159
|
{ url: "#", title: "Link Four" }
|
|
155
160
|
],
|
|
156
|
-
|
|
157
|
-
|
|
161
|
+
buttons: [{ label: "Button", size: "sm" }],
|
|
162
|
+
socialLinks: [],
|
|
158
163
|
styles: { overlayContent: "linksOnly" }
|
|
159
164
|
};
|
|
160
165
|
export {
|
|
@@ -4,6 +4,17 @@ export { FullscreenOverlayNavbar, FullscreenOverlayNavbarDefaults };
|
|
|
4
4
|
export type { FullscreenOverlayNavbarProps };
|
|
5
5
|
declare const conf: {
|
|
6
6
|
fields: {
|
|
7
|
+
__metadata: {
|
|
8
|
+
type: string;
|
|
9
|
+
ai: {
|
|
10
|
+
instructions: string;
|
|
11
|
+
};
|
|
12
|
+
objectFields: {
|
|
13
|
+
type: {
|
|
14
|
+
type: string;
|
|
15
|
+
};
|
|
16
|
+
};
|
|
17
|
+
};
|
|
7
18
|
logo: {
|
|
8
19
|
type: "object";
|
|
9
20
|
objectFields: {
|
|
@@ -28,9 +39,13 @@ declare const conf: {
|
|
|
28
39
|
};
|
|
29
40
|
};
|
|
30
41
|
};
|
|
31
|
-
|
|
32
|
-
readonly type: "
|
|
33
|
-
readonly
|
|
42
|
+
buttons: {
|
|
43
|
+
readonly type: "array";
|
|
44
|
+
readonly max: 3;
|
|
45
|
+
readonly getItemSummary: (item: {
|
|
46
|
+
label?: string;
|
|
47
|
+
}, index?: number) => string;
|
|
48
|
+
readonly arrayFields: {
|
|
34
49
|
readonly label: {
|
|
35
50
|
readonly type: "text";
|
|
36
51
|
};
|
|
@@ -82,6 +97,68 @@ declare const conf: {
|
|
|
82
97
|
render: typeof import("../../../puck-core/fields/icon-picker-field").IconPickerField;
|
|
83
98
|
};
|
|
84
99
|
};
|
|
100
|
+
readonly defaultItemProps: {
|
|
101
|
+
readonly label: "Button";
|
|
102
|
+
readonly action: {
|
|
103
|
+
readonly type: "page";
|
|
104
|
+
readonly pageUrl: "";
|
|
105
|
+
readonly externalUrl: "";
|
|
106
|
+
readonly openInNewTab: "false";
|
|
107
|
+
readonly email: "";
|
|
108
|
+
readonly subject: "";
|
|
109
|
+
readonly phone: "";
|
|
110
|
+
readonly sectionId: "";
|
|
111
|
+
readonly downloadUrl: "";
|
|
112
|
+
};
|
|
113
|
+
readonly variant: "default";
|
|
114
|
+
readonly size: "default";
|
|
115
|
+
readonly icon: "none";
|
|
116
|
+
};
|
|
117
|
+
readonly ai: {
|
|
118
|
+
readonly instructions: "Buttons must use the same size";
|
|
119
|
+
};
|
|
120
|
+
};
|
|
121
|
+
socialLinks: {
|
|
122
|
+
readonly type: "array";
|
|
123
|
+
readonly label: "Social Links";
|
|
124
|
+
readonly getItemSummary: (item: {
|
|
125
|
+
platform?: string;
|
|
126
|
+
}, i?: number) => string;
|
|
127
|
+
readonly arrayFields: {
|
|
128
|
+
readonly platform: {
|
|
129
|
+
readonly type: "select";
|
|
130
|
+
readonly label: "Platform";
|
|
131
|
+
readonly options: readonly [{
|
|
132
|
+
readonly label: "Twitter / X";
|
|
133
|
+
readonly value: "twitter";
|
|
134
|
+
}, {
|
|
135
|
+
readonly label: "Facebook";
|
|
136
|
+
readonly value: "facebook";
|
|
137
|
+
}, {
|
|
138
|
+
readonly label: "Instagram";
|
|
139
|
+
readonly value: "instagram";
|
|
140
|
+
}, {
|
|
141
|
+
readonly label: "LinkedIn";
|
|
142
|
+
readonly value: "linkedin";
|
|
143
|
+
}, {
|
|
144
|
+
readonly label: "YouTube";
|
|
145
|
+
readonly value: "youtube";
|
|
146
|
+
}, {
|
|
147
|
+
readonly label: "GitHub";
|
|
148
|
+
readonly value: "github";
|
|
149
|
+
}, {
|
|
150
|
+
readonly label: "TikTok";
|
|
151
|
+
readonly value: "tiktok";
|
|
152
|
+
}, {
|
|
153
|
+
readonly label: "Discord";
|
|
154
|
+
readonly value: "discord";
|
|
155
|
+
}];
|
|
156
|
+
};
|
|
157
|
+
readonly url: {
|
|
158
|
+
readonly type: "text";
|
|
159
|
+
readonly label: "URL";
|
|
160
|
+
};
|
|
161
|
+
};
|
|
85
162
|
};
|
|
86
163
|
styles: {
|
|
87
164
|
type: string;
|
|
@@ -129,6 +206,17 @@ declare const conf: {
|
|
|
129
206
|
readonly value: "withForm";
|
|
130
207
|
}];
|
|
131
208
|
};
|
|
209
|
+
showSocialLinks: {
|
|
210
|
+
readonly type: "radio";
|
|
211
|
+
readonly label: "Display Social Links";
|
|
212
|
+
readonly options: readonly [{
|
|
213
|
+
readonly label: "Yes";
|
|
214
|
+
readonly value: "true";
|
|
215
|
+
}, {
|
|
216
|
+
readonly label: "No";
|
|
217
|
+
readonly value: "false";
|
|
218
|
+
}];
|
|
219
|
+
};
|
|
132
220
|
};
|
|
133
221
|
};
|
|
134
222
|
};
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { FullscreenOverlayNavbar, FullscreenOverlayNavbarDefaults } from "./fullscreen-overlay-navbar.js";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
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:
|
|
7
|
+
fields: { __metadata: { type: "object", ai: { instructions: "Layout metadata identifying this component as a header section. The type field must always be 'header'." }, objectFields: { type: { type: "text" } } }, 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
|
};
|
|
@@ -4,6 +4,17 @@ export { MegaMenuNavbar, MegaMenuNavbarDefaults };
|
|
|
4
4
|
export type { MegaMenuNavbarProps };
|
|
5
5
|
declare const conf: {
|
|
6
6
|
fields: {
|
|
7
|
+
__metadata: {
|
|
8
|
+
type: string;
|
|
9
|
+
ai: {
|
|
10
|
+
instructions: string;
|
|
11
|
+
};
|
|
12
|
+
objectFields: {
|
|
13
|
+
type: {
|
|
14
|
+
type: string;
|
|
15
|
+
};
|
|
16
|
+
};
|
|
17
|
+
};
|
|
7
18
|
logo: {
|
|
8
19
|
type: "object";
|
|
9
20
|
objectFields: {
|
|
@@ -107,6 +118,48 @@ declare const conf: {
|
|
|
107
118
|
readonly instructions: "Buttons must use the same size";
|
|
108
119
|
};
|
|
109
120
|
};
|
|
121
|
+
socialLinks: {
|
|
122
|
+
readonly type: "array";
|
|
123
|
+
readonly label: "Social Links";
|
|
124
|
+
readonly getItemSummary: (item: {
|
|
125
|
+
platform?: string;
|
|
126
|
+
}, i?: number) => string;
|
|
127
|
+
readonly arrayFields: {
|
|
128
|
+
readonly platform: {
|
|
129
|
+
readonly type: "select";
|
|
130
|
+
readonly label: "Platform";
|
|
131
|
+
readonly options: readonly [{
|
|
132
|
+
readonly label: "Twitter / X";
|
|
133
|
+
readonly value: "twitter";
|
|
134
|
+
}, {
|
|
135
|
+
readonly label: "Facebook";
|
|
136
|
+
readonly value: "facebook";
|
|
137
|
+
}, {
|
|
138
|
+
readonly label: "Instagram";
|
|
139
|
+
readonly value: "instagram";
|
|
140
|
+
}, {
|
|
141
|
+
readonly label: "LinkedIn";
|
|
142
|
+
readonly value: "linkedin";
|
|
143
|
+
}, {
|
|
144
|
+
readonly label: "YouTube";
|
|
145
|
+
readonly value: "youtube";
|
|
146
|
+
}, {
|
|
147
|
+
readonly label: "GitHub";
|
|
148
|
+
readonly value: "github";
|
|
149
|
+
}, {
|
|
150
|
+
readonly label: "TikTok";
|
|
151
|
+
readonly value: "tiktok";
|
|
152
|
+
}, {
|
|
153
|
+
readonly label: "Discord";
|
|
154
|
+
readonly value: "discord";
|
|
155
|
+
}];
|
|
156
|
+
};
|
|
157
|
+
readonly url: {
|
|
158
|
+
readonly type: "text";
|
|
159
|
+
readonly label: "URL";
|
|
160
|
+
};
|
|
161
|
+
};
|
|
162
|
+
};
|
|
110
163
|
styles: {
|
|
111
164
|
type: string;
|
|
112
165
|
label: string;
|
|
@@ -156,6 +209,17 @@ declare const conf: {
|
|
|
156
209
|
readonly value: "linksBlog";
|
|
157
210
|
}];
|
|
158
211
|
};
|
|
212
|
+
showSocialLinks: {
|
|
213
|
+
readonly type: "radio";
|
|
214
|
+
readonly label: "Display Social Links";
|
|
215
|
+
readonly options: readonly [{
|
|
216
|
+
readonly label: "Yes";
|
|
217
|
+
readonly value: "true";
|
|
218
|
+
}, {
|
|
219
|
+
readonly label: "No";
|
|
220
|
+
readonly value: "false";
|
|
221
|
+
}];
|
|
222
|
+
};
|
|
159
223
|
};
|
|
160
224
|
};
|
|
161
225
|
};
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { MegaMenuNavbar, MegaMenuNavbarDefaults } from "./mega-menu-navbar.js";
|
|
2
|
-
import {
|
|
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:
|
|
7
|
+
fields: { __metadata: { type: "object", ai: { instructions: "Layout metadata identifying this component as a header section. The type field must always be 'header'." }, objectFields: { type: { type: "text" } } }, 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 {
|
|
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(
|
|
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__ */
|
|
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__ */
|
|
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 {
|
|
8
|
-
import type { BaseButton } from "@/components/puck-core/core/props/interactive";
|
|
9
|
-
export type {
|
|
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:
|
|
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 {
|
|
@@ -4,6 +4,17 @@ export { StandardNavbar, StandardNavbarDefaults };
|
|
|
4
4
|
export type { StandardNavbarProps };
|
|
5
5
|
declare const conf: {
|
|
6
6
|
fields: {
|
|
7
|
+
__metadata: {
|
|
8
|
+
type: string;
|
|
9
|
+
ai: {
|
|
10
|
+
instructions: string;
|
|
11
|
+
};
|
|
12
|
+
objectFields: {
|
|
13
|
+
type: {
|
|
14
|
+
type: string;
|
|
15
|
+
};
|
|
16
|
+
};
|
|
17
|
+
};
|
|
7
18
|
logo: {
|
|
8
19
|
type: "object";
|
|
9
20
|
objectFields: {
|
|
@@ -107,6 +118,48 @@ declare const conf: {
|
|
|
107
118
|
readonly instructions: "Buttons must use the same size";
|
|
108
119
|
};
|
|
109
120
|
};
|
|
121
|
+
socialLinks: {
|
|
122
|
+
readonly type: "array";
|
|
123
|
+
readonly label: "Social Links";
|
|
124
|
+
readonly getItemSummary: (item: {
|
|
125
|
+
platform?: string;
|
|
126
|
+
}, i?: number) => string;
|
|
127
|
+
readonly arrayFields: {
|
|
128
|
+
readonly platform: {
|
|
129
|
+
readonly type: "select";
|
|
130
|
+
readonly label: "Platform";
|
|
131
|
+
readonly options: readonly [{
|
|
132
|
+
readonly label: "Twitter / X";
|
|
133
|
+
readonly value: "twitter";
|
|
134
|
+
}, {
|
|
135
|
+
readonly label: "Facebook";
|
|
136
|
+
readonly value: "facebook";
|
|
137
|
+
}, {
|
|
138
|
+
readonly label: "Instagram";
|
|
139
|
+
readonly value: "instagram";
|
|
140
|
+
}, {
|
|
141
|
+
readonly label: "LinkedIn";
|
|
142
|
+
readonly value: "linkedin";
|
|
143
|
+
}, {
|
|
144
|
+
readonly label: "YouTube";
|
|
145
|
+
readonly value: "youtube";
|
|
146
|
+
}, {
|
|
147
|
+
readonly label: "GitHub";
|
|
148
|
+
readonly value: "github";
|
|
149
|
+
}, {
|
|
150
|
+
readonly label: "TikTok";
|
|
151
|
+
readonly value: "tiktok";
|
|
152
|
+
}, {
|
|
153
|
+
readonly label: "Discord";
|
|
154
|
+
readonly value: "discord";
|
|
155
|
+
}];
|
|
156
|
+
};
|
|
157
|
+
readonly url: {
|
|
158
|
+
readonly type: "text";
|
|
159
|
+
readonly label: "URL";
|
|
160
|
+
};
|
|
161
|
+
};
|
|
162
|
+
};
|
|
110
163
|
styles: {
|
|
111
164
|
type: string;
|
|
112
165
|
label: string;
|
|
@@ -147,6 +200,17 @@ declare const conf: {
|
|
|
147
200
|
readonly value: "richGrouped";
|
|
148
201
|
}];
|
|
149
202
|
};
|
|
203
|
+
showSocialLinks: {
|
|
204
|
+
readonly type: "radio";
|
|
205
|
+
readonly label: "Display Social Links";
|
|
206
|
+
readonly options: readonly [{
|
|
207
|
+
readonly label: "Yes";
|
|
208
|
+
readonly value: "true";
|
|
209
|
+
}, {
|
|
210
|
+
readonly label: "No";
|
|
211
|
+
readonly value: "false";
|
|
212
|
+
}];
|
|
213
|
+
};
|
|
150
214
|
};
|
|
151
215
|
};
|
|
152
216
|
};
|
|
@@ -1,14 +1,16 @@
|
|
|
1
1
|
import { StandardNavbar, StandardNavbarDefaults } from "./standard-navbar.js";
|
|
2
|
-
import {
|
|
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
|
-
|
|
8
|
+
__metadata: { type: "object", ai: { instructions: "Layout metadata identifying this component as a header section. The type field must always be 'header'." }, objectFields: { type: { type: "text" } } },
|
|
9
|
+
logo: mediaField,
|
|
9
10
|
navLinks: { type: "array", max: 6, getItemSummary: (item, i = 0) => item.title || `Link ${i + 1}`, arrayFields: { title: { type: "text" }, url: { type: "text" } } },
|
|
10
11
|
buttons: buttonsField,
|
|
11
|
-
|
|
12
|
+
socialLinks: socialLinksField,
|
|
13
|
+
styles: { type: "object", label: "Styles", objectFields: { dropdownType: headerStyleFields.dropdownType, showSocialLinks: headerStyleFields.showSocialLinks, ...sectionWrapperFields } }
|
|
12
14
|
},
|
|
13
15
|
defaultProps: StandardNavbarDefaults,
|
|
14
16
|
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 {
|
|
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(
|
|
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__ */
|
|
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 {
|