@dxc-technology/halstack-react 0.0.0-c2e647c → 0.0.0-c709eea

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 (299) hide show
  1. package/BackgroundColorContext.js +50 -0
  2. package/ThemeContext.js +246 -0
  3. package/V3Select/V3Select.js +455 -0
  4. package/V3Select/index.d.ts +27 -0
  5. package/{dist/textarea/Textarea.js → V3Textarea/V3Textarea.js} +39 -39
  6. package/V3Textarea/index.d.ts +27 -0
  7. package/accordion/Accordion.d.ts +4 -0
  8. package/accordion/Accordion.js +258 -0
  9. package/accordion/types.d.ts +68 -0
  10. package/accordion/types.js +5 -0
  11. package/accordion-group/AccordionGroup.d.ts +7 -0
  12. package/accordion-group/AccordionGroup.js +170 -0
  13. package/accordion-group/types.d.ts +72 -0
  14. package/accordion-group/types.js +5 -0
  15. package/alert/Alert.d.ts +4 -0
  16. package/alert/Alert.js +290 -0
  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 -21
  21. package/box/index.d.ts +25 -0
  22. package/button/Button.d.ts +4 -0
  23. package/button/Button.js +182 -0
  24. package/button/Button.stories.tsx +293 -0
  25. package/button/types.d.ts +57 -0
  26. package/button/types.js +5 -0
  27. package/card/Card.d.ts +4 -0
  28. package/{dist/card → card}/Card.js +32 -123
  29. package/card/types.d.ts +69 -0
  30. package/card/types.js +5 -0
  31. package/checkbox/Checkbox.d.ts +4 -0
  32. package/{dist/checkbox → checkbox}/Checkbox.js +44 -82
  33. package/checkbox/types.d.ts +60 -0
  34. package/checkbox/types.js +5 -0
  35. package/{dist/chip → chip}/Chip.js +48 -104
  36. package/chip/index.d.ts +22 -0
  37. package/{dist/common → common}/OpenSans.css +0 -0
  38. package/{dist/common → common}/RequiredComponent.js +3 -11
  39. package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  40. package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  41. package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  42. package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  43. package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  44. package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  45. package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  46. package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  47. package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  48. package/{dist/common → common}/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  49. package/{dist/common → common}/utils.js +0 -0
  50. package/common/variables.js +1569 -0
  51. package/{dist/date → date}/Date.js +33 -51
  52. package/date/index.d.ts +27 -0
  53. package/date-input/DateInput.d.ts +4 -0
  54. package/date-input/DateInput.js +361 -0
  55. package/date-input/types.d.ts +100 -0
  56. package/date-input/types.js +5 -0
  57. package/{dist/dialog → dialog}/Dialog.js +28 -80
  58. package/dialog/index.d.ts +18 -0
  59. package/dropdown/Dropdown.js +450 -0
  60. package/dropdown/index.d.ts +26 -0
  61. package/file-input/FileInput.js +532 -0
  62. package/file-input/FileItem.js +193 -0
  63. package/file-input/index.d.ts +81 -0
  64. package/{dist/footer → footer}/Footer.js +69 -177
  65. package/footer/Icons.js +77 -0
  66. package/footer/index.d.ts +25 -0
  67. package/header/Header.js +326 -0
  68. package/header/Icons.js +59 -0
  69. package/header/index.d.ts +25 -0
  70. package/{dist/heading → heading}/Heading.js +30 -76
  71. package/heading/index.d.ts +17 -0
  72. package/input-text/Icons.js +22 -0
  73. package/{dist/input-text → input-text}/InputText.js +120 -178
  74. package/input-text/index.d.ts +36 -0
  75. package/{dist/layout → layout}/ApplicationLayout.js +35 -131
  76. package/layout/Icons.js +55 -0
  77. package/link/Link.js +183 -0
  78. package/link/index.d.ts +23 -0
  79. package/main.d.ts +44 -0
  80. package/{dist/main.js → main.js} +121 -69
  81. package/number-input/NumberInput.js +128 -0
  82. package/number-input/NumberInputContext.js +16 -0
  83. package/number-input/index.d.ts +113 -0
  84. package/package.json +34 -25
  85. package/paginator/Icons.js +66 -0
  86. package/paginator/Paginator.d.ts +4 -0
  87. package/paginator/Paginator.js +198 -0
  88. package/paginator/types.d.ts +38 -0
  89. package/paginator/types.js +5 -0
  90. package/password-input/PasswordInput.js +199 -0
  91. package/password-input/PasswordInput.stories.jsx +131 -0
  92. package/password-input/index.d.ts +94 -0
  93. package/progress-bar/ProgressBar.js +188 -0
  94. package/progress-bar/index.d.ts +18 -0
  95. package/radio/Radio.d.ts +4 -0
  96. package/{dist/radio → radio}/Radio.js +15 -50
  97. package/radio/types.d.ts +54 -0
  98. package/radio/types.js +5 -0
  99. package/{dist/resultsetTable → resultsetTable}/ResultsetTable.js +35 -136
  100. package/resultsetTable/index.d.ts +19 -0
  101. package/select/Select.js +865 -0
  102. package/select/index.d.ts +131 -0
  103. package/{dist/sidenav → sidenav}/Sidenav.js +20 -58
  104. package/sidenav/index.d.ts +13 -0
  105. package/slider/Slider.js +340 -0
  106. package/slider/index.d.ts +29 -0
  107. package/spinner/Spinner.js +267 -0
  108. package/spinner/index.d.ts +17 -0
  109. package/switch/Switch.d.ts +4 -0
  110. package/{dist/switch → switch}/Switch.js +28 -71
  111. package/switch/types.d.ts +58 -0
  112. package/switch/types.js +5 -0
  113. package/table/Table.js +118 -0
  114. package/table/index.d.ts +13 -0
  115. package/{dist/tabs → tabs}/Tabs.js +29 -117
  116. package/tabs/index.d.ts +19 -0
  117. package/{dist/tag → tag}/Tag.js +50 -122
  118. package/tag/index.d.ts +24 -0
  119. package/text-input/TextInput.js +825 -0
  120. package/text-input/index.d.ts +135 -0
  121. package/textarea/Textarea.js +317 -0
  122. package/textarea/Textarea.stories.jsx +135 -0
  123. package/textarea/index.d.ts +117 -0
  124. package/{dist/toggle → toggle}/Toggle.js +15 -49
  125. package/toggle/index.d.ts +21 -0
  126. package/toggle-group/ToggleGroup.js +243 -0
  127. package/toggle-group/index.d.ts +21 -0
  128. package/{dist/upload → upload}/Upload.js +11 -15
  129. package/upload/buttons-upload/ButtonsUpload.js +111 -0
  130. package/upload/buttons-upload/Icons.js +40 -0
  131. package/upload/dragAndDropArea/DragAndDropArea.js +225 -0
  132. package/upload/dragAndDropArea/Icons.js +39 -0
  133. package/upload/file-upload/FileToUpload.js +115 -0
  134. package/upload/file-upload/Icons.js +66 -0
  135. package/{dist/upload → upload}/files-upload/FilesToUpload.js +12 -26
  136. package/upload/index.d.ts +15 -0
  137. package/upload/transaction/Icons.js +160 -0
  138. package/upload/transaction/Transaction.js +104 -0
  139. package/upload/transactions/Transactions.js +94 -0
  140. package/{dist/useTheme.js → useTheme.js} +0 -0
  141. package/wizard/Icons.js +65 -0
  142. package/wizard/Wizard.js +271 -0
  143. package/wizard/index.d.ts +18 -0
  144. package/README.md +0 -66
  145. package/babel.config.js +0 -8
  146. package/dist/BackgroundColorContext.js +0 -46
  147. package/dist/ThemeContext.js +0 -216
  148. package/dist/accordion/Accordion.js +0 -340
  149. package/dist/accordion/Accordion.stories.js +0 -207
  150. package/dist/accordion/readme.md +0 -96
  151. package/dist/accordion-group/AccordionGroup.js +0 -188
  152. package/dist/accordion-group/AccordionGroup.stories.js +0 -207
  153. package/dist/accordion-group/readme.md +0 -70
  154. package/dist/alert/Alert.js +0 -388
  155. package/dist/alert/Alert.stories.js +0 -158
  156. package/dist/alert/close.svg +0 -4
  157. package/dist/alert/error.svg +0 -4
  158. package/dist/alert/info.svg +0 -4
  159. package/dist/alert/readme.md +0 -43
  160. package/dist/alert/success.svg +0 -4
  161. package/dist/alert/warning.svg +0 -4
  162. package/dist/badge/Badge.js +0 -61
  163. package/dist/button/Button.js +0 -228
  164. package/dist/button/Button.stories.js +0 -224
  165. package/dist/button/readme.md +0 -93
  166. package/dist/checkbox/Checkbox.stories.js +0 -144
  167. package/dist/checkbox/readme.md +0 -116
  168. package/dist/common/variables.js +0 -1159
  169. package/dist/date/Date.stories.js +0 -205
  170. package/dist/date/calendar.svg +0 -1
  171. package/dist/date/calendar_dark.svg +0 -1
  172. package/dist/date/readme.md +0 -73
  173. package/dist/dialog/Dialog.stories.js +0 -217
  174. package/dist/dialog/readme.md +0 -32
  175. package/dist/dropdown/Dropdown.js +0 -498
  176. package/dist/dropdown/Dropdown.stories.js +0 -249
  177. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  178. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  179. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  180. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  181. package/dist/dropdown/readme.md +0 -69
  182. package/dist/footer/Footer.stories.js +0 -94
  183. package/dist/footer/dxc_logo_wht.png +0 -0
  184. package/dist/footer/readme.md +0 -41
  185. package/dist/header/Header.js +0 -431
  186. package/dist/header/Header.stories.js +0 -176
  187. package/dist/header/close_icon.svg +0 -1
  188. package/dist/header/dxc_logo_black.png +0 -0
  189. package/dist/header/dxc_logo_blk_rgb.svg +0 -6
  190. package/dist/header/dxc_logo_white.png +0 -0
  191. package/dist/header/hamb_menu_black.svg +0 -1
  192. package/dist/header/hamb_menu_white.svg +0 -1
  193. package/dist/header/readme.md +0 -33
  194. package/dist/input-text/InputText.stories.js +0 -209
  195. package/dist/input-text/error.svg +0 -1
  196. package/dist/input-text/readme.md +0 -91
  197. package/dist/layout/facebook.svg +0 -45
  198. package/dist/layout/linkedin.svg +0 -50
  199. package/dist/layout/twitter.svg +0 -53
  200. package/dist/link/Link.js +0 -212
  201. package/dist/link/readme.md +0 -51
  202. package/dist/paginator/Paginator.js +0 -283
  203. package/dist/paginator/images/next.svg +0 -3
  204. package/dist/paginator/images/nextPage.svg +0 -3
  205. package/dist/paginator/images/previous.svg +0 -3
  206. package/dist/paginator/images/previousPage.svg +0 -3
  207. package/dist/paginator/readme.md +0 -50
  208. package/dist/progress-bar/ProgressBar.js +0 -206
  209. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  210. package/dist/progress-bar/readme.md +0 -63
  211. package/dist/radio/Radio.stories.js +0 -166
  212. package/dist/radio/readme.md +0 -70
  213. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  214. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  215. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  216. package/dist/select/Select.js +0 -525
  217. package/dist/select/Select.stories.js +0 -235
  218. package/dist/select/readme.md +0 -72
  219. package/dist/slider/Slider.js +0 -315
  220. package/dist/slider/Slider.stories.js +0 -241
  221. package/dist/slider/readme.md +0 -64
  222. package/dist/spinner/Spinner.js +0 -214
  223. package/dist/spinner/Spinner.stories.js +0 -183
  224. package/dist/spinner/readme.md +0 -65
  225. package/dist/switch/Switch.stories.js +0 -134
  226. package/dist/switch/readme.md +0 -133
  227. package/dist/table/Table.js +0 -122
  228. package/dist/tabs/Tabs.stories.js +0 -130
  229. package/dist/tabs/readme.md +0 -78
  230. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  231. package/dist/tabs-for-sections/readme.md +0 -78
  232. package/dist/toggle/Toggle.stories.js +0 -297
  233. package/dist/toggle/readme.md +0 -80
  234. package/dist/toggle-group/ToggleGroup.js +0 -241
  235. package/dist/toggle-group/readme.md +0 -82
  236. package/dist/upload/Upload.stories.js +0 -72
  237. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -135
  238. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  239. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  240. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -325
  241. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  242. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  243. package/dist/upload/file-upload/FileToUpload.js +0 -184
  244. package/dist/upload/file-upload/audio-icon.svg +0 -4
  245. package/dist/upload/file-upload/close.svg +0 -4
  246. package/dist/upload/file-upload/file-icon.svg +0 -4
  247. package/dist/upload/file-upload/video-icon.svg +0 -4
  248. package/dist/upload/readme.md +0 -37
  249. package/dist/upload/transaction/Transaction.js +0 -171
  250. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  251. package/dist/upload/transaction/audio-icon.svg +0 -4
  252. package/dist/upload/transaction/error-icon.svg +0 -4
  253. package/dist/upload/transaction/file-icon-err.svg +0 -4
  254. package/dist/upload/transaction/file-icon.svg +0 -4
  255. package/dist/upload/transaction/image-icon-err.svg +0 -4
  256. package/dist/upload/transaction/image-icon.svg +0 -4
  257. package/dist/upload/transaction/success-icon.svg +0 -4
  258. package/dist/upload/transaction/video-icon-err.svg +0 -4
  259. package/dist/upload/transaction/video-icon.svg +0 -4
  260. package/dist/upload/transactions/Transactions.js +0 -138
  261. package/dist/wizard/Wizard.js +0 -383
  262. package/dist/wizard/invalid_icon.svg +0 -6
  263. package/dist/wizard/valid_icon.svg +0 -6
  264. package/dist/wizard/validation-wrong.svg +0 -6
  265. package/test/Accordion.test.js +0 -33
  266. package/test/AccordionGroup.test.js +0 -125
  267. package/test/Alert.test.js +0 -53
  268. package/test/Box.test.js +0 -10
  269. package/test/Button.test.js +0 -18
  270. package/test/Card.test.js +0 -30
  271. package/test/Checkbox.test.js +0 -45
  272. package/test/Chip.test.js +0 -25
  273. package/test/Date.test.js +0 -393
  274. package/test/Dialog.test.js +0 -23
  275. package/test/Dropdown.test.js +0 -130
  276. package/test/Footer.test.js +0 -99
  277. package/test/Header.test.js +0 -39
  278. package/test/Heading.test.js +0 -35
  279. package/test/InputText.test.js +0 -240
  280. package/test/Link.test.js +0 -42
  281. package/test/Paginator.test.js +0 -177
  282. package/test/ProgressBar.test.js +0 -35
  283. package/test/Radio.test.js +0 -37
  284. package/test/ResultsetTable.test.js +0 -330
  285. package/test/Select.test.js +0 -192
  286. package/test/Sidenav.test.js +0 -45
  287. package/test/Slider.test.js +0 -82
  288. package/test/Spinner.test.js +0 -27
  289. package/test/Switch.test.js +0 -45
  290. package/test/Table.test.js +0 -36
  291. package/test/Tabs.test.js +0 -109
  292. package/test/TabsForSections.test.js +0 -34
  293. package/test/Tag.test.js +0 -32
  294. package/test/TextArea.test.js +0 -52
  295. package/test/ToggleGroup.test.js +0 -81
  296. package/test/Upload.test.js +0 -60
  297. package/test/Wizard.test.js +0 -130
  298. package/test/mocks/pngMock.js +0 -1
  299. package/test/mocks/svgMock.js +0 -1
package/badge/Badge.js ADDED
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof = require("@babel/runtime/helpers/typeof");
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports["default"] = void 0;
11
+
12
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
13
+
14
+ var _react = _interopRequireDefault(require("react"));
15
+
16
+ var _styledComponents = _interopRequireWildcard(require("styled-components"));
17
+
18
+ var _useTheme = _interopRequireDefault(require("../useTheme.js"));
19
+
20
+ var _templateObject;
21
+
22
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
23
+
24
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
25
+
26
+ var DxcBadge = function DxcBadge(_ref) {
27
+ var notificationText = _ref.notificationText;
28
+ var colorsTheme = (0, _useTheme["default"])();
29
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
30
+ theme: colorsTheme.tabs
31
+ }, /*#__PURE__*/_react["default"].createElement(StyledDxcBadge, {
32
+ notificationText: notificationText
33
+ }, /*#__PURE__*/_react["default"].createElement("span", null, notificationText)));
34
+ };
35
+
36
+ var StyledDxcBadge = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n background-color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n letter-spacing: ", ";\n width: ", ";\n height: ", ";\n border-radius: ", ";\n display: flex;\n padding-bottom: 1px;\n padding-right: 1px;\n flex-wrap: wrap;\n box-sizing: border-box;\n align-items: center;\n line-height: 1;\n align-content: center;\n flex-direction: row;\n justify-content: center;\n"])), function (props) {
37
+ return props.theme.badgeBackgroundColor;
38
+ }, function (props) {
39
+ return props.theme.badgeFontFamily;
40
+ }, function (props) {
41
+ return props.theme.badgeFontSize;
42
+ }, function (props) {
43
+ return props.theme.badgeFontStyle;
44
+ }, function (props) {
45
+ return props.theme.badgeFontWeight;
46
+ }, function (props) {
47
+ return props.theme.badgeFontColor;
48
+ }, function (props) {
49
+ return props.theme.badgeLetterSpacing;
50
+ }, function (props) {
51
+ return props.notificationText === true ? props.theme.badgeWidth : props.theme.badgeWidthWithNotificationNumber;
52
+ }, function (props) {
53
+ return props.notificationText === true ? props.theme.badgeHeight : props.theme.badgeHeightWithNotificationNumber;
54
+ }, function (props) {
55
+ return props.notificationText === true ? props.theme.badgeRadius : props.theme.badgeRadiusWithNotificationNumber;
56
+ });
57
+
58
+ var _default = DxcBadge;
59
+ exports["default"] = _default;
@@ -1,9 +1,9 @@
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
  });
@@ -29,15 +29,11 @@ var _useTheme = _interopRequireDefault(require("../useTheme.js"));
29
29
 
30
30
  var _BackgroundColorContext = require("../BackgroundColorContext.js");
31
31
 
32
- function _templateObject() {
33
- var data = (0, _taggedTemplateLiteral2["default"])(["\n display: ", ";\n border-radius: ", ";\n border-width: ", ";\n border-style: ", ";\n border-color: ", ";\n letter-spacing:", ";\n overflow: hidden;\n font-size: ", ";\n font-family: ", ";\n font-weight: ", ";\n color: ", ";\n width: ", ";\n background-color: ", ";\n\n box-shadow: ", ";\n\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n\n padding: ", ";\n padding-top: ", ";\n padding-right: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n"]);
32
+ var _templateObject;
34
33
 
35
- _templateObject = function _templateObject() {
36
- return data;
37
- };
34
+ 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); }
38
35
 
39
- return data;
40
- }
36
+ 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; }
41
37
 
42
38
  var DxcBox = function DxcBox(_ref) {
43
39
  var shadowDepth = _ref.shadowDepth,
@@ -49,15 +45,15 @@ var DxcBox = function DxcBox(_ref) {
49
45
  _ref$size = _ref.size,
50
46
  size = _ref$size === void 0 ? "fitContent" : _ref$size;
51
47
  var colorsTheme = (0, _useTheme["default"])();
52
- return _react["default"].createElement(_styledComponents.ThemeProvider, {
48
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
53
49
  theme: colorsTheme.box
54
- }, _react["default"].createElement(StyledDxcBox, {
50
+ }, /*#__PURE__*/_react["default"].createElement(StyledDxcBox, {
55
51
  shadowDepth: shadowDepth,
56
52
  display: display,
57
53
  margin: margin,
58
54
  padding: padding,
59
55
  size: size
60
- }, _react["default"].createElement(_BackgroundColorContext.BackgroundColorProvider, {
56
+ }, /*#__PURE__*/_react["default"].createElement(_BackgroundColorContext.BackgroundColorProvider, {
61
57
  color: colorsTheme.box.backgroundColor
62
58
  }, children)));
63
59
  };
@@ -78,7 +74,7 @@ var calculateWidth = function calculateWidth(margin, size, padding) {
78
74
  return sizes[size];
79
75
  };
80
76
 
81
- var StyledDxcBox = _styledComponents["default"].div(_templateObject(), function (_ref2) {
77
+ var StyledDxcBox = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: ", ";\n border-radius: ", ";\n border-width: ", ";\n border-style: ", ";\n border-color: ", ";\n letter-spacing: ", ";\n overflow: hidden;\n width: ", ";\n background-color: ", ";\n box-shadow: ", ";\n\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n\n padding: ", ";\n padding-top: ", ";\n padding-right: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n"])), function (_ref2) {
82
78
  var display = _ref2.display;
83
79
  return display;
84
80
  }, function (props) {
@@ -91,14 +87,6 @@ var StyledDxcBox = _styledComponents["default"].div(_templateObject(), function
91
87
  return props.theme.borderColor;
92
88
  }, function (props) {
93
89
  return props.theme.letterSpacing;
94
- }, function (props) {
95
- return props.theme.fontSize;
96
- }, function (props) {
97
- return props.theme.fontFamily;
98
- }, function (props) {
99
- return props.theme.fontWeight;
100
- }, function (props) {
101
- return props.theme.fontColor;
102
90
  }, function (props) {
103
91
  return calculateWidth(props.margin, props.size, props.padding);
104
92
  }, function (props) {
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;
@@ -0,0 +1,182 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof3 = require("@babel/runtime/helpers/typeof");
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports["default"] = void 0;
11
+
12
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
13
+
14
+ var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
15
+
16
+ var _react = _interopRequireWildcard(require("react"));
17
+
18
+ var _Button = _interopRequireDefault(require("@material-ui/core/Button"));
19
+
20
+ var _styledComponents = _interopRequireWildcard(require("styled-components"));
21
+
22
+ var _variables = require("../common/variables.js");
23
+
24
+ var _utils = require("../common/utils.js");
25
+
26
+ var _useTheme = _interopRequireDefault(require("../useTheme.js"));
27
+
28
+ var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext.js"));
29
+
30
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4;
31
+
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); }
33
+
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; }
35
+
36
+ var DxcButton = function DxcButton(_ref) {
37
+ var _ref$label = _ref.label,
38
+ label = _ref$label === void 0 ? "" : _ref$label,
39
+ _ref$mode = _ref.mode,
40
+ mode = _ref$mode === void 0 ? "primary" : _ref$mode,
41
+ _ref$disabled = _ref.disabled,
42
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
43
+ _ref$iconPosition = _ref.iconPosition,
44
+ iconPosition = _ref$iconPosition === void 0 ? "before" : _ref$iconPosition,
45
+ _ref$type = _ref.type,
46
+ type = _ref$type === void 0 ? "button" : _ref$type,
47
+ _ref$iconSrc = _ref.iconSrc,
48
+ iconSrc = _ref$iconSrc === void 0 ? "" : _ref$iconSrc,
49
+ icon = _ref.icon,
50
+ _ref$onClick = _ref.onClick,
51
+ _onClick = _ref$onClick === void 0 ? "" : _ref$onClick,
52
+ margin = _ref.margin,
53
+ size = _ref.size,
54
+ _ref$tabIndex = _ref.tabIndex,
55
+ tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
56
+
57
+ var colorsTheme = (0, _useTheme["default"])();
58
+ var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
59
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
60
+ theme: colorsTheme.button
61
+ }, /*#__PURE__*/_react["default"].createElement(DxCButton, {
62
+ type: type,
63
+ margin: margin,
64
+ mode: mode !== "primary" && mode !== "secondary" && mode !== "text" ? "primary" : mode,
65
+ disabled: disabled,
66
+ iconPosition: iconPosition,
67
+ size: size,
68
+ backgroundType: backgroundType,
69
+ icon: icon
70
+ }, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
71
+ disabled: disabled,
72
+ type: type,
73
+ disableRipple: true,
74
+ "aria-disabled": disabled ? true : false,
75
+ tabIndex: disabled ? -1 : tabIndex,
76
+ onClick: function onClick() {
77
+ if (_onClick) {
78
+ _onClick();
79
+ }
80
+ }
81
+ }, label && /*#__PURE__*/_react["default"].createElement(LabelContainer, {
82
+ icon: icon,
83
+ iconPosition: iconPosition
84
+ }, label), icon ? /*#__PURE__*/_react["default"].createElement(IconContainer, {
85
+ label: label,
86
+ iconPosition: iconPosition
87
+ }, (0, _typeof2["default"])(icon) === "object" ? icon : /*#__PURE__*/_react["default"].createElement(icon)) : iconSrc && /*#__PURE__*/_react["default"].createElement(ButtonIcon, {
88
+ label: label,
89
+ iconPosition: iconPosition,
90
+ src: iconSrc
91
+ }))));
92
+ };
93
+
94
+ var sizes = {
95
+ small: "42px",
96
+ medium: "120px",
97
+ large: "240px",
98
+ fillParent: "100%",
99
+ fitContent: "unset"
100
+ };
101
+
102
+ var calculateWidth = function calculateWidth(margin, size) {
103
+ if (size === "fillParent") {
104
+ return "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")");
105
+ }
106
+
107
+ return sizes[size];
108
+ };
109
+
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) {
111
+ return props.theme.labelFontLineHeight;
112
+ }, function (props) {
113
+ return props.theme.fontSize;
114
+ }, function (props) {
115
+ return !props.icon || props.iconPosition === "before" ? "8px" : "0px";
116
+ }, function (props) {
117
+ return !props.icon || props.iconPosition === "after" ? "8px" : "0px";
118
+ });
119
+
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) {
121
+ return !props.label ? "0px" : props.iconPosition === "after" && props.label !== "" && "8px" || "8px";
122
+ }, function (props) {
123
+ return !props.label ? "0px" : props.iconPosition === "before" && props.label !== "" && "8px" || "8px";
124
+ });
125
+
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) {
127
+ return props.iconPosition === "after" && props.label !== "" && "10px" || "0px";
128
+ }, function (props) {
129
+ return props.iconPosition === "before" && props.label !== "" && "10px" || "0px";
130
+ });
131
+
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) {
133
+ return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
134
+ }, function (props) {
135
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
136
+ }, function (props) {
137
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.right ? _variables.spaces[props.margin.right] : "";
138
+ }, function (props) {
139
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
140
+ }, function (props) {
141
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
142
+ }, function (props) {
143
+ return calculateWidth(props.margin, props.size);
144
+ }, function (props) {
145
+ return props.disabled && "not-allowed" || "pointer";
146
+ }, function (props) {
147
+ return props.theme.paddingLeft;
148
+ }, function (props) {
149
+ return props.theme.paddingRight;
150
+ }, function (props) {
151
+ return props.theme.paddingTop;
152
+ }, function (props) {
153
+ return props.theme.paddingBottom;
154
+ }, function (props) {
155
+ return props.iconPosition === "after" && "row" || "row-reverse";
156
+ }, function (props) {
157
+ return props.theme.fontFamily;
158
+ }, function (props) {
159
+ return props.theme.fontSize;
160
+ }, function (props) {
161
+ return props.theme.fontWeight;
162
+ }, function (props) {
163
+ return props.theme.labelLetterSpacing;
164
+ }, function (props) {
165
+ return props.size === "small" && "calc(100% - 22px)" || "unset";
166
+ }, function (props) {
167
+ return props.backgroundType === "dark" ? props.theme.focusBorderColorOnDark : props.theme.focusBorderColor;
168
+ }, function (props) {
169
+ var mode = props.mode,
170
+ backgroundType = props.backgroundType;
171
+
172
+ if (mode === "primary") {
173
+ 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 ");
174
+ } else if (mode === "secondary") {
175
+ 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 ");
176
+ } else if (mode === "text") {
177
+ 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 ");
178
+ }
179
+ });
180
+
181
+ var _default = DxcButton;
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
+