@dxc-technology/halstack-react 0.0.0-59568e7 → 0.0.0-5aa300b

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 (205) hide show
  1. package/HalstackContext.js +7 -11
  2. package/accordion/Accordion.js +117 -104
  3. package/accordion/Accordion.stories.tsx +54 -15
  4. package/accordion/Accordion.test.js +9 -10
  5. package/accordion/types.d.ts +5 -4
  6. package/accordion-group/AccordionGroup.js +2 -21
  7. package/accordion-group/AccordionGroup.stories.tsx +27 -1
  8. package/accordion-group/AccordionGroup.test.js +20 -45
  9. package/accordion-group/types.d.ts +10 -3
  10. package/alert/Alert.js +1 -1
  11. package/badge/Badge.d.ts +1 -1
  12. package/badge/Badge.js +5 -3
  13. package/badge/types.d.ts +1 -0
  14. package/bleed/Bleed.js +1 -34
  15. package/bleed/Bleed.stories.tsx +94 -95
  16. package/bleed/types.d.ts +1 -1
  17. package/box/Box.js +23 -33
  18. package/box/types.d.ts +1 -0
  19. package/bulleted-list/BulletedList.d.ts +7 -0
  20. package/bulleted-list/BulletedList.js +123 -0
  21. package/bulleted-list/BulletedList.stories.tsx +200 -0
  22. package/bulleted-list/types.d.ts +11 -0
  23. package/{list → bulleted-list}/types.js +0 -0
  24. package/button/Button.js +50 -70
  25. package/button/Button.stories.tsx +61 -1
  26. package/button/types.d.ts +7 -7
  27. package/card/Card.js +34 -36
  28. package/card/types.d.ts +1 -0
  29. package/checkbox/Checkbox.d.ts +2 -2
  30. package/checkbox/Checkbox.js +92 -99
  31. package/checkbox/Checkbox.stories.tsx +79 -59
  32. package/checkbox/Checkbox.test.js +93 -16
  33. package/checkbox/types.d.ts +6 -2
  34. package/chip/Chip.js +11 -23
  35. package/chip/Chip.stories.tsx +41 -9
  36. package/chip/types.d.ts +1 -1
  37. package/common/variables.js +186 -158
  38. package/date-input/Calendar.d.ts +4 -0
  39. package/date-input/Calendar.js +258 -0
  40. package/date-input/DateInput.js +77 -222
  41. package/date-input/DateInput.stories.tsx +30 -17
  42. package/date-input/DateInput.test.js +411 -138
  43. package/date-input/DatePicker.d.ts +4 -0
  44. package/date-input/DatePicker.js +160 -0
  45. package/date-input/YearPicker.d.ts +4 -0
  46. package/date-input/YearPicker.js +115 -0
  47. package/date-input/types.d.ts +53 -0
  48. package/dialog/Dialog.js +52 -28
  49. package/dialog/Dialog.stories.tsx +57 -2
  50. package/dialog/Dialog.test.js +34 -4
  51. package/dialog/types.d.ts +3 -2
  52. package/dropdown/Dropdown.d.ts +1 -1
  53. package/dropdown/Dropdown.js +247 -249
  54. package/dropdown/Dropdown.stories.tsx +135 -64
  55. package/dropdown/Dropdown.test.js +504 -108
  56. package/dropdown/DropdownMenu.d.ts +4 -0
  57. package/dropdown/DropdownMenu.js +80 -0
  58. package/dropdown/DropdownMenuItem.d.ts +4 -0
  59. package/dropdown/DropdownMenuItem.js +92 -0
  60. package/dropdown/types.d.ts +25 -5
  61. package/file-input/FileInput.d.ts +2 -2
  62. package/file-input/FileInput.js +177 -219
  63. package/file-input/FileInput.stories.tsx +38 -10
  64. package/file-input/FileInput.test.js +53 -12
  65. package/file-input/FileItem.d.ts +4 -14
  66. package/file-input/FileItem.js +38 -63
  67. package/file-input/types.d.ts +17 -0
  68. package/flex/Flex.d.ts +4 -0
  69. package/flex/Flex.js +69 -0
  70. package/flex/Flex.stories.tsx +103 -0
  71. package/flex/types.d.ts +32 -0
  72. package/{radio → flex}/types.js +0 -0
  73. package/footer/Footer.stories.tsx +8 -1
  74. package/footer/Icons.js +1 -1
  75. package/footer/types.d.ts +2 -1
  76. package/header/Header.js +74 -72
  77. package/header/Header.stories.tsx +4 -4
  78. package/header/Icons.js +2 -2
  79. package/header/types.d.ts +3 -2
  80. package/inset/Inset.js +1 -34
  81. package/inset/Inset.stories.tsx +36 -36
  82. package/inset/types.d.ts +1 -1
  83. package/layout/ApplicationLayout.d.ts +16 -6
  84. package/layout/ApplicationLayout.js +70 -117
  85. package/layout/ApplicationLayout.stories.tsx +84 -93
  86. package/layout/Icons.d.ts +5 -0
  87. package/layout/Icons.js +13 -2
  88. package/layout/SidenavContext.d.ts +5 -0
  89. package/layout/SidenavContext.js +19 -0
  90. package/layout/types.d.ts +18 -33
  91. package/link/Link.d.ts +2 -2
  92. package/link/Link.js +24 -50
  93. package/link/Link.stories.tsx +13 -6
  94. package/link/types.d.ts +3 -4
  95. package/main.d.ts +6 -9
  96. package/main.js +32 -56
  97. package/number-input/NumberInput.test.js +43 -7
  98. package/package.json +16 -20
  99. package/paginator/Icons.d.ts +5 -0
  100. package/paginator/Icons.js +16 -28
  101. package/paginator/Paginator.js +6 -12
  102. package/paginator/Paginator.test.js +43 -1
  103. package/paragraph/Paragraph.d.ts +6 -0
  104. package/paragraph/Paragraph.js +38 -0
  105. package/paragraph/Paragraph.stories.tsx +44 -0
  106. package/password-input/PasswordInput.test.js +13 -12
  107. package/progress-bar/ProgressBar.d.ts +2 -2
  108. package/progress-bar/ProgressBar.js +56 -50
  109. package/progress-bar/ProgressBar.stories.jsx +3 -1
  110. package/progress-bar/ProgressBar.test.js +67 -22
  111. package/progress-bar/types.d.ts +3 -4
  112. package/quick-nav/QuickNav.js +25 -20
  113. package/quick-nav/QuickNav.stories.tsx +131 -26
  114. package/radio-group/Radio.d.ts +1 -1
  115. package/radio-group/Radio.js +43 -28
  116. package/radio-group/RadioGroup.js +23 -22
  117. package/radio-group/RadioGroup.stories.tsx +1 -0
  118. package/radio-group/RadioGroup.test.js +123 -96
  119. package/radio-group/types.d.ts +2 -2
  120. package/resultsetTable/Icons.d.ts +7 -0
  121. package/resultsetTable/Icons.js +51 -0
  122. package/resultsetTable/ResultsetTable.js +48 -107
  123. package/resultsetTable/ResultsetTable.stories.tsx +50 -25
  124. package/resultsetTable/ResultsetTable.test.js +65 -41
  125. package/resultsetTable/types.d.ts +2 -2
  126. package/select/Listbox.d.ts +1 -1
  127. package/select/Listbox.js +53 -7
  128. package/select/Option.js +8 -10
  129. package/select/Select.js +43 -43
  130. package/select/Select.stories.tsx +225 -136
  131. package/select/Select.test.js +363 -250
  132. package/select/types.d.ts +2 -5
  133. package/sidenav/Sidenav.d.ts +6 -5
  134. package/sidenav/Sidenav.js +182 -52
  135. package/sidenav/Sidenav.stories.tsx +163 -156
  136. package/sidenav/Sidenav.test.js +25 -37
  137. package/sidenav/types.d.ts +50 -27
  138. package/slider/Slider.d.ts +2 -2
  139. package/slider/Slider.js +120 -95
  140. package/slider/Slider.stories.tsx +7 -1
  141. package/slider/Slider.test.js +121 -21
  142. package/slider/types.d.ts +6 -2
  143. package/spinner/Spinner.js +2 -2
  144. package/switch/Switch.d.ts +2 -2
  145. package/switch/Switch.js +135 -68
  146. package/switch/Switch.stories.tsx +8 -30
  147. package/switch/Switch.test.js +144 -17
  148. package/switch/types.d.ts +6 -2
  149. package/table/Table.js +1 -1
  150. package/table/Table.test.js +1 -1
  151. package/tabs/Tab.d.ts +4 -0
  152. package/tabs/Tab.js +133 -0
  153. package/tabs/Tabs.js +360 -104
  154. package/tabs/Tabs.stories.tsx +81 -5
  155. package/tabs/Tabs.test.js +217 -6
  156. package/tabs/types.d.ts +15 -5
  157. package/tabs-nav/NavTabs.d.ts +8 -0
  158. package/tabs-nav/NavTabs.js +125 -0
  159. package/tabs-nav/NavTabs.stories.tsx +172 -0
  160. package/tabs-nav/NavTabs.test.js +82 -0
  161. package/tabs-nav/Tab.d.ts +4 -0
  162. package/tabs-nav/Tab.js +128 -0
  163. package/tabs-nav/types.d.ts +53 -0
  164. package/{row → tabs-nav}/types.js +0 -0
  165. package/tag/Tag.js +1 -1
  166. package/tag/types.d.ts +1 -1
  167. package/text-input/Icons.d.ts +8 -0
  168. package/text-input/Icons.js +60 -0
  169. package/text-input/Suggestion.js +38 -9
  170. package/text-input/Suggestions.d.ts +4 -0
  171. package/text-input/Suggestions.js +134 -0
  172. package/text-input/TextInput.js +195 -292
  173. package/text-input/TextInput.stories.tsx +211 -185
  174. package/text-input/TextInput.test.js +737 -725
  175. package/text-input/types.d.ts +22 -3
  176. package/toggle-group/types.d.ts +1 -1
  177. package/typography/Typography.d.ts +4 -0
  178. package/typography/Typography.js +131 -0
  179. package/typography/Typography.stories.tsx +198 -0
  180. package/typography/types.d.ts +18 -0
  181. package/{stack → typography}/types.js +0 -0
  182. package/wizard/Wizard.js +9 -16
  183. package/wizard/Wizard.stories.tsx +20 -1
  184. package/wizard/types.d.ts +5 -4
  185. package/common/RequiredComponent.js +0 -32
  186. package/list/List.d.ts +0 -4
  187. package/list/List.js +0 -47
  188. package/list/List.stories.tsx +0 -95
  189. package/list/types.d.ts +0 -7
  190. package/radio/Radio.d.ts +0 -4
  191. package/radio/Radio.js +0 -173
  192. package/radio/Radio.stories.tsx +0 -192
  193. package/radio/Radio.test.js +0 -71
  194. package/radio/types.d.ts +0 -54
  195. package/row/Row.d.ts +0 -3
  196. package/row/Row.js +0 -127
  197. package/row/Row.stories.tsx +0 -237
  198. package/row/types.d.ts +0 -28
  199. package/stack/Stack.d.ts +0 -3
  200. package/stack/Stack.js +0 -97
  201. package/stack/Stack.stories.tsx +0 -164
  202. package/stack/types.d.ts +0 -24
  203. package/text/Text.d.ts +0 -7
  204. package/text/Text.js +0 -30
  205. package/text/Text.stories.tsx +0 -19
@@ -13,19 +13,19 @@ var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
13
13
 
14
14
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
15
15
 
16
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
17
+
16
18
  var _react = _interopRequireWildcard(require("react"));
17
19
 
18
20
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
19
21
 
20
- var _LinearProgress = _interopRequireDefault(require("@material-ui/core/LinearProgress"));
21
-
22
22
  var _variables = require("../common/variables.js");
23
23
 
24
24
  var _useTheme = _interopRequireDefault(require("../useTheme"));
25
25
 
26
26
  var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext"));
27
27
 
28
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6;
28
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8;
29
29
 
30
30
  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); }
31
31
 
@@ -44,72 +44,56 @@ var DxcProgressBar = function DxcProgressBar(_ref) {
44
44
  margin = _ref.margin;
45
45
  var colorsTheme = (0, _useTheme["default"])();
46
46
  var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
47
+
48
+ var _useState = (0, _react.useState)(0),
49
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
50
+ valueProgressBar = _useState2[0],
51
+ setValueProgressBar = _useState2[1];
52
+
53
+ (0, _react.useEffect)(function () {
54
+ setValueProgressBar(value === null || value === undefined || value < 0 ? 0 : value >= 0 && value <= 100 ? value : 100);
55
+ }, [value]);
47
56
  return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
48
57
  theme: colorsTheme.progressBar
49
58
  }, /*#__PURE__*/_react["default"].createElement(BackgroundProgressBar, {
50
59
  overlay: overlay
51
- }, /*#__PURE__*/_react["default"].createElement(DXCProgressBar, {
60
+ }, /*#__PURE__*/_react["default"].createElement(ProgressBarContainer, {
52
61
  overlay: overlay,
53
- margin: margin,
54
- backgroundType: backgroundType
62
+ margin: margin
55
63
  }, /*#__PURE__*/_react["default"].createElement(InfoProgressBar, null, /*#__PURE__*/_react["default"].createElement(ProgressBarLabel, {
56
64
  overlay: overlay,
57
- backgroundType: backgroundType
65
+ backgroundType: backgroundType,
66
+ "aria-label": label || undefined
58
67
  }, label), /*#__PURE__*/_react["default"].createElement(ProgressBarProgress, {
59
68
  overlay: overlay,
60
69
  showValue: showValue,
61
- backgroundType: backgroundType
62
- }, value === null || value === undefined ? 0 : value >= 0 && value <= 100 ? value : value < 0 ? 0 : 100, " %")), /*#__PURE__*/_react["default"].createElement(_LinearProgress["default"], {
63
- variant: showValue ? "determinate" : "indeterminate",
64
- value: value === null || value === undefined ? 0 : value >= 0 && value <= 100 ? value : value < 0 ? 0 : 100
65
- }), helperText && /*#__PURE__*/_react["default"].createElement(HelperText, {
70
+ backgroundType: backgroundType,
71
+ value: valueProgressBar
72
+ }, valueProgressBar, " %")), /*#__PURE__*/_react["default"].createElement(LinearProgress, {
73
+ role: "progressbar",
74
+ helperText: helperText,
75
+ "aria-valuenow": showValue ? valueProgressBar : undefined
76
+ }, /*#__PURE__*/_react["default"].createElement(LinearProgressBar, {
77
+ backgroundType: backgroundType,
78
+ variant: value === null || value === undefined ? "indeterminate" : "determinate",
79
+ container: "first",
80
+ value: valueProgressBar
81
+ })), helperText && /*#__PURE__*/_react["default"].createElement(HelperText, {
66
82
  overlay: overlay,
67
83
  backgroundType: backgroundType
68
84
  }, helperText))));
69
85
  };
70
86
 
71
- var BackgroundProgressBar = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n background-color: ", ";\n opacity: ", ";\n width: ", ";\n display: flex;\n flex-wrap: wrap;\n justify-content: ", ";\n height: ", ";\n align-items: ", ";\n min-width: 100px;\n max-width: ", ";\n position: ", ";\n top: ", ";\n bottom: ", ";\n left: ", ";\n right: ", ";\n z-index: ", ";\n width: 100%;\n"])), function (props) {
72
- return props.overlay === true ? "".concat(props.theme.overlayColor) : "transparent";
73
- }, function (props) {
74
- return props.overlay === true && "0.8";
75
- }, function (props) {
76
- return props.overlay === true ? "100%" : "";
77
- }, function (props) {
78
- return props.overlay === true ? "center" : "";
79
- }, function (props) {
80
- return props.overlay === true ? "100vh" : "";
81
- }, function (props) {
82
- return props.overlay === true ? "center" : "";
83
- }, function (props) {
84
- return props.overlay === true ? "100%" : "";
85
- }, function (props) {
86
- return props.overlay === true ? "fixed" : "";
87
- }, function (props) {
88
- return props.overlay === true ? "0" : "";
89
- }, function (props) {
90
- return props.overlay === true ? "0" : "";
91
- }, function (props) {
92
- return props.overlay === true ? "0" : "";
93
- }, function (props) {
94
- return props.overlay === true ? "0" : "";
95
- }, function (props) {
96
- return props.overlay ? 1300 : "";
87
+ var BackgroundProgressBar = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n ", "\n display: flex;\n flex-wrap: wrap;\n min-width: 100px;\n width: 100%;\n"])), function (_ref2) {
88
+ var overlay = _ref2.overlay,
89
+ theme = _ref2.theme;
90
+ return overlay ? "background-color: ".concat(theme.overlayColor, ";\n opacity: 0.8;\n width: 100%;\n justify-content: center;\n height: 100vh;\n align-items: center;\n max-width: 100%;\n position: fixed;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n z-index: 1300;") : "background-color: \"transparent\";";
97
91
  });
98
92
 
99
- var DXCProgressBar = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n z-index: ", ";\n width: ", ";\n .MuiLinearProgress-root {\n height: ", ";\n background-color: ", ";\n border-radius: ", ";\n margin-bottom: ", ";\n }\n .MuiLinearProgress-bar {\n background-color: ", ";\n }\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n"])), function (props) {
93
+ var ProgressBarContainer = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n z-index: ", ";\n width: ", ";\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n"])), function (props) {
100
94
  return props.overlay === true && "100" || "0";
101
95
  }, function (props) {
102
96
  return props.overlay === true ? "80%" : "100%";
103
- }, function (props) {
104
- return props.theme.thickness;
105
- }, function (props) {
106
- return props.theme.totalLineColor;
107
- }, function (props) {
108
- return props.theme.borderRadius;
109
- }, function (props) {
110
- return props.helperText !== "" && "8px";
111
- }, function (props) {
112
- return props.backgroundType === "dark" ? props.theme.trackLineColorOnDark : props.theme.trackLineColor;
113
97
  }, function (props) {
114
98
  return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
115
99
  }, function (props) {
@@ -151,7 +135,7 @@ var ProgressBarProgress = _styledComponents["default"].div(_templateObject5 || (
151
135
  }, function (props) {
152
136
  return props.backgroundType === "dark" ? props.theme.valueFontColorOnDark : props.overlay === true ? "#FFFFFF" : props.theme.valueFontColor;
153
137
  }, function (props) {
154
- return props.value !== "" && props.showValue === true && "block" || "none";
138
+ return props.value !== undefined && props.value !== null && props.showValue === true && "block" || "none";
155
139
  });
156
140
 
157
141
  var HelperText = _styledComponents["default"].span(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: 1.5em;\n"])), function (props) {
@@ -166,5 +150,27 @@ var HelperText = _styledComponents["default"].span(_templateObject6 || (_templat
166
150
  return props.theme.helperTextFontWeight;
167
151
  });
168
152
 
153
+ var LinearProgress = _styledComponents["default"].div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n height: ", ";\n background-color: ", ";\n border-radius: ", ";\n margin-bottom: ", ";\n overflow: hidden;\n position: relative;\n"])), function (props) {
154
+ return props.theme.thickness;
155
+ }, function (props) {
156
+ return props.theme.totalLineColor;
157
+ }, function (props) {
158
+ return props.theme.borderRadius;
159
+ }, function (props) {
160
+ return props.helperText !== "" && "8px";
161
+ });
162
+
163
+ var LinearProgressBar = _styledComponents["default"].span(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n background-color: ", ";\n transform: ", ";\n top: 0;\n left: 0;\n width: 100%;\n bottom: 0;\n position: absolute;\n transition: ", ";\n transform-origin: left;\n ", ";\n ", ";\n\n @keyframes keyframes-indeterminate-first {\n 0% {\n left: -35%;\n right: 100%;\n }\n 60% {\n left: 100%;\n right: -90%;\n }\n 100% {\n left: 100%;\n right: -90%;\n }\n }\n\n @keyframes keyframes-indeterminate-second {\n 0% {\n left: -200%;\n right: 100%;\n }\n 60% {\n left: 107%;\n right: -8%;\n }\n 100% {\n left: 107%;\n right: -8%;\n }\n }\n"])), function (props) {
164
+ return props.backgroundType === "dark" ? props.theme.trackLineColorOnDark : props.theme.trackLineColor;
165
+ }, function (props) {
166
+ return "translateX(-".concat(props.variant === "determinate" ? 100 - props.value : 0, "%)");
167
+ }, function (props) {
168
+ return props.variant === "determinate" ? "transform .4s linear" : "transform 0.2s linear";
169
+ }, function (props) {
170
+ return props.variant === "indeterminate" && "width: auto;";
171
+ }, function (props) {
172
+ return props.variant === "indeterminate" ? props.container === "first" ? "animation: keyframes-indeterminate-first 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite;" : "animation: keyframes-indeterminate-second 2.1s cubic-bezier(0.165, 0.84, 0.44, 1) 1.15s infinite;" : "";
173
+ });
174
+
169
175
  var _default = DxcProgressBar;
170
176
  exports["default"] = _default;
@@ -14,9 +14,11 @@ export const Chromatic = () => (
14
14
  <Title title="Without labels" theme="light" level={4} />
15
15
  <DxcProgressBar value={50} showValue />
16
16
  <Title title="With helperText" theme="light" level={4} />
17
- <DxcProgressBar helperText="Helper text" value={50} showValue />
17
+ <DxcProgressBar helperText="Helper text" value={24} showValue />
18
18
  <Title title="Without default value" theme="light" level={4} />
19
19
  <DxcProgressBar label="Loading..." showValue />
20
+ <Title title="With full value" theme="light" level={4} />
21
+ <DxcProgressBar label="Loading..." value={100} showValue />
20
22
  </ExampleContainer>
21
23
  <Title title="Margins" theme="light" level={2} />
22
24
  <ExampleContainer>
@@ -9,57 +9,102 @@ var _react2 = require("@testing-library/react");
9
9
  var _ProgressBar = _interopRequireDefault(require("./ProgressBar"));
10
10
 
11
11
  describe("ProgressBar component tests", function () {
12
- test("ProgressBar renders with label", function () {
12
+ test("ProgressBar renders with label and helperText", function () {
13
13
  var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ProgressBar["default"], {
14
- label: "test-label"
14
+ label: "test-label",
15
+ helperText: "helper-text"
15
16
  })),
16
17
  getByText = _render.getByText;
17
18
 
18
19
  expect(getByText("test-label")).toBeTruthy();
20
+ expect(getByText("helper-text")).toBeTruthy();
19
21
  });
20
- test("Overlay progressBar renders with label", function () {
22
+ test("ProgressBar renders with default value", function () {
23
+ var value = 0;
24
+
21
25
  var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ProgressBar["default"], {
22
- label: "test-label",
23
- overlay: true
26
+ showValue: true
24
27
  })),
25
- getByText = _render2.getByText;
28
+ getByText = _render2.getByText,
29
+ getByRole = _render2.getByRole;
26
30
 
27
- expect(getByText("test-label")).toBeTruthy();
31
+ var progressBar = getByRole("progressbar");
32
+ expect(getByText("0 %")).toBeTruthy();
33
+ expect(progressBar.getAttribute("aria-valuenow")).toEqual(value.toString());
28
34
  });
29
- test("ProgressBar renders with default value", function () {
35
+ test("ProgressBar renders with value", function () {
36
+ var value = 25;
37
+
30
38
  var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ProgressBar["default"], {
31
- showValue: true
39
+ showValue: true,
40
+ value: value
32
41
  })),
33
- getByText = _render3.getByText;
42
+ getByText = _render3.getByText,
43
+ getByRole = _render3.getByRole;
34
44
 
35
- expect(getByText("0 %")).toBeTruthy();
45
+ var progressBar = getByRole("progressbar");
46
+ expect(getByText("25 %")).toBeTruthy();
47
+ expect(progressBar.getAttribute("aria-valuenow")).toEqual(value.toString());
36
48
  });
37
- test("Overlay progressBar renders with default value", function () {
49
+ test("ProgressBar renders with negative value", function () {
50
+ var value = 0;
51
+
38
52
  var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ProgressBar["default"], {
39
53
  showValue: true,
40
- overlay: true
54
+ value: -20
41
55
  })),
42
- getByText = _render4.getByText;
56
+ getByText = _render4.getByText,
57
+ getByRole = _render4.getByRole;
43
58
 
59
+ var progressBar = getByRole("progressbar");
44
60
  expect(getByText("0 %")).toBeTruthy();
61
+ expect(progressBar.getAttribute("aria-valuenow")).toEqual(value.toString());
45
62
  });
46
- test("ProgressBar renders with value", function () {
47
- var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ProgressBar["default"], {
63
+ test("ProgressBar renders as indeterminate", function () {
64
+ var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ProgressBar["default"], null)),
65
+ getByRole = _render5.getByRole;
66
+
67
+ var progressBar = getByRole("progressbar");
68
+ expect(progressBar.getAttribute("aria-valuenow")).toBe(null);
69
+ });
70
+ test("Overlay progressBar renders with label and helperText", function () {
71
+ var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ProgressBar["default"], {
72
+ label: "test-label",
73
+ helperText: "helper-text",
74
+ overlay: true
75
+ })),
76
+ getByText = _render6.getByText;
77
+
78
+ expect(getByText("test-label")).toBeTruthy();
79
+ expect(getByText("helper-text")).toBeTruthy();
80
+ });
81
+ test("Overlay progressBar renders with default value", function () {
82
+ var value = 0;
83
+
84
+ var _render7 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ProgressBar["default"], {
48
85
  showValue: true,
49
- value: 25
86
+ overlay: true
50
87
  })),
51
- getByText = _render5.getByText;
88
+ getByText = _render7.getByText,
89
+ getByRole = _render7.getByRole;
52
90
 
53
- expect(getByText("25 %")).toBeTruthy();
91
+ var progressBar = getByRole("progressbar");
92
+ expect(getByText("0 %")).toBeTruthy();
93
+ expect(progressBar.getAttribute("aria-valuenow")).toEqual(value.toString());
54
94
  });
55
95
  test("Overlay progressBar renders with value", function () {
56
- var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ProgressBar["default"], {
96
+ var value = 25;
97
+
98
+ var _render8 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ProgressBar["default"], {
57
99
  showValue: true,
58
- value: 25,
100
+ value: value,
59
101
  overlay: true
60
102
  })),
61
- getByText = _render6.getByText;
103
+ getByText = _render8.getByText,
104
+ getByRole = _render8.getByRole;
62
105
 
106
+ var progressBar = getByRole("progressbar");
63
107
  expect(getByText("25 %")).toBeTruthy();
108
+ expect(progressBar.getAttribute("aria-valuenow")).toEqual(value.toString());
64
109
  });
65
110
  });
@@ -1,11 +1,11 @@
1
- declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
2
- declare type Size = {
1
+ export declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
2
+ export declare type Size = {
3
3
  top?: Space;
4
4
  bottom?: Space;
5
5
  left?: Space;
6
6
  right?: Space;
7
7
  };
8
- declare type Props = {
8
+ export declare type Props = {
9
9
  /**
10
10
  * Text to be placed above the progress bar.
11
11
  */
@@ -34,4 +34,3 @@ declare type Props = {
34
34
  */
35
35
  margin?: Space | Size;
36
36
  };
37
- export default Props;
@@ -21,11 +21,11 @@ var _useTheme = _interopRequireDefault(require("../useTheme"));
21
21
 
22
22
  var _Heading = _interopRequireDefault(require("../heading/Heading"));
23
23
 
24
- var _Stack = _interopRequireDefault(require("../stack/Stack"));
24
+ var _Flex = _interopRequireDefault(require("../flex/Flex"));
25
25
 
26
26
  var _Inset = _interopRequireDefault(require("../inset/Inset"));
27
27
 
28
- var _Text = _interopRequireDefault(require("../text/Text"));
28
+ var _Typography = _interopRequireDefault(require("../typography/Typography"));
29
29
 
30
30
  var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
31
31
 
@@ -42,32 +42,37 @@ var DxcQuickNav = function DxcQuickNav(_ref) {
42
42
  var colorsTheme = (0, _useTheme["default"])();
43
43
  return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
44
44
  theme: colorsTheme.quickNav
45
- }, /*#__PURE__*/_react["default"].createElement(QuickNavContainer, null, /*#__PURE__*/_react["default"].createElement(_Stack["default"], {
46
- gutter: "xsmall"
45
+ }, /*#__PURE__*/_react["default"].createElement(QuickNavContainer, null, /*#__PURE__*/_react["default"].createElement(_Flex["default"], {
46
+ direction: "column",
47
+ gap: "0.5rem"
47
48
  }, /*#__PURE__*/_react["default"].createElement(_Heading["default"], {
48
49
  level: 4,
49
50
  text: title || translatedLabels.quickNav.contentTitle
50
- }), /*#__PURE__*/_react["default"].createElement(ListColumn, null, /*#__PURE__*/_react["default"].createElement(_Stack["default"], {
51
- gutter: "xsmall"
52
- }, links.map(function (link) {
51
+ }), /*#__PURE__*/_react["default"].createElement(ListColumn, null, links.map(function (link) {
53
52
  var _link$links;
54
53
 
55
- return /*#__PURE__*/_react["default"].createElement(ListRow, null, /*#__PURE__*/_react["default"].createElement(_Inset["default"], {
56
- space: "xxsmall"
57
- }, /*#__PURE__*/_react["default"].createElement(_Text["default"], null, /*#__PURE__*/_react["default"].createElement(Link, {
54
+ return /*#__PURE__*/_react["default"].createElement("li", {
55
+ key: link.label
56
+ }, /*#__PURE__*/_react["default"].createElement(_Inset["default"], {
57
+ space: "0.25rem"
58
+ }, /*#__PURE__*/_react["default"].createElement(_Typography["default"], null, /*#__PURE__*/_react["default"].createElement(Link, {
58
59
  href: "#".concat((0, _slugify["default"])(link === null || link === void 0 ? void 0 : link.label, {
59
60
  lower: true
60
61
  }))
61
- }, link === null || link === void 0 ? void 0 : link.label), (_link$links = link.links) === null || _link$links === void 0 ? void 0 : _link$links.map(function (sublink) {
62
- return /*#__PURE__*/_react["default"].createElement(ListRow, null, /*#__PURE__*/_react["default"].createElement(_Inset["default"], {
63
- horizontal: "xsmall"
64
- }, /*#__PURE__*/_react["default"].createElement(_Text["default"], null, /*#__PURE__*/_react["default"].createElement(Link, {
65
- href: "#".concat((0, _slugify["default"])(sublink === null || sublink === void 0 ? void 0 : sublink.label, {
62
+ }, link === null || link === void 0 ? void 0 : link.label), /*#__PURE__*/_react["default"].createElement(ListSecondColumn, null, (_link$links = link.links) === null || _link$links === void 0 ? void 0 : _link$links.map(function (sublink) {
63
+ return /*#__PURE__*/_react["default"].createElement("li", {
64
+ key: sublink.label
65
+ }, /*#__PURE__*/_react["default"].createElement(_Inset["default"], {
66
+ horizontal: "0.5rem"
67
+ }, /*#__PURE__*/_react["default"].createElement(_Typography["default"], null, /*#__PURE__*/_react["default"].createElement(Link, {
68
+ href: "#".concat((0, _slugify["default"])(link === null || link === void 0 ? void 0 : link.label, {
69
+ lower: true
70
+ }), "-").concat((0, _slugify["default"])(sublink === null || sublink === void 0 ? void 0 : sublink.label, {
66
71
  lower: true
67
72
  }))
68
73
  }, sublink === null || sublink === void 0 ? void 0 : sublink.label))));
69
- }))));
70
- }))))));
74
+ })))));
75
+ })))));
71
76
  };
72
77
 
73
78
  var QuickNavContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n padding-top: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n padding-right: ", ";\n border-left: 2px solid ", ";\n"])), function (props) {
@@ -82,11 +87,11 @@ var QuickNavContainer = _styledComponents["default"].div(_templateObject || (_te
82
87
  return props.theme.dividerBorderColor;
83
88
  });
84
89
 
85
- var ListColumn = _styledComponents["default"].ul(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n list-style-type: none;\n margin: 0;\n padding: 0;\n"])));
90
+ var ListColumn = _styledComponents["default"].ul(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n gap: 0.5rem;\n margin: 0;\n padding: 0;\n list-style-type: none;\n"])));
86
91
 
87
- var ListRow = _styledComponents["default"].li(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])([""])));
92
+ var ListSecondColumn = _styledComponents["default"].ul(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n margin: 0;\n padding: 0;\n list-style-type: none;\n"])));
88
93
 
89
- var Link = _styledComponents["default"].a(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n text-decoration: none;\n font-size: ", ";\n font-family: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n\n &:hover {\n color: ", ";\n }\n &:focus {\n outline-color: ", ";\n outline-style: ", ";\n outline-width: ", ";\n border-radius: ", ";\n }\n"])), function (props) {
94
+ var Link = _styledComponents["default"].a(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n text-decoration: none;\n font-size: ", ";\n font-family: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n display: block;\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n width: fit-content;\n max-width: 100%;\n\n &:hover {\n color: ", ";\n }\n &:focus {\n outline-color: ", ";\n outline-style: ", ";\n outline-width: ", ";\n border-radius: ", ";\n }\n"])), function (props) {
90
95
  return props.theme.fontSize;
91
96
  }, function (props) {
92
97
  return props.theme.fontFamily;