@dxc-technology/halstack-react 0.0.0-db8a3a7 → 0.0.0-dbd540d

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 (242) hide show
  1. package/README.md +2 -2
  2. package/babel.config.js +0 -1
  3. package/dist/ThemeContext.js +134 -100
  4. package/dist/V3Select/V3Select.js +549 -0
  5. package/dist/V3Select/index.d.ts +27 -0
  6. package/dist/V3Textarea/V3Textarea.js +264 -0
  7. package/dist/V3Textarea/index.d.ts +27 -0
  8. package/dist/accordion/Accordion.js +80 -83
  9. package/dist/accordion/index.d.ts +28 -0
  10. package/dist/accordion-group/AccordionGroup.js +1 -3
  11. package/dist/accordion-group/index.d.ts +16 -0
  12. package/dist/alert/Alert.js +168 -83
  13. package/dist/alert/index.d.ts +51 -0
  14. package/dist/badge/Badge.js +29 -6
  15. package/dist/box/Box.js +27 -18
  16. package/dist/box/index.d.ts +25 -0
  17. package/dist/button/Button.js +41 -22
  18. package/dist/button/index.d.ts +24 -0
  19. package/dist/card/Card.js +15 -8
  20. package/dist/card/index.d.ts +22 -0
  21. package/dist/checkbox/Checkbox.js +89 -23
  22. package/dist/checkbox/index.d.ts +24 -0
  23. package/dist/chip/Chip.js +63 -21
  24. package/dist/chip/index.d.ts +22 -0
  25. package/dist/common/variables.js +1214 -352
  26. package/dist/date/Date.js +60 -38
  27. package/dist/date/index.d.ts +27 -0
  28. package/dist/date-input/DateInput.js +400 -0
  29. package/dist/date-input/index.d.ts +95 -0
  30. package/dist/dialog/Dialog.js +44 -29
  31. package/dist/dialog/index.d.ts +18 -0
  32. package/dist/dropdown/Dropdown.js +162 -74
  33. package/dist/dropdown/index.d.ts +26 -0
  34. package/dist/file-input/FileInput.js +644 -0
  35. package/dist/file-input/FileItem.js +287 -0
  36. package/dist/file-input/index.d.ts +81 -0
  37. package/dist/footer/Footer.js +69 -53
  38. package/dist/footer/Icons.js +77 -0
  39. package/dist/footer/index.d.ts +25 -0
  40. package/dist/header/Header.js +123 -84
  41. package/dist/header/Icons.js +59 -0
  42. package/dist/header/index.d.ts +25 -0
  43. package/dist/heading/Heading.js +13 -5
  44. package/dist/heading/index.d.ts +17 -0
  45. package/dist/input-text/Icons.js +22 -0
  46. package/dist/input-text/InputText.js +159 -63
  47. package/dist/input-text/index.d.ts +36 -0
  48. package/dist/layout/ApplicationLayout.js +7 -11
  49. package/dist/layout/Icons.js +55 -0
  50. package/dist/link/Link.js +76 -39
  51. package/dist/link/index.d.ts +23 -0
  52. package/dist/main.d.ts +40 -0
  53. package/dist/main.js +63 -15
  54. package/dist/number-input/NumberInput.js +136 -0
  55. package/dist/number-input/NumberInputContext.js +16 -0
  56. package/dist/number-input/index.d.ts +113 -0
  57. package/dist/paginator/Icons.js +66 -0
  58. package/dist/paginator/Paginator.js +86 -42
  59. package/dist/paginator/index.d.ts +20 -0
  60. package/dist/password-input/PasswordInput.js +203 -0
  61. package/dist/password-input/index.d.ts +94 -0
  62. package/dist/progress-bar/ProgressBar.js +88 -38
  63. package/dist/progress-bar/index.d.ts +18 -0
  64. package/dist/radio/Radio.js +28 -9
  65. package/dist/radio/index.d.ts +23 -0
  66. package/dist/resultsetTable/ResultsetTable.js +64 -38
  67. package/dist/resultsetTable/index.d.ts +19 -0
  68. package/dist/select/Select.js +888 -282
  69. package/dist/select/index.d.ts +53 -0
  70. package/dist/sidenav/Sidenav.js +11 -15
  71. package/dist/sidenav/index.d.ts +13 -0
  72. package/dist/slider/Slider.js +204 -67
  73. package/dist/slider/index.d.ts +29 -0
  74. package/dist/spinner/Spinner.js +226 -59
  75. package/dist/spinner/index.d.ts +17 -0
  76. package/dist/stories/Button.js +71 -0
  77. package/dist/stories/Button.stories.js +55 -0
  78. package/dist/stories/Header.js +67 -0
  79. package/dist/stories/Header.stories.js +31 -0
  80. package/dist/stories/Introduction.stories.mdx +211 -0
  81. package/dist/stories/Page.js +68 -0
  82. package/dist/stories/Page.stories.js +39 -0
  83. package/dist/stories/assets/code-brackets.svg +1 -0
  84. package/dist/stories/assets/colors.svg +1 -0
  85. package/dist/stories/assets/comments.svg +1 -0
  86. package/dist/stories/assets/direction.svg +1 -0
  87. package/dist/stories/assets/flow.svg +1 -0
  88. package/dist/stories/assets/plugin.svg +1 -0
  89. package/dist/stories/assets/repo.svg +1 -0
  90. package/dist/stories/assets/stackalt.svg +1 -0
  91. package/dist/stories/button.css +30 -0
  92. package/dist/stories/header.css +26 -0
  93. package/dist/stories/page.css +69 -0
  94. package/dist/switch/Switch.js +4 -10
  95. package/dist/switch/index.d.ts +24 -0
  96. package/dist/table/Table.js +19 -5
  97. package/dist/table/index.d.ts +13 -0
  98. package/dist/tabs/Tabs.js +37 -19
  99. package/dist/tabs/index.d.ts +19 -0
  100. package/dist/tag/Tag.js +50 -36
  101. package/dist/tag/index.d.ts +24 -0
  102. package/dist/text-input/TextInput.js +974 -0
  103. package/dist/text-input/index.d.ts +135 -0
  104. package/dist/textarea/Textarea.js +238 -107
  105. package/dist/textarea/index.d.ts +117 -0
  106. package/dist/toggle/index.d.ts +21 -0
  107. package/dist/toggle-group/ToggleGroup.js +139 -35
  108. package/dist/toggle-group/index.d.ts +21 -0
  109. package/dist/upload/Upload.js +1 -5
  110. package/dist/upload/buttons-upload/ButtonsUpload.js +28 -16
  111. package/dist/upload/buttons-upload/Icons.js +40 -0
  112. package/dist/upload/dragAndDropArea/DragAndDropArea.js +61 -25
  113. package/dist/upload/dragAndDropArea/Icons.js +39 -0
  114. package/dist/upload/file-upload/FileToUpload.js +52 -25
  115. package/dist/upload/file-upload/Icons.js +66 -0
  116. package/dist/upload/files-upload/FilesToUpload.js +3 -3
  117. package/dist/upload/index.d.ts +15 -0
  118. package/dist/upload/transaction/Icons.js +160 -0
  119. package/dist/upload/transaction/Transaction.js +37 -41
  120. package/dist/upload/transactions/Transactions.js +24 -8
  121. package/dist/wizard/Icons.js +65 -0
  122. package/dist/wizard/Wizard.js +106 -56
  123. package/dist/wizard/index.d.ts +18 -0
  124. package/package.json +17 -11
  125. package/test/Date.test.js +15 -13
  126. package/test/DateInput.test.js +242 -0
  127. package/test/Dropdown.test.js +15 -0
  128. package/test/FileInput.test.js +201 -0
  129. package/test/Footer.test.js +2 -7
  130. package/test/Header.test.js +5 -10
  131. package/test/Heading.test.js +60 -12
  132. package/test/InputText.test.js +1 -2
  133. package/test/Link.test.js +3 -2
  134. package/test/NumberInput.test.js +259 -0
  135. package/test/Paginator.test.js +6 -2
  136. package/test/PasswordInput.test.js +83 -0
  137. package/test/ResultsetTable.test.js +6 -6
  138. package/test/Select.test.js +371 -148
  139. package/test/Slider.test.js +9 -17
  140. package/test/Spinner.test.js +5 -0
  141. package/test/TextInput.test.js +732 -0
  142. package/test/Textarea.test.js +193 -0
  143. package/test/ToggleGroup.test.js +5 -1
  144. package/test/Upload.test.js +1 -1
  145. package/test/V3Select.test.js +212 -0
  146. package/test/{TextArea.test.js → V3TextArea.test.js} +6 -7
  147. package/dist/accordion/Accordion.stories.js +0 -207
  148. package/dist/accordion/readme.md +0 -96
  149. package/dist/accordion-group/AccordionGroup.stories.js +0 -207
  150. package/dist/accordion-group/readme.md +0 -70
  151. package/dist/alert/Alert.stories.js +0 -158
  152. package/dist/alert/close.svg +0 -4
  153. package/dist/alert/error.svg +0 -4
  154. package/dist/alert/info.svg +0 -4
  155. package/dist/alert/readme.md +0 -43
  156. package/dist/alert/success.svg +0 -4
  157. package/dist/alert/warning.svg +0 -4
  158. package/dist/button/Button.stories.js +0 -224
  159. package/dist/button/readme.md +0 -93
  160. package/dist/checkbox/Checkbox.stories.js +0 -144
  161. package/dist/checkbox/readme.md +0 -116
  162. package/dist/date/Date.stories.js +0 -205
  163. package/dist/date/calendar.svg +0 -1
  164. package/dist/date/calendar_dark.svg +0 -1
  165. package/dist/date/readme.md +0 -73
  166. package/dist/dialog/Dialog.stories.js +0 -217
  167. package/dist/dialog/readme.md +0 -32
  168. package/dist/dropdown/Dropdown.stories.js +0 -249
  169. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  170. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  171. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  172. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  173. package/dist/dropdown/readme.md +0 -69
  174. package/dist/footer/Footer.stories.js +0 -94
  175. package/dist/footer/dxc_logo_wht.png +0 -0
  176. package/dist/footer/readme.md +0 -41
  177. package/dist/header/Header.stories.js +0 -176
  178. package/dist/header/close_icon.svg +0 -1
  179. package/dist/header/dxc_logo_black.png +0 -0
  180. package/dist/header/dxc_logo_blk_rgb.svg +0 -6
  181. package/dist/header/dxc_logo_white.png +0 -0
  182. package/dist/header/hamb_menu_black.svg +0 -1
  183. package/dist/header/hamb_menu_white.svg +0 -1
  184. package/dist/header/readme.md +0 -33
  185. package/dist/input-text/InputText.stories.js +0 -209
  186. package/dist/input-text/error.svg +0 -1
  187. package/dist/input-text/readme.md +0 -91
  188. package/dist/layout/facebook.svg +0 -45
  189. package/dist/layout/linkedin.svg +0 -50
  190. package/dist/layout/twitter.svg +0 -53
  191. package/dist/link/readme.md +0 -51
  192. package/dist/paginator/images/next.svg +0 -3
  193. package/dist/paginator/images/nextPage.svg +0 -3
  194. package/dist/paginator/images/previous.svg +0 -3
  195. package/dist/paginator/images/previousPage.svg +0 -3
  196. package/dist/paginator/readme.md +0 -50
  197. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  198. package/dist/progress-bar/readme.md +0 -63
  199. package/dist/radio/Radio.stories.js +0 -166
  200. package/dist/radio/readme.md +0 -70
  201. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  202. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  203. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  204. package/dist/select/Select.stories.js +0 -235
  205. package/dist/select/readme.md +0 -72
  206. package/dist/slider/Slider.stories.js +0 -241
  207. package/dist/slider/readme.md +0 -64
  208. package/dist/spinner/Spinner.stories.js +0 -183
  209. package/dist/spinner/readme.md +0 -65
  210. package/dist/switch/Switch.stories.js +0 -134
  211. package/dist/switch/readme.md +0 -133
  212. package/dist/tabs/Tabs.stories.js +0 -130
  213. package/dist/tabs/readme.md +0 -78
  214. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  215. package/dist/tabs-for-sections/readme.md +0 -78
  216. package/dist/toggle/Toggle.stories.js +0 -297
  217. package/dist/toggle/readme.md +0 -80
  218. package/dist/toggle-group/readme.md +0 -82
  219. package/dist/upload/Upload.stories.js +0 -72
  220. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  221. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  222. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  223. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  224. package/dist/upload/file-upload/audio-icon.svg +0 -4
  225. package/dist/upload/file-upload/close.svg +0 -4
  226. package/dist/upload/file-upload/file-icon.svg +0 -4
  227. package/dist/upload/file-upload/video-icon.svg +0 -4
  228. package/dist/upload/readme.md +0 -37
  229. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  230. package/dist/upload/transaction/audio-icon.svg +0 -4
  231. package/dist/upload/transaction/error-icon.svg +0 -4
  232. package/dist/upload/transaction/file-icon-err.svg +0 -4
  233. package/dist/upload/transaction/file-icon.svg +0 -4
  234. package/dist/upload/transaction/image-icon-err.svg +0 -4
  235. package/dist/upload/transaction/image-icon.svg +0 -4
  236. package/dist/upload/transaction/success-icon.svg +0 -4
  237. package/dist/upload/transaction/video-icon-err.svg +0 -4
  238. package/dist/upload/transaction/video-icon.svg +0 -4
  239. package/dist/wizard/invalid_icon.svg +0 -6
  240. package/dist/wizard/valid_icon.svg +0 -6
  241. package/dist/wizard/validation-wrong.svg +0 -6
  242. package/test/TabsForSections.test.js +0 -34
@@ -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;
@@ -15,9 +15,9 @@ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/hel
15
15
 
16
16
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
17
17
 
18
- var _react = _interopRequireDefault(require("react"));
18
+ var _react = _interopRequireWildcard(require("react"));
19
19
 
20
- var _core = require("@material-ui/core");
20
+ var _Button = _interopRequireDefault(require("@material-ui/core/Button"));
21
21
 
22
22
  var _propTypes = _interopRequireDefault(require("prop-types"));
23
23
 
@@ -29,8 +29,10 @@ var _utils = require("../common/utils.js");
29
29
 
30
30
  var _useTheme = _interopRequireDefault(require("../useTheme.js"));
31
31
 
32
+ var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext.js"));
33
+
32
34
  function _templateObject4() {
33
- var data = (0, _taggedTemplateLiteral2["default"])(["\n font-size: ", ";\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 .MuiButton-label {\n display: flex;\n flex-direction: ", ";\n align-items: center;\n }\n letter-spacing: ", ";\n box-shadow: none;\n font-size: ", ";\n font-weight: ", ";\n min-width: ", ";\n border-radius: 4px;\n width: 100%;\n min-height: 43px;\n font-family: ", ";\n &:focus {\n outline: ", " auto 1px;\n }\n transition: color 0.16s ease-in-out, background-color 0.16s ease-in-out;\n transition: color 0.16s ease-in-out, border-color 0.16s ease-in-out;\n &:hover {\n transition: color 0.16s ease-in-out, background-color 0.16s ease-in-out;\n transition: color 0.16s ease-in-out, border-color 0.16s ease-in-out;\n }\n ", "\n }\n"]);
35
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n\n display: inline-block;\n width: ", ";\n cursor: ", ";\n\n .MuiButtonBase-root {\n padding-left: ", ";\n padding-right: ", ";\n padding-top: ", ";\n padding-bottom: ", ";\n\n .MuiButton-label {\n display: flex;\n flex-direction: ", ";\n align-items: center;\n }\n\n box-shadow: 0 0 0 2px transparent;\n font-family: ", ";\n font-size: ", ";\n font-weight: ", ";\n letter-spacing: ", ";\n min-width: ", ";\n width: 100%;\n height: 40px;\n transition: none !important;\n\n &:focus {\n border-color: transparent;\n box-shadow: 0 0 0 2px\n ", ";\n }\n\n ", "\n }\n"]);
34
36
 
35
37
  _templateObject4 = function _templateObject4() {
36
38
  return data;
@@ -40,7 +42,7 @@ function _templateObject4() {
40
42
  }
41
43
 
42
44
  function _templateObject3() {
43
- var data = (0, _taggedTemplateLiteral2["default"])(["\n max-height: 20px;\n max-width: 20px;\n margin-left: ", ";\n margin-right: ", ";\n"]);
45
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n max-height: 24px;\n max-width: 24px;\n margin-left: ", ";\n margin-right: ", ";\n"]);
44
46
 
45
47
  _templateObject3 = function _templateObject3() {
46
48
  return data;
@@ -50,7 +52,7 @@ function _templateObject3() {
50
52
  }
51
53
 
52
54
  function _templateObject2() {
53
- var data = (0, _taggedTemplateLiteral2["default"])(["\n max-height: 20px;\n max-width: 20px;\n margin-left: ", ";\n margin-right: ", ";\n overflow: hidden;\n\n img,\n svg {\n height: 100%;\n width: 100%;\n }\n"]);
55
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n max-height: 24px;\n max-width: 24px;\n margin-left: ", ";\n margin-right: ", ";\n overflow: hidden;\n display: flex;\n img,\n svg {\n height: 100%;\n width: 100%;\n }\n"]);
54
56
 
55
57
  _templateObject2 = function _templateObject2() {
56
58
  return data;
@@ -60,7 +62,7 @@ function _templateObject2() {
60
62
  }
61
63
 
62
64
  function _templateObject() {
63
- var data = (0, _taggedTemplateLiteral2["default"])(["\n line-height: ", ";\n font-size: ", ";\n text-overflow: ellipsis;\n overflow: hidden;\n"]);
65
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n line-height: ", ";\n font-size: ", ";\n text-overflow: ellipsis;\n overflow: hidden;\n text-transform: none;\n margin-right: ", ";\n margin-left: ", ";\n"]);
64
66
 
65
67
  _templateObject = function _templateObject() {
66
68
  return data;
@@ -91,6 +93,7 @@ var DxcButton = function DxcButton(_ref) {
91
93
  tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
92
94
 
93
95
  var colorsTheme = (0, _useTheme["default"])();
96
+ var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
94
97
  return _react["default"].createElement(_styledComponents.ThemeProvider, {
95
98
  theme: colorsTheme.button
96
99
  }, _react["default"].createElement(DxCButton, {
@@ -99,8 +102,10 @@ var DxcButton = function DxcButton(_ref) {
99
102
  mode: mode !== "primary" && mode !== "secondary" && mode !== "text" ? "primary" : mode,
100
103
  disabled: disabled,
101
104
  iconPosition: iconPosition,
102
- size: size
103
- }, _react["default"].createElement(_core.Button, {
105
+ size: size,
106
+ backgroundType: backgroundType,
107
+ icon: icon
108
+ }, _react["default"].createElement(_Button["default"], {
104
109
  disabled: disabled,
105
110
  type: type,
106
111
  disableRipple: true,
@@ -111,7 +116,10 @@ var DxcButton = function DxcButton(_ref) {
111
116
  _onClick();
112
117
  }
113
118
  }
114
- }, _react["default"].createElement(LabelContainer, null, label), icon ? _react["default"].createElement(IconContainer, {
119
+ }, label && _react["default"].createElement(LabelContainer, {
120
+ icon: icon,
121
+ iconPosition: iconPosition
122
+ }, label), icon ? _react["default"].createElement(IconContainer, {
115
123
  label: label,
116
124
  iconPosition: iconPosition
117
125
  }, (0, _typeof2["default"])(icon) === "object" ? icon : _react["default"].createElement(icon)) : iconSrc && _react["default"].createElement(ButtonIcon, {
@@ -138,15 +146,19 @@ var calculateWidth = function calculateWidth(margin, size) {
138
146
  };
139
147
 
140
148
  var LabelContainer = _styledComponents["default"].span(_templateObject(), function (props) {
141
- return props.theme.fontLineHeight;
149
+ return props.theme.labelFontLineHeight;
142
150
  }, function (props) {
143
151
  return props.theme.fontSize;
152
+ }, function (props) {
153
+ return !props.icon || props.iconPosition === "before" ? "8px" : "0px";
154
+ }, function (props) {
155
+ return !props.icon || props.iconPosition === "after" ? "8px" : "0px";
144
156
  });
145
157
 
146
158
  var IconContainer = _styledComponents["default"].div(_templateObject2(), function (props) {
147
- return props.iconPosition === "after" && props.label !== "" && "10px" || "0px";
159
+ return !props.label ? "0px" : props.iconPosition === "after" && props.label !== "" && "8px" || "8px";
148
160
  }, function (props) {
149
- return props.iconPosition === "before" && props.label !== "" && "10px" || "0px";
161
+ return !props.label ? "0px" : props.iconPosition === "before" && props.label !== "" && "8px" || "8px";
150
162
  });
151
163
 
152
164
  var ButtonIcon = _styledComponents["default"].img(_templateObject3(), function (props) {
@@ -156,8 +168,6 @@ var ButtonIcon = _styledComponents["default"].img(_templateObject3(), function (
156
168
  });
157
169
 
158
170
  var DxCButton = _styledComponents["default"].div(_templateObject4(), function (props) {
159
- return props.theme.fontSizeBase;
160
- }, function (props) {
161
171
  return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
162
172
  }, function (props) {
163
173
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
@@ -171,29 +181,38 @@ var DxCButton = _styledComponents["default"].div(_templateObject4(), function (p
171
181
  return calculateWidth(props.margin, props.size);
172
182
  }, function (props) {
173
183
  return props.disabled && "not-allowed" || "pointer";
184
+ }, function (props) {
185
+ return props.theme.paddingLeft;
186
+ }, function (props) {
187
+ return props.theme.paddingRight;
188
+ }, function (props) {
189
+ return props.theme.paddingTop;
190
+ }, function (props) {
191
+ return props.theme.paddingBottom;
174
192
  }, function (props) {
175
193
  return props.iconPosition === "after" && "row" || "row-reverse";
176
194
  }, function (props) {
177
- return props.theme.fontLetterSpacingWide01;
195
+ return props.theme.fontFamily;
178
196
  }, function (props) {
179
197
  return props.theme.fontSize;
180
198
  }, function (props) {
181
199
  return props.theme.fontWeight;
182
200
  }, function (props) {
183
- return props.size === "small" && "calc(100% - 22px)" || "unset";
201
+ return props.theme.labelLetterSpacing;
184
202
  }, function (props) {
185
- return props.theme.fontFamily;
203
+ return props.size === "small" && "calc(100% - 22px)" || "unset";
186
204
  }, function (props) {
187
- return props.theme.focusColor;
205
+ return props.backgroundType === "dark" ? props.theme.focusBorderColorOnDark : props.theme.focusBorderColor;
188
206
  }, function (props) {
189
- var mode = props.mode;
207
+ var mode = props.mode,
208
+ backgroundType = props.backgroundType;
190
209
 
191
210
  if (mode === "primary") {
192
- return "\n background-color: ".concat(props.disabled && props.theme.disabledPrimaryBackgroundColor || props.theme.primaryBackgroundColor, ";\n color: ").concat(props.disabled && props.theme.disabledPrimaryFontColor || props.theme.primaryFontColor, " !important;\n padding: ").concat(props.size === "small" && "11px" || "12px 30px", ";\n &:hover{\n background-color: ").concat(props.theme.primaryHoverBackgroundColor, ";\n color: ").concat(props.theme.primaryHoverFontColor, " !important; \n }\n &:active {\n background-color: ").concat(props.theme.primaryActiveBackgroundColor, " !important;\n color: ").concat(props.theme.primaryHoverFontColor, " !important;\n }\n &:focus {\n background-color: ").concat(props.theme.primaryBackgroundColor, ";\n color: ").concat(props.theme.primaryHoverFontColor, " !important;\n }\n &:disabled{ \n cursor: not-allowed;\n }\n .MuiButton-label {\n z-index: 5\n }\n ");
211
+ return "\n border-radius: ".concat(props.theme.primaryBorderRadius, ";\n border-width: ").concat(props.theme.primaryBorderThickness, ";\n border-style: ").concat(props.theme.primaryBorderStyle, ";\n font-family: ").concat(props.theme.primaryFontFamily, ";\n font-size: ").concat(props.theme.primaryFontSize, ";\n font-weight: ").concat(props.theme.primaryFontWeight, ";\n background-color: ").concat(backgroundType === "dark" ? props.theme.primaryBackgroundColorOnDark : props.theme.primaryBackgroundColor, ";\n color: ").concat(backgroundType && backgroundType === "dark" ? props.theme.primaryFontColorOnDark : props.theme.primaryFontColor, " !important;\n\n &:hover {\n background-color: ").concat(backgroundType === "dark" ? props.theme.primaryHoverBackgroundColorOnDark : props.theme.primaryHoverBackgroundColor, ";\n }\n &:active {\n background-color: ").concat(backgroundType === "dark" ? props.theme.primaryActiveBackgroundColorOnDark : props.theme.primaryActiveBackgroundColor, " !important;\n border-color: transparent;\n box-shadow: 0 0 0 2px ").concat(backgroundType === "dark" ? props.theme.focusBorderColorOnDark : props.theme.focusBorderColor, ";\n }\n &:disabled { \n cursor: not-allowed;\n background-color: ").concat(backgroundType === "dark" ? props.theme.primaryDisabledBackgroundColorOnDark : props.theme.primaryDisabledBackgroundColor, ";\n color: ").concat(backgroundType === "dark" ? props.theme.primaryDisabledFontColorOnDark : props.theme.primaryDisabledFontColor, "!important; \n }\n .MuiButton-label {\n z-index: 5;\n }\n ");
193
212
  } else if (mode === "secondary") {
194
- return "\n background-color: ".concat(props.theme.secondaryBackgroundColor, ";\n padding: ").concat(props.size === "small" && "9px" || "10px 28px", ";\n color: ").concat(props.disabled && props.theme.disabledSecondaryFontColor || props.theme.secondaryFontColor, " !important;\n border: 2px solid;\n border-color: ").concat(props.disabled && props.theme.disabledSecondaryOutlinedColor || props.theme.secondaryOutlinedColor, ";\n &:hover{\n border-color: ").concat(props.theme.hoverOutlinedColor, ";\n background-color: ").concat(props.theme.secondaryHoverBackgroundColor, ";\n color: ").concat(props.theme.secondaryHoverFontColor, " !important; \n }\n &:active {\n background-color: ").concat(props.theme.secondaryActiveBackgroundColor, " !important;\n color: ").concat(props.theme.secondaryHoverFontColor, " !important;\n }\n &:focus {\n background-color: ").concat(props.theme.secondaryBackgroundColor, ";\n color: ").concat(props.theme.secondaryHoverFontColor, " !important; \n }\n &:disabled{\n cursor: not-allowed;\n }\n .MuiButton-label {\n z-index: 5\n }\n\n ");
213
+ return "\n border-radius: ".concat(props.theme.secondaryBorderRadius, ";\n border-width: ").concat(props.theme.secondaryBorderThickness, ";\n border-style: ").concat(props.theme.secondaryBorderStyle, ";\n font-family: ").concat(props.theme.secondaryFontFamily, ";\n font-size: ").concat(props.theme.secondaryFontSize, ";\n font-weight: ").concat(props.theme.secondaryFontWeight, ";\n background-color: ").concat(backgroundType === "dark" ? props.theme.secondaryBackgroundColorOnDark : props.theme.secondaryBackgroundColor, ";\n color: ").concat(backgroundType === "dark" ? props.theme.secondaryFontColorOnDark : props.theme.secondaryFontColor, " !important;\n border-color: ").concat(backgroundType === "dark" ? props.theme.secondaryBorderColorOnDark : props.theme.secondaryBorderColor, ";\n\n &:hover {\n background-color: ").concat(backgroundType === "dark" ? props.theme.secondaryHoverBackgroundColorOnDark : props.theme.secondaryHoverBackgroundColor, ";\n color: ").concat(backgroundType === "dark" ? props.theme.secondaryHoverFontColorOnDark : props.theme.secondaryHoverFontColor, " !important;\n }\n &:active {\n background-color: ").concat(backgroundType === "dark" ? props.theme.secondaryActiveBackgroundColorOnDark : props.theme.secondaryActiveBackgroundColor, " !important;\n color: ").concat(backgroundType === "dark" ? props.theme.secondaryHoverFontColorOnDark : props.theme.secondaryHoverFontColor, " !important;\n border-color: transparent;\n box-shadow: 0 0 0 2px ").concat(backgroundType === "dark" ? props.theme.focusBorderColorOnDark : props.theme.focusBorderColor, ";\n }\n &:disabled {\n cursor: not-allowed;\n background-color: ").concat(backgroundType === "dark" ? props.theme.secondaryDisabledBackgroundColorOnDark : props.theme.secondaryDisabledBackgroundColor, " !important;\n color: ").concat(backgroundType === "dark" ? props.theme.secondaryDisabledFontColorOnDark : props.theme.secondaryDisabledFontColor, " !important;\n border-color: ").concat(backgroundType === "dark" ? props.theme.secondaryDisabledBorderColorOnDark : props.theme.secondaryDisabledBorderColor, ";\n }\n .MuiButton-label {\n z-index: 5;\n }\n ");
195
214
  } else if (mode === "text") {
196
- return "\n background-color: ".concat(props.theme.textBackgroundColor, ";\n color: ").concat(props.disabled && props.theme.disabledTextFontColor || props.theme.textFontColor, " !important;\n padding: ").concat(props.size === "small" && "11px" || "12px 30px", ";\n &:hover{\n background-color: ").concat(props.theme.textHoverBackgroundColor, ";\n color: ").concat(props.theme.textHoverFontColor, " !important;\n }\n &:active {\n background-color: ").concat(props.theme.textActiveBackgroundColor, " !important;\n color: ").concat(props.theme.textHoverFontColor, " !important;\n }\n &:focus {\n background-color: ").concat(props.theme.textBackgroundColor, ";\n color: ").concat(props.theme.textFontColor, " !important; \n }\n &:disabled{\n cursor:not-allowed;\n }\n ");
215
+ return "\n border-radius: ".concat(props.theme.textBorderRadius, ";\n border-width: ").concat(props.theme.textBorderThickness, ";\n border-style: ").concat(props.theme.textBorderStyle, ";\n font-family: ").concat(props.theme.textFontFamily, ";\n font-size: ").concat(props.theme.textFontSize, ";\n font-weight: ").concat(props.theme.textFontWeight, ";\n background-color: ").concat(backgroundType === "dark" ? props.theme.textBackgroundColorOnDark : props.theme.textBackgroundColor, ";\n color: ").concat(backgroundType === "dark" ? props.theme.textFontColorOnDark : props.theme.textFontColor, " !important;\n\n &:hover {\n background-color: ").concat(backgroundType === "dark" ? props.theme.textHoverBackgroundColorOnDark : props.theme.textHoverBackgroundColor, ";\n }\n &:active {\n background-color: ").concat(backgroundType === "dark" ? props.theme.textActiveBackgroundColorOnDark : props.theme.textActiveBackgroundColor, " !important;\n border-color: transparent;\n box-shadow: 0 0 0 2px ").concat(backgroundType === "dark" ? props.theme.focusBorderColorOnDark : props.theme.focusBorderColor, ";\n }\n &:disabled {\n cursor:not-allowed;\n color: ").concat(backgroundType === "dark" ? props.theme.textDisabledFontColorOnDark : props.theme.textDisabledFontColor, " !important;\n background-color: ").concat(backgroundType === "dark" ? props.theme.textDisabledBackgroundColorOnDark : props.theme.textDisabledBackgroundColor, ";\n }\n ");
197
216
  }
198
217
  });
199
218
 
@@ -0,0 +1,24 @@
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
+
10
+ type Props = {
11
+ label?: string;
12
+ mode?: "primary" | "secondary" | "text";
13
+ disabled?: boolean;
14
+ iconPosition?: "before" | "after";
15
+ type?: "button" | "reset" | "submit";
16
+ iconSrc?: string;
17
+ icon?: any;
18
+ onClick?: void;
19
+ margin?: Space | Margin;
20
+ size?: Size;
21
+ tabIndex?: number;
22
+ };
23
+
24
+ export default function DxcButton(props: Props): JSX.Element;
package/dist/card/Card.js CHANGED
@@ -19,12 +19,14 @@ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/sli
19
19
 
20
20
  var _react = _interopRequireWildcard(require("react"));
21
21
 
22
- var _styledComponents = _interopRequireDefault(require("styled-components"));
22
+ var _styledComponents = _interopRequireWildcard(require("styled-components"));
23
23
 
24
24
  var _propTypes = _interopRequireDefault(require("prop-types"));
25
25
 
26
26
  var _variables = require("../common/variables.js");
27
27
 
28
+ var _useTheme = _interopRequireDefault(require("../useTheme.js"));
29
+
28
30
  var _Box = _interopRequireDefault(require("../box/Box"));
29
31
 
30
32
  function _templateObject6() {
@@ -38,7 +40,7 @@ function _templateObject6() {
38
40
  }
39
41
 
40
42
  function _templateObject5() {
41
- var data = (0, _taggedTemplateLiteral2["default"])(["\n width: 140px;\n height: 100%;\n flex-shrink: 0;\n background: ", ";\n justify-content: center;\n align-items: center;\n display: inline-flex;\n"]);
43
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n width: 35%;\n height: 100%;\n flex-shrink: 0;\n background: ", ";\n justify-content: center;\n align-items: center;\n display: inline-flex;\n"]);
42
44
 
43
45
  _templateObject5 = function _templateObject5() {
44
46
  return data;
@@ -58,7 +60,7 @@ function _templateObject4() {
58
60
  }
59
61
 
60
62
  function _templateObject3() {
61
- var data = (0, _taggedTemplateLiteral2["default"])(["\n cursor: pointer;\n text-decoration: ", ";\n"]);
63
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n cursor: pointer;\n text-decoration: none;\n"]);
62
64
 
63
65
  _templateObject3 = function _templateObject3() {
64
66
  return data;
@@ -68,7 +70,7 @@ function _templateObject3() {
68
70
  }
69
71
 
70
72
  function _templateObject2() {
71
- var data = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n flex-direction: ", ";\n height: 220px;\n width: 400px;\n &:hover {\n border-color: ", ";\n }\n"]);
73
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n flex-direction: ", ";\n height: ", ";\n width: ", ";\n &:hover {\n border-color: ", ";\n }\n"]);
72
74
 
73
75
  _templateObject2 = function _templateObject2() {
74
76
  return data;
@@ -101,6 +103,7 @@ var DxcCard = function DxcCard(_ref) {
101
103
  imageCover = _ref.imageCover,
102
104
  _ref$tabIndex = _ref.tabIndex,
103
105
  tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
106
+ var colorsTheme = (0, _useTheme["default"])();
104
107
 
105
108
  var _useState = (0, _react.useState)(false),
106
109
  _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
@@ -109,6 +112,8 @@ var DxcCard = function DxcCard(_ref) {
109
112
 
110
113
  var tagContent = _react["default"].createElement(_Box["default"], {
111
114
  shadowDepth: outlined ? 0 : isHovered && (onClick || linkHref) ? 2 : 1
115
+ }, _react["default"].createElement(_styledComponents.ThemeProvider, {
116
+ theme: colorsTheme.card
112
117
  }, _react["default"].createElement(CardContainer, {
113
118
  hasAction: onClick || linkHref,
114
119
  outlined: outlined,
@@ -121,7 +126,7 @@ var DxcCard = function DxcCard(_ref) {
121
126
  src: imageSrc
122
127
  })), _react["default"].createElement(CardContent, {
123
128
  contentPadding: contentPadding
124
- }, children)));
129
+ }, children))));
125
130
 
126
131
  return _react["default"].createElement(StyledDxcCard, {
127
132
  margin: margin,
@@ -166,14 +171,16 @@ var StyledDxcCard = _styledComponents["default"].div(_templateObject(), function
166
171
  var CardContainer = _styledComponents["default"].div(_templateObject2(), function (_ref9) {
167
172
  var imagePosition = _ref9.imagePosition;
168
173
  return imagePosition === "before" && "row" || "row-reverse";
174
+ }, function (props) {
175
+ return props.theme.height;
176
+ }, function (props) {
177
+ return props.theme.width;
169
178
  }, function (_ref10) {
170
179
  var hasAction = _ref10.hasAction;
171
180
  return hasAction ? "" : "unset";
172
181
  });
173
182
 
174
- var StyledLink = _styledComponents["default"].a(_templateObject3(), function (props) {
175
- return props.theme.textDecoration;
176
- });
183
+ var StyledLink = _styledComponents["default"].a(_templateObject3());
177
184
 
178
185
  var TagImage = _styledComponents["default"].img(_templateObject4(), function (_ref11) {
179
186
  var imagePadding = _ref11.imagePadding;
@@ -0,0 +1,22 @@
1
+ type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
2
+ type Margin = {
3
+ top?: Space;
4
+ bottom?: Space;
5
+ left?: Space;
6
+ right?: Space;
7
+ };
8
+
9
+ type Props = {
10
+ imageSrc?: string;
11
+ margin?: Space | Margin;
12
+ contentPadding?: any;
13
+ linkHref?: string;
14
+ onClick?: void;
15
+ imageBgColor?: string;
16
+ imagePadding?: any;
17
+ imagePosition?: "before" | "after";
18
+ outlined?: boolean;
19
+ imageCover?: boolean;
20
+ };
21
+
22
+ export default function DxcCard(props: Props): JSX.Element;
@@ -33,8 +33,10 @@ var _utils = require("../common/utils.js");
33
33
 
34
34
  var _useTheme = _interopRequireDefault(require("../useTheme.js"));
35
35
 
36
+ var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext.js"));
37
+
36
38
  function _templateObject3() {
37
- var data = (0, _taggedTemplateLiteral2["default"])(["\n background-color: ", ";\n width: 17px;\n height: 17px;\n position: absolute;\n left: ", ";\n right: ", ";\n z-index: 0;\n padding-left: ", ";\n padding-right: ", ";\n margin-left: ", ";\n margin-right: ", ";\n"]);
39
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n background-color: ", ";\n width: 16px;\n height: 16px;\n position: absolute;\n left: ", ";\n right: ", ";\n z-index: 0;\n margin-left: ", ";\n margin-right: ", ";\n"]);
38
40
 
39
41
  _templateObject3 = function _templateObject3() {
40
42
  return data;
@@ -44,7 +46,7 @@ function _templateObject3() {
44
46
  }
45
47
 
46
48
  function _templateObject2() {
47
- var data = (0, _taggedTemplateLiteral2["default"])(["\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n width: ", ";\n display: inline-flex;\n align-items: center;\n cursor: ", ";\n position: relative;\n flex-direction: ", ";\n .MuiCheckbox-colorSecondary {\n &.Mui-checked {\n color: ", ";\n &:hover {\n background-color: transparent;\n }\n }\n }\n .MuiIconButton-colorSecondary {\n &:hover {\n background-color: transparent;\n }\n }\n .MuiButtonBase-root {\n &.Mui-focusVisible {\n .MuiIconButton-label {\n outline: ", " auto 1px;\n }\n }\n z-index: 1;\n padding: 10px;\n padding-left: ", ";\n padding-right: ", ";\n margin: 2px;\n margin-left: ", ";\n margin-right: ", ";\n color: ", " !important;\n }\n .MuiSvgIcon-root {\n width: 26.6px;\n height: 26.6px;\n }\n"]);
49
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n width: ", ";\n display: inline-flex;\n align-items: center;\n cursor: ", ";\n position: relative;\n flex-direction: ", ";\n .MuiCheckbox-colorSecondary {\n .MuiIconButton-label {\n & > .MuiSvgIcon-root {\n color: ", ";\n }\n }\n &.Mui-disabled {\n .MuiIconButton-label {\n & > .MuiSvgIcon-root {\n color: ", ";\n opacity: 0.34;\n }\n }\n }\n &.Mui-checked {\n .MuiIconButton-label {\n & > .MuiSvgIcon-root {\n color: ", ";\n }\n }\n\n &:hover {\n background-color: transparent;\n .MuiIconButton-label {\n & > .MuiSvgIcon-root {\n background-color: transparent;\n color: ", ";\n }\n }\n }\n }\n .MuiIconButton-label {\n & > .MuiSvgIcon-root {\n width: 24px;\n height: 24px;\n }\n }\n }\n\n .MuiIconButton-colorSecondary {\n &:hover {\n background-color: transparent;\n }\n }\n .MuiButtonBase-root {\n &:hover {\n .MuiIconButton-label {\n & > .MuiSvgIcon-root {\n color: ", ";\n }\n }\n }\n\n &.Mui-focusVisible {\n .MuiIconButton-label {\n box-shadow: 0 0 0 2px\n ", ";\n }\n }\n z-index: 1;\n margin-left: ", ";\n margin-right: ", ";\n padding: 0px;\n left: ", ";\n right: ", ";\n }\n"]);
48
50
 
49
51
  _templateObject2 = function _templateObject2() {
50
52
  return data;
@@ -54,7 +56,7 @@ function _templateObject2() {
54
56
  }
55
57
 
56
58
  function _templateObject() {
57
- var data = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n opacity: ", ";\n cursor: ", ";\n font-family: ", ";\n"]);
59
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n cursor: ", ";\n font-family: ", ";\n font-size: ", ";\n font-weight: ", ";\n"]);
58
60
 
59
61
  _templateObject = function _templateObject() {
60
62
  return data;
@@ -88,7 +90,13 @@ var DxcCheckbox = function DxcCheckbox(_ref) {
88
90
  innerChecked = _useState2[0],
89
91
  setInnerChecked = _useState2[1];
90
92
 
93
+ var _useState3 = (0, _react.useState)(false),
94
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
95
+ isLabelHovered = _useState4[0],
96
+ setIsLabelHovered = _useState4[1];
97
+
91
98
  var colorsTheme = (0, _useTheme["default"])();
99
+ var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
92
100
 
93
101
  var handlerCheckboxChange = function handlerCheckboxChange(checkboxValue) {
94
102
  if (checked === undefined) {
@@ -105,19 +113,29 @@ var DxcCheckbox = function DxcCheckbox(_ref) {
105
113
  }
106
114
  };
107
115
 
116
+ var handleLabelHover = function handleLabelHover() {
117
+ setIsLabelHovered(!isLabelHovered);
118
+ };
119
+
108
120
  return _react["default"].createElement(_styledComponents.ThemeProvider, {
109
121
  theme: colorsTheme.checkbox
110
122
  }, _react["default"].createElement(CheckboxContainer, {
111
123
  id: name,
112
124
  brightness: _variables.componentTokens,
125
+ label: label,
113
126
  labelPosition: labelPosition,
114
127
  disabled: disabled,
115
128
  margin: margin,
116
- size: size
129
+ size: size,
130
+ backgroundType: backgroundType,
131
+ isLabelHovered: isLabelHovered
117
132
  }, _react["default"].createElement(_Checkbox["default"], {
118
133
  checked: checked != undefined ? checked : innerChecked,
119
- inputProps: name = {
120
- name: name
134
+ inputProps: {
135
+ name: name,
136
+ "aria-label": label,
137
+ role: "checkbox",
138
+ "aria-checked": checked != undefined ? checked : innerChecked
121
139
  },
122
140
  onChange: handlerCheckboxChange,
123
141
  value: value,
@@ -128,12 +146,16 @@ var DxcCheckbox = function DxcCheckbox(_ref) {
128
146
  }), _react["default"].createElement(CheckboxBlackBack, {
129
147
  labelPosition: labelPosition,
130
148
  disabled: disabled,
131
- checked: checked != undefined ? checked : innerChecked
149
+ checked: checked != undefined ? checked : innerChecked,
150
+ backgroundType: backgroundType
132
151
  }), required && _react["default"].createElement(_RequiredComponent["default"], null), label && _react["default"].createElement(LabelContainer, {
133
152
  labelPosition: labelPosition,
134
153
  onClick: disabled === true ? function (e) {} : handlerCheckboxChange,
135
154
  disabled: disabled,
136
- className: "labelContainer"
155
+ className: "labelContainer",
156
+ backgroundType: backgroundType,
157
+ onMouseOver: handleLabelHover,
158
+ onMouseOut: handleLabelHover
137
159
  }, label)));
138
160
  };
139
161
 
@@ -153,14 +175,56 @@ var calculateWidth = function calculateWidth(margin, size) {
153
175
  return sizes[size];
154
176
  };
155
177
 
178
+ var getDisabledColor = function getDisabledColor(props, element) {
179
+ switch (element) {
180
+ case "check":
181
+ return props.backgroundType && props.backgroundType === "dark" ? props.theme.disabledCheckColorOnDark : props.theme.disabledCheckColor;
182
+ break;
183
+
184
+ case "background":
185
+ return props.backgroundType && props.backgroundType === "dark" ? props.theme.disabledBackgroundColorCheckedOnDark : props.theme.disabledBackgroundColorChecked;
186
+ break;
187
+
188
+ case "border":
189
+ return props.backgroundType && props.backgroundType === "dark" ? props.theme.disabledBorderColorOnDark : props.theme.disabledBorderColor;
190
+ break;
191
+
192
+ case "label":
193
+ return props.backgroundType && props.backgroundType === "dark" ? props.theme.disabledFontColorOnDark : props.theme.disabledFontColor;
194
+ break;
195
+ }
196
+ };
197
+
198
+ var getNotDisabledColor = function getNotDisabledColor(props, element) {
199
+ switch (element) {
200
+ case "check":
201
+ return props.backgroundType && props.backgroundType === "dark" ? props.theme.checkColorOnDark : props.theme.checkColor;
202
+ break;
203
+
204
+ case "background":
205
+ return props.backgroundType && props.backgroundType === "dark" ? props.theme.backgroundColorCheckedOnDark : props.theme.backgroundColorChecked;
206
+ break;
207
+
208
+ case "border":
209
+ return props.backgroundType && props.backgroundType === "dark" ? props.theme.borderColorOnDark : props.theme.borderColor;
210
+ break;
211
+
212
+ case "label":
213
+ return props.backgroundType && props.backgroundType === "dark" ? props.theme.fontColorOnDark : props.theme.fontColor;
214
+ break;
215
+ }
216
+ };
217
+
156
218
  var LabelContainer = _styledComponents["default"].span(_templateObject(), function (props) {
157
- return props.theme.fontColor;
158
- }, function (props) {
159
- return props.disabled && "0.34";
219
+ return props.disabled ? getDisabledColor(props, "label") : getNotDisabledColor(props, "label");
160
220
  }, function (props) {
161
221
  return props.disabled ? "not-allowed" : "pointer";
162
222
  }, function (props) {
163
223
  return props.theme.fontFamily;
224
+ }, function (props) {
225
+ return props.theme.fontSize;
226
+ }, function (props) {
227
+ return props.theme.fontWeight;
164
228
  });
165
229
 
166
230
  var CheckboxContainer = _styledComponents["default"].span(_templateObject2(), function (props) {
@@ -180,23 +244,29 @@ var CheckboxContainer = _styledComponents["default"].span(_templateObject2(), fu
180
244
  }, function (props) {
181
245
  return props.labelPosition === "before" ? "row-reverse" : "row";
182
246
  }, function (props) {
183
- return props.disabled && props.theme.disabledBackgroundColorChecked || props.theme.backgroundColorChecked;
247
+ return props.isLabelHovered ? props.backgroundType === "dark" ? props.theme.hoverBorderColorOnDark : props.theme.hoverBorderColor : getNotDisabledColor(props, "border");
184
248
  }, function (props) {
185
- return props.theme.focusColor;
249
+ return getDisabledColor(props, "border");
186
250
  }, function (props) {
187
- return props.labelPosition === "after" ? "0px" : "";
251
+ return props.disabled ? getDisabledColor(props, "background") : getNotDisabledColor(props, "background");
188
252
  }, function (props) {
189
- return props.labelPosition === "before" ? "0px" : "";
253
+ return props.backgroundType === "dark" ? props.theme.hoverBackgroundColorCheckedOnDark : props.theme.hoverBackgroundColorChecked;
190
254
  }, function (props) {
191
- return props.labelPosition === "after" ? "0px" : "";
255
+ return props.backgroundType === "dark" ? props.theme.hoverBorderColorOnDark : props.theme.hoverBorderColor;
192
256
  }, function (props) {
193
- return props.labelPosition === "before" ? "0px" : "";
257
+ return props.backgroundType === "dark" ? props.theme.focusColorOnDark : props.theme.focusColor;
194
258
  }, function (props) {
195
- return props.disabled && props.theme.disabledBorderColor || props.theme.borderColor;
259
+ return props.labelPosition === "before" && props.label ? props.theme.checkLabelSpacing : "0";
260
+ }, function (props) {
261
+ return props.labelPosition === "after" && props.label ? props.theme.checkLabelSpacing : "0";
262
+ }, function (props) {
263
+ return props.labelPosition === "before" ? "unset" : "1px";
264
+ }, function (props) {
265
+ return props.labelPosition === "before" ? "1px" : "unset";
196
266
  });
197
267
 
198
268
  var CheckboxBlackBack = _styledComponents["default"].span(_templateObject3(), function (props) {
199
- return props.checked !== true && "transparent" || props.disabled && props.theme.disabledCheckColor || props.theme.checkColor;
269
+ return !props.checked ? "transparent" : props.disabled ? getDisabledColor(props, "check") : getNotDisabledColor(props, "check");
200
270
  }, function (props) {
201
271
  return props.labelPosition === "before" ? "unset" : "5px";
202
272
  }, function (props) {
@@ -205,10 +275,6 @@ var CheckboxBlackBack = _styledComponents["default"].span(_templateObject3(), fu
205
275
  return props.labelPosition === "after" ? "0px" : "";
206
276
  }, function (props) {
207
277
  return props.labelPosition === "before" ? "0px" : "";
208
- }, function (props) {
209
- return props.labelPosition === "after" ? "0px" : "";
210
- }, function (props) {
211
- return props.labelPosition === "before" ? "0px" : "";
212
278
  });
213
279
 
214
280
  DxcCheckbox.propTypes = {
@@ -0,0 +1,24 @@
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
+
10
+ type Props = {
11
+ checked?: boolean;
12
+ value?: any;
13
+ label?: string;
14
+ labelPosition?: "before" | "after";
15
+ name?: string,
16
+ disabled?: boolean;
17
+ onChange?: void;
18
+ required?: boolean;
19
+ margin?: Space | Margin;
20
+ size?: Size;
21
+ tabIndex?: number;
22
+ };
23
+
24
+ export default function DxcCheckbox(props: Props): JSX.Element;