@dxc-technology/halstack-react 0.0.0-9d656a4 → 0.0.0-a0543ea

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 (123) hide show
  1. package/README.md +1 -1
  2. package/babel.config.js +6 -2
  3. package/dist/BackgroundColorContext.js +46 -0
  4. package/dist/ThemeContext.js +235 -2
  5. package/dist/accordion/Accordion.js +168 -63
  6. package/dist/accordion-group/AccordionGroup.js +186 -0
  7. package/dist/alert/Alert.js +183 -84
  8. package/dist/alert/index.d.ts +51 -0
  9. package/dist/badge/Badge.js +63 -0
  10. package/dist/box/Box.js +31 -23
  11. package/dist/button/Button.js +83 -26
  12. package/dist/card/Card.js +72 -35
  13. package/dist/checkbox/Checkbox.js +98 -38
  14. package/dist/chip/Chip.js +128 -36
  15. package/dist/common/RequiredComponent.js +2 -8
  16. package/dist/common/utils.js +2 -22
  17. package/dist/common/variables.js +1439 -304
  18. package/dist/date/Date.js +75 -52
  19. package/dist/dialog/Dialog.js +58 -37
  20. package/dist/dropdown/Dropdown.js +199 -71
  21. package/dist/file-input/FileInput.js +644 -0
  22. package/dist/file-input/FileItem.js +280 -0
  23. package/dist/file-input/index.d.ts +81 -0
  24. package/dist/footer/Footer.js +85 -36
  25. package/dist/footer/dxc_logo.svg +15 -0
  26. package/dist/header/Header.js +111 -68
  27. package/dist/header/dxc_logo_black.svg +8 -0
  28. package/dist/heading/Heading.js +81 -16
  29. package/dist/input-text/InputText.js +288 -100
  30. package/dist/layout/ApplicationLayout.js +21 -23
  31. package/dist/link/Link.js +110 -41
  32. package/dist/main.d.ts +8 -0
  33. package/dist/main.js +89 -1
  34. package/dist/new-date/NewDate.js +400 -0
  35. package/dist/new-date/index.d.ts +95 -0
  36. package/dist/new-input-text/NewInputText.js +971 -0
  37. package/dist/new-input-text/index.d.ts +135 -0
  38. package/dist/new-select/NewSelect.js +836 -0
  39. package/dist/new-select/index.d.ts +53 -0
  40. package/dist/new-textarea/NewTextarea.js +369 -0
  41. package/dist/new-textarea/index.d.ts +117 -0
  42. package/dist/number/Number.js +136 -0
  43. package/dist/number/NumberContext.js +16 -0
  44. package/dist/number/index.d.ts +113 -0
  45. package/dist/paginator/Paginator.js +149 -56
  46. package/dist/password/Password.js +200 -0
  47. package/dist/password/index.d.ts +94 -0
  48. package/dist/password/styles.css +3 -0
  49. package/dist/progress-bar/ProgressBar.js +95 -38
  50. package/dist/radio/Radio.js +31 -17
  51. package/dist/resultsetTable/ResultsetTable.js +90 -65
  52. package/dist/select/Select.js +239 -143
  53. package/dist/sidenav/Sidenav.js +119 -9
  54. package/dist/slider/Slider.js +197 -69
  55. package/dist/spinner/Spinner.js +247 -59
  56. package/dist/switch/Switch.js +50 -27
  57. package/dist/table/Table.js +51 -24
  58. package/dist/tabs/Tabs.js +206 -35
  59. package/dist/tag/Tag.js +85 -37
  60. package/dist/textarea/Textarea.js +77 -40
  61. package/dist/toggle/Toggle.js +16 -19
  62. package/dist/toggle-group/ToggleGroup.js +156 -43
  63. package/dist/upload/Upload.js +13 -8
  64. package/dist/upload/buttons-upload/ButtonsUpload.js +31 -14
  65. package/dist/upload/dragAndDropArea/DragAndDropArea.js +78 -28
  66. package/dist/upload/file-upload/FileToUpload.js +50 -24
  67. package/dist/upload/files-upload/FilesToUpload.js +16 -16
  68. package/dist/upload/transaction/Transaction.js +44 -24
  69. package/dist/upload/transactions/Transactions.js +38 -20
  70. package/dist/useTheme.js +22 -0
  71. package/dist/wizard/Wizard.js +139 -55
  72. package/dist/wizard/invalid_icon.svg +4 -5
  73. package/dist/wizard/valid_icon.svg +4 -5
  74. package/package.json +11 -4
  75. package/test/AccordionGroup.test.js +125 -0
  76. package/test/Date.test.js +13 -13
  77. package/test/Dropdown.test.js +15 -0
  78. package/test/FileInput.test.js +201 -0
  79. package/test/InputText.test.js +29 -25
  80. package/test/Link.test.js +12 -2
  81. package/test/NewDate.test.js +232 -0
  82. package/test/NewInputText.test.js +734 -0
  83. package/test/NewTextarea.test.js +195 -0
  84. package/test/Number.test.js +257 -0
  85. package/test/Paginator.test.js +72 -60
  86. package/test/Password.test.js +83 -0
  87. package/test/ResultsetTable.test.js +66 -19
  88. package/test/Select.test.js +55 -34
  89. package/test/Sidenav.test.js +28 -2
  90. package/test/Spinner.test.js +5 -0
  91. package/test/Tabs.test.js +21 -0
  92. package/test/ToggleGroup.test.js +5 -1
  93. package/dist/accordion/Accordion.stories.js +0 -207
  94. package/dist/accordion/readme.md +0 -96
  95. package/dist/alert/Alert.stories.js +0 -158
  96. package/dist/alert/close.svg +0 -4
  97. package/dist/alert/error.svg +0 -4
  98. package/dist/alert/info.svg +0 -4
  99. package/dist/alert/readme.md +0 -43
  100. package/dist/alert/success.svg +0 -4
  101. package/dist/alert/warning.svg +0 -4
  102. package/dist/button/Button.stories.js +0 -224
  103. package/dist/button/readme.md +0 -93
  104. package/dist/common/services/example-service.js +0 -10
  105. package/dist/common/services/example-service.test.js +0 -12
  106. package/dist/date/calendar.svg +0 -1
  107. package/dist/date/calendar_dark.svg +0 -1
  108. package/dist/dialog/Dialog.stories.js +0 -217
  109. package/dist/dialog/readme.md +0 -32
  110. package/dist/dropdown/Dropdown.stories.js +0 -249
  111. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  112. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  113. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  114. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  115. package/dist/dropdown/readme.md +0 -69
  116. package/dist/footer/dxc_logo_wht.png +0 -0
  117. package/dist/header/dxc_logo_black.png +0 -0
  118. package/dist/header/dxc_logo_blk_rgb.svg +0 -6
  119. package/dist/header/dxc_logo_white.png +0 -0
  120. package/dist/select/Select.stories.js +0 -235
  121. package/dist/select/readme.md +0 -72
  122. package/dist/toggle-group/readme.md +0 -82
  123. package/test/Toggle.test.js +0 -43
package/dist/tag/Tag.js CHANGED
@@ -11,24 +11,36 @@ exports["default"] = void 0;
11
11
 
12
12
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
13
13
 
14
- var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
15
-
16
14
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
17
15
 
16
+ var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
17
+
18
18
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
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
 
32
+ function _templateObject8() {
33
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n padding-top: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n padding-right: ", ";\n flex-grow: 1;\n text-align: center;\n text-overflow: ellipsis;\n overflow: hidden;\n white-space: nowrap;\n"]);
34
+
35
+ _templateObject8 = function _templateObject8() {
36
+ return data;
37
+ };
38
+
39
+ return data;
40
+ }
41
+
30
42
  function _templateObject7() {
31
- var data = (0, _taggedTemplateLiteral2["default"])(["\n padding: 0px 30px;\n font-size: 14px;\n text-transform: uppercase;\n letter-spacing: 1px;\n color: black;\n flex-grow: 1;\n text-align: center;\n text-overflow: ellipsis;\n overflow: hidden;\n white-space: nowrap;\n"]);
43
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n background: ", ";\n width: ", ";\n height: 100%;\n justify-content: center;\n align-items: center;\n color: ", ";\n"]);
32
44
 
33
45
  _templateObject7 = function _templateObject7() {
34
46
  return data;
@@ -38,7 +50,7 @@ function _templateObject7() {
38
50
  }
39
51
 
40
52
  function _templateObject6() {
41
- var data = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n background: ", ";\n width: 48px;\n justify-content: center;\n"]);
53
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n justify-content: center;\n align-items: center;\n overflow: hidden;\n\n img,\n svg {\n width: ", ";\n height: ", ";\n }\n"]);
42
54
 
43
55
  _templateObject6 = function _templateObject6() {
44
56
  return data;
@@ -48,7 +60,7 @@ function _templateObject6() {
48
60
  }
49
61
 
50
62
  function _templateObject5() {
51
- var data = (0, _taggedTemplateLiteral2["default"])(["\n padding: 10px 12px;\n height: 23px;\n"]);
63
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n justify-content: center;\n align-items: center;\n overflow: hidden;\n width: ", ";\n height: ", ";\n"]);
52
64
 
53
65
  _templateObject5 = function _templateObject5() {
54
66
  return data;
@@ -58,7 +70,7 @@ function _templateObject5() {
58
70
  }
59
71
 
60
72
  function _templateObject4() {
61
- var data = (0, _taggedTemplateLiteral2["default"])(["\n background: none;\n border: none;\n padding: 0;\n cursor: pointer;\n outline: 0;\n font-family: inherit;\n"]);
73
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n background: none;\n border-radius: 4px;\n border: none;\n padding: 0;\n cursor: pointer;\n font-family: inherit;\n\n :focus {\n outline: 2px solid ", ";\n }\n"]);
62
74
 
63
75
  _templateObject4 = function _templateObject4() {
64
76
  return data;
@@ -68,7 +80,7 @@ function _templateObject4() {
68
80
  }
69
81
 
70
82
  function _templateObject3() {
71
- var data = (0, _taggedTemplateLiteral2["default"])(["\n text-decoration: none;\n"]);
83
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n text-decoration: none;\n border-radius: 4px;\n\n :focus {\n outline: 2px solid ", ";\n outline-offset: 0px;\n }\n"]);
72
84
 
73
85
  _templateObject3 = function _templateObject3() {
74
86
  return data;
@@ -78,7 +90,7 @@ function _templateObject3() {
78
90
  }
79
91
 
80
92
  function _templateObject2() {
81
- var data = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n align-items: center;\n flex-direction: ", ";\n width: ", ";\n"]);
93
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n align-items: center;\n flex-direction: ", ";\n width: ", ";\n height: ", ";\n"]);
82
94
 
83
95
  _templateObject2 = function _templateObject2() {
84
96
  return data;
@@ -88,7 +100,7 @@ function _templateObject2() {
88
100
  }
89
101
 
90
102
  function _templateObject() {
91
- var data = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n cursor: ", ";\n\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n"]);
103
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n cursor: ", ";\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n"]);
92
104
 
93
105
  _templateObject = function _templateObject() {
94
106
  return data;
@@ -98,19 +110,23 @@ function _templateObject() {
98
110
  }
99
111
 
100
112
  var DxcTag = function DxcTag(_ref) {
101
- var iconSrc = _ref.iconSrc,
113
+ var icon = _ref.icon,
114
+ iconSrc = _ref.iconSrc,
102
115
  label = _ref.label,
103
116
  margin = _ref.margin,
104
117
  linkHref = _ref.linkHref,
105
118
  onClick = _ref.onClick,
106
119
  _ref$iconBgColor = _ref.iconBgColor,
107
- iconBgColor = _ref$iconBgColor === void 0 ? "black" : _ref$iconBgColor,
120
+ iconBgColor = _ref$iconBgColor === void 0 ? "#5f249f" : _ref$iconBgColor,
108
121
  _ref$labelPosition = _ref.labelPosition,
109
122
  labelPosition = _ref$labelPosition === void 0 ? "after" : _ref$labelPosition,
110
123
  _ref$newWindow = _ref.newWindow,
111
124
  newWindow = _ref$newWindow === void 0 ? false : _ref$newWindow,
112
125
  _ref$size = _ref.size,
113
- size = _ref$size === void 0 ? "fitContent" : _ref$size;
126
+ size = _ref$size === void 0 ? "fitContent" : _ref$size,
127
+ _ref$tabIndex = _ref.tabIndex,
128
+ tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
129
+ var colorsTheme = (0, _useTheme["default"])();
114
130
 
115
131
  var _useState = (0, _react.useState)(false),
116
132
  _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
@@ -118,9 +134,7 @@ var DxcTag = function DxcTag(_ref) {
118
134
  changeIsHovered = _useState2[1];
119
135
 
120
136
  var clickHandler = function clickHandler() {
121
- if (onClick) {
122
- onClick();
123
- }
137
+ onClick && onClick();
124
138
  };
125
139
 
126
140
  var tagContent = _react["default"].createElement(_Box["default"], {
@@ -128,15 +142,16 @@ var DxcTag = function DxcTag(_ref) {
128
142
  shadowDepth: isHovered && (onClick || linkHref) && 2 || 1
129
143
  }, _react["default"].createElement(TagContent, {
130
144
  labelPosition: labelPosition,
131
- margin: margin,
132
145
  size: size
133
146
  }, _react["default"].createElement(IconContainer, {
134
147
  iconBgColor: iconBgColor
135
- }, _react["default"].createElement(TagIcon, {
148
+ }, icon ? _react["default"].createElement(TagIconContainer, null, (0, _typeof2["default"])(icon) === "object" ? icon : _react["default"].createElement(icon)) : _react["default"].createElement(TagIcon, {
136
149
  src: iconSrc
137
150
  })), size !== "small" && _react["default"].createElement(TagLabel, null, label)));
138
151
 
139
- return _react["default"].createElement(StyledDxcTag, {
152
+ return _react["default"].createElement(_styledComponents.ThemeProvider, {
153
+ theme: colorsTheme.tag
154
+ }, _react["default"].createElement(StyledDxcTag, {
140
155
  margin: margin,
141
156
  onMouseEnter: function onMouseEnter() {
142
157
  return changeIsHovered(true);
@@ -146,10 +161,13 @@ var DxcTag = function DxcTag(_ref) {
146
161
  },
147
162
  onClick: clickHandler,
148
163
  hasAction: onClick || linkHref
149
- }, onClick ? _react["default"].createElement(StyledButton, null, tagContent) : linkHref ? _react["default"].createElement(StyledLink, {
164
+ }, onClick ? _react["default"].createElement(StyledButton, {
165
+ tabIndex: tabIndex
166
+ }, tagContent) : linkHref ? _react["default"].createElement(StyledLink, {
167
+ tabIndex: tabIndex,
150
168
  href: linkHref,
151
169
  target: newWindow ? "_blank" : "_self"
152
- }, tagContent) : tagContent);
170
+ }, tagContent) : tagContent));
153
171
  };
154
172
 
155
173
  var sizes = {
@@ -189,23 +207,62 @@ var TagContent = _styledComponents["default"].div(_templateObject2(), function (
189
207
  return labelPosition === "before" && "row-reverse" || "row";
190
208
  }, function (props) {
191
209
  return calculateWidth(props.size);
210
+ }, function (props) {
211
+ return props.theme.height;
192
212
  });
193
213
 
194
- var StyledLink = _styledComponents["default"].a(_templateObject3());
214
+ var StyledLink = _styledComponents["default"].a(_templateObject3(), function (props) {
215
+ return props.theme.focusColor;
216
+ });
195
217
 
196
- var StyledButton = _styledComponents["default"].button(_templateObject4());
218
+ var StyledButton = _styledComponents["default"].button(_templateObject4(), function (props) {
219
+ return props.theme.focusColor;
220
+ });
197
221
 
198
- var TagIcon = _styledComponents["default"].img(_templateObject5());
222
+ var TagIcon = _styledComponents["default"].img(_templateObject5(), function (props) {
223
+ return props.theme.iconWidth;
224
+ }, function (props) {
225
+ return props.theme.iconHeight;
226
+ });
227
+
228
+ var TagIconContainer = _styledComponents["default"].div(_templateObject6(), function (props) {
229
+ return props.theme.iconWidth;
230
+ }, function (props) {
231
+ return props.theme.iconHeight;
232
+ });
199
233
 
200
- var IconContainer = _styledComponents["default"].div(_templateObject6(), function (_ref9) {
234
+ var IconContainer = _styledComponents["default"].div(_templateObject7(), function (_ref9) {
201
235
  var iconBgColor = _ref9.iconBgColor;
202
236
  return iconBgColor;
237
+ }, function (props) {
238
+ return props.theme.iconSectionWidth;
239
+ }, function (props) {
240
+ return props.theme.iconColor;
203
241
  });
204
242
 
205
- var TagLabel = _styledComponents["default"].div(_templateObject7());
243
+ var TagLabel = _styledComponents["default"].div(_templateObject8(), function (props) {
244
+ return props.theme.fontFamily;
245
+ }, function (props) {
246
+ return props.theme.fontSize;
247
+ }, function (props) {
248
+ return props.theme.fontStyle;
249
+ }, function (props) {
250
+ return props.theme.fontWeight;
251
+ }, function (props) {
252
+ return props.theme.fontColor;
253
+ }, function (props) {
254
+ return props.theme.labelPaddingTop;
255
+ }, function (props) {
256
+ return props.theme.labelPaddingBottom;
257
+ }, function (props) {
258
+ return props.theme.labelPaddingLeft;
259
+ }, function (props) {
260
+ return props.theme.labelPaddingRight;
261
+ });
206
262
 
207
263
  DxcTag.propTypes = {
208
264
  size: _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(sizes))),
265
+ icon: _propTypes["default"].oneOfType([_propTypes["default"].element, _propTypes["default"].func]),
209
266
  iconSrc: _propTypes["default"].string,
210
267
  iconBgColor: _propTypes["default"].string,
211
268
  label: _propTypes["default"].string,
@@ -218,17 +275,8 @@ DxcTag.propTypes = {
218
275
  bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
219
276
  left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
220
277
  right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
221
- }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))])
222
- };
223
- DxcTag.defaultProps = {
224
- iconSrc: null,
225
- label: null,
226
- margin: null,
227
- linkHref: null,
228
- onClick: null,
229
- iconBgColor: "black",
230
- labelPosition: "after",
231
- newWindow: false
278
+ }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))]),
279
+ tabIndex: _propTypes["default"].number
232
280
  };
233
281
  var _default = DxcTag;
234
282
  exports["default"] = _default;
@@ -25,18 +25,18 @@ var _TextField = _interopRequireDefault(require("@material-ui/core/TextField"));
25
25
 
26
26
  var _propTypes = _interopRequireDefault(require("prop-types"));
27
27
 
28
- require("../common/OpenSans.css");
29
-
30
28
  var _variables = require("../common/variables.js");
31
29
 
32
30
  var _utils = require("../common/utils.js");
33
31
 
34
- var _ThemeContext = _interopRequireDefault(require("../ThemeContext.js"));
32
+ var _useTheme = _interopRequireDefault(require("../useTheme.js"));
35
33
 
36
34
  var _RequiredComponent = _interopRequireDefault(require("../common/RequiredComponent"));
37
35
 
36
+ var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext.js"));
37
+
38
38
  function _templateObject() {
39
- 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 position: relative;\n height: auto;\n width: ", ";\n .MuiTextField-root {\n width: 100%;\n font-family: \"Open Sans\", sans-serif;\n .MuiFormHelperText-root {\n font-family: \"Open Sans\", sans-serif;\n margin-top: 6px;\n }\n .MuiFormLabel-root {\n font-size: 16px;\n color: ", ";\n &.Mui-disabled {\n opacity: ", ";\n cursor: not-allowed;\n }\n padding-left: \"inherit\";\n &.Mui-focused {\n color: ", ";\n &.MuiInputLabel-shrink {\n transform: \"translate(0, 1.5px) scale(0.75);\";\n }\n }\n &.MuiInputLabel-shrink {\n font-family: \"Open Sans\", sans-serif;\n transform: \"translate(0, 1.5px) scale(0.75)\";\n }\n &.Mui-error {\n color: ", ";\n }\n\n &:not(.MuiInputLabel-shrink) {\n font-family: \"Open Sans\", sans-serif;\n color: ", ";\n & + div,\n & + div + p {\n color: ", ";\n }\n }\n\n &.MuiInputLabel-shrink {\n & + div::before {\n border-color: ", ";\n }\n & + div + p {\n color: ", ";\n }\n }\n }\n .MuiInputBase-root.MuiInput-root.MuiInput-underline {\n font-family: \"Open Sans\", sans-serif;\n &::before {\n border-bottom: ", ";\n }\n &:not(.Mui-error)::before,\n &:not(&.Mui-focused)::before {\n border-bottom: ", ";\n }\n &::after {\n border-bottom: ", ";\n }\n\n .MuiInputBase-inputMultiline {\n overflow: auto !important;\n\n ::-webkit-scrollbar {\n width: 3px;\n }\n\n ::-webkit-scrollbar-track {\n background-color: ", ";\n border-radius: 3px;\n }\n\n ::-webkit-scrollbar-thumb {\n background-color: ", ";\n border-radius: 3px;\n }\n }\n\n &.Mui-error {\n &::before {\n border-width: 1px;\n border-color: ", ";\n }\n &::after {\n transform: scaleX(0);\n }\n }\n\n &.Mui-focused {\n &::after {\n border-width: 2px;\n border-color: ", ";\n transform: scaleX(1);\n }\n\n &.Mui-error::after {\n border-color: ", ";\n }\n }\n\n &.Mui-disabled {\n color: ", ";\n opacity: ", ";\n cursor: not-allowed;\n\n &::before {\n border-bottom: ", ";\n border-bottom-style: solid;\n }\n }\n .MuiInputBase-input {\n padding-left: \"inherit\";\n color: ", ";\n text-overflow: ellipsis;\n &.Mui-disabled {\n cursor: not-allowed;\n }\n }\n\n &:hover:not(.Mui-disabled):before &:hover:not(.Mui-error):before {\n border-bottom: ", ";\n }\n }\n\n & > p {\n &.Mui-error {\n color: ", ";\n }\n &.Mui-disabled {\n opacity: ", ";\n cursor: not-allowed;\n }\n }\n }\n"]);
39
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n display: inline-block;\n position: relative;\n height: auto;\n width: ", ";\n\n .MuiTextField-root {\n width: 100%;\n\n .MuiFormHelperText-root {\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n letter-spacing: ", ";\n margin-top: 6px;\n }\n .MuiFormLabel-root {\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n letter-spacing: ", ";\n color: ", ";\n padding-left: \"inherit\";\n\n &.Mui-disabled {\n color: ", " !important;\n cursor: not-allowed;\n }\n\n &.Mui-focused {\n color: ", ";\n &.MuiInputLabel-shrink {\n transform: \"translate(0, 1.5px) scale(0.75);\";\n }\n }\n\n &.MuiInputLabel-shrink {\n font-family: ", ";\n transform: \"translate(0, 1.5px) scale(0.75)\";\n }\n\n &.Mui-error {\n color: ", ";\n }\n\n &:not(.MuiInputLabel-shrink) {\n font-family: ", ";\n color: ", ";\n & + div,\n & + div + p {\n color: ", ";\n }\n }\n\n &.MuiInputLabel-shrink {\n & + div::before {\n border-color: ", ";\n }\n & + div + p {\n color: ", ";\n }\n }\n }\n .MuiInputBase-root.MuiInput-root.MuiInput-underline {\n &::before {\n border-bottom: ", ";\n }\n\n &:not(.Mui-error)::before,\n &:not(&.Mui-focused)::before {\n border-bottom: ", ";\n }\n\n &::after {\n border-bottom: ", ";\n }\n\n .MuiInputBase-inputMultiline {\n overflow: auto !important;\n\n ::-webkit-scrollbar {\n width: 3px;\n }\n\n ::-webkit-scrollbar-track {\n background-color: ", ";\n border-radius: 3px;\n }\n\n ::-webkit-scrollbar-thumb {\n background-color: ", ";\n border-radius: 3px;\n }\n }\n\n &.Mui-error {\n &::before {\n border-width: ", ";\n border-color: ", ";\n }\n &::after {\n transform: scaleX(0);\n }\n }\n\n &.Mui-focused {\n &::after {\n border-width: calc(", " + 1px);\n border-color: ", ";\n }\n &.Mui-error::after {\n border-color: ", ";\n }\n }\n\n &.Mui-disabled {\n cursor: not-allowed;\n\n &::before {\n border-bottom: ", ";\n border-bottom-style: solid;\n }\n }\n\n .MuiInputBase-input {\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n letter-spacing: ", ";\n color: ", ";\n line-height: ", ";\n padding-left: \"inherit\";\n text-overflow: ellipsis;\n\n &.Mui-disabled {\n cursor: not-allowed;\n color: ", ";\n }\n }\n\n &:hover:not(.Mui-disabled):before &:hover:not(.Mui-error):before {\n border-bottom-color: ", ";\n }\n }\n\n & > p {\n &.Mui-error {\n color: ", ";\n }\n &.Mui-disabled {\n color: ", " !important;\n cursor: not-allowed;\n }\n }\n }\n"]);
40
40
 
41
41
  _templateObject = function _templateObject() {
42
42
  return data;
@@ -69,17 +69,17 @@ var DxcTextarea = function DxcTextarea(_ref) {
69
69
  placeholder = _ref$placeholder === void 0 ? "" : _ref$placeholder,
70
70
  margin = _ref.margin,
71
71
  _ref$size = _ref.size,
72
- size = _ref$size === void 0 ? "medium" : _ref$size;
72
+ size = _ref$size === void 0 ? "medium" : _ref$size,
73
+ _ref$tabIndex = _ref.tabIndex,
74
+ tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
73
75
 
74
76
  var _useState = (0, _react.useState)(""),
75
77
  _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
76
78
  innerValue = _useState2[0],
77
79
  setInnerValue = _useState2[1];
78
80
 
79
- var customTheme = (0, _react.useContext)(_ThemeContext["default"]);
80
- var colorsTheme = (0, _react.useMemo)(function () {
81
- return (0, _utils.getCustomTheme)(_variables.theme, (0, _utils.getCustomTheme)(_variables.defaultTheme, customTheme));
82
- }, [customTheme]);
81
+ var colorsTheme = (0, _useTheme["default"])();
82
+ var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
83
83
 
84
84
  var handlerTextareaChange = function handlerTextareaChange(event) {
85
85
  if (value === null || value === undefined) {
@@ -112,7 +112,8 @@ var DxcTextarea = function DxcTextarea(_ref) {
112
112
  required: required,
113
113
  assistiveText: assistiveText,
114
114
  margin: margin,
115
- size: size
115
+ size: size,
116
+ backgroundType: backgroundType
116
117
  }, _react["default"].createElement(_TextField["default"], {
117
118
  error: invalid,
118
119
  value: value !== null ? value : innerValue,
@@ -124,7 +125,10 @@ var DxcTextarea = function DxcTextarea(_ref) {
124
125
  onChange: handlerTextareaChange,
125
126
  onBlur: onBlur && handlerTextareaBlur || null,
126
127
  rows: numRows,
127
- placeholder: placeholder
128
+ placeholder: placeholder,
129
+ inputProps: {
130
+ tabIndex: tabIndex
131
+ }
128
132
  })));
129
133
  };
130
134
 
@@ -136,11 +140,7 @@ var sizes = {
136
140
  };
137
141
 
138
142
  var calculateWidth = function calculateWidth(margin, size) {
139
- if (size === "fillParent") {
140
- return "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")");
141
- }
142
-
143
- return sizes[size];
143
+ return size === "fillParent" ? "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")") : sizes[size];
144
144
  };
145
145
 
146
146
  var TextContainer = _styledComponents["default"].div(_templateObject(), function (props) {
@@ -156,51 +156,87 @@ var TextContainer = _styledComponents["default"].div(_templateObject(), function
156
156
  }, function (props) {
157
157
  return calculateWidth(props.margin, props.size);
158
158
  }, function (props) {
159
- return props.theme.fontColor;
159
+ return props.theme.fontFamily;
160
+ }, function (props) {
161
+ return props.theme.assistiveTextFontSize;
162
+ }, function (props) {
163
+ return props.theme.assistiveTextFontStyle;
164
+ }, function (props) {
165
+ return props.theme.assistiveTextFontWeight;
166
+ }, function (props) {
167
+ return props.theme.assistiveTextLetterSpacing;
168
+ }, function (props) {
169
+ return props.theme.labelFontSize;
170
+ }, function (props) {
171
+ return props.theme.labelFontStyle;
172
+ }, function (props) {
173
+ return props.theme.labelFontWeight;
174
+ }, function (props) {
175
+ return props.theme.labelLetterSpacing;
176
+ }, function (props) {
177
+ return props.backgroundType === "dark" ? props.theme.labelFontColorOnDark : props.theme.labelFontColor;
178
+ }, function (props) {
179
+ return props.backgroundType === "dark" ? props.theme.disabledColorOnDark : props.theme.disabledColor;
180
+ }, function (props) {
181
+ return props.backgroundType === "dark" ? props.theme.labelFontColorOnDark : props.theme.labelFontColor;
182
+ }, function (props) {
183
+ return props.theme.fontFamily;
184
+ }, function (props) {
185
+ return props.backgroundType === "dark" ? props.theme.errorColorOnDark : props.theme.errorColor;
186
+ }, function (props) {
187
+ return props.theme.fontFamily;
188
+ }, function (props) {
189
+ return props.backgroundType === "dark" ? props.theme.labelFontColorOnDark : props.theme.labelFontColor;
190
+ }, function (props) {
191
+ return props.backgroundType === "dark" ? props.theme.assistiveTextFontColorOnDark : props.theme.assistiveTextFontColor;
192
+ }, function (props) {
193
+ return props.backgroundType ? props.theme.underlineColorOnDark : props.theme.underlineColor;
194
+ }, function (props) {
195
+ return props.backgroundType === "dark" ? props.theme.labelFontColorOnDark : props.theme.labelFontColor;
160
196
  }, function (props) {
161
- return props.theme.disabled;
197
+ return "".concat(props.theme.underlineThickness, " solid ").concat(props.backgroundType === "dark" ? props.theme.underlineColorOnDark : props.theme.underlineColor);
162
198
  }, function (props) {
163
- return props.theme.fontColor;
199
+ return "".concat(props.theme.underlineThickness, " solid ").concat(props.backgroundType === "dark" ? props.theme.underlineColorOnDark : props.theme.underlineColor);
164
200
  }, function (props) {
165
- return props.theme.error;
201
+ return "calc(".concat(props.theme.underlineThickness, " + 1px) solid ").concat(props.backgroundType === "dark" ? props.theme.underlineFocusColorOnDark : props.theme.underlineFocusColor);
166
202
  }, function (props) {
167
- return props.theme.fontColor;
203
+ return props.backgroundType === "dark" ? props.theme.scrollBarTrackColorOnDark : props.theme.scrollBarTrackColor;
168
204
  }, function (props) {
169
- return props.theme.fontColor;
205
+ return props.backgroundType === "dark" ? props.theme.scrollBarThumbColorOnDark : props.theme.scrollBarThumbColor;
170
206
  }, function (props) {
171
- return props.theme.fontColor;
207
+ return props.theme.underlineThickness;
172
208
  }, function (props) {
173
- return props.theme.fontColor;
209
+ return props.backgroundType === "dark" ? props.theme.errorColorOnDark : props.theme.errorColor;
174
210
  }, function (props) {
175
- return "1px solid ".concat(props.theme.fontColor);
211
+ return props.theme.underlineThickness;
176
212
  }, function (props) {
177
- return "1px solid ".concat(props.theme.fontColor);
213
+ return props.backgroundType === "dark" ? props.theme.underlineFocusColorOnDark : props.theme.underlineFocusColor;
178
214
  }, function (props) {
179
- return "2px solid ".concat(props.theme.fontColor);
215
+ return props.backgroundType === "dark" ? props.theme.errorColorOnDark : props.theme.errorColor;
180
216
  }, function (props) {
181
- return props.theme.scrollBarTrackColor;
217
+ return "".concat(props.theme.underlineThickness, " solid ").concat(props.backgroundType === "dark" ? props.theme.disabledColorOnDark : props.theme.disabledColor, " !important");
182
218
  }, function (props) {
183
- return props.theme.scrollBarThumbColor;
219
+ return props.theme.fontFamily;
184
220
  }, function (props) {
185
- return props.theme.error;
221
+ return props.theme.valueFontSize;
186
222
  }, function (props) {
187
- return props.theme.fontColor;
223
+ return props.theme.valueFontStyle;
188
224
  }, function (props) {
189
- return props.theme.error;
225
+ return props.theme.valueFontWeight;
190
226
  }, function (props) {
191
- return props.theme.fontColor;
227
+ return props.theme.valueLetterSpacing;
192
228
  }, function (props) {
193
- return props.theme.disabled;
229
+ return props.backgroundType === "dark" ? props.theme.valueFontColorOnDark : props.theme.valueFontColor;
194
230
  }, function (props) {
195
- return "1px solid ".concat(props.theme.fontColor);
231
+ return props.theme.valueLineHeight;
196
232
  }, function (props) {
197
- return props.theme.fontColor;
233
+ return props.backgroundType === "dark" ? props.theme.disabledColorOnDark : props.theme.disabledColor;
198
234
  }, function (props) {
199
- return props.theme.fontColor;
235
+ return props.backgroundType === "dark" ? props.theme.underlineFocusColorOnDark : props.theme.underlineFocusColor;
200
236
  }, function (props) {
201
- return "".concat(props.theme.error, " !important");
237
+ return "".concat(props.backgroundType === "dark" ? props.theme.errorColorOnDark : props.theme.errorColor, " !important");
202
238
  }, function (props) {
203
- return props.theme.disabled;
239
+ return props.backgroundType === "dark" ? props.theme.disabledColorOnDark : props.theme.disabledColor;
204
240
  });
205
241
 
206
242
  DxcTextarea.propTypes = {
@@ -221,7 +257,8 @@ DxcTextarea.propTypes = {
221
257
  bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
222
258
  left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
223
259
  right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
224
- }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))])
260
+ }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))]),
261
+ tabIndex: _propTypes["default"].number
225
262
  };
226
263
  var _default = DxcTextarea;
227
264
  exports["default"] = _default;
@@ -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 _lab = require("@material-ui/lab");
21
21
 
@@ -23,13 +23,9 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
23
23
 
24
24
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
25
25
 
26
- require("../common/OpenSans.css");
27
-
28
- var _variables = require("../common/variables.js");
29
-
30
26
  var _utils = require("../common/utils.js");
31
27
 
32
- var _ThemeContext = _interopRequireDefault(require("../ThemeContext.js"));
28
+ var _useTheme = _interopRequireDefault(require("../useTheme.js"));
33
29
 
34
30
  function _templateObject4() {
35
31
  var data = (0, _taggedTemplateLiteral2["default"])([""]);
@@ -62,7 +58,7 @@ function _templateObject2() {
62
58
  }
63
59
 
64
60
  function _templateObject() {
65
- var data = (0, _taggedTemplateLiteral2["default"])(["\n & {\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n\n opacity: ", ";\n cursor: ", ";\n display: inline-block;\n width: ", ";\n }\n\n .MuiToggleButton-label {\n font-size: 14px;\n font-family: \"Open Sans\", sans-serif;\n color: ", ";\n }\n .MuiButtonBase-root {\n width: ", ";\n min-height: ", ";\n background-color: ", ";\n &:hover {\n background-color: ", ";\n .MuiToggleButton-label {\n color: ", ";\n }\n }\n }\n\n .MuiToggleButton-root {\n min-width: 42px;\n height: 43px;\n border: ", ";\n\n border-radius: 4px !important;\n }\n\n .MuiToggleButton-root.Mui-selected {\n background-color: ", ";\n &:hover {\n background-color: ", ";\n .MuiToggleButton-label {\n color: ", ";\n }\n }\n }\n\n .MuiToggleButton-root:last-child,\n .MuiToggleButton-root:first-child,\n .MuiToggleButton-root:not(:first-child) {\n padding: ", ";\n }\n\n .MuiTouchRipple-child {\n background-color: ", ";\n }\n"]);
61
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n & {\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n\n opacity: ", ";\n cursor: ", ";\n display: inline-block;\n width: ", ";\n }\n\n .MuiToggleButton-label {\n font-size: 14px;\n font-family: ", ";\n color: ", ";\n }\n .MuiButtonBase-root {\n width: ", ";\n min-height: ", ";\n background-color: ", ";\n &:hover {\n background-color: ", ";\n .MuiToggleButton-label {\n color: ", ";\n }\n }\n }\n\n .MuiToggleButton-root {\n min-width: 42px;\n height: 43px;\n border: ", ";\n\n border-radius: 4px !important;\n }\n\n .MuiToggleButton-root.Mui-selected {\n background-color: ", ";\n &:hover {\n background-color: ", ";\n .MuiToggleButton-label {\n color: ", ";\n }\n }\n }\n\n .MuiToggleButton-root:last-child,\n .MuiToggleButton-root:first-child,\n .MuiToggleButton-root:not(:first-child) {\n padding: ", ";\n }\n\n .MuiTouchRipple-child {\n background-color: ", ";\n }\n"]);
66
62
 
67
63
  _templateObject = function _templateObject() {
68
64
  return data;
@@ -92,8 +88,7 @@ var DxcToggle = function DxcToggle(_ref) {
92
88
  margin = _ref.margin,
93
89
  _ref$size = _ref.size,
94
90
  size = _ref$size === void 0 ? "fitContent" : _ref$size;
95
-
96
- var colorsTheme = (0, _react.useContext)(_ThemeContext["default"]) || _variables.colors;
91
+ var colorsTheme = (0, _useTheme["default"])();
97
92
 
98
93
  var handlerToggleClick = function handlerToggleClick() {
99
94
  if (!disabled && typeof onClick === "function") {
@@ -149,21 +144,23 @@ var calculateWidth = function calculateWidth(margin, size) {
149
144
  };
150
145
 
151
146
  var DxcToggleContainer = _styledComponents["default"].div(_templateObject(), function (props) {
152
- return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
147
+ return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? spaces[props.margin] : "0px";
153
148
  }, function (props) {
154
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
149
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? spaces[props.margin.top] : "";
155
150
  }, function (props) {
156
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.right ? _variables.spaces[props.margin.right] : "";
151
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.right ? spaces[props.margin.right] : "";
157
152
  }, function (props) {
158
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
153
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? spaces[props.margin.bottom] : "";
159
154
  }, function (props) {
160
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
155
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? spaces[props.margin.left] : "";
161
156
  }, function (props) {
162
157
  return props.disabled ? "0.5" : "1";
163
158
  }, function (props) {
164
159
  return props.disabled ? "not-allowed" : "pointer";
165
160
  }, function (props) {
166
161
  return calculateWidth(props.margin, props.size);
162
+ }, function (props) {
163
+ return props.theme.fontFamily;
167
164
  }, function (props) {
168
165
  return props.brightness === "dark" && props.mode === "outlined" ? props.theme.white : props.theme.black;
169
166
  }, function (props) {
@@ -213,11 +210,11 @@ DxcToggle.propTypes = {
213
210
  disableRipple: _propTypes["default"].bool,
214
211
  onClick: _propTypes["default"].func,
215
212
  margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
216
- top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
217
- bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
218
- left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
219
- right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
220
- }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))])
213
+ top: _propTypes["default"].oneOf(Object.keys(spaces)),
214
+ bottom: _propTypes["default"].oneOf(Object.keys(spaces)),
215
+ left: _propTypes["default"].oneOf(Object.keys(spaces)),
216
+ right: _propTypes["default"].oneOf(Object.keys(spaces))
217
+ }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(spaces)))])
221
218
  };
222
219
  var _default = DxcToggle;
223
220
  exports["default"] = _default;