@dxc-technology/halstack-react 0.0.0-d3554d7 → 0.0.0-d3df47e

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 (331) hide show
  1. package/BackgroundColorContext.d.ts +1 -10
  2. package/BackgroundColorContext.js +5 -22
  3. package/HalstackContext.d.ts +1221 -0
  4. package/HalstackContext.js +310 -0
  5. package/README.md +47 -0
  6. package/accordion/Accordion.d.ts +1 -1
  7. package/accordion/Accordion.js +116 -181
  8. package/accordion/Accordion.stories.tsx +103 -127
  9. package/accordion/Accordion.test.js +32 -33
  10. package/accordion/types.d.ts +9 -16
  11. package/accordion-group/AccordionGroup.d.ts +5 -4
  12. package/accordion-group/AccordionGroup.js +38 -107
  13. package/accordion-group/AccordionGroup.stories.tsx +95 -68
  14. package/accordion-group/AccordionGroup.test.js +55 -90
  15. package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
  16. package/accordion-group/AccordionGroupAccordion.js +31 -0
  17. package/accordion-group/types.d.ts +15 -16
  18. package/action-icon/ActionIcon.d.ts +4 -0
  19. package/action-icon/ActionIcon.js +47 -0
  20. package/action-icon/ActionIcon.stories.tsx +41 -0
  21. package/action-icon/ActionIcon.test.js +64 -0
  22. package/action-icon/types.d.ts +26 -0
  23. package/alert/Alert.js +23 -59
  24. package/alert/Alert.stories.tsx +28 -0
  25. package/alert/Alert.test.js +29 -46
  26. package/alert/types.d.ts +5 -5
  27. package/badge/Badge.d.ts +1 -1
  28. package/badge/Badge.js +142 -40
  29. package/badge/Badge.stories.tsx +210 -0
  30. package/badge/Badge.test.js +30 -0
  31. package/badge/types.d.ts +52 -2
  32. package/bleed/Bleed.js +14 -55
  33. package/bleed/Bleed.stories.tsx +95 -95
  34. package/bleed/types.d.ts +26 -2
  35. package/box/Box.d.ts +1 -1
  36. package/box/Box.js +30 -81
  37. package/box/Box.stories.tsx +38 -51
  38. package/box/Box.test.js +2 -7
  39. package/box/types.d.ts +3 -14
  40. package/bulleted-list/BulletedList.d.ts +7 -0
  41. package/bulleted-list/BulletedList.js +89 -0
  42. package/bulleted-list/BulletedList.stories.tsx +115 -0
  43. package/bulleted-list/types.d.ts +38 -0
  44. package/button/Button.d.ts +1 -1
  45. package/button/Button.js +62 -113
  46. package/button/Button.stories.tsx +160 -90
  47. package/button/Button.test.js +20 -17
  48. package/button/types.d.ts +12 -8
  49. package/card/Card.d.ts +1 -1
  50. package/card/Card.js +58 -102
  51. package/card/Card.stories.tsx +12 -42
  52. package/card/Card.test.js +11 -22
  53. package/card/types.d.ts +6 -11
  54. package/checkbox/Checkbox.d.ts +2 -2
  55. package/checkbox/Checkbox.js +144 -182
  56. package/checkbox/Checkbox.stories.tsx +166 -136
  57. package/checkbox/Checkbox.test.js +163 -29
  58. package/checkbox/types.d.ts +18 -6
  59. package/chip/Chip.js +39 -79
  60. package/chip/Chip.stories.tsx +121 -26
  61. package/chip/Chip.test.js +16 -31
  62. package/chip/types.d.ts +4 -4
  63. package/common/OpenSans.css +68 -80
  64. package/common/coreTokens.d.ts +237 -0
  65. package/common/coreTokens.js +184 -0
  66. package/common/utils.d.ts +1 -0
  67. package/common/utils.js +6 -12
  68. package/common/variables.d.ts +1367 -0
  69. package/common/variables.js +1002 -1136
  70. package/container/Container.d.ts +4 -0
  71. package/container/Container.js +194 -0
  72. package/container/Container.stories.tsx +214 -0
  73. package/container/types.d.ts +74 -0
  74. package/date-input/Calendar.d.ts +4 -0
  75. package/date-input/Calendar.js +214 -0
  76. package/date-input/DateInput.js +171 -306
  77. package/date-input/DateInput.stories.tsx +203 -56
  78. package/date-input/DateInput.test.js +708 -369
  79. package/date-input/DatePicker.d.ts +4 -0
  80. package/date-input/DatePicker.js +115 -0
  81. package/date-input/Icons.d.ts +6 -0
  82. package/date-input/Icons.js +58 -0
  83. package/date-input/YearPicker.d.ts +4 -0
  84. package/date-input/YearPicker.js +100 -0
  85. package/date-input/types.d.ts +86 -22
  86. package/dialog/Dialog.d.ts +1 -1
  87. package/dialog/Dialog.js +68 -130
  88. package/dialog/Dialog.stories.tsx +320 -167
  89. package/dialog/Dialog.test.js +287 -20
  90. package/dialog/types.d.ts +18 -25
  91. package/dropdown/Dropdown.d.ts +1 -1
  92. package/dropdown/Dropdown.js +243 -304
  93. package/dropdown/Dropdown.stories.tsx +245 -56
  94. package/dropdown/Dropdown.test.js +575 -165
  95. package/dropdown/DropdownMenu.d.ts +4 -0
  96. package/dropdown/DropdownMenu.js +63 -0
  97. package/dropdown/DropdownMenuItem.d.ts +4 -0
  98. package/dropdown/DropdownMenuItem.js +67 -0
  99. package/dropdown/types.d.ts +32 -14
  100. package/file-input/FileInput.d.ts +2 -2
  101. package/file-input/FileInput.js +246 -357
  102. package/file-input/FileInput.stories.tsx +123 -12
  103. package/file-input/FileInput.test.js +369 -367
  104. package/file-input/FileItem.d.ts +4 -14
  105. package/file-input/FileItem.js +50 -99
  106. package/file-input/types.d.ts +25 -8
  107. package/flex/Flex.d.ts +4 -0
  108. package/flex/Flex.js +57 -0
  109. package/flex/Flex.stories.tsx +112 -0
  110. package/flex/types.d.ts +97 -0
  111. package/footer/Footer.d.ts +1 -1
  112. package/footer/Footer.js +70 -190
  113. package/footer/Footer.stories.tsx +60 -19
  114. package/footer/Footer.test.js +33 -57
  115. package/footer/Icons.d.ts +3 -2
  116. package/footer/Icons.js +67 -8
  117. package/footer/types.d.ts +25 -26
  118. package/grid/Grid.d.ts +7 -0
  119. package/grid/Grid.js +76 -0
  120. package/grid/Grid.stories.tsx +219 -0
  121. package/grid/types.d.ts +115 -0
  122. package/header/Header.d.ts +4 -3
  123. package/header/Header.js +99 -203
  124. package/header/Header.stories.tsx +152 -63
  125. package/header/Header.test.js +31 -28
  126. package/header/Icons.d.ts +2 -2
  127. package/header/Icons.js +4 -9
  128. package/header/types.d.ts +5 -19
  129. package/heading/Heading.js +10 -32
  130. package/heading/Heading.test.js +71 -88
  131. package/heading/types.d.ts +7 -7
  132. package/image/Image.d.ts +4 -0
  133. package/image/Image.js +70 -0
  134. package/image/Image.stories.tsx +127 -0
  135. package/image/types.d.ts +72 -0
  136. package/inset/Inset.js +14 -55
  137. package/inset/Inset.stories.tsx +37 -36
  138. package/inset/types.d.ts +26 -2
  139. package/layout/ApplicationLayout.d.ts +16 -6
  140. package/layout/ApplicationLayout.js +84 -181
  141. package/layout/ApplicationLayout.stories.tsx +85 -94
  142. package/layout/Icons.d.ts +8 -0
  143. package/layout/Icons.js +51 -48
  144. package/layout/SidenavContext.d.ts +5 -0
  145. package/layout/SidenavContext.js +13 -0
  146. package/layout/types.d.ts +19 -35
  147. package/link/Link.d.ts +3 -2
  148. package/link/Link.js +61 -99
  149. package/link/Link.stories.tsx +155 -53
  150. package/link/Link.test.js +25 -53
  151. package/link/types.d.ts +15 -31
  152. package/main.d.ts +14 -13
  153. package/main.js +65 -101
  154. package/nav-tabs/NavTabs.d.ts +8 -0
  155. package/nav-tabs/NavTabs.js +93 -0
  156. package/nav-tabs/NavTabs.stories.tsx +276 -0
  157. package/nav-tabs/NavTabs.test.js +76 -0
  158. package/nav-tabs/Tab.d.ts +4 -0
  159. package/nav-tabs/Tab.js +118 -0
  160. package/nav-tabs/types.d.ts +52 -0
  161. package/nav-tabs/types.js +5 -0
  162. package/number-input/NumberInput.d.ts +7 -0
  163. package/number-input/NumberInput.js +27 -43
  164. package/number-input/NumberInput.stories.tsx +44 -28
  165. package/number-input/NumberInput.test.js +703 -381
  166. package/number-input/types.d.ts +28 -15
  167. package/package.json +46 -47
  168. package/paginator/Icons.d.ts +5 -0
  169. package/paginator/Icons.js +21 -47
  170. package/paginator/Paginator.js +34 -91
  171. package/paginator/Paginator.stories.tsx +24 -0
  172. package/paginator/Paginator.test.js +280 -211
  173. package/paginator/types.d.ts +3 -3
  174. package/paragraph/Paragraph.d.ts +5 -0
  175. package/paragraph/Paragraph.js +22 -0
  176. package/paragraph/Paragraph.stories.tsx +27 -0
  177. package/password-input/Icons.d.ts +6 -0
  178. package/password-input/Icons.js +35 -0
  179. package/password-input/PasswordInput.js +57 -123
  180. package/password-input/PasswordInput.stories.tsx +1 -33
  181. package/password-input/PasswordInput.test.js +162 -147
  182. package/password-input/types.d.ts +21 -17
  183. package/progress-bar/ProgressBar.js +65 -91
  184. package/progress-bar/ProgressBar.stories.tsx +93 -0
  185. package/progress-bar/ProgressBar.test.js +72 -44
  186. package/progress-bar/types.d.ts +3 -3
  187. package/quick-nav/QuickNav.d.ts +4 -0
  188. package/quick-nav/QuickNav.js +94 -0
  189. package/quick-nav/QuickNav.stories.tsx +356 -0
  190. package/quick-nav/types.d.ts +21 -0
  191. package/quick-nav/types.js +5 -0
  192. package/radio-group/Radio.d.ts +1 -1
  193. package/radio-group/Radio.js +59 -76
  194. package/radio-group/RadioGroup.js +72 -116
  195. package/radio-group/RadioGroup.stories.tsx +135 -17
  196. package/radio-group/RadioGroup.test.js +529 -467
  197. package/radio-group/types.d.ts +86 -9
  198. package/resultset-table/Icons.d.ts +7 -0
  199. package/resultset-table/Icons.js +47 -0
  200. package/{resultsetTable → resultset-table}/ResultsetTable.d.ts +1 -1
  201. package/resultset-table/ResultsetTable.js +165 -0
  202. package/{resultsetTable → resultset-table}/ResultsetTable.stories.tsx +69 -25
  203. package/{resultsetTable → resultset-table}/ResultsetTable.test.js +117 -118
  204. package/{resultsetTable → resultset-table}/types.d.ts +13 -7
  205. package/resultset-table/types.js +5 -0
  206. package/select/Icons.d.ts +10 -0
  207. package/select/Icons.js +89 -0
  208. package/select/Listbox.d.ts +4 -0
  209. package/select/Listbox.js +143 -0
  210. package/select/Option.d.ts +4 -0
  211. package/select/Option.js +87 -0
  212. package/select/Select.js +223 -502
  213. package/select/Select.stories.tsx +534 -145
  214. package/select/Select.test.js +2009 -1539
  215. package/select/types.d.ts +64 -25
  216. package/sidenav/Icons.d.ts +7 -0
  217. package/sidenav/Icons.js +47 -0
  218. package/sidenav/Sidenav.d.ts +6 -5
  219. package/sidenav/Sidenav.js +131 -71
  220. package/sidenav/Sidenav.stories.tsx +251 -151
  221. package/sidenav/Sidenav.test.js +26 -45
  222. package/sidenav/types.d.ts +52 -26
  223. package/slider/Slider.d.ts +2 -2
  224. package/slider/Slider.js +148 -180
  225. package/slider/Slider.test.js +198 -73
  226. package/slider/types.d.ts +11 -3
  227. package/spinner/Spinner.js +31 -75
  228. package/spinner/{Spinner.stories.jsx → Spinner.stories.tsx} +53 -27
  229. package/spinner/Spinner.test.js +26 -35
  230. package/spinner/types.d.ts +3 -3
  231. package/status-light/StatusLight.d.ts +4 -0
  232. package/status-light/StatusLight.js +51 -0
  233. package/status-light/StatusLight.stories.tsx +74 -0
  234. package/status-light/StatusLight.test.js +25 -0
  235. package/status-light/types.d.ts +17 -0
  236. package/status-light/types.js +5 -0
  237. package/switch/Switch.d.ts +2 -2
  238. package/switch/Switch.js +149 -114
  239. package/switch/Switch.stories.tsx +44 -67
  240. package/switch/Switch.test.js +146 -39
  241. package/switch/types.d.ts +13 -5
  242. package/table/Table.d.ts +1 -1
  243. package/table/Table.js +25 -32
  244. package/table/{Table.stories.jsx → Table.stories.tsx} +178 -1
  245. package/table/Table.test.js +3 -8
  246. package/table/types.d.ts +12 -6
  247. package/tabs/Tab.d.ts +4 -0
  248. package/tabs/Tab.js +116 -0
  249. package/tabs/Tabs.d.ts +1 -1
  250. package/tabs/Tabs.js +316 -145
  251. package/tabs/Tabs.stories.tsx +120 -14
  252. package/tabs/Tabs.test.js +238 -67
  253. package/tabs/types.d.ts +29 -15
  254. package/tag/Tag.js +41 -78
  255. package/tag/Tag.stories.tsx +25 -8
  256. package/tag/Tag.test.js +20 -31
  257. package/tag/types.d.ts +7 -7
  258. package/text-input/Icons.d.ts +8 -0
  259. package/text-input/Icons.js +56 -0
  260. package/text-input/Suggestion.d.ts +4 -0
  261. package/text-input/Suggestion.js +67 -0
  262. package/text-input/Suggestions.d.ts +4 -0
  263. package/text-input/Suggestions.js +84 -0
  264. package/text-input/TextInput.js +324 -548
  265. package/text-input/TextInput.stories.tsx +272 -281
  266. package/text-input/TextInput.test.js +1425 -1377
  267. package/text-input/types.d.ts +70 -24
  268. package/textarea/Textarea.js +82 -134
  269. package/textarea/Textarea.stories.tsx +174 -0
  270. package/textarea/Textarea.test.js +168 -198
  271. package/textarea/types.d.ts +27 -16
  272. package/toggle-group/ToggleGroup.d.ts +2 -2
  273. package/toggle-group/ToggleGroup.js +92 -105
  274. package/toggle-group/ToggleGroup.stories.tsx +53 -8
  275. package/toggle-group/ToggleGroup.test.js +78 -66
  276. package/toggle-group/types.d.ts +34 -17
  277. package/typography/Typography.d.ts +4 -0
  278. package/typography/Typography.js +23 -0
  279. package/typography/Typography.stories.tsx +198 -0
  280. package/typography/types.d.ts +18 -0
  281. package/typography/types.js +5 -0
  282. package/useTheme.d.ts +1119 -1
  283. package/useTheme.js +4 -11
  284. package/useTranslatedLabels.d.ts +85 -0
  285. package/useTranslatedLabels.js +14 -0
  286. package/utils/BaseTypography.d.ts +21 -0
  287. package/utils/BaseTypography.js +94 -0
  288. package/utils/FocusLock.d.ts +13 -0
  289. package/utils/FocusLock.js +124 -0
  290. package/wizard/Wizard.d.ts +1 -1
  291. package/wizard/Wizard.js +70 -101
  292. package/wizard/Wizard.stories.tsx +48 -19
  293. package/wizard/Wizard.test.js +73 -87
  294. package/wizard/types.d.ts +12 -8
  295. package/ThemeContext.d.ts +0 -10
  296. package/ThemeContext.js +0 -243
  297. package/card/ice-cream.jpg +0 -0
  298. package/common/RequiredComponent.js +0 -32
  299. package/list/List.d.ts +0 -4
  300. package/list/List.js +0 -47
  301. package/list/List.stories.tsx +0 -95
  302. package/list/types.d.ts +0 -7
  303. package/number-input/NumberInputContext.d.ts +0 -4
  304. package/number-input/NumberInputContext.js +0 -19
  305. package/number-input/numberInputContextTypes.d.ts +0 -19
  306. package/progress-bar/ProgressBar.stories.jsx +0 -58
  307. package/radio/Radio.d.ts +0 -4
  308. package/radio/Radio.js +0 -174
  309. package/radio/Radio.stories.tsx +0 -192
  310. package/radio/Radio.test.js +0 -71
  311. package/radio/types.d.ts +0 -54
  312. package/resultsetTable/ResultsetTable.js +0 -254
  313. package/row/Row.d.ts +0 -3
  314. package/row/Row.js +0 -127
  315. package/row/Row.stories.tsx +0 -237
  316. package/row/types.d.ts +0 -10
  317. package/slider/Slider.stories.tsx +0 -177
  318. package/stack/Stack.d.ts +0 -3
  319. package/stack/Stack.js +0 -97
  320. package/stack/Stack.stories.tsx +0 -164
  321. package/stack/types.d.ts +0 -9
  322. package/text/Text.d.ts +0 -7
  323. package/text/Text.js +0 -30
  324. package/text/Text.stories.tsx +0 -19
  325. package/textarea/Textarea.stories.jsx +0 -157
  326. /package/{list → action-icon}/types.js +0 -0
  327. /package/{radio → bulleted-list}/types.js +0 -0
  328. /package/{resultsetTable → container}/types.js +0 -0
  329. /package/{row → flex}/types.js +0 -0
  330. /package/{stack → grid}/types.js +0 -0
  331. /package/{number-input/numberInputContextTypes.js → image/types.js} +0 -0
package/wizard/Wizard.js CHANGED
@@ -1,34 +1,21 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  var _typeof3 = require("@babel/runtime/helpers/typeof");
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
10
8
  exports["default"] = void 0;
11
-
12
- var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
13
-
14
9
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
15
-
10
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
16
11
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
17
-
18
12
  var _react = _interopRequireWildcard(require("react"));
19
-
20
13
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
21
-
22
- var _variables = require("../common/variables.js");
23
-
14
+ var _variables = require("../common/variables");
24
15
  var _useTheme = _interopRequireDefault(require("../useTheme"));
25
-
26
16
  var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13;
27
-
28
- 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); }
29
-
30
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
31
-
17
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
18
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof3(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
32
19
  var icons = {
33
20
  validIcon: /*#__PURE__*/_react["default"].createElement("svg", {
34
21
  id: "check_circle_black_18dp",
@@ -80,81 +67,77 @@ var icons = {
80
67
  fill: "#d0011b"
81
68
  }))
82
69
  };
83
-
84
70
  var DxcWizard = function DxcWizard(_ref) {
71
+ var _ref2;
85
72
  var _ref$mode = _ref.mode,
86
- mode = _ref$mode === void 0 ? "horizontal" : _ref$mode,
87
- currentStep = _ref.currentStep,
88
- onStepClick = _ref.onStepClick,
89
- steps = _ref.steps,
90
- margin = _ref.margin,
91
- _ref$tabIndex = _ref.tabIndex,
92
- tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
93
-
94
- var _useState = (0, _react.useState)(currentStep || 0),
95
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
96
- innerCurrent = _useState2[0],
97
- setInnerCurrentStep = _useState2[1];
98
-
73
+ mode = _ref$mode === void 0 ? "horizontal" : _ref$mode,
74
+ defaultCurrentStep = _ref.defaultCurrentStep,
75
+ currentStep = _ref.currentStep,
76
+ onStepClick = _ref.onStepClick,
77
+ steps = _ref.steps,
78
+ margin = _ref.margin,
79
+ _ref$tabIndex = _ref.tabIndex,
80
+ tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
81
+ var _useState = (0, _react.useState)((_ref2 = currentStep !== null && currentStep !== void 0 ? currentStep : defaultCurrentStep) !== null && _ref2 !== void 0 ? _ref2 : 0),
82
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
83
+ innerCurrent = _useState2[0],
84
+ setInnerCurrentStep = _useState2[1];
99
85
  var renderedCurrent = currentStep == null ? innerCurrent : currentStep;
100
86
  var colorsTheme = (0, _useTheme["default"])();
101
-
102
87
  var handleStepClick = function handleStepClick(newValue) {
103
88
  if (currentStep == null) {
104
89
  setInnerCurrentStep(newValue);
105
90
  }
106
-
107
91
  if (onStepClick) {
108
92
  onStepClick(newValue);
109
93
  }
110
94
  };
111
-
112
95
  return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
113
96
  theme: colorsTheme.wizard
114
97
  }, /*#__PURE__*/_react["default"].createElement(StepsContainer, {
115
98
  mode: mode,
116
- margin: margin
99
+ margin: margin,
100
+ role: "group"
117
101
  }, steps === null || steps === void 0 ? void 0 : steps.map(function (step, i) {
118
102
  return /*#__PURE__*/_react["default"].createElement(StepContainer, {
119
103
  key: "step".concat(i),
120
104
  mode: mode,
121
105
  lastStep: i === (steps === null || steps === void 0 ? void 0 : steps.length) - 1
122
106
  }, /*#__PURE__*/_react["default"].createElement(Step, {
123
- tabIndex: tabIndex,
124
107
  onClick: function onClick() {
125
- return handleStepClick(i);
108
+ handleStepClick(i);
126
109
  },
127
- mode: mode,
128
110
  disabled: step.disabled,
111
+ mode: mode,
129
112
  first: i === 0,
130
- last: i === (steps === null || steps === void 0 ? void 0 : steps.length) - 1
131
- }, /*#__PURE__*/_react["default"].createElement(StepHeader, null, /*#__PURE__*/_react["default"].createElement(IconContainer, {
113
+ last: i === (steps === null || steps === void 0 ? void 0 : steps.length) - 1,
114
+ "aria-current": renderedCurrent === i ? "step" : "false",
115
+ tabIndex: tabIndex
116
+ }, /*#__PURE__*/_react["default"].createElement(StepHeader, {
117
+ validityIcon: step.valid !== undefined
118
+ }, /*#__PURE__*/_react["default"].createElement(IconContainer, {
132
119
  current: i === renderedCurrent,
133
120
  visited: i < renderedCurrent,
134
121
  disabled: step.disabled
135
- }, step.icon ? typeof step.icon === "string" ? /*#__PURE__*/_react["default"].createElement(Icon, {
122
+ }, step.icon ? /*#__PURE__*/_react["default"].createElement(StepIconContainer, null, typeof step.icon === "string" ? /*#__PURE__*/_react["default"].createElement(Icon, {
136
123
  src: step.icon
137
- }) : /*#__PURE__*/_react["default"].createElement(StepIconContainer, {
138
- disabled: step.disabled
139
- }, (0, _typeof2["default"])(step.icon) === "object" ? step.icon : /*#__PURE__*/_react["default"].createElement(step.icon)) : /*#__PURE__*/_react["default"].createElement(Number, {
140
- disabled: step.disabled,
141
- current: i === renderedCurrent
142
- }, i + 1)), step.valid !== undefined ? step.valid ? /*#__PURE__*/_react["default"].createElement(ValidityIconContainer, null, icons.validIcon) : /*#__PURE__*/_react["default"].createElement(ValidityIconContainer, null, icons.invalidIcon) : ""), step.label || step.description ? /*#__PURE__*/_react["default"].createElement(InfoContainer, null, step.label ? /*#__PURE__*/_react["default"].createElement(Label, {
124
+ }) : step.icon) : /*#__PURE__*/_react["default"].createElement(Number, null, i + 1)), step.valid !== undefined && (step.valid ? /*#__PURE__*/_react["default"].createElement(ValidityIconContainer, null, icons.validIcon) : /*#__PURE__*/_react["default"].createElement(ValidityIconContainer, null, icons.invalidIcon))), (step.label || step.description) && /*#__PURE__*/_react["default"].createElement(InfoContainer, null, step.label && /*#__PURE__*/_react["default"].createElement(Label, {
125
+ current: i === renderedCurrent,
143
126
  disabled: step.disabled,
144
127
  visited: i <= innerCurrent
145
- }, step.label) : "", step.description ? /*#__PURE__*/_react["default"].createElement(Description, {
128
+ }, step.label), step.description && /*#__PURE__*/_react["default"].createElement(Description, {
129
+ current: i === renderedCurrent,
146
130
  disabled: step.disabled,
147
131
  visited: i <= innerCurrent
148
- }, step.description) : "") : ""), i === steps.length - 1 ? "" : /*#__PURE__*/_react["default"].createElement(StepSeparator, {
132
+ }, step.description))), i === steps.length - 1 ? "" : /*#__PURE__*/_react["default"].createElement(StepSeparator, {
149
133
  mode: mode
150
134
  }));
151
135
  })));
152
136
  };
153
-
154
- var StepsContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n flex-direction: ", ";\n justify-content: \"center\";\n ", ";\n font-family: ", ";\n\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n"])), function (props) {
137
+ var StepsContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: ", ";\n justify-content: center;\n ", ";\n font-family: ", ";\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n"])), function (props) {
155
138
  return props.mode === "vertical" ? "column" : "row";
156
139
  }, function (props) {
157
- return props.mode === "vertical" ? "height: 500px" : "width: 100%";
140
+ return props.mode === "vertical" && "height: 500px";
158
141
  }, function (props) {
159
142
  return props.theme.fontFamily;
160
143
  }, function (props) {
@@ -168,18 +151,16 @@ var StepsContainer = _styledComponents["default"].div(_templateObject || (_templ
168
151
  }, function (props) {
169
152
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
170
153
  });
171
-
172
154
  var StepContainer = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n ", "\n flex-grow: ", ";\n flex-direction: ", ";\n ", "\n"])), function (props) {
173
- return props.mode === "vertical" ? "" : "align-items: center;";
155
+ return props.mode !== "vertical" && "align-items: center;";
174
156
  }, function (props) {
175
157
  return props.lastStep ? "0" : "1";
176
158
  }, function (props) {
177
159
  return props.mode === "vertical" ? "column" : "row";
178
160
  }, function (props) {
179
- return props.mode === "vertical" ? "width: 100%;" : "";
161
+ return props.mode === "vertical" && "width: fit-content;";
180
162
  });
181
-
182
- var Step = _styledComponents["default"].button(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n border: none;\n background: inherit;\n display: flex;\n justify-content: flex-start;\n align-items: center;\n margin: ", ";\n\n padding: 0px;\n ", ";\n\n &:hover {\n ", ";\n }\n &:focus {\n outline: ", " auto 1px;\n }\n"])), function (props) {
163
+ var Step = _styledComponents["default"].button(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n justify-content: flex-start;\n align-items: center;\n border: none;\n border-radius: 0.25rem;\n background: inherit;\n margin: ", ";\n\n padding: 0px;\n ", ";\n\n &:hover {\n ", ";\n }\n &:focus {\n outline: 2px solid ", ";\n }\n"])), function (props) {
183
164
  return props.first ? props.mode === "vertical" ? "0 0 24px 0" : "0 24px 0 0" : props.last ? props.mode === "vertical" ? "24px 0 0 0" : "0 0 0 24px" : props.mode === "vertical" ? "24px 0" : "0 24px";
184
165
  }, function (props) {
185
166
  return props.disabled ? "cursor: not-allowed" : "";
@@ -188,49 +169,43 @@ var Step = _styledComponents["default"].button(_templateObject3 || (_templateObj
188
169
  }, function (props) {
189
170
  return props.theme.focusColor;
190
171
  });
191
-
192
- var StepHeader = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n position: relative;\n display: inline-flex;\n padding-bottom: 4px;\n"])));
193
-
194
- var IconContainer = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n width: ", ";\n height: ", ";\n\n ", "\n ", ";\n\n border-radius: ", ";\n display: flex;\n justify-content: center;\n align-items: center;\n"])), function (props) {
195
- return props.disabled ? props.theme.disabledCircleWidth : props.current ? props.theme.selectedCircleWidth : props.theme.circleWidth;
172
+ var StepHeader = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n position: relative;\n display: inline-flex;\n ", "\n"])), function (props) {
173
+ return props.validityIcon && "padding-bottom: 4px;";
174
+ });
175
+ var IconContainer = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n width: ", ";\n height: ", ";\n\n ", "\n ", ";\n\n border-radius: ", ";\n\n display: flex;\n justify-content: center;\n align-items: center;\n"])), function (props) {
176
+ return props.disabled ? props.theme.disabledStepWidth : props.current ? props.theme.selectedStepWidth : props.theme.stepWidth;
196
177
  }, function (props) {
197
- return props.disabled ? props.theme.disabledCircleHeight : props.current ? props.theme.selectedCircleHeight : props.theme.circleHeight;
178
+ return props.disabled ? props.theme.disabledStepHeight : props.current ? props.theme.selectedStepHeight : props.theme.stepHeight;
198
179
  }, function (props) {
199
- return "\n ".concat(!props.current && !props.disabled ? "border: ".concat(props.theme.circleBorderThickness, " ").concat(props.theme.circleBorderStyle, " ").concat(props.theme.circleBorderColor, ";") : props.current && !props.disabled ? "border: ".concat(props.theme.selectedCircleBorderThickness, " ").concat(props.theme.selectedCircleBorderStyle, " ").concat(props.theme.selectedCircleBorderColor, ";") : props.disabled ? "border: ".concat(props.theme.disabledCircleBorderThickness, " ").concat(props.theme.disabledCircleBorderStyle, " ").concat(props.theme.disabledCircleBorderColor, ";") : "", "\n background: ").concat(props.disabled ? "".concat(props.theme.disabledBackgroundColor) : props.current ? "".concat(props.theme.stepContainerSelectedBackgroundColor) : "".concat(props.theme.stepContainerBackgroundColor), ";\n ");
180
+ return "\n ".concat(props.disabled ? "border: ".concat(props.theme.disabledStepBorderThickness, " ").concat(props.theme.disabledStepBorderStyle, " ").concat(props.theme.disabledStepBorderColor, ";") : props.current ? "border: ".concat(props.theme.selectedStepBorderThickness, " ").concat(props.theme.selectedStepBorderStyle, " ").concat(props.theme.selectedStepBorderColor, ";") : props.visited ? "border: ".concat(props.theme.stepBorderThickness, " ").concat(props.theme.stepBorderStyle, " ").concat(props.theme.visitedStepBorderColor, ";") : "border: ".concat(props.theme.stepBorderThickness, " ").concat(props.theme.stepBorderStyle, " ").concat(props.theme.unvisitedStepBorderColor, ";"), "\n background: ").concat(props.disabled ? "".concat(props.theme.disabledStepBackgroundColor) : props.current ? "".concat(props.theme.selectedStepBackgroundColor) : !props.visited ? "".concat(props.theme.unvisitedStepBackgroundColor) : "".concat(props.theme.visitedStepBackgroundColor), ";\n ");
200
181
  }, function (props) {
201
- return props.disabled ? "color: ".concat(props.theme.disabledFontColor, ";") : "color: ".concat(props.current ? props.theme.stepContainerSelectedFontColor : props.theme.stepContainerFontColor, ";");
182
+ return props.disabled ? "color: ".concat(props.theme.disabledStepFontColor, ";") : "color: ".concat(props.current ? props.theme.selectedStepFontColor : !props.visited ? props.theme.unvisitedStepFontColor : props.theme.visitedStepFontColor, ";");
202
183
  }, function (props) {
203
- return !props.current && !props.disabled ? props.theme.circleBorderRadius : props.current ? props.theme.selectedCircleBorderRadius : props.disabled ? props.theme.disabledCircleBorderRadius : "";
184
+ return !props.current && !props.disabled ? props.theme.stepBorderRadius : props.current ? props.theme.selectedStepBorderRadius : props.disabled ? props.theme.disabledStepBorderRadius : "";
204
185
  });
205
-
206
186
  var Icon = _styledComponents["default"].img(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n width: ", ";\n height: ", ";\n"])), function (props) {
207
- return props.theme.stepContainerIconSize;
187
+ return props.theme.stepIconSize;
208
188
  }, function (props) {
209
- return props.theme.stepContainerIconSize;
189
+ return props.theme.stepIconSize;
210
190
  });
211
-
212
191
  var StepIconContainer = _styledComponents["default"].div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n width: ", ";\n height: ", ";\n overflow: hidden;\n img,\n svg {\n height: 100%;\n width: 100%;\n }\n"])), function (props) {
213
- return props.theme.stepContainerIconSize;
192
+ return props.theme.stepIconSize;
214
193
  }, function (props) {
215
- return props.theme.stepContainerIconSize;
194
+ return props.theme.stepIconSize;
216
195
  });
217
-
218
196
  var Number = _styledComponents["default"].p(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n font-size: ", ";\n font-family: ", ";\n font-style: ", ";\n font-weight: ", ";\n letter-spacing: ", ";\n opacity: 1;\n margin: 0px 0px 0px 1px;\n"])), function (props) {
219
- return props.theme.stepContainerFontSize;
197
+ return props.theme.stepFontSize;
220
198
  }, function (props) {
221
- return props.theme.stepContainerFontFamily;
199
+ return props.theme.stepFontFamily;
222
200
  }, function (props) {
223
- return props.theme.stepContainerFontStyle;
201
+ return props.theme.stepFontStyle;
224
202
  }, function (props) {
225
- return props.theme.stepContainerFontWeight;
203
+ return props.theme.stepFontWeight;
226
204
  }, function (props) {
227
- return props.theme.stepContainerLetterSpacing;
205
+ return props.theme.stepFontTracking;
228
206
  });
229
-
230
207
  var ValidityIconContainer = _styledComponents["default"].div(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n width: 18px;\n height: 18px;\n position: absolute;\n top: 22.5px;\n left: 22.5px;\n"])));
231
-
232
208
  var InfoContainer = _styledComponents["default"].div(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2["default"])(["\n margin-left: 12px;\n"])));
233
-
234
209
  var Label = _styledComponents["default"].p(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2["default"])(["\n text-align: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n letter-spacing: ", ";\n ", ";\n text-transform: ", ";\n margin: 0;\n"])), function (props) {
235
210
  return props.theme.labelTextAlign;
236
211
  }, function (props) {
@@ -242,40 +217,34 @@ var Label = _styledComponents["default"].p(_templateObject11 || (_templateObject
242
217
  }, function (props) {
243
218
  return props.theme.labelFontWeight;
244
219
  }, function (props) {
245
- return props.theme.labelLetterSpacing;
220
+ return props.theme.labelFontTracking;
246
221
  }, function (props) {
247
- return props.disabled ? "color: ".concat(props.theme.disabledFontColor, ";") : "color: ".concat(props.visited ? props.theme.visitedLabelFontColor : props.theme.labelFontColor, ";");
222
+ return props.disabled ? "color: ".concat(props.theme.disabledLabelFontColor, ";") : "color: ".concat(!props.visited ? props.theme.unvisitedLabelFontColor : props.current ? props.theme.selectedLabelFontColor : props.theme.visitedLabelFontColor, ";");
248
223
  }, function (props) {
249
224
  return props.theme.labelFontTextTransform;
250
225
  });
251
-
252
226
  var Description = _styledComponents["default"].p(_templateObject12 || (_templateObject12 = (0, _taggedTemplateLiteral2["default"])(["\n text-align: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n letter-spacing: ", ";\n text-transform: ", ";\n ", ";\n margin: 0;\n"])), function (props) {
253
- return props.theme.descriptionTextAlign;
227
+ return props.theme.helperTextTextAlign;
254
228
  }, function (props) {
255
- return props.theme.descriptionFontFamily;
229
+ return props.theme.helperTextFontFamily;
256
230
  }, function (props) {
257
- return props.theme.descriptionFontSize;
231
+ return props.theme.helperTextFontSize;
258
232
  }, function (props) {
259
- return props.theme.descriptionFontStyle;
233
+ return props.theme.helperTextFontStyle;
260
234
  }, function (props) {
261
- return props.theme.descriptionFontWeight;
235
+ return props.theme.helperTextFontWeight;
262
236
  }, function (props) {
263
- return props.theme.descriptionLetterSpacing;
237
+ return props.theme.helperTextFontTracking;
264
238
  }, function (props) {
265
- return props.theme.descriptionFontTextTransform;
239
+ return props.theme.helperTextFontTextTransform;
266
240
  }, function (props) {
267
- return props.disabled ? "color: ".concat(props.theme.disabledFontColor, ";") : "color: ".concat(props.visited ? props.theme.visitedDescriptionFontColor : props.theme.descriptionFontColor, ";");
241
+ return props.disabled ? "color: ".concat(props.theme.disabledHelperTextFontColor, ";") : "color: ".concat(!props.visited ? props.theme.unvisitedHelperTextFontColor : props.current ? props.theme.selectedHelperTextFontColor : props.theme.visitedHelperTextFontColor, ";");
268
242
  });
269
-
270
- var StepSeparator = _styledComponents["default"].div(_templateObject13 || (_templateObject13 = (0, _taggedTemplateLiteral2["default"])(["\n width: ", ";\n height: ", ";\n ", "\n border: ", ";\n opacity: 1;\n flex-grow: 1;\n"])), function (props) {
271
- return props.mode === "horizontal" ? "" : "0";
243
+ var StepSeparator = _styledComponents["default"].div(_templateObject13 || (_templateObject13 = (0, _taggedTemplateLiteral2["default"])(["\n ", ";\n ", "\n border: ", ";\n opacity: 1;\n flex-grow: 1;\n"])), function (props) {
244
+ return props.mode === "horizontal" ? "height: 0;" : "width: 0;";
272
245
  }, function (props) {
273
- return props.mode === "horizontal" ? "0" : "";
274
- }, function (props) {
275
- return props.mode === "vertical" ? "margin: 0 18px;" : "";
246
+ return props.mode === "vertical" && "margin: 0 18px;";
276
247
  }, function (props) {
277
248
  return "".concat(props.theme.separatorBorderStyle, " ").concat(props.theme.separatorBorderThickness, " ").concat(props.theme.separatorColor);
278
249
  });
279
-
280
- var _default = DxcWizard;
281
- exports["default"] = _default;
250
+ var _default = exports["default"] = DxcWizard;
@@ -3,29 +3,25 @@ import DxcWizard from "./Wizard";
3
3
  import Title from "../../.storybook/components/Title";
4
4
  import ExampleContainer from "../../.storybook/components/ExampleContainer";
5
5
  import { userEvent, within } from "@storybook/testing-library";
6
+ import { HalstackProvider } from "../HalstackContext";
6
7
 
7
8
  export default {
8
9
  title: "Wizard",
9
10
  component: DxcWizard,
10
11
  };
11
12
 
12
- const favoriteSVG = () => {
13
- return (
14
- <svg viewBox="0 0 24 24" fill="currentColor">
15
- <path d="M0 0h24v24H0z" fill="none" />
16
- <path d="M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z" />
17
- </svg>
18
- );
19
- };
20
-
21
- const largeIcon = () => {
22
- return (
23
- <svg xmlns="http://www.w3.org/2000/svg" height="48px" viewBox="0 0 24 24" width="48px" fill="currentColor">
24
- <path d="M0 0h24v24H0z" fill="none" />
25
- <path d="M10 20v-6h4v6h5v-8h3L12 3 2 12h3v8z" />
26
- </svg>
27
- );
28
- };
13
+ const favoriteSVG = (
14
+ <svg viewBox="0 0 24 24" fill="currentColor">
15
+ <path d="M0 0h24v24H0z" fill="none" />
16
+ <path d="M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z" />
17
+ </svg>
18
+ );
19
+ const largeIcon = (
20
+ <svg xmlns="http://www.w3.org/2000/svg" height="48px" viewBox="0 0 24 24" width="48px" fill="currentColor">
21
+ <path d="M0 0h24v24H0z" fill="none" />
22
+ <path d="M10 20v-6h4v6h5v-8h3L12 3 2 12h3v8z" />
23
+ </svg>
24
+ );
29
25
 
30
26
  const stepWithLabel = [
31
27
  {
@@ -137,19 +133,41 @@ const stepLargeIcons = [
137
133
  },
138
134
  ];
139
135
 
136
+ const opinionatedTheme = {
137
+ wizard: {
138
+ baseColor: "#5f249f",
139
+ fontColor: "#000000",
140
+ selectedStepFontColor: "#ffffff",
141
+ },
142
+ };
143
+
140
144
  export const Chromatic = () => (
141
145
  <>
142
146
  <ExampleContainer>
143
147
  <Title title="Current step in the third step, labels and description" theme="light" level={4} />
144
- <DxcWizard currentStep={2} steps={stepWithLabelDescription}></DxcWizard>
148
+ <DxcWizard defaultCurrentStep={2} steps={stepWithLabelDescription}></DxcWizard>
149
+ </ExampleContainer>
150
+ <ExampleContainer>
145
151
  <Title title="With long description in horizontal" theme="light" level={4} />
146
152
  <DxcWizard steps={stepWithLongDescription}></DxcWizard>
153
+ </ExampleContainer>
154
+ <ExampleContainer>
147
155
  <Title title="With long description in vertical" theme="light" level={4} />
148
156
  <DxcWizard mode="vertical" steps={stepWithLongDescription}></DxcWizard>
157
+ </ExampleContainer>
158
+ <ExampleContainer>
149
159
  <Title title="Disabled steps" theme="light" level={4} />
150
160
  <DxcWizard steps={stepDisabled}></DxcWizard>
161
+ </ExampleContainer>
162
+ <ExampleContainer pseudoState="pseudo-focus">
163
+ <Title title="Focused steps" theme="light" level={4} />
164
+ <DxcWizard steps={stepIcons}></DxcWizard>
165
+ </ExampleContainer>
166
+ <ExampleContainer>
151
167
  <Title title="With icons" theme="light" level={4} />
152
168
  <DxcWizard steps={stepIcons}></DxcWizard>
169
+ </ExampleContainer>
170
+ <ExampleContainer>
153
171
  <Title title="With large icons" theme="light" level={4} />
154
172
  <DxcWizard steps={stepLargeIcons}></DxcWizard>
155
173
  </ExampleContainer>
@@ -211,10 +229,21 @@ export const Chromatic = () => (
211
229
  <Title title="Xxlarge margin" theme="light" level={4} />
212
230
  <DxcWizard mode="vertical" margin="xxlarge" steps={stepWithLabel}></DxcWizard>
213
231
  </ExampleContainer>
232
+ <Title title="Opinionated theme" theme="light" level={2} />
233
+ <ExampleContainer>
234
+ <HalstackProvider theme={opinionatedTheme}>
235
+ <DxcWizard defaultCurrentStep={2} steps={stepWithLabelDescription}></DxcWizard>
236
+ </HalstackProvider>
237
+ </ExampleContainer>
214
238
  </>
215
239
  );
216
240
 
217
- const WizardSelected = () => <DxcWizard steps={stepWithLabel}></DxcWizard>;
241
+ const WizardSelected = () => (
242
+ <ExampleContainer>
243
+ <Title title="Clicked step" theme="light" level={4} />
244
+ <DxcWizard steps={stepWithLabel} mode="vertical"></DxcWizard>
245
+ </ExampleContainer>
246
+ );
218
247
 
219
248
  export const WizardStepActived = WizardSelected.bind({});
220
249
  WizardStepActived.play = async ({ canvasElement }) => {
@@ -1,128 +1,114 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  var _react = _interopRequireDefault(require("react"));
6
-
7
5
  var _react2 = require("@testing-library/react");
8
-
9
- var _Wizard = _interopRequireDefault(require("./Wizard"));
10
-
6
+ var _Wizard = _interopRequireDefault(require("./Wizard.tsx"));
11
7
  describe("Wizard components tests", function () {
12
8
  test("Wizard renders with correct steps", function () {
13
9
  var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Wizard["default"], {
14
- steps: [{
15
- label: "first-step"
16
- }, {
17
- label: "second-step"
18
- }]
19
- })),
20
- getByText = _render.getByText;
21
-
10
+ steps: [{
11
+ label: "first-step"
12
+ }, {
13
+ label: "second-step"
14
+ }]
15
+ })),
16
+ getByText = _render.getByText,
17
+ getAllByRole = _render.getAllByRole;
18
+ var steps = getAllByRole("button");
22
19
  expect(getByText("first-step")).toBeTruthy();
23
20
  expect(getByText("second-step")).toBeTruthy();
21
+ expect(steps[0].getAttribute("aria-current")).toBe("step");
22
+ expect(steps[1].getAttribute("aria-current")).toBe("false");
23
+ });
24
+ test("Wizard renders with initially selected step", function () {
25
+ var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Wizard["default"], {
26
+ defaultCurrentStep: 1,
27
+ steps: [{
28
+ label: "first-step"
29
+ }, {
30
+ label: "second-step"
31
+ }]
32
+ })),
33
+ getAllByRole = _render2.getAllByRole;
34
+ var steps = getAllByRole("button");
35
+ expect(steps[1].getAttribute("aria-current")).toBe("step");
24
36
  });
25
37
  test("Click on step text", function () {
26
38
  var onClick = jest.fn();
27
-
28
- var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Wizard["default"], {
29
- onStepClick: onClick,
30
- steps: [{
31
- label: "first-step"
32
- }]
33
- })),
34
- getByText = _render2.getByText;
35
-
39
+ var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Wizard["default"], {
40
+ onStepClick: onClick,
41
+ steps: [{
42
+ label: "first-step"
43
+ }]
44
+ })),
45
+ getByText = _render3.getByText;
36
46
  var step = getByText("first-step");
37
-
38
47
  _react2.fireEvent.click(step);
39
-
40
48
  expect(onClick).toHaveBeenCalled();
41
49
  });
42
50
  test("Click on step description", function () {
43
51
  var onClick = jest.fn();
44
-
45
- var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Wizard["default"], {
46
- onStepClick: onClick,
47
- steps: [{
48
- label: "first-step",
49
- description: "step-description"
50
- }]
51
- })),
52
- getByText = _render3.getByText;
53
-
52
+ var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Wizard["default"], {
53
+ onStepClick: onClick,
54
+ steps: [{
55
+ label: "first-step",
56
+ description: "step-description"
57
+ }]
58
+ })),
59
+ getByText = _render4.getByText;
54
60
  var step = getByText("step-description");
55
-
56
61
  _react2.fireEvent.click(step);
57
-
58
62
  expect(onClick).toHaveBeenCalled();
59
63
  });
60
64
  test("Click on step number", function () {
61
65
  var onClick = jest.fn();
62
-
63
- var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Wizard["default"], {
64
- onStepClick: onClick,
65
- steps: [{
66
- label: "first-step"
67
- }]
68
- })),
69
- getByText = _render4.getByText;
70
-
66
+ var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Wizard["default"], {
67
+ onStepClick: onClick,
68
+ steps: [{
69
+ label: "first-step"
70
+ }]
71
+ })),
72
+ getByText = _render5.getByText;
71
73
  var step = getByText("1");
72
-
73
74
  _react2.fireEvent.click(step);
74
-
75
75
  expect(onClick).toHaveBeenCalled();
76
76
  });
77
77
  test("Click on disable step", function () {
78
78
  var onClick = jest.fn();
79
-
80
- var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Wizard["default"], {
81
- onStepClick: onClick,
82
- steps: [{
83
- label: "first-step"
84
- }, {
85
- label: "second-step",
86
- disabled: true
87
- }]
88
- })),
89
- getByText = _render5.getByText;
90
-
79
+ var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Wizard["default"], {
80
+ onStepClick: onClick,
81
+ steps: [{
82
+ label: "first-step"
83
+ }, {
84
+ label: "second-step",
85
+ disabled: true
86
+ }]
87
+ })),
88
+ getByText = _render6.getByText;
91
89
  var step = getByText("second-step");
92
-
93
90
  _react2.fireEvent.click(step);
94
-
95
91
  expect(onClick).toHaveBeenCalledTimes(0);
96
92
  });
97
93
  test("Controlled wizard function is called", function () {
98
94
  var onClick = jest.fn(function (i) {
99
95
  return i;
100
96
  });
101
-
102
- var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Wizard["default"], {
103
- currentStep: 1,
104
- onStepClick: onClick,
105
- steps: [{
106
- label: "first-step"
107
- }, {
108
- label: "second-step"
109
- }]
110
- })),
111
- getByText = _render6.getByText;
112
-
113
- var step1 = getByText("first-step");
114
- var step2 = getByText("second-step");
115
-
116
- _react2.fireEvent.click(step1);
117
-
118
- _react2.fireEvent.click(step2);
119
-
120
- _react2.fireEvent.click(step1);
121
-
122
- expect(onClick).toHaveBeenCalledTimes(3); //Test the received value in the onClick function
123
-
124
- expect(onClick).toHaveBeenNthCalledWith(1, 0);
125
- expect(onClick).toHaveBeenNthCalledWith(2, 1);
126
- expect(onClick).toHaveBeenNthCalledWith(3, 0);
97
+ var _render7 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Wizard["default"], {
98
+ currentStep: 0,
99
+ onStepClick: onClick,
100
+ steps: [{
101
+ label: "first-step"
102
+ }, {
103
+ label: "second-step"
104
+ }]
105
+ })),
106
+ getAllByRole = _render7.getAllByRole;
107
+ var steps = getAllByRole("button");
108
+ _react2.fireEvent.click(steps[1]);
109
+ _react2.fireEvent.click(steps[0]);
110
+ expect(onClick).toHaveBeenCalledTimes(2);
111
+ expect(onClick).toHaveBeenNthCalledWith(1, 1);
112
+ expect(onClick).toHaveBeenNthCalledWith(2, 0);
127
113
  });
128
114
  });