@opensite/ui 2.8.8 → 2.9.0
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/about-culture-tabs.cjs +174 -174
- package/dist/about-culture-tabs.js +174 -174
- package/dist/about-developer-profile.cjs +200 -200
- package/dist/about-developer-profile.js +198 -198
- package/dist/about-developer-story.cjs +142 -142
- package/dist/about-developer-story.js +142 -142
- package/dist/about-mission-dual-image.cjs +142 -142
- package/dist/about-mission-dual-image.js +142 -142
- package/dist/about-mission-features.cjs +142 -142
- package/dist/about-mission-features.js +142 -142
- package/dist/about-network-spotlight.cjs +142 -142
- package/dist/about-network-spotlight.js +142 -142
- package/dist/about-story-expertise.cjs +142 -142
- package/dist/about-story-expertise.js +142 -142
- package/dist/about-streamline-team.cjs +142 -142
- package/dist/about-streamline-team.js +142 -142
- package/dist/carousel-feature-badge.cjs +162 -42
- package/dist/carousel-feature-badge.d.cts +14 -1
- package/dist/carousel-feature-badge.d.ts +14 -1
- package/dist/carousel-feature-badge.js +163 -43
- package/dist/community-initiatives.cjs +142 -142
- package/dist/community-initiatives.js +142 -142
- package/dist/components.cjs +723 -1378
- package/dist/components.d.cts +0 -2
- package/dist/components.d.ts +0 -2
- package/dist/components.js +633 -1287
- package/dist/contact-map.cjs +14 -1083
- package/dist/contact-map.d.cts +13 -3
- package/dist/contact-map.d.ts +13 -3
- package/dist/contact-map.js +14 -1083
- package/dist/cta-feature-checklist.cjs +142 -142
- package/dist/cta-feature-checklist.js +142 -142
- package/dist/faq-numbered-grid.cjs +142 -142
- package/dist/faq-numbered-grid.js +142 -142
- package/dist/feature-animated-carousel.cjs +142 -142
- package/dist/feature-animated-carousel.js +142 -142
- package/dist/feature-bento-utilities.cjs +142 -142
- package/dist/feature-bento-utilities.js +142 -142
- package/dist/feature-capabilities-grid.cjs +142 -142
- package/dist/feature-capabilities-grid.js +142 -142
- package/dist/feature-category-image-cards.cjs +142 -142
- package/dist/feature-category-image-cards.js +142 -142
- package/dist/feature-icon-grid-bordered.cjs +142 -142
- package/dist/feature-icon-grid-bordered.js +142 -142
- package/dist/feature-icon-grid-muted.cjs +142 -142
- package/dist/feature-icon-grid-muted.js +142 -142
- package/dist/feature-numbered-cards.cjs +142 -142
- package/dist/feature-numbered-cards.js +142 -142
- package/dist/feature-three-column-values.cjs +142 -142
- package/dist/feature-three-column-values.js +142 -142
- package/dist/hero-ad-campaign-expert.cjs +142 -142
- package/dist/hero-ad-campaign-expert.js +142 -142
- package/dist/hero-adaptable-product-grid.cjs +142 -142
- package/dist/hero-adaptable-product-grid.js +142 -142
- package/dist/hero-agency-animated-images.cjs +142 -142
- package/dist/hero-agency-animated-images.js +142 -142
- package/dist/hero-announcement-badge.cjs +142 -142
- package/dist/hero-announcement-badge.js +142 -142
- package/dist/hero-badge-image-split.cjs +142 -142
- package/dist/hero-badge-image-split.js +142 -142
- package/dist/hero-business-carousel-dots.cjs +142 -142
- package/dist/hero-business-carousel-dots.js +142 -142
- package/dist/hero-business-operations-mosaic.cjs +142 -142
- package/dist/hero-business-operations-mosaic.js +142 -142
- package/dist/hero-conversation-intelligence.cjs +142 -142
- package/dist/hero-conversation-intelligence.js +142 -142
- package/dist/hero-creative-studio-stacked.cjs +142 -142
- package/dist/hero-creative-studio-stacked.js +142 -142
- package/dist/hero-crm-streamlined.cjs +142 -142
- package/dist/hero-crm-streamlined.js +142 -142
- package/dist/hero-customer-support-layered.cjs +142 -142
- package/dist/hero-customer-support-layered.js +142 -142
- package/dist/hero-design-showcase-logos.cjs +142 -142
- package/dist/hero-design-showcase-logos.js +142 -142
- package/dist/hero-design-system-3d.cjs +142 -142
- package/dist/hero-design-system-3d.js +142 -142
- package/dist/hero-developer-tools-code.cjs +142 -142
- package/dist/hero-developer-tools-code.js +142 -142
- package/dist/hero-digital-agency-fullscreen.cjs +142 -142
- package/dist/hero-digital-agency-fullscreen.js +142 -142
- package/dist/hero-ecommerce-product-showcase.cjs +174 -174
- package/dist/hero-ecommerce-product-showcase.js +174 -174
- package/dist/hero-event-registration.cjs +142 -142
- package/dist/hero-event-registration.js +142 -142
- package/dist/hero-fullscreen-background-image.cjs +142 -142
- package/dist/hero-fullscreen-background-image.js +142 -142
- package/dist/hero-gradient-avatars-rating.cjs +142 -142
- package/dist/hero-gradient-avatars-rating.js +142 -142
- package/dist/hero-gradient-client-focused.cjs +142 -142
- package/dist/hero-gradient-client-focused.js +142 -142
- package/dist/hero-hiring-animated-text.cjs +142 -142
- package/dist/hero-hiring-animated-text.js +142 -142
- package/dist/hero-image-left-content.cjs +142 -142
- package/dist/hero-image-left-content.js +142 -142
- package/dist/hero-innovation-image-grid.cjs +142 -142
- package/dist/hero-innovation-image-grid.js +142 -142
- package/dist/hero-mental-health-team.cjs +142 -142
- package/dist/hero-mental-health-team.js +142 -142
- package/dist/hero-minimal-centered-dark.cjs +174 -174
- package/dist/hero-minimal-centered-dark.js +174 -174
- package/dist/hero-presentation-platform-video.cjs +142 -142
- package/dist/hero-presentation-platform-video.js +142 -142
- package/dist/hero-product-showcase-floating.cjs +174 -174
- package/dist/hero-product-showcase-floating.js +174 -174
- package/dist/hero-shared-inbox-layered.cjs +142 -142
- package/dist/hero-shared-inbox-layered.js +142 -142
- package/dist/hero-software-growth-video-dialog.cjs +142 -142
- package/dist/hero-software-growth-video-dialog.js +142 -142
- package/dist/hero-spiral-pattern-cards.cjs +174 -174
- package/dist/hero-spiral-pattern-cards.js +174 -174
- package/dist/hero-split-geometric-shapes.cjs +142 -142
- package/dist/hero-split-geometric-shapes.js +142 -142
- package/dist/hero-startup-launch-cta.cjs +174 -174
- package/dist/hero-startup-launch-cta.js +174 -174
- package/dist/hero-stats-social-proof.cjs +174 -174
- package/dist/hero-stats-social-proof.js +174 -174
- package/dist/hero-task-timer-animated.cjs +142 -142
- package/dist/hero-task-timer-animated.js +142 -142
- package/dist/hero-testimonial-image-grid.cjs +142 -142
- package/dist/hero-testimonial-image-grid.js +142 -142
- package/dist/hero-therapy-testimonial-grid.cjs +142 -142
- package/dist/hero-therapy-testimonial-grid.js +142 -142
- package/dist/hero-ui-library-showcase.cjs +142 -142
- package/dist/hero-ui-library-showcase.js +142 -142
- package/dist/hero-video-background-dark.cjs +174 -174
- package/dist/hero-video-background-dark.js +174 -174
- package/dist/hero-video-dialog-gradient.cjs +142 -142
- package/dist/hero-video-dialog-gradient.js +142 -142
- package/dist/hero-video-overlay-stars.cjs +142 -142
- package/dist/hero-video-overlay-stars.js +142 -142
- package/dist/hero-welcome-asymmetric-images.cjs +142 -142
- package/dist/hero-welcome-asymmetric-images.js +142 -142
- package/dist/index.cjs +725 -1380
- package/dist/index.d.cts +0 -2
- package/dist/index.d.ts +0 -2
- package/dist/index.js +634 -1288
- package/dist/registry.cjs +2201 -2827
- package/dist/registry.js +948 -1574
- package/dist/testimonials-masonry-grid.cjs +142 -142
- package/dist/testimonials-masonry-grid.js +142 -142
- package/dist/testimonials-stats-header.cjs +159 -159
- package/dist/testimonials-stats-header.js +159 -159
- package/package.json +4 -7
- package/dist/geo-map.cjs +0 -1117
- package/dist/geo-map.d.cts +0 -92
- package/dist/geo-map.d.ts +0 -92
- package/dist/geo-map.js +0 -1095
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
|
-
var
|
|
4
|
+
var React8 = require('react');
|
|
5
5
|
var clsx = require('clsx');
|
|
6
6
|
var tailwindMerge = require('tailwind-merge');
|
|
7
7
|
var reactSlot = require('@radix-ui/react-slot');
|
|
@@ -31,7 +31,7 @@ function _interopNamespace(e) {
|
|
|
31
31
|
return Object.freeze(n);
|
|
32
32
|
}
|
|
33
33
|
|
|
34
|
-
var
|
|
34
|
+
var React8__namespace = /*#__PURE__*/_interopNamespace(React8);
|
|
35
35
|
var useEmblaCarousel__default = /*#__PURE__*/_interopDefault(useEmblaCarousel);
|
|
36
36
|
|
|
37
37
|
// components/blocks/carousel/carousel-feature-badge.tsx
|
|
@@ -145,7 +145,7 @@ function useNavigation({
|
|
|
145
145
|
href,
|
|
146
146
|
onClick
|
|
147
147
|
} = {}) {
|
|
148
|
-
const linkType =
|
|
148
|
+
const linkType = React8__namespace.useMemo(() => {
|
|
149
149
|
if (!href || href.trim() === "") {
|
|
150
150
|
return onClick ? "none" : "none";
|
|
151
151
|
}
|
|
@@ -166,7 +166,7 @@ function useNavigation({
|
|
|
166
166
|
return "internal";
|
|
167
167
|
}
|
|
168
168
|
}, [href, onClick]);
|
|
169
|
-
const normalizedHref =
|
|
169
|
+
const normalizedHref = React8__namespace.useMemo(() => {
|
|
170
170
|
if (!href || href.trim() === "") {
|
|
171
171
|
return void 0;
|
|
172
172
|
}
|
|
@@ -184,7 +184,7 @@ function useNavigation({
|
|
|
184
184
|
return trimmed;
|
|
185
185
|
}
|
|
186
186
|
}, [href, linkType]);
|
|
187
|
-
const target =
|
|
187
|
+
const target = React8__namespace.useMemo(() => {
|
|
188
188
|
switch (linkType) {
|
|
189
189
|
case "external":
|
|
190
190
|
return "_blank";
|
|
@@ -197,7 +197,7 @@ function useNavigation({
|
|
|
197
197
|
return void 0;
|
|
198
198
|
}
|
|
199
199
|
}, [linkType]);
|
|
200
|
-
const rel =
|
|
200
|
+
const rel = React8__namespace.useMemo(() => {
|
|
201
201
|
if (linkType === "external") {
|
|
202
202
|
return "noopener noreferrer";
|
|
203
203
|
}
|
|
@@ -206,7 +206,7 @@ function useNavigation({
|
|
|
206
206
|
const isExternal = linkType === "external";
|
|
207
207
|
const isInternal = linkType === "internal";
|
|
208
208
|
const shouldUseRouter = isInternal && typeof normalizedHref === "string" && normalizedHref.startsWith("/");
|
|
209
|
-
const handleClick =
|
|
209
|
+
const handleClick = React8__namespace.useCallback(
|
|
210
210
|
(event) => {
|
|
211
211
|
if (onClick) {
|
|
212
212
|
try {
|
|
@@ -390,7 +390,7 @@ var buttonVariants = classVarianceAuthority.cva(baseStyles, {
|
|
|
390
390
|
size: "default"
|
|
391
391
|
}
|
|
392
392
|
});
|
|
393
|
-
var Pressable =
|
|
393
|
+
var Pressable = React8__namespace.forwardRef(
|
|
394
394
|
({
|
|
395
395
|
children,
|
|
396
396
|
className,
|
|
@@ -489,7 +489,7 @@ var Pressable = React6__namespace.forwardRef(
|
|
|
489
489
|
);
|
|
490
490
|
Pressable.displayName = "Pressable";
|
|
491
491
|
var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
|
|
492
|
-
var DynamicIcon =
|
|
492
|
+
var DynamicIcon = React8__namespace.memo(function DynamicIcon2({
|
|
493
493
|
apiKey,
|
|
494
494
|
...props
|
|
495
495
|
}) {
|
|
@@ -563,7 +563,7 @@ var maxWidthStyles = {
|
|
|
563
563
|
"4xl": "max-w-[1536px]",
|
|
564
564
|
full: "max-w-full"
|
|
565
565
|
};
|
|
566
|
-
var Container =
|
|
566
|
+
var Container = React8__namespace.default.forwardRef(
|
|
567
567
|
({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
|
|
568
568
|
const Component = as;
|
|
569
569
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -869,7 +869,7 @@ var spacingStyles = {
|
|
|
869
869
|
};
|
|
870
870
|
var predefinedSpacings = ["none", "sm", "md", "lg", "xl", "hero"];
|
|
871
871
|
var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
|
|
872
|
-
var Section =
|
|
872
|
+
var Section = React8__namespace.default.forwardRef(
|
|
873
873
|
({
|
|
874
874
|
id,
|
|
875
875
|
title,
|
|
@@ -930,6 +930,102 @@ var Section = React6__namespace.default.forwardRef(
|
|
|
930
930
|
}
|
|
931
931
|
);
|
|
932
932
|
Section.displayName = "Section";
|
|
933
|
+
function TextInner({ as, className, children, ...props }, ref) {
|
|
934
|
+
const Component = as || "span";
|
|
935
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Component, { ref, className: cn(className), ...props, children });
|
|
936
|
+
}
|
|
937
|
+
var Text = React8__namespace.forwardRef(TextInner);
|
|
938
|
+
Text.displayName = "Text";
|
|
939
|
+
function isContentTextItem(item) {
|
|
940
|
+
return item !== null && typeof item === "object" && !React8__namespace.isValidElement(item) && "_type" in item && item._type === "text";
|
|
941
|
+
}
|
|
942
|
+
var ContentGroup = React8__namespace.forwardRef(
|
|
943
|
+
({ items, className, children, ...props }, ref) => {
|
|
944
|
+
const hasContent = items && items.length > 0;
|
|
945
|
+
if (!hasContent) {
|
|
946
|
+
return null;
|
|
947
|
+
}
|
|
948
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { ref, className: cn(className), ...props, children: [
|
|
949
|
+
items.map((item, idx) => {
|
|
950
|
+
if (isContentTextItem(item)) {
|
|
951
|
+
const { _type, ...textProps } = item;
|
|
952
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Text, { ...textProps }, idx);
|
|
953
|
+
}
|
|
954
|
+
const reactNode = item;
|
|
955
|
+
if (React8__namespace.isValidElement(reactNode)) {
|
|
956
|
+
return React8__namespace.cloneElement(reactNode, { key: reactNode.key ?? idx });
|
|
957
|
+
}
|
|
958
|
+
return /* @__PURE__ */ jsxRuntime.jsx(React8__namespace.Fragment, { children: reactNode }, idx);
|
|
959
|
+
}),
|
|
960
|
+
children
|
|
961
|
+
] });
|
|
962
|
+
}
|
|
963
|
+
);
|
|
964
|
+
ContentGroup.displayName = "ContentGroup";
|
|
965
|
+
var MOBILE_CLASSES = {
|
|
966
|
+
"fit-left": "items-start md:items-center",
|
|
967
|
+
"fit-center": "items-center",
|
|
968
|
+
"fit-right": "items-end md:items-center",
|
|
969
|
+
"full-left": "items-stretch md:items-center",
|
|
970
|
+
"full-center": "items-stretch md:items-center",
|
|
971
|
+
"full-right": "items-stretch md:items-center"
|
|
972
|
+
};
|
|
973
|
+
function BlockActions({
|
|
974
|
+
mobileConfig,
|
|
975
|
+
actionsClassName,
|
|
976
|
+
verticalSpacing = "mt-4 md:mt-8",
|
|
977
|
+
actions,
|
|
978
|
+
actionsSlot
|
|
979
|
+
}) {
|
|
980
|
+
const width = mobileConfig?.width ?? "full";
|
|
981
|
+
const position = mobileConfig?.position ?? "center";
|
|
982
|
+
const mobileLayoutClass = MOBILE_CLASSES[`${width}-${position}`];
|
|
983
|
+
if (actionsSlot) {
|
|
984
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { children: actionsSlot });
|
|
985
|
+
} else if (actions && actions?.length > 0) {
|
|
986
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
987
|
+
"div",
|
|
988
|
+
{
|
|
989
|
+
className: cn(
|
|
990
|
+
"flex flex-col md:flex-row flex-wrap gap-4",
|
|
991
|
+
mobileLayoutClass,
|
|
992
|
+
actionsClassName,
|
|
993
|
+
verticalSpacing
|
|
994
|
+
),
|
|
995
|
+
children: actions.map((action, index) => /* @__PURE__ */ jsxRuntime.jsx(ActionComponent, { action }, index))
|
|
996
|
+
}
|
|
997
|
+
);
|
|
998
|
+
} else {
|
|
999
|
+
return null;
|
|
1000
|
+
}
|
|
1001
|
+
}
|
|
1002
|
+
function ActionComponent({ action }) {
|
|
1003
|
+
const {
|
|
1004
|
+
label,
|
|
1005
|
+
icon,
|
|
1006
|
+
iconAfter,
|
|
1007
|
+
children,
|
|
1008
|
+
href,
|
|
1009
|
+
onClick,
|
|
1010
|
+
className: actionClassName,
|
|
1011
|
+
...pressableProps
|
|
1012
|
+
} = action;
|
|
1013
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
1014
|
+
Pressable,
|
|
1015
|
+
{
|
|
1016
|
+
href,
|
|
1017
|
+
onClick,
|
|
1018
|
+
asButton: action.asButton ?? true,
|
|
1019
|
+
className: actionClassName,
|
|
1020
|
+
...pressableProps,
|
|
1021
|
+
children: children ?? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
1022
|
+
icon,
|
|
1023
|
+
label,
|
|
1024
|
+
iconAfter
|
|
1025
|
+
] })
|
|
1026
|
+
}
|
|
1027
|
+
);
|
|
1028
|
+
}
|
|
933
1029
|
var SLIDE_LAYOUT_ASPECT_MAP = {
|
|
934
1030
|
horizontal: "aspect-video",
|
|
935
1031
|
vertical: "aspect-[9/16]",
|
|
@@ -950,28 +1046,31 @@ function CarouselFeatureBadge({
|
|
|
950
1046
|
carouselClassName,
|
|
951
1047
|
carouselItemClassName,
|
|
952
1048
|
optixFlowConfig,
|
|
1049
|
+
actions,
|
|
1050
|
+
actionsSlot,
|
|
1051
|
+
actionsClassName,
|
|
953
1052
|
background,
|
|
954
|
-
spacing,
|
|
1053
|
+
spacing = "none",
|
|
955
1054
|
pattern,
|
|
956
1055
|
patternOpacity,
|
|
957
1056
|
slideLayoutVariant = "square",
|
|
958
1057
|
containerMaxWidth = "2xl"
|
|
959
1058
|
}) {
|
|
960
1059
|
const [emblaRef, emblaApi] = useEmblaCarousel__default.default();
|
|
961
|
-
const [canScrollPrev, setCanScrollPrev] =
|
|
962
|
-
const [canScrollNext, setCanScrollNext] =
|
|
963
|
-
const scrollPrev =
|
|
1060
|
+
const [canScrollPrev, setCanScrollPrev] = React8__namespace.useState(false);
|
|
1061
|
+
const [canScrollNext, setCanScrollNext] = React8__namespace.useState(false);
|
|
1062
|
+
const scrollPrev = React8__namespace.useCallback(() => {
|
|
964
1063
|
emblaApi?.scrollPrev();
|
|
965
1064
|
}, [emblaApi]);
|
|
966
|
-
const scrollNext =
|
|
1065
|
+
const scrollNext = React8__namespace.useCallback(() => {
|
|
967
1066
|
emblaApi?.scrollNext();
|
|
968
1067
|
}, [emblaApi]);
|
|
969
|
-
const onSelect =
|
|
1068
|
+
const onSelect = React8__namespace.useCallback(() => {
|
|
970
1069
|
if (!emblaApi) return;
|
|
971
1070
|
setCanScrollPrev(emblaApi.canScrollPrev());
|
|
972
1071
|
setCanScrollNext(emblaApi.canScrollNext());
|
|
973
1072
|
}, [emblaApi]);
|
|
974
|
-
|
|
1073
|
+
React8__namespace.useEffect(() => {
|
|
975
1074
|
if (!emblaApi) return;
|
|
976
1075
|
onSelect();
|
|
977
1076
|
emblaApi.on("reInit", onSelect);
|
|
@@ -1014,12 +1113,46 @@ function CarouselFeatureBadge({
|
|
|
1014
1113
|
index
|
|
1015
1114
|
));
|
|
1016
1115
|
};
|
|
1116
|
+
const headerItems = React8__namespace.useMemo(() => {
|
|
1117
|
+
const items2 = [];
|
|
1118
|
+
if (heading) {
|
|
1119
|
+
if (typeof heading === "string") {
|
|
1120
|
+
items2.push({
|
|
1121
|
+
_type: "text",
|
|
1122
|
+
as: "h2",
|
|
1123
|
+
className: cn(
|
|
1124
|
+
"text-left text-2xl font-semibold md:text-4xl lg:max-w-xl lg:text-6xl text-pretty",
|
|
1125
|
+
headingClassName
|
|
1126
|
+
),
|
|
1127
|
+
children: heading
|
|
1128
|
+
});
|
|
1129
|
+
} else {
|
|
1130
|
+
items2.push(heading);
|
|
1131
|
+
}
|
|
1132
|
+
}
|
|
1133
|
+
if (description) {
|
|
1134
|
+
if (typeof description === "string") {
|
|
1135
|
+
items2.push({
|
|
1136
|
+
_type: "text",
|
|
1137
|
+
as: "p",
|
|
1138
|
+
className: cn(
|
|
1139
|
+
"max-w-full text-left text-lg leading-snug lg:max-w-sm text-balance text-lg",
|
|
1140
|
+
descriptionClassName
|
|
1141
|
+
),
|
|
1142
|
+
children: description
|
|
1143
|
+
});
|
|
1144
|
+
} else {
|
|
1145
|
+
items2.push(description);
|
|
1146
|
+
}
|
|
1147
|
+
}
|
|
1148
|
+
return items2;
|
|
1149
|
+
}, [heading, headingClassName, description, descriptionClassName]);
|
|
1017
1150
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
1018
1151
|
Section,
|
|
1019
1152
|
{
|
|
1020
1153
|
background,
|
|
1021
1154
|
spacing,
|
|
1022
|
-
className
|
|
1155
|
+
className,
|
|
1023
1156
|
pattern,
|
|
1024
1157
|
patternOpacity,
|
|
1025
1158
|
containerMaxWidth,
|
|
@@ -1029,29 +1162,16 @@ function CarouselFeatureBadge({
|
|
|
1029
1162
|
{
|
|
1030
1163
|
className: cn("flex flex-col items-start gap-4", contentClassName),
|
|
1031
1164
|
children: [
|
|
1032
|
-
badge &&
|
|
1033
|
-
/* @__PURE__ */ jsxRuntime.
|
|
1034
|
-
|
|
1035
|
-
|
|
1036
|
-
|
|
1037
|
-
|
|
1038
|
-
|
|
1039
|
-
|
|
1040
|
-
|
|
1041
|
-
|
|
1042
|
-
}
|
|
1043
|
-
) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: headingClassName, children: heading })),
|
|
1044
|
-
description && (typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
1045
|
-
"p",
|
|
1046
|
-
{
|
|
1047
|
-
className: cn(
|
|
1048
|
-
"max-w-xl text-left text-lg leading-snug lg:max-w-sm",
|
|
1049
|
-
descriptionClassName
|
|
1050
|
-
),
|
|
1051
|
-
children: description
|
|
1052
|
-
}
|
|
1053
|
-
) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: descriptionClassName, children: description }))
|
|
1054
|
-
] })
|
|
1165
|
+
badge && (typeof badge === "string" ? /* @__PURE__ */ jsxRuntime.jsx(Badge, { className: badgeClassName, children: badge }) : badge),
|
|
1166
|
+
/* @__PURE__ */ jsxRuntime.jsx(ContentGroup, { items: headerItems, className: "flex flex-col gap-2" }),
|
|
1167
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1168
|
+
BlockActions,
|
|
1169
|
+
{
|
|
1170
|
+
actions,
|
|
1171
|
+
actionsSlot,
|
|
1172
|
+
actionsClassName
|
|
1173
|
+
}
|
|
1174
|
+
)
|
|
1055
1175
|
]
|
|
1056
1176
|
}
|
|
1057
1177
|
),
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { S as SectionBackground, s as SectionSpacing, t as PatternName, m as ContainerMaxWidth } from './community-initiatives-B8KCpwXH.cjs';
|
|
3
|
+
import { ActionConfig } from '@page-speed/maps/components/geo-map';
|
|
3
4
|
import { I as ImageItem, O as OptixFlowConfig } from './blocks-BtDAbw8d.cjs';
|
|
4
5
|
import 'react/jsx-runtime';
|
|
5
6
|
import 'class-variance-authority';
|
|
@@ -101,7 +102,19 @@ interface CarouselFeatureBadgeProps {
|
|
|
101
102
|
* Optional max width for the content container
|
|
102
103
|
*/
|
|
103
104
|
containerMaxWidth?: ContainerMaxWidth;
|
|
105
|
+
/**
|
|
106
|
+
* Array of action configurations for CTA buttons
|
|
107
|
+
*/
|
|
108
|
+
actions?: ActionConfig[];
|
|
109
|
+
/**
|
|
110
|
+
* Custom slot for rendering actions (overrides actions array)
|
|
111
|
+
*/
|
|
112
|
+
actionsSlot?: React.ReactNode;
|
|
113
|
+
/**
|
|
114
|
+
* Additional CSS classes for the actions container
|
|
115
|
+
*/
|
|
116
|
+
actionsClassName?: string;
|
|
104
117
|
}
|
|
105
|
-
declare function CarouselFeatureBadge({ badge, heading, description, items, itemsSlot, className, containerClassName, contentClassName, badgeClassName, headingClassName, descriptionClassName, carouselClassName, carouselItemClassName, optixFlowConfig, background, spacing, pattern, patternOpacity, slideLayoutVariant, containerMaxWidth, }: CarouselFeatureBadgeProps): React.JSX.Element;
|
|
118
|
+
declare function CarouselFeatureBadge({ badge, heading, description, items, itemsSlot, className, containerClassName, contentClassName, badgeClassName, headingClassName, descriptionClassName, carouselClassName, carouselItemClassName, optixFlowConfig, actions, actionsSlot, actionsClassName, background, spacing, pattern, patternOpacity, slideLayoutVariant, containerMaxWidth, }: CarouselFeatureBadgeProps): React.JSX.Element;
|
|
106
119
|
|
|
107
120
|
export { CarouselFeatureBadge, type CarouselFeatureBadgeProps };
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { S as SectionBackground, s as SectionSpacing, t as PatternName, m as ContainerMaxWidth } from './community-initiatives-rTRuDt0r.js';
|
|
3
|
+
import { ActionConfig } from '@page-speed/maps/components/geo-map';
|
|
3
4
|
import { I as ImageItem, O as OptixFlowConfig } from './blocks-BlWXj9GI.js';
|
|
4
5
|
import 'react/jsx-runtime';
|
|
5
6
|
import 'class-variance-authority';
|
|
@@ -101,7 +102,19 @@ interface CarouselFeatureBadgeProps {
|
|
|
101
102
|
* Optional max width for the content container
|
|
102
103
|
*/
|
|
103
104
|
containerMaxWidth?: ContainerMaxWidth;
|
|
105
|
+
/**
|
|
106
|
+
* Array of action configurations for CTA buttons
|
|
107
|
+
*/
|
|
108
|
+
actions?: ActionConfig[];
|
|
109
|
+
/**
|
|
110
|
+
* Custom slot for rendering actions (overrides actions array)
|
|
111
|
+
*/
|
|
112
|
+
actionsSlot?: React.ReactNode;
|
|
113
|
+
/**
|
|
114
|
+
* Additional CSS classes for the actions container
|
|
115
|
+
*/
|
|
116
|
+
actionsClassName?: string;
|
|
104
117
|
}
|
|
105
|
-
declare function CarouselFeatureBadge({ badge, heading, description, items, itemsSlot, className, containerClassName, contentClassName, badgeClassName, headingClassName, descriptionClassName, carouselClassName, carouselItemClassName, optixFlowConfig, background, spacing, pattern, patternOpacity, slideLayoutVariant, containerMaxWidth, }: CarouselFeatureBadgeProps): React.JSX.Element;
|
|
118
|
+
declare function CarouselFeatureBadge({ badge, heading, description, items, itemsSlot, className, containerClassName, contentClassName, badgeClassName, headingClassName, descriptionClassName, carouselClassName, carouselItemClassName, optixFlowConfig, actions, actionsSlot, actionsClassName, background, spacing, pattern, patternOpacity, slideLayoutVariant, containerMaxWidth, }: CarouselFeatureBadgeProps): React.JSX.Element;
|
|
106
119
|
|
|
107
120
|
export { CarouselFeatureBadge, type CarouselFeatureBadgeProps };
|