@dxc-technology/halstack-react 0.0.0-8d998c7 → 0.0.0-8ded8ca

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 (382) hide show
  1. package/BackgroundColorContext.d.ts +1 -0
  2. package/BackgroundColorContext.js +6 -26
  3. package/HalstackContext.d.ts +1235 -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 +118 -194
  8. package/accordion/Accordion.stories.tsx +283 -0
  9. package/accordion/Accordion.test.js +56 -0
  10. package/accordion/types.d.ts +12 -23
  11. package/accordion-group/AccordionGroup.d.ts +5 -4
  12. package/accordion-group/AccordionGroup.js +39 -108
  13. package/accordion-group/AccordionGroup.stories.tsx +252 -0
  14. package/accordion-group/AccordionGroup.test.js +98 -0
  15. package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
  16. package/accordion-group/AccordionGroupAccordion.js +31 -0
  17. package/accordion-group/types.d.ts +18 -23
  18. package/action-icon/ActionIcon.d.ts +4 -0
  19. package/action-icon/ActionIcon.js +43 -0
  20. package/action-icon/types.d.ts +26 -0
  21. package/alert/Alert.js +24 -60
  22. package/alert/Alert.stories.tsx +198 -0
  23. package/alert/Alert.test.js +75 -0
  24. package/alert/types.d.ts +6 -6
  25. package/badge/Badge.d.ts +4 -0
  26. package/badge/Badge.js +9 -20
  27. package/badge/types.d.ts +5 -0
  28. package/badge/types.js +5 -0
  29. package/bleed/Bleed.d.ts +3 -0
  30. package/bleed/Bleed.js +43 -0
  31. package/bleed/Bleed.stories.tsx +342 -0
  32. package/bleed/types.d.ts +37 -0
  33. package/bleed/types.js +5 -0
  34. package/box/Box.d.ts +4 -0
  35. package/box/Box.js +32 -109
  36. package/box/{Box.stories.jsx → Box.stories.tsx} +38 -51
  37. package/box/Box.test.js +13 -0
  38. package/box/types.d.ts +32 -0
  39. package/box/types.js +5 -0
  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/bulleted-list/types.js +5 -0
  45. package/button/Button.d.ts +1 -1
  46. package/button/Button.js +65 -127
  47. package/button/Button.stories.tsx +329 -278
  48. package/button/Button.test.js +36 -0
  49. package/button/types.d.ts +18 -18
  50. package/card/Card.d.ts +1 -1
  51. package/card/Card.js +59 -104
  52. package/card/Card.stories.tsx +171 -0
  53. package/card/Card.test.js +39 -0
  54. package/card/types.d.ts +8 -15
  55. package/checkbox/Checkbox.d.ts +2 -2
  56. package/checkbox/Checkbox.js +145 -183
  57. package/checkbox/Checkbox.stories.tsx +222 -0
  58. package/checkbox/Checkbox.test.js +199 -0
  59. package/checkbox/types.d.ts +20 -8
  60. package/chip/Chip.d.ts +4 -0
  61. package/chip/Chip.js +48 -148
  62. package/chip/Chip.stories.tsx +214 -0
  63. package/chip/Chip.test.js +41 -0
  64. package/chip/types.d.ts +45 -0
  65. package/chip/types.js +5 -0
  66. package/common/OpenSans.css +68 -80
  67. package/common/coreTokens.d.ts +237 -0
  68. package/common/coreTokens.js +184 -0
  69. package/common/utils.d.ts +1 -0
  70. package/common/utils.js +6 -12
  71. package/common/variables.d.ts +1381 -0
  72. package/common/variables.js +1006 -1322
  73. package/container/Container.d.ts +4 -0
  74. package/container/Container.js +194 -0
  75. package/container/Container.stories.tsx +214 -0
  76. package/container/types.d.ts +74 -0
  77. package/container/types.js +5 -0
  78. package/date-input/Calendar.d.ts +4 -0
  79. package/date-input/Calendar.js +214 -0
  80. package/date-input/DateInput.js +175 -313
  81. package/date-input/DateInput.stories.tsx +285 -0
  82. package/date-input/DateInput.test.js +808 -0
  83. package/date-input/DatePicker.d.ts +4 -0
  84. package/date-input/DatePicker.js +115 -0
  85. package/date-input/Icons.d.ts +6 -0
  86. package/date-input/Icons.js +58 -0
  87. package/date-input/YearPicker.d.ts +4 -0
  88. package/date-input/YearPicker.js +100 -0
  89. package/date-input/types.d.ts +86 -22
  90. package/dialog/Dialog.d.ts +4 -0
  91. package/dialog/Dialog.js +69 -149
  92. package/dialog/Dialog.stories.tsx +365 -0
  93. package/dialog/Dialog.test.js +307 -0
  94. package/dialog/types.d.ts +36 -0
  95. package/dialog/types.js +5 -0
  96. package/dropdown/Dropdown.d.ts +1 -1
  97. package/dropdown/Dropdown.js +245 -328
  98. package/dropdown/Dropdown.stories.tsx +438 -0
  99. package/dropdown/Dropdown.test.js +599 -0
  100. package/dropdown/DropdownMenu.d.ts +4 -0
  101. package/dropdown/DropdownMenu.js +63 -0
  102. package/dropdown/DropdownMenuItem.d.ts +4 -0
  103. package/dropdown/DropdownMenuItem.js +67 -0
  104. package/dropdown/types.d.ts +37 -28
  105. package/file-input/FileInput.d.ts +4 -0
  106. package/file-input/FileInput.js +274 -327
  107. package/file-input/FileInput.stories.tsx +618 -0
  108. package/file-input/FileInput.test.js +459 -0
  109. package/file-input/FileItem.d.ts +4 -0
  110. package/file-input/FileItem.js +54 -112
  111. package/file-input/types.d.ts +129 -0
  112. package/file-input/types.js +5 -0
  113. package/flex/Flex.d.ts +4 -0
  114. package/flex/Flex.js +57 -0
  115. package/flex/Flex.stories.tsx +112 -0
  116. package/flex/types.d.ts +97 -0
  117. package/flex/types.js +5 -0
  118. package/footer/Footer.d.ts +1 -1
  119. package/footer/Footer.js +73 -201
  120. package/footer/Footer.stories.tsx +171 -0
  121. package/footer/Footer.test.js +85 -0
  122. package/footer/Icons.d.ts +3 -0
  123. package/footer/Icons.js +67 -8
  124. package/footer/types.d.ts +41 -38
  125. package/grid/Grid.d.ts +7 -0
  126. package/grid/Grid.js +76 -0
  127. package/grid/Grid.stories.tsx +219 -0
  128. package/grid/types.d.ts +115 -0
  129. package/grid/types.js +5 -0
  130. package/header/Header.d.ts +8 -0
  131. package/header/Header.js +115 -221
  132. package/header/Header.stories.tsx +251 -0
  133. package/header/Header.test.js +66 -0
  134. package/header/Icons.d.ts +2 -0
  135. package/header/Icons.js +5 -35
  136. package/header/types.d.ts +33 -0
  137. package/header/types.js +5 -0
  138. package/heading/Heading.d.ts +4 -0
  139. package/heading/Heading.js +16 -55
  140. package/heading/Heading.stories.tsx +54 -0
  141. package/heading/Heading.test.js +169 -0
  142. package/heading/types.d.ts +33 -0
  143. package/heading/types.js +5 -0
  144. package/image/Image.d.ts +4 -0
  145. package/image/Image.js +70 -0
  146. package/image/Image.stories.tsx +127 -0
  147. package/image/types.d.ts +72 -0
  148. package/image/types.js +5 -0
  149. package/inset/Inset.d.ts +3 -0
  150. package/inset/Inset.js +43 -0
  151. package/inset/Inset.stories.tsx +230 -0
  152. package/inset/types.d.ts +37 -0
  153. package/inset/types.js +5 -0
  154. package/layout/ApplicationLayout.d.ts +20 -0
  155. package/layout/ApplicationLayout.js +83 -184
  156. package/layout/ApplicationLayout.stories.tsx +162 -0
  157. package/layout/Icons.d.ts +8 -0
  158. package/layout/Icons.js +51 -48
  159. package/layout/SidenavContext.d.ts +5 -0
  160. package/layout/SidenavContext.js +13 -0
  161. package/layout/types.d.ts +41 -0
  162. package/layout/types.js +5 -0
  163. package/link/Link.d.ts +4 -0
  164. package/link/Link.js +65 -133
  165. package/link/Link.stories.tsx +253 -0
  166. package/link/Link.test.js +63 -0
  167. package/link/types.d.ts +54 -0
  168. package/link/types.js +5 -0
  169. package/main.d.ts +16 -13
  170. package/main.js +77 -97
  171. package/nav-tabs/NavTabs.d.ts +8 -0
  172. package/nav-tabs/NavTabs.js +93 -0
  173. package/nav-tabs/NavTabs.stories.tsx +274 -0
  174. package/nav-tabs/NavTabs.test.js +75 -0
  175. package/nav-tabs/Tab.d.ts +4 -0
  176. package/nav-tabs/Tab.js +117 -0
  177. package/nav-tabs/types.d.ts +52 -0
  178. package/nav-tabs/types.js +5 -0
  179. package/number-input/NumberInput.d.ts +11 -0
  180. package/number-input/NumberInput.js +28 -89
  181. package/number-input/NumberInput.stories.tsx +131 -0
  182. package/number-input/NumberInput.test.js +830 -0
  183. package/number-input/types.d.ts +130 -0
  184. package/number-input/types.js +5 -0
  185. package/package.json +46 -45
  186. package/paginator/Icons.d.ts +5 -0
  187. package/paginator/Icons.js +21 -47
  188. package/paginator/Paginator.js +35 -98
  189. package/paginator/Paginator.stories.tsx +87 -0
  190. package/paginator/Paginator.test.js +335 -0
  191. package/paginator/types.d.ts +3 -3
  192. package/paragraph/Paragraph.d.ts +5 -0
  193. package/paragraph/Paragraph.js +22 -0
  194. package/paragraph/Paragraph.stories.tsx +27 -0
  195. package/password-input/Icons.d.ts +6 -0
  196. package/password-input/Icons.js +35 -0
  197. package/password-input/PasswordInput.d.ts +4 -0
  198. package/password-input/PasswordInput.js +60 -162
  199. package/password-input/{PasswordInput.stories.jsx → PasswordInput.stories.tsx} +3 -35
  200. package/password-input/PasswordInput.test.js +198 -0
  201. package/password-input/types.d.ts +111 -0
  202. package/password-input/types.js +5 -0
  203. package/progress-bar/ProgressBar.js +67 -93
  204. package/progress-bar/ProgressBar.stories.tsx +93 -0
  205. package/progress-bar/ProgressBar.test.js +93 -0
  206. package/progress-bar/types.d.ts +3 -3
  207. package/quick-nav/QuickNav.d.ts +4 -0
  208. package/quick-nav/QuickNav.js +94 -0
  209. package/quick-nav/QuickNav.stories.tsx +356 -0
  210. package/quick-nav/types.d.ts +21 -0
  211. package/quick-nav/types.js +5 -0
  212. package/radio-group/Radio.d.ts +4 -0
  213. package/radio-group/Radio.js +124 -0
  214. package/radio-group/RadioGroup.d.ts +4 -0
  215. package/radio-group/RadioGroup.js +235 -0
  216. package/radio-group/RadioGroup.stories.tsx +214 -0
  217. package/radio-group/RadioGroup.test.js +756 -0
  218. package/radio-group/types.d.ts +114 -0
  219. package/radio-group/types.js +5 -0
  220. package/resultset-table/Icons.d.ts +7 -0
  221. package/resultset-table/Icons.js +47 -0
  222. package/resultset-table/ResultsetTable.d.ts +4 -0
  223. package/resultset-table/ResultsetTable.js +159 -0
  224. package/resultset-table/ResultsetTable.stories.tsx +300 -0
  225. package/resultset-table/ResultsetTable.test.js +305 -0
  226. package/resultset-table/types.d.ts +67 -0
  227. package/resultset-table/types.js +5 -0
  228. package/select/Icons.d.ts +10 -0
  229. package/select/Icons.js +89 -0
  230. package/select/Listbox.d.ts +4 -0
  231. package/select/Listbox.js +143 -0
  232. package/select/Option.d.ts +4 -0
  233. package/select/Option.js +87 -0
  234. package/select/Select.d.ts +4 -0
  235. package/select/Select.js +240 -515
  236. package/select/Select.stories.tsx +971 -0
  237. package/select/Select.test.js +2370 -0
  238. package/select/types.d.ts +209 -0
  239. package/select/types.js +5 -0
  240. package/sidenav/Icons.d.ts +7 -0
  241. package/sidenav/Icons.js +47 -0
  242. package/sidenav/Sidenav.d.ts +10 -0
  243. package/sidenav/Sidenav.js +132 -81
  244. package/sidenav/Sidenav.stories.tsx +282 -0
  245. package/sidenav/Sidenav.test.js +37 -0
  246. package/sidenav/types.d.ts +76 -0
  247. package/sidenav/types.js +5 -0
  248. package/slider/Slider.d.ts +2 -2
  249. package/slider/Slider.js +162 -183
  250. package/slider/Slider.test.js +254 -0
  251. package/slider/types.d.ts +13 -10
  252. package/spinner/Spinner.d.ts +4 -0
  253. package/spinner/Spinner.js +38 -99
  254. package/spinner/Spinner.stories.tsx +129 -0
  255. package/spinner/Spinner.test.js +55 -0
  256. package/spinner/types.d.ts +32 -0
  257. package/spinner/types.js +5 -0
  258. package/status-light/StatusLight.d.ts +4 -0
  259. package/status-light/StatusLight.js +51 -0
  260. package/status-light/StatusLight.stories.tsx +74 -0
  261. package/status-light/StatusLight.test.js +25 -0
  262. package/status-light/types.d.ts +17 -0
  263. package/status-light/types.js +5 -0
  264. package/switch/Switch.d.ts +2 -2
  265. package/switch/Switch.js +150 -115
  266. package/switch/Switch.stories.tsx +137 -0
  267. package/switch/Switch.test.js +180 -0
  268. package/switch/types.d.ts +13 -5
  269. package/table/Table.d.ts +4 -0
  270. package/table/Table.js +10 -32
  271. package/table/Table.stories.tsx +356 -0
  272. package/table/Table.test.js +21 -0
  273. package/table/types.d.ts +21 -0
  274. package/table/types.js +5 -0
  275. package/tabs/Tab.d.ts +4 -0
  276. package/tabs/Tab.js +113 -0
  277. package/tabs/Tabs.d.ts +1 -1
  278. package/tabs/Tabs.js +318 -145
  279. package/tabs/Tabs.stories.tsx +226 -0
  280. package/tabs/Tabs.test.js +294 -0
  281. package/tabs/types.d.ts +48 -27
  282. package/tag/Tag.d.ts +4 -0
  283. package/tag/Tag.js +55 -112
  284. package/tag/Tag.stories.tsx +155 -0
  285. package/tag/Tag.test.js +49 -0
  286. package/tag/types.d.ts +69 -0
  287. package/tag/types.js +5 -0
  288. package/text-input/Icons.d.ts +8 -0
  289. package/text-input/Icons.js +56 -0
  290. package/text-input/Suggestion.d.ts +4 -0
  291. package/text-input/Suggestion.js +67 -0
  292. package/text-input/Suggestions.d.ts +4 -0
  293. package/text-input/Suggestions.js +84 -0
  294. package/text-input/TextInput.d.ts +4 -0
  295. package/text-input/TextInput.js +332 -585
  296. package/text-input/TextInput.stories.tsx +465 -0
  297. package/text-input/TextInput.test.js +1739 -0
  298. package/text-input/types.d.ts +205 -0
  299. package/text-input/types.js +5 -0
  300. package/textarea/Textarea.d.ts +4 -0
  301. package/textarea/Textarea.js +98 -181
  302. package/textarea/Textarea.stories.tsx +174 -0
  303. package/textarea/Textarea.test.js +406 -0
  304. package/textarea/types.d.ts +141 -0
  305. package/textarea/types.js +5 -0
  306. package/toggle-group/ToggleGroup.d.ts +4 -0
  307. package/toggle-group/ToggleGroup.js +100 -142
  308. package/toggle-group/ToggleGroup.stories.tsx +218 -0
  309. package/toggle-group/ToggleGroup.test.js +137 -0
  310. package/toggle-group/types.d.ts +114 -0
  311. package/toggle-group/types.js +5 -0
  312. package/typography/Typography.d.ts +4 -0
  313. package/typography/Typography.js +23 -0
  314. package/typography/Typography.stories.tsx +198 -0
  315. package/typography/types.d.ts +18 -0
  316. package/typography/types.js +5 -0
  317. package/useTheme.d.ts +1134 -0
  318. package/useTheme.js +4 -11
  319. package/useTranslatedLabels.d.ts +85 -0
  320. package/useTranslatedLabels.js +14 -0
  321. package/utils/BaseTypography.d.ts +21 -0
  322. package/utils/BaseTypography.js +94 -0
  323. package/utils/FocusLock.d.ts +13 -0
  324. package/utils/FocusLock.js +121 -0
  325. package/wizard/Wizard.d.ts +4 -0
  326. package/wizard/Wizard.js +130 -151
  327. package/wizard/Wizard.stories.tsx +253 -0
  328. package/wizard/Wizard.test.js +114 -0
  329. package/wizard/types.d.ts +64 -0
  330. package/wizard/types.js +5 -0
  331. package/ThemeContext.js +0 -246
  332. package/V3Select/V3Select.js +0 -455
  333. package/V3Select/index.d.ts +0 -27
  334. package/V3Textarea/V3Textarea.js +0 -260
  335. package/V3Textarea/index.d.ts +0 -27
  336. package/box/index.d.ts +0 -25
  337. package/chip/index.d.ts +0 -22
  338. package/common/RequiredComponent.js +0 -32
  339. package/date/Date.js +0 -373
  340. package/date/index.d.ts +0 -27
  341. package/dialog/index.d.ts +0 -18
  342. package/file-input/index.d.ts +0 -81
  343. package/header/index.d.ts +0 -25
  344. package/heading/index.d.ts +0 -17
  345. package/input-text/Icons.js +0 -22
  346. package/input-text/InputText.js +0 -611
  347. package/input-text/index.d.ts +0 -36
  348. package/link/index.d.ts +0 -23
  349. package/number-input/NumberInputContext.js +0 -16
  350. package/number-input/index.d.ts +0 -113
  351. package/password-input/index.d.ts +0 -94
  352. package/radio/Radio.d.ts +0 -4
  353. package/radio/Radio.js +0 -174
  354. package/radio/types.d.ts +0 -54
  355. package/resultsetTable/ResultsetTable.js +0 -274
  356. package/resultsetTable/index.d.ts +0 -19
  357. package/select/index.d.ts +0 -131
  358. package/sidenav/index.d.ts +0 -13
  359. package/spinner/index.d.ts +0 -17
  360. package/table/index.d.ts +0 -13
  361. package/tag/index.d.ts +0 -24
  362. package/text-input/index.d.ts +0 -135
  363. package/textarea/Textarea.stories.jsx +0 -135
  364. package/textarea/index.d.ts +0 -117
  365. package/toggle/Toggle.js +0 -186
  366. package/toggle/index.d.ts +0 -21
  367. package/toggle-group/index.d.ts +0 -21
  368. package/upload/Upload.js +0 -201
  369. package/upload/buttons-upload/ButtonsUpload.js +0 -111
  370. package/upload/buttons-upload/Icons.js +0 -40
  371. package/upload/dragAndDropArea/DragAndDropArea.js +0 -225
  372. package/upload/dragAndDropArea/Icons.js +0 -39
  373. package/upload/file-upload/FileToUpload.js +0 -115
  374. package/upload/file-upload/Icons.js +0 -66
  375. package/upload/files-upload/FilesToUpload.js +0 -109
  376. package/upload/index.d.ts +0 -15
  377. package/upload/transaction/Icons.js +0 -160
  378. package/upload/transaction/Transaction.js +0 -104
  379. package/upload/transactions/Transactions.js +0 -94
  380. package/wizard/Icons.js +0 -65
  381. package/wizard/index.d.ts +0 -18
  382. /package/{radio → action-icon}/types.js +0 -0
@@ -1,115 +1,75 @@
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
9
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
13
-
14
10
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
15
-
11
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
16
12
  var _react = _interopRequireWildcard(require("react"));
17
-
18
13
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
19
-
20
- var _LinearProgress = _interopRequireDefault(require("@material-ui/core/LinearProgress"));
21
-
22
- var _variables = require("../common/variables.js");
23
-
24
- var _useTheme = _interopRequireDefault(require("../useTheme.js"));
25
-
26
- var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext.js"));
27
-
28
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6;
29
-
30
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
31
-
32
- 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; }
33
-
14
+ var _variables = require("../common/variables");
15
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
16
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8;
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; }
34
19
  var DxcProgressBar = function DxcProgressBar(_ref) {
35
20
  var _ref$label = _ref.label,
36
- label = _ref$label === void 0 ? "" : _ref$label,
37
- _ref$helperText = _ref.helperText,
38
- helperText = _ref$helperText === void 0 ? "" : _ref$helperText,
39
- _ref$overlay = _ref.overlay,
40
- overlay = _ref$overlay === void 0 ? true : _ref$overlay,
41
- value = _ref.value,
42
- _ref$showValue = _ref.showValue,
43
- showValue = _ref$showValue === void 0 ? false : _ref$showValue,
44
- margin = _ref.margin;
21
+ label = _ref$label === void 0 ? "" : _ref$label,
22
+ _ref$helperText = _ref.helperText,
23
+ helperText = _ref$helperText === void 0 ? "" : _ref$helperText,
24
+ _ref$overlay = _ref.overlay,
25
+ overlay = _ref$overlay === void 0 ? false : _ref$overlay,
26
+ value = _ref.value,
27
+ _ref$showValue = _ref.showValue,
28
+ showValue = _ref$showValue === void 0 ? false : _ref$showValue,
29
+ margin = _ref.margin;
45
30
  var colorsTheme = (0, _useTheme["default"])();
46
- var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
31
+ var _useState = (0, _react.useState)(0),
32
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
33
+ valueProgressBar = _useState2[0],
34
+ setValueProgressBar = _useState2[1];
35
+ (0, _react.useEffect)(function () {
36
+ setValueProgressBar(value === null || value === undefined || value < 0 ? 0 : value >= 0 && value <= 100 ? value : 100);
37
+ }, [value]);
47
38
  return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
48
39
  theme: colorsTheme.progressBar
49
40
  }, /*#__PURE__*/_react["default"].createElement(BackgroundProgressBar, {
50
41
  overlay: overlay
51
- }, /*#__PURE__*/_react["default"].createElement(DXCProgressBar, {
42
+ }, /*#__PURE__*/_react["default"].createElement(ProgressBarContainer, {
52
43
  overlay: overlay,
53
- margin: margin,
54
- backgroundType: backgroundType
44
+ margin: margin
55
45
  }, /*#__PURE__*/_react["default"].createElement(InfoProgressBar, null, /*#__PURE__*/_react["default"].createElement(ProgressBarLabel, {
56
46
  overlay: overlay,
57
- backgroundType: backgroundType
47
+ "aria-label": label || undefined
58
48
  }, label), /*#__PURE__*/_react["default"].createElement(ProgressBarProgress, {
59
49
  overlay: overlay,
60
50
  showValue: showValue,
61
- backgroundType: backgroundType
62
- }, value === null ? 0 : value >= 0 && value <= 100 ? value : value < 0 ? 0 : 100, " %")), /*#__PURE__*/_react["default"].createElement(_LinearProgress["default"], {
63
- variant: showValue ? "determinate" : "indeterminate",
64
- value: value === null ? 0 : value >= 0 && value <= 100 ? value : value < 0 ? 0 : 100
65
- }), helperText && /*#__PURE__*/_react["default"].createElement(HelperText, {
66
- overlay: overlay,
67
- backgroundType: backgroundType
51
+ value: valueProgressBar
52
+ }, valueProgressBar, " %")), /*#__PURE__*/_react["default"].createElement(LinearProgress, {
53
+ role: "progressbar",
54
+ helperText: helperText,
55
+ "aria-valuenow": showValue ? valueProgressBar : undefined
56
+ }, /*#__PURE__*/_react["default"].createElement(LinearProgressBar, {
57
+ variant: value === null || value === undefined ? "indeterminate" : "determinate",
58
+ container: "first",
59
+ value: valueProgressBar
60
+ })), helperText && /*#__PURE__*/_react["default"].createElement(HelperText, {
61
+ overlay: overlay
68
62
  }, helperText))));
69
63
  };
70
-
71
- var BackgroundProgressBar = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n background-color: ", ";\n opacity: ", ";\n width: ", ";\n display: flex;\n flex-wrap: wrap;\n justify-content: ", ";\n height: ", ";\n align-items: ", ";\n min-width: 100px;\n max-width: ", ";\n position: ", ";\n top: ", ";\n bottom: ", ";\n left: ", ";\n right: ", ";\n z-index: ", ";\n width: 100%;\n"])), function (props) {
72
- return props.overlay === true ? "".concat(props.theme.overlayColor) : "transparent";
73
- }, function (props) {
74
- return props.overlay === true && "0.8";
75
- }, function (props) {
76
- return props.overlay === true ? "100%" : "";
77
- }, function (props) {
78
- return props.overlay === true ? "center" : "";
79
- }, function (props) {
80
- return props.overlay === true ? "100vh" : "";
81
- }, function (props) {
82
- return props.overlay === true ? "center" : "";
83
- }, function (props) {
84
- return props.overlay === true ? "100%" : "";
85
- }, function (props) {
86
- return props.overlay === true ? "fixed" : "";
87
- }, function (props) {
88
- return props.overlay === true ? "0" : "";
89
- }, function (props) {
90
- return props.overlay === true ? "0" : "";
91
- }, function (props) {
92
- return props.overlay === true ? "0" : "";
93
- }, function (props) {
94
- return props.overlay === true ? "0" : "";
95
- }, function (props) {
96
- return props.overlay ? 1300 : "";
64
+ 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) {
65
+ var overlay = _ref2.overlay,
66
+ theme = _ref2.theme;
67
+ 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\";";
97
68
  });
98
-
99
- var DXCProgressBar = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n z-index: ", ";\n width: ", ";\n .MuiLinearProgress-root {\n height: ", ";\n background-color: ", ";\n border-radius: ", ";\n margin-bottom: ", ";\n }\n .MuiLinearProgress-bar {\n background-color: ", ";\n }\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n"])), function (props) {
69
+ var ProgressBarContainer = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n z-index: ", ";\n width: ", ";\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n"])), function (props) {
100
70
  return props.overlay === true && "100" || "0";
101
71
  }, function (props) {
102
72
  return props.overlay === true ? "80%" : "100%";
103
- }, function (props) {
104
- return props.theme.thickness;
105
- }, function (props) {
106
- return props.theme.totalLineColor;
107
- }, function (props) {
108
- return props.theme.borderRadius;
109
- }, function (props) {
110
- return props.helperText !== "" && "8px";
111
- }, function (props) {
112
- return props.backgroundType === "dark" ? props.theme.trackLineColorOnDark : props.theme.trackLineColor;
113
73
  }, function (props) {
114
74
  return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
115
75
  }, function (props) {
@@ -121,9 +81,7 @@ var DXCProgressBar = _styledComponents["default"].div(_templateObject2 || (_temp
121
81
  }, function (props) {
122
82
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
123
83
  });
124
-
125
84
  var InfoProgressBar = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: row;\n width: 685px;\n flex-wrap: wrap;\n width: 100%;\n margin-bottom: 8px;\n align-items: baseline;\n justify-content: space-between;\n"])));
126
-
127
85
  var ProgressBarLabel = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-style: ", ";\n font-size: ", ";\n font-weight: ", ";\n text-transform: ", ";\n color: ", ";\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n text-overflow: ellipsis;\n"])), function (props) {
128
86
  return props.theme.labelFontFamily;
129
87
  }, function (props) {
@@ -135,9 +93,8 @@ var ProgressBarLabel = _styledComponents["default"].div(_templateObject4 || (_te
135
93
  }, function (props) {
136
94
  return props.theme.labelFontTextTransform;
137
95
  }, function (props) {
138
- return props.backgroundType === "dark" ? props.theme.labelFontColorOnDark : props.overlay === true ? "#FFFFFF" : props.theme.labelFontColor;
96
+ return props.overlay === true ? props.theme.overlayFontColor : props.theme.labelFontColor;
139
97
  });
140
-
141
98
  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) {
142
99
  return props.theme.valueFontFamily;
143
100
  }, function (props) {
@@ -149,15 +106,14 @@ var ProgressBarProgress = _styledComponents["default"].div(_templateObject5 || (
149
106
  }, function (props) {
150
107
  return props.theme.valueFontTextTransform;
151
108
  }, function (props) {
152
- return props.backgroundType === "dark" ? props.theme.valueFontColorOnDark : props.overlay === true ? "#FFFFFF" : props.theme.valueFontColor;
109
+ return props.overlay === true ? props.theme.overlayFontColor : props.theme.valueFontColor;
153
110
  }, function (props) {
154
- return props.value !== "" && props.showValue === true && "block" || "none";
111
+ return props.value !== undefined && props.value !== null && props.showValue === true && "block" || "none";
155
112
  });
156
-
157
113
  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) {
158
- return props.backgroundType === "dark" ? props.theme.helperTextFontColorOnDark : props.overlay === true ? "#FFFFFF" : props.theme.helperTextFontColor;
114
+ return props.overlay === true ? props.theme.overlayFontColor : props.theme.helperTextFontColor;
159
115
  }, function (props) {
160
- return props.theme.fontFamily;
116
+ return props.theme.helperTextFontFamily;
161
117
  }, function (props) {
162
118
  return props.theme.helperTextFontSize;
163
119
  }, function (props) {
@@ -165,6 +121,24 @@ var HelperText = _styledComponents["default"].span(_templateObject6 || (_templat
165
121
  }, function (props) {
166
122
  return props.theme.helperTextFontWeight;
167
123
  });
168
-
169
- var _default = DxcProgressBar;
170
- exports["default"] = _default;
124
+ var LinearProgress = _styledComponents["default"].div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n height: ", ";\n background-color: ", ";\n border-radius: ", ";\n margin-bottom: ", ";\n overflow: hidden;\n position: relative;\n"])), function (props) {
125
+ return props.theme.thickness;
126
+ }, function (props) {
127
+ return props.theme.totalLineColor;
128
+ }, function (props) {
129
+ return props.theme.borderRadius;
130
+ }, function (props) {
131
+ return props.helperText !== "" && "8px";
132
+ });
133
+ var LinearProgressBar = _styledComponents["default"].span(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n background-color: ", ";\n transform: ", ";\n top: 0;\n left: 0;\n width: 100%;\n bottom: 0;\n position: absolute;\n transition: ", ";\n transform-origin: left;\n ", ";\n ", ";\n\n @keyframes keyframes-indeterminate-first {\n 0% {\n left: -35%;\n right: 100%;\n }\n 60% {\n left: 100%;\n right: -90%;\n }\n 100% {\n left: 100%;\n right: -90%;\n }\n }\n\n @keyframes keyframes-indeterminate-second {\n 0% {\n left: -200%;\n right: 100%;\n }\n 60% {\n left: 107%;\n right: -8%;\n }\n 100% {\n left: 107%;\n right: -8%;\n }\n }\n"])), function (props) {
134
+ return props.theme.trackLineColor;
135
+ }, function (props) {
136
+ return "translateX(-".concat(props.variant === "determinate" ? 100 - props.value : 0, "%)");
137
+ }, function (props) {
138
+ return props.variant === "determinate" ? "transform .4s linear" : "transform 0.2s linear";
139
+ }, function (props) {
140
+ return props.variant === "indeterminate" && "width: auto;";
141
+ }, function (props) {
142
+ return props.variant === "indeterminate" ? props.container === "first" ? "animation: keyframes-indeterminate-first 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite;" : "animation: keyframes-indeterminate-second 2.1s cubic-bezier(0.165, 0.84, 0.44, 1) 1.15s infinite;" : "";
143
+ });
144
+ var _default = exports["default"] = DxcProgressBar;
@@ -0,0 +1,93 @@
1
+ import React from "react";
2
+ import DxcProgressBar from "./ProgressBar";
3
+ import Title from "../../.storybook/components/Title";
4
+ import ExampleContainer from "../../.storybook/components/ExampleContainer";
5
+ import { HalstackProvider } from "../HalstackContext";
6
+
7
+ export default {
8
+ title: "Progress Bar",
9
+ component: DxcProgressBar,
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
+
22
+ export const Chromatic = () => (
23
+ <>
24
+ <ExampleContainer>
25
+ <Title title="Without labels" theme="light" level={4} />
26
+ <DxcProgressBar value={50} showValue />
27
+ <Title title="With helperText" theme="light" level={4} />
28
+ <DxcProgressBar helperText="Helper text" value={24} showValue />
29
+ <Title title="Without default value" theme="light" level={4} />
30
+ <DxcProgressBar label="Loading..." showValue />
31
+ <Title title="With full value" theme="light" level={4} />
32
+ <DxcProgressBar label="Loading..." value={100} showValue />
33
+ </ExampleContainer>
34
+ <Title title="Margins" theme="light" level={2} />
35
+ <ExampleContainer>
36
+ <Title title="Xxsmall margin" theme="light" level={4} />
37
+ <DxcProgressBar label="Margin xxsmall" margin="xxsmall" value={50} showValue />
38
+ </ExampleContainer>
39
+ <ExampleContainer>
40
+ <Title title="Xsmall margin" theme="light" level={4} />
41
+ <DxcProgressBar label="Margin xsmall" margin="xsmall" value={50} showValue />
42
+ </ExampleContainer>
43
+ <ExampleContainer>
44
+ <Title title="Small margin" theme="light" level={4} />
45
+ <DxcProgressBar label="Margin small" margin="small" value={50} showValue />
46
+ </ExampleContainer>
47
+ <ExampleContainer>
48
+ <Title title="Medium margin" theme="light" level={4} />
49
+ <DxcProgressBar label="Margin medium" margin="medium" value={50} showValue />
50
+ </ExampleContainer>
51
+ <ExampleContainer>
52
+ <Title title="Large margin" theme="light" level={4} />
53
+ <DxcProgressBar label="Margin large" margin="large" value={50} showValue />
54
+ </ExampleContainer>
55
+ <ExampleContainer>
56
+ <Title title="Xlarge margin" theme="light" level={4} />
57
+ <DxcProgressBar label="Margin xlarge" margin="xlarge" value={50} showValue />
58
+ </ExampleContainer>
59
+ <ExampleContainer>
60
+ <Title title="Xxlarge margin" theme="light" level={4} />
61
+ <DxcProgressBar label="Margin xxlarge" margin="xxlarge" value={50} showValue />
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>
76
+ </>
77
+ );
78
+
79
+ export const ProgressBarOverlay = () => (
80
+ <ExampleContainer>
81
+ <Title title="Overlay" theme="dark" level={4} />
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>
92
+ </ExampleContainer>
93
+ );
@@ -0,0 +1,93 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _react = _interopRequireDefault(require("react"));
5
+ var _react2 = require("@testing-library/react");
6
+ var _ProgressBar = _interopRequireDefault(require("./ProgressBar.tsx"));
7
+ describe("ProgressBar component tests", function () {
8
+ test("ProgressBar renders with label and helperText", function () {
9
+ var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ProgressBar["default"], {
10
+ label: "test-label",
11
+ helperText: "helper-text"
12
+ })),
13
+ getByText = _render.getByText;
14
+ expect(getByText("test-label")).toBeTruthy();
15
+ expect(getByText("helper-text")).toBeTruthy();
16
+ });
17
+ test("ProgressBar renders with default value", function () {
18
+ var value = 0;
19
+ var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ProgressBar["default"], {
20
+ showValue: true
21
+ })),
22
+ getByText = _render2.getByText,
23
+ getByRole = _render2.getByRole;
24
+ var progressBar = getByRole("progressbar");
25
+ expect(getByText("0 %")).toBeTruthy();
26
+ expect(progressBar.getAttribute("aria-valuenow")).toEqual(value.toString());
27
+ });
28
+ test("ProgressBar renders with value", function () {
29
+ var value = 25;
30
+ var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ProgressBar["default"], {
31
+ showValue: true,
32
+ value: value
33
+ })),
34
+ getByText = _render3.getByText,
35
+ getByRole = _render3.getByRole;
36
+ var progressBar = getByRole("progressbar");
37
+ expect(getByText("25 %")).toBeTruthy();
38
+ expect(progressBar.getAttribute("aria-valuenow")).toEqual(value.toString());
39
+ });
40
+ test("ProgressBar renders with negative value", function () {
41
+ var value = 0;
42
+ var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ProgressBar["default"], {
43
+ showValue: true,
44
+ value: -20
45
+ })),
46
+ getByText = _render4.getByText,
47
+ getByRole = _render4.getByRole;
48
+ var progressBar = getByRole("progressbar");
49
+ expect(getByText("0 %")).toBeTruthy();
50
+ expect(progressBar.getAttribute("aria-valuenow")).toEqual(value.toString());
51
+ });
52
+ test("ProgressBar renders as indeterminate", function () {
53
+ var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ProgressBar["default"], null)),
54
+ getByRole = _render5.getByRole;
55
+ var progressBar = getByRole("progressbar");
56
+ expect(progressBar.getAttribute("aria-valuenow")).toBe(null);
57
+ });
58
+ test("Overlay progressBar renders with label and helperText", function () {
59
+ var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ProgressBar["default"], {
60
+ label: "test-label",
61
+ helperText: "helper-text",
62
+ overlay: true
63
+ })),
64
+ getByText = _render6.getByText;
65
+ expect(getByText("test-label")).toBeTruthy();
66
+ expect(getByText("helper-text")).toBeTruthy();
67
+ });
68
+ test("Overlay progressBar renders with default value", function () {
69
+ var value = 0;
70
+ var _render7 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ProgressBar["default"], {
71
+ showValue: true,
72
+ overlay: true
73
+ })),
74
+ getByText = _render7.getByText,
75
+ getByRole = _render7.getByRole;
76
+ var progressBar = getByRole("progressbar");
77
+ expect(getByText("0 %")).toBeTruthy();
78
+ expect(progressBar.getAttribute("aria-valuenow")).toEqual(value.toString());
79
+ });
80
+ test("Overlay progressBar renders with value", function () {
81
+ var value = 25;
82
+ var _render8 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ProgressBar["default"], {
83
+ showValue: true,
84
+ value: value,
85
+ overlay: true
86
+ })),
87
+ getByText = _render8.getByText,
88
+ getByRole = _render8.getByRole;
89
+ var progressBar = getByRole("progressbar");
90
+ expect(getByText("25 %")).toBeTruthy();
91
+ expect(progressBar.getAttribute("aria-valuenow")).toEqual(value.toString());
92
+ });
93
+ });
@@ -1,11 +1,11 @@
1
- declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
2
- declare type Size = {
1
+ type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
2
+ type Size = {
3
3
  top?: Space;
4
4
  bottom?: Space;
5
5
  left?: Space;
6
6
  right?: Space;
7
7
  };
8
- declare type Props = {
8
+ type Props = {
9
9
  /**
10
10
  * Text to be placed above the progress bar.
11
11
  */
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import QuickNavTypes from "./types";
3
+ declare const DxcQuickNav: ({ title, links }: QuickNavTypes) => JSX.Element;
4
+ export default DxcQuickNav;
@@ -0,0 +1,94 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
10
+ var _react = _interopRequireDefault(require("react"));
11
+ var _styledComponents = _interopRequireWildcard(require("styled-components"));
12
+ var _slugify = _interopRequireDefault(require("slugify"));
13
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
14
+ var _Heading = _interopRequireDefault(require("../heading/Heading"));
15
+ var _Flex = _interopRequireDefault(require("../flex/Flex"));
16
+ var _Inset = _interopRequireDefault(require("../inset/Inset"));
17
+ var _Typography = _interopRequireDefault(require("../typography/Typography"));
18
+ var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
19
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4;
20
+ 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); }
21
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(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; }
22
+ var DxcQuickNav = function DxcQuickNav(_ref) {
23
+ var title = _ref.title,
24
+ links = _ref.links;
25
+ var translatedLabels = (0, _useTranslatedLabels["default"])();
26
+ var colorsTheme = (0, _useTheme["default"])();
27
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
28
+ theme: colorsTheme.quickNav
29
+ }, /*#__PURE__*/_react["default"].createElement(QuickNavContainer, null, /*#__PURE__*/_react["default"].createElement(_Flex["default"], {
30
+ direction: "column",
31
+ gap: "0.5rem"
32
+ }, /*#__PURE__*/_react["default"].createElement(_Heading["default"], {
33
+ level: 4,
34
+ text: title || translatedLabels.quickNav.contentTitle
35
+ }), /*#__PURE__*/_react["default"].createElement(ListColumn, null, links.map(function (link) {
36
+ var _link$links;
37
+ return /*#__PURE__*/_react["default"].createElement("li", {
38
+ key: link.label
39
+ }, /*#__PURE__*/_react["default"].createElement(_Inset["default"], {
40
+ space: "0.25rem"
41
+ }, /*#__PURE__*/_react["default"].createElement(_Typography["default"], null, /*#__PURE__*/_react["default"].createElement(Link, {
42
+ href: "#".concat((0, _slugify["default"])(link === null || link === void 0 ? void 0 : link.label, {
43
+ lower: true
44
+ }))
45
+ }, 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) {
46
+ return /*#__PURE__*/_react["default"].createElement("li", {
47
+ key: sublink.label
48
+ }, /*#__PURE__*/_react["default"].createElement(_Inset["default"], {
49
+ horizontal: "0.5rem"
50
+ }, /*#__PURE__*/_react["default"].createElement(_Typography["default"], null, /*#__PURE__*/_react["default"].createElement(Link, {
51
+ href: "#".concat((0, _slugify["default"])(link === null || link === void 0 ? void 0 : link.label, {
52
+ lower: true
53
+ }), "-").concat((0, _slugify["default"])(sublink === null || sublink === void 0 ? void 0 : sublink.label, {
54
+ lower: true
55
+ }))
56
+ }, sublink === null || sublink === void 0 ? void 0 : sublink.label))));
57
+ })))));
58
+ })))));
59
+ };
60
+ 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) {
61
+ return props.theme.paddingTop;
62
+ }, function (props) {
63
+ return props.theme.paddingBottom;
64
+ }, function (props) {
65
+ return props.theme.paddingLeft;
66
+ }, function (props) {
67
+ return props.theme.paddingRight;
68
+ }, function (props) {
69
+ return props.theme.dividerBorderColor;
70
+ });
71
+ 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"])));
72
+ 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"])));
73
+ 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) {
74
+ return props.theme.fontSize;
75
+ }, function (props) {
76
+ return props.theme.fontFamily;
77
+ }, function (props) {
78
+ return props.theme.fontStyle;
79
+ }, function (props) {
80
+ return props.theme.fontWeight;
81
+ }, function (props) {
82
+ return props.theme.fontColor;
83
+ }, function (props) {
84
+ return props.theme.hoverFontColor;
85
+ }, function (props) {
86
+ return props.theme.focusBorderColor;
87
+ }, function (props) {
88
+ return props.theme.focusBorderStyle;
89
+ }, function (props) {
90
+ return props.theme.focusBorderThickness;
91
+ }, function (props) {
92
+ return props.theme.focusBorderRadius;
93
+ });
94
+ var _default = exports["default"] = DxcQuickNav;