@dxc-technology/halstack-react 0.0.0-2d619b4 → 0.0.0-2edb175

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 (294) hide show
  1. package/BackgroundColorContext.js +50 -0
  2. package/ThemeContext.js +246 -0
  3. package/{dist/select/Select.js → V3Select/V3Select.js} +38 -132
  4. package/V3Select/index.d.ts +27 -0
  5. package/{dist/textarea/Textarea.js → V3Textarea/V3Textarea.js} +14 -18
  6. package/V3Textarea/index.d.ts +27 -0
  7. package/accordion/Accordion.d.ts +4 -0
  8. package/{dist/accordion → accordion}/Accordion.js +35 -130
  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/types.d.ts +72 -0
  14. package/accordion-group/types.js +5 -0
  15. package/alert/Alert.d.ts +4 -0
  16. package/{dist/alert → alert}/Alert.js +41 -154
  17. package/alert/types.d.ts +49 -0
  18. package/alert/types.js +5 -0
  19. package/badge/Badge.js +59 -0
  20. package/{dist/box → box}/Box.js +9 -13
  21. package/box/Box.stories.jsx +132 -0
  22. package/box/index.d.ts +25 -0
  23. package/button/Button.d.ts +4 -0
  24. package/{dist/button → button}/Button.js +16 -72
  25. package/button/Button.stories.tsx +293 -0
  26. package/button/types.d.ts +57 -0
  27. package/button/types.js +5 -0
  28. package/card/Card.d.ts +4 -0
  29. package/{dist/card → card}/Card.js +32 -121
  30. package/card/types.d.ts +69 -0
  31. package/card/types.js +5 -0
  32. package/checkbox/Checkbox.d.ts +4 -0
  33. package/{dist/checkbox → checkbox}/Checkbox.js +16 -63
  34. package/checkbox/Checkbox.stories.tsx +192 -0
  35. package/checkbox/types.d.ts +60 -0
  36. package/checkbox/types.js +5 -0
  37. package/{dist/chip → chip}/Chip.js +17 -61
  38. package/chip/index.d.ts +22 -0
  39. package/{dist/common → common}/OpenSans.css +0 -0
  40. package/{dist/common → common}/RequiredComponent.js +3 -11
  41. package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  42. package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  43. package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  44. package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  45. package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  46. package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  47. package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  48. package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  49. package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  50. package/{dist/common → common}/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  51. package/{dist/common → common}/utils.js +0 -0
  52. package/{dist/common → common}/variables.js +234 -99
  53. package/{dist/date → date}/Date.js +16 -22
  54. package/date/index.d.ts +27 -0
  55. package/date-input/DateInput.d.ts +4 -0
  56. package/{dist/new-date/NewDate.js → date-input/DateInput.js} +81 -120
  57. package/date-input/types.d.ts +100 -0
  58. package/date-input/types.js +5 -0
  59. package/dialog/Dialog.d.ts +4 -0
  60. package/{dist/dialog → dialog}/Dialog.js +20 -73
  61. package/dialog/types.d.ts +43 -0
  62. package/dialog/types.js +5 -0
  63. package/dropdown/Dropdown.d.ts +4 -0
  64. package/{dist/dropdown → dropdown}/Dropdown.js +44 -171
  65. package/dropdown/types.d.ts +89 -0
  66. package/dropdown/types.js +5 -0
  67. package/{dist/file-input → file-input}/FileInput.js +57 -166
  68. package/file-input/FileItem.js +193 -0
  69. package/file-input/index.d.ts +81 -0
  70. package/footer/Footer.d.ts +4 -0
  71. package/footer/Footer.js +266 -0
  72. package/footer/Footer.stories.jsx +151 -0
  73. package/footer/Icons.js +77 -0
  74. package/footer/types.d.ts +61 -0
  75. package/footer/types.js +5 -0
  76. package/header/Header.d.ts +7 -0
  77. package/header/Header.js +324 -0
  78. package/header/Icons.js +34 -0
  79. package/header/types.d.ts +45 -0
  80. package/header/types.js +5 -0
  81. package/{dist/heading → heading}/Heading.js +30 -72
  82. package/heading/index.d.ts +17 -0
  83. package/input-text/Icons.js +22 -0
  84. package/{dist/input-text → input-text}/InputText.js +37 -133
  85. package/input-text/index.d.ts +36 -0
  86. package/{dist/layout → layout}/ApplicationLayout.js +35 -131
  87. package/layout/Icons.js +55 -0
  88. package/{dist/link → link}/Link.js +18 -72
  89. package/link/index.d.ts +23 -0
  90. package/main.d.ts +44 -0
  91. package/{dist/main.js → main.js} +100 -96
  92. package/{dist/number/Number.js → number-input/NumberInput.js} +10 -20
  93. package/number-input/NumberInput.stories.jsx +115 -0
  94. package/{dist/number/NumberContext.js → number-input/NumberInputContext.js} +2 -2
  95. package/{dist/number → number-input}/index.d.ts +27 -9
  96. package/package.json +32 -25
  97. package/paginator/Icons.js +66 -0
  98. package/paginator/Paginator.d.ts +4 -0
  99. package/paginator/Paginator.js +198 -0
  100. package/paginator/Paginator.stories.tsx +63 -0
  101. package/paginator/types.d.ts +38 -0
  102. package/paginator/types.js +5 -0
  103. package/{dist/password/Password.js → password-input/PasswordInput.js} +26 -27
  104. package/password-input/PasswordInput.stories.jsx +131 -0
  105. package/{dist/password → password-input}/index.d.ts +30 -16
  106. package/progress-bar/ProgressBar.d.ts +4 -0
  107. package/{dist/progress-bar → progress-bar}/ProgressBar.js +20 -92
  108. package/progress-bar/types.d.ts +37 -0
  109. package/progress-bar/types.js +5 -0
  110. package/radio/Radio.d.ts +4 -0
  111. package/{dist/radio → radio}/Radio.js +15 -50
  112. package/radio/types.d.ts +54 -0
  113. package/radio/types.js +5 -0
  114. package/{dist/resultsetTable → resultsetTable}/ResultsetTable.js +35 -119
  115. package/resultsetTable/index.d.ts +19 -0
  116. package/select/Select.js +865 -0
  117. package/select/index.d.ts +131 -0
  118. package/{dist/sidenav → sidenav}/Sidenav.js +15 -49
  119. package/sidenav/index.d.ts +13 -0
  120. package/slider/Slider.d.ts +4 -0
  121. package/{dist/slider → slider}/Slider.js +90 -103
  122. package/slider/types.d.ts +83 -0
  123. package/slider/types.js +5 -0
  124. package/{dist/spinner → spinner}/Spinner.js +43 -157
  125. package/spinner/Spinner.stories.jsx +102 -0
  126. package/spinner/index.d.ts +17 -0
  127. package/switch/Switch.d.ts +4 -0
  128. package/{dist/switch → switch}/Switch.js +26 -69
  129. package/switch/types.d.ts +58 -0
  130. package/switch/types.js +5 -0
  131. package/{dist/table → table}/Table.js +10 -24
  132. package/table/Table.stories.jsx +276 -0
  133. package/table/index.d.ts +13 -0
  134. package/tabs/Tabs.d.ts +4 -0
  135. package/tabs/Tabs.js +211 -0
  136. package/tabs/types.d.ts +71 -0
  137. package/tabs/types.js +5 -0
  138. package/{dist/tag → tag}/Tag.js +22 -96
  139. package/tag/index.d.ts +24 -0
  140. package/text-input/TextInput.js +825 -0
  141. package/{dist/new-input-text → text-input}/index.d.ts +33 -18
  142. package/{dist/new-textarea/NewTextarea.js → textarea/Textarea.js} +71 -119
  143. package/textarea/Textarea.stories.jsx +135 -0
  144. package/{dist/new-textarea → textarea}/index.d.ts +34 -18
  145. package/{dist/toggle → toggle}/Toggle.js +15 -49
  146. package/toggle/index.d.ts +21 -0
  147. package/toggle-group/ToggleGroup.js +243 -0
  148. package/toggle-group/index.d.ts +21 -0
  149. package/{dist/upload → upload}/Upload.js +11 -15
  150. package/upload/buttons-upload/ButtonsUpload.js +111 -0
  151. package/upload/buttons-upload/Icons.js +40 -0
  152. package/upload/dragAndDropArea/DragAndDropArea.js +225 -0
  153. package/upload/dragAndDropArea/Icons.js +39 -0
  154. package/upload/file-upload/FileToUpload.js +115 -0
  155. package/upload/file-upload/Icons.js +66 -0
  156. package/{dist/upload → upload}/files-upload/FilesToUpload.js +12 -26
  157. package/upload/index.d.ts +15 -0
  158. package/upload/transaction/Icons.js +160 -0
  159. package/upload/transaction/Transaction.js +104 -0
  160. package/upload/transactions/Transactions.js +94 -0
  161. package/{dist/useTheme.js → useTheme.js} +0 -0
  162. package/wizard/Icons.js +65 -0
  163. package/{dist/wizard → wizard}/Wizard.js +32 -172
  164. package/wizard/index.d.ts +18 -0
  165. package/README.md +0 -66
  166. package/babel.config.js +0 -8
  167. package/dist/BackgroundColorContext.js +0 -46
  168. package/dist/ThemeContext.js +0 -240
  169. package/dist/accordion-group/AccordionGroup.js +0 -186
  170. package/dist/alert/index.d.ts +0 -51
  171. package/dist/badge/Badge.js +0 -63
  172. package/dist/checkbox/Checkbox.stories.js +0 -144
  173. package/dist/checkbox/readme.md +0 -116
  174. package/dist/date/Date.stories.js +0 -205
  175. package/dist/date/readme.md +0 -73
  176. package/dist/file-input/FileItem.js +0 -263
  177. package/dist/footer/Footer.js +0 -395
  178. package/dist/footer/Footer.stories.js +0 -94
  179. package/dist/footer/dxc_logo.svg +0 -15
  180. package/dist/footer/readme.md +0 -41
  181. package/dist/header/Header.js +0 -403
  182. package/dist/header/Header.stories.js +0 -176
  183. package/dist/header/close_icon.svg +0 -1
  184. package/dist/header/dxc_logo_black.svg +0 -8
  185. package/dist/header/hamb_menu_black.svg +0 -1
  186. package/dist/header/hamb_menu_white.svg +0 -1
  187. package/dist/header/readme.md +0 -33
  188. package/dist/input-text/InputText.stories.js +0 -209
  189. package/dist/input-text/error.svg +0 -1
  190. package/dist/input-text/readme.md +0 -91
  191. package/dist/layout/facebook.svg +0 -45
  192. package/dist/layout/linkedin.svg +0 -50
  193. package/dist/layout/twitter.svg +0 -53
  194. package/dist/link/readme.md +0 -51
  195. package/dist/main.d.ts +0 -6
  196. package/dist/new-date/index.d.ts +0 -86
  197. package/dist/new-input-text/NewInputText.js +0 -977
  198. package/dist/paginator/Paginator.js +0 -289
  199. package/dist/paginator/images/next.svg +0 -3
  200. package/dist/paginator/images/nextPage.svg +0 -3
  201. package/dist/paginator/images/previous.svg +0 -3
  202. package/dist/paginator/images/previousPage.svg +0 -3
  203. package/dist/paginator/readme.md +0 -50
  204. package/dist/password/styles.css +0 -3
  205. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  206. package/dist/progress-bar/readme.md +0 -63
  207. package/dist/radio/Radio.stories.js +0 -166
  208. package/dist/radio/readme.md +0 -70
  209. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  210. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  211. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  212. package/dist/slider/Slider.stories.js +0 -241
  213. package/dist/slider/readme.md +0 -64
  214. package/dist/spinner/Spinner.stories.js +0 -183
  215. package/dist/spinner/readme.md +0 -65
  216. package/dist/switch/Switch.stories.js +0 -134
  217. package/dist/switch/readme.md +0 -133
  218. package/dist/tabs/Tabs.js +0 -343
  219. package/dist/tabs/Tabs.stories.js +0 -130
  220. package/dist/tabs/readme.md +0 -78
  221. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  222. package/dist/tabs-for-sections/readme.md +0 -78
  223. package/dist/toggle/Toggle.stories.js +0 -297
  224. package/dist/toggle/readme.md +0 -80
  225. package/dist/toggle-group/ToggleGroup.js +0 -223
  226. package/dist/upload/Upload.stories.js +0 -72
  227. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -139
  228. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  229. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  230. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -329
  231. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  232. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  233. package/dist/upload/file-upload/FileToUpload.js +0 -184
  234. package/dist/upload/file-upload/audio-icon.svg +0 -4
  235. package/dist/upload/file-upload/close.svg +0 -4
  236. package/dist/upload/file-upload/file-icon.svg +0 -4
  237. package/dist/upload/file-upload/video-icon.svg +0 -4
  238. package/dist/upload/readme.md +0 -37
  239. package/dist/upload/transaction/Transaction.js +0 -175
  240. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  241. package/dist/upload/transaction/audio-icon.svg +0 -4
  242. package/dist/upload/transaction/error-icon.svg +0 -4
  243. package/dist/upload/transaction/file-icon-err.svg +0 -4
  244. package/dist/upload/transaction/file-icon.svg +0 -4
  245. package/dist/upload/transaction/image-icon-err.svg +0 -4
  246. package/dist/upload/transaction/image-icon.svg +0 -4
  247. package/dist/upload/transaction/success-icon.svg +0 -4
  248. package/dist/upload/transaction/video-icon-err.svg +0 -4
  249. package/dist/upload/transaction/video-icon.svg +0 -4
  250. package/dist/upload/transactions/Transactions.js +0 -138
  251. package/dist/wizard/invalid_icon.svg +0 -5
  252. package/dist/wizard/valid_icon.svg +0 -5
  253. package/dist/wizard/validation-wrong.svg +0 -6
  254. package/test/Accordion.test.js +0 -33
  255. package/test/AccordionGroup.test.js +0 -125
  256. package/test/Alert.test.js +0 -53
  257. package/test/Box.test.js +0 -10
  258. package/test/Button.test.js +0 -18
  259. package/test/Card.test.js +0 -30
  260. package/test/Checkbox.test.js +0 -45
  261. package/test/Chip.test.js +0 -25
  262. package/test/Date.test.js +0 -393
  263. package/test/Dialog.test.js +0 -23
  264. package/test/Dropdown.test.js +0 -145
  265. package/test/FileInput.test.js +0 -39
  266. package/test/Footer.test.js +0 -99
  267. package/test/Header.test.js +0 -39
  268. package/test/Heading.test.js +0 -35
  269. package/test/InputText.test.js +0 -240
  270. package/test/Link.test.js +0 -43
  271. package/test/NewDate.test.js +0 -203
  272. package/test/NewInputText.test.js +0 -866
  273. package/test/NewTextarea.test.js +0 -252
  274. package/test/Number.test.js +0 -241
  275. package/test/Paginator.test.js +0 -177
  276. package/test/Password.test.js +0 -76
  277. package/test/ProgressBar.test.js +0 -35
  278. package/test/Radio.test.js +0 -37
  279. package/test/ResultsetTable.test.js +0 -329
  280. package/test/Select.test.js +0 -212
  281. package/test/Sidenav.test.js +0 -45
  282. package/test/Slider.test.js +0 -82
  283. package/test/Spinner.test.js +0 -32
  284. package/test/Switch.test.js +0 -45
  285. package/test/Table.test.js +0 -36
  286. package/test/Tabs.test.js +0 -109
  287. package/test/TabsForSections.test.js +0 -34
  288. package/test/Tag.test.js +0 -32
  289. package/test/TextArea.test.js +0 -52
  290. package/test/ToggleGroup.test.js +0 -81
  291. package/test/Upload.test.js +0 -60
  292. package/test/Wizard.test.js +0 -130
  293. package/test/mocks/pngMock.js +0 -1
  294. package/test/mocks/svgMock.js +0 -1
@@ -0,0 +1,132 @@
1
+ import React from "react";
2
+ import Title from "../../.storybook/components/Title";
3
+ import ExampleContainer from "../../.storybook/components/ExampleContainer";
4
+ import DxcBox from "./Box";
5
+
6
+ export default {
7
+ title: "Box ",
8
+ component: DxcBox,
9
+ };
10
+
11
+ export const Chromatic = () => (
12
+ <>
13
+ <Title title="Display flex" theme="light" level={2} />
14
+ <ExampleContainer>
15
+ <DxcBox display="flex" padding="medium">
16
+ Box
17
+ </DxcBox>
18
+ </ExampleContainer>
19
+ <Title title="ShadowDepth" theme="light" level={2} />
20
+ <ExampleContainer>
21
+ <Title title="ShadowDepth 0" theme="light" level={4} />
22
+ <DxcBox shadowDepth={0} margin="medium" padding="medium">
23
+ Box
24
+ </DxcBox>
25
+ </ExampleContainer>
26
+ <ExampleContainer>
27
+ <Title title="ShadowDepth 1" theme="light" level={4} />
28
+ <DxcBox shadowDepth={1} margin="medium" padding="medium">
29
+ Box
30
+ </DxcBox>
31
+ </ExampleContainer>
32
+ <ExampleContainer>
33
+ <Title title="ShadowDepth 2" theme="light" level={4} />
34
+ <DxcBox shadowDepth={2} margin="medium" padding="medium">
35
+ Box
36
+ </DxcBox>
37
+ </ExampleContainer>
38
+ <Title title="Paddings" theme="light" level={2} />
39
+ <ExampleContainer>
40
+ <Title title="Xxsmall padding" theme="light" level={4} />
41
+ <DxcBox padding="xxsmall">Box</DxcBox>
42
+ </ExampleContainer>
43
+ <ExampleContainer>
44
+ <Title title="Xsmall padding" theme="light" level={4} />
45
+ <DxcBox padding="xsmall">Box</DxcBox>
46
+ </ExampleContainer>
47
+ <ExampleContainer>
48
+ <Title title="Small padding" theme="light" level={4} />
49
+ <DxcBox padding="small">Box</DxcBox>
50
+ </ExampleContainer>
51
+ <ExampleContainer>
52
+ <Title title="Medium padding" theme="light" level={4} />
53
+ <DxcBox padding="medium">Box</DxcBox>
54
+ </ExampleContainer>
55
+ <ExampleContainer>
56
+ <Title title="Large padding" theme="light" level={4} />
57
+ <DxcBox padding="large">Box</DxcBox>
58
+ </ExampleContainer>
59
+ <ExampleContainer>
60
+ <Title title="Xlarge padding" theme="light" level={4} />
61
+ <DxcBox padding="xlarge">Box</DxcBox>
62
+ </ExampleContainer>
63
+ <ExampleContainer>
64
+ <Title title="Xxlarge padding" theme="light" level={4} />
65
+ <DxcBox padding="xxlarge">Box</DxcBox>
66
+ </ExampleContainer>
67
+ <Title title="Margins" theme="light" level={2} />
68
+ <ExampleContainer>
69
+ <Title title="Xxsmall margin" theme="light" level={4} />
70
+ <DxcBox margin="xxsmall" padding="medium">
71
+ Box
72
+ </DxcBox>
73
+ </ExampleContainer>
74
+ <ExampleContainer>
75
+ <Title title="Xsmall margin" theme="light" level={4} />
76
+ <DxcBox margin="xsmall" padding="medium">
77
+ Box
78
+ </DxcBox>
79
+ </ExampleContainer>
80
+ <ExampleContainer>
81
+ <Title title="Small margin" theme="light" level={4} />
82
+ <DxcBox margin="small" padding="medium">
83
+ Box
84
+ </DxcBox>
85
+ </ExampleContainer>
86
+ <ExampleContainer>
87
+ <Title title="Medium margin" theme="light" level={4} />
88
+ <DxcBox margin="medium" padding="medium">
89
+ Box
90
+ </DxcBox>
91
+ </ExampleContainer>
92
+ <ExampleContainer>
93
+ <Title title="Large margin" theme="light" level={4} />
94
+ <DxcBox margin="large" padding="medium">
95
+ Box
96
+ </DxcBox>
97
+ </ExampleContainer>
98
+ <ExampleContainer>
99
+ <Title title="Xlarge margin" theme="light" level={4} />
100
+ <DxcBox margin="xlarge" padding="medium">
101
+ Box
102
+ </DxcBox>
103
+ </ExampleContainer>
104
+ <ExampleContainer>
105
+ <Title title="Xxlarge margin" theme="light" level={4} />
106
+ <DxcBox margin="xxlarge" padding="medium">
107
+ Box
108
+ </DxcBox>
109
+ </ExampleContainer>
110
+ <Title title="Sizes" theme="light" level={2} />
111
+ <ExampleContainer>
112
+ <Title title="Small size" theme="light" level={4} />
113
+ <DxcBox size="small">Box</DxcBox>
114
+ </ExampleContainer>
115
+ <ExampleContainer>
116
+ <Title title="Medium size" theme="light" level={4} />
117
+ <DxcBox size="medium">Box</DxcBox>
118
+ </ExampleContainer>
119
+ <ExampleContainer>
120
+ <Title title="Large size" theme="light" level={4} />
121
+ <DxcBox size="large">Box</DxcBox>
122
+ </ExampleContainer>
123
+ <ExampleContainer>
124
+ <Title title="FillParent size" theme="light" level={4} />
125
+ <DxcBox size="fillParent">Box</DxcBox>
126
+ </ExampleContainer>
127
+ <ExampleContainer>
128
+ <Title title="FitContent" theme="light" level={4} />
129
+ <DxcBox size="fitContent">Box</DxcBox>
130
+ </ExampleContainer>
131
+ </>
132
+ );
package/box/index.d.ts ADDED
@@ -0,0 +1,25 @@
1
+ type Size = "small" | "medium" | "large" | "fillParent" | "fitContent";
2
+ type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
+ type Margin = {
4
+ top?: Space;
5
+ bottom?: Space;
6
+ left?: Space;
7
+ right?: Space;
8
+ };
9
+ type Padding = {
10
+ top?: Space;
11
+ bottom?: Space;
12
+ left?: Space;
13
+ right?: Space;
14
+ };
15
+
16
+
17
+ type Props = {
18
+ shadowDepth?: 0 | 1 | 2;
19
+ margin?: Space | Margin;
20
+ padging?: Space | Padding;
21
+ display: string;
22
+ size: Size;
23
+ };
24
+
25
+ export default function DxcBox(props: Props): JSX.Element;
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import ButtonPropsType from "./types";
3
+ declare const DxcButton: ({ label, mode, disabled, iconPosition, type, iconSrc, icon, onClick, margin, size, tabIndex, }: ButtonPropsType) => JSX.Element;
4
+ export default DxcButton;
@@ -1,25 +1,21 @@
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"));
13
-
14
12
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
15
13
 
16
14
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
17
15
 
18
16
  var _react = _interopRequireWildcard(require("react"));
19
17
 
20
- var _core = require("@material-ui/core");
21
-
22
- var _propTypes = _interopRequireDefault(require("prop-types"));
18
+ var _Button = _interopRequireDefault(require("@material-ui/core/Button"));
23
19
 
24
20
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
25
21
 
@@ -31,45 +27,11 @@ var _useTheme = _interopRequireDefault(require("../useTheme.js"));
31
27
 
32
28
  var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext.js"));
33
29
 
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"]);
30
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4;
46
31
 
47
- _templateObject3 = function _templateObject3() {
48
- return data;
49
- };
32
+ 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); }
50
33
 
51
- return data;
52
- }
53
-
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\n img,\n svg {\n height: 100%;\n width: 100%;\n }\n"]);
56
-
57
- _templateObject2 = function _templateObject2() {
58
- return data;
59
- };
60
-
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"]);
66
-
67
- _templateObject = function _templateObject() {
68
- return data;
69
- };
70
-
71
- return data;
72
- }
34
+ 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; }
73
35
 
74
36
  var DxcButton = function DxcButton(_ref) {
75
37
  var _ref$label = _ref.label,
@@ -94,9 +56,9 @@ var DxcButton = function DxcButton(_ref) {
94
56
 
95
57
  var colorsTheme = (0, _useTheme["default"])();
96
58
  var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
97
- return _react["default"].createElement(_styledComponents.ThemeProvider, {
59
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
98
60
  theme: colorsTheme.button
99
- }, _react["default"].createElement(DxCButton, {
61
+ }, /*#__PURE__*/_react["default"].createElement(DxCButton, {
100
62
  type: type,
101
63
  margin: margin,
102
64
  mode: mode !== "primary" && mode !== "secondary" && mode !== "text" ? "primary" : mode,
@@ -105,7 +67,7 @@ var DxcButton = function DxcButton(_ref) {
105
67
  size: size,
106
68
  backgroundType: backgroundType,
107
69
  icon: icon
108
- }, _react["default"].createElement(_core.Button, {
70
+ }, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
109
71
  disabled: disabled,
110
72
  type: type,
111
73
  disableRipple: true,
@@ -116,13 +78,13 @@ var DxcButton = function DxcButton(_ref) {
116
78
  _onClick();
117
79
  }
118
80
  }
119
- }, label && _react["default"].createElement(LabelContainer, {
81
+ }, label && /*#__PURE__*/_react["default"].createElement(LabelContainer, {
120
82
  icon: icon,
121
83
  iconPosition: iconPosition
122
- }, label), icon ? _react["default"].createElement(IconContainer, {
84
+ }, label), icon ? /*#__PURE__*/_react["default"].createElement(IconContainer, {
123
85
  label: label,
124
86
  iconPosition: iconPosition
125
- }, (0, _typeof2["default"])(icon) === "object" ? icon : _react["default"].createElement(icon)) : iconSrc && _react["default"].createElement(ButtonIcon, {
87
+ }, (0, _typeof2["default"])(icon) === "object" ? icon : /*#__PURE__*/_react["default"].createElement(icon)) : iconSrc && /*#__PURE__*/_react["default"].createElement(ButtonIcon, {
126
88
  label: label,
127
89
  iconPosition: iconPosition,
128
90
  src: iconSrc
@@ -145,7 +107,7 @@ var calculateWidth = function calculateWidth(margin, size) {
145
107
  return sizes[size];
146
108
  };
147
109
 
148
- var LabelContainer = _styledComponents["default"].span(_templateObject(), function (props) {
110
+ var LabelContainer = _styledComponents["default"].span(_templateObject || (_templateObject = (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) {
149
111
  return props.theme.labelFontLineHeight;
150
112
  }, function (props) {
151
113
  return props.theme.fontSize;
@@ -155,19 +117,19 @@ var LabelContainer = _styledComponents["default"].span(_templateObject(), functi
155
117
  return !props.icon || props.iconPosition === "after" ? "8px" : "0px";
156
118
  });
157
119
 
158
- var IconContainer = _styledComponents["default"].div(_templateObject2(), function (props) {
120
+ var IconContainer = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (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) {
159
121
  return !props.label ? "0px" : props.iconPosition === "after" && props.label !== "" && "8px" || "8px";
160
122
  }, function (props) {
161
123
  return !props.label ? "0px" : props.iconPosition === "before" && props.label !== "" && "8px" || "8px";
162
124
  });
163
125
 
164
- var ButtonIcon = _styledComponents["default"].img(_templateObject3(), function (props) {
126
+ var ButtonIcon = _styledComponents["default"].img(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n max-height: 24px;\n max-width: 24px;\n margin-left: ", ";\n margin-right: ", ";\n"])), function (props) {
165
127
  return props.iconPosition === "after" && props.label !== "" && "10px" || "0px";
166
128
  }, function (props) {
167
129
  return props.iconPosition === "before" && props.label !== "" && "10px" || "0px";
168
130
  });
169
131
 
170
- var DxCButton = _styledComponents["default"].div(_templateObject4(), function (props) {
132
+ var DxCButton = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (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"])), function (props) {
171
133
  return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
172
134
  }, function (props) {
173
135
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
@@ -216,23 +178,5 @@ var DxCButton = _styledComponents["default"].div(_templateObject4(), function (p
216
178
  }
217
179
  });
218
180
 
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
- };
237
181
  var _default = DxcButton;
238
182
  exports["default"] = _default;
@@ -0,0 +1,293 @@
1
+ import React from "react";
2
+ import DxcButton from "./Button";
3
+ import { BackgroundColorProvider } from "../BackgroundColorContext";
4
+ import Title from "../../.storybook/components/Title";
5
+ import ExampleContainer from "../../.storybook/components/ExampleContainer";
6
+ import DarkContainer from "../../.storybook/components/DarkSection";
7
+
8
+ export default {
9
+ title: "Button ",
10
+ component: DxcButton,
11
+ };
12
+
13
+ const iconSVG = () => {
14
+ return (
15
+ <svg viewBox="0 0 24 24" fill="currentColor">
16
+ <path d="M0 0h24v24H0z" fill="none" />
17
+ <path d="M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z" />
18
+ </svg>
19
+ );
20
+ };
21
+ export const Chromatic = () => (
22
+ <>
23
+ <>
24
+ <Title title="Primary" theme="light" level={2}/>
25
+ <ExampleContainer>
26
+ <Title title="Enabled" theme="light" level={4}/>
27
+ <DxcButton label="Primary enabled" />
28
+ </ExampleContainer>
29
+ <ExampleContainer pseudoState="pseudo-hover">
30
+ <Title title="Hovered" theme="light" level={4}/>
31
+ <DxcButton label="Primary hovered" />
32
+ </ExampleContainer>
33
+ <ExampleContainer pseudoState="pseudo-focus">
34
+ <Title title="Focused" theme="light" level={4}/>
35
+ <DxcButton label="Primary focused" />
36
+ </ExampleContainer>
37
+ <ExampleContainer pseudoState="pseudo-active">
38
+ <Title title="Actived" theme="light" level={4}/>
39
+ <DxcButton label="Primary actived" />
40
+ </ExampleContainer>
41
+ <ExampleContainer>
42
+ <Title title="Disabled" theme="light" level={4}/>
43
+ <DxcButton label="Primary disabled" disabled />
44
+ </ExampleContainer>
45
+ <ExampleContainer>
46
+ <Title title="With left icon" theme="light" level={4}/>
47
+ <DxcButton label="Primary" icon={iconSVG} />
48
+ </ExampleContainer>
49
+ <ExampleContainer>
50
+ <Title title="With right icon" theme="light" level={4}/>
51
+ <DxcButton label="Primary" icon={iconSVG} iconPosition="after" />
52
+ </ExampleContainer>
53
+ <ExampleContainer>
54
+ <Title title="Only icon" theme="light" level={4}/>
55
+ <DxcButton icon={iconSVG} />
56
+ </ExampleContainer>
57
+ </>
58
+ <>
59
+ <>
60
+ <Title title="Secondary" theme="light" level={2}/>
61
+ <ExampleContainer>
62
+ <Title title="Enabled" theme="light" level={4}/>
63
+ <DxcButton mode="secondary" label="Secondary enabled" />
64
+ </ExampleContainer>
65
+ <ExampleContainer pseudoState="pseudo-hover">
66
+ <Title title="Hovered" theme="light" level={4}/>
67
+ <DxcButton mode="secondary" label="Secondary hovered" />
68
+ </ExampleContainer>
69
+ <ExampleContainer pseudoState="pseudo-focus">
70
+ <Title title="Focused" theme="light" level={4}/>
71
+ <DxcButton mode="secondary" label="Secondary focused" />
72
+ </ExampleContainer>
73
+ <ExampleContainer pseudoState="pseudo-active">
74
+ <Title title="Actived" theme="light" level={4}/>
75
+ <DxcButton mode="secondary" label="Secondary actived" />
76
+ </ExampleContainer>
77
+ <ExampleContainer>
78
+ <Title title="Disabled" theme="light" level={4}/>
79
+ <DxcButton mode="secondary" disabled label="Secondary disabled" />
80
+ </ExampleContainer>
81
+ <ExampleContainer>
82
+ <Title title="With icon" theme="light" level={4}/>
83
+ <DxcButton mode="secondary" label="Secondary" icon={iconSVG} />
84
+ </ExampleContainer>
85
+ </>
86
+ <>
87
+ <Title title="Text" theme="light" level={2}/>
88
+ <ExampleContainer>
89
+ <Title title="Enabled" theme="light" level={4}/>
90
+ <DxcButton mode="text" label="Text enabled" />
91
+ </ExampleContainer>
92
+ <ExampleContainer pseudoState="pseudo-hover">
93
+ <Title title="Hovered" theme="light" level={4}/>
94
+ <DxcButton mode="text" label="Text hovered" />
95
+ </ExampleContainer>
96
+ <ExampleContainer pseudoState="pseudo-focus">
97
+ <Title title="Focused" theme="light" level={4}/>
98
+ <DxcButton mode="text" label="Text focused" />
99
+ </ExampleContainer>
100
+ <ExampleContainer pseudoState="pseudo-active">
101
+ <Title title="Actived" theme="light" level={4}/>
102
+ <DxcButton mode="text" label="Text actived" />
103
+ </ExampleContainer>
104
+ <ExampleContainer>
105
+ <Title title="Disabled" theme="light" level={4}/>
106
+ <DxcButton mode="text" label="Text disabled" disabled />
107
+ </ExampleContainer>
108
+ <ExampleContainer>
109
+ <Title title="With icon" theme="light" level={4}/>
110
+ <DxcButton label="Text" mode="text" icon={iconSVG} />
111
+ </ExampleContainer>
112
+ </>
113
+ </>
114
+ <BackgroundColorProvider color="#333333">
115
+ <DarkContainer>
116
+ <>
117
+ <Title title="Primary" theme="dark" level={2}/>
118
+ <ExampleContainer>
119
+ <Title title="Enabled" theme="dark" level={4}/>
120
+ <DxcButton label="Primary enabled" />
121
+ </ExampleContainer>
122
+ <ExampleContainer pseudoState="pseudo-hover">
123
+ <Title title="Hovered" theme="dark" level={4}/>
124
+ <DxcButton label="Primary hovered" />
125
+ </ExampleContainer>
126
+ <ExampleContainer pseudoState="pseudo-focus">
127
+ <Title title="Focused" theme="dark" level={4}/>
128
+ <DxcButton label="Primary focused" />
129
+ </ExampleContainer>
130
+ <ExampleContainer pseudoState="pseudo-active">
131
+ <Title title="Actived" theme="dark" level={4}/>
132
+ <DxcButton label="Primary actived" />
133
+ </ExampleContainer>
134
+ <ExampleContainer>
135
+ <Title title="Disabled" theme="dark" level={4}/>
136
+ <DxcButton label="Primary disabled" disabled />
137
+ </ExampleContainer>
138
+ <ExampleContainer>
139
+ <Title title="With icon" theme="dark" level={4}/>
140
+ <DxcButton label="Primary" icon={iconSVG} />
141
+ </ExampleContainer>
142
+ </>
143
+ <>
144
+ <Title title="Secondary" theme="dark" level={2}/>
145
+ <ExampleContainer>
146
+ <Title title="Enabled" theme="dark" level={4}/>
147
+ <DxcButton mode="secondary" label="Secondary enabled" />
148
+ </ExampleContainer>
149
+ <ExampleContainer pseudoState="pseudo-hover">
150
+ <Title title="Hovered" theme="dark" level={4}/>
151
+ <DxcButton mode="secondary" label="Secondary hovered" />
152
+ </ExampleContainer>
153
+ <ExampleContainer pseudoState="pseudo-focus">
154
+ <Title title="Focused" theme="dark" level={4}/>
155
+ <DxcButton mode="secondary" label="Secondary focused" />
156
+ </ExampleContainer>
157
+ <ExampleContainer pseudoState="pseudo-active">
158
+ <Title title="Actived" theme="dark" level={4}/>
159
+ <DxcButton mode="secondary" label="Secondary actived" />
160
+ </ExampleContainer>
161
+ <ExampleContainer>
162
+ <Title title="Disabled" theme="dark" level={4}/>
163
+ <DxcButton mode="secondary" disabled label="Secondary disabled" />
164
+ </ExampleContainer>
165
+ <ExampleContainer>
166
+ <Title title="With icon" theme="dark" level={4}/>
167
+ <DxcButton mode="secondary" label="Primary" icon={iconSVG} />
168
+ </ExampleContainer>
169
+ </>
170
+ <>
171
+ <Title title="Text" theme="dark" level={2}/>
172
+ <ExampleContainer>
173
+ <Title title="Enabled" theme="dark" level={4}/>
174
+ <DxcButton mode="text" label="Text enabled" />
175
+ </ExampleContainer>
176
+ <ExampleContainer pseudoState="pseudo-hover">
177
+ <Title title="Hovered" theme="dark" level={4}/>
178
+ <DxcButton mode="text" label="Text hovered" />
179
+ </ExampleContainer>
180
+ <ExampleContainer pseudoState="pseudo-focus">
181
+ <Title title="Focused" theme="dark" level={4}/>
182
+ <DxcButton mode="text" label="Text focused" />
183
+ </ExampleContainer>
184
+ <ExampleContainer pseudoState="pseudo-active">
185
+ <Title title="Actived" theme="dark" level={4}/>
186
+ <DxcButton mode="text" label="Text actived" />
187
+ </ExampleContainer>
188
+ <ExampleContainer>
189
+ <Title title="Disabled" theme="dark" level={4}/>
190
+ <DxcButton mode="text" label="Text disabled" disabled />
191
+ </ExampleContainer>
192
+ <ExampleContainer>
193
+ <Title title="With icon" theme="dark" level={4}/>
194
+ <DxcButton mode="text" label="Primary" icon={iconSVG} />
195
+ </ExampleContainer>
196
+ </>
197
+ </DarkContainer>
198
+ </BackgroundColorProvider>
199
+ <>
200
+ <Title title="Sizes" theme="light" level={2}/>
201
+ <ExampleContainer>
202
+ <Title title="Small size" theme="light" level={4}/>
203
+ <DxcButton label="Small" size="small" />
204
+ </ExampleContainer>
205
+ <ExampleContainer>
206
+ <Title title="Medium size" theme="light" level={4}/>
207
+ <DxcButton label="MediumSiz" size="medium" />
208
+ </ExampleContainer>
209
+ <ExampleContainer>
210
+ <Title title="Medium size with ellipsis" theme="light" level={4}/>
211
+ <DxcButton label="MediumSize" size="medium" />
212
+ </ExampleContainer>
213
+ <ExampleContainer>
214
+ <Title title="Medium size icon after" theme="light" level={4}/>
215
+ <DxcButton label="Mediu" iconPosition="after" icon={iconSVG} size="medium" />
216
+ </ExampleContainer>
217
+ <ExampleContainer>
218
+ <Title title="Medium size icon before" theme="light" level={4}/>
219
+ <DxcButton label="Mediu" iconPosition="before" icon={iconSVG} size="medium" />
220
+ </ExampleContainer>
221
+ <ExampleContainer>
222
+ <Title title="Medium size icon after with ellipsis" theme="light" level={4}/>
223
+ <DxcButton label="Medium" iconPosition="after" icon={iconSVG} size="medium" />
224
+ </ExampleContainer>
225
+ <ExampleContainer>
226
+ <Title title="Medium size icon before with ellipsis" theme="light" level={4}/>
227
+ <DxcButton label="Medium" iconPosition="before" icon={iconSVG} size="medium" />
228
+ </ExampleContainer>
229
+ <ExampleContainer>
230
+ <Title title="Large size" theme="light" level={4}/>
231
+ <DxcButton label="LargeSizePrimaryButtonEx" size="large" />
232
+ </ExampleContainer>
233
+ <ExampleContainer>
234
+ <Title title="Large size with ellipsis" theme="light" level={4}/>
235
+ <DxcButton label="LargeSizePrimaryButtonExa" size="large" />
236
+ </ExampleContainer>
237
+ <ExampleContainer>
238
+ <Title title="Large size icon after" theme="light" level={4}/>
239
+ <DxcButton label="LargeSizePrimaryButto" iconPosition="after" icon={iconSVG} size="large" />
240
+ </ExampleContainer>
241
+ <ExampleContainer>
242
+ <Title title="Large size icon before" theme="light" level={4}/>
243
+ <DxcButton label="LargeSizePrimaryButto" iconPosition="before" icon={iconSVG} size="large" />
244
+ </ExampleContainer>
245
+ <ExampleContainer>
246
+ <Title title="Large size icon after with ellipsis" theme="light" level={4}/>
247
+ <DxcButton label="LargeSizePrimaryButton" iconPosition="after" icon={iconSVG} size="large" />
248
+ </ExampleContainer>
249
+ <ExampleContainer>
250
+ <Title title="Large size icon before with ellipsis" theme="light" level={4}/>
251
+ <DxcButton label="LargeSizePrimaryButton" iconPosition="before" icon={iconSVG} size="large" />
252
+ </ExampleContainer>
253
+ <ExampleContainer>
254
+ <Title title="Fit content size" theme="light" level={4}/>
255
+ <DxcButton label="FillParent" size="fillParent" />
256
+ </ExampleContainer>
257
+ <ExampleContainer>
258
+ <Title title="Medium size" theme="light" level={4}/>
259
+ <DxcButton label="FitContent" size="fitContent" />
260
+ </ExampleContainer>
261
+ <Title title="Margins" theme="light" level={2}/>
262
+ <ExampleContainer>
263
+ <Title title="Xxsmall margin" theme="light" level={4}/>
264
+ <DxcButton label="Xxsmall margin" margin="xxsmall" />
265
+ </ExampleContainer>
266
+ <ExampleContainer>
267
+ <Title title="Xsmall margin" theme="light" level={4}/>
268
+ <DxcButton label="Xsmall margin" margin="xsmall" />
269
+ </ExampleContainer>
270
+ <ExampleContainer>
271
+ <Title title="Small margin" theme="light" level={4}/>
272
+ <DxcButton label="Small margin" margin="small" />
273
+ </ExampleContainer>
274
+ <ExampleContainer>
275
+ <Title title="Medium margin" theme="light" level={4}/>
276
+ <DxcButton label="Medium margin" margin="medium" />
277
+ </ExampleContainer>
278
+ <ExampleContainer>
279
+ <Title title="Large margin" theme="light" level={4}/>
280
+ <DxcButton label="Large margin" margin="large" />
281
+ </ExampleContainer>
282
+ <ExampleContainer>
283
+ <Title title="Xlarge margin" theme="light" level={4}/>
284
+ <DxcButton label="Xlarge margin" margin="xlarge" />
285
+ </ExampleContainer>
286
+ <ExampleContainer>
287
+ <Title title="Xxlarge margin" theme="light" level={4}/>
288
+ <DxcButton label="Xxlarge margin" margin="xxlarge" />
289
+ </ExampleContainer>
290
+ </>
291
+ </>
292
+ );
293
+