@dxc-technology/halstack-react 0.0.0-14e13eb → 0.0.0-154d393

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 (202) hide show
  1. package/README.md +27 -47
  2. package/dist/index.d.mts +6648 -0
  3. package/dist/index.d.ts +6648 -0
  4. package/dist/index.js +18393 -0
  5. package/dist/index.mjs +18115 -0
  6. package/package.json +78 -67
  7. package/babel.config.js +0 -8
  8. package/dist/BackgroundColorContext.js +0 -46
  9. package/dist/ThemeContext.js +0 -216
  10. package/dist/accordion/Accordion.js +0 -346
  11. package/dist/accordion/Accordion.stories.js +0 -207
  12. package/dist/accordion/readme.md +0 -96
  13. package/dist/accordion-group/AccordionGroup.js +0 -188
  14. package/dist/accordion-group/AccordionGroup.stories.js +0 -207
  15. package/dist/accordion-group/readme.md +0 -70
  16. package/dist/alert/Alert.js +0 -388
  17. package/dist/alert/Alert.stories.js +0 -158
  18. package/dist/alert/close.svg +0 -4
  19. package/dist/alert/error.svg +0 -4
  20. package/dist/alert/info.svg +0 -4
  21. package/dist/alert/readme.md +0 -43
  22. package/dist/alert/success.svg +0 -4
  23. package/dist/alert/warning.svg +0 -4
  24. package/dist/badge/Badge.js +0 -63
  25. package/dist/box/Box.js +0 -164
  26. package/dist/button/Button.js +0 -232
  27. package/dist/button/Button.stories.js +0 -224
  28. package/dist/button/readme.md +0 -93
  29. package/dist/card/Card.js +0 -254
  30. package/dist/checkbox/Checkbox.js +0 -294
  31. package/dist/checkbox/Checkbox.stories.js +0 -144
  32. package/dist/checkbox/readme.md +0 -116
  33. package/dist/chip/Chip.js +0 -269
  34. package/dist/common/OpenSans.css +0 -81
  35. package/dist/common/RequiredComponent.js +0 -40
  36. package/dist/common/fonts/OpenSans-Bold.ttf +0 -0
  37. package/dist/common/fonts/OpenSans-BoldItalic.ttf +0 -0
  38. package/dist/common/fonts/OpenSans-ExtraBold.ttf +0 -0
  39. package/dist/common/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  40. package/dist/common/fonts/OpenSans-Italic.ttf +0 -0
  41. package/dist/common/fonts/OpenSans-Light.ttf +0 -0
  42. package/dist/common/fonts/OpenSans-LightItalic.ttf +0 -0
  43. package/dist/common/fonts/OpenSans-Regular.ttf +0 -0
  44. package/dist/common/fonts/OpenSans-SemiBold.ttf +0 -0
  45. package/dist/common/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  46. package/dist/common/utils.js +0 -22
  47. package/dist/common/variables.js +0 -1305
  48. package/dist/date/Date.js +0 -381
  49. package/dist/date/Date.stories.js +0 -205
  50. package/dist/date/readme.md +0 -73
  51. package/dist/dialog/Dialog.js +0 -235
  52. package/dist/dialog/Dialog.stories.js +0 -217
  53. package/dist/dialog/readme.md +0 -32
  54. package/dist/dropdown/Dropdown.js +0 -504
  55. package/dist/dropdown/Dropdown.stories.js +0 -249
  56. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  57. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  58. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  59. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  60. package/dist/dropdown/readme.md +0 -69
  61. package/dist/footer/Footer.js +0 -407
  62. package/dist/footer/Footer.stories.js +0 -94
  63. package/dist/footer/dxc_logo.svg +0 -15
  64. package/dist/footer/readme.md +0 -41
  65. package/dist/header/Header.js +0 -431
  66. package/dist/header/Header.stories.js +0 -176
  67. package/dist/header/close_icon.svg +0 -1
  68. package/dist/header/dxc_logo_black.svg +0 -8
  69. package/dist/header/hamb_menu_black.svg +0 -1
  70. package/dist/header/hamb_menu_white.svg +0 -1
  71. package/dist/header/readme.md +0 -33
  72. package/dist/heading/Heading.js +0 -222
  73. package/dist/input-text/InputText.js +0 -672
  74. package/dist/input-text/InputText.stories.js +0 -209
  75. package/dist/input-text/error.svg +0 -1
  76. package/dist/input-text/readme.md +0 -91
  77. package/dist/layout/ApplicationLayout.js +0 -331
  78. package/dist/layout/facebook.svg +0 -45
  79. package/dist/layout/linkedin.svg +0 -50
  80. package/dist/layout/twitter.svg +0 -53
  81. package/dist/link/Link.js +0 -241
  82. package/dist/link/readme.md +0 -51
  83. package/dist/main.js +0 -343
  84. package/dist/new-date/NewDate.js +0 -395
  85. package/dist/new-input-text/NewInputText.js +0 -957
  86. package/dist/number/Number.js +0 -134
  87. package/dist/number/NumberContext.js +0 -16
  88. package/dist/paginator/Paginator.js +0 -283
  89. package/dist/paginator/images/next.svg +0 -3
  90. package/dist/paginator/images/nextPage.svg +0 -3
  91. package/dist/paginator/images/previous.svg +0 -3
  92. package/dist/paginator/images/previousPage.svg +0 -3
  93. package/dist/paginator/readme.md +0 -50
  94. package/dist/password/Password.js +0 -196
  95. package/dist/password/styles.css +0 -3
  96. package/dist/progress-bar/ProgressBar.js +0 -206
  97. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  98. package/dist/progress-bar/readme.md +0 -63
  99. package/dist/radio/Radio.js +0 -209
  100. package/dist/radio/Radio.stories.js +0 -166
  101. package/dist/radio/readme.md +0 -70
  102. package/dist/resultsetTable/ResultsetTable.js +0 -358
  103. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  104. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  105. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  106. package/dist/select/Select.js +0 -563
  107. package/dist/select/Select.stories.js +0 -235
  108. package/dist/select/readme.md +0 -72
  109. package/dist/sidenav/Sidenav.js +0 -183
  110. package/dist/slider/Slider.js +0 -315
  111. package/dist/slider/Slider.stories.js +0 -241
  112. package/dist/slider/readme.md +0 -64
  113. package/dist/spinner/Spinner.js +0 -214
  114. package/dist/spinner/Spinner.stories.js +0 -183
  115. package/dist/spinner/readme.md +0 -65
  116. package/dist/switch/Switch.js +0 -222
  117. package/dist/switch/Switch.stories.js +0 -134
  118. package/dist/switch/readme.md +0 -133
  119. package/dist/table/Table.js +0 -128
  120. package/dist/tabs/Tabs.js +0 -343
  121. package/dist/tabs/Tabs.stories.js +0 -130
  122. package/dist/tabs/readme.md +0 -78
  123. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  124. package/dist/tabs-for-sections/readme.md +0 -78
  125. package/dist/tag/Tag.js +0 -280
  126. package/dist/textarea/Textarea.js +0 -260
  127. package/dist/toggle/Toggle.js +0 -220
  128. package/dist/toggle/Toggle.stories.js +0 -297
  129. package/dist/toggle/readme.md +0 -80
  130. package/dist/toggle-group/ToggleGroup.js +0 -241
  131. package/dist/toggle-group/readme.md +0 -82
  132. package/dist/upload/Upload.js +0 -205
  133. package/dist/upload/Upload.stories.js +0 -72
  134. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -135
  135. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  136. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  137. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -325
  138. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  139. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  140. package/dist/upload/file-upload/FileToUpload.js +0 -184
  141. package/dist/upload/file-upload/audio-icon.svg +0 -4
  142. package/dist/upload/file-upload/close.svg +0 -4
  143. package/dist/upload/file-upload/file-icon.svg +0 -4
  144. package/dist/upload/file-upload/video-icon.svg +0 -4
  145. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  146. package/dist/upload/readme.md +0 -37
  147. package/dist/upload/transaction/Transaction.js +0 -171
  148. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  149. package/dist/upload/transaction/audio-icon.svg +0 -4
  150. package/dist/upload/transaction/error-icon.svg +0 -4
  151. package/dist/upload/transaction/file-icon-err.svg +0 -4
  152. package/dist/upload/transaction/file-icon.svg +0 -4
  153. package/dist/upload/transaction/image-icon-err.svg +0 -4
  154. package/dist/upload/transaction/image-icon.svg +0 -4
  155. package/dist/upload/transaction/success-icon.svg +0 -4
  156. package/dist/upload/transaction/video-icon-err.svg +0 -4
  157. package/dist/upload/transaction/video-icon.svg +0 -4
  158. package/dist/upload/transactions/Transactions.js +0 -138
  159. package/dist/useTheme.js +0 -22
  160. package/dist/wizard/Wizard.js +0 -411
  161. package/dist/wizard/invalid_icon.svg +0 -5
  162. package/dist/wizard/valid_icon.svg +0 -5
  163. package/dist/wizard/validation-wrong.svg +0 -6
  164. package/test/Accordion.test.js +0 -33
  165. package/test/AccordionGroup.test.js +0 -125
  166. package/test/Alert.test.js +0 -53
  167. package/test/Box.test.js +0 -10
  168. package/test/Button.test.js +0 -18
  169. package/test/Card.test.js +0 -30
  170. package/test/Checkbox.test.js +0 -45
  171. package/test/Chip.test.js +0 -25
  172. package/test/Date.test.js +0 -393
  173. package/test/Dialog.test.js +0 -23
  174. package/test/Dropdown.test.js +0 -145
  175. package/test/Footer.test.js +0 -99
  176. package/test/Header.test.js +0 -39
  177. package/test/Heading.test.js +0 -35
  178. package/test/InputText.test.js +0 -240
  179. package/test/Link.test.js +0 -43
  180. package/test/NewDate.test.js +0 -200
  181. package/test/NewInputText.test.js +0 -817
  182. package/test/Number.test.js +0 -241
  183. package/test/Paginator.test.js +0 -177
  184. package/test/Password.test.js +0 -76
  185. package/test/ProgressBar.test.js +0 -35
  186. package/test/Radio.test.js +0 -37
  187. package/test/ResultsetTable.test.js +0 -330
  188. package/test/Select.test.js +0 -192
  189. package/test/Sidenav.test.js +0 -45
  190. package/test/Slider.test.js +0 -82
  191. package/test/Spinner.test.js +0 -27
  192. package/test/Switch.test.js +0 -45
  193. package/test/Table.test.js +0 -36
  194. package/test/Tabs.test.js +0 -109
  195. package/test/TabsForSections.test.js +0 -34
  196. package/test/Tag.test.js +0 -32
  197. package/test/TextArea.test.js +0 -52
  198. package/test/ToggleGroup.test.js +0 -81
  199. package/test/Upload.test.js +0 -60
  200. package/test/Wizard.test.js +0 -130
  201. package/test/mocks/pngMock.js +0 -1
  202. package/test/mocks/svgMock.js +0 -1
@@ -1,504 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
4
-
5
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
6
-
7
- Object.defineProperty(exports, "__esModule", {
8
- value: true
9
- });
10
- exports["default"] = void 0;
11
-
12
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
13
-
14
- var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
15
-
16
- var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
17
-
18
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
19
-
20
- var _react = _interopRequireWildcard(require("react"));
21
-
22
- var _styledComponents = _interopRequireWildcard(require("styled-components"));
23
-
24
- var _propTypes = _interopRequireDefault(require("prop-types"));
25
-
26
- var _Popper = _interopRequireDefault(require("@material-ui/core/Popper"));
27
-
28
- var _MenuItem = _interopRequireDefault(require("@material-ui/core/MenuItem"));
29
-
30
- var _core = require("@material-ui/core");
31
-
32
- var _Grow = _interopRequireDefault(require("@material-ui/core/Grow"));
33
-
34
- var _Paper = _interopRequireDefault(require("@material-ui/core/Paper"));
35
-
36
- var _MenuList = _interopRequireDefault(require("@material-ui/core/MenuList"));
37
-
38
- var _variables = require("../common/variables.js");
39
-
40
- var _utils = require("../common/utils.js");
41
-
42
- var _useTheme = _interopRequireDefault(require("../useTheme.js"));
43
-
44
- 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"]);
46
-
47
- _templateObject8 = function _templateObject8() {
48
- return data;
49
- };
50
-
51
- return data;
52
- }
53
-
54
- function _templateObject7() {
55
- var data = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n width: ", ";\n height: ", ";\n overflow: hidden;\n margin-left: ", ";\n margin-right: ", ";\n\n img,\n svg {\n height: 100%;\n width: 100%;\n }\n"]);
56
-
57
- _templateObject7 = function _templateObject7() {
58
- return data;
59
- };
60
-
61
- return data;
62
- }
63
-
64
- function _templateObject6() {
65
- var data = (0, _taggedTemplateLiteral2["default"])(["\n width: ", ";\n height: ", ";\n margin-left: ", ";\n margin-right: ", ";\n"]);
66
-
67
- _templateObject6 = function _templateObject6() {
68
- return data;
69
- };
70
-
71
- return data;
72
- }
73
-
74
- function _templateObject5() {
75
- var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n flex-direction: ", ";\n margin-left: 0px;\n margin-right: 0px;\n width: ", ";\n white-space: nowrap;\n"]);
76
-
77
- _templateObject5 = function _templateObject5() {
78
- return data;
79
- };
80
-
81
- return data;
82
- }
83
-
84
- function _templateObject4() {
85
- var data = (0, _taggedTemplateLiteral2["default"])(["\n text-align: left;\n text-overflow: ellipsis;\n overflow: hidden;\n"]);
86
-
87
- _templateObject4 = function _templateObject4() {
88
- return data;
89
- };
90
-
91
- return data;
92
- }
93
-
94
- function _templateObject3() {
95
- var data = (0, _taggedTemplateLiteral2["default"])(["\n padding: 0 16px;\n cursor: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n width: 100%;\n height: auto;\n min-height: 40px;\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 border-bottom-right-radius: ", ";\n border-bottom-left-radius: ", ";\n &:hover {\n background-color: ", ";\n }\n &:active {\n background-color: ", ";\n }\n"]);
96
-
97
- _templateObject3 = function _templateObject3() {
98
- return data;
99
- };
100
-
101
- return data;
102
- }
103
-
104
- 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: 36px;\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 color: ", ";\n border-width: ", ";\n border-style: ", ";\n border-color: ", ";\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"]);
106
-
107
- _templateObject2 = function _templateObject2() {
108
- return data;
109
- };
110
-
111
- return data;
112
- }
113
-
114
- function _templateObject() {
115
- var data = (0, _taggedTemplateLiteral2["default"])(["\n opacity: ", ";\n height: 40px;\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"]);
116
-
117
- _templateObject = function _templateObject() {
118
- return data;
119
- };
120
-
121
- return data;
122
- }
123
-
124
- var DxcDropdown = function DxcDropdown(_ref) {
125
- var _ref$options = _ref.options,
126
- options = _ref$options === void 0 ? [] : _ref$options,
127
- _ref$optionsIconPosit = _ref.optionsIconPosition,
128
- optionsIconPosition = _ref$optionsIconPosit === void 0 ? "before" : _ref$optionsIconPosit,
129
- icon = _ref.icon,
130
- _ref$iconSrc = _ref.iconSrc,
131
- iconSrc = _ref$iconSrc === void 0 ? "" : _ref$iconSrc,
132
- _ref$iconPosition = _ref.iconPosition,
133
- iconPosition = _ref$iconPosition === void 0 ? "before" : _ref$iconPosition,
134
- _ref$label = _ref.label,
135
- label = _ref$label === void 0 ? "" : _ref$label,
136
- _ref$disabled = _ref.disabled,
137
- disabled = _ref$disabled === void 0 ? false : _ref$disabled,
138
- _ref$caretHidden = _ref.caretHidden,
139
- caretHidden = _ref$caretHidden === void 0 ? false : _ref$caretHidden,
140
- onSelectOption = _ref.onSelectOption,
141
- margin = _ref.margin,
142
- _ref$size = _ref.size,
143
- size = _ref$size === void 0 ? "fitContent" : _ref$size,
144
- _ref$expandOnHover = _ref.expandOnHover,
145
- expandOnHover = _ref$expandOnHover === void 0 ? false : _ref$expandOnHover,
146
- _ref$tabIndex = _ref.tabIndex,
147
- tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
148
-
149
- var _useState = (0, _react.useState)(),
150
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
151
- width = _useState2[0],
152
- setWidth = _useState2[1];
153
-
154
- var colorsTheme = (0, _useTheme["default"])();
155
- var ref = (0, _react.useRef)(null);
156
-
157
- var handleResize = function handleResize() {
158
- if (ref.current) setWidth(ref.current.offsetWidth);
159
- };
160
-
161
- (0, _react.useEffect)(function () {
162
- if (ref.current) {
163
- ref.current.addEventListener("resize", handleResize);
164
- handleResize();
165
- }
166
-
167
- return function () {
168
- if (ref.current) ref.current.removeEventListener("resize", handleResize);
169
- };
170
- }, []);
171
-
172
- var _useState3 = (0, _react.useState)(null),
173
- _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
174
- anchorEl = _useState4[0],
175
- setAnchorEl = _useState4[1];
176
-
177
- function handleClickListItem(event) {
178
- setAnchorEl(event.currentTarget);
179
- }
180
-
181
- function handleMenuItemClick(option) {
182
- setAnchorEl(null);
183
-
184
- if (typeof onSelectOption === "function") {
185
- onSelectOption(option.value);
186
- }
187
- }
188
-
189
- function handleClose() {
190
- setAnchorEl(null);
191
- }
192
-
193
- var handleCloseOver = expandOnHover ? handleClose : undefined;
194
-
195
- var UpArrowIcon = function UpArrowIcon() {
196
- return _react["default"].createElement("svg", {
197
- xmlns: "http://www.w3.org/2000/svg",
198
- width: "24",
199
- height: "24",
200
- viewBox: "0 0 24 24"
201
- }, _react["default"].createElement("path", {
202
- d: "M7 14l5-5 5 5z"
203
- }), _react["default"].createElement("path", {
204
- d: "M0 0h24v24H0z",
205
- fill: "none"
206
- }));
207
- };
208
-
209
- var DownArrowIcon = function DownArrowIcon() {
210
- return _react["default"].createElement("svg", {
211
- xmlns: "http://www.w3.org/2000/svg",
212
- width: "24",
213
- height: "24",
214
- viewBox: "0 0 24 24"
215
- }, _react["default"].createElement("path", {
216
- d: "M7 10l5 5 5-5z"
217
- }), _react["default"].createElement("path", {
218
- d: "M0 0h24v24H0z",
219
- fill: "none"
220
- }));
221
- };
222
-
223
- return _react["default"].createElement(_styledComponents.ThemeProvider, {
224
- theme: colorsTheme.dropdown
225
- }, _react["default"].createElement(DxCDropdownContainer, {
226
- margin: margin,
227
- size: size,
228
- disabled: disabled
229
- }, _react["default"].createElement("div", {
230
- onMouseOver: expandOnHover && !disabled ? handleClickListItem : undefined,
231
- onMouseOut: handleCloseOver,
232
- onFocus: handleCloseOver,
233
- onBlur: handleCloseOver
234
- }, _react["default"].createElement(DropdownTrigger, {
235
- opened: anchorEl === null ? false : true,
236
- onClick: handleClickListItem,
237
- disabled: disabled,
238
- label: label,
239
- caretHidden: caretHidden,
240
- margin: margin,
241
- size: size,
242
- ref: ref,
243
- tabIndex: tabIndex
244
- }, _react["default"].createElement(DropdownTriggerContainer, {
245
- iconPosition: iconPosition,
246
- caretHidden: caretHidden
247
- }, icon ? _react["default"].createElement(ListIconContainer, {
248
- label: label,
249
- iconPosition: iconPosition
250
- }, (0, _typeof2["default"])(icon) === "object" ? icon : _react["default"].createElement(icon)) : iconSrc && _react["default"].createElement(ListIcon, {
251
- label: label,
252
- src: iconSrc,
253
- iconPosition: iconPosition
254
- }), _react["default"].createElement(DropdownTriggerLabel, {
255
- iconPosition: iconPosition,
256
- label: label
257
- }, label)), _react["default"].createElement(CaretIcon, null, caretHidden !== true && (anchorEl === null ? _react["default"].createElement(DownArrowIcon, {
258
- caretHidden: caretHidden,
259
- margin: margin
260
- }) : _react["default"].createElement(UpArrowIcon, {
261
- caretHidden: caretHidden,
262
- margin: margin
263
- })))), _react["default"].createElement(DxcMenu, {
264
- anchorEl: anchorEl,
265
- open: Boolean(anchorEl),
266
- onClose: handleClose,
267
- getContentAnchorEl: null,
268
- anchorOrigin: {
269
- vertical: "bottom",
270
- horizontal: "left"
271
- },
272
- transformOrigin: {
273
- vertical: "top",
274
- horizontal: "left"
275
- },
276
- optionsIconPosition: optionsIconPosition,
277
- size: size,
278
- width: width,
279
- role: undefined,
280
- transition: true,
281
- disablePortal: true,
282
- placement: "bottom-start"
283
- }, function (_ref2) {
284
- var TransitionProps = _ref2.TransitionProps;
285
- return _react["default"].createElement(_Grow["default"], TransitionProps, _react["default"].createElement(_Paper["default"], null, _react["default"].createElement(_core.ClickAwayListener, {
286
- onClickAway: handleClose
287
- }, _react["default"].createElement(_MenuList["default"], {
288
- autoFocusItem: Boolean(anchorEl),
289
- id: "menu-list-grow"
290
- }, options.map(function (option) {
291
- return _react["default"].createElement(_MenuItem["default"], {
292
- key: option.value,
293
- value: option.value,
294
- disableRipple: true,
295
- onClick: function onClick(event) {
296
- return handleMenuItemClick(option);
297
- }
298
- }, option.icon ? _react["default"].createElement(ListIconContainer, {
299
- label: option.label,
300
- iconPosition: optionsIconPosition
301
- }, (0, _typeof2["default"])(option.icon) === "object" ? option.icon : _react["default"].createElement(option.icon)) : option.iconSrc && _react["default"].createElement(ListIcon, {
302
- label: option.label,
303
- src: option.iconSrc,
304
- iconPosition: optionsIconPosition
305
- }), _react["default"].createElement("span", {
306
- className: "optionLabel"
307
- }, option.label));
308
- })))));
309
- }))));
310
- };
311
-
312
- var sizes = {
313
- small: "60px",
314
- medium: "240px",
315
- large: "480px",
316
- fillParent: "100%",
317
- fitContent: "unset"
318
- };
319
-
320
- var calculateWidth = function calculateWidth(margin, size) {
321
- if (size === "fillParent") {
322
- return "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")");
323
- }
324
-
325
- return sizes[size];
326
- };
327
-
328
- var DxCDropdownContainer = _styledComponents["default"].div(_templateObject(), function (props) {
329
- return props.disabled ? "0.34" : "unset";
330
- }, function (props) {
331
- return calculateWidth(props.margin, props.size);
332
- }, function (props) {
333
- return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
334
- }, function (props) {
335
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
336
- }, function (props) {
337
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.right ? _variables.spaces[props.margin.right] : "";
338
- }, function (props) {
339
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
340
- }, function (props) {
341
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
342
- }, function (props) {
343
- return props.theme.focusColor;
344
- });
345
-
346
- var DxcMenu = (0, _styledComponents["default"])(_Popper["default"])(_templateObject2(), function (props) {
347
- return calculateWidth(props.margin, props.size);
348
- }, function (props) {
349
- return props.theme.optionsPaddingTop;
350
- }, function (props) {
351
- return props.theme.optionsPaddingBottom;
352
- }, function (props) {
353
- return props.theme.optionsPaddingLeft;
354
- }, function (props) {
355
- return props.theme.optionsPaddingRight;
356
- }, function (props) {
357
- return "".concat(props.width, "px");
358
- }, function (props) {
359
- return props.theme.optionsListFontColor;
360
- }, function (props) {
361
- return props.theme.borderThickness;
362
- }, function (props) {
363
- return props.theme.borderStyle;
364
- }, function (props) {
365
- return props.theme.borderColor;
366
- }, function (props) {
367
- return props.theme.borderRadius;
368
- }, function (props) {
369
- return props.theme.borderRadius;
370
- }, function (props) {
371
- return props.optionsIconPosition === "after" && "row-reverse" || "row";
372
- }, function (props) {
373
- return props.optionsIconPosition === "after" && "flex-end" || "";
374
- }, function (props) {
375
- return props.theme.optionsFontSize;
376
- }, function (props) {
377
- return props.theme.optionsFontStyle;
378
- }, function (props) {
379
- return props.theme.optionsFontWeight;
380
- }, function (props) {
381
- return props.theme.optionsFontColor;
382
- }, function (props) {
383
- return props.theme.optionsListHoverBackgroundColor;
384
- }, function (props) {
385
- return props.theme.dropdownFontColor;
386
- }, function (props) {
387
- return props.theme.scrollBarTrackColor;
388
- }, function (props) {
389
- return props.theme.scrollBarThumbColor;
390
- });
391
-
392
- var DropdownTrigger = _styledComponents["default"].button(_templateObject3(), function (props) {
393
- return props.disabled ? "not-allowed" : "pointer";
394
- }, function (props) {
395
- return props.theme.fontFamily;
396
- }, function (props) {
397
- return props.theme.buttonFontSize;
398
- }, function (props) {
399
- return props.theme.buttonFontStyle;
400
- }, function (props) {
401
- return props.theme.buttonFontWeight;
402
- }, function (props) {
403
- return props.theme.borderRadius;
404
- }, function (props) {
405
- return props.theme.borderThickness;
406
- }, function (props) {
407
- return props.theme.borderStyle;
408
- }, function (props) {
409
- return props.theme.borderColor;
410
- }, function (props) {
411
- return props.label === "" ? "0px" : calculateWidth(props.margin, props.size);
412
- }, function (props) {
413
- return props.theme.labelPaddingTop;
414
- }, function (props) {
415
- return props.theme.labelPaddingBottom;
416
- }, function (props) {
417
- return props.theme.labelPaddingLeft;
418
- }, function (props) {
419
- return props.theme.labelPaddingRight;
420
- }, function (props) {
421
- return props.opened === true ? props.theme.buttonHoverBackgroundColor : props.theme.buttonBackgroundColor;
422
- }, function (props) {
423
- return props.theme.buttonFontColor;
424
- }, function (props) {
425
- return props.opened === true ? "0px" : props.theme.borderRadius;
426
- }, function (props) {
427
- return props.opened === true ? "0px" : props.theme.borderRadius;
428
- }, function (props) {
429
- return !props.disabled ? props.theme.buttonHoverBackgroundColor : "";
430
- }, function (props) {
431
- return !props.disabled ? "#d9d9d9" : "";
432
- });
433
-
434
- var DropdownTriggerLabel = _styledComponents["default"].span(_templateObject4());
435
-
436
- var DropdownTriggerContainer = _styledComponents["default"].span(_templateObject5(), function (props) {
437
- return props.iconPosition === "after" && "row-reverse" || "row";
438
- }, function (props) {
439
- return props.caretHidden ? "100%" : "calc(100% - 36px)";
440
- });
441
-
442
- var ListIcon = _styledComponents["default"].img(_templateObject6(), function (props) {
443
- return props.theme.iconSize;
444
- }, function (props) {
445
- return props.theme.iconSize;
446
- }, function (props) {
447
- return props.iconPosition === "after" && props.label !== "" && props.theme.iconOptionSpacing || "0px";
448
- }, function (props) {
449
- return props.iconPosition === "before" && props.label !== "" && props.theme.iconOptionSpacing || "0px";
450
- });
451
-
452
- var ListIconContainer = _styledComponents["default"].div(_templateObject7(), function (props) {
453
- return props.theme.iconColor;
454
- }, function (props) {
455
- return props.theme.iconSize;
456
- }, function (props) {
457
- return props.theme.iconSize;
458
- }, function (props) {
459
- return props.iconPosition === "after" && props.label !== "" && props.theme.iconOptionSpacing || "0px";
460
- }, function (props) {
461
- return props.iconPosition === "before" && props.label !== "" && props.theme.iconOptionSpacing || "0px";
462
- });
463
-
464
- var CaretIcon = _styledComponents["default"].div(_templateObject8(), function (props) {
465
- return props.caretHidden === true ? "none" : "inline-flex";
466
- }, function (props) {
467
- return props.theme.caretIconMarginTop;
468
- }, function (props) {
469
- return props.theme.caretIconMarginBottom;
470
- }, function (props) {
471
- return props.theme.caretIconMarginLeft;
472
- }, function (props) {
473
- return props.theme.caretIconMarginRight;
474
- }, function (props) {
475
- return props.theme.fontColor;
476
- });
477
-
478
- DxcDropdown.propTypes = {
479
- size: _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(sizes))),
480
- margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
481
- top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
482
- bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
483
- left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
484
- right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
485
- }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))]),
486
- optionsIconPosition: _propTypes["default"].oneOf(["after", "before", ""]),
487
- icon: _propTypes["default"].oneOfType([_propTypes["default"].element, _propTypes["default"].func]),
488
- iconSrc: _propTypes["default"].string,
489
- iconPosition: _propTypes["default"].oneOf(["after", "before", ""]),
490
- label: _propTypes["default"].string,
491
- caretHidden: _propTypes["default"].bool,
492
- disabled: _propTypes["default"].bool,
493
- expandOnHover: _propTypes["default"].bool,
494
- onSelectOption: _propTypes["default"].func,
495
- options: _propTypes["default"].arrayOf(_propTypes["default"].shape({
496
- value: _propTypes["default"].any.isRequired,
497
- label: _propTypes["default"].any.isRequired,
498
- icon: _propTypes["default"].oneOfType([_propTypes["default"].element, _propTypes["default"].func]),
499
- iconSrc: _propTypes["default"].string
500
- })),
501
- tabIndex: _propTypes["default"].number
502
- };
503
- var _default = DxcDropdown;
504
- exports["default"] = _default;