@dxc-technology/halstack-react 0.0.0-4d1e793 → 0.0.0-4d89cae

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