@opensite/ui 2.0.6 → 2.0.8

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.
Files changed (77) hide show
  1. package/dist/hero-adaptable-product-grid.cjs +1 -1
  2. package/dist/hero-adaptable-product-grid.js +1 -1
  3. package/dist/hero-agency-animated-images.cjs +795 -631
  4. package/dist/hero-agency-animated-images.d.cts +13 -9
  5. package/dist/hero-agency-animated-images.d.ts +13 -9
  6. package/dist/hero-agency-animated-images.js +794 -630
  7. package/dist/hero-business-carousel-dots.cjs +822 -911
  8. package/dist/hero-business-carousel-dots.d.cts +5 -1
  9. package/dist/hero-business-carousel-dots.d.ts +5 -1
  10. package/dist/hero-business-carousel-dots.js +824 -910
  11. package/dist/hero-coming-soon-countdown.cjs +267 -110
  12. package/dist/hero-coming-soon-countdown.d.cts +8 -11
  13. package/dist/hero-coming-soon-countdown.d.ts +8 -11
  14. package/dist/hero-coming-soon-countdown.js +268 -111
  15. package/dist/hero-conversation-intelligence.cjs +673 -639
  16. package/dist/hero-conversation-intelligence.js +663 -629
  17. package/dist/hero-creative-studio-stacked.cjs +899 -861
  18. package/dist/hero-creative-studio-stacked.d.cts +16 -15
  19. package/dist/hero-creative-studio-stacked.d.ts +16 -15
  20. package/dist/hero-creative-studio-stacked.js +897 -859
  21. package/dist/hero-customer-support-layered.cjs +89 -76
  22. package/dist/hero-customer-support-layered.js +89 -76
  23. package/dist/hero-developer-tools-code.cjs +721 -669
  24. package/dist/hero-developer-tools-code.d.cts +5 -1
  25. package/dist/hero-developer-tools-code.d.ts +5 -1
  26. package/dist/hero-developer-tools-code.js +719 -667
  27. package/dist/hero-digital-agency-fullscreen.cjs +722 -680
  28. package/dist/hero-digital-agency-fullscreen.d.cts +4 -20
  29. package/dist/hero-digital-agency-fullscreen.d.ts +4 -20
  30. package/dist/hero-digital-agency-fullscreen.js +722 -680
  31. package/dist/hero-ecommerce-product-showcase.cjs +892 -846
  32. package/dist/hero-ecommerce-product-showcase.js +889 -843
  33. package/dist/hero-enterprise-security.cjs +168 -132
  34. package/dist/hero-enterprise-security.d.cts +12 -19
  35. package/dist/hero-enterprise-security.d.ts +12 -19
  36. package/dist/hero-enterprise-security.js +168 -132
  37. package/dist/hero-event-registration.cjs +39 -39
  38. package/dist/hero-event-registration.js +39 -39
  39. package/dist/hero-fullscreen-background-image.cjs +3 -2
  40. package/dist/hero-fullscreen-background-image.js +3 -2
  41. package/dist/hero-fullscreen-logo-cta.cjs +4 -2
  42. package/dist/hero-fullscreen-logo-cta.js +4 -2
  43. package/dist/hero-innovation-image-grid.cjs +2 -2
  44. package/dist/hero-innovation-image-grid.js +2 -2
  45. package/dist/hero-mental-health-team.cjs +17 -17
  46. package/dist/hero-mental-health-team.d.cts +5 -5
  47. package/dist/hero-mental-health-team.d.ts +5 -5
  48. package/dist/hero-mental-health-team.js +17 -17
  49. package/dist/hero-mobile-app-download.cjs +2 -2
  50. package/dist/hero-mobile-app-download.js +2 -2
  51. package/dist/hero-newsletter-minimal.cjs +97 -57
  52. package/dist/hero-newsletter-minimal.d.cts +5 -1
  53. package/dist/hero-newsletter-minimal.d.ts +5 -1
  54. package/dist/hero-newsletter-minimal.js +97 -57
  55. package/dist/hero-shared-inbox-layered.cjs +522 -42
  56. package/dist/hero-shared-inbox-layered.d.cts +20 -4
  57. package/dist/hero-shared-inbox-layered.d.ts +20 -4
  58. package/dist/hero-shared-inbox-layered.js +505 -40
  59. package/dist/hero-startup-launch-cta.cjs +859 -816
  60. package/dist/hero-startup-launch-cta.d.cts +3 -2
  61. package/dist/hero-startup-launch-cta.d.ts +3 -2
  62. package/dist/hero-startup-launch-cta.js +858 -815
  63. package/dist/hero-therapy-testimonial-grid.cjs +1 -1
  64. package/dist/hero-therapy-testimonial-grid.js +1 -1
  65. package/dist/hero-video-dialog-gradient-BnCFFec0.d.ts +99 -0
  66. package/dist/hero-video-dialog-gradient-Dapebkzu.d.cts +99 -0
  67. package/dist/hero-video-dialog-gradient.cjs +24 -23
  68. package/dist/hero-video-dialog-gradient.d.cts +4 -94
  69. package/dist/hero-video-dialog-gradient.d.ts +4 -94
  70. package/dist/hero-video-dialog-gradient.js +24 -23
  71. package/dist/hero-welcome-asymmetric-images.cjs +652 -617
  72. package/dist/hero-welcome-asymmetric-images.d.cts +5 -1
  73. package/dist/hero-welcome-asymmetric-images.d.ts +5 -1
  74. package/dist/hero-welcome-asymmetric-images.js +651 -616
  75. package/dist/registry.cjs +1111 -848
  76. package/dist/registry.js +1111 -848
  77. package/package.json +1 -1
@@ -7,7 +7,7 @@ var tailwindMerge = require('tailwind-merge');
7
7
  var classVarianceAuthority = require('class-variance-authority');
8
8
  var jsxRuntime = require('react/jsx-runtime');
9
9
  var icon = require('@page-speed/icon');
10
- var img = require('@page-speed/img');
10
+ var reactSlot = require('@radix-ui/react-slot');
11
11
 
12
12
  function _interopNamespace(e) {
13
13
  if (e && e.__esModule) return e;
@@ -33,66 +33,6 @@ var React__namespace = /*#__PURE__*/_interopNamespace(React);
33
33
  function cn(...inputs) {
34
34
  return tailwindMerge.twMerge(clsx.clsx(inputs));
35
35
  }
36
- function getNestedCardBg(parentBg, variant = "muted", options) {
37
- const isDark = parentBg === "dark" || parentBg === "secondary" || parentBg === "primary";
38
- if (isDark) {
39
- switch (variant) {
40
- case "muted":
41
- return "bg-background";
42
- case "card":
43
- return "bg-card";
44
- case "accent":
45
- return "bg-accent";
46
- case "subtle":
47
- return "bg-background/50";
48
- }
49
- } else {
50
- switch (variant) {
51
- case "muted":
52
- return "bg-muted";
53
- case "card":
54
- return "bg-card";
55
- case "accent":
56
- return "bg-accent";
57
- case "subtle":
58
- return "bg-muted/50";
59
- }
60
- }
61
- }
62
- function getNestedCardTextColor(parentBg, options) {
63
- const isDark = parentBg === "dark" || parentBg === "secondary" || parentBg === "primary";
64
- return isDark ? "text-foreground" : "";
65
- }
66
- function getTextColor(parentBg, variant = "default", options) {
67
- const isDark = parentBg === "dark" || parentBg === "secondary" || parentBg === "primary";
68
- if (isDark) {
69
- switch (variant) {
70
- case "default":
71
- return "text-foreground";
72
- case "muted":
73
- return "text-foreground/80";
74
- case "subtle":
75
- return "text-foreground/60";
76
- case "accent":
77
- return "text-accent-foreground";
78
- }
79
- } else {
80
- switch (variant) {
81
- case "default":
82
- return "text-foreground";
83
- case "muted":
84
- return "text-muted-foreground";
85
- case "subtle":
86
- return "text-muted-foreground/70";
87
- case "accent":
88
- return "text-primary";
89
- }
90
- }
91
- }
92
- function getAccentColor(parentBg, options) {
93
- const isDark = parentBg === "dark" || parentBg === "secondary" || parentBg === "primary";
94
- return isDark ? "text-accent-foreground" : "text-primary";
95
- }
96
36
  function normalizePhoneNumber(input) {
97
37
  const trimmed = input.trim();
98
38
  if (trimmed.toLowerCase().startsWith("tel:")) {
@@ -890,91 +830,158 @@ var Section = React__namespace.default.forwardRef(
890
830
  }
891
831
  );
892
832
  Section.displayName = "Section";
833
+ var badgeVariants = classVarianceAuthority.cva(
834
+ "inline-flex items-center justify-center rounded-full border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",
835
+ {
836
+ variants: {
837
+ variant: {
838
+ default: "border-transparent bg-primary text-primary-foreground [a&]:hover:bg-primary/90",
839
+ secondary: "border-transparent bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",
840
+ destructive: "border-transparent bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",
841
+ outline: "text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground"
842
+ }
843
+ },
844
+ defaultVariants: {
845
+ variant: "default"
846
+ }
847
+ }
848
+ );
849
+ function Badge({
850
+ className,
851
+ variant,
852
+ asChild = false,
853
+ ...props
854
+ }) {
855
+ const Comp = asChild ? reactSlot.Slot : "span";
856
+ return /* @__PURE__ */ jsxRuntime.jsx(
857
+ Comp,
858
+ {
859
+ "data-slot": "badge",
860
+ className: cn(badgeVariants({ variant }), className),
861
+ ...props
862
+ }
863
+ );
864
+ }
865
+ var MOBILE_CLASSES = {
866
+ "fit-left": "items-start md:items-center",
867
+ "fit-center": "items-center",
868
+ "fit-right": "items-end md:items-center",
869
+ "full-left": "items-stretch md:items-center",
870
+ "full-center": "items-stretch md:items-center",
871
+ "full-right": "items-stretch md:items-center"
872
+ };
873
+ function BlockActions({
874
+ mobileConfig,
875
+ actionsClassName,
876
+ verticalSpacing = "mt-4 md:mt-8",
877
+ actions,
878
+ actionsSlot
879
+ }) {
880
+ const width = mobileConfig?.width ?? "full";
881
+ const position = mobileConfig?.position ?? "center";
882
+ const mobileLayoutClass = MOBILE_CLASSES[`${width}-${position}`];
883
+ if (actionsSlot) {
884
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { children: actionsSlot });
885
+ } else if (actions && actions?.length > 0) {
886
+ return /* @__PURE__ */ jsxRuntime.jsx(
887
+ "div",
888
+ {
889
+ className: cn(
890
+ "flex flex-col md:flex-row flex-wrap gap-4",
891
+ mobileLayoutClass,
892
+ actionsClassName,
893
+ verticalSpacing
894
+ ),
895
+ children: actions.map((action, index) => /* @__PURE__ */ jsxRuntime.jsx(ActionComponent, { action }, index))
896
+ }
897
+ );
898
+ } else {
899
+ return null;
900
+ }
901
+ }
902
+ function ActionComponent({ action }) {
903
+ const {
904
+ label,
905
+ icon,
906
+ iconAfter,
907
+ children,
908
+ href,
909
+ onClick,
910
+ className: actionClassName,
911
+ ...pressableProps
912
+ } = action;
913
+ return /* @__PURE__ */ jsxRuntime.jsx(
914
+ Pressable,
915
+ {
916
+ href,
917
+ onClick,
918
+ asButton: action.asButton ?? true,
919
+ className: actionClassName,
920
+ ...pressableProps,
921
+ children: children ?? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
922
+ icon,
923
+ label,
924
+ iconAfter
925
+ ] })
926
+ }
927
+ );
928
+ }
893
929
  function HeroEnterpriseSecurity({
894
- badgeText,
930
+ badge,
895
931
  badgeIcon,
896
- badgeSlot,
932
+ badgeClassName,
897
933
  heading,
898
934
  description,
899
935
  actions,
900
936
  actionsSlot,
901
937
  features,
902
938
  featuresSlot,
903
- logos,
904
- logosSlot,
905
939
  background,
906
- spacing,
907
940
  pattern,
908
941
  patternOpacity,
942
+ patternClassName,
909
943
  className,
910
- containerClassName,
944
+ containerClassName = "px-6 sm:px-6 md:px-8 lg:px-8",
945
+ spacing = "xl",
911
946
  contentClassName,
912
947
  headingClassName,
913
948
  descriptionClassName,
914
949
  actionsClassName,
915
- featuresClassName,
916
- logosClassName,
917
- optixFlowConfig
950
+ featuresClassName
918
951
  }) {
919
- const renderBadge = React.useMemo(() => {
920
- if (badgeSlot) return badgeSlot;
921
- if (!badgeText && !badgeIcon) return null;
922
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn(
923
- "inline-flex items-center gap-2 rounded-full border border-border px-4 py-2 text-sm",
924
- getNestedCardBg(background, "muted"),
925
- getNestedCardTextColor(background)
926
- ), children: [
927
- badgeIcon && /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: badgeIcon, size: 16, className: "text-success" }),
928
- /* @__PURE__ */ jsxRuntime.jsx("span", { children: badgeText })
929
- ] });
930
- }, [badgeSlot, badgeText, badgeIcon]);
931
- const renderActions = React.useMemo(() => {
932
- if (actionsSlot) return actionsSlot;
933
- if (!actions || actions.length === 0) return null;
934
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("mt-10 flex flex-col items-center gap-4 sm:flex-row sm:justify-center", actionsClassName), children: actions.map((action, index) => {
935
- const { label, icon, iconAfter, children, className: actionClassName, ...pressableProps } = action;
936
- return /* @__PURE__ */ jsxRuntime.jsx(
937
- Pressable,
938
- {
939
- asButton: true,
940
- className: actionClassName,
941
- ...pressableProps,
942
- children: children ?? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
943
- icon,
944
- label,
945
- iconAfter
946
- ] })
947
- },
948
- index
949
- );
950
- }) });
951
- }, [actionsSlot, actions, actionsClassName]);
952
952
  const renderFeatures = React.useMemo(() => {
953
953
  if (featuresSlot) return featuresSlot;
954
954
  if (!features || features.length === 0) return null;
955
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("mt-20 grid gap-8 md:grid-cols-3", featuresClassName), children: features.map((feature, index) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("rounded-2xl border border-border p-6 text-center", getNestedCardBg(background, "card")), children: [
956
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("mx-auto mb-4 flex h-12 w-12 items-center justify-center rounded-full", feature.iconBgClass || `${getAccentColor(background)}/10`), children: feature.icon ?? /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: feature.iconName || "lucide/check", size: 24, className: feature.iconColorClass || getAccentColor(background) }) }),
957
- /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "mb-2 text-lg font-semibold ", children: feature.title }),
958
- feature.description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: cn("text-sm", getTextColor(background, "muted")), children: feature.description })
959
- ] }, index)) });
955
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("mt-20 grid gap-8 md:grid-cols-3", featuresClassName), children: features.map((feature, index) => /* @__PURE__ */ jsxRuntime.jsxs(
956
+ Pressable,
957
+ {
958
+ href: feature.href,
959
+ className: cn("rounded-2xl border border-border p-6 text-center"),
960
+ children: [
961
+ /* @__PURE__ */ jsxRuntime.jsx(
962
+ "div",
963
+ {
964
+ className: cn(
965
+ "mx-auto mb-4 flex h-12 w-12 items-center justify-center rounded-full",
966
+ feature.iconBgClass
967
+ ),
968
+ children: feature.icon ?? /* @__PURE__ */ jsxRuntime.jsx(
969
+ DynamicIcon,
970
+ {
971
+ name: feature.iconName || "lucide/check",
972
+ size: 24,
973
+ className: feature.iconColorClass
974
+ }
975
+ )
976
+ }
977
+ ),
978
+ /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "mb-2 text-lg font-semibold ", children: feature.title }),
979
+ feature.description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm", children: feature.description })
980
+ ]
981
+ },
982
+ index
983
+ )) });
960
984
  }, [featuresSlot, features, featuresClassName]);
961
- const renderLogos = React.useMemo(() => {
962
- if (logosSlot) return logosSlot;
963
- if (!logos || logos.length === 0) return null;
964
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("mt-16 flex flex-wrap items-center justify-center gap-8", logosClassName), children: logos.map((logo, index) => {
965
- const logoSrc = typeof logo.src === "string" ? logo.src : logo.src.light;
966
- return /* @__PURE__ */ jsxRuntime.jsx(
967
- img.Img,
968
- {
969
- src: logoSrc,
970
- alt: logo.alt,
971
- className: cn("h-8 opacity-50 grayscale", logo.className),
972
- optixFlowConfig
973
- },
974
- index
975
- );
976
- }) });
977
- }, [logosSlot, logos, logosClassName, optixFlowConfig]);
978
985
  return /* @__PURE__ */ jsxRuntime.jsx(
979
986
  Section,
980
987
  {
@@ -982,16 +989,45 @@ function HeroEnterpriseSecurity({
982
989
  spacing,
983
990
  pattern,
984
991
  patternOpacity,
992
+ patternClassName,
985
993
  className,
986
- children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("container", containerClassName), children: [
994
+ containerClassName,
995
+ children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "pt-8 md:pt-0", children: [
987
996
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("mx-auto max-w-4xl text-center", contentClassName), children: [
988
- renderBadge,
989
- heading && (typeof heading === "string" ? /* @__PURE__ */ jsxRuntime.jsx("h1", { className: cn("mt-8 text-4xl font-bold tracking-tight md:text-5xl lg:text-6xl", headingClassName), children: heading }) : /* @__PURE__ */ jsxRuntime.jsx("h1", { className: cn("mt-8 text-4xl font-bold tracking-tight md:text-5xl lg:text-6xl", headingClassName), children: heading })),
990
- description && (typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: cn("mt-6 text-lg md:text-xl", getTextColor(background, "muted"), descriptionClassName), children: description }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: descriptionClassName, children: description })),
991
- renderActions
997
+ badge && /* @__PURE__ */ jsxRuntime.jsxs(Badge, { className: cn("px-4", badgeClassName), children: [
998
+ badgeIcon,
999
+ typeof badge === "string" ? /* @__PURE__ */ jsxRuntime.jsx("span", { children: badge }) : badge
1000
+ ] }),
1001
+ heading && (typeof heading === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
1002
+ "h1",
1003
+ {
1004
+ className: cn(
1005
+ "mb-8 text-4xl font-normal text-balance md:text-7xl",
1006
+ headingClassName
1007
+ ),
1008
+ children: heading
1009
+ }
1010
+ ) : heading),
1011
+ description && (typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
1012
+ "p",
1013
+ {
1014
+ className: cn(
1015
+ "mb-12 max-w-full md:max-w-[70%] text-lg md:text-xl font-normal text-balance",
1016
+ descriptionClassName
1017
+ ),
1018
+ children: description
1019
+ }
1020
+ ) : description),
1021
+ /* @__PURE__ */ jsxRuntime.jsx(
1022
+ BlockActions,
1023
+ {
1024
+ actions,
1025
+ actionsSlot,
1026
+ actionsClassName
1027
+ }
1028
+ )
992
1029
  ] }),
993
- renderFeatures,
994
- renderLogos
1030
+ renderFeatures
995
1031
  ] })
996
1032
  }
997
1033
  );
@@ -1,6 +1,6 @@
1
1
  import * as React from 'react';
2
2
  import { f as SectionBackground, g as SectionSpacing, t as PatternName } from './community-initiatives-Bz_A5vLU.cjs';
3
- import { A as ActionConfig, F as FeatureItem, L as LogoItem, O as OptixFlowConfig } from './blocks-Cohq4eio.cjs';
3
+ import { A as ActionConfig, F as FeatureItem, O as OptixFlowConfig } from './blocks-Cohq4eio.cjs';
4
4
  import 'react/jsx-runtime';
5
5
  import 'class-variance-authority';
6
6
  import './button-variants-lRElsmTc.cjs';
@@ -8,17 +8,17 @@ import 'class-variance-authority/types';
8
8
 
9
9
  interface HeroEnterpriseSecurityProps {
10
10
  /**
11
- * Badge text content
11
+ * Badge/status indicator content
12
12
  */
13
- badgeText?: React.ReactNode;
13
+ badge?: React.ReactNode;
14
14
  /**
15
- * Badge icon name
15
+ * Badge icon
16
16
  */
17
- badgeIcon?: string;
17
+ badgeIcon?: React.ReactNode;
18
18
  /**
19
- * Custom slot for badge (overrides badge props)
19
+ * Additional CSS classes for the badge
20
20
  */
21
- badgeSlot?: React.ReactNode;
21
+ badgeClassName?: string;
22
22
  /**
23
23
  * Main heading content
24
24
  */
@@ -46,13 +46,6 @@ interface HeroEnterpriseSecurityProps {
46
46
  */
47
47
  featuresSlot?: React.ReactNode;
48
48
  /**
49
- * Array of logo items
50
- */
51
- logos?: LogoItem[];
52
- /**
53
- * Custom slot for logos (overrides logos array)
54
- */
55
- logosSlot?: React.ReactNode; /**
56
49
  * Background style for the section
57
50
  */
58
51
  background?: SectionBackground;
@@ -68,6 +61,10 @@ interface HeroEnterpriseSecurityProps {
68
61
  * Pattern overlay opacity (0-1)
69
62
  */
70
63
  patternOpacity?: number;
64
+ /**
65
+ * Additional CSS classes for the pattern overlay
66
+ */
67
+ patternClassName?: string;
71
68
  /**
72
69
  * Additional CSS classes for the section
73
70
  */
@@ -96,15 +93,11 @@ interface HeroEnterpriseSecurityProps {
96
93
  * Additional CSS classes for the features container
97
94
  */
98
95
  featuresClassName?: string;
99
- /**
100
- * Additional CSS classes for the logos container
101
- */
102
- logosClassName?: string;
103
96
  /**
104
97
  * OptixFlow image optimization configuration
105
98
  */
106
99
  optixFlowConfig?: OptixFlowConfig;
107
100
  }
108
- declare function HeroEnterpriseSecurity({ badgeText, badgeIcon, badgeSlot, heading, description, actions, actionsSlot, features, featuresSlot, logos, logosSlot, background, spacing, pattern, patternOpacity, className, containerClassName, contentClassName, headingClassName, descriptionClassName, actionsClassName, featuresClassName, logosClassName, optixFlowConfig, }: HeroEnterpriseSecurityProps): React.JSX.Element;
101
+ declare function HeroEnterpriseSecurity({ badge, badgeIcon, badgeClassName, heading, description, actions, actionsSlot, features, featuresSlot, background, pattern, patternOpacity, patternClassName, className, containerClassName, spacing, contentClassName, headingClassName, descriptionClassName, actionsClassName, featuresClassName, }: HeroEnterpriseSecurityProps): React.JSX.Element;
109
102
 
110
103
  export { HeroEnterpriseSecurity, type HeroEnterpriseSecurityProps };
@@ -1,6 +1,6 @@
1
1
  import * as React from 'react';
2
2
  import { f as SectionBackground, g as SectionSpacing, t as PatternName } from './community-initiatives-Bi_ClKrO.js';
3
- import { A as ActionConfig, F as FeatureItem, L as LogoItem, O as OptixFlowConfig } from './blocks-k17uluAz.js';
3
+ import { A as ActionConfig, F as FeatureItem, O as OptixFlowConfig } from './blocks-k17uluAz.js';
4
4
  import 'react/jsx-runtime';
5
5
  import 'class-variance-authority';
6
6
  import './button-variants-lRElsmTc.js';
@@ -8,17 +8,17 @@ import 'class-variance-authority/types';
8
8
 
9
9
  interface HeroEnterpriseSecurityProps {
10
10
  /**
11
- * Badge text content
11
+ * Badge/status indicator content
12
12
  */
13
- badgeText?: React.ReactNode;
13
+ badge?: React.ReactNode;
14
14
  /**
15
- * Badge icon name
15
+ * Badge icon
16
16
  */
17
- badgeIcon?: string;
17
+ badgeIcon?: React.ReactNode;
18
18
  /**
19
- * Custom slot for badge (overrides badge props)
19
+ * Additional CSS classes for the badge
20
20
  */
21
- badgeSlot?: React.ReactNode;
21
+ badgeClassName?: string;
22
22
  /**
23
23
  * Main heading content
24
24
  */
@@ -46,13 +46,6 @@ interface HeroEnterpriseSecurityProps {
46
46
  */
47
47
  featuresSlot?: React.ReactNode;
48
48
  /**
49
- * Array of logo items
50
- */
51
- logos?: LogoItem[];
52
- /**
53
- * Custom slot for logos (overrides logos array)
54
- */
55
- logosSlot?: React.ReactNode; /**
56
49
  * Background style for the section
57
50
  */
58
51
  background?: SectionBackground;
@@ -68,6 +61,10 @@ interface HeroEnterpriseSecurityProps {
68
61
  * Pattern overlay opacity (0-1)
69
62
  */
70
63
  patternOpacity?: number;
64
+ /**
65
+ * Additional CSS classes for the pattern overlay
66
+ */
67
+ patternClassName?: string;
71
68
  /**
72
69
  * Additional CSS classes for the section
73
70
  */
@@ -96,15 +93,11 @@ interface HeroEnterpriseSecurityProps {
96
93
  * Additional CSS classes for the features container
97
94
  */
98
95
  featuresClassName?: string;
99
- /**
100
- * Additional CSS classes for the logos container
101
- */
102
- logosClassName?: string;
103
96
  /**
104
97
  * OptixFlow image optimization configuration
105
98
  */
106
99
  optixFlowConfig?: OptixFlowConfig;
107
100
  }
108
- declare function HeroEnterpriseSecurity({ badgeText, badgeIcon, badgeSlot, heading, description, actions, actionsSlot, features, featuresSlot, logos, logosSlot, background, spacing, pattern, patternOpacity, className, containerClassName, contentClassName, headingClassName, descriptionClassName, actionsClassName, featuresClassName, logosClassName, optixFlowConfig, }: HeroEnterpriseSecurityProps): React.JSX.Element;
101
+ declare function HeroEnterpriseSecurity({ badge, badgeIcon, badgeClassName, heading, description, actions, actionsSlot, features, featuresSlot, background, pattern, patternOpacity, patternClassName, className, containerClassName, spacing, contentClassName, headingClassName, descriptionClassName, actionsClassName, featuresClassName, }: HeroEnterpriseSecurityProps): React.JSX.Element;
109
102
 
110
103
  export { HeroEnterpriseSecurity, type HeroEnterpriseSecurityProps };