@dxc-technology/halstack-react 0.0.0-5fb6765 → 0.0.0-5fd247d

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