@dxc-technology/halstack-react 0.0.0-08e7b0e → 0.0.0-099fc65

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 (382) hide show
  1. package/BackgroundColorContext.js +50 -0
  2. package/ThemeContext.js +246 -0
  3. package/V3Select/V3Select.js +455 -0
  4. package/V3Select/index.d.ts +27 -0
  5. package/V3Textarea/V3Textarea.js +260 -0
  6. package/V3Textarea/index.d.ts +27 -0
  7. package/accordion/Accordion.d.ts +4 -0
  8. package/accordion/Accordion.js +258 -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/types.d.ts +72 -0
  15. package/accordion-group/types.js +5 -0
  16. package/alert/Alert.d.ts +4 -0
  17. package/alert/Alert.js +290 -0
  18. package/alert/Alert.stories.tsx +170 -0
  19. package/alert/types.d.ts +49 -0
  20. package/alert/types.js +5 -0
  21. package/badge/Badge.js +59 -0
  22. package/box/Box.d.ts +4 -0
  23. package/box/Box.js +126 -0
  24. package/box/Box.stories.tsx +132 -0
  25. package/box/types.d.ts +43 -0
  26. package/box/types.js +5 -0
  27. package/button/Button.d.ts +4 -0
  28. package/button/Button.js +179 -0
  29. package/button/Button.stories.tsx +276 -0
  30. package/button/types.d.ts +57 -0
  31. package/button/types.js +5 -0
  32. package/card/Card.d.ts +4 -0
  33. package/card/Card.js +164 -0
  34. package/card/Card.stories.tsx +201 -0
  35. package/card/ice-cream.jpg +0 -0
  36. package/card/types.d.ts +67 -0
  37. package/card/types.js +5 -0
  38. package/checkbox/Checkbox.d.ts +4 -0
  39. package/checkbox/Checkbox.js +253 -0
  40. package/checkbox/Checkbox.stories.tsx +192 -0
  41. package/checkbox/types.d.ts +60 -0
  42. package/checkbox/types.js +5 -0
  43. package/chip/Chip.d.ts +4 -0
  44. package/chip/Chip.js +199 -0
  45. package/chip/Chip.stories.tsx +121 -0
  46. package/chip/types.d.ts +53 -0
  47. package/chip/types.js +5 -0
  48. package/{dist/common → common}/OpenSans.css +0 -0
  49. package/common/RequiredComponent.js +32 -0
  50. package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  51. package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  52. package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  53. package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  54. package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  55. package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  56. package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  57. package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  58. package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  59. package/{dist/common → common}/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  60. package/{dist/common → common}/utils.js +0 -0
  61. package/common/variables.js +1578 -0
  62. package/{dist/date → date}/Date.js +121 -90
  63. package/date/index.d.ts +27 -0
  64. package/date-input/DateInput.d.ts +4 -0
  65. package/date-input/DateInput.js +361 -0
  66. package/date-input/DateInput.stories.tsx +138 -0
  67. package/date-input/types.d.ts +100 -0
  68. package/date-input/types.js +5 -0
  69. package/dialog/Dialog.d.ts +4 -0
  70. package/dialog/Dialog.js +165 -0
  71. package/dialog/Dialog.stories.tsx +212 -0
  72. package/dialog/types.d.ts +43 -0
  73. package/dialog/types.js +5 -0
  74. package/dropdown/Dropdown.d.ts +4 -0
  75. package/dropdown/Dropdown.js +417 -0
  76. package/dropdown/types.d.ts +89 -0
  77. package/dropdown/types.js +5 -0
  78. package/file-input/FileInput.d.ts +4 -0
  79. package/file-input/FileInput.js +511 -0
  80. package/file-input/FileItem.d.ts +14 -0
  81. package/file-input/FileItem.js +184 -0
  82. package/file-input/types.d.ts +87 -0
  83. package/file-input/types.js +5 -0
  84. package/footer/Footer.d.ts +4 -0
  85. package/footer/Footer.js +266 -0
  86. package/footer/Footer.stories.jsx +151 -0
  87. package/footer/Icons.js +77 -0
  88. package/footer/types.d.ts +69 -0
  89. package/footer/types.js +5 -0
  90. package/header/Header.d.ts +7 -0
  91. package/header/Header.js +324 -0
  92. package/header/Header.stories.tsx +162 -0
  93. package/header/Icons.js +34 -0
  94. package/header/types.d.ts +47 -0
  95. package/header/types.js +5 -0
  96. package/heading/Heading.d.ts +4 -0
  97. package/heading/Heading.js +159 -0
  98. package/heading/Heading.stories.tsx +53 -0
  99. package/heading/types.d.ts +33 -0
  100. package/heading/types.js +5 -0
  101. package/input-text/Icons.js +22 -0
  102. package/input-text/InputText.js +611 -0
  103. package/input-text/index.d.ts +36 -0
  104. package/layout/ApplicationLayout.js +235 -0
  105. package/layout/Icons.js +55 -0
  106. package/link/Link.d.ts +3 -0
  107. package/link/Link.js +161 -0
  108. package/link/Link.stories.tsx +146 -0
  109. package/link/types.d.ts +74 -0
  110. package/link/types.js +5 -0
  111. package/main.d.ts +44 -0
  112. package/{dist/main.js → main.js} +143 -43
  113. package/number-input/NumberInput.d.ts +4 -0
  114. package/number-input/NumberInput.js +86 -0
  115. package/number-input/NumberInput.stories.tsx +115 -0
  116. package/number-input/NumberInputContext.d.ts +4 -0
  117. package/{dist/ThemeContext.js → number-input/NumberInputContext.js} +6 -2
  118. package/number-input/numberInputContextTypes.d.ts +19 -0
  119. package/number-input/numberInputContextTypes.js +5 -0
  120. package/number-input/types.d.ts +117 -0
  121. package/number-input/types.js +5 -0
  122. package/package.json +39 -24
  123. package/paginator/Icons.js +66 -0
  124. package/paginator/Paginator.d.ts +4 -0
  125. package/paginator/Paginator.js +198 -0
  126. package/paginator/Paginator.stories.tsx +63 -0
  127. package/paginator/types.d.ts +38 -0
  128. package/paginator/types.js +5 -0
  129. package/password-input/PasswordInput.d.ts +4 -0
  130. package/password-input/PasswordInput.js +164 -0
  131. package/password-input/PasswordInput.stories.tsx +131 -0
  132. package/password-input/types.d.ts +107 -0
  133. package/password-input/types.js +5 -0
  134. package/progress-bar/ProgressBar.d.ts +4 -0
  135. package/progress-bar/ProgressBar.js +170 -0
  136. package/progress-bar/ProgressBar.stories.jsx +58 -0
  137. package/progress-bar/types.d.ts +37 -0
  138. package/progress-bar/types.js +5 -0
  139. package/radio/Radio.d.ts +4 -0
  140. package/radio/Radio.js +174 -0
  141. package/radio/Radio.stories.tsx +192 -0
  142. package/radio/types.d.ts +54 -0
  143. package/radio/types.js +5 -0
  144. package/resultsetTable/ResultsetTable.d.ts +4 -0
  145. package/resultsetTable/ResultsetTable.js +251 -0
  146. package/resultsetTable/types.d.ts +67 -0
  147. package/resultsetTable/types.js +5 -0
  148. package/select/Select.js +865 -0
  149. package/select/Select.stories.tsx +572 -0
  150. package/select/index.d.ts +131 -0
  151. package/sidenav/Sidenav.d.ts +9 -0
  152. package/sidenav/Sidenav.js +136 -0
  153. package/sidenav/Sidenav.stories.tsx +165 -0
  154. package/sidenav/types.d.ts +50 -0
  155. package/sidenav/types.js +5 -0
  156. package/slider/Slider.d.ts +4 -0
  157. package/slider/Slider.js +317 -0
  158. package/slider/Slider.stories.tsx +177 -0
  159. package/slider/types.d.ts +78 -0
  160. package/slider/types.js +5 -0
  161. package/spinner/Spinner.d.ts +4 -0
  162. package/spinner/Spinner.js +250 -0
  163. package/spinner/Spinner.stories.jsx +102 -0
  164. package/spinner/types.d.ts +32 -0
  165. package/spinner/types.js +5 -0
  166. package/switch/Switch.d.ts +4 -0
  167. package/switch/Switch.js +179 -0
  168. package/switch/Switch.stories.tsx +160 -0
  169. package/switch/types.d.ts +58 -0
  170. package/switch/types.js +5 -0
  171. package/table/Table.d.ts +4 -0
  172. package/table/Table.js +118 -0
  173. package/table/Table.stories.jsx +276 -0
  174. package/table/types.d.ts +21 -0
  175. package/table/types.js +5 -0
  176. package/tabs/Tabs.d.ts +4 -0
  177. package/tabs/Tabs.js +213 -0
  178. package/tabs/Tabs.stories.tsx +121 -0
  179. package/tabs/types.d.ts +70 -0
  180. package/tabs/types.js +5 -0
  181. package/tag/Tag.d.ts +4 -0
  182. package/tag/Tag.js +193 -0
  183. package/tag/Tag.stories.tsx +145 -0
  184. package/tag/types.d.ts +60 -0
  185. package/tag/types.js +5 -0
  186. package/text-input/TextInput.d.ts +4 -0
  187. package/text-input/TextInput.js +786 -0
  188. package/text-input/TextInput.stories.tsx +456 -0
  189. package/text-input/types.d.ts +159 -0
  190. package/text-input/types.js +5 -0
  191. package/textarea/Textarea.js +316 -0
  192. package/textarea/Textarea.stories.jsx +135 -0
  193. package/textarea/index.d.ts +127 -0
  194. package/{dist/toggle → toggle}/Toggle.js +30 -67
  195. package/toggle/index.d.ts +21 -0
  196. package/toggle-group/ToggleGroup.d.ts +4 -0
  197. package/toggle-group/ToggleGroup.js +217 -0
  198. package/toggle-group/ToggleGroup.stories.tsx +178 -0
  199. package/toggle-group/types.d.ts +84 -0
  200. package/toggle-group/types.js +5 -0
  201. package/{dist/upload → upload}/Upload.js +23 -22
  202. package/upload/buttons-upload/ButtonsUpload.js +111 -0
  203. package/upload/buttons-upload/Icons.js +40 -0
  204. package/upload/dragAndDropArea/DragAndDropArea.js +225 -0
  205. package/upload/dragAndDropArea/Icons.js +39 -0
  206. package/upload/file-upload/FileToUpload.js +115 -0
  207. package/upload/file-upload/Icons.js +66 -0
  208. package/upload/files-upload/FilesToUpload.js +109 -0
  209. package/upload/index.d.ts +15 -0
  210. package/upload/transaction/Icons.js +160 -0
  211. package/upload/transaction/Transaction.js +104 -0
  212. package/upload/transactions/Transactions.js +94 -0
  213. package/useTheme.js +22 -0
  214. package/wizard/Icons.js +65 -0
  215. package/wizard/Wizard.d.ts +4 -0
  216. package/wizard/Wizard.js +231 -0
  217. package/wizard/Wizard.stories.jsx +224 -0
  218. package/wizard/types.d.ts +64 -0
  219. package/wizard/types.js +5 -0
  220. package/README.md +0 -66
  221. package/babel.config.js +0 -4
  222. package/dist/accordion/Accordion.js +0 -264
  223. package/dist/accordion/Accordion.stories.js +0 -207
  224. package/dist/accordion/readme.md +0 -96
  225. package/dist/alert/Alert.js +0 -302
  226. package/dist/alert/Alert.stories.js +0 -158
  227. package/dist/alert/close.svg +0 -4
  228. package/dist/alert/error.svg +0 -4
  229. package/dist/alert/info.svg +0 -4
  230. package/dist/alert/readme.md +0 -43
  231. package/dist/alert/success.svg +0 -4
  232. package/dist/alert/warning.svg +0 -4
  233. package/dist/box/Box.js +0 -136
  234. package/dist/button/Button.js +0 -187
  235. package/dist/button/Button.stories.js +0 -224
  236. package/dist/button/readme.md +0 -93
  237. package/dist/card/Card.js +0 -246
  238. package/dist/checkbox/Checkbox.js +0 -221
  239. package/dist/checkbox/Checkbox.stories.js +0 -144
  240. package/dist/checkbox/readme.md +0 -116
  241. package/dist/chip/Chip.js +0 -170
  242. package/dist/common/RequiredComponent.js +0 -50
  243. package/dist/common/services/example-service.js +0 -10
  244. package/dist/common/services/example-service.test.js +0 -12
  245. package/dist/common/variables.js +0 -77
  246. package/dist/date/Date.stories.js +0 -205
  247. package/dist/date/calendar.svg +0 -1
  248. package/dist/date/calendar_dark.svg +0 -1
  249. package/dist/date/readme.md +0 -73
  250. package/dist/dialog/Dialog.js +0 -193
  251. package/dist/dialog/Dialog.stories.js +0 -217
  252. package/dist/dialog/readme.md +0 -32
  253. package/dist/dropdown/Dropdown.js +0 -412
  254. package/dist/dropdown/Dropdown.stories.js +0 -249
  255. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  256. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  257. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  258. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  259. package/dist/dropdown/readme.md +0 -69
  260. package/dist/footer/Footer.js +0 -341
  261. package/dist/footer/Footer.stories.js +0 -94
  262. package/dist/footer/dxc_logo_wht.png +0 -0
  263. package/dist/footer/readme.md +0 -41
  264. package/dist/header/Header.js +0 -343
  265. package/dist/header/Header.stories.js +0 -176
  266. package/dist/header/close_icon.svg +0 -1
  267. package/dist/header/dxc_logo_black.png +0 -0
  268. package/dist/header/dxc_logo_white.png +0 -0
  269. package/dist/header/hamb_menu_black.svg +0 -1
  270. package/dist/header/hamb_menu_white.svg +0 -1
  271. package/dist/header/readme.md +0 -33
  272. package/dist/heading/Heading.js +0 -159
  273. package/dist/input-text/InputText.js +0 -510
  274. package/dist/input-text/InputText.stories.js +0 -209
  275. package/dist/input-text/error.svg +0 -1
  276. package/dist/input-text/readme.md +0 -91
  277. package/dist/link/Link.js +0 -129
  278. package/dist/link/readme.md +0 -51
  279. package/dist/paginator/Paginator.js +0 -178
  280. package/dist/paginator/images/next.svg +0 -3
  281. package/dist/paginator/images/nextPage.svg +0 -3
  282. package/dist/paginator/images/previous.svg +0 -3
  283. package/dist/paginator/images/previousPage.svg +0 -3
  284. package/dist/paginator/readme.md +0 -50
  285. package/dist/progress-bar/ProgressBar.js +0 -189
  286. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  287. package/dist/progress-bar/readme.md +0 -63
  288. package/dist/radio/Radio.js +0 -204
  289. package/dist/radio/Radio.stories.js +0 -166
  290. package/dist/radio/readme.md +0 -70
  291. package/dist/resultsetTable/ResultsetTable.js +0 -334
  292. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  293. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  294. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  295. package/dist/select/Select.js +0 -425
  296. package/dist/select/Select.stories.js +0 -235
  297. package/dist/select/readme.md +0 -72
  298. package/dist/sidenav/Sidenav.js +0 -217
  299. package/dist/sidenav/arrow_icon.svg +0 -3
  300. package/dist/slider/Slider.js +0 -268
  301. package/dist/slider/Slider.stories.js +0 -241
  302. package/dist/slider/readme.md +0 -64
  303. package/dist/spinner/Spinner.js +0 -196
  304. package/dist/spinner/Spinner.stories.js +0 -183
  305. package/dist/spinner/readme.md +0 -65
  306. package/dist/switch/Switch.js +0 -219
  307. package/dist/switch/Switch.stories.js +0 -134
  308. package/dist/switch/readme.md +0 -133
  309. package/dist/table/Table.js +0 -84
  310. package/dist/tabs/Tabs.js +0 -183
  311. package/dist/tabs/Tabs.stories.js +0 -130
  312. package/dist/tabs/readme.md +0 -78
  313. package/dist/tabs-for-sections/TabsForSections.js +0 -107
  314. package/dist/tabs-for-sections/readme.md +0 -78
  315. package/dist/tag/Tag.js +0 -217
  316. package/dist/textarea/Textarea.js +0 -226
  317. package/dist/toggle/Toggle.stories.js +0 -297
  318. package/dist/toggle/readme.md +0 -80
  319. package/dist/upload/Upload.stories.js +0 -72
  320. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -125
  321. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  322. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  323. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -282
  324. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  325. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  326. package/dist/upload/file-upload/FileToUpload.js +0 -158
  327. package/dist/upload/file-upload/audio-icon.svg +0 -4
  328. package/dist/upload/file-upload/close.svg +0 -4
  329. package/dist/upload/file-upload/file-icon.svg +0 -4
  330. package/dist/upload/file-upload/video-icon.svg +0 -4
  331. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  332. package/dist/upload/readme.md +0 -37
  333. package/dist/upload/transaction/Transaction.js +0 -155
  334. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  335. package/dist/upload/transaction/audio-icon.svg +0 -4
  336. package/dist/upload/transaction/error-icon.svg +0 -4
  337. package/dist/upload/transaction/file-icon-err.svg +0 -4
  338. package/dist/upload/transaction/file-icon.svg +0 -4
  339. package/dist/upload/transaction/image-icon-err.svg +0 -4
  340. package/dist/upload/transaction/image-icon.svg +0 -4
  341. package/dist/upload/transaction/success-icon.svg +0 -4
  342. package/dist/upload/transaction/video-icon-err.svg +0 -4
  343. package/dist/upload/transaction/video-icon.svg +0 -4
  344. package/dist/upload/transactions/Transactions.js +0 -120
  345. package/dist/wizard/Wizard.js +0 -310
  346. package/dist/wizard/invalid_icon.svg +0 -6
  347. package/dist/wizard/valid_icon.svg +0 -6
  348. package/dist/wizard/validation-wrong.svg +0 -6
  349. package/test/Accordion.test.js +0 -33
  350. package/test/Alert.test.js +0 -53
  351. package/test/Box.test.js +0 -10
  352. package/test/Button.test.js +0 -18
  353. package/test/Card.test.js +0 -30
  354. package/test/Checkbox.test.js +0 -45
  355. package/test/Chip.test.js +0 -25
  356. package/test/Date.test.js +0 -393
  357. package/test/Dialog.test.js +0 -23
  358. package/test/Dropdown.test.js +0 -130
  359. package/test/Footer.test.js +0 -99
  360. package/test/Header.test.js +0 -39
  361. package/test/Heading.test.js +0 -35
  362. package/test/InputText.test.js +0 -236
  363. package/test/Link.test.js +0 -25
  364. package/test/Paginator.test.js +0 -165
  365. package/test/ProgressBar.test.js +0 -35
  366. package/test/Radio.test.js +0 -37
  367. package/test/ResultsetTable.test.js +0 -282
  368. package/test/Select.test.js +0 -191
  369. package/test/Sidenav.test.js +0 -87
  370. package/test/Slider.test.js +0 -65
  371. package/test/Spinner.test.js +0 -27
  372. package/test/Switch.test.js +0 -45
  373. package/test/Table.test.js +0 -36
  374. package/test/Tabs.test.js +0 -88
  375. package/test/TabsForSections.test.js +0 -34
  376. package/test/Tag.test.js +0 -32
  377. package/test/TextArea.test.js +0 -52
  378. package/test/Toggle.test.js +0 -43
  379. package/test/Upload.test.js +0 -60
  380. package/test/Wizard.test.js +0 -130
  381. package/test/mocks/pngMock.js +0 -1
  382. 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.js"));
25
+
26
+ var _BackgroundColorContext = require("../BackgroundColorContext.js");
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,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
+ });
package/badge/Badge.js ADDED
@@ -0,0 +1,59 @@
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.js"));
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
+ var colorsTheme = (0, _useTheme["default"])();
29
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
30
+ theme: colorsTheme.tabs
31
+ }, /*#__PURE__*/_react["default"].createElement(StyledDxcBadge, {
32
+ notificationText: notificationText
33
+ }, /*#__PURE__*/_react["default"].createElement("span", null, notificationText)));
34
+ };
35
+
36
+ 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) {
37
+ return props.theme.badgeBackgroundColor;
38
+ }, function (props) {
39
+ return props.theme.badgeFontFamily;
40
+ }, function (props) {
41
+ return props.theme.badgeFontSize;
42
+ }, function (props) {
43
+ return props.theme.badgeFontStyle;
44
+ }, function (props) {
45
+ return props.theme.badgeFontWeight;
46
+ }, function (props) {
47
+ return props.theme.badgeFontColor;
48
+ }, function (props) {
49
+ return props.theme.badgeLetterSpacing;
50
+ }, function (props) {
51
+ return props.notificationText === true ? props.theme.badgeWidth : props.theme.badgeWidthWithNotificationNumber;
52
+ }, function (props) {
53
+ return props.notificationText === true ? props.theme.badgeHeight : props.theme.badgeHeightWithNotificationNumber;
54
+ }, function (props) {
55
+ return props.notificationText === true ? props.theme.badgeRadius : props.theme.badgeRadiusWithNotificationNumber;
56
+ });
57
+
58
+ var _default = DxcBadge;
59
+ exports["default"] = _default;
package/box/Box.d.ts ADDED
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import BoxPropsType from "./types";
3
+ declare const DxcBox: ({ shadowDepth, display, children, margin, padding, size, }: BoxPropsType) => JSX.Element;
4
+ export default DxcBox;