dune-react 0.0.22 → 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.
- package/dist/components/puck-block/banner-sections/css-marquee-banner/css-marquee-banner.js +13 -13
- package/dist/components/puck-block/banner-sections/dual-row-marquee/dual-row-marquee.js +8 -8
- package/dist/components/puck-block/banner-sections/scroll-driven-marquee/scroll-driven-marquee.js +8 -6
- package/dist/components/puck-block/banner-sections/scroll-parallax-text/scroll-parallax-text.js +3 -1
- package/dist/components/puck-block/contact-sections/contact-cards-grid/contact-cards-grid.js +1 -1
- package/dist/components/puck-block/contact-sections/form-with-media/form-with-media.js +1 -1
- package/dist/components/puck-block/contact-sections/header-form-cards/header-form-cards.js +1 -1
- package/dist/components/puck-block/contact-sections/header-info-fullwidth/header-info-fullwidth.js +2 -2
- package/dist/components/puck-block/contact-sections/info-cards-media/info-cards-media.js +2 -2
- package/dist/components/puck-block/contact-sections/split-info-form/split-info-form.js +1 -1
- package/dist/components/puck-block/cta-sections/mouse-track-cta/mouse-track-cta.js +4 -4
- package/dist/components/puck-block/cta-sections/side-media-cta/side-media-cta.js +1 -1
- package/dist/components/puck-block/cta-sections/text-block-cta/text-block-cta.js +2 -2
- package/dist/components/puck-block/feature-sections/feature-cards-grid/component.js +1 -1
- package/dist/components/puck-block/feature-sections/feature-list-split/component.js +1 -1
- package/dist/components/puck-block/feature-sections/tab-feature/component.js +3 -3
- package/dist/components/puck-block/feature-sections/text-media-split/component.js +1 -1
- package/dist/components/puck-block/footer-sections/centered-minimal-footer/centered-minimal-footer.js +72 -18
- package/dist/components/puck-block/footer-sections/centered-minimal-footer/index.d.ts +79 -0
- package/dist/components/puck-block/footer-sections/centered-minimal-footer/index.js +43 -1
- package/dist/components/puck-block/footer-sections/compact-newsletter-footer/index.d.ts +41 -0
- package/dist/components/puck-block/footer-sections/contact-links-footer/contact-links-footer.js +4 -3
- package/dist/components/puck-block/footer-sections/contact-links-footer/index.d.ts +86 -0
- package/dist/components/puck-block/footer-sections/contact-links-footer/index.js +1 -1
- package/dist/components/puck-block/footer-sections/cta-links-footer/cta-links-footer.js +3 -2
- package/dist/components/puck-block/footer-sections/cta-links-footer/index.d.ts +37 -0
- package/dist/components/puck-block/footer-sections/cta-links-footer/index.js +1 -1
- package/dist/components/puck-block/footer-sections/links-newsletter-footer/index.d.ts +54 -0
- package/dist/components/puck-block/footer-sections/newsletter-links-footer/index.d.ts +41 -0
- package/dist/components/puck-block/footer-sections/newsletter-top-links-footer/index.d.ts +54 -0
- package/dist/components/puck-block/footer-sections/props.d.ts +3 -0
- package/dist/components/puck-block/gallery-sections/fullscreen-portfolio/fullscreen-portfolio.js +1 -1
- package/dist/components/puck-block/gallery-sections/interactive-portfolio/interactive-portfolio.js +1 -1
- package/dist/components/puck-block/gallery-sections/portfolio-cards/portfolio-cards.js +1 -1
- package/dist/components/puck-block/gallery-sections/portfolio-divider/portfolio-divider.js +1 -1
- package/dist/components/puck-block/gallery-sections/props.d.ts +11 -1
- package/dist/components/puck-block/gallery-sections/props.js +7 -2
- package/dist/components/puck-block/gallery-sections/scroll-parallax/scroll-parallax.js +18 -0
- package/dist/components/puck-block/gallery-sections/scroll-parallax-portfolio/scroll-parallax-portfolio.js +25 -22
- package/dist/components/puck-block/gallery-sections/split-carousel/index.d.ts +11 -1
- package/dist/components/puck-block/header-sections/centered-navbar/centered-navbar.js +3 -2
- package/dist/components/puck-block/header-sections/drawer-navbar/drawer-navbar.js +4 -3
- package/dist/components/puck-block/header-sections/floating-bordered-navbar/floating-bordered-navbar.js +5 -4
- package/dist/components/puck-block/header-sections/fullscreen-overlay-navbar/fullscreen-overlay-navbar.js +4 -3
- package/dist/components/puck-block/header-sections/mega-menu-navbar/mega-menu-navbar.js +3 -2
- package/dist/components/puck-block/header-sections/props.d.ts +3 -0
- package/dist/components/puck-block/header-sections/standard-navbar/standard-navbar.js +3 -2
- package/dist/components/puck-block/hero-sections/carousel-hero/component.js +3 -3
- package/dist/components/puck-block/hero-sections/column-scroll-hero/component.js +8 -8
- package/dist/components/puck-block/hero-sections/dual-marquee-hero/component.js +6 -6
- package/dist/components/puck-block/hero-sections/fullscreen-video-hero/component.js +1 -1
- package/dist/components/puck-block/hero-sections/grid-expand-hero/component.js +26 -17
- package/dist/components/puck-block/hero-sections/horizontal-marquee-hero/component.js +3 -3
- package/dist/components/puck-block/hero-sections/mouse-track-hero/component.js +60 -19
- package/dist/components/puck-block/hero-sections/multi-image-grid-hero/multi-image-grid-hero.js +2 -2
- package/dist/components/puck-block/hero-sections/overlapping-image-hero/overlapping-image-hero.js +3 -3
- package/dist/components/puck-block/hero-sections/parallax-images-hero/component.js +18 -6
- package/dist/components/puck-block/hero-sections/scatter-parallax-hero/component.js +9 -7
- package/dist/components/puck-block/hero-sections/scroll-expand-video-hero/component.js +7 -5
- package/dist/components/puck-block/hero-sections/scroll-zoom-hero/component.js +5 -3
- package/dist/components/puck-block/hero-sections/sticky-expand-hero/component.js +1 -1
- package/dist/components/puck-block/hero-sections/sticky-expand-hero/index.d.ts +13 -5
- 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.js +2 -2
- package/dist/components/puck-block/hero-sections/tab-hero/component.js +4 -4
- package/dist/components/puck-block/hero-sections/three-image-parallax-hero/component.js +3 -3
- package/dist/components/puck-block/hero-sections/vertical-gallery-hero/component.js +6 -6
- package/dist/components/puck-block/hero-sections/zoom-grid-hero/component.js +14 -12
- package/dist/components/puck-block/metrics-sections/center-media-stats/center-media-stats.js +1 -1
- package/dist/components/puck-block/metrics-sections/header-stats-row/header-stats-row.js +1 -1
- package/dist/components/puck-block/metrics-sections/mixed-grid-stats/mixed-grid-stats.js +2 -2
- package/dist/components/puck-block/metrics-sections/split-stats/split-stats.js +1 -1
- package/dist/components/puck-block/metrics-sections/tab-stats/tab-stats.js +3 -3
- package/dist/components/puck-block/pricing-sections/pricing-comparison-table/index.d.ts +47 -0
- package/dist/components/puck-block/pricing-sections/pricing-comparison-table/index.js +34 -0
- package/dist/components/puck-block/pricing-sections/split-pricing/component.js +3 -3
- package/dist/components/puck-block/registry.generated.d.ts +273 -6
- package/dist/components/puck-block/showcase-sections/tab-timeline/component.js +1 -1
- package/dist/components/puck-block/testimonial-sections/bento-testimonial/component.js +2 -2
- package/dist/components/puck-block/testimonial-sections/tab-testimonial/component.js +2 -2
- package/dist/components/puck-block/text-sections/prose-content/component.js +1 -1
- package/dist/components/puck-block/text-sections/side-media-content/component.js +1 -1
- package/dist/components/puck-block/text-sections/sticky-text-multi-image/component.js +3 -3
- package/dist/components/puck-core/core/props/media.js +6 -1
- package/dist/components/puck-core/fields/array-field.d.ts +7 -0
- package/dist/components/puck-core/fields/array-field.js +229 -0
- package/dist/components/puck-core/fields/auto-field.js +11 -0
- package/dist/components/puck-core/fields/image-upload-field.js +1 -1
- package/dist/components/puck-core/fields/index.d.ts +1 -0
- package/dist/components/puck-core/fields/object-field.js +1 -1
- 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
- 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
- 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
- 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
- package/package.json +4 -1
package/dist/components/puck-block/footer-sections/contact-links-footer/contact-links-footer.js
CHANGED
|
@@ -34,7 +34,8 @@ const ContactLinksFooter = (props) => {
|
|
|
34
34
|
] }) });
|
|
35
35
|
};
|
|
36
36
|
const ContactLinksFooterDefaults = {
|
|
37
|
-
|
|
37
|
+
__metadata: { type: "footer" },
|
|
38
|
+
logo: { url: "#", src: "https://file.springbrand.ai/web_assets/template-logo.svg", alt: "Logo image" },
|
|
38
39
|
heading: "",
|
|
39
40
|
description: "",
|
|
40
41
|
buttons: [],
|
|
@@ -44,12 +45,12 @@ const ContactLinksFooterDefaults = {
|
|
|
44
45
|
button: { label: "" },
|
|
45
46
|
termsAndConditions: "",
|
|
46
47
|
address: { label: "Address:", value: "Level 1, 12 Sample St, Sydney NSW 2000" },
|
|
47
|
-
contact: { label: "Contact:", phone: "1800 123 4567", email: "info@
|
|
48
|
+
contact: { label: "Contact:", phone: "1800 123 4567", email: "info@example.com" },
|
|
48
49
|
columnLinks: [
|
|
49
50
|
{ links: [{ title: "Link One", url: "#" }, { title: "Link Two", url: "#" }, { title: "Link Three", url: "#" }] },
|
|
50
51
|
{ links: [{ title: "Link Four", url: "#" }, { title: "Link Five", url: "#" }, { title: "Link Six", url: "#" }] }
|
|
51
52
|
],
|
|
52
|
-
footerText: "© 2024
|
|
53
|
+
footerText: "© 2024 Company. All rights reserved.",
|
|
53
54
|
footerLinks: [{ title: "Privacy Policy", url: "#" }, { title: "Terms of Service", url: "#" }],
|
|
54
55
|
socialMediaLinks: [],
|
|
55
56
|
companyImages: [],
|
|
@@ -13,6 +13,92 @@ declare const conf: {
|
|
|
13
13
|
};
|
|
14
14
|
};
|
|
15
15
|
};
|
|
16
|
+
address: {
|
|
17
|
+
type: string;
|
|
18
|
+
label: string;
|
|
19
|
+
objectFields: {
|
|
20
|
+
label: {
|
|
21
|
+
type: string;
|
|
22
|
+
label: string;
|
|
23
|
+
};
|
|
24
|
+
value: {
|
|
25
|
+
type: string;
|
|
26
|
+
label: string;
|
|
27
|
+
};
|
|
28
|
+
};
|
|
29
|
+
};
|
|
30
|
+
columnLinks: {
|
|
31
|
+
type: string;
|
|
32
|
+
label: string;
|
|
33
|
+
getItemSummary: (_item: unknown, index?: number) => string;
|
|
34
|
+
arrayFields: {
|
|
35
|
+
links: {
|
|
36
|
+
type: string;
|
|
37
|
+
label: string;
|
|
38
|
+
getItemSummary: (item: {
|
|
39
|
+
title?: string;
|
|
40
|
+
}, index?: number) => string;
|
|
41
|
+
arrayFields: {
|
|
42
|
+
title: {
|
|
43
|
+
type: string;
|
|
44
|
+
label: string;
|
|
45
|
+
};
|
|
46
|
+
url: {
|
|
47
|
+
type: string;
|
|
48
|
+
label: string;
|
|
49
|
+
};
|
|
50
|
+
};
|
|
51
|
+
};
|
|
52
|
+
};
|
|
53
|
+
};
|
|
54
|
+
contact: {
|
|
55
|
+
type: string;
|
|
56
|
+
label: string;
|
|
57
|
+
objectFields: {
|
|
58
|
+
label: {
|
|
59
|
+
type: string;
|
|
60
|
+
label: string;
|
|
61
|
+
};
|
|
62
|
+
phone: {
|
|
63
|
+
type: string;
|
|
64
|
+
label: string;
|
|
65
|
+
};
|
|
66
|
+
email: {
|
|
67
|
+
type: string;
|
|
68
|
+
label: string;
|
|
69
|
+
};
|
|
70
|
+
};
|
|
71
|
+
};
|
|
72
|
+
footerLinks: {
|
|
73
|
+
type: string;
|
|
74
|
+
label: string;
|
|
75
|
+
getItemSummary: (item: {
|
|
76
|
+
title?: string;
|
|
77
|
+
}, index?: number) => string;
|
|
78
|
+
arrayFields: {
|
|
79
|
+
title: {
|
|
80
|
+
type: string;
|
|
81
|
+
label: string;
|
|
82
|
+
};
|
|
83
|
+
url: {
|
|
84
|
+
type: string;
|
|
85
|
+
label: string;
|
|
86
|
+
};
|
|
87
|
+
};
|
|
88
|
+
};
|
|
89
|
+
socialMediaLinks: {
|
|
90
|
+
type: string;
|
|
91
|
+
label: string;
|
|
92
|
+
getItemSummary: (item: {
|
|
93
|
+
url?: string;
|
|
94
|
+
}, index?: number) => string;
|
|
95
|
+
arrayFields: {
|
|
96
|
+
url: {
|
|
97
|
+
type: string;
|
|
98
|
+
label: string;
|
|
99
|
+
};
|
|
100
|
+
};
|
|
101
|
+
};
|
|
16
102
|
footerText: {
|
|
17
103
|
type: string;
|
|
18
104
|
};
|
|
@@ -2,7 +2,7 @@ import { ContactLinksFooter, ContactLinksFooterDefaults } from "./contact-links-
|
|
|
2
2
|
import { imageField } from "../../../puck-core/core/props/media.js";
|
|
3
3
|
import { footerStyleFields } from "../props.js";
|
|
4
4
|
import { sectionWrapperFields } from "../../../puck-core/section-wrapper.js";
|
|
5
|
-
const conf = { fields: { logo: imageField, footerText: { type: "text" }, styles: { type: "object", label: "Styles", objectFields: { bordered: footerStyleFields.bordered, hasCompanyImage: footerStyleFields.hasCompanyImage, ...sectionWrapperFields } } }, defaultProps: ContactLinksFooterDefaults, render: ContactLinksFooter };
|
|
5
|
+
const conf = { fields: { logo: imageField, address: { type: "object", label: "Address", objectFields: { label: { type: "text", label: "Label" }, value: { type: "text", label: "Value" } } }, columnLinks: { type: "array", label: "Link Columns", getItemSummary: (_item, index = 0) => `Column ${index + 1}`, arrayFields: { links: { type: "array", label: "Links", getItemSummary: (item, index = 0) => item.title || `Link ${index + 1}`, arrayFields: { title: { type: "text", label: "Title" }, url: { type: "text", label: "URL" } } } } }, contact: { type: "object", label: "Contact", objectFields: { label: { type: "text", label: "Label" }, phone: { type: "text", label: "Phone" }, email: { type: "text", label: "Email" } } }, footerLinks: { type: "array", label: "Footer Links", getItemSummary: (item, index = 0) => item.title || `Link ${index + 1}`, arrayFields: { title: { type: "text", label: "Title" }, url: { type: "text", label: "URL" } } }, socialMediaLinks: { type: "array", label: "Social Links", getItemSummary: (item, index = 0) => item.url || `Social ${index + 1}`, arrayFields: { url: { type: "text", label: "URL" } } }, footerText: { type: "text" }, styles: { type: "object", label: "Styles", objectFields: { bordered: footerStyleFields.bordered, hasCompanyImage: footerStyleFields.hasCompanyImage, ...sectionWrapperFields } } }, defaultProps: ContactLinksFooterDefaults, render: ContactLinksFooter };
|
|
6
6
|
export {
|
|
7
7
|
ContactLinksFooter,
|
|
8
8
|
ContactLinksFooterDefaults,
|
|
@@ -25,7 +25,8 @@ const CtaLinksFooter = (props) => {
|
|
|
25
25
|
] }) });
|
|
26
26
|
};
|
|
27
27
|
const CtaLinksFooterDefaults = {
|
|
28
|
-
|
|
28
|
+
__metadata: { type: "footer" },
|
|
29
|
+
logo: { url: "#", src: "https://file.springbrand.ai/web_assets/template-logo.svg", alt: "Logo image" },
|
|
29
30
|
heading: "Medium length footer heading goes here",
|
|
30
31
|
description: "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique.",
|
|
31
32
|
buttons: [{ label: "Button" }, { label: "Button", variant: "secondary" }],
|
|
@@ -38,7 +39,7 @@ const CtaLinksFooterDefaults = {
|
|
|
38
39
|
{ links: [{ title: "Link One", url: "#" }, { title: "Link Two", url: "#" }, { title: "Link Three", url: "#" }] },
|
|
39
40
|
{ links: [{ title: "Link Four", url: "#" }, { title: "Link Five", url: "#" }, { title: "Link Six", url: "#" }] }
|
|
40
41
|
],
|
|
41
|
-
footerText: "© 2024
|
|
42
|
+
footerText: "© 2024 Company. All rights reserved.",
|
|
42
43
|
footerLinks: [],
|
|
43
44
|
socialMediaLinks: [],
|
|
44
45
|
address: { label: "", value: "" },
|
|
@@ -100,6 +100,43 @@ declare const conf: {
|
|
|
100
100
|
readonly instructions: "Buttons must use the same size";
|
|
101
101
|
};
|
|
102
102
|
};
|
|
103
|
+
columnLinks: {
|
|
104
|
+
type: string;
|
|
105
|
+
label: string;
|
|
106
|
+
getItemSummary: (_item: unknown, index?: number) => string;
|
|
107
|
+
arrayFields: {
|
|
108
|
+
links: {
|
|
109
|
+
type: string;
|
|
110
|
+
label: string;
|
|
111
|
+
getItemSummary: (item: {
|
|
112
|
+
title?: string;
|
|
113
|
+
}, index?: number) => string;
|
|
114
|
+
arrayFields: {
|
|
115
|
+
title: {
|
|
116
|
+
type: string;
|
|
117
|
+
label: string;
|
|
118
|
+
};
|
|
119
|
+
url: {
|
|
120
|
+
type: string;
|
|
121
|
+
label: string;
|
|
122
|
+
};
|
|
123
|
+
};
|
|
124
|
+
};
|
|
125
|
+
};
|
|
126
|
+
};
|
|
127
|
+
socialMediaLinks: {
|
|
128
|
+
type: string;
|
|
129
|
+
label: string;
|
|
130
|
+
getItemSummary: (item: {
|
|
131
|
+
url?: string;
|
|
132
|
+
}, index?: number) => string;
|
|
133
|
+
arrayFields: {
|
|
134
|
+
url: {
|
|
135
|
+
type: string;
|
|
136
|
+
label: string;
|
|
137
|
+
};
|
|
138
|
+
};
|
|
139
|
+
};
|
|
103
140
|
footerText: {
|
|
104
141
|
type: string;
|
|
105
142
|
};
|
|
@@ -4,7 +4,7 @@ import { buttonsField } from "../../../puck-core/core/props/interactive.js";
|
|
|
4
4
|
import { imageField } from "../../../puck-core/core/props/media.js";
|
|
5
5
|
import { footerStyleFields } from "../props.js";
|
|
6
6
|
import { sectionWrapperFields } from "../../../puck-core/section-wrapper.js";
|
|
7
|
-
const conf = { fields: { logo: imageField, heading: headingField, description: descriptionField, buttons: buttonsField, footerText: { type: "text" }, styles: { type: "object", label: "Styles", objectFields: { bordered: footerStyleFields.bordered, ...sectionWrapperFields } } }, defaultProps: CtaLinksFooterDefaults, render: CtaLinksFooter };
|
|
7
|
+
const conf = { fields: { logo: imageField, heading: headingField, description: descriptionField, buttons: buttonsField, columnLinks: { type: "array", label: "Link Columns", getItemSummary: (_item, index = 0) => `Column ${index + 1}`, arrayFields: { links: { type: "array", label: "Links", getItemSummary: (item, index = 0) => item.title || `Link ${index + 1}`, arrayFields: { title: { type: "text", label: "Title" }, url: { type: "text", label: "URL" } } } } }, socialMediaLinks: { type: "array", label: "Social Links", getItemSummary: (item, index = 0) => item.url || `Social ${index + 1}`, arrayFields: { url: { type: "text", label: "URL" } } }, footerText: { type: "text" }, styles: { type: "object", label: "Styles", objectFields: { bordered: footerStyleFields.bordered, ...sectionWrapperFields } } }, defaultProps: CtaLinksFooterDefaults, render: CtaLinksFooter };
|
|
8
8
|
export {
|
|
9
9
|
CtaLinksFooter,
|
|
10
10
|
CtaLinksFooterDefaults,
|
|
@@ -81,6 +81,60 @@ declare const conf: {
|
|
|
81
81
|
termsAndConditions: {
|
|
82
82
|
type: string;
|
|
83
83
|
};
|
|
84
|
+
columnLinks: {
|
|
85
|
+
type: string;
|
|
86
|
+
label: string;
|
|
87
|
+
getItemSummary: (_item: unknown, index?: number) => string;
|
|
88
|
+
arrayFields: {
|
|
89
|
+
links: {
|
|
90
|
+
type: string;
|
|
91
|
+
label: string;
|
|
92
|
+
getItemSummary: (item: {
|
|
93
|
+
title?: string;
|
|
94
|
+
}, index?: number) => string;
|
|
95
|
+
arrayFields: {
|
|
96
|
+
title: {
|
|
97
|
+
type: string;
|
|
98
|
+
label: string;
|
|
99
|
+
};
|
|
100
|
+
url: {
|
|
101
|
+
type: string;
|
|
102
|
+
label: string;
|
|
103
|
+
};
|
|
104
|
+
};
|
|
105
|
+
};
|
|
106
|
+
};
|
|
107
|
+
};
|
|
108
|
+
footerLinks: {
|
|
109
|
+
type: string;
|
|
110
|
+
label: string;
|
|
111
|
+
getItemSummary: (item: {
|
|
112
|
+
title?: string;
|
|
113
|
+
}, index?: number) => string;
|
|
114
|
+
arrayFields: {
|
|
115
|
+
title: {
|
|
116
|
+
type: string;
|
|
117
|
+
label: string;
|
|
118
|
+
};
|
|
119
|
+
url: {
|
|
120
|
+
type: string;
|
|
121
|
+
label: string;
|
|
122
|
+
};
|
|
123
|
+
};
|
|
124
|
+
};
|
|
125
|
+
socialMediaLinks: {
|
|
126
|
+
type: string;
|
|
127
|
+
label: string;
|
|
128
|
+
getItemSummary: (item: {
|
|
129
|
+
url?: string;
|
|
130
|
+
}, index?: number) => string;
|
|
131
|
+
arrayFields: {
|
|
132
|
+
url: {
|
|
133
|
+
type: string;
|
|
134
|
+
label: string;
|
|
135
|
+
};
|
|
136
|
+
};
|
|
137
|
+
};
|
|
84
138
|
footerText: {
|
|
85
139
|
type: string;
|
|
86
140
|
};
|
|
@@ -78,6 +78,47 @@ declare const conf: {
|
|
|
78
78
|
termsAndConditions: {
|
|
79
79
|
type: string;
|
|
80
80
|
};
|
|
81
|
+
columnLinks: {
|
|
82
|
+
type: string;
|
|
83
|
+
label: string;
|
|
84
|
+
getItemSummary: (_item: unknown, index?: number) => string;
|
|
85
|
+
arrayFields: {
|
|
86
|
+
links: {
|
|
87
|
+
type: string;
|
|
88
|
+
label: string;
|
|
89
|
+
getItemSummary: (item: {
|
|
90
|
+
title?: string;
|
|
91
|
+
}, index?: number) => string;
|
|
92
|
+
arrayFields: {
|
|
93
|
+
title: {
|
|
94
|
+
type: string;
|
|
95
|
+
label: string;
|
|
96
|
+
};
|
|
97
|
+
url: {
|
|
98
|
+
type: string;
|
|
99
|
+
label: string;
|
|
100
|
+
};
|
|
101
|
+
};
|
|
102
|
+
};
|
|
103
|
+
};
|
|
104
|
+
};
|
|
105
|
+
footerLinks: {
|
|
106
|
+
type: string;
|
|
107
|
+
label: string;
|
|
108
|
+
getItemSummary: (item: {
|
|
109
|
+
title?: string;
|
|
110
|
+
}, index?: number) => string;
|
|
111
|
+
arrayFields: {
|
|
112
|
+
title: {
|
|
113
|
+
type: string;
|
|
114
|
+
label: string;
|
|
115
|
+
};
|
|
116
|
+
url: {
|
|
117
|
+
type: string;
|
|
118
|
+
label: string;
|
|
119
|
+
};
|
|
120
|
+
};
|
|
121
|
+
};
|
|
81
122
|
footerText: {
|
|
82
123
|
type: string;
|
|
83
124
|
};
|
|
@@ -81,6 +81,60 @@ declare const conf: {
|
|
|
81
81
|
termsAndConditions: {
|
|
82
82
|
type: string;
|
|
83
83
|
};
|
|
84
|
+
columnLinks: {
|
|
85
|
+
type: string;
|
|
86
|
+
label: string;
|
|
87
|
+
getItemSummary: (_item: unknown, index?: number) => string;
|
|
88
|
+
arrayFields: {
|
|
89
|
+
links: {
|
|
90
|
+
type: string;
|
|
91
|
+
label: string;
|
|
92
|
+
getItemSummary: (item: {
|
|
93
|
+
title?: string;
|
|
94
|
+
}, index?: number) => string;
|
|
95
|
+
arrayFields: {
|
|
96
|
+
title: {
|
|
97
|
+
type: string;
|
|
98
|
+
label: string;
|
|
99
|
+
};
|
|
100
|
+
url: {
|
|
101
|
+
type: string;
|
|
102
|
+
label: string;
|
|
103
|
+
};
|
|
104
|
+
};
|
|
105
|
+
};
|
|
106
|
+
};
|
|
107
|
+
};
|
|
108
|
+
footerLinks: {
|
|
109
|
+
type: string;
|
|
110
|
+
label: string;
|
|
111
|
+
getItemSummary: (item: {
|
|
112
|
+
title?: string;
|
|
113
|
+
}, index?: number) => string;
|
|
114
|
+
arrayFields: {
|
|
115
|
+
title: {
|
|
116
|
+
type: string;
|
|
117
|
+
label: string;
|
|
118
|
+
};
|
|
119
|
+
url: {
|
|
120
|
+
type: string;
|
|
121
|
+
label: string;
|
|
122
|
+
};
|
|
123
|
+
};
|
|
124
|
+
};
|
|
125
|
+
socialMediaLinks: {
|
|
126
|
+
type: string;
|
|
127
|
+
label: string;
|
|
128
|
+
getItemSummary: (item: {
|
|
129
|
+
url?: string;
|
|
130
|
+
}, index?: number) => string;
|
|
131
|
+
arrayFields: {
|
|
132
|
+
url: {
|
|
133
|
+
type: string;
|
|
134
|
+
label: string;
|
|
135
|
+
};
|
|
136
|
+
};
|
|
137
|
+
};
|
|
84
138
|
footerText: {
|
|
85
139
|
type: string;
|
|
86
140
|
};
|
package/dist/components/puck-block/gallery-sections/fullscreen-portfolio/fullscreen-portfolio.js
CHANGED
|
@@ -112,7 +112,7 @@ const defaultProject = {
|
|
|
112
112
|
description: "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique.",
|
|
113
113
|
image: {
|
|
114
114
|
src: "https://picsum.photos/seed/fullscreen-port/1920/1080",
|
|
115
|
-
alt: "
|
|
115
|
+
alt: "Placeholder image"
|
|
116
116
|
},
|
|
117
117
|
url: "#",
|
|
118
118
|
button: { label: "View project", variant: "secondary" }
|
|
@@ -129,7 +129,7 @@ const defaultProject = {
|
|
|
129
129
|
description: "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros.",
|
|
130
130
|
image: {
|
|
131
131
|
src: "https://picsum.photos/seed/portfolio-card/1200/800",
|
|
132
|
-
alt: "
|
|
132
|
+
alt: "Placeholder image"
|
|
133
133
|
},
|
|
134
134
|
url: "#",
|
|
135
135
|
button: { label: "View project", variant: "link", size: "sm" },
|
|
@@ -96,7 +96,7 @@ const defaultProject = {
|
|
|
96
96
|
description: "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros.",
|
|
97
97
|
image: {
|
|
98
98
|
src: "https://picsum.photos/seed/portfolio-div/1200/800",
|
|
99
|
-
alt: "
|
|
99
|
+
alt: "Placeholder image"
|
|
100
100
|
},
|
|
101
101
|
url: "#",
|
|
102
102
|
button: { label: "View project", variant: "link", size: "sm" },
|
|
@@ -144,8 +144,18 @@ export declare const galleryStyleFields: {
|
|
|
144
144
|
}];
|
|
145
145
|
};
|
|
146
146
|
readonly slideBasis: {
|
|
147
|
-
readonly type: "
|
|
147
|
+
readonly type: "select";
|
|
148
148
|
readonly label: "Slide Basis";
|
|
149
|
+
readonly options: readonly [{
|
|
150
|
+
readonly label: "4/5";
|
|
151
|
+
readonly value: "4/5";
|
|
152
|
+
}, {
|
|
153
|
+
readonly label: "45%";
|
|
154
|
+
readonly value: "45%";
|
|
155
|
+
}, {
|
|
156
|
+
readonly label: "30%";
|
|
157
|
+
readonly value: "30%";
|
|
158
|
+
}];
|
|
149
159
|
};
|
|
150
160
|
readonly bordered: {
|
|
151
161
|
readonly type: "radio";
|
|
@@ -64,8 +64,13 @@ const galleryStyleFields = {
|
|
|
64
64
|
]
|
|
65
65
|
},
|
|
66
66
|
slideBasis: {
|
|
67
|
-
type: "
|
|
68
|
-
label: "Slide Basis"
|
|
67
|
+
type: "select",
|
|
68
|
+
label: "Slide Basis",
|
|
69
|
+
options: [
|
|
70
|
+
{ label: "4/5", value: "4/5" },
|
|
71
|
+
{ label: "45%", value: "45%" },
|
|
72
|
+
{ label: "30%", value: "30%" }
|
|
73
|
+
]
|
|
69
74
|
},
|
|
70
75
|
bordered: {
|
|
71
76
|
type: "radio",
|
|
@@ -5,6 +5,7 @@ import { useScroll, useTransform, motion } from "framer-motion";
|
|
|
5
5
|
import { cn } from "../../../../utils/css-utils.js";
|
|
6
6
|
import { SectionWrapper } from "../../../puck-core/section-wrapper.js";
|
|
7
7
|
import { useScrollContainer } from "../../../../hooks/use-scroll-container.js";
|
|
8
|
+
import { useEditorContext } from "../../../puck-core/core/context/editor-context.js";
|
|
8
9
|
import { CompoundImage } from "../../../puck-base/image.js";
|
|
9
10
|
const ScrollParallax = (props) => {
|
|
10
11
|
const { heading, description, images, styles } = {
|
|
@@ -12,6 +13,7 @@ const ScrollParallax = (props) => {
|
|
|
12
13
|
...props
|
|
13
14
|
};
|
|
14
15
|
const { className: sectionClassName, style: sectionStyle, css } = styles ?? {};
|
|
16
|
+
const { isEditor } = useEditorContext();
|
|
15
17
|
const transformRef = useRef(null);
|
|
16
18
|
const [scrollContainerRef] = useScrollContainer(transformRef);
|
|
17
19
|
const { scrollYProgress } = useScroll({
|
|
@@ -19,6 +21,22 @@ const ScrollParallax = (props) => {
|
|
|
19
21
|
...scrollContainerRef.current ? { container: scrollContainerRef } : {}
|
|
20
22
|
});
|
|
21
23
|
const x = useTransform(scrollYProgress, [0, 1], ["0%", "-100%"]);
|
|
24
|
+
if (isEditor) {
|
|
25
|
+
return /* @__PURE__ */ jsxs(SectionWrapper, { ref: transformRef, className: cn(sectionClassName), style: sectionStyle, css, children: [
|
|
26
|
+
/* @__PURE__ */ jsx("div", { className: "px-[5%] pt-16 md:pt-24 lg:pt-28", children: /* @__PURE__ */ jsxs("div", { className: "container text-center", children: [
|
|
27
|
+
/* @__PURE__ */ jsx("h2", { className: "rb-5 mb-5 text-5xl font-bold md:mb-6 md:text-7xl lg:text-8xl", children: heading }),
|
|
28
|
+
/* @__PURE__ */ jsx("p", { className: "md:text-md", children: description })
|
|
29
|
+
] }) }),
|
|
30
|
+
/* @__PURE__ */ jsx("div", { className: "px-[5%] py-12", children: /* @__PURE__ */ jsx("div", { className: "grid grid-cols-1 gap-6 sm:grid-cols-2 lg:grid-cols-3", children: images.map((image, index) => /* @__PURE__ */ jsx("div", { className: "overflow-hidden", children: /* @__PURE__ */ jsx(
|
|
31
|
+
CompoundImage,
|
|
32
|
+
{
|
|
33
|
+
className: "aspect-video w-full object-cover",
|
|
34
|
+
src: image.src,
|
|
35
|
+
alt: image.alt
|
|
36
|
+
}
|
|
37
|
+
) }, index)) }) })
|
|
38
|
+
] });
|
|
39
|
+
}
|
|
22
40
|
return /* @__PURE__ */ jsxs(SectionWrapper, { ref: transformRef, className: cn(sectionClassName), style: sectionStyle, css, children: [
|
|
23
41
|
/* @__PURE__ */ jsx("div", { className: "px-[5%] pt-16 md:pt-24 lg:pt-28", children: /* @__PURE__ */ jsxs("div", { className: "container text-center", children: [
|
|
24
42
|
/* @__PURE__ */ jsx("h2", { className: "rb-5 mb-5 text-5xl font-bold md:mb-6 md:text-7xl lg:text-8xl", children: heading }),
|
|
@@ -5,6 +5,7 @@ import { useScroll, useTransform, motion, useSpring, easeOut, easeInOut } from "
|
|
|
5
5
|
import { cn } from "../../../../utils/css-utils.js";
|
|
6
6
|
import { SectionWrapper } from "../../../puck-core/section-wrapper.js";
|
|
7
7
|
import { useScrollContainer } from "../../../../hooks/use-scroll-container.js";
|
|
8
|
+
import { useEditorContext } from "../../../puck-core/core/context/editor-context.js";
|
|
8
9
|
import { CompoundImage } from "../../../puck-base/image.js";
|
|
9
10
|
const ScrollParallaxPortfolio = (props) => {
|
|
10
11
|
const { projects, styles } = {
|
|
@@ -23,6 +24,7 @@ const ThreeImageParallaxVariant = ({
|
|
|
23
24
|
sectionStyle,
|
|
24
25
|
css
|
|
25
26
|
}) => {
|
|
27
|
+
const { isEditor } = useEditorContext();
|
|
26
28
|
const transformRef = useRef(null);
|
|
27
29
|
const [scrollContainerRef] = useScrollContainer(transformRef);
|
|
28
30
|
const { scrollYProgress } = useScroll({
|
|
@@ -76,23 +78,23 @@ const ThreeImageParallaxVariant = ({
|
|
|
76
78
|
return /* @__PURE__ */ jsxs(
|
|
77
79
|
"div",
|
|
78
80
|
{
|
|
79
|
-
className: cn("relative flex h-[500vh]
|
|
80
|
-
"mt-[-40vh]": index > 0
|
|
81
|
+
className: cn("relative flex flex-col", isEditor ? "h-auto mb-12" : "h-[500vh]", {
|
|
82
|
+
"mt-[-40vh]": !isEditor && index > 0
|
|
81
83
|
}),
|
|
82
84
|
children: [
|
|
83
85
|
/* @__PURE__ */ jsx(
|
|
84
86
|
motion.div,
|
|
85
87
|
{
|
|
86
|
-
className: "sticky top-0
|
|
87
|
-
style: computedStyles[index].headerStyles,
|
|
88
|
-
children: /* @__PURE__ */ jsxs("div", { className: "
|
|
88
|
+
className: cn("flex justify-center", isEditor ? "relative h-auto py-8" : "sticky top-0 h-[150vh]"),
|
|
89
|
+
style: isEditor ? { opacity: 1, scale: 1 } : computedStyles[index].headerStyles,
|
|
90
|
+
children: /* @__PURE__ */ jsxs("div", { className: cn("-z-10 flex w-full max-w-lg flex-col items-center text-center", isEditor ? "relative" : "absolute top-[50vh]"), children: [
|
|
89
91
|
/* @__PURE__ */ jsx("h3", { className: "text-5xl font-bold md:text-7xl lg:text-8xl", children: project.title }),
|
|
90
92
|
project.tags && /* @__PURE__ */ jsx("div", { className: "mt-4 flex flex-wrap justify-center gap-2", children: project.tags.map((tag, tagIndex) => /* @__PURE__ */ jsx("li", { className: "flex", children: /* @__PURE__ */ jsx("div", { className: "inline-flex border border-neutral-lightest bg-background-secondary px-2 py-1 text-sm font-semibold text-text-primary", children: tag.label }) }, tagIndex)) })
|
|
91
93
|
] })
|
|
92
94
|
}
|
|
93
95
|
),
|
|
94
|
-
/* @__PURE__ */ jsxs("div", { className: "
|
|
95
|
-
/* @__PURE__ */ jsx("a", { href: "#", className: "inline-block max-w-full", children: /* @__PURE__ */ jsx("div", { className: "flex
|
|
96
|
+
/* @__PURE__ */ jsxs("div", { className: cn("z-10 flex items-center justify-center overflow-hidden", isEditor ? "relative h-auto" : "sticky top-0 h-screen"), children: [
|
|
97
|
+
/* @__PURE__ */ jsx("a", { href: "#", className: "inline-block max-w-full", children: /* @__PURE__ */ jsx("div", { className: cn("flex w-full max-w-lg items-center justify-center overflow-hidden", isEditor ? "h-auto" : "h-screen"), children: /* @__PURE__ */ jsx(
|
|
96
98
|
CompoundImage,
|
|
97
99
|
{
|
|
98
100
|
src: ((_a = project.imageCenter) == null ? void 0 : _a.src) ?? project.image.src,
|
|
@@ -100,11 +102,11 @@ const ThreeImageParallaxVariant = ({
|
|
|
100
102
|
className: "size-full object-contain"
|
|
101
103
|
}
|
|
102
104
|
) }) }),
|
|
103
|
-
/* @__PURE__ */ jsx("div", { className: "absolute inset-y-0 left-0 right-auto z-20 hidden
|
|
105
|
+
/* @__PURE__ */ jsx("div", { className: cn("absolute inset-y-0 left-0 right-auto z-20 hidden w-full max-w-xxs lg:flex", isEditor ? "h-auto" : "h-screen"), children: /* @__PURE__ */ jsx(
|
|
104
106
|
motion.div,
|
|
105
107
|
{
|
|
106
|
-
className: "relative w-full pt-[100vh]",
|
|
107
|
-
style: computedStyles[index].imageLeftStyles,
|
|
108
|
+
className: cn("relative w-full", isEditor ? "pt-0" : "pt-[100vh]"),
|
|
109
|
+
style: isEditor ? { y: 0 } : computedStyles[index].imageLeftStyles,
|
|
108
110
|
children: /* @__PURE__ */ jsx(
|
|
109
111
|
CompoundImage,
|
|
110
112
|
{
|
|
@@ -115,11 +117,11 @@ const ThreeImageParallaxVariant = ({
|
|
|
115
117
|
)
|
|
116
118
|
}
|
|
117
119
|
) }),
|
|
118
|
-
/* @__PURE__ */ jsx("div", { className: "absolute inset-y-0 left-auto right-0 z-20 hidden
|
|
120
|
+
/* @__PURE__ */ jsx("div", { className: cn("absolute inset-y-0 left-auto right-0 z-20 hidden w-full max-w-xxs lg:flex", isEditor ? "h-auto" : "h-screen"), children: /* @__PURE__ */ jsx(
|
|
119
121
|
motion.div,
|
|
120
122
|
{
|
|
121
|
-
className: "relative w-full pt-[100vh]",
|
|
122
|
-
style: computedStyles[index].imageRightStyles,
|
|
123
|
+
className: cn("relative w-full", isEditor ? "pt-0" : "pt-[100vh]"),
|
|
124
|
+
style: isEditor ? { y: 0 } : computedStyles[index].imageRightStyles,
|
|
123
125
|
children: /* @__PURE__ */ jsx(
|
|
124
126
|
CompoundImage,
|
|
125
127
|
{
|
|
@@ -131,13 +133,13 @@ const ThreeImageParallaxVariant = ({
|
|
|
131
133
|
}
|
|
132
134
|
) })
|
|
133
135
|
] }),
|
|
134
|
-
/* @__PURE__ */ jsx("div", { className: "absolute inset-0 -z-10 mt-[100vh]" })
|
|
136
|
+
!isEditor && /* @__PURE__ */ jsx("div", { className: "absolute inset-0 -z-10 mt-[100vh]" })
|
|
135
137
|
]
|
|
136
138
|
},
|
|
137
139
|
index
|
|
138
140
|
);
|
|
139
141
|
}) }) }),
|
|
140
|
-
/* @__PURE__ */ jsx("div", { className: "h-screen" })
|
|
142
|
+
!isEditor && /* @__PURE__ */ jsx("div", { className: "h-screen" })
|
|
141
143
|
] });
|
|
142
144
|
};
|
|
143
145
|
const ScaleOpacityVariant = ({
|
|
@@ -146,13 +148,14 @@ const ScaleOpacityVariant = ({
|
|
|
146
148
|
sectionStyle,
|
|
147
149
|
css
|
|
148
150
|
}) => {
|
|
151
|
+
const { isEditor } = useEditorContext();
|
|
149
152
|
const containerRef = useRef(null);
|
|
150
153
|
const [scrollContainerRef] = useScrollContainer(containerRef);
|
|
151
154
|
const { scrollYProgress } = useScroll({
|
|
152
155
|
target: containerRef,
|
|
153
156
|
...scrollContainerRef.current ? { container: scrollContainerRef } : {}
|
|
154
157
|
});
|
|
155
|
-
return /* @__PURE__ */ jsx(SectionWrapper, { ref: containerRef, className: cn("relative px-[5%]", sectionClassName), style: sectionStyle, css, children: /* @__PURE__ */ jsx("div", { className: "h-[300vh]", children: /* @__PURE__ */ jsx("div", { className: "
|
|
158
|
+
return /* @__PURE__ */ jsx(SectionWrapper, { ref: containerRef, className: cn("relative px-[5%]", sectionClassName), style: sectionStyle, css, children: /* @__PURE__ */ jsx("div", { className: isEditor ? "h-auto" : "h-[300vh]", children: /* @__PURE__ */ jsx("div", { className: cn("flex items-center justify-center", isEditor ? "relative flex-col gap-8 py-12" : "sticky top-0 h-screen"), children: projects.map((project, index) => {
|
|
156
159
|
const segmentSize = 1 / projects.length;
|
|
157
160
|
const start = index * segmentSize;
|
|
158
161
|
const end = start + segmentSize;
|
|
@@ -169,8 +172,8 @@ const ScaleOpacityVariant = ({
|
|
|
169
172
|
return /* @__PURE__ */ jsx(
|
|
170
173
|
motion.div,
|
|
171
174
|
{
|
|
172
|
-
style: { opacity, scale },
|
|
173
|
-
className: "
|
|
175
|
+
style: isEditor ? { opacity: 1, scale: 1 } : { opacity, scale },
|
|
176
|
+
className: cn("flex items-center justify-center", isEditor ? "relative w-full" : "absolute inset-0"),
|
|
174
177
|
children: /* @__PURE__ */ jsxs("div", { className: "container max-w-4xl border border-border-primary bg-background-primary p-8 md:p-12", children: [
|
|
175
178
|
/* @__PURE__ */ jsx("div", { className: "mb-6", children: /* @__PURE__ */ jsx(
|
|
176
179
|
CompoundImage,
|
|
@@ -201,7 +204,7 @@ const defaultProject = {
|
|
|
201
204
|
description: "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique.",
|
|
202
205
|
image: {
|
|
203
206
|
src: "https://picsum.photos/seed/scroll-port/1200/800",
|
|
204
|
-
alt: "
|
|
207
|
+
alt: "Placeholder image"
|
|
205
208
|
},
|
|
206
209
|
url: "#",
|
|
207
210
|
button: { label: "View project" },
|
|
@@ -212,15 +215,15 @@ const defaultProject = {
|
|
|
212
215
|
],
|
|
213
216
|
imageCenter: {
|
|
214
217
|
src: "https://picsum.photos/seed/scroll-port-center/800/1000",
|
|
215
|
-
alt: "
|
|
218
|
+
alt: "Placeholder center"
|
|
216
219
|
},
|
|
217
220
|
imageLeft: {
|
|
218
221
|
src: "https://picsum.photos/seed/scroll-port-left/400/600",
|
|
219
|
-
alt: "
|
|
222
|
+
alt: "Placeholder left"
|
|
220
223
|
},
|
|
221
224
|
imageRight: {
|
|
222
225
|
src: "https://picsum.photos/seed/scroll-port-right/400/600",
|
|
223
|
-
alt: "
|
|
226
|
+
alt: "Placeholder right"
|
|
224
227
|
}
|
|
225
228
|
};
|
|
226
229
|
const ScrollParallaxPortfolioDefaults = {
|