@dxc-technology/halstack-react 0.0.0-e792e0c → 0.0.0-e8505b7

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 (460) hide show
  1. package/BackgroundColorContext.d.ts +10 -0
  2. package/BackgroundColorContext.js +47 -0
  3. package/ThemeContext.d.ts +10 -0
  4. package/ThemeContext.js +243 -0
  5. package/accordion/Accordion.d.ts +4 -0
  6. package/accordion/Accordion.js +248 -0
  7. package/accordion/Accordion.stories.tsx +307 -0
  8. package/accordion/Accordion.test.js +72 -0
  9. package/accordion/types.d.ts +68 -0
  10. package/accordion/types.js +5 -0
  11. package/accordion-group/AccordionGroup.d.ts +7 -0
  12. package/accordion-group/AccordionGroup.js +170 -0
  13. package/accordion-group/AccordionGroup.stories.tsx +225 -0
  14. package/accordion-group/AccordionGroup.test.js +133 -0
  15. package/accordion-group/types.d.ts +68 -0
  16. package/accordion-group/types.js +5 -0
  17. package/alert/Alert.d.ts +4 -0
  18. package/alert/Alert.js +290 -0
  19. package/alert/Alert.stories.tsx +170 -0
  20. package/alert/Alert.test.js +92 -0
  21. package/alert/types.d.ts +49 -0
  22. package/alert/types.js +5 -0
  23. package/badge/Badge.d.ts +4 -0
  24. package/badge/Badge.js +59 -0
  25. package/badge/types.d.ts +4 -0
  26. package/badge/types.js +5 -0
  27. package/bleed/Bleed.d.ts +3 -0
  28. package/bleed/Bleed.js +84 -0
  29. package/bleed/Bleed.stories.tsx +342 -0
  30. package/bleed/types.d.ts +37 -0
  31. package/bleed/types.js +5 -0
  32. package/box/Box.d.ts +4 -0
  33. package/box/Box.js +126 -0
  34. package/box/Box.stories.tsx +132 -0
  35. package/box/Box.test.js +18 -0
  36. package/box/types.d.ts +43 -0
  37. package/box/types.js +5 -0
  38. package/button/Button.d.ts +4 -0
  39. package/button/Button.js +171 -0
  40. package/button/Button.stories.tsx +274 -0
  41. package/button/Button.test.js +35 -0
  42. package/button/types.d.ts +53 -0
  43. package/button/types.js +5 -0
  44. package/card/Card.d.ts +4 -0
  45. package/card/Card.js +164 -0
  46. package/card/Card.stories.tsx +201 -0
  47. package/card/Card.test.js +50 -0
  48. package/card/ice-cream.jpg +0 -0
  49. package/card/types.d.ts +67 -0
  50. package/card/types.js +5 -0
  51. package/checkbox/Checkbox.d.ts +4 -0
  52. package/checkbox/Checkbox.js +247 -0
  53. package/checkbox/Checkbox.stories.tsx +192 -0
  54. package/checkbox/Checkbox.test.js +78 -0
  55. package/checkbox/types.d.ts +64 -0
  56. package/checkbox/types.js +5 -0
  57. package/chip/Chip.d.ts +4 -0
  58. package/chip/Chip.js +161 -0
  59. package/chip/Chip.stories.tsx +119 -0
  60. package/chip/Chip.test.js +56 -0
  61. package/chip/types.d.ts +45 -0
  62. package/chip/types.js +5 -0
  63. package/{dist/common → common}/OpenSans.css +0 -0
  64. package/{dist/common → common}/RequiredComponent.js +5 -19
  65. package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  66. package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  67. package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  68. package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  69. package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  70. package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  71. package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  72. package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  73. package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  74. package/{dist/common → common}/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  75. package/common/utils.js +22 -0
  76. package/common/variables.js +1373 -0
  77. package/date-input/DateInput.d.ts +4 -0
  78. package/date-input/DateInput.js +354 -0
  79. package/date-input/DateInput.stories.tsx +138 -0
  80. package/date-input/DateInput.test.js +492 -0
  81. package/date-input/types.d.ts +104 -0
  82. package/date-input/types.js +5 -0
  83. package/dialog/Dialog.d.ts +4 -0
  84. package/dialog/Dialog.js +166 -0
  85. package/dialog/Dialog.stories.tsx +212 -0
  86. package/dialog/Dialog.test.js +40 -0
  87. package/dialog/types.d.ts +43 -0
  88. package/dialog/types.js +5 -0
  89. package/dropdown/Dropdown.d.ts +4 -0
  90. package/dropdown/Dropdown.js +395 -0
  91. package/dropdown/Dropdown.stories.tsx +249 -0
  92. package/dropdown/Dropdown.test.js +189 -0
  93. package/dropdown/types.d.ts +80 -0
  94. package/dropdown/types.js +5 -0
  95. package/file-input/FileInput.d.ts +4 -0
  96. package/file-input/FileInput.js +590 -0
  97. package/file-input/FileInput.stories.tsx +507 -0
  98. package/file-input/FileInput.test.js +457 -0
  99. package/file-input/FileItem.d.ts +14 -0
  100. package/file-input/FileItem.js +184 -0
  101. package/file-input/types.d.ts +112 -0
  102. package/file-input/types.js +5 -0
  103. package/footer/Footer.d.ts +4 -0
  104. package/footer/Footer.js +258 -0
  105. package/footer/Footer.stories.tsx +130 -0
  106. package/footer/Footer.test.js +109 -0
  107. package/footer/Icons.d.ts +2 -0
  108. package/footer/Icons.js +77 -0
  109. package/footer/types.d.ts +65 -0
  110. package/footer/types.js +5 -0
  111. package/header/Header.d.ts +7 -0
  112. package/header/Header.js +324 -0
  113. package/header/Header.stories.tsx +162 -0
  114. package/header/Header.test.js +63 -0
  115. package/header/Icons.d.ts +2 -0
  116. package/header/Icons.js +34 -0
  117. package/header/types.d.ts +47 -0
  118. package/header/types.js +5 -0
  119. package/heading/Heading.d.ts +4 -0
  120. package/heading/Heading.js +159 -0
  121. package/heading/Heading.stories.tsx +54 -0
  122. package/heading/Heading.test.js +186 -0
  123. package/heading/types.d.ts +33 -0
  124. package/heading/types.js +5 -0
  125. package/inset/Inset.d.ts +3 -0
  126. package/inset/Inset.js +84 -0
  127. package/inset/Inset.stories.tsx +229 -0
  128. package/inset/types.d.ts +13 -0
  129. package/inset/types.js +5 -0
  130. package/layout/ApplicationLayout.d.ts +10 -0
  131. package/layout/ApplicationLayout.js +231 -0
  132. package/layout/ApplicationLayout.stories.tsx +171 -0
  133. package/layout/Icons.js +55 -0
  134. package/layout/types.d.ts +57 -0
  135. package/layout/types.js +5 -0
  136. package/link/Link.d.ts +3 -0
  137. package/link/Link.js +153 -0
  138. package/link/Link.stories.tsx +151 -0
  139. package/link/Link.test.js +91 -0
  140. package/link/types.d.ts +70 -0
  141. package/link/types.js +5 -0
  142. package/list/List.d.ts +4 -0
  143. package/list/List.js +47 -0
  144. package/list/List.stories.tsx +95 -0
  145. package/list/types.d.ts +7 -0
  146. package/list/types.js +5 -0
  147. package/main.d.ts +47 -0
  148. package/{dist/main.js → main.js} +177 -53
  149. package/number-input/NumberInput.d.ts +4 -0
  150. package/number-input/NumberInput.js +76 -0
  151. package/number-input/NumberInput.stories.tsx +115 -0
  152. package/number-input/NumberInput.test.js +508 -0
  153. package/number-input/NumberInputContext.d.ts +4 -0
  154. package/{dist/ThemeContext.js → number-input/NumberInputContext.js} +6 -2
  155. package/number-input/numberInputContextTypes.d.ts +19 -0
  156. package/number-input/numberInputContextTypes.js +5 -0
  157. package/number-input/types.d.ts +121 -0
  158. package/number-input/types.js +5 -0
  159. package/package.json +42 -24
  160. package/paginator/Icons.js +66 -0
  161. package/paginator/Paginator.d.ts +4 -0
  162. package/paginator/Paginator.js +192 -0
  163. package/paginator/Paginator.stories.tsx +63 -0
  164. package/paginator/Paginator.test.js +266 -0
  165. package/paginator/types.d.ts +38 -0
  166. package/paginator/types.js +5 -0
  167. package/password-input/PasswordInput.d.ts +4 -0
  168. package/password-input/PasswordInput.js +163 -0
  169. package/password-input/PasswordInput.stories.tsx +131 -0
  170. package/password-input/PasswordInput.test.js +183 -0
  171. package/password-input/types.d.ts +107 -0
  172. package/password-input/types.js +5 -0
  173. package/progress-bar/ProgressBar.d.ts +4 -0
  174. package/progress-bar/ProgressBar.js +170 -0
  175. package/progress-bar/ProgressBar.stories.jsx +58 -0
  176. package/progress-bar/ProgressBar.test.js +65 -0
  177. package/progress-bar/types.d.ts +37 -0
  178. package/progress-bar/types.js +5 -0
  179. package/quick-nav/QuickNav.d.ts +4 -0
  180. package/quick-nav/QuickNav.js +66 -0
  181. package/quick-nav/QuickNav.stories.tsx +237 -0
  182. package/quick-nav/types.d.ts +21 -0
  183. package/quick-nav/types.js +5 -0
  184. package/radio/Radio.d.ts +4 -0
  185. package/radio/Radio.js +174 -0
  186. package/radio/Radio.stories.tsx +192 -0
  187. package/radio/Radio.test.js +71 -0
  188. package/radio/types.d.ts +54 -0
  189. package/radio/types.js +5 -0
  190. package/radio-group/Radio.d.ts +4 -0
  191. package/radio-group/Radio.js +141 -0
  192. package/radio-group/RadioGroup.d.ts +4 -0
  193. package/radio-group/RadioGroup.js +280 -0
  194. package/radio-group/RadioGroup.stories.tsx +100 -0
  195. package/radio-group/RadioGroup.test.js +695 -0
  196. package/radio-group/types.d.ts +114 -0
  197. package/radio-group/types.js +5 -0
  198. package/resultsetTable/ResultsetTable.d.ts +4 -0
  199. package/resultsetTable/ResultsetTable.js +254 -0
  200. package/resultsetTable/ResultsetTable.stories.tsx +275 -0
  201. package/resultsetTable/ResultsetTable.test.js +306 -0
  202. package/resultsetTable/types.d.ts +67 -0
  203. package/resultsetTable/types.js +5 -0
  204. package/row/Row.d.ts +3 -0
  205. package/row/Row.js +127 -0
  206. package/row/Row.stories.tsx +237 -0
  207. package/row/types.d.ts +28 -0
  208. package/row/types.js +5 -0
  209. package/select/Icons.d.ts +10 -0
  210. package/select/Icons.js +93 -0
  211. package/select/Option.d.ts +4 -0
  212. package/select/Option.js +110 -0
  213. package/select/Select.d.ts +4 -0
  214. package/select/Select.js +740 -0
  215. package/select/Select.stories.tsx +582 -0
  216. package/select/Select.test.js +2016 -0
  217. package/select/types.d.ts +191 -0
  218. package/select/types.js +5 -0
  219. package/sidenav/Sidenav.d.ts +9 -0
  220. package/sidenav/Sidenav.js +136 -0
  221. package/sidenav/Sidenav.stories.tsx +182 -0
  222. package/sidenav/Sidenav.test.js +56 -0
  223. package/sidenav/types.d.ts +50 -0
  224. package/sidenav/types.js +5 -0
  225. package/slider/Slider.d.ts +4 -0
  226. package/slider/Slider.js +317 -0
  227. package/slider/Slider.stories.tsx +177 -0
  228. package/slider/Slider.test.js +129 -0
  229. package/slider/types.d.ts +78 -0
  230. package/slider/types.js +5 -0
  231. package/spinner/Spinner.d.ts +4 -0
  232. package/spinner/Spinner.js +250 -0
  233. package/spinner/Spinner.stories.jsx +103 -0
  234. package/spinner/Spinner.test.js +64 -0
  235. package/spinner/types.d.ts +32 -0
  236. package/spinner/types.js +5 -0
  237. package/stack/Stack.d.ts +3 -0
  238. package/stack/Stack.js +97 -0
  239. package/stack/Stack.stories.tsx +164 -0
  240. package/stack/types.d.ts +24 -0
  241. package/stack/types.js +5 -0
  242. package/switch/Switch.d.ts +4 -0
  243. package/switch/Switch.js +192 -0
  244. package/switch/Switch.stories.tsx +160 -0
  245. package/switch/Switch.test.js +98 -0
  246. package/switch/types.d.ts +62 -0
  247. package/switch/types.js +5 -0
  248. package/table/Table.d.ts +4 -0
  249. package/table/Table.js +118 -0
  250. package/table/Table.stories.jsx +277 -0
  251. package/table/Table.test.js +26 -0
  252. package/table/types.d.ts +21 -0
  253. package/table/types.js +5 -0
  254. package/tabs/Tabs.d.ts +4 -0
  255. package/tabs/Tabs.js +213 -0
  256. package/tabs/Tabs.stories.tsx +120 -0
  257. package/tabs/Tabs.test.js +123 -0
  258. package/tabs/types.d.ts +78 -0
  259. package/tabs/types.js +5 -0
  260. package/tag/Tag.d.ts +4 -0
  261. package/tag/Tag.js +186 -0
  262. package/tag/Tag.stories.tsx +142 -0
  263. package/tag/Tag.test.js +60 -0
  264. package/tag/types.d.ts +69 -0
  265. package/tag/types.js +5 -0
  266. package/text/Text.d.ts +7 -0
  267. package/text/Text.js +30 -0
  268. package/text/Text.stories.tsx +19 -0
  269. package/text-input/TextInput.d.ts +4 -0
  270. package/text-input/TextInput.js +798 -0
  271. package/text-input/TextInput.stories.tsx +474 -0
  272. package/text-input/TextInput.test.js +1725 -0
  273. package/text-input/types.d.ts +163 -0
  274. package/text-input/types.js +5 -0
  275. package/textarea/Textarea.d.ts +4 -0
  276. package/textarea/Textarea.js +286 -0
  277. package/textarea/Textarea.stories.jsx +157 -0
  278. package/textarea/Textarea.test.js +437 -0
  279. package/textarea/types.d.ts +134 -0
  280. package/textarea/types.js +5 -0
  281. package/toggle-group/ToggleGroup.d.ts +4 -0
  282. package/toggle-group/ToggleGroup.js +214 -0
  283. package/toggle-group/ToggleGroup.stories.tsx +173 -0
  284. package/toggle-group/ToggleGroup.test.js +125 -0
  285. package/toggle-group/types.d.ts +97 -0
  286. package/toggle-group/types.js +5 -0
  287. package/useTheme.d.ts +2 -0
  288. package/useTheme.js +22 -0
  289. package/wizard/Wizard.d.ts +4 -0
  290. package/wizard/Wizard.js +286 -0
  291. package/wizard/Wizard.stories.tsx +214 -0
  292. package/wizard/Wizard.test.js +141 -0
  293. package/wizard/types.d.ts +64 -0
  294. package/wizard/types.js +5 -0
  295. package/README.md +0 -66
  296. package/babel.config.js +0 -4
  297. package/dist/accordion/Accordion.js +0 -264
  298. package/dist/accordion/Accordion.stories.js +0 -207
  299. package/dist/accordion/readme.md +0 -96
  300. package/dist/alert/Alert.js +0 -302
  301. package/dist/alert/Alert.stories.js +0 -158
  302. package/dist/alert/close.svg +0 -4
  303. package/dist/alert/error.svg +0 -4
  304. package/dist/alert/info.svg +0 -4
  305. package/dist/alert/readme.md +0 -43
  306. package/dist/alert/success.svg +0 -4
  307. package/dist/alert/warning.svg +0 -4
  308. package/dist/box/Box.js +0 -148
  309. package/dist/button/Button.js +0 -183
  310. package/dist/button/Button.stories.js +0 -224
  311. package/dist/button/readme.md +0 -93
  312. package/dist/card/Card.js +0 -217
  313. package/dist/checkbox/Checkbox.js +0 -224
  314. package/dist/checkbox/Checkbox.stories.js +0 -144
  315. package/dist/checkbox/readme.md +0 -116
  316. package/dist/chip/Chip.js +0 -171
  317. package/dist/common/services/example-service.js +0 -10
  318. package/dist/common/services/example-service.test.js +0 -12
  319. package/dist/common/utils.js +0 -42
  320. package/dist/common/variables.js +0 -307
  321. package/dist/date/Date.js +0 -357
  322. package/dist/date/Date.stories.js +0 -205
  323. package/dist/date/calendar.svg +0 -1
  324. package/dist/date/calendar_dark.svg +0 -1
  325. package/dist/date/readme.md +0 -73
  326. package/dist/dialog/Dialog.js +0 -197
  327. package/dist/dialog/Dialog.stories.js +0 -217
  328. package/dist/dialog/readme.md +0 -32
  329. package/dist/dropdown/Dropdown.js +0 -412
  330. package/dist/dropdown/Dropdown.stories.js +0 -249
  331. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  332. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  333. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  334. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  335. package/dist/dropdown/readme.md +0 -69
  336. package/dist/footer/Footer.js +0 -346
  337. package/dist/footer/Footer.stories.js +0 -94
  338. package/dist/footer/dxc_logo_wht.png +0 -0
  339. package/dist/footer/readme.md +0 -41
  340. package/dist/header/Header.js +0 -354
  341. package/dist/header/Header.stories.js +0 -176
  342. package/dist/header/close_icon.svg +0 -1
  343. package/dist/header/dxc_logo_black.png +0 -0
  344. package/dist/header/dxc_logo_white.png +0 -0
  345. package/dist/header/hamb_menu_black.svg +0 -1
  346. package/dist/header/hamb_menu_white.svg +0 -1
  347. package/dist/header/readme.md +0 -33
  348. package/dist/heading/Heading.js +0 -159
  349. package/dist/input-text/InputText.js +0 -519
  350. package/dist/input-text/InputText.stories.js +0 -209
  351. package/dist/input-text/error.svg +0 -1
  352. package/dist/input-text/readme.md +0 -91
  353. package/dist/link/Link.js +0 -136
  354. package/dist/link/readme.md +0 -51
  355. package/dist/paginator/Paginator.js +0 -178
  356. package/dist/paginator/images/next.svg +0 -3
  357. package/dist/paginator/images/nextPage.svg +0 -3
  358. package/dist/paginator/images/previous.svg +0 -3
  359. package/dist/paginator/images/previousPage.svg +0 -3
  360. package/dist/paginator/readme.md +0 -50
  361. package/dist/progress-bar/ProgressBar.js +0 -189
  362. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  363. package/dist/progress-bar/readme.md +0 -63
  364. package/dist/radio/Radio.js +0 -191
  365. package/dist/radio/Radio.stories.js +0 -166
  366. package/dist/radio/readme.md +0 -70
  367. package/dist/resultsetTable/ResultsetTable.js +0 -334
  368. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  369. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  370. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  371. package/dist/select/Select.js +0 -442
  372. package/dist/select/Select.stories.js +0 -235
  373. package/dist/select/readme.md +0 -72
  374. package/dist/sidenav/Sidenav.js +0 -237
  375. package/dist/sidenav/arrow_icon.svg +0 -3
  376. package/dist/slider/Slider.js +0 -258
  377. package/dist/slider/Slider.stories.js +0 -241
  378. package/dist/slider/readme.md +0 -64
  379. package/dist/spinner/Spinner.js +0 -196
  380. package/dist/spinner/Spinner.stories.js +0 -183
  381. package/dist/spinner/readme.md +0 -65
  382. package/dist/switch/Switch.js +0 -197
  383. package/dist/switch/Switch.stories.js +0 -134
  384. package/dist/switch/readme.md +0 -133
  385. package/dist/table/Table.js +0 -84
  386. package/dist/tabs/Tabs.js +0 -170
  387. package/dist/tabs/Tabs.stories.js +0 -130
  388. package/dist/tabs/readme.md +0 -78
  389. package/dist/tabs-for-sections/TabsForSections.js +0 -107
  390. package/dist/tabs-for-sections/readme.md +0 -78
  391. package/dist/tag/Tag.js +0 -217
  392. package/dist/textarea/Textarea.js +0 -226
  393. package/dist/toggle/Toggle.js +0 -223
  394. package/dist/toggle/Toggle.stories.js +0 -297
  395. package/dist/toggle/readme.md +0 -80
  396. package/dist/upload/Upload.js +0 -200
  397. package/dist/upload/Upload.stories.js +0 -72
  398. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -125
  399. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  400. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  401. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -282
  402. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  403. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  404. package/dist/upload/file-upload/FileToUpload.js +0 -158
  405. package/dist/upload/file-upload/audio-icon.svg +0 -4
  406. package/dist/upload/file-upload/close.svg +0 -4
  407. package/dist/upload/file-upload/file-icon.svg +0 -4
  408. package/dist/upload/file-upload/video-icon.svg +0 -4
  409. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  410. package/dist/upload/readme.md +0 -37
  411. package/dist/upload/transaction/Transaction.js +0 -155
  412. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  413. package/dist/upload/transaction/audio-icon.svg +0 -4
  414. package/dist/upload/transaction/error-icon.svg +0 -4
  415. package/dist/upload/transaction/file-icon-err.svg +0 -4
  416. package/dist/upload/transaction/file-icon.svg +0 -4
  417. package/dist/upload/transaction/image-icon-err.svg +0 -4
  418. package/dist/upload/transaction/image-icon.svg +0 -4
  419. package/dist/upload/transaction/success-icon.svg +0 -4
  420. package/dist/upload/transaction/video-icon-err.svg +0 -4
  421. package/dist/upload/transaction/video-icon.svg +0 -4
  422. package/dist/upload/transactions/Transactions.js +0 -120
  423. package/dist/wizard/Wizard.js +0 -320
  424. package/dist/wizard/invalid_icon.svg +0 -6
  425. package/dist/wizard/valid_icon.svg +0 -6
  426. package/dist/wizard/validation-wrong.svg +0 -6
  427. package/test/Accordion.test.js +0 -33
  428. package/test/Alert.test.js +0 -53
  429. package/test/Box.test.js +0 -10
  430. package/test/Button.test.js +0 -18
  431. package/test/Card.test.js +0 -30
  432. package/test/Checkbox.test.js +0 -45
  433. package/test/Chip.test.js +0 -25
  434. package/test/Date.test.js +0 -393
  435. package/test/Dialog.test.js +0 -23
  436. package/test/Dropdown.test.js +0 -130
  437. package/test/Footer.test.js +0 -99
  438. package/test/Header.test.js +0 -39
  439. package/test/Heading.test.js +0 -35
  440. package/test/InputText.test.js +0 -236
  441. package/test/Link.test.js +0 -25
  442. package/test/Paginator.test.js +0 -165
  443. package/test/ProgressBar.test.js +0 -35
  444. package/test/Radio.test.js +0 -37
  445. package/test/ResultsetTable.test.js +0 -282
  446. package/test/Select.test.js +0 -191
  447. package/test/Sidenav.test.js +0 -87
  448. package/test/Slider.test.js +0 -65
  449. package/test/Spinner.test.js +0 -27
  450. package/test/Switch.test.js +0 -45
  451. package/test/Table.test.js +0 -36
  452. package/test/Tabs.test.js +0 -88
  453. package/test/TabsForSections.test.js +0 -34
  454. package/test/Tag.test.js +0 -32
  455. package/test/TextArea.test.js +0 -52
  456. package/test/Toggle.test.js +0 -43
  457. package/test/Upload.test.js +0 -60
  458. package/test/Wizard.test.js +0 -130
  459. package/test/mocks/pngMock.js +0 -1
  460. package/test/mocks/svgMock.js +0 -1
package/alert/Alert.js ADDED
@@ -0,0 +1,290 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof3 = require("@babel/runtime/helpers/typeof");
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports["default"] = void 0;
11
+
12
+ var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
13
+
14
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
15
+
16
+ var _react = _interopRequireDefault(require("react"));
17
+
18
+ var _styledComponents = _interopRequireWildcard(require("styled-components"));
19
+
20
+ var _variables = require("../common/variables.js");
21
+
22
+ var _utils = require("../common/utils.js");
23
+
24
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
25
+
26
+ var _BackgroundColorContext = require("../BackgroundColorContext");
27
+
28
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10;
29
+
30
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
31
+
32
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
33
+
34
+ var alertIcons = {
35
+ close: /*#__PURE__*/_react["default"].createElement("svg", {
36
+ xmlns: "http://www.w3.org/2000/svg",
37
+ width: "20",
38
+ height: "20",
39
+ viewBox: "0 0 24 24",
40
+ fill: "currentColor"
41
+ }, /*#__PURE__*/_react["default"].createElement("path", {
42
+ d: "M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"
43
+ }), /*#__PURE__*/_react["default"].createElement("path", {
44
+ d: "M0 0h24v24H0z",
45
+ fill: "none"
46
+ })),
47
+ info: /*#__PURE__*/_react["default"].createElement("svg", {
48
+ xmlns: "http://www.w3.org/2000/svg",
49
+ width: "23",
50
+ height: "23",
51
+ viewBox: "0 0 24 24",
52
+ fill: "currentColor"
53
+ }, /*#__PURE__*/_react["default"].createElement("path", {
54
+ d: "M0 0h24v24H0z",
55
+ fill: "none"
56
+ }), /*#__PURE__*/_react["default"].createElement("path", {
57
+ d: "M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z"
58
+ })),
59
+ success: /*#__PURE__*/_react["default"].createElement("svg", {
60
+ xmlns: "http://www.w3.org/2000/svg",
61
+ width: "23",
62
+ height: "23",
63
+ viewBox: "0 0 24 24",
64
+ fill: "currentColor"
65
+ }, /*#__PURE__*/_react["default"].createElement("path", {
66
+ d: "M0 0h24v24H0z",
67
+ fill: "none"
68
+ }), /*#__PURE__*/_react["default"].createElement("path", {
69
+ d: "M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"
70
+ })),
71
+ warning: /*#__PURE__*/_react["default"].createElement("svg", {
72
+ xmlns: "http://www.w3.org/2000/svg",
73
+ width: "23",
74
+ height: "23",
75
+ viewBox: "0 0 24 24",
76
+ fill: "currentColor"
77
+ }, /*#__PURE__*/_react["default"].createElement("path", {
78
+ d: "M0 0h24v24H0z",
79
+ fill: "none"
80
+ }), /*#__PURE__*/_react["default"].createElement("path", {
81
+ d: "M1 21h22L12 2 1 21zm12-3h-2v-2h2v2zm0-4h-2v-4h2v4z"
82
+ })),
83
+ error: /*#__PURE__*/_react["default"].createElement("svg", {
84
+ xmlns: "http://www.w3.org/2000/svg",
85
+ width: "23",
86
+ height: "23",
87
+ viewBox: "0 0 24 24",
88
+ fill: "currentColor"
89
+ }, /*#__PURE__*/_react["default"].createElement("path", {
90
+ d: "M12 2C6.47 2 2 6.47 2 12s4.47 10 10 10 10-4.47 10-10S17.53 2 12 2zm5 13.59L15.59 17 12 13.41 8.41 17 7 15.59 10.59 12 7 8.41 8.41 7 12 10.59 15.59 7 17 8.41 13.41 12 17 15.59z",
91
+ fill: "currentColor"
92
+ }), /*#__PURE__*/_react["default"].createElement("path", {
93
+ d: "M0 0h24v24H0z",
94
+ fill: "none"
95
+ }))
96
+ };
97
+
98
+ var DxcAlert = function DxcAlert(_ref) {
99
+ var _ref$type = _ref.type,
100
+ type = _ref$type === void 0 ? "info" : _ref$type,
101
+ _ref$mode = _ref.mode,
102
+ mode = _ref$mode === void 0 ? "inline" : _ref$mode,
103
+ _ref$inlineText = _ref.inlineText,
104
+ inlineText = _ref$inlineText === void 0 ? "" : _ref$inlineText,
105
+ onClose = _ref.onClose,
106
+ children = _ref.children,
107
+ margin = _ref.margin,
108
+ _ref$size = _ref.size,
109
+ size = _ref$size === void 0 ? "fitContent" : _ref$size,
110
+ tabIndex = _ref.tabIndex;
111
+ var colorsTheme = (0, _useTheme["default"])();
112
+
113
+ var getTypeText = function getTypeText() {
114
+ return type === "info" ? "information" : type === "confirm" ? "success" : type === "warning" ? "warning" : "error";
115
+ };
116
+
117
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
118
+ theme: colorsTheme.alert
119
+ }, /*#__PURE__*/_react["default"].createElement(AlertModal, {
120
+ mode: mode
121
+ }, mode === "modal" && /*#__PURE__*/_react["default"].createElement(OverlayContainer, {
122
+ mode: mode,
123
+ onClick: onClose
124
+ }), /*#__PURE__*/_react["default"].createElement(AlertContainer, {
125
+ mode: mode,
126
+ type: type,
127
+ margin: margin,
128
+ size: size
129
+ }, /*#__PURE__*/_react["default"].createElement(AlertInfo, null, /*#__PURE__*/_react["default"].createElement(AlertIcon, {
130
+ type: type
131
+ }, type === "info" && alertIcons.info || type === "confirm" && alertIcons.success || type === "warning" && alertIcons.warning || type === "error" && alertIcons.error), /*#__PURE__*/_react["default"].createElement(AlertText, null, /*#__PURE__*/_react["default"].createElement(AlertTitle, {
132
+ type: type
133
+ }, getTypeText()), inlineText && inlineText !== "" && "-", /*#__PURE__*/_react["default"].createElement(AlertInlineText, null, inlineText)), onClose && /*#__PURE__*/_react["default"].createElement(AlertCloseAction, {
134
+ onClick: onClose,
135
+ tabIndex: tabIndex
136
+ }, alertIcons.close)), children && /*#__PURE__*/_react["default"].createElement(AlertContent, null, /*#__PURE__*/_react["default"].createElement(_BackgroundColorContext.BackgroundColorProvider, {
137
+ color: type === "info" && colorsTheme.alert.infoBackgroundColor || type === "confirm" && colorsTheme.alert.successBackgroundColor || type === "warning" && colorsTheme.alert.warningBackgroundColor || type === "error" && colorsTheme.alert.errorBackgroundColor
138
+ }, children)))));
139
+ };
140
+
141
+ var sizes = {
142
+ small: "280px",
143
+ medium: "480px",
144
+ large: "820px",
145
+ fillParent: "100%",
146
+ fitContent: "auto"
147
+ };
148
+
149
+ var calculateWidth = function calculateWidth(margin, size) {
150
+ return size === "fillParent" ? "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")") : sizes[size];
151
+ };
152
+
153
+ var AlertModal = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n font-size: ", ";\n width: ", ";\n height: ", ";\n justify-content: ", ";\n align-items: ", ";\n top: ", ";\n left: ", ";\n position: ", ";\n display: ", ";\n z-index: ", ";\n"])), function (props) {
154
+ return props.theme.fontSizeBase;
155
+ }, function (props) {
156
+ return props.mode === "modal" ? "100%" : "";
157
+ }, function (props) {
158
+ return props.mode === "modal" ? "100%" : "";
159
+ }, function (props) {
160
+ return props.mode === "modal" ? "center" : "";
161
+ }, function (props) {
162
+ return props.mode === "modal" ? "center" : "";
163
+ }, function (props) {
164
+ return props.mode === "modal" ? "0" : "";
165
+ }, function (props) {
166
+ return props.mode === "modal" ? "0" : "";
167
+ }, function (props) {
168
+ return props.mode === "modal" ? "fixed" : "";
169
+ }, function (props) {
170
+ return props.mode === "modal" ? "flex" : "";
171
+ }, function (props) {
172
+ return props.mode === "modal" ? "1200" : "";
173
+ });
174
+
175
+ var OverlayContainer = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n background-color: ", ";\n position: ", ";\n top: ", ";\n bottom: ", ";\n left: ", ";\n right: ", ";\n"])), function (props) {
176
+ return props.mode === "modal" ? "".concat(props.theme.overlayColor) : "transparent";
177
+ }, function (props) {
178
+ return props.mode === "modal" ? "fixed" : "";
179
+ }, function (props) {
180
+ return props.mode === "modal" ? "0" : "";
181
+ }, function (props) {
182
+ return props.mode === "modal" ? "0" : "";
183
+ }, function (props) {
184
+ return props.mode === "modal" ? "0" : "";
185
+ }, function (props) {
186
+ return props.mode === "modal" ? "0" : "";
187
+ });
188
+
189
+ var AlertContainer = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n display: ", ";\n overflow: hidden;\n box-sizing: border-box;\n\n background-color: ", ";\n\n border-radius: ", ";\n border-width: ", ";\n border-style: ", ";\n border-color: ", ";\n\n padding-left: 12px;\n padding-right: 12px;\n justify-content: ", ";\n align-items: ", ";\n max-width: ", ";\n width: ", ";\n z-index: ", ";\n"])), function (props) {
190
+ return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
191
+ }, function (props) {
192
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
193
+ }, function (props) {
194
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.right ? _variables.spaces[props.margin.right] : "";
195
+ }, function (props) {
196
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
197
+ }, function (props) {
198
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
199
+ }, function (props) {
200
+ return props.size === "fitContent" ? "inline-block" : "block";
201
+ }, function (props) {
202
+ return props.type === "info" && props.theme.infoBackgroundColor || props.type === "confirm" && props.theme.successBackgroundColor || props.type === "warning" && props.theme.warningBackgroundColor || props.type === "error" && props.theme.errorBackgroundColor;
203
+ }, function (props) {
204
+ return props.theme.borderRadius;
205
+ }, function (props) {
206
+ return props.theme.borderThickness;
207
+ }, function (props) {
208
+ return props.theme.borderStyle;
209
+ }, function (props) {
210
+ return props.type === "info" && props.theme.infoBorderColor || props.type === "confirm" && props.theme.successBorderColor || props.type === "warning" && props.theme.warningBorderColor || props.type === "error" && props.theme.errorBorderColor;
211
+ }, function (props) {
212
+ return props.mode === "modal" ? "center" : "";
213
+ }, function (props) {
214
+ return props.mode === "modal" ? "center" : "";
215
+ }, function (props) {
216
+ return props.size !== "fillParent" && calculateWidth(props.margin, "fillParent");
217
+ }, function (props) {
218
+ return props.size !== "fillParent" && calculateWidth(props.margin, props.size);
219
+ }, function (props) {
220
+ return props.mode === "modal" ? "1300" : "";
221
+ });
222
+
223
+ var AlertInfo = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: row;\n height: calc(48px - calc(", " * 2));\n align-items: center;\n width: 100%;\n"])), function (props) {
224
+ return props.theme.borderThickness;
225
+ });
226
+
227
+ var AlertTitle = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n margin-right: 8px;\n padding-right: ", ";\n padding-left: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n text-transform: ", ";\n"])), function (props) {
228
+ return props.theme.titlePaddingRight;
229
+ }, function (props) {
230
+ return props.theme.titlePaddingLeft;
231
+ }, function (props) {
232
+ return props.theme.titleFontFamily;
233
+ }, function (props) {
234
+ return props.theme.titleFontSize;
235
+ }, function (props) {
236
+ return props.theme.titleFontStyle;
237
+ }, function (props) {
238
+ return props.theme.titleFontWeight;
239
+ }, function (props) {
240
+ return props.theme.titleFontColor;
241
+ }, function (props) {
242
+ return props.theme.titleTextTransform;
243
+ });
244
+
245
+ var AlertInlineText = _styledComponents["default"].div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n margin-left: 8px;\n padding-right: ", ";\n padding-left: ", ";\n flex-grow: 1;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n"])), function (props) {
246
+ return props.theme.inlineTextPaddingRight;
247
+ }, function (props) {
248
+ return props.theme.inlineTextPaddingLeft;
249
+ }, function (props) {
250
+ return props.theme.inlineTextFontFamily;
251
+ }, function (props) {
252
+ return props.theme.inlineTextFontSize;
253
+ }, function (props) {
254
+ return props.theme.inlineTextFontStyle;
255
+ }, function (props) {
256
+ return props.theme.inlineTextFontWeight;
257
+ }, function (props) {
258
+ return props.theme.inlineTextFontColor;
259
+ });
260
+
261
+ var AlertIcon = _styledComponents["default"].span(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-wrap: wrap;\n align-content: center;\n margin-right: 12px;\n padding-right: ", ";\n padding-left: ", ";\n\n color: ", ";\n\n svg {\n width: ", ";\n height: ", ";\n }\n"])), function (props) {
262
+ return props.theme.iconPaddingRight;
263
+ }, function (props) {
264
+ return props.theme.iconPaddingLeft;
265
+ }, function (props) {
266
+ return props.type === "info" && props.theme.infoIconColor || props.type === "confirm" && props.theme.successIconColor || props.type === "warning" && props.theme.warningIconColor || props.type === "error" && props.theme.errorIconColor;
267
+ }, function (props) {
268
+ return props.theme.iconSize;
269
+ }, function (props) {
270
+ return props.theme.iconSize;
271
+ });
272
+
273
+ var AlertText = _styledComponents["default"].div(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: row;\n flex-grow: 1;\n align-items: center;\n overflow: hidden;\n"])));
274
+
275
+ var AlertContent = _styledComponents["default"].div(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n flex: 1 1 auto;\n padding: ", ";\n overflow-y: auto;\n"])), function (props) {
276
+ return "".concat(props.theme.contentPaddingTop, " ").concat(props.theme.contentPaddingRight, " ").concat(props.theme.contentPaddingBottom, " ").concat(props.theme.contentPaddingLeft);
277
+ });
278
+
279
+ var AlertCloseAction = _styledComponents["default"].button(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-wrap: wrap;\n align-content: center;\n height: 24px;\n width: 24px;\n border: 1px solid transparent;\n border-radius: 2px;\n box-shadow: 0 0 0 2px transparent;\n padding: 3px;\n margin-left: 12px;\n background-color: transparent;\n color: #000000;\n cursor: pointer;\n\n &:hover {\n background-color: ", ";\n }\n &:focus {\n outline: none;\n box-shadow: 0 0 0 2px ", ";\n }\n &:focus-visible {\n outline: none;\n box-shadow: 0 0 0 2px ", ";\n }\n &:active {\n background-color: ", ";\n }\n"])), function (props) {
280
+ return props.theme.hoverActionBackgroundColor;
281
+ }, function (props) {
282
+ return props.theme.focusActionBorderColor;
283
+ }, function (props) {
284
+ return props.theme.focusActionBorderColor;
285
+ }, function (props) {
286
+ return props.theme.activeActionBackgroundColor;
287
+ });
288
+
289
+ var _default = DxcAlert;
290
+ exports["default"] = _default;
@@ -0,0 +1,170 @@
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
+
6
+ export default {
7
+ title: "Alert",
8
+ component: DxcAlert,
9
+ };
10
+
11
+ export const Chromatic = () => (
12
+ <>
13
+ <ExampleContainer>
14
+ <Title title="Info" theme="light" level={4} />
15
+ <DxcAlert inlineText="Info type alert with inline text." />
16
+ </ExampleContainer>
17
+ <ExampleContainer>
18
+ <Title title="Confirm" theme="light" level={4} />
19
+ <DxcAlert type="confirm" inlineText="Confirm type alert with inline text." />
20
+ </ExampleContainer>
21
+ <ExampleContainer>
22
+ <Title title="Warning" theme="light" level={4} />
23
+ <DxcAlert type="warning" inlineText="Warning type alert with inline text." />
24
+ </ExampleContainer>
25
+ <ExampleContainer>
26
+ <Title title="Error" theme="light" level={4} />
27
+ <DxcAlert type="error" inlineText="Error type alert with inline text." />
28
+ </ExampleContainer>
29
+ <ExampleContainer>
30
+ <Title title="With close button" theme="light" level={4} />
31
+ <DxcAlert inlineText="Info type alert with inline text and close button." onClose={() => {}} />
32
+ </ExampleContainer>
33
+ <ExampleContainer pseudoState="pseudo-hover">
34
+ <Title title="With hovered close button" theme="light" level={4} />
35
+ <DxcAlert inlineText="Info type alert with inline text and close button." onClose={() => {}} />
36
+ </ExampleContainer>
37
+ <ExampleContainer pseudoState="pseudo-focus">
38
+ <Title title="With focused close button" theme="light" level={4} />
39
+ <DxcAlert inlineText="Info type alert with inline text and close button." onClose={() => {}} />
40
+ </ExampleContainer>
41
+ <ExampleContainer pseudoState="pseudo-active">
42
+ <Title title="With actived close button" theme="light" level={4} />
43
+ <DxcAlert inlineText="Info type alert with inline text and close button." onClose={() => {}} />
44
+ </ExampleContainer>
45
+ <ExampleContainer>
46
+ <Title title="With children" theme="light" level={4} />
47
+ <DxcAlert>
48
+ <div>
49
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo
50
+ lobortis eget.
51
+ </div>
52
+ </DxcAlert>
53
+ </ExampleContainer>
54
+ <ExampleContainer>
55
+ <Title title="With inline text and children" theme="light" level={4} />
56
+ <DxcAlert inlineText="Info type alert with inline text.">
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
+ <Title title="Margins" theme="light" level={2} />
64
+ <ExampleContainer>
65
+ <Title title="Xxsmall" theme="light" level={4} />
66
+ <DxcAlert margin="xxsmall" inlineText="Info type alert with inline text and xxsmall margin." />
67
+ </ExampleContainer>
68
+ <ExampleContainer>
69
+ <Title title="Xsmall" theme="light" level={4} />
70
+ <DxcAlert margin="xsmall" inlineText="Info type alert with inline text and xsmall margin." />
71
+ </ExampleContainer>
72
+ <ExampleContainer>
73
+ <Title title="Small" theme="light" level={4} />
74
+ <DxcAlert margin="small" inlineText="Info type alert with inline text and small margin." />
75
+ </ExampleContainer>
76
+ <ExampleContainer>
77
+ <Title title="Medium" theme="light" level={4} />
78
+ <DxcAlert margin="medium" inlineText="Info type alert with inline text and medium margin." />
79
+ </ExampleContainer>
80
+ <ExampleContainer>
81
+ <Title title="Large" theme="light" level={4} />
82
+ <DxcAlert margin="large" inlineText="Info type alert with inline text and large margin." />
83
+ </ExampleContainer>
84
+ <ExampleContainer>
85
+ <Title title="Xlarge" theme="light" level={4} />
86
+ <DxcAlert margin="xlarge" inlineText="Info type alert with inline text and xlarge margin." />
87
+ </ExampleContainer>
88
+ <ExampleContainer>
89
+ <Title title="Xxlarge" theme="light" level={4} />
90
+ <DxcAlert margin="xxlarge" inlineText="Info type alert with inline text and xxlarge margin." />
91
+ </ExampleContainer>
92
+ <Title title="Sizes" theme="light" level={2} />
93
+ <ExampleContainer>
94
+ <Title title="FitContent" theme="light" level={4} />
95
+ <DxcAlert
96
+ size="fitContent"
97
+ inlineText="Info type alert with inline text, children, close button and fitContent size."
98
+ onClose={() => {}}
99
+ >
100
+ <div>
101
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo
102
+ lobortis eget.
103
+ </div>
104
+ </DxcAlert>
105
+ </ExampleContainer>
106
+ <ExampleContainer>
107
+ <Title title="Small" theme="light" level={4} />
108
+ <DxcAlert
109
+ size="small"
110
+ inlineText="Info type alert with inline text, children, close button and small size."
111
+ onClose={() => {}}
112
+ >
113
+ <div>
114
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo
115
+ lobortis eget.
116
+ </div>
117
+ </DxcAlert>
118
+ </ExampleContainer>
119
+ <ExampleContainer>
120
+ <Title title="Medium" theme="light" level={4} />
121
+ <DxcAlert
122
+ size="medium"
123
+ inlineText="Info type alert with inline text, children, close button and medium size."
124
+ onClose={() => {}}
125
+ >
126
+ <div>
127
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo
128
+ lobortis eget.
129
+ </div>
130
+ </DxcAlert>
131
+ </ExampleContainer>
132
+ <ExampleContainer>
133
+ <Title title="Large" theme="light" level={4} />
134
+ <DxcAlert
135
+ size="large"
136
+ inlineText="Info type alert with inline text, children, close button and large size."
137
+ onClose={() => {}}
138
+ >
139
+ <div>
140
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo
141
+ lobortis eget.
142
+ </div>
143
+ </DxcAlert>
144
+ </ExampleContainer>
145
+ <ExampleContainer>
146
+ <Title title="FillParent" theme="light" level={4} />
147
+ <DxcAlert
148
+ size="fillParent"
149
+ inlineText="Info type alert with inline text, children, close button and fillParent size."
150
+ onClose={() => {}}
151
+ >
152
+ <div>
153
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo
154
+ lobortis eget.
155
+ </div>
156
+ </DxcAlert>
157
+ </ExampleContainer>
158
+ </>
159
+ );
160
+
161
+ export const ModalAlert = () => (
162
+ <ExampleContainer>
163
+ <DxcAlert inlineText="Modal alert." mode="modal" onClose={() => {}}>
164
+ <div>
165
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo
166
+ lobortis eget.
167
+ </div>
168
+ </DxcAlert>
169
+ </ExampleContainer>
170
+ );
@@ -0,0 +1,92 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _react = _interopRequireDefault(require("react"));
6
+
7
+ var _react2 = require("@testing-library/react");
8
+
9
+ var _Alert = _interopRequireDefault(require("./Alert"));
10
+
11
+ describe("Alert component tests", function () {
12
+ test("Info alert renders with correct text", function () {
13
+ var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Alert["default"], {
14
+ type: "info",
15
+ inlineText: "info-alert-text"
16
+ })),
17
+ getByText = _render.getByText;
18
+
19
+ expect(getByText("information")).toBeTruthy();
20
+ expect(getByText("info-alert-text")).toBeTruthy();
21
+ });
22
+ test("Confirm alert renders with correct text", function () {
23
+ var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Alert["default"], {
24
+ type: "confirm",
25
+ inlineText: "confirm-alert-text"
26
+ })),
27
+ getByText = _render2.getByText;
28
+
29
+ expect(getByText("success")).toBeTruthy();
30
+ expect(getByText("confirm-alert-text")).toBeTruthy();
31
+ });
32
+ test("Warning alert renders with correct text", function () {
33
+ var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Alert["default"], {
34
+ type: "warning",
35
+ inlineText: "warning-alert-text"
36
+ })),
37
+ getByText = _render3.getByText;
38
+
39
+ expect(getByText("warning")).toBeTruthy();
40
+ expect(getByText("warning-alert-text")).toBeTruthy();
41
+ });
42
+ test("Error alert renders with correct text", function () {
43
+ var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Alert["default"], {
44
+ type: "error",
45
+ inlineText: "error-alert-text"
46
+ })),
47
+ getByText = _render4.getByText;
48
+
49
+ expect(getByText("error")).toBeTruthy();
50
+ expect(getByText("error-alert-text")).toBeTruthy();
51
+ });
52
+ test("Alert renders with correct children", function () {
53
+ var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Alert["default"], {
54
+ inlineText: "alert-text"
55
+ }, /*#__PURE__*/_react["default"].createElement("p", null, "sample-children"))),
56
+ getByText = _render5.getByText;
57
+
58
+ expect(getByText("alert-text")).toBeTruthy();
59
+ expect(getByText("sample-children")).toBeTruthy();
60
+ });
61
+ test("Calls correct function on close", function () {
62
+ var onClose = jest.fn();
63
+
64
+ var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Alert["default"], {
65
+ onClose: onClose,
66
+ inlineText: "info-alert-text"
67
+ })),
68
+ getByRole = _render6.getByRole;
69
+
70
+ var closeButton = getByRole("button");
71
+
72
+ _react2.fireEvent.click(closeButton);
73
+
74
+ expect(onClose).toHaveBeenCalled();
75
+ });
76
+ test("Modal alert calls correct function on close", function () {
77
+ var onClose = jest.fn();
78
+
79
+ var _render7 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Alert["default"], {
80
+ onClose: onClose,
81
+ mode: "modal",
82
+ inlineText: "info-alert-text"
83
+ })),
84
+ getByRole = _render7.getByRole;
85
+
86
+ var closeButton = getByRole("button");
87
+
88
+ _react2.fireEvent.click(closeButton);
89
+
90
+ expect(onClose).toHaveBeenCalled();
91
+ });
92
+ });
@@ -0,0 +1,49 @@
1
+ /// <reference types="react" />
2
+ declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
+ declare type Margin = {
4
+ top?: Space;
5
+ bottom?: Space;
6
+ left?: Space;
7
+ right?: Space;
8
+ };
9
+ declare 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 hidding 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
+ * Tabindex value given 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,4 @@
1
+ /// <reference types="react" />
2
+ import BadgePropsType from "./types";
3
+ declare const DxcBadge: ({ notificationText }: BadgePropsType) => JSX.Element;
4
+ export default DxcBadge;