@dxc-technology/halstack-react 0.0.0-9253572 → 0.0.0-9282b45

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 (364) hide show
  1. package/BackgroundColorContext.d.ts +10 -0
  2. package/BackgroundColorContext.js +7 -6
  3. package/HalstackContext.d.ts +12 -0
  4. package/HalstackContext.js +295 -0
  5. package/accordion/Accordion.d.ts +4 -0
  6. package/accordion/Accordion.js +129 -237
  7. package/accordion/Accordion.stories.tsx +306 -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 +68 -105
  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/alert/Alert.js +44 -154
  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 +15 -17
  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 +37 -77
  34. package/box/Box.stories.tsx +132 -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 +63 -145
  45. package/button/Button.stories.tsx +283 -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 +44 -137
  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 +106 -156
  58. package/checkbox/Checkbox.stories.tsx +188 -0
  59. package/checkbox/Checkbox.test.js +155 -0
  60. package/checkbox/types.d.ts +64 -0
  61. package/checkbox/types.js +5 -0
  62. package/chip/Chip.d.ts +4 -0
  63. package/chip/Chip.js +26 -130
  64. package/chip/Chip.stories.tsx +119 -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/common/RequiredComponent.js +3 -11
  69. package/common/variables.js +322 -381
  70. package/date-input/DateInput.d.ts +4 -0
  71. package/date-input/DateInput.js +83 -111
  72. package/date-input/DateInput.stories.tsx +138 -0
  73. package/date-input/DateInput.test.js +479 -0
  74. package/date-input/types.d.ts +107 -0
  75. package/date-input/types.js +5 -0
  76. package/dialog/Dialog.d.ts +4 -0
  77. package/dialog/Dialog.js +60 -116
  78. package/dialog/Dialog.stories.tsx +267 -0
  79. package/dialog/Dialog.test.js +70 -0
  80. package/dialog/types.d.ts +44 -0
  81. package/dialog/types.js +5 -0
  82. package/dropdown/Dropdown.d.ts +4 -0
  83. package/dropdown/Dropdown.js +243 -399
  84. package/dropdown/Dropdown.stories.tsx +312 -0
  85. package/dropdown/Dropdown.test.js +590 -0
  86. package/dropdown/DropdownMenu.d.ts +4 -0
  87. package/dropdown/DropdownMenu.js +80 -0
  88. package/dropdown/DropdownMenuItem.d.ts +4 -0
  89. package/dropdown/DropdownMenuItem.js +92 -0
  90. package/dropdown/types.d.ts +100 -0
  91. package/dropdown/types.js +5 -0
  92. package/file-input/FileInput.d.ts +4 -0
  93. package/file-input/FileInput.js +200 -251
  94. package/file-input/FileInput.stories.tsx +507 -0
  95. package/file-input/FileInput.test.js +457 -0
  96. package/file-input/FileItem.d.ts +14 -0
  97. package/file-input/FileItem.js +44 -145
  98. package/file-input/types.d.ts +112 -0
  99. package/file-input/types.js +5 -0
  100. package/flex/Flex.d.ts +4 -0
  101. package/flex/Flex.js +69 -0
  102. package/flex/Flex.stories.tsx +103 -0
  103. package/flex/types.d.ts +32 -0
  104. package/flex/types.js +5 -0
  105. package/footer/Footer.d.ts +4 -0
  106. package/footer/Footer.js +50 -286
  107. package/footer/Footer.stories.tsx +137 -0
  108. package/footer/Footer.test.js +109 -0
  109. package/footer/Icons.d.ts +2 -0
  110. package/footer/Icons.js +16 -16
  111. package/footer/types.d.ts +66 -0
  112. package/footer/types.js +5 -0
  113. package/header/Header.d.ts +7 -0
  114. package/header/Header.js +131 -296
  115. package/header/Header.stories.tsx +172 -0
  116. package/header/Header.test.js +79 -0
  117. package/header/Icons.d.ts +2 -0
  118. package/header/Icons.js +9 -34
  119. package/header/types.d.ts +48 -0
  120. package/header/types.js +5 -0
  121. package/heading/Heading.d.ts +4 -0
  122. package/heading/Heading.js +25 -96
  123. package/heading/Heading.stories.tsx +54 -0
  124. package/heading/Heading.test.js +186 -0
  125. package/heading/types.d.ts +33 -0
  126. package/heading/types.js +5 -0
  127. package/inset/Inset.d.ts +3 -0
  128. package/inset/Inset.js +51 -0
  129. package/inset/Inset.stories.tsx +229 -0
  130. package/inset/types.d.ts +37 -0
  131. package/inset/types.js +5 -0
  132. package/layout/ApplicationLayout.d.ts +20 -0
  133. package/layout/ApplicationLayout.js +76 -232
  134. package/layout/ApplicationLayout.stories.tsx +162 -0
  135. package/layout/Icons.d.ts +5 -0
  136. package/layout/Icons.js +19 -8
  137. package/layout/SidenavContext.d.ts +5 -0
  138. package/layout/SidenavContext.js +19 -0
  139. package/layout/types.d.ts +42 -0
  140. package/layout/types.js +5 -0
  141. package/link/Link.d.ts +4 -0
  142. package/link/Link.js +64 -165
  143. package/link/Link.stories.tsx +193 -0
  144. package/link/Link.test.js +83 -0
  145. package/link/types.d.ts +54 -0
  146. package/link/types.js +5 -0
  147. package/main.d.ts +44 -40
  148. package/main.js +114 -104
  149. package/number-input/NumberInput.d.ts +4 -0
  150. package/number-input/NumberInput.js +21 -81
  151. package/number-input/NumberInput.stories.tsx +115 -0
  152. package/number-input/NumberInput.test.js +506 -0
  153. package/number-input/NumberInputContext.d.ts +4 -0
  154. package/number-input/NumberInputContext.js +5 -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 +124 -0
  158. package/number-input/types.js +5 -0
  159. package/package.json +30 -23
  160. package/paginator/Icons.js +9 -9
  161. package/paginator/Paginator.d.ts +4 -0
  162. package/paginator/Paginator.js +32 -166
  163. package/paginator/Paginator.stories.tsx +63 -0
  164. package/paginator/Paginator.test.js +308 -0
  165. package/paginator/types.d.ts +38 -0
  166. package/paginator/types.js +5 -0
  167. package/paragraph/Paragraph.d.ts +6 -0
  168. package/paragraph/Paragraph.js +38 -0
  169. package/paragraph/Paragraph.stories.tsx +44 -0
  170. package/password-input/PasswordInput.d.ts +4 -0
  171. package/password-input/PasswordInput.js +44 -79
  172. package/password-input/PasswordInput.stories.tsx +131 -0
  173. package/password-input/PasswordInput.test.js +181 -0
  174. package/password-input/types.d.ts +110 -0
  175. package/password-input/types.js +5 -0
  176. package/progress-bar/ProgressBar.d.ts +4 -0
  177. package/progress-bar/ProgressBar.js +72 -138
  178. package/progress-bar/ProgressBar.stories.jsx +60 -0
  179. package/progress-bar/ProgressBar.test.js +110 -0
  180. package/progress-bar/types.d.ts +36 -0
  181. package/progress-bar/types.js +5 -0
  182. package/quick-nav/QuickNav.d.ts +4 -0
  183. package/quick-nav/QuickNav.js +117 -0
  184. package/quick-nav/QuickNav.stories.tsx +342 -0
  185. package/quick-nav/types.d.ts +21 -0
  186. package/quick-nav/types.js +5 -0
  187. package/radio-group/Radio.d.ts +4 -0
  188. package/radio-group/Radio.js +156 -0
  189. package/radio-group/RadioGroup.d.ts +4 -0
  190. package/radio-group/RadioGroup.js +283 -0
  191. package/radio-group/RadioGroup.stories.tsx +101 -0
  192. package/radio-group/RadioGroup.test.js +722 -0
  193. package/radio-group/types.d.ts +114 -0
  194. package/radio-group/types.js +5 -0
  195. package/resultsetTable/ResultsetTable.d.ts +4 -0
  196. package/resultsetTable/ResultsetTable.js +43 -147
  197. package/resultsetTable/ResultsetTable.stories.tsx +275 -0
  198. package/resultsetTable/ResultsetTable.test.js +348 -0
  199. package/resultsetTable/types.d.ts +67 -0
  200. package/resultsetTable/types.js +5 -0
  201. package/select/Icons.d.ts +10 -0
  202. package/select/Icons.js +93 -0
  203. package/select/Listbox.d.ts +4 -0
  204. package/select/Listbox.js +198 -0
  205. package/select/Option.d.ts +4 -0
  206. package/select/Option.js +110 -0
  207. package/select/Select.d.ts +4 -0
  208. package/select/Select.js +231 -724
  209. package/select/Select.stories.tsx +627 -0
  210. package/select/Select.test.js +2233 -0
  211. package/select/types.d.ts +210 -0
  212. package/select/types.js +5 -0
  213. package/sidenav/Sidenav.d.ts +10 -0
  214. package/sidenav/Sidenav.js +194 -105
  215. package/sidenav/Sidenav.stories.tsx +180 -0
  216. package/sidenav/Sidenav.test.js +44 -0
  217. package/sidenav/types.d.ts +73 -0
  218. package/sidenav/types.js +5 -0
  219. package/slider/Slider.d.ts +4 -0
  220. package/slider/Slider.js +162 -224
  221. package/slider/Slider.stories.tsx +183 -0
  222. package/slider/Slider.test.js +250 -0
  223. package/slider/types.d.ts +82 -0
  224. package/slider/types.js +5 -0
  225. package/spinner/Spinner.d.ts +4 -0
  226. package/spinner/Spinner.js +46 -177
  227. package/spinner/Spinner.stories.jsx +103 -0
  228. package/spinner/Spinner.test.js +64 -0
  229. package/spinner/types.d.ts +32 -0
  230. package/spinner/types.js +5 -0
  231. package/switch/Switch.d.ts +4 -0
  232. package/switch/Switch.js +158 -119
  233. package/switch/Switch.stories.tsx +138 -0
  234. package/switch/Switch.test.js +225 -0
  235. package/switch/types.d.ts +61 -0
  236. package/switch/types.js +5 -0
  237. package/table/Table.d.ts +4 -0
  238. package/table/Table.js +12 -26
  239. package/table/Table.stories.jsx +277 -0
  240. package/table/Table.test.js +26 -0
  241. package/table/types.d.ts +21 -0
  242. package/table/types.js +5 -0
  243. package/tabs/Tab.d.ts +4 -0
  244. package/tabs/Tab.js +135 -0
  245. package/tabs/Tabs.d.ts +4 -0
  246. package/tabs/Tabs.js +353 -229
  247. package/tabs/Tabs.stories.tsx +186 -0
  248. package/tabs/Tabs.test.js +351 -0
  249. package/tabs/types.d.ts +92 -0
  250. package/tabs/types.js +5 -0
  251. package/tabs-nav/NavTabs.d.ts +8 -0
  252. package/tabs-nav/NavTabs.js +125 -0
  253. package/tabs-nav/NavTabs.stories.tsx +170 -0
  254. package/tabs-nav/NavTabs.test.js +82 -0
  255. package/tabs-nav/Tab.d.ts +4 -0
  256. package/tabs-nav/Tab.js +130 -0
  257. package/tabs-nav/types.d.ts +53 -0
  258. package/tabs-nav/types.js +5 -0
  259. package/tag/Tag.d.ts +4 -0
  260. package/tag/Tag.js +45 -144
  261. package/tag/Tag.stories.tsx +142 -0
  262. package/tag/Tag.test.js +60 -0
  263. package/tag/types.d.ts +69 -0
  264. package/tag/types.js +5 -0
  265. package/text-input/Icons.d.ts +8 -0
  266. package/text-input/Icons.js +60 -0
  267. package/text-input/Suggestion.d.ts +4 -0
  268. package/text-input/Suggestion.js +57 -0
  269. package/text-input/Suggestions.d.ts +4 -0
  270. package/text-input/Suggestions.js +134 -0
  271. package/text-input/TextInput.d.ts +4 -0
  272. package/text-input/TextInput.js +256 -575
  273. package/text-input/TextInput.stories.tsx +481 -0
  274. package/text-input/TextInput.test.js +1714 -0
  275. package/text-input/types.d.ts +197 -0
  276. package/text-input/types.js +5 -0
  277. package/textarea/Textarea.d.ts +4 -0
  278. package/textarea/Textarea.js +50 -142
  279. package/textarea/Textarea.stories.jsx +157 -0
  280. package/textarea/Textarea.test.js +437 -0
  281. package/textarea/types.d.ts +137 -0
  282. package/textarea/types.js +5 -0
  283. package/toggle-group/ToggleGroup.d.ts +4 -0
  284. package/toggle-group/ToggleGroup.js +36 -148
  285. package/toggle-group/ToggleGroup.stories.tsx +173 -0
  286. package/toggle-group/ToggleGroup.test.js +156 -0
  287. package/toggle-group/types.d.ts +105 -0
  288. package/toggle-group/types.js +5 -0
  289. package/typography/Typography.d.ts +4 -0
  290. package/typography/Typography.js +131 -0
  291. package/typography/Typography.stories.tsx +198 -0
  292. package/typography/types.d.ts +18 -0
  293. package/typography/types.js +5 -0
  294. package/useTheme.d.ts +2 -0
  295. package/useTheme.js +2 -2
  296. package/useTranslatedLabels.d.ts +2 -0
  297. package/useTranslatedLabels.js +20 -0
  298. package/wizard/Wizard.d.ts +4 -0
  299. package/wizard/Wizard.js +132 -252
  300. package/wizard/Wizard.stories.tsx +233 -0
  301. package/wizard/Wizard.test.js +141 -0
  302. package/wizard/types.d.ts +65 -0
  303. package/wizard/types.js +5 -0
  304. package/ThemeContext.js +0 -250
  305. package/V3Select/V3Select.js +0 -549
  306. package/V3Select/index.d.ts +0 -27
  307. package/V3Textarea/V3Textarea.js +0 -264
  308. package/V3Textarea/index.d.ts +0 -27
  309. package/accordion/index.d.ts +0 -28
  310. package/accordion-group/index.d.ts +0 -16
  311. package/alert/index.d.ts +0 -51
  312. package/box/index.d.ts +0 -25
  313. package/button/Button.stories.js +0 -27
  314. package/button/index.d.ts +0 -24
  315. package/card/index.d.ts +0 -22
  316. package/checkbox/index.d.ts +0 -24
  317. package/chip/index.d.ts +0 -22
  318. package/date/Date.js +0 -379
  319. package/date/index.d.ts +0 -27
  320. package/date-input/index.d.ts +0 -95
  321. package/dialog/index.d.ts +0 -18
  322. package/dropdown/index.d.ts +0 -26
  323. package/file-input/index.d.ts +0 -81
  324. package/footer/index.d.ts +0 -25
  325. package/header/index.d.ts +0 -25
  326. package/heading/index.d.ts +0 -17
  327. package/input-text/Icons.js +0 -22
  328. package/input-text/InputText.js +0 -705
  329. package/input-text/index.d.ts +0 -36
  330. package/link/index.d.ts +0 -23
  331. package/number-input/index.d.ts +0 -113
  332. package/paginator/index.d.ts +0 -20
  333. package/password-input/index.d.ts +0 -94
  334. package/progress-bar/index.d.ts +0 -18
  335. package/radio/Radio.js +0 -209
  336. package/radio/index.d.ts +0 -23
  337. package/resultsetTable/index.d.ts +0 -19
  338. package/select/index.d.ts +0 -131
  339. package/sidenav/index.d.ts +0 -13
  340. package/slider/index.d.ts +0 -29
  341. package/spinner/index.d.ts +0 -17
  342. package/switch/index.d.ts +0 -24
  343. package/table/index.d.ts +0 -13
  344. package/tabs/index.d.ts +0 -19
  345. package/tag/index.d.ts +0 -24
  346. package/text-input/index.d.ts +0 -135
  347. package/textarea/index.d.ts +0 -117
  348. package/toggle/Toggle.js +0 -220
  349. package/toggle/index.d.ts +0 -21
  350. package/toggle-group/index.d.ts +0 -21
  351. package/upload/Upload.js +0 -205
  352. package/upload/buttons-upload/ButtonsUpload.js +0 -135
  353. package/upload/buttons-upload/Icons.js +0 -40
  354. package/upload/dragAndDropArea/DragAndDropArea.js +0 -329
  355. package/upload/dragAndDropArea/Icons.js +0 -39
  356. package/upload/file-upload/FileToUpload.js +0 -189
  357. package/upload/file-upload/Icons.js +0 -66
  358. package/upload/files-upload/FilesToUpload.js +0 -123
  359. package/upload/index.d.ts +0 -15
  360. package/upload/transaction/Icons.js +0 -160
  361. package/upload/transaction/Transaction.js +0 -148
  362. package/upload/transactions/Transactions.js +0 -138
  363. package/wizard/Icons.js +0 -65
  364. package/wizard/index.d.ts +0 -18
@@ -0,0 +1,200 @@
1
+ import React from "react";
2
+ import styled from "styled-components";
3
+ import Title from "../../.storybook/components/Title";
4
+ import { BackgroundColorProvider } from "../BackgroundColorContext";
5
+ import ExampleContainer from "../../.storybook/components/ExampleContainer";
6
+ import DxcBulletedList from "./BulletedList";
7
+
8
+ export default {
9
+ title: "BulletedList",
10
+ component: DxcBulletedList,
11
+ };
12
+
13
+ const icon = (
14
+ <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
15
+ <path d="M0 0h24v24H0V0z" fill="none" />
16
+ <path d="M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z" />
17
+ </svg>
18
+ );
19
+
20
+ export const Chromatic = () => (
21
+ <>
22
+ <ExampleContainer>
23
+ <Title title="Icon list" level={4} />
24
+ <DxcBulletedList type="icon" icon={icon}>
25
+ <DxcBulletedList.Item>Code</DxcBulletedList.Item>
26
+ <DxcBulletedList.Item>Usage</DxcBulletedList.Item>
27
+ <DxcBulletedList.Item>Specifications</DxcBulletedList.Item>
28
+ </DxcBulletedList>
29
+ <Title title="Number list" level={4} />
30
+ <DxcBulletedList type="number">
31
+ <DxcBulletedList.Item>Code</DxcBulletedList.Item>
32
+ <DxcBulletedList.Item>Usage</DxcBulletedList.Item>
33
+ <DxcBulletedList.Item>Specifications</DxcBulletedList.Item>
34
+ </DxcBulletedList>
35
+ <Title title="Square" level={4} />
36
+ <DxcBulletedList type="square">
37
+ <DxcBulletedList.Item>Code</DxcBulletedList.Item>
38
+ <DxcBulletedList.Item>Usage</DxcBulletedList.Item>
39
+ <DxcBulletedList.Item>Specifications</DxcBulletedList.Item>
40
+ </DxcBulletedList>
41
+ <Title title="Circle" level={4} />
42
+ <DxcBulletedList type="circle">
43
+ <DxcBulletedList.Item>Code</DxcBulletedList.Item>
44
+ <DxcBulletedList.Item>Usage</DxcBulletedList.Item>
45
+ <DxcBulletedList.Item>Specifications</DxcBulletedList.Item>
46
+ </DxcBulletedList>
47
+ <Title title="Disc" level={4} />
48
+ <DxcBulletedList>
49
+ <DxcBulletedList.Item>Code</DxcBulletedList.Item>
50
+ <DxcBulletedList.Item>Usage</DxcBulletedList.Item>
51
+ <DxcBulletedList.Item>Specifications</DxcBulletedList.Item>
52
+ </DxcBulletedList>
53
+ <Title title="Multiple lines" level={4} />
54
+ <Container>
55
+ <Title title="Number" level={4} />
56
+ <DxcBulletedList type="number">
57
+ <DxcBulletedList.Item>
58
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
59
+ dolore magna aliqua.
60
+ </DxcBulletedList.Item>
61
+ <DxcBulletedList.Item>Text 2.</DxcBulletedList.Item>
62
+ </DxcBulletedList>
63
+ </Container>
64
+ <Container>
65
+ <Title title="Square" level={4} />
66
+ <DxcBulletedList type="square">
67
+ <DxcBulletedList.Item>
68
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
69
+ dolore magna aliqua.
70
+ </DxcBulletedList.Item>
71
+ <DxcBulletedList.Item>Text 2.</DxcBulletedList.Item>
72
+ </DxcBulletedList>
73
+ </Container>
74
+ <Container>
75
+ <Title title="Circle" level={4} />
76
+ <DxcBulletedList type="circle">
77
+ <DxcBulletedList.Item>
78
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
79
+ dolore magna aliqua.
80
+ </DxcBulletedList.Item>
81
+ <DxcBulletedList.Item>Text 2.</DxcBulletedList.Item>
82
+ </DxcBulletedList>
83
+ </Container>
84
+ <Title title="Disc" level={4} />
85
+ <Container>
86
+ <DxcBulletedList>
87
+ <DxcBulletedList.Item>
88
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
89
+ dolore magna aliqua.
90
+ </DxcBulletedList.Item>
91
+ <DxcBulletedList.Item>Text 2.</DxcBulletedList.Item>
92
+ </DxcBulletedList>
93
+ </Container>
94
+ <Container>
95
+ <Title title="Icon" level={4} />
96
+ <DxcBulletedList type="icon" icon={icon}>
97
+ <DxcBulletedList.Item>
98
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
99
+ dolore magna aliqua.
100
+ </DxcBulletedList.Item>
101
+ <DxcBulletedList.Item>Text 2.</DxcBulletedList.Item>
102
+ </DxcBulletedList>
103
+ </Container>
104
+ </ExampleContainer>
105
+ <BackgroundColorProvider color="#333333">
106
+ <DarkContainerForBulletedList>
107
+ <Title title="Icon list" theme="dark" level={4} />
108
+ <DxcBulletedList type="icon" icon={icon}>
109
+ <DxcBulletedList.Item>Code</DxcBulletedList.Item>
110
+ <DxcBulletedList.Item>Usage</DxcBulletedList.Item>
111
+ <DxcBulletedList.Item>Specifications</DxcBulletedList.Item>
112
+ </DxcBulletedList>
113
+ <Title title="Number list" theme="dark" level={4} />
114
+ <DxcBulletedList type="number">
115
+ <DxcBulletedList.Item>Code</DxcBulletedList.Item>
116
+ <DxcBulletedList.Item>Usage</DxcBulletedList.Item>
117
+ <DxcBulletedList.Item>Specifications</DxcBulletedList.Item>
118
+ </DxcBulletedList>
119
+ <Title title="Square" theme="dark" level={4} />
120
+ <DxcBulletedList type="square">
121
+ <DxcBulletedList.Item>Code</DxcBulletedList.Item>
122
+ <DxcBulletedList.Item>Usage</DxcBulletedList.Item>
123
+ <DxcBulletedList.Item>Specifications</DxcBulletedList.Item>
124
+ </DxcBulletedList>
125
+ <Title title="Circle" theme="dark" level={4} />
126
+ <DxcBulletedList type="circle">
127
+ <DxcBulletedList.Item>Code</DxcBulletedList.Item>
128
+ <DxcBulletedList.Item>Usage</DxcBulletedList.Item>
129
+ <DxcBulletedList.Item>Specifications</DxcBulletedList.Item>
130
+ </DxcBulletedList>
131
+ <Title title="Disc" theme="dark" level={4} />
132
+ <DxcBulletedList>
133
+ <DxcBulletedList.Item>Code</DxcBulletedList.Item>
134
+ <DxcBulletedList.Item>Usage</DxcBulletedList.Item>
135
+ <DxcBulletedList.Item>Specifications</DxcBulletedList.Item>
136
+ </DxcBulletedList>
137
+ <Title title="Multiple lines" theme="dark" level={4} />
138
+ <Container>
139
+ <Title title="Number" theme="dark" level={4} />
140
+ <DxcBulletedList type="number">
141
+ <DxcBulletedList.Item>
142
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
143
+ dolore magna aliqua.
144
+ </DxcBulletedList.Item>
145
+ <DxcBulletedList.Item>Text 2.</DxcBulletedList.Item>
146
+ </DxcBulletedList>
147
+ </Container>
148
+ <Container>
149
+ <Title title="Square" theme="dark" level={4} />
150
+ <DxcBulletedList type="square">
151
+ <DxcBulletedList.Item>
152
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
153
+ dolore magna aliqua.
154
+ </DxcBulletedList.Item>
155
+ <DxcBulletedList.Item>Text 2.</DxcBulletedList.Item>
156
+ </DxcBulletedList>
157
+ </Container>
158
+ <Container>
159
+ <Title title="Circle" theme="dark" level={4} />
160
+ <DxcBulletedList type="circle">
161
+ <DxcBulletedList.Item>
162
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
163
+ dolore magna aliqua.
164
+ </DxcBulletedList.Item>
165
+ <DxcBulletedList.Item>Text 2.</DxcBulletedList.Item>
166
+ </DxcBulletedList>
167
+ </Container>
168
+ <Title title="Disc" theme="dark" level={4} />
169
+ <Container>
170
+ <DxcBulletedList>
171
+ <DxcBulletedList.Item>
172
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
173
+ dolore magna aliqua.
174
+ </DxcBulletedList.Item>
175
+ <DxcBulletedList.Item>Text 2.</DxcBulletedList.Item>
176
+ </DxcBulletedList>
177
+ </Container>
178
+ <Container>
179
+ <Title title="Icon" theme="dark" level={4} />
180
+ <DxcBulletedList type="icon" icon={icon}>
181
+ <DxcBulletedList.Item>
182
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
183
+ dolore magna aliqua.
184
+ </DxcBulletedList.Item>
185
+ <DxcBulletedList.Item>Text 2.</DxcBulletedList.Item>
186
+ </DxcBulletedList>
187
+ </Container>
188
+ </DarkContainerForBulletedList>
189
+ </BackgroundColorProvider>
190
+ </>
191
+ );
192
+
193
+ const Container = styled.div`
194
+ width: 400px;
195
+ `;
196
+
197
+ const DarkContainerForBulletedList = styled.div`
198
+ background-color: #333333;
199
+ padding: 5px;
200
+ `;
@@ -0,0 +1,11 @@
1
+ /// <reference types="react" />
2
+ declare type SVG = React.ReactNode & (React.SVGProps<SVGSVGElement> | React.FunctionComponent<React.SVGProps<SVGSVGElement>>);
3
+ declare type Props = {
4
+ children: React.ReactNode;
5
+ type?: "disc" | "circle" | "square" | "number" | "icon";
6
+ icon?: string | SVG;
7
+ };
8
+ export default Props;
9
+ export declare type BulletedListItemPropsType = {
10
+ children?: React.ReactNode;
11
+ };
@@ -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 ButtonPropsType from "./types";
3
+ declare const DxcButton: ({ label, mode, disabled, iconPosition, type, icon, onClick, margin, size, tabIndex, }: ButtonPropsType) => JSX.Element;
4
+ export default DxcButton;
package/button/Button.js CHANGED
@@ -1,75 +1,51 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
4
-
5
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
6
4
 
5
+ var _typeof3 = require("@babel/runtime/helpers/typeof");
6
+
7
7
  Object.defineProperty(exports, "__esModule", {
8
8
  value: true
9
9
  });
10
10
  exports["default"] = void 0;
11
11
 
12
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
12
+ var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
13
13
 
14
14
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
15
15
 
16
- var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
17
-
18
16
  var _react = _interopRequireWildcard(require("react"));
19
17
 
20
- var _Button = _interopRequireDefault(require("@material-ui/core/Button"));
21
-
22
- var _propTypes = _interopRequireDefault(require("prop-types"));
23
-
24
18
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
25
19
 
26
20
  var _variables = require("../common/variables.js");
27
21
 
28
22
  var _utils = require("../common/utils.js");
29
23
 
30
- var _useTheme = _interopRequireDefault(require("../useTheme.js"));
31
-
32
- var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext.js"));
33
-
34
- function _templateObject4() {
35
- var data = (0, _taggedTemplateLiteral2["default"])(["\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n\n display: inline-block;\n width: ", ";\n cursor: ", ";\n\n .MuiButtonBase-root {\n padding-left: ", ";\n padding-right: ", ";\n padding-top: ", ";\n padding-bottom: ", ";\n\n .MuiButton-label {\n display: flex;\n flex-direction: ", ";\n align-items: center;\n }\n\n box-shadow: 0 0 0 2px transparent;\n font-family: ", ";\n font-size: ", ";\n font-weight: ", ";\n letter-spacing: ", ";\n min-width: ", ";\n width: 100%;\n height: 40px;\n transition: none !important;\n\n &:focus {\n border-color: transparent;\n box-shadow: 0 0 0 2px\n ", ";\n }\n\n ", "\n }\n"]);
36
-
37
- _templateObject4 = function _templateObject4() {
38
- return data;
39
- };
40
-
41
- return data;
42
- }
43
-
44
- function _templateObject3() {
45
- var data = (0, _taggedTemplateLiteral2["default"])(["\n max-height: 24px;\n max-width: 24px;\n margin-left: ", ";\n margin-right: ", ";\n"]);
24
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
46
25
 
47
- _templateObject3 = function _templateObject3() {
48
- return data;
49
- };
26
+ var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext"));
50
27
 
51
- return data;
52
- }
28
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4;
53
29
 
54
- function _templateObject2() {
55
- var data = (0, _taggedTemplateLiteral2["default"])(["\n max-height: 24px;\n max-width: 24px;\n margin-left: ", ";\n margin-right: ", ";\n overflow: hidden;\n display: flex;\n img,\n svg {\n height: 100%;\n width: 100%;\n }\n"]);
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); }
56
31
 
57
- _templateObject2 = function _templateObject2() {
58
- return data;
59
- };
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; }
60
33
 
61
- return data;
62
- }
63
-
64
- function _templateObject() {
65
- var data = (0, _taggedTemplateLiteral2["default"])(["\n line-height: ", ";\n font-size: ", ";\n text-overflow: ellipsis;\n overflow: hidden;\n text-transform: none;\n margin-right: ", ";\n margin-left: ", ";\n"]);
34
+ var sizes = {
35
+ small: "42px",
36
+ medium: "120px",
37
+ large: "240px",
38
+ fillParent: "100%",
39
+ fitContent: "fit-content"
40
+ };
66
41
 
67
- _templateObject = function _templateObject() {
68
- return data;
69
- };
42
+ var calculateWidth = function calculateWidth(margin, size) {
43
+ if (size === "fillParent") {
44
+ return "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")");
45
+ }
70
46
 
71
- return data;
72
- }
47
+ return sizes[size];
48
+ };
73
49
 
74
50
  var DxcButton = function DxcButton(_ref) {
75
51
  var _ref$label = _ref.label,
@@ -82,92 +58,46 @@ var DxcButton = function DxcButton(_ref) {
82
58
  iconPosition = _ref$iconPosition === void 0 ? "before" : _ref$iconPosition,
83
59
  _ref$type = _ref.type,
84
60
  type = _ref$type === void 0 ? "button" : _ref$type,
85
- _ref$iconSrc = _ref.iconSrc,
86
- iconSrc = _ref$iconSrc === void 0 ? "" : _ref$iconSrc,
87
61
  icon = _ref.icon,
88
62
  _ref$onClick = _ref.onClick,
89
- _onClick = _ref$onClick === void 0 ? "" : _ref$onClick,
63
+ _onClick = _ref$onClick === void 0 ? function () {} : _ref$onClick,
90
64
  margin = _ref.margin,
91
- size = _ref.size,
65
+ _ref$size = _ref.size,
66
+ size = _ref$size === void 0 ? "fitContent" : _ref$size,
92
67
  _ref$tabIndex = _ref.tabIndex,
93
68
  tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
94
69
 
95
70
  var colorsTheme = (0, _useTheme["default"])();
96
71
  var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
97
- return _react["default"].createElement(_styledComponents.ThemeProvider, {
72
+
73
+ var labelComponent = /*#__PURE__*/_react["default"].createElement(LabelContainer, {
74
+ icon: icon,
75
+ iconPosition: iconPosition
76
+ }, label);
77
+
78
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
98
79
  theme: colorsTheme.button
99
- }, _react["default"].createElement(DxCButton, {
80
+ }, /*#__PURE__*/_react["default"].createElement(Button, {
100
81
  type: type,
101
- margin: margin,
102
82
  mode: mode !== "primary" && mode !== "secondary" && mode !== "text" ? "primary" : mode,
103
83
  disabled: disabled,
104
- iconPosition: iconPosition,
105
- size: size,
106
- backgroundType: backgroundType,
107
- icon: icon
108
- }, _react["default"].createElement(_Button["default"], {
109
- disabled: disabled,
110
- type: type,
111
- disableRipple: true,
112
- "aria-disabled": disabled ? true : false,
84
+ "aria-disabled": disabled,
113
85
  tabIndex: disabled ? -1 : tabIndex,
86
+ backgroundType: backgroundType,
87
+ size: size,
88
+ margin: margin,
114
89
  onClick: function onClick() {
115
- if (_onClick) {
116
- _onClick();
117
- }
90
+ _onClick();
118
91
  }
119
- }, label && _react["default"].createElement(LabelContainer, {
120
- icon: icon,
121
- iconPosition: iconPosition
122
- }, label), icon ? _react["default"].createElement(IconContainer, {
92
+ }, label && iconPosition === "after" && labelComponent, icon && /*#__PURE__*/_react["default"].createElement(IconContainer, {
123
93
  label: label,
124
94
  iconPosition: iconPosition
125
- }, (0, _typeof2["default"])(icon) === "object" ? icon : _react["default"].createElement(icon)) : iconSrc && _react["default"].createElement(ButtonIcon, {
126
- label: label,
127
- iconPosition: iconPosition,
128
- src: iconSrc
129
- }))));
130
- };
131
-
132
- var sizes = {
133
- small: "42px",
134
- medium: "120px",
135
- large: "240px",
136
- fillParent: "100%",
137
- fitContent: "unset"
138
- };
139
-
140
- var calculateWidth = function calculateWidth(margin, size) {
141
- if (size === "fillParent") {
142
- return "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")");
143
- }
144
-
145
- return sizes[size];
95
+ }, typeof icon === "string" ? /*#__PURE__*/_react["default"].createElement(ButtonIcon, {
96
+ src: icon
97
+ }) : icon), label && iconPosition === "before" && labelComponent));
146
98
  };
147
99
 
148
- var LabelContainer = _styledComponents["default"].span(_templateObject(), function (props) {
149
- return props.theme.labelFontLineHeight;
150
- }, function (props) {
151
- return props.theme.fontSize;
152
- }, function (props) {
153
- return !props.icon || props.iconPosition === "before" ? "8px" : "0px";
154
- }, function (props) {
155
- return !props.icon || props.iconPosition === "after" ? "8px" : "0px";
156
- });
157
-
158
- var IconContainer = _styledComponents["default"].div(_templateObject2(), function (props) {
159
- return !props.label ? "0px" : props.iconPosition === "after" && props.label !== "" && "8px" || "8px";
160
- }, function (props) {
161
- return !props.label ? "0px" : props.iconPosition === "before" && props.label !== "" && "8px" || "8px";
162
- });
163
-
164
- var ButtonIcon = _styledComponents["default"].img(_templateObject3(), function (props) {
165
- return props.iconPosition === "after" && props.label !== "" && "10px" || "0px";
166
- }, function (props) {
167
- return props.iconPosition === "before" && props.label !== "" && "10px" || "0px";
168
- });
169
-
170
- var DxCButton = _styledComponents["default"].div(_templateObject4(), function (props) {
100
+ var Button = _styledComponents["default"].button(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n display: inline-flex;\n width: ", ";\n height: 40px;\n padding-left: ", ";\n padding-right: ", ";\n padding-top: ", ";\n padding-bottom: ", ";\n align-items: center;\n justify-content: center;\n box-shadow: 0 0 0 2px transparent;\n font-family: ", ";\n font-size: ", ";\n font-weight: ", ";\n letter-spacing: ", ";\n cursor: pointer;\n &:focus {\n outline: none;\n box-shadow: 0 0 0 2px\n ", ";\n }\n ", "\n"])), function (props) {
171
101
  return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
172
102
  }, function (props) {
173
103
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
@@ -179,8 +109,6 @@ var DxCButton = _styledComponents["default"].div(_templateObject4(), function (p
179
109
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
180
110
  }, function (props) {
181
111
  return calculateWidth(props.margin, props.size);
182
- }, function (props) {
183
- return props.disabled && "not-allowed" || "pointer";
184
112
  }, function (props) {
185
113
  return props.theme.paddingLeft;
186
114
  }, function (props) {
@@ -189,8 +117,6 @@ var DxCButton = _styledComponents["default"].div(_templateObject4(), function (p
189
117
  return props.theme.paddingTop;
190
118
  }, function (props) {
191
119
  return props.theme.paddingBottom;
192
- }, function (props) {
193
- return props.iconPosition === "after" && "row" || "row-reverse";
194
120
  }, function (props) {
195
121
  return props.theme.fontFamily;
196
122
  }, function (props) {
@@ -199,40 +125,32 @@ var DxCButton = _styledComponents["default"].div(_templateObject4(), function (p
199
125
  return props.theme.fontWeight;
200
126
  }, function (props) {
201
127
  return props.theme.labelLetterSpacing;
202
- }, function (props) {
203
- return props.size === "small" && "calc(100% - 22px)" || "unset";
204
128
  }, function (props) {
205
129
  return props.backgroundType === "dark" ? props.theme.focusBorderColorOnDark : props.theme.focusBorderColor;
206
130
  }, function (props) {
207
131
  var mode = props.mode,
208
- backgroundType = props.backgroundType;
209
-
210
- if (mode === "primary") {
211
- return "\n border-radius: ".concat(props.theme.primaryBorderRadius, ";\n border-width: ").concat(props.theme.primaryBorderThickness, ";\n border-style: ").concat(props.theme.primaryBorderStyle, ";\n font-family: ").concat(props.theme.primaryFontFamily, ";\n font-size: ").concat(props.theme.primaryFontSize, ";\n font-weight: ").concat(props.theme.primaryFontWeight, ";\n background-color: ").concat(backgroundType === "dark" ? props.theme.primaryBackgroundColorOnDark : props.theme.primaryBackgroundColor, ";\n color: ").concat(backgroundType && backgroundType === "dark" ? props.theme.primaryFontColorOnDark : props.theme.primaryFontColor, " !important;\n\n &:hover {\n background-color: ").concat(backgroundType === "dark" ? props.theme.primaryHoverBackgroundColorOnDark : props.theme.primaryHoverBackgroundColor, ";\n }\n &:active {\n background-color: ").concat(backgroundType === "dark" ? props.theme.primaryActiveBackgroundColorOnDark : props.theme.primaryActiveBackgroundColor, " !important;\n border-color: transparent;\n box-shadow: 0 0 0 2px ").concat(backgroundType === "dark" ? props.theme.focusBorderColorOnDark : props.theme.focusBorderColor, ";\n }\n &:disabled { \n cursor: not-allowed;\n background-color: ").concat(backgroundType === "dark" ? props.theme.primaryDisabledBackgroundColorOnDark : props.theme.primaryDisabledBackgroundColor, ";\n color: ").concat(backgroundType === "dark" ? props.theme.primaryDisabledFontColorOnDark : props.theme.primaryDisabledFontColor, "!important; \n }\n .MuiButton-label {\n z-index: 5;\n }\n ");
212
- } else if (mode === "secondary") {
213
- return "\n border-radius: ".concat(props.theme.secondaryBorderRadius, ";\n border-width: ").concat(props.theme.secondaryBorderThickness, ";\n border-style: ").concat(props.theme.secondaryBorderStyle, ";\n font-family: ").concat(props.theme.secondaryFontFamily, ";\n font-size: ").concat(props.theme.secondaryFontSize, ";\n font-weight: ").concat(props.theme.secondaryFontWeight, ";\n background-color: ").concat(backgroundType === "dark" ? props.theme.secondaryBackgroundColorOnDark : props.theme.secondaryBackgroundColor, ";\n color: ").concat(backgroundType === "dark" ? props.theme.secondaryFontColorOnDark : props.theme.secondaryFontColor, " !important;\n border-color: ").concat(backgroundType === "dark" ? props.theme.secondaryBorderColorOnDark : props.theme.secondaryBorderColor, ";\n\n &:hover {\n background-color: ").concat(backgroundType === "dark" ? props.theme.secondaryHoverBackgroundColorOnDark : props.theme.secondaryHoverBackgroundColor, ";\n color: ").concat(backgroundType === "dark" ? props.theme.secondaryHoverFontColorOnDark : props.theme.secondaryHoverFontColor, " !important;\n }\n &:active {\n background-color: ").concat(backgroundType === "dark" ? props.theme.secondaryActiveBackgroundColorOnDark : props.theme.secondaryActiveBackgroundColor, " !important;\n color: ").concat(backgroundType === "dark" ? props.theme.secondaryHoverFontColorOnDark : props.theme.secondaryHoverFontColor, " !important;\n border-color: transparent;\n box-shadow: 0 0 0 2px ").concat(backgroundType === "dark" ? props.theme.focusBorderColorOnDark : props.theme.focusBorderColor, ";\n }\n &:disabled {\n cursor: not-allowed;\n background-color: ").concat(backgroundType === "dark" ? props.theme.secondaryDisabledBackgroundColorOnDark : props.theme.secondaryDisabledBackgroundColor, " !important;\n color: ").concat(backgroundType === "dark" ? props.theme.secondaryDisabledFontColorOnDark : props.theme.secondaryDisabledFontColor, " !important;\n border-color: ").concat(backgroundType === "dark" ? props.theme.secondaryDisabledBorderColorOnDark : props.theme.secondaryDisabledBorderColor, ";\n }\n .MuiButton-label {\n z-index: 5;\n }\n ");
214
- } else if (mode === "text") {
215
- return "\n border-radius: ".concat(props.theme.textBorderRadius, ";\n border-width: ").concat(props.theme.textBorderThickness, ";\n border-style: ").concat(props.theme.textBorderStyle, ";\n font-family: ").concat(props.theme.textFontFamily, ";\n font-size: ").concat(props.theme.textFontSize, ";\n font-weight: ").concat(props.theme.textFontWeight, ";\n background-color: ").concat(backgroundType === "dark" ? props.theme.textBackgroundColorOnDark : props.theme.textBackgroundColor, ";\n color: ").concat(backgroundType === "dark" ? props.theme.textFontColorOnDark : props.theme.textFontColor, " !important;\n\n &:hover {\n background-color: ").concat(backgroundType === "dark" ? props.theme.textHoverBackgroundColorOnDark : props.theme.textHoverBackgroundColor, ";\n }\n &:active {\n background-color: ").concat(backgroundType === "dark" ? props.theme.textActiveBackgroundColorOnDark : props.theme.textActiveBackgroundColor, " !important;\n border-color: transparent;\n box-shadow: 0 0 0 2px ").concat(backgroundType === "dark" ? props.theme.focusBorderColorOnDark : props.theme.focusBorderColor, ";\n }\n &:disabled {\n cursor:not-allowed;\n color: ").concat(backgroundType === "dark" ? props.theme.textDisabledFontColorOnDark : props.theme.textDisabledFontColor, " !important;\n background-color: ").concat(backgroundType === "dark" ? props.theme.textDisabledBackgroundColorOnDark : props.theme.textDisabledBackgroundColor, ";\n }\n ");
216
- }
132
+ backgroundType = props.backgroundType,
133
+ disabled = props.disabled;
134
+ return "\n border-radius: ".concat(props.mode === "primary" ? props.theme.primaryBorderRadius : props.mode === "secondary" ? props.theme.secondaryBorderRadius : props.theme.textBorderRadius, ";\n border-width: ").concat(props.mode === "primary" ? props.theme.primaryBorderThickness : props.mode === "secondary" ? props.theme.secondaryBorderThickness : props.theme.textBorderThickness, ";\n border-style: ").concat(mode === "primary" ? props.theme.primaryBorderStyle : mode === "secondary" ? props.theme.secondaryBorderStyle : props.theme.textBorderStyle, ";\n font-family: ").concat(mode === "primary" ? props.theme.primaryFontFamily : mode === "secondary" ? props.theme.secondaryFontFamily : props.theme.textFontFamily, ";\n font-size: ").concat(mode === "primary" ? props.theme.primaryFontSize : mode === "secondary" ? props.theme.secondaryFontSize : props.theme.textFontSize, ";\n font-weight: ").concat(mode === "primary" ? props.theme.primaryFontWeight : mode === "secondary" ? props.theme.secondaryFontWeight : props.theme.textFontWeight, ";\n background-color: ").concat(mode === "primary" ? backgroundType === "dark" ? props.theme.primaryBackgroundColorOnDark : props.theme.primaryBackgroundColor : mode === "secondary" ? backgroundType === "dark" ? props.theme.secondaryBackgroundColorOnDark : props.theme.secondaryBackgroundColor : backgroundType === "dark" ? props.theme.textBackgroundColorOnDark : props.theme.textBackgroundColor, ";\n color: ").concat(mode === "primary" ? backgroundType === "dark" ? props.theme.primaryFontColorOnDark : props.theme.primaryFontColor : mode === "secondary" ? backgroundType === "dark" ? props.theme.secondaryFontColorOnDark : props.theme.secondaryFontColor : backgroundType === "dark" ? props.theme.textFontColorOnDark : props.theme.textFontColor, ";\n border-color: ").concat(mode === "secondary" ? backgroundType === "dark" ? props.theme.secondaryBorderColorOnDark : props.theme.secondaryBorderColor : "", ";\n &:hover {\n background-color: ").concat(mode === "primary" ? backgroundType === "dark" ? props.theme.primaryHoverBackgroundColorOnDark : props.theme.primaryHoverBackgroundColor : mode === "secondary" ? backgroundType === "dark" ? props.theme.secondaryHoverBackgroundColorOnDark : props.theme.secondaryHoverBackgroundColor : backgroundType === "dark" ? props.theme.textHoverBackgroundColorOnDark : props.theme.textHoverBackgroundColor, ";\n color: ").concat(mode === "secondary" ? backgroundType === "dark" ? props.theme.secondaryHoverFontColorOnDark : props.theme.secondaryHoverFontColor : "", ";\n }\n &:focus {\n border-color: ").concat(mode === "secondary" ? "transparent" : "", ";\n }\n &:active {\n background-color: ").concat(mode === "primary" ? backgroundType === "dark" ? props.theme.primaryActiveBackgroundColorOnDark : props.theme.primaryActiveBackgroundColor : mode === "secondary" ? backgroundType === "dark" ? props.theme.secondaryActiveBackgroundColorOnDark : props.theme.secondaryActiveBackgroundColor : backgroundType === "dark" ? props.theme.textActiveBackgroundColorOnDark : props.theme.textActiveBackgroundColor, ";\n color: ").concat(mode === "secondary" ? backgroundType === "dark" ? props.theme.secondaryHoverFontColorOnDark : props.theme.secondaryHoverFontColor : "", ";\n border-color: ").concat(mode === "secondary" ? "transparent" : "", ";\n outline: none;\n box-shadow: ").concat(!disabled ? "0 0 0 2px ".concat(backgroundType === "dark" ? props.theme.focusBorderColorOnDark : props.theme.focusBorderColor) : "", ";\n }\n &:disabled {\n cursor: not-allowed;\n background-color: ").concat(mode === "primary" ? backgroundType === "dark" ? props.theme.primaryDisabledBackgroundColorOnDark : props.theme.primaryDisabledBackgroundColor : mode === "secondary" ? backgroundType === "dark" ? props.theme.secondaryDisabledBackgroundColorOnDark : props.theme.secondaryDisabledBackgroundColor : backgroundType === "dark" ? props.theme.textDisabledBackgroundColorOnDark : props.theme.textDisabledBackgroundColor, ";\n color: ").concat(mode === "primary" ? backgroundType === "dark" ? props.theme.primaryDisabledFontColorOnDark : props.theme.primaryDisabledFontColor : mode === "secondary" ? backgroundType === "dark" ? props.theme.secondaryDisabledFontColorOnDark : props.theme.secondaryDisabledFontColor : backgroundType === "dark" ? props.theme.textDisabledFontColorOnDark : props.theme.textDisabledFontColor, ";\n border-color: ").concat(mode === "secondary" ? backgroundType === "dark" ? props.theme.secondaryDisabledBorderColorOnDark : props.theme.secondaryDisabledBorderColor : "", ";\n }\n ");
217
135
  });
218
136
 
219
- DxcButton.propTypes = {
220
- size: _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(sizes))),
221
- margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
222
- top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
223
- bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
224
- left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
225
- right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
226
- }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))]),
227
- label: _propTypes["default"].string,
228
- mode: _propTypes["default"].oneOf(["primary", "secondary", "text"]),
229
- disabled: _propTypes["default"].bool,
230
- iconPosition: _propTypes["default"].oneOf(["after", "before"]),
231
- onClick: _propTypes["default"].func,
232
- iconSrc: _propTypes["default"].string,
233
- icon: _propTypes["default"].oneOfType([_propTypes["default"].element, _propTypes["default"].func]),
234
- type: _propTypes["default"].oneOf(["button", "reset", "submit"]),
235
- tabIndex: _propTypes["default"].number
236
- };
137
+ var LabelContainer = _styledComponents["default"].span(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n line-height: ", ";\n font-size: ", ";\n text-overflow: ellipsis;\n overflow: hidden;\n text-transform: none;\n white-space: nowrap;\n margin-right: ", ";\n margin-left: ", ";\n"])), function (props) {
138
+ return props.theme.labelFontLineHeight;
139
+ }, function (props) {
140
+ return props.theme.fontSize;
141
+ }, function (props) {
142
+ return !props.icon || props.iconPosition === "before" ? "8px" : "0px";
143
+ }, function (props) {
144
+ return !props.icon || props.iconPosition === "after" ? "8px" : "0px";
145
+ });
146
+
147
+ var IconContainer = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n max-height: 24px;\n max-width: 24px;\n margin-left: ", ";\n margin-right: ", ";\n overflow: hidden;\n display: flex;\n img,\n svg {\n height: 100%;\n width: 100%;\n }\n"])), function (props) {
148
+ return !props.label ? "0px" : props.iconPosition === "after" && props.label !== "" && "8px" || "8px";
149
+ }, function (props) {
150
+ return !props.label ? "0px" : props.iconPosition === "before" && props.label !== "" && "8px" || "8px";
151
+ });
152
+
153
+ var ButtonIcon = _styledComponents["default"].img(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n img,\n svg {\n height: 100%;\n width: 100%;\n }\n"])));
154
+
237
155
  var _default = DxcButton;
238
156
  exports["default"] = _default;