@vodafone_de/brix-components 7.1.6 → 7.1.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 (126) hide show
  1. package/dist/{HeadingSize-CfCRn3Lh.js → HeadingSize-CqqUYZWV.js} +2 -2
  2. package/dist/TableHead-C2zQ4jce.js +132 -0
  3. package/dist/TableWrapper-C8SpplcL.js +25 -0
  4. package/dist/components/Accordion/index.js +2 -2
  5. package/dist/components/AccordionGroup/index.js +1 -1
  6. package/dist/components/Badge/index.js +3 -3
  7. package/dist/components/Body/index.js +1 -1
  8. package/dist/components/BottomBar/index.js +2 -2
  9. package/dist/components/Button/index.js +2 -2
  10. package/dist/components/ButtonAsLink/index.js +2 -2
  11. package/dist/components/ButtonGroup/index.js +1 -1
  12. package/dist/components/Card/index.js +2 -2
  13. package/dist/components/Carousel/index.js +5 -5
  14. package/dist/components/Checkbox/index.js +2 -2
  15. package/dist/components/CheckboxGroup/index.js +2 -2
  16. package/dist/components/Collapsible/index.js +1 -1
  17. package/dist/components/ColorSwatch/index.js +2 -2
  18. package/dist/components/ColorSwatchGroup/index.js +3 -3
  19. package/dist/components/ConsentMessage/index.js +3 -3
  20. package/dist/components/Container/index.js +2 -2
  21. package/dist/components/DateInput/index.js +2 -2
  22. package/dist/components/DemoBox/index.js +8 -2
  23. package/dist/components/Dialog/index.js +2 -2
  24. package/dist/components/DiscoveryCard/index.js +12 -11
  25. package/dist/components/DiscoveryCardGroup/index.js +1 -1
  26. package/dist/components/Divider/index.js +1 -1
  27. package/dist/components/Fieldset/index.js +1 -1
  28. package/dist/components/FilterGroup/index.js +3 -3
  29. package/dist/components/Flex/index.js +2 -2
  30. package/dist/components/FlexItem/index.js +1 -1
  31. package/dist/components/FootnoteContent/index.js +1 -1
  32. package/dist/components/FootnoteLink/index.js +1 -1
  33. package/dist/components/Form/index.js +1 -1
  34. package/dist/components/FormElement/index.js +1 -1
  35. package/dist/components/FormHelperStatusIcon/index.js +1 -1
  36. package/dist/components/GoogleMap/index.js +1 -1
  37. package/dist/components/Grid/index.js +1 -1
  38. package/dist/components/GridItem/index.js +4 -3
  39. package/dist/components/Heading/index.js +3 -3
  40. package/dist/components/HifiIcon/index.js +1 -1
  41. package/dist/components/IconButton/index.js +3 -3
  42. package/dist/components/IconSnippet/index.js +3 -3
  43. package/dist/components/Image/index.js +1 -1
  44. package/dist/components/ImageHeader/index.js +4 -4
  45. package/dist/components/InfoBanner/index.js +3 -3
  46. package/dist/components/InlineIcon/index.js +1 -1
  47. package/dist/components/InlineLink/index.js +1 -1
  48. package/dist/components/Input/index.js +1 -1
  49. package/dist/components/Label/index.js +1 -1
  50. package/dist/components/Legend/index.js +2 -12
  51. package/dist/components/Link/index.js +2 -2
  52. package/dist/components/LinkAsButton/index.js +1 -1
  53. package/dist/components/LinkList/index.js +1 -1
  54. package/dist/components/LinkListItem/index.js +4 -4
  55. package/dist/components/LoadingSpinner/index.js +2 -2
  56. package/dist/components/LocalStyle/index.js +2 -2
  57. package/dist/components/MediaText/index.js +5 -5
  58. package/dist/components/Notification/index.js +3 -3
  59. package/dist/components/OpenTextFootnoteAdapter/index.js +2 -2
  60. package/dist/components/Overlay/index.js +1 -1
  61. package/dist/components/PickerGroup/index.js +4 -4
  62. package/dist/components/Price/index.js +2 -2
  63. package/dist/components/ProductCard/index.js +4 -4
  64. package/dist/components/QuickLinkList/index.js +3 -3
  65. package/dist/components/RadioGroup/index.js +1 -1
  66. package/dist/components/Rating/index.js +11 -10
  67. package/dist/components/ResponsiveImage/index.js +1 -1
  68. package/dist/components/RichText/index.js +1 -1
  69. package/dist/components/RichtTextContentful/index.js +2 -2
  70. package/dist/components/ScreenreaderOnly/index.js +14 -3
  71. package/dist/components/SearchInput/index.js +4 -4
  72. package/dist/components/SelectInput/index.js +2 -2
  73. package/dist/components/Stepper/index.js +1 -1
  74. package/dist/components/SuggestInput/index.js +5 -4
  75. package/dist/components/Switch/index.js +2 -2
  76. package/dist/components/TabGroup/index.js +2 -2
  77. package/dist/components/Table/TableContext.d.ts +12 -0
  78. package/dist/components/Table/components/TableBody.d.ts +4 -0
  79. package/dist/components/Table/components/TableCell.d.ts +4 -0
  80. package/dist/components/Table/components/TableFoot.d.ts +4 -0
  81. package/dist/components/Table/components/TableHead.d.ts +7 -0
  82. package/dist/components/Table/components/TableWrapper.d.ts +4 -0
  83. package/dist/components/Table/index.d.ts +8 -0
  84. package/dist/components/Table/index.js +13 -0
  85. package/dist/components/Table/props.d.ts +30 -0
  86. package/dist/components/Table/styled.d.ts +8 -0
  87. package/dist/components/TabularPrice/index.js +2 -2
  88. package/dist/components/TextList/index.js +2 -2
  89. package/dist/components/Textarea/index.js +2 -2
  90. package/dist/components/TimeInput/index.js +2 -2
  91. package/dist/components/Tray/index.js +2 -2
  92. package/dist/contentful/index.js +11 -10
  93. package/dist/contentful/live-preview-inspector/index.js +1 -1
  94. package/dist/contentful/live-preview-renderer/index.js +1 -1
  95. package/dist/contentful/renderer/index.js +1 -1
  96. package/dist/{cssVars-C3-c3zhv.js → cssVars-CR3xqdPx.js} +1 -1
  97. package/dist/filterProps-BWnAPYBL.js +17 -0
  98. package/dist/foundations/GlobalStyle/index.js +1 -1
  99. package/dist/{index-M27FMM9r.js → index-ByPSWRQ0.js} +3 -3
  100. package/dist/{index-DXRuQeDl.js → index-CHzok6W_.js} +3 -3
  101. package/dist/{index-7A9g1r9L.js → index-CifS-Z_9.js} +74 -3
  102. package/dist/{index-BjtnAuPr.js → index-DLvMM1Dq.js} +2 -2
  103. package/dist/index.d.ts +2 -0
  104. package/dist/index.js +176 -166
  105. package/dist/{mapContentToComponents-BobPnbKM.js → mapContentToComponents-DLxIwtHo.js} +11 -10
  106. package/dist/screenreaderOnly-Dv2v6MAr.js +11 -0
  107. package/dist/{styled-RnVr222F.js → styled-B1bxWqtW.js} +1 -1
  108. package/dist/{styled-SllFJc7o.js → styled-BBG87P4U.js} +3 -3
  109. package/dist/{styled-B-_SmQSA.js → styled-BBO2jrba.js} +1 -1
  110. package/dist/{styled-D8a-ap4J.js → styled-BKWEE3dx.js} +1 -1
  111. package/dist/{styled-BTBLpB_G.js → styled-BQGCfF-s.js} +1 -1
  112. package/dist/{styled-jl0239KS.js → styled-BXtzJJFu.js} +1 -1
  113. package/dist/{styled-DJWrbsIZ.js → styled-BYYivuzh.js} +1 -1
  114. package/dist/{styled-1OrCdMDT.js → styled-CE_Y6O4R.js} +1 -1
  115. package/dist/styled-CH1kr8ZR.js +14 -0
  116. package/dist/{styled-Djetw1lK.js → styled-Cz2kpbgE.js} +3 -3
  117. package/dist/{styled-CPNO3vN5.js → styled-DGMsuBML.js} +1 -1
  118. package/dist/{styled-q7r_5eaz.js → styled-Dgv3RBlg.js} +1 -1
  119. package/dist/{styled-VAsSnb5y.js → styled-Dmb8-99g.js} +1 -1
  120. package/dist/{styled-CW4e5Qa3.js → styled-Dr-tPBqx.js} +1 -1
  121. package/dist/{styled-U9du2n1i.js → styled-Du4LgXoA.js} +1 -1
  122. package/dist/{styled-CyZvsdJs.js → styled-O5mL4jlL.js} +1 -1
  123. package/dist/{styled-DOK4C5Ml.js → styled-VuUKI7PE.js} +1 -1
  124. package/package.json +1 -1
  125. package/dist/filterProps-CTn92eZw.js +0 -17
  126. package/dist/index-B2VrT4fo.js +0 -24
@@ -1,11 +1,11 @@
1
1
  "use client";
2
2
  import { jsx } from "react/jsx-runtime";
3
- import { d as distExports, r as richTextReactRenderer_es5Exports, R as RichTextContentfulStyled } from "../../styled-DOK4C5Ml.js";
3
+ import { d as distExports, r as richTextReactRenderer_es5Exports, R as RichTextContentfulStyled } from "../../styled-VuUKI7PE.js";
4
4
  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-7A9g1r9L.js";
8
+ import { a as TextListItem, T as TextList } from "../../index-CifS-Z_9.js";
9
9
  const getOptions = (paragraphSpacing = void 0) => {
10
10
  const options = {
11
11
  renderMark: {
@@ -1,6 +1,17 @@
1
1
  "use client";
2
- import "react/jsx-runtime";
3
- import { S } from "../../index-B2VrT4fo.js";
2
+ import { jsx } from "react/jsx-runtime";
3
+ import styled from "styled-components";
4
+ import { s as screenreaderOnly } from "../../screenreaderOnly-Dv2v6MAr.js";
5
+ import { a as filterProps } from "../../filterProps-BWnAPYBL.js";
6
+ const ScreenReaderOnlyStyled = styled.span.withConfig({
7
+ shouldForwardProp: filterProps(),
8
+ displayName: "ScreenReaderOnlyStyled",
9
+ componentId: "sc-1r7az4k-0"
10
+ })(screenreaderOnly);
11
+ const ScreenreaderOnly = ({
12
+ children,
13
+ ...props
14
+ }) => /* @__PURE__ */ jsx(ScreenReaderOnlyStyled, { ...props, children });
4
15
  export {
5
- S as default
16
+ ScreenreaderOnly as default
6
17
  };
@@ -4,13 +4,13 @@ import { useState, useRef } from "react";
4
4
  import FormHelperLabel from "../FormHelperLabel/index.js";
5
5
  import IconButton, { iconButtonShapeSquare } from "../IconButton/index.js";
6
6
  import { b as iconSizeSm } from "../../props-7dcsjRUx.js";
7
- import "../../styled-RnVr222F.js";
8
- import { p as primaryAppearance } from "../../styled-q7r_5eaz.js";
7
+ import "../../styled-B1bxWqtW.js";
8
+ import { p as primaryAppearance } from "../../styled-Dgv3RBlg.js";
9
9
  import { a as spacingMd, s as spacingNone } from "../../Spacing-BMQelJYr.js";
10
10
  import { r as renderInlineRichTextFromOpenText } from "../../renderInlineRichTextFromOpenText-RvOG3QbI.js";
11
11
  import { bn as CloseIcon } from "../../_5gPlusIcon-CnxmOo1u.js";
12
12
  import styled from "styled-components";
13
- import { I as InputWrapperStyled, a as InputStyled } from "../../styled-BTBLpB_G.js";
13
+ import { I as InputWrapperStyled, a as InputStyled } from "../../styled-BQGCfF-s.js";
14
14
  import forcedColors from "../../foundations/media-query/forcedColors/index.js";
15
15
  import { getBorderColor } from "../../foundations/token/getBorderColor/index.js";
16
16
  import { getBorderWidth } from "../../foundations/token/getBorderWidth/index.js";
@@ -18,7 +18,7 @@ import { getBottomSpacing } from "../../foundations/token/getBottomSpacing/index
18
18
  import { getSpacing } from "../../foundations/token/getSpacing/index.js";
19
19
  import { c as colorBorderFocus } from "../../BorderColor-CYdSW9dg.js";
20
20
  import { a as borderWidthFocus } from "../../BorderWidth-eg_mz82k.js";
21
- import { a as filterProps } from "../../filterProps-CTn92eZw.js";
21
+ import { a as filterProps } from "../../filterProps-BWnAPYBL.js";
22
22
  const SearchInputButtonWrapperStyled = styled.div.withConfig({
23
23
  shouldForwardProp: filterProps(),
24
24
  displayName: "SearchInputButtonWrapperStyled",
@@ -7,7 +7,7 @@ import FormHelperLabel from "../FormHelperLabel/index.js";
7
7
  import FormHelperMessage from "../FormHelperMessage/index.js";
8
8
  import FormHelperStatusIcon from "../FormHelperStatusIcon/index.js";
9
9
  import { b as iconSizeSm } from "../../props-7dcsjRUx.js";
10
- import "../../styled-RnVr222F.js";
10
+ import "../../styled-B1bxWqtW.js";
11
11
  import { a as inputStateError } from "../../props-DDpgcryb.js";
12
12
  import { b as spacingXs, c as spacingSm, a as spacingMd } from "../../Spacing-BMQelJYr.js";
13
13
  import { r as renderInlineRichTextFromOpenText } from "../../renderInlineRichTextFromOpenText-RvOG3QbI.js";
@@ -23,7 +23,7 @@ import { c as colorBackgroundNeutral } from "../../BackgroundColor-DSOSZvNi.js";
23
23
  import { c as colorBorderFocus, a as colorBorderNeutral, b as colorBorderUnselected, d as colorBorderSuccess, e as colorBorderCritical } from "../../BorderColor-CYdSW9dg.js";
24
24
  import { b as borderRadiusMd } from "../../BorderRadius-ClUShVLu.js";
25
25
  import { a as colorTextNeutral } from "../../TextColor-DsntmDNw.js";
26
- import { a as filterProps } from "../../filterProps-CTn92eZw.js";
26
+ import { a as filterProps } from "../../filterProps-BWnAPYBL.js";
27
27
  import { g as getCssVar } from "../../getCssVar-BP6T9pFM.js";
28
28
  const SelectInputWrapperStyled = styled.div.withConfig({
29
29
  displayName: "SelectInputWrapperStyled",
@@ -16,7 +16,7 @@ import { a as fontWeightBold } from "../../FontWeight-C2pGs7aR.js";
16
16
  import { a as colorObjectBrand, b as colorObjectInverse } from "../../ObjectColor-0RAzLGI5.js";
17
17
  import { a as spacingMd } from "../../Spacing-BMQelJYr.js";
18
18
  import { t as textBodyMd } from "../../TextBodySize-BcZR9mh2.js";
19
- import { a as filterProps } from "../../filterProps-CTn92eZw.js";
19
+ import { a as filterProps } from "../../filterProps-BWnAPYBL.js";
20
20
  const StepperItemStyled = styled.li.withConfig({
21
21
  shouldForwardProp: filterProps(),
22
22
  displayName: "StepperItemStyled",
@@ -7,9 +7,9 @@ import FormHelperMessage from "../FormHelperMessage/index.js";
7
7
  import FormHelperStatusIcon from "../FormHelperStatusIcon/index.js";
8
8
  import { I as IconLoader } from "../../index-C3dW-7e_.js";
9
9
  import { b as iconSizeSm } from "../../props-7dcsjRUx.js";
10
- import "../../styled-RnVr222F.js";
10
+ import "../../styled-B1bxWqtW.js";
11
11
  import { a as inputStateError } from "../../props-DDpgcryb.js";
12
- import { I as InputWrapperStyled, a as InputStyled } from "../../styled-BTBLpB_G.js";
12
+ import { I as InputWrapperStyled, a as InputStyled } from "../../styled-BQGCfF-s.js";
13
13
  import { c as spacingSm, b as spacingXs, a as spacingMd } from "../../Spacing-BMQelJYr.js";
14
14
  import { r as renderInlineRichTextFromOpenText } from "../../renderInlineRichTextFromOpenText-RvOG3QbI.js";
15
15
  import Body from "../Body/index.js";
@@ -24,6 +24,7 @@ import { getSpacing } from "../../foundations/token/getSpacing/index.js";
24
24
  import { c as colorBackgroundNeutral } from "../../BackgroundColor-DSOSZvNi.js";
25
25
  import { c as colorBorderFocus } from "../../BorderColor-CYdSW9dg.js";
26
26
  import { t as textBodyMd } from "../../TextBodySize-BcZR9mh2.js";
27
+ import { a as filterProps } from "../../filterProps-BWnAPYBL.js";
27
28
  import Flex from "../Flex/index.js";
28
29
  import LoadingSpinner from "../LoadingSpinner/index.js";
29
30
  import { getBottomSpacing } from "../../foundations/token/getBottomSpacing/index.js";
@@ -31,7 +32,6 @@ import { getOpacity } from "../../foundations/token/getOpacity/index.js";
31
32
  import { getTextColor } from "../../foundations/token/getTextColor/index.js";
32
33
  import { a as opacityDisabled } from "../../Opacity-smkGiwsf.js";
33
34
  import { a as colorTextNeutral } from "../../TextColor-DsntmDNw.js";
34
- import { a as filterProps } from "../../filterProps-CTn92eZw.js";
35
35
  const calculateListMaxHeight = (numberOfVisibleItems) => {
36
36
  return `calc((${getSpacing(spacingSm)} * 2 + ${getBodySize(textBodyMd).fontSize} * ${getBodySize(textBodyMd).lineHeight}) * ${numberOfVisibleItems})`;
37
37
  };
@@ -72,6 +72,7 @@ const SuggestInputListStyled = styled.ul.withConfig({
72
72
  maxHeight: calculateListMaxHeight(5)
73
73
  });
74
74
  const SuggestInputListItemStyled = styled.li.withConfig({
75
+ shouldForwardProp: filterProps(),
75
76
  displayName: "SuggestInputListItemStyled",
76
77
  componentId: "sc-5e6nao-2"
77
78
  })({
@@ -108,7 +109,7 @@ const highlightQuery = (label, query) => {
108
109
  if (query.length > 0 && index !== -1) {
109
110
  const beforeQuery = label.slice(0, index);
110
111
  const afterQuery = label.slice(index + lowerQuery.length);
111
- const boldQuery = /* @__PURE__ */ jsx(Body, { tag: strongTagName, children: label.slice(index, index + lowerQuery.length) });
112
+ const boldQuery = /* @__PURE__ */ jsx(Body, { tag: strongTagName, children: label.slice(index, index + lowerQuery.length) }, label);
112
113
  return [beforeQuery, boldQuery, afterQuery];
113
114
  }
114
115
  return label;
@@ -3,7 +3,7 @@ import { jsx, jsxs } from "react/jsx-runtime";
3
3
  import { useState, useEffect } from "react";
4
4
  import { I as IconLoader } from "../../index-C3dW-7e_.js";
5
5
  import { i as iconSize2xs } from "../../props-7dcsjRUx.js";
6
- import "../../styled-RnVr222F.js";
6
+ import "../../styled-B1bxWqtW.js";
7
7
  import styled from "styled-components";
8
8
  import Label from "../Label/index.js";
9
9
  import forcedColors from "../../foundations/media-query/forcedColors/index.js";
@@ -21,7 +21,7 @@ import { a as borderWidthFocus, d as borderWidthSm } from "../../BorderWidth-eg_
21
21
  import { b as colorObjectInverse, d as colorObjectSelected, g as colorObjectUnselected } from "../../ObjectColor-0RAzLGI5.js";
22
22
  import { a as opacityDisabled } from "../../Opacity-smkGiwsf.js";
23
23
  import { b as spacingXs, a as spacingMd } from "../../Spacing-BMQelJYr.js";
24
- import { a as filterProps } from "../../filterProps-CTn92eZw.js";
24
+ import { a as filterProps } from "../../filterProps-BWnAPYBL.js";
25
25
  const getHandleIcon = (checked) => {
26
26
  const iconName = checked ? "Tick" : "Close";
27
27
  return /* @__PURE__ */ jsx(IconLoader, { size: iconSize2xs, name: iconName });
@@ -3,7 +3,7 @@ import { jsxs, jsx } from "react/jsx-runtime";
3
3
  import { useState, useRef, useEffect } from "react";
4
4
  import { I as IconLoader } from "../../index-C3dW-7e_.js";
5
5
  import { b as iconSizeSm, d as iconSizeLg } from "../../props-7dcsjRUx.js";
6
- import "../../styled-RnVr222F.js";
6
+ import "../../styled-B1bxWqtW.js";
7
7
  import styled from "styled-components";
8
8
  import Flex from "../Flex/index.js";
9
9
  import forcedColors from "../../foundations/media-query/forcedColors/index.js";
@@ -22,7 +22,7 @@ import { a as borderWidthFocus } from "../../BorderWidth-eg_mz82k.js";
22
22
  import { a as fontWeightBold } from "../../FontWeight-C2pGs7aR.js";
23
23
  import { a as colorObjectBrand } from "../../ObjectColor-0RAzLGI5.js";
24
24
  import { a as spacingMd, c as spacingSm, b as spacingXs, e as spacing2Xs, d as spacingXl } from "../../Spacing-BMQelJYr.js";
25
- import { a as filterProps } from "../../filterProps-CTn92eZw.js";
25
+ import { a as filterProps } from "../../filterProps-BWnAPYBL.js";
26
26
  const iconPositionLeft = "left";
27
27
  const iconPositionTop = "top";
28
28
  const tabGroupWidthFull = "full";
@@ -0,0 +1,12 @@
1
+ import { FC, ReactNode } from 'react';
2
+ import { TableColumn } from './props';
3
+ export type TableContextType = {
4
+ columns?: TableColumn[];
5
+ };
6
+ export declare const TableContext: import('react').Context<TableContextType>;
7
+ interface TableProviderProps {
8
+ columns?: TableColumn[];
9
+ children: ReactNode;
10
+ }
11
+ export declare const TableProvider: FC<TableProviderProps>;
12
+ export {};
@@ -0,0 +1,4 @@
1
+ import { FC } from 'react';
2
+ import { TableBodyProps } from '../props';
3
+ declare const TableBody: FC<TableBodyProps>;
4
+ export default TableBody;
@@ -0,0 +1,4 @@
1
+ import { FC } from 'react';
2
+ import { TableCellProps } from '../props';
3
+ declare const TableCell: FC<TableCellProps>;
4
+ export default TableCell;
@@ -0,0 +1,4 @@
1
+ import { FC } from 'react';
2
+ import { TableFootProps } from '../props';
3
+ declare const TableFoot: FC<TableFootProps>;
4
+ export default TableFoot;
@@ -0,0 +1,7 @@
1
+ import { FC } from 'react';
2
+ import { TableColumn } from '../props';
3
+ type TableHeadProps = {
4
+ columns?: TableColumn[];
5
+ };
6
+ declare const TableHead: FC<TableHeadProps>;
7
+ export default TableHead;
@@ -0,0 +1,4 @@
1
+ import { FC } from 'react';
2
+ import { TableWrapperProps } from '../props';
3
+ declare const TableWrapper: FC<TableWrapperProps>;
4
+ export default TableWrapper;
@@ -0,0 +1,8 @@
1
+ import { default as TableBody } from './components/TableBody';
2
+ import { default as TableCell } from './components/TableCell';
3
+ import { default as TableFoot } from './components/TableFoot';
4
+ import { default as TableHead } from './components/TableHead';
5
+ import { default as TableWrapper } from './components/TableWrapper';
6
+ import { TableContext, TableProvider } from './TableContext';
7
+ export { TableWrapper, TableHead, TableBody, TableFoot, TableCell, TableContext, TableProvider };
8
+ export default TableWrapper;
@@ -0,0 +1,13 @@
1
+ "use client";
2
+ import { a, c, d, b, T, e } from "../../TableHead-C2zQ4jce.js";
3
+ import { T as TableWrapper } from "../../TableWrapper-C8SpplcL.js";
4
+ export {
5
+ a as TableBody,
6
+ c as TableCell,
7
+ d as TableContext,
8
+ b as TableFoot,
9
+ T as TableHead,
10
+ e as TableProvider,
11
+ TableWrapper,
12
+ TableWrapper as default
13
+ };
@@ -0,0 +1,30 @@
1
+ import { HTMLAttributes, ReactNode, ReactElement } from 'react';
2
+ import { PatternProps } from '../../foundations/PatternProps';
3
+ export type TableColumn = {
4
+ key: string;
5
+ label: ReactNode;
6
+ align?: 'left' | 'right';
7
+ };
8
+ export interface TableCellProps extends PatternProps, HTMLAttributes<HTMLTableCellElement> {
9
+ children: ReactNode;
10
+ align?: 'left' | 'right';
11
+ colSpan?: number;
12
+ as?: 'td' | 'th';
13
+ scope?: string;
14
+ }
15
+ export interface TableHeadProps {
16
+ columns: TableColumn[];
17
+ }
18
+ export interface TableBodyProps {
19
+ rows: Array<{
20
+ key: string;
21
+ cells: TableCellProps[];
22
+ }>;
23
+ sideHeader?: boolean;
24
+ }
25
+ export interface TableFootProps {
26
+ cells: TableCellProps[];
27
+ }
28
+ export interface TableWrapperProps extends PatternProps, HTMLAttributes<HTMLDivElement> {
29
+ children?: ReactElement | ReactElement[];
30
+ }
@@ -0,0 +1,8 @@
1
+ export declare const TableWrapperDiv: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
2
+ export declare const TableStyled: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').TableHTMLAttributes<HTMLTableElement>, HTMLTableElement>, never>> & string;
3
+ export declare const TableHeadStyled: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLTableSectionElement>, HTMLTableSectionElement>, never>> & string;
4
+ export declare const TableRowStyled: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLTableRowElement>, HTMLTableRowElement>, never>> & string;
5
+ export declare const TableCellStyled: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').TdHTMLAttributes<HTMLTableDataCellElement>, HTMLTableDataCellElement>, {
6
+ align: "left" | "right";
7
+ as: "td" | "th";
8
+ }>> & string;
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import "react/jsx-runtime";
3
- import { T } from "../../index-BjtnAuPr.js";
4
- import "../../index-B2VrT4fo.js";
3
+ import { T } from "../../index-DLvMM1Dq.js";
4
+ import "../ScreenreaderOnly/index.js";
5
5
  import "../../renderInlineRichTextFromOpenText-RvOG3QbI.js";
6
6
  export {
7
7
  T as default
@@ -1,10 +1,10 @@
1
1
  "use client";
2
2
  import "react/jsx-runtime";
3
- import { a, T } from "../../index-7A9g1r9L.js";
3
+ import { a, T } from "../../index-CifS-Z_9.js";
4
4
  import "../../tags-38kBhOn6.js";
5
5
  import "../../Spacing-BMQelJYr.js";
6
6
  import "../../renderInlineRichTextFromOpenText-RvOG3QbI.js";
7
- import "../../styled-DJWrbsIZ.js";
7
+ import "../../styled-BYYivuzh.js";
8
8
  export {
9
9
  a as TextListItem,
10
10
  T as default
@@ -20,9 +20,9 @@ import { getTextColor } from "../../foundations/token/getTextColor/index.js";
20
20
  import { a as colorBackgroundSubtle } from "../../BackgroundColor-DSOSZvNi.js";
21
21
  import { a as colorBorderNeutral, c as colorBorderFocus, b as colorBorderUnselected, d as colorBorderSuccess, e as colorBorderCritical } from "../../BorderColor-CYdSW9dg.js";
22
22
  import { b as borderRadiusMd } from "../../BorderRadius-ClUShVLu.js";
23
- import { t as textHeadingXs } from "../../HeadingSize-CfCRn3Lh.js";
23
+ import { a as textHeadingXs } from "../../HeadingSize-CqqUYZWV.js";
24
24
  import { c as colorTextPlaceholder, a as colorTextNeutral } from "../../TextColor-DsntmDNw.js";
25
- import { a as filterProps } from "../../filterProps-CTn92eZw.js";
25
+ import { a as filterProps } from "../../filterProps-BWnAPYBL.js";
26
26
  const TextareaWrapperStyled = styled.div.withConfig({
27
27
  shouldForwardProp: filterProps(),
28
28
  displayName: "TextareaWrapperStyled",
@@ -6,9 +6,9 @@ import FormHelperLabel from "../FormHelperLabel/index.js";
6
6
  import FormHelperMessage from "../FormHelperMessage/index.js";
7
7
  import FormHelperStatusIcon from "../FormHelperStatusIcon/index.js";
8
8
  import { b as iconSizeSm } from "../../props-7dcsjRUx.js";
9
- import "../../styled-RnVr222F.js";
9
+ import "../../styled-B1bxWqtW.js";
10
10
  import "../Input/index.js";
11
- import { a as InputStyled, I as InputWrapperStyled } from "../../styled-BTBLpB_G.js";
11
+ import { a as InputStyled, I as InputWrapperStyled } from "../../styled-BQGCfF-s.js";
12
12
  import { a as spacingMd, b as spacingXs } from "../../Spacing-BMQelJYr.js";
13
13
  import { bm as ClockIcon } from "../../_5gPlusIcon-CnxmOo1u.js";
14
14
  import styled from "styled-components";
@@ -5,7 +5,7 @@ import { createPortal } from "react-dom";
5
5
  import ButtonGroup from "../ButtonGroup/index.js";
6
6
  import Heading from "../Heading/index.js";
7
7
  import { a as fontWeightBold } from "../../FontWeight-C2pGs7aR.js";
8
- import { a as textHeadingMd } from "../../HeadingSize-CfCRn3Lh.js";
8
+ import { t as textHeadingMd } from "../../HeadingSize-CqqUYZWV.js";
9
9
  import { a as spacingMd, s as spacingNone } from "../../Spacing-BMQelJYr.js";
10
10
  import styled from "styled-components";
11
11
  import Card from "../Card/index.js";
@@ -19,7 +19,7 @@ import { getSpacing } from "../../foundations/token/getSpacing/index.js";
19
19
  import { d as colorBackgroundOverlayStatic } from "../../BackgroundColor-DSOSZvNi.js";
20
20
  import { a as borderWidthFocus } from "../../BorderWidth-eg_mz82k.js";
21
21
  import { g as getCssVar } from "../../getCssVar-BP6T9pFM.js";
22
- import { a as flexOrientationVertical } from "../../styled-CyZvsdJs.js";
22
+ import { a as flexOrientationVertical } from "../../styled-O5mL4jlL.js";
23
23
  const TrayOverlayStyled = styled("div").withConfig({
24
24
  displayName: "TrayOverlayStyled",
25
25
  componentId: "sc-os3mq3-0"
@@ -1,22 +1,23 @@
1
1
  "use client";
2
2
  import "react/jsx-runtime";
3
3
  import "@contentful/live-preview/react";
4
- import "../index-B2VrT4fo.js";
4
+ import "../components/ScreenreaderOnly/index.js";
5
5
  import "../components/FootnoteLink/index.js";
6
6
  import "html-react-parser";
7
7
  import "../components/Body/index.js";
8
- import "../styled-jl0239KS.js";
8
+ import "../styled-BXtzJJFu.js";
9
9
  import "../components/Grid/index.js";
10
10
  import "react";
11
- import "../styled-Djetw1lK.js";
12
- import "../styled-VAsSnb5y.js";
11
+ import "../styled-Cz2kpbgE.js";
12
+ import "../styled-Dmb8-99g.js";
13
13
  import "../NotificationErrorIcon-DMnAJgPN.js";
14
- import "../styled-RnVr222F.js";
15
- import "../styled-B-_SmQSA.js";
14
+ import "../styled-B1bxWqtW.js";
15
+ import "../styled-BBO2jrba.js";
16
16
  import "../hooks/useLinkComponent/index.js";
17
- import "../styled-SllFJc7o.js";
17
+ import "../styled-BBG87P4U.js";
18
18
  import "../styled-BlHKbHF4.js";
19
- import "../styled-DOK4C5Ml.js";
20
- import "../styled-D8a-ap4J.js";
19
+ import "../styled-VuUKI7PE.js";
20
+ import "../styled-BKWEE3dx.js";
21
21
  import "../components/InlineLink/index.js";
22
- import "../styled-DJWrbsIZ.js";
22
+ import "../TableHead-C2zQ4jce.js";
23
+ import "../styled-BYYivuzh.js";
@@ -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-BobPnbKM.js";
4
+ import { L } from "../../mapContentToComponents-DLxIwtHo.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-BobPnbKM.js";
4
+ import { m as mapContentToComponents } from "../../mapContentToComponents-DLxIwtHo.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-BobPnbKM.js";
4
+ import { m as mapContentToComponents } from "../../mapContentToComponents-DLxIwtHo.js";
5
5
  const Renderer = ({
6
6
  content,
7
7
  isDraftMode
@@ -1,5 +1,5 @@
1
1
  import { css } from "styled-components";
2
- import { l as loadingSpinnerOverlayCssVar, j as loadingSpinnerOverlays } from "./styled-U9du2n1i.js";
2
+ import { l as loadingSpinnerOverlayCssVar, j as loadingSpinnerOverlays } from "./styled-Du4LgXoA.js";
3
3
  import { c as breakpoint_medium, a as breakpoint_large } from "./index-Ck2bCrhT.js";
4
4
  const colorVodafoneRed = "colorVodafoneRed";
5
5
  const colorVodafoneRedTint = "colorVodafoneRedTint";
@@ -0,0 +1,17 @@
1
+ const propsNotPassToDomDefault = ["accordionType", "activeId", "activeIndex", "setActiveId", "align", "animated", "appearance", "aspectRatio", "autoLayout", "apiKey", "badge", "border", "borderBottom", "bottomSpacing", "buttonLink", "buttons", "coloringMode", "colorSwatch", "component", "contentGridDesktopColumns", "corners", "coversFullPage", "description", "elevation", "expanded", "filterItems", "footnote", "gapSpacing", "grow", "handleOnClick", "handleOnToogle", "hasOverlay", "heading", "heightSm", "heightMd", "heightLg", "horizontalAlignment", "icon", "iconAlign", "iconName", "iconPosition", "images", "internal", "isActive", "isChecked", "isDisabled", "isFullscreen", "isInHoverRange", "isLastItemInList", "isOpen", "isOrdered", "isSelected", "isTransparentBackground", "items", "jumpToClickedItem", "justify", "justifyHorizontal", "label", "lg", "loadingSpinnerChild", "mapId", "md", "message", "more", "needsBorder", "nextAriaLabel", "notificationType", "objectFit", "objectPosition", "offset", "onUpdate", "openMultiple", "orientation", "padding", "prefix", "prefixWeight", "prevAriaLabel", "price", "productId", "promoPrice", "screenReaderInstruction", "showList", "size", "sm", "spacing", "spinnerType", "status", "stretch", "strikePrice", "suffix", "tag", "textContent", "uid", "variant", "verticalPadding", "viewportHeight", "weight", "width"];
2
+ const filterProps = (propsNotPassToDom = []) => {
3
+ const shouldForwardProp = (prop) => {
4
+ if ("string" !== typeof prop) {
5
+ return false;
6
+ }
7
+ return ![...propsNotPassToDom, ...propsNotPassToDomDefault].includes(prop);
8
+ };
9
+ return shouldForwardProp;
10
+ };
11
+ const filterPropsForUnstyledComponent = (props) => {
12
+ return Object.fromEntries(Object.entries(props).filter(([key]) => !propsNotPassToDomDefault.includes(key)));
13
+ };
14
+ export {
15
+ filterProps as a,
16
+ filterPropsForUnstyledComponent as f
17
+ };
@@ -1,6 +1,6 @@
1
1
  "use client";
2
2
  import { createGlobalStyle } from "styled-components";
3
- import { c as cssVars } from "../../cssVars-C3-c3zhv.js";
3
+ import { c as cssVars } from "../../cssVars-CR3xqdPx.js";
4
4
  const cssReset = `
5
5
  /**
6
6
  * @TODO Das gehört nicht in global style
@@ -1,12 +1,12 @@
1
1
  import { jsx, jsxs } from "react/jsx-runtime";
2
- import { a as ButtonIconStyled } from "./styled-q7r_5eaz.js";
2
+ import { a as ButtonIconStyled } from "./styled-Dgv3RBlg.js";
3
3
  import { b as iconSizeSm } from "./props-7dcsjRUx.js";
4
- import "./styled-RnVr222F.js";
4
+ import "./styled-B1bxWqtW.js";
5
5
  import { r as renderInlineRichTextFromOpenText } from "./renderInlineRichTextFromOpenText-RvOG3QbI.js";
6
6
  import styled from "styled-components";
7
7
  import { getBottomSpacing } from "./foundations/token/getBottomSpacing/index.js";
8
8
  import { s as spacingNone, b as spacingXs, a as spacingMd } from "./Spacing-BMQelJYr.js";
9
- import { a as filterProps } from "./filterProps-CTn92eZw.js";
9
+ import { a as filterProps } from "./filterProps-BWnAPYBL.js";
10
10
  import forcedColors from "./foundations/media-query/forcedColors/index.js";
11
11
  import { getBodySize } from "./foundations/token/getBodySize/index.js";
12
12
  import { getBorderColor } from "./foundations/token/getBorderColor/index.js";
@@ -1,9 +1,9 @@
1
1
  import { jsx, jsxs } from "react/jsx-runtime";
2
2
  import { b as iconSizeSm } from "./props-7dcsjRUx.js";
3
- import "./styled-RnVr222F.js";
4
- import { l as leftPosition, a as ButtonIconStyled, b as buttonHeight, p as primaryAppearance } from "./styled-q7r_5eaz.js";
3
+ import "./styled-B1bxWqtW.js";
4
+ import { l as leftPosition, a as ButtonIconStyled, b as buttonHeight, p as primaryAppearance } from "./styled-Dgv3RBlg.js";
5
5
  import { useLinkComponent } from "./hooks/useLinkComponent/index.js";
6
- import { a as filterProps, f as filterPropsForUnstyledComponent } from "./filterProps-CTn92eZw.js";
6
+ import { a as filterProps, f as filterPropsForUnstyledComponent } from "./filterProps-BWnAPYBL.js";
7
7
  import { r as renderInlineRichTextFromOpenText } from "./renderInlineRichTextFromOpenText-RvOG3QbI.js";
8
8
  import { s as sanitizeLinkProps } from "./sanitizeLinkProps-D2Kkovy1.js";
9
9
  import styled from "styled-components";
@@ -1,15 +1,17 @@
1
- import { jsx, Fragment } from "react/jsx-runtime";
1
+ import { jsx, jsxs, Fragment } from "react/jsx-runtime";
2
2
  import { cloneElement } from "react";
3
3
  import parse, { Element, domToReact } from "html-react-parser";
4
4
  import Body from "./components/Body/index.js";
5
5
  import FootnoteLink from "./components/FootnoteLink/index.js";
6
6
  import Heading from "./components/Heading/index.js";
7
7
  import InlineLink from "./components/InlineLink/index.js";
8
+ import { T as TableHead, a as TableBody, b as TableFoot } from "./TableHead-C2zQ4jce.js";
9
+ import { T as TableWrapper } from "./TableWrapper-C8SpplcL.js";
8
10
  import { k as headingHtmlTags, o as olTagName, q as strongTagName, r as supTagName, u as ulTagName } from "./tags-38kBhOn6.js";
9
11
  import { s as spacingNone } from "./Spacing-BMQelJYr.js";
10
12
  import { r as renderInlineRichTextFromOpenText } from "./renderInlineRichTextFromOpenText-RvOG3QbI.js";
11
- import { T as TextListItemStyled, a as TextListStyled } from "./styled-DJWrbsIZ.js";
12
- import { t as textHeadingXs, b as textHeadingSm, a as textHeadingMd, c as textHeadingLg, d as textHeadingXl } from "./HeadingSize-CfCRn3Lh.js";
13
+ import { T as TextListItemStyled, a as TextListStyled } from "./styled-BYYivuzh.js";
14
+ import { a as textHeadingXs, b as textHeadingSm, t as textHeadingMd, c as textHeadingLg, d as textHeadingXl } from "./HeadingSize-CqqUYZWV.js";
13
15
  import { a as textBodySm } from "./TextBodySize-BcZR9mh2.js";
14
16
  const mapSizeToTag = {
15
17
  h1: textHeadingXl,
@@ -36,6 +38,75 @@ const getOptions = (paragraphSpacing, additionalProps = {}) => {
36
38
  if ("ul" === domNode.name) {
37
39
  return /* @__PURE__ */ jsx(TextList, { ...additionalProps.ul, children: domToReact(domNode.children, options) });
38
40
  }
41
+ if (domNode.name === "table") {
42
+ const thead = domNode.children.find((child) => child instanceof Element && child.name === "thead");
43
+ const tbody = domNode.children.find((child) => child instanceof Element && child.name === "tbody");
44
+ const tfoot = domNode.children.find((child) => child instanceof Element && child.name === "tfoot");
45
+ let columns = [];
46
+ if (thead) {
47
+ const tr = thead.children.find((child) => child instanceof Element && child.name === "tr");
48
+ if (tr) {
49
+ columns = tr.children.filter((child) => child instanceof Element && child.name === "th").map((th, i) => {
50
+ const attribs = th.attribs || {};
51
+ const align = attribs.align === "right" ? "right" : attribs.align === "left" ? "left" : void 0;
52
+ return {
53
+ key: attribs.key || `col${i}`,
54
+ label: domToReact(th.children, options),
55
+ align
56
+ };
57
+ });
58
+ }
59
+ }
60
+ let rows = [];
61
+ let sideHeader = false;
62
+ if (tbody) {
63
+ if (tbody.attribs && typeof tbody.attribs.sideheader !== "undefined") {
64
+ sideHeader = tbody.attribs.sideheader === "" || tbody.attribs.sideheader === "true";
65
+ }
66
+ rows = tbody.children.filter((child) => child instanceof Element && child.name === "tr").map((tr, i) => ({
67
+ key: `row${i}`,
68
+ cells: tr.children.filter((cell) => cell instanceof Element && (cell.name === "td" || cell.name === "th")).map((cell) => {
69
+ const attribs = cell.attribs || {};
70
+ const align = attribs.align === "right" ? "right" : attribs.align === "left" ? "left" : void 0;
71
+ const as = cell.name === "th" ? "th" : "td";
72
+ const colSpan = attribs.colspan ? parseInt(attribs.colspan, 10) : void 0;
73
+ const scope = attribs.scope;
74
+ return {
75
+ children: domToReact(cell.children, options),
76
+ align,
77
+ as,
78
+ colSpan,
79
+ scope
80
+ };
81
+ })
82
+ }));
83
+ }
84
+ let footCells = [];
85
+ if (tfoot) {
86
+ const tr = tfoot.children.find((child) => child instanceof Element && child.name === "tr");
87
+ if (tr) {
88
+ footCells = tr.children.filter((cell) => cell instanceof Element && (cell.name === "td" || cell.name === "th")).map((cell) => {
89
+ const attribs = cell.attribs || {};
90
+ const align = attribs.align === "right" ? "right" : attribs.align === "left" ? "left" : void 0;
91
+ const as = cell.name === "th" ? "th" : "td";
92
+ const colSpan = attribs.colspan ? parseInt(attribs.colspan, 10) : void 0;
93
+ const scope = attribs.scope;
94
+ return {
95
+ children: domToReact(cell.children, options),
96
+ align,
97
+ as,
98
+ colSpan,
99
+ scope
100
+ };
101
+ });
102
+ }
103
+ }
104
+ return /* @__PURE__ */ jsxs(TableWrapper, { children: [
105
+ /* @__PURE__ */ jsx(TableHead, { columns }),
106
+ /* @__PURE__ */ jsx(TableBody, { rows, sideHeader }),
107
+ footCells.length ? /* @__PURE__ */ jsx(TableFoot, { cells: footCells }) : void 0
108
+ ] });
109
+ }
39
110
  if ("strong" === domNode.name) {
40
111
  return /* @__PURE__ */ jsx(Body, { ...additionalProps.strong, tag: strongTagName, children: domToReact(domNode.children, options) });
41
112
  }
@@ -1,5 +1,5 @@
1
1
  import { jsx, jsxs } from "react/jsx-runtime";
2
- import { S as ScreenreaderOnly } from "./index-B2VrT4fo.js";
2
+ import ScreenreaderOnly from "./components/ScreenreaderOnly/index.js";
3
3
  import styled from "styled-components";
4
4
  import { getBottomSpacing } from "./foundations/token/getBottomSpacing/index.js";
5
5
  import { getFontWeight } from "./foundations/token/getFontWeight/index.js";
@@ -10,7 +10,7 @@ import { getTextDecoration } from "./foundations/token/getTextDecoration/index.j
10
10
  import { a as fontWeightBold, f as fontWeightRegular } from "./FontWeight-C2pGs7aR.js";
11
11
  import { a as spacingMd, s as spacingNone, b as spacingXs } from "./Spacing-BMQelJYr.js";
12
12
  import { g as colorTextCritical, a as colorTextNeutral } from "./TextColor-DsntmDNw.js";
13
- import { a as filterProps } from "./filterProps-CTn92eZw.js";
13
+ import { a as filterProps } from "./filterProps-BWnAPYBL.js";
14
14
  import { r as renderInlineRichTextFromOpenText } from "./renderInlineRichTextFromOpenText-RvOG3QbI.js";
15
15
  const priceOrientationHorizontal = "horizontal";
16
16
  const priceOrientationVertical = "vertical";
package/dist/index.d.ts CHANGED
@@ -10,6 +10,8 @@ export * from './components/TextList';
10
10
  export { default as TextList } from './components/TextList';
11
11
  export * from './components/TabularPrice';
12
12
  export { default as TabularPrice } from './components/TabularPrice';
13
+ export * from './components/Table';
14
+ export { default as Table } from './components/Table';
13
15
  export * from './components/TabGroup';
14
16
  export { default as TabGroup } from './components/TabGroup';
15
17
  export * from './components/Switch';