@dxc-technology/halstack-react 0.0.0-67a8cc5 → 0.0.0-6bc7b92

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 (192) hide show
  1. package/dist/BackgroundColorContext.js +46 -0
  2. package/dist/ThemeContext.js +168 -105
  3. package/dist/V3Textarea/V3Textarea.js +264 -0
  4. package/dist/accordion/Accordion.js +122 -47
  5. package/dist/accordion-group/AccordionGroup.js +34 -4
  6. package/dist/alert/Alert.js +174 -81
  7. package/dist/alert/index.d.ts +51 -0
  8. package/dist/badge/Badge.js +28 -7
  9. package/dist/box/Box.js +28 -19
  10. package/dist/button/Button.js +44 -19
  11. package/dist/card/Card.js +15 -6
  12. package/dist/checkbox/Checkbox.js +88 -23
  13. package/dist/chip/Chip.js +62 -20
  14. package/dist/common/utils.js +2 -22
  15. package/dist/common/variables.js +1377 -239
  16. package/dist/date/Date.js +65 -41
  17. package/dist/date-input/DateInput.js +400 -0
  18. package/dist/date-input/index.d.ts +95 -0
  19. package/dist/dialog/Dialog.js +44 -31
  20. package/dist/dropdown/Dropdown.js +162 -74
  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 +80 -36
  25. package/dist/footer/Icons.js +77 -0
  26. package/dist/header/Header.js +122 -67
  27. package/dist/header/Icons.js +59 -0
  28. package/dist/heading/Heading.js +86 -23
  29. package/dist/input-text/Icons.js +22 -0
  30. package/dist/input-text/InputText.js +184 -76
  31. package/dist/layout/ApplicationLayout.js +14 -18
  32. package/dist/layout/Icons.js +55 -0
  33. package/dist/link/Link.js +78 -34
  34. package/dist/main.d.ts +8 -0
  35. package/dist/main.js +71 -7
  36. package/dist/new-select/NewSelect.js +836 -0
  37. package/dist/new-select/index.d.ts +53 -0
  38. package/dist/number-input/NumberInput.js +136 -0
  39. package/dist/number-input/NumberInputContext.js +16 -0
  40. package/dist/number-input/index.d.ts +113 -0
  41. package/dist/paginator/Icons.js +66 -0
  42. package/dist/paginator/Paginator.js +46 -24
  43. package/dist/password-input/PasswordInput.js +198 -0
  44. package/dist/password-input/index.d.ts +94 -0
  45. package/dist/progress-bar/ProgressBar.js +89 -37
  46. package/dist/radio/Radio.js +28 -11
  47. package/dist/resultsetTable/ResultsetTable.js +67 -40
  48. package/dist/select/Select.js +207 -148
  49. package/dist/sidenav/Sidenav.js +64 -12
  50. package/dist/slider/Slider.js +204 -67
  51. package/dist/spinner/Spinner.js +245 -60
  52. package/dist/switch/Switch.js +42 -16
  53. package/dist/table/Table.js +46 -10
  54. package/dist/tabs/Tabs.js +38 -18
  55. package/dist/tag/Tag.js +56 -31
  56. package/dist/text-input/TextInput.js +971 -0
  57. package/dist/text-input/index.d.ts +135 -0
  58. package/dist/textarea/Textarea.js +239 -108
  59. package/dist/textarea/index.d.ts +117 -0
  60. package/dist/toggle/Toggle.js +0 -2
  61. package/dist/toggle-group/ToggleGroup.js +142 -32
  62. package/dist/upload/Upload.js +4 -8
  63. package/dist/upload/buttons-upload/ButtonsUpload.js +29 -17
  64. package/dist/upload/buttons-upload/Icons.js +40 -0
  65. package/dist/upload/dragAndDropArea/DragAndDropArea.js +64 -24
  66. package/dist/upload/dragAndDropArea/Icons.js +39 -0
  67. package/dist/upload/file-upload/FileToUpload.js +53 -26
  68. package/dist/upload/file-upload/Icons.js +66 -0
  69. package/dist/upload/files-upload/FilesToUpload.js +3 -5
  70. package/dist/upload/transaction/Icons.js +160 -0
  71. package/dist/upload/transaction/Transaction.js +37 -43
  72. package/dist/upload/transactions/Transactions.js +27 -11
  73. package/dist/wizard/Icons.js +65 -0
  74. package/dist/wizard/Wizard.js +114 -52
  75. package/package.json +6 -4
  76. package/test/AccordionGroup.test.js +16 -0
  77. package/test/Date.test.js +49 -45
  78. package/test/DateInput.test.js +242 -0
  79. package/test/Dropdown.test.js +15 -0
  80. package/test/FileInput.test.js +201 -0
  81. package/test/Footer.test.js +2 -7
  82. package/test/Header.test.js +5 -10
  83. package/test/InputText.test.js +24 -16
  84. package/test/Link.test.js +3 -2
  85. package/test/NumberInput.test.js +259 -0
  86. package/test/Paginator.test.js +1 -1
  87. package/test/PasswordInput.test.js +83 -0
  88. package/test/ResultsetTable.test.js +1 -2
  89. package/test/Select.test.js +44 -24
  90. package/test/Slider.test.js +9 -17
  91. package/test/Spinner.test.js +5 -0
  92. package/test/TextInput.test.js +732 -0
  93. package/test/Textarea.test.js +193 -0
  94. package/test/ToggleGroup.test.js +5 -1
  95. package/test/Upload.test.js +5 -5
  96. package/test/{TextArea.test.js → V3TextArea.test.js} +6 -7
  97. package/dist/accordion/Accordion.stories.js +0 -207
  98. package/dist/accordion/readme.md +0 -96
  99. package/dist/accordion-group/AccordionGroup.stories.js +0 -207
  100. package/dist/accordion-group/readme.md +0 -70
  101. package/dist/alert/Alert.stories.js +0 -158
  102. package/dist/alert/close.svg +0 -4
  103. package/dist/alert/error.svg +0 -4
  104. package/dist/alert/info.svg +0 -4
  105. package/dist/alert/readme.md +0 -43
  106. package/dist/alert/success.svg +0 -4
  107. package/dist/alert/warning.svg +0 -4
  108. package/dist/button/Button.stories.js +0 -224
  109. package/dist/button/readme.md +0 -93
  110. package/dist/checkbox/Checkbox.stories.js +0 -144
  111. package/dist/checkbox/readme.md +0 -116
  112. package/dist/common/services/example-service.js +0 -10
  113. package/dist/common/services/example-service.test.js +0 -12
  114. package/dist/date/Date.stories.js +0 -205
  115. package/dist/date/calendar.svg +0 -1
  116. package/dist/date/calendar_dark.svg +0 -1
  117. package/dist/date/readme.md +0 -73
  118. package/dist/dialog/Dialog.stories.js +0 -217
  119. package/dist/dialog/readme.md +0 -32
  120. package/dist/dropdown/Dropdown.stories.js +0 -249
  121. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  122. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  123. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  124. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  125. package/dist/dropdown/readme.md +0 -69
  126. package/dist/footer/Footer.stories.js +0 -94
  127. package/dist/footer/dxc_logo_wht.png +0 -0
  128. package/dist/footer/readme.md +0 -41
  129. package/dist/header/Header.stories.js +0 -176
  130. package/dist/header/close_icon.svg +0 -1
  131. package/dist/header/dxc_logo_black.png +0 -0
  132. package/dist/header/dxc_logo_blk_rgb.svg +0 -6
  133. package/dist/header/dxc_logo_white.png +0 -0
  134. package/dist/header/hamb_menu_black.svg +0 -1
  135. package/dist/header/hamb_menu_white.svg +0 -1
  136. package/dist/header/readme.md +0 -33
  137. package/dist/input-text/InputText.stories.js +0 -209
  138. package/dist/input-text/error.svg +0 -1
  139. package/dist/input-text/readme.md +0 -91
  140. package/dist/layout/facebook.svg +0 -45
  141. package/dist/layout/linkedin.svg +0 -50
  142. package/dist/layout/twitter.svg +0 -53
  143. package/dist/link/readme.md +0 -51
  144. package/dist/paginator/images/next.svg +0 -3
  145. package/dist/paginator/images/nextPage.svg +0 -3
  146. package/dist/paginator/images/previous.svg +0 -3
  147. package/dist/paginator/images/previousPage.svg +0 -3
  148. package/dist/paginator/readme.md +0 -50
  149. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  150. package/dist/progress-bar/readme.md +0 -63
  151. package/dist/radio/Radio.stories.js +0 -166
  152. package/dist/radio/readme.md +0 -70
  153. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  154. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  155. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  156. package/dist/select/Select.stories.js +0 -235
  157. package/dist/select/readme.md +0 -72
  158. package/dist/slider/Slider.stories.js +0 -241
  159. package/dist/slider/readme.md +0 -64
  160. package/dist/spinner/Spinner.stories.js +0 -183
  161. package/dist/spinner/readme.md +0 -65
  162. package/dist/switch/Switch.stories.js +0 -134
  163. package/dist/switch/readme.md +0 -133
  164. package/dist/tabs/Tabs.stories.js +0 -130
  165. package/dist/tabs/readme.md +0 -78
  166. package/dist/tabs-for-sections/readme.md +0 -78
  167. package/dist/toggle/Toggle.stories.js +0 -297
  168. package/dist/toggle/readme.md +0 -80
  169. package/dist/toggle-group/readme.md +0 -82
  170. package/dist/upload/Upload.stories.js +0 -72
  171. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  172. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  173. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  174. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  175. package/dist/upload/file-upload/audio-icon.svg +0 -4
  176. package/dist/upload/file-upload/close.svg +0 -4
  177. package/dist/upload/file-upload/file-icon.svg +0 -4
  178. package/dist/upload/file-upload/video-icon.svg +0 -4
  179. package/dist/upload/readme.md +0 -37
  180. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  181. package/dist/upload/transaction/audio-icon.svg +0 -4
  182. package/dist/upload/transaction/error-icon.svg +0 -4
  183. package/dist/upload/transaction/file-icon-err.svg +0 -4
  184. package/dist/upload/transaction/file-icon.svg +0 -4
  185. package/dist/upload/transaction/image-icon-err.svg +0 -4
  186. package/dist/upload/transaction/image-icon.svg +0 -4
  187. package/dist/upload/transaction/success-icon.svg +0 -4
  188. package/dist/upload/transaction/video-icon-err.svg +0 -4
  189. package/dist/upload/transaction/video-icon.svg +0 -4
  190. package/dist/wizard/invalid_icon.svg +0 -6
  191. package/dist/wizard/valid_icon.svg +0 -6
  192. package/dist/wizard/validation-wrong.svg +0 -6
@@ -35,16 +35,34 @@ var _Paper = _interopRequireDefault(require("@material-ui/core/Paper"));
35
35
 
36
36
  var _MenuList = _interopRequireDefault(require("@material-ui/core/MenuList"));
37
37
 
38
- require("../common/OpenSans.css");
39
-
40
38
  var _variables = require("../common/variables.js");
41
39
 
42
40
  var _utils = require("../common/utils.js");
43
41
 
44
42
  var _useTheme = _interopRequireDefault(require("../useTheme.js"));
45
43
 
44
+ function _templateObject10() {
45
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n display: ", ";\n margin-left: ", ";\n color: ", ";\n\n svg {\n width: ", ";\n height: ", ";\n }\n"]);
46
+
47
+ _templateObject10 = function _templateObject10() {
48
+ return data;
49
+ };
50
+
51
+ return data;
52
+ }
53
+
54
+ function _templateObject9() {
55
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n overflow: hidden;\n width: ", ";\n height: ", ";\n margin-left: ", ";\n margin-right: ", ";\n color: ", ";\n\n img,\n svg {\n height: 100%;\n width: 100%;\n }\n"]);
56
+
57
+ _templateObject9 = function _templateObject9() {
58
+ return data;
59
+ };
60
+
61
+ return data;
62
+ }
63
+
46
64
  function _templateObject8() {
47
- var data = (0, _taggedTemplateLiteral2["default"])(["\n display: ", ";\n margin-left: 10px;\n margin-right: 10px;\n & > svg {\n fill: ", ";\n }\n"]);
65
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n width: ", ";\n height: ", ";\n margin-left: ", ";\n margin-right: ", ";\n"]);
48
66
 
49
67
  _templateObject8 = function _templateObject8() {
50
68
  return data;
@@ -54,7 +72,7 @@ function _templateObject8() {
54
72
  }
55
73
 
56
74
  function _templateObject7() {
57
- var data = (0, _taggedTemplateLiteral2["default"])(["\n width: 20px;\n height: 20px;\n overflow: hidden;\n margin-right: ", ";\n margin-left: ", ";\n\n img,\n svg {\n height: 100%;\n width: 100%;\n }\n"]);
75
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n overflow: hidden;\n width: ", ";\n height: ", ";\n margin-left: ", ";\n margin-right: ", ";\n color: ", ";\n\n img,\n svg {\n height: 100%;\n width: 100%;\n }\n"]);
58
76
 
59
77
  _templateObject7 = function _templateObject7() {
60
78
  return data;
@@ -64,7 +82,7 @@ function _templateObject7() {
64
82
  }
65
83
 
66
84
  function _templateObject6() {
67
- var data = (0, _taggedTemplateLiteral2["default"])(["\n max-height: 20px;\n max-width: 20px;\n width: 20px;\n height: 20px;\n margin-right: ", ";\n margin-left: ", ";\n"]);
85
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n width: ", ";\n height: ", ";\n margin-left: ", ";\n margin-right: ", ";\n"]);
68
86
 
69
87
  _templateObject6 = function _templateObject6() {
70
88
  return data;
@@ -94,7 +112,7 @@ function _templateObject4() {
94
112
  }
95
113
 
96
114
  function _templateObject3() {
97
- var data = (0, _taggedTemplateLiteral2["default"])(["\n cursor: pointer;\n font-family: ", ";\n font-size: ", ";\n width: 100%;\n height: auto;\n min-height: 46px;\n display: inline-flex;\n justify-content: space-between;\n align-items: center;\n min-width: ", ";\n\n padding: ", ";\n &:focus {\n outline: none;\n }\n\n background-color: ", ";\n color: ", ";\n\n border: none;\n border-radius: 2px;\n border-bottom-right-radius: ", ";\n border-bottom-left-radius: ", ";\n &:hover {\n background-color: ", ";\n }\n"]);
115
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n justify-content: space-between;\n align-items: center;\n width: 100%;\n height: auto;\n min-height: 40px;\n cursor: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n border-radius: ", ";\n border-width: ", ";\n border-style: ", ";\n border-color: ", ";\n min-width: ", ";\n padding-top: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n padding-right: ", ";\n background-color: ", ";\n color: ", ";\n border-bottom-right-radius: ", ";\n border-bottom-left-radius: ", ";\n\n ", ";\n"]);
98
116
 
99
117
  _templateObject3 = function _templateObject3() {
100
118
  return data;
@@ -104,7 +122,7 @@ function _templateObject3() {
104
122
  }
105
123
 
106
124
  function _templateObject2() {
107
- var data = (0, _taggedTemplateLiteral2["default"])(["\n z-index: 1;\n\n .MuiMenuItem-gutters {\n width: ", ";\n }\n .MuiMenuItem-root {\n min-height: 46px;\n height: auto;\n }\n\n .MuiPaper-root {\n min-width: ", ";\n\n background-color: ", ";\n\n color: ", ";\n\n border-bottom-left-radius: 2px;\n border-bottom-right-radius: 2px;\n border-top-left-radius: 0px;\n border-top-right-radius: 0px;\n max-height: 230px;\n overflow: auto;\n .MuiList-padding {\n padding-top: 0px;\n padding-bottom: 0px;\n }\n .MuiListItem-button {\n display: flex;\n flex-direction: ", ";\n justify-content: ", ";\n font-size: ", ";\n font-family: ", ";\n cursor: pointer;\n }\n .MuiListItem-button:hover {\n background-color: ", ";\n color: ", ";\n }\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"]);
125
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n z-index: 1;\n\n .MuiMenuItem-gutters {\n width: ", ";\n }\n .MuiMenuItem-root {\n min-height: 36px;\n padding-top: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n padding-right: ", ";\n height: auto;\n }\n .MuiPaper-root {\n min-width: ", ";\n border-width: ", ";\n border-style: ", ";\n border-color: ", ";\n border-bottom-left-radius: ", ";\n border-bottom-right-radius: ", ";\n border-top-left-radius: 0px;\n border-top-right-radius: 0px;\n max-height: 230px;\n overflow-y: auto;\n\n ::-webkit-scrollbar {\n width: 3px;\n }\n ::-webkit-scrollbar-track {\n background-color: ", ";\n border-radius: 3px;\n }\n ::-webkit-scrollbar-thumb {\n background-color: ", ";\n border-radius: 3px;\n }\n\n .MuiList-padding {\n padding-top: 0px;\n padding-bottom: 0px;\n }\n .MuiListItem-button {\n display: flex;\n flex-direction: ", ";\n justify-content: ", ";\n background-color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n cursor: pointer;\n }\n .MuiListItem-button:focus {\n outline: ", " solid 2px;\n outline-offset: -2px;\n }\n .MuiListItem-button:hover {\n background-color: ", ";\n }\n .MuiListItem-button:active {\n background-color: ", ";\n outline: ", " solid 2px;\n outline-offset: -2px;\n }\n }\n"]);
108
126
 
109
127
  _templateObject2 = function _templateObject2() {
110
128
  return data;
@@ -114,7 +132,7 @@ function _templateObject2() {
114
132
  }
115
133
 
116
134
  function _templateObject() {
117
- var data = (0, _taggedTemplateLiteral2["default"])(["\n width: ", ";\n text-overflow: ellipsis;\n overflow: hidden;\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n display: inline-block;\n\n &:focus {\n outline: ", " auto 1px;\n }\n"]);
135
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n width: ", ";\n text-overflow: ellipsis;\n overflow: hidden;\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n display: inline-block;\n"]);
118
136
 
119
137
  _templateObject = function _templateObject() {
120
138
  return data;
@@ -135,6 +153,8 @@ var DxcDropdown = function DxcDropdown(_ref) {
135
153
  iconPosition = _ref$iconPosition === void 0 ? "before" : _ref$iconPosition,
136
154
  _ref$label = _ref.label,
137
155
  label = _ref$label === void 0 ? "" : _ref$label,
156
+ _ref$disabled = _ref.disabled,
157
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
138
158
  _ref$caretHidden = _ref.caretHidden,
139
159
  caretHidden = _ref$caretHidden === void 0 ? false : _ref$caretHidden,
140
160
  onSelectOption = _ref.onSelectOption,
@@ -159,8 +179,11 @@ var DxcDropdown = function DxcDropdown(_ref) {
159
179
  };
160
180
 
161
181
  (0, _react.useEffect)(function () {
162
- if (ref.current) ref.current.addEventListener("resize", handleResize);
163
- handleResize();
182
+ if (ref.current) {
183
+ ref.current.addEventListener("resize", handleResize);
184
+ handleResize();
185
+ }
186
+
164
187
  return function () {
165
188
  if (ref.current) ref.current.removeEventListener("resize", handleResize);
166
189
  };
@@ -194,7 +217,8 @@ var DxcDropdown = function DxcDropdown(_ref) {
194
217
  xmlns: "http://www.w3.org/2000/svg",
195
218
  width: "24",
196
219
  height: "24",
197
- viewBox: "0 0 24 24"
220
+ viewBox: "0 0 24 24",
221
+ fill: "currentColor"
198
222
  }, _react["default"].createElement("path", {
199
223
  d: "M7 14l5-5 5 5z"
200
224
  }), _react["default"].createElement("path", {
@@ -208,7 +232,8 @@ var DxcDropdown = function DxcDropdown(_ref) {
208
232
  xmlns: "http://www.w3.org/2000/svg",
209
233
  width: "24",
210
234
  height: "24",
211
- viewBox: "0 0 24 24"
235
+ viewBox: "0 0 24 24",
236
+ fill: "currentColor"
212
237
  }, _react["default"].createElement("path", {
213
238
  d: "M7 10l5 5 5-5z"
214
239
  }), _react["default"].createElement("path", {
@@ -219,17 +244,19 @@ var DxcDropdown = function DxcDropdown(_ref) {
219
244
 
220
245
  return _react["default"].createElement(_styledComponents.ThemeProvider, {
221
246
  theme: colorsTheme.dropdown
222
- }, _react["default"].createElement(DxCDropdownContainer, {
247
+ }, _react["default"].createElement(DXCDropdownContainer, {
223
248
  margin: margin,
224
- size: size
249
+ size: size,
250
+ disabled: disabled
225
251
  }, _react["default"].createElement("div", {
226
- onMouseOver: expandOnHover ? handleClickListItem : undefined,
252
+ onMouseOver: expandOnHover && !disabled ? handleClickListItem : undefined,
227
253
  onMouseOut: handleCloseOver,
228
254
  onFocus: handleCloseOver,
229
255
  onBlur: handleCloseOver
230
256
  }, _react["default"].createElement(DropdownTrigger, {
231
257
  opened: anchorEl === null ? false : true,
232
258
  onClick: handleClickListItem,
259
+ disabled: disabled,
233
260
  label: label,
234
261
  caretHidden: caretHidden,
235
262
  margin: margin,
@@ -239,23 +266,21 @@ var DxcDropdown = function DxcDropdown(_ref) {
239
266
  }, _react["default"].createElement(DropdownTriggerContainer, {
240
267
  iconPosition: iconPosition,
241
268
  caretHidden: caretHidden
242
- }, icon ? _react["default"].createElement(ListIconContainer, {
269
+ }, icon ? _react["default"].createElement(ButtonIconContainer, {
243
270
  label: label,
244
- iconPosition: iconPosition
245
- }, (0, _typeof2["default"])(icon) === "object" ? icon : _react["default"].createElement(icon)) : iconSrc && _react["default"].createElement(ListIcon, {
271
+ iconPosition: iconPosition,
272
+ disabled: disabled
273
+ }, (0, _typeof2["default"])(icon) === "object" ? icon : _react["default"].createElement(icon)) : iconSrc && _react["default"].createElement(ButtonIcon, {
246
274
  label: label,
247
275
  src: iconSrc,
248
276
  iconPosition: iconPosition
249
277
  }), _react["default"].createElement(DropdownTriggerLabel, {
250
278
  iconPosition: iconPosition,
251
279
  label: label
252
- }, label)), _react["default"].createElement(CaretIcon, null, caretHidden !== true && (anchorEl === null ? _react["default"].createElement(DownArrowIcon, {
253
- caretHidden: caretHidden,
254
- margin: margin
255
- }) : _react["default"].createElement(UpArrowIcon, {
280
+ }, label)), _react["default"].createElement(CaretIconContainer, {
256
281
  caretHidden: caretHidden,
257
- margin: margin
258
- })))), _react["default"].createElement(DxcMenu, {
282
+ disabled: disabled
283
+ }, !caretHidden && (anchorEl === null ? _react["default"].createElement(DownArrowIcon, null) : _react["default"].createElement(UpArrowIcon, null)))), _react["default"].createElement(DXCMenu, {
259
284
  anchorEl: anchorEl,
260
285
  open: Boolean(anchorEl),
261
286
  onClose: handleClose,
@@ -320,7 +345,7 @@ var calculateWidth = function calculateWidth(margin, size) {
320
345
  return sizes[size];
321
346
  };
322
347
 
323
- var DxCDropdownContainer = _styledComponents["default"].div(_templateObject(), function (props) {
348
+ var DXCDropdownContainer = _styledComponents["default"].div(_templateObject(), function (props) {
324
349
  return calculateWidth(props.margin, props.size);
325
350
  }, function (props) {
326
351
  return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
@@ -332,58 +357,98 @@ var DxCDropdownContainer = _styledComponents["default"].div(_templateObject(), f
332
357
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
333
358
  }, function (props) {
334
359
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
335
- }, function (props) {
336
- return props.theme.focusColor;
337
360
  });
338
361
 
339
- var DxcMenu = (0, _styledComponents["default"])(_Popper["default"])(_templateObject2(), function (props) {
362
+ var DXCMenu = (0, _styledComponents["default"])(_Popper["default"])(_templateObject2(), function (props) {
340
363
  return calculateWidth(props.margin, props.size);
364
+ }, function (props) {
365
+ return props.theme.optionPaddingTop;
366
+ }, function (props) {
367
+ return props.theme.optionPaddingBottom;
368
+ }, function (props) {
369
+ return props.theme.optionPaddingLeft;
370
+ }, function (props) {
371
+ return props.theme.optionPaddingRight;
341
372
  }, function (props) {
342
373
  return "".concat(props.width, "px");
343
374
  }, function (props) {
344
- return props.theme.dropdownBackgroundColor;
375
+ return props.theme.borderThickness;
376
+ }, function (props) {
377
+ return props.theme.borderStyle;
378
+ }, function (props) {
379
+ return props.theme.borderColor;
345
380
  }, function (props) {
346
- return props.theme.dropdownFontColor;
381
+ return props.theme.borderRadius;
382
+ }, function (props) {
383
+ return props.theme.borderRadius;
384
+ }, function (props) {
385
+ return props.theme.scrollBarTrackColor;
386
+ }, function (props) {
387
+ return props.theme.scrollBarThumbColor;
347
388
  }, function (props) {
348
389
  return props.optionsIconPosition === "after" && "row-reverse" || "row";
349
390
  }, function (props) {
350
391
  return props.optionsIconPosition === "after" && "flex-end" || "";
351
392
  }, function (props) {
352
- return props.theme.fontSize;
393
+ return props.theme.optionBackgroundColor;
353
394
  }, function (props) {
354
- return props.theme.fontFamily;
395
+ return props.theme.optionFontFamily;
355
396
  }, function (props) {
356
- return props.theme.hoverBackgroundOption;
397
+ return props.theme.optionFontSize;
357
398
  }, function (props) {
358
- return props.theme.dropdownFontColor;
399
+ return props.theme.optionFontStyle;
359
400
  }, function (props) {
360
- return props.theme.scrollBarTrackColor;
401
+ return props.theme.optionFontWeight;
361
402
  }, function (props) {
362
- return props.theme.scrollBarThumbColor;
403
+ return props.theme.optionFontColor;
404
+ }, function (props) {
405
+ return props.theme.focusColor;
406
+ }, function (props) {
407
+ return props.theme.hoverOptionBackgroundColor;
408
+ }, function (props) {
409
+ return props.theme.activeOptionBackgroundColor;
410
+ }, function (props) {
411
+ return props.theme.focusColor;
363
412
  });
364
413
 
365
414
  var DropdownTrigger = _styledComponents["default"].button(_templateObject3(), function (props) {
366
- return props.theme.fontFamily;
415
+ return props.disabled ? "not-allowed" : "pointer";
416
+ }, function (props) {
417
+ return props.theme.buttonFontFamily;
418
+ }, function (props) {
419
+ return props.theme.buttonFontSize;
420
+ }, function (props) {
421
+ return props.theme.buttonFontStyle;
422
+ }, function (props) {
423
+ return props.theme.buttonFontWeight;
424
+ }, function (props) {
425
+ return props.theme.borderRadius;
426
+ }, function (props) {
427
+ return props.theme.borderThickness;
367
428
  }, function (props) {
368
- return props.theme.fontSize;
429
+ return props.theme.borderStyle;
430
+ }, function (props) {
431
+ return props.disabled ? props.theme.disabledBorderColor : props.theme.borderColor;
369
432
  }, function (props) {
370
433
  return props.label === "" ? "0px" : calculateWidth(props.margin, props.size);
371
434
  }, function (props) {
372
- if (props.caretHidden === true && props.label === "") {
373
- return "10px 15px";
374
- } else {
375
- return "10px 15px 10px 20px";
376
- }
435
+ return props.theme.buttonPaddingTop;
436
+ }, function (props) {
437
+ return props.theme.buttonPaddingBottom;
438
+ }, function (props) {
439
+ return props.theme.buttonPaddingLeft;
440
+ }, function (props) {
441
+ return props.theme.buttonPaddingRight;
377
442
  }, function (props) {
378
- return props.opened === true ? props.theme.hoverBackgroundColor : props.theme.backgroundColor;
443
+ return props.disabled ? props.theme.disabledButtonBackgroundColor : props.theme.buttonBackgroundColor;
379
444
  }, function (props) {
380
- return props.theme.fontColor;
445
+ return props.disabled ? props.theme.disabledColor : props.theme.buttonFontColor;
381
446
  }, function (props) {
382
- return props.opened === true ? "0px" : "2px";
447
+ return props.opened ? "0px" : props.theme.borderRadius;
383
448
  }, function (props) {
384
- return props.opened === true ? "0px" : "2px";
449
+ return props.opened ? "0px" : props.theme.borderRadius;
385
450
  }, function (props) {
386
- return props.theme.hoverBackgroundColor;
451
+ return !props.disabled && " \n &:focus {\n outline: none;\n }\n &:focus-visible {\n outline: ".concat(props.theme.focusColor, " solid 2px;\n outline-offset: -2px;\n }\n &:hover {\n background-color: ").concat(props.theme.hoverButtonBackgroundColor, ";\n }\n &:active {\n background-color: ").concat(props.theme.activeButtonBackgroundColor, ";\n }\n ");
387
452
  });
388
453
 
389
454
  var DropdownTriggerLabel = _styledComponents["default"].span(_templateObject4());
@@ -391,41 +456,63 @@ var DropdownTriggerLabel = _styledComponents["default"].span(_templateObject4())
391
456
  var DropdownTriggerContainer = _styledComponents["default"].span(_templateObject5(), function (props) {
392
457
  return props.iconPosition === "after" && "row-reverse" || "row";
393
458
  }, function (props) {
394
- return props.caretHidden ? "100%" : "calc(100% - 44px)";
459
+ return props.caretHidden ? "100%" : "calc(100% - 36px)";
395
460
  });
396
461
 
397
- var ListIcon = _styledComponents["default"].img(_templateObject6(), function (props) {
398
- if (props.iconPosition === "before" && props.label !== "") {
399
- return "10px";
400
- } else {
401
- return "0px";
402
- }
462
+ var ButtonIcon = _styledComponents["default"].img(_templateObject6(), function (props) {
463
+ return props.theme.buttonIconSize;
403
464
  }, function (props) {
404
- if (props.iconPosition === "after" && props.label !== "") {
405
- return "10px";
406
- } else {
407
- return "0px";
408
- }
465
+ return props.theme.buttonIconSize;
466
+ }, function (props) {
467
+ return props.iconPosition === "after" && props.label !== "" && props.theme.buttonIconSpacing || "0px";
468
+ }, function (props) {
469
+ return props.iconPosition === "before" && props.label !== "" && props.theme.buttonIconSpacing || "0px";
409
470
  });
410
471
 
411
- var ListIconContainer = _styledComponents["default"].div(_templateObject7(), function (props) {
412
- if (props.iconPosition === "before" && props.label !== "") {
413
- return "10px";
414
- } else {
415
- return "0px";
416
- }
472
+ var ButtonIconContainer = _styledComponents["default"].div(_templateObject7(), function (props) {
473
+ return props.theme.buttonIconSize;
417
474
  }, function (props) {
418
- if (props.iconPosition === "after" && props.label !== "") {
419
- return "10px";
420
- } else {
421
- return "0px";
422
- }
475
+ return props.theme.buttonIconSize;
476
+ }, function (props) {
477
+ return props.iconPosition === "after" && props.label !== "" && props.theme.buttonIconSpacing || "0px";
478
+ }, function (props) {
479
+ return props.iconPosition === "before" && props.label !== "" && props.theme.buttonIconSpacing || "0px";
480
+ }, function (props) {
481
+ return props.disabled ? props.theme.disabledColor : props.theme.buttonIconColor;
482
+ });
483
+
484
+ var ListIcon = _styledComponents["default"].img(_templateObject8(), function (props) {
485
+ return props.theme.optionIconSize;
486
+ }, function (props) {
487
+ return props.theme.optionIconSize;
488
+ }, function (props) {
489
+ return props.iconPosition === "after" && props.label !== "" && props.theme.optionIconSpacing || "0px";
490
+ }, function (props) {
491
+ return props.iconPosition === "before" && props.label !== "" && props.theme.optionIconSpacing || "0px";
423
492
  });
424
493
 
425
- var CaretIcon = _styledComponents["default"].div(_templateObject8(), function (props) {
426
- return props.caretHidden === true ? "none" : "inline-flex";
494
+ var ListIconContainer = _styledComponents["default"].div(_templateObject9(), function (props) {
495
+ return props.theme.optionIconSize;
496
+ }, function (props) {
497
+ return props.theme.optionIconSize;
498
+ }, function (props) {
499
+ return props.iconPosition === "after" && props.label !== "" && props.theme.optionIconSpacing || "0px";
500
+ }, function (props) {
501
+ return props.iconPosition === "before" && props.label !== "" && props.theme.optionIconSpacing || "0px";
502
+ }, function (props) {
503
+ return props.theme.optionIconColor;
504
+ });
505
+
506
+ var CaretIconContainer = _styledComponents["default"].div(_templateObject10(), function (props) {
507
+ return props.caretHidden ? "none" : "inline-flex";
508
+ }, function (props) {
509
+ return props.theme.caretIconSpacing;
510
+ }, function (props) {
511
+ return props.disabled ? props.theme.disabledColor : props.theme.caretIconColor;
512
+ }, function (props) {
513
+ return props.theme.caretIconSize;
427
514
  }, function (props) {
428
- return props.theme.fontColor;
515
+ return props.theme.caretIconSize;
429
516
  });
430
517
 
431
518
  DxcDropdown.propTypes = {
@@ -442,6 +529,7 @@ DxcDropdown.propTypes = {
442
529
  iconPosition: _propTypes["default"].oneOf(["after", "before", ""]),
443
530
  label: _propTypes["default"].string,
444
531
  caretHidden: _propTypes["default"].bool,
532
+ disabled: _propTypes["default"].bool,
445
533
  expandOnHover: _propTypes["default"].bool,
446
534
  onSelectOption: _propTypes["default"].func,
447
535
  options: _propTypes["default"].arrayOf(_propTypes["default"].shape({