@dxc-technology/halstack-react 0.0.0-c5f6a2f → 0.0.0-c667373

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 (723) hide show
  1. package/BackgroundColorContext.d.ts +1 -0
  2. package/BackgroundColorContext.js +30 -0
  3. package/HalstackContext.d.ts +1280 -0
  4. package/HalstackContext.js +320 -0
  5. package/README.md +28 -47
  6. package/accordion/Accordion.accessibility.test.d.ts +1 -0
  7. package/accordion/Accordion.accessibility.test.js +71 -0
  8. package/accordion/Accordion.d.ts +4 -0
  9. package/accordion/Accordion.js +168 -0
  10. package/accordion/Accordion.stories.tsx +241 -0
  11. package/accordion/Accordion.test.d.ts +1 -0
  12. package/accordion/Accordion.test.js +56 -0
  13. package/accordion/types.d.ts +57 -0
  14. package/accordion/types.js +5 -0
  15. package/accordion-group/AccordionGroup.accessibility.test.d.ts +1 -0
  16. package/accordion-group/AccordionGroup.accessibility.test.js +82 -0
  17. package/accordion-group/AccordionGroup.d.ts +7 -0
  18. package/accordion-group/AccordionGroup.js +101 -0
  19. package/accordion-group/AccordionGroup.stories.tsx +252 -0
  20. package/accordion-group/AccordionGroup.test.d.ts +1 -0
  21. package/accordion-group/AccordionGroup.test.js +94 -0
  22. package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
  23. package/accordion-group/AccordionGroupAccordion.js +31 -0
  24. package/accordion-group/AccordionGroupContext.d.ts +3 -0
  25. package/accordion-group/AccordionGroupContext.js +8 -0
  26. package/accordion-group/types.d.ts +67 -0
  27. package/accordion-group/types.js +5 -0
  28. package/action-icon/ActionIcon.accessibility.test.d.ts +1 -0
  29. package/action-icon/ActionIcon.accessibility.test.js +63 -0
  30. package/action-icon/ActionIcon.d.ts +4 -0
  31. package/action-icon/ActionIcon.js +48 -0
  32. package/action-icon/ActionIcon.stories.tsx +41 -0
  33. package/action-icon/ActionIcon.test.d.ts +1 -0
  34. package/action-icon/ActionIcon.test.js +64 -0
  35. package/action-icon/types.d.ts +26 -0
  36. package/action-icon/types.js +5 -0
  37. package/alert/Alert.accessibility.test.d.ts +1 -0
  38. package/alert/Alert.accessibility.test.js +95 -0
  39. package/alert/Alert.d.ts +4 -0
  40. package/alert/Alert.js +203 -0
  41. package/alert/Alert.stories.tsx +198 -0
  42. package/alert/Alert.test.d.ts +1 -0
  43. package/alert/Alert.test.js +75 -0
  44. package/alert/types.d.ts +49 -0
  45. package/alert/types.js +5 -0
  46. package/badge/Badge.accessibility.test.d.ts +1 -0
  47. package/badge/Badge.accessibility.test.js +129 -0
  48. package/badge/Badge.d.ts +4 -0
  49. package/badge/Badge.js +161 -0
  50. package/badge/Badge.stories.tsx +210 -0
  51. package/badge/Badge.test.d.ts +1 -0
  52. package/badge/Badge.test.js +30 -0
  53. package/badge/types.d.ts +54 -0
  54. package/badge/types.js +5 -0
  55. package/bar-chart/BarChart.d.ts +4 -0
  56. package/bar-chart/BarChart.js +152 -0
  57. package/bar-chart/BarChart.stories.tsx +281 -0
  58. package/bar-chart/BarChart.test.d.ts +1 -0
  59. package/bar-chart/BarChart.test.js +194 -0
  60. package/bar-chart/theme.d.ts +3 -0
  61. package/bar-chart/theme.js +31 -0
  62. package/bar-chart/types.d.ts +118 -0
  63. package/bar-chart/types.js +5 -0
  64. package/bleed/Bleed.d.ts +3 -0
  65. package/bleed/Bleed.js +43 -0
  66. package/bleed/Bleed.stories.tsx +341 -0
  67. package/bleed/types.d.ts +37 -0
  68. package/bleed/types.js +5 -0
  69. package/box/Box.accessibility.test.d.ts +1 -0
  70. package/box/Box.accessibility.test.js +33 -0
  71. package/box/Box.d.ts +4 -0
  72. package/box/Box.js +75 -0
  73. package/box/Box.stories.tsx +119 -0
  74. package/box/Box.test.d.ts +1 -0
  75. package/box/Box.test.js +13 -0
  76. package/box/types.d.ts +32 -0
  77. package/box/types.js +5 -0
  78. package/breadcrumbs/Breadcrumbs.accessibility.test.d.ts +1 -0
  79. package/breadcrumbs/Breadcrumbs.accessibility.test.js +96 -0
  80. package/breadcrumbs/Breadcrumbs.d.ts +4 -0
  81. package/breadcrumbs/Breadcrumbs.js +79 -0
  82. package/breadcrumbs/Breadcrumbs.stories.tsx +194 -0
  83. package/breadcrumbs/Breadcrumbs.test.d.ts +1 -0
  84. package/breadcrumbs/Breadcrumbs.test.js +168 -0
  85. package/breadcrumbs/Item.d.ts +4 -0
  86. package/breadcrumbs/Item.js +52 -0
  87. package/breadcrumbs/dropdownTheme.d.ts +53 -0
  88. package/breadcrumbs/dropdownTheme.js +62 -0
  89. package/breadcrumbs/types.d.ts +40 -0
  90. package/breadcrumbs/types.js +5 -0
  91. package/bulleted-list/BulletedList.accessibility.test.d.ts +1 -0
  92. package/bulleted-list/BulletedList.accessibility.test.js +119 -0
  93. package/bulleted-list/BulletedList.d.ts +7 -0
  94. package/bulleted-list/BulletedList.js +92 -0
  95. package/bulleted-list/BulletedList.stories.tsx +115 -0
  96. package/bulleted-list/types.d.ts +38 -0
  97. package/bulleted-list/types.js +5 -0
  98. package/button/Button.accessibility.test.d.ts +1 -0
  99. package/button/Button.accessibility.test.js +127 -0
  100. package/button/Button.d.ts +4 -0
  101. package/button/Button.js +121 -0
  102. package/button/Button.stories.tsx +325 -0
  103. package/button/Button.test.d.ts +1 -0
  104. package/button/Button.test.js +38 -0
  105. package/button/types.d.ts +57 -0
  106. package/button/types.js +5 -0
  107. package/card/Card.accessibility.test.d.ts +1 -0
  108. package/card/Card.accessibility.test.js +36 -0
  109. package/card/Card.d.ts +4 -0
  110. package/card/Card.js +121 -0
  111. package/card/Card.stories.tsx +171 -0
  112. package/card/Card.test.d.ts +1 -0
  113. package/card/Card.test.js +39 -0
  114. package/card/types.d.ts +62 -0
  115. package/card/types.js +5 -0
  116. package/checkbox/Checkbox.accessibility.test.d.ts +1 -0
  117. package/checkbox/Checkbox.accessibility.test.js +87 -0
  118. package/checkbox/Checkbox.d.ts +4 -0
  119. package/checkbox/Checkbox.js +212 -0
  120. package/checkbox/Checkbox.stories.tsx +222 -0
  121. package/checkbox/Checkbox.test.d.ts +1 -0
  122. package/checkbox/Checkbox.test.js +199 -0
  123. package/checkbox/types.d.ts +72 -0
  124. package/checkbox/types.js +5 -0
  125. package/chip/Chip.accessibility.test.d.ts +1 -0
  126. package/chip/Chip.accessibility.test.js +67 -0
  127. package/chip/Chip.d.ts +4 -0
  128. package/chip/Chip.js +126 -0
  129. package/chip/Chip.stories.tsx +195 -0
  130. package/chip/Chip.test.d.ts +1 -0
  131. package/chip/Chip.test.js +41 -0
  132. package/chip/types.d.ts +45 -0
  133. package/chip/types.js +5 -0
  134. package/common/coreTokens.d.ts +236 -0
  135. package/common/coreTokens.js +183 -0
  136. package/common/utils.d.ts +1 -0
  137. package/{dist/common → common}/utils.js +6 -12
  138. package/common/variables.d.ts +1432 -0
  139. package/common/variables.js +1298 -0
  140. package/container/Container.d.ts +4 -0
  141. package/container/Container.js +194 -0
  142. package/container/Container.stories.tsx +214 -0
  143. package/container/types.d.ts +176 -0
  144. package/container/types.js +5 -0
  145. package/contextual-menu/ContextualMenu.accessibility.test.d.ts +1 -0
  146. package/contextual-menu/ContextualMenu.accessibility.test.js +98 -0
  147. package/contextual-menu/ContextualMenu.d.ts +5 -0
  148. package/contextual-menu/ContextualMenu.js +136 -0
  149. package/contextual-menu/ContextualMenu.stories.tsx +231 -0
  150. package/contextual-menu/ContextualMenu.test.d.ts +1 -0
  151. package/contextual-menu/ContextualMenu.test.js +247 -0
  152. package/contextual-menu/GroupItem.d.ts +4 -0
  153. package/contextual-menu/GroupItem.js +67 -0
  154. package/contextual-menu/ItemAction.d.ts +4 -0
  155. package/contextual-menu/ItemAction.js +88 -0
  156. package/contextual-menu/MenuItem.d.ts +4 -0
  157. package/contextual-menu/MenuItem.js +29 -0
  158. package/contextual-menu/SingleItem.d.ts +4 -0
  159. package/contextual-menu/SingleItem.js +38 -0
  160. package/contextual-menu/types.d.ts +65 -0
  161. package/contextual-menu/types.js +5 -0
  162. package/date-input/Calendar.d.ts +4 -0
  163. package/date-input/Calendar.js +230 -0
  164. package/date-input/DateInput.accessibility.test.d.ts +1 -0
  165. package/date-input/DateInput.accessibility.test.js +229 -0
  166. package/date-input/DateInput.d.ts +4 -0
  167. package/date-input/DateInput.js +228 -0
  168. package/date-input/DateInput.stories.tsx +291 -0
  169. package/date-input/DateInput.test.d.ts +1 -0
  170. package/date-input/DateInput.test.js +808 -0
  171. package/date-input/DatePicker.d.ts +4 -0
  172. package/date-input/DatePicker.js +121 -0
  173. package/date-input/YearPicker.d.ts +4 -0
  174. package/date-input/YearPicker.js +105 -0
  175. package/date-input/types.d.ts +164 -0
  176. package/date-input/types.js +5 -0
  177. package/dialog/Dialog.accessibility.test.d.ts +1 -0
  178. package/dialog/Dialog.accessibility.test.js +69 -0
  179. package/dialog/Dialog.d.ts +4 -0
  180. package/dialog/Dialog.js +93 -0
  181. package/dialog/Dialog.stories.tsx +369 -0
  182. package/dialog/Dialog.test.d.ts +1 -0
  183. package/dialog/Dialog.test.js +370 -0
  184. package/dialog/types.d.ts +36 -0
  185. package/dialog/types.js +5 -0
  186. package/divider/Divider.accessibility.test.d.ts +1 -0
  187. package/divider/Divider.accessibility.test.js +33 -0
  188. package/divider/Divider.d.ts +4 -0
  189. package/divider/Divider.js +36 -0
  190. package/divider/Divider.stories.tsx +224 -0
  191. package/divider/Divider.test.d.ts +1 -0
  192. package/divider/Divider.test.js +38 -0
  193. package/divider/types.d.ts +21 -0
  194. package/divider/types.js +5 -0
  195. package/dropdown/Dropdown.accessibility.test.d.ts +1 -0
  196. package/dropdown/Dropdown.accessibility.test.js +183 -0
  197. package/dropdown/Dropdown.d.ts +4 -0
  198. package/dropdown/Dropdown.js +320 -0
  199. package/dropdown/Dropdown.stories.tsx +427 -0
  200. package/dropdown/Dropdown.test.d.ts +1 -0
  201. package/dropdown/Dropdown.test.js +628 -0
  202. package/dropdown/DropdownMenu.d.ts +4 -0
  203. package/dropdown/DropdownMenu.js +63 -0
  204. package/dropdown/DropdownMenuItem.d.ts +4 -0
  205. package/dropdown/DropdownMenuItem.js +71 -0
  206. package/dropdown/types.d.ts +96 -0
  207. package/dropdown/types.js +5 -0
  208. package/file-input/FileInput.accessibility.test.d.ts +1 -0
  209. package/file-input/FileInput.accessibility.test.js +167 -0
  210. package/file-input/FileInput.d.ts +4 -0
  211. package/file-input/FileInput.js +438 -0
  212. package/file-input/FileInput.stories.tsx +618 -0
  213. package/file-input/FileInput.test.d.ts +1 -0
  214. package/file-input/FileInput.test.js +404 -0
  215. package/file-input/FileItem.d.ts +4 -0
  216. package/file-input/FileItem.js +125 -0
  217. package/file-input/types.d.ts +125 -0
  218. package/file-input/types.js +5 -0
  219. package/flex/Flex.d.ts +4 -0
  220. package/flex/Flex.js +57 -0
  221. package/flex/Flex.stories.tsx +112 -0
  222. package/flex/types.d.ts +97 -0
  223. package/flex/types.js +5 -0
  224. package/footer/Footer.accessibility.test.d.ts +1 -0
  225. package/footer/Footer.accessibility.test.js +125 -0
  226. package/footer/Footer.d.ts +4 -0
  227. package/footer/Footer.js +140 -0
  228. package/footer/Footer.stories.tsx +208 -0
  229. package/footer/Footer.test.d.ts +1 -0
  230. package/footer/Footer.test.js +85 -0
  231. package/footer/Icons.d.ts +3 -0
  232. package/footer/Icons.js +108 -0
  233. package/footer/types.d.ts +64 -0
  234. package/footer/types.js +5 -0
  235. package/grid/Grid.d.ts +7 -0
  236. package/grid/Grid.js +76 -0
  237. package/grid/Grid.stories.tsx +221 -0
  238. package/grid/types.d.ts +115 -0
  239. package/grid/types.js +5 -0
  240. package/header/Header.accessibility.test.d.ts +1 -0
  241. package/header/Header.accessibility.test.js +94 -0
  242. package/header/Header.d.ts +8 -0
  243. package/header/Header.js +210 -0
  244. package/header/Header.stories.tsx +267 -0
  245. package/header/Header.test.d.ts +1 -0
  246. package/header/Header.test.js +66 -0
  247. package/header/Icons.d.ts +2 -0
  248. package/header/Icons.js +24 -0
  249. package/header/types.d.ts +33 -0
  250. package/header/types.js +5 -0
  251. package/heading/Heading.accessibility.test.d.ts +1 -0
  252. package/heading/Heading.accessibility.test.js +33 -0
  253. package/heading/Heading.d.ts +4 -0
  254. package/{dist/heading → heading}/Heading.js +34 -119
  255. package/heading/Heading.stories.tsx +54 -0
  256. package/heading/Heading.test.d.ts +1 -0
  257. package/heading/Heading.test.js +156 -0
  258. package/heading/types.d.ts +33 -0
  259. package/heading/types.js +5 -0
  260. package/icon/Icon.accessibility.test.d.ts +1 -0
  261. package/icon/Icon.accessibility.test.js +30 -0
  262. package/icon/Icon.d.ts +4 -0
  263. package/icon/Icon.js +33 -0
  264. package/icon/Icon.stories.tsx +28 -0
  265. package/icon/types.d.ts +4 -0
  266. package/icon/types.js +5 -0
  267. package/image/Image.accessibility.test.d.ts +1 -0
  268. package/image/Image.accessibility.test.js +56 -0
  269. package/image/Image.d.ts +4 -0
  270. package/image/Image.js +70 -0
  271. package/image/Image.stories.tsx +129 -0
  272. package/image/types.d.ts +72 -0
  273. package/image/types.js +5 -0
  274. package/inset/Inset.d.ts +3 -0
  275. package/inset/Inset.js +43 -0
  276. package/inset/Inset.stories.tsx +230 -0
  277. package/inset/types.d.ts +37 -0
  278. package/inset/types.js +5 -0
  279. package/layout/ApplicationLayout.d.ts +20 -0
  280. package/layout/ApplicationLayout.js +137 -0
  281. package/layout/ApplicationLayout.stories.tsx +162 -0
  282. package/layout/Icons.d.ts +7 -0
  283. package/layout/Icons.js +48 -0
  284. package/layout/types.d.ts +41 -0
  285. package/layout/types.js +5 -0
  286. package/link/Link.accessibility.test.d.ts +1 -0
  287. package/link/Link.accessibility.test.js +108 -0
  288. package/link/Link.d.ts +4 -0
  289. package/link/Link.js +117 -0
  290. package/link/Link.stories.tsx +253 -0
  291. package/link/Link.test.d.ts +1 -0
  292. package/link/Link.test.js +63 -0
  293. package/link/types.d.ts +54 -0
  294. package/link/types.js +5 -0
  295. package/main.d.ts +50 -0
  296. package/{dist/main.js → main.js} +168 -115
  297. package/nav-tabs/NavTabs.accessibility.test.d.ts +1 -0
  298. package/nav-tabs/NavTabs.accessibility.test.js +44 -0
  299. package/nav-tabs/NavTabs.d.ts +7 -0
  300. package/nav-tabs/NavTabs.js +108 -0
  301. package/nav-tabs/NavTabs.stories.tsx +294 -0
  302. package/nav-tabs/NavTabs.test.d.ts +1 -0
  303. package/nav-tabs/NavTabs.test.js +77 -0
  304. package/nav-tabs/NavTabsContext.d.ts +3 -0
  305. package/nav-tabs/NavTabsContext.js +8 -0
  306. package/nav-tabs/Tab.d.ts +4 -0
  307. package/nav-tabs/Tab.js +117 -0
  308. package/nav-tabs/types.d.ts +52 -0
  309. package/nav-tabs/types.js +5 -0
  310. package/number-input/NumberInput.accessibility.test.d.ts +1 -0
  311. package/number-input/NumberInput.accessibility.test.js +227 -0
  312. package/number-input/NumberInput.d.ts +4 -0
  313. package/number-input/NumberInput.js +89 -0
  314. package/number-input/NumberInput.stories.tsx +126 -0
  315. package/number-input/NumberInput.test.d.ts +1 -0
  316. package/number-input/NumberInput.test.js +988 -0
  317. package/number-input/NumberInputContext.d.ts +3 -0
  318. package/number-input/NumberInputContext.js +8 -0
  319. package/number-input/types.d.ts +136 -0
  320. package/number-input/types.js +5 -0
  321. package/package.json +70 -54
  322. package/paginator/Paginator.accessibility.test.d.ts +1 -0
  323. package/paginator/Paginator.accessibility.test.js +78 -0
  324. package/paginator/Paginator.d.ts +4 -0
  325. package/paginator/Paginator.js +138 -0
  326. package/paginator/Paginator.stories.tsx +87 -0
  327. package/paginator/Paginator.test.d.ts +1 -0
  328. package/paginator/Paginator.test.js +334 -0
  329. package/paginator/types.d.ts +38 -0
  330. package/paginator/types.js +5 -0
  331. package/paragraph/Paragraph.accessibility.test.d.ts +1 -0
  332. package/paragraph/Paragraph.accessibility.test.js +28 -0
  333. package/paragraph/Paragraph.d.ts +5 -0
  334. package/paragraph/Paragraph.js +22 -0
  335. package/paragraph/Paragraph.stories.tsx +27 -0
  336. package/password-input/PasswordInput.accessibility.test.d.ts +1 -0
  337. package/password-input/PasswordInput.accessibility.test.js +152 -0
  338. package/password-input/PasswordInput.d.ts +4 -0
  339. package/password-input/PasswordInput.js +100 -0
  340. package/password-input/PasswordInput.stories.tsx +108 -0
  341. package/password-input/PasswordInput.test.d.ts +1 -0
  342. package/password-input/PasswordInput.test.js +197 -0
  343. package/password-input/types.d.ts +111 -0
  344. package/password-input/types.js +5 -0
  345. package/progress-bar/ProgressBar.accessibility.test.d.ts +1 -0
  346. package/progress-bar/ProgressBar.accessibility.test.js +35 -0
  347. package/progress-bar/ProgressBar.d.ts +4 -0
  348. package/progress-bar/ProgressBar.js +146 -0
  349. package/progress-bar/ProgressBar.stories.tsx +93 -0
  350. package/progress-bar/ProgressBar.test.d.ts +1 -0
  351. package/progress-bar/ProgressBar.test.js +93 -0
  352. package/progress-bar/types.d.ts +37 -0
  353. package/progress-bar/types.js +5 -0
  354. package/quick-nav/QuickNav.accessibility.test.d.ts +1 -0
  355. package/quick-nav/QuickNav.accessibility.test.js +57 -0
  356. package/quick-nav/QuickNav.d.ts +4 -0
  357. package/quick-nav/QuickNav.js +94 -0
  358. package/quick-nav/QuickNav.stories.tsx +356 -0
  359. package/quick-nav/types.d.ts +21 -0
  360. package/quick-nav/types.js +5 -0
  361. package/radio-group/Radio.d.ts +4 -0
  362. package/radio-group/Radio.js +121 -0
  363. package/radio-group/RadioGroup.accessibility.test.d.ts +1 -0
  364. package/radio-group/RadioGroup.accessibility.test.js +97 -0
  365. package/radio-group/RadioGroup.d.ts +4 -0
  366. package/radio-group/RadioGroup.js +233 -0
  367. package/radio-group/RadioGroup.stories.tsx +214 -0
  368. package/radio-group/RadioGroup.test.d.ts +1 -0
  369. package/radio-group/RadioGroup.test.js +754 -0
  370. package/radio-group/types.d.ts +114 -0
  371. package/radio-group/types.js +5 -0
  372. package/resultset-table/Icons.d.ts +7 -0
  373. package/resultset-table/Icons.js +47 -0
  374. package/resultset-table/ResultsetTable.accessibility.test.d.ts +1 -0
  375. package/resultset-table/ResultsetTable.accessibility.test.js +284 -0
  376. package/resultset-table/ResultsetTable.d.ts +7 -0
  377. package/resultset-table/ResultsetTable.js +195 -0
  378. package/resultset-table/ResultsetTable.stories.tsx +413 -0
  379. package/resultset-table/ResultsetTable.test.d.ts +1 -0
  380. package/resultset-table/ResultsetTable.test.js +450 -0
  381. package/resultset-table/types.d.ts +101 -0
  382. package/resultset-table/types.js +5 -0
  383. package/select/Listbox.d.ts +4 -0
  384. package/select/Listbox.js +151 -0
  385. package/select/Option.d.ts +4 -0
  386. package/select/Option.js +89 -0
  387. package/select/Select.accessibility.test.d.ts +1 -0
  388. package/select/Select.accessibility.test.js +227 -0
  389. package/select/Select.d.ts +4 -0
  390. package/select/Select.js +602 -0
  391. package/select/Select.stories.tsx +928 -0
  392. package/select/Select.test.d.ts +1 -0
  393. package/select/Select.test.js +2168 -0
  394. package/select/types.d.ts +209 -0
  395. package/select/types.js +5 -0
  396. package/sidenav/Sidenav.accessibility.test.d.ts +1 -0
  397. package/sidenav/Sidenav.accessibility.test.js +59 -0
  398. package/sidenav/Sidenav.d.ts +10 -0
  399. package/sidenav/Sidenav.js +201 -0
  400. package/sidenav/Sidenav.stories.tsx +277 -0
  401. package/sidenav/Sidenav.test.d.ts +1 -0
  402. package/sidenav/Sidenav.test.js +37 -0
  403. package/sidenav/SidenavContext.d.ts +5 -0
  404. package/sidenav/SidenavContext.js +13 -0
  405. package/sidenav/types.d.ts +76 -0
  406. package/sidenav/types.js +5 -0
  407. package/slider/Slider.accessibility.test.d.ts +1 -0
  408. package/slider/Slider.accessibility.test.js +103 -0
  409. package/slider/Slider.d.ts +4 -0
  410. package/slider/Slider.js +283 -0
  411. package/slider/Slider.stories.tsx +180 -0
  412. package/slider/Slider.test.d.ts +1 -0
  413. package/slider/Slider.test.js +256 -0
  414. package/slider/types.d.ts +86 -0
  415. package/slider/types.js +5 -0
  416. package/spinner/Spinner.accessibility.test.d.ts +1 -0
  417. package/spinner/Spinner.accessibility.test.js +96 -0
  418. package/spinner/Spinner.d.ts +4 -0
  419. package/spinner/Spinner.js +191 -0
  420. package/spinner/Spinner.stories.tsx +129 -0
  421. package/spinner/Spinner.test.d.ts +1 -0
  422. package/spinner/Spinner.test.js +55 -0
  423. package/spinner/types.d.ts +32 -0
  424. package/spinner/types.js +5 -0
  425. package/status-light/StatusLight.accessibility.test.d.ts +1 -0
  426. package/status-light/StatusLight.accessibility.test.js +157 -0
  427. package/status-light/StatusLight.d.ts +4 -0
  428. package/status-light/StatusLight.js +51 -0
  429. package/status-light/StatusLight.stories.tsx +74 -0
  430. package/status-light/StatusLight.test.d.ts +1 -0
  431. package/status-light/StatusLight.test.js +25 -0
  432. package/status-light/types.d.ts +17 -0
  433. package/status-light/types.js +5 -0
  434. package/switch/Switch.accessibility.test.d.ts +1 -0
  435. package/switch/Switch.accessibility.test.js +98 -0
  436. package/switch/Switch.d.ts +4 -0
  437. package/switch/Switch.js +211 -0
  438. package/switch/Switch.stories.tsx +149 -0
  439. package/switch/Switch.test.d.ts +1 -0
  440. package/switch/Switch.test.js +180 -0
  441. package/switch/types.d.ts +66 -0
  442. package/switch/types.js +5 -0
  443. package/table/DropdownTheme.js +62 -0
  444. package/table/Table.accessibility.test.d.ts +1 -0
  445. package/table/Table.accessibility.test.js +92 -0
  446. package/table/Table.d.ts +8 -0
  447. package/table/Table.js +161 -0
  448. package/table/Table.stories.tsx +663 -0
  449. package/table/Table.test.d.ts +1 -0
  450. package/table/Table.test.js +111 -0
  451. package/table/types.d.ts +49 -0
  452. package/table/types.js +5 -0
  453. package/tabs/Tab.d.ts +4 -0
  454. package/tabs/Tab.js +117 -0
  455. package/tabs/Tabs.accessibility.test.d.ts +1 -0
  456. package/tabs/Tabs.accessibility.test.js +56 -0
  457. package/tabs/Tabs.d.ts +4 -0
  458. package/tabs/Tabs.js +373 -0
  459. package/tabs/Tabs.stories.tsx +230 -0
  460. package/tabs/Tabs.test.d.ts +1 -0
  461. package/tabs/Tabs.test.js +276 -0
  462. package/tabs/types.d.ts +92 -0
  463. package/tabs/types.js +5 -0
  464. package/tag/Tag.accessibility.test.d.ts +1 -0
  465. package/tag/Tag.accessibility.test.js +69 -0
  466. package/tag/Tag.d.ts +4 -0
  467. package/tag/Tag.js +151 -0
  468. package/tag/Tag.stories.tsx +152 -0
  469. package/tag/Tag.test.d.ts +1 -0
  470. package/tag/Tag.test.js +41 -0
  471. package/tag/types.d.ts +69 -0
  472. package/tag/types.js +5 -0
  473. package/text-input/Suggestion.d.ts +4 -0
  474. package/text-input/Suggestion.js +67 -0
  475. package/text-input/Suggestions.d.ts +4 -0
  476. package/text-input/Suggestions.js +94 -0
  477. package/text-input/TextInput.accessibility.test.d.ts +1 -0
  478. package/text-input/TextInput.accessibility.test.js +320 -0
  479. package/text-input/TextInput.d.ts +4 -0
  480. package/text-input/TextInput.js +571 -0
  481. package/text-input/TextInput.stories.tsx +477 -0
  482. package/text-input/TextInput.test.d.ts +1 -0
  483. package/text-input/TextInput.test.js +1755 -0
  484. package/text-input/types.d.ts +205 -0
  485. package/text-input/types.js +5 -0
  486. package/textarea/Textarea.accessibility.test.d.ts +1 -0
  487. package/textarea/Textarea.accessibility.test.js +155 -0
  488. package/textarea/Textarea.d.ts +4 -0
  489. package/textarea/Textarea.js +235 -0
  490. package/textarea/Textarea.stories.tsx +174 -0
  491. package/textarea/Textarea.test.d.ts +1 -0
  492. package/textarea/Textarea.test.js +406 -0
  493. package/textarea/types.d.ts +141 -0
  494. package/textarea/types.js +5 -0
  495. package/toggle-group/ToggleGroup.accessibility.test.d.ts +1 -0
  496. package/toggle-group/ToggleGroup.accessibility.test.js +107 -0
  497. package/toggle-group/ToggleGroup.d.ts +4 -0
  498. package/toggle-group/ToggleGroup.js +199 -0
  499. package/toggle-group/ToggleGroup.stories.tsx +218 -0
  500. package/toggle-group/ToggleGroup.test.d.ts +1 -0
  501. package/toggle-group/ToggleGroup.test.js +137 -0
  502. package/toggle-group/types.d.ts +114 -0
  503. package/toggle-group/types.js +5 -0
  504. package/tooltip/Tooltip.accessibility.test.d.ts +1 -0
  505. package/tooltip/Tooltip.accessibility.test.js +144 -0
  506. package/tooltip/Tooltip.d.ts +4 -0
  507. package/tooltip/Tooltip.js +50 -0
  508. package/tooltip/Tooltip.stories.tsx +111 -0
  509. package/tooltip/Tooltip.test.d.ts +1 -0
  510. package/tooltip/Tooltip.test.js +112 -0
  511. package/tooltip/types.d.ts +16 -0
  512. package/tooltip/types.js +5 -0
  513. package/typography/Typography.accessibility.test.d.ts +1 -0
  514. package/typography/Typography.accessibility.test.js +339 -0
  515. package/typography/Typography.d.ts +4 -0
  516. package/typography/Typography.js +23 -0
  517. package/typography/Typography.stories.tsx +196 -0
  518. package/typography/Typography.test.js +23 -0
  519. package/typography/types.d.ts +18 -0
  520. package/typography/types.js +5 -0
  521. package/useTheme.d.ts +1168 -0
  522. package/{dist/useTheme.js → useTheme.js} +4 -11
  523. package/useTranslatedLabels.d.ts +96 -0
  524. package/useTranslatedLabels.js +14 -0
  525. package/utils/BaseTypography.d.ts +21 -0
  526. package/utils/BaseTypography.js +98 -0
  527. package/utils/FocusLock.d.ts +13 -0
  528. package/utils/FocusLock.js +125 -0
  529. package/wizard/Wizard.accessibility.test.d.ts +1 -0
  530. package/wizard/Wizard.accessibility.test.js +55 -0
  531. package/wizard/Wizard.d.ts +4 -0
  532. package/wizard/Wizard.js +239 -0
  533. package/wizard/Wizard.stories.tsx +272 -0
  534. package/wizard/Wizard.test.d.ts +1 -0
  535. package/wizard/Wizard.test.js +114 -0
  536. package/wizard/types.d.ts +64 -0
  537. package/wizard/types.js +5 -0
  538. package/babel.config.js +0 -8
  539. package/dist/BackgroundColorContext.js +0 -46
  540. package/dist/ThemeContext.js +0 -216
  541. package/dist/accordion/Accordion.js +0 -356
  542. package/dist/accordion/Accordion.stories.js +0 -207
  543. package/dist/accordion/readme.md +0 -96
  544. package/dist/accordion-group/AccordionGroup.js +0 -188
  545. package/dist/accordion-group/AccordionGroup.stories.js +0 -207
  546. package/dist/accordion-group/readme.md +0 -70
  547. package/dist/alert/Alert.js +0 -318
  548. package/dist/alert/Alert.stories.js +0 -158
  549. package/dist/alert/close.svg +0 -4
  550. package/dist/alert/error.svg +0 -4
  551. package/dist/alert/info.svg +0 -4
  552. package/dist/alert/readme.md +0 -43
  553. package/dist/alert/success.svg +0 -4
  554. package/dist/alert/warning.svg +0 -4
  555. package/dist/badge/Badge.js +0 -61
  556. package/dist/box/Box.js +0 -164
  557. package/dist/button/Button.js +0 -228
  558. package/dist/button/Button.stories.js +0 -224
  559. package/dist/button/readme.md +0 -93
  560. package/dist/card/Card.js +0 -247
  561. package/dist/checkbox/Checkbox.js +0 -233
  562. package/dist/checkbox/Checkbox.stories.js +0 -144
  563. package/dist/checkbox/readme.md +0 -116
  564. package/dist/chip/Chip.js +0 -223
  565. package/dist/common/OpenSans.css +0 -81
  566. package/dist/common/RequiredComponent.js +0 -40
  567. package/dist/common/fonts/OpenSans-Bold.ttf +0 -0
  568. package/dist/common/fonts/OpenSans-BoldItalic.ttf +0 -0
  569. package/dist/common/fonts/OpenSans-ExtraBold.ttf +0 -0
  570. package/dist/common/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  571. package/dist/common/fonts/OpenSans-Italic.ttf +0 -0
  572. package/dist/common/fonts/OpenSans-Light.ttf +0 -0
  573. package/dist/common/fonts/OpenSans-LightItalic.ttf +0 -0
  574. package/dist/common/fonts/OpenSans-Regular.ttf +0 -0
  575. package/dist/common/fonts/OpenSans-SemiBold.ttf +0 -0
  576. package/dist/common/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  577. package/dist/common/variables.js +0 -882
  578. package/dist/date/Date.js +0 -359
  579. package/dist/date/Date.stories.js +0 -205
  580. package/dist/date/calendar.svg +0 -1
  581. package/dist/date/calendar_dark.svg +0 -1
  582. package/dist/date/readme.md +0 -73
  583. package/dist/dialog/Dialog.js +0 -203
  584. package/dist/dialog/Dialog.stories.js +0 -217
  585. package/dist/dialog/readme.md +0 -32
  586. package/dist/dropdown/Dropdown.js +0 -456
  587. package/dist/dropdown/Dropdown.stories.js +0 -249
  588. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  589. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  590. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  591. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  592. package/dist/dropdown/readme.md +0 -69
  593. package/dist/footer/Footer.js +0 -405
  594. package/dist/footer/Footer.stories.js +0 -94
  595. package/dist/footer/dxc_logo_wht.png +0 -0
  596. package/dist/footer/readme.md +0 -41
  597. package/dist/header/Header.js +0 -431
  598. package/dist/header/Header.stories.js +0 -176
  599. package/dist/header/close_icon.svg +0 -1
  600. package/dist/header/dxc_logo_black.png +0 -0
  601. package/dist/header/dxc_logo_blk_rgb.svg +0 -6
  602. package/dist/header/dxc_logo_white.png +0 -0
  603. package/dist/header/hamb_menu_black.svg +0 -1
  604. package/dist/header/hamb_menu_white.svg +0 -1
  605. package/dist/header/readme.md +0 -33
  606. package/dist/input-text/InputText.js +0 -631
  607. package/dist/input-text/InputText.stories.js +0 -209
  608. package/dist/input-text/error.svg +0 -1
  609. package/dist/input-text/readme.md +0 -91
  610. package/dist/layout/ApplicationLayout.js +0 -331
  611. package/dist/layout/facebook.svg +0 -45
  612. package/dist/layout/linkedin.svg +0 -50
  613. package/dist/layout/twitter.svg +0 -53
  614. package/dist/link/Link.js +0 -212
  615. package/dist/link/readme.md +0 -51
  616. package/dist/paginator/Paginator.js +0 -283
  617. package/dist/paginator/images/next.svg +0 -3
  618. package/dist/paginator/images/nextPage.svg +0 -3
  619. package/dist/paginator/images/previous.svg +0 -3
  620. package/dist/paginator/images/previousPage.svg +0 -3
  621. package/dist/paginator/readme.md +0 -50
  622. package/dist/progress-bar/ProgressBar.js +0 -206
  623. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  624. package/dist/progress-bar/readme.md +0 -63
  625. package/dist/radio/Radio.js +0 -190
  626. package/dist/radio/Radio.stories.js +0 -166
  627. package/dist/radio/readme.md +0 -70
  628. package/dist/resultsetTable/ResultsetTable.js +0 -332
  629. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  630. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  631. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  632. package/dist/select/Select.js +0 -490
  633. package/dist/select/Select.stories.js +0 -235
  634. package/dist/select/readme.md +0 -72
  635. package/dist/sidenav/Sidenav.js +0 -183
  636. package/dist/slider/Slider.js +0 -267
  637. package/dist/slider/Slider.stories.js +0 -241
  638. package/dist/slider/readme.md +0 -64
  639. package/dist/spinner/Spinner.js +0 -214
  640. package/dist/spinner/Spinner.stories.js +0 -183
  641. package/dist/spinner/readme.md +0 -65
  642. package/dist/switch/Switch.js +0 -222
  643. package/dist/switch/Switch.stories.js +0 -134
  644. package/dist/switch/readme.md +0 -133
  645. package/dist/table/Table.js +0 -118
  646. package/dist/tabs/Tabs.js +0 -347
  647. package/dist/tabs/Tabs.stories.js +0 -130
  648. package/dist/tabs/readme.md +0 -78
  649. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  650. package/dist/tabs-for-sections/readme.md +0 -78
  651. package/dist/tag/Tag.js +0 -268
  652. package/dist/textarea/Textarea.js +0 -238
  653. package/dist/toggle/Toggle.js +0 -220
  654. package/dist/toggle/Toggle.stories.js +0 -297
  655. package/dist/toggle/readme.md +0 -80
  656. package/dist/toggle-group/ToggleGroup.js +0 -241
  657. package/dist/toggle-group/readme.md +0 -82
  658. package/dist/upload/Upload.js +0 -209
  659. package/dist/upload/Upload.stories.js +0 -72
  660. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -123
  661. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  662. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  663. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -293
  664. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  665. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  666. package/dist/upload/file-upload/FileToUpload.js +0 -162
  667. package/dist/upload/file-upload/audio-icon.svg +0 -4
  668. package/dist/upload/file-upload/close.svg +0 -4
  669. package/dist/upload/file-upload/file-icon.svg +0 -4
  670. package/dist/upload/file-upload/video-icon.svg +0 -4
  671. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  672. package/dist/upload/readme.md +0 -37
  673. package/dist/upload/transaction/Transaction.js +0 -152
  674. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  675. package/dist/upload/transaction/audio-icon.svg +0 -4
  676. package/dist/upload/transaction/error-icon.svg +0 -4
  677. package/dist/upload/transaction/file-icon-err.svg +0 -4
  678. package/dist/upload/transaction/file-icon.svg +0 -4
  679. package/dist/upload/transaction/image-icon-err.svg +0 -4
  680. package/dist/upload/transaction/image-icon.svg +0 -4
  681. package/dist/upload/transaction/success-icon.svg +0 -4
  682. package/dist/upload/transaction/video-icon-err.svg +0 -4
  683. package/dist/upload/transaction/video-icon.svg +0 -4
  684. package/dist/upload/transactions/Transactions.js +0 -122
  685. package/dist/wizard/Wizard.js +0 -383
  686. package/dist/wizard/invalid_icon.svg +0 -6
  687. package/dist/wizard/valid_icon.svg +0 -6
  688. package/dist/wizard/validation-wrong.svg +0 -6
  689. package/test/Accordion.test.js +0 -33
  690. package/test/AccordionGroup.test.js +0 -125
  691. package/test/Alert.test.js +0 -53
  692. package/test/Box.test.js +0 -10
  693. package/test/Button.test.js +0 -18
  694. package/test/Card.test.js +0 -30
  695. package/test/Checkbox.test.js +0 -45
  696. package/test/Chip.test.js +0 -25
  697. package/test/Date.test.js +0 -393
  698. package/test/Dialog.test.js +0 -23
  699. package/test/Dropdown.test.js +0 -130
  700. package/test/Footer.test.js +0 -99
  701. package/test/Header.test.js +0 -39
  702. package/test/Heading.test.js +0 -35
  703. package/test/InputText.test.js +0 -240
  704. package/test/Link.test.js +0 -42
  705. package/test/Paginator.test.js +0 -177
  706. package/test/ProgressBar.test.js +0 -35
  707. package/test/Radio.test.js +0 -37
  708. package/test/ResultsetTable.test.js +0 -330
  709. package/test/Select.test.js +0 -192
  710. package/test/Sidenav.test.js +0 -45
  711. package/test/Slider.test.js +0 -82
  712. package/test/Spinner.test.js +0 -27
  713. package/test/Switch.test.js +0 -45
  714. package/test/Table.test.js +0 -36
  715. package/test/Tabs.test.js +0 -109
  716. package/test/TabsForSections.test.js +0 -34
  717. package/test/Tag.test.js +0 -32
  718. package/test/TextArea.test.js +0 -52
  719. package/test/ToggleGroup.test.js +0 -81
  720. package/test/Upload.test.js +0 -60
  721. package/test/Wizard.test.js +0 -130
  722. package/test/mocks/pngMock.js +0 -1
  723. 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 @@
1
+ export {};
@@ -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"));
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 @@
1
+ export {};
@@ -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"));
10
+ var _Flex = _interopRequireDefault(require("../flex/Flex"));
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;