@dxc-technology/halstack-react 0.0.0-abb5d48 → 0.0.0-acb1a24

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 (228) hide show
  1. package/README.md +1 -1
  2. package/dist/BackgroundColorContext.js +46 -0
  3. package/dist/ThemeContext.js +171 -106
  4. package/dist/V3Select/V3Select.js +549 -0
  5. package/dist/V3Select/index.d.ts +27 -0
  6. package/dist/V3Textarea/V3Textarea.js +264 -0
  7. package/dist/V3Textarea/index.d.ts +27 -0
  8. package/dist/accordion/Accordion.js +119 -52
  9. package/dist/accordion/index.d.ts +28 -0
  10. package/dist/accordion-group/AccordionGroup.js +34 -4
  11. package/dist/accordion-group/index.d.ts +16 -0
  12. package/dist/alert/Alert.js +170 -83
  13. package/dist/alert/index.d.ts +51 -0
  14. package/dist/badge/Badge.js +28 -7
  15. package/dist/box/Box.js +27 -20
  16. package/dist/box/index.d.ts +25 -0
  17. package/dist/button/Button.js +42 -25
  18. package/dist/button/index.d.ts +24 -0
  19. package/dist/card/Card.js +16 -9
  20. package/dist/card/index.d.ts +22 -0
  21. package/dist/checkbox/Checkbox.js +89 -25
  22. package/dist/checkbox/index.d.ts +24 -0
  23. package/dist/chip/Chip.js +63 -23
  24. package/dist/chip/index.d.ts +22 -0
  25. package/dist/common/utils.js +2 -22
  26. package/dist/common/variables.js +1351 -299
  27. package/dist/date/Date.js +60 -40
  28. package/dist/date/index.d.ts +27 -0
  29. package/dist/date-input/DateInput.js +400 -0
  30. package/dist/date-input/index.d.ts +95 -0
  31. package/dist/dialog/Dialog.js +44 -31
  32. package/dist/dialog/index.d.ts +18 -0
  33. package/dist/dropdown/Dropdown.js +162 -76
  34. package/dist/dropdown/index.d.ts +26 -0
  35. package/dist/file-input/FileInput.js +644 -0
  36. package/dist/file-input/FileItem.js +287 -0
  37. package/dist/file-input/index.d.ts +81 -0
  38. package/dist/footer/Footer.js +79 -39
  39. package/dist/footer/Icons.js +77 -0
  40. package/dist/footer/index.d.ts +25 -0
  41. package/dist/header/Header.js +158 -73
  42. package/dist/header/Icons.js +59 -0
  43. package/dist/header/index.d.ts +25 -0
  44. package/dist/heading/Heading.js +103 -38
  45. package/dist/heading/index.d.ts +17 -0
  46. package/dist/input-text/Icons.js +22 -0
  47. package/dist/input-text/InputText.js +181 -75
  48. package/dist/input-text/index.d.ts +36 -0
  49. package/dist/layout/ApplicationLayout.js +14 -18
  50. package/dist/layout/Icons.js +55 -0
  51. package/dist/link/Link.js +77 -41
  52. package/dist/link/index.d.ts +23 -0
  53. package/dist/main.d.ts +40 -0
  54. package/dist/main.js +72 -16
  55. package/dist/number-input/NumberInput.js +136 -0
  56. package/dist/number-input/NumberInputContext.js +16 -0
  57. package/dist/number-input/index.d.ts +113 -0
  58. package/dist/paginator/Icons.js +66 -0
  59. package/dist/paginator/Paginator.js +85 -43
  60. package/dist/paginator/index.d.ts +20 -0
  61. package/dist/password-input/PasswordInput.js +203 -0
  62. package/dist/password-input/index.d.ts +94 -0
  63. package/dist/progress-bar/ProgressBar.js +88 -40
  64. package/dist/progress-bar/index.d.ts +18 -0
  65. package/dist/radio/Radio.js +28 -11
  66. package/dist/radio/index.d.ts +23 -0
  67. package/dist/resultsetTable/ResultsetTable.js +65 -40
  68. package/dist/resultsetTable/index.d.ts +19 -0
  69. package/dist/select/Select.js +887 -283
  70. package/dist/select/index.d.ts +53 -0
  71. package/dist/sidenav/Sidenav.js +47 -25
  72. package/dist/sidenav/index.d.ts +13 -0
  73. package/dist/slider/Slider.js +204 -69
  74. package/dist/slider/index.d.ts +29 -0
  75. package/dist/spinner/Spinner.js +244 -63
  76. package/dist/spinner/index.d.ts +17 -0
  77. package/dist/switch/Switch.js +42 -16
  78. package/dist/switch/index.d.ts +24 -0
  79. package/dist/table/Table.js +45 -13
  80. package/dist/table/index.d.ts +13 -0
  81. package/dist/tabs/Tabs.js +37 -21
  82. package/dist/tabs/index.d.ts +19 -0
  83. package/dist/tag/Tag.js +50 -36
  84. package/dist/tag/index.d.ts +24 -0
  85. package/dist/text-input/TextInput.js +974 -0
  86. package/dist/text-input/index.d.ts +135 -0
  87. package/dist/textarea/Textarea.js +238 -109
  88. package/dist/textarea/index.d.ts +117 -0
  89. package/dist/toggle/Toggle.js +0 -2
  90. package/dist/toggle/index.d.ts +21 -0
  91. package/dist/toggle-group/ToggleGroup.js +139 -37
  92. package/dist/toggle-group/index.d.ts +21 -0
  93. package/dist/upload/Upload.js +1 -7
  94. package/dist/upload/buttons-upload/ButtonsUpload.js +28 -18
  95. package/dist/upload/buttons-upload/Icons.js +40 -0
  96. package/dist/upload/dragAndDropArea/DragAndDropArea.js +61 -27
  97. package/dist/upload/dragAndDropArea/Icons.js +39 -0
  98. package/dist/upload/file-upload/FileToUpload.js +52 -27
  99. package/dist/upload/file-upload/Icons.js +66 -0
  100. package/dist/upload/files-upload/FilesToUpload.js +3 -5
  101. package/dist/upload/index.d.ts +15 -0
  102. package/dist/upload/transaction/Icons.js +160 -0
  103. package/dist/upload/transaction/Transaction.js +37 -43
  104. package/dist/upload/transactions/Transactions.js +24 -10
  105. package/dist/wizard/Icons.js +65 -0
  106. package/dist/wizard/Wizard.js +106 -58
  107. package/dist/wizard/index.d.ts +18 -0
  108. package/package.json +11 -13
  109. package/test/AccordionGroup.test.js +16 -0
  110. package/test/Date.test.js +15 -13
  111. package/test/DateInput.test.js +242 -0
  112. package/test/Dropdown.test.js +15 -0
  113. package/test/FileInput.test.js +201 -0
  114. package/test/Footer.test.js +2 -7
  115. package/test/Header.test.js +5 -10
  116. package/test/Heading.test.js +60 -12
  117. package/test/Link.test.js +3 -2
  118. package/test/NumberInput.test.js +259 -0
  119. package/test/Paginator.test.js +6 -2
  120. package/test/PasswordInput.test.js +83 -0
  121. package/test/ResultsetTable.test.js +6 -6
  122. package/test/Select.test.js +371 -148
  123. package/test/Slider.test.js +9 -17
  124. package/test/Spinner.test.js +5 -0
  125. package/test/TextInput.test.js +732 -0
  126. package/test/Textarea.test.js +193 -0
  127. package/test/ToggleGroup.test.js +5 -1
  128. package/test/Upload.test.js +1 -1
  129. package/test/V3Select.test.js +212 -0
  130. package/test/{TextArea.test.js → V3TextArea.test.js} +6 -7
  131. package/dist/accordion/Accordion.stories.js +0 -207
  132. package/dist/accordion/readme.md +0 -96
  133. package/dist/accordion-group/AccordionGroup.stories.js +0 -207
  134. package/dist/accordion-group/readme.md +0 -70
  135. package/dist/alert/Alert.stories.js +0 -158
  136. package/dist/alert/close.svg +0 -4
  137. package/dist/alert/error.svg +0 -4
  138. package/dist/alert/info.svg +0 -4
  139. package/dist/alert/readme.md +0 -43
  140. package/dist/alert/success.svg +0 -4
  141. package/dist/alert/warning.svg +0 -4
  142. package/dist/button/Button.stories.js +0 -224
  143. package/dist/button/readme.md +0 -93
  144. package/dist/checkbox/Checkbox.stories.js +0 -144
  145. package/dist/checkbox/readme.md +0 -116
  146. package/dist/common/services/example-service.js +0 -10
  147. package/dist/common/services/example-service.test.js +0 -12
  148. package/dist/date/Date.stories.js +0 -205
  149. package/dist/date/calendar.svg +0 -1
  150. package/dist/date/calendar_dark.svg +0 -1
  151. package/dist/date/readme.md +0 -73
  152. package/dist/dialog/Dialog.stories.js +0 -217
  153. package/dist/dialog/readme.md +0 -32
  154. package/dist/dropdown/Dropdown.stories.js +0 -249
  155. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  156. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  157. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  158. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  159. package/dist/dropdown/readme.md +0 -69
  160. package/dist/footer/Footer.stories.js +0 -94
  161. package/dist/footer/dxc_logo_wht.png +0 -0
  162. package/dist/footer/readme.md +0 -41
  163. package/dist/header/Header.stories.js +0 -176
  164. package/dist/header/close_icon.svg +0 -1
  165. package/dist/header/dxc_logo_black.png +0 -0
  166. package/dist/header/dxc_logo_blk_rgb.svg +0 -6
  167. package/dist/header/dxc_logo_white.png +0 -0
  168. package/dist/header/hamb_menu_black.svg +0 -1
  169. package/dist/header/hamb_menu_white.svg +0 -1
  170. package/dist/header/readme.md +0 -33
  171. package/dist/input-text/InputText.stories.js +0 -209
  172. package/dist/input-text/error.svg +0 -1
  173. package/dist/input-text/readme.md +0 -91
  174. package/dist/layout/facebook.svg +0 -45
  175. package/dist/layout/linkedin.svg +0 -50
  176. package/dist/layout/twitter.svg +0 -53
  177. package/dist/link/readme.md +0 -51
  178. package/dist/paginator/images/next.svg +0 -3
  179. package/dist/paginator/images/nextPage.svg +0 -3
  180. package/dist/paginator/images/previous.svg +0 -3
  181. package/dist/paginator/images/previousPage.svg +0 -3
  182. package/dist/paginator/readme.md +0 -50
  183. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  184. package/dist/progress-bar/readme.md +0 -63
  185. package/dist/radio/Radio.stories.js +0 -166
  186. package/dist/radio/readme.md +0 -70
  187. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  188. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  189. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  190. package/dist/select/Select.stories.js +0 -235
  191. package/dist/select/readme.md +0 -72
  192. package/dist/slider/Slider.stories.js +0 -241
  193. package/dist/slider/readme.md +0 -64
  194. package/dist/spinner/Spinner.stories.js +0 -183
  195. package/dist/spinner/readme.md +0 -65
  196. package/dist/switch/Switch.stories.js +0 -134
  197. package/dist/switch/readme.md +0 -133
  198. package/dist/tabs/Tabs.stories.js +0 -130
  199. package/dist/tabs/readme.md +0 -78
  200. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  201. package/dist/tabs-for-sections/readme.md +0 -78
  202. package/dist/toggle/Toggle.stories.js +0 -297
  203. package/dist/toggle/readme.md +0 -80
  204. package/dist/toggle-group/readme.md +0 -82
  205. package/dist/upload/Upload.stories.js +0 -72
  206. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  207. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  208. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  209. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  210. package/dist/upload/file-upload/audio-icon.svg +0 -4
  211. package/dist/upload/file-upload/close.svg +0 -4
  212. package/dist/upload/file-upload/file-icon.svg +0 -4
  213. package/dist/upload/file-upload/video-icon.svg +0 -4
  214. package/dist/upload/readme.md +0 -37
  215. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  216. package/dist/upload/transaction/audio-icon.svg +0 -4
  217. package/dist/upload/transaction/error-icon.svg +0 -4
  218. package/dist/upload/transaction/file-icon-err.svg +0 -4
  219. package/dist/upload/transaction/file-icon.svg +0 -4
  220. package/dist/upload/transaction/image-icon-err.svg +0 -4
  221. package/dist/upload/transaction/image-icon.svg +0 -4
  222. package/dist/upload/transaction/success-icon.svg +0 -4
  223. package/dist/upload/transaction/video-icon-err.svg +0 -4
  224. package/dist/upload/transaction/video-icon.svg +0 -4
  225. package/dist/wizard/invalid_icon.svg +0 -6
  226. package/dist/wizard/valid_icon.svg +0 -6
  227. package/dist/wizard/validation-wrong.svg +0 -6
  228. package/test/TabsForSections.test.js +0 -34
@@ -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 font-size: ", ";\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, {
280
+ }, label)), _react["default"].createElement(CaretIconContainer, {
253
281
  caretHidden: caretHidden,
254
- margin: margin
255
- }) : _react["default"].createElement(UpArrowIcon, {
256
- 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,10 +345,8 @@ 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
- }, function (props) {
326
- return props.theme.fontSizeBase;
327
350
  }, function (props) {
328
351
  return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
329
352
  }, function (props) {
@@ -334,58 +357,98 @@ var DxCDropdownContainer = _styledComponents["default"].div(_templateObject(), f
334
357
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
335
358
  }, function (props) {
336
359
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
337
- }, function (props) {
338
- return props.theme.focusColor;
339
360
  });
340
361
 
341
- var DxcMenu = (0, _styledComponents["default"])(_Popper["default"])(_templateObject2(), function (props) {
362
+ var DXCMenu = (0, _styledComponents["default"])(_Popper["default"])(_templateObject2(), function (props) {
342
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;
343
372
  }, function (props) {
344
373
  return "".concat(props.width, "px");
345
374
  }, function (props) {
346
- 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;
347
380
  }, function (props) {
348
- 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;
349
388
  }, function (props) {
350
389
  return props.optionsIconPosition === "after" && "row-reverse" || "row";
351
390
  }, function (props) {
352
391
  return props.optionsIconPosition === "after" && "flex-end" || "";
353
392
  }, function (props) {
354
- return props.theme.fontSize;
393
+ return props.theme.optionBackgroundColor;
355
394
  }, function (props) {
356
- return props.theme.fontFamily;
395
+ return props.theme.optionFontFamily;
357
396
  }, function (props) {
358
- return props.theme.hoverBackgroundOption;
397
+ return props.theme.optionFontSize;
359
398
  }, function (props) {
360
- return props.theme.dropdownFontColor;
399
+ return props.theme.optionFontStyle;
361
400
  }, function (props) {
362
- return props.theme.scrollBarTrackColor;
401
+ return props.theme.optionFontWeight;
363
402
  }, function (props) {
364
- 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;
365
412
  });
366
413
 
367
414
  var DropdownTrigger = _styledComponents["default"].button(_templateObject3(), function (props) {
368
- 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;
369
428
  }, function (props) {
370
- return props.theme.fontSize;
429
+ return props.theme.borderStyle;
430
+ }, function (props) {
431
+ return props.disabled ? props.theme.disabledBorderColor : props.theme.borderColor;
371
432
  }, function (props) {
372
433
  return props.label === "" ? "0px" : calculateWidth(props.margin, props.size);
373
434
  }, function (props) {
374
- if (props.caretHidden === true && props.label === "") {
375
- return "10px 15px";
376
- } else {
377
- return "10px 15px 10px 20px";
378
- }
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;
379
442
  }, function (props) {
380
- return props.opened === true ? props.theme.hoverBackgroundColor : props.theme.backgroundColor;
443
+ return props.disabled ? props.theme.disabledButtonBackgroundColor : props.theme.buttonBackgroundColor;
381
444
  }, function (props) {
382
- return props.theme.fontColor;
445
+ return props.disabled ? props.theme.disabledColor : props.theme.buttonFontColor;
383
446
  }, function (props) {
384
- return props.opened === true ? "0px" : "2px";
447
+ return props.opened ? "0px" : props.theme.borderRadius;
385
448
  }, function (props) {
386
- return props.opened === true ? "0px" : "2px";
449
+ return props.opened ? "0px" : props.theme.borderRadius;
387
450
  }, function (props) {
388
- 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 ");
389
452
  });
390
453
 
391
454
  var DropdownTriggerLabel = _styledComponents["default"].span(_templateObject4());
@@ -393,41 +456,63 @@ var DropdownTriggerLabel = _styledComponents["default"].span(_templateObject4())
393
456
  var DropdownTriggerContainer = _styledComponents["default"].span(_templateObject5(), function (props) {
394
457
  return props.iconPosition === "after" && "row-reverse" || "row";
395
458
  }, function (props) {
396
- return props.caretHidden ? "100%" : "calc(100% - 44px)";
459
+ return props.caretHidden ? "100%" : "calc(100% - 36px)";
397
460
  });
398
461
 
399
- var ListIcon = _styledComponents["default"].img(_templateObject6(), function (props) {
400
- if (props.iconPosition === "before" && props.label !== "") {
401
- return "10px";
402
- } else {
403
- return "0px";
404
- }
462
+ var ButtonIcon = _styledComponents["default"].img(_templateObject6(), function (props) {
463
+ return props.theme.buttonIconSize;
405
464
  }, function (props) {
406
- if (props.iconPosition === "after" && props.label !== "") {
407
- return "10px";
408
- } else {
409
- return "0px";
410
- }
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";
411
470
  });
412
471
 
413
- var ListIconContainer = _styledComponents["default"].div(_templateObject7(), function (props) {
414
- if (props.iconPosition === "before" && props.label !== "") {
415
- return "10px";
416
- } else {
417
- return "0px";
418
- }
472
+ var ButtonIconContainer = _styledComponents["default"].div(_templateObject7(), function (props) {
473
+ return props.theme.buttonIconSize;
419
474
  }, function (props) {
420
- if (props.iconPosition === "after" && props.label !== "") {
421
- return "10px";
422
- } else {
423
- return "0px";
424
- }
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";
425
492
  });
426
493
 
427
- var CaretIcon = _styledComponents["default"].div(_templateObject8(), function (props) {
428
- 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;
429
514
  }, function (props) {
430
- return props.theme.fontColor;
515
+ return props.theme.caretIconSize;
431
516
  });
432
517
 
433
518
  DxcDropdown.propTypes = {
@@ -444,6 +529,7 @@ DxcDropdown.propTypes = {
444
529
  iconPosition: _propTypes["default"].oneOf(["after", "before", ""]),
445
530
  label: _propTypes["default"].string,
446
531
  caretHidden: _propTypes["default"].bool,
532
+ disabled: _propTypes["default"].bool,
447
533
  expandOnHover: _propTypes["default"].bool,
448
534
  onSelectOption: _propTypes["default"].func,
449
535
  options: _propTypes["default"].arrayOf(_propTypes["default"].shape({
@@ -0,0 +1,26 @@
1
+ type Size = "small" | "medium" | "large" | "fillParent" | "fitContent";
2
+ type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
+ type Margin = {
4
+ top?: Space;
5
+ bottom?: Space;
6
+ left?: Space;
7
+ right?: Space;
8
+ };
9
+
10
+ type Props = {
11
+ options?: any;
12
+ optionsIconPosition?: "before" | "after";
13
+ icon?: any;
14
+ iconSrc?: string;
15
+ iconPosition?: "before" | "after";
16
+ label?: string;
17
+ disabled?: boolean;
18
+ caretHidden?: boolean;
19
+ onSelectOption?: void;
20
+ expandOnHover?: boolean;
21
+ margin?: Space | Margin;
22
+ size?: Size;
23
+ tabIndex?: number;
24
+ };
25
+
26
+ export default function DxcDropdown(props: Props): JSX.Element;