@mission-studio/puck 1.0.5 → 1.0.15
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/{ResponsiveToggleField-CVhKzDAT.d.mts → ResponsiveToggleField-BGofgB3u.d.mts} +1 -49
- package/dist/{ResponsiveToggleField-CVhKzDAT.d.ts → ResponsiveToggleField-BGofgB3u.d.ts} +1 -49
- package/dist/chunk-A3QDUUOF.mjs +80 -0
- package/dist/{chunk-R7TH6TWG.mjs → chunk-HHHD5TX2.mjs} +52 -82
- package/dist/{chunk-OZYZPWP7.mjs → chunk-JD6CULMT.mjs} +248 -284
- package/dist/{chunk-TTKY3YGP.mjs → chunk-XRKFMCSS.mjs} +1 -79
- package/dist/config-entry.js +334 -395
- package/dist/config-entry.mjs +4 -3
- package/dist/editor.d.mts +3 -2
- package/dist/editor.d.ts +3 -2
- package/dist/editor.js +271 -309
- package/dist/editor.mjs +8 -6
- package/dist/hooks/index.d.mts +3 -2
- package/dist/hooks/index.d.ts +3 -2
- package/dist/index.d.mts +6 -287
- package/dist/index.d.ts +6 -287
- package/dist/index.js +59 -92
- package/dist/index.mjs +17 -15
- package/dist/renderer.d.mts +287 -0
- package/dist/renderer.d.ts +287 -0
- package/dist/renderer.js +2162 -0
- package/dist/renderer.mjs +55 -0
- package/dist/styles.css +1 -1
- package/dist/typography-DwjKOx3F.d.mts +49 -0
- package/dist/typography-DwjKOx3F.d.ts +49 -0
- package/package.json +6 -1
package/dist/index.js
CHANGED
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __create = Object.create;
|
|
3
2
|
var __defProp = Object.defineProperty;
|
|
4
3
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
4
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
-
var __getProtoOf = Object.getPrototypeOf;
|
|
7
5
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
6
|
var __export = (target, all) => {
|
|
9
7
|
for (var name in all)
|
|
@@ -17,14 +15,6 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
17
15
|
}
|
|
18
16
|
return to;
|
|
19
17
|
};
|
|
20
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
-
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
-
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
-
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
-
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
-
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
-
mod
|
|
27
|
-
));
|
|
28
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
19
|
|
|
30
20
|
// index.ts
|
|
@@ -332,8 +322,15 @@ function Paragraph({
|
|
|
332
322
|
return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("p", { id, style, children: resolvedText });
|
|
333
323
|
}
|
|
334
324
|
|
|
335
|
-
//
|
|
336
|
-
|
|
325
|
+
// hooks/useGtmEvent.ts
|
|
326
|
+
function useGtmEvent() {
|
|
327
|
+
return (eventName, data) => {
|
|
328
|
+
if (typeof window === "undefined") return;
|
|
329
|
+
if (typeof window.gtag === "function") {
|
|
330
|
+
window.gtag("event", eventName, data || {});
|
|
331
|
+
}
|
|
332
|
+
};
|
|
333
|
+
}
|
|
337
334
|
|
|
338
335
|
// hooks/useUtmParams.ts
|
|
339
336
|
var import_react3 = require("react");
|
|
@@ -425,6 +422,7 @@ function Button({
|
|
|
425
422
|
const { resolveColor: resolveColor2 } = useTheme();
|
|
426
423
|
const { getEntryValue } = useEntries();
|
|
427
424
|
const utm = useUtmParams();
|
|
425
|
+
const sendEvent = useGtmEvent();
|
|
428
426
|
const resolvedText = (() => {
|
|
429
427
|
if (!text) return "Button";
|
|
430
428
|
if (typeof text === "string") return text;
|
|
@@ -438,15 +436,12 @@ function Button({
|
|
|
438
436
|
})();
|
|
439
437
|
const handleClick = () => {
|
|
440
438
|
const sessionId = typeof window !== "undefined" ? sessionStorage.getItem("session_id") : null;
|
|
441
|
-
(
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
session_id: sessionId,
|
|
448
|
-
...utm
|
|
449
|
-
}
|
|
439
|
+
sendEvent("button_click", {
|
|
440
|
+
text: resolvedText,
|
|
441
|
+
href: href || void 0,
|
|
442
|
+
variant,
|
|
443
|
+
session_id: sessionId,
|
|
444
|
+
...utm
|
|
450
445
|
});
|
|
451
446
|
};
|
|
452
447
|
const resolvedColor = (() => {
|
|
@@ -661,7 +656,6 @@ function Image({
|
|
|
661
656
|
|
|
662
657
|
// components/page/ImageCarousel.tsx
|
|
663
658
|
var import_react4 = require("react");
|
|
664
|
-
var import_google2 = require("@next/third-parties/google");
|
|
665
659
|
var import_jsx_runtime7 = require("react/jsx-runtime");
|
|
666
660
|
var aspectRatioMap2 = {
|
|
667
661
|
"16:9": "16 / 9",
|
|
@@ -691,6 +685,7 @@ function ImageCarousel({
|
|
|
691
685
|
const [currentIndex, setCurrentIndex] = (0, import_react4.useState)(0);
|
|
692
686
|
const { resolveColor: resolveColor2 } = useTheme();
|
|
693
687
|
const utm = useUtmParams();
|
|
688
|
+
const sendEvent = useGtmEvent();
|
|
694
689
|
const resolvedArrowColor = (() => {
|
|
695
690
|
if (!arrowColor) return { color: "#FFFFFF", opacity: 100 };
|
|
696
691
|
if (typeof arrowColor === "string")
|
|
@@ -713,39 +708,30 @@ function ImageCarousel({
|
|
|
713
708
|
const goToPrevious = () => {
|
|
714
709
|
const newIndex = currentIndex === 0 ? images.length - 1 : currentIndex - 1;
|
|
715
710
|
setCurrentIndex(newIndex);
|
|
716
|
-
(
|
|
717
|
-
|
|
718
|
-
|
|
719
|
-
|
|
720
|
-
|
|
721
|
-
totalSlides: images.length,
|
|
722
|
-
...utm
|
|
723
|
-
}
|
|
711
|
+
sendEvent("carousel_navigate", {
|
|
712
|
+
direction: "previous",
|
|
713
|
+
slideIndex: newIndex,
|
|
714
|
+
totalSlides: images.length,
|
|
715
|
+
...utm
|
|
724
716
|
});
|
|
725
717
|
};
|
|
726
718
|
const goToNext = () => {
|
|
727
719
|
const newIndex = currentIndex === images.length - 1 ? 0 : currentIndex + 1;
|
|
728
720
|
setCurrentIndex(newIndex);
|
|
729
|
-
(
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
|
|
734
|
-
totalSlides: images.length,
|
|
735
|
-
...utm
|
|
736
|
-
}
|
|
721
|
+
sendEvent("carousel_navigate", {
|
|
722
|
+
direction: "next",
|
|
723
|
+
slideIndex: newIndex,
|
|
724
|
+
totalSlides: images.length,
|
|
725
|
+
...utm
|
|
737
726
|
});
|
|
738
727
|
};
|
|
739
728
|
const goToSlide = (index) => {
|
|
740
729
|
setCurrentIndex(index);
|
|
741
|
-
(
|
|
742
|
-
|
|
743
|
-
|
|
744
|
-
|
|
745
|
-
|
|
746
|
-
totalSlides: images.length,
|
|
747
|
-
...utm
|
|
748
|
-
}
|
|
730
|
+
sendEvent("carousel_navigate", {
|
|
731
|
+
direction: "direct",
|
|
732
|
+
slideIndex: index,
|
|
733
|
+
totalSlides: images.length,
|
|
734
|
+
...utm
|
|
749
735
|
});
|
|
750
736
|
};
|
|
751
737
|
if (images.length === 0) {
|
|
@@ -1875,7 +1861,6 @@ function FeatureGrid({
|
|
|
1875
1861
|
|
|
1876
1862
|
// components/page/Footer.tsx
|
|
1877
1863
|
var import_lucide_react3 = require("lucide-react");
|
|
1878
|
-
var import_google3 = require("@next/third-parties/google");
|
|
1879
1864
|
var import_jsx_runtime20 = require("react/jsx-runtime");
|
|
1880
1865
|
function Footer({
|
|
1881
1866
|
logo,
|
|
@@ -1889,6 +1874,7 @@ function Footer({
|
|
|
1889
1874
|
}) {
|
|
1890
1875
|
const DropZone = puck?.renderDropZone;
|
|
1891
1876
|
const utm = useUtmParams();
|
|
1877
|
+
const sendEvent = useGtmEvent();
|
|
1892
1878
|
const getSocialPlatform = (url) => {
|
|
1893
1879
|
if (url.includes("facebook")) return "facebook";
|
|
1894
1880
|
if (url.includes("instagram")) return "instagram";
|
|
@@ -1897,13 +1883,10 @@ function Footer({
|
|
|
1897
1883
|
};
|
|
1898
1884
|
const handleSocialClick = (url) => {
|
|
1899
1885
|
const platform = getSocialPlatform(url);
|
|
1900
|
-
(
|
|
1901
|
-
|
|
1902
|
-
|
|
1903
|
-
|
|
1904
|
-
url,
|
|
1905
|
-
...utm
|
|
1906
|
-
}
|
|
1886
|
+
sendEvent("social_click", {
|
|
1887
|
+
platform,
|
|
1888
|
+
url,
|
|
1889
|
+
...utm
|
|
1907
1890
|
});
|
|
1908
1891
|
};
|
|
1909
1892
|
const socialLinks = [
|
|
@@ -1941,9 +1924,7 @@ function Footer({
|
|
|
1941
1924
|
|
|
1942
1925
|
// components/page/Topbar.tsx
|
|
1943
1926
|
var import_react5 = require("react");
|
|
1944
|
-
var import_link = __toESM(require("next/link"));
|
|
1945
1927
|
var import_lucide_react4 = require("lucide-react");
|
|
1946
|
-
var import_google4 = require("@next/third-parties/google");
|
|
1947
1928
|
var import_jsx_runtime21 = require("react/jsx-runtime");
|
|
1948
1929
|
function Topbar({
|
|
1949
1930
|
logo,
|
|
@@ -1957,26 +1938,21 @@ function Topbar({
|
|
|
1957
1938
|
const DropZone = puck?.renderDropZone;
|
|
1958
1939
|
const [mobileMenuOpen, setMobileMenuOpen] = (0, import_react5.useState)(false);
|
|
1959
1940
|
const utm = useUtmParams();
|
|
1941
|
+
const sendEvent = useGtmEvent();
|
|
1960
1942
|
const handleNavClick = (item) => {
|
|
1961
|
-
(
|
|
1962
|
-
|
|
1963
|
-
|
|
1964
|
-
|
|
1965
|
-
|
|
1966
|
-
linkType: item.linkType || "internal",
|
|
1967
|
-
...utm
|
|
1968
|
-
}
|
|
1943
|
+
sendEvent("nav_click", {
|
|
1944
|
+
name: item.name,
|
|
1945
|
+
url: item.url,
|
|
1946
|
+
linkType: item.linkType || "internal",
|
|
1947
|
+
...utm
|
|
1969
1948
|
});
|
|
1970
1949
|
};
|
|
1971
1950
|
const handleMobileMenuToggle = () => {
|
|
1972
1951
|
const newState = !mobileMenuOpen;
|
|
1973
1952
|
setMobileMenuOpen(newState);
|
|
1974
|
-
(
|
|
1975
|
-
|
|
1976
|
-
|
|
1977
|
-
open: newState,
|
|
1978
|
-
...utm
|
|
1979
|
-
}
|
|
1953
|
+
sendEvent("mobile_menu_toggle", {
|
|
1954
|
+
open: newState,
|
|
1955
|
+
...utm
|
|
1980
1956
|
});
|
|
1981
1957
|
};
|
|
1982
1958
|
const renderLink = (item, index) => {
|
|
@@ -2008,7 +1984,7 @@ function Topbar({
|
|
|
2008
1984
|
);
|
|
2009
1985
|
}
|
|
2010
1986
|
return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
|
|
2011
|
-
|
|
1987
|
+
"a",
|
|
2012
1988
|
{
|
|
2013
1989
|
href: item.url,
|
|
2014
1990
|
className,
|
|
@@ -2031,18 +2007,15 @@ function Topbar({
|
|
|
2031
2007
|
style: { maxWidth },
|
|
2032
2008
|
children: [
|
|
2033
2009
|
/* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
|
|
2034
|
-
|
|
2010
|
+
"a",
|
|
2035
2011
|
{
|
|
2036
2012
|
href: logoUrl,
|
|
2037
2013
|
className: "flex-shrink-0",
|
|
2038
|
-
onClick: () => (
|
|
2039
|
-
|
|
2040
|
-
|
|
2041
|
-
|
|
2042
|
-
|
|
2043
|
-
linkType: "internal",
|
|
2044
|
-
...utm
|
|
2045
|
-
}
|
|
2014
|
+
onClick: () => sendEvent("nav_click", {
|
|
2015
|
+
name: "logo",
|
|
2016
|
+
url: logoUrl,
|
|
2017
|
+
linkType: "internal",
|
|
2018
|
+
...utm
|
|
2046
2019
|
}),
|
|
2047
2020
|
children: logo ? /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("img", { src: logo, alt: "Logo", className: "h-8" }) : /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("span", { className: "text-xl font-bold", children: "Logo" })
|
|
2048
2021
|
}
|
|
@@ -2074,7 +2047,6 @@ function Topbar({
|
|
|
2074
2047
|
// components/page/Popup.tsx
|
|
2075
2048
|
var import_react6 = require("react");
|
|
2076
2049
|
var import_lucide_react5 = require("lucide-react");
|
|
2077
|
-
var import_google5 = require("@next/third-parties/google");
|
|
2078
2050
|
var import_jsx_runtime22 = require("react/jsx-runtime");
|
|
2079
2051
|
function Icon2({ name, ...props }) {
|
|
2080
2052
|
const formatted = name.charAt(0).toUpperCase() + name.slice(1);
|
|
@@ -2105,23 +2077,18 @@ function Popup({
|
|
|
2105
2077
|
}) {
|
|
2106
2078
|
const [isOpen, setIsOpen] = (0, import_react6.useState)(false);
|
|
2107
2079
|
const utm = useUtmParams();
|
|
2080
|
+
const sendEvent = useGtmEvent();
|
|
2108
2081
|
const handleOpen = () => {
|
|
2109
2082
|
setIsOpen(true);
|
|
2110
|
-
(
|
|
2111
|
-
|
|
2112
|
-
|
|
2113
|
-
|
|
2114
|
-
type: textLink ? "link" : "button",
|
|
2115
|
-
...utm
|
|
2116
|
-
}
|
|
2083
|
+
sendEvent("popup_open", {
|
|
2084
|
+
ctaText,
|
|
2085
|
+
type: textLink ? "link" : "button",
|
|
2086
|
+
...utm
|
|
2117
2087
|
});
|
|
2118
2088
|
};
|
|
2119
2089
|
const handleClose = () => {
|
|
2120
2090
|
setIsOpen(false);
|
|
2121
|
-
(
|
|
2122
|
-
event: "popup_close",
|
|
2123
|
-
value: { ctaText, ...utm }
|
|
2124
|
-
});
|
|
2091
|
+
sendEvent("popup_close", { ctaText, ...utm });
|
|
2125
2092
|
};
|
|
2126
2093
|
const trigger = textLink ? /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
|
|
2127
2094
|
"button",
|
package/dist/index.mjs
CHANGED
|
@@ -1,3 +1,18 @@
|
|
|
1
|
+
import {
|
|
2
|
+
allColorPresets,
|
|
3
|
+
neutralColors
|
|
4
|
+
} from "./chunk-UJTTHDZA.mjs";
|
|
5
|
+
import {
|
|
6
|
+
borderRadiusScale,
|
|
7
|
+
fontFamilies,
|
|
8
|
+
fontSizes,
|
|
9
|
+
fontWeights,
|
|
10
|
+
getBorderRadiusCSS,
|
|
11
|
+
getClosestBorderRadiusValue,
|
|
12
|
+
getClosestSpacingValue,
|
|
13
|
+
getFontSizeCSS,
|
|
14
|
+
spacingScale
|
|
15
|
+
} from "./chunk-A3QDUUOF.mjs";
|
|
1
16
|
import {
|
|
2
17
|
Button,
|
|
3
18
|
Card,
|
|
@@ -20,27 +35,14 @@ import {
|
|
|
20
35
|
Topbar,
|
|
21
36
|
VideoEmbed,
|
|
22
37
|
availableIcons
|
|
23
|
-
} from "./chunk-
|
|
24
|
-
import {
|
|
25
|
-
allColorPresets,
|
|
26
|
-
neutralColors
|
|
27
|
-
} from "./chunk-UJTTHDZA.mjs";
|
|
38
|
+
} from "./chunk-HHHD5TX2.mjs";
|
|
28
39
|
import {
|
|
29
40
|
DEFAULT_THEME,
|
|
30
41
|
ThemeProvider,
|
|
31
|
-
borderRadiusScale,
|
|
32
|
-
fontFamilies,
|
|
33
|
-
fontSizes,
|
|
34
|
-
fontWeights,
|
|
35
|
-
getBorderRadiusCSS,
|
|
36
|
-
getClosestBorderRadiusValue,
|
|
37
|
-
getClosestSpacingValue,
|
|
38
|
-
getFontSizeCSS,
|
|
39
42
|
getShadowCSS,
|
|
40
43
|
shadowPresets,
|
|
41
|
-
spacingScale,
|
|
42
44
|
useTheme
|
|
43
|
-
} from "./chunk-
|
|
45
|
+
} from "./chunk-XRKFMCSS.mjs";
|
|
44
46
|
import "./chunk-QSWQDR6M.mjs";
|
|
45
47
|
export {
|
|
46
48
|
Button,
|
|
@@ -0,0 +1,287 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { n as EntryBoundValue, k as ThemeableColorValue, C as ColorValue, R as ResponsiveVisibility } from './ResponsiveToggleField-BGofgB3u.mjs';
|
|
3
|
+
export { D as DEFAULT_THEME, P as PageTheme, T as ThemeBorderKey, a as ThemeBorders, b as ThemeColorKey, c as ThemeColors, d as ThemeProvider, e as ThemeShadowKey, f as ThemeShadows, g as ThemeSpacing, h as ThemeSpacingKey, i as ThemeTypography, j as ThemeableBorderRadiusValue, l as ThemeableShadowValue, m as ThemeableSpacingValue, u as useTheme } from './ResponsiveToggleField-BGofgB3u.mjs';
|
|
4
|
+
import { ReactNode } from 'react';
|
|
5
|
+
import { PuckContext } from '@measured/puck';
|
|
6
|
+
|
|
7
|
+
type HeadingProps = {
|
|
8
|
+
text?: EntryBoundValue<string> | string;
|
|
9
|
+
level?: "h1" | "h2" | "h3" | "h4" | "h5" | "h6";
|
|
10
|
+
size?: "xs" | "sm" | "md" | "lg" | "xl" | "2xl" | "3xl" | "4xl";
|
|
11
|
+
weight?: "normal" | "medium" | "semibold" | "bold" | "extrabold";
|
|
12
|
+
color?: ThemeableColorValue | ColorValue | string;
|
|
13
|
+
align?: "left" | "center" | "right";
|
|
14
|
+
letterSpacing?: "tight" | "normal" | "wide";
|
|
15
|
+
lineHeight?: "tight" | "normal" | "relaxed";
|
|
16
|
+
id?: string;
|
|
17
|
+
puck?: unknown;
|
|
18
|
+
editMode?: boolean;
|
|
19
|
+
};
|
|
20
|
+
declare function Heading({ text, level, size, weight, color, align, letterSpacing, lineHeight, id, }: HeadingProps): react_jsx_runtime.JSX.Element | null;
|
|
21
|
+
|
|
22
|
+
type ParagraphProps = {
|
|
23
|
+
text?: EntryBoundValue<string> | string;
|
|
24
|
+
size?: "sm" | "base" | "lg" | "xl";
|
|
25
|
+
weight?: "normal" | "medium" | "semibold";
|
|
26
|
+
color?: ThemeableColorValue | ColorValue | string;
|
|
27
|
+
align?: "left" | "center" | "right" | "justify";
|
|
28
|
+
lineHeight?: "tight" | "normal" | "relaxed" | "loose";
|
|
29
|
+
maxWidth?: string;
|
|
30
|
+
id?: string;
|
|
31
|
+
puck?: unknown;
|
|
32
|
+
editMode?: boolean;
|
|
33
|
+
};
|
|
34
|
+
declare function Paragraph({ text, size, weight, color, align, lineHeight, maxWidth, id, }: ParagraphProps): react_jsx_runtime.JSX.Element | null;
|
|
35
|
+
|
|
36
|
+
type ButtonProps = {
|
|
37
|
+
text?: EntryBoundValue<string> | string;
|
|
38
|
+
href?: string;
|
|
39
|
+
target?: "_self" | "_blank";
|
|
40
|
+
variant?: "solid" | "outline" | "ghost" | "link";
|
|
41
|
+
size?: "sm" | "md" | "lg" | "xl";
|
|
42
|
+
color?: ThemeableColorValue | ColorValue | string;
|
|
43
|
+
textColor?: ThemeableColorValue | ColorValue | string;
|
|
44
|
+
borderRadius?: "none" | "sm" | "md" | "lg" | "full";
|
|
45
|
+
fullWidth?: boolean;
|
|
46
|
+
align?: "left" | "center" | "right";
|
|
47
|
+
id?: string;
|
|
48
|
+
puck?: unknown;
|
|
49
|
+
editMode?: boolean;
|
|
50
|
+
};
|
|
51
|
+
declare function Button({ text, href, target, variant, size, color, textColor, borderRadius, fullWidth, align, id, }: ButtonProps): react_jsx_runtime.JSX.Element;
|
|
52
|
+
|
|
53
|
+
type ImageProps = {
|
|
54
|
+
src?: EntryBoundValue<string> | string;
|
|
55
|
+
alt?: string;
|
|
56
|
+
width?: "auto" | "full" | "sm" | "md" | "lg" | "xl";
|
|
57
|
+
aspectRatio?: "auto" | "1:1" | "4:3" | "16:9" | "21:9";
|
|
58
|
+
objectFit?: "contain" | "cover" | "fill" | "none";
|
|
59
|
+
borderRadius?: "none" | "sm" | "md" | "lg" | "xl" | "full";
|
|
60
|
+
shadow?: "none" | "sm" | "md" | "lg" | "xl";
|
|
61
|
+
align?: "left" | "center" | "right";
|
|
62
|
+
caption?: EntryBoundValue<string> | string;
|
|
63
|
+
captionColor?: ThemeableColorValue | ColorValue | string;
|
|
64
|
+
id?: string;
|
|
65
|
+
puck?: unknown;
|
|
66
|
+
editMode?: boolean;
|
|
67
|
+
};
|
|
68
|
+
declare function Image({ src, alt, width, aspectRatio, objectFit, borderRadius, shadow, align, caption, captionColor, id, }: ImageProps): react_jsx_runtime.JSX.Element;
|
|
69
|
+
|
|
70
|
+
type CarouselImage = {
|
|
71
|
+
src: string;
|
|
72
|
+
alt?: string;
|
|
73
|
+
};
|
|
74
|
+
type ImageCarouselProps = {
|
|
75
|
+
images?: CarouselImage[];
|
|
76
|
+
aspectRatio?: "16:9" | "4:3" | "1:1" | "21:9";
|
|
77
|
+
borderRadius?: "none" | "sm" | "md" | "lg";
|
|
78
|
+
showDots?: boolean;
|
|
79
|
+
showArrows?: boolean;
|
|
80
|
+
arrowColor?: ThemeableColorValue | ColorValue | string;
|
|
81
|
+
dotColor?: ThemeableColorValue | ColorValue | string;
|
|
82
|
+
autoPlay?: boolean;
|
|
83
|
+
autoPlayInterval?: number;
|
|
84
|
+
id?: string;
|
|
85
|
+
puck?: unknown;
|
|
86
|
+
editMode?: boolean;
|
|
87
|
+
};
|
|
88
|
+
declare function ImageCarousel({ images, aspectRatio, borderRadius, showDots, showArrows, arrowColor, dotColor, id, }: ImageCarouselProps): react_jsx_runtime.JSX.Element;
|
|
89
|
+
|
|
90
|
+
type VideoEmbedProps = {
|
|
91
|
+
url?: EntryBoundValue<string> | string;
|
|
92
|
+
aspectRatio?: "16:9" | "4:3" | "1:1" | "21:9";
|
|
93
|
+
borderRadius?: "none" | "sm" | "md" | "lg";
|
|
94
|
+
autoplay?: boolean;
|
|
95
|
+
muted?: boolean;
|
|
96
|
+
loop?: boolean;
|
|
97
|
+
align?: "left" | "center" | "right";
|
|
98
|
+
maxWidth?: "sm" | "md" | "lg" | "xl" | "full";
|
|
99
|
+
id?: string;
|
|
100
|
+
puck?: unknown;
|
|
101
|
+
editMode?: boolean;
|
|
102
|
+
};
|
|
103
|
+
declare function VideoEmbed({ url, aspectRatio, borderRadius, autoplay, muted, loop, align, maxWidth, id, }: VideoEmbedProps): react_jsx_runtime.JSX.Element;
|
|
104
|
+
|
|
105
|
+
type IconProps = {
|
|
106
|
+
name?: string;
|
|
107
|
+
size?: "sm" | "md" | "lg" | "xl" | "2xl";
|
|
108
|
+
color?: ThemeableColorValue | ColorValue | string;
|
|
109
|
+
align?: "left" | "center" | "right";
|
|
110
|
+
id?: string;
|
|
111
|
+
puck?: unknown;
|
|
112
|
+
editMode?: boolean;
|
|
113
|
+
};
|
|
114
|
+
declare function Icon({ name, size, color, align, id, }: IconProps): react_jsx_runtime.JSX.Element;
|
|
115
|
+
declare const availableIcons: string[];
|
|
116
|
+
|
|
117
|
+
type PuckProps = {
|
|
118
|
+
puck?: PuckContext;
|
|
119
|
+
editMode?: boolean;
|
|
120
|
+
id?: string;
|
|
121
|
+
};
|
|
122
|
+
|
|
123
|
+
type SectionProps = {
|
|
124
|
+
children?: ReactNode;
|
|
125
|
+
verticalPadding?: number;
|
|
126
|
+
horizontalPadding?: number;
|
|
127
|
+
gap?: number;
|
|
128
|
+
backgroundColor?: ThemeableColorValue | ColorValue | string;
|
|
129
|
+
backgroundImage?: string;
|
|
130
|
+
shadow?: string;
|
|
131
|
+
borderRadius?: number;
|
|
132
|
+
contentMaxWidth?: string;
|
|
133
|
+
anchorLink?: string;
|
|
134
|
+
visibility?: ResponsiveVisibility;
|
|
135
|
+
} & PuckProps;
|
|
136
|
+
declare function Section({ children: _children, verticalPadding, horizontalPadding, gap, backgroundColor, backgroundImage, shadow, borderRadius, contentMaxWidth, anchorLink, visibility, puck, }: SectionProps): react_jsx_runtime.JSX.Element;
|
|
137
|
+
|
|
138
|
+
type ContainerProps = {
|
|
139
|
+
maxWidth?: "sm" | "md" | "lg" | "xl" | "2xl" | "full";
|
|
140
|
+
padding?: "none" | "sm" | "md" | "lg" | "xl";
|
|
141
|
+
paddingX?: "none" | "sm" | "md" | "lg" | "xl";
|
|
142
|
+
paddingY?: "none" | "sm" | "md" | "lg" | "xl";
|
|
143
|
+
backgroundColor?: ThemeableColorValue | ColorValue | string;
|
|
144
|
+
centered?: boolean;
|
|
145
|
+
} & PuckProps;
|
|
146
|
+
declare function Container({ maxWidth, padding, paddingX, paddingY, backgroundColor, centered, id, puck, }: ContainerProps): react_jsx_runtime.JSX.Element;
|
|
147
|
+
|
|
148
|
+
type ColumnsProps = {
|
|
149
|
+
columns?: 2 | 3 | 4;
|
|
150
|
+
gap?: "none" | "sm" | "md" | "lg" | "xl";
|
|
151
|
+
verticalAlign?: "top" | "center" | "bottom" | "stretch";
|
|
152
|
+
stackOnMobile?: boolean;
|
|
153
|
+
} & PuckProps;
|
|
154
|
+
declare function Columns({ columns, gap, verticalAlign, stackOnMobile, id, puck, }: ColumnsProps): react_jsx_runtime.JSX.Element;
|
|
155
|
+
|
|
156
|
+
type CardProps = {
|
|
157
|
+
backgroundColor?: ThemeableColorValue | ColorValue | string;
|
|
158
|
+
borderColor?: ThemeableColorValue | ColorValue | string;
|
|
159
|
+
borderWidth?: "none" | "thin" | "medium" | "thick";
|
|
160
|
+
borderRadius?: "none" | "sm" | "md" | "lg" | "xl";
|
|
161
|
+
shadow?: "none" | "sm" | "md" | "lg" | "xl";
|
|
162
|
+
padding?: "none" | "sm" | "md" | "lg" | "xl";
|
|
163
|
+
} & PuckProps;
|
|
164
|
+
declare function Card({ backgroundColor, borderColor, borderWidth, borderRadius, shadow, padding, id, puck, }: CardProps): react_jsx_runtime.JSX.Element;
|
|
165
|
+
|
|
166
|
+
type DividerProps = {
|
|
167
|
+
style?: "solid" | "dashed" | "dotted";
|
|
168
|
+
thickness?: "thin" | "medium" | "thick";
|
|
169
|
+
color?: ThemeableColorValue | ColorValue | string;
|
|
170
|
+
width?: "full" | "3/4" | "1/2" | "1/4";
|
|
171
|
+
align?: "left" | "center" | "right";
|
|
172
|
+
spacing?: "sm" | "md" | "lg" | "xl";
|
|
173
|
+
id?: string;
|
|
174
|
+
puck?: unknown;
|
|
175
|
+
editMode?: boolean;
|
|
176
|
+
};
|
|
177
|
+
declare function Divider({ style: lineStyle, thickness, color, width, align, spacing, id, }: DividerProps): react_jsx_runtime.JSX.Element;
|
|
178
|
+
|
|
179
|
+
type SpacerProps = {
|
|
180
|
+
size?: "xs" | "sm" | "md" | "lg" | "xl" | "2xl" | "3xl";
|
|
181
|
+
id?: string;
|
|
182
|
+
puck?: unknown;
|
|
183
|
+
editMode?: boolean;
|
|
184
|
+
};
|
|
185
|
+
declare function Spacer({ size, id }: SpacerProps): react_jsx_runtime.JSX.Element;
|
|
186
|
+
|
|
187
|
+
type TextBlockProps = {
|
|
188
|
+
title?: EntryBoundValue<string> | string;
|
|
189
|
+
subtitle?: EntryBoundValue<string> | string;
|
|
190
|
+
body?: EntryBoundValue<string> | string;
|
|
191
|
+
alignment?: "left" | "center" | "right";
|
|
192
|
+
textSize?: "small" | "medium-small" | "medium" | "large" | "xlarge";
|
|
193
|
+
textColor?: ThemeableColorValue | ColorValue | string;
|
|
194
|
+
subtitleBodyColor?: ThemeableColorValue | ColorValue | string;
|
|
195
|
+
useGradientText?: boolean;
|
|
196
|
+
gradientColor1?: ThemeableColorValue | ColorValue | string;
|
|
197
|
+
gradientColor2?: ThemeableColorValue | ColorValue | string;
|
|
198
|
+
anchorLink?: string;
|
|
199
|
+
puck?: unknown;
|
|
200
|
+
editMode?: boolean;
|
|
201
|
+
id?: string;
|
|
202
|
+
};
|
|
203
|
+
declare function TextBlock({ title, subtitle, body, alignment, textSize, textColor, subtitleBodyColor, useGradientText, gradientColor1, gradientColor2, anchorLink, }: TextBlockProps): react_jsx_runtime.JSX.Element;
|
|
204
|
+
|
|
205
|
+
type CustomImageProps = {
|
|
206
|
+
image?: string;
|
|
207
|
+
alt?: string;
|
|
208
|
+
maxWidth?: number;
|
|
209
|
+
alignment?: "left" | "center" | "right";
|
|
210
|
+
fitContent?: boolean;
|
|
211
|
+
} & PuckProps;
|
|
212
|
+
declare function CustomImage({ image, alt, maxWidth, alignment, fitContent, }: CustomImageProps): react_jsx_runtime.JSX.Element;
|
|
213
|
+
|
|
214
|
+
type Feature$1 = {
|
|
215
|
+
icon?: string;
|
|
216
|
+
image?: string;
|
|
217
|
+
title?: string;
|
|
218
|
+
description?: string;
|
|
219
|
+
};
|
|
220
|
+
type FeaturesListProps = {
|
|
221
|
+
features?: Feature$1[];
|
|
222
|
+
align?: "left" | "center" | "right";
|
|
223
|
+
size?: "small" | "medium" | "large";
|
|
224
|
+
iconColor?: string;
|
|
225
|
+
anchorLink?: string;
|
|
226
|
+
} & Record<string, unknown>;
|
|
227
|
+
declare function FeaturesList({ features, align, size, iconColor, anchorLink, }: FeaturesListProps): react_jsx_runtime.JSX.Element;
|
|
228
|
+
|
|
229
|
+
type Feature = {
|
|
230
|
+
icon?: string;
|
|
231
|
+
image?: string;
|
|
232
|
+
title?: string;
|
|
233
|
+
description?: string;
|
|
234
|
+
};
|
|
235
|
+
type FeatureGridProps = {
|
|
236
|
+
heading?: string;
|
|
237
|
+
description?: string;
|
|
238
|
+
features?: Feature[];
|
|
239
|
+
columns?: 2 | 3 | 4;
|
|
240
|
+
align?: "left" | "center" | "right";
|
|
241
|
+
size?: "small" | "medium" | "large";
|
|
242
|
+
iconColor?: string;
|
|
243
|
+
textColor?: string;
|
|
244
|
+
anchorLink?: string;
|
|
245
|
+
} & Record<string, unknown>;
|
|
246
|
+
declare function FeatureGrid({ heading, description, features, columns, align, size, iconColor, textColor, anchorLink, }: FeatureGridProps): react_jsx_runtime.JSX.Element;
|
|
247
|
+
|
|
248
|
+
type FooterProps = {
|
|
249
|
+
logo?: string;
|
|
250
|
+
copyright?: string;
|
|
251
|
+
backgroundColor?: string;
|
|
252
|
+
textColor?: string;
|
|
253
|
+
facebookUrl?: string;
|
|
254
|
+
instagramUrl?: string;
|
|
255
|
+
twitterUrl?: string;
|
|
256
|
+
tiktokUrl?: string;
|
|
257
|
+
} & Record<string, unknown> & PuckProps;
|
|
258
|
+
declare function Footer({ logo, copyright, backgroundColor, textColor, facebookUrl, instagramUrl, twitterUrl, puck, }: FooterProps): react_jsx_runtime.JSX.Element;
|
|
259
|
+
|
|
260
|
+
type NavItem = {
|
|
261
|
+
name: string;
|
|
262
|
+
url: string;
|
|
263
|
+
linkType?: "internal" | "external" | "scrollTo";
|
|
264
|
+
};
|
|
265
|
+
type TopbarProps = {
|
|
266
|
+
logo?: string;
|
|
267
|
+
logoUrl?: string;
|
|
268
|
+
navItems?: NavItem[];
|
|
269
|
+
backgroundColor?: string;
|
|
270
|
+
textColor?: string;
|
|
271
|
+
maxWidth?: string;
|
|
272
|
+
} & Record<string, unknown> & PuckProps;
|
|
273
|
+
declare function Topbar({ logo, logoUrl, navItems, backgroundColor, textColor, maxWidth, puck, }: TopbarProps): react_jsx_runtime.JSX.Element;
|
|
274
|
+
|
|
275
|
+
type PopupProps = {
|
|
276
|
+
ctaText?: string;
|
|
277
|
+
buttonColor?: string;
|
|
278
|
+
textColor?: string;
|
|
279
|
+
icon?: string;
|
|
280
|
+
iconPosition?: "left" | "right";
|
|
281
|
+
size?: "small" | "medium" | "large";
|
|
282
|
+
width?: "small" | "medium" | "large";
|
|
283
|
+
textLink?: boolean;
|
|
284
|
+
} & Record<string, unknown> & PuckProps;
|
|
285
|
+
declare function Popup({ ctaText, buttonColor, textColor, icon, iconPosition, size, width, textLink, puck, }: PopupProps): react_jsx_runtime.JSX.Element;
|
|
286
|
+
|
|
287
|
+
export { Button, type ButtonProps, Card, type CardProps, type CarouselImage, Columns, type ColumnsProps, Container, type ContainerProps, CustomImage, type CustomImageProps, Divider, type DividerProps, FeatureGrid, type FeatureGridProps, FeaturesList, type FeaturesListProps, Footer, type FooterProps, Heading, type HeadingProps, Icon, type IconProps, Image, ImageCarousel, type ImageCarouselProps, type ImageProps, Paragraph, type ParagraphProps, Popup, type PopupProps, Section, type SectionProps, Spacer, type SpacerProps, TextBlock, type TextBlockProps, ThemeableColorValue, Topbar, type TopbarProps, VideoEmbed, type VideoEmbedProps, availableIcons };
|