@dxc-technology/halstack-react 0.0.0-bf1c098 → 0.0.0-bf5996a

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