@dxc-technology/halstack-react 0.0.0-ff6151e → 0.0.0-ff6c8bf

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 (621) hide show
  1. package/BackgroundColorContext.d.ts +1 -0
  2. package/BackgroundColorContext.js +30 -0
  3. package/HalstackContext.d.ts +1246 -0
  4. package/HalstackContext.js +310 -0
  5. package/README.md +28 -47
  6. package/accordion/Accordion.accessibility.test.js +71 -0
  7. package/accordion/Accordion.d.ts +4 -0
  8. package/accordion/Accordion.js +171 -0
  9. package/accordion/Accordion.stories.tsx +241 -0
  10. package/accordion/Accordion.test.js +56 -0
  11. package/accordion/types.d.ts +57 -0
  12. package/accordion/types.js +5 -0
  13. package/accordion-group/AccordionGroup.accessibility.test.js +88 -0
  14. package/accordion-group/AccordionGroup.d.ts +7 -0
  15. package/accordion-group/AccordionGroup.js +101 -0
  16. package/accordion-group/AccordionGroup.stories.tsx +252 -0
  17. package/accordion-group/AccordionGroup.test.js +98 -0
  18. package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
  19. package/accordion-group/AccordionGroupAccordion.js +31 -0
  20. package/accordion-group/AccordionGroupContext.d.ts +3 -0
  21. package/accordion-group/AccordionGroupContext.js +8 -0
  22. package/accordion-group/types.d.ts +67 -0
  23. package/accordion-group/types.js +5 -0
  24. package/action-icon/ActionIcon.accessibility.test.js +63 -0
  25. package/action-icon/ActionIcon.d.ts +4 -0
  26. package/action-icon/ActionIcon.js +48 -0
  27. package/action-icon/ActionIcon.stories.tsx +41 -0
  28. package/action-icon/ActionIcon.test.js +64 -0
  29. package/action-icon/types.d.ts +26 -0
  30. package/action-icon/types.js +5 -0
  31. package/alert/Alert.accessibility.test.js +95 -0
  32. package/alert/Alert.d.ts +4 -0
  33. package/alert/Alert.js +203 -0
  34. package/alert/Alert.stories.tsx +198 -0
  35. package/alert/Alert.test.js +75 -0
  36. package/alert/types.d.ts +49 -0
  37. package/alert/types.js +5 -0
  38. package/badge/Badge.accessibility.test.js +129 -0
  39. package/badge/Badge.d.ts +4 -0
  40. package/badge/Badge.js +161 -0
  41. package/badge/Badge.stories.tsx +210 -0
  42. package/badge/Badge.test.js +30 -0
  43. package/badge/types.d.ts +54 -0
  44. package/badge/types.js +5 -0
  45. package/bleed/Bleed.d.ts +3 -0
  46. package/bleed/Bleed.js +43 -0
  47. package/bleed/Bleed.stories.tsx +342 -0
  48. package/bleed/types.d.ts +37 -0
  49. package/bleed/types.js +5 -0
  50. package/box/Box.accessibility.test.js +33 -0
  51. package/box/Box.d.ts +4 -0
  52. package/box/Box.js +75 -0
  53. package/box/Box.stories.tsx +119 -0
  54. package/box/Box.test.js +13 -0
  55. package/box/types.d.ts +32 -0
  56. package/box/types.js +5 -0
  57. package/breadcrumbs/Breadcrumbs.accessibility.test.d.ts +1 -0
  58. package/breadcrumbs/Breadcrumbs.accessibility.test.js +96 -0
  59. package/breadcrumbs/Breadcrumbs.d.ts +4 -0
  60. package/breadcrumbs/Breadcrumbs.js +79 -0
  61. package/breadcrumbs/Breadcrumbs.stories.tsx +194 -0
  62. package/breadcrumbs/Breadcrumbs.test.d.ts +1 -0
  63. package/breadcrumbs/Breadcrumbs.test.js +169 -0
  64. package/breadcrumbs/Item.d.ts +4 -0
  65. package/breadcrumbs/Item.js +52 -0
  66. package/breadcrumbs/dropdownTheme.d.ts +53 -0
  67. package/breadcrumbs/dropdownTheme.js +62 -0
  68. package/breadcrumbs/types.d.ts +16 -0
  69. package/breadcrumbs/types.js +5 -0
  70. package/bulleted-list/BulletedList.accessibility.test.js +119 -0
  71. package/bulleted-list/BulletedList.d.ts +7 -0
  72. package/bulleted-list/BulletedList.js +92 -0
  73. package/bulleted-list/BulletedList.stories.tsx +115 -0
  74. package/bulleted-list/types.d.ts +38 -0
  75. package/bulleted-list/types.js +5 -0
  76. package/button/Button.accessibility.test.js +127 -0
  77. package/button/Button.d.ts +4 -0
  78. package/button/Button.js +121 -0
  79. package/button/Button.stories.tsx +325 -0
  80. package/button/Button.test.js +38 -0
  81. package/button/types.d.ts +57 -0
  82. package/button/types.js +5 -0
  83. package/card/Card.accessibility.test.js +36 -0
  84. package/card/Card.d.ts +4 -0
  85. package/card/Card.js +121 -0
  86. package/card/Card.stories.tsx +171 -0
  87. package/card/Card.test.js +39 -0
  88. package/card/types.d.ts +62 -0
  89. package/card/types.js +5 -0
  90. package/checkbox/Checkbox.accessibility.test.js +87 -0
  91. package/checkbox/Checkbox.d.ts +4 -0
  92. package/checkbox/Checkbox.js +215 -0
  93. package/checkbox/Checkbox.stories.tsx +222 -0
  94. package/checkbox/Checkbox.test.js +199 -0
  95. package/checkbox/types.d.ts +72 -0
  96. package/checkbox/types.js +5 -0
  97. package/chip/Chip.accessibility.test.js +67 -0
  98. package/chip/Chip.d.ts +4 -0
  99. package/chip/Chip.js +126 -0
  100. package/chip/Chip.stories.tsx +199 -0
  101. package/chip/Chip.test.js +41 -0
  102. package/chip/types.d.ts +45 -0
  103. package/chip/types.js +5 -0
  104. package/common/coreTokens.d.ts +237 -0
  105. package/common/coreTokens.js +184 -0
  106. package/common/utils.d.ts +1 -0
  107. package/common/utils.js +16 -0
  108. package/common/variables.d.ts +1392 -0
  109. package/common/variables.js +1264 -0
  110. package/container/Container.d.ts +4 -0
  111. package/container/Container.js +194 -0
  112. package/container/Container.stories.tsx +214 -0
  113. package/container/types.d.ts +74 -0
  114. package/container/types.js +5 -0
  115. package/contextual-menu/ContextualMenu.accessibility.test.js +97 -0
  116. package/contextual-menu/ContextualMenu.d.ts +5 -0
  117. package/contextual-menu/ContextualMenu.js +88 -0
  118. package/contextual-menu/ContextualMenu.stories.tsx +232 -0
  119. package/contextual-menu/ContextualMenu.test.js +205 -0
  120. package/contextual-menu/GroupItem.d.ts +4 -0
  121. package/contextual-menu/GroupItem.js +67 -0
  122. package/contextual-menu/ItemAction.d.ts +4 -0
  123. package/contextual-menu/ItemAction.js +51 -0
  124. package/contextual-menu/MenuItem.d.ts +4 -0
  125. package/contextual-menu/MenuItem.js +29 -0
  126. package/contextual-menu/SingleItem.d.ts +4 -0
  127. package/contextual-menu/SingleItem.js +38 -0
  128. package/contextual-menu/types.d.ts +58 -0
  129. package/contextual-menu/types.js +5 -0
  130. package/date-input/Calendar.d.ts +4 -0
  131. package/date-input/Calendar.js +214 -0
  132. package/date-input/DateInput.accessibility.test.js +228 -0
  133. package/date-input/DateInput.d.ts +4 -0
  134. package/date-input/DateInput.js +222 -0
  135. package/date-input/DateInput.stories.tsx +292 -0
  136. package/date-input/DateInput.test.js +808 -0
  137. package/date-input/DatePicker.d.ts +4 -0
  138. package/date-input/DatePicker.js +121 -0
  139. package/date-input/YearPicker.d.ts +4 -0
  140. package/date-input/YearPicker.js +100 -0
  141. package/date-input/types.d.ts +164 -0
  142. package/date-input/types.js +5 -0
  143. package/dialog/Dialog.accessibility.test.js +69 -0
  144. package/dialog/Dialog.d.ts +4 -0
  145. package/dialog/Dialog.js +93 -0
  146. package/dialog/Dialog.stories.tsx +371 -0
  147. package/dialog/Dialog.test.js +307 -0
  148. package/dialog/types.d.ts +36 -0
  149. package/dialog/types.js +5 -0
  150. package/divider/Divider.accessibility.test.js +33 -0
  151. package/divider/Divider.d.ts +4 -0
  152. package/divider/Divider.js +36 -0
  153. package/divider/Divider.stories.tsx +223 -0
  154. package/divider/Divider.test.js +38 -0
  155. package/divider/types.d.ts +21 -0
  156. package/divider/types.js +5 -0
  157. package/dropdown/Dropdown.accessibility.test.js +180 -0
  158. package/dropdown/Dropdown.d.ts +4 -0
  159. package/dropdown/Dropdown.js +321 -0
  160. package/dropdown/Dropdown.stories.tsx +427 -0
  161. package/dropdown/Dropdown.test.js +599 -0
  162. package/dropdown/DropdownMenu.d.ts +4 -0
  163. package/dropdown/DropdownMenu.js +63 -0
  164. package/dropdown/DropdownMenuItem.d.ts +4 -0
  165. package/dropdown/DropdownMenuItem.js +71 -0
  166. package/dropdown/types.d.ts +96 -0
  167. package/dropdown/types.js +5 -0
  168. package/file-input/FileInput.accessibility.test.js +160 -0
  169. package/file-input/FileInput.d.ts +4 -0
  170. package/file-input/FileInput.js +443 -0
  171. package/file-input/FileInput.stories.tsx +618 -0
  172. package/file-input/FileInput.test.js +396 -0
  173. package/file-input/FileItem.d.ts +4 -0
  174. package/file-input/FileItem.js +125 -0
  175. package/file-input/types.d.ts +129 -0
  176. package/file-input/types.js +5 -0
  177. package/flex/Flex.d.ts +4 -0
  178. package/flex/Flex.js +57 -0
  179. package/flex/Flex.stories.tsx +112 -0
  180. package/flex/types.d.ts +97 -0
  181. package/flex/types.js +5 -0
  182. package/footer/Footer.accessibility.test.js +125 -0
  183. package/footer/Footer.d.ts +4 -0
  184. package/footer/Footer.js +140 -0
  185. package/footer/Footer.stories.tsx +208 -0
  186. package/footer/Footer.test.js +85 -0
  187. package/footer/Icons.d.ts +3 -0
  188. package/footer/Icons.js +108 -0
  189. package/footer/types.d.ts +64 -0
  190. package/footer/types.js +5 -0
  191. package/grid/Grid.d.ts +7 -0
  192. package/grid/Grid.js +76 -0
  193. package/grid/Grid.stories.tsx +219 -0
  194. package/grid/types.d.ts +115 -0
  195. package/grid/types.js +5 -0
  196. package/header/Header.accessibility.test.js +93 -0
  197. package/header/Header.d.ts +8 -0
  198. package/header/Header.js +210 -0
  199. package/header/Header.stories.tsx +267 -0
  200. package/header/Header.test.js +66 -0
  201. package/header/Icons.d.ts +2 -0
  202. package/header/Icons.js +24 -0
  203. package/header/types.d.ts +33 -0
  204. package/header/types.js +5 -0
  205. package/heading/Heading.accessibility.test.js +33 -0
  206. package/heading/Heading.d.ts +4 -0
  207. package/heading/Heading.js +137 -0
  208. package/heading/Heading.stories.tsx +54 -0
  209. package/heading/Heading.test.js +169 -0
  210. package/heading/types.d.ts +33 -0
  211. package/heading/types.js +5 -0
  212. package/icon/Icon.accessibility.test.js +30 -0
  213. package/icon/Icon.d.ts +4 -0
  214. package/icon/Icon.js +33 -0
  215. package/icon/Icon.stories.tsx +28 -0
  216. package/icon/types.d.ts +4 -0
  217. package/icon/types.js +5 -0
  218. package/image/Image.accessibility.test.js +56 -0
  219. package/image/Image.d.ts +4 -0
  220. package/image/Image.js +70 -0
  221. package/image/Image.stories.tsx +129 -0
  222. package/image/types.d.ts +72 -0
  223. package/image/types.js +5 -0
  224. package/inset/Inset.d.ts +3 -0
  225. package/inset/Inset.js +43 -0
  226. package/inset/Inset.stories.tsx +230 -0
  227. package/inset/types.d.ts +37 -0
  228. package/inset/types.js +5 -0
  229. package/layout/ApplicationLayout.d.ts +20 -0
  230. package/layout/ApplicationLayout.js +137 -0
  231. package/layout/ApplicationLayout.stories.tsx +162 -0
  232. package/layout/Icons.d.ts +7 -0
  233. package/layout/Icons.js +48 -0
  234. package/layout/types.d.ts +41 -0
  235. package/layout/types.js +5 -0
  236. package/link/Link.accessibility.test.js +108 -0
  237. package/link/Link.d.ts +4 -0
  238. package/link/Link.js +117 -0
  239. package/link/Link.stories.tsx +253 -0
  240. package/link/Link.test.js +63 -0
  241. package/link/types.d.ts +54 -0
  242. package/link/types.js +5 -0
  243. package/main.d.ts +50 -0
  244. package/{dist/main.js → main.js} +172 -111
  245. package/nav-tabs/NavTabs.accessibility.test.js +44 -0
  246. package/nav-tabs/NavTabs.d.ts +7 -0
  247. package/nav-tabs/NavTabs.js +93 -0
  248. package/nav-tabs/NavTabs.stories.tsx +279 -0
  249. package/nav-tabs/NavTabs.test.js +77 -0
  250. package/nav-tabs/NavTabsContext.d.ts +3 -0
  251. package/nav-tabs/NavTabsContext.js +8 -0
  252. package/nav-tabs/Tab.d.ts +4 -0
  253. package/nav-tabs/Tab.js +117 -0
  254. package/nav-tabs/types.d.ts +52 -0
  255. package/nav-tabs/types.js +5 -0
  256. package/number-input/NumberInput.accessibility.test.js +228 -0
  257. package/number-input/NumberInput.d.ts +4 -0
  258. package/number-input/NumberInput.js +86 -0
  259. package/number-input/NumberInput.stories.tsx +131 -0
  260. package/number-input/NumberInput.test.js +989 -0
  261. package/number-input/NumberInputContext.d.ts +3 -0
  262. package/number-input/NumberInputContext.js +8 -0
  263. package/number-input/types.d.ts +136 -0
  264. package/number-input/types.js +5 -0
  265. package/package.json +66 -51
  266. package/paginator/Paginator.accessibility.test.js +79 -0
  267. package/paginator/Paginator.d.ts +4 -0
  268. package/paginator/Paginator.js +138 -0
  269. package/paginator/Paginator.stories.tsx +87 -0
  270. package/paginator/Paginator.test.js +335 -0
  271. package/paginator/types.d.ts +38 -0
  272. package/paginator/types.js +5 -0
  273. package/paragraph/Paragraph.accessibility.test.js +28 -0
  274. package/paragraph/Paragraph.d.ts +5 -0
  275. package/paragraph/Paragraph.js +22 -0
  276. package/paragraph/Paragraph.stories.tsx +27 -0
  277. package/password-input/PasswordInput.accessibility.test.js +153 -0
  278. package/password-input/PasswordInput.d.ts +4 -0
  279. package/password-input/PasswordInput.js +97 -0
  280. package/password-input/PasswordInput.stories.tsx +99 -0
  281. package/password-input/PasswordInput.test.js +198 -0
  282. package/password-input/types.d.ts +111 -0
  283. package/password-input/types.js +5 -0
  284. package/progress-bar/ProgressBar.accessibility.test.js +35 -0
  285. package/progress-bar/ProgressBar.d.ts +4 -0
  286. package/progress-bar/ProgressBar.js +146 -0
  287. package/progress-bar/ProgressBar.stories.tsx +93 -0
  288. package/progress-bar/ProgressBar.test.js +93 -0
  289. package/progress-bar/types.d.ts +37 -0
  290. package/progress-bar/types.js +5 -0
  291. package/quick-nav/QuickNav.accessibility.test.js +57 -0
  292. package/quick-nav/QuickNav.d.ts +4 -0
  293. package/quick-nav/QuickNav.js +94 -0
  294. package/quick-nav/QuickNav.stories.tsx +356 -0
  295. package/quick-nav/types.d.ts +21 -0
  296. package/quick-nav/types.js +5 -0
  297. package/radio-group/Radio.d.ts +4 -0
  298. package/radio-group/Radio.js +124 -0
  299. package/radio-group/RadioGroup.accessibility.test.js +97 -0
  300. package/radio-group/RadioGroup.d.ts +4 -0
  301. package/radio-group/RadioGroup.js +236 -0
  302. package/radio-group/RadioGroup.stories.tsx +214 -0
  303. package/radio-group/RadioGroup.test.js +756 -0
  304. package/radio-group/types.d.ts +114 -0
  305. package/radio-group/types.js +5 -0
  306. package/resultset-table/Icons.d.ts +7 -0
  307. package/resultset-table/Icons.js +47 -0
  308. package/resultset-table/ResultsetTable.accessibility.test.js +285 -0
  309. package/resultset-table/ResultsetTable.d.ts +7 -0
  310. package/resultset-table/ResultsetTable.js +171 -0
  311. package/resultset-table/ResultsetTable.stories.tsx +413 -0
  312. package/resultset-table/ResultsetTable.test.js +381 -0
  313. package/resultset-table/types.d.ts +100 -0
  314. package/resultset-table/types.js +5 -0
  315. package/select/Listbox.d.ts +4 -0
  316. package/select/Listbox.js +155 -0
  317. package/select/Option.d.ts +4 -0
  318. package/select/Option.js +89 -0
  319. package/select/Select.accessibility.test.js +228 -0
  320. package/select/Select.d.ts +4 -0
  321. package/select/Select.js +602 -0
  322. package/select/Select.stories.tsx +919 -0
  323. package/select/Select.test.js +2265 -0
  324. package/select/types.d.ts +209 -0
  325. package/select/types.js +5 -0
  326. package/sidenav/Sidenav.accessibility.test.js +59 -0
  327. package/sidenav/Sidenav.d.ts +10 -0
  328. package/sidenav/Sidenav.js +201 -0
  329. package/sidenav/Sidenav.stories.tsx +277 -0
  330. package/sidenav/Sidenav.test.js +37 -0
  331. package/sidenav/SidenavContext.d.ts +5 -0
  332. package/sidenav/SidenavContext.js +13 -0
  333. package/sidenav/types.d.ts +76 -0
  334. package/sidenav/types.js +5 -0
  335. package/slider/Slider.accessibility.test.js +104 -0
  336. package/slider/Slider.d.ts +4 -0
  337. package/slider/Slider.js +286 -0
  338. package/slider/Slider.stories.tsx +180 -0
  339. package/slider/Slider.test.js +254 -0
  340. package/slider/types.d.ts +86 -0
  341. package/slider/types.js +5 -0
  342. package/spinner/Spinner.accessibility.test.js +96 -0
  343. package/spinner/Spinner.d.ts +4 -0
  344. package/spinner/Spinner.js +210 -0
  345. package/spinner/Spinner.stories.tsx +129 -0
  346. package/spinner/Spinner.test.js +55 -0
  347. package/spinner/types.d.ts +32 -0
  348. package/spinner/types.js +5 -0
  349. package/status-light/StatusLight.accessibility.test.js +157 -0
  350. package/status-light/StatusLight.d.ts +4 -0
  351. package/status-light/StatusLight.js +51 -0
  352. package/status-light/StatusLight.stories.tsx +74 -0
  353. package/status-light/StatusLight.test.js +25 -0
  354. package/status-light/types.d.ts +17 -0
  355. package/status-light/types.js +5 -0
  356. package/switch/Switch.accessibility.test.js +98 -0
  357. package/switch/Switch.d.ts +4 -0
  358. package/switch/Switch.js +214 -0
  359. package/switch/Switch.stories.tsx +149 -0
  360. package/switch/Switch.test.js +180 -0
  361. package/switch/types.d.ts +66 -0
  362. package/switch/types.js +5 -0
  363. package/table/DropdownTheme.js +62 -0
  364. package/table/Table.accessibility.test.js +93 -0
  365. package/table/Table.d.ts +8 -0
  366. package/table/Table.js +161 -0
  367. package/table/Table.stories.tsx +663 -0
  368. package/table/Table.test.js +113 -0
  369. package/table/types.d.ts +49 -0
  370. package/table/types.js +5 -0
  371. package/tabs/Tab.d.ts +4 -0
  372. package/tabs/Tab.js +117 -0
  373. package/tabs/Tabs.accessibility.test.js +56 -0
  374. package/tabs/Tabs.d.ts +4 -0
  375. package/tabs/Tabs.js +373 -0
  376. package/tabs/Tabs.stories.tsx +230 -0
  377. package/tabs/Tabs.test.js +276 -0
  378. package/tabs/types.d.ts +92 -0
  379. package/tabs/types.js +5 -0
  380. package/tag/Tag.accessibility.test.js +69 -0
  381. package/tag/Tag.d.ts +4 -0
  382. package/tag/Tag.js +151 -0
  383. package/tag/Tag.stories.tsx +152 -0
  384. package/tag/Tag.test.js +41 -0
  385. package/tag/types.d.ts +69 -0
  386. package/tag/types.js +5 -0
  387. package/text-input/Suggestion.d.ts +4 -0
  388. package/text-input/Suggestion.js +67 -0
  389. package/text-input/Suggestions.d.ts +4 -0
  390. package/text-input/Suggestions.js +94 -0
  391. package/text-input/TextInput.accessibility.test.js +321 -0
  392. package/text-input/TextInput.d.ts +4 -0
  393. package/text-input/TextInput.js +571 -0
  394. package/text-input/TextInput.stories.tsx +474 -0
  395. package/text-input/TextInput.test.js +1756 -0
  396. package/text-input/types.d.ts +205 -0
  397. package/text-input/types.js +5 -0
  398. package/textarea/Textarea.accessibility.test.js +155 -0
  399. package/textarea/Textarea.d.ts +4 -0
  400. package/textarea/Textarea.js +235 -0
  401. package/textarea/Textarea.stories.tsx +174 -0
  402. package/textarea/Textarea.test.js +406 -0
  403. package/textarea/types.d.ts +141 -0
  404. package/textarea/types.js +5 -0
  405. package/toggle-group/ToggleGroup.accessibility.test.js +107 -0
  406. package/toggle-group/ToggleGroup.d.ts +4 -0
  407. package/toggle-group/ToggleGroup.js +202 -0
  408. package/toggle-group/ToggleGroup.stories.tsx +218 -0
  409. package/toggle-group/ToggleGroup.test.js +137 -0
  410. package/toggle-group/types.d.ts +114 -0
  411. package/toggle-group/types.js +5 -0
  412. package/typography/Typography.accessibility.test.js +339 -0
  413. package/typography/Typography.d.ts +4 -0
  414. package/typography/Typography.js +23 -0
  415. package/typography/Typography.stories.tsx +198 -0
  416. package/typography/types.d.ts +18 -0
  417. package/typography/types.js +5 -0
  418. package/useTheme.d.ts +1145 -0
  419. package/{dist/useTheme.js → useTheme.js} +4 -11
  420. package/useTranslatedLabels.d.ts +85 -0
  421. package/useTranslatedLabels.js +14 -0
  422. package/utils/BaseTypography.d.ts +21 -0
  423. package/utils/BaseTypography.js +94 -0
  424. package/utils/FocusLock.d.ts +13 -0
  425. package/utils/FocusLock.js +124 -0
  426. package/wizard/Wizard.accessibility.test.js +55 -0
  427. package/wizard/Wizard.d.ts +4 -0
  428. package/wizard/Wizard.js +239 -0
  429. package/wizard/Wizard.stories.tsx +272 -0
  430. package/wizard/Wizard.test.js +114 -0
  431. package/wizard/types.d.ts +64 -0
  432. package/wizard/types.js +5 -0
  433. package/babel.config.js +0 -4
  434. package/dist/ThemeContext.js +0 -54
  435. package/dist/accordion/Accordion.js +0 -273
  436. package/dist/accordion/Accordion.stories.js +0 -207
  437. package/dist/accordion/readme.md +0 -96
  438. package/dist/accordion-group/AccordionGroup.js +0 -159
  439. package/dist/accordion-group/AccordionGroup.stories.js +0 -207
  440. package/dist/accordion-group/readme.md +0 -70
  441. package/dist/alert/Alert.js +0 -304
  442. package/dist/alert/Alert.stories.js +0 -158
  443. package/dist/alert/close.svg +0 -4
  444. package/dist/alert/error.svg +0 -4
  445. package/dist/alert/info.svg +0 -4
  446. package/dist/alert/readme.md +0 -43
  447. package/dist/alert/success.svg +0 -4
  448. package/dist/alert/warning.svg +0 -4
  449. package/dist/badge/Badge.js +0 -58
  450. package/dist/box/Box.js +0 -148
  451. package/dist/button/Button.js +0 -202
  452. package/dist/button/Button.stories.js +0 -224
  453. package/dist/button/readme.md +0 -93
  454. package/dist/card/Card.js +0 -217
  455. package/dist/checkbox/Checkbox.js +0 -240
  456. package/dist/checkbox/Checkbox.stories.js +0 -144
  457. package/dist/checkbox/readme.md +0 -116
  458. package/dist/chip/Chip.js +0 -208
  459. package/dist/common/OpenSans.css +0 -81
  460. package/dist/common/RequiredComponent.js +0 -40
  461. package/dist/common/fonts/OpenSans-Bold.ttf +0 -0
  462. package/dist/common/fonts/OpenSans-BoldItalic.ttf +0 -0
  463. package/dist/common/fonts/OpenSans-ExtraBold.ttf +0 -0
  464. package/dist/common/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  465. package/dist/common/fonts/OpenSans-Italic.ttf +0 -0
  466. package/dist/common/fonts/OpenSans-Light.ttf +0 -0
  467. package/dist/common/fonts/OpenSans-LightItalic.ttf +0 -0
  468. package/dist/common/fonts/OpenSans-Regular.ttf +0 -0
  469. package/dist/common/fonts/OpenSans-SemiBold.ttf +0 -0
  470. package/dist/common/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  471. package/dist/common/services/example-service.js +0 -10
  472. package/dist/common/services/example-service.test.js +0 -12
  473. package/dist/common/utils.js +0 -42
  474. package/dist/common/variables.js +0 -436
  475. package/dist/date/Date.js +0 -357
  476. package/dist/date/Date.stories.js +0 -205
  477. package/dist/date/calendar.svg +0 -1
  478. package/dist/date/calendar_dark.svg +0 -1
  479. package/dist/date/readme.md +0 -73
  480. package/dist/dialog/Dialog.js +0 -197
  481. package/dist/dialog/Dialog.stories.js +0 -217
  482. package/dist/dialog/readme.md +0 -32
  483. package/dist/dropdown/Dropdown.js +0 -449
  484. package/dist/dropdown/Dropdown.stories.js +0 -249
  485. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  486. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  487. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  488. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  489. package/dist/dropdown/readme.md +0 -69
  490. package/dist/footer/Footer.js +0 -371
  491. package/dist/footer/Footer.stories.js +0 -94
  492. package/dist/footer/dxc_logo_wht.png +0 -0
  493. package/dist/footer/readme.md +0 -41
  494. package/dist/header/Header.js +0 -373
  495. package/dist/header/Header.stories.js +0 -176
  496. package/dist/header/close_icon.svg +0 -1
  497. package/dist/header/dxc_logo_black.png +0 -0
  498. package/dist/header/dxc_logo_blk_rgb.svg +0 -6
  499. package/dist/header/dxc_logo_white.png +0 -0
  500. package/dist/header/hamb_menu_black.svg +0 -1
  501. package/dist/header/hamb_menu_white.svg +0 -1
  502. package/dist/header/readme.md +0 -33
  503. package/dist/heading/Heading.js +0 -153
  504. package/dist/input-text/InputText.js +0 -570
  505. package/dist/input-text/InputText.stories.js +0 -209
  506. package/dist/input-text/error.svg +0 -1
  507. package/dist/input-text/readme.md +0 -91
  508. package/dist/layout/ApplicationLayout.js +0 -335
  509. package/dist/layout/facebook.svg +0 -45
  510. package/dist/layout/linkedin.svg +0 -50
  511. package/dist/layout/twitter.svg +0 -53
  512. package/dist/link/Link.js +0 -192
  513. package/dist/link/readme.md +0 -51
  514. package/dist/paginator/Paginator.js +0 -232
  515. package/dist/paginator/images/next.svg +0 -3
  516. package/dist/paginator/images/nextPage.svg +0 -3
  517. package/dist/paginator/images/previous.svg +0 -3
  518. package/dist/paginator/images/previousPage.svg +0 -3
  519. package/dist/paginator/readme.md +0 -50
  520. package/dist/progress-bar/ProgressBar.js +0 -185
  521. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  522. package/dist/progress-bar/readme.md +0 -63
  523. package/dist/radio/Radio.js +0 -195
  524. package/dist/radio/Radio.stories.js +0 -166
  525. package/dist/radio/readme.md +0 -70
  526. package/dist/resultsetTable/ResultsetTable.js +0 -341
  527. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  528. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  529. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  530. package/dist/select/Select.js +0 -473
  531. package/dist/select/Select.stories.js +0 -235
  532. package/dist/select/readme.md +0 -72
  533. package/dist/sidenav/Sidenav.js +0 -128
  534. package/dist/slider/Slider.js +0 -266
  535. package/dist/slider/Slider.stories.js +0 -241
  536. package/dist/slider/readme.md +0 -64
  537. package/dist/spinner/Spinner.js +0 -193
  538. package/dist/spinner/Spinner.stories.js +0 -183
  539. package/dist/spinner/readme.md +0 -65
  540. package/dist/switch/Switch.js +0 -199
  541. package/dist/switch/Switch.stories.js +0 -134
  542. package/dist/switch/readme.md +0 -133
  543. package/dist/table/Table.js +0 -105
  544. package/dist/tabs/Tabs.js +0 -292
  545. package/dist/tabs/Tabs.stories.js +0 -130
  546. package/dist/tabs/readme.md +0 -78
  547. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  548. package/dist/tabs-for-sections/readme.md +0 -78
  549. package/dist/tag/Tag.js +0 -249
  550. package/dist/textarea/Textarea.js +0 -227
  551. package/dist/toggle/Toggle.js +0 -223
  552. package/dist/toggle/Toggle.stories.js +0 -297
  553. package/dist/toggle/readme.md +0 -80
  554. package/dist/toggle-group/ToggleGroup.js +0 -226
  555. package/dist/toggle-group/readme.md +0 -82
  556. package/dist/upload/Upload.js +0 -200
  557. package/dist/upload/Upload.stories.js +0 -72
  558. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -122
  559. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  560. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  561. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -279
  562. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  563. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  564. package/dist/upload/file-upload/FileToUpload.js +0 -158
  565. package/dist/upload/file-upload/audio-icon.svg +0 -4
  566. package/dist/upload/file-upload/close.svg +0 -4
  567. package/dist/upload/file-upload/file-icon.svg +0 -4
  568. package/dist/upload/file-upload/video-icon.svg +0 -4
  569. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  570. package/dist/upload/readme.md +0 -37
  571. package/dist/upload/transaction/Transaction.js +0 -155
  572. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  573. package/dist/upload/transaction/audio-icon.svg +0 -4
  574. package/dist/upload/transaction/error-icon.svg +0 -4
  575. package/dist/upload/transaction/file-icon-err.svg +0 -4
  576. package/dist/upload/transaction/file-icon.svg +0 -4
  577. package/dist/upload/transaction/image-icon-err.svg +0 -4
  578. package/dist/upload/transaction/image-icon.svg +0 -4
  579. package/dist/upload/transaction/success-icon.svg +0 -4
  580. package/dist/upload/transaction/video-icon-err.svg +0 -4
  581. package/dist/upload/transaction/video-icon.svg +0 -4
  582. package/dist/upload/transactions/Transactions.js +0 -120
  583. package/dist/wizard/Wizard.js +0 -331
  584. package/dist/wizard/invalid_icon.svg +0 -6
  585. package/dist/wizard/valid_icon.svg +0 -6
  586. package/dist/wizard/validation-wrong.svg +0 -6
  587. package/test/Accordion.test.js +0 -33
  588. package/test/AccordionGroup.test.js +0 -109
  589. package/test/Alert.test.js +0 -53
  590. package/test/Box.test.js +0 -10
  591. package/test/Button.test.js +0 -18
  592. package/test/Card.test.js +0 -30
  593. package/test/Checkbox.test.js +0 -45
  594. package/test/Chip.test.js +0 -25
  595. package/test/Date.test.js +0 -393
  596. package/test/Dialog.test.js +0 -23
  597. package/test/Dropdown.test.js +0 -130
  598. package/test/Footer.test.js +0 -99
  599. package/test/Header.test.js +0 -39
  600. package/test/Heading.test.js +0 -35
  601. package/test/InputText.test.js +0 -240
  602. package/test/Link.test.js +0 -42
  603. package/test/Paginator.test.js +0 -194
  604. package/test/ProgressBar.test.js +0 -35
  605. package/test/Radio.test.js +0 -37
  606. package/test/ResultsetTable.test.js +0 -304
  607. package/test/Select.test.js +0 -192
  608. package/test/Sidenav.test.js +0 -45
  609. package/test/Slider.test.js +0 -82
  610. package/test/Spinner.test.js +0 -27
  611. package/test/Switch.test.js +0 -45
  612. package/test/Table.test.js +0 -36
  613. package/test/Tabs.test.js +0 -109
  614. package/test/TabsForSections.test.js +0 -34
  615. package/test/Tag.test.js +0 -32
  616. package/test/TextArea.test.js +0 -52
  617. package/test/ToggleGroup.test.js +0 -81
  618. package/test/Upload.test.js +0 -60
  619. package/test/Wizard.test.js +0 -130
  620. package/test/mocks/pngMock.js +0 -1
  621. package/test/mocks/svgMock.js +0 -1
@@ -0,0 +1,198 @@
1
+ import React from "react";
2
+ import DxcAlert from "./Alert";
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: "Alert",
9
+ component: DxcAlert,
10
+ };
11
+
12
+ const opinionatedTheme = {
13
+ alert: {
14
+ baseColor: "#e6f4ff",
15
+ accentColor: "#0067b3",
16
+ overlayColor: "#000000b3",
17
+ },
18
+ };
19
+
20
+ export const Chromatic = () => (
21
+ <>
22
+ <ExampleContainer>
23
+ <Title title="Info" theme="light" level={4} />
24
+ <DxcAlert inlineText="Info type alert with inline text." />
25
+ </ExampleContainer>
26
+ <ExampleContainer>
27
+ <Title title="Confirm" theme="light" level={4} />
28
+ <DxcAlert type="confirm" inlineText="Confirm type alert with inline text." />
29
+ </ExampleContainer>
30
+ <ExampleContainer>
31
+ <Title title="Warning" theme="light" level={4} />
32
+ <DxcAlert type="warning" inlineText="Warning type alert with inline text." />
33
+ </ExampleContainer>
34
+ <ExampleContainer>
35
+ <Title title="Error" theme="light" level={4} />
36
+ <DxcAlert type="error" inlineText="Error type alert with inline text." />
37
+ </ExampleContainer>
38
+ <ExampleContainer>
39
+ <Title title="With close button" theme="light" level={4} />
40
+ <DxcAlert inlineText="Info type alert with inline text and close button." onClose={() => {}} />
41
+ </ExampleContainer>
42
+ <ExampleContainer pseudoState="pseudo-hover">
43
+ <Title title="With hovered close button" theme="light" level={4} />
44
+ <DxcAlert inlineText="Info type alert with inline text and close button." onClose={() => {}} />
45
+ </ExampleContainer>
46
+ <ExampleContainer pseudoState="pseudo-focus">
47
+ <Title title="With focused close button" theme="light" level={4} />
48
+ <DxcAlert inlineText="Info type alert with inline text and close button." onClose={() => {}} />
49
+ </ExampleContainer>
50
+ <ExampleContainer pseudoState="pseudo-active">
51
+ <Title title="With actived close button" theme="light" level={4} />
52
+ <DxcAlert inlineText="Info type alert with inline text and close button." onClose={() => {}} />
53
+ </ExampleContainer>
54
+ <ExampleContainer>
55
+ <Title title="With children" theme="light" level={4} />
56
+ <DxcAlert>
57
+ <div>
58
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo
59
+ lobortis eget.
60
+ </div>
61
+ </DxcAlert>
62
+ </ExampleContainer>
63
+ <ExampleContainer>
64
+ <Title title="With inline text and children" theme="light" level={4} />
65
+ <DxcAlert inlineText="Info type alert with inline text.">
66
+ <div>
67
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo
68
+ lobortis eget.
69
+ </div>
70
+ </DxcAlert>
71
+ </ExampleContainer>
72
+ <Title title="Margins" theme="light" level={2} />
73
+ <ExampleContainer>
74
+ <Title title="Xxsmall" theme="light" level={4} />
75
+ <DxcAlert margin="xxsmall" inlineText="Info type alert with inline text and xxsmall margin." />
76
+ </ExampleContainer>
77
+ <ExampleContainer>
78
+ <Title title="Xsmall" theme="light" level={4} />
79
+ <DxcAlert margin="xsmall" inlineText="Info type alert with inline text and xsmall margin." />
80
+ </ExampleContainer>
81
+ <ExampleContainer>
82
+ <Title title="Small" theme="light" level={4} />
83
+ <DxcAlert margin="small" inlineText="Info type alert with inline text and small margin." />
84
+ </ExampleContainer>
85
+ <ExampleContainer>
86
+ <Title title="Medium" theme="light" level={4} />
87
+ <DxcAlert margin="medium" inlineText="Info type alert with inline text and medium margin." />
88
+ </ExampleContainer>
89
+ <ExampleContainer>
90
+ <Title title="Large" theme="light" level={4} />
91
+ <DxcAlert margin="large" inlineText="Info type alert with inline text and large margin." />
92
+ </ExampleContainer>
93
+ <ExampleContainer>
94
+ <Title title="Xlarge" theme="light" level={4} />
95
+ <DxcAlert margin="xlarge" inlineText="Info type alert with inline text and xlarge margin." />
96
+ </ExampleContainer>
97
+ <ExampleContainer>
98
+ <Title title="Xxlarge" theme="light" level={4} />
99
+ <DxcAlert margin="xxlarge" inlineText="Info type alert with inline text and xxlarge margin." />
100
+ </ExampleContainer>
101
+ <Title title="Sizes" theme="light" level={2} />
102
+ <ExampleContainer>
103
+ <Title title="FitContent" theme="light" level={4} />
104
+ <DxcAlert
105
+ size="fitContent"
106
+ inlineText="Info type alert with inline text, children, close button and fitContent size."
107
+ onClose={() => {}}
108
+ >
109
+ <div>
110
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo
111
+ lobortis eget.
112
+ </div>
113
+ </DxcAlert>
114
+ </ExampleContainer>
115
+ <ExampleContainer>
116
+ <Title title="Small" theme="light" level={4} />
117
+ <DxcAlert
118
+ size="small"
119
+ inlineText="Info type alert with inline text, children, close button and small size."
120
+ onClose={() => {}}
121
+ >
122
+ <div>
123
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo
124
+ lobortis eget.
125
+ </div>
126
+ </DxcAlert>
127
+ </ExampleContainer>
128
+ <ExampleContainer>
129
+ <Title title="Medium" theme="light" level={4} />
130
+ <DxcAlert
131
+ size="medium"
132
+ inlineText="Info type alert with inline text, children, close button and medium size."
133
+ onClose={() => {}}
134
+ >
135
+ <div>
136
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo
137
+ lobortis eget.
138
+ </div>
139
+ </DxcAlert>
140
+ </ExampleContainer>
141
+ <ExampleContainer>
142
+ <Title title="Large" theme="light" level={4} />
143
+ <DxcAlert
144
+ size="large"
145
+ inlineText="Info type alert with inline text, children, close button and large size."
146
+ onClose={() => {}}
147
+ >
148
+ <div>
149
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo
150
+ lobortis eget.
151
+ </div>
152
+ </DxcAlert>
153
+ </ExampleContainer>
154
+ <ExampleContainer>
155
+ <Title title="FillParent" theme="light" level={4} />
156
+ <DxcAlert
157
+ size="fillParent"
158
+ inlineText="Info type alert with inline text, children, close button and fillParent size."
159
+ onClose={() => {}}
160
+ >
161
+ <div>
162
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo
163
+ lobortis eget.
164
+ </div>
165
+ </DxcAlert>
166
+ </ExampleContainer>
167
+ <Title title="Opinionated theme" theme="light" level={2} />
168
+ <ExampleContainer>
169
+ <HalstackProvider theme={opinionatedTheme}>
170
+ <DxcAlert inlineText="Info type alert with inline text." />
171
+ </HalstackProvider>
172
+ </ExampleContainer>
173
+ </>
174
+ );
175
+
176
+ export const ModalAlert = () => (
177
+ <ExampleContainer>
178
+ <DxcAlert inlineText="Modal alert." mode="modal" onClose={() => {}}>
179
+ <div>
180
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo
181
+ lobortis eget.
182
+ </div>
183
+ </DxcAlert>
184
+ </ExampleContainer>
185
+ );
186
+
187
+ export const ModalAlertOpinionated = () => (
188
+ <ExampleContainer>
189
+ <HalstackProvider theme={opinionatedTheme}>
190
+ <DxcAlert inlineText="Modal alert." mode="modal" onClose={() => {}}>
191
+ <div>
192
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo
193
+ lobortis eget.
194
+ </div>
195
+ </DxcAlert>
196
+ </HalstackProvider>
197
+ </ExampleContainer>
198
+ );
@@ -0,0 +1,75 @@
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 _Alert = _interopRequireDefault(require("./Alert.tsx"));
7
+ describe("Alert component tests", function () {
8
+ test("Info alert renders with correct text", function () {
9
+ var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Alert["default"], {
10
+ type: "info",
11
+ inlineText: "info-alert-text"
12
+ })),
13
+ getByText = _render.getByText;
14
+ expect(getByText("information")).toBeTruthy();
15
+ expect(getByText("info-alert-text")).toBeTruthy();
16
+ });
17
+ test("Confirm alert renders with correct text", function () {
18
+ var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Alert["default"], {
19
+ type: "confirm",
20
+ inlineText: "confirm-alert-text"
21
+ })),
22
+ getByText = _render2.getByText;
23
+ expect(getByText("success")).toBeTruthy();
24
+ expect(getByText("confirm-alert-text")).toBeTruthy();
25
+ });
26
+ test("Warning alert renders with correct text", function () {
27
+ var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Alert["default"], {
28
+ type: "warning",
29
+ inlineText: "warning-alert-text"
30
+ })),
31
+ getByText = _render3.getByText;
32
+ expect(getByText("warning")).toBeTruthy();
33
+ expect(getByText("warning-alert-text")).toBeTruthy();
34
+ });
35
+ test("Error alert renders with correct text", function () {
36
+ var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Alert["default"], {
37
+ type: "error",
38
+ inlineText: "error-alert-text"
39
+ })),
40
+ getByText = _render4.getByText;
41
+ expect(getByText("error")).toBeTruthy();
42
+ expect(getByText("error-alert-text")).toBeTruthy();
43
+ });
44
+ test("Alert renders with correct children", function () {
45
+ var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Alert["default"], {
46
+ inlineText: "alert-text"
47
+ }, /*#__PURE__*/_react["default"].createElement("p", null, "sample-children"))),
48
+ getByText = _render5.getByText;
49
+ expect(getByText("alert-text")).toBeTruthy();
50
+ expect(getByText("sample-children")).toBeTruthy();
51
+ });
52
+ test("Calls correct function on close", function () {
53
+ var onClose = jest.fn();
54
+ var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Alert["default"], {
55
+ onClose: onClose,
56
+ inlineText: "info-alert-text"
57
+ })),
58
+ getByRole = _render6.getByRole;
59
+ var closeButton = getByRole("button");
60
+ _react2.fireEvent.click(closeButton);
61
+ expect(onClose).toHaveBeenCalled();
62
+ });
63
+ test("Modal alert calls correct function on close", function () {
64
+ var onClose = jest.fn();
65
+ var _render7 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Alert["default"], {
66
+ onClose: onClose,
67
+ mode: "modal",
68
+ inlineText: "info-alert-text"
69
+ })),
70
+ getByRole = _render7.getByRole;
71
+ var closeButton = getByRole("button");
72
+ _react2.fireEvent.click(closeButton);
73
+ expect(onClose).toHaveBeenCalled();
74
+ });
75
+ });
@@ -0,0 +1,49 @@
1
+ /// <reference types="react" />
2
+ type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
+ type Margin = {
4
+ top?: Space;
5
+ bottom?: Space;
6
+ left?: Space;
7
+ right?: Space;
8
+ };
9
+ type Props = {
10
+ /**
11
+ * Uses on of the available alert types.
12
+ */
13
+ type?: "info" | "confirm" | "warning" | "error";
14
+ /**
15
+ * Uses on of the available alert modes:
16
+ * 'inline': If onClose function is received, close button will be visible and the function will be executed when it's clicked.
17
+ * There is no overlay layer. Position should be decided by the user.
18
+ * 'modal': The alert will be displayed in the middle of the screen with an overlay layer behind.
19
+ * The onClose function will be executed when the X button or the overlay is clicked. d
20
+ * The user has the responsibility of hiding the modal in the onClose function, otherwise the modal will remain visible.
21
+ */
22
+ mode?: "inline" | "modal";
23
+ /**
24
+ * Text to display after icon and alert type and before content.
25
+ */
26
+ inlineText?: string;
27
+ /**
28
+ * This function will be called when the user clicks the close button. If there is no function we should close the alert by default.
29
+ */
30
+ onClose?: () => void;
31
+ /**
32
+ * The details section of the alert. Can be used to render custom content in this area.
33
+ */
34
+ children?: React.ReactNode;
35
+ /**
36
+ * Size of the margin to be applied to the component ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
37
+ * You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different margin sizes.
38
+ */
39
+ margin?: Space | Margin;
40
+ /**
41
+ * Size of the component.
42
+ */
43
+ size?: "small" | "medium" | "large" | "fillParent" | "fitContent";
44
+ /**
45
+ * Value of the tabindex attribute applied to the close button.
46
+ */
47
+ tabIndex?: number;
48
+ };
49
+ export default Props;
package/alert/types.js ADDED
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -0,0 +1,129 @@
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 _axeHelper = require("../../test/accessibility/axe-helper.js");
9
+ var _Badge = _interopRequireDefault(require("./Badge.tsx"));
10
+ var _Flex = _interopRequireDefault(require("../flex/Flex.tsx"));
11
+ var icon = /*#__PURE__*/_react["default"].createElement("svg", {
12
+ width: "24",
13
+ height: "24",
14
+ viewBox: "0 0 24 24",
15
+ xmlns: "http://www.w3.org/2000/svg",
16
+ fill: "currentColor"
17
+ }, /*#__PURE__*/_react["default"].createElement("path", {
18
+ d: "M11 17H13V11H11V17ZM12 2C6.48 2 2 6.48 2 12C2 17.52 6.48 22 12 22C17.52 22 22 17.52 22 12C22 6.48 17.52 2 12 2ZM12 20C7.59 20 4 16.41 4 12C4 7.59 7.59 4 12 4C16.41 4 20 7.59 20 12C20 16.41 16.41 20 12 20ZM11 9H13V7H11V9Z"
19
+ }), /*#__PURE__*/_react["default"].createElement("path", {
20
+ d: "M11 7H13V9H11V7ZM11 11H13V17H11V11Z"
21
+ }), /*#__PURE__*/_react["default"].createElement("path", {
22
+ d: "M12 2C6.48 2 2 6.48 2 12C2 17.52 6.48 22 12 22C17.52 22 22 17.52 22 12C22 6.48 17.52 2 12 2ZM12 20C7.59 20 4 16.41 4 12C4 7.59 7.59 4 12 4C16.41 4 20 7.59 20 12C20 16.41 16.41 20 12 20Z"
23
+ }));
24
+ describe("Badge component accessibility tests", function () {
25
+ it("Should not have basic accessibility issues for contextual mode", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
26
+ var _render, container, results;
27
+ return _regenerator["default"].wrap(function _callee$(_context) {
28
+ while (1) switch (_context.prev = _context.next) {
29
+ case 0:
30
+ _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Flex["default"], null, /*#__PURE__*/_react["default"].createElement(_Badge["default"], {
31
+ color: "blue",
32
+ mode: "contextual",
33
+ label: "Label",
34
+ size: "small",
35
+ icon: icon,
36
+ title: "Badge1"
37
+ }), /*#__PURE__*/_react["default"].createElement(_Badge["default"], {
38
+ color: "green",
39
+ mode: "contextual",
40
+ label: "Label",
41
+ size: "small",
42
+ icon: icon,
43
+ title: "Badge1"
44
+ }), /*#__PURE__*/_react["default"].createElement(_Badge["default"], {
45
+ color: "grey",
46
+ mode: "contextual",
47
+ label: "Label",
48
+ size: "small",
49
+ icon: icon,
50
+ title: "Badge1"
51
+ }), /*#__PURE__*/_react["default"].createElement(_Badge["default"], {
52
+ color: "orange",
53
+ mode: "contextual",
54
+ label: "Label",
55
+ size: "small",
56
+ icon: icon,
57
+ title: "Badge1"
58
+ }), /*#__PURE__*/_react["default"].createElement(_Badge["default"], {
59
+ color: "purple",
60
+ mode: "contextual",
61
+ label: "Label",
62
+ size: "small",
63
+ icon: icon,
64
+ title: "Badge1"
65
+ }), /*#__PURE__*/_react["default"].createElement(_Badge["default"], {
66
+ color: "red",
67
+ mode: "contextual",
68
+ label: "Label",
69
+ size: "small",
70
+ icon: icon,
71
+ title: "Badge1"
72
+ }), /*#__PURE__*/_react["default"].createElement(_Badge["default"], {
73
+ color: "yellow",
74
+ mode: "contextual",
75
+ label: "Label",
76
+ size: "small",
77
+ icon: icon,
78
+ title: "Badge1"
79
+ }))), container = _render.container;
80
+ _context.next = 3;
81
+ return (0, _axeHelper.axe)(container);
82
+ case 3:
83
+ results = _context.sent;
84
+ expect(results).toHaveNoViolations();
85
+ case 5:
86
+ case "end":
87
+ return _context.stop();
88
+ }
89
+ }, _callee);
90
+ })));
91
+ it("Should not have basic accessibility issues for notification mode", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2() {
92
+ var _render2, container, results;
93
+ return _regenerator["default"].wrap(function _callee2$(_context2) {
94
+ while (1) switch (_context2.prev = _context2.next) {
95
+ case 0:
96
+ _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Flex["default"], null, /*#__PURE__*/_react["default"].createElement(_Badge["default"], {
97
+ mode: "notification",
98
+ label: 100,
99
+ size: "large",
100
+ icon: icon,
101
+ notificationLimit: 99,
102
+ title: "Badge2"
103
+ }), /*#__PURE__*/_react["default"].createElement(_Badge["default"], {
104
+ mode: "notification",
105
+ label: 50,
106
+ size: "large",
107
+ icon: icon,
108
+ notificationLimit: 99,
109
+ title: "Badge2"
110
+ }), /*#__PURE__*/_react["default"].createElement(_Badge["default"], {
111
+ mode: "notification",
112
+ label: 1000000,
113
+ size: "large",
114
+ icon: icon,
115
+ notificationLimit: 99999999,
116
+ title: "Badge2"
117
+ }))), container = _render2.container;
118
+ _context2.next = 3;
119
+ return (0, _axeHelper.axe)(container);
120
+ case 3:
121
+ results = _context2.sent;
122
+ expect(results).toHaveNoViolations();
123
+ case 5:
124
+ case "end":
125
+ return _context2.stop();
126
+ }
127
+ }, _callee2);
128
+ })));
129
+ });
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import BadgePropsType from "./types";
3
+ declare const DxcBadge: ({ label, title, mode, color, icon, notificationLimit, size, }: BadgePropsType) => JSX.Element;
4
+ export default DxcBadge;
package/badge/Badge.js ADDED
@@ -0,0 +1,161 @@
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 _Flex = _interopRequireDefault(require("../flex/Flex"));
12
+ var _coreTokens = _interopRequireDefault(require("../common/coreTokens"));
13
+ var _Icon = _interopRequireDefault(require("../icon/Icon"));
14
+ var _templateObject, _templateObject2, _templateObject3;
15
+ var contextualColorMap = {
16
+ grey: {
17
+ background: _coreTokens["default"].color_grey_200,
18
+ text: _coreTokens["default"].color_grey_900
19
+ },
20
+ blue: {
21
+ background: _coreTokens["default"].color_blue_200,
22
+ text: _coreTokens["default"].color_blue_900
23
+ },
24
+ green: {
25
+ background: _coreTokens["default"].color_green_200,
26
+ text: _coreTokens["default"].color_green_900
27
+ },
28
+ orange: {
29
+ background: _coreTokens["default"].color_orange_200,
30
+ text: _coreTokens["default"].color_orange_900
31
+ },
32
+ red: {
33
+ background: _coreTokens["default"].color_red_200,
34
+ text: _coreTokens["default"].color_red_900
35
+ },
36
+ yellow: {
37
+ background: _coreTokens["default"].color_yellow_200,
38
+ text: _coreTokens["default"].color_yellow_900
39
+ },
40
+ purple: {
41
+ background: _coreTokens["default"].color_purple_200,
42
+ text: _coreTokens["default"].color_purple_900
43
+ }
44
+ };
45
+ var sizeMap = {
46
+ small: {
47
+ height: "20px",
48
+ width: "20px",
49
+ minWidth: "20px",
50
+ fontSize: _coreTokens["default"].type_scale_01,
51
+ borderRadius: _coreTokens["default"].spacing_12,
52
+ iconSize: "14px",
53
+ padding: {
54
+ contextual: "".concat(_coreTokens["default"].spacing_4),
55
+ notification: "".concat(_coreTokens["default"].spacing_0, " ").concat(_coreTokens["default"].spacing_4)
56
+ }
57
+ },
58
+ medium: {
59
+ height: "24px",
60
+ width: "24px",
61
+ minWidth: "24px",
62
+ fontSize: _coreTokens["default"].type_scale_02,
63
+ borderRadius: _coreTokens["default"].spacing_12,
64
+ iconSize: "16px",
65
+ padding: {
66
+ contextual: "".concat(_coreTokens["default"].spacing_4, " ").concat(_coreTokens["default"].spacing_8),
67
+ notification: "".concat(_coreTokens["default"].spacing_0, " ").concat(_coreTokens["default"].spacing_4)
68
+ }
69
+ },
70
+ large: {
71
+ height: "32px",
72
+ width: "32px",
73
+ minWidth: "32px",
74
+ fontSize: _coreTokens["default"].type_scale_04,
75
+ borderRadius: _coreTokens["default"].spacing_24,
76
+ iconSize: "24px",
77
+ padding: {
78
+ contextual: "".concat(_coreTokens["default"].spacing_4, " ").concat(_coreTokens["default"].spacing_8),
79
+ notification: "".concat(_coreTokens["default"].spacing_0, " ").concat(_coreTokens["default"].spacing_8)
80
+ }
81
+ }
82
+ };
83
+ var Label = function Label(_ref) {
84
+ var label = _ref.label,
85
+ notificationLimit = _ref.notificationLimit,
86
+ size = _ref.size;
87
+ return /*#__PURE__*/_react["default"].createElement(LabelContainer, {
88
+ size: size
89
+ }, typeof label === "number" ? label > notificationLimit ? "+" + notificationLimit : label : label);
90
+ };
91
+ var DxcBadge = function DxcBadge(_ref2) {
92
+ var label = _ref2.label,
93
+ title = _ref2.title,
94
+ _ref2$mode = _ref2.mode,
95
+ mode = _ref2$mode === void 0 ? "contextual" : _ref2$mode,
96
+ _ref2$color = _ref2.color,
97
+ color = _ref2$color === void 0 ? "grey" : _ref2$color,
98
+ icon = _ref2.icon,
99
+ _ref2$notificationLim = _ref2.notificationLimit,
100
+ notificationLimit = _ref2$notificationLim === void 0 ? 99 : _ref2$notificationLim,
101
+ _ref2$size = _ref2.size,
102
+ size = _ref2$size === void 0 ? "medium" : _ref2$size;
103
+ return /*#__PURE__*/_react["default"].createElement(BadgeContainer, {
104
+ label: label,
105
+ mode: mode,
106
+ color: mode === "contextual" && color || undefined,
107
+ size: size,
108
+ title: title,
109
+ "aria-label": title
110
+ }, mode === "contextual" && /*#__PURE__*/_react["default"].createElement(_Flex["default"], {
111
+ gap: "0.125rem",
112
+ alignItems: "center"
113
+ }, icon && /*#__PURE__*/_react["default"].createElement(IconContainer, {
114
+ size: size
115
+ }, typeof icon === "string" ? /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
116
+ icon: icon
117
+ }) : icon), /*#__PURE__*/_react["default"].createElement(Label, {
118
+ label: label,
119
+ notificationLimit: notificationLimit,
120
+ size: size
121
+ })) || /*#__PURE__*/_react["default"].createElement(Label, {
122
+ label: label,
123
+ notificationLimit: notificationLimit,
124
+ size: size
125
+ }));
126
+ };
127
+ var getColor = function getColor(mode, color) {
128
+ return mode === "contextual" ? contextualColorMap[color].text : _coreTokens["default"].color_white;
129
+ };
130
+ var getBackgroundColor = function getBackgroundColor(mode, color) {
131
+ return mode === "contextual" ? contextualColorMap[color].background : _coreTokens["default"].color_red_700;
132
+ };
133
+ var getPadding = function getPadding(mode, size) {
134
+ return mode === "contextual" ? sizeMap[size].padding.contextual : sizeMap[size].padding.notification;
135
+ };
136
+ var BadgeContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n color: ", ";\n background-color: ", ";\n border-radius: ", ";\n width: ", ";\n min-width: ", ";\n height: ", ";\n padding: ", ";\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n"])), function (props) {
137
+ return getColor(props.mode, props.color);
138
+ }, function (props) {
139
+ return getBackgroundColor(props.mode, props.color);
140
+ }, function (props) {
141
+ return sizeMap[props.size].borderRadius;
142
+ }, function (props) {
143
+ return !props.label && props.mode === "notification" ? sizeMap[props.size].width : "fit-content";
144
+ }, function (props) {
145
+ return props.mode === "notification" && sizeMap[props.size].minWidth;
146
+ }, function (props) {
147
+ return sizeMap[props.size].height;
148
+ }, function (props) {
149
+ return props.label ? getPadding(props.mode, props.size) : "";
150
+ });
151
+ var IconContainer = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n font-size: ", ";\n\n svg {\n height: ", ";\n width: ", ";\n }\n"])), function (props) {
152
+ return sizeMap[props.size].iconSize;
153
+ }, function (props) {
154
+ return sizeMap[props.size].iconSize;
155
+ }, function (props) {
156
+ return sizeMap[props.size].iconSize;
157
+ });
158
+ var LabelContainer = _styledComponents["default"].span(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-size: ", ";\n font-weight: ", ";\n white-space: nowrap;\n"])), _coreTokens["default"].type_sans, function (props) {
159
+ return sizeMap[props.size].fontSize;
160
+ }, _coreTokens["default"].type_semibold);
161
+ var _default = exports["default"] = DxcBadge;