@dxc-technology/halstack-react 0.0.0-5b2ad05 → 0.0.0-5b43b04

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 (429) hide show
  1. package/BackgroundColorContext.d.ts +10 -0
  2. package/BackgroundColorContext.js +47 -0
  3. package/HalstackContext.d.ts +12 -0
  4. package/HalstackContext.js +335 -0
  5. package/accordion/Accordion.d.ts +4 -0
  6. package/accordion/Accordion.js +239 -0
  7. package/accordion/Accordion.stories.tsx +395 -0
  8. package/accordion/Accordion.test.js +71 -0
  9. package/accordion/types.d.ts +69 -0
  10. package/accordion/types.js +5 -0
  11. package/accordion-group/AccordionGroup.d.ts +7 -0
  12. package/accordion-group/AccordionGroup.js +149 -0
  13. package/accordion-group/AccordionGroup.stories.tsx +251 -0
  14. package/accordion-group/AccordionGroup.test.js +126 -0
  15. package/accordion-group/types.d.ts +79 -0
  16. package/accordion-group/types.js +5 -0
  17. package/alert/Alert.d.ts +4 -0
  18. package/{dist/alert → alert}/Alert.js +44 -154
  19. package/alert/Alert.stories.tsx +198 -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 +61 -0
  25. package/badge/types.d.ts +5 -0
  26. package/badge/types.js +5 -0
  27. package/bleed/Bleed.d.ts +3 -0
  28. package/bleed/Bleed.js +51 -0
  29. package/bleed/Bleed.stories.tsx +341 -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 +116 -0
  34. package/box/Box.stories.tsx +147 -0
  35. package/box/Box.test.js +18 -0
  36. package/box/types.d.ts +44 -0
  37. package/box/types.js +5 -0
  38. package/bulleted-list/BulletedList.d.ts +7 -0
  39. package/bulleted-list/BulletedList.js +123 -0
  40. package/bulleted-list/BulletedList.stories.tsx +200 -0
  41. package/bulleted-list/types.d.ts +11 -0
  42. package/bulleted-list/types.js +5 -0
  43. package/button/Button.d.ts +4 -0
  44. package/button/Button.js +154 -0
  45. package/button/Button.stories.tsx +425 -0
  46. package/button/Button.test.js +35 -0
  47. package/button/types.d.ts +53 -0
  48. package/button/types.js +5 -0
  49. package/card/Card.d.ts +4 -0
  50. package/card/Card.js +161 -0
  51. package/card/Card.stories.tsx +201 -0
  52. package/card/Card.test.js +50 -0
  53. package/card/ice-cream.jpg +0 -0
  54. package/card/types.d.ts +68 -0
  55. package/card/types.js +5 -0
  56. package/checkbox/Checkbox.d.ts +4 -0
  57. package/checkbox/Checkbox.js +250 -0
  58. package/checkbox/Checkbox.stories.tsx +260 -0
  59. package/checkbox/Checkbox.test.js +155 -0
  60. package/checkbox/types.d.ts +68 -0
  61. package/checkbox/types.js +5 -0
  62. package/chip/Chip.d.ts +4 -0
  63. package/chip/Chip.js +155 -0
  64. package/chip/Chip.stories.tsx +206 -0
  65. package/chip/Chip.test.js +56 -0
  66. package/chip/types.d.ts +45 -0
  67. package/chip/types.js +5 -0
  68. package/{dist/common → common}/OpenSans.css +0 -0
  69. package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  70. package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  71. package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  72. package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  73. package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  74. package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  75. package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  76. package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  77. package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  78. package/{dist/common → common}/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  79. package/{dist/common → common}/utils.js +0 -0
  80. package/{dist/common → common}/variables.js +598 -638
  81. package/date-input/Calendar.d.ts +4 -0
  82. package/date-input/Calendar.js +258 -0
  83. package/date-input/DateInput.d.ts +4 -0
  84. package/date-input/DateInput.js +269 -0
  85. package/date-input/DateInput.stories.tsx +304 -0
  86. package/date-input/DateInput.test.js +835 -0
  87. package/date-input/DatePicker.d.ts +4 -0
  88. package/date-input/DatePicker.js +146 -0
  89. package/date-input/Icons.d.ts +6 -0
  90. package/date-input/Icons.js +75 -0
  91. package/date-input/YearPicker.d.ts +4 -0
  92. package/date-input/YearPicker.js +126 -0
  93. package/date-input/types.d.ts +158 -0
  94. package/date-input/types.js +5 -0
  95. package/dialog/Dialog.d.ts +4 -0
  96. package/dialog/Dialog.js +160 -0
  97. package/dialog/Dialog.stories.tsx +289 -0
  98. package/dialog/Dialog.test.js +70 -0
  99. package/dialog/types.d.ts +44 -0
  100. package/dialog/types.js +5 -0
  101. package/dropdown/Dropdown.d.ts +4 -0
  102. package/dropdown/Dropdown.js +388 -0
  103. package/dropdown/Dropdown.stories.tsx +438 -0
  104. package/dropdown/Dropdown.test.js +585 -0
  105. package/dropdown/DropdownMenu.d.ts +4 -0
  106. package/dropdown/DropdownMenu.js +70 -0
  107. package/dropdown/DropdownMenuItem.d.ts +4 -0
  108. package/dropdown/DropdownMenuItem.js +81 -0
  109. package/dropdown/types.d.ts +100 -0
  110. package/dropdown/types.js +5 -0
  111. package/file-input/FileInput.d.ts +4 -0
  112. package/file-input/FileInput.js +551 -0
  113. package/file-input/FileInput.stories.tsx +618 -0
  114. package/file-input/FileInput.test.js +498 -0
  115. package/file-input/FileItem.d.ts +4 -0
  116. package/file-input/FileItem.js +161 -0
  117. package/file-input/types.d.ts +129 -0
  118. package/file-input/types.js +5 -0
  119. package/flex/Flex.d.ts +4 -0
  120. package/flex/Flex.js +69 -0
  121. package/flex/Flex.stories.tsx +103 -0
  122. package/flex/types.d.ts +32 -0
  123. package/flex/types.js +5 -0
  124. package/footer/Footer.d.ts +4 -0
  125. package/footer/Footer.js +185 -0
  126. package/footer/Footer.stories.tsx +228 -0
  127. package/footer/Footer.test.js +109 -0
  128. package/footer/Icons.d.ts +2 -0
  129. package/{dist/footer → footer}/Icons.js +16 -16
  130. package/footer/types.d.ts +66 -0
  131. package/footer/types.js +5 -0
  132. package/header/Header.d.ts +7 -0
  133. package/header/Header.js +303 -0
  134. package/header/Header.stories.tsx +315 -0
  135. package/header/Header.test.js +79 -0
  136. package/header/Icons.d.ts +2 -0
  137. package/{dist/header → header}/Icons.js +9 -34
  138. package/header/types.d.ts +48 -0
  139. package/header/types.js +5 -0
  140. package/heading/Heading.d.ts +4 -0
  141. package/{dist/heading → heading}/Heading.js +25 -96
  142. package/heading/Heading.stories.tsx +54 -0
  143. package/heading/Heading.test.js +186 -0
  144. package/heading/types.d.ts +33 -0
  145. package/heading/types.js +5 -0
  146. package/inset/Inset.d.ts +3 -0
  147. package/inset/Inset.js +51 -0
  148. package/inset/Inset.stories.tsx +229 -0
  149. package/inset/types.d.ts +37 -0
  150. package/inset/types.js +5 -0
  151. package/layout/ApplicationLayout.d.ts +20 -0
  152. package/layout/ApplicationLayout.js +171 -0
  153. package/layout/ApplicationLayout.stories.tsx +162 -0
  154. package/layout/Icons.d.ts +5 -0
  155. package/{dist/layout → layout}/Icons.js +19 -8
  156. package/layout/SidenavContext.d.ts +5 -0
  157. package/layout/SidenavContext.js +19 -0
  158. package/layout/types.d.ts +42 -0
  159. package/layout/types.js +5 -0
  160. package/link/Link.d.ts +4 -0
  161. package/link/Link.js +136 -0
  162. package/link/Link.stories.tsx +253 -0
  163. package/link/Link.test.js +83 -0
  164. package/link/types.d.ts +54 -0
  165. package/link/types.js +5 -0
  166. package/main.d.ts +44 -0
  167. package/{dist/main.js → main.js} +114 -104
  168. package/number-input/NumberInput.d.ts +4 -0
  169. package/number-input/NumberInput.js +76 -0
  170. package/number-input/NumberInput.stories.tsx +115 -0
  171. package/number-input/NumberInput.test.js +542 -0
  172. package/number-input/NumberInputContext.d.ts +4 -0
  173. package/{dist/number-input → number-input}/NumberInputContext.js +5 -2
  174. package/number-input/numberInputContextTypes.d.ts +19 -0
  175. package/number-input/numberInputContextTypes.js +5 -0
  176. package/number-input/types.d.ts +124 -0
  177. package/number-input/types.js +5 -0
  178. package/package.json +44 -34
  179. package/paginator/Icons.d.ts +5 -0
  180. package/paginator/Icons.js +54 -0
  181. package/paginator/Paginator.d.ts +4 -0
  182. package/paginator/Paginator.js +165 -0
  183. package/paginator/Paginator.stories.tsx +87 -0
  184. package/paginator/Paginator.test.js +315 -0
  185. package/paginator/types.d.ts +38 -0
  186. package/paginator/types.js +5 -0
  187. package/paragraph/Paragraph.d.ts +6 -0
  188. package/paragraph/Paragraph.js +38 -0
  189. package/paragraph/Paragraph.stories.tsx +44 -0
  190. package/password-input/PasswordInput.d.ts +4 -0
  191. package/{dist/password-input → password-input}/PasswordInput.js +45 -77
  192. package/password-input/PasswordInput.stories.tsx +131 -0
  193. package/password-input/PasswordInput.test.js +181 -0
  194. package/password-input/types.d.ts +110 -0
  195. package/password-input/types.js +5 -0
  196. package/progress-bar/ProgressBar.d.ts +4 -0
  197. package/progress-bar/ProgressBar.js +176 -0
  198. package/progress-bar/ProgressBar.stories.jsx +93 -0
  199. package/progress-bar/ProgressBar.test.js +110 -0
  200. package/progress-bar/types.d.ts +36 -0
  201. package/progress-bar/types.js +5 -0
  202. package/quick-nav/QuickNav.d.ts +4 -0
  203. package/quick-nav/QuickNav.js +117 -0
  204. package/quick-nav/QuickNav.stories.tsx +356 -0
  205. package/quick-nav/types.d.ts +21 -0
  206. package/quick-nav/types.js +5 -0
  207. package/radio-group/Radio.d.ts +4 -0
  208. package/radio-group/Radio.js +156 -0
  209. package/radio-group/RadioGroup.d.ts +4 -0
  210. package/radio-group/RadioGroup.js +283 -0
  211. package/radio-group/RadioGroup.stories.tsx +214 -0
  212. package/radio-group/RadioGroup.test.js +722 -0
  213. package/radio-group/types.d.ts +114 -0
  214. package/radio-group/types.js +5 -0
  215. package/resultsetTable/Icons.d.ts +7 -0
  216. package/resultsetTable/Icons.js +51 -0
  217. package/resultsetTable/ResultsetTable.d.ts +4 -0
  218. package/resultsetTable/ResultsetTable.js +195 -0
  219. package/resultsetTable/ResultsetTable.stories.tsx +300 -0
  220. package/resultsetTable/ResultsetTable.test.js +325 -0
  221. package/resultsetTable/types.d.ts +67 -0
  222. package/resultsetTable/types.js +5 -0
  223. package/select/Icons.d.ts +10 -0
  224. package/select/Icons.js +93 -0
  225. package/select/Listbox.d.ts +4 -0
  226. package/select/Listbox.js +169 -0
  227. package/select/Option.d.ts +4 -0
  228. package/select/Option.js +97 -0
  229. package/select/Select.d.ts +4 -0
  230. package/select/Select.js +664 -0
  231. package/select/Select.stories.tsx +971 -0
  232. package/select/Select.test.js +2228 -0
  233. package/select/types.d.ts +210 -0
  234. package/select/types.js +5 -0
  235. package/sidenav/Sidenav.d.ts +10 -0
  236. package/sidenav/Sidenav.js +266 -0
  237. package/sidenav/Sidenav.stories.tsx +282 -0
  238. package/sidenav/Sidenav.test.js +44 -0
  239. package/sidenav/types.d.ts +73 -0
  240. package/sidenav/types.js +5 -0
  241. package/slider/Slider.d.ts +4 -0
  242. package/slider/Slider.js +343 -0
  243. package/slider/Slider.stories.tsx +240 -0
  244. package/slider/Slider.test.js +250 -0
  245. package/slider/types.d.ts +86 -0
  246. package/slider/types.js +5 -0
  247. package/spinner/Spinner.d.ts +4 -0
  248. package/spinner/Spinner.js +250 -0
  249. package/spinner/Spinner.stories.jsx +129 -0
  250. package/spinner/Spinner.test.js +64 -0
  251. package/spinner/types.d.ts +32 -0
  252. package/spinner/types.js +5 -0
  253. package/switch/Switch.d.ts +4 -0
  254. package/switch/Switch.js +262 -0
  255. package/switch/Switch.stories.tsx +171 -0
  256. package/switch/Switch.test.js +225 -0
  257. package/switch/types.d.ts +66 -0
  258. package/switch/types.js +5 -0
  259. package/table/Table.d.ts +4 -0
  260. package/{dist/table → table}/Table.js +12 -26
  261. package/table/Table.stories.jsx +356 -0
  262. package/table/Table.test.js +26 -0
  263. package/table/types.d.ts +21 -0
  264. package/table/types.js +5 -0
  265. package/tabs/Tab.d.ts +4 -0
  266. package/tabs/Tab.js +133 -0
  267. package/tabs/Tabs.d.ts +4 -0
  268. package/tabs/Tabs.js +467 -0
  269. package/tabs/Tabs.stories.tsx +226 -0
  270. package/tabs/Tabs.test.js +351 -0
  271. package/tabs/types.d.ts +92 -0
  272. package/tabs/types.js +5 -0
  273. package/tabs-nav/NavTabs.d.ts +8 -0
  274. package/tabs-nav/NavTabs.js +125 -0
  275. package/tabs-nav/NavTabs.stories.tsx +172 -0
  276. package/tabs-nav/NavTabs.test.js +82 -0
  277. package/tabs-nav/Tab.d.ts +4 -0
  278. package/tabs-nav/Tab.js +149 -0
  279. package/tabs-nav/types.d.ts +53 -0
  280. package/tabs-nav/types.js +5 -0
  281. package/tag/Tag.d.ts +4 -0
  282. package/tag/Tag.js +183 -0
  283. package/tag/Tag.stories.tsx +155 -0
  284. package/tag/Tag.test.js +60 -0
  285. package/tag/types.d.ts +69 -0
  286. package/tag/types.js +5 -0
  287. package/text-input/Icons.d.ts +8 -0
  288. package/text-input/Icons.js +60 -0
  289. package/text-input/Suggestion.d.ts +4 -0
  290. package/text-input/Suggestion.js +84 -0
  291. package/text-input/Suggestions.d.ts +4 -0
  292. package/text-input/Suggestions.js +134 -0
  293. package/text-input/TextInput.d.ts +4 -0
  294. package/text-input/TextInput.js +673 -0
  295. package/text-input/TextInput.stories.tsx +569 -0
  296. package/text-input/TextInput.test.js +1724 -0
  297. package/text-input/types.d.ts +197 -0
  298. package/text-input/types.js +5 -0
  299. package/textarea/Textarea.d.ts +4 -0
  300. package/{dist/textarea → textarea}/Textarea.js +50 -142
  301. package/textarea/Textarea.stories.jsx +216 -0
  302. package/textarea/Textarea.test.js +437 -0
  303. package/textarea/types.d.ts +137 -0
  304. package/textarea/types.js +5 -0
  305. package/toggle-group/ToggleGroup.d.ts +4 -0
  306. package/{dist/toggle-group → toggle-group}/ToggleGroup.js +36 -148
  307. package/toggle-group/ToggleGroup.stories.tsx +215 -0
  308. package/toggle-group/ToggleGroup.test.js +156 -0
  309. package/toggle-group/types.d.ts +105 -0
  310. package/toggle-group/types.js +5 -0
  311. package/typography/Typography.d.ts +4 -0
  312. package/typography/Typography.js +131 -0
  313. package/typography/Typography.stories.tsx +198 -0
  314. package/typography/types.d.ts +18 -0
  315. package/typography/types.js +5 -0
  316. package/useTheme.d.ts +2 -0
  317. package/{dist/useTheme.js → useTheme.js} +2 -2
  318. package/useTranslatedLabels.d.ts +2 -0
  319. package/useTranslatedLabels.js +20 -0
  320. package/wizard/Wizard.d.ts +4 -0
  321. package/wizard/Wizard.js +285 -0
  322. package/wizard/Wizard.stories.tsx +253 -0
  323. package/wizard/Wizard.test.js +141 -0
  324. package/wizard/types.d.ts +65 -0
  325. package/wizard/types.js +5 -0
  326. package/README.md +0 -66
  327. package/babel.config.js +0 -8
  328. package/dist/BackgroundColorContext.js +0 -46
  329. package/dist/ThemeContext.js +0 -250
  330. package/dist/V3Select/V3Select.js +0 -549
  331. package/dist/V3Textarea/V3Textarea.js +0 -264
  332. package/dist/accordion/Accordion.js +0 -353
  333. package/dist/accordion-group/AccordionGroup.js +0 -186
  334. package/dist/alert/index.d.ts +0 -51
  335. package/dist/badge/Badge.js +0 -63
  336. package/dist/box/Box.js +0 -156
  337. package/dist/button/Button.js +0 -238
  338. package/dist/card/Card.js +0 -254
  339. package/dist/checkbox/Checkbox.js +0 -299
  340. package/dist/chip/Chip.js +0 -265
  341. package/dist/common/RequiredComponent.js +0 -40
  342. package/dist/date/Date.js +0 -379
  343. package/dist/date-input/DateInput.js +0 -400
  344. package/dist/date-input/index.d.ts +0 -95
  345. package/dist/dialog/Dialog.js +0 -218
  346. package/dist/dropdown/Dropdown.js +0 -544
  347. package/dist/file-input/FileInput.js +0 -644
  348. package/dist/file-input/FileItem.js +0 -280
  349. package/dist/file-input/index.d.ts +0 -81
  350. package/dist/footer/Footer.js +0 -421
  351. package/dist/header/Header.js +0 -470
  352. package/dist/input-text/Icons.js +0 -22
  353. package/dist/input-text/InputText.js +0 -705
  354. package/dist/layout/ApplicationLayout.js +0 -327
  355. package/dist/link/Link.js +0 -237
  356. package/dist/main.d.ts +0 -8
  357. package/dist/number-input/NumberInput.js +0 -136
  358. package/dist/number-input/index.d.ts +0 -113
  359. package/dist/paginator/Icons.js +0 -66
  360. package/dist/paginator/Paginator.js +0 -283
  361. package/dist/password-input/index.d.ts +0 -94
  362. package/dist/progress-bar/ProgressBar.js +0 -242
  363. package/dist/radio/Radio.js +0 -209
  364. package/dist/resultsetTable/ResultsetTable.js +0 -358
  365. package/dist/select/Select.js +0 -1085
  366. package/dist/select/index.d.ts +0 -53
  367. package/dist/sidenav/Sidenav.js +0 -179
  368. package/dist/slider/Slider.js +0 -404
  369. package/dist/spinner/Spinner.js +0 -381
  370. package/dist/switch/Switch.js +0 -222
  371. package/dist/tabs/Tabs.js +0 -343
  372. package/dist/tag/Tag.js +0 -282
  373. package/dist/text-input/TextInput.js +0 -971
  374. package/dist/text-input/index.d.ts +0 -135
  375. package/dist/textarea/index.d.ts +0 -117
  376. package/dist/toggle/Toggle.js +0 -220
  377. package/dist/upload/Upload.js +0 -205
  378. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -135
  379. package/dist/upload/buttons-upload/Icons.js +0 -40
  380. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -329
  381. package/dist/upload/dragAndDropArea/Icons.js +0 -39
  382. package/dist/upload/file-upload/FileToUpload.js +0 -189
  383. package/dist/upload/file-upload/Icons.js +0 -66
  384. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  385. package/dist/upload/transaction/Icons.js +0 -160
  386. package/dist/upload/transaction/Transaction.js +0 -148
  387. package/dist/upload/transactions/Transactions.js +0 -138
  388. package/dist/wizard/Icons.js +0 -65
  389. package/dist/wizard/Wizard.js +0 -405
  390. package/test/Accordion.test.js +0 -33
  391. package/test/AccordionGroup.test.js +0 -125
  392. package/test/Alert.test.js +0 -53
  393. package/test/Box.test.js +0 -10
  394. package/test/Button.test.js +0 -18
  395. package/test/Card.test.js +0 -30
  396. package/test/Checkbox.test.js +0 -45
  397. package/test/Chip.test.js +0 -25
  398. package/test/Date.test.js +0 -397
  399. package/test/DateInput.test.js +0 -242
  400. package/test/Dialog.test.js +0 -23
  401. package/test/Dropdown.test.js +0 -145
  402. package/test/FileInput.test.js +0 -201
  403. package/test/Footer.test.js +0 -94
  404. package/test/Header.test.js +0 -34
  405. package/test/Heading.test.js +0 -83
  406. package/test/InputText.test.js +0 -248
  407. package/test/Link.test.js +0 -43
  408. package/test/NumberInput.test.js +0 -259
  409. package/test/Paginator.test.js +0 -177
  410. package/test/PasswordInput.test.js +0 -83
  411. package/test/ProgressBar.test.js +0 -35
  412. package/test/Radio.test.js +0 -37
  413. package/test/ResultsetTable.test.js +0 -329
  414. package/test/Sidenav.test.js +0 -45
  415. package/test/Slider.test.js +0 -74
  416. package/test/Spinner.test.js +0 -32
  417. package/test/Switch.test.js +0 -45
  418. package/test/Table.test.js +0 -36
  419. package/test/Tabs.test.js +0 -109
  420. package/test/Tag.test.js +0 -32
  421. package/test/TextInput.test.js +0 -732
  422. package/test/Textarea.test.js +0 -193
  423. package/test/ToggleGroup.test.js +0 -85
  424. package/test/Upload.test.js +0 -60
  425. package/test/V3Select.test.js +0 -212
  426. package/test/V3TextArea.test.js +0 -51
  427. package/test/Wizard.test.js +0 -130
  428. package/test/mocks/pngMock.js +0 -1
  429. 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,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, disabled }: BadgePropsType) => JSX.Element;
4
+ export default DxcBadge;
package/badge/Badge.js ADDED
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof = require("@babel/runtime/helpers/typeof");
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports["default"] = void 0;
11
+
12
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
13
+
14
+ var _react = _interopRequireDefault(require("react"));
15
+
16
+ var _styledComponents = _interopRequireWildcard(require("styled-components"));
17
+
18
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
19
+
20
+ var _templateObject;
21
+
22
+ 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); }
23
+
24
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(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; }
25
+
26
+ var DxcBadge = function DxcBadge(_ref) {
27
+ var notificationText = _ref.notificationText,
28
+ disabled = _ref.disabled;
29
+ var colorsTheme = (0, _useTheme["default"])();
30
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
31
+ theme: colorsTheme.tabs
32
+ }, /*#__PURE__*/_react["default"].createElement(StyledDxcBadge, {
33
+ notificationText: notificationText,
34
+ disabled: disabled
35
+ }, /*#__PURE__*/_react["default"].createElement("span", null, notificationText)));
36
+ };
37
+
38
+ var StyledDxcBadge = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n background-color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n letter-spacing: ", ";\n width: ", ";\n height: ", ";\n border-radius: ", ";\n display: flex;\n padding-bottom: 1px;\n padding-right: 1px;\n flex-wrap: wrap;\n box-sizing: border-box;\n align-items: center;\n line-height: 1;\n align-content: center;\n flex-direction: row;\n justify-content: center;\n"])), function (props) {
39
+ return props.disabled ? props.theme.disabledBadgeBackgroundColor : props.theme.badgeBackgroundColor;
40
+ }, function (props) {
41
+ return props.theme.badgeFontFamily;
42
+ }, function (props) {
43
+ return props.theme.badgeFontSize;
44
+ }, function (props) {
45
+ return props.theme.badgeFontStyle;
46
+ }, function (props) {
47
+ return props.theme.badgeFontWeight;
48
+ }, function (props) {
49
+ return props.theme.badgeFontColor;
50
+ }, function (props) {
51
+ return props.theme.badgeLetterSpacing;
52
+ }, function (props) {
53
+ return props.notificationText === true ? props.theme.badgeWidth : props.theme.badgeWidthWithNotificationNumber;
54
+ }, function (props) {
55
+ return props.notificationText === true ? props.theme.badgeHeight : props.theme.badgeHeightWithNotificationNumber;
56
+ }, function (props) {
57
+ return props.notificationText === true ? props.theme.badgeRadius : props.theme.badgeRadiusWithNotificationNumber;
58
+ });
59
+
60
+ var _default = DxcBadge;
61
+ exports["default"] = _default;
@@ -0,0 +1,5 @@
1
+ declare type Props = {
2
+ notificationText: boolean | number | string;
3
+ disabled?: boolean;
4
+ };
5
+ export default Props;
package/badge/types.js ADDED
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ import BleedPropsType from "./types";
3
+ export default function Bleed({ space, horizontal, vertical, top, right, bottom, left, children, }: BleedPropsType): JSX.Element;
package/bleed/Bleed.js ADDED
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = Bleed;
9
+
10
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
11
+
12
+ var _react = _interopRequireDefault(require("react"));
13
+
14
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
15
+
16
+ var _templateObject;
17
+
18
+ function Bleed(_ref) {
19
+ var space = _ref.space,
20
+ horizontal = _ref.horizontal,
21
+ vertical = _ref.vertical,
22
+ top = _ref.top,
23
+ right = _ref.right,
24
+ bottom = _ref.bottom,
25
+ left = _ref.left,
26
+ children = _ref.children;
27
+ return /*#__PURE__*/_react["default"].createElement(StyledBleed, {
28
+ space: space,
29
+ horizontal: horizontal,
30
+ vertical: vertical,
31
+ top: top,
32
+ right: right,
33
+ bottom: bottom,
34
+ left: left
35
+ }, children);
36
+ }
37
+
38
+ function getSpacingValue(spacingName) {
39
+ return spacingName ? spacingName : "0rem";
40
+ }
41
+
42
+ var StyledBleed = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n ", "\n"])), function (_ref2) {
43
+ var space = _ref2.space,
44
+ horizontal = _ref2.horizontal,
45
+ vertical = _ref2.vertical,
46
+ top = _ref2.top,
47
+ right = _ref2.right,
48
+ bottom = _ref2.bottom,
49
+ left = _ref2.left;
50
+ return "\n margin: -".concat(getSpacingValue(top || vertical || space), " -").concat(getSpacingValue(right || horizontal || space), " -").concat(getSpacingValue(bottom || vertical || space), " -").concat(getSpacingValue(left || horizontal || space), ";\n");
51
+ });