@dxc-technology/halstack-react 0.0.0-abb5d48 → 0.0.0-abdd3b9

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