@dxc-technology/halstack-react 0.0.0-c8db8a2 → 0.0.0-cc01d9c

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 (219) hide show
  1. package/dist/ThemeContext.js +134 -100
  2. package/dist/V3Select/V3Select.js +549 -0
  3. package/dist/V3Select/index.d.ts +27 -0
  4. package/dist/V3Textarea/V3Textarea.js +264 -0
  5. package/dist/V3Textarea/index.d.ts +27 -0
  6. package/dist/accordion/Accordion.js +80 -83
  7. package/dist/accordion/index.d.ts +28 -0
  8. package/dist/accordion-group/AccordionGroup.js +1 -3
  9. package/dist/accordion-group/index.d.ts +16 -0
  10. package/dist/alert/Alert.js +126 -111
  11. package/dist/alert/index.d.ts +51 -0
  12. package/dist/badge/Badge.js +3 -1
  13. package/dist/box/Box.js +1 -9
  14. package/dist/box/index.d.ts +25 -0
  15. package/dist/button/Button.js +32 -22
  16. package/dist/button/index.d.ts +24 -0
  17. package/dist/card/Card.js +15 -8
  18. package/dist/card/index.d.ts +22 -0
  19. package/dist/checkbox/Checkbox.js +33 -25
  20. package/dist/checkbox/index.d.ts +24 -0
  21. package/dist/chip/Chip.js +37 -49
  22. package/dist/chip/index.d.ts +22 -0
  23. package/dist/common/variables.js +1023 -583
  24. package/dist/date/Date.js +60 -40
  25. package/dist/date/index.d.ts +27 -0
  26. package/dist/date-input/DateInput.js +400 -0
  27. package/dist/date-input/index.d.ts +95 -0
  28. package/dist/dialog/Dialog.js +21 -39
  29. package/dist/dialog/index.d.ts +18 -0
  30. package/dist/dropdown/Dropdown.js +129 -83
  31. package/dist/dropdown/index.d.ts +26 -0
  32. package/dist/file-input/FileInput.js +644 -0
  33. package/dist/file-input/FileItem.js +287 -0
  34. package/dist/file-input/index.d.ts +81 -0
  35. package/dist/footer/Footer.js +69 -53
  36. package/dist/footer/Icons.js +77 -0
  37. package/dist/footer/index.d.ts +25 -0
  38. package/dist/header/Header.js +123 -84
  39. package/dist/header/Icons.js +59 -0
  40. package/dist/header/index.d.ts +25 -0
  41. package/dist/heading/Heading.js +13 -5
  42. package/dist/heading/index.d.ts +17 -0
  43. package/dist/input-text/Icons.js +22 -0
  44. package/dist/input-text/InputText.js +131 -57
  45. package/dist/input-text/index.d.ts +36 -0
  46. package/dist/layout/ApplicationLayout.js +5 -9
  47. package/dist/layout/Icons.js +55 -0
  48. package/dist/link/Link.js +71 -46
  49. package/dist/link/index.d.ts +23 -0
  50. package/dist/main.d.ts +40 -0
  51. package/dist/main.js +63 -15
  52. package/dist/number-input/NumberInput.js +136 -0
  53. package/dist/number-input/NumberInputContext.js +16 -0
  54. package/dist/number-input/index.d.ts +113 -0
  55. package/dist/paginator/Icons.js +66 -0
  56. package/dist/paginator/Paginator.js +17 -17
  57. package/dist/paginator/index.d.ts +20 -0
  58. package/dist/password-input/PasswordInput.js +203 -0
  59. package/dist/password-input/index.d.ts +94 -0
  60. package/dist/progress-bar/ProgressBar.js +63 -27
  61. package/dist/progress-bar/index.d.ts +18 -0
  62. package/dist/radio/Radio.js +2 -2
  63. package/dist/radio/index.d.ts +23 -0
  64. package/dist/resultsetTable/ResultsetTable.js +64 -38
  65. package/dist/resultsetTable/index.d.ts +19 -0
  66. package/dist/select/Select.js +879 -308
  67. package/dist/select/index.d.ts +53 -0
  68. package/dist/sidenav/Sidenav.js +11 -15
  69. package/dist/sidenav/index.d.ts +13 -0
  70. package/dist/slider/Slider.js +159 -70
  71. package/dist/slider/index.d.ts +29 -0
  72. package/dist/spinner/Spinner.js +226 -59
  73. package/dist/spinner/index.d.ts +17 -0
  74. package/dist/switch/Switch.js +3 -3
  75. package/dist/switch/index.d.ts +24 -0
  76. package/dist/table/Table.js +19 -5
  77. package/dist/table/index.d.ts +13 -0
  78. package/dist/tabs/Tabs.js +4 -8
  79. package/dist/tabs/index.d.ts +19 -0
  80. package/dist/tag/Tag.js +38 -36
  81. package/dist/tag/index.d.ts +24 -0
  82. package/dist/text-input/TextInput.js +974 -0
  83. package/dist/text-input/index.d.ts +135 -0
  84. package/dist/textarea/Textarea.js +233 -124
  85. package/dist/textarea/index.d.ts +117 -0
  86. package/dist/toggle/index.d.ts +21 -0
  87. package/dist/toggle-group/ToggleGroup.js +130 -44
  88. package/dist/toggle-group/index.d.ts +21 -0
  89. package/dist/upload/buttons-upload/ButtonsUpload.js +13 -13
  90. package/dist/upload/buttons-upload/Icons.js +40 -0
  91. package/dist/upload/dragAndDropArea/DragAndDropArea.js +27 -23
  92. package/dist/upload/dragAndDropArea/Icons.js +39 -0
  93. package/dist/upload/file-upload/FileToUpload.js +29 -24
  94. package/dist/upload/file-upload/Icons.js +66 -0
  95. package/dist/upload/index.d.ts +15 -0
  96. package/dist/upload/transaction/Icons.js +160 -0
  97. package/dist/upload/transaction/Transaction.js +19 -42
  98. package/dist/upload/transactions/Transactions.js +11 -11
  99. package/dist/wizard/Icons.js +65 -0
  100. package/dist/wizard/Wizard.js +85 -63
  101. package/dist/wizard/index.d.ts +18 -0
  102. package/package.json +8 -10
  103. package/test/Date.test.js +15 -13
  104. package/test/DateInput.test.js +242 -0
  105. package/test/Dropdown.test.js +15 -0
  106. package/test/FileInput.test.js +201 -0
  107. package/test/Footer.test.js +2 -7
  108. package/test/Header.test.js +5 -10
  109. package/test/Heading.test.js +60 -12
  110. package/test/Link.test.js +3 -2
  111. package/test/NumberInput.test.js +259 -0
  112. package/test/Paginator.test.js +1 -1
  113. package/test/PasswordInput.test.js +83 -0
  114. package/test/ResultsetTable.test.js +1 -2
  115. package/test/Select.test.js +371 -148
  116. package/test/Slider.test.js +9 -17
  117. package/test/Spinner.test.js +5 -0
  118. package/test/TextInput.test.js +732 -0
  119. package/test/Textarea.test.js +193 -0
  120. package/test/ToggleGroup.test.js +5 -1
  121. package/test/Upload.test.js +1 -1
  122. package/test/V3Select.test.js +212 -0
  123. package/test/{TextArea.test.js → V3TextArea.test.js} +6 -7
  124. package/dist/accordion/Accordion.stories.js +0 -207
  125. package/dist/accordion/readme.md +0 -96
  126. package/dist/accordion-group/AccordionGroup.stories.js +0 -207
  127. package/dist/accordion-group/readme.md +0 -70
  128. package/dist/alert/Alert.stories.js +0 -158
  129. package/dist/alert/close.svg +0 -4
  130. package/dist/alert/error.svg +0 -4
  131. package/dist/alert/info.svg +0 -4
  132. package/dist/alert/readme.md +0 -43
  133. package/dist/alert/success.svg +0 -4
  134. package/dist/alert/warning.svg +0 -4
  135. package/dist/button/Button.stories.js +0 -224
  136. package/dist/button/readme.md +0 -93
  137. package/dist/checkbox/Checkbox.stories.js +0 -144
  138. package/dist/checkbox/readme.md +0 -116
  139. package/dist/date/Date.stories.js +0 -205
  140. package/dist/date/calendar.svg +0 -1
  141. package/dist/date/calendar_dark.svg +0 -1
  142. package/dist/date/readme.md +0 -73
  143. package/dist/dialog/Dialog.stories.js +0 -217
  144. package/dist/dialog/readme.md +0 -32
  145. package/dist/dropdown/Dropdown.stories.js +0 -249
  146. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  147. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  148. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  149. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  150. package/dist/dropdown/readme.md +0 -69
  151. package/dist/footer/Footer.stories.js +0 -94
  152. package/dist/footer/dxc_logo_wht.png +0 -0
  153. package/dist/footer/readme.md +0 -41
  154. package/dist/header/Header.stories.js +0 -176
  155. package/dist/header/close_icon.svg +0 -1
  156. package/dist/header/dxc_logo_black.png +0 -0
  157. package/dist/header/dxc_logo_blk_rgb.svg +0 -6
  158. package/dist/header/dxc_logo_white.png +0 -0
  159. package/dist/header/hamb_menu_black.svg +0 -1
  160. package/dist/header/hamb_menu_white.svg +0 -1
  161. package/dist/header/readme.md +0 -33
  162. package/dist/input-text/InputText.stories.js +0 -209
  163. package/dist/input-text/error.svg +0 -1
  164. package/dist/input-text/readme.md +0 -91
  165. package/dist/layout/facebook.svg +0 -45
  166. package/dist/layout/linkedin.svg +0 -50
  167. package/dist/layout/twitter.svg +0 -53
  168. package/dist/link/readme.md +0 -51
  169. package/dist/paginator/images/next.svg +0 -3
  170. package/dist/paginator/images/nextPage.svg +0 -3
  171. package/dist/paginator/images/previous.svg +0 -3
  172. package/dist/paginator/images/previousPage.svg +0 -3
  173. package/dist/paginator/readme.md +0 -50
  174. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  175. package/dist/progress-bar/readme.md +0 -63
  176. package/dist/radio/Radio.stories.js +0 -166
  177. package/dist/radio/readme.md +0 -70
  178. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  179. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  180. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  181. package/dist/select/Select.stories.js +0 -235
  182. package/dist/select/readme.md +0 -72
  183. package/dist/slider/Slider.stories.js +0 -241
  184. package/dist/slider/readme.md +0 -64
  185. package/dist/spinner/Spinner.stories.js +0 -183
  186. package/dist/spinner/readme.md +0 -65
  187. package/dist/switch/Switch.stories.js +0 -134
  188. package/dist/switch/readme.md +0 -133
  189. package/dist/tabs/Tabs.stories.js +0 -130
  190. package/dist/tabs/readme.md +0 -78
  191. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  192. package/dist/tabs-for-sections/readme.md +0 -78
  193. package/dist/toggle/Toggle.stories.js +0 -297
  194. package/dist/toggle/readme.md +0 -80
  195. package/dist/toggle-group/readme.md +0 -82
  196. package/dist/upload/Upload.stories.js +0 -72
  197. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  198. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  199. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  200. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  201. package/dist/upload/file-upload/audio-icon.svg +0 -4
  202. package/dist/upload/file-upload/close.svg +0 -4
  203. package/dist/upload/file-upload/file-icon.svg +0 -4
  204. package/dist/upload/file-upload/video-icon.svg +0 -4
  205. package/dist/upload/readme.md +0 -37
  206. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  207. package/dist/upload/transaction/audio-icon.svg +0 -4
  208. package/dist/upload/transaction/error-icon.svg +0 -4
  209. package/dist/upload/transaction/file-icon-err.svg +0 -4
  210. package/dist/upload/transaction/file-icon.svg +0 -4
  211. package/dist/upload/transaction/image-icon-err.svg +0 -4
  212. package/dist/upload/transaction/image-icon.svg +0 -4
  213. package/dist/upload/transaction/success-icon.svg +0 -4
  214. package/dist/upload/transaction/video-icon-err.svg +0 -4
  215. package/dist/upload/transaction/video-icon.svg +0 -4
  216. package/dist/wizard/invalid_icon.svg +0 -6
  217. package/dist/wizard/valid_icon.svg +0 -6
  218. package/dist/wizard/validation-wrong.svg +0 -6
  219. package/test/TabsForSections.test.js +0 -34
@@ -0,0 +1,95 @@
1
+ type Size = "small" | "medium" | "large" | "fillParent";
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
+ /**
12
+ * Text to be placed above the date.
13
+ */
14
+ label?: string;
15
+ /**
16
+ * Name attribute of the input element.
17
+ */
18
+ name?: string;
19
+ /**
20
+ * Value of the input element. If undefined, the component will be uncontrolled and the value will be managed internally by the component.
21
+ */
22
+ value?: string;
23
+ /**
24
+ * The format in which the date value will be displayed. User must use this format when editing the value or it will be considered as an invalid date.
25
+ */
26
+ format?: string;
27
+ /**
28
+ * Helper text to be placed above the date.
29
+ */
30
+ helperText?: string;
31
+ /**
32
+ * If true, the date format will appear as placeholder in the field.
33
+ */
34
+ placeholder?: boolean;
35
+ /**
36
+ * If true, the date input will have an action to clear the entered value.
37
+ */
38
+ clearable?: boolean;
39
+ /**
40
+ * If true, the component will be disabled.
41
+ */
42
+ disabled?: boolean;
43
+ /**
44
+ * If true, the date will be optional, showing '(Optional)'
45
+ * next to the label. Otherwise, the field will be considered required and an error will be
46
+ * passed as a parameter to the OnBlur and onChange functions when it has
47
+ * not been filled.
48
+ */
49
+ optional?: boolean;
50
+ /**
51
+ * This function will be called when the user types within the input
52
+ * element of the component. An object including the string value, the
53
+ * error and the date value will be passed to this function.
54
+ * If the string value is a valid date, error will
55
+ * be null. Also, if the string value is not a valid date, date will be null.
56
+ */
57
+ onChange?: (val: { value: string; error: string; date: Date }) => void;
58
+ /**
59
+ * This function will be called when the input element loses the focus.
60
+ * An object including the string value, the error and the date value
61
+ * will be passed to this function. If the string value is a valid date, error will
62
+ * be null. Also, if the string value is not a valid date, date will be null.
63
+ */
64
+ onBlur?: (val: { value: string; error: string; date: Date }) => void;
65
+ /**
66
+ * If it is defined, the component will change its appearance, showing
67
+ * the error below the date input component. If it is not defined, the error
68
+ * messages will be managed internally, but never displayed on its own.
69
+ */
70
+ error?: string;
71
+ /**
72
+ * HTML autocomplete attribute. Lets the user specify if any permission the user agent has to provide automated assistance in filling out the input value.
73
+ * Its value must be one of all the possible values of the HTML autocomplete attribute: 'on', 'off', 'email', 'username', 'new-password', ...
74
+ */
75
+ autocomplete?: string;
76
+ /**
77
+ * Size of the margin to be applied to the component ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
78
+ * You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different margin sizes.
79
+ */
80
+ margin?: Space | Margin;
81
+ /**
82
+ * Size of the component ('medium' | 'large' | 'fillParent').
83
+ */
84
+ size?: Size;
85
+ /**
86
+ * Value of the tabindex attribute.
87
+ */
88
+ tabIndex?: number;
89
+ /**
90
+ * Reference to the component.
91
+ */
92
+ ref?: React.RefObject<HTMLDivElement>;
93
+ };
94
+
95
+ export default function DxcDateInput(props: Props): JSX.Element;
@@ -29,8 +29,10 @@ var _variables = require("../common/variables.js");
29
29
 
30
30
  var _useTheme = _interopRequireDefault(require("../useTheme.js"));
31
31
 
32
+ var _BackgroundColorContext = require("../BackgroundColorContext.js");
33
+
32
34
  function _templateObject4() {
33
- var data = (0, _taggedTemplateLiteral2["default"])(["\n background-color: ", ";\n width: ", ";\n height: ", ";\n border-radius: ", ";\n border-width: ", ";\n border-style: ", ";\n border-color: ", ";\n\n"]);
35
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n background-color: ", ";\n width: ", ";\n height: ", ";\n border-radius: ", ";\n border-width: ", ";\n border-style: ", ";\n border-color: ", ";\n"]);
34
36
 
35
37
  _templateObject4 = function _templateObject4() {
36
38
  return data;
@@ -40,7 +42,7 @@ function _templateObject4() {
40
42
  }
41
43
 
42
44
  function _templateObject3() {
43
- var data = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n display: flex;\n justify-content: flex-end;\n position: absolute;\n top: ", ";\n right: ", ";\n cursor: pointer;\n padding: 0;\n margin: 0;\n background: none;\n width: ", ";\n height: ", ";\n border: none;\n"]);
45
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n justify-content: flex-end;\n position: absolute;\n top: ", ";\n right: ", ";\n cursor: pointer;\n padding: 0;\n margin: 0;\n background: none;\n color: ", ";\n width: ", ";\n height: ", ";\n border: none;\n"]);
44
46
 
45
47
  _templateObject3 = function _templateObject3() {
46
48
  return data;
@@ -50,7 +52,7 @@ function _templateObject3() {
50
52
  }
51
53
 
52
54
  function _templateObject2() {
53
- var data = (0, _taggedTemplateLiteral2["default"])(["\n overflow-y: auto;\n font-family: ", ";\n font-size:", ";\n font-weight: ", ";\n color: ", ";\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 ::-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"]);
55
+ var data = (0, _taggedTemplateLiteral2["default"])([""]);
54
56
 
55
57
  _templateObject2 = function _templateObject2() {
56
58
  return data;
@@ -60,7 +62,7 @@ function _templateObject2() {
60
62
  }
61
63
 
62
64
  function _templateObject() {
63
- var data = (0, _taggedTemplateLiteral2["default"])(["\n overflow: unset;\n font-family: ", ";\n \n .MuiBackdrop-root {\n background-color: ", ";\n opacity: ", " !important;\n }\n .MuiDialog-paperWidthSm {\n background-color: ", ";\n max-width: ", ";\n min-width: ", ";\n box-sizing: border-box;\n min-height: ", ";\n box-shadow: ", ";\n\n padding: ", ";\n padding-top: ", ";\n padding-right: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n }\n"]);
65
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n overflow: unset;\n font-family: ", ";\n\n .MuiBackdrop-root {\n background-color: ", ";\n opacity: ", " !important;\n }\n .MuiDialog-paperWidthSm {\n background-color: ", ";\n max-width: ", ";\n min-width: ", ";\n box-sizing: border-box;\n min-height: ", ";\n box-shadow: ", ";\n\n padding: ", ";\n padding-top: ", ";\n padding-right: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n }\n"]);
64
66
 
65
67
  _templateObject = function _templateObject() {
66
68
  return data;
@@ -89,21 +91,15 @@ var DxcDialog = function DxcDialog(_ref) {
89
91
  var colorsTheme = (0, _useTheme["default"])();
90
92
 
91
93
  var handleClose = function handleClose() {
92
- if (typeof onCloseClick === "function") {
93
- onCloseClick();
94
- }
94
+ typeof onCloseClick === "function" && onCloseClick();
95
95
  };
96
96
 
97
97
  var handleOverlayClick = function handleOverlayClick() {
98
- if (typeof onBackgroundClick === "function") {
99
- onBackgroundClick();
100
- }
98
+ typeof onBackgroundClick === "function" && onBackgroundClick();
101
99
  };
102
100
 
103
101
  var handleResize = function handleResize(width) {
104
- if (width) {
105
- if (width <= _variables.responsiveSizes.tablet ? setIsResponsive(true) : setIsResponsive(false)) ;
106
- }
102
+ width && width <= _variables.responsiveSizes.tablet ? setIsResponsive(true) : setIsResponsive(false);
107
103
  };
108
104
 
109
105
  var handleEventListener = function handleEventListener() {
@@ -133,14 +129,16 @@ var DxcDialog = function DxcDialog(_ref) {
133
129
  xmlns: "http://www.w3.org/2000/svg",
134
130
  width: "24",
135
131
  height: "24",
136
- viewBox: "0 0 24 24"
137
- }, _react["default"].createElement("path", {
138
- d: "M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z",
132
+ viewBox: "0 0 24 24",
139
133
  fill: "currentColor"
140
- }), _react["default"].createElement("path", {
141
- d: "M0 0h24v24H0z",
134
+ }, _react["default"].createElement("path", {
135
+ d: "M0 0h24v24H0V0z",
142
136
  fill: "none"
143
- }))), _react["default"].createElement(Children, null, children)));
137
+ }), _react["default"].createElement("path", {
138
+ d: "M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41z"
139
+ }))), _react["default"].createElement(Children, null, _react["default"].createElement(_BackgroundColorContext.BackgroundColorProvider, {
140
+ color: colorsTheme.dialog.backgroundColor
141
+ }, children))));
144
142
  };
145
143
 
146
144
  var DialogContainer = (0, _styledComponents["default"])(_Dialog["default"])(_templateObject(), function (props) {
@@ -160,7 +158,7 @@ var DialogContainer = (0, _styledComponents["default"])(_Dialog["default"])(_tem
160
158
  }, function (props) {
161
159
  return "".concat(props.theme.boxShadowOffsetX, " ").concat(props.theme.boxShadowOffsetY, " ").concat(props.theme.boxShadowBlur, " ").concat(props.theme.boxShadowColor);
162
160
  }, function (props) {
163
- return props.padding && (0, _typeof2["default"])(props.padding) !== "object" ? _variables.spaces[props.padding] : "0px";
161
+ return props.padding && (0, _typeof2["default"])(props.padding) !== "object" ? _variables.spaces[props.padding] : _variables.spaces["small"];
164
162
  }, function (props) {
165
163
  return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.top ? _variables.spaces[props.padding.top] : "";
166
164
  }, function (props) {
@@ -171,30 +169,14 @@ var DialogContainer = (0, _styledComponents["default"])(_Dialog["default"])(_tem
171
169
  return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.left ? _variables.spaces[props.padding.left] : "";
172
170
  });
173
171
 
174
- var Children = _styledComponents["default"].div(_templateObject2(), function (props) {
175
- return props.theme.fontFamily;
176
- }, function (props) {
177
- return props.theme.fontSize;
178
- }, function (props) {
179
- return props.theme.fontWeight;
180
- }, function (props) {
181
- return props.theme.fontColor;
182
- }, function (props) {
183
- return props.theme.scrollBarTrackColor;
184
- }, function (props) {
185
- return props.theme.scrollBarThumbColor;
186
- }, function (props) {
187
- return props.theme.scrollBarTrackColor;
188
- }, function (props) {
189
- return props.theme.scrollBarThumbColor;
190
- });
172
+ var Children = _styledComponents["default"].div(_templateObject2());
191
173
 
192
174
  var CloseIconContainer = _styledComponents["default"].button(_templateObject3(), function (props) {
193
- return props.theme.closeIconColor;
194
- }, function (props) {
195
175
  return props.theme.closeIconTopPosition;
196
176
  }, function (props) {
197
177
  return props.theme.closeIconRightPosition;
178
+ }, function (props) {
179
+ return props.theme.closeIconColor;
198
180
  }, function (props) {
199
181
  return props.theme.closeIconWidth;
200
182
  }, function (props) {
@@ -0,0 +1,18 @@
1
+ type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
2
+ type Padding = {
3
+ top?: Space;
4
+ bottom?: Space;
5
+ left?: Space;
6
+ right?: Space;
7
+ };
8
+
9
+ type Props = {
10
+ isCloseVisible?: boolean;
11
+ onCloseClick?: void;
12
+ overlay?: boolean;
13
+ onBackgroundClick?: void;
14
+ padding?: Padding,
15
+ tabIndex?: number;
16
+ };
17
+
18
+ export default function DxcDialog(props: Props): JSX.Element;
@@ -41,8 +41,28 @@ var _utils = require("../common/utils.js");
41
41
 
42
42
  var _useTheme = _interopRequireDefault(require("../useTheme.js"));
43
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
+
44
64
  function _templateObject8() {
45
- var data = (0, _taggedTemplateLiteral2["default"])(["\n display: ", ";\n margin-top:", ";\n margin-bottom", ";\n margin-left: ", ";\n margin-right: ", ";\n & > svg {\n fill: ", ";\n }\n"]);
65
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n width: ", ";\n height: ", ";\n margin-left: ", ";\n margin-right: ", ";\n"]);
46
66
 
47
67
  _templateObject8 = function _templateObject8() {
48
68
  return data;
@@ -52,7 +72,7 @@ function _templateObject8() {
52
72
  }
53
73
 
54
74
  function _templateObject7() {
55
- 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"]);
56
76
 
57
77
  _templateObject7 = function _templateObject7() {
58
78
  return data;
@@ -62,7 +82,7 @@ function _templateObject7() {
62
82
  }
63
83
 
64
84
  function _templateObject6() {
65
- 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"]);
66
86
 
67
87
  _templateObject6 = function _templateObject6() {
68
88
  return data;
@@ -92,7 +112,7 @@ function _templateObject4() {
92
112
  }
93
113
 
94
114
  function _templateObject3() {
95
- var data = (0, _taggedTemplateLiteral2["default"])(["\n cursor: pointer;\n font-family: ", ";\n font-size: ", ";\n font-style:", ";\n font-weight:", ";\n width: 100%;\n height: auto;\n min-height: 46px;\n display: inline-flex;\n justify-content: space-between;\n align-items: center;\n border-radius: ", ";\n border-width: ", ";\n border-style: ", ";\n border-color: ", ";\n\n min-width: ", ";\n\n padding-top: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n padding-right: ", ";\n &:focus {\n outline: none;\n }\n\n background-color: ", ";\n color: ", ";\n\n\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"]);
96
116
 
97
117
  _templateObject3 = function _templateObject3() {
98
118
  return data;
@@ -102,7 +122,7 @@ function _templateObject3() {
102
122
  }
103
123
 
104
124
  function _templateObject2() {
105
- var data = (0, _taggedTemplateLiteral2["default"])(["\n z-index: 1;\n\n .MuiMenuItem-gutters {\n width: ", ";\n }\n .MuiMenuItem-root {\n min-height: 46px;\n padding-top:", ";\n padding-bottom:", ";\n padding-left:", ";\n padding-right:", ";\n height: auto;\n }\n\n .MuiPaper-root {\n min-width: ", ";\n\n background-color: ", ";\n\n color: ", ";\n border-width: ", ";\n border-style: ", ";\n border-color: ", ";\n \n\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: 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-style:", ";\n font-weight: ", ";\n color:", ";\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"]);
106
126
 
107
127
  _templateObject2 = function _templateObject2() {
108
128
  return data;
@@ -112,7 +132,7 @@ function _templateObject2() {
112
132
  }
113
133
 
114
134
  function _templateObject() {
115
- 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"]);
116
136
 
117
137
  _templateObject = function _templateObject() {
118
138
  return data;
@@ -133,6 +153,8 @@ var DxcDropdown = function DxcDropdown(_ref) {
133
153
  iconPosition = _ref$iconPosition === void 0 ? "before" : _ref$iconPosition,
134
154
  _ref$label = _ref.label,
135
155
  label = _ref$label === void 0 ? "" : _ref$label,
156
+ _ref$disabled = _ref.disabled,
157
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
136
158
  _ref$caretHidden = _ref.caretHidden,
137
159
  caretHidden = _ref$caretHidden === void 0 ? false : _ref$caretHidden,
138
160
  onSelectOption = _ref.onSelectOption,
@@ -157,8 +179,11 @@ var DxcDropdown = function DxcDropdown(_ref) {
157
179
  };
158
180
 
159
181
  (0, _react.useEffect)(function () {
160
- if (ref.current) ref.current.addEventListener("resize", handleResize);
161
- handleResize();
182
+ if (ref.current) {
183
+ ref.current.addEventListener("resize", handleResize);
184
+ handleResize();
185
+ }
186
+
162
187
  return function () {
163
188
  if (ref.current) ref.current.removeEventListener("resize", handleResize);
164
189
  };
@@ -192,7 +217,8 @@ var DxcDropdown = function DxcDropdown(_ref) {
192
217
  xmlns: "http://www.w3.org/2000/svg",
193
218
  width: "24",
194
219
  height: "24",
195
- viewBox: "0 0 24 24"
220
+ viewBox: "0 0 24 24",
221
+ fill: "currentColor"
196
222
  }, _react["default"].createElement("path", {
197
223
  d: "M7 14l5-5 5 5z"
198
224
  }), _react["default"].createElement("path", {
@@ -206,7 +232,8 @@ var DxcDropdown = function DxcDropdown(_ref) {
206
232
  xmlns: "http://www.w3.org/2000/svg",
207
233
  width: "24",
208
234
  height: "24",
209
- viewBox: "0 0 24 24"
235
+ viewBox: "0 0 24 24",
236
+ fill: "currentColor"
210
237
  }, _react["default"].createElement("path", {
211
238
  d: "M7 10l5 5 5-5z"
212
239
  }), _react["default"].createElement("path", {
@@ -217,17 +244,19 @@ var DxcDropdown = function DxcDropdown(_ref) {
217
244
 
218
245
  return _react["default"].createElement(_styledComponents.ThemeProvider, {
219
246
  theme: colorsTheme.dropdown
220
- }, _react["default"].createElement(DxCDropdownContainer, {
247
+ }, _react["default"].createElement(DXCDropdownContainer, {
221
248
  margin: margin,
222
- size: size
249
+ size: size,
250
+ disabled: disabled
223
251
  }, _react["default"].createElement("div", {
224
- onMouseOver: expandOnHover ? handleClickListItem : undefined,
252
+ onMouseOver: expandOnHover && !disabled ? handleClickListItem : undefined,
225
253
  onMouseOut: handleCloseOver,
226
254
  onFocus: handleCloseOver,
227
255
  onBlur: handleCloseOver
228
256
  }, _react["default"].createElement(DropdownTrigger, {
229
257
  opened: anchorEl === null ? false : true,
230
258
  onClick: handleClickListItem,
259
+ disabled: disabled,
231
260
  label: label,
232
261
  caretHidden: caretHidden,
233
262
  margin: margin,
@@ -237,23 +266,21 @@ var DxcDropdown = function DxcDropdown(_ref) {
237
266
  }, _react["default"].createElement(DropdownTriggerContainer, {
238
267
  iconPosition: iconPosition,
239
268
  caretHidden: caretHidden
240
- }, icon ? _react["default"].createElement(ListIconContainer, {
269
+ }, icon ? _react["default"].createElement(ButtonIconContainer, {
241
270
  label: label,
242
- iconPosition: iconPosition
243
- }, (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, {
244
274
  label: label,
245
275
  src: iconSrc,
246
276
  iconPosition: iconPosition
247
277
  }), _react["default"].createElement(DropdownTriggerLabel, {
248
278
  iconPosition: iconPosition,
249
279
  label: label
250
- }, label)), _react["default"].createElement(CaretIcon, null, caretHidden !== true && (anchorEl === null ? _react["default"].createElement(DownArrowIcon, {
251
- caretHidden: caretHidden,
252
- margin: margin
253
- }) : _react["default"].createElement(UpArrowIcon, {
280
+ }, label)), _react["default"].createElement(CaretIconContainer, {
254
281
  caretHidden: caretHidden,
255
- margin: margin
256
- })))), _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, {
257
284
  anchorEl: anchorEl,
258
285
  open: Boolean(anchorEl),
259
286
  onClose: handleClose,
@@ -318,7 +345,7 @@ var calculateWidth = function calculateWidth(margin, size) {
318
345
  return sizes[size];
319
346
  };
320
347
 
321
- var DxCDropdownContainer = _styledComponents["default"].div(_templateObject(), function (props) {
348
+ var DXCDropdownContainer = _styledComponents["default"].div(_templateObject(), function (props) {
322
349
  return calculateWidth(props.margin, props.size);
323
350
  }, function (props) {
324
351
  return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
@@ -330,26 +357,20 @@ var DxCDropdownContainer = _styledComponents["default"].div(_templateObject(), f
330
357
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
331
358
  }, function (props) {
332
359
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
333
- }, function (props) {
334
- return props.theme.focusColor;
335
360
  });
336
361
 
337
- var DxcMenu = (0, _styledComponents["default"])(_Popper["default"])(_templateObject2(), function (props) {
362
+ var DXCMenu = (0, _styledComponents["default"])(_Popper["default"])(_templateObject2(), function (props) {
338
363
  return calculateWidth(props.margin, props.size);
339
364
  }, function (props) {
340
- return props.theme.optionsPaddingTop;
365
+ return props.theme.optionPaddingTop;
341
366
  }, function (props) {
342
- return props.theme.optionsPaddingBottom;
367
+ return props.theme.optionPaddingBottom;
343
368
  }, function (props) {
344
- return props.theme.optionsPaddingLeft;
369
+ return props.theme.optionPaddingLeft;
345
370
  }, function (props) {
346
- return props.theme.optionsPaddingRight;
371
+ return props.theme.optionPaddingRight;
347
372
  }, function (props) {
348
373
  return "".concat(props.width, "px");
349
- }, function (props) {
350
- return props.theme.optionsListBackgroundColor;
351
- }, function (props) {
352
- return props.theme.optionsListFontColor;
353
374
  }, function (props) {
354
375
  return props.theme.borderThickness;
355
376
  }, function (props) {
@@ -360,30 +381,40 @@ var DxcMenu = (0, _styledComponents["default"])(_Popper["default"])(_templateObj
360
381
  return props.theme.borderRadius;
361
382
  }, function (props) {
362
383
  return props.theme.borderRadius;
384
+ }, function (props) {
385
+ return props.theme.scrollBarTrackColor;
386
+ }, function (props) {
387
+ return props.theme.scrollBarThumbColor;
363
388
  }, function (props) {
364
389
  return props.optionsIconPosition === "after" && "row-reverse" || "row";
365
390
  }, function (props) {
366
391
  return props.optionsIconPosition === "after" && "flex-end" || "";
367
392
  }, function (props) {
368
- return props.theme.optionsFontSize;
393
+ return props.theme.optionBackgroundColor;
369
394
  }, function (props) {
370
- return props.theme.optionsFontStyle;
395
+ return props.theme.optionFontFamily;
371
396
  }, function (props) {
372
- return props.theme.optionsFontWeight;
397
+ return props.theme.optionFontSize;
373
398
  }, function (props) {
374
- return props.theme.optionsFontColor;
399
+ return props.theme.optionFontStyle;
375
400
  }, function (props) {
376
- return props.theme.optionsListHoverBackgroundColor;
401
+ return props.theme.optionFontWeight;
377
402
  }, function (props) {
378
- return props.theme.dropdownFontColor;
403
+ return props.theme.optionFontColor;
379
404
  }, function (props) {
380
- return props.theme.scrollBarTrackColor;
405
+ return props.theme.focusColor;
381
406
  }, function (props) {
382
- return props.theme.scrollBarThumbColor;
407
+ return props.theme.hoverOptionBackgroundColor;
408
+ }, function (props) {
409
+ return props.theme.activeOptionBackgroundColor;
410
+ }, function (props) {
411
+ return props.theme.focusColor;
383
412
  });
384
413
 
385
414
  var DropdownTrigger = _styledComponents["default"].button(_templateObject3(), function (props) {
386
- return props.theme.fontFamily;
415
+ return props.disabled ? "not-allowed" : "pointer";
416
+ }, function (props) {
417
+ return props.theme.buttonFontFamily;
387
418
  }, function (props) {
388
419
  return props.theme.buttonFontSize;
389
420
  }, function (props) {
@@ -397,27 +428,27 @@ var DropdownTrigger = _styledComponents["default"].button(_templateObject3(), fu
397
428
  }, function (props) {
398
429
  return props.theme.borderStyle;
399
430
  }, function (props) {
400
- return props.theme.borderColor;
431
+ return props.disabled ? props.theme.disabledBorderColor : props.theme.borderColor;
401
432
  }, function (props) {
402
433
  return props.label === "" ? "0px" : calculateWidth(props.margin, props.size);
403
434
  }, function (props) {
404
- return props.theme.labelPaddingTop;
435
+ return props.theme.buttonPaddingTop;
405
436
  }, function (props) {
406
- return props.theme.labelPaddingBottom;
437
+ return props.theme.buttonPaddingBottom;
407
438
  }, function (props) {
408
- return props.theme.labelPaddingLeft;
439
+ return props.theme.buttonPaddingLeft;
409
440
  }, function (props) {
410
- return props.theme.labelPaddingRight;
441
+ return props.theme.buttonPaddingRight;
411
442
  }, function (props) {
412
- return props.opened === true ? props.theme.buttonHoverBackgroundColor : props.theme.buttonBackgroundColor;
443
+ return props.disabled ? props.theme.disabledButtonBackgroundColor : props.theme.buttonBackgroundColor;
413
444
  }, function (props) {
414
- return props.theme.buttonFontColor;
445
+ return props.disabled ? props.theme.disabledColor : props.theme.buttonFontColor;
415
446
  }, function (props) {
416
- return props.opened === true ? "0px" : props.theme.borderRadius;
447
+ return props.opened ? "0px" : props.theme.borderRadius;
417
448
  }, function (props) {
418
- return props.opened === true ? "0px" : props.theme.borderRadius;
449
+ return props.opened ? "0px" : props.theme.borderRadius;
419
450
  }, function (props) {
420
- return props.theme.buttonHoverBackgroundColor;
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 ");
421
452
  });
422
453
 
423
454
  var DropdownTriggerLabel = _styledComponents["default"].span(_templateObject4());
@@ -425,49 +456,63 @@ var DropdownTriggerLabel = _styledComponents["default"].span(_templateObject4())
425
456
  var DropdownTriggerContainer = _styledComponents["default"].span(_templateObject5(), function (props) {
426
457
  return props.iconPosition === "after" && "row-reverse" || "row";
427
458
  }, function (props) {
428
- return props.caretHidden ? "100%" : "calc(100% - 44px)";
459
+ return props.caretHidden ? "100%" : "calc(100% - 36px)";
429
460
  });
430
461
 
431
- var ListIcon = _styledComponents["default"].img(_templateObject6(), function (props) {
432
- if (props.iconPosition === "before" && props.label !== "") {
433
- return "10px";
434
- } else {
435
- return "0px";
436
- }
462
+ var ButtonIcon = _styledComponents["default"].img(_templateObject6(), function (props) {
463
+ return props.theme.buttonIconSize;
437
464
  }, function (props) {
438
- if (props.iconPosition === "after" && props.label !== "") {
439
- return "10px";
440
- } else {
441
- return "0px";
442
- }
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";
443
470
  });
444
471
 
445
- var ListIconContainer = _styledComponents["default"].div(_templateObject7(), function (props) {
446
- if (props.iconPosition === "before" && props.label !== "") {
447
- return "10px";
448
- } else {
449
- return "0px";
450
- }
472
+ var ButtonIconContainer = _styledComponents["default"].div(_templateObject7(), function (props) {
473
+ return props.theme.buttonIconSize;
451
474
  }, function (props) {
452
- if (props.iconPosition === "after" && props.label !== "") {
453
- return "10px";
454
- } else {
455
- return "0px";
456
- }
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;
457
482
  });
458
483
 
459
- var CaretIcon = _styledComponents["default"].div(_templateObject8(), function (props) {
460
- return props.caretHidden === true ? "none" : "inline-flex";
484
+ var ListIcon = _styledComponents["default"].img(_templateObject8(), function (props) {
485
+ return props.theme.optionIconSize;
486
+ }, function (props) {
487
+ return props.theme.optionIconSize;
461
488
  }, function (props) {
462
- return props.theme.caretIconMarginTop;
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";
492
+ });
493
+
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";
463
508
  }, function (props) {
464
- return props.theme.caretIconMarginBottom;
509
+ return props.theme.caretIconSpacing;
465
510
  }, function (props) {
466
- return props.theme.caretIconMarginLeft;
511
+ return props.disabled ? props.theme.disabledColor : props.theme.caretIconColor;
467
512
  }, function (props) {
468
- return props.theme.caretIconMarginRight;
513
+ return props.theme.caretIconSize;
469
514
  }, function (props) {
470
- return props.theme.fontColor;
515
+ return props.theme.caretIconSize;
471
516
  });
472
517
 
473
518
  DxcDropdown.propTypes = {
@@ -484,6 +529,7 @@ DxcDropdown.propTypes = {
484
529
  iconPosition: _propTypes["default"].oneOf(["after", "before", ""]),
485
530
  label: _propTypes["default"].string,
486
531
  caretHidden: _propTypes["default"].bool,
532
+ disabled: _propTypes["default"].bool,
487
533
  expandOnHover: _propTypes["default"].bool,
488
534
  onSelectOption: _propTypes["default"].func,
489
535
  options: _propTypes["default"].arrayOf(_propTypes["default"].shape({