@dxc-technology/halstack-react 0.0.0-8c89dca → 0.0.0-8d148df

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