@dxc-technology/halstack-react 0.0.0-336cd81 → 0.0.0-33c1fd8

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 (376) hide show
  1. package/BackgroundColorContext.d.ts +1 -10
  2. package/BackgroundColorContext.js +5 -22
  3. package/HalstackContext.d.ts +1242 -6
  4. package/HalstackContext.js +126 -111
  5. package/README.md +47 -0
  6. package/accordion/Accordion.accessibility.test.js +71 -0
  7. package/accordion/Accordion.d.ts +1 -1
  8. package/accordion/Accordion.js +44 -118
  9. package/accordion/Accordion.stories.tsx +84 -139
  10. package/accordion/Accordion.test.js +19 -34
  11. package/accordion/types.d.ts +6 -18
  12. package/accordion-group/AccordionGroup.accessibility.test.js +88 -0
  13. package/accordion-group/AccordionGroup.d.ts +2 -2
  14. package/accordion-group/AccordionGroup.js +29 -77
  15. package/accordion-group/AccordionGroup.stories.tsx +78 -77
  16. package/accordion-group/AccordionGroup.test.js +44 -72
  17. package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
  18. package/accordion-group/AccordionGroupAccordion.js +31 -0
  19. package/accordion-group/AccordionGroupContext.d.ts +3 -0
  20. package/accordion-group/AccordionGroupContext.js +8 -0
  21. package/accordion-group/types.d.ts +7 -19
  22. package/action-icon/ActionIcon.accessibility.test.js +63 -0
  23. package/action-icon/ActionIcon.d.ts +4 -0
  24. package/action-icon/ActionIcon.js +48 -0
  25. package/action-icon/ActionIcon.stories.tsx +41 -0
  26. package/action-icon/ActionIcon.test.js +64 -0
  27. package/action-icon/types.d.ts +26 -0
  28. package/alert/Alert.accessibility.test.js +95 -0
  29. package/alert/Alert.js +31 -124
  30. package/alert/Alert.stories.tsx +28 -0
  31. package/alert/Alert.test.js +29 -46
  32. package/alert/types.d.ts +5 -5
  33. package/badge/Badge.accessibility.test.js +129 -0
  34. package/badge/Badge.d.ts +1 -1
  35. package/badge/Badge.js +142 -42
  36. package/badge/Badge.stories.tsx +210 -0
  37. package/badge/Badge.test.js +30 -0
  38. package/badge/types.d.ts +52 -3
  39. package/bleed/Bleed.js +13 -21
  40. package/bleed/Bleed.stories.tsx +1 -0
  41. package/bleed/types.d.ts +2 -2
  42. package/box/Box.accessibility.test.js +33 -0
  43. package/box/Box.d.ts +1 -1
  44. package/box/Box.js +18 -59
  45. package/box/Box.stories.tsx +38 -51
  46. package/box/Box.test.js +2 -7
  47. package/box/types.d.ts +3 -15
  48. package/bulleted-list/BulletedList.accessibility.test.js +107 -0
  49. package/bulleted-list/BulletedList.js +22 -53
  50. package/bulleted-list/BulletedList.stories.tsx +8 -93
  51. package/bulleted-list/types.d.ts +32 -5
  52. package/button/Button.accessibility.test.js +127 -0
  53. package/button/Button.d.ts +1 -1
  54. package/button/Button.js +71 -106
  55. package/button/Button.stories.tsx +143 -101
  56. package/button/Button.test.js +20 -17
  57. package/button/types.d.ts +9 -5
  58. package/card/Card.accessibility.test.js +36 -0
  59. package/card/Card.d.ts +1 -1
  60. package/card/Card.js +48 -89
  61. package/card/Card.stories.tsx +12 -42
  62. package/card/Card.test.js +11 -22
  63. package/card/types.d.ts +6 -12
  64. package/checkbox/Checkbox.accessibility.test.js +87 -0
  65. package/checkbox/Checkbox.d.ts +2 -2
  66. package/checkbox/Checkbox.js +92 -126
  67. package/checkbox/Checkbox.stories.tsx +128 -94
  68. package/checkbox/Checkbox.test.js +108 -64
  69. package/checkbox/types.d.ts +11 -3
  70. package/chip/Chip.accessibility.test.js +67 -0
  71. package/chip/Chip.js +43 -80
  72. package/chip/Chip.stories.tsx +102 -26
  73. package/chip/Chip.test.js +18 -33
  74. package/chip/types.d.ts +4 -4
  75. package/common/coreTokens.d.ts +237 -0
  76. package/common/coreTokens.js +184 -0
  77. package/common/utils.d.ts +1 -0
  78. package/common/utils.js +6 -12
  79. package/common/variables.d.ts +1394 -0
  80. package/common/variables.js +917 -1159
  81. package/container/Container.d.ts +4 -0
  82. package/container/Container.js +194 -0
  83. package/container/Container.stories.tsx +214 -0
  84. package/container/types.d.ts +74 -0
  85. package/contextual-menu/ContextualMenu.accessibility.test.js +86 -0
  86. package/contextual-menu/ContextualMenu.d.ts +5 -0
  87. package/contextual-menu/ContextualMenu.js +88 -0
  88. package/contextual-menu/ContextualMenu.stories.tsx +219 -0
  89. package/contextual-menu/ContextualMenu.test.js +205 -0
  90. package/contextual-menu/GroupItem.d.ts +4 -0
  91. package/contextual-menu/GroupItem.js +67 -0
  92. package/contextual-menu/ItemAction.d.ts +4 -0
  93. package/contextual-menu/ItemAction.js +52 -0
  94. package/contextual-menu/MenuItem.d.ts +4 -0
  95. package/contextual-menu/MenuItem.js +29 -0
  96. package/contextual-menu/SingleItem.d.ts +4 -0
  97. package/contextual-menu/SingleItem.js +38 -0
  98. package/contextual-menu/types.d.ts +58 -0
  99. package/date-input/Calendar.d.ts +4 -0
  100. package/date-input/Calendar.js +214 -0
  101. package/date-input/DateInput.accessibility.test.js +216 -0
  102. package/date-input/DateInput.js +149 -299
  103. package/date-input/DateInput.stories.tsx +203 -56
  104. package/date-input/DateInput.test.js +700 -371
  105. package/date-input/DatePicker.d.ts +4 -0
  106. package/date-input/DatePicker.js +121 -0
  107. package/date-input/YearPicker.d.ts +4 -0
  108. package/date-input/YearPicker.js +100 -0
  109. package/date-input/types.d.ts +72 -15
  110. package/dialog/Dialog.accessibility.test.js +69 -0
  111. package/dialog/Dialog.d.ts +1 -1
  112. package/dialog/Dialog.js +49 -119
  113. package/dialog/Dialog.stories.tsx +310 -212
  114. package/dialog/Dialog.test.js +270 -33
  115. package/dialog/types.d.ts +18 -26
  116. package/divider/Divider.accessibility.test.js +33 -0
  117. package/divider/Divider.d.ts +4 -0
  118. package/divider/Divider.js +36 -0
  119. package/divider/Divider.stories.tsx +223 -0
  120. package/divider/Divider.test.js +38 -0
  121. package/divider/types.d.ts +21 -0
  122. package/divider/types.js +5 -0
  123. package/dropdown/Dropdown.accessibility.test.js +180 -0
  124. package/dropdown/Dropdown.js +84 -153
  125. package/dropdown/Dropdown.stories.tsx +209 -94
  126. package/dropdown/Dropdown.test.js +409 -400
  127. package/dropdown/DropdownMenu.js +20 -37
  128. package/dropdown/DropdownMenuItem.js +15 -37
  129. package/dropdown/types.d.ts +20 -24
  130. package/file-input/FileInput.accessibility.test.js +160 -0
  131. package/file-input/FileInput.d.ts +2 -2
  132. package/file-input/FileInput.js +241 -391
  133. package/file-input/FileInput.stories.tsx +123 -12
  134. package/file-input/FileInput.test.js +292 -367
  135. package/file-input/FileItem.d.ts +4 -14
  136. package/file-input/FileItem.js +52 -117
  137. package/file-input/types.d.ts +25 -8
  138. package/flex/Flex.js +27 -39
  139. package/flex/Flex.stories.tsx +35 -26
  140. package/flex/types.d.ts +74 -9
  141. package/footer/Footer.accessibility.test.js +117 -0
  142. package/footer/Footer.d.ts +1 -1
  143. package/footer/Footer.js +73 -118
  144. package/footer/Footer.stories.tsx +82 -23
  145. package/footer/Footer.test.js +33 -57
  146. package/footer/Icons.d.ts +3 -2
  147. package/footer/Icons.js +66 -7
  148. package/footer/types.d.ts +26 -28
  149. package/grid/Grid.d.ts +7 -0
  150. package/grid/Grid.js +76 -0
  151. package/grid/Grid.stories.tsx +219 -0
  152. package/grid/types.d.ts +115 -0
  153. package/grid/types.js +5 -0
  154. package/header/Header.accessibility.test.js +84 -0
  155. package/header/Header.d.ts +4 -3
  156. package/header/Header.js +53 -149
  157. package/header/Header.stories.tsx +115 -36
  158. package/header/Header.test.js +13 -26
  159. package/header/Icons.d.ts +2 -2
  160. package/header/Icons.js +2 -7
  161. package/header/types.d.ts +7 -22
  162. package/heading/Heading.accessibility.test.js +33 -0
  163. package/heading/Heading.js +10 -32
  164. package/heading/Heading.test.js +71 -88
  165. package/heading/types.d.ts +7 -7
  166. package/icon/Icon.accessibility.test.js +30 -0
  167. package/icon/Icon.d.ts +4 -0
  168. package/icon/Icon.js +33 -0
  169. package/icon/Icon.stories.tsx +28 -0
  170. package/icon/types.d.ts +4 -0
  171. package/icon/types.js +5 -0
  172. package/image/Image.accessibility.test.js +56 -0
  173. package/image/Image.d.ts +4 -0
  174. package/image/Image.js +70 -0
  175. package/image/Image.stories.tsx +129 -0
  176. package/image/types.d.ts +72 -0
  177. package/image/types.js +5 -0
  178. package/inset/Inset.js +13 -21
  179. package/inset/Inset.stories.tsx +2 -1
  180. package/inset/types.d.ts +2 -2
  181. package/layout/ApplicationLayout.d.ts +5 -5
  182. package/layout/ApplicationLayout.js +33 -67
  183. package/layout/ApplicationLayout.stories.tsx +1 -1
  184. package/layout/Icons.d.ts +7 -5
  185. package/layout/Icons.js +41 -59
  186. package/layout/types.d.ts +5 -6
  187. package/link/Link.accessibility.test.js +112 -0
  188. package/link/Link.js +32 -51
  189. package/link/Link.stories.tsx +62 -2
  190. package/link/Link.test.js +24 -44
  191. package/link/types.d.ts +14 -14
  192. package/main.d.ts +10 -5
  193. package/main.js +47 -59
  194. package/nav-tabs/NavTabs.accessibility.test.js +44 -0
  195. package/nav-tabs/NavTabs.d.ts +7 -0
  196. package/{tabs-nav → nav-tabs}/NavTabs.js +25 -57
  197. package/nav-tabs/NavTabs.stories.tsx +279 -0
  198. package/{tabs-nav → nav-tabs}/NavTabs.test.js +39 -46
  199. package/nav-tabs/NavTabsContext.d.ts +3 -0
  200. package/nav-tabs/NavTabsContext.js +8 -0
  201. package/nav-tabs/Tab.js +117 -0
  202. package/{tabs-nav → nav-tabs}/types.d.ts +15 -16
  203. package/nav-tabs/types.js +5 -0
  204. package/number-input/NumberInput.accessibility.test.js +228 -0
  205. package/number-input/NumberInput.js +46 -36
  206. package/number-input/NumberInput.stories.tsx +42 -26
  207. package/number-input/NumberInput.test.js +860 -377
  208. package/number-input/NumberInputContext.d.ts +3 -4
  209. package/number-input/NumberInputContext.js +3 -14
  210. package/number-input/types.d.ts +17 -5
  211. package/package.json +43 -46
  212. package/paginator/Paginator.accessibility.test.js +79 -0
  213. package/paginator/Paginator.js +26 -63
  214. package/paginator/Paginator.stories.tsx +24 -0
  215. package/paginator/Paginator.test.js +252 -225
  216. package/paginator/types.d.ts +3 -3
  217. package/paragraph/Paragraph.accessibility.test.js +28 -0
  218. package/paragraph/Paragraph.d.ts +3 -4
  219. package/paragraph/Paragraph.js +6 -22
  220. package/paragraph/Paragraph.stories.tsx +0 -17
  221. package/password-input/PasswordInput.accessibility.test.js +153 -0
  222. package/password-input/PasswordInput.js +56 -128
  223. package/password-input/PasswordInput.stories.tsx +1 -33
  224. package/password-input/PasswordInput.test.js +158 -141
  225. package/password-input/types.d.ts +8 -7
  226. package/progress-bar/ProgressBar.accessibility.test.js +35 -0
  227. package/progress-bar/ProgressBar.d.ts +2 -2
  228. package/progress-bar/ProgressBar.js +23 -55
  229. package/progress-bar/{ProgressBar.stories.jsx → ProgressBar.stories.tsx} +36 -3
  230. package/progress-bar/ProgressBar.test.js +36 -53
  231. package/progress-bar/types.d.ts +4 -3
  232. package/quick-nav/QuickNav.accessibility.test.js +57 -0
  233. package/quick-nav/QuickNav.js +4 -27
  234. package/quick-nav/QuickNav.stories.tsx +15 -1
  235. package/quick-nav/types.d.ts +10 -10
  236. package/radio-group/Radio.d.ts +1 -1
  237. package/radio-group/Radio.js +31 -63
  238. package/radio-group/RadioGroup.accessibility.test.js +97 -0
  239. package/radio-group/RadioGroup.js +45 -93
  240. package/radio-group/RadioGroup.stories.tsx +131 -18
  241. package/radio-group/RadioGroup.test.js +505 -471
  242. package/radio-group/types.d.ts +8 -8
  243. package/resultset-table/Icons.d.ts +7 -0
  244. package/{text-input → resultset-table}/Icons.js +13 -26
  245. package/resultset-table/ResultsetTable.accessibility.test.js +274 -0
  246. package/resultset-table/ResultsetTable.d.ts +7 -0
  247. package/resultset-table/ResultsetTable.js +170 -0
  248. package/{resultsetTable → resultset-table}/ResultsetTable.stories.tsx +156 -30
  249. package/resultset-table/ResultsetTable.test.js +381 -0
  250. package/{resultsetTable → resultset-table}/types.d.ts +44 -11
  251. package/resultset-table/types.js +5 -0
  252. package/select/Listbox.d.ts +1 -1
  253. package/select/Listbox.js +22 -75
  254. package/select/Option.js +33 -55
  255. package/select/Select.accessibility.test.js +217 -0
  256. package/select/Select.js +134 -181
  257. package/select/Select.stories.tsx +484 -204
  258. package/select/Select.test.js +1950 -1907
  259. package/select/types.d.ts +17 -18
  260. package/sidenav/Sidenav.accessibility.test.js +59 -0
  261. package/sidenav/Sidenav.d.ts +2 -2
  262. package/sidenav/Sidenav.js +90 -157
  263. package/sidenav/Sidenav.stories.tsx +160 -63
  264. package/sidenav/Sidenav.test.js +3 -10
  265. package/{layout → sidenav}/SidenavContext.d.ts +1 -1
  266. package/{layout → sidenav}/SidenavContext.js +3 -9
  267. package/sidenav/types.d.ts +33 -30
  268. package/slider/Slider.accessibility.test.js +104 -0
  269. package/slider/Slider.d.ts +2 -2
  270. package/slider/Slider.js +77 -134
  271. package/slider/Slider.test.js +108 -104
  272. package/slider/types.d.ts +7 -3
  273. package/spinner/Spinner.accessibility.test.js +96 -0
  274. package/spinner/Spinner.js +31 -75
  275. package/spinner/{Spinner.stories.jsx → Spinner.stories.tsx} +53 -27
  276. package/spinner/Spinner.test.js +26 -35
  277. package/spinner/types.d.ts +3 -3
  278. package/status-light/StatusLight.accessibility.test.js +157 -0
  279. package/status-light/StatusLight.d.ts +4 -0
  280. package/status-light/StatusLight.js +51 -0
  281. package/status-light/StatusLight.stories.tsx +74 -0
  282. package/status-light/StatusLight.test.js +25 -0
  283. package/status-light/types.d.ts +17 -0
  284. package/status-light/types.js +5 -0
  285. package/switch/Switch.accessibility.test.js +89 -0
  286. package/switch/Switch.d.ts +3 -3
  287. package/switch/Switch.js +56 -103
  288. package/switch/Switch.stories.tsx +33 -34
  289. package/switch/Switch.test.js +52 -97
  290. package/switch/types.d.ts +8 -3
  291. package/table/DropdownTheme.js +62 -0
  292. package/table/Table.accessibility.test.js +82 -0
  293. package/table/Table.d.ts +6 -2
  294. package/table/Table.js +78 -35
  295. package/table/Table.stories.tsx +651 -0
  296. package/table/Table.test.js +95 -8
  297. package/table/types.d.ts +34 -6
  298. package/tabs/Tab.js +28 -46
  299. package/tabs/Tabs.accessibility.test.js +56 -0
  300. package/tabs/Tabs.js +69 -163
  301. package/tabs/Tabs.stories.tsx +44 -6
  302. package/tabs/Tabs.test.js +61 -136
  303. package/tabs/types.d.ts +21 -21
  304. package/tag/Tag.accessibility.test.js +69 -0
  305. package/tag/Tag.js +34 -66
  306. package/tag/Tag.stories.tsx +18 -8
  307. package/tag/Tag.test.js +18 -37
  308. package/tag/types.d.ts +9 -9
  309. package/text-input/Suggestion.js +35 -25
  310. package/text-input/Suggestions.d.ts +1 -1
  311. package/text-input/Suggestions.js +19 -67
  312. package/text-input/TextInput.accessibility.test.js +321 -0
  313. package/text-input/TextInput.js +223 -329
  314. package/text-input/TextInput.stories.tsx +139 -155
  315. package/text-input/TextInput.test.js +1389 -1347
  316. package/text-input/types.d.ts +27 -19
  317. package/textarea/Textarea.accessibility.test.js +155 -0
  318. package/textarea/Textarea.js +70 -113
  319. package/textarea/Textarea.stories.tsx +174 -0
  320. package/textarea/Textarea.test.js +152 -183
  321. package/textarea/types.d.ts +9 -5
  322. package/toggle-group/ToggleGroup.accessibility.test.js +107 -0
  323. package/toggle-group/ToggleGroup.d.ts +2 -2
  324. package/toggle-group/ToggleGroup.js +94 -107
  325. package/toggle-group/ToggleGroup.stories.tsx +52 -7
  326. package/toggle-group/ToggleGroup.test.js +69 -88
  327. package/toggle-group/types.d.ts +28 -19
  328. package/typography/Typography.accessibility.test.js +339 -0
  329. package/typography/Typography.d.ts +2 -2
  330. package/typography/Typography.js +15 -123
  331. package/typography/Typography.stories.tsx +1 -1
  332. package/typography/types.d.ts +1 -1
  333. package/useTheme.d.ts +1146 -1
  334. package/useTheme.js +2 -9
  335. package/useTranslatedLabels.d.ts +84 -1
  336. package/useTranslatedLabels.js +1 -7
  337. package/utils/BaseTypography.d.ts +21 -0
  338. package/utils/BaseTypography.js +94 -0
  339. package/utils/FocusLock.d.ts +13 -0
  340. package/utils/FocusLock.js +124 -0
  341. package/wizard/Wizard.accessibility.test.js +55 -0
  342. package/wizard/Wizard.js +29 -67
  343. package/wizard/Wizard.stories.tsx +39 -0
  344. package/wizard/Wizard.test.js +54 -81
  345. package/wizard/types.d.ts +10 -11
  346. package/card/ice-cream.jpg +0 -0
  347. package/common/OpenSans.css +0 -81
  348. package/common/RequiredComponent.js +0 -32
  349. package/common/fonts/OpenSans-Bold.ttf +0 -0
  350. package/common/fonts/OpenSans-BoldItalic.ttf +0 -0
  351. package/common/fonts/OpenSans-ExtraBold.ttf +0 -0
  352. package/common/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  353. package/common/fonts/OpenSans-Italic.ttf +0 -0
  354. package/common/fonts/OpenSans-Light.ttf +0 -0
  355. package/common/fonts/OpenSans-LightItalic.ttf +0 -0
  356. package/common/fonts/OpenSans-Regular.ttf +0 -0
  357. package/common/fonts/OpenSans-SemiBold.ttf +0 -0
  358. package/common/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  359. package/number-input/numberInputContextTypes.d.ts +0 -19
  360. package/paginator/Icons.js +0 -66
  361. package/resultsetTable/ResultsetTable.d.ts +0 -4
  362. package/resultsetTable/ResultsetTable.js +0 -252
  363. package/resultsetTable/ResultsetTable.test.js +0 -348
  364. package/select/Icons.d.ts +0 -10
  365. package/select/Icons.js +0 -93
  366. package/slider/Slider.stories.tsx +0 -183
  367. package/table/Table.stories.jsx +0 -277
  368. package/tabs-nav/NavTabs.d.ts +0 -8
  369. package/tabs-nav/NavTabs.stories.tsx +0 -170
  370. package/tabs-nav/Tab.js +0 -130
  371. package/text-input/Icons.d.ts +0 -8
  372. package/textarea/Textarea.stories.jsx +0 -157
  373. /package/{resultsetTable → action-icon}/types.js +0 -0
  374. /package/{tabs-nav → container}/types.js +0 -0
  375. /package/{number-input/numberInputContextTypes.js → contextual-menu/types.js} +0 -0
  376. /package/{tabs-nav → nav-tabs}/Tab.d.ts +0 -0
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
5
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
6
+ var _react = _interopRequireDefault(require("react"));
7
+ var _react2 = require("@testing-library/react");
8
+ var _ActionIcon = _interopRequireDefault(require("./ActionIcon.tsx"));
9
+ var _jestAxe = require("jest-axe");
10
+ var iconSVG = /*#__PURE__*/_react["default"].createElement("svg", {
11
+ width: "24px",
12
+ height: "24px",
13
+ viewBox: "0 0 24 24",
14
+ fill: "currentColor"
15
+ }, /*#__PURE__*/_react["default"].createElement("path", {
16
+ d: "M0 0h24v24H0z",
17
+ fill: "none"
18
+ }), /*#__PURE__*/_react["default"].createElement("path", {
19
+ d: "M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z"
20
+ }));
21
+ describe("Action icon component accessibility tests", function () {
22
+ it("Should not have basic accessibility issues", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
23
+ var _render, container, results;
24
+ return _regenerator["default"].wrap(function _callee$(_context) {
25
+ while (1) switch (_context.prev = _context.next) {
26
+ case 0:
27
+ _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ActionIcon["default"], {
28
+ icon: iconSVG,
29
+ title: "favourite"
30
+ })), container = _render.container;
31
+ _context.next = 3;
32
+ return (0, _jestAxe.axe)(container);
33
+ case 3:
34
+ results = _context.sent;
35
+ expect(results).toHaveNoViolations();
36
+ case 5:
37
+ case "end":
38
+ return _context.stop();
39
+ }
40
+ }, _callee);
41
+ })));
42
+ it("Should not have basic accessibility issues for disabled mode", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2() {
43
+ var _render2, container, results;
44
+ return _regenerator["default"].wrap(function _callee2$(_context2) {
45
+ while (1) switch (_context2.prev = _context2.next) {
46
+ case 0:
47
+ _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ActionIcon["default"], {
48
+ icon: iconSVG,
49
+ title: "disabled",
50
+ disabled: true
51
+ })), container = _render2.container;
52
+ _context2.next = 3;
53
+ return (0, _jestAxe.axe)(container);
54
+ case 3:
55
+ results = _context2.sent;
56
+ expect(results).toHaveNoViolations();
57
+ case 5:
58
+ case "end":
59
+ return _context2.stop();
60
+ }
61
+ }, _callee2);
62
+ })));
63
+ });
@@ -0,0 +1,4 @@
1
+ import React from "react";
2
+ import ActionIconPropsTypes from "./types";
3
+ declare const DxcActionIcon: React.ForwardRefExoticComponent<ActionIconPropsTypes & React.RefAttributes<HTMLButtonElement>>;
4
+ export default DxcActionIcon;
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = void 0;
8
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
9
+ var _react = _interopRequireDefault(require("react"));
10
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
11
+ var _coreTokens = _interopRequireDefault(require("../common/coreTokens"));
12
+ var _Icon = _interopRequireDefault(require("../icon/Icon"));
13
+ var _templateObject;
14
+ var DxcActionIcon = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
15
+ var _ref$disabled = _ref.disabled,
16
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
17
+ title = _ref.title,
18
+ icon = _ref.icon,
19
+ onClick = _ref.onClick,
20
+ tabIndex = _ref.tabIndex;
21
+ return /*#__PURE__*/_react["default"].createElement(ActionIcon, {
22
+ "aria-label": title,
23
+ disabled: disabled,
24
+ onClick: onClick,
25
+ onMouseDown: function onMouseDown(event) {
26
+ event.stopPropagation();
27
+ },
28
+ tabIndex: tabIndex,
29
+ title: title,
30
+ type: "button",
31
+ ref: ref
32
+ }, typeof icon === "string" ? /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
33
+ icon: icon
34
+ }) : icon);
35
+ });
36
+ var ActionIcon = _styledComponents["default"].button(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n border: none;\n border-radius: 2px;\n width: 24px;\n height: 24px;\n font-size: 16px;\n padding: 0px;\n ", "\n\n box-shadow: 0 0 0 2px transparent;\n background-color: ", ";\n color: ", ";\n\n ", "\n\n svg {\n width: 16px;\n height: 16px;\n }\n"])), function (props) {
37
+ return props.disabled ? "cursor: not-allowed;" : "cursor: pointer;";
38
+ }, function (props) {
39
+ var _props$theme$disabled, _props$theme$actionBa;
40
+ return props.disabled ? (_props$theme$disabled = props.theme.disabledActionBackgroundColor) !== null && _props$theme$disabled !== void 0 ? _props$theme$disabled : _coreTokens["default"].color_transparent : (_props$theme$actionBa = props.theme.actionBackgroundColor) !== null && _props$theme$actionBa !== void 0 ? _props$theme$actionBa : _coreTokens["default"].color_transparent;
41
+ }, function (props) {
42
+ var _props$theme$disabled2, _props$theme$actionIc;
43
+ return props.disabled ? (_props$theme$disabled2 = props.theme.disabledActionIconColor) !== null && _props$theme$disabled2 !== void 0 ? _props$theme$disabled2 : _coreTokens["default"].color_grey_500 : (_props$theme$actionIc = props.theme.actionIconColor) !== null && _props$theme$actionIc !== void 0 ? _props$theme$actionIc : _coreTokens["default"].color_black;
44
+ }, function (props) {
45
+ var _props$theme$focusAct, _props$theme$focusAct2, _props$theme$hoverAct, _props$theme$hoverAct2, _props$theme$activeAc, _props$theme$activeAc2;
46
+ return !props.disabled && "\n &:focus,\n &:focus-visible {\n outline: none;\n box-shadow: 0 0 0 2px ".concat((_props$theme$focusAct = props.theme.focusActionBorderColor) !== null && _props$theme$focusAct !== void 0 ? _props$theme$focusAct : _coreTokens["default"].color_blue_600, ";\n color: ").concat((_props$theme$focusAct2 = props.theme.focusActionIconColor) !== null && _props$theme$focusAct2 !== void 0 ? _props$theme$focusAct2 : _coreTokens["default"].color_black, ";\n }\n &:hover {\n background-color: ").concat((_props$theme$hoverAct = props.theme.hoverActionBackgroundColor) !== null && _props$theme$hoverAct !== void 0 ? _props$theme$hoverAct : _coreTokens["default"].color_grey_100, ";\n color: ").concat((_props$theme$hoverAct2 = props.theme.hoverActionIconColor) !== null && _props$theme$hoverAct2 !== void 0 ? _props$theme$hoverAct2 : _coreTokens["default"].color_black, ";\n }\n &:active {\n background-color: ").concat((_props$theme$activeAc = props.theme.activeActionBackgroundColor) !== null && _props$theme$activeAc !== void 0 ? _props$theme$activeAc : _coreTokens["default"].color_grey_300, ";\n color: ").concat((_props$theme$activeAc2 = props.theme.activeActionIconColor) !== null && _props$theme$activeAc2 !== void 0 ? _props$theme$activeAc2 : _coreTokens["default"].color_black, ";\n }\n ");
47
+ });
48
+ var _default = exports["default"] = DxcActionIcon;
@@ -0,0 +1,41 @@
1
+ import React from "react";
2
+ import Title from "../../.storybook/components/Title";
3
+ import ExampleContainer from "../../.storybook/components/ExampleContainer";
4
+ import DxcActionIcon from "./ActionIcon";
5
+
6
+ export default {
7
+ title: "Action Icon ",
8
+ component: DxcActionIcon,
9
+ };
10
+
11
+ const iconSVG = (
12
+ <svg width="24px" height="24px" viewBox="0 0 24 24" fill="currentColor">
13
+ <path d="M0 0h24v24H0z" fill="none" />
14
+ <path d="M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z" />
15
+ </svg>
16
+ );
17
+
18
+ export const Chromatic = () => (
19
+ <>
20
+ <Title title="Default" theme="light" level={2} />
21
+ <ExampleContainer>
22
+ <DxcActionIcon icon="favorite" title="Favourite" />
23
+ </ExampleContainer>
24
+ <Title title="Disabled" theme="light" level={2} />
25
+ <ExampleContainer>
26
+ <DxcActionIcon icon="favorite" title="Favourite" disabled />
27
+ </ExampleContainer>
28
+ <Title title="Hover" theme="light" level={2} />
29
+ <ExampleContainer pseudoState="pseudo-hover">
30
+ <DxcActionIcon icon="filled_favorite" title="Favourite" />
31
+ </ExampleContainer>
32
+ <Title title="Focus" theme="light" level={2} />
33
+ <ExampleContainer pseudoState="pseudo-focus">
34
+ <DxcActionIcon icon={iconSVG} title="Favourite" />
35
+ </ExampleContainer>
36
+ <Title title="Active" theme="light" level={2} />
37
+ <ExampleContainer pseudoState="pseudo-active">
38
+ <DxcActionIcon icon={iconSVG} title="Favourite" />
39
+ </ExampleContainer>
40
+ </>
41
+ );
@@ -0,0 +1,64 @@
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 _ActionIcon = _interopRequireDefault(require("./ActionIcon.tsx"));
7
+ var iconSVG = /*#__PURE__*/_react["default"].createElement("svg", {
8
+ width: "24px",
9
+ height: "24px",
10
+ viewBox: "0 0 24 24",
11
+ fill: "currentColor"
12
+ }, /*#__PURE__*/_react["default"].createElement("path", {
13
+ d: "M0 0h24v24H0z",
14
+ fill: "none"
15
+ }), /*#__PURE__*/_react["default"].createElement("path", {
16
+ d: "M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z"
17
+ }));
18
+ describe("Action icon component tests", function () {
19
+ test("Action icon renders with correct text", function () {
20
+ var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ActionIcon["default"], {
21
+ icon: iconSVG,
22
+ title: "favourite"
23
+ })),
24
+ getByTitle = _render.getByTitle;
25
+ expect(getByTitle("favourite")).toBeTruthy();
26
+ });
27
+ test("Calls correct function on click", function () {
28
+ var onClick = jest.fn();
29
+ var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ActionIcon["default"], {
30
+ icon: iconSVG,
31
+ title: "favourite",
32
+ onClick: onClick
33
+ })),
34
+ getByTitle = _render2.getByTitle;
35
+ var action = getByTitle("favourite");
36
+ _react2.fireEvent.click(action);
37
+ expect(onClick).toHaveBeenCalled();
38
+ });
39
+ test("On click is not called when disabled", function () {
40
+ var onClick = jest.fn();
41
+ var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ActionIcon["default"], {
42
+ disabled: true,
43
+ icon: iconSVG,
44
+ title: "favourite",
45
+ onClick: onClick
46
+ })),
47
+ getByTitle = _render3.getByTitle;
48
+ var action = getByTitle("favourite");
49
+ _react2.fireEvent.click(action);
50
+ expect(onClick).toHaveBeenCalledTimes(0);
51
+ });
52
+ test("Renders with correct accessibility attributes", function () {
53
+ var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ActionIcon["default"], {
54
+ icon: iconSVG,
55
+ title: "favourite",
56
+ tabIndex: 1
57
+ })),
58
+ getByRole = _render4.getByRole;
59
+ var button = getByRole("button");
60
+ expect(button.getAttribute("aria-label")).toBe("favourite");
61
+ expect(button.getAttribute("title")).toBe("favourite");
62
+ expect(button.getAttribute("tabindex")).toBe("1");
63
+ });
64
+ });
@@ -0,0 +1,26 @@
1
+ /// <reference types="react" />
2
+ type SVG = React.ReactNode & React.SVGProps<SVGSVGElement>;
3
+ type Props = {
4
+ /**
5
+ * If true, the component will be disabled.
6
+ */
7
+ disabled?: boolean;
8
+ /**
9
+ * Value for the HTML properties title and aria-label.
10
+ */
11
+ title: string;
12
+ /**
13
+ * Material Symbol name or SVG element as the icon that will be placed next to the label.
14
+ */
15
+ icon: string | SVG;
16
+ /**
17
+ * This function will be called when the user clicks the button.
18
+ */
19
+ onClick?: () => void;
20
+ /**
21
+ * Value of the tabindex attribute.
22
+ */
23
+ tabIndex?: number;
24
+ };
25
+ export type RefType = HTMLButtonElement;
26
+ export default Props;
@@ -0,0 +1,95 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
5
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
6
+ var _react = _interopRequireDefault(require("react"));
7
+ var _react2 = require("@testing-library/react");
8
+ var _jestAxe = require("jest-axe");
9
+ var _Alert = _interopRequireDefault(require("./Alert.tsx"));
10
+ describe("Alert component accessibility tests", function () {
11
+ it("Should not have basic accessibility issues for confirm mode", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
12
+ var _render, container, results;
13
+ return _regenerator["default"].wrap(function _callee$(_context) {
14
+ while (1) switch (_context.prev = _context.next) {
15
+ case 0:
16
+ _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Alert["default"], {
17
+ type: "confirm",
18
+ inlineText: "info-alert-text",
19
+ margin: "small"
20
+ })), container = _render.container;
21
+ _context.next = 3;
22
+ return (0, _jestAxe.axe)(container);
23
+ case 3:
24
+ results = _context.sent;
25
+ expect(results).toHaveNoViolations();
26
+ case 5:
27
+ case "end":
28
+ return _context.stop();
29
+ }
30
+ }, _callee);
31
+ })));
32
+ it("Should not have basic accessibility issues for error mode", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2() {
33
+ var _render2, container, results;
34
+ return _regenerator["default"].wrap(function _callee2$(_context2) {
35
+ while (1) switch (_context2.prev = _context2.next) {
36
+ case 0:
37
+ _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Alert["default"], {
38
+ type: "error",
39
+ inlineText: "info-alert-text",
40
+ margin: "small"
41
+ })), container = _render2.container;
42
+ _context2.next = 3;
43
+ return (0, _jestAxe.axe)(container);
44
+ case 3:
45
+ results = _context2.sent;
46
+ expect(results).toHaveNoViolations();
47
+ case 5:
48
+ case "end":
49
+ return _context2.stop();
50
+ }
51
+ }, _callee2);
52
+ })));
53
+ it("Should not have basic accessibility issues for info mode", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3() {
54
+ var _render3, container, results;
55
+ return _regenerator["default"].wrap(function _callee3$(_context3) {
56
+ while (1) switch (_context3.prev = _context3.next) {
57
+ case 0:
58
+ _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Alert["default"], {
59
+ type: "info",
60
+ inlineText: "info-alert-text",
61
+ margin: "small"
62
+ })), container = _render3.container;
63
+ _context3.next = 3;
64
+ return (0, _jestAxe.axe)(container);
65
+ case 3:
66
+ results = _context3.sent;
67
+ expect(results).toHaveNoViolations();
68
+ case 5:
69
+ case "end":
70
+ return _context3.stop();
71
+ }
72
+ }, _callee3);
73
+ })));
74
+ it("Should not have basic accessibility issues for warning mode", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee4() {
75
+ var _render4, container, results;
76
+ return _regenerator["default"].wrap(function _callee4$(_context4) {
77
+ while (1) switch (_context4.prev = _context4.next) {
78
+ case 0:
79
+ _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Alert["default"], {
80
+ type: "warning",
81
+ inlineText: "info-alert-text",
82
+ margin: "small"
83
+ })), container = _render4.container;
84
+ _context4.next = 3;
85
+ return (0, _jestAxe.axe)(container);
86
+ case 3:
87
+ results = _context4.sent;
88
+ expect(results).toHaveNoViolations();
89
+ case 5:
90
+ case "end":
91
+ return _context4.stop();
92
+ }
93
+ }, _callee4);
94
+ })));
95
+ });
package/alert/Alert.js CHANGED
@@ -1,122 +1,41 @@
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
-
16
11
  var _react = _interopRequireDefault(require("react"));
17
-
18
12
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
19
-
20
- var _variables = require("../common/variables.js");
21
-
22
- var _utils = require("../common/utils.js");
23
-
13
+ var _variables = require("../common/variables");
14
+ var _utils = require("../common/utils");
24
15
  var _useTheme = _interopRequireDefault(require("../useTheme"));
25
-
26
16
  var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
27
-
28
- var _BackgroundColorContext = require("../BackgroundColorContext");
29
-
17
+ var _Icon = _interopRequireDefault(require("../icon/Icon"));
30
18
  var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10;
31
-
32
- 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); }
33
-
34
- 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; }
35
-
36
- var alertIcons = {
37
- close: /*#__PURE__*/_react["default"].createElement("svg", {
38
- xmlns: "http://www.w3.org/2000/svg",
39
- width: "20",
40
- height: "20",
41
- viewBox: "0 0 24 24",
42
- fill: "currentColor"
43
- }, /*#__PURE__*/_react["default"].createElement("path", {
44
- d: "M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"
45
- }), /*#__PURE__*/_react["default"].createElement("path", {
46
- d: "M0 0h24v24H0z",
47
- fill: "none"
48
- })),
49
- info: /*#__PURE__*/_react["default"].createElement("svg", {
50
- xmlns: "http://www.w3.org/2000/svg",
51
- width: "23",
52
- height: "23",
53
- viewBox: "0 0 24 24",
54
- fill: "currentColor"
55
- }, /*#__PURE__*/_react["default"].createElement("path", {
56
- d: "M0 0h24v24H0z",
57
- fill: "none"
58
- }), /*#__PURE__*/_react["default"].createElement("path", {
59
- d: "M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z"
60
- })),
61
- success: /*#__PURE__*/_react["default"].createElement("svg", {
62
- xmlns: "http://www.w3.org/2000/svg",
63
- width: "23",
64
- height: "23",
65
- viewBox: "0 0 24 24",
66
- fill: "currentColor"
67
- }, /*#__PURE__*/_react["default"].createElement("path", {
68
- d: "M0 0h24v24H0z",
69
- fill: "none"
70
- }), /*#__PURE__*/_react["default"].createElement("path", {
71
- d: "M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"
72
- })),
73
- warning: /*#__PURE__*/_react["default"].createElement("svg", {
74
- xmlns: "http://www.w3.org/2000/svg",
75
- width: "23",
76
- height: "23",
77
- viewBox: "0 0 24 24",
78
- fill: "currentColor"
79
- }, /*#__PURE__*/_react["default"].createElement("path", {
80
- d: "M0 0h24v24H0z",
81
- fill: "none"
82
- }), /*#__PURE__*/_react["default"].createElement("path", {
83
- d: "M1 21h22L12 2 1 21zm12-3h-2v-2h2v2zm0-4h-2v-4h2v4z"
84
- })),
85
- error: /*#__PURE__*/_react["default"].createElement("svg", {
86
- xmlns: "http://www.w3.org/2000/svg",
87
- width: "23",
88
- height: "23",
89
- viewBox: "0 0 24 24",
90
- fill: "currentColor"
91
- }, /*#__PURE__*/_react["default"].createElement("path", {
92
- d: "M12 2C6.47 2 2 6.47 2 12s4.47 10 10 10 10-4.47 10-10S17.53 2 12 2zm5 13.59L15.59 17 12 13.41 8.41 17 7 15.59 10.59 12 7 8.41 8.41 7 12 10.59 15.59 7 17 8.41 13.41 12 17 15.59z",
93
- fill: "currentColor"
94
- }), /*#__PURE__*/_react["default"].createElement("path", {
95
- d: "M0 0h24v24H0z",
96
- fill: "none"
97
- }))
98
- };
99
-
19
+ 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); }
20
+ 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 && {}.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; }
100
21
  var DxcAlert = function DxcAlert(_ref) {
101
22
  var _ref$type = _ref.type,
102
- type = _ref$type === void 0 ? "info" : _ref$type,
103
- _ref$mode = _ref.mode,
104
- mode = _ref$mode === void 0 ? "inline" : _ref$mode,
105
- _ref$inlineText = _ref.inlineText,
106
- inlineText = _ref$inlineText === void 0 ? "" : _ref$inlineText,
107
- onClose = _ref.onClose,
108
- children = _ref.children,
109
- margin = _ref.margin,
110
- _ref$size = _ref.size,
111
- size = _ref$size === void 0 ? "fitContent" : _ref$size,
112
- tabIndex = _ref.tabIndex;
23
+ type = _ref$type === void 0 ? "info" : _ref$type,
24
+ _ref$mode = _ref.mode,
25
+ mode = _ref$mode === void 0 ? "inline" : _ref$mode,
26
+ _ref$inlineText = _ref.inlineText,
27
+ inlineText = _ref$inlineText === void 0 ? "" : _ref$inlineText,
28
+ onClose = _ref.onClose,
29
+ children = _ref.children,
30
+ margin = _ref.margin,
31
+ _ref$size = _ref.size,
32
+ size = _ref$size === void 0 ? "fitContent" : _ref$size,
33
+ tabIndex = _ref.tabIndex;
113
34
  var colorsTheme = (0, _useTheme["default"])();
114
35
  var translatedLabels = (0, _useTranslatedLabels["default"])();
115
-
116
36
  var getTypeText = function getTypeText() {
117
37
  return type === "info" ? translatedLabels.alert.infoTitleText : type === "confirm" ? translatedLabels.alert.successTitleText : type === "warning" ? translatedLabels.alert.warningTitleText : translatedLabels.alert.errorTitleText;
118
38
  };
119
-
120
39
  return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
121
40
  theme: colorsTheme.alert
122
41
  }, /*#__PURE__*/_react["default"].createElement(AlertModal, {
@@ -131,16 +50,21 @@ var DxcAlert = function DxcAlert(_ref) {
131
50
  size: size
132
51
  }, /*#__PURE__*/_react["default"].createElement(AlertInfo, null, /*#__PURE__*/_react["default"].createElement(AlertIcon, {
133
52
  type: type
134
- }, type === "info" && alertIcons.info || type === "confirm" && alertIcons.success || type === "warning" && alertIcons.warning || type === "error" && alertIcons.error), /*#__PURE__*/_react["default"].createElement(AlertText, null, /*#__PURE__*/_react["default"].createElement(AlertTitle, {
135
- type: type
136
- }, getTypeText()), inlineText && inlineText !== "" && "-", /*#__PURE__*/_react["default"].createElement(AlertInlineText, null, inlineText)), onClose && /*#__PURE__*/_react["default"].createElement(AlertCloseAction, {
53
+ }, type === "info" && /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
54
+ icon: "filled_info"
55
+ }) || type === "confirm" && /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
56
+ icon: "filled_check_circle"
57
+ }) || type === "warning" && /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
58
+ icon: "filled_warning"
59
+ }) || type === "error" && /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
60
+ icon: "filled_cancel"
61
+ })), /*#__PURE__*/_react["default"].createElement(AlertText, null, /*#__PURE__*/_react["default"].createElement(AlertTitle, null, getTypeText()), inlineText && inlineText !== "" && "-", /*#__PURE__*/_react["default"].createElement(AlertInlineText, null, inlineText)), onClose && /*#__PURE__*/_react["default"].createElement(AlertCloseAction, {
137
62
  onClick: onClose,
138
63
  tabIndex: tabIndex
139
- }, alertIcons.close)), children && /*#__PURE__*/_react["default"].createElement(AlertContent, null, /*#__PURE__*/_react["default"].createElement(_BackgroundColorContext.BackgroundColorProvider, {
140
- color: type === "info" && colorsTheme.alert.infoBackgroundColor || type === "confirm" && colorsTheme.alert.successBackgroundColor || type === "warning" && colorsTheme.alert.warningBackgroundColor || type === "error" && colorsTheme.alert.errorBackgroundColor
141
- }, children)))));
64
+ }, /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
65
+ icon: "close"
66
+ }))), children && /*#__PURE__*/_react["default"].createElement(AlertContent, null, children))));
142
67
  };
143
-
144
68
  var sizes = {
145
69
  small: "280px",
146
70
  medium: "480px",
@@ -148,11 +72,9 @@ var sizes = {
148
72
  fillParent: "100%",
149
73
  fitContent: "fit-content"
150
74
  };
151
-
152
75
  var calculateWidth = function calculateWidth(margin, size) {
153
76
  return size === "fillParent" ? "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")") : sizes[size];
154
77
  };
155
-
156
78
  var AlertModal = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n font-size: ", ";\n width: ", ";\n height: ", ";\n justify-content: ", ";\n align-items: ", ";\n top: ", ";\n left: ", ";\n position: ", ";\n display: ", ";\n z-index: ", ";\n"])), function (props) {
157
79
  return props.theme.fontSizeBase;
158
80
  }, function (props) {
@@ -174,7 +96,6 @@ var AlertModal = _styledComponents["default"].div(_templateObject || (_templateO
174
96
  }, function (props) {
175
97
  return props.mode === "modal" ? "1200" : "";
176
98
  });
177
-
178
99
  var OverlayContainer = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n background-color: ", ";\n position: ", ";\n top: ", ";\n bottom: ", ";\n left: ", ";\n right: ", ";\n"])), function (props) {
179
100
  return props.mode === "modal" ? "".concat(props.theme.overlayColor) : "transparent";
180
101
  }, function (props) {
@@ -188,7 +109,6 @@ var OverlayContainer = _styledComponents["default"].div(_templateObject2 || (_te
188
109
  }, function (props) {
189
110
  return props.mode === "modal" ? "0" : "";
190
111
  });
191
-
192
112
  var AlertContainer = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n display: ", ";\n overflow: hidden;\n box-sizing: border-box;\n\n background-color: ", ";\n\n border-radius: ", ";\n border-width: ", ";\n border-style: ", ";\n border-color: ", ";\n\n padding-left: 12px;\n padding-right: 12px;\n justify-content: ", ";\n align-items: ", ";\n max-width: ", ";\n width: ", ";\n z-index: ", ";\n"])), function (props) {
193
113
  return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
194
114
  }, function (props) {
@@ -222,11 +142,9 @@ var AlertContainer = _styledComponents["default"].div(_templateObject3 || (_temp
222
142
  }, function (props) {
223
143
  return props.mode === "modal" ? "1300" : "";
224
144
  });
225
-
226
145
  var AlertInfo = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: row;\n height: calc(48px - calc(", " * 2));\n align-items: center;\n width: 100%;\n"])), function (props) {
227
146
  return props.theme.borderThickness;
228
147
  });
229
-
230
148
  var AlertTitle = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n margin-right: 8px;\n padding-right: ", ";\n padding-left: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n text-transform: ", ";\n"])), function (props) {
231
149
  return props.theme.titlePaddingRight;
232
150
  }, function (props) {
@@ -244,7 +162,6 @@ var AlertTitle = _styledComponents["default"].div(_templateObject5 || (_template
244
162
  }, function (props) {
245
163
  return props.theme.titleTextTransform;
246
164
  });
247
-
248
165
  var AlertInlineText = _styledComponents["default"].div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n margin-left: 8px;\n padding-right: ", ";\n padding-left: ", ";\n flex-grow: 1;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n"])), function (props) {
249
166
  return props.theme.inlineTextPaddingRight;
250
167
  }, function (props) {
@@ -260,8 +177,7 @@ var AlertInlineText = _styledComponents["default"].div(_templateObject6 || (_tem
260
177
  }, function (props) {
261
178
  return props.theme.inlineTextFontColor;
262
179
  });
263
-
264
- var AlertIcon = _styledComponents["default"].span(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-wrap: wrap;\n align-content: center;\n margin-right: 12px;\n padding-right: ", ";\n padding-left: ", ";\n\n color: ", ";\n\n svg {\n width: ", ";\n height: ", ";\n }\n"])), function (props) {
180
+ var AlertIcon = _styledComponents["default"].span(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-wrap: wrap;\n align-content: center;\n margin-right: 12px;\n padding-right: ", ";\n padding-left: ", ";\n\n color: ", ";\n\n font-size: ", ";\n"])), function (props) {
265
181
  return props.theme.iconPaddingRight;
266
182
  }, function (props) {
267
183
  return props.theme.iconPaddingLeft;
@@ -269,25 +185,16 @@ var AlertIcon = _styledComponents["default"].span(_templateObject7 || (_template
269
185
  return props.type === "info" && props.theme.infoIconColor || props.type === "confirm" && props.theme.successIconColor || props.type === "warning" && props.theme.warningIconColor || props.type === "error" && props.theme.errorIconColor;
270
186
  }, function (props) {
271
187
  return props.theme.iconSize;
272
- }, function (props) {
273
- return props.theme.iconSize;
274
188
  });
275
-
276
189
  var AlertText = _styledComponents["default"].div(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: row;\n flex-grow: 1;\n align-items: center;\n overflow: hidden;\n"])));
277
-
278
190
  var AlertContent = _styledComponents["default"].div(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n flex: 1 1 auto;\n padding: ", ";\n overflow-y: auto;\n"])), function (props) {
279
191
  return "".concat(props.theme.contentPaddingTop, " ").concat(props.theme.contentPaddingRight, " ").concat(props.theme.contentPaddingBottom, " ").concat(props.theme.contentPaddingLeft);
280
192
  });
281
-
282
- var AlertCloseAction = _styledComponents["default"].button(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-wrap: wrap;\n align-content: center;\n height: 24px;\n width: 24px;\n border: 1px solid transparent;\n border-radius: 2px;\n box-shadow: 0 0 0 2px transparent;\n padding: 3px;\n margin-left: 12px;\n background-color: transparent;\n color: #000000;\n cursor: pointer;\n\n &:hover {\n background-color: ", ";\n }\n &:focus {\n outline: none;\n box-shadow: 0 0 0 2px ", ";\n }\n &:focus-visible {\n outline: none;\n box-shadow: 0 0 0 2px ", ";\n }\n &:active {\n background-color: ", ";\n }\n"])), function (props) {
193
+ var AlertCloseAction = _styledComponents["default"].button(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-wrap: wrap;\n align-content: center;\n justify-content: center;\n height: 24px;\n width: 24px;\n font-size: 20px;\n border: 1px solid transparent;\n border-radius: 2px;\n box-shadow: 0 0 0 2px transparent;\n padding: 3px;\n margin-left: 12px;\n background-color: transparent;\n color: #000000;\n cursor: pointer;\n\n &:hover {\n background-color: ", ";\n }\n &:focus,\n &:focus-visible {\n outline: none;\n box-shadow: 0 0 0 2px ", ";\n }\n &:active {\n background-color: ", ";\n }\n"])), function (props) {
283
194
  return props.theme.hoverActionBackgroundColor;
284
195
  }, function (props) {
285
196
  return props.theme.focusActionBorderColor;
286
- }, function (props) {
287
- return props.theme.focusActionBorderColor;
288
197
  }, function (props) {
289
198
  return props.theme.activeActionBackgroundColor;
290
199
  });
291
-
292
- var _default = DxcAlert;
293
- exports["default"] = _default;
200
+ var _default = exports["default"] = DxcAlert;