@dxc-technology/halstack-react 0.0.0-10258e4 → 0.0.0-103e61b

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 +3960 -0
  3. package/dist/index.d.ts +3960 -0
  4. package/dist/index.js +14639 -0
  5. package/dist/index.mjs +14551 -0
  6. package/package.json +92 -62
  7. package/babel.config.js +0 -4
  8. package/dist/ThemeContext.js +0 -15
  9. package/dist/accordion/Accordion.js +0 -268
  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 -159
  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 -304
  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/box/Box.js +0 -148
  24. package/dist/button/Button.js +0 -202
  25. package/dist/button/Button.stories.js +0 -224
  26. package/dist/button/readme.md +0 -93
  27. package/dist/card/Card.js +0 -217
  28. package/dist/checkbox/Checkbox.js +0 -240
  29. package/dist/checkbox/Checkbox.stories.js +0 -144
  30. package/dist/checkbox/readme.md +0 -116
  31. package/dist/chip/Chip.js +0 -208
  32. package/dist/common/OpenSans.css +0 -81
  33. package/dist/common/RequiredComponent.js +0 -46
  34. package/dist/common/fonts/OpenSans-Bold.ttf +0 -0
  35. package/dist/common/fonts/OpenSans-BoldItalic.ttf +0 -0
  36. package/dist/common/fonts/OpenSans-ExtraBold.ttf +0 -0
  37. package/dist/common/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  38. package/dist/common/fonts/OpenSans-Italic.ttf +0 -0
  39. package/dist/common/fonts/OpenSans-Light.ttf +0 -0
  40. package/dist/common/fonts/OpenSans-LightItalic.ttf +0 -0
  41. package/dist/common/fonts/OpenSans-Regular.ttf +0 -0
  42. package/dist/common/fonts/OpenSans-SemiBold.ttf +0 -0
  43. package/dist/common/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  44. package/dist/common/services/example-service.js +0 -10
  45. package/dist/common/services/example-service.test.js +0 -12
  46. package/dist/common/utils.js +0 -42
  47. package/dist/common/variables.js +0 -434
  48. package/dist/date/Date.js +0 -359
  49. package/dist/date/Date.stories.js +0 -205
  50. package/dist/date/calendar.svg +0 -1
  51. package/dist/date/calendar_dark.svg +0 -1
  52. package/dist/date/readme.md +0 -73
  53. package/dist/dialog/Dialog.js +0 -197
  54. package/dist/dialog/Dialog.stories.js +0 -217
  55. package/dist/dialog/readme.md +0 -32
  56. package/dist/dropdown/Dropdown.js +0 -449
  57. package/dist/dropdown/Dropdown.stories.js +0 -249
  58. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  59. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  60. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  61. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  62. package/dist/dropdown/readme.md +0 -69
  63. package/dist/footer/Footer.js +0 -371
  64. package/dist/footer/Footer.stories.js +0 -94
  65. package/dist/footer/dxc_logo_wht.png +0 -0
  66. package/dist/footer/readme.md +0 -41
  67. package/dist/header/Header.js +0 -373
  68. package/dist/header/Header.stories.js +0 -176
  69. package/dist/header/close_icon.svg +0 -1
  70. package/dist/header/dxc_logo_black.png +0 -0
  71. package/dist/header/dxc_logo_blk_rgb.svg +0 -6
  72. package/dist/header/dxc_logo_white.png +0 -0
  73. package/dist/header/hamb_menu_black.svg +0 -1
  74. package/dist/header/hamb_menu_white.svg +0 -1
  75. package/dist/header/readme.md +0 -33
  76. package/dist/heading/Heading.js +0 -153
  77. package/dist/input-text/InputText.js +0 -570
  78. package/dist/input-text/InputText.stories.js +0 -209
  79. package/dist/input-text/error.svg +0 -1
  80. package/dist/input-text/readme.md +0 -91
  81. package/dist/layout/ApplicationLayout.js +0 -335
  82. package/dist/layout/facebook.svg +0 -45
  83. package/dist/layout/linkedin.svg +0 -50
  84. package/dist/layout/twitter.svg +0 -53
  85. package/dist/link/Link.js +0 -192
  86. package/dist/link/readme.md +0 -51
  87. package/dist/main.js +0 -287
  88. package/dist/paginator/Paginator.js +0 -232
  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/progress-bar/ProgressBar.js +0 -185
  95. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  96. package/dist/progress-bar/readme.md +0 -63
  97. package/dist/radio/Radio.js +0 -195
  98. package/dist/radio/Radio.stories.js +0 -166
  99. package/dist/radio/readme.md +0 -70
  100. package/dist/resultsetTable/ResultsetTable.js +0 -341
  101. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  102. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  103. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  104. package/dist/select/Select.js +0 -473
  105. package/dist/select/Select.stories.js +0 -235
  106. package/dist/select/readme.md +0 -72
  107. package/dist/sidenav/Sidenav.js +0 -128
  108. package/dist/slider/Slider.js +0 -266
  109. package/dist/slider/Slider.stories.js +0 -241
  110. package/dist/slider/readme.md +0 -64
  111. package/dist/spinner/Spinner.js +0 -193
  112. package/dist/spinner/Spinner.stories.js +0 -183
  113. package/dist/spinner/readme.md +0 -65
  114. package/dist/switch/Switch.js +0 -199
  115. package/dist/switch/Switch.stories.js +0 -134
  116. package/dist/switch/readme.md +0 -133
  117. package/dist/table/Table.js +0 -105
  118. package/dist/tabs/Tabs.js +0 -185
  119. package/dist/tabs/Tabs.stories.js +0 -130
  120. package/dist/tabs/readme.md +0 -78
  121. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  122. package/dist/tabs-for-sections/readme.md +0 -78
  123. package/dist/tag/Tag.js +0 -249
  124. package/dist/textarea/Textarea.js +0 -227
  125. package/dist/toggle/Toggle.js +0 -223
  126. package/dist/toggle/Toggle.stories.js +0 -297
  127. package/dist/toggle/readme.md +0 -80
  128. package/dist/toggle-group/ToggleGroup.js +0 -226
  129. package/dist/toggle-group/readme.md +0 -82
  130. package/dist/upload/Upload.js +0 -200
  131. package/dist/upload/Upload.stories.js +0 -72
  132. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -122
  133. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  134. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  135. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -279
  136. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  137. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  138. package/dist/upload/file-upload/FileToUpload.js +0 -158
  139. package/dist/upload/file-upload/audio-icon.svg +0 -4
  140. package/dist/upload/file-upload/close.svg +0 -4
  141. package/dist/upload/file-upload/file-icon.svg +0 -4
  142. package/dist/upload/file-upload/video-icon.svg +0 -4
  143. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  144. package/dist/upload/readme.md +0 -37
  145. package/dist/upload/transaction/Transaction.js +0 -155
  146. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  147. package/dist/upload/transaction/audio-icon.svg +0 -4
  148. package/dist/upload/transaction/error-icon.svg +0 -4
  149. package/dist/upload/transaction/file-icon-err.svg +0 -4
  150. package/dist/upload/transaction/file-icon.svg +0 -4
  151. package/dist/upload/transaction/image-icon-err.svg +0 -4
  152. package/dist/upload/transaction/image-icon.svg +0 -4
  153. package/dist/upload/transaction/success-icon.svg +0 -4
  154. package/dist/upload/transaction/video-icon-err.svg +0 -4
  155. package/dist/upload/transaction/video-icon.svg +0 -4
  156. package/dist/upload/transactions/Transactions.js +0 -120
  157. package/dist/wizard/Wizard.js +0 -331
  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 -109
  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 -194
  178. package/test/ProgressBar.test.js +0 -35
  179. package/test/Radio.test.js +0 -37
  180. package/test/ResultsetTable.test.js +0 -304
  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 -88
  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,449 +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 _ThemeContext = _interopRequireDefault(require("../ThemeContext.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: \"Open Sans\", sans-serif;\n font-size: 16px;\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\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: 16px;\n font-family: \"Open Sans\", sans-serif;\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 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
-
147
- var _useState = (0, _react.useState)(),
148
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
149
- width = _useState2[0],
150
- setWidth = _useState2[1];
151
-
152
- var customTheme = (0, _react.useContext)(_ThemeContext["default"]);
153
- var colorsTheme = (0, _react.useMemo)(function () {
154
- return (0, _utils.getCustomTheme)(_variables.theme, (0, _utils.getCustomTheme)(_variables.defaultTheme, customTheme));
155
- }, [customTheme]);
156
- var ref = (0, _react.useRef)(null);
157
-
158
- var handleResize = function handleResize() {
159
- if (ref.current) setWidth(ref.current.offsetWidth);
160
- };
161
-
162
- (0, _react.useEffect)(function () {
163
- if (ref.current) ref.current.addEventListener("resize", handleResize);
164
- handleResize();
165
- return function () {
166
- ref.current.removeEventListener("resize", handleResize);
167
- };
168
- }, []);
169
-
170
- var _useState3 = (0, _react.useState)(null),
171
- _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
172
- anchorEl = _useState4[0],
173
- setAnchorEl = _useState4[1];
174
-
175
- function handleClickListItem(event) {
176
- setAnchorEl(event.currentTarget);
177
- }
178
-
179
- function handleMenuItemClick(option) {
180
- setAnchorEl(null);
181
-
182
- if (typeof onSelectOption === "function") {
183
- onSelectOption(option.value);
184
- }
185
- }
186
-
187
- function handleClose() {
188
- setAnchorEl(null);
189
- }
190
-
191
- var handleCloseOver = expandOnHover ? handleClose : undefined;
192
-
193
- var UpArrowIcon = function UpArrowIcon() {
194
- return _react["default"].createElement("svg", {
195
- xmlns: "http://www.w3.org/2000/svg",
196
- width: "24",
197
- height: "24",
198
- viewBox: "0 0 24 24"
199
- }, _react["default"].createElement("path", {
200
- d: "M7 14l5-5 5 5z"
201
- }), _react["default"].createElement("path", {
202
- d: "M0 0h24v24H0z",
203
- fill: "none"
204
- }));
205
- };
206
-
207
- var DownArrowIcon = function DownArrowIcon() {
208
- return _react["default"].createElement("svg", {
209
- xmlns: "http://www.w3.org/2000/svg",
210
- width: "24",
211
- height: "24",
212
- viewBox: "0 0 24 24"
213
- }, _react["default"].createElement("path", {
214
- d: "M7 10l5 5 5-5z"
215
- }), _react["default"].createElement("path", {
216
- d: "M0 0h24v24H0z",
217
- fill: "none"
218
- }));
219
- };
220
-
221
- return _react["default"].createElement(_styledComponents.ThemeProvider, {
222
- theme: colorsTheme.dropdown
223
- }, _react["default"].createElement(DxCDropdownContainer, {
224
- margin: margin,
225
- size: size,
226
- tabIndex: "0"
227
- }, _react["default"].createElement("div", {
228
- onMouseOver: expandOnHover ? handleClickListItem : undefined,
229
- onMouseOut: handleCloseOver,
230
- onFocus: handleCloseOver,
231
- onBlur: handleCloseOver
232
- }, _react["default"].createElement(DropdownTrigger, {
233
- opened: anchorEl === null ? false : true,
234
- onClick: handleClickListItem,
235
- label: label,
236
- caretHidden: caretHidden,
237
- margin: margin,
238
- size: size,
239
- ref: ref
240
- }, _react["default"].createElement(DropdownTriggerContainer, {
241
- iconPosition: iconPosition,
242
- caretHidden: caretHidden
243
- }, icon ? _react["default"].createElement(ListIconContainer, {
244
- label: label,
245
- iconPosition: iconPosition
246
- }, (0, _typeof2["default"])(icon) === "object" ? icon : _react["default"].createElement(icon)) : iconSrc && _react["default"].createElement(ListIcon, {
247
- label: label,
248
- src: iconSrc,
249
- iconPosition: iconPosition
250
- }), _react["default"].createElement(DropdownTriggerLabel, {
251
- iconPosition: iconPosition,
252
- label: label
253
- }, label)), _react["default"].createElement(CaretIcon, null, caretHidden !== true && (anchorEl === null ? _react["default"].createElement(DownArrowIcon, {
254
- caretHidden: caretHidden,
255
- margin: margin
256
- }) : _react["default"].createElement(UpArrowIcon, {
257
- caretHidden: caretHidden,
258
- margin: margin
259
- })))), _react["default"].createElement(DxcMenu, {
260
- anchorEl: anchorEl,
261
- open: Boolean(anchorEl),
262
- onClose: handleClose,
263
- getContentAnchorEl: null,
264
- anchorOrigin: {
265
- vertical: "bottom",
266
- horizontal: "left"
267
- },
268
- transformOrigin: {
269
- vertical: "top",
270
- horizontal: "left"
271
- },
272
- optionsIconPosition: optionsIconPosition,
273
- size: size,
274
- width: width,
275
- role: undefined,
276
- transition: true,
277
- disablePortal: true,
278
- placement: "bottom-start"
279
- }, function (_ref2) {
280
- var TransitionProps = _ref2.TransitionProps;
281
- return _react["default"].createElement(_Grow["default"], TransitionProps, _react["default"].createElement(_Paper["default"], null, _react["default"].createElement(_core.ClickAwayListener, {
282
- onClickAway: handleClose
283
- }, _react["default"].createElement(_MenuList["default"], {
284
- autoFocusItem: Boolean(anchorEl),
285
- id: "menu-list-grow",
286
- onKeyDown: handleClose
287
- }, options.map(function (option) {
288
- return _react["default"].createElement(_MenuItem["default"], {
289
- key: option.value,
290
- value: option.value,
291
- disableRipple: true,
292
- onClick: function onClick(event) {
293
- return handleMenuItemClick(option);
294
- }
295
- }, option.icon ? _react["default"].createElement(ListIconContainer, {
296
- label: option.label,
297
- iconPosition: optionsIconPosition
298
- }, (0, _typeof2["default"])(option.icon) === "object" ? option.icon : _react["default"].createElement(option.icon)) : option.iconSrc && _react["default"].createElement(ListIcon, {
299
- label: option.label,
300
- src: option.iconSrc,
301
- iconPosition: optionsIconPosition
302
- }), _react["default"].createElement("span", {
303
- className: "optionLabel"
304
- }, option.label));
305
- })))));
306
- }))));
307
- };
308
-
309
- var sizes = {
310
- small: "60px",
311
- medium: "240px",
312
- large: "480px",
313
- fillParent: "100%",
314
- fitContent: "unset"
315
- };
316
-
317
- var calculateWidth = function calculateWidth(margin, size) {
318
- if (size === "fillParent") {
319
- return "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")");
320
- }
321
-
322
- return sizes[size];
323
- };
324
-
325
- var DxCDropdownContainer = _styledComponents["default"].div(_templateObject(), function (props) {
326
- return calculateWidth(props.margin, props.size);
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.backgroundColor + props.theme.hoverBackgroundOption;
355
- }, function (props) {
356
- return props.theme.dropdownFontColor;
357
- }, function (props) {
358
- return props.theme.scrollBarTrackColor;
359
- }, function (props) {
360
- return props.theme.scrollBarThumbColor;
361
- });
362
-
363
- var DropdownTrigger = _styledComponents["default"].button(_templateObject3(), function (props) {
364
- return props.label === "" ? "0px" : calculateWidth(props.margin, props.size);
365
- }, function (props) {
366
- if (props.caretHidden === true && props.label === "") {
367
- return "10px 15px";
368
- } else {
369
- return "10px 15px 10px 20px";
370
- }
371
- }, function (props) {
372
- return props.opened === true ? props.theme.backgroundColor + props.theme.hoverBackgroundColor : props.theme.backgroundColor;
373
- }, function (props) {
374
- return props.theme.fontColor;
375
- }, function (props) {
376
- return props.opened === true ? "0px" : "2px";
377
- }, function (props) {
378
- return props.opened === true ? "0px" : "2px";
379
- }, function (props) {
380
- return props.theme.backgroundColor + props.theme.hoverBackgroundColor;
381
- });
382
-
383
- var DropdownTriggerLabel = _styledComponents["default"].span(_templateObject4());
384
-
385
- var DropdownTriggerContainer = _styledComponents["default"].span(_templateObject5(), function (props) {
386
- return props.iconPosition === "after" && "row-reverse" || "row";
387
- }, function (props) {
388
- return props.caretHidden ? "100%" : "calc(100% - 44px)";
389
- });
390
-
391
- var ListIcon = _styledComponents["default"].img(_templateObject6(), function (props) {
392
- if (props.iconPosition === "before" && props.label !== "") {
393
- return "10px";
394
- } else {
395
- return "0px";
396
- }
397
- }, function (props) {
398
- if (props.iconPosition === "after" && props.label !== "") {
399
- return "10px";
400
- } else {
401
- return "0px";
402
- }
403
- });
404
-
405
- var ListIconContainer = _styledComponents["default"].div(_templateObject7(), function (props) {
406
- if (props.iconPosition === "before" && props.label !== "") {
407
- return "10px";
408
- } else {
409
- return "0px";
410
- }
411
- }, function (props) {
412
- if (props.iconPosition === "after" && props.label !== "") {
413
- return "10px";
414
- } else {
415
- return "0px";
416
- }
417
- });
418
-
419
- var CaretIcon = _styledComponents["default"].div(_templateObject8(), function (props) {
420
- return props.caretHidden === true ? "none" : "inline-flex";
421
- }, function (props) {
422
- return props.theme.fontColor;
423
- });
424
-
425
- DxcDropdown.propTypes = {
426
- size: _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(sizes))),
427
- margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
428
- top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
429
- bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
430
- left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
431
- right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
432
- }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))]),
433
- optionsIconPosition: _propTypes["default"].oneOf(["after", "before", ""]),
434
- icon: _propTypes["default"].oneOfType([_propTypes["default"].element, _propTypes["default"].func]),
435
- iconSrc: _propTypes["default"].string,
436
- iconPosition: _propTypes["default"].oneOf(["after", "before", ""]),
437
- label: _propTypes["default"].string,
438
- caretHidden: _propTypes["default"].bool,
439
- expandOnHover: _propTypes["default"].bool,
440
- onSelectOption: _propTypes["default"].func,
441
- options: _propTypes["default"].arrayOf(_propTypes["default"].shape({
442
- value: _propTypes["default"].any.isRequired,
443
- label: _propTypes["default"].any.isRequired,
444
- icon: _propTypes["default"].oneOfType([_propTypes["default"].element, _propTypes["default"].func]),
445
- iconSrc: _propTypes["default"].string
446
- }))
447
- };
448
- var _default = DxcDropdown;
449
- exports["default"] = _default;
@@ -1,249 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
6
-
7
- var _react = _interopRequireDefault(require("react"));
8
-
9
- var _react2 = require("@storybook/react");
10
-
11
- var _addonActions = require("@storybook/addon-actions");
12
-
13
- var _amazon = _interopRequireDefault(require("../../.storybook/public/amazon.svg"));
14
-
15
- var _addonKnobs = require("@storybook/addon-knobs");
16
-
17
- var _readme = _interopRequireDefault(require("./readme.md"));
18
-
19
- var _Dropdown = _interopRequireDefault(require("./Dropdown"));
20
-
21
- var onChange = (0, _addonActions.action)("onChange");
22
-
23
- onChange.toString = function () {
24
- return "onChangeHandler";
25
- };
26
-
27
- var optionsWithoutIcon = [{
28
- value: 1,
29
- label: "Amazon"
30
- }, {
31
- value: 2,
32
- label: "Ebay"
33
- }, {
34
- value: 3,
35
- label: "Apple"
36
- }];
37
- var optionsWithIcon = [{
38
- value: 1,
39
- label: "Amazon",
40
- iconSrc: _amazon["default"]
41
- }, {
42
- value: 2,
43
- label: "Ebay",
44
- iconSrc: _amazon["default"]
45
- }, {
46
- value: 3,
47
- label: "Apple",
48
- iconSrc: _amazon["default"]
49
- }];
50
-
51
- var selectOption = function selectOption(option) {
52
- console.log(option);
53
- };
54
-
55
- (0, _react2.storiesOf)("Form Components|Dropdown", module).add("Component", function () {
56
- return _react["default"].createElement("div", null, _react["default"].createElement("div", {
57
- style: {
58
- height: "200px",
59
- display: "flex",
60
- flexWrap: "wrap"
61
- }
62
- }, _react["default"].createElement(_Dropdown["default"], {
63
- options: optionsWithoutIcon,
64
- onSelectOption: selectOption,
65
- iconSrc: _amazon["default"],
66
- label: "Basic dropdown",
67
- theme: "light",
68
- mode: "basic",
69
- optionsIconPosition: "before"
70
- }), _react["default"].createElement(_Dropdown["default"], {
71
- options: optionsWithIcon,
72
- onSelectOption: selectOption,
73
- iconSrc: _amazon["default"],
74
- label: "Outlined dropdown",
75
- theme: "light",
76
- mode: "outlined",
77
- optionsIconPosition: "after"
78
- }), _react["default"].createElement(_Dropdown["default"], {
79
- options: optionsWithoutIcon,
80
- onSelectOption: selectOption,
81
- label: "Basic dropdown",
82
- theme: "light",
83
- mode: "basic",
84
- optionsIconPosition: "before"
85
- }), _react["default"].createElement(_Dropdown["default"], {
86
- options: optionsWithoutIcon,
87
- onSelectOption: selectOption,
88
- label: "Outlined dropdown",
89
- theme: "light",
90
- mode: "outlined",
91
- optionsIconPosition: "after"
92
- }), _react["default"].createElement(_Dropdown["default"], {
93
- options: optionsWithIcon,
94
- onSelectOption: selectOption,
95
- iconSrc: _amazon["default"],
96
- label: "",
97
- theme: "light",
98
- mode: "basic",
99
- caretHidden: true,
100
- optionsIconPosition: "before"
101
- }), _react["default"].createElement(_Dropdown["default"], {
102
- options: optionsWithIcon,
103
- onSelectOption: selectOption,
104
- iconSrc: _amazon["default"],
105
- label: "",
106
- theme: "light",
107
- mode: "outlined",
108
- caretHidden: true,
109
- optionsIconPosition: "after"
110
- }), _react["default"].createElement(_Dropdown["default"], {
111
- options: optionsWithIcon,
112
- onSelectOption: selectOption,
113
- iconSrc: _amazon["default"],
114
- label: "",
115
- theme: "light",
116
- mode: "basic",
117
- caretHidden: false,
118
- optionsIconPosition: "before"
119
- }), _react["default"].createElement(_Dropdown["default"], {
120
- options: optionsWithIcon,
121
- onSelectOption: selectOption,
122
- iconSrc: _amazon["default"],
123
- label: "",
124
- theme: "light",
125
- mode: "outlined",
126
- caretHidden: false,
127
- optionsIconPosition: "after"
128
- })), _react["default"].createElement("div", {
129
- style: {
130
- background: "black",
131
- display: "flex",
132
- height: "250px",
133
- flexWrap: "wrap"
134
- }
135
- }, _react["default"].createElement(_Dropdown["default"], {
136
- options: optionsWithIcon,
137
- onSelectOption: selectOption,
138
- iconSrc: _amazon["default"],
139
- label: "Basic dropdown",
140
- theme: "dark",
141
- mode: "basic",
142
- optionsIconPosition: "before"
143
- }), _react["default"].createElement(_Dropdown["default"], {
144
- options: optionsWithIcon,
145
- onSelectOption: selectOption,
146
- iconSrc: _amazon["default"],
147
- label: "Outlined dropdown",
148
- theme: "dark",
149
- mode: "outlined",
150
- optionsIconPosition: "after"
151
- }), _react["default"].createElement(_Dropdown["default"], {
152
- options: optionsWithoutIcon,
153
- onSelectOption: selectOption,
154
- label: "Basic dropdown",
155
- theme: "dark",
156
- mode: "basic",
157
- optionsIconPosition: "before"
158
- }), _react["default"].createElement(_Dropdown["default"], {
159
- options: optionsWithoutIcon,
160
- onSelectOption: selectOption,
161
- label: "Outlined dropdown",
162
- theme: "dark",
163
- mode: "outlined",
164
- optionsIconPosition: "after"
165
- }), _react["default"].createElement(_Dropdown["default"], {
166
- options: optionsWithIcon,
167
- onSelectOption: selectOption,
168
- iconSrc: _amazon["default"],
169
- label: "",
170
- theme: "dark",
171
- mode: "basic",
172
- caretHidden: true,
173
- optionsIconPosition: "before"
174
- }), _react["default"].createElement(_Dropdown["default"], {
175
- options: optionsWithIcon,
176
- onSelectOption: selectOption,
177
- iconSrc: _amazon["default"],
178
- label: "",
179
- theme: "dark",
180
- mode: "outlined",
181
- caretHidden: true,
182
- optionsIconPosition: "after"
183
- }), _react["default"].createElement(_Dropdown["default"], {
184
- options: optionsWithIcon,
185
- onSelectOption: selectOption,
186
- iconSrc: _amazon["default"],
187
- label: "",
188
- theme: "dark",
189
- mode: "basic",
190
- caretHidden: false,
191
- optionsIconPosition: "before"
192
- }), _react["default"].createElement(_Dropdown["default"], {
193
- options: optionsWithIcon,
194
- onSelectOption: selectOption,
195
- iconSrc: _amazon["default"],
196
- label: "",
197
- theme: "dark",
198
- mode: "outlined",
199
- caretHidden: false,
200
- optionsIconPosition: "after"
201
- })));
202
- }, {
203
- notes: {
204
- markdown: _readme["default"]
205
- }
206
- });
207
-
208
- var knobProps = function knobProps() {
209
- return {
210
- optionsIconPosition: (0, _addonKnobs.select)("Options Icon Position", {
211
- before: "before",
212
- after: "after"
213
- }, "before"),
214
- iconPosition: (0, _addonKnobs.select)("Icon Position", {
215
- before: "before",
216
- after: "after"
217
- }, "before"),
218
- label: (0, _addonKnobs.text)("Label", "Test Dropdown"),
219
- theme: (0, _addonKnobs.select)("Theme", {
220
- light: "light",
221
- dark: "dark"
222
- }, "light"),
223
- mode: (0, _addonKnobs.select)("Mode", {
224
- basic: "basic",
225
- outlined: "outlined"
226
- }, "basic"),
227
- caretHidden: (0, _addonKnobs["boolean"])("Caret Hidden", false),
228
- disableRipple: (0, _addonKnobs["boolean"])("Disable Ripple", false)
229
- };
230
- };
231
-
232
- (0, _react2.storiesOf)("Form Components|Dropdown", module).add("Knobs example", function () {
233
- var props = knobProps();
234
- return _react["default"].createElement("div", {
235
- style: {
236
- paddingTop: "20px",
237
- height: "200px",
238
- background: props.theme === "dark" && "black" || "transparent"
239
- }
240
- }, _react["default"].createElement(_Dropdown["default"], (0, _extends2["default"])({}, props, {
241
- iconSrc: _amazon["default"],
242
- options: optionsWithIcon,
243
- onSelectOption: selectOption
244
- })));
245
- }, {
246
- notes: {
247
- markdown: _readme["default"]
248
- }
249
- });
@@ -1 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M7 10l5 5 5-5z"/><path d="M0 0h24v24H0z" fill="none"/></svg>