@dxc-technology/halstack-react 0.0.0-f54247d → 0.0.0-f6d6be5

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 (220) hide show
  1. package/BackgroundColorContext.d.ts +2 -2
  2. package/BackgroundColorContext.js +1 -1
  3. package/HalstackContext.d.ts +1337 -5
  4. package/HalstackContext.js +113 -72
  5. package/README.md +47 -0
  6. package/accordion/Accordion.d.ts +1 -1
  7. package/accordion/Accordion.js +14 -37
  8. package/accordion/Accordion.stories.tsx +104 -113
  9. package/accordion/Accordion.test.js +1 -1
  10. package/accordion/types.d.ts +2 -14
  11. package/accordion-group/AccordionGroup.d.ts +4 -3
  12. package/accordion-group/AccordionGroup.js +23 -44
  13. package/accordion-group/AccordionGroup.stories.tsx +77 -76
  14. package/accordion-group/AccordionGroup.test.js +7 -17
  15. package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
  16. package/accordion-group/AccordionGroupAccordion.js +43 -0
  17. package/accordion-group/types.d.ts +2 -14
  18. package/alert/Alert.js +4 -8
  19. package/alert/Alert.stories.tsx +28 -0
  20. package/alert/Alert.test.js +1 -1
  21. package/bleed/Bleed.stories.tsx +1 -0
  22. package/box/Box.d.ts +1 -1
  23. package/box/Box.js +7 -26
  24. package/box/Box.stories.tsx +38 -51
  25. package/box/Box.test.js +1 -1
  26. package/box/types.d.ts +0 -12
  27. package/bulleted-list/BulletedList.js +4 -2
  28. package/bulleted-list/BulletedList.stories.tsx +7 -1
  29. package/bulleted-list/types.d.ts +31 -4
  30. package/button/Button.d.ts +1 -1
  31. package/button/Button.js +48 -60
  32. package/button/Button.stories.tsx +151 -9
  33. package/button/Button.test.js +12 -1
  34. package/button/types.d.ts +7 -3
  35. package/card/Card.d.ts +1 -1
  36. package/card/Card.js +27 -45
  37. package/card/Card.stories.tsx +12 -42
  38. package/card/Card.test.js +1 -1
  39. package/card/types.d.ts +1 -7
  40. package/checkbox/Checkbox.js +3 -3
  41. package/checkbox/Checkbox.stories.tsx +52 -0
  42. package/checkbox/Checkbox.test.js +1 -1
  43. package/checkbox/types.d.ts +2 -2
  44. package/chip/Chip.js +28 -49
  45. package/chip/Chip.stories.tsx +121 -26
  46. package/chip/Chip.test.js +3 -5
  47. package/common/OpenSans.css +68 -80
  48. package/common/coreTokens.d.ts +146 -0
  49. package/common/coreTokens.js +167 -0
  50. package/common/utils.d.ts +1 -0
  51. package/common/utils.js +4 -4
  52. package/common/variables.d.ts +1490 -0
  53. package/common/variables.js +984 -1127
  54. package/date-input/Calendar.d.ts +1 -1
  55. package/date-input/Calendar.js +45 -45
  56. package/date-input/DateInput.js +74 -32
  57. package/date-input/DateInput.stories.tsx +183 -30
  58. package/date-input/DateInput.test.js +120 -37
  59. package/date-input/DatePicker.js +38 -52
  60. package/date-input/Icons.d.ts +6 -0
  61. package/date-input/Icons.js +75 -0
  62. package/date-input/YearPicker.d.ts +1 -1
  63. package/date-input/YearPicker.js +23 -12
  64. package/date-input/types.d.ts +6 -8
  65. package/dialog/Dialog.d.ts +1 -1
  66. package/dialog/Dialog.js +55 -86
  67. package/dialog/Dialog.stories.tsx +145 -217
  68. package/dialog/Dialog.test.js +302 -3
  69. package/dialog/types.d.ts +0 -13
  70. package/dropdown/Dropdown.js +5 -8
  71. package/dropdown/Dropdown.stories.tsx +210 -84
  72. package/dropdown/Dropdown.test.js +3 -2
  73. package/dropdown/DropdownMenu.js +12 -18
  74. package/dropdown/DropdownMenuItem.js +4 -17
  75. package/dropdown/types.d.ts +3 -3
  76. package/file-input/FileInput.js +4 -8
  77. package/file-input/FileInput.stories.tsx +85 -2
  78. package/file-input/FileInput.test.js +1 -42
  79. package/file-input/FileItem.js +3 -2
  80. package/file-input/types.d.ts +1 -1
  81. package/flex/Flex.js +4 -2
  82. package/flex/Flex.stories.tsx +35 -26
  83. package/flex/types.d.ts +70 -5
  84. package/footer/Footer.d.ts +1 -1
  85. package/footer/Footer.js +44 -64
  86. package/footer/Footer.stories.tsx +36 -21
  87. package/footer/Footer.test.js +16 -26
  88. package/footer/types.d.ts +10 -12
  89. package/grid/Grid.d.ts +7 -0
  90. package/grid/Grid.js +91 -0
  91. package/grid/Grid.stories.tsx +219 -0
  92. package/grid/types.d.ts +115 -0
  93. package/header/Header.d.ts +4 -3
  94. package/header/Header.js +20 -49
  95. package/header/Header.stories.tsx +115 -36
  96. package/header/Header.test.js +2 -2
  97. package/header/types.d.ts +1 -15
  98. package/heading/Heading.js +1 -1
  99. package/heading/Heading.test.js +1 -1
  100. package/image/Image.d.ts +4 -0
  101. package/image/Image.js +85 -0
  102. package/image/Image.stories.tsx +127 -0
  103. package/image/types.d.ts +72 -0
  104. package/inset/Inset.stories.tsx +2 -1
  105. package/layout/ApplicationLayout.d.ts +5 -5
  106. package/layout/ApplicationLayout.js +15 -12
  107. package/layout/ApplicationLayout.stories.tsx +1 -1
  108. package/layout/Icons.d.ts +7 -4
  109. package/layout/Icons.js +52 -56
  110. package/layout/types.d.ts +2 -3
  111. package/link/Link.js +3 -3
  112. package/link/Link.stories.tsx +60 -0
  113. package/link/Link.test.js +2 -4
  114. package/link/types.d.ts +2 -2
  115. package/main.d.ts +4 -2
  116. package/main.js +17 -1
  117. package/{tabs-nav → nav-tabs}/NavTabs.d.ts +2 -2
  118. package/{tabs-nav → nav-tabs}/NavTabs.js +8 -11
  119. package/{tabs-nav → nav-tabs}/NavTabs.stories.tsx +110 -6
  120. package/{tabs-nav → nav-tabs}/NavTabs.test.js +1 -1
  121. package/{tabs-nav → nav-tabs}/Tab.js +48 -32
  122. package/{tabs-nav → nav-tabs}/types.d.ts +8 -9
  123. package/nav-tabs/types.js +5 -0
  124. package/number-input/NumberInput.d.ts +7 -0
  125. package/number-input/NumberInput.js +6 -4
  126. package/number-input/NumberInput.test.js +279 -96
  127. package/package.json +3 -3
  128. package/paginator/Icons.d.ts +5 -0
  129. package/paginator/Icons.js +16 -28
  130. package/paginator/Paginator.js +7 -15
  131. package/paginator/Paginator.stories.tsx +24 -0
  132. package/paginator/Paginator.test.js +57 -47
  133. package/paragraph/Paragraph.d.ts +3 -4
  134. package/paragraph/Paragraph.js +5 -5
  135. package/password-input/Icons.d.ts +6 -0
  136. package/password-input/Icons.js +39 -0
  137. package/password-input/PasswordInput.js +35 -82
  138. package/password-input/PasswordInput.stories.tsx +1 -0
  139. package/password-input/PasswordInput.test.js +28 -35
  140. package/progress-bar/ProgressBar.d.ts +2 -2
  141. package/progress-bar/ProgressBar.js +5 -5
  142. package/progress-bar/ProgressBar.stories.jsx +35 -2
  143. package/progress-bar/ProgressBar.test.js +1 -1
  144. package/progress-bar/types.d.ts +4 -3
  145. package/quick-nav/QuickNav.stories.tsx +14 -0
  146. package/radio-group/Radio.js +10 -10
  147. package/radio-group/RadioGroup.js +8 -10
  148. package/radio-group/RadioGroup.stories.tsx +131 -18
  149. package/radio-group/RadioGroup.test.js +1 -1
  150. package/resultsetTable/ResultsetTable.js +2 -2
  151. package/resultsetTable/ResultsetTable.test.js +18 -23
  152. package/resultsetTable/types.d.ts +3 -3
  153. package/select/Listbox.d.ts +1 -1
  154. package/select/Listbox.js +5 -34
  155. package/select/Option.js +11 -24
  156. package/select/Select.js +56 -35
  157. package/select/Select.stories.tsx +495 -148
  158. package/select/Select.test.js +80 -85
  159. package/select/types.d.ts +2 -2
  160. package/sidenav/Icons.d.ts +7 -0
  161. package/sidenav/Icons.js +51 -0
  162. package/sidenav/Sidenav.d.ts +2 -2
  163. package/sidenav/Sidenav.js +66 -96
  164. package/sidenav/Sidenav.stories.tsx +165 -63
  165. package/sidenav/types.d.ts +21 -18
  166. package/slider/Slider.js +6 -7
  167. package/slider/Slider.stories.tsx +57 -0
  168. package/slider/Slider.test.js +1 -1
  169. package/slider/types.d.ts +2 -2
  170. package/spinner/Spinner.js +17 -23
  171. package/spinner/Spinner.stories.jsx +53 -27
  172. package/spinner/Spinner.test.js +1 -1
  173. package/switch/Switch.js +3 -3
  174. package/switch/Switch.stories.tsx +33 -0
  175. package/switch/Switch.test.js +1 -1
  176. package/switch/types.d.ts +2 -2
  177. package/table/Table.js +2 -2
  178. package/table/Table.stories.jsx +80 -1
  179. package/table/Table.test.js +1 -1
  180. package/tabs/Tab.js +12 -15
  181. package/tabs/Tabs.js +11 -17
  182. package/tabs/Tabs.stories.tsx +45 -5
  183. package/tabs/Tabs.test.js +4 -5
  184. package/tabs/types.d.ts +2 -2
  185. package/tag/Tag.js +7 -9
  186. package/tag/Tag.stories.tsx +14 -1
  187. package/tag/Tag.test.js +1 -1
  188. package/text-input/Suggestion.js +34 -7
  189. package/text-input/TextInput.js +71 -91
  190. package/text-input/TextInput.stories.tsx +93 -5
  191. package/text-input/TextInput.test.js +125 -26
  192. package/textarea/Textarea.js +3 -4
  193. package/textarea/Textarea.stories.jsx +60 -1
  194. package/textarea/Textarea.test.js +2 -4
  195. package/toggle-group/ToggleGroup.d.ts +2 -2
  196. package/toggle-group/ToggleGroup.js +85 -59
  197. package/toggle-group/ToggleGroup.stories.tsx +48 -3
  198. package/toggle-group/ToggleGroup.test.js +38 -24
  199. package/toggle-group/types.d.ts +22 -13
  200. package/typography/Typography.d.ts +2 -2
  201. package/typography/Typography.js +14 -113
  202. package/typography/Typography.stories.tsx +1 -1
  203. package/useTheme.d.ts +1242 -1
  204. package/useTheme.js +1 -1
  205. package/useTranslatedLabels.d.ts +84 -1
  206. package/utils/BaseTypography.d.ts +21 -0
  207. package/utils/BaseTypography.js +108 -0
  208. package/utils/FocusLock.d.ts +13 -0
  209. package/utils/FocusLock.js +138 -0
  210. package/wizard/Wizard.js +2 -2
  211. package/wizard/Wizard.stories.tsx +20 -0
  212. package/wizard/Wizard.test.js +1 -1
  213. package/wizard/types.d.ts +5 -6
  214. package/card/ice-cream.jpg +0 -0
  215. package/number-input/NumberInputContext.d.ts +0 -4
  216. package/number-input/NumberInputContext.js +0 -19
  217. package/number-input/numberInputContextTypes.d.ts +0 -19
  218. /package/{tabs-nav → grid}/types.js +0 -0
  219. /package/{number-input/numberInputContextTypes.js → image/types.js} +0 -0
  220. /package/{tabs-nav → nav-tabs}/Tab.d.ts +0 -0
package/footer/Footer.js CHANGED
@@ -17,7 +17,7 @@ var _react = _interopRequireWildcard(require("react"));
17
17
 
18
18
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
19
19
 
20
- var _variables = require("../common/variables.js");
20
+ var _variables = require("../common/variables");
21
21
 
22
22
  var _useTheme = _interopRequireDefault(require("../useTheme"));
23
23
 
@@ -27,7 +27,9 @@ var _BackgroundColorContext = require("../BackgroundColorContext");
27
27
 
28
28
  var _Icons = require("./Icons");
29
29
 
30
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14;
30
+ var _Flex = _interopRequireDefault(require("../flex/Flex"));
31
+
32
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10;
31
33
 
32
34
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
33
35
 
@@ -38,7 +40,6 @@ var DxcFooter = function DxcFooter(_ref) {
38
40
  bottomLinks = _ref.bottomLinks,
39
41
  copyright = _ref.copyright,
40
42
  children = _ref.children,
41
- padding = _ref.padding,
42
43
  margin = _ref.margin,
43
44
  _ref$tabIndex = _ref.tabIndex,
44
45
  tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
@@ -57,71 +58,56 @@ var DxcFooter = function DxcFooter(_ref) {
57
58
  }
58
59
 
59
60
  return colorsTheme.footer.logo;
60
- }, [colorsTheme.footer.logo]);
61
- var socialLink = socialLinks === null || socialLinks === void 0 ? void 0 : socialLinks.map(function (link, index) {
61
+ }, [colorsTheme]);
62
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
63
+ theme: colorsTheme.footer
64
+ }, /*#__PURE__*/_react["default"].createElement(FooterContainer, {
65
+ margin: margin
66
+ }, /*#__PURE__*/_react["default"].createElement(_Flex["default"], {
67
+ justifyContent: "space-between",
68
+ alignItems: "center",
69
+ wrap: "wrap",
70
+ gap: "1.5rem"
71
+ }, /*#__PURE__*/_react["default"].createElement(LogoContainer, null, footerLogo), /*#__PURE__*/_react["default"].createElement(_Flex["default"], null, socialLinks === null || socialLinks === void 0 ? void 0 : socialLinks.map(function (link, index) {
62
72
  return /*#__PURE__*/_react["default"].createElement(SocialAnchor, {
73
+ href: link.href,
63
74
  tabIndex: tabIndex,
75
+ title: link.title,
76
+ "aria-label": link.title,
64
77
  key: "social".concat(index).concat(link.href),
65
- index: index,
66
- href: link && link.href ? link.href : ""
67
- }, /*#__PURE__*/_react["default"].createElement(SocialIconContainer, null, typeof link.logo === "string" ? /*#__PURE__*/_react["default"].createElement(SocialIconImg, {
78
+ index: index
79
+ }, /*#__PURE__*/_react["default"].createElement(SocialIconContainer, null, typeof link.logo === "string" ? /*#__PURE__*/_react["default"].createElement("img", {
68
80
  src: link.logo
69
81
  }) : link.logo));
70
- });
71
- var bottomLink = bottomLinks === null || bottomLinks === void 0 ? void 0 : bottomLinks.map(function (link, index) {
82
+ }))), /*#__PURE__*/_react["default"].createElement(ChildComponents, null, /*#__PURE__*/_react["default"].createElement(_BackgroundColorContext.BackgroundColorProvider, {
83
+ color: colorsTheme.footer.backgroundColor
84
+ }, children)), /*#__PURE__*/_react["default"].createElement(BottomContainer, null, /*#__PURE__*/_react["default"].createElement(BottomLinks, null, bottomLinks === null || bottomLinks === void 0 ? void 0 : bottomLinks.map(function (link, index) {
72
85
  return /*#__PURE__*/_react["default"].createElement("span", {
73
86
  key: "bottom".concat(index).concat(link.text)
74
87
  }, /*#__PURE__*/_react["default"].createElement(BottomLink, {
75
- tabIndex: tabIndex,
76
- href: link && link.href ? link.href : ""
77
- }, link && link.text ? link.text : ""), /*#__PURE__*/_react["default"].createElement(Point, {
78
- index: index
79
- }, "\xB7"));
80
- });
81
- return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
82
- theme: colorsTheme.footer
83
- }, /*#__PURE__*/_react["default"].createElement(FooterContainer, {
84
- margin: margin
85
- }, /*#__PURE__*/_react["default"].createElement(FooterHeader, null, /*#__PURE__*/_react["default"].createElement(LogoContainer, null, footerLogo), /*#__PURE__*/_react["default"].createElement(SocialLinkContainer, null, socialLink)), /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement(ChildComponents, {
86
- padding: padding
87
- }, /*#__PURE__*/_react["default"].createElement(_BackgroundColorContext.BackgroundColorProvider, {
88
- color: colorsTheme.footer.backgroundColor
89
- }, children)), /*#__PURE__*/_react["default"].createElement(FooterFooter, {
90
- className: "footerFooter"
91
- }, /*#__PURE__*/_react["default"].createElement(BottomLinks, null, bottomLink), /*#__PURE__*/_react["default"].createElement(Copyright, null, copyright || translatedLabels.footer.copyrightText(new Date().getFullYear()))))));
88
+ href: link.href,
89
+ tabIndex: tabIndex
90
+ }, link.text));
91
+ })), /*#__PURE__*/_react["default"].createElement(Copyright, null, copyright || translatedLabels.footer.copyrightText(new Date().getFullYear())))));
92
92
  };
93
93
 
94
- var FooterContainer = _styledComponents["default"].footer(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n @media (min-width: ", "rem) {\n padding: 24px 36px 24px 36px;\n }\n\n @media (max-width: ", "rem) {\n //mobile phones\n padding: 20px;\n }\n\n background-color: ", ";\n margin-top: ", ";\n width: 100%;\n box-sizing: border-box;\n min-height: ", ";\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n"])), _variables.responsiveSizes.small, _variables.responsiveSizes.small, function (props) {
95
- return props.theme.backgroundColor;
94
+ var FooterContainer = _styledComponents["default"].footer(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n width: 100%;\n min-height: ", ";\n margin-top: ", ";\n background-color: ", ";\n\n @media (min-width: ", "rem) {\n padding: 24px 36px 24px 36px;\n }\n @media (max-width: ", "rem) {\n padding: 20px;\n }\n"])), function (props) {
95
+ return props.theme.height;
96
96
  }, function (props) {
97
97
  return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
98
98
  }, function (props) {
99
- return props.theme.height;
100
- });
101
-
102
- var FooterHeader = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n justify-content: space-between;\n flex-wrap: wrap;\n row-gap: 24px;\n"])));
99
+ return props.theme.backgroundColor;
100
+ }, _variables.responsiveSizes.small, _variables.responsiveSizes.small);
103
101
 
104
- var FooterFooter = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n justify-content: space-between;\n align-items: flex-end;\n\n @media (min-width: ", "rem) {\n flex-direction: row;\n }\n\n @media (max-width: ", "rem) {\n //mobile phones\n flex-direction: column;\n align-items: center;\n }\n\n border-top: ", ";\n margin-top: 16px;\n"])), _variables.responsiveSizes.small, _variables.responsiveSizes.small, function (props) {
102
+ var BottomContainer = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n justify-content: space-between;\n align-items: flex-end;\n\n @media (min-width: ", "rem) {\n flex-direction: row;\n }\n @media (max-width: ", "rem) {\n flex-direction: column;\n align-items: center;\n }\n\n border-top: ", ";\n margin-top: 16px;\n"])), _variables.responsiveSizes.small, _variables.responsiveSizes.small, function (props) {
105
103
  return "".concat(props.theme.bottomLinksDividerThickness, " ").concat(props.theme.bottomLinksDividerStyle, " ").concat(props.theme.bottomLinksDividerColor);
106
104
  });
107
105
 
108
- var BottomLinks = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n padding-top: ", ";\n display: inline-flex;\n flex-wrap: wrap;\n\n @media (min-width: ", "rem) {\n max-width: 60%;\n }\n\n @media (max-width: ", "rem) {\n //mobile phones\n max-width: 100%;\n width: 100%;\n }\n\n & > span:last-child span {\n display: none;\n }\n align-self: center;\n"])), function (props) {
109
- return props.theme.bottomLinksDividerSpacing;
110
- }, _variables.responsiveSizes.small, _variables.responsiveSizes.small);
106
+ var ChildComponents = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n min-height: 16px;\n overflow: hidden;\n"])));
111
107
 
112
- var ChildComponents = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n min-height: 16px;\n padding: ", ";\n padding-top: ", ";\n padding-right: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n overflow: hidden;\n"])), function (props) {
113
- return props.padding && (0, _typeof2["default"])(props.padding) !== "object" ? _variables.spaces[props.padding] : "0px";
114
- }, function (props) {
115
- return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.top ? _variables.spaces[props.padding.top] : "";
116
- }, function (props) {
117
- return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.right ? _variables.spaces[props.padding.right] : "";
118
- }, function (props) {
119
- return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.bottom ? _variables.spaces[props.padding.bottom] : "";
108
+ var Copyright = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n padding-top: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n\n @media (min-width: ", "rem) {\n max-width: 40%;\n text-align: right;\n }\n\n @media (max-width: ", "rem) {\n max-width: 100%;\n width: 100%;\n text-align: left;\n }\n"])), function (props) {
109
+ return props.theme.bottomLinksDividerSpacing;
120
110
  }, function (props) {
121
- return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.left ? _variables.spaces[props.padding.left] : "";
122
- });
123
-
124
- var Copyright = _styledComponents["default"].div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n\n @media (min-width: ", "rem) {\n max-width: 40%;\n text-align: right;\n }\n\n @media (max-width: ", "rem) {\n //mobile phones\n max-width: 100%;\n width: 100%;\n text-align: left;\n }\n\n padding-top: ", ";\n"])), function (props) {
125
111
  return props.theme.copyrightFontFamily;
126
112
  }, function (props) {
127
113
  return props.theme.copyrightFontSize;
@@ -131,31 +117,25 @@ var Copyright = _styledComponents["default"].div(_templateObject6 || (_templateO
131
117
  return props.theme.copyrightFontWeight;
132
118
  }, function (props) {
133
119
  return props.theme.copyrightFontColor;
134
- }, _variables.responsiveSizes.small, _variables.responsiveSizes.small, function (props) {
135
- return props.theme.bottomLinksDividerSpacing;
136
- });
120
+ }, _variables.responsiveSizes.small, _variables.responsiveSizes.small);
137
121
 
138
- var LogoContainer = _styledComponents["default"].div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n max-height: ", ";\n width: ", ";\n"])), function (props) {
122
+ var LogoContainer = _styledComponents["default"].span(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n max-height: ", ";\n width: ", ";\n"])), function (props) {
139
123
  return props.theme.logoHeight;
140
124
  }, function (props) {
141
125
  return props.theme.logoWidth;
142
126
  });
143
127
 
144
- var LogoImg = _styledComponents["default"].img(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n max-height: ", ";\n width: ", ";\n"])), function (props) {
128
+ var LogoImg = _styledComponents["default"].img(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n max-height: ", ";\n width: ", ";\n"])), function (props) {
145
129
  return props.theme.logoHeight;
146
130
  }, function (props) {
147
131
  return props.theme.logoWidth;
148
132
  });
149
133
 
150
- var SocialLinkContainer = _styledComponents["default"].div(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-self: center;\n"])));
151
-
152
- var SocialAnchor = _styledComponents["default"].a(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2["default"])(["\n & {\n display: inline-flex;\n margin-left: ", ";\n }\n"])), function (props) {
134
+ var SocialAnchor = _styledComponents["default"].a(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n margin-left: ", ";\n border-radius: 4px;\n\n &:focus {\n outline: 2px solid #0095ff;\n outline-offset: 2px;\n }\n"])), function (props) {
153
135
  return props.index === 0 ? "0px" : props.theme.socialLinksGutter;
154
136
  });
155
137
 
156
- var SocialIconImg = _styledComponents["default"].img(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2["default"])([""])));
157
-
158
- var SocialIconContainer = _styledComponents["default"].div(_templateObject12 || (_templateObject12 = (0, _taggedTemplateLiteral2["default"])(["\n & {\n display: inline-flex;\n height: ", ";\n width: ", ";\n color: ", ";\n }\n\n overflow: hidden;\n img,\n svg {\n height: 100%;\n width: 100%;\n }\n"])), function (props) {
138
+ var SocialIconContainer = _styledComponents["default"].div(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n height: ", ";\n width: ", ";\n color: ", ";\n overflow: hidden;\n\n img,\n svg {\n height: 100%;\n width: 100%;\n }\n"])), function (props) {
159
139
  return props.theme.socialLinksSize;
160
140
  }, function (props) {
161
141
  return props.theme.socialLinksSize;
@@ -163,11 +143,11 @@ var SocialIconContainer = _styledComponents["default"].div(_templateObject12 ||
163
143
  return props.theme.socialLinksColor;
164
144
  });
165
145
 
166
- var Point = _styledComponents["default"].span(_templateObject13 || (_templateObject13 = (0, _taggedTemplateLiteral2["default"])(["\n margin: 0px 10px;\n color: ", ";\n"])), function (props) {
167
- return props.theme.bottomLinksFontColor;
168
- });
146
+ var BottomLinks = _styledComponents["default"].div(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n flex-wrap: wrap;\n align-self: center;\n padding-top: ", ";\n color: #fff;\n\n @media (min-width: ", "rem) {\n max-width: 60%;\n }\n @media (max-width: ", "rem) {\n max-width: 100%;\n width: 100%;\n }\n\n & > span:not(:first-child):before {\n content: \"\xB7\";\n padding: 0 0.5rem;\n }\n"])), function (props) {
147
+ return props.theme.bottomLinksDividerSpacing;
148
+ }, _variables.responsiveSizes.small, _variables.responsiveSizes.small);
169
149
 
170
- var BottomLink = _styledComponents["default"].a(_templateObject14 || (_templateObject14 = (0, _taggedTemplateLiteral2["default"])(["\n text-decoration: ", ";\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n"])), function (props) {
150
+ var BottomLink = _styledComponents["default"].a(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2["default"])(["\n text-decoration: ", ";\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n border-radius: 2px;\n\n &:focus {\n outline: 2px solid #0095ff;\n }\n"])), function (props) {
171
151
  return props.theme.bottomLinksTextDecoration;
172
152
  }, function (props) {
173
153
  return props.theme.bottomLinksFontColor;
@@ -2,6 +2,7 @@ import React from "react";
2
2
  import DxcFooter from "./Footer";
3
3
  import Title from "../../.storybook/components/Title";
4
4
  import ExampleContainer from "../../.storybook/components/ExampleContainer";
5
+ import { HalstackProvider } from "../HalstackContext";
5
6
 
6
7
  const social = [
7
8
  {
@@ -25,17 +26,20 @@ const social = [
25
26
  </g>
26
27
  </svg>
27
28
  ),
29
+ title: "Linkedin",
28
30
  },
29
31
  {
30
- href: "https://twitter.com/dxctechnology",
32
+ href: "https://x.com/dxctechnology",
31
33
  logo: (
32
- <svg viewBox="0 0 248 204" fill="currentColor">
34
+ <svg width="256" height="256" viewBox="0 0 256 256" fill="none" xmlns="http://www.w3.org/2000/svg">
35
+ <rect width="256" height="256" rx="40" fill="white" />
33
36
  <path
34
- fill="#1d9bf0"
35
- d="M221.95 51.29c.15 2.17.15 4.34.15 6.53 0 66.73-50.8 143.69-143.69 143.69v-.04c-27.44.04-54.31-7.82-77.41-22.64 3.99.48 8 .72 12.02.73 22.74.02 44.83-7.61 62.72-21.66-21.61-.41-40.56-14.5-47.18-35.07 7.57 1.46 15.37 1.16 22.8-.87-23.56-4.76-40.51-25.46-40.51-49.5v-.64c7.02 3.91 14.88 6.08 22.92 6.32C11.58 63.31 4.74 33.79 18.14 10.71c25.64 31.55 63.47 50.73 104.08 52.76-4.07-17.54 1.49-35.92 14.61-48.25 20.34-19.12 52.33-18.14 71.45 2.19 11.31-2.23 22.15-6.38 32.07-12.26-3.77 11.69-11.66 21.62-22.2 27.93 10.01-1.18 19.79-3.86 29-7.95-6.78 10.16-15.32 19.01-25.2 26.16z"
37
+ d="M140.192 118.205L187.848 64H176.556L135.158 111.056L102.117 64H64L113.975 135.163L64 192H75.2914L118.982 142.296L153.883 192H192L140.192 118.205ZM124.722 135.787L119.65 128.697L79.3634 72.3294H96.7094L129.232 117.837L134.282 124.927L176.551 184.076H159.205L124.722 135.787Z"
38
+ fill="#0F1419"
36
39
  />
37
40
  </svg>
38
41
  ),
42
+ title: "X",
39
43
  },
40
44
  {
41
45
  href: "https://www.facebook.com/DXCTechnology/",
@@ -62,6 +66,7 @@ const social = [
62
66
  </g>
63
67
  </svg>
64
68
  ),
69
+ title: "Facebook",
65
70
  },
66
71
  ];
67
72
 
@@ -71,8 +76,8 @@ const bottom = [
71
76
  text: "Linkedin",
72
77
  },
73
78
  {
74
- href: "https://twitter.com/dxctechnology",
75
- text: "Twitter",
79
+ href: "https://x.com/dxctechnology",
80
+ text: "X",
76
81
  },
77
82
  {
78
83
  href: "https://www.facebook.com/DXCTechnology/",
@@ -85,6 +90,15 @@ export default {
85
90
  component: DxcFooter,
86
91
  };
87
92
 
93
+ const opinionatedTheme = {
94
+ footer: {
95
+ baseColor: "#000000",
96
+ fontColor: "#ffffff",
97
+ accentColor: "#0095ff",
98
+ logo: "https://upload.wikimedia.org/wikipedia/commons/thumb/b/b8/2021_Facebook_icon.svg/2048px-2021_Facebook_icon.svg.png",
99
+ },
100
+ };
101
+
88
102
  export const Chromatic = () => (
89
103
  <>
90
104
  <ExampleContainer>
@@ -99,6 +113,14 @@ export const Chromatic = () => (
99
113
  </div>
100
114
  </DxcFooter>
101
115
  </ExampleContainer>
116
+ <ExampleContainer pseudoState="pseudo-focus">
117
+ <Title title="Focused bottom and social links" theme="light" level={4} />
118
+ <DxcFooter copyright="Copyright" socialLinks={social} bottomLinks={bottom}>
119
+ <div>
120
+ <a href="https://www.linkedin.com/company/dxctechnology">Linkedin</a>
121
+ </div>
122
+ </DxcFooter>
123
+ </ExampleContainer>
102
124
  <Title title="Margins" theme="light" level={2} />
103
125
  <ExampleContainer>
104
126
  <Title title="Xxsmall margin" theme="light" level={4} />
@@ -116,22 +138,15 @@ export const Chromatic = () => (
116
138
  <Title title="Xxlarge margin" theme="light" level={4} />
117
139
  <DxcFooter margin="xxlarge"></DxcFooter>
118
140
  </ExampleContainer>
119
- <Title title="Padding" theme="light" level={2} />
141
+ <Title title="Opinionated theme" theme="light" level={2} />
120
142
  <ExampleContainer>
121
- <Title title="Xxsmall padding" theme="light" level={4} />
122
- <DxcFooter padding="xxsmall"></DxcFooter>
123
- <Title title="Xsmall padding" theme="light" level={4} />
124
- <DxcFooter padding="xsmall"></DxcFooter>
125
- <Title title="Small padding" theme="light" level={4} />
126
- <DxcFooter padding="small"></DxcFooter>
127
- <Title title="Medium padding" theme="light" level={4} />
128
- <DxcFooter padding="medium"></DxcFooter>
129
- <Title title="Large padding" theme="light" level={4} />
130
- <DxcFooter padding="large"></DxcFooter>
131
- <Title title="Xlarge padding" theme="light" level={4} />
132
- <DxcFooter padding="xlarge"></DxcFooter>
133
- <Title title="Xxlarge padding" theme="light" level={4} />
134
- <DxcFooter padding="xxlarge"></DxcFooter>
143
+ <HalstackProvider theme={opinionatedTheme}>
144
+ <DxcFooter copyright="Copyright" socialLinks={social} bottomLinks={bottom}>
145
+ <div>
146
+ <a href="https://www.linkedin.com/company/dxctechnology">Linkedin</a>
147
+ </div>
148
+ </DxcFooter>
149
+ </HalstackProvider>
135
150
  </ExampleContainer>
136
151
  </>
137
152
  );
@@ -6,10 +6,17 @@ var _react = _interopRequireDefault(require("react"));
6
6
 
7
7
  var _react2 = require("@testing-library/react");
8
8
 
9
- var _linkedin = _interopRequireDefault(require("../../app/src/images/linkedin.svg"));
10
-
11
- var _Footer = _interopRequireDefault(require("./Footer"));
12
-
9
+ var _Footer = _interopRequireDefault(require("./Footer.tsx"));
10
+
11
+ var social = [{
12
+ href: "https://www.test.com/social",
13
+ logo: "https://developer.apple.com/design/human-interface-guidelines/foundations/app-icons/images/icon-and-image-large-icon-settings_2x.png",
14
+ title: "test"
15
+ }];
16
+ var bottom = [{
17
+ href: "https://www.test.com/bottom",
18
+ text: "bottom-link-text"
19
+ }];
13
20
  describe("Footer component tests", function () {
14
21
  test("Footer renders with default logo", function () {
15
22
  var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Footer["default"], null)),
@@ -18,32 +25,22 @@ describe("Footer component tests", function () {
18
25
  expect(getByTitle("DXC Logo")).toBeTruthy();
19
26
  });
20
27
  test("Footer renders with social links", function () {
21
- var social = [{
22
- href: "https://www.test.com/test",
23
- logo: _linkedin["default"]
24
- }];
25
-
26
28
  var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Footer["default"], {
27
29
  socialLinks: social
28
30
  })),
29
31
  getByRole = _render2.getByRole;
30
32
 
31
33
  var socialIcon = getByRole("link");
32
- expect(socialIcon.getAttribute("href")).toBe("https://www.test.com/test");
34
+ expect(socialIcon.getAttribute("href")).toBe("https://www.test.com/social");
33
35
  });
34
36
  test("Footer renders with bottom links", function () {
35
- var bottom = [{
36
- href: "https://www.test.com/test",
37
- text: "bottom-link-text"
38
- }];
39
-
40
37
  var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Footer["default"], {
41
38
  bottomLinks: bottom
42
39
  })),
43
40
  getByText = _render3.getByText;
44
41
 
45
42
  var link = getByText("bottom-link-text");
46
- expect(link.getAttribute("href")).toBe("https://www.test.com/test");
43
+ expect(link.getAttribute("href")).toBe("https://www.test.com/bottom");
47
44
  });
48
45
  test("Footer renders with copyright text", function () {
49
46
  var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Footer["default"], {
@@ -54,7 +51,7 @@ describe("Footer component tests", function () {
54
51
  expect(getByText("test-copyright")).toBeTruthy();
55
52
  });
56
53
  test("Footer renders with correct children", function () {
57
- //We need to force the offsetWidth value
54
+ // We need to force the offsetWidth value
58
55
  Object.defineProperty(HTMLElement.prototype, "offsetWidth", {
59
56
  configurable: true,
60
57
  value: 1024
@@ -66,7 +63,7 @@ describe("Footer component tests", function () {
66
63
  expect(getByText("footer-child-text")).toBeTruthy();
67
64
  });
68
65
  test("Footer renders with children in mobile", function () {
69
- //425 is mobile width
66
+ // 425 is mobile width
70
67
  Object.defineProperty(HTMLElement.prototype, "offsetWidth", {
71
68
  configurable: true,
72
69
  value: 425
@@ -82,14 +79,6 @@ describe("Footer component tests", function () {
82
79
  configurable: true,
83
80
  value: 1024
84
81
  });
85
- var social = [{
86
- href: "https://www.test.com/social",
87
- logo: _linkedin["default"]
88
- }];
89
- var bottom = [{
90
- href: "https://www.test.com/bottom",
91
- text: "bottom-link-text"
92
- }];
93
82
 
94
83
  var _render7 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Footer["default"], {
95
84
  socialLinks: social,
@@ -101,6 +90,7 @@ describe("Footer component tests", function () {
101
90
 
102
91
  var socialIcon = getAllByRole("link")[0];
103
92
  expect(socialIcon.getAttribute("href")).toBe("https://www.test.com/social");
93
+ expect(socialIcon.getAttribute("aria-label")).toBe("test");
104
94
  var bottomLink = getByText("bottom-link-text");
105
95
  expect(bottomLink.getAttribute("href")).toBe("https://www.test.com/bottom");
106
96
  expect(getByText("test-copyright")).toBeTruthy();
package/footer/types.d.ts CHANGED
@@ -8,24 +8,28 @@ declare type Size = {
8
8
  };
9
9
  declare type SVG = React.ReactNode & React.SVGProps<SVGSVGElement>;
10
10
  declare type SocialLink = {
11
+ /**
12
+ * URL of the page the link goes to.
13
+ */
14
+ href: string;
11
15
  /**
12
16
  * Element used as the icon for the link.
13
17
  */
14
18
  logo: string | SVG;
15
19
  /**
16
- * URL of the page the link goes to.
20
+ * Value for the HTML properties title and aria-label.
17
21
  */
18
- href: string;
22
+ title: string;
19
23
  };
20
24
  declare type BottomLink = {
21
- /**
22
- * Text for the link.
23
- */
24
- text: string;
25
25
  /**
26
26
  * URL of the page the link goes to.
27
27
  */
28
28
  href: string;
29
+ /**
30
+ * Text for the link.
31
+ */
32
+ text: string;
29
33
  };
30
34
  declare type FooterPropsType = {
31
35
  /**
@@ -56,11 +60,5 @@ declare type FooterPropsType = {
56
60
  * Size of the top margin to be applied to the footer.
57
61
  */
58
62
  margin?: Space | Size;
59
- /**
60
- * @deprecated This prop will be removed shortly, consider using the Inset component for this purpose.
61
- * Size of the padding to be applied to the custom area of the component.
62
- * You can pass an object with properties in order to specify different padding sizes.
63
- */
64
- padding?: Space | Size;
65
63
  };
66
64
  export default FooterPropsType;
package/grid/Grid.d.ts ADDED
@@ -0,0 +1,7 @@
1
+ /// <reference types="react" />
2
+ import GridPropsType, { GridItemProps } from "./types";
3
+ declare const DxcGrid: {
4
+ (props: GridPropsType): JSX.Element;
5
+ Item: import("styled-components").StyledComponent<"div", any, GridItemProps, never>;
6
+ };
7
+ export default DxcGrid;
package/grid/Grid.js ADDED
@@ -0,0 +1,91 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+
10
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
11
+
12
+ var _react = _interopRequireDefault(require("react"));
13
+
14
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
15
+
16
+ var _templateObject, _templateObject2;
17
+
18
+ var DxcGrid = function DxcGrid(props) {
19
+ return /*#__PURE__*/_react["default"].createElement(Grid, props);
20
+ };
21
+
22
+ var Grid = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: grid;\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n \n ", "\n ", "\n ", "\n ", "\n"])), function (_ref) {
23
+ var templateColumns = _ref.templateColumns;
24
+ return templateColumns && "grid-template-columns: ".concat(templateColumns.join(" "), ";");
25
+ }, function (_ref2) {
26
+ var templateRows = _ref2.templateRows;
27
+ return templateRows && "grid-template-rows: ".concat(templateRows.join(" "), ";");
28
+ }, function (_ref3) {
29
+ var templateAreas = _ref3.templateAreas;
30
+ return templateAreas && "grid-template-areas: ".concat(templateAreas.map(function (row) {
31
+ return "\"".concat(row, "\"");
32
+ }).join(" "), ";");
33
+ }, function (_ref4) {
34
+ var autoColumns = _ref4.autoColumns;
35
+ return autoColumns && "grid-auto-columns: ".concat(autoColumns, ";");
36
+ }, function (_ref5) {
37
+ var autoRows = _ref5.autoRows;
38
+ return autoRows && "grid-auto-rows: ".concat(autoRows, ";");
39
+ }, function (_ref6) {
40
+ var autoFlow = _ref6.autoFlow;
41
+ return autoFlow && "grid-auto-flow: ".concat(autoFlow, ";");
42
+ }, function (_ref7) {
43
+ var _gap$rowGap, _gap$columnGap;
44
+
45
+ var gap = _ref7.gap;
46
+ return gap != null && (typeof gap === "string" ? "gap: ".concat(gap, ";") : "row-gap: ".concat((_gap$rowGap = gap.rowGap) !== null && _gap$rowGap !== void 0 ? _gap$rowGap : "", "; column-gap: ").concat((_gap$columnGap = gap.columnGap) !== null && _gap$columnGap !== void 0 ? _gap$columnGap : "", ";"));
47
+ }, function (_ref8) {
48
+ var _placeItems$alignItem, _placeItems$justifyIt;
49
+
50
+ var placeItems = _ref8.placeItems;
51
+ return placeItems && (typeof placeItems === "string" ? "place-items: ".concat(placeItems) : "align-items: ".concat((_placeItems$alignItem = placeItems.alignItems) !== null && _placeItems$alignItem !== void 0 ? _placeItems$alignItem : "", "; justify-items: ").concat((_placeItems$justifyIt = placeItems.justifyItems) !== null && _placeItems$justifyIt !== void 0 ? _placeItems$justifyIt : "", ";"));
52
+ }, function (_ref9) {
53
+ var _placeContent$alignCo, _placeContent$justify;
54
+
55
+ var placeContent = _ref9.placeContent;
56
+ return placeContent && (typeof placeContent === "string" ? "place-content: ".concat(placeContent) : "align-content: ".concat((_placeContent$alignCo = placeContent.alignContent) !== null && _placeContent$alignCo !== void 0 ? _placeContent$alignCo : "", "; justify-content: ").concat((_placeContent$justify = placeContent.justifyContent) !== null && _placeContent$justify !== void 0 ? _placeContent$justify : "", ";"));
57
+ }, function (_ref10) {
58
+ var areaName = _ref10.areaName;
59
+ return areaName && "grid-area: ".concat(areaName, ";");
60
+ }, function (_ref11) {
61
+ var column = _ref11.column;
62
+ return column && "grid-column: ".concat(typeof column === "string" || typeof column === "number" ? column : "".concat(column.start, " / ").concat(column.end, ";"), ";");
63
+ }, function (_ref12) {
64
+ var row = _ref12.row;
65
+ return row && "grid-row: ".concat(typeof row === "string" || typeof row === "number" ? row : "".concat(row.start, " / ").concat(row.end, ";"), ";");
66
+ }, function (_ref13) {
67
+ var _placeSelf$alignSelf, _placeSelf$justifySel;
68
+
69
+ var placeSelf = _ref13.placeSelf;
70
+ return placeSelf && (typeof placeSelf === "string" ? "place-self: ".concat(placeSelf) : "align-self: ".concat((_placeSelf$alignSelf = placeSelf.alignSelf) !== null && _placeSelf$alignSelf !== void 0 ? _placeSelf$alignSelf : "", "; justify-self: ").concat((_placeSelf$justifySel = placeSelf.justifySelf) !== null && _placeSelf$justifySel !== void 0 ? _placeSelf$justifySel : "", ";"));
71
+ });
72
+
73
+ var GridItem = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n ", "\n ", "\n ", "\n ", "\n"])), function (_ref14) {
74
+ var areaName = _ref14.areaName;
75
+ return areaName && "grid-area: ".concat(areaName, ";");
76
+ }, function (_ref15) {
77
+ var column = _ref15.column;
78
+ return column && "grid-column: ".concat(typeof column === "string" || typeof column === "number" ? column : "".concat(column.start, " / ").concat(column.end, ";"), ";");
79
+ }, function (_ref16) {
80
+ var row = _ref16.row;
81
+ return row && "grid-row: ".concat(typeof row === "string" || typeof row === "number" ? row : "".concat(row.start, " / ").concat(row.end, ";"), ";");
82
+ }, function (_ref17) {
83
+ var _placeSelf$alignSelf2, _placeSelf$justifySel2;
84
+
85
+ var placeSelf = _ref17.placeSelf;
86
+ return placeSelf && (typeof placeSelf === "string" ? "place-self: ".concat(placeSelf) : "align-self: ".concat((_placeSelf$alignSelf2 = placeSelf.alignSelf) !== null && _placeSelf$alignSelf2 !== void 0 ? _placeSelf$alignSelf2 : "", "; justify-self: ").concat((_placeSelf$justifySel2 = placeSelf.justifySelf) !== null && _placeSelf$justifySel2 !== void 0 ? _placeSelf$justifySel2 : "", ";"));
87
+ });
88
+
89
+ DxcGrid.Item = GridItem;
90
+ var _default = DxcGrid;
91
+ exports["default"] = _default;