@dxc-technology/halstack-react 5.0.0 → 6.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (161) hide show
  1. package/HalstackContext.d.ts +4 -2
  2. package/HalstackContext.js +110 -58
  3. package/accordion/Accordion.stories.tsx +1 -1
  4. package/accordion/types.d.ts +1 -1
  5. package/accordion-group/AccordionGroup.js +1 -0
  6. package/accordion-group/types.d.ts +1 -1
  7. package/alert/Alert.js +4 -1
  8. package/badge/Badge.d.ts +1 -1
  9. package/badge/Badge.js +5 -3
  10. package/badge/types.d.ts +1 -0
  11. package/bleed/Bleed.js +1 -34
  12. package/bleed/Bleed.stories.tsx +94 -95
  13. package/bleed/types.d.ts +1 -1
  14. package/box/Box.js +22 -32
  15. package/bulleted-list/BulletedList.d.ts +7 -0
  16. package/bulleted-list/BulletedList.js +123 -0
  17. package/bulleted-list/BulletedList.stories.tsx +200 -0
  18. package/bulleted-list/types.d.ts +11 -0
  19. package/{list → bulleted-list}/types.js +0 -0
  20. package/button/Button.js +46 -62
  21. package/button/Button.stories.tsx +9 -0
  22. package/button/types.d.ts +7 -7
  23. package/card/Card.js +34 -36
  24. package/checkbox/Checkbox.js +4 -1
  25. package/chip/types.d.ts +1 -1
  26. package/common/variables.js +224 -92
  27. package/date-input/DateInput.js +8 -5
  28. package/dialog/Dialog.js +52 -28
  29. package/dialog/Dialog.stories.tsx +1 -2
  30. package/dialog/Dialog.test.js +34 -4
  31. package/dialog/types.d.ts +2 -2
  32. package/dropdown/Dropdown.d.ts +1 -1
  33. package/dropdown/Dropdown.js +242 -246
  34. package/dropdown/Dropdown.stories.tsx +126 -63
  35. package/dropdown/Dropdown.test.js +510 -108
  36. package/dropdown/DropdownMenu.d.ts +4 -0
  37. package/dropdown/DropdownMenu.js +80 -0
  38. package/dropdown/DropdownMenuItem.d.ts +4 -0
  39. package/dropdown/DropdownMenuItem.js +92 -0
  40. package/dropdown/types.d.ts +25 -5
  41. package/file-input/FileInput.js +9 -6
  42. package/file-input/FileItem.js +7 -5
  43. package/flex/Flex.d.ts +4 -0
  44. package/flex/Flex.js +57 -0
  45. package/flex/Flex.stories.tsx +103 -0
  46. package/flex/types.d.ts +21 -0
  47. package/{radio → flex}/types.js +0 -0
  48. package/footer/Footer.js +7 -5
  49. package/footer/Icons.js +1 -1
  50. package/footer/types.d.ts +1 -1
  51. package/header/Header.js +80 -75
  52. package/header/Icons.js +2 -2
  53. package/header/types.d.ts +2 -2
  54. package/inset/Inset.js +1 -34
  55. package/inset/Inset.stories.tsx +36 -36
  56. package/inset/types.d.ts +1 -1
  57. package/layout/ApplicationLayout.d.ts +16 -6
  58. package/layout/ApplicationLayout.js +70 -117
  59. package/layout/ApplicationLayout.stories.tsx +83 -93
  60. package/layout/Icons.d.ts +5 -0
  61. package/layout/Icons.js +13 -2
  62. package/layout/SidenavContext.d.ts +5 -0
  63. package/layout/SidenavContext.js +19 -0
  64. package/layout/types.d.ts +18 -33
  65. package/link/Link.d.ts +3 -2
  66. package/link/Link.js +57 -70
  67. package/link/Link.stories.tsx +95 -53
  68. package/link/Link.test.js +7 -15
  69. package/link/types.d.ts +7 -23
  70. package/main.d.ts +7 -10
  71. package/main.js +38 -56
  72. package/number-input/types.d.ts +1 -1
  73. package/package.json +8 -6
  74. package/paginator/Paginator.js +17 -38
  75. package/paginator/Paginator.test.js +42 -0
  76. package/paragraph/Paragraph.d.ts +6 -0
  77. package/paragraph/Paragraph.js +38 -0
  78. package/paragraph/Paragraph.stories.tsx +44 -0
  79. package/password-input/PasswordInput.js +7 -4
  80. package/password-input/PasswordInput.test.js +1 -2
  81. package/password-input/types.d.ts +1 -1
  82. package/progress-bar/ProgressBar.d.ts +2 -2
  83. package/progress-bar/ProgressBar.js +57 -51
  84. package/progress-bar/ProgressBar.stories.jsx +13 -11
  85. package/progress-bar/ProgressBar.test.js +67 -22
  86. package/progress-bar/types.d.ts +3 -4
  87. package/quick-nav/QuickNav.js +74 -20
  88. package/quick-nav/QuickNav.stories.tsx +43 -16
  89. package/quick-nav/types.d.ts +4 -4
  90. package/radio-group/Radio.js +1 -1
  91. package/radio-group/RadioGroup.js +21 -20
  92. package/resultsetTable/ResultsetTable.test.js +42 -0
  93. package/select/Listbox.d.ts +1 -1
  94. package/select/Listbox.js +59 -8
  95. package/select/Select.js +78 -90
  96. package/select/Select.stories.tsx +145 -100
  97. package/select/Select.test.js +362 -244
  98. package/select/types.d.ts +2 -5
  99. package/sidenav/Sidenav.d.ts +6 -5
  100. package/sidenav/Sidenav.js +184 -52
  101. package/sidenav/Sidenav.stories.tsx +154 -156
  102. package/sidenav/Sidenav.test.js +25 -37
  103. package/sidenav/types.d.ts +50 -27
  104. package/slider/Slider.js +3 -3
  105. package/slider/Slider.test.js +37 -0
  106. package/spinner/Spinner.js +1 -1
  107. package/switch/Switch.d.ts +1 -1
  108. package/switch/Switch.js +113 -54
  109. package/switch/Switch.stories.tsx +8 -30
  110. package/switch/Switch.test.js +122 -8
  111. package/switch/types.d.ts +3 -4
  112. package/tabs/Tabs.stories.tsx +0 -6
  113. package/tabs/types.d.ts +1 -1
  114. package/tabs-nav/NavTabs.d.ts +8 -0
  115. package/tabs-nav/NavTabs.js +125 -0
  116. package/tabs-nav/NavTabs.stories.tsx +170 -0
  117. package/tabs-nav/NavTabs.test.js +82 -0
  118. package/tabs-nav/Tab.d.ts +4 -0
  119. package/tabs-nav/Tab.js +130 -0
  120. package/tabs-nav/types.d.ts +53 -0
  121. package/{row → tabs-nav}/types.js +0 -0
  122. package/tag/types.d.ts +1 -1
  123. package/text-input/Suggestion.d.ts +4 -0
  124. package/text-input/Suggestion.js +55 -0
  125. package/text-input/TextInput.js +58 -93
  126. package/text-input/TextInput.stories.tsx +1 -2
  127. package/text-input/TextInput.test.js +1 -1
  128. package/text-input/types.d.ts +14 -2
  129. package/textarea/Textarea.js +10 -19
  130. package/textarea/types.d.ts +1 -1
  131. package/toggle-group/types.d.ts +1 -1
  132. package/typography/Typography.d.ts +4 -0
  133. package/typography/Typography.js +131 -0
  134. package/typography/Typography.stories.tsx +198 -0
  135. package/typography/types.d.ts +18 -0
  136. package/{stack → typography}/types.js +0 -0
  137. package/useTranslatedLabels.d.ts +2 -0
  138. package/useTranslatedLabels.js +20 -0
  139. package/wizard/Wizard.js +36 -41
  140. package/wizard/Wizard.stories.tsx +20 -1
  141. package/wizard/types.d.ts +5 -4
  142. package/list/List.d.ts +0 -4
  143. package/list/List.js +0 -47
  144. package/list/List.stories.tsx +0 -95
  145. package/list/types.d.ts +0 -7
  146. package/radio/Radio.d.ts +0 -4
  147. package/radio/Radio.js +0 -173
  148. package/radio/Radio.stories.tsx +0 -192
  149. package/radio/Radio.test.js +0 -71
  150. package/radio/types.d.ts +0 -54
  151. package/row/Row.d.ts +0 -3
  152. package/row/Row.js +0 -127
  153. package/row/Row.stories.tsx +0 -237
  154. package/row/types.d.ts +0 -28
  155. package/stack/Stack.d.ts +0 -3
  156. package/stack/Stack.js +0 -97
  157. package/stack/Stack.stories.tsx +0 -164
  158. package/stack/types.d.ts +0 -24
  159. package/text/Text.d.ts +0 -7
  160. package/text/Text.js +0 -30
  161. package/text/Text.stories.tsx +0 -19
package/header/Header.js CHANGED
@@ -19,8 +19,6 @@ var _react = _interopRequireWildcard(require("react"));
19
19
 
20
20
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
21
21
 
22
- var _AppBar = _interopRequireDefault(require("@material-ui/core/AppBar"));
23
-
24
22
  var _Dropdown = _interopRequireDefault(require("../dropdown/Dropdown"));
25
23
 
26
24
  var _Icons = require("./Icons");
@@ -29,6 +27,8 @@ var _variables = require("../common/variables.js");
29
27
 
30
28
  var _useTheme = _interopRequireDefault(require("../useTheme"));
31
29
 
30
+ var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
31
+
32
32
  var _BackgroundColorContext = _interopRequireWildcard(require("../BackgroundColorContext"));
33
33
 
34
34
  var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15;
@@ -64,32 +64,40 @@ var Dropdown = function Dropdown(props) {
64
64
 
65
65
  var HeaderDropdown = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n button {\n background-color: transparent;\n :hover {\n background-color: transparent;\n }\n }\n"])));
66
66
 
67
- var getLogoElement = function getLogoElement(themeInput) {
68
- if (!themeInput) {
69
- return _Icons.dxcLogo;
70
- }
71
-
72
- if (typeof themeInput === "string") {
73
- return /*#__PURE__*/_react["default"].createElement(LogoImg, {
74
- alt: "Logo",
75
- src: themeInput
76
- });
77
- }
78
-
79
- return themeInput;
67
+ var getLogoElement = function getLogoElement(themeInput, logoLabel) {
68
+ if (!themeInput) return _Icons.dxcLogo;else if (typeof themeInput === "string") return /*#__PURE__*/_react["default"].createElement(LogoImg, {
69
+ alt: logoLabel,
70
+ src: themeInput
71
+ });else return themeInput;
80
72
  };
81
73
 
82
- var DxcHeader = function DxcHeader(_ref) {
83
- var _ref$underlined = _ref.underlined,
84
- underlined = _ref$underlined === void 0 ? false : _ref$underlined,
85
- content = _ref.content,
74
+ var Content = function Content(_ref) {
75
+ var isResponsive = _ref.isResponsive,
86
76
  responsiveContent = _ref.responsiveContent,
87
- onClick = _ref.onClick,
88
- margin = _ref.margin,
77
+ handleMenu = _ref.handleMenu,
89
78
  padding = _ref.padding,
90
- _ref$tabIndex = _ref.tabIndex,
91
- tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
79
+ content = _ref.content;
80
+ var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
81
+ return isResponsive ? /*#__PURE__*/_react["default"].createElement(MenuContent, {
82
+ backgroundType: backgroundType
83
+ }, responsiveContent(handleMenu)) : /*#__PURE__*/_react["default"].createElement(ContentContainer, {
84
+ padding: padding,
85
+ backgroundType: backgroundType
86
+ }, content);
87
+ };
88
+
89
+ var DxcHeader = function DxcHeader(_ref2) {
90
+ var _ref2$underlined = _ref2.underlined,
91
+ underlined = _ref2$underlined === void 0 ? false : _ref2$underlined,
92
+ content = _ref2.content,
93
+ responsiveContent = _ref2.responsiveContent,
94
+ onClick = _ref2.onClick,
95
+ margin = _ref2.margin,
96
+ padding = _ref2.padding,
97
+ _ref2$tabIndex = _ref2.tabIndex,
98
+ tabIndex = _ref2$tabIndex === void 0 ? 0 : _ref2$tabIndex;
92
99
  var colorsTheme = (0, _useTheme["default"])();
100
+ var translatedLabels = (0, _useTranslatedLabels["default"])();
93
101
  var ref = (0, _react.useRef)(null);
94
102
 
95
103
  var _useState = (0, _react.useState)(false),
@@ -103,17 +111,7 @@ var DxcHeader = function DxcHeader(_ref) {
103
111
  setIsMenuVisible = _useState4[1];
104
112
 
105
113
  var handleResize = function handleResize() {
106
- setIsResponsive(window.matchMedia("(max-width: ".concat(_variables.responsiveSizes.medium, "rem)")).matches && !isResponsive);
107
- };
108
-
109
- var ContentContainerComponent = function ContentContainerComponent() {
110
- var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
111
- return isResponsive && /*#__PURE__*/_react["default"].createElement(MenuContent, {
112
- backgroundType: backgroundType
113
- }, responsiveContent(handleMenu)) || /*#__PURE__*/_react["default"].createElement(ContentContainer, {
114
- padding: padding,
115
- backgroundType: backgroundType
116
- }, content);
114
+ setIsResponsive(window.matchMedia("(max-width: ".concat(_variables.responsiveSizes.medium, "rem)")).matches);
117
115
  };
118
116
 
119
117
  var handleMenu = function handleMenu() {
@@ -125,73 +123,80 @@ var DxcHeader = function DxcHeader(_ref) {
125
123
  };
126
124
 
127
125
  var headerLogo = (0, _react.useMemo)(function () {
128
- return getLogoElement(colorsTheme.header.logo);
126
+ return getLogoElement(colorsTheme.header.logo, translatedLabels.formFields.logoAlternativeText);
129
127
  }, [colorsTheme.header.logo]);
130
128
  var headerResponsiveLogo = (0, _react.useMemo)(function () {
131
- return getLogoElement(colorsTheme.header.logoResponsive);
129
+ return getLogoElement(colorsTheme.header.logoResponsive, translatedLabels.formFields.logoAlternativeText);
132
130
  }, [colorsTheme.header.logoResponsive]);
133
131
  (0, _react.useEffect)(function () {
134
- if (ref.current) {
135
- window.addEventListener("resize", handleResize);
136
- handleResize();
137
- }
138
-
132
+ handleResize();
133
+ window.addEventListener("resize", handleResize);
139
134
  return function () {
140
135
  window.removeEventListener("resize", handleResize);
141
136
  };
142
137
  }, []);
138
+ (0, _react.useEffect)(function () {
139
+ !isResponsive && setIsMenuVisible(false);
140
+ }, [isResponsive]);
143
141
  return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
144
142
  theme: colorsTheme.header
145
143
  }, /*#__PURE__*/_react["default"].createElement(HeaderContainer, {
146
- $underlined: underlined,
147
- position: "static",
144
+ underlined: underlined,
148
145
  margin: margin,
149
146
  ref: ref
150
147
  }, /*#__PURE__*/_react["default"].createElement(LogoAnchor, {
151
- tabIndex: typeof onClick === "function" ? tabIndex : -1,
152
- interactuable: typeof onClick === "function",
148
+ tabIndex: onClick ? tabIndex : -1,
149
+ interactuable: onClick ? true : false,
153
150
  onClick: onClick
154
151
  }, /*#__PURE__*/_react["default"].createElement(LogoContainer, null, headerLogo)), isResponsive && responsiveContent && /*#__PURE__*/_react["default"].createElement(MainContainer, null, /*#__PURE__*/_react["default"].createElement(ChildContainer, {
155
152
  padding: padding
156
- }, /*#__PURE__*/_react["default"].createElement(HamburguerItem, {
153
+ }, /*#__PURE__*/_react["default"].createElement(HamburguerTrigger, {
157
154
  tabIndex: tabIndex,
158
- underlined: underlined,
159
155
  onClick: handleMenu
160
- }, hamburgerIcon, /*#__PURE__*/_react["default"].createElement(HamburguerTitle, null, "Menu"))), /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement(ResponsiveMenu, {
156
+ }, hamburgerIcon, translatedLabels.header.hamburguerTitle)), /*#__PURE__*/_react["default"].createElement(ResponsiveMenu, {
161
157
  hasVisibility: isMenuVisible
162
- }, /*#__PURE__*/_react["default"].createElement(ResponsiveLogoContainer, null, headerResponsiveLogo), /*#__PURE__*/_react["default"].createElement(_BackgroundColorContext.BackgroundColorProvider, {
163
- color: colorsTheme.header.menuBackgroundColor
164
- }, /*#__PURE__*/_react["default"].createElement(ContentContainerComponent, null)), /*#__PURE__*/_react["default"].createElement(CloseContainer, {
158
+ }, /*#__PURE__*/_react["default"].createElement(ResponsiveIconsContainer, null, /*#__PURE__*/_react["default"].createElement(ResponsiveLogoContainer, null, headerResponsiveLogo), /*#__PURE__*/_react["default"].createElement(CloseAction, {
165
159
  tabIndex: tabIndex,
166
160
  onClick: handleMenu,
167
- className: "closeIcon"
168
- }, closeIcon)), /*#__PURE__*/_react["default"].createElement(Overlay, {
161
+ "aria-label": translatedLabels.header.closeIcon
162
+ }, closeIcon)), /*#__PURE__*/_react["default"].createElement(_BackgroundColorContext.BackgroundColorProvider, {
163
+ color: colorsTheme.header.menuBackgroundColor
164
+ }, /*#__PURE__*/_react["default"].createElement(Content, {
165
+ isResponsive: isResponsive,
166
+ responsiveContent: responsiveContent,
167
+ handleMenu: handleMenu,
168
+ padding: padding,
169
+ content: content
170
+ }))), /*#__PURE__*/_react["default"].createElement(Overlay, {
169
171
  onClick: handleMenu,
170
172
  hasVisibility: isMenuVisible
171
- }))), !isResponsive && /*#__PURE__*/_react["default"].createElement(_BackgroundColorContext.BackgroundColorProvider, {
173
+ })), !isResponsive && /*#__PURE__*/_react["default"].createElement(_BackgroundColorContext.BackgroundColorProvider, {
172
174
  color: colorsTheme.header.backgroundColor
173
- }, /*#__PURE__*/_react["default"].createElement(ContentContainerComponent, null))));
175
+ }, /*#__PURE__*/_react["default"].createElement(Content, {
176
+ isResponsive: isResponsive,
177
+ responsiveContent: responsiveContent,
178
+ handleMenu: handleMenu,
179
+ padding: padding,
180
+ content: content
181
+ }))));
174
182
  };
175
183
 
176
184
  DxcHeader.Dropdown = Dropdown;
177
- var HeaderContainer = (0, _styledComponents["default"])(_AppBar["default"])(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n margin-bottom: ", ";\n\n &.MuiAppBar-colorPrimary {\n background-color: ", ";\n border-bottom: ", ";\n\n &.MuiPaper-elevation4 {\n box-shadow: none;\n }\n .ChildComponents {\n display: flex;\n align-items: center;\n }\n }\n & {\n min-height: ", ";\n }\n &.MuiAppBar-root {\n flex-direction: row;\n align-items: center;\n padding: ", ";\n justify-content: space-between;\n }\n"])), function (props) {
185
+
186
+ var HeaderContainer = _styledComponents["default"].header(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n margin-bottom: ", ";\n padding: ", ";\n background-color: ", ";\n border-bottom: ", ";\n min-height: ", ";\n box-shadow: none;\n display: flex;\n align-items: center;\n flex-direction: row;\n justify-content: space-between;\n box-sizing: border-box;\n"])), function (props) {
178
187
  return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
188
+ }, function (props) {
189
+ return "".concat(props.theme.paddingTop, " ").concat(props.theme.paddingRight, " ").concat(props.theme.paddingBottom, " ").concat(props.theme.paddingLeft);
179
190
  }, function (props) {
180
191
  return props.theme.backgroundColor;
181
192
  }, function (props) {
182
- return props.$underlined && "".concat(props.theme.underlinedThickness, " ").concat(props.theme.underlinedStyle, " ").concat(props.theme.underlinedColor);
193
+ return props.underlined && "".concat(props.theme.underlinedThickness, " ").concat(props.theme.underlinedStyle, " ").concat(props.theme.underlinedColor);
183
194
  }, function (props) {
184
195
  return props.theme.minHeight;
185
- }, function (props) {
186
- return "".concat(props.theme.paddingTop, " ").concat(props.theme.paddingRight, " ").concat(props.theme.paddingBottom, " ").concat(props.theme.paddingLeft);
187
196
  });
188
197
 
189
- var LogoAnchor = _styledComponents["default"].a(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n ", "\n"])), function (props) {
190
- if (!props.interactuable) {
191
- return "cursor: default; outline:none;";
192
- }
193
-
194
- return "cursor: pointer;";
198
+ var LogoAnchor = _styledComponents["default"].a(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n ", ";\n"])), function (props) {
199
+ return props.interactuable ? "cursor: pointer" : "cursor: default; outline:none";
195
200
  });
196
201
 
197
202
  var LogoImg = _styledComponents["default"].img(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n max-height: ", ";\n width: ", ";\n"])), function (props) {
@@ -232,15 +237,13 @@ var ContentContainer = _styledComponents["default"].div(_templateObject7 || (_te
232
237
  return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.left ? _variables.spaces[props.padding.left] : "";
233
238
  });
234
239
 
235
- var HamburguerItem = _styledComponents["default"].div(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n width: 54px;\n cursor: pointer;\n :hover {\n background-color: ", ";\n }\n &:focus {\n outline: ", " auto 1px;\n }\n & > svg {\n fill: ", ";\n }\n"])), function (props) {
240
+ var HamburguerTrigger = _styledComponents["default"].button(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n width: 54px;\n cursor: pointer;\n border: 1px solid transparent;\n border-radius: 2px;\n background-color: transparent;\n :hover {\n background-color: ", ";\n }\n &:focus {\n outline: ", " auto 1px;\n }\n & > svg {\n fill: ", ";\n }\n font-family: ", ";\n font-style: ", ";\n font-size: ", ";\n text-transform: ", ";\n font-weight: ", ";\n color: ", ";\n"])), function (props) {
236
241
  return props.theme.hamburguerHoverColor;
237
242
  }, function (props) {
238
243
  return props.theme.hamburguerFocusColor;
239
244
  }, function (props) {
240
245
  return props.theme.hamburguerIconColor;
241
- });
242
-
243
- var HamburguerTitle = _styledComponents["default"].span(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-style: ", ";\n font-size: ", ";\n text-transform: ", ";\n font-weight: ", ";\n color: ", ";\n"])), function (props) {
246
+ }, function (props) {
244
247
  return props.theme.hamburguerFontFamily;
245
248
  }, function (props) {
246
249
  return props.theme.hamburguerFontStyle;
@@ -254,9 +257,9 @@ var HamburguerTitle = _styledComponents["default"].span(_templateObject9 || (_te
254
257
  return props.theme.hamburguerFontColor;
255
258
  });
256
259
 
257
- var MainContainer = _styledComponents["default"].div(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-grow: 1;\n"])));
260
+ var MainContainer = _styledComponents["default"].div(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-grow: 1;\n"])));
258
261
 
259
- var ResponsiveMenu = _styledComponents["default"].div(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n justify-content: space-evenly;\n background-color: ", ";\n position: fixed;\n top: 0;\n right: 0;\n z-index: ", ";\n\n @media (max-width: ", "rem) and (min-width: ", "rem) {\n //tablet\n width: ", ";\n }\n\n @media not((max-width: ", "rem) and (min-width: ", "rem)) {\n //mobile phones\n width: ", ";\n }\n\n height: 100vh;\n padding: 20px;\n transform: ", ";\n opacity: ", ";\n transition-property: transform, opacity;\n transition-duration: 0.6s;\n transition-timing-function: ease-in-out;\n box-sizing: border-box;\n"])), function (props) {
262
+ var ResponsiveMenu = _styledComponents["default"].div(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n background-color: ", ";\n position: fixed;\n top: 0;\n right: 0;\n z-index: ", ";\n\n @media (max-width: ", "rem) and (min-width: ", "rem) {\n //tablet\n width: ", ";\n }\n\n @media (not((max-width: ", "rem) and (min-width: ", "rem))) {\n //mobile phones\n width: ", ";\n }\n\n height: 100vh;\n padding: 20px;\n transform: ", ";\n opacity: ", ";\n transition-property: transform, opacity;\n transition-duration: 0.6s;\n transition-timing-function: ease-in-out;\n box-sizing: border-box;\n"])), function (props) {
260
263
  return props.theme.menuBackgroundColor;
261
264
  }, function (props) {
262
265
  return props.theme.menuZindex;
@@ -270,17 +273,19 @@ var ResponsiveMenu = _styledComponents["default"].div(_templateObject11 || (_tem
270
273
  return props.hasVisibility ? "1" : "0.96";
271
274
  });
272
275
 
273
- var ResponsiveLogoContainer = _styledComponents["default"].div(_templateObject12 || (_templateObject12 = (0, _taggedTemplateLiteral2["default"])(["\n max-height: ", ";\n width: ", ";\n position: absolute;\n top: 23px;\n left: 20px;\n"])), function (props) {
276
+ var ResponsiveLogoContainer = _styledComponents["default"].div(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2["default"])(["\n max-height: ", ";\n width: ", ";\n display: flex;\n"])), function (props) {
274
277
  return props.theme.logoHeight;
275
278
  }, function (props) {
276
279
  return props.theme.logoWidth;
277
280
  });
278
281
 
279
- var CloseContainer = _styledComponents["default"].div(_templateObject13 || (_templateObject13 = (0, _taggedTemplateLiteral2["default"])(["\n cursor: pointer;\n :focus {\n outline: ", " auto 1px;\n }\n position: fixed;\n top: 23px;\n right: 20px;\n width: 24px;\n height: 24px;\n padding: ", ";\n"])), function (props) {
282
+ var ResponsiveIconsContainer = _styledComponents["default"].div(_templateObject12 || (_templateObject12 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n justify-content: space-between;\n align-items: center;\n"])));
283
+
284
+ var CloseAction = _styledComponents["default"].button(_templateObject13 || (_templateObject13 = (0, _taggedTemplateLiteral2["default"])(["\n cursor: pointer;\n padding: 6px;\n height: 36px;\n width: 36px;\n border: 1px solid transparent;\n border-radius: 2px;\n display: flex;\n flex-wrap: wrap;\n align-content: center;\n background-color: transparent;\n :focus,\n :focus-visible {\n outline: ", " auto 1px;\n }\n"])), function (props) {
280
285
  return props.theme.hamburguerFocusColor;
281
- }, _variables.spaces.xxsmall);
286
+ });
282
287
 
283
- var MenuContent = _styledComponents["default"].div(_templateObject14 || (_templateObject14 = (0, _taggedTemplateLiteral2["default"])(["\n height: 100%;\n margin-top: 40px;\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n color: ", ";\n"])), function (props) {
288
+ var MenuContent = _styledComponents["default"].div(_templateObject14 || (_templateObject14 = (0, _taggedTemplateLiteral2["default"])(["\n height: 100%;\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n color: ", ";\n"])), function (props) {
284
289
  return props.backgroundType === "dark" ? props.theme.contentColorOnDark : props.theme.contentColor;
285
290
  });
286
291
 
package/header/Icons.js CHANGED
@@ -23,12 +23,12 @@ var dxcLogo = /*#__PURE__*/_react["default"].createElement("svg", {
23
23
  id: "path14",
24
24
  d: "M91.613-28.177v2.514H90.231V-28.15l-2.415-3.82h1.616l1.5,2.532,1.526-2.532h1.571ZM83.9-25.555A3.15,3.15,0,0,1,80.6-28.8v-.018a3.231,3.231,0,0,1,3.294-3.262,3.442,3.442,0,0,1,2.469.865l-.87,1.054a2.311,2.311,0,0,0-1.643-.64,1.891,1.891,0,0,0-1.8,1.964v.018a1.886,1.886,0,0,0,1.9,2,2.2,2.2,0,0,0,1.3-.378v-.9H83.858v-1.2h2.729v2.738A4.071,4.071,0,0,1,83.9-25.555Zm-6.416-3.261a1.913,1.913,0,0,0-1.9-1.982A1.883,1.883,0,0,0,73.7-28.835v.018a1.913,1.913,0,0,0,1.9,1.982A1.883,1.883,0,0,0,77.486-28.8Zm-1.9,3.261a3.225,3.225,0,0,1-3.33-3.243v-.018A3.255,3.255,0,0,1,75.6-32.078a3.225,3.225,0,0,1,3.331,3.243v.018A3.255,3.255,0,0,1,75.583-25.555Zm-9.173-.108V-31.97h1.382v5.045h3.133v1.261Zm-3.433-3.153a1.913,1.913,0,0,0-1.9-1.982,1.883,1.883,0,0,0-1.886,1.964v.018a1.913,1.913,0,0,0,1.9,1.982A1.883,1.883,0,0,0,62.978-28.8Zm-1.9,3.261a3.225,3.225,0,0,1-3.33-3.243v-.018a3.255,3.255,0,0,1,3.348-3.262,3.225,3.225,0,0,1,3.331,3.243v.018A3.255,3.255,0,0,1,61.075-25.555Zm-6.508-.108-3.043-4.009v4.009H50.159V-31.97h1.275l2.944,3.883V-31.97h1.364v6.306Zm-8.246,0v-2.531h-2.55v2.531H42.389V-31.97h1.382v2.5h2.55v-2.5H47.7v6.306Zm-8.432.108A3.178,3.178,0,0,1,34.666-28.8v-.018a3.2,3.2,0,0,1,3.276-3.262,3.237,3.237,0,0,1,2.478.973l-.88,1.018a2.315,2.315,0,0,0-1.606-.712,1.866,1.866,0,0,0-1.822,1.964v.018a1.87,1.87,0,0,0,1.822,1.982,2.265,2.265,0,0,0,1.651-.739l.88.891A3.206,3.206,0,0,1,37.889-25.555Zm-9.805-.108V-31.97h4.739v1.235H29.458v1.279h2.962v1.234H29.458V-26.9h3.411v1.234ZM24.322-30.69v5.027H22.939V-30.69H21.028v-1.28h5.206v1.28H24.322",
25
25
  transform: "translate(-21.028 65.555)",
26
- fill: "#100f0d"
26
+ fill: "#010101"
27
27
  }), /*#__PURE__*/_react["default"].createElement("path", {
28
28
  id: "path16",
29
29
  d: "M75.836-76.712a8.975,8.975,0,0,1,2.246-3.9,8.393,8.393,0,0,1,6.058-2.457h9.824v-5.67H84.139a14.611,14.611,0,0,0-10.232,4.221,14.509,14.509,0,0,0-3.076,4.536,11.913,11.913,0,0,0-.973,3.271Zm0,4.325a8.978,8.978,0,0,0,2.246,3.9,8.394,8.394,0,0,0,6.058,2.457h9.824v5.67H84.139A14.611,14.611,0,0,1,73.907-64.58a14.506,14.506,0,0,1-3.076-4.536,11.91,11.91,0,0,1-.973-3.271ZM57.522-69.832l-7.5,9.473H42.581L53.818-74.55,42.581-88.739H50.02l7.5,9.472,7.5-9.472h7.439L61.225-74.55l11.237,14.19H65.023Zm-12.336-6.88a11.935,11.935,0,0,0-.973-3.271,14.515,14.515,0,0,0-3.076-4.536A14.612,14.612,0,0,0,30.9-88.739H21.081v5.67H30.9a8.394,8.394,0,0,1,6.058,2.457,8.978,8.978,0,0,1,2.246,3.9Zm0,4.325a11.932,11.932,0,0,1-.973,3.271,14.511,14.511,0,0,1-3.076,4.536A14.611,14.611,0,0,1,30.9-60.359H21.081v-5.67H30.9a8.4,8.4,0,0,0,6.058-2.457,8.981,8.981,0,0,0,2.246-3.9h5.978",
30
30
  transform: "translate(-21.049 88.739)",
31
- fill: "#100f0d"
31
+ fill: "#603494"
32
32
  }))));
33
33
 
34
34
  exports.dxcLogo = dxcLogo;
package/header/types.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  /// <reference types="react" />
2
- declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
- declare type Padding = {
2
+ export declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
+ export declare type Padding = {
4
4
  top?: Space;
5
5
  bottom?: Space;
6
6
  left?: Space;
package/inset/Inset.js CHANGED
@@ -36,40 +36,7 @@ function Inset(_ref) {
36
36
  }
37
37
 
38
38
  function getSpacingValue(spacingName) {
39
- switch (spacingName) {
40
- case "none":
41
- return "0rem";
42
-
43
- case "xxxsmall":
44
- return "0.125rem";
45
-
46
- case "xxsmall":
47
- return "0.25rem";
48
-
49
- case "xsmall":
50
- return "0.5rem";
51
-
52
- case "small":
53
- return "1rem";
54
-
55
- case "medium":
56
- return "1.5rem";
57
-
58
- case "large":
59
- return "2rem";
60
-
61
- case "xlarge":
62
- return "3rem";
63
-
64
- case "xxlarge":
65
- return "4rem";
66
-
67
- case "xxxlarge":
68
- return "5rem";
69
-
70
- default:
71
- return "0rem";
72
- }
39
+ return spacingName ? spacingName : "0rem";
73
40
  }
74
41
 
75
42
  var StyledInset = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n ", "\n"])), function (_ref2) {
@@ -1,7 +1,7 @@
1
1
  import React from "react";
2
2
  import Title from "../../.storybook/components/Title";
3
3
  import styled from "styled-components";
4
- import DxcStack from "./../stack/Stack";
4
+ import DxcFlex from "./../flex/Flex";
5
5
  import DxcInset from "./Inset";
6
6
 
7
7
  export default {
@@ -19,199 +19,199 @@ export const Chromatic = () => (
19
19
  </Container>
20
20
  <Title title="space = none" level={4} />
21
21
  <Container>
22
- <DxcInset space="none">
22
+ <DxcInset space="0rem">
23
23
  <Placeholder></Placeholder>
24
24
  </DxcInset>
25
25
  </Container>
26
26
  <Title title="space = xxxsmall" level={4} />
27
27
  <Container>
28
- <DxcInset space="xxxsmall">
28
+ <DxcInset space="0.125rem">
29
29
  <Placeholder></Placeholder>
30
30
  </DxcInset>
31
31
  </Container>
32
32
  <Title title="space = xxsmall" level={4} />
33
33
  <Container>
34
- <DxcInset space="xxsmall">
34
+ <DxcInset space="0.25rem">
35
35
  <Placeholder></Placeholder>
36
36
  </DxcInset>
37
37
  </Container>
38
38
  <Title title="space = xsmall" level={4} />
39
39
  <Container>
40
- <DxcInset space="xsmall">
40
+ <DxcInset space="0.5rem">
41
41
  <Placeholder></Placeholder>
42
42
  </DxcInset>
43
43
  </Container>
44
44
  <Title title="space = small" level={4} />
45
45
  <Container>
46
- <DxcInset space="small">
46
+ <DxcInset space="1rem">
47
47
  <Placeholder></Placeholder>
48
48
  </DxcInset>
49
49
  </Container>
50
50
  <Title title="space = medium" level={4} />
51
51
  <Container>
52
- <DxcInset space="medium">
52
+ <DxcInset space="1.5rem">
53
53
  <Placeholder></Placeholder>
54
54
  </DxcInset>
55
55
  </Container>
56
56
  <Title title="space = large" level={4} />
57
57
  <Container>
58
- <DxcInset space="large">
58
+ <DxcInset space="2rem">
59
59
  <Placeholder></Placeholder>
60
60
  </DxcInset>
61
61
  </Container>
62
62
  <Title title="space = xlarge" level={4} />
63
63
  <Container>
64
- <DxcInset space="xlarge">
64
+ <DxcInset space="3rem">
65
65
  <Placeholder></Placeholder>
66
66
  </DxcInset>
67
67
  </Container>
68
68
  <Title title="space = xxlarge" level={4} />
69
69
  <Container>
70
- <DxcInset space="xxlarge">
70
+ <DxcInset space="4rem">
71
71
  <Placeholder></Placeholder>
72
72
  </DxcInset>
73
73
  </Container>
74
74
  <Title title="space = xxxlarge" level={4} />
75
75
  <Container>
76
- <DxcInset space="xxxlarge">
76
+ <DxcInset space="5rem">
77
77
  <Placeholder></Placeholder>
78
78
  </DxcInset>
79
79
  </Container>
80
80
  <Title title="horizontal = none" level={4} />
81
81
  <Container>
82
- <DxcInset horizontal="none">
82
+ <DxcInset horizontal="0rem">
83
83
  <Placeholder></Placeholder>
84
84
  </DxcInset>
85
85
  </Container>
86
86
  <Title title="horizontal = xxxsmall" level={4} />
87
87
  <Container>
88
- <DxcInset horizontal="xxxsmall">
88
+ <DxcInset horizontal="0.125rem">
89
89
  <Placeholder></Placeholder>
90
90
  </DxcInset>
91
91
  </Container>
92
92
  <Title title="horizontal = xxsmall" level={4} />
93
93
  <Container>
94
- <DxcInset horizontal="xxsmall">
94
+ <DxcInset horizontal="0.25rem">
95
95
  <Placeholder></Placeholder>
96
96
  </DxcInset>
97
97
  </Container>
98
98
  <Title title="horizontal = xsmall" level={4} />
99
99
  <Container>
100
- <DxcInset horizontal="xsmall">
100
+ <DxcInset horizontal="0.5rem">
101
101
  <Placeholder></Placeholder>
102
102
  </DxcInset>
103
103
  </Container>
104
104
  <Title title="horizontal = small" level={4} />
105
105
  <Container>
106
- <DxcInset horizontal="small">
106
+ <DxcInset horizontal="1rem">
107
107
  <Placeholder></Placeholder>
108
108
  </DxcInset>
109
109
  </Container>
110
110
  <Title title="horizontal = medium" level={4} />
111
111
  <Container>
112
- <DxcInset horizontal="medium">
112
+ <DxcInset horizontal="1.5rem">
113
113
  <Placeholder></Placeholder>
114
114
  </DxcInset>
115
115
  </Container>
116
116
  <Title title="horizontal = large" level={4} />
117
117
  <Container>
118
- <DxcInset horizontal="large">
118
+ <DxcInset horizontal="2rem">
119
119
  <Placeholder></Placeholder>
120
120
  </DxcInset>
121
121
  </Container>
122
122
  <Title title="horizontal = xlarge" level={4} />
123
123
  <Container>
124
- <DxcInset horizontal="xlarge">
124
+ <DxcInset horizontal="3rem">
125
125
  <Placeholder></Placeholder>
126
126
  </DxcInset>
127
127
  </Container>
128
128
  <Title title="horizontal = xxlarge" level={4} />
129
129
  <Container>
130
- <DxcInset horizontal="xxlarge">
130
+ <DxcInset horizontal="4rem">
131
131
  <Placeholder></Placeholder>
132
132
  </DxcInset>
133
133
  </Container>
134
134
  <Title title="horizontal = xxxlarge" level={4} />
135
135
  <Container>
136
- <DxcInset horizontal="xxxlarge">
136
+ <DxcInset horizontal="5rem">
137
137
  <Placeholder></Placeholder>
138
138
  </DxcInset>
139
139
  </Container>
140
140
  <Title title="vertical = none" level={4} />
141
141
  <Container>
142
- <DxcInset vertical="none">
142
+ <DxcInset vertical="0rem">
143
143
  <Placeholder></Placeholder>
144
144
  </DxcInset>
145
145
  </Container>
146
146
  <Title title="vertical = xxxsmall" level={4} />
147
147
  <Container>
148
- <DxcInset vertical="xxxsmall">
148
+ <DxcInset vertical="0.125rem">
149
149
  <Placeholder></Placeholder>
150
150
  </DxcInset>
151
151
  </Container>
152
152
  <Title title="vertical = xxsmall" level={4} />
153
153
  <Container>
154
- <DxcInset vertical="xxsmall">
154
+ <DxcInset vertical="0.25rem">
155
155
  <Placeholder></Placeholder>
156
156
  </DxcInset>
157
157
  </Container>
158
158
  <Title title="vertical = xsmall" level={4} />
159
159
  <Container>
160
- <DxcInset vertical="xsmall">
160
+ <DxcInset vertical="0.5rem">
161
161
  <Placeholder></Placeholder>
162
162
  </DxcInset>
163
163
  </Container>
164
164
  <Title title="vertical = small" level={4} />
165
165
  <Container>
166
- <DxcInset vertical="small">
166
+ <DxcInset vertical="1rem">
167
167
  <Placeholder></Placeholder>
168
168
  </DxcInset>
169
169
  </Container>
170
170
  <Title title="vertical = medium" level={4} />
171
171
  <Container>
172
- <DxcInset vertical="medium">
172
+ <DxcInset vertical="1.5rem">
173
173
  <Placeholder></Placeholder>
174
174
  </DxcInset>
175
175
  </Container>
176
176
  <Title title="vertical = large" level={4} />
177
177
  <Container>
178
- <DxcInset vertical="large">
178
+ <DxcInset vertical="2rem">
179
179
  <Placeholder></Placeholder>
180
180
  </DxcInset>
181
181
  </Container>
182
182
  <Title title="vertical = xlarge" level={4} />
183
183
  <Container>
184
- <DxcInset vertical="xlarge">
184
+ <DxcInset vertical="3rem">
185
185
  <Placeholder></Placeholder>
186
186
  </DxcInset>
187
187
  </Container>
188
188
  <Title title="vertical = xxlarge" level={4} />
189
189
  <Container>
190
- <DxcInset vertical="xxlarge">
190
+ <DxcInset vertical="4rem">
191
191
  <Placeholder></Placeholder>
192
192
  </DxcInset>
193
193
  </Container>
194
194
  <Title title="vertical = xxxlarge" level={4} />
195
195
  <Container>
196
- <DxcInset vertical="xxxlarge">
196
+ <DxcInset vertical="5rem">
197
197
  <Placeholder></Placeholder>
198
198
  </DxcInset>
199
199
  </Container>
200
200
  <Title title="top = xxsmall, right= medium, bottom = large and left = xxlarge" level={4} />
201
201
  <Container>
202
- <DxcInset top="xxsmall" right="medium" bottom="large" left="xxlarge">
202
+ <DxcInset top="0.25rem" right="1.5rem" bottom="2rem" left="4rem">
203
203
  <Placeholder></Placeholder>
204
204
  </DxcInset>
205
205
  </Container>
206
- <Title title="Inside a stack" level={4} />
206
+ <Title title="Inside a flex column" level={4} />
207
207
  <Container>
208
- <DxcStack gutter="medium" divider>
208
+ <DxcFlex direction="column" gap="0.75rem">
209
209
  <Placeholder></Placeholder>
210
- <DxcInset top="xxsmall" right="medium" bottom="large" left="xxlarge">
210
+ <DxcInset top="0.25rem" right="1.5rem" bottom="2rem" left="4rem">
211
211
  <Placeholder></Placeholder>
212
212
  </DxcInset>
213
213
  <Placeholder></Placeholder>
214
- </DxcStack>
214
+ </DxcFlex>
215
215
  </Container>
216
216
  </>
217
217
  );
package/inset/types.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
- declare type Spacing = "none" | "xxxsmall" | "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge" | "xxxlarge";
2
+ declare type Spacing = "0rem" | "0.125rem" | "0.25rem" | "0.5rem" | "1rem" | "1.5rem" | "2rem" | "3rem" | "4rem" | "5rem";
3
3
  declare type Props = {
4
4
  /**
5
5
  * Applies the spacing scale to all sides.
@@ -1,10 +1,20 @@
1
- /// <reference types="react" />
2
- import AppLayoutPropsType, { AppLayoutFooterPropsType, AppLayoutMainPropsType, AppLayoutHeaderPropsType } from "./types";
1
+ import React from "react";
2
+ import AppLayoutPropsType, { AppLayoutMainPropsType } from "./types";
3
3
  declare const DxcApplicationLayout: {
4
- ({ children }: AppLayoutPropsType): JSX.Element;
5
- Header: ({ children }: AppLayoutHeaderPropsType) => JSX.Element;
4
+ ({ visibilityToggleLabel, header, sidenav, footer, children, }: AppLayoutPropsType): JSX.Element;
5
+ Header: {
6
+ ({ underlined, content, responsiveContent, onClick, margin, padding, tabIndex, }: import("../header/types").default): JSX.Element;
7
+ Dropdown: (props: any) => JSX.Element;
8
+ };
6
9
  Main: ({ children }: AppLayoutMainPropsType) => JSX.Element;
7
- Footer: ({ children }: AppLayoutFooterPropsType) => JSX.Element;
8
- SideNav: (props: any) => JSX.Element;
10
+ Footer: ({ socialLinks, bottomLinks, copyright, children, padding, margin, tabIndex, }: import("../footer/types").default) => JSX.Element;
11
+ SideNav: {
12
+ ({ children, title }: import("../sidenav/types").default): JSX.Element;
13
+ Section: ({ children }: import("../sidenav/types").SidenavSectionPropsType) => JSX.Element;
14
+ Group: ({ children, title, collapsable, icon }: import("../sidenav/types").SidenavGroupPropsType) => JSX.Element;
15
+ Link: React.ForwardRefExoticComponent<import("../sidenav/types").SidenavLinkPropsType & React.RefAttributes<HTMLAnchorElement>>;
16
+ Title: ({ children }: import("../sidenav/types").SidenavTitlePropsType) => JSX.Element;
17
+ };
18
+ useResponsiveSidenavVisibility: () => (isSidenavVisible: boolean) => void;
9
19
  };
10
20
  export default DxcApplicationLayout;