@dxc-technology/halstack-react 0.0.0-35a61c7 → 0.0.0-35e3991

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 (195) 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 +76 -64
  7. package/babel.config.js +0 -8
  8. package/dist/ThemeContext.js +0 -201
  9. package/dist/accordion/Accordion.js +0 -284
  10. package/dist/accordion/Accordion.stories.js +0 -207
  11. package/dist/accordion/readme.md +0 -96
  12. package/dist/accordion-group/AccordionGroup.js +0 -154
  13. package/dist/accordion-group/AccordionGroup.stories.js +0 -207
  14. package/dist/accordion-group/readme.md +0 -70
  15. package/dist/alert/Alert.js +0 -318
  16. package/dist/alert/Alert.stories.js +0 -158
  17. package/dist/alert/close.svg +0 -4
  18. package/dist/alert/error.svg +0 -4
  19. package/dist/alert/info.svg +0 -4
  20. package/dist/alert/readme.md +0 -43
  21. package/dist/alert/success.svg +0 -4
  22. package/dist/alert/warning.svg +0 -4
  23. package/dist/badge/Badge.js +0 -40
  24. package/dist/box/Box.js +0 -147
  25. package/dist/button/Button.js +0 -219
  26. package/dist/button/Button.stories.js +0 -224
  27. package/dist/button/readme.md +0 -93
  28. package/dist/card/Card.js +0 -247
  29. package/dist/checkbox/Checkbox.js +0 -233
  30. package/dist/checkbox/Checkbox.stories.js +0 -144
  31. package/dist/checkbox/readme.md +0 -116
  32. package/dist/chip/Chip.js +0 -223
  33. package/dist/common/OpenSans.css +0 -81
  34. package/dist/common/RequiredComponent.js +0 -40
  35. package/dist/common/fonts/OpenSans-Bold.ttf +0 -0
  36. package/dist/common/fonts/OpenSans-BoldItalic.ttf +0 -0
  37. package/dist/common/fonts/OpenSans-ExtraBold.ttf +0 -0
  38. package/dist/common/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  39. package/dist/common/fonts/OpenSans-Italic.ttf +0 -0
  40. package/dist/common/fonts/OpenSans-Light.ttf +0 -0
  41. package/dist/common/fonts/OpenSans-LightItalic.ttf +0 -0
  42. package/dist/common/fonts/OpenSans-Regular.ttf +0 -0
  43. package/dist/common/fonts/OpenSans-SemiBold.ttf +0 -0
  44. package/dist/common/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  45. package/dist/common/utils.js +0 -42
  46. package/dist/common/variables.js +0 -523
  47. package/dist/date/Date.js +0 -357
  48. package/dist/date/Date.stories.js +0 -205
  49. package/dist/date/calendar.svg +0 -1
  50. package/dist/date/calendar_dark.svg +0 -1
  51. package/dist/date/readme.md +0 -73
  52. package/dist/dialog/Dialog.js +0 -203
  53. package/dist/dialog/Dialog.stories.js +0 -217
  54. package/dist/dialog/readme.md +0 -32
  55. package/dist/dropdown/Dropdown.js +0 -456
  56. package/dist/dropdown/Dropdown.stories.js +0 -249
  57. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  58. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  59. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  60. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  61. package/dist/dropdown/readme.md +0 -69
  62. package/dist/footer/Footer.js +0 -379
  63. package/dist/footer/Footer.stories.js +0 -94
  64. package/dist/footer/dxc_logo_wht.png +0 -0
  65. package/dist/footer/readme.md +0 -41
  66. package/dist/header/Header.js +0 -385
  67. package/dist/header/Header.stories.js +0 -176
  68. package/dist/header/close_icon.svg +0 -1
  69. package/dist/header/dxc_logo_black.png +0 -0
  70. package/dist/header/dxc_logo_blk_rgb.svg +0 -6
  71. package/dist/header/dxc_logo_white.png +0 -0
  72. package/dist/header/hamb_menu_black.svg +0 -1
  73. package/dist/header/hamb_menu_white.svg +0 -1
  74. package/dist/header/readme.md +0 -33
  75. package/dist/heading/Heading.js +0 -163
  76. package/dist/input-text/InputText.js +0 -609
  77. package/dist/input-text/InputText.stories.js +0 -209
  78. package/dist/input-text/error.svg +0 -1
  79. package/dist/input-text/readme.md +0 -91
  80. package/dist/layout/ApplicationLayout.js +0 -331
  81. package/dist/layout/facebook.svg +0 -45
  82. package/dist/layout/linkedin.svg +0 -50
  83. package/dist/layout/twitter.svg +0 -53
  84. package/dist/link/Link.js +0 -200
  85. package/dist/link/readme.md +0 -51
  86. package/dist/main.js +0 -303
  87. package/dist/paginator/Paginator.js +0 -261
  88. package/dist/paginator/images/next.svg +0 -3
  89. package/dist/paginator/images/nextPage.svg +0 -3
  90. package/dist/paginator/images/previous.svg +0 -3
  91. package/dist/paginator/images/previousPage.svg +0 -3
  92. package/dist/paginator/readme.md +0 -50
  93. package/dist/progress-bar/ProgressBar.js +0 -192
  94. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  95. package/dist/progress-bar/readme.md +0 -63
  96. package/dist/radio/Radio.js +0 -190
  97. package/dist/radio/Radio.stories.js +0 -166
  98. package/dist/radio/readme.md +0 -70
  99. package/dist/resultsetTable/ResultsetTable.js +0 -332
  100. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  101. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  102. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  103. package/dist/select/Select.js +0 -490
  104. package/dist/select/Select.stories.js +0 -235
  105. package/dist/select/readme.md +0 -72
  106. package/dist/sidenav/Sidenav.js +0 -155
  107. package/dist/slider/Slider.js +0 -267
  108. package/dist/slider/Slider.stories.js +0 -241
  109. package/dist/slider/readme.md +0 -64
  110. package/dist/spinner/Spinner.js +0 -198
  111. package/dist/spinner/Spinner.stories.js +0 -183
  112. package/dist/spinner/readme.md +0 -65
  113. package/dist/switch/Switch.js +0 -194
  114. package/dist/switch/Switch.stories.js +0 -134
  115. package/dist/switch/readme.md +0 -133
  116. package/dist/table/Table.js +0 -98
  117. package/dist/tabs/Tabs.js +0 -325
  118. package/dist/tabs/Tabs.stories.js +0 -130
  119. package/dist/tabs/readme.md +0 -78
  120. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  121. package/dist/tabs-for-sections/readme.md +0 -78
  122. package/dist/tag/Tag.js +0 -268
  123. package/dist/textarea/Textarea.js +0 -238
  124. package/dist/toggle/Toggle.js +0 -220
  125. package/dist/toggle/Toggle.stories.js +0 -297
  126. package/dist/toggle/readme.md +0 -80
  127. package/dist/toggle-group/ToggleGroup.js +0 -223
  128. package/dist/toggle-group/readme.md +0 -82
  129. package/dist/upload/Upload.js +0 -209
  130. package/dist/upload/Upload.stories.js +0 -72
  131. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -123
  132. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  133. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  134. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -293
  135. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  136. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  137. package/dist/upload/file-upload/FileToUpload.js +0 -162
  138. package/dist/upload/file-upload/audio-icon.svg +0 -4
  139. package/dist/upload/file-upload/close.svg +0 -4
  140. package/dist/upload/file-upload/file-icon.svg +0 -4
  141. package/dist/upload/file-upload/video-icon.svg +0 -4
  142. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  143. package/dist/upload/readme.md +0 -37
  144. package/dist/upload/transaction/Transaction.js +0 -152
  145. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  146. package/dist/upload/transaction/audio-icon.svg +0 -4
  147. package/dist/upload/transaction/error-icon.svg +0 -4
  148. package/dist/upload/transaction/file-icon-err.svg +0 -4
  149. package/dist/upload/transaction/file-icon.svg +0 -4
  150. package/dist/upload/transaction/image-icon-err.svg +0 -4
  151. package/dist/upload/transaction/image-icon.svg +0 -4
  152. package/dist/upload/transaction/success-icon.svg +0 -4
  153. package/dist/upload/transaction/video-icon-err.svg +0 -4
  154. package/dist/upload/transaction/video-icon.svg +0 -4
  155. package/dist/upload/transactions/Transactions.js +0 -122
  156. package/dist/useTheme.js +0 -22
  157. package/dist/wizard/Wizard.js +0 -355
  158. package/dist/wizard/invalid_icon.svg +0 -6
  159. package/dist/wizard/valid_icon.svg +0 -6
  160. package/dist/wizard/validation-wrong.svg +0 -6
  161. package/test/Accordion.test.js +0 -33
  162. package/test/AccordionGroup.test.js +0 -125
  163. package/test/Alert.test.js +0 -53
  164. package/test/Box.test.js +0 -10
  165. package/test/Button.test.js +0 -18
  166. package/test/Card.test.js +0 -30
  167. package/test/Checkbox.test.js +0 -45
  168. package/test/Chip.test.js +0 -25
  169. package/test/Date.test.js +0 -393
  170. package/test/Dialog.test.js +0 -23
  171. package/test/Dropdown.test.js +0 -130
  172. package/test/Footer.test.js +0 -99
  173. package/test/Header.test.js +0 -39
  174. package/test/Heading.test.js +0 -35
  175. package/test/InputText.test.js +0 -240
  176. package/test/Link.test.js +0 -42
  177. package/test/Paginator.test.js +0 -177
  178. package/test/ProgressBar.test.js +0 -35
  179. package/test/Radio.test.js +0 -37
  180. package/test/ResultsetTable.test.js +0 -330
  181. package/test/Select.test.js +0 -192
  182. package/test/Sidenav.test.js +0 -45
  183. package/test/Slider.test.js +0 -82
  184. package/test/Spinner.test.js +0 -27
  185. package/test/Switch.test.js +0 -45
  186. package/test/Table.test.js +0 -36
  187. package/test/Tabs.test.js +0 -109
  188. package/test/TabsForSections.test.js +0 -34
  189. package/test/Tag.test.js +0 -32
  190. package/test/TextArea.test.js +0 -52
  191. package/test/ToggleGroup.test.js +0 -81
  192. package/test/Upload.test.js +0 -60
  193. package/test/Wizard.test.js +0 -130
  194. package/test/mocks/pngMock.js +0 -1
  195. package/test/mocks/svgMock.js +0 -1
@@ -1,456 +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-left: 10px;\n margin-right: 10px;\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 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"]);
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 max-height: 20px;\n max-width: 20px;\n width: 20px;\n height: 20px;\n margin-right: ", ";\n margin-left: ", ";\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 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"]);
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 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"]);
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 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"]);
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.theme.fontSizeBase;
325
- }, function (props) {
326
- return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
327
- }, function (props) {
328
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
329
- }, function (props) {
330
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.right ? _variables.spaces[props.margin.right] : "";
331
- }, function (props) {
332
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
333
- }, function (props) {
334
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
335
- }, function (props) {
336
- return props.theme.focusColor;
337
- });
338
-
339
- var DxcMenu = (0, _styledComponents["default"])(_Popper["default"])(_templateObject2(), function (props) {
340
- return calculateWidth(props.margin, props.size);
341
- }, function (props) {
342
- return "".concat(props.width, "px");
343
- }, function (props) {
344
- return props.theme.dropdownBackgroundColor;
345
- }, function (props) {
346
- return props.theme.dropdownFontColor;
347
- }, function (props) {
348
- return props.optionsIconPosition === "after" && "row-reverse" || "row";
349
- }, function (props) {
350
- return props.optionsIconPosition === "after" && "flex-end" || "";
351
- }, function (props) {
352
- return props.theme.fontSize;
353
- }, function (props) {
354
- return props.theme.fontFamily;
355
- }, function (props) {
356
- return props.theme.hoverBackgroundOption;
357
- }, function (props) {
358
- return props.theme.dropdownFontColor;
359
- }, function (props) {
360
- return props.theme.scrollBarTrackColor;
361
- }, function (props) {
362
- return props.theme.scrollBarThumbColor;
363
- });
364
-
365
- var DropdownTrigger = _styledComponents["default"].button(_templateObject3(), function (props) {
366
- return props.theme.fontFamily;
367
- }, function (props) {
368
- return props.theme.fontSize;
369
- }, function (props) {
370
- return props.label === "" ? "0px" : calculateWidth(props.margin, props.size);
371
- }, function (props) {
372
- if (props.caretHidden === true && props.label === "") {
373
- return "10px 15px";
374
- } else {
375
- return "10px 15px 10px 20px";
376
- }
377
- }, function (props) {
378
- return props.opened === true ? props.theme.hoverBackgroundColor : props.theme.backgroundColor;
379
- }, function (props) {
380
- return props.theme.fontColor;
381
- }, function (props) {
382
- return props.opened === true ? "0px" : "2px";
383
- }, function (props) {
384
- return props.opened === true ? "0px" : "2px";
385
- }, function (props) {
386
- return props.theme.hoverBackgroundColor;
387
- });
388
-
389
- var DropdownTriggerLabel = _styledComponents["default"].span(_templateObject4());
390
-
391
- var DropdownTriggerContainer = _styledComponents["default"].span(_templateObject5(), function (props) {
392
- return props.iconPosition === "after" && "row-reverse" || "row";
393
- }, function (props) {
394
- return props.caretHidden ? "100%" : "calc(100% - 44px)";
395
- });
396
-
397
- var ListIcon = _styledComponents["default"].img(_templateObject6(), function (props) {
398
- if (props.iconPosition === "before" && props.label !== "") {
399
- return "10px";
400
- } else {
401
- return "0px";
402
- }
403
- }, function (props) {
404
- if (props.iconPosition === "after" && props.label !== "") {
405
- return "10px";
406
- } else {
407
- return "0px";
408
- }
409
- });
410
-
411
- var ListIconContainer = _styledComponents["default"].div(_templateObject7(), function (props) {
412
- if (props.iconPosition === "before" && props.label !== "") {
413
- return "10px";
414
- } else {
415
- return "0px";
416
- }
417
- }, function (props) {
418
- if (props.iconPosition === "after" && props.label !== "") {
419
- return "10px";
420
- } else {
421
- return "0px";
422
- }
423
- });
424
-
425
- var CaretIcon = _styledComponents["default"].div(_templateObject8(), function (props) {
426
- return props.caretHidden === true ? "none" : "inline-flex";
427
- }, function (props) {
428
- return props.theme.fontColor;
429
- });
430
-
431
- DxcDropdown.propTypes = {
432
- size: _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(sizes))),
433
- margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
434
- top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
435
- bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
436
- left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
437
- right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
438
- }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))]),
439
- optionsIconPosition: _propTypes["default"].oneOf(["after", "before", ""]),
440
- icon: _propTypes["default"].oneOfType([_propTypes["default"].element, _propTypes["default"].func]),
441
- iconSrc: _propTypes["default"].string,
442
- iconPosition: _propTypes["default"].oneOf(["after", "before", ""]),
443
- label: _propTypes["default"].string,
444
- caretHidden: _propTypes["default"].bool,
445
- expandOnHover: _propTypes["default"].bool,
446
- onSelectOption: _propTypes["default"].func,
447
- options: _propTypes["default"].arrayOf(_propTypes["default"].shape({
448
- value: _propTypes["default"].any.isRequired,
449
- label: _propTypes["default"].any.isRequired,
450
- icon: _propTypes["default"].oneOfType([_propTypes["default"].element, _propTypes["default"].func]),
451
- iconSrc: _propTypes["default"].string
452
- })),
453
- tabIndex: _propTypes["default"].number
454
- };
455
- var _default = DxcDropdown;
456
- exports["default"] = _default;