@vodafone_de/brix-components 10.0.1 → 10.0.2

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 (53) hide show
  1. package/dist/components/Accordion/index.js +1 -1
  2. package/dist/components/Badge/index.js +1 -1
  3. package/dist/components/Button/index.js +3 -3
  4. package/dist/components/ButtonAsLink/index.js +1 -1
  5. package/dist/components/ButtonGroup/index.js +1 -1
  6. package/dist/components/ConsentMessage/index.js +2 -2
  7. package/dist/components/DiscoveryCard/index.js +5 -6
  8. package/dist/components/DiscoveryCardGroup/index.js +4 -4
  9. package/dist/components/FeatureCardGroup/components/FeatureCard/index.d.ts +5 -0
  10. package/dist/components/FeatureCardGroup/components/FeatureCard/props.d.ts +55 -0
  11. package/dist/components/FeatureCardGroup/components/FeatureCard/styled.d.ts +4 -0
  12. package/dist/components/FeatureCardGroup/index.d.ts +5 -0
  13. package/dist/components/FeatureCardGroup/index.js +119 -0
  14. package/dist/components/FeatureCardGroup/props.d.ts +31 -0
  15. package/dist/components/FeatureCardGroup/styled.d.ts +2 -0
  16. package/dist/components/FilterGroup/index.js +1 -1
  17. package/dist/components/Form/index.js +1 -1
  18. package/dist/components/FormHelperStatusIcon/index.js +1 -1
  19. package/dist/components/Icon/index.js +1 -1
  20. package/dist/components/IconButton/index.js +2 -2
  21. package/dist/components/IconLoader/index.js +2 -1
  22. package/dist/components/IconSnippet/index.js +2 -2
  23. package/dist/components/ImageHeader/index.js +2 -2
  24. package/dist/components/Legend/index.js +1 -1
  25. package/dist/components/Link/index.js +3 -3
  26. package/dist/components/LinkAsButton/index.js +1 -1
  27. package/dist/components/LinkListItem/index.js +2 -2
  28. package/dist/components/MediaText/index.js +2 -2
  29. package/dist/components/Notification/index.js +2 -2
  30. package/dist/components/OpenTextFootnoteAdapter/index.js +1 -1
  31. package/dist/components/PickerGroup/index.js +2 -2
  32. package/dist/components/ProductCard/index.js +3 -3
  33. package/dist/components/RichText/index.js +1 -1
  34. package/dist/components/RichtTextContentful/index.js +1 -1
  35. package/dist/components/SearchInput/index.js +1 -1
  36. package/dist/components/SuggestInput/index.js +1 -1
  37. package/dist/components/Switch/index.js +1 -1
  38. package/dist/components/TabGroup/index.js +1 -1
  39. package/dist/components/TextList/index.js +1 -1
  40. package/dist/contentful/live-preview-inspector/index.js +1 -1
  41. package/dist/contentful/live-preview-renderer/index.js +1 -1
  42. package/dist/contentful/renderer/index.js +1 -1
  43. package/dist/{index--RjkzZm0.js → index-B3v10poy.js} +7 -2
  44. package/dist/{index-DP6Nlg-a.js → index-BXt1ptbH.js} +14 -13
  45. package/dist/{index-IA76oabp.js → index-CflWbzuv.js} +3 -3
  46. package/dist/{index-Dd-A7i9Y.js → index-r-dbrZxA.js} +2 -2
  47. package/dist/{index-DwGcrvTh.js → index-sJClnrzW.js} +1 -1
  48. package/dist/index.d.ts +2 -0
  49. package/dist/index.js +55 -53
  50. package/dist/{mapContentToComponents-DWVykPoW.js → mapContentToComponents-D215P4kM.js} +7 -7
  51. package/dist/{styled-BKH3egch.js → styled-CepQAcdi.js} +1 -1
  52. package/dist/{validate-CLBUbscx.js → validate-BxqNSkch.js} +2 -2
  53. package/package.json +1 -1
@@ -2,7 +2,7 @@
2
2
  import { jsxs, jsx } from "react/jsx-runtime";
3
3
  import { useRef, useState, useEffect } from "react";
4
4
  import Collapsible from "../Collapsible/index.js";
5
- import { b as iconNames, I as IconLoader } from "../../index--RjkzZm0.js";
5
+ import { b as iconNames, I as IconLoader } from "../../index-B3v10poy.js";
6
6
  import { c as iconSizeMd } from "../../IconSize-AJp7xdJi.js";
7
7
  import { bf as ChevronDownIcon } from "../../_5gPlusIcon-CnxmOo1u.js";
8
8
  import styled from "styled-components";
@@ -4,7 +4,7 @@ import "../../index-BsykXBqC.js";
4
4
  import "../../IconSize-AJp7xdJi.js";
5
5
  import "../../SizeTypes-Ck_RdzIf.js";
6
6
  import "../../Spacing-8v6hcO2x.js";
7
- import { b, c, d, B, i, p, s, a, t, v } from "../../index-DwGcrvTh.js";
7
+ import { b, c, d, B, i, p, s, a, t, v } from "../../index-sJClnrzW.js";
8
8
  export {
9
9
  b as BadgeAppearanceColor,
10
10
  c as badgeAppearances,
@@ -1,8 +1,8 @@
1
1
  "use client";
2
2
  import { jsx, jsxs } from "react/jsx-runtime";
3
- import { B as ButtonAsLink, g as getButtonIcon } from "../../validate-CLBUbscx.js";
4
- import { c, a, b, d, f, e } from "../../validate-CLBUbscx.js";
5
- import { B as ButtonStyled } from "../../styled-BKH3egch.js";
3
+ import { B as ButtonAsLink, g as getButtonIcon } from "../../validate-BxqNSkch.js";
4
+ import { c, a, b, d, f, e } from "../../validate-BxqNSkch.js";
5
+ import { B as ButtonStyled } from "../../styled-CepQAcdi.js";
6
6
  const isButtonAsLinkProp = (props) => {
7
7
  return props.href !== void 0;
8
8
  };
@@ -1,6 +1,6 @@
1
1
  "use client";
2
2
  import "react/jsx-runtime";
3
- import { B, i, v } from "../../validate-CLBUbscx.js";
3
+ import { B, i, v } from "../../validate-BxqNSkch.js";
4
4
  import "../../hooks/useLinkComponent/index.js";
5
5
  import "../../filterProps-CxkibNnG.js";
6
6
  import "../../sanitizeLinkProps-D2Kkovy1.js";
@@ -6,7 +6,7 @@ import { b as flexJustifyStart, c as flexJustifyEnd, d as flexJustifyCenter, e a
6
6
  import FlexItem from "../FlexItem/index.js";
7
7
  import { b as spacingSm, s as spacingMd } from "../../Spacing-8v6hcO2x.js";
8
8
  import { u as useViewport } from "../../index-DKCzYjXw.js";
9
- import { e as validateButtonProps, v as validateButtonAsLinkProps } from "../../validate-CLBUbscx.js";
9
+ import { e as validateButtonProps, v as validateButtonAsLinkProps } from "../../validate-BxqNSkch.js";
10
10
  import { i as isObject, h as hasMatchingComponentName } from "../../isObject-BYBrvoVW.js";
11
11
  import { i as isBottomSpacing } from "../../isBottomSpacing-BxfreCZU.js";
12
12
  const flexJustifyBehaviours = [flexJustifyStart, flexJustifyEnd, flexJustifyCenter, flexJustifyBetween];
@@ -3,9 +3,9 @@ import { jsxs, Fragment, jsx } from "react/jsx-runtime";
3
3
  import { useState, useEffect } from "react";
4
4
  import Body, { bodyAlignCenter } from "../Body/index.js";
5
5
  import Button from "../Button/index.js";
6
- import { a as buttonAutoWidth } from "../../validate-CLBUbscx.js";
6
+ import { a as buttonAutoWidth } from "../../validate-BxqNSkch.js";
7
7
  import styled from "styled-components";
8
- import { B as ButtonStyled, t as tertiaryAppearance } from "../../styled-BKH3egch.js";
8
+ import { B as ButtonStyled, t as tertiaryAppearance } from "../../styled-CepQAcdi.js";
9
9
  import viewport from "../../foundations/media-query/viewport/index.js";
10
10
  import { getBackgroundColor } from "../../foundations/token/getBackgroundColor/index.js";
11
11
  import { getSpacing } from "../../foundations/token/getSpacing/index.js";
@@ -1,20 +1,20 @@
1
1
  "use client";
2
2
  import { jsx, jsxs } from "react/jsx-runtime";
3
3
  import { Fragment } from "react";
4
- import { e as BadgeStyled, i as isBadgeProps, B as Badge } from "../../index-DwGcrvTh.js";
4
+ import { e as BadgeStyled, i as isBadgeProps, B as Badge } from "../../index-sJClnrzW.js";
5
5
  import Body, { isBodyProps, bodyAlignLeft, bodyAlignCenter } from "../Body/index.js";
6
6
  import Heading, { isHeadingProps } from "../Heading/index.js";
7
7
  import Link, { isLinkProps } from "../Link/index.js";
8
8
  import { k as isPriceProps, b as priceSizeSm, P as Price, f as priceAlignLeft, g as priceAlignCenter, a as priceOrientationVertical } from "../../index-DCXRnuHz.js";
9
- import { R as RichText } from "../../index-DP6Nlg-a.js";
9
+ import { R as RichText } from "../../index-BXt1ptbH.js";
10
10
  import { f as fontWeightBold } from "../../FontWeight-DEBGHbtO.js";
11
11
  import { b as textHeadingSm } from "../../HeadingSize-CfCRn3Lh.js";
12
12
  import { s as smallSize } from "../../SizeTypes-Ck_RdzIf.js";
13
13
  import { s as spacingMd, c as spacingNone, a as spacingXs, b as spacingSm } from "../../Spacing-8v6hcO2x.js";
14
14
  import "../../index-C2E3JrhF.js";
15
15
  import "../../index-BsykXBqC.js";
16
- import "../../styled-BKH3egch.js";
17
- import { a as LinkStyled } from "../../index-Dd-A7i9Y.js";
16
+ import "../../styled-CepQAcdi.js";
17
+ import { a as LinkStyled } from "../../index-r-dbrZxA.js";
18
18
  import "../../hooks/useLinkComponent/index.js";
19
19
  import "html-react-parser";
20
20
  import "../InlineLink/index.js";
@@ -25,7 +25,6 @@ import Image, { aspectRatio16_9, aspectRatio1_1, isImageProps } from "../Image/i
25
25
  import { getBottomSpacing } from "../../foundations/token/getBottomSpacing/index.js";
26
26
  import { getSpacing } from "../../foundations/token/getSpacing/index.js";
27
27
  import { a as filterProps } from "../../filterProps-CxkibNnG.js";
28
- import { a as cornerRounded } from "../../CornerStyle-JEbGNArR.js";
29
28
  import "../../index-DbG0QL9D.js";
30
29
  import "../../index-Bu-7sSif.js";
31
30
  import "../UtilityLink/index.js";
@@ -110,7 +109,7 @@ const DiscoveryCardLinkedImage = ({
110
109
  },
111
110
  orientation = discoveryCardOrientationVertical,
112
111
  bottomSpacing
113
- }) => /* @__PURE__ */ jsx(DiscoveryCardImageLinkStyled, { ...linkProps, tabIndex: -1, "aria-describedby": `headingId-${uid}`, orientation, bottomSpacing, children: /* @__PURE__ */ jsx(Image, { ...image, aspectRatio: orientation === discoveryCardOrientationVertical ? aspectRatio16_9 : aspectRatio1_1, corners: cornerRounded }) });
112
+ }) => /* @__PURE__ */ jsx(DiscoveryCardImageLinkStyled, { ...linkProps, tabIndex: -1, "aria-describedby": `headingId-${uid}`, orientation, bottomSpacing, children: /* @__PURE__ */ jsx(Image, { ...image, aspectRatio: orientation === discoveryCardOrientationVertical ? aspectRatio16_9 : aspectRatio1_1, roundedCorners: true, bottomSpacing: spacingNone }) });
114
113
  const validateDiscoveryCardProps = (props) => {
115
114
  if (!isObject(props)) {
116
115
  return false;
@@ -3,23 +3,23 @@ import { jsxs, jsx } from "react/jsx-runtime";
3
3
  import styled from "styled-components";
4
4
  import DiscoveryCard, { discoveryCardOrientationVertical, validateDiscoveryCardProps, discoveryCardOrientationHorizontal } from "../DiscoveryCard/index.js";
5
5
  import { a as Grid, G as GridItem } from "../../index-Bu-7sSif.js";
6
- import { a as LinkStyled } from "../../index-Dd-A7i9Y.js";
6
+ import { a as LinkStyled } from "../../index-r-dbrZxA.js";
7
7
  import { getSpacing } from "../../foundations/token/getSpacing/index.js";
8
8
  import { s as spacingMd } from "../../Spacing-8v6hcO2x.js";
9
9
  import "react";
10
10
  import "../../index-C2E3JrhF.js";
11
11
  import "../../index-BsykXBqC.js";
12
- import "../../index-DwGcrvTh.js";
12
+ import "../../index-sJClnrzW.js";
13
13
  import { i as isObject, h as hasMatchingComponentName } from "../../isObject-BYBrvoVW.js";
14
14
  import "../Body/index.js";
15
15
  import "../Heading/index.js";
16
- import "../../styled-BKH3egch.js";
16
+ import "../../styled-CepQAcdi.js";
17
17
  import "../../hooks/useLinkComponent/index.js";
18
18
  import "../../index-DCXRnuHz.js";
19
19
  import "html-react-parser";
20
20
  import "../InlineLink/index.js";
21
21
  import "../../TableWrapper-Do9KCTGV.js";
22
- import "../../index-DP6Nlg-a.js";
22
+ import "../../index-BXt1ptbH.js";
23
23
  import "../../index-DbG0QL9D.js";
24
24
  import "../UtilityLink/index.js";
25
25
  import "../../hooks/useImageComponent/index.js";
@@ -0,0 +1,5 @@
1
+ import { FC } from 'react';
2
+ import { FeatureCardProps } from './props';
3
+ declare const FeatureCard: FC<FeatureCardProps>;
4
+ export default FeatureCard;
5
+ export * from './props';
@@ -0,0 +1,55 @@
1
+ import { HTMLAttributes } from 'react';
2
+ import { BadgeProps } from '../../../Badge';
3
+ import { HeadingProps } from '../../../Heading';
4
+ import { ImageProps } from '../../../Image';
5
+ import { LinkProps } from '../../../Link';
6
+ import { PriceProps } from '../../../Price';
7
+ import { RichTextProps } from '../../../RichText';
8
+ import { ToggleButtonProps } from '../../../ToggleButton';
9
+ import { PatternProps } from '../../../../foundations/PatternProps';
10
+ export interface FeatureCardProps extends PatternProps, HTMLAttributes<HTMLDivElement> {
11
+ /**
12
+ * Pin component's name from string to the concrete name
13
+ */
14
+ component?: 'FeatureCard';
15
+ /**
16
+ * Unique feature id.
17
+ */
18
+ featureId: string;
19
+ /**
20
+ * Optional visual representation of the feature.
21
+ * Aspect ratio is controlled by the FeatureCard layout
22
+ * and therefore cannot be overridden.
23
+ */
24
+ image?: Omit<ImageProps, 'aspectRatio'>;
25
+ /**
26
+ * Primary heading of the card.
27
+ */
28
+ heading: Omit<HeadingProps, 'size' | 'weight' | 'bottomSpacing' | 'align'> & {
29
+ size?: HeadingProps['size'];
30
+ weight?: HeadingProps['weight'];
31
+ };
32
+ /**
33
+ * Optional badge shown near the heading.
34
+ */
35
+ badge?: BadgeProps;
36
+ /**
37
+ * Pricing information for the feature.
38
+ */
39
+ price: Omit<PriceProps, 'size' | 'orientation' | 'align' | 'bottomSpacing'> & {
40
+ size?: PriceProps['size'];
41
+ };
42
+ /**
43
+ * Optional descriptive content for the feature.
44
+ */
45
+ richText?: RichTextProps;
46
+ /**
47
+ * Optional URL of page that opens when the link in the card is clicked
48
+ */
49
+ link?: LinkProps;
50
+ /**
51
+ * Optional toggle control used to select or activate the feature.
52
+ * Typically part of a comparison or multi-select flow.
53
+ */
54
+ toggleButton?: ToggleButtonProps;
55
+ }
@@ -0,0 +1,4 @@
1
+ export declare const FeatureCardStyled: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('../../../Card').CardProps, never>> & string & Omit<import('react').FC<import('../../../Card').CardProps>, keyof import('react').Component<any, {}, any>>;
2
+ export declare const FeatureCardUpperContentStyled: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').ClassAttributes<HTMLDivElement> & import('react').HTMLAttributes<HTMLDivElement>, never>> & string;
3
+ export declare const FeatureCardLowerContentStyled: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').ClassAttributes<HTMLDivElement> & import('react').HTMLAttributes<HTMLDivElement>, never>> & string;
4
+ export declare const FeatureCardImageStyled: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('../../../Image').ImageProps, never>> & string & Omit<import('react').FC<import('../../../Image').ImageProps>, keyof import('react').Component<any, {}, any>>;
@@ -0,0 +1,5 @@
1
+ import { FC } from 'react';
2
+ import { FeatureCardGroupProps } from './props';
3
+ declare const FeatureCardGroup: FC<FeatureCardGroupProps>;
4
+ export default FeatureCardGroup;
5
+ export * from './props';
@@ -0,0 +1,119 @@
1
+ "use client";
2
+ import { jsxs, jsx } from "react/jsx-runtime";
3
+ import { a as Grid, G as GridItem } from "../../index-Bu-7sSif.js";
4
+ import ToggleButtonProvider from "../ToggleButtonProvider/index.js";
5
+ import { B as Badge } from "../../index-sJClnrzW.js";
6
+ import Heading, { headingAlignCenter } from "../Heading/index.js";
7
+ import "react";
8
+ import "../../index-DbG0QL9D.js";
9
+ import "../../hooks/useLinkComponent/index.js";
10
+ import "../UtilityLink/index.js";
11
+ import "../../hooks/useImageComponent/index.js";
12
+ import Image, { aspectRatio1_1 } from "../Image/index.js";
13
+ import Link from "../Link/index.js";
14
+ import { d as priceSizeMd, P as Price, g as priceAlignCenter, a as priceOrientationVertical } from "../../index-DCXRnuHz.js";
15
+ import { R as RichText } from "../../index-BXt1ptbH.js";
16
+ import ToggleButton from "../ToggleButton/index.js";
17
+ import { f as fontWeightBold } from "../../FontWeight-DEBGHbtO.js";
18
+ import { a as textHeadingMd } from "../../HeadingSize-CfCRn3Lh.js";
19
+ import { s as spacingMd, c as spacingNone } from "../../Spacing-8v6hcO2x.js";
20
+ import styled from "styled-components";
21
+ import Card from "../Card/index.js";
22
+ import { getSpacing } from "../../foundations/token/getSpacing/index.js";
23
+ const FeatureCardStyled = styled(Card).withConfig({
24
+ displayName: "FeatureCardStyled",
25
+ componentId: "sc-1dad94e-0"
26
+ })({
27
+ gap: getSpacing(spacingMd),
28
+ alignItems: "center",
29
+ justifyContent: "space-between"
30
+ });
31
+ const contentCssObject = {
32
+ gap: getSpacing(spacingMd),
33
+ alignItems: "center",
34
+ display: "flex",
35
+ flexDirection: "column",
36
+ width: "100%"
37
+ };
38
+ const FeatureCardUpperContentStyled = styled("div").withConfig({
39
+ displayName: "FeatureCardUpperContentStyled",
40
+ componentId: "sc-1dad94e-1"
41
+ })({
42
+ ...contentCssObject
43
+ });
44
+ const FeatureCardLowerContentStyled = styled("div").withConfig({
45
+ displayName: "FeatureCardLowerContentStyled",
46
+ componentId: "sc-1dad94e-2"
47
+ })(contentCssObject);
48
+ const FeatureCardImageStyled = styled(Image).withConfig({
49
+ displayName: "FeatureCardImageStyled",
50
+ componentId: "sc-1dad94e-3"
51
+ })({
52
+ height: "200px"
53
+ });
54
+ const FeatureCard = ({
55
+ featureId,
56
+ image,
57
+ heading,
58
+ badge,
59
+ price,
60
+ richText,
61
+ link,
62
+ toggleButton,
63
+ ...props
64
+ }) => {
65
+ const headingId = `heading-${featureId == null ? void 0 : featureId.replace(/\s/g, "")}`;
66
+ const headingProps = {
67
+ ...heading,
68
+ id: headingId,
69
+ size: heading.size || textHeadingMd,
70
+ weight: heading.weight || fontWeightBold,
71
+ bottomSpacing: spacingNone,
72
+ align: headingAlignCenter
73
+ };
74
+ const priceProps = {
75
+ ...price,
76
+ orientation: priceOrientationVertical,
77
+ align: priceAlignCenter,
78
+ size: price.size || priceSizeMd,
79
+ bottomSpacing: spacingNone
80
+ };
81
+ return /* @__PURE__ */ jsxs(FeatureCardStyled, { ...props, children: [
82
+ /* @__PURE__ */ jsxs(FeatureCardUpperContentStyled, { children: [
83
+ image && /* @__PURE__ */ jsx(FeatureCardImageStyled, { ...image, aspectRatio: aspectRatio1_1 }),
84
+ /* @__PURE__ */ jsx(Heading, { ...headingProps }),
85
+ badge && /* @__PURE__ */ jsx(Badge, { ...badge, bottomSpacing: spacingNone })
86
+ ] }),
87
+ /* @__PURE__ */ jsxs(FeatureCardLowerContentStyled, { children: [
88
+ price && /* @__PURE__ */ jsx(Price, { ...priceProps }),
89
+ richText && /* @__PURE__ */ jsx(RichText, { ...richText, bottomSpacing: spacingNone }),
90
+ link && /* @__PURE__ */ jsx(Link, { ...link, bottomSpacing: spacingNone, "aria-describedby": headingId }),
91
+ toggleButton && /* @__PURE__ */ jsx(ToggleButton, { ...toggleButton })
92
+ ] })
93
+ ] });
94
+ };
95
+ const FeatureCardGroupStyled = styled(Grid).withConfig({
96
+ displayName: "FeatureCardGroupStyled",
97
+ componentId: "sc-12niz1k-0"
98
+ })(({
99
+ gapSpacing = spacingMd
100
+ }) => ({
101
+ gap: getSpacing(gapSpacing)
102
+ }));
103
+ const FeatureCardGroup = ({
104
+ featureCardList,
105
+ toggleButtonProvider,
106
+ gridConfig = {
107
+ sm: 12,
108
+ md: 6,
109
+ lg: 4
110
+ },
111
+ ...props
112
+ }) => {
113
+ return /* @__PURE__ */ jsx(ToggleButtonProvider, { ...toggleButtonProvider, children: /* @__PURE__ */ jsx(FeatureCardGroupStyled, { ...props, autoLayout: gridConfig, stretch: true, component: "Grid", children: featureCardList.map((featureCard) => {
114
+ return /* @__PURE__ */ jsx(GridItem, { ...gridConfig, children: /* @__PURE__ */ jsx(FeatureCard, { ...featureCard }) }, featureCard.featureId);
115
+ }) }) });
116
+ };
117
+ export {
118
+ FeatureCardGroup as default
119
+ };
@@ -0,0 +1,31 @@
1
+ import { HTMLAttributes } from 'react';
2
+ import { GridConfig } from '../Grid';
3
+ import { ToggleButtonProviderProps } from '../ToggleButtonProvider';
4
+ import { PatternProps } from '../../foundations/PatternProps';
5
+ import { Spacing } from '../../foundations/types/Spacing';
6
+ import { FeatureCardProps } from './components/FeatureCard/props';
7
+ export interface FeatureCardGroupProps extends PatternProps, HTMLAttributes<HTMLDivElement> {
8
+ /**
9
+ * Pin component's name from string to the concrete name
10
+ */
11
+ component?: 'FeatureCardGroup';
12
+ /**
13
+ * Config of grid to align Feature Cards
14
+ */
15
+ gridConfig?: GridConfig;
16
+ /**
17
+ * Spacing between Feature Cards.
18
+ */
19
+ gapSpacing?: Spacing;
20
+ /**
21
+ * List of feature cards to be rendered in the group.
22
+ * Order matters and defines the visual/layout order.
23
+ */
24
+ featureCardList: FeatureCardProps[];
25
+ /**
26
+ * Shared toggle state provider for all cards in the group.
27
+ * Ensures toggle buttons behave consistently
28
+ * (e.g. single-select vs multi-select).
29
+ */
30
+ toggleButtonProvider: ToggleButtonProviderProps;
31
+ }
@@ -0,0 +1,2 @@
1
+ import { FeatureCardGroupProps } from './props';
2
+ export declare const FeatureCardGroupStyled: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('../Grid').GridProps, Pick<FeatureCardGroupProps, "gapSpacing">>> & string & Omit<import('react').FC<import('../Grid').GridProps>, keyof import('react').Component<any, {}, any>>;
@@ -4,7 +4,7 @@ import { useState } from "react";
4
4
  import Fieldset from "../Fieldset/index.js";
5
5
  import { i as iconSizeSm } from "../../IconSize-AJp7xdJi.js";
6
6
  import styled from "styled-components";
7
- import { I as IconLoader } from "../../index--RjkzZm0.js";
7
+ import { I as IconLoader } from "../../index-B3v10poy.js";
8
8
  import { s as screenreaderOnly } from "../../index-C2E3JrhF.js";
9
9
  import forcedColors from "../../foundations/media-query/forcedColors/index.js";
10
10
  import { getBackgroundColor } from "../../foundations/token/getBackgroundColor/index.js";
@@ -4,7 +4,7 @@ import Body from "../Body/index.js";
4
4
  import ButtonGroup from "../ButtonGroup/index.js";
5
5
  import Heading from "../Heading/index.js";
6
6
  import IconSnippet from "../IconSnippet/index.js";
7
- import { R as RichText } from "../../index-DP6Nlg-a.js";
7
+ import { R as RichText } from "../../index-BXt1ptbH.js";
8
8
  import { c as spacingNone } from "../../Spacing-8v6hcO2x.js";
9
9
  import styled from "styled-components";
10
10
  import { getBottomSpacing } from "../../foundations/token/getBottomSpacing/index.js";
@@ -2,7 +2,7 @@
2
2
  import { jsx } from "react/jsx-runtime";
3
3
  import { i as iconSizeSm } from "../../IconSize-AJp7xdJi.js";
4
4
  import styled from "styled-components";
5
- import { I as IconLoader } from "../../index--RjkzZm0.js";
5
+ import { I as IconLoader } from "../../index-B3v10poy.js";
6
6
  import forcedColors from "../../foundations/media-query/forcedColors/index.js";
7
7
  import { getIconColor } from "../../foundations/token/getIconColor/index.js";
8
8
  import { c as colorIconSuccess, a as colorIconCritical } from "../../IconColor-CtC9WUgr.js";
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import { jsx } from "react/jsx-runtime";
3
3
  import HifiIcon from "../HifiIcon/index.js";
4
- import { I as IconLoader } from "../../index--RjkzZm0.js";
4
+ import { I as IconLoader } from "../../index-B3v10poy.js";
5
5
  const isIconProp = (props) => {
6
6
  return props.icon !== void 0;
7
7
  };
@@ -1,6 +1,6 @@
1
1
  "use client";
2
2
  import { jsx } from "react/jsx-runtime";
3
- import { I as IconLoader } from "../../index--RjkzZm0.js";
3
+ import { I as IconLoader } from "../../index-B3v10poy.js";
4
4
  import { i as iconSizeSm } from "../../IconSize-AJp7xdJi.js";
5
5
  import styled from "styled-components";
6
6
  import { s as shadow28 } from "../../shadow-u158mzuN.js";
@@ -12,7 +12,7 @@ import { getOpacity } from "../../foundations/token/getOpacity/index.js";
12
12
  import { getSpacing } from "../../foundations/token/getSpacing/index.js";
13
13
  import { b as borderRadiusMd, a as borderRadiusFull } from "../../BorderRadius-2LdggXbQ.js";
14
14
  import { c as borderWidthSelected } from "../../BorderWidth-BjXpOdM5.js";
15
- import { b as buttonHeight, p as primaryAppearance } from "../../styled-BKH3egch.js";
15
+ import { b as buttonHeight, p as primaryAppearance } from "../../styled-CepQAcdi.js";
16
16
  import { a as opacityDisabled } from "../../Opacity-smkGiwsf.js";
17
17
  import { a as spacingXs, s as spacingMd } from "../../Spacing-8v6hcO2x.js";
18
18
  import { a as filterProps } from "../../filterProps-CxkibNnG.js";
@@ -1,6 +1,7 @@
1
1
  "use client";
2
2
  import "react/jsx-runtime";
3
- import { I, i, a, v } from "../../index--RjkzZm0.js";
3
+ import { I, i, a, v } from "../../index-B3v10poy.js";
4
+ import "../../foundations/token/getBottomSpacing/index.js";
4
5
  export {
5
6
  I as default,
6
7
  i as iconSizes,
@@ -4,12 +4,12 @@ import Body from "../Body/index.js";
4
4
  import Heading from "../Heading/index.js";
5
5
  import InlineLink from "../InlineLink/index.js";
6
6
  import Link from "../Link/index.js";
7
- import { R as RichText } from "../../index-DP6Nlg-a.js";
7
+ import { R as RichText } from "../../index-BXt1ptbH.js";
8
8
  import { d as divTagName, c as spanTagName } from "../../tags-Cwgg3Gx2.js";
9
9
  import { a as iconSizeLg, f as iconSize3xl, i as iconSizeSm } from "../../IconSize-AJp7xdJi.js";
10
10
  import { b as spacingSm, s as spacingMd, c as spacingNone, a as spacingXs } from "../../Spacing-8v6hcO2x.js";
11
11
  import styled from "styled-components";
12
- import { I as IconLoader } from "../../index--RjkzZm0.js";
12
+ import { I as IconLoader } from "../../index-B3v10poy.js";
13
13
  import { getBottomSpacing } from "../../foundations/token/getBottomSpacing/index.js";
14
14
  import { getSpacing } from "../../foundations/token/getSpacing/index.js";
15
15
  import { a as filterProps } from "../../filterProps-CxkibNnG.js";
@@ -5,13 +5,13 @@ import Button from "../Button/index.js";
5
5
  import { C as Container } from "../../index-DbG0QL9D.js";
6
6
  import Heading, { headingAlignCenter } from "../Heading/index.js";
7
7
  import { P as Price, b as priceSizeSm } from "../../index-DCXRnuHz.js";
8
- import { R as RichText } from "../../index-DP6Nlg-a.js";
8
+ import { R as RichText } from "../../index-BXt1ptbH.js";
9
9
  import { b as fontWeightLight } from "../../FontWeight-DEBGHbtO.js";
10
10
  import { m as mediumSize } from "../../SizeTypes-Ck_RdzIf.js";
11
11
  import { s as spacingMd, b as spacingSm, e as spacingXl, a as spacingXs, f as spacing2Xs, c as spacingNone } from "../../Spacing-8v6hcO2x.js";
12
12
  import styled from "styled-components";
13
13
  import ArtDirectedImage from "../ArtDirectedImage/index.js";
14
- import { B as Badge } from "../../index-DwGcrvTh.js";
14
+ import { B as Badge } from "../../index-sJClnrzW.js";
15
15
  import ButtonGroup from "../ButtonGroup/index.js";
16
16
  import { a as flexOrientationVertical } from "../../styled-BY19C9EO.js";
17
17
  import { a as Grid, G as GridItem } from "../../index-Bu-7sSif.js";
@@ -3,7 +3,7 @@ import { jsx, Fragment } from "react/jsx-runtime";
3
3
  import Body from "../Body/index.js";
4
4
  import Heading from "../Heading/index.js";
5
5
  import IconSnippet, { iconSnippetAlignCenter } from "../IconSnippet/index.js";
6
- import { R as RichText } from "../../index-DP6Nlg-a.js";
6
+ import { R as RichText } from "../../index-BXt1ptbH.js";
7
7
  import styled from "styled-components";
8
8
  const LegendStyled = styled.legend.withConfig({
9
9
  displayName: "LegendStyled",
@@ -1,11 +1,11 @@
1
1
  "use client";
2
2
  import { jsx, jsxs } from "react/jsx-runtime";
3
- import { L as LinkAsButton, p as primaryAppearance, a as LinkStyled, g as getLinkIcon } from "../../index-Dd-A7i9Y.js";
3
+ import { L as LinkAsButton, p as primaryAppearance, a as LinkStyled, g as getLinkIcon } from "../../index-r-dbrZxA.js";
4
4
  import { useLinkComponent } from "../../hooks/useLinkComponent/index.js";
5
5
  import { f as filterPropsForUnstyledComponent } from "../../filterProps-CxkibNnG.js";
6
6
  import { s as sanitizeLinkProps } from "../../sanitizeLinkProps-D2Kkovy1.js";
7
- import { b as iconNames } from "../../index--RjkzZm0.js";
8
- import { l as leftPosition, r as rightPosition } from "../../styled-BKH3egch.js";
7
+ import { b as iconNames } from "../../index-B3v10poy.js";
8
+ import { l as leftPosition, r as rightPosition } from "../../styled-CepQAcdi.js";
9
9
  import { i as isObject, h as hasMatchingComponentName } from "../../isObject-BYBrvoVW.js";
10
10
  const validateLinkProps = (props) => {
11
11
  if (!isObject(props)) {
@@ -1,6 +1,6 @@
1
1
  "use client";
2
2
  import "react/jsx-runtime";
3
- import { L, i, v } from "../../index-Dd-A7i9Y.js";
3
+ import { L, i, v } from "../../index-r-dbrZxA.js";
4
4
  export {
5
5
  L as default,
6
6
  i as isLinkAsButtonProps,
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import { jsx, jsxs, Fragment } from "react/jsx-runtime";
3
- import { B as Badge } from "../../index-DwGcrvTh.js";
4
- import { I as IconLoader } from "../../index--RjkzZm0.js";
3
+ import { B as Badge } from "../../index-sJClnrzW.js";
4
+ import { I as IconLoader } from "../../index-B3v10poy.js";
5
5
  import { c as spanTagName } from "../../tags-Cwgg3Gx2.js";
6
6
  import { c as iconSizeMd } from "../../IconSize-AJp7xdJi.js";
7
7
  import { s as smallSize } from "../../SizeTypes-Ck_RdzIf.js";
@@ -6,7 +6,7 @@ import "../FlexItem/index.js";
6
6
  import "../Heading/index.js";
7
7
  import "../Image/index.js";
8
8
  import "../Link/index.js";
9
- import "../../index-DP6Nlg-a.js";
9
+ import "../../index-BXt1ptbH.js";
10
10
  import "../RichtTextContentful/index.js";
11
11
  import "../YoutubeVideo/index.js";
12
12
  import "../../tags-Cwgg3Gx2.js";
@@ -14,7 +14,7 @@ import "../../FontWeight-DEBGHbtO.js";
14
14
  import "../../HeadingSize-CfCRn3Lh.js";
15
15
  import "../../Spacing-8v6hcO2x.js";
16
16
  import "../../index-DKCzYjXw.js";
17
- import { M, i, a, b, m, c, v } from "../../index-IA76oabp.js";
17
+ import { M, i, a, b, m, c, v } from "../../index-CflWbzuv.js";
18
18
  import "../../styled-BY19C9EO.js";
19
19
  export {
20
20
  M as default,
@@ -5,9 +5,9 @@ import Button from "../Button/index.js";
5
5
  import ButtonGroup from "../ButtonGroup/index.js";
6
6
  import Flex from "../Flex/index.js";
7
7
  import Heading from "../Heading/index.js";
8
- import { I as IconLoader } from "../../index--RjkzZm0.js";
8
+ import { I as IconLoader } from "../../index-B3v10poy.js";
9
9
  import Link from "../Link/index.js";
10
- import { R as RichText } from "../../index-DP6Nlg-a.js";
10
+ import { R as RichText } from "../../index-BXt1ptbH.js";
11
11
  import { i as iconSizeSm } from "../../IconSize-AJp7xdJi.js";
12
12
  import { getBorderColor } from "../../foundations/token/getBorderColor/index.js";
13
13
  import { getObjectColor } from "../../foundations/token/getObjectColor/index.js";
@@ -5,7 +5,7 @@ import AccordionGroup from "../AccordionGroup/index.js";
5
5
  import { C as Container } from "../../index-DbG0QL9D.js";
6
6
  import FootnoteContent from "../FootnoteContent/index.js";
7
7
  import Heading from "../Heading/index.js";
8
- import { R as RichText } from "../../index-DP6Nlg-a.js";
8
+ import { R as RichText } from "../../index-BXt1ptbH.js";
9
9
  import { b as textHeadingSm, c as textHeadingLg } from "../../HeadingSize-CfCRn3Lh.js";
10
10
  import { h as h3TagName } from "../../tags-Cwgg3Gx2.js";
11
11
  const getFootnoteContent = (content, footnoteContentBacklinkText) => {
@@ -5,11 +5,11 @@ import { a as inputStateError } from "../../props-DDpgcryb.js";
5
5
  import { f as spacing2Xs, s as spacingMd, b as spacingSm, c as spacingNone } from "../../Spacing-8v6hcO2x.js";
6
6
  import { useState, useEffect } from "react";
7
7
  import { G as GridItem, a as Grid } from "../../index-Bu-7sSif.js";
8
- import { B as Badge } from "../../index-DwGcrvTh.js";
8
+ import { B as Badge } from "../../index-sJClnrzW.js";
9
9
  import ColorSwatch from "../ColorSwatch/index.js";
10
10
  import { c as iconSizeMd } from "../../IconSize-AJp7xdJi.js";
11
11
  import styled from "styled-components";
12
- import { I as IconLoader } from "../../index--RjkzZm0.js";
12
+ import { I as IconLoader } from "../../index-B3v10poy.js";
13
13
  import Image, { aspectRatio1_1 } from "../Image/index.js";
14
14
  import viewport from "../../foundations/media-query/viewport/index.js";
15
15
  import { s as screenreaderOnly } from "../../index-C2E3JrhF.js";
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import { jsxs, jsx } from "react/jsx-runtime";
3
3
  import { createElement } from "react";
4
- import { B as Badge } from "../../index-DwGcrvTh.js";
4
+ import { B as Badge } from "../../index-sJClnrzW.js";
5
5
  import ColorSwatchGroup from "../ColorSwatchGroup/index.js";
6
6
  import Heading, { headingAlignCenter } from "../Heading/index.js";
7
7
  import Image, { aspectRatio1_1 } from "../Image/index.js";
@@ -11,7 +11,7 @@ import { f as fontWeightBold } from "../../FontWeight-DEBGHbtO.js";
11
11
  import { a as iconSizeLg } from "../../IconSize-AJp7xdJi.js";
12
12
  import { s as spacingMd, c as spacingNone } from "../../Spacing-8v6hcO2x.js";
13
13
  import EnergySnippet from "../EnergySnippet/index.js";
14
- import { R as RichText } from "../../index-DP6Nlg-a.js";
14
+ import { R as RichText } from "../../index-BXt1ptbH.js";
15
15
  import styled from "styled-components";
16
16
  import Card from "../Card/index.js";
17
17
  import Flex from "../Flex/index.js";
@@ -96,7 +96,7 @@ const ProductCard = ({
96
96
  image && /* @__PURE__ */ jsx(ProductCardImageStyled, { ...image, link: {
97
97
  href: link.href,
98
98
  tabIndex: -1
99
- }, aspectRatio: aspectRatio1_1, height: 200 }),
99
+ }, aspectRatio: aspectRatio1_1, height: 200, bottomSpacing: spacingNone }),
100
100
  icon && /* @__PURE__ */ jsx(ProductCardIconStyled, { ...icon, size: iconSizeLg }),
101
101
  /* @__PURE__ */ jsx(Heading, { ...headingProps }),
102
102
  colorSwatchGroup && /* @__PURE__ */ jsx(ColorSwatchGroup, { ...colorSwatchGroup, bottomSpacing: spacingNone }),
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import "react/jsx-runtime";
3
3
  import "react";
4
- import { R } from "../../index-DP6Nlg-a.js";
4
+ import { R } from "../../index-BXt1ptbH.js";
5
5
  export {
6
6
  R as default
7
7
  };
@@ -5,7 +5,7 @@ import Body from "../Body/index.js";
5
5
  import Divider from "../Divider/index.js";
6
6
  import Heading from "../Heading/index.js";
7
7
  import InlineLink from "../InlineLink/index.js";
8
- import { a as TextListItem, T as TextList } from "../../index-DP6Nlg-a.js";
8
+ import { a as TextListItem, T as TextList } from "../../index-BXt1ptbH.js";
9
9
  import styled from "styled-components";
10
10
  import { getBottomSpacing } from "../../foundations/token/getBottomSpacing/index.js";
11
11
  import { a as filterProps } from "../../filterProps-CxkibNnG.js";
@@ -3,7 +3,7 @@ import { jsxs, Fragment, jsx } from "react/jsx-runtime";
3
3
  import { useState, useRef } from "react";
4
4
  import FormHelperLabel from "../FormHelperLabel/index.js";
5
5
  import IconButton, { iconButtonShapeSquare } from "../IconButton/index.js";
6
- import { p as primaryAppearance } from "../../styled-BKH3egch.js";
6
+ import { p as primaryAppearance } from "../../styled-CepQAcdi.js";
7
7
  import { i as iconSizeSm } from "../../IconSize-AJp7xdJi.js";
8
8
  import { s as spacingMd, c as spacingNone } from "../../Spacing-8v6hcO2x.js";
9
9
  import { bn as CloseIcon } from "../../_5gPlusIcon-CnxmOo1u.js";
@@ -5,7 +5,7 @@ import FlexItem from "../FlexItem/index.js";
5
5
  import FormHelperLabel from "../FormHelperLabel/index.js";
6
6
  import FormHelperMessage from "../FormHelperMessage/index.js";
7
7
  import FormHelperStatusIcon from "../FormHelperStatusIcon/index.js";
8
- import { I as IconLoader } from "../../index--RjkzZm0.js";
8
+ import { I as IconLoader } from "../../index-B3v10poy.js";
9
9
  import { a as inputStateError } from "../../props-DDpgcryb.js";
10
10
  import { I as InputWrapperStyled, a as InputStyled } from "../../styled-DmMk0W0J.js";
11
11
  import { i as iconSizeSm } from "../../IconSize-AJp7xdJi.js";
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import { jsx, jsxs } from "react/jsx-runtime";
3
3
  import { useState, useEffect } from "react";
4
- import { I as IconLoader } from "../../index--RjkzZm0.js";
4
+ import { I as IconLoader } from "../../index-B3v10poy.js";
5
5
  import { b as iconSize2xs } from "../../IconSize-AJp7xdJi.js";
6
6
  import styled from "styled-components";
7
7
  import Label from "../Label/index.js";
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import { jsxs, jsx } from "react/jsx-runtime";
3
3
  import { useState, useRef, useEffect } from "react";
4
- import { I as IconLoader } from "../../index--RjkzZm0.js";
4
+ import { I as IconLoader } from "../../index-B3v10poy.js";
5
5
  import { i as iconSizeSm, a as iconSizeLg } from "../../IconSize-AJp7xdJi.js";
6
6
  import styled from "styled-components";
7
7
  import Flex from "../Flex/index.js";
@@ -1,6 +1,6 @@
1
1
  "use client";
2
2
  import "react/jsx-runtime";
3
- import { a, T } from "../../index-DP6Nlg-a.js";
3
+ import { a, T } from "../../index-BXt1ptbH.js";
4
4
  import "../../tags-Cwgg3Gx2.js";
5
5
  import "../../Spacing-8v6hcO2x.js";
6
6
  export {
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import "react/jsx-runtime";
3
3
  import "@contentful/live-preview/react";
4
- import { L } from "../../mapContentToComponents-DWVykPoW.js";
4
+ import { L } from "../../mapContentToComponents-D215P4kM.js";
5
5
  export {
6
6
  L as LivePreviewInspector
7
7
  };
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import { jsx, Fragment } from "react/jsx-runtime";
3
3
  import { useContentfulLiveUpdates, ContentfulLivePreviewProvider } from "@contentful/live-preview/react";
4
- import { m as mapContentToComponents } from "../../mapContentToComponents-DWVykPoW.js";
4
+ import { m as mapContentToComponents } from "../../mapContentToComponents-D215P4kM.js";
5
5
  const BrixLiveRendererComponents = ({
6
6
  data
7
7
  }) => {
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import { jsx, Fragment } from "react/jsx-runtime";
3
3
  import LivePreviewRenderer from "../live-preview-renderer/index.js";
4
- import { m as mapContentToComponents } from "../../mapContentToComponents-DWVykPoW.js";
4
+ import { m as mapContentToComponents } from "../../mapContentToComponents-D215P4kM.js";
5
5
  const Renderer = ({
6
6
  content,
7
7
  isDraftMode
@@ -1,6 +1,7 @@
1
1
  import { jsxs, jsx } from "react/jsx-runtime";
2
2
  import { ii as _5gPlusIcon, ih as _5GIcon, ig as _4gPlusplusIcon, ie as _4gPlusIcon, id as _4GIcon, ic as _3GIcon, ib as _360ViewIcon, ia as _2gIcon, i9 as _1stMonthFreeIcon, i8 as ZoomOutIcon, i7 as ZoomInIcon, i6 as WizardIcon, i5 as WithdrawCashIcon, i4 as WifiGoodIcon, i3 as WifiAlwaysOnIcon, i2 as WeightIcon, i1 as WebsiteIcon, i0 as WebProtectionIcon, h$ as WaterproofIcon, h_ as WatchIcon, hZ as WarningIcon, hY as VoicemailIcon, hX as VodafoneTvIcon, hW as VodafoneTogetherIcon, hV as VodafoneStoreIcon, hU as VocSensorIcon, hT as VirusProtectionIcon, hS as VirtuosoIcon, hR as VideoIcon, hQ as VideoFrameIcon, hP as VfHappyIcon, hO as VfHappyHelpfulIcon, hN as VSimAndDeviceIcon, hM as VRHeadsetIcon, hL as VPetIcon, hK as VKidsIcon, hJ as VCarIcon, hI as VCarDongleIcon, hH as UsersIcon, hG as UserScanIcon, hF as UserLogInIcon, hE as UsbModemIcon, hD as UploadIcon, hC as UpgradeMobilesIcon, hB as UpgradeIcon, hA as UpcomingIcon, hz as UnlockedRewardsIcon, hy as UnlimitedMobileIcon, hx as UnlimitedIcon, hw as UnifiedCommunicationsIcon, hv as UnderlinedIcon, hu as Under28Icon, ht as TvVodIcon, hs as TvUhdIcon, hr as TvTvIcon, hq as TvTimeFlexibleIcon, hp as TvRemoteIcon, ho as TvPrimetimeIcon, hn as TvKidsIcon, hm as TvIcon, hl as TvHdIcon, hk as TvEverywhereIcon, hj as TvEverywhereHomeIcon, hi as TvEpgIcon, hh as TvEntertainmentIcon, hg as TvDiscoveryIcon, hf as TvChannelVarietyIcon, he as TvBluetoothAndRemoteIcon, hd as TvAnytimeIcon, hc as TrophyIcon, hb as TreeIcon, ha as TranslateIcon, h9 as TransferProjectIcon, h8 as TrainersIcon, h7 as TradeInIcon, h6 as TrackisafeIcon, h5 as TouchScreenIcon, h4 as TopicsIcon, h3 as TopUpIcon, h2 as ToggleSimpleIcon, h1 as ToggleIcon, h0 as TobiIcon, g$ as ToDoListIcon, g_ as TicketsIcon, gZ as TickOutlineIcon, gY as TickIcon, gX as TickCircleIcon, gW as ThickTickIcon, gV as TheftIcon, gU as TetheringIcon, gT as TemperatureIcon, gS as TechnicIcon, gR as TalkIcon, gQ as TabletMobileIcon, gP as TabletIcon, gO as SyncIcon, gN as SwitchCameraIcon, gM as SwitchCallIcon, gL as SuperwifiIcon, gK as SuperstarIcon, gJ as StudentIcon, gI as StrikeThroughIcon, gH as StoreOfferIcon, gG as StopIcon, gF as StopCircleIcon, gE as SteeringWheelIcon, gD as SplitBillingIcon, gC as SpellCheckIcon, gB as SpeedingIcon, gA as SoundOffIcon, gz as SoundIcon, gy as SoundActiveIcon, gx as SosIcon, gw as SosEmergencyIcon, gv as SosCreditIcon, gu as SortIcon, gt as SohoIcon, gs as SocialYoutubeIcon, gr as SocialTwitterIcon, gq as SocialPinterestIcon, gp as SocialPaypalIcon, go as SocialLinkedinIcon, gn as SocialInstaIcon, gm as SocialFacebookIcon, gl as SnowIcon, gk as SmsTextIcon, gj as SmsIcon, gi as SmeIcon, gh as SmartPlugIcon, gg as SmartKeyboardIcon, gf as SmartHomeIcon, ge as SmartCameraIcon, gd as SmallAndLightweightIcon, gc as SinglePalletIcon, gb as SimSwapIcon, ga as SimIcon, g9 as SignedInIcon, g8 as SignLanguageIcon, g7 as ShowPasswordIcon, g6 as ShoppingTrolleyIcon, g5 as ShoppingCheckoutIcon, g4 as ShareYourMinsIcon, g3 as ShareIcon, g2 as ShakeIcon, g1 as SetupIcon, g0 as SettingsIcon, f$ as SeniorIcon, f_ as SendTobiIcon, fZ as SecurityCameraIcon, fY as SecurityAssessmentIcon, fX as SecureGripIcon, fW as SearchIcon, fV as SearchDeviceIcon, fU as ScreenSizeIcon, fT as ScreenRepairIcon, fS as ScanCreditCardIcon, fR as SavingsIcon, fQ as SaveTemporarilyIcon, fP as SaveIcon, fO as SatisfactionGuaranteeIcon, fN as SafeZoneIcon, fM as RulerIcon, fL as RoutinesIcon, fK as RouterIcon, fJ as RocketIcon, fI as RobotIcon, fH as RoamingIcon, fG as RewardsIcon, fF as ReturnProductIcon, fE as RetakePhotoIcon, fD as ResearchIcon, fC as ReplyIcon, fB as RenewableEnergyIcon, fA as RemainingTimeIcon, fz as RefreshIcon, fy as RecordTvIcon, fx as RearrangeIcon, fw as RankScoutIcon, fv as RankProfessorIcon, fu as RafflesIcon, ft as QrCodeIcon, fs as PuzzleIcon, fr as PublicWifiIcon, fq as PublicSectorIcon, fp as ProximitySensorIcon, fo as ProfileIcon, fn as ProIcon, fm as PrivacyIcon, fl as PrintIcon, fk as PriceTagIcon, fj as PricePromiseIcon, fi as PrepareIcon, fh as PrepaidIcon, fg as PowerIcon, ff as PortalsForVideosIcon, fe as PopOutIcon, fd as PopInIcon, fc as PlusIcon, fb as PlayCircleIcon, fa as PlayArrowIcon, f9 as PlaceholderIcon, f8 as PingIcon, f7 as PinIcon, f6 as PieChartIcon, f5 as PhotosIcon, f4 as PetrolStationIcon, f3 as PetCollarIcon, f2 as PaymentIcon, f1 as PaymentCvvIcon, f0 as PaygIcon, e$ as PauseIcon, e_ as PauseCircleIcon, eZ as PatrolStationIcon, eY as PasswordKeyIcon, eX as ParkingTicketIcon, eW as ParentalControlIcon, eV as PadlockOpenIcon, eU as PadlockCloseIcon, eT as OutgoingCallIcon, eS as OnlineIcon, eR as OnlineFormIcon, eQ as OneNumberIcon, eP as OfferBadgePrecentIcon, eO as OfferBadgeIcon, eN as NumberedViewIcon, eM as Number9Icon, eL as Number8Icon, eK as Number7Icon, eJ as Number6Icon, eI as Number5Icon, eH as Number4Icon, eG as Number3Icon, eF as Number2Icon, eE as Number1Icon, eD as Number0Icon, eC as NotificationTickThickIcon, eB as NotificationTickIcon, eA as NotificationMuteIcon, ez as NotificationInfoIcon, ey as NotificationIcon, ex as NoWifiIcon, ew as NightVisionIcon, ev as NfcIcon, eu as NewsIcon, et as NewIcon, es as NetworkerIcon, er as NetworkTowerIcon, eq as NetworkPatchPanelIcon, ep as NeedHelpIcon, eo as MyTripsIcon, en as MuteIcon, em as MusicAndMoviesIcon, el as MultiscreenIcon, ek as MultiroomIcon, ej as MultimediaPortIcon, ei as MoveMoneyIcon, eh as MouseIcon, eg as MountainIcon, ef as MotionSensorIcon, ee as MotionIcon, ed as MotionAlertIcon, ec as MoreIcon, eb as MoreAndroidIcon, ea as MonitorBrightnessIcon, e9 as MobilesIcon, e8 as MobileTradeInIcon, e7 as MobileInfoIcon, e6 as MobileIcon, e5 as MinutesSmsIcon, e4 as MinusIcon, e3 as MinusCircleIcon, e2 as MinimizeImageIcon, e1 as MicrophoneIcon, e0 as MeshWifiAndRepeaterIcon, d$ as MergeCallIcon, d_ as MenuIcon, dZ as MediaIcon, dY as MaximizeImageIcon, dX as MasterIcon, dW as MapIcon, dV as MapGpsIcon, dU as MakePaymentIcon, dT as MailReadIcon, dS as MailIcon, dR as MailFormsIcon, dQ as LogOutIcon, dP as LogInIcon, dO as LocationPinIcon, dN as LocationIcon, dM as LocationAlertIcon, dL as LocateMeIcon, dK as LoanIcon, dJ as ListViewIcon, dI as LinkInsterEditIcon, dH as LikeIcon, dG as LayersIcon, dF as LateralMovementIcon, dE as LaptopIcon, dD as LandlineInternetIcon, dC as LandlineIcon, dB as LabIcon, dA as KippyLightIcon, dz as KippyDeviceIcon, dy as KidsWatchIcon, dx as ItalicIcon, dw as IrisScannerIcon, dv as IotIcon, du as InventoryMonitoringIcon, dt as InternetMovingServiceIcon, ds as InternationalIcon, dr as InterchangeableBatteriesIcon, dq as IntelligenceScanIcon, dp as IntegratedSimIcon, dn as InsuranceIcon, dm as InsertCodeIcon, dl as InfraredSensorIcon, dk as InfoCircleIcon, dj as IndustryIcon, di as IncomingCallIcon, dh as ImpactAlertIcon, dg as IdeaIcon, df as HumidityIcon, de as HomeMonitorIcon, dd as HomeIcon, dc as HomeGardenIcon, db as HomeAlarmIcon, da as HidePasswordIcon, d9 as HelpFaqIcon, d8 as HelpCircleIcon, d7 as HelpAnswerIcon, d6 as HeartIcon, d5 as HappySmileyIcon, d4 as GyroscopeIcon, d3 as GuruIcon, d2 as GuestWifiIcon, d1 as GridIcon, d0 as GravityIcon, c$ as GpsCoverageIcon, c_ as GigacubeIcon, cZ as GigaTvBIcon, cY as GigaTvAIcon, cX as GigaKombiIcon, cW as GigaDepotIcon, cV as GeniusIcon, cU as GenericDeviceIotIcon, cT as GameConsoleIcon, cS as FoxIcon, cR as ForwardIcon, cQ as FolderIcon, cP as FocusIcon, cO as FitnessTrackerIcon, cN as FitnessHealthIcon, cM as FirmwareUpdateIcon, cL as FindMyCarIcon, cK as FindAndRingMyDeviceIcon, cJ as FilterIcon, cI as FeatherIcon, cH as FavoriteIcon, cG as FashionIcon, cF as FamilyIcon, cE as FallDetectionIcon, cD as FailedIcon, cC as FaceRecognitionIcon, cB as ExtenderIcon, cA as ExtendContractIcon, cz as EuroCurrencyIcon, cy as EthernetIcon, cx as EssentialsBroadbandIcon, cw as EsimLogoIcon, cv as ErrorIcon, cu as ErrorCircleIcon, ct as EnvironmentIcon, cs as EntertainmentIcon, cr as EnterpriseIcon, cq as EngineerIcon, cp as EndCallIcon, co as EditIcon, cn as EasyUsageIcon, cm as ESimIcon, cl as DwdmIcon, ck as DslIcon, cj as DroneIcon, ci as DrinksIcon, ch as DownloadIcon, cg as DoubleStackedPalletIcon, cf as DoorbellCameraIcon, ce as DocumentZipIcon, cd as DocumentXlsIcon, cc as DocumentRtfIcon, cb as DocumentPptIcon, ca as DocumentPngIcon, c9 as DocumentPdfIcon, c8 as DocumentJpgIcon, c7 as DocumentIcon, c6 as DocumentDocIcon, c5 as DislikeIcon, c4 as DishIcon, c3 as DisconnectIcon, c2 as DialPadIcon, c1 as DiagnosticsIcon, c0 as DeviceThicknessIcon, b$ as DeviceOverviewIcon, b_ as DeviceGuideIcon, bZ as DeviceDiagnosticsIcon, bY as DesignSprintIcon, bX as DeliveryIcon, bW as DeleteIcon, bV as DealsIcon, bU as DataMobileIcon, bT as DataIcon, bS as DashboardIcon, bR as DarkModeIcon, bQ as CpuIcon, bP as CopyIcon, bO as ConvertCurrencyIcon, bN as ConvergedPropositionIcon, bM as ControlPanelIcon, bL as ContactsIcon, bK as ContactlessPaymentIcon, bJ as ConsultantIcon, bI as ConnectivityIcon, bH as ConnectedIcon, bG as ConnectedDevicesIcon, bF as ConnectedCarIcon, bE as ConfidentialIcon, bD as CompletedIcon, bC as ComplaintsIcon, bB as CompassIcon, bA as CommunityIcon, bz as CommentsIcon, by as CommentIcon, bx as CommentClosedProjectIcon, bw as ColumnsIcon, bv as ColourPaletteIcon, bu as CoffeeIcon, bt as CoaxialcableIcon, bs as Co2SensorIcon, br as ClusterOfEventsIcon, bq as CloudUploadIcon, bp as CloudDownloadIcon, bo as CloseProjectWithCommentIcon, bn as CloseIcon, bm as ClockIcon, bl as ClappingIcon, bk as ChromecastIcon, bj as ChildTrackerIcon, bi as ChevronUpIcon, bh as ChevronRightIcon, bg as ChevronLeftIcon, bf as ChevronDownIcon, be as CherriesPointsIcon, bd as CheckContractIcon, bc as ChatIcon, bb as ChartLineIcon, ba as ChartBarIcon, b9 as CharityGivingIcon, b8 as ChargeToBillIcon, b7 as ChangeContractIcon, b6 as CelebrateIcon, b5 as CaseStudyIcon, b4 as CarerIcon, b3 as CarKeyIcon, b2 as CancelIcon, b1 as CancelContractIcon, b0 as CameraInactiveIcon, a$ as CameraIcon, a_ as CallLogIcon, aZ as CallIcon, aY as CallBackIcon, aX as CallBackFailedIcon, aW as CalendarMonthIcon, aV as CalendarItemIcon, aU as CalendarIcon, aT as Calendar3Icon, aS as Calendar30Icon, aR as Calendar14Icon, aQ as Calendar12Icon, aP as CalculatorIcon, aO as CableFibreIcon, aN as CableErrorIcon, aM as BusinessPhoneFixedLineIcon, aL as BusinessIcon, aK as BundlesIcon, aJ as BulletListIcon, aI as BroadbandUpgradeIcon, aH as BroadbandIcon, aG as BriefcaseIcon, aF as BrakingIcon, aE as BraceletRemoveIcon, aD as BraceletPutOnIcon, aC as BraceletOnIcon, aB as BraceletOffIcon, aA as BraceletNotFoundIcon, az as BraceletGenericIcon, ay as BraceletDisabledIcon, ax as BraceletActiveIcon, aw as BoxIcon, av as BoostingPauseIcon, au as BoostingIcon, at as BookmarkIcon, as as BookIcon, ar as BoltIcon, aq as BoldIcon, ap as BluetoothIcon, ao as BlogIcon, an as BlockIcon, am as BirthdayGreetingIcon, al as BiometricAuthenticationIcon, ak as BillPayPhoneIcon, aj as BillIcon, ai as BikeIcon, ah as BatteryReallyLowIcon, ag as BatteryOnChargeIcon, af as BatteryLowIcon, ae as BatteryIcon, ad as BatteryEmptyIcon, ac as BarcodeIcon, ab as BagIcon, aa as BadSmileyIcon, a9 as BackspaceIcon, a8 as AutoTopupIcon, a7 as AttachmentIcon, a6 as ArrowUpIcon, a5 as ArrowRightIcon, a4 as ArrowLeftIcon, a3 as ArrowDownIcon, a2 as ArIcon, a1 as AppsIcon, a0 as AppVodIcon, $ as AppVideostoreIcon, _ as AppUhdIcon, Z as AppTvIcon, Y as AppTvForYouIcon, X as AppSwipeToTvIcon, W as AppSideloadIcon, V as AppRestartIcon, U as AppMultiscreenIcon, T as AppMobileEntertainmentIcon, S as AppMediathekenIcon, R as AppKidsIcon, Q as AppHdIcon, P as AppEpgIcon, O as AppEpgBackwardsIcon, N as AppDiscoveryIcon, M as AppCloudDvrIcon, L as AppChannelVarietyIcon, K as AppChannelManagementIcon, J as AppAnytimeIcon, I as AntiShockIcon, H as AndroidIcon, G as AmbulanceIcon, F as AllRewardsIcon, E as AlexaIcon, D as AlarmIcon, C as AlarmAssistantLeakageIcon, B as AlarmAssistantIcon, z as AlarmAssistantFireIcon, y as AgbIcon, x as AdultIcon, w as AdminIcon, v as AddSimIcon, u as AddPlusIcon, t as AddOnsIcon, s as AddFriendIcon, r as AddDocumentIcon, q as AddBusinessUserIcon, p as ActivityIcon, o as AceIcon, n as AccountsReuniteIcon, m as AccountabilityIcon, l as AccessoriesIcon, k as AccessibilityIcon, j as AccelerometerdleMidIcon, i as AccelerometerMiddleIcon, h as AccelerometerLowIcon, g as AccelerometerIcon, f as AccelerometerHighIcon, e as AccelerationMiddleIcon, d as AccelerationLowIcon, c as AccelerationHighIcon, b as AbruptCorneringIcon, a as Above28Icon, A as AbTestIcon } from "./_5gPlusIcon-CnxmOo1u.js";
3
3
  import { I as InlineIcon, N as NotificationErrorIcon } from "./NotificationErrorIcon-DMnAJgPN.js";
4
+ import { getBottomSpacing } from "./foundations/token/getBottomSpacing/index.js";
4
5
  import { b as iconSize2xs, n as iconSizeXs, i as iconSizeSm, c as iconSizeMd, a as iconSizeLg, d as iconSizeXl, e as iconSize2xl, f as iconSize3xl, g as iconSize4xl, h as iconSize5xl } from "./IconSize-AJp7xdJi.js";
5
6
  import { i as isObject, h as hasMatchingComponentName } from "./isObject-BYBrvoVW.js";
6
7
  import { i as isBottomSpacing } from "./isBottomSpacing-BxfreCZU.js";
@@ -1266,12 +1267,16 @@ const IconLoader = ({
1266
1267
  className,
1267
1268
  component: _component,
1268
1269
  iconPosition: _iconPosition,
1269
- bottomSpacing: _bottomSpacing,
1270
+ bottomSpacing,
1270
1271
  ...props
1271
1272
  }) => {
1272
1273
  const MappedIcon = mapNameToInlineIcons[name];
1273
1274
  if (!MappedIcon) return null;
1274
- return /* @__PURE__ */ jsx(MappedIcon, { ...props, className });
1275
+ return /* @__PURE__ */ jsx(MappedIcon, { ...props, className, style: {
1276
+ ...getBottomSpacing({
1277
+ bottomSpacing
1278
+ })
1279
+ } });
1275
1280
  };
1276
1281
  export {
1277
1282
  IconLoader as I,
@@ -28,19 +28,20 @@ const mapSizeToTag = {
28
28
  const getOptions = (paragraphSpacing, additionalProps = {}) => {
29
29
  let uid = 0;
30
30
  const options = {
31
- replace(domNode) {
31
+ replace(domNode, index) {
32
32
  if (domNode instanceof Element) {
33
+ const key = `rt-${domNode.name}-${index}`;
33
34
  if (headingHtmlTags.includes(domNode.name)) {
34
- return /* @__PURE__ */ jsx(Heading, { ...additionalProps.heading, size: mapSizeToTag[domNode.name], bottomSpacing: paragraphSpacing, children: domToReact(domNode.children, options) });
35
+ return /* @__PURE__ */ jsx(Heading, { ...additionalProps.heading, size: mapSizeToTag[domNode.name], bottomSpacing: paragraphSpacing, children: domToReact(domNode.children, options) }, key);
35
36
  }
36
37
  if ("li" === domNode.name) {
37
- return /* @__PURE__ */ jsx(TextListItem, { ...additionalProps.li, children: domToReact(domNode.children, options) });
38
+ return /* @__PURE__ */ jsx(TextListItem, { ...additionalProps.li, children: domToReact(domNode.children, options) }, key);
38
39
  }
39
40
  if ("ol" === domNode.name) {
40
- return /* @__PURE__ */ jsx(TextList, { ...additionalProps.ol, tag: olTagName, children: domToReact(domNode.children, options) });
41
+ return /* @__PURE__ */ jsx(TextList, { ...additionalProps.ol, tag: olTagName, children: domToReact(domNode.children, options) }, key);
41
42
  }
42
43
  if ("ul" === domNode.name) {
43
- return /* @__PURE__ */ jsx(TextList, { ...additionalProps.ul, children: domToReact(domNode.children, options) });
44
+ return /* @__PURE__ */ jsx(TextList, { ...additionalProps.ul, children: domToReact(domNode.children, options) }, key);
44
45
  }
45
46
  if (domNode.name === "table") {
46
47
  const thead = domNode.children.find((child) => child instanceof Element && child.name === "thead");
@@ -109,24 +110,24 @@ const getOptions = (paragraphSpacing, additionalProps = {}) => {
109
110
  /* @__PURE__ */ jsx(TableHead, { columns }),
110
111
  /* @__PURE__ */ jsx(TableBody, { rows, sideHeader }),
111
112
  footCells.length ? /* @__PURE__ */ jsx(TableFoot, { cells: footCells }) : void 0
112
- ] });
113
+ ] }, key);
113
114
  }
114
115
  if ("strong" === domNode.name) {
115
- return /* @__PURE__ */ jsx(Body, { ...additionalProps.strong, tag: strongTagName, children: domToReact(domNode.children, options) });
116
+ return /* @__PURE__ */ jsx(Body, { ...additionalProps.strong, tag: strongTagName, children: domToReact(domNode.children, options) }, key);
116
117
  }
117
118
  if ("small" === domNode.name) {
118
- return /* @__PURE__ */ jsx(Body, { ...additionalProps.small, size: textBodySm, children: domToReact(domNode.children, options) });
119
+ return /* @__PURE__ */ jsx(Body, { ...additionalProps.small, size: textBodySm, children: domToReact(domNode.children, options) }, key);
119
120
  }
120
121
  if ("sup" === domNode.name) {
121
122
  const children = domToReact(domNode.children, options);
122
123
  if (Number.isInteger(parseInt(children))) {
123
124
  uid += 1;
124
- return /* @__PURE__ */ jsx(FootnoteLink, { uid: `footnote-link-${uid}-${children})`, contentUid: `footnote-content-${children}`, screenReaderLabel: "Details zur Fußnote", children });
125
+ return /* @__PURE__ */ jsx(FootnoteLink, { uid: `footnote-link-${uid}-${children}`, contentUid: `footnote-content-${children}`, screenReaderLabel: "Details zur Fußnote", children }, key);
125
126
  }
126
- return /* @__PURE__ */ jsx(Body, { ...additionalProps.sup, tag: supTagName, children });
127
+ return /* @__PURE__ */ jsx(Body, { ...additionalProps.sup, tag: supTagName, children }, key);
127
128
  }
128
129
  if ("p" === domNode.name) {
129
- return /* @__PURE__ */ jsx(Body, { ...additionalProps.p, bottomSpacing: paragraphSpacing, children: domToReact(domNode.children, options) });
130
+ return /* @__PURE__ */ jsx(Body, { ...additionalProps.p, bottomSpacing: paragraphSpacing, children: domToReact(domNode.children, options) }, key);
130
131
  }
131
132
  if ("a" === domNode.name) {
132
133
  const linkLabel = domToReact(domNode.children, options);
@@ -134,9 +135,9 @@ const getOptions = (paragraphSpacing, additionalProps = {}) => {
134
135
  const href = domNode.attribs.href;
135
136
  const isAnchor = href.indexOf("#") === 0;
136
137
  if (!isNaN(isNumber) && isAnchor) {
137
- return /* @__PURE__ */ jsx(FootnoteLink, { uid: `${uid}`, contentUid: href.replace("#", ""), screenReaderLabel: "Details zur Fußnote", children: linkLabel });
138
+ return /* @__PURE__ */ jsx(FootnoteLink, { uid: `${uid}`, contentUid: href.replace("#", ""), screenReaderLabel: "Details zur Fußnote", children: linkLabel }, key);
138
139
  }
139
- return /* @__PURE__ */ jsx(InlineLink, { ...additionalProps.a, href: domNode.attribs.href, children: domToReact(domNode.children, options) });
140
+ return /* @__PURE__ */ jsx(InlineLink, { ...additionalProps.a, href: domNode.attribs.href, children: domToReact(domNode.children, options) }, key);
140
141
  }
141
142
  }
142
143
  }
@@ -5,7 +5,7 @@ import FlexItem from "./components/FlexItem/index.js";
5
5
  import Heading, { isHeadingProps, headingAlignLeft } from "./components/Heading/index.js";
6
6
  import Image, { isImageProps, aspectRatio16_9 } from "./components/Image/index.js";
7
7
  import Link, { isLinkProps } from "./components/Link/index.js";
8
- import { R as RichText } from "./index-DP6Nlg-a.js";
8
+ import { R as RichText } from "./index-BXt1ptbH.js";
9
9
  import RichTextContentful from "./components/RichtTextContentful/index.js";
10
10
  import YoutubeVideo from "./components/YoutubeVideo/index.js";
11
11
  import { p as pTagName, u as ulTagName, d as divTagName, l as liTagName } from "./tags-Cwgg3Gx2.js";
@@ -25,8 +25,8 @@ import "./index-Bu-7sSif.js";
25
25
  import "./hooks/useLinkComponent/index.js";
26
26
  import "./components/UtilityLink/index.js";
27
27
  import "./hooks/useImageComponent/index.js";
28
- import "./styled-BKH3egch.js";
29
- import "./index-Dd-A7i9Y.js";
28
+ import "./styled-CepQAcdi.js";
29
+ import "./index-r-dbrZxA.js";
30
30
  import { i as isObject, h as hasMatchingComponentName } from "./isObject-BYBrvoVW.js";
31
31
  import { i as isBottomSpacing } from "./isBottomSpacing-BxfreCZU.js";
32
32
  import { a as flexOrientationVertical, f as flexOrientationHorizontal, b as flexJustifyStart } from "./styled-BY19C9EO.js";
@@ -1,5 +1,5 @@
1
1
  import { jsx, jsxs } from "react/jsx-runtime";
2
- import { a as ButtonIconStyled, l as leftPosition, r as rightPosition } from "./styled-BKH3egch.js";
2
+ import { a as ButtonIconStyled, l as leftPosition, r as rightPosition } from "./styled-CepQAcdi.js";
3
3
  import { i as iconSizeSm } from "./IconSize-AJp7xdJi.js";
4
4
  import styled from "styled-components";
5
5
  import { getBottomSpacing } from "./foundations/token/getBottomSpacing/index.js";
@@ -15,7 +15,7 @@ import { c as colorBorderFocus } from "./BorderColor-BummoQ1-.js";
15
15
  import { a as borderWidthFocus } from "./BorderWidth-BjXpOdM5.js";
16
16
  import { t as textBodyMd } from "./TextBodySize-BcZR9mh2.js";
17
17
  import { g as colorTextBrand, a as colorTextNeutral } from "./TextColor-BXVMXUVE.js";
18
- import { b as iconNames } from "./index--RjkzZm0.js";
18
+ import { b as iconNames } from "./index-B3v10poy.js";
19
19
  import { i as isObject, h as hasMatchingComponentName } from "./isObject-BYBrvoVW.js";
20
20
  const getLinkIcon = (icon, iconPosition) => /* @__PURE__ */ jsx(ButtonIconStyled, { name: icon, iconPosition, size: iconSizeSm });
21
21
  const primaryAppearance = "primary";
@@ -4,7 +4,7 @@ import { n as iconSizeXs, i as iconSizeSm } from "./IconSize-AJp7xdJi.js";
4
4
  import { s as smallSize, m as mediumSize } from "./SizeTypes-Ck_RdzIf.js";
5
5
  import { f as spacing2Xs, b as spacingSm, s as spacingMd, a as spacingXs } from "./Spacing-8v6hcO2x.js";
6
6
  import styled from "styled-components";
7
- import { I as IconLoader, b as iconNames } from "./index--RjkzZm0.js";
7
+ import { I as IconLoader, b as iconNames } from "./index-B3v10poy.js";
8
8
  import forcedColors from "./foundations/media-query/forcedColors/index.js";
9
9
  import { getBodySize } from "./foundations/token/getBodySize/index.js";
10
10
  import { getBorderRadius } from "./foundations/token/getBorderRadius/index.js";
package/dist/index.d.ts CHANGED
@@ -128,6 +128,8 @@ export * from './components/FilterGroup';
128
128
  export { default as FilterGroup } from './components/FilterGroup';
129
129
  export * from './components/Fieldset';
130
130
  export { default as Fieldset } from './components/Fieldset';
131
+ export * from './components/FeatureCardGroup';
132
+ export { default as FeatureCardGroup } from './components/FeatureCardGroup';
131
133
  export * from './components/EnergySnippet';
132
134
  export { default as EnergySnippet } from './components/EnergySnippet';
133
135
  export * from './components/Divider';
package/dist/index.js CHANGED
@@ -5,7 +5,7 @@ import { default as default5 } from "./components/ToggleButtonProvider/index.js"
5
5
  import { default as default6 } from "./components/ToggleButton/index.js";
6
6
  import { default as default7 } from "./components/TimeInput/index.js";
7
7
  import { default as default8 } from "./components/Textarea/index.js";
8
- import { R, T, a } from "./index-DP6Nlg-a.js";
8
+ import { R, T, a } from "./index-BXt1ptbH.js";
9
9
  import { P, T as T2, c, k, g, f, j, p, a as a2, i, e, d, b, h, v } from "./index-DCXRnuHz.js";
10
10
  import { T as T3, a as a3, b as b2, c as c2, d as d2, e as e2, f as f2, T as T4 } from "./TableWrapper-Do9KCTGV.js";
11
11
  import { PanelStyled, default as default9, TabGroupContainerStyled, TabGroupIndicatorStyled, TabGroupTabsScrollableContainerStyled, TabGroupTabsStyled, TabLabelStyled, TabStyled, iconPositionLeft, iconPositionTop, tabGroupWidthAuto, tabGroupWidthFull } from "./components/TabGroup/index.js";
@@ -25,12 +25,12 @@ import { default as default21 } from "./components/PickerGroup/index.js";
25
25
  import { default as default22, overlayAppearancePrimary, overlayAppearanceSecondary } from "./components/Overlay/index.js";
26
26
  import { default as default23 } from "./components/OpenTextFootnoteAdapter/index.js";
27
27
  import { default as default24, notificationStatusError, notificationStatusInfo, notificationStatusSuccess, notificationStatusWarning } from "./components/Notification/index.js";
28
- import { M, i as i2, a as a4, b as b3, m, c as c3, v as v2 } from "./index-IA76oabp.js";
28
+ import { M, i as i2, a as a4, b as b3, m, c as c3, v as v2 } from "./index-CflWbzuv.js";
29
29
  import { default as default25 } from "./components/LocalStyle/index.js";
30
30
  import { default as default26 } from "./components/LoadingSpinner/index.js";
31
31
  import { default as default27, linkListItemVariantHorizontal, linkListItemVariantVertical } from "./components/LinkListItem/index.js";
32
32
  import { default as default28, linkListVariantColumn, linkListVariantRow } from "./components/LinkList/index.js";
33
- import { L, i as i3, v as v3 } from "./index-Dd-A7i9Y.js";
33
+ import { L, i as i3, v as v3 } from "./index-r-dbrZxA.js";
34
34
  import { default as default29, isLinkProps, validateLinkProps } from "./components/Link/index.js";
35
35
  import { default as default30 } from "./components/Legend/index.js";
36
36
  import { default as default31 } from "./components/Label/index.js";
@@ -42,7 +42,7 @@ import { default as default36, imageHeaderPositionLeft, imageHeaderPositionRight
42
42
  import { default as default37, aspectRatio16_9, aspectRatio1_1, aspectRatio21_9, aspectRatio32_9, aspectRatio3_4, aspectRatio48_9, aspectRatios, isImageProps, objectFitContain, objectFitCover, objectFitNone, objectFits, validateImageProps } from "./components/Image/index.js";
43
43
  import { default as default38, isIconSnippetListProps, validateIconSnippetListProps } from "./components/IconSnippetList/index.js";
44
44
  import { default as default39, iconSnippetAlignCenter, iconSnippetAlignTop, iconSnippetAligns, iconSnippetPositionCenter, iconSnippetPositionLeft, iconSnippetPositions, iconSnippetSize3Xl, iconSnippetSizeLarge, iconSnippetSizeSmall, iconSnippetSizes, iconSnippetTags, isIconSnippetProps, validateIconSnippetProps } from "./components/IconSnippet/index.js";
45
- import { I, i as i4, a as a5, v as v4 } from "./index--RjkzZm0.js";
45
+ import { I, i as i4, a as a5, v as v4 } from "./index-B3v10poy.js";
46
46
  import { default as default40, iconButtonShapeCircle, iconButtonShapeSquare } from "./components/IconButton/index.js";
47
47
  import { default as default41 } from "./components/Icon/index.js";
48
48
  import { default as default42, hifiIconSizes, isHifiIconProps, validateHifiIconProps } from "./components/HifiIcon/index.js";
@@ -60,32 +60,33 @@ import { default as default51, flexItemAutoGrow, flexItemFullGrow } from "./comp
60
60
  import { default as default52 } from "./components/Flex/index.js";
61
61
  import { default as default53 } from "./components/FilterGroup/index.js";
62
62
  import { default as default54 } from "./components/Fieldset/index.js";
63
- import { default as default55 } from "./components/EnergySnippet/index.js";
64
- import { default as default56, isDividerProps, validateDividerProps } from "./components/Divider/index.js";
65
- import { default as default57, isDiscoveryCardGroupProps, validateDiscoveryCardGroupProps } from "./components/DiscoveryCardGroup/index.js";
66
- import { default as default58, discoveryCardOrientationHorizontal, discoveryCardOrientationVertical, isDiscoveryCardProps, validateDiscoveryCardProps } from "./components/DiscoveryCard/index.js";
67
- import { default as default59 } from "./components/Dialog/index.js";
68
- import { default as default60 } from "./components/DemoBox/index.js";
69
- import { default as default61 } from "./components/DateInput/index.js";
63
+ import { default as default55 } from "./components/FeatureCardGroup/index.js";
64
+ import { default as default56 } from "./components/EnergySnippet/index.js";
65
+ import { default as default57, isDividerProps, validateDividerProps } from "./components/Divider/index.js";
66
+ import { default as default58, isDiscoveryCardGroupProps, validateDiscoveryCardGroupProps } from "./components/DiscoveryCardGroup/index.js";
67
+ import { default as default59, discoveryCardOrientationHorizontal, discoveryCardOrientationVertical, isDiscoveryCardProps, validateDiscoveryCardProps } from "./components/DiscoveryCard/index.js";
68
+ import { default as default60 } from "./components/Dialog/index.js";
69
+ import { default as default61 } from "./components/DemoBox/index.js";
70
+ import { default as default62 } from "./components/DateInput/index.js";
70
71
  import { C, b as b5, a as a7, c as c5, d as d4, i as i6, v as v6 } from "./index-DbG0QL9D.js";
71
- import { default as default62 } from "./components/ConsentMessage/index.js";
72
- import { default as default63, isColorSwatchGroupProps, validateColorSwatchGroupProps } from "./components/ColorSwatchGroup/index.js";
73
- import { default as default64, colorSwatchSizeMedium, colorSwatchSizeSmall, colorSwatchSizes, isColorSwatchProps, validateColorSwatchProps } from "./components/ColorSwatch/index.js";
74
- import { default as default65 } from "./components/Collapsible/index.js";
75
- import { default as default66 } from "./components/CheckboxGroup/index.js";
76
- import { default as default67 } from "./components/Checkbox/index.js";
77
- import { default as default68 } from "./components/Carousel/index.js";
78
- import { default as default69, cardAppearances, cardTags, isCardProps, validateCardProps } from "./components/Card/index.js";
79
- import { default as default70 } from "./components/Calendar/index.js";
80
- import { default as default71, flexJustifyBehaviours, flexOrientations, isButtonGroupProps, validateButtonGroupProps } from "./components/ButtonGroup/index.js";
81
- import { B, c as c6, a as a8, b as b6, d as d5, i as i7, f as f4, v as v7, e as e4 } from "./validate-CLBUbscx.js";
82
- import { default as default72 } from "./components/Button/index.js";
83
- import { default as default73 } from "./components/BottomBar/index.js";
84
- import { default as default74, bodyAlignCenter, bodyAlignLeft, bodyAlignRight, bodyAligns, bodySizes, bodyTags, bodyWeights, isBodyProps, validateBodyProps } from "./components/Body/index.js";
85
- import { B as B2, b as b7, c as c7, d as d6, i as i8, p as p2, s, a as a9, t, v as v8 } from "./index-DwGcrvTh.js";
86
- import { default as default75 } from "./components/ArtDirectedImage/index.js";
87
- import { default as default76, isAccordionGroupProps, validateAccordionGroupProps } from "./components/AccordionGroup/index.js";
88
- import { default as default77, accordionToggleCollapsed, accordionToggleCollapsing, accordionToggleExpanded, isAccordionProps, validateAccordionProps } from "./components/Accordion/index.js";
72
+ import { default as default63 } from "./components/ConsentMessage/index.js";
73
+ import { default as default64, isColorSwatchGroupProps, validateColorSwatchGroupProps } from "./components/ColorSwatchGroup/index.js";
74
+ import { default as default65, colorSwatchSizeMedium, colorSwatchSizeSmall, colorSwatchSizes, isColorSwatchProps, validateColorSwatchProps } from "./components/ColorSwatch/index.js";
75
+ import { default as default66 } from "./components/Collapsible/index.js";
76
+ import { default as default67 } from "./components/CheckboxGroup/index.js";
77
+ import { default as default68 } from "./components/Checkbox/index.js";
78
+ import { default as default69 } from "./components/Carousel/index.js";
79
+ import { default as default70, cardAppearances, cardTags, isCardProps, validateCardProps } from "./components/Card/index.js";
80
+ import { default as default71 } from "./components/Calendar/index.js";
81
+ import { default as default72, flexJustifyBehaviours, flexOrientations, isButtonGroupProps, validateButtonGroupProps } from "./components/ButtonGroup/index.js";
82
+ import { B, c as c6, a as a8, b as b6, d as d5, i as i7, f as f4, v as v7, e as e4 } from "./validate-BxqNSkch.js";
83
+ import { default as default73 } from "./components/Button/index.js";
84
+ import { default as default74 } from "./components/BottomBar/index.js";
85
+ import { default as default75, bodyAlignCenter, bodyAlignLeft, bodyAlignRight, bodyAligns, bodySizes, bodyTags, bodyWeights, isBodyProps, validateBodyProps } from "./components/Body/index.js";
86
+ import { B as B2, b as b7, c as c7, d as d6, i as i8, p as p2, s, a as a9, t, v as v8 } from "./index-sJClnrzW.js";
87
+ import { default as default76 } from "./components/ArtDirectedImage/index.js";
88
+ import { default as default77, isAccordionGroupProps, validateAccordionGroupProps } from "./components/AccordionGroup/index.js";
89
+ import { default as default78, accordionToggleCollapsed, accordionToggleCollapsing, accordionToggleExpanded, isAccordionProps, validateAccordionProps } from "./components/Accordion/index.js";
89
90
  import { getTextDecoration } from "./foundations/token/getTextDecoration/index.js";
90
91
  import { getTextColor } from "./foundations/token/getTextColor/index.js";
91
92
  import { getSpacing } from "./foundations/token/getSpacing/index.js";
@@ -117,44 +118,45 @@ import { useForcedColors } from "./hooks/useForcedColors/index.js";
117
118
  import { useFocusWithin } from "./hooks/useFocusWithin/index.js";
118
119
  import "react/jsx-runtime";
119
120
  import "@contentful/live-preview/react";
120
- import { L as L2 } from "./mapContentToComponents-DWVykPoW.js";
121
+ import { L as L2 } from "./mapContentToComponents-D215P4kM.js";
121
122
  import { a as a10, i as i9 } from "./props-DDpgcryb.js";
122
123
  import { i as i10, h as h3, g as g3, e as e5, d as d7, c as c8, b as b8, f as f5, a as a11 } from "./styled-BY19C9EO.js";
123
124
  import { C as C2 } from "./styled-rsUoUFyl.js";
124
125
  export {
125
- default77 as Accordion,
126
- default76 as AccordionGroup,
127
- default75 as ArtDirectedImage,
126
+ default78 as Accordion,
127
+ default77 as AccordionGroup,
128
+ default76 as ArtDirectedImage,
128
129
  B2 as Badge,
129
130
  b7 as BadgeAppearanceColor,
130
- default74 as Body,
131
- default73 as BottomBar,
132
- default72 as Button,
131
+ default75 as Body,
132
+ default74 as BottomBar,
133
+ default73 as Button,
133
134
  B as ButtonAsLink,
134
- default71 as ButtonGroup,
135
- default70 as Calendar,
136
- default69 as Card,
135
+ default72 as ButtonGroup,
136
+ default71 as Calendar,
137
+ default70 as Card,
137
138
  C2 as CardAppearanceColor,
138
- default68 as Carousel,
139
- default67 as Checkbox,
140
- default66 as CheckboxGroup,
141
- default65 as Collapsible,
142
- default64 as ColorSwatch,
143
- default63 as ColorSwatchGroup,
144
- default62 as ConsentMessage,
139
+ default69 as Carousel,
140
+ default68 as Checkbox,
141
+ default67 as CheckboxGroup,
142
+ default66 as Collapsible,
143
+ default65 as ColorSwatch,
144
+ default64 as ColorSwatchGroup,
145
+ default63 as ConsentMessage,
145
146
  C as Container,
146
147
  b5 as ContainerAppearanceColor,
147
148
  a7 as ContainerContext,
148
- default61 as DateInput,
149
+ default62 as DateInput,
149
150
  DefaultImage,
150
151
  DefaultLink,
151
152
  DefaultPicture,
152
- default60 as DemoBox,
153
- default59 as Dialog,
154
- default58 as DiscoveryCard,
155
- default57 as DiscoveryCardGroup,
156
- default56 as Divider,
157
- default55 as EnergySnippet,
153
+ default61 as DemoBox,
154
+ default60 as Dialog,
155
+ default59 as DiscoveryCard,
156
+ default58 as DiscoveryCardGroup,
157
+ default57 as Divider,
158
+ default56 as EnergySnippet,
159
+ default55 as FeatureCardGroup,
158
160
  default54 as Fieldset,
159
161
  default53 as FilterGroup,
160
162
  default52 as Flex,
@@ -1,10 +1,10 @@
1
1
  import Accordion, { isAccordionProps } from "./components/Accordion/index.js";
2
2
  import AccordionGroup, { isAccordionGroupProps } from "./components/AccordionGroup/index.js";
3
3
  import ArtDirectedImage from "./components/ArtDirectedImage/index.js";
4
- import { i as isBadgeProps, B as Badge } from "./index-DwGcrvTh.js";
4
+ import { i as isBadgeProps, B as Badge } from "./index-sJClnrzW.js";
5
5
  import Body, { isBodyProps } from "./components/Body/index.js";
6
6
  import Button from "./components/Button/index.js";
7
- import { i as isButtonAsLinkProps, f as isButtonProps, B as ButtonAsLink } from "./validate-CLBUbscx.js";
7
+ import { i as isButtonAsLinkProps, f as isButtonProps, B as ButtonAsLink } from "./validate-BxqNSkch.js";
8
8
  import ButtonGroup, { isButtonGroupProps } from "./components/ButtonGroup/index.js";
9
9
  import Card, { isCardProps } from "./components/Card/index.js";
10
10
  import ConsentMessage from "./components/ConsentMessage/index.js";
@@ -15,15 +15,15 @@ import Divider, { isDividerProps } from "./components/Divider/index.js";
15
15
  import { n as isGridProps, l as isGridConfig, a as Grid, i as isGridItemProps, G as GridItem } from "./index-Bu-7sSif.js";
16
16
  import Heading, { isHeadingProps } from "./components/Heading/index.js";
17
17
  import HifiIcon, { isHifiIconProps } from "./components/HifiIcon/index.js";
18
- import { a as isIconLoaderProps, I as IconLoader, b as iconNames } from "./index--RjkzZm0.js";
18
+ import { a as isIconLoaderProps, I as IconLoader, b as iconNames } from "./index-B3v10poy.js";
19
19
  import IconSnippet, { isIconSnippetProps } from "./components/IconSnippet/index.js";
20
20
  import IconSnippetList, { isIconSnippetListProps } from "./components/IconSnippetList/index.js";
21
21
  import Image, { isImageProps } from "./components/Image/index.js";
22
22
  import ImageHeader, { isImageHeaderProps } from "./components/ImageHeader/index.js";
23
23
  import Link, { isLinkProps } from "./components/Link/index.js";
24
- import { i as isLinkAsButtonProps, L as LinkAsButton } from "./index-Dd-A7i9Y.js";
24
+ import { i as isLinkAsButtonProps, L as LinkAsButton } from "./index-r-dbrZxA.js";
25
25
  import LinkList, { linkListVariantRow, linkListVariantColumn } from "./components/LinkList/index.js";
26
- import { d as isConsentMessageProps, e as isRichTextContentfulProps, f as isYoutubeVideoProps, i as isMediaTextProps, M as MediaText } from "./index-IA76oabp.js";
26
+ import { d as isConsentMessageProps, e as isRichTextContentfulProps, f as isYoutubeVideoProps, i as isMediaTextProps, M as MediaText } from "./index-CflWbzuv.js";
27
27
  import { k as isPriceProps, P as Price } from "./index-DCXRnuHz.js";
28
28
  import RichTextContentful from "./components/RichtTextContentful/index.js";
29
29
  import YoutubeVideo from "./components/YoutubeVideo/index.js";
@@ -36,7 +36,7 @@ import "./hooks/useLinkComponent/index.js";
36
36
  import "./components/UtilityLink/index.js";
37
37
  import "./hooks/useImageComponent/index.js";
38
38
  import { a as cornerRounded, c as cornerStraight } from "./CornerStyle-JEbGNArR.js";
39
- import "./styled-BKH3egch.js";
39
+ import "./styled-CepQAcdi.js";
40
40
  import { linkListItemVariantVertical, linkListItemVariantHorizontal } from "./components/LinkListItem/index.js";
41
41
  import "./index-C2E3JrhF.js";
42
42
  import "./index-BsykXBqC.js";
@@ -49,7 +49,7 @@ import "./styled-rsUoUFyl.js";
49
49
  import "html-react-parser";
50
50
  import "./components/InlineLink/index.js";
51
51
  import "./TableWrapper-Do9KCTGV.js";
52
- import "./index-DP6Nlg-a.js";
52
+ import "./index-BXt1ptbH.js";
53
53
  const validateLegibleContent = (check) => {
54
54
  var _a, _b, _c, _d;
55
55
  if (null === check) {
@@ -1,6 +1,6 @@
1
1
  import styled from "styled-components";
2
2
  import { g as getButtonAppearance } from "./ButtonAppearanceHelper-DBCLijF0.js";
3
- import { I as IconLoader } from "./index--RjkzZm0.js";
3
+ import { I as IconLoader } from "./index-B3v10poy.js";
4
4
  import viewport from "./foundations/media-query/viewport/index.js";
5
5
  import { getBodySize } from "./foundations/token/getBodySize/index.js";
6
6
  import { getBorderRadius } from "./foundations/token/getBorderRadius/index.js";
@@ -1,6 +1,6 @@
1
1
  import { jsx, jsxs } from "react/jsx-runtime";
2
2
  import { i as iconSizeSm } from "./IconSize-AJp7xdJi.js";
3
- import { a as ButtonIconStyled, l as leftPosition, b as buttonHeight, p as primaryAppearance, s as secondaryAppearance, t as tertiaryAppearance, r as rightPosition } from "./styled-BKH3egch.js";
3
+ import { a as ButtonIconStyled, l as leftPosition, b as buttonHeight, p as primaryAppearance, s as secondaryAppearance, t as tertiaryAppearance, r as rightPosition } from "./styled-CepQAcdi.js";
4
4
  import { useLinkComponent } from "./hooks/useLinkComponent/index.js";
5
5
  import { a as filterProps, f as filterPropsForUnstyledComponent } from "./filterProps-CxkibNnG.js";
6
6
  import { s as sanitizeLinkProps } from "./sanitizeLinkProps-D2Kkovy1.js";
@@ -18,7 +18,7 @@ import { c as spacingNone, a as spacingXs, e as spacingXl, s as spacingMd } from
18
18
  import { t as textBodyMd } from "./TextBodySize-BcZR9mh2.js";
19
19
  import { i as isObject, h as hasMatchingComponentName } from "./isObject-BYBrvoVW.js";
20
20
  import { i as isBottomSpacing } from "./isBottomSpacing-BxfreCZU.js";
21
- import { b as iconNames } from "./index--RjkzZm0.js";
21
+ import { b as iconNames } from "./index-B3v10poy.js";
22
22
  const getButtonIcon = (icon, iconPosition) => {
23
23
  if (!icon) {
24
24
  return null;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@vodafone_de/brix-components",
3
3
  "description": "Brix is the digital design system for vodafone.de",
4
- "version": "10.0.1",
4
+ "version": "10.0.2",
5
5
  "exports": {
6
6
  "./package.json": "./package.json",
7
7
  ".": {