dune-react 0.0.23 → 0.0.25
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/image.js +1 -1
- package/dist/components/puck-block/banner-sections/dual-row-marquee/dual-row-marquee.js +77 -53
- package/dist/components/puck-block/contact-sections/tab-locations/tab-locations.js +71 -55
- package/dist/components/puck-block/feature-sections/tab-feature/component.js +1 -1
- package/dist/components/puck-block/gallery-sections/image-carousel/index.d.ts +14 -1
- package/dist/components/puck-block/gallery-sections/interactive-portfolio/interactive-portfolio.js +165 -104
- package/dist/components/puck-block/gallery-sections/masonry-grid/index.d.ts +17 -1
- package/dist/components/puck-block/gallery-sections/masonry-grid/masonry-grid.js +56 -31
- package/dist/components/puck-block/gallery-sections/portfolio-cards/index.d.ts +17 -1
- package/dist/components/puck-block/gallery-sections/portfolio-cards/portfolio-cards.js +40 -12
- package/dist/components/puck-block/gallery-sections/props.d.ts +31 -2
- package/dist/components/puck-block/gallery-sections/props.js +17 -4
- package/dist/components/puck-block/gallery-sections/scroll-parallax/scroll-parallax.js +68 -37
- package/dist/components/puck-block/gallery-sections/scroll-parallax-portfolio/scroll-parallax-portfolio.js +308 -151
- package/dist/components/puck-block/gallery-sections/static-grid/index.d.ts +17 -1
- package/dist/components/puck-block/header-sections/centered-navbar/centered-navbar.js +94 -14
- package/dist/components/puck-block/hero-sections/grid-expand-hero/index.d.ts +17 -1
- package/dist/components/puck-block/hero-sections/inline-image-hero/inline-image-hero.js +59 -28
- package/dist/components/puck-block/hero-sections/multi-image-grid-hero/index.d.ts +17 -1
- package/dist/components/puck-block/hero-sections/props.d.ts +34 -2
- package/dist/components/puck-block/hero-sections/props.js +18 -4
- package/dist/components/puck-block/hero-sections/tab-hero/component.js +1 -1
- package/dist/components/puck-block/index.d.ts +1 -0
- package/dist/components/puck-block/location-sections/index.d.ts +3 -0
- package/dist/components/puck-block/location-sections/location-1/index.js +102 -0
- package/dist/components/puck-block/location-sections/location-1/location.d.ts +0 -3
- package/dist/components/puck-block/location-sections/location-1/location.js +139 -0
- package/dist/components/puck-block/location-sections/location-2/index.js +126 -0
- package/dist/components/puck-block/location-sections/location-2/location.d.ts +0 -3
- package/dist/components/puck-block/location-sections/location-2/location.js +133 -0
- package/dist/components/puck-block/location-sections/location-3/index.js +109 -0
- package/dist/components/puck-block/location-sections/location-3/location.d.ts +0 -3
- package/dist/components/puck-block/location-sections/location-3/location.js +140 -0
- package/dist/components/puck-block/location-sections/props.d.ts +0 -3
- package/dist/components/puck-block/metrics-sections/tab-stats/tab-stats.js +1 -1
- package/dist/components/puck-block/pricing-sections/pricing-comparison-table/component.js +134 -33
- package/dist/components/puck-block/pricing-sections/tab-pricing-grid/component.js +86 -40
- package/dist/components/puck-block/pricing-sections/tab-single-pricing/component.js +1 -1
- package/dist/components/puck-block/registry.generated.d.ts +228 -6
- package/dist/components/puck-block/registry.generated.js +157 -138
- package/dist/components/puck-block/showcase-sections/tab-timeline/component.js +1 -1
- package/dist/components/puck-block/testimonial-sections/bento-testimonial/component.js +157 -83
- package/dist/components/puck-block/testimonial-sections/centered-testimonial/component.js +71 -28
- package/dist/components/puck-block/testimonial-sections/image-testimonial/component.js +66 -29
- package/dist/components/puck-block/testimonial-sections/image-testimonial-carousel/component.js +1 -1
- package/dist/components/puck-block/testimonial-sections/tab-testimonial/component.js +4 -4
- package/dist/components/puck-block/testimonial-sections/testimonial-card-grid/component.js +2 -2
- package/dist/components/puck-block/testimonial-sections/testimonial-carousel/component.js +1 -1
- package/dist/components/puck-core/core/props/form.js +25 -1
- package/dist/components/puck-core/fields/location-field.js +4 -1
- package/dist/index.js +6 -0
- package/package.json +4 -1
|
@@ -1,11 +1,7 @@
|
|
|
1
|
-
"use client";
|
|
2
1
|
import { jsxs, jsx } from "react/jsx-runtime";
|
|
3
|
-
import
|
|
4
|
-
import { useScroll, useTransform, motion } from "framer-motion";
|
|
5
|
-
import React__default, { useRef } from "react";
|
|
2
|
+
import React__default from "react";
|
|
6
3
|
import { cn } from "../../../../utils/css-utils.js";
|
|
7
4
|
import { SectionWrapper } from "../../../puck-core/section-wrapper.js";
|
|
8
|
-
import { useScrollContainer } from "../../../../hooks/use-scroll-container.js";
|
|
9
5
|
const DualRowMarquee = (props) => {
|
|
10
6
|
const {
|
|
11
7
|
headingsTop = [],
|
|
@@ -20,68 +16,96 @@ const DualRowMarquee = (props) => {
|
|
|
20
16
|
style: sectionStyle,
|
|
21
17
|
css
|
|
22
18
|
} = styles ?? {};
|
|
23
|
-
const
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
scrollYProgress,
|
|
38
|
-
[0, 1],
|
|
39
|
-
isMobile ? ["-5%", "0%"] : ["-25%", "0%"]
|
|
40
|
-
);
|
|
41
|
-
const renderHeadings = (headings, translate) => /* @__PURE__ */ jsx(
|
|
42
|
-
motion.div,
|
|
43
|
-
{
|
|
44
|
-
className: "grid auto-cols-max grid-flow-col grid-cols-[max-content] items-center justify-around py-2",
|
|
45
|
-
style: { x: translate },
|
|
46
|
-
children: headings.map((heading, index) => /* @__PURE__ */ jsxs(React__default.Fragment, { children: [
|
|
47
|
-
/* @__PURE__ */ jsx("div", { className: "flex items-center justify-center whitespace-nowrap px-4 text-center lg:text-left", children: /* @__PURE__ */ jsx("h1", { className: "text-xl font-bold md:text-2xl", children: heading.title }) }),
|
|
48
|
-
/* @__PURE__ */ jsx("div", { className: "relative w-full overflow-hidden", children: /* @__PURE__ */ jsx(
|
|
49
|
-
"img",
|
|
50
|
-
{
|
|
51
|
-
src: heading.image.src,
|
|
52
|
-
alt: heading.image.alt,
|
|
53
|
-
className: "aspect-square size-full max-h-16 object-cover"
|
|
54
|
-
}
|
|
55
|
-
) })
|
|
56
|
-
] }, index))
|
|
57
|
-
}
|
|
58
|
-
);
|
|
19
|
+
const renderHeadings = (headings) => {
|
|
20
|
+
const repeated = [...headings, ...headings, ...headings];
|
|
21
|
+
return /* @__PURE__ */ jsx("div", { className: "flex shrink-0 items-center py-2", children: repeated.map((heading, index) => /* @__PURE__ */ jsxs(React__default.Fragment, { children: [
|
|
22
|
+
/* @__PURE__ */ jsx("div", { className: "flex shrink-0 items-center justify-center whitespace-nowrap px-4 text-center lg:text-left", children: /* @__PURE__ */ jsx("h1", { className: "text-xl font-bold md:text-2xl", children: heading.title }) }),
|
|
23
|
+
/* @__PURE__ */ jsx("div", { className: "relative shrink-0 overflow-hidden", children: /* @__PURE__ */ jsx(
|
|
24
|
+
"img",
|
|
25
|
+
{
|
|
26
|
+
src: heading.image.src,
|
|
27
|
+
alt: heading.image.alt,
|
|
28
|
+
className: "h-8 object-contain"
|
|
29
|
+
}
|
|
30
|
+
) })
|
|
31
|
+
] }, index)) });
|
|
32
|
+
};
|
|
59
33
|
return /* @__PURE__ */ jsxs(
|
|
60
34
|
SectionWrapper,
|
|
61
35
|
{
|
|
62
|
-
|
|
63
|
-
|
|
36
|
+
className: cn(
|
|
37
|
+
"flex w-screen max-w-full flex-col justify-end overflow-hidden",
|
|
38
|
+
sectionClassName
|
|
39
|
+
),
|
|
64
40
|
style: sectionStyle,
|
|
65
41
|
css,
|
|
66
42
|
children: [
|
|
67
|
-
/* @__PURE__ */ jsx("div", { className: "flex
|
|
68
|
-
/* @__PURE__ */ jsx("div", { className: "flex
|
|
43
|
+
/* @__PURE__ */ jsx("div", { className: "flex animate-marquee-top", children: Array(2).fill(0).map((_, index) => /* @__PURE__ */ jsx(React__default.Fragment, { children: renderHeadings(headingsTop) }, index)) }),
|
|
44
|
+
/* @__PURE__ */ jsx("div", { className: "flex animate-marquee-bottom", children: Array(2).fill(0).map((_, index) => /* @__PURE__ */ jsx(React__default.Fragment, { children: renderHeadings(headingsBottom) }, index)) })
|
|
69
45
|
]
|
|
70
46
|
}
|
|
71
47
|
);
|
|
72
48
|
};
|
|
73
49
|
const DualRowMarqueeDefaults = {
|
|
74
50
|
headingsTop: [
|
|
75
|
-
{
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
51
|
+
{
|
|
52
|
+
title: "Brand Name",
|
|
53
|
+
image: {
|
|
54
|
+
src: "https://picsum.photos/seed/banner-dual-1/100/100",
|
|
55
|
+
alt: "Brand Name 1"
|
|
56
|
+
}
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
title: "Brand Name",
|
|
60
|
+
image: {
|
|
61
|
+
src: "https://picsum.photos/seed/banner-dual-2/100/100",
|
|
62
|
+
alt: "Brand Name 2"
|
|
63
|
+
}
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
title: "Brand Name",
|
|
67
|
+
image: {
|
|
68
|
+
src: "https://picsum.photos/seed/banner-dual-3/100/100",
|
|
69
|
+
alt: "Brand Name 3"
|
|
70
|
+
}
|
|
71
|
+
},
|
|
72
|
+
{
|
|
73
|
+
title: "Brand Name",
|
|
74
|
+
image: {
|
|
75
|
+
src: "https://picsum.photos/seed/banner-dual-4/100/100",
|
|
76
|
+
alt: "Brand Name 4"
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
79
|
],
|
|
80
80
|
headingsBottom: [
|
|
81
|
-
{
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
81
|
+
{
|
|
82
|
+
title: "Brand Name",
|
|
83
|
+
image: {
|
|
84
|
+
src: "https://picsum.photos/seed/banner-dual-5/100/100",
|
|
85
|
+
alt: "Brand Name 5"
|
|
86
|
+
}
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
title: "Brand Name",
|
|
90
|
+
image: {
|
|
91
|
+
src: "https://picsum.photos/seed/banner-dual-6/100/100",
|
|
92
|
+
alt: "Brand Name 6"
|
|
93
|
+
}
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
title: "Brand Name",
|
|
97
|
+
image: {
|
|
98
|
+
src: "https://picsum.photos/seed/banner-dual-7/100/100",
|
|
99
|
+
alt: "Brand Name 7"
|
|
100
|
+
}
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
title: "Brand Name",
|
|
104
|
+
image: {
|
|
105
|
+
src: "https://picsum.photos/seed/banner-dual-8/100/100",
|
|
106
|
+
alt: "Brand Name 8"
|
|
107
|
+
}
|
|
108
|
+
}
|
|
85
109
|
]
|
|
86
110
|
};
|
|
87
111
|
export {
|
|
@@ -10,62 +10,75 @@ const TabLocations = (props) => {
|
|
|
10
10
|
...TabLocationsDefaults,
|
|
11
11
|
...props
|
|
12
12
|
};
|
|
13
|
-
const {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
},
|
|
40
|
-
index
|
|
41
|
-
)) }),
|
|
42
|
-
/* @__PURE__ */ jsx("div", { children: tabs.map((tab) => /* @__PURE__ */ jsx(
|
|
43
|
-
TabsContent,
|
|
44
|
-
{
|
|
45
|
-
value: tab.value,
|
|
46
|
-
className: "data-[state=active]:animate-tabs",
|
|
47
|
-
children: /* @__PURE__ */ jsx("div", { className: "relative size-full", children: mediaType === "map" ? /* @__PURE__ */ jsx("a", { href: tab.mapUrl, className: "block", children: /* @__PURE__ */ jsx(
|
|
48
|
-
CompoundImage,
|
|
13
|
+
const {
|
|
14
|
+
className: sectionClassName,
|
|
15
|
+
style: sectionStyle,
|
|
16
|
+
css,
|
|
17
|
+
mediaType = "map"
|
|
18
|
+
} = styles ?? {};
|
|
19
|
+
return /* @__PURE__ */ jsx(
|
|
20
|
+
SectionWrapper,
|
|
21
|
+
{
|
|
22
|
+
className: cn("px-[5%] py-8 md:py-12 lg:py-14", sectionClassName),
|
|
23
|
+
style: sectionStyle,
|
|
24
|
+
css,
|
|
25
|
+
children: /* @__PURE__ */ jsxs("div", { className: "container", children: [
|
|
26
|
+
/* @__PURE__ */ jsxs("div", { className: "mb-12 flex max-w-lg flex-col justify-start md:mb-18 lg:mb-20", children: [
|
|
27
|
+
/* @__PURE__ */ jsx("p", { className: "mb-3 font-semibold md:mb-4", children: tagline }),
|
|
28
|
+
/* @__PURE__ */ jsx("h2", { className: "mb-5 text-5xl font-bold md:mb-6 md:text-7xl lg:text-8xl", children: heading }),
|
|
29
|
+
/* @__PURE__ */ jsx("p", { className: "md:text-md", children: description })
|
|
30
|
+
] }),
|
|
31
|
+
/* @__PURE__ */ jsxs(
|
|
32
|
+
Tabs,
|
|
33
|
+
{
|
|
34
|
+
defaultValue: (_a = tabs[0]) == null ? void 0 : _a.value,
|
|
35
|
+
className: "relative grid auto-cols-fr grid-cols-1 gap-12 md:grid-cols-[.5fr_1fr] md:gap-y-16 lg:gap-x-20 lg:gap-y-16",
|
|
36
|
+
children: [
|
|
37
|
+
/* @__PURE__ */ jsx(TabsList, { className: "relative grid h-full auto-cols-fr grid-cols-1 gap-x-4 gap-y-10", children: tabs.map((tab, index) => /* @__PURE__ */ jsx(
|
|
38
|
+
TabsTrigger,
|
|
49
39
|
{
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
className: "
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
40
|
+
value: tab.value,
|
|
41
|
+
className: "items-start justify-start border-0 border-l-2 border-border-primary border-transparent px-0 py-0 pl-8 data-[state=active]:border-black data-[state=active]:bg-background-primary data-[state=active]:text-text-primary",
|
|
42
|
+
children: /* @__PURE__ */ jsxs("div", { className: "text-left", children: [
|
|
43
|
+
/* @__PURE__ */ jsx("h3", { className: "mb-3 text-xl font-bold md:mb-4 md:text-2xl", children: tab.title }),
|
|
44
|
+
/* @__PURE__ */ jsxs("p", { className: "inline-block whitespace-normal", children: [
|
|
45
|
+
/* @__PURE__ */ jsx("span", { className: "block", children: tab.addressLine1 }),
|
|
46
|
+
/* @__PURE__ */ jsx("span", { className: "block", children: tab.addressLine2 })
|
|
47
|
+
] }),
|
|
48
|
+
/* @__PURE__ */ jsx("div", { className: "mt-5 font-semibold md:mt-6", children: /* @__PURE__ */ jsx("p", { children: tab.buttonLabel }) })
|
|
49
|
+
] })
|
|
50
|
+
},
|
|
51
|
+
index
|
|
52
|
+
)) }),
|
|
53
|
+
/* @__PURE__ */ jsx("div", { children: tabs.map((tab) => /* @__PURE__ */ jsx(
|
|
54
|
+
TabsContent,
|
|
56
55
|
{
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
className: "size-full
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
56
|
+
value: tab.value,
|
|
57
|
+
className: "animate-tabs",
|
|
58
|
+
children: /* @__PURE__ */ jsx("div", { className: "relative size-full", children: mediaType === "map" ? /* @__PURE__ */ jsx("a", { href: tab.mapUrl, className: "block", children: /* @__PURE__ */ jsx(
|
|
59
|
+
CompoundImage,
|
|
60
|
+
{
|
|
61
|
+
src: tab.image.src,
|
|
62
|
+
alt: tab.image.alt,
|
|
63
|
+
className: "size-full object-cover"
|
|
64
|
+
}
|
|
65
|
+
) }) : /* @__PURE__ */ jsx(
|
|
66
|
+
CompoundImage,
|
|
67
|
+
{
|
|
68
|
+
src: tab.image.src,
|
|
69
|
+
alt: tab.image.alt,
|
|
70
|
+
className: "size-full object-cover"
|
|
71
|
+
}
|
|
72
|
+
) })
|
|
73
|
+
},
|
|
74
|
+
tab.value
|
|
75
|
+
)) })
|
|
76
|
+
]
|
|
77
|
+
}
|
|
78
|
+
)
|
|
79
|
+
] })
|
|
80
|
+
}
|
|
81
|
+
);
|
|
69
82
|
};
|
|
70
83
|
const TabLocationsDefaults = {
|
|
71
84
|
tagline: "Tagline",
|
|
@@ -73,7 +86,10 @@ const TabLocationsDefaults = {
|
|
|
73
86
|
description: "Lorem ipsum dolor sit amet, consectetur adipiscing elit.",
|
|
74
87
|
button: { label: "Submit" },
|
|
75
88
|
buttons: [],
|
|
76
|
-
image: {
|
|
89
|
+
image: {
|
|
90
|
+
src: "https://picsum.photos/seed/contact-tab/800/600",
|
|
91
|
+
alt: "Placeholder"
|
|
92
|
+
},
|
|
77
93
|
email: "",
|
|
78
94
|
phone: "",
|
|
79
95
|
address: "",
|
|
@@ -89,8 +89,21 @@ declare const conf: {
|
|
|
89
89
|
}];
|
|
90
90
|
};
|
|
91
91
|
slidesPerView: {
|
|
92
|
-
readonly type: "
|
|
92
|
+
readonly type: "select";
|
|
93
93
|
readonly label: "Slides Per View";
|
|
94
|
+
readonly options: readonly [{
|
|
95
|
+
readonly label: "1";
|
|
96
|
+
readonly value: "1";
|
|
97
|
+
}, {
|
|
98
|
+
readonly label: "1 → 2 (responsive)";
|
|
99
|
+
readonly value: "1-md2";
|
|
100
|
+
}, {
|
|
101
|
+
readonly label: "2 → 3 (responsive)";
|
|
102
|
+
readonly value: "2-md3";
|
|
103
|
+
}, {
|
|
104
|
+
readonly label: "2 → 4 (responsive)";
|
|
105
|
+
readonly value: "2-md4";
|
|
106
|
+
}];
|
|
94
107
|
};
|
|
95
108
|
slideOverflow: {
|
|
96
109
|
readonly type: "radio";
|