@dxc-technology/halstack-react 0.0.0-74ba970 → 0.0.0-752ca0a

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 (234) hide show
  1. package/BackgroundColorContext.d.ts +2 -2
  2. package/BackgroundColorContext.js +1 -1
  3. package/HalstackContext.d.ts +1349 -5
  4. package/HalstackContext.js +117 -77
  5. package/README.md +47 -0
  6. package/accordion/Accordion.d.ts +1 -1
  7. package/accordion/Accordion.js +14 -37
  8. package/accordion/Accordion.stories.tsx +104 -113
  9. package/accordion/Accordion.test.js +1 -1
  10. package/accordion/types.d.ts +2 -13
  11. package/accordion-group/AccordionGroup.d.ts +4 -3
  12. package/accordion-group/AccordionGroup.js +23 -44
  13. package/accordion-group/AccordionGroup.stories.tsx +77 -76
  14. package/accordion-group/AccordionGroup.test.js +7 -17
  15. package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
  16. package/accordion-group/AccordionGroupAccordion.js +43 -0
  17. package/accordion-group/types.d.ts +2 -13
  18. package/alert/Alert.js +4 -8
  19. package/alert/Alert.stories.tsx +28 -0
  20. package/alert/Alert.test.js +1 -1
  21. package/bleed/Bleed.stories.tsx +1 -0
  22. package/box/Box.d.ts +1 -1
  23. package/box/Box.js +7 -26
  24. package/box/Box.stories.tsx +38 -51
  25. package/box/Box.test.js +1 -1
  26. package/box/types.d.ts +0 -11
  27. package/bulleted-list/BulletedList.js +4 -2
  28. package/bulleted-list/BulletedList.stories.tsx +7 -1
  29. package/bulleted-list/types.d.ts +31 -4
  30. package/button/Button.d.ts +1 -1
  31. package/button/Button.js +48 -60
  32. package/button/Button.stories.tsx +151 -9
  33. package/button/Button.test.js +12 -1
  34. package/button/types.d.ts +7 -3
  35. package/card/Card.d.ts +1 -1
  36. package/card/Card.js +27 -45
  37. package/card/Card.stories.tsx +12 -42
  38. package/card/Card.test.js +1 -1
  39. package/card/types.d.ts +1 -6
  40. package/checkbox/Checkbox.d.ts +2 -2
  41. package/checkbox/Checkbox.js +71 -51
  42. package/checkbox/Checkbox.stories.tsx +146 -58
  43. package/checkbox/Checkbox.test.js +84 -11
  44. package/checkbox/types.d.ts +10 -2
  45. package/chip/Chip.js +28 -49
  46. package/chip/Chip.stories.tsx +121 -26
  47. package/chip/Chip.test.js +3 -5
  48. package/common/OpenSans.css +68 -80
  49. package/common/coreTokens.d.ts +146 -0
  50. package/common/coreTokens.js +167 -0
  51. package/common/utils.d.ts +1 -0
  52. package/common/utils.js +4 -4
  53. package/common/variables.d.ts +1499 -0
  54. package/common/variables.js +1004 -1134
  55. package/date-input/Calendar.d.ts +4 -0
  56. package/date-input/Calendar.js +258 -0
  57. package/date-input/DateInput.js +138 -239
  58. package/date-input/DateInput.stories.tsx +209 -33
  59. package/date-input/DateInput.test.js +519 -149
  60. package/date-input/DatePicker.d.ts +4 -0
  61. package/date-input/DatePicker.js +146 -0
  62. package/date-input/Icons.d.ts +6 -0
  63. package/date-input/Icons.js +75 -0
  64. package/date-input/YearPicker.d.ts +4 -0
  65. package/date-input/YearPicker.js +126 -0
  66. package/date-input/types.d.ts +55 -0
  67. package/dialog/Dialog.d.ts +1 -1
  68. package/dialog/Dialog.js +54 -85
  69. package/dialog/Dialog.stories.tsx +154 -170
  70. package/dialog/Dialog.test.js +302 -3
  71. package/dialog/types.d.ts +0 -12
  72. package/dropdown/Dropdown.js +40 -39
  73. package/dropdown/Dropdown.stories.tsx +210 -84
  74. package/dropdown/Dropdown.test.js +21 -26
  75. package/dropdown/DropdownMenu.js +12 -18
  76. package/dropdown/DropdownMenuItem.js +4 -17
  77. package/dropdown/types.d.ts +3 -3
  78. package/file-input/FileInput.d.ts +2 -2
  79. package/file-input/FileInput.js +174 -220
  80. package/file-input/FileInput.stories.tsx +122 -11
  81. package/file-input/FileInput.test.js +14 -14
  82. package/file-input/FileItem.d.ts +4 -14
  83. package/file-input/FileItem.js +39 -63
  84. package/file-input/types.d.ts +18 -1
  85. package/flex/Flex.d.ts +1 -1
  86. package/flex/Flex.js +33 -19
  87. package/flex/Flex.stories.tsx +35 -26
  88. package/flex/types.d.ts +83 -7
  89. package/footer/Footer.d.ts +1 -1
  90. package/footer/Footer.js +44 -64
  91. package/footer/Footer.stories.tsx +36 -21
  92. package/footer/Footer.test.js +16 -26
  93. package/footer/types.d.ts +10 -11
  94. package/grid/Grid.d.ts +7 -0
  95. package/grid/Grid.js +91 -0
  96. package/grid/Grid.stories.tsx +219 -0
  97. package/grid/types.d.ts +115 -0
  98. package/header/Header.d.ts +4 -3
  99. package/header/Header.js +20 -49
  100. package/header/Header.stories.tsx +115 -36
  101. package/header/Header.test.js +2 -2
  102. package/header/types.d.ts +1 -14
  103. package/heading/Heading.js +1 -1
  104. package/heading/Heading.test.js +1 -1
  105. package/image/Image.d.ts +4 -0
  106. package/image/Image.js +85 -0
  107. package/image/Image.stories.tsx +127 -0
  108. package/image/types.d.ts +72 -0
  109. package/inset/Inset.stories.tsx +2 -1
  110. package/layout/ApplicationLayout.d.ts +5 -5
  111. package/layout/ApplicationLayout.js +15 -12
  112. package/layout/ApplicationLayout.stories.tsx +1 -1
  113. package/layout/Icons.d.ts +7 -4
  114. package/layout/Icons.js +52 -56
  115. package/layout/types.d.ts +2 -3
  116. package/link/Link.js +4 -4
  117. package/link/Link.stories.tsx +60 -0
  118. package/link/Link.test.js +2 -4
  119. package/link/types.d.ts +2 -2
  120. package/main.d.ts +4 -2
  121. package/main.js +17 -1
  122. package/{tabs-nav → nav-tabs}/NavTabs.d.ts +2 -2
  123. package/{tabs-nav → nav-tabs}/NavTabs.js +8 -11
  124. package/{tabs-nav → nav-tabs}/NavTabs.stories.tsx +110 -6
  125. package/{tabs-nav → nav-tabs}/NavTabs.test.js +1 -1
  126. package/{tabs-nav → nav-tabs}/Tab.js +48 -32
  127. package/{tabs-nav → nav-tabs}/types.d.ts +8 -9
  128. package/nav-tabs/types.js +5 -0
  129. package/number-input/NumberInput.d.ts +7 -0
  130. package/number-input/NumberInput.js +6 -4
  131. package/number-input/NumberInput.test.js +317 -98
  132. package/package.json +9 -14
  133. package/paginator/Icons.d.ts +5 -0
  134. package/paginator/Icons.js +16 -28
  135. package/paginator/Paginator.js +8 -16
  136. package/paginator/Paginator.stories.tsx +24 -0
  137. package/paginator/Paginator.test.js +58 -48
  138. package/paragraph/Paragraph.d.ts +3 -4
  139. package/paragraph/Paragraph.js +5 -5
  140. package/password-input/Icons.d.ts +6 -0
  141. package/password-input/Icons.js +39 -0
  142. package/password-input/PasswordInput.js +35 -82
  143. package/password-input/PasswordInput.stories.tsx +1 -0
  144. package/password-input/PasswordInput.test.js +34 -40
  145. package/progress-bar/ProgressBar.d.ts +2 -2
  146. package/progress-bar/ProgressBar.js +5 -5
  147. package/progress-bar/ProgressBar.stories.jsx +35 -2
  148. package/progress-bar/ProgressBar.test.js +1 -1
  149. package/progress-bar/types.d.ts +4 -3
  150. package/quick-nav/QuickNav.js +11 -12
  151. package/quick-nav/QuickNav.stories.tsx +111 -19
  152. package/radio-group/Radio.js +10 -10
  153. package/radio-group/RadioGroup.js +15 -13
  154. package/radio-group/RadioGroup.stories.tsx +131 -18
  155. package/radio-group/RadioGroup.test.js +117 -60
  156. package/resultsetTable/Icons.d.ts +7 -0
  157. package/resultsetTable/Icons.js +51 -0
  158. package/resultsetTable/ResultsetTable.js +49 -108
  159. package/resultsetTable/ResultsetTable.stories.tsx +50 -25
  160. package/resultsetTable/ResultsetTable.test.js +41 -64
  161. package/resultsetTable/types.d.ts +1 -1
  162. package/select/Listbox.d.ts +1 -1
  163. package/select/Listbox.js +5 -34
  164. package/select/Option.js +11 -24
  165. package/select/Select.js +59 -36
  166. package/select/Select.stories.tsx +497 -153
  167. package/select/Select.test.js +345 -292
  168. package/select/types.d.ts +2 -2
  169. package/sidenav/Icons.d.ts +7 -0
  170. package/sidenav/Icons.js +51 -0
  171. package/sidenav/Sidenav.d.ts +2 -2
  172. package/sidenav/Sidenav.js +66 -96
  173. package/sidenav/Sidenav.stories.tsx +165 -63
  174. package/sidenav/types.d.ts +21 -18
  175. package/slider/Slider.d.ts +2 -2
  176. package/slider/Slider.js +17 -14
  177. package/slider/Slider.stories.tsx +57 -0
  178. package/slider/Slider.test.js +1 -1
  179. package/slider/types.d.ts +6 -2
  180. package/spinner/Spinner.js +17 -23
  181. package/spinner/Spinner.stories.jsx +53 -27
  182. package/spinner/Spinner.test.js +1 -1
  183. package/switch/Switch.d.ts +3 -3
  184. package/switch/Switch.js +7 -6
  185. package/switch/Switch.stories.tsx +33 -0
  186. package/switch/Switch.test.js +1 -1
  187. package/switch/types.d.ts +8 -3
  188. package/table/Table.js +3 -3
  189. package/table/Table.stories.jsx +80 -1
  190. package/table/Table.test.js +2 -2
  191. package/tabs/Tab.js +12 -15
  192. package/tabs/Tabs.js +11 -17
  193. package/tabs/Tabs.stories.tsx +45 -5
  194. package/tabs/Tabs.test.js +4 -5
  195. package/tabs/types.d.ts +2 -2
  196. package/tag/Tag.js +7 -9
  197. package/tag/Tag.stories.tsx +14 -1
  198. package/tag/Tag.test.js +1 -1
  199. package/text-input/Suggestion.js +34 -7
  200. package/text-input/TextInput.js +224 -228
  201. package/text-input/TextInput.stories.tsx +132 -5
  202. package/text-input/TextInput.test.js +757 -658
  203. package/text-input/types.d.ts +9 -0
  204. package/textarea/Textarea.js +27 -26
  205. package/textarea/Textarea.stories.jsx +68 -1
  206. package/textarea/Textarea.test.js +61 -19
  207. package/textarea/types.d.ts +4 -0
  208. package/toggle-group/ToggleGroup.d.ts +2 -2
  209. package/toggle-group/ToggleGroup.js +85 -59
  210. package/toggle-group/ToggleGroup.stories.tsx +48 -3
  211. package/toggle-group/ToggleGroup.test.js +38 -24
  212. package/toggle-group/types.d.ts +22 -13
  213. package/typography/Typography.d.ts +2 -2
  214. package/typography/Typography.js +14 -113
  215. package/typography/Typography.stories.tsx +1 -1
  216. package/useTheme.d.ts +1251 -1
  217. package/useTheme.js +1 -1
  218. package/useTranslatedLabels.d.ts +84 -1
  219. package/utils/BaseTypography.d.ts +21 -0
  220. package/utils/BaseTypography.js +108 -0
  221. package/utils/FocusLock.d.ts +13 -0
  222. package/utils/FocusLock.js +138 -0
  223. package/wizard/Wizard.js +2 -2
  224. package/wizard/Wizard.stories.tsx +20 -0
  225. package/wizard/Wizard.test.js +1 -1
  226. package/wizard/types.d.ts +5 -6
  227. package/card/ice-cream.jpg +0 -0
  228. package/common/RequiredComponent.js +0 -32
  229. package/number-input/NumberInputContext.d.ts +0 -4
  230. package/number-input/NumberInputContext.js +0 -19
  231. package/number-input/numberInputContextTypes.d.ts +0 -19
  232. /package/{tabs-nav → grid}/types.js +0 -0
  233. /package/{number-input/numberInputContextTypes.js → image/types.js} +0 -0
  234. /package/{tabs-nav → nav-tabs}/Tab.d.ts +0 -0
@@ -19,7 +19,9 @@ var _styledComponents = _interopRequireDefault(require("styled-components"));
19
19
 
20
20
  var _TextInput = _interopRequireDefault(require("../text-input/TextInput"));
21
21
 
22
- var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
22
+ var _useTranslatedLabels2 = _interopRequireDefault(require("../useTranslatedLabels"));
23
+
24
+ var _Icons = _interopRequireDefault(require("./Icons"));
23
25
 
24
26
  var _templateObject;
25
27
 
@@ -27,6 +29,16 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
27
29
 
28
30
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(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; }
29
31
 
32
+ var setInputType = function setInputType(type, element) {
33
+ element === null || element === void 0 ? void 0 : element.getElementsByTagName("input")[0].setAttribute("type", type);
34
+ };
35
+
36
+ var setAriaAttributes = function setAriaAttributes(ariaExpanded, ariaLabel, element) {
37
+ var inputElement = element === null || element === void 0 ? void 0 : element.getElementsByTagName("input")[0];
38
+ inputElement === null || inputElement === void 0 ? void 0 : inputElement.setAttribute("aria-expanded", ariaExpanded);
39
+ inputElement === null || inputElement === void 0 ? void 0 : inputElement.setAttribute("aria-label", ariaLabel);
40
+ };
41
+
30
42
  var DxcPasswordInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
31
43
  var label = _ref.label,
32
44
  _ref$name = _ref.name,
@@ -55,97 +67,37 @@ var DxcPasswordInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref,
55
67
  setIsPasswordVisible = _useState2[1];
56
68
 
57
69
  var inputRef = (0, _react.useRef)(null);
58
- var translatedLabels = (0, _useTranslatedLabels["default"])();
59
-
60
- var setInputType = function setInputType(type) {
61
- var _inputRef$current, _inputRef$current$chi;
62
-
63
- inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : (_inputRef$current$chi = _inputRef$current.children[label && helperText ? 2 : label || helperText ? 1 : 0]) === null || _inputRef$current$chi === void 0 ? void 0 : _inputRef$current$chi.children[0].setAttribute("type", type);
64
- };
65
-
66
- var setAriaAttributes = function setAriaAttributes(ariaExpanded, ariaLabel) {
67
- var inputIndex = label && helperText ? 2 : label || helperText ? 1 : 0;
68
70
 
69
- if (error && clearable && value) {
70
- var _inputRef$current2, _inputRef$current2$ch, _inputRef$current2$ch2, _inputRef$current3, _inputRef$current3$ch, _inputRef$current3$ch2;
71
-
72
- inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current2 = inputRef.current) === null || _inputRef$current2 === void 0 ? void 0 : (_inputRef$current2$ch = _inputRef$current2.children[inputIndex]) === null || _inputRef$current2$ch === void 0 ? void 0 : (_inputRef$current2$ch2 = _inputRef$current2$ch.children[3]) === null || _inputRef$current2$ch2 === void 0 ? void 0 : _inputRef$current2$ch2.setAttribute("aria-expanded", ariaExpanded);
73
- inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current3 = inputRef.current) === null || _inputRef$current3 === void 0 ? void 0 : (_inputRef$current3$ch = _inputRef$current3.children[inputIndex]) === null || _inputRef$current3$ch === void 0 ? void 0 : (_inputRef$current3$ch2 = _inputRef$current3$ch.children[3]) === null || _inputRef$current3$ch2 === void 0 ? void 0 : _inputRef$current3$ch2.setAttribute("aria-label", ariaLabel);
74
- } else if (error || clearable && !value) {
75
- var _inputRef$current4, _inputRef$current4$ch, _inputRef$current4$ch2, _inputRef$current5, _inputRef$current5$ch, _inputRef$current5$ch2;
76
-
77
- inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current4 = inputRef.current) === null || _inputRef$current4 === void 0 ? void 0 : (_inputRef$current4$ch = _inputRef$current4.children[inputIndex]) === null || _inputRef$current4$ch === void 0 ? void 0 : (_inputRef$current4$ch2 = _inputRef$current4$ch.children[2]) === null || _inputRef$current4$ch2 === void 0 ? void 0 : _inputRef$current4$ch2.setAttribute("aria-expanded", ariaExpanded);
78
- inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current5 = inputRef.current) === null || _inputRef$current5 === void 0 ? void 0 : (_inputRef$current5$ch = _inputRef$current5.children[inputIndex]) === null || _inputRef$current5$ch === void 0 ? void 0 : (_inputRef$current5$ch2 = _inputRef$current5$ch.children[2]) === null || _inputRef$current5$ch2 === void 0 ? void 0 : _inputRef$current5$ch2.setAttribute("aria-label", ariaLabel);
79
- } else {
80
- var _inputRef$current6, _inputRef$current6$ch, _inputRef$current6$ch2, _inputRef$current7, _inputRef$current7$ch, _inputRef$current7$ch2;
81
-
82
- inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current6 = inputRef.current) === null || _inputRef$current6 === void 0 ? void 0 : (_inputRef$current6$ch = _inputRef$current6.children[inputIndex]) === null || _inputRef$current6$ch === void 0 ? void 0 : (_inputRef$current6$ch2 = _inputRef$current6$ch.children[1]) === null || _inputRef$current6$ch2 === void 0 ? void 0 : _inputRef$current6$ch2.setAttribute("aria-expanded", ariaExpanded);
83
- inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current7 = inputRef.current) === null || _inputRef$current7 === void 0 ? void 0 : (_inputRef$current7$ch = _inputRef$current7.children[inputIndex]) === null || _inputRef$current7$ch === void 0 ? void 0 : (_inputRef$current7$ch2 = _inputRef$current7$ch.children[1]) === null || _inputRef$current7$ch2 === void 0 ? void 0 : _inputRef$current7$ch2.setAttribute("aria-label", ariaLabel);
84
- }
85
- };
86
-
87
- var getIconTitle = function getIconTitle() {
88
- return isPasswordVisible ? translatedLabels.passwordInput.inputHidePasswordTitle : translatedLabels.passwordInput.inputShowPasswordTitle;
89
- };
71
+ var _useTranslatedLabels = (0, _useTranslatedLabels2["default"])(),
72
+ passwordInput = _useTranslatedLabels.passwordInput;
90
73
 
91
74
  (0, _react.useEffect)(function () {
92
- setAriaAttributes(false, translatedLabels.passwordInput.inputShowPasswordTitle);
93
-
94
- if (isPasswordVisible) {
95
- setInputType("text");
96
- setAriaAttributes(true, translatedLabels.passwordInput.inputHidePasswordTitle);
97
- } else {
98
- setInputType("password");
99
- setAriaAttributes(false, translatedLabels.passwordInput.inputShowPasswordTitle);
100
- }
101
- }, [isPasswordVisible]);
102
-
103
- var viewPassword = function viewPassword() {
104
- setInputType("text");
105
- setIsPasswordVisible(true);
106
- };
107
-
108
- var hidePassword = function hidePassword() {
109
- setInputType("password");
110
- setIsPasswordVisible(false);
111
- };
112
-
113
- var action = {
114
- onClick: isPasswordVisible ? hidePassword : viewPassword,
115
- icon: isPasswordVisible ? /*#__PURE__*/_react["default"].createElement("svg", {
116
- xmlns: "http://www.w3.org/2000/svg",
117
- height: "24px",
118
- viewBox: "0 0 24 24",
119
- width: "24px",
120
- fill: "currentColor"
121
- }, /*#__PURE__*/_react["default"].createElement("path", {
122
- d: "M0 0h24v24H0V0zm0 0h24v24H0V0zm0 0h24v24H0V0zm0 0h24v24H0V0z",
123
- fill: "none"
124
- }), /*#__PURE__*/_react["default"].createElement("path", {
125
- d: "M12 6c3.79 0 7.17 2.13 8.82 5.5-.59 1.22-1.42 2.27-2.41 3.12l1.41 1.41c1.39-1.23 2.49-2.77 3.18-4.53C21.27 7.11 17 4 12 4c-1.27 0-2.49.2-3.64.57l1.65 1.65C10.66 6.09 11.32 6 12 6zm-1.07 1.14L13 9.21c.57.25 1.03.71 1.28 1.28l2.07 2.07c.08-.34.14-.7.14-1.07C16.5 9.01 14.48 7 12 7c-.37 0-.72.05-1.07.14zM2.01 3.87l2.68 2.68C3.06 7.83 1.77 9.53 1 11.5 2.73 15.89 7 19 12 19c1.52 0 2.98-.29 4.32-.82l3.42 3.42 1.41-1.41L3.42 2.45 2.01 3.87zm7.5 7.5l2.61 2.61c-.04.01-.08.02-.12.02-1.38 0-2.5-1.12-2.5-2.5 0-.05.01-.08.01-.13zm-3.4-3.4l1.75 1.75c-.23.55-.36 1.15-.36 1.78 0 2.48 2.02 4.5 4.5 4.5.63 0 1.23-.13 1.77-.36l.98.98c-.88.24-1.8.38-2.75.38-3.79 0-7.17-2.13-8.82-5.5.7-1.43 1.72-2.61 2.93-3.53z"
126
- })) : /*#__PURE__*/_react["default"].createElement("svg", {
127
- xmlns: "http://www.w3.org/2000/svg",
128
- height: "24px",
129
- viewBox: "0 0 24 24",
130
- width: "24px",
131
- fill: "currentColor"
132
- }, /*#__PURE__*/_react["default"].createElement("path", {
133
- d: "M0 0h24v24H0V0z",
134
- fill: "none"
135
- }), /*#__PURE__*/_react["default"].createElement("path", {
136
- d: "M12 6c3.79 0 7.17 2.13 8.82 5.5C19.17 14.87 15.79 17 12 17s-7.17-2.13-8.82-5.5C4.83 8.13 8.21 6 12 6m0-2C7 4 2.73 7.11 1 11.5 2.73 15.89 7 19 12 19s9.27-3.11 11-7.5C21.27 7.11 17 4 12 4zm0 5c1.38 0 2.5 1.12 2.5 2.5S13.38 14 12 14s-2.5-1.12-2.5-2.5S10.62 9 12 9m0-2c-2.48 0-4.5 2.02-4.5 4.5S9.52 16 12 16s4.5-2.02 4.5-4.5S14.48 7 12 7z"
137
- })),
138
- title: getIconTitle()
139
- };
75
+ (function () {
76
+ if (isPasswordVisible) {
77
+ setInputType("text", inputRef.current);
78
+ setAriaAttributes("true", passwordInput.inputHidePasswordTitle, inputRef.current);
79
+ } else {
80
+ setInputType("password", inputRef.current);
81
+ setAriaAttributes("false", passwordInput.inputShowPasswordTitle, inputRef.current);
82
+ }
83
+ })();
84
+ }, [isPasswordVisible, passwordInput]);
140
85
  return /*#__PURE__*/_react["default"].createElement(PasswordInput, {
141
86
  ref: ref
142
87
  }, /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
143
- ref: inputRef,
144
88
  label: label,
145
89
  name: name,
146
90
  value: value,
147
91
  helperText: helperText,
148
- action: action,
92
+ action: {
93
+ onClick: function onClick() {
94
+ setIsPasswordVisible(function (isPasswordVisible) {
95
+ return !isPasswordVisible;
96
+ });
97
+ },
98
+ icon: isPasswordVisible ? _Icons["default"].hidePassword : _Icons["default"].showPassword,
99
+ title: isPasswordVisible ? passwordInput.inputHidePasswordTitle : passwordInput.inputShowPasswordTitle
100
+ },
149
101
  error: error,
150
102
  clearable: clearable,
151
103
  onChange: onChange,
@@ -156,6 +108,7 @@ var DxcPasswordInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref,
156
108
  minLength: minLength,
157
109
  maxLength: maxLength,
158
110
  autocomplete: autocomplete,
111
+ ref: inputRef,
159
112
  tabIndex: tabIndex
160
113
  }));
161
114
  });
@@ -105,6 +105,7 @@ const Password = () => (
105
105
  <DxcPasswordInput label="Password input" value="Password" />
106
106
  </ExampleContainer>
107
107
  );
108
+
108
109
  const PasswordDark = () => (
109
110
  <BackgroundColorProvider color="#333333">
110
111
  <DarkContainer>
@@ -12,43 +12,37 @@ var _react2 = require("@testing-library/react");
12
12
 
13
13
  var _userEvent = _interopRequireDefault(require("@testing-library/user-event"));
14
14
 
15
- var _PasswordInput = _interopRequireDefault(require("./PasswordInput"));
15
+ var _PasswordInput = _interopRequireDefault(require("./PasswordInput.tsx"));
16
16
 
17
17
  describe("Password input component tests", function () {
18
- test("Password input renders with label", function () {
18
+ test("Password input renders with label and helper text", function () {
19
19
  var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_PasswordInput["default"], {
20
- label: "Password input label"
20
+ label: "Password input label",
21
+ helperText: "Helper text"
21
22
  })),
22
23
  getByText = _render.getByText;
23
24
 
24
25
  expect(getByText("Password input label")).toBeTruthy();
25
- });
26
- test("Password input renders with helper text", function () {
27
- var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_PasswordInput["default"], {
28
- helperText: "Helper text"
29
- })),
30
- getByText = _render2.getByText;
31
-
32
26
  expect(getByText("Helper text")).toBeTruthy();
33
27
  });
34
28
  test("Password input renders error", function () {
35
- var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_PasswordInput["default"], {
29
+ var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_PasswordInput["default"], {
36
30
  error: "Error message."
37
31
  })),
38
- getByText = _render3.getByText;
32
+ getByText = _render2.getByText;
39
33
 
40
34
  expect(getByText("Error message.")).toBeTruthy();
41
35
  });
42
36
  test("onChange function is called correctly", function () {
43
37
  var onChange = jest.fn();
44
38
 
45
- var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_PasswordInput["default"], {
39
+ var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_PasswordInput["default"], {
46
40
  label: "Password input",
47
41
  onChange: onChange
48
42
  })),
49
- getByRole = _render4.getByRole;
43
+ getByLabelText = _render3.getByLabelText;
50
44
 
51
- var passwordInput = getByRole("textbox");
45
+ var passwordInput = getByLabelText("Password input");
52
46
 
53
47
  _userEvent["default"].type(passwordInput, "Pa$$w0rd");
54
48
 
@@ -60,13 +54,13 @@ describe("Password input component tests", function () {
60
54
  test("onBlur function is called correctly", function () {
61
55
  var onBlur = jest.fn();
62
56
 
63
- var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_PasswordInput["default"], {
57
+ var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_PasswordInput["default"], {
64
58
  label: "Password input",
65
59
  onBlur: onBlur
66
60
  })),
67
- getByRole = _render5.getByRole;
61
+ getByLabelText = _render4.getByLabelText;
68
62
 
69
- var passwordInput = getByRole("textbox");
63
+ var passwordInput = getByLabelText("Password input");
70
64
 
71
65
  _userEvent["default"].type(passwordInput, "Pa$$w0rd");
72
66
 
@@ -78,14 +72,14 @@ describe("Password input component tests", function () {
78
72
  expect(passwordInput.value).toBe("Pa$$w0rd");
79
73
  });
80
74
  test("Clear password input value", function () {
81
- var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_PasswordInput["default"], {
75
+ var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_PasswordInput["default"], {
82
76
  label: "Password input",
83
77
  clearable: true
84
78
  })),
85
- getAllByRole = _render6.getAllByRole,
86
- getByRole = _render6.getByRole;
79
+ getAllByRole = _render5.getAllByRole,
80
+ getByLabelText = _render5.getByLabelText;
87
81
 
88
- var passwordInput = getByRole("textbox");
82
+ var passwordInput = getByLabelText("Password input");
89
83
 
90
84
  _userEvent["default"].type(passwordInput, "Pa$$w0rd");
91
85
 
@@ -97,13 +91,13 @@ describe("Password input component tests", function () {
97
91
  expect(passwordInput.value).toBe("");
98
92
  });
99
93
  test("Non clearable password input has no clear icon", function () {
100
- var _render7 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_PasswordInput["default"], {
94
+ var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_PasswordInput["default"], {
101
95
  label: "Password input"
102
96
  })),
103
- getAllByRole = _render7.getAllByRole,
104
- getByRole = _render7.getByRole;
97
+ getAllByRole = _render6.getAllByRole,
98
+ getByLabelText = _render6.getByLabelText;
105
99
 
106
- var passwordInput = getByRole("textbox");
100
+ var passwordInput = getByLabelText("Password input");
107
101
 
108
102
  _userEvent["default"].type(passwordInput, "Pa$$w0rd");
109
103
 
@@ -112,14 +106,14 @@ describe("Password input component tests", function () {
112
106
  expect(buttons.length).toBe(1);
113
107
  });
114
108
  test("Show/hide password input button works correctly", function () {
115
- var _render8 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_PasswordInput["default"], {
109
+ var _render7 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_PasswordInput["default"], {
116
110
  label: "Password input",
117
111
  clearable: true
118
112
  })),
119
- getAllByRole = _render8.getAllByRole,
120
- getByRole = _render8.getByRole;
113
+ getAllByRole = _render7.getAllByRole,
114
+ getByLabelText = _render7.getByLabelText;
121
115
 
122
- var passwordInput = getByRole("textbox");
116
+ var passwordInput = getByLabelText("Password input");
123
117
 
124
118
  _userEvent["default"].type(passwordInput, "Pa$$w0rd");
125
119
 
@@ -132,17 +126,17 @@ describe("Password input component tests", function () {
132
126
  expect(passwordInput.type).toBe("text");
133
127
  });
134
128
  test("Password tooltip is correct", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
135
- var _render9, getAllByRole, getByTitle, queryByTitle, showButton;
129
+ var _render8, getAllByRole, getByTitle, queryByTitle, showButton;
136
130
 
137
131
  return _regenerator["default"].wrap(function _callee$(_context) {
138
132
  while (1) {
139
133
  switch (_context.prev = _context.next) {
140
134
  case 0:
141
- _render9 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_PasswordInput["default"], {
135
+ _render8 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_PasswordInput["default"], {
142
136
  label: "Password input",
143
137
  clearable: true,
144
138
  value: "Password"
145
- })), getAllByRole = _render9.getAllByRole, getByTitle = _render9.getByTitle, queryByTitle = _render9.queryByTitle;
139
+ })), getAllByRole = _render8.getAllByRole, getByTitle = _render8.getByTitle, queryByTitle = _render8.queryByTitle;
146
140
  showButton = getAllByRole("button")[1];
147
141
 
148
142
  _userEvent["default"].hover(showButton);
@@ -160,21 +154,21 @@ describe("Password input component tests", function () {
160
154
  }
161
155
  }, _callee);
162
156
  })));
163
- test("Password input has correct accesibility attributes", function () {
164
- var _render10 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_PasswordInput["default"], {
157
+ test("Password input has correct accessibility attributes", function () {
158
+ var _render9 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_PasswordInput["default"], {
165
159
  label: "Password input"
166
160
  })),
167
- getByRole = _render10.getByRole;
161
+ getByRole = _render9.getByRole,
162
+ getByLabelText = _render9.getByLabelText;
168
163
 
169
- var passwordInput = getByRole("textbox");
170
- expect(passwordInput.getAttribute("aria-autocomplete")).toBeNull();
171
- expect(passwordInput.getAttribute("aria-controls")).toBeNull();
172
- expect(passwordInput.getAttribute("aria-expanded")).toBeNull();
164
+ var passwordInput = getByLabelText("Password input");
173
165
  var showButton = getByRole("button");
166
+ expect(passwordInput.getAttribute("aria-expanded")).toBe("false");
174
167
  expect(showButton.getAttribute("aria-label")).toBe("Show password");
175
168
 
176
169
  _userEvent["default"].click(showButton);
177
170
 
171
+ expect(passwordInput.getAttribute("aria-expanded")).toBe("true");
178
172
  expect(showButton.getAttribute("aria-label")).toBe("Hide password");
179
173
  });
180
174
  });
@@ -1,4 +1,4 @@
1
1
  /// <reference types="react" />
2
- import { Props } from "./types";
3
- declare const DxcProgressBar: ({ label, helperText, overlay, value, showValue, margin, }: Props) => JSX.Element;
2
+ import ProgressBarPropsType from "./types";
3
+ declare const DxcProgressBar: ({ label, helperText, overlay, value, showValue, margin, }: ProgressBarPropsType) => JSX.Element;
4
4
  export default DxcProgressBar;
@@ -19,7 +19,7 @@ var _react = _interopRequireWildcard(require("react"));
19
19
 
20
20
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
21
21
 
22
- var _variables = require("../common/variables.js");
22
+ var _variables = require("../common/variables");
23
23
 
24
24
  var _useTheme = _interopRequireDefault(require("../useTheme"));
25
25
 
@@ -87,7 +87,7 @@ var DxcProgressBar = function DxcProgressBar(_ref) {
87
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
88
  var overlay = _ref2.overlay,
89
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\";";
90
+ return overlay ? "background-color: ".concat(theme.overlayColor, ";\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\";";
91
91
  });
92
92
 
93
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) {
@@ -119,7 +119,7 @@ var ProgressBarLabel = _styledComponents["default"].div(_templateObject4 || (_te
119
119
  }, function (props) {
120
120
  return props.theme.labelFontTextTransform;
121
121
  }, function (props) {
122
- return props.backgroundType === "dark" ? props.theme.labelFontColorOnDark : props.overlay === true ? "#FFFFFF" : props.theme.labelFontColor;
122
+ return props.backgroundType === "dark" ? props.theme.labelFontColorOnDark : props.overlay === true ? props.theme.overlayFontColor : props.theme.labelFontColor;
123
123
  });
124
124
 
125
125
  var ProgressBarProgress = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-style: ", ";\n font-size: ", ";\n font-weight: ", ";\n text-transform: ", ";\n color: ", ";\n display: ", ";\n flex-shrink: 0;\n"])), function (props) {
@@ -133,13 +133,13 @@ var ProgressBarProgress = _styledComponents["default"].div(_templateObject5 || (
133
133
  }, function (props) {
134
134
  return props.theme.valueFontTextTransform;
135
135
  }, function (props) {
136
- return props.backgroundType === "dark" ? props.theme.valueFontColorOnDark : props.overlay === true ? "#FFFFFF" : props.theme.valueFontColor;
136
+ return props.backgroundType === "dark" ? props.theme.valueFontColorOnDark : props.overlay === true ? props.theme.overlayFontColor : props.theme.valueFontColor;
137
137
  }, function (props) {
138
138
  return props.value !== undefined && props.value !== null && props.showValue === true && "block" || "none";
139
139
  });
140
140
 
141
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) {
142
- return props.backgroundType === "dark" ? props.theme.helperTextFontColorOnDark : props.overlay === true ? "#FFFFFF" : props.theme.helperTextFontColor;
142
+ return props.backgroundType === "dark" ? props.theme.helperTextFontColorOnDark : props.overlay === true ? props.theme.overlayFontColor : props.theme.helperTextFontColor;
143
143
  }, function (props) {
144
144
  return props.theme.helperTextFontFamily;
145
145
  }, function (props) {
@@ -2,12 +2,23 @@ import React from "react";
2
2
  import DxcProgressBar from "./ProgressBar";
3
3
  import Title from "../../.storybook/components/Title";
4
4
  import ExampleContainer from "../../.storybook/components/ExampleContainer";
5
+ import { HalstackProvider } from "../HalstackContext";
5
6
 
6
7
  export default {
7
8
  title: "ProgressBar",
8
9
  component: DxcProgressBar,
9
10
  };
10
11
 
12
+ const opinionatedTheme = {
13
+ progressBar: {
14
+ accentColor: "#5f249f",
15
+ baseColor: "#e6e6e6",
16
+ fontColor: "#000000",
17
+ overlayColor: "#000000b3",
18
+ overlayFontColor: "#ffffff",
19
+ },
20
+ };
21
+
11
22
  export const Chromatic = () => (
12
23
  <>
13
24
  <ExampleContainer>
@@ -46,15 +57,37 @@ export const Chromatic = () => (
46
57
  <DxcProgressBar label="Margin xlarge" margin="xlarge" value={50} showValue />
47
58
  </ExampleContainer>
48
59
  <ExampleContainer>
49
- <Title title="XxLarge margin" theme="light" level={4} />
60
+ <Title title="Xxlarge margin" theme="light" level={4} />
50
61
  <DxcProgressBar label="Margin xxlarge" margin="xxlarge" value={50} showValue />
51
62
  </ExampleContainer>
63
+ <Title title="Opinionated theme" theme="light" level={2} />
64
+ <ExampleContainer>
65
+ <Title title="Label and helper text" theme="light" level={4} />
66
+ <HalstackProvider theme={opinionatedTheme}>
67
+ <DxcProgressBar label="Loading..." helperText="Helper text" value={24} showValue />
68
+ </HalstackProvider>
69
+ </ExampleContainer>
70
+ <ExampleContainer>
71
+ <Title title="Without default value" theme="light" level={4} />
72
+ <HalstackProvider theme={opinionatedTheme}>
73
+ <DxcProgressBar label="Loading..." helperText="Helper text" showValue />
74
+ </HalstackProvider>
75
+ </ExampleContainer>
52
76
  </>
53
77
  );
54
78
 
55
79
  export const ProgressBarOverlay = () => (
56
80
  <ExampleContainer>
57
81
  <Title title="Overlay" theme="dark" level={4} />
58
- <DxcProgressBar label="Overlay" helperText="Helper text" overlay={true} showValue value={50} />
82
+ <DxcProgressBar label="Overlay" helperText="Helper text" overlay showValue value={50} />
83
+ </ExampleContainer>
84
+ );
85
+
86
+ export const ProgressBarOverlayOpinionated = () => (
87
+ <ExampleContainer>
88
+ <Title title="Overlay" theme="dark" level={4} />
89
+ <HalstackProvider theme={opinionatedTheme}>
90
+ <DxcProgressBar label="Overlay" helperText="Helper text" overlay showValue value={50} />
91
+ </HalstackProvider>
59
92
  </ExampleContainer>
60
93
  );
@@ -6,7 +6,7 @@ var _react = _interopRequireDefault(require("react"));
6
6
 
7
7
  var _react2 = require("@testing-library/react");
8
8
 
9
- var _ProgressBar = _interopRequireDefault(require("./ProgressBar"));
9
+ var _ProgressBar = _interopRequireDefault(require("./ProgressBar.tsx"));
10
10
 
11
11
  describe("ProgressBar component tests", function () {
12
12
  test("ProgressBar renders with label and helperText", function () {
@@ -1,11 +1,11 @@
1
- export declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
2
- export declare type Size = {
1
+ declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
2
+ declare type Size = {
3
3
  top?: Space;
4
4
  bottom?: Space;
5
5
  left?: Space;
6
6
  right?: Space;
7
7
  };
8
- export declare type Props = {
8
+ declare type Props = {
9
9
  /**
10
10
  * Text to be placed above the progress bar.
11
11
  */
@@ -34,3 +34,4 @@ export declare type Props = {
34
34
  */
35
35
  margin?: Space | Size;
36
36
  };
37
+ export default Props;
@@ -48,13 +48,10 @@ var DxcQuickNav = function DxcQuickNav(_ref) {
48
48
  }, /*#__PURE__*/_react["default"].createElement(_Heading["default"], {
49
49
  level: 4,
50
50
  text: title || translatedLabels.quickNav.contentTitle
51
- }), /*#__PURE__*/_react["default"].createElement(ListColumn, null, /*#__PURE__*/_react["default"].createElement(_Flex["default"], {
52
- direction: "column",
53
- gap: "0.5rem"
54
- }, links.map(function (link) {
51
+ }), /*#__PURE__*/_react["default"].createElement(ListColumn, null, links.map(function (link) {
55
52
  var _link$links;
56
53
 
57
- return /*#__PURE__*/_react["default"].createElement(ListRow, {
54
+ return /*#__PURE__*/_react["default"].createElement("li", {
58
55
  key: link.label
59
56
  }, /*#__PURE__*/_react["default"].createElement(_Inset["default"], {
60
57
  space: "0.25rem"
@@ -62,18 +59,20 @@ var DxcQuickNav = function DxcQuickNav(_ref) {
62
59
  href: "#".concat((0, _slugify["default"])(link === null || link === void 0 ? void 0 : link.label, {
63
60
  lower: true
64
61
  }))
65
- }, 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) {
66
- return /*#__PURE__*/_react["default"].createElement(ListRow, {
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", {
67
64
  key: sublink.label
68
65
  }, /*#__PURE__*/_react["default"].createElement(_Inset["default"], {
69
66
  horizontal: "0.5rem"
70
67
  }, /*#__PURE__*/_react["default"].createElement(_Typography["default"], null, /*#__PURE__*/_react["default"].createElement(Link, {
71
- href: "#".concat((0, _slugify["default"])(sublink === null || sublink === void 0 ? void 0 : sublink.label, {
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, {
72
71
  lower: true
73
72
  }))
74
73
  }, sublink === null || sublink === void 0 ? void 0 : sublink.label))));
75
- }))));
76
- }))))));
74
+ })))));
75
+ })))));
77
76
  };
78
77
 
79
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) {
@@ -88,9 +87,9 @@ var QuickNavContainer = _styledComponents["default"].div(_templateObject || (_te
88
87
  return props.theme.dividerBorderColor;
89
88
  });
90
89
 
91
- var ListColumn = _styledComponents["default"].ul(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n list-style-type: none;\n margin: 0;\n padding: 0;\n width: 100%;\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"])));
92
91
 
93
- var ListRow = _styledComponents["default"].li(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n width: 100%;\n"])));
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"])));
94
93
 
95
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) {
96
95
  return props.theme.fontSize;