@dxc-technology/halstack-react 0.0.0-d1d02c1 → 0.0.0-d20b360

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 (333) hide show
  1. package/BackgroundColorContext.js +50 -0
  2. package/ThemeContext.js +246 -0
  3. package/V3Select/V3Select.js +455 -0
  4. package/V3Select/index.d.ts +27 -0
  5. package/V3Textarea/V3Textarea.js +260 -0
  6. package/V3Textarea/index.d.ts +27 -0
  7. package/accordion/Accordion.d.ts +4 -0
  8. package/accordion/Accordion.js +258 -0
  9. package/accordion/types.d.ts +68 -0
  10. package/accordion/types.js +5 -0
  11. package/accordion-group/AccordionGroup.d.ts +7 -0
  12. package/accordion-group/AccordionGroup.js +170 -0
  13. package/accordion-group/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 +38 -34
  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/button/Button.js +182 -0
  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/card/Card.js +165 -0
  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/checkbox/Checkbox.js +253 -0
  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/chip/Chip.js +221 -0
  38. package/chip/index.d.ts +22 -0
  39. package/{dist/common → common}/OpenSans.css +0 -0
  40. package/{dist/common → common}/RequiredComponent.js +5 -19
  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/common/utils.js +22 -0
  52. package/common/variables.js +1569 -0
  53. package/{dist/date → date}/Date.js +87 -70
  54. package/date/index.d.ts +27 -0
  55. package/date-input/DateInput.d.ts +4 -0
  56. package/date-input/DateInput.js +361 -0
  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/dialog/Dialog.js +165 -0
  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/dropdown/Dropdown.js +417 -0
  65. package/dropdown/types.d.ts +89 -0
  66. package/dropdown/types.js +5 -0
  67. package/file-input/FileInput.js +532 -0
  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/heading/Heading.js +176 -0
  82. package/heading/index.d.ts +17 -0
  83. package/input-text/Icons.js +22 -0
  84. package/input-text/InputText.js +611 -0
  85. package/input-text/index.d.ts +36 -0
  86. package/{dist/layout → layout}/ApplicationLayout.js +43 -142
  87. package/layout/Icons.js +55 -0
  88. package/link/Link.js +183 -0
  89. package/link/index.d.ts +23 -0
  90. package/main.d.ts +44 -0
  91. package/{dist/main.js → main.js} +137 -53
  92. package/number-input/NumberInput.js +128 -0
  93. package/number-input/NumberInput.stories.jsx +115 -0
  94. package/{dist/ThemeContext.js → number-input/NumberInputContext.js} +3 -2
  95. package/number-input/index.d.ts +113 -0
  96. package/package.json +37 -23
  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/password-input/PasswordInput.js +199 -0
  104. package/password-input/PasswordInput.stories.jsx +131 -0
  105. package/password-input/index.d.ts +94 -0
  106. package/progress-bar/ProgressBar.d.ts +4 -0
  107. package/progress-bar/ProgressBar.js +170 -0
  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/radio/Radio.js +174 -0
  112. package/radio/Radio.stories.tsx +192 -0
  113. package/radio/types.d.ts +54 -0
  114. package/radio/types.js +5 -0
  115. package/resultsetTable/ResultsetTable.js +274 -0
  116. package/resultsetTable/index.d.ts +19 -0
  117. package/select/Select.js +865 -0
  118. package/select/index.d.ts +131 -0
  119. package/sidenav/Sidenav.js +145 -0
  120. package/sidenav/index.d.ts +13 -0
  121. package/slider/Slider.d.ts +4 -0
  122. package/slider/Slider.js +306 -0
  123. package/slider/types.d.ts +83 -0
  124. package/slider/types.js +5 -0
  125. package/spinner/Spinner.js +267 -0
  126. package/spinner/Spinner.stories.jsx +102 -0
  127. package/spinner/index.d.ts +17 -0
  128. package/switch/Switch.d.ts +4 -0
  129. package/switch/Switch.js +179 -0
  130. package/switch/types.d.ts +58 -0
  131. package/switch/types.js +5 -0
  132. package/table/Table.js +118 -0
  133. package/table/Table.stories.jsx +276 -0
  134. package/table/index.d.ts +13 -0
  135. package/tabs/Tabs.d.ts +4 -0
  136. package/tabs/Tabs.js +211 -0
  137. package/tabs/types.d.ts +71 -0
  138. package/tabs/types.js +5 -0
  139. package/tag/Tag.js +208 -0
  140. package/tag/index.d.ts +24 -0
  141. package/text-input/TextInput.js +825 -0
  142. package/text-input/index.d.ts +135 -0
  143. package/textarea/Textarea.js +317 -0
  144. package/textarea/Textarea.stories.jsx +135 -0
  145. package/textarea/index.d.ts +117 -0
  146. package/{dist/toggle → toggle}/Toggle.js +30 -67
  147. package/toggle/index.d.ts +21 -0
  148. package/toggle-group/ToggleGroup.js +243 -0
  149. package/toggle-group/index.d.ts +21 -0
  150. package/{dist/upload → upload}/Upload.js +23 -22
  151. package/upload/buttons-upload/ButtonsUpload.js +111 -0
  152. package/upload/buttons-upload/Icons.js +40 -0
  153. package/upload/dragAndDropArea/DragAndDropArea.js +225 -0
  154. package/upload/dragAndDropArea/Icons.js +39 -0
  155. package/upload/file-upload/FileToUpload.js +115 -0
  156. package/upload/file-upload/Icons.js +66 -0
  157. package/upload/files-upload/FilesToUpload.js +109 -0
  158. package/upload/index.d.ts +15 -0
  159. package/upload/transaction/Icons.js +160 -0
  160. package/upload/transaction/Transaction.js +104 -0
  161. package/upload/transactions/Transactions.js +94 -0
  162. package/useTheme.js +22 -0
  163. package/wizard/Icons.js +65 -0
  164. package/wizard/Wizard.js +271 -0
  165. package/wizard/index.d.ts +18 -0
  166. package/README.md +0 -66
  167. package/babel.config.js +0 -4
  168. package/dist/accordion/Accordion.js +0 -248
  169. package/dist/accordion/Accordion.stories.js +0 -207
  170. package/dist/accordion/readme.md +0 -96
  171. package/dist/alert/Alert.js +0 -304
  172. package/dist/alert/Alert.stories.js +0 -158
  173. package/dist/alert/close.svg +0 -4
  174. package/dist/alert/error.svg +0 -4
  175. package/dist/alert/info.svg +0 -4
  176. package/dist/alert/readme.md +0 -43
  177. package/dist/alert/success.svg +0 -4
  178. package/dist/alert/warning.svg +0 -4
  179. package/dist/button/Button.js +0 -181
  180. package/dist/button/Button.stories.js +0 -224
  181. package/dist/button/readme.md +0 -93
  182. package/dist/card/Card.js +0 -217
  183. package/dist/checkbox/Checkbox.js +0 -240
  184. package/dist/checkbox/Checkbox.stories.js +0 -144
  185. package/dist/checkbox/readme.md +0 -116
  186. package/dist/chip/Chip.js +0 -173
  187. package/dist/common/services/example-service.js +0 -10
  188. package/dist/common/services/example-service.test.js +0 -12
  189. package/dist/common/utils.js +0 -42
  190. package/dist/common/variables.js +0 -434
  191. package/dist/date/Date.stories.js +0 -205
  192. package/dist/date/calendar.svg +0 -1
  193. package/dist/date/calendar_dark.svg +0 -1
  194. package/dist/date/readme.md +0 -73
  195. package/dist/dialog/Dialog.js +0 -197
  196. package/dist/dialog/Dialog.stories.js +0 -217
  197. package/dist/dialog/readme.md +0 -32
  198. package/dist/dropdown/Dropdown.js +0 -416
  199. package/dist/dropdown/Dropdown.stories.js +0 -249
  200. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  201. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  202. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  203. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  204. package/dist/dropdown/readme.md +0 -69
  205. package/dist/footer/Footer.js +0 -346
  206. package/dist/footer/Footer.stories.js +0 -94
  207. package/dist/footer/dxc_logo_wht.png +0 -0
  208. package/dist/footer/readme.md +0 -41
  209. package/dist/header/Header.js +0 -373
  210. package/dist/header/Header.stories.js +0 -176
  211. package/dist/header/close_icon.svg +0 -1
  212. package/dist/header/dxc_logo_black.png +0 -0
  213. package/dist/header/dxc_logo_blk_rgb.svg +0 -6
  214. package/dist/header/dxc_logo_white.png +0 -0
  215. package/dist/header/hamb_menu_black.svg +0 -1
  216. package/dist/header/hamb_menu_white.svg +0 -1
  217. package/dist/header/readme.md +0 -33
  218. package/dist/heading/Heading.js +0 -153
  219. package/dist/input-text/InputText.js +0 -519
  220. package/dist/input-text/InputText.stories.js +0 -209
  221. package/dist/input-text/error.svg +0 -1
  222. package/dist/input-text/readme.md +0 -91
  223. package/dist/layout/facebook.svg +0 -45
  224. package/dist/layout/linkedin.svg +0 -50
  225. package/dist/layout/twitter.svg +0 -53
  226. package/dist/link/Link.js +0 -171
  227. package/dist/link/readme.md +0 -51
  228. package/dist/paginator/Paginator.js +0 -196
  229. package/dist/paginator/images/next.svg +0 -3
  230. package/dist/paginator/images/nextPage.svg +0 -3
  231. package/dist/paginator/images/previous.svg +0 -3
  232. package/dist/paginator/images/previousPage.svg +0 -3
  233. package/dist/paginator/readme.md +0 -50
  234. package/dist/progress-bar/ProgressBar.js +0 -185
  235. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  236. package/dist/progress-bar/readme.md +0 -63
  237. package/dist/radio/Radio.js +0 -195
  238. package/dist/radio/Radio.stories.js +0 -166
  239. package/dist/radio/readme.md +0 -70
  240. package/dist/resultsetTable/ResultsetTable.js +0 -333
  241. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  242. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  243. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  244. package/dist/select/Select.js +0 -453
  245. package/dist/select/Select.stories.js +0 -235
  246. package/dist/select/readme.md +0 -72
  247. package/dist/sidenav/Sidenav.js +0 -69
  248. package/dist/slider/Slider.js +0 -266
  249. package/dist/slider/Slider.stories.js +0 -241
  250. package/dist/slider/readme.md +0 -64
  251. package/dist/spinner/Spinner.js +0 -193
  252. package/dist/spinner/Spinner.stories.js +0 -183
  253. package/dist/spinner/readme.md +0 -65
  254. package/dist/switch/Switch.js +0 -199
  255. package/dist/switch/Switch.stories.js +0 -134
  256. package/dist/switch/readme.md +0 -133
  257. package/dist/table/Table.js +0 -105
  258. package/dist/tabs/Tabs.js +0 -172
  259. package/dist/tabs/Tabs.stories.js +0 -130
  260. package/dist/tabs/readme.md +0 -78
  261. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  262. package/dist/tabs-for-sections/readme.md +0 -78
  263. package/dist/tag/Tag.js +0 -234
  264. package/dist/textarea/Textarea.js +0 -227
  265. package/dist/toggle/Toggle.stories.js +0 -297
  266. package/dist/toggle/readme.md +0 -80
  267. package/dist/toggle-group/ToggleGroup.js +0 -214
  268. package/dist/toggle-group/readme.md +0 -82
  269. package/dist/upload/Upload.stories.js +0 -72
  270. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -122
  271. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  272. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  273. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -279
  274. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  275. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  276. package/dist/upload/file-upload/FileToUpload.js +0 -158
  277. package/dist/upload/file-upload/audio-icon.svg +0 -4
  278. package/dist/upload/file-upload/close.svg +0 -4
  279. package/dist/upload/file-upload/file-icon.svg +0 -4
  280. package/dist/upload/file-upload/video-icon.svg +0 -4
  281. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  282. package/dist/upload/readme.md +0 -37
  283. package/dist/upload/transaction/Transaction.js +0 -155
  284. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  285. package/dist/upload/transaction/audio-icon.svg +0 -4
  286. package/dist/upload/transaction/error-icon.svg +0 -4
  287. package/dist/upload/transaction/file-icon-err.svg +0 -4
  288. package/dist/upload/transaction/file-icon.svg +0 -4
  289. package/dist/upload/transaction/image-icon-err.svg +0 -4
  290. package/dist/upload/transaction/image-icon.svg +0 -4
  291. package/dist/upload/transaction/success-icon.svg +0 -4
  292. package/dist/upload/transaction/video-icon-err.svg +0 -4
  293. package/dist/upload/transaction/video-icon.svg +0 -4
  294. package/dist/upload/transactions/Transactions.js +0 -120
  295. package/dist/wizard/Wizard.js +0 -327
  296. package/dist/wizard/invalid_icon.svg +0 -6
  297. package/dist/wizard/valid_icon.svg +0 -6
  298. package/dist/wizard/validation-wrong.svg +0 -6
  299. package/test/Accordion.test.js +0 -33
  300. package/test/Alert.test.js +0 -53
  301. package/test/Box.test.js +0 -10
  302. package/test/Button.test.js +0 -18
  303. package/test/Card.test.js +0 -30
  304. package/test/Checkbox.test.js +0 -45
  305. package/test/Chip.test.js +0 -25
  306. package/test/Date.test.js +0 -393
  307. package/test/Dialog.test.js +0 -23
  308. package/test/Dropdown.test.js +0 -130
  309. package/test/Footer.test.js +0 -99
  310. package/test/Header.test.js +0 -39
  311. package/test/Heading.test.js +0 -35
  312. package/test/InputText.test.js +0 -236
  313. package/test/Link.test.js +0 -33
  314. package/test/Paginator.test.js +0 -165
  315. package/test/ProgressBar.test.js +0 -35
  316. package/test/Radio.test.js +0 -37
  317. package/test/ResultsetTable.test.js +0 -282
  318. package/test/Select.test.js +0 -191
  319. package/test/Sidenav.test.js +0 -19
  320. package/test/Slider.test.js +0 -82
  321. package/test/Spinner.test.js +0 -27
  322. package/test/Switch.test.js +0 -45
  323. package/test/Table.test.js +0 -36
  324. package/test/Tabs.test.js +0 -88
  325. package/test/TabsForSections.test.js +0 -34
  326. package/test/Tag.test.js +0 -32
  327. package/test/TextArea.test.js +0 -52
  328. package/test/Toggle.test.js +0 -43
  329. package/test/ToggleGroup.test.js +0 -81
  330. package/test/Upload.test.js +0 -60
  331. package/test/Wizard.test.js +0 -130
  332. package/test/mocks/pngMock.js +0 -1
  333. 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
  });
@@ -15,7 +15,7 @@ var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
15
15
 
16
16
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
17
17
 
18
- var _react = _interopRequireWildcard(require("react"));
18
+ var _react = _interopRequireDefault(require("react"));
19
19
 
20
20
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
21
21
 
@@ -25,19 +25,15 @@ var _variables = require("../common/variables.js");
25
25
 
26
26
  var _utils = require("../common/utils.js");
27
27
 
28
- var _ThemeContext = _interopRequireDefault(require("../ThemeContext.js"));
28
+ var _useTheme = _interopRequireDefault(require("../useTheme.js"));
29
29
 
30
- require("../common/OpenSans.css");
30
+ var _BackgroundColorContext = require("../BackgroundColorContext.js");
31
31
 
32
- function _templateObject() {
33
- var data = (0, _taggedTemplateLiteral2["default"])(["\n display: ", ";\n border-radius: 4px;\n overflow: hidden;\n font-family: \"Open Sans\", sans-serif;\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"]);
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,
@@ -48,19 +44,18 @@ var DxcBox = function DxcBox(_ref) {
48
44
  children = _ref.children,
49
45
  _ref$size = _ref.size,
50
46
  size = _ref$size === void 0 ? "fitContent" : _ref$size;
51
- var customTheme = (0, _react.useContext)(_ThemeContext["default"]);
52
- var colorsTheme = (0, _react.useMemo)(function () {
53
- return (0, _utils.getCustomTheme)(_variables.theme, (0, _utils.getCustomTheme)(_variables.defaultTheme, customTheme));
54
- }, [customTheme]);
55
- return _react["default"].createElement(_styledComponents.ThemeProvider, {
47
+ var colorsTheme = (0, _useTheme["default"])();
48
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
56
49
  theme: colorsTheme.box
57
- }, _react["default"].createElement(StyledDxcBox, {
50
+ }, /*#__PURE__*/_react["default"].createElement(StyledDxcBox, {
58
51
  shadowDepth: shadowDepth,
59
52
  display: display,
60
53
  margin: margin,
61
54
  padding: padding,
62
55
  size: size
63
- }, children));
56
+ }, /*#__PURE__*/_react["default"].createElement(_BackgroundColorContext.BackgroundColorProvider, {
57
+ color: colorsTheme.box.backgroundColor
58
+ }, children)));
64
59
  };
65
60
 
66
61
  var sizes = {
@@ -79,45 +74,54 @@ var calculateWidth = function calculateWidth(margin, size, padding) {
79
74
  return sizes[size];
80
75
  };
81
76
 
82
- 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) {
83
78
  var display = _ref2.display;
84
79
  return display;
80
+ }, function (props) {
81
+ return props.theme.borderRadius;
82
+ }, function (props) {
83
+ return props.theme.borderThickness;
84
+ }, function (props) {
85
+ return props.theme.borderStyle;
86
+ }, function (props) {
87
+ return props.theme.borderColor;
88
+ }, function (props) {
89
+ return props.theme.letterSpacing;
85
90
  }, function (props) {
86
91
  return calculateWidth(props.margin, props.size, props.padding);
87
92
  }, function (props) {
88
93
  return props.theme.backgroundColor;
94
+ }, function (props) {
95
+ return props.shadowDepth === 1 ? "".concat(props.theme.oneShadowDepthShadowOffsetX, " ").concat(props.theme.oneShadowDepthShadowOffsetY, " ").concat(props.theme.oneShadowDepthShadowBlur, " ").concat(props.theme.oneShadowDepthShadowSpread, " ").concat(props.theme.oneShadowDepthShadowColor) : props.shadowDepth === 2 ? "".concat(props.theme.twoShadowDepthShadowOffsetX, " ").concat(props.theme.twoShadowDepthShadowOffsetY, " ").concat(props.theme.twoShadowDepthShadowBlur, " ").concat(props.theme.twoShadowDepthShadowSpread, " ").concat(props.theme.twoShadowDepthShadowColor) : "".concat(props.theme.noneShadowDepthShadowOffsetX, " ").concat(props.theme.noneShadowDepthShadowOffsetY, " ").concat(props.theme.noneShadowDepthShadowBlur, " ").concat(props.theme.noneShadowDepthShadowSpread, " ").concat(props.theme.noneShadowDepthShadowColor);
89
96
  }, function (_ref3) {
90
- var shadowDepth = _ref3.shadowDepth;
91
- return shadowDepth === 1 ? "0px 2px 1px -1px rgba(0,0,0,0.2), 0px 1px 1px 0px rgba(0,0,0,0.14), 0px 1px 3px 0px rgba(0,0,0,0.12)" : shadowDepth === 2 ? "0px 3px 3px -2px rgba(0,0,0,0.2), 0px 3px 4px 0px rgba(0,0,0,0.14), 0px 1px 8px 0px rgba(0,0,0,0.12)" : "none";
97
+ var margin = _ref3.margin;
98
+ return margin && (0, _typeof2["default"])(margin) !== "object" ? _variables.spaces[margin] : "0px";
92
99
  }, function (_ref4) {
93
100
  var margin = _ref4.margin;
94
- return margin && (0, _typeof2["default"])(margin) !== "object" ? _variables.spaces[margin] : "0px";
101
+ return margin && margin.top ? _variables.spaces[margin.top] : "";
95
102
  }, function (_ref5) {
96
103
  var margin = _ref5.margin;
97
- return margin && margin.top ? _variables.spaces[margin.top] : "";
104
+ return margin && margin.right ? _variables.spaces[margin.right] : "";
98
105
  }, function (_ref6) {
99
106
  var margin = _ref6.margin;
100
- return margin && margin.right ? _variables.spaces[margin.right] : "";
107
+ return margin && margin.bottom ? _variables.spaces[margin.bottom] : "";
101
108
  }, function (_ref7) {
102
109
  var margin = _ref7.margin;
103
- return margin && margin.bottom ? _variables.spaces[margin.bottom] : "";
104
- }, function (_ref8) {
105
- var margin = _ref8.margin;
106
110
  return margin && margin.left ? _variables.spaces[margin.left] : "";
111
+ }, function (_ref8) {
112
+ var padding = _ref8.padding;
113
+ return padding && (0, _typeof2["default"])(padding) !== "object" ? _variables.spaces[padding] : "0px";
107
114
  }, function (_ref9) {
108
115
  var padding = _ref9.padding;
109
- return padding && (0, _typeof2["default"])(padding) !== "object" ? _variables.spaces[padding] : "0px";
116
+ return padding && padding.top ? _variables.spaces[padding.top] : "";
110
117
  }, function (_ref10) {
111
118
  var padding = _ref10.padding;
112
- return padding && padding.top ? _variables.spaces[padding.top] : "";
119
+ return padding && padding.right ? _variables.spaces[padding.right] : "";
113
120
  }, function (_ref11) {
114
121
  var padding = _ref11.padding;
115
- return padding && padding.right ? _variables.spaces[padding.right] : "";
122
+ return padding && padding.bottom ? _variables.spaces[padding.bottom] : "";
116
123
  }, function (_ref12) {
117
124
  var padding = _ref12.padding;
118
- return padding && padding.bottom ? _variables.spaces[padding.bottom] : "";
119
- }, function (_ref13) {
120
- var padding = _ref13.padding;
121
125
  return padding && padding.left ? _variables.spaces[padding.left] : "";
122
126
  });
123
127
 
@@ -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;
@@ -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;