@dxc-technology/halstack-react 0.0.0-2c3a5e1 → 0.0.0-2d43940

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 (349) hide show
  1. package/BackgroundColorContext.d.ts +1 -10
  2. package/BackgroundColorContext.js +5 -22
  3. package/HalstackContext.d.ts +1235 -0
  4. package/HalstackContext.js +310 -0
  5. package/README.md +47 -0
  6. package/accordion/Accordion.d.ts +1 -1
  7. package/accordion/Accordion.js +116 -181
  8. package/accordion/Accordion.stories.tsx +103 -127
  9. package/accordion/Accordion.test.js +56 -0
  10. package/accordion/types.d.ts +9 -16
  11. package/accordion-group/AccordionGroup.d.ts +5 -4
  12. package/accordion-group/AccordionGroup.js +38 -107
  13. package/accordion-group/AccordionGroup.stories.tsx +95 -68
  14. package/accordion-group/AccordionGroup.test.js +98 -0
  15. package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
  16. package/accordion-group/AccordionGroupAccordion.js +31 -0
  17. package/accordion-group/types.d.ts +15 -16
  18. package/action-icon/ActionIcon.d.ts +4 -0
  19. package/action-icon/ActionIcon.js +43 -0
  20. package/action-icon/types.d.ts +26 -0
  21. package/alert/Alert.js +23 -59
  22. package/alert/Alert.stories.tsx +28 -0
  23. package/alert/Alert.test.js +75 -0
  24. package/alert/types.d.ts +5 -5
  25. package/badge/Badge.d.ts +4 -0
  26. package/badge/Badge.js +8 -19
  27. package/badge/types.d.ts +5 -0
  28. package/bleed/Bleed.js +14 -55
  29. package/bleed/Bleed.stories.tsx +95 -95
  30. package/bleed/types.d.ts +26 -2
  31. package/box/Box.d.ts +1 -1
  32. package/box/Box.js +30 -81
  33. package/box/Box.stories.tsx +38 -51
  34. package/box/Box.test.js +13 -0
  35. package/box/types.d.ts +3 -14
  36. package/bulleted-list/BulletedList.d.ts +7 -0
  37. package/bulleted-list/BulletedList.js +89 -0
  38. package/bulleted-list/BulletedList.stories.tsx +115 -0
  39. package/bulleted-list/types.d.ts +38 -0
  40. package/button/Button.d.ts +1 -1
  41. package/button/Button.js +62 -113
  42. package/button/Button.stories.tsx +160 -90
  43. package/button/Button.test.js +36 -0
  44. package/button/types.d.ts +12 -8
  45. package/card/Card.d.ts +1 -1
  46. package/card/Card.js +58 -102
  47. package/card/Card.stories.tsx +12 -42
  48. package/card/Card.test.js +39 -0
  49. package/card/types.d.ts +6 -11
  50. package/checkbox/Checkbox.d.ts +2 -2
  51. package/checkbox/Checkbox.js +144 -182
  52. package/checkbox/Checkbox.stories.tsx +166 -136
  53. package/checkbox/Checkbox.test.js +199 -0
  54. package/checkbox/types.d.ts +18 -6
  55. package/chip/Chip.js +39 -79
  56. package/chip/Chip.stories.tsx +121 -26
  57. package/chip/Chip.test.js +41 -0
  58. package/chip/types.d.ts +4 -4
  59. package/common/OpenSans.css +68 -80
  60. package/common/coreTokens.d.ts +237 -0
  61. package/common/coreTokens.js +184 -0
  62. package/common/utils.d.ts +1 -0
  63. package/common/utils.js +6 -12
  64. package/common/variables.d.ts +1381 -0
  65. package/common/variables.js +1002 -1360
  66. package/container/Container.d.ts +4 -0
  67. package/container/Container.js +194 -0
  68. package/container/Container.stories.tsx +214 -0
  69. package/container/types.d.ts +74 -0
  70. package/date-input/Calendar.d.ts +4 -0
  71. package/date-input/Calendar.js +214 -0
  72. package/date-input/DateInput.js +171 -306
  73. package/date-input/DateInput.stories.tsx +203 -56
  74. package/date-input/DateInput.test.js +808 -0
  75. package/date-input/DatePicker.d.ts +4 -0
  76. package/date-input/DatePicker.js +115 -0
  77. package/date-input/Icons.d.ts +6 -0
  78. package/date-input/Icons.js +58 -0
  79. package/date-input/YearPicker.d.ts +4 -0
  80. package/date-input/YearPicker.js +100 -0
  81. package/date-input/types.d.ts +86 -22
  82. package/dialog/Dialog.d.ts +1 -1
  83. package/dialog/Dialog.js +68 -130
  84. package/dialog/Dialog.stories.tsx +320 -167
  85. package/dialog/Dialog.test.js +307 -0
  86. package/dialog/types.d.ts +18 -25
  87. package/dropdown/Dropdown.d.ts +1 -1
  88. package/dropdown/Dropdown.js +243 -304
  89. package/dropdown/Dropdown.stories.tsx +245 -56
  90. package/dropdown/Dropdown.test.js +599 -0
  91. package/dropdown/DropdownMenu.d.ts +4 -0
  92. package/dropdown/DropdownMenu.js +63 -0
  93. package/dropdown/DropdownMenuItem.d.ts +4 -0
  94. package/dropdown/DropdownMenuItem.js +67 -0
  95. package/dropdown/types.d.ts +32 -14
  96. package/file-input/FileInput.d.ts +2 -2
  97. package/file-input/FileInput.js +246 -357
  98. package/file-input/FileInput.stories.tsx +123 -12
  99. package/file-input/FileInput.test.js +459 -0
  100. package/file-input/FileItem.d.ts +4 -14
  101. package/file-input/FileItem.js +50 -99
  102. package/file-input/types.d.ts +25 -8
  103. package/flex/Flex.d.ts +4 -0
  104. package/flex/Flex.js +57 -0
  105. package/flex/Flex.stories.tsx +112 -0
  106. package/flex/types.d.ts +97 -0
  107. package/footer/Footer.d.ts +1 -1
  108. package/footer/Footer.js +70 -190
  109. package/footer/Footer.stories.tsx +60 -19
  110. package/footer/Footer.test.js +85 -0
  111. package/footer/Icons.d.ts +3 -2
  112. package/footer/Icons.js +67 -8
  113. package/footer/types.d.ts +25 -26
  114. package/grid/Grid.d.ts +7 -0
  115. package/grid/Grid.js +76 -0
  116. package/grid/Grid.stories.tsx +219 -0
  117. package/grid/types.d.ts +115 -0
  118. package/header/Header.d.ts +4 -3
  119. package/header/Header.js +99 -203
  120. package/header/Header.stories.tsx +152 -63
  121. package/header/Header.test.js +66 -0
  122. package/header/Icons.d.ts +2 -2
  123. package/header/Icons.js +4 -9
  124. package/header/types.d.ts +5 -19
  125. package/heading/Heading.js +10 -32
  126. package/heading/Heading.test.js +169 -0
  127. package/heading/types.d.ts +7 -7
  128. package/image/Image.d.ts +4 -0
  129. package/image/Image.js +70 -0
  130. package/image/Image.stories.tsx +127 -0
  131. package/image/types.d.ts +72 -0
  132. package/image/types.js +5 -0
  133. package/inset/Inset.js +14 -55
  134. package/inset/Inset.stories.tsx +37 -36
  135. package/inset/types.d.ts +26 -2
  136. package/layout/ApplicationLayout.d.ts +16 -6
  137. package/layout/ApplicationLayout.js +83 -174
  138. package/layout/ApplicationLayout.stories.tsx +85 -94
  139. package/layout/Icons.d.ts +8 -0
  140. package/layout/Icons.js +51 -48
  141. package/layout/SidenavContext.d.ts +5 -0
  142. package/layout/SidenavContext.js +13 -0
  143. package/layout/types.d.ts +19 -35
  144. package/link/Link.d.ts +3 -2
  145. package/link/Link.js +64 -110
  146. package/link/Link.stories.tsx +159 -52
  147. package/link/Link.test.js +63 -0
  148. package/link/types.d.ts +15 -35
  149. package/main.d.ts +15 -17
  150. package/main.js +62 -122
  151. package/nav-tabs/NavTabs.d.ts +8 -0
  152. package/nav-tabs/NavTabs.js +93 -0
  153. package/nav-tabs/NavTabs.stories.tsx +274 -0
  154. package/nav-tabs/NavTabs.test.js +75 -0
  155. package/nav-tabs/Tab.d.ts +4 -0
  156. package/nav-tabs/Tab.js +117 -0
  157. package/nav-tabs/types.d.ts +52 -0
  158. package/nav-tabs/types.js +5 -0
  159. package/number-input/NumberInput.d.ts +7 -0
  160. package/number-input/NumberInput.js +27 -43
  161. package/number-input/NumberInput.stories.tsx +44 -28
  162. package/number-input/NumberInput.test.js +830 -0
  163. package/number-input/types.d.ts +28 -15
  164. package/package.json +46 -47
  165. package/paginator/Icons.d.ts +5 -0
  166. package/paginator/Icons.js +21 -47
  167. package/paginator/Paginator.js +34 -91
  168. package/paginator/Paginator.stories.tsx +24 -0
  169. package/paginator/Paginator.test.js +335 -0
  170. package/paginator/types.d.ts +3 -3
  171. package/paragraph/Paragraph.d.ts +5 -0
  172. package/paragraph/Paragraph.js +22 -0
  173. package/paragraph/Paragraph.stories.tsx +27 -0
  174. package/password-input/Icons.d.ts +6 -0
  175. package/password-input/Icons.js +35 -0
  176. package/password-input/PasswordInput.js +57 -123
  177. package/password-input/PasswordInput.stories.tsx +1 -33
  178. package/password-input/PasswordInput.test.js +198 -0
  179. package/password-input/types.d.ts +21 -17
  180. package/progress-bar/ProgressBar.js +65 -91
  181. package/progress-bar/ProgressBar.stories.tsx +93 -0
  182. package/progress-bar/ProgressBar.test.js +93 -0
  183. package/progress-bar/types.d.ts +3 -3
  184. package/quick-nav/QuickNav.d.ts +4 -0
  185. package/quick-nav/QuickNav.js +94 -0
  186. package/quick-nav/QuickNav.stories.tsx +356 -0
  187. package/quick-nav/types.d.ts +21 -0
  188. package/quick-nav/types.js +5 -0
  189. package/radio-group/Radio.d.ts +1 -1
  190. package/radio-group/Radio.js +64 -80
  191. package/radio-group/RadioGroup.js +101 -139
  192. package/radio-group/RadioGroup.stories.tsx +171 -36
  193. package/radio-group/RadioGroup.test.js +691 -183
  194. package/radio-group/types.d.ts +89 -11
  195. package/resultset-table/Icons.d.ts +7 -0
  196. package/resultset-table/Icons.js +47 -0
  197. package/resultset-table/ResultsetTable.js +159 -0
  198. package/{resultsetTable → resultset-table}/ResultsetTable.stories.tsx +50 -25
  199. package/resultset-table/ResultsetTable.test.js +305 -0
  200. package/{resultsetTable → resultset-table}/types.d.ts +7 -7
  201. package/resultset-table/types.js +5 -0
  202. package/select/Icons.d.ts +10 -0
  203. package/select/Icons.js +89 -0
  204. package/select/Listbox.d.ts +4 -0
  205. package/select/Listbox.js +143 -0
  206. package/select/Option.d.ts +4 -0
  207. package/select/Option.js +87 -0
  208. package/select/Select.js +229 -502
  209. package/select/Select.stories.tsx +603 -204
  210. package/select/Select.test.js +2370 -0
  211. package/select/types.d.ts +64 -25
  212. package/sidenav/Icons.d.ts +7 -0
  213. package/sidenav/Icons.js +47 -0
  214. package/sidenav/Sidenav.d.ts +6 -5
  215. package/sidenav/Sidenav.js +131 -71
  216. package/sidenav/Sidenav.stories.tsx +251 -151
  217. package/sidenav/Sidenav.test.js +37 -0
  218. package/sidenav/types.d.ts +52 -26
  219. package/slider/Slider.d.ts +2 -2
  220. package/slider/Slider.js +148 -180
  221. package/slider/Slider.test.js +254 -0
  222. package/slider/types.d.ts +11 -3
  223. package/spinner/Spinner.js +31 -75
  224. package/spinner/{Spinner.stories.jsx → Spinner.stories.tsx} +53 -27
  225. package/spinner/Spinner.test.js +55 -0
  226. package/spinner/types.d.ts +3 -3
  227. package/status-light/StatusLight.d.ts +4 -0
  228. package/status-light/StatusLight.js +51 -0
  229. package/status-light/StatusLight.stories.tsx +74 -0
  230. package/status-light/StatusLight.test.js +25 -0
  231. package/status-light/types.d.ts +17 -0
  232. package/status-light/types.js +5 -0
  233. package/switch/Switch.d.ts +2 -2
  234. package/switch/Switch.js +149 -114
  235. package/switch/Switch.stories.tsx +44 -67
  236. package/switch/Switch.test.js +180 -0
  237. package/switch/types.d.ts +13 -5
  238. package/table/Table.js +8 -30
  239. package/table/{Table.stories.jsx → Table.stories.tsx} +80 -1
  240. package/table/Table.test.js +21 -0
  241. package/table/types.d.ts +8 -8
  242. package/tabs/Tab.d.ts +4 -0
  243. package/tabs/Tab.js +113 -0
  244. package/tabs/Tabs.d.ts +1 -1
  245. package/tabs/Tabs.js +316 -145
  246. package/tabs/Tabs.stories.tsx +119 -13
  247. package/tabs/Tabs.test.js +294 -0
  248. package/tabs/types.d.ts +29 -15
  249. package/tag/Tag.js +41 -78
  250. package/tag/Tag.stories.tsx +25 -8
  251. package/tag/Tag.test.js +49 -0
  252. package/tag/types.d.ts +7 -7
  253. package/text-input/Icons.d.ts +8 -0
  254. package/text-input/Icons.js +56 -0
  255. package/text-input/Suggestion.d.ts +4 -0
  256. package/text-input/Suggestion.js +67 -0
  257. package/text-input/Suggestions.d.ts +4 -0
  258. package/text-input/Suggestions.js +84 -0
  259. package/text-input/TextInput.js +326 -548
  260. package/text-input/TextInput.stories.tsx +281 -272
  261. package/text-input/TextInput.test.js +1739 -0
  262. package/text-input/types.d.ts +70 -24
  263. package/textarea/Textarea.js +85 -135
  264. package/textarea/Textarea.stories.tsx +174 -0
  265. package/textarea/Textarea.test.js +406 -0
  266. package/textarea/types.d.ts +27 -16
  267. package/toggle-group/ToggleGroup.d.ts +2 -2
  268. package/toggle-group/ToggleGroup.js +92 -105
  269. package/toggle-group/ToggleGroup.stories.tsx +53 -8
  270. package/toggle-group/ToggleGroup.test.js +137 -0
  271. package/toggle-group/types.d.ts +34 -17
  272. package/typography/Typography.d.ts +4 -0
  273. package/typography/Typography.js +23 -0
  274. package/typography/Typography.stories.tsx +198 -0
  275. package/typography/types.d.ts +18 -0
  276. package/typography/types.js +5 -0
  277. package/useTheme.d.ts +1133 -1
  278. package/useTheme.js +4 -11
  279. package/useTranslatedLabels.d.ts +85 -0
  280. package/useTranslatedLabels.js +14 -0
  281. package/utils/BaseTypography.d.ts +21 -0
  282. package/utils/BaseTypography.js +94 -0
  283. package/utils/FocusLock.d.ts +13 -0
  284. package/utils/FocusLock.js +124 -0
  285. package/wizard/Wizard.d.ts +1 -1
  286. package/wizard/Wizard.js +70 -101
  287. package/wizard/Wizard.stories.tsx +48 -19
  288. package/wizard/Wizard.test.js +114 -0
  289. package/wizard/types.d.ts +12 -8
  290. package/ThemeContext.d.ts +0 -15
  291. package/ThemeContext.js +0 -243
  292. package/V3Select/V3Select.js +0 -455
  293. package/V3Select/index.d.ts +0 -27
  294. package/V3Textarea/V3Textarea.js +0 -260
  295. package/V3Textarea/index.d.ts +0 -27
  296. package/card/ice-cream.jpg +0 -0
  297. package/common/RequiredComponent.js +0 -32
  298. package/date/Date.js +0 -373
  299. package/date/index.d.ts +0 -27
  300. package/input-text/Icons.js +0 -22
  301. package/input-text/InputText.js +0 -611
  302. package/input-text/index.d.ts +0 -36
  303. package/list/List.d.ts +0 -4
  304. package/list/List.js +0 -47
  305. package/list/List.stories.tsx +0 -95
  306. package/list/types.d.ts +0 -7
  307. package/number-input/NumberInputContext.d.ts +0 -4
  308. package/number-input/NumberInputContext.js +0 -19
  309. package/number-input/numberInputContextTypes.d.ts +0 -19
  310. package/progress-bar/ProgressBar.stories.jsx +0 -58
  311. package/radio/Radio.d.ts +0 -4
  312. package/radio/Radio.js +0 -174
  313. package/radio/Radio.stories.tsx +0 -192
  314. package/radio/types.d.ts +0 -54
  315. package/resultsetTable/ResultsetTable.js +0 -251
  316. package/row/Row.d.ts +0 -3
  317. package/row/Row.js +0 -127
  318. package/row/Row.stories.tsx +0 -237
  319. package/row/types.d.ts +0 -10
  320. package/slider/Slider.stories.tsx +0 -177
  321. package/stack/Stack.d.ts +0 -3
  322. package/stack/Stack.js +0 -97
  323. package/stack/Stack.stories.tsx +0 -164
  324. package/stack/types.d.ts +0 -9
  325. package/text/Text.d.ts +0 -7
  326. package/text/Text.js +0 -30
  327. package/text/Text.stories.tsx +0 -19
  328. package/textarea/Textarea.stories.jsx +0 -136
  329. package/toggle/Toggle.js +0 -186
  330. package/toggle/index.d.ts +0 -21
  331. package/upload/Upload.js +0 -201
  332. package/upload/buttons-upload/ButtonsUpload.js +0 -111
  333. package/upload/buttons-upload/Icons.js +0 -40
  334. package/upload/dragAndDropArea/DragAndDropArea.js +0 -225
  335. package/upload/dragAndDropArea/Icons.js +0 -39
  336. package/upload/file-upload/FileToUpload.js +0 -115
  337. package/upload/file-upload/Icons.js +0 -66
  338. package/upload/files-upload/FilesToUpload.js +0 -109
  339. package/upload/index.d.ts +0 -15
  340. package/upload/transaction/Icons.js +0 -160
  341. package/upload/transaction/Transaction.js +0 -104
  342. package/upload/transactions/Transactions.js +0 -94
  343. /package/{list → action-icon}/types.js +0 -0
  344. /package/{radio → badge}/types.js +0 -0
  345. /package/{resultsetTable → bulleted-list}/types.js +0 -0
  346. /package/{row → container}/types.js +0 -0
  347. /package/{stack → flex}/types.js +0 -0
  348. /package/{number-input/numberInputContextTypes.js → grid/types.js} +0 -0
  349. /package/{resultsetTable → resultset-table}/ResultsetTable.d.ts +0 -0
@@ -1,243 +1,269 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  var _typeof3 = require("@babel/runtime/helpers/typeof");
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
10
8
  exports["default"] = void 0;
11
-
12
9
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
13
-
14
10
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
15
-
16
11
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
17
-
18
12
  var _react = _interopRequireWildcard(require("react"));
19
-
20
13
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
21
-
22
- var _Popper = _interopRequireDefault(require("@material-ui/core/Popper"));
23
-
24
- var _MenuItem = _interopRequireDefault(require("@material-ui/core/MenuItem"));
25
-
26
- var _core = require("@material-ui/core");
27
-
28
- var _Grow = _interopRequireDefault(require("@material-ui/core/Grow"));
29
-
30
- var _Paper = _interopRequireDefault(require("@material-ui/core/Paper"));
31
-
32
- var _MenuList = _interopRequireDefault(require("@material-ui/core/MenuList"));
33
-
34
- var _variables = require("../common/variables.js");
35
-
36
- var _utils = require("../common/utils.js");
37
-
14
+ var _variables = require("../common/variables");
15
+ var _utils = require("../common/utils");
38
16
  var _useTheme = _interopRequireDefault(require("../useTheme"));
39
-
40
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10;
41
-
42
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
43
-
44
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
45
-
17
+ var _uuid = require("uuid");
18
+ var Popover = _interopRequireWildcard(require("@radix-ui/react-popover"));
19
+ var _DropdownMenu = _interopRequireDefault(require("./DropdownMenu"));
20
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6;
21
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
22
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof3(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
23
+ var upArrowIcon = /*#__PURE__*/_react["default"].createElement("svg", {
24
+ xmlns: "http://www.w3.org/2000/svg",
25
+ width: "24",
26
+ height: "24",
27
+ viewBox: "0 0 24 24",
28
+ fill: "currentColor"
29
+ }, /*#__PURE__*/_react["default"].createElement("path", {
30
+ d: "M7 14l5-5 5 5z"
31
+ }), /*#__PURE__*/_react["default"].createElement("path", {
32
+ d: "M0 0h24v24H0z",
33
+ fill: "none"
34
+ }));
35
+ var downArrowIcon = /*#__PURE__*/_react["default"].createElement("svg", {
36
+ xmlns: "http://www.w3.org/2000/svg",
37
+ width: "24",
38
+ height: "24",
39
+ viewBox: "0 0 24 24",
40
+ fill: "currentColor"
41
+ }, /*#__PURE__*/_react["default"].createElement("path", {
42
+ d: "M7 10l5 5 5-5z"
43
+ }), /*#__PURE__*/_react["default"].createElement("path", {
44
+ d: "M0 0h24v24H0z",
45
+ fill: "none"
46
+ }));
47
+ var useWidth = function useWidth(target) {
48
+ var _useState = (0, _react.useState)(0),
49
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
50
+ width = _useState2[0],
51
+ setWidth = _useState2[1];
52
+ (0, _react.useEffect)(function () {
53
+ if (target != null) {
54
+ setWidth(target.getBoundingClientRect().width);
55
+ var triggerObserver = new ResizeObserver(function (entries) {
56
+ var rect = entries[0].target.getBoundingClientRect();
57
+ setWidth(rect === null || rect === void 0 ? void 0 : rect.width);
58
+ });
59
+ triggerObserver.observe(target);
60
+ return function () {
61
+ triggerObserver.unobserve(target);
62
+ };
63
+ }
64
+ }, [target]);
65
+ return width;
66
+ };
46
67
  var DxcDropdown = function DxcDropdown(_ref) {
47
68
  var options = _ref.options,
48
- _ref$optionsIconPosit = _ref.optionsIconPosition,
49
- optionsIconPosition = _ref$optionsIconPosit === void 0 ? "before" : _ref$optionsIconPosit,
50
- icon = _ref.icon,
51
- _ref$iconPosition = _ref.iconPosition,
52
- iconPosition = _ref$iconPosition === void 0 ? "before" : _ref$iconPosition,
53
- _ref$label = _ref.label,
54
- label = _ref$label === void 0 ? "" : _ref$label,
55
- _ref$caretHidden = _ref.caretHidden,
56
- caretHidden = _ref$caretHidden === void 0 ? false : _ref$caretHidden,
57
- onSelectOption = _ref.onSelectOption,
58
- _ref$expandOnHover = _ref.expandOnHover,
59
- expandOnHover = _ref$expandOnHover === void 0 ? false : _ref$expandOnHover,
60
- margin = _ref.margin,
61
- _ref$size = _ref.size,
62
- size = _ref$size === void 0 ? "fitContent" : _ref$size,
63
- _ref$tabIndex = _ref.tabIndex,
64
- tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex,
65
- _ref$disabled = _ref.disabled,
66
- disabled = _ref$disabled === void 0 ? false : _ref$disabled;
67
-
68
- var _useState = (0, _react.useState)(),
69
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
70
- width = _useState2[0],
71
- setWidth = _useState2[1];
72
-
69
+ _ref$optionsIconPosit = _ref.optionsIconPosition,
70
+ optionsIconPosition = _ref$optionsIconPosit === void 0 ? "before" : _ref$optionsIconPosit,
71
+ icon = _ref.icon,
72
+ _ref$iconPosition = _ref.iconPosition,
73
+ iconPosition = _ref$iconPosition === void 0 ? "before" : _ref$iconPosition,
74
+ _ref$label = _ref.label,
75
+ label = _ref$label === void 0 ? "" : _ref$label,
76
+ _ref$caretHidden = _ref.caretHidden,
77
+ caretHidden = _ref$caretHidden === void 0 ? false : _ref$caretHidden,
78
+ _ref$disabled = _ref.disabled,
79
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
80
+ _ref$expandOnHover = _ref.expandOnHover,
81
+ expandOnHover = _ref$expandOnHover === void 0 ? false : _ref$expandOnHover,
82
+ onSelectOption = _ref.onSelectOption,
83
+ margin = _ref.margin,
84
+ _ref$size = _ref.size,
85
+ size = _ref$size === void 0 ? "fitContent" : _ref$size,
86
+ _ref$tabIndex = _ref.tabIndex,
87
+ tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
88
+ var _useState3 = (0, _react.useState)("trigger-".concat((0, _uuid.v4)())),
89
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 1),
90
+ triggerId = _useState4[0];
91
+ var menuId = "menu-".concat(triggerId);
92
+ var _useState5 = (0, _react.useState)(false),
93
+ _useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
94
+ isOpen = _useState6[0],
95
+ changeIsOpen = _useState6[1];
96
+ var _useState7 = (0, _react.useState)(0),
97
+ _useState8 = (0, _slicedToArray2["default"])(_useState7, 2),
98
+ visualFocusIndex = _useState8[0],
99
+ setVisualFocusIndex = _useState8[1];
73
100
  var colorsTheme = (0, _useTheme["default"])();
74
- var ref = (0, _react.useRef)(null);
75
-
76
- var handleResize = function handleResize() {
77
- if (ref.current) setWidth(ref.current.offsetWidth);
101
+ var triggerRef = (0, _react.useRef)(null);
102
+ var menuRef = (0, _react.useRef)(null);
103
+ var width = useWidth(triggerRef.current);
104
+ var handleOnOpenMenu = function handleOnOpenMenu() {
105
+ changeIsOpen(true);
78
106
  };
79
-
80
- (0, _react.useEffect)(function () {
81
- if (ref.current) {
82
- ref.current.addEventListener("resize", handleResize);
83
- handleResize();
107
+ var handleOnCloseMenu = function handleOnCloseMenu() {
108
+ changeIsOpen(false);
109
+ setVisualFocusIndex(0);
110
+ };
111
+ var handleMenuItemOnClick = (0, _react.useCallback)(function (value) {
112
+ var _triggerRef$current;
113
+ onSelectOption(value);
114
+ handleOnCloseMenu();
115
+ (_triggerRef$current = triggerRef.current) === null || _triggerRef$current === void 0 ? void 0 : _triggerRef$current.focus();
116
+ }, [onSelectOption]);
117
+ var handleOnBlur = function handleOnBlur(event) {
118
+ !event.currentTarget.contains(event.relatedTarget) && handleOnCloseMenu();
119
+ };
120
+ var handleTriggerOnClick = function handleTriggerOnClick() {
121
+ changeIsOpen(function (isOpen) {
122
+ return !isOpen;
123
+ });
124
+ };
125
+ var handleTriggerOnKeyDown = function handleTriggerOnKeyDown(event) {
126
+ switch (event.key) {
127
+ case "Up":
128
+ case "ArrowUp":
129
+ event.preventDefault();
130
+ setVisualFocusIndex(options.length - 1);
131
+ handleOnOpenMenu();
132
+ break;
133
+ case " ":
134
+ case "Down":
135
+ case "ArrowDown":
136
+ case "Enter":
137
+ event.preventDefault();
138
+ handleOnOpenMenu();
139
+ break;
84
140
  }
85
-
86
- return function () {
87
- if (ref.current) ref.current.removeEventListener("resize", handleResize);
88
- };
89
- }, []);
90
-
91
- var _useState3 = (0, _react.useState)(null),
92
- _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
93
- anchorEl = _useState4[0],
94
- setAnchorEl = _useState4[1];
95
-
96
- function handleClickListItem(event) {
97
- setAnchorEl(event.currentTarget);
98
- }
99
-
100
- function handleMenuItemClick(option) {
101
- setAnchorEl(null);
102
- onSelectOption(option.value);
103
- }
104
-
105
- function handleClose() {
106
- setAnchorEl(null);
107
- }
108
-
109
- var handleCloseOver = expandOnHover ? handleClose : undefined;
110
-
111
- var UpArrowIcon = function UpArrowIcon() {
112
- return /*#__PURE__*/_react["default"].createElement("svg", {
113
- xmlns: "http://www.w3.org/2000/svg",
114
- width: "24",
115
- height: "24",
116
- viewBox: "0 0 24 24",
117
- fill: "currentColor"
118
- }, /*#__PURE__*/_react["default"].createElement("path", {
119
- d: "M7 14l5-5 5 5z"
120
- }), /*#__PURE__*/_react["default"].createElement("path", {
121
- d: "M0 0h24v24H0z",
122
- fill: "none"
123
- }));
124
141
  };
125
-
126
- var DownArrowIcon = function DownArrowIcon() {
127
- return /*#__PURE__*/_react["default"].createElement("svg", {
128
- xmlns: "http://www.w3.org/2000/svg",
129
- width: "24",
130
- height: "24",
131
- viewBox: "0 0 24 24",
132
- fill: "currentColor"
133
- }, /*#__PURE__*/_react["default"].createElement("path", {
134
- d: "M7 10l5 5 5-5z"
135
- }), /*#__PURE__*/_react["default"].createElement("path", {
136
- d: "M0 0h24v24H0z",
137
- fill: "none"
138
- }));
142
+ var setPreviousIndexFocus = function setPreviousIndexFocus() {
143
+ setVisualFocusIndex(function (currentFocusIndex) {
144
+ var index = currentFocusIndex === 0 ? options.length - 1 : currentFocusIndex - 1;
145
+ return index;
146
+ });
139
147
  };
140
-
148
+ var setNextIndexFocus = function setNextIndexFocus() {
149
+ setVisualFocusIndex(function (currentFocusIndex) {
150
+ var index = currentFocusIndex === options.length - 1 ? 0 : currentFocusIndex + 1;
151
+ return index;
152
+ });
153
+ };
154
+ var handleMenuOnKeyDown = (0, _react.useCallback)(function (event) {
155
+ var _triggerRef$current2, _triggerRef$current3;
156
+ switch (event.key) {
157
+ case "Up":
158
+ case "ArrowUp":
159
+ event.preventDefault();
160
+ setPreviousIndexFocus();
161
+ break;
162
+ case "Down":
163
+ case "ArrowDown":
164
+ event.preventDefault();
165
+ setNextIndexFocus();
166
+ break;
167
+ case " ":
168
+ case "Enter":
169
+ event.preventDefault();
170
+ handleMenuItemOnClick(options[visualFocusIndex].value);
171
+ break;
172
+ case "Esc":
173
+ case "Escape":
174
+ event.preventDefault();
175
+ handleOnCloseMenu();
176
+ (_triggerRef$current2 = triggerRef.current) === null || _triggerRef$current2 === void 0 ? void 0 : _triggerRef$current2.focus();
177
+ break;
178
+ case "Home":
179
+ case "PageUp":
180
+ event.preventDefault();
181
+ setVisualFocusIndex(0);
182
+ break;
183
+ case "End":
184
+ case "PageDown":
185
+ event.preventDefault();
186
+ setVisualFocusIndex(options.length - 1);
187
+ break;
188
+ case "Tab":
189
+ handleOnCloseMenu();
190
+ (_triggerRef$current3 = triggerRef.current) === null || _triggerRef$current3 === void 0 ? void 0 : _triggerRef$current3.focus();
191
+ break;
192
+ }
193
+ }, [onSelectOption, visualFocusIndex, options]);
194
+ (0, _react.useLayoutEffect)(function () {
195
+ var _menuRef$current, _visualFocusedMenuIte;
196
+ var visualFocusedMenuItem = menuRef === null || menuRef === void 0 ? void 0 : (_menuRef$current = menuRef.current) === null || _menuRef$current === void 0 ? void 0 : _menuRef$current.querySelectorAll("[role='menuitem']")[visualFocusIndex];
197
+ visualFocusedMenuItem === null || visualFocusedMenuItem === void 0 ? void 0 : (_visualFocusedMenuIte = visualFocusedMenuItem.scrollIntoView) === null || _visualFocusedMenuIte === void 0 ? void 0 : _visualFocusedMenuIte.call(visualFocusedMenuItem, {
198
+ block: "nearest",
199
+ inline: "start"
200
+ });
201
+ }, [visualFocusIndex]);
141
202
  return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
142
203
  theme: colorsTheme.dropdown
143
- }, /*#__PURE__*/_react["default"].createElement(DXCDropdownContainer, {
204
+ }, /*#__PURE__*/_react["default"].createElement(DropdownContainer, {
205
+ onMouseEnter: !disabled && expandOnHover ? handleOnOpenMenu : undefined,
206
+ onMouseLeave: !disabled && expandOnHover ? handleOnCloseMenu : undefined,
207
+ onBlur: !disabled ? handleOnBlur : undefined,
144
208
  margin: margin,
145
- size: size,
146
- disabled: disabled
147
- }, /*#__PURE__*/_react["default"].createElement("div", {
148
- onMouseOver: expandOnHover && !disabled ? handleClickListItem : undefined,
149
- onMouseOut: handleCloseOver,
150
- onFocus: handleCloseOver,
151
- onBlur: handleCloseOver
209
+ size: size
210
+ }, /*#__PURE__*/_react["default"].createElement(Popover.Root, {
211
+ open: isOpen
212
+ }, /*#__PURE__*/_react["default"].createElement(Popover.Trigger, {
213
+ asChild: true,
214
+ type: undefined
152
215
  }, /*#__PURE__*/_react["default"].createElement(DropdownTrigger, {
153
- opened: anchorEl === null ? false : true,
154
- onClick: handleClickListItem,
216
+ onClick: handleTriggerOnClick,
217
+ onKeyDown: handleTriggerOnKeyDown,
218
+ onBlur: function onBlur(event) {
219
+ event.stopPropagation();
220
+ },
155
221
  disabled: disabled,
156
222
  label: label,
157
- caretHidden: caretHidden,
158
223
  margin: margin,
159
224
  size: size,
160
- ref: ref,
161
- tabIndex: tabIndex
162
- }, /*#__PURE__*/_react["default"].createElement(DropdownTriggerContainer, {
163
- iconPosition: iconPosition,
164
- caretHidden: caretHidden
165
- }, icon && /*#__PURE__*/_react["default"].createElement(ButtonIconContainer, {
166
- label: label,
167
- iconPosition: iconPosition,
168
- disabled: disabled
169
- }, typeof icon === "string" ? /*#__PURE__*/_react["default"].createElement(ButtonIcon, {
225
+ id: triggerId,
226
+ "aria-haspopup": "true",
227
+ "aria-controls": menuId,
228
+ "aria-expanded": isOpen ? true : undefined,
229
+ tabIndex: tabIndex,
230
+ ref: triggerRef
231
+ }, /*#__PURE__*/_react["default"].createElement(DropdownTriggerContent, null, label && iconPosition === "after" && /*#__PURE__*/_react["default"].createElement(DropdownTriggerLabel, null, label), icon && /*#__PURE__*/_react["default"].createElement(DropdownTriggerIcon, {
232
+ disabled: disabled,
233
+ role: typeof icon === "string" ? undefined : "img"
234
+ }, typeof icon === "string" ? /*#__PURE__*/_react["default"].createElement("img", {
170
235
  src: icon
171
- }) : icon), /*#__PURE__*/_react["default"].createElement(DropdownTriggerLabel, {
172
- iconPosition: iconPosition,
173
- label: label
174
- }, label)), /*#__PURE__*/_react["default"].createElement(CaretIconContainer, {
175
- caretHidden: caretHidden,
236
+ }) : icon), label && iconPosition === "before" && /*#__PURE__*/_react["default"].createElement(DropdownTriggerLabel, null, label)), !caretHidden && /*#__PURE__*/_react["default"].createElement(CaretIcon, {
176
237
  disabled: disabled
177
- }, !caretHidden && (anchorEl === null ? /*#__PURE__*/_react["default"].createElement(DownArrowIcon, null) : /*#__PURE__*/_react["default"].createElement(UpArrowIcon, null)))), /*#__PURE__*/_react["default"].createElement(DXCMenu, {
178
- anchorEl: anchorEl,
179
- open: Boolean(anchorEl),
180
- onClose: handleClose,
181
- getContentAnchorEl: null,
182
- anchorOrigin: {
183
- vertical: "bottom",
184
- horizontal: "left"
238
+ }, isOpen ? upArrowIcon : downArrowIcon))), /*#__PURE__*/_react["default"].createElement(Popover.Portal, null, /*#__PURE__*/_react["default"].createElement(Popover.Content, {
239
+ asChild: true,
240
+ sideOffset: 1
241
+ }, /*#__PURE__*/_react["default"].createElement(_DropdownMenu["default"], {
242
+ id: menuId,
243
+ dropdownTriggerId: triggerId,
244
+ options: options,
245
+ iconsPosition: optionsIconPosition,
246
+ visualFocusIndex: visualFocusIndex,
247
+ menuItemOnClick: handleMenuItemOnClick,
248
+ onKeyDown: handleMenuOnKeyDown,
249
+ styles: {
250
+ width: width,
251
+ zIndex: "2147483647"
185
252
  },
186
- transformOrigin: {
187
- vertical: "top",
188
- horizontal: "left"
189
- },
190
- optionsIconPosition: optionsIconPosition,
191
- size: size,
192
- width: width,
193
- role: undefined,
194
- transition: true,
195
- disablePortal: true,
196
- placement: "bottom-start"
197
- }, function (_ref2) {
198
- var TransitionProps = _ref2.TransitionProps;
199
- return /*#__PURE__*/_react["default"].createElement(_Grow["default"], TransitionProps, /*#__PURE__*/_react["default"].createElement(_Paper["default"], null, /*#__PURE__*/_react["default"].createElement(_core.ClickAwayListener, {
200
- onClickAway: handleClose
201
- }, /*#__PURE__*/_react["default"].createElement(_MenuList["default"], {
202
- autoFocusItem: Boolean(anchorEl),
203
- id: "menu-list-grow"
204
- }, options.map(function (option) {
205
- return /*#__PURE__*/_react["default"].createElement(_MenuItem["default"], {
206
- key: option.value,
207
- value: option.value,
208
- disableRipple: true,
209
- onClick: function onClick(event) {
210
- return handleMenuItemClick(option);
211
- }
212
- }, option.icon && /*#__PURE__*/_react["default"].createElement(ListIconContainer, {
213
- label: option.label,
214
- iconPosition: optionsIconPosition
215
- }, typeof option.icon === "string" ? /*#__PURE__*/_react["default"].createElement(ListIcon, {
216
- src: option.icon
217
- }) : option.icon), /*#__PURE__*/_react["default"].createElement("span", {
218
- className: "optionLabel"
219
- }, option.label));
220
- })))));
221
- }))));
253
+ ref: menuRef
254
+ }))))));
222
255
  };
223
-
224
256
  var sizes = {
225
257
  small: "60px",
226
258
  medium: "240px",
227
259
  large: "480px",
228
260
  fillParent: "100%",
229
- fitContent: "unset"
261
+ fitContent: "fit-content"
230
262
  };
231
-
232
263
  var calculateWidth = function calculateWidth(margin, size) {
233
- if (size === "fillParent") {
234
- return "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")");
235
- }
236
-
237
- return sizes[size];
264
+ return size === "fillParent" ? "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")") : sizes[size];
238
265
  };
239
-
240
- var DXCDropdownContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (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"])), function (props) {
266
+ var DropdownContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-block;\n width: ", ";\n text-overflow: ellipsis;\n overflow: hidden;\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n"])), function (props) {
241
267
  return calculateWidth(props.margin, props.size);
242
268
  }, function (props) {
243
269
  return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
@@ -250,69 +276,10 @@ var DXCDropdownContainer = _styledComponents["default"].div(_templateObject || (
250
276
  }, function (props) {
251
277
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
252
278
  });
253
-
254
- var DXCMenu = (0, _styledComponents["default"])(_Popper["default"])(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n z-index: 1;\n\n .MuiMenuItem-gutters {\n width: ", ";\n }\n .MuiMenuItem-root {\n min-height: 36px;\n padding-top: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n padding-right: ", ";\n height: auto;\n }\n .MuiPaper-root {\n min-width: ", ";\n border-width: ", ";\n border-style: ", ";\n border-color: ", ";\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-y: auto;\n\n ::-webkit-scrollbar {\n width: 3px;\n }\n ::-webkit-scrollbar-track {\n background-color: ", ";\n border-radius: 3px;\n }\n ::-webkit-scrollbar-thumb {\n background-color: ", ";\n border-radius: 3px;\n }\n\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 background-color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n cursor: pointer;\n }\n .MuiListItem-button:focus {\n outline: ", " solid 2px;\n outline-offset: -2px;\n }\n .MuiListItem-button:hover {\n background-color: ", ";\n }\n .MuiListItem-button:active {\n background-color: ", ";\n outline: ", " solid 2px;\n outline-offset: -2px;\n }\n }\n"])), function (props) {
255
- return calculateWidth(props.margin, props.size);
256
- }, function (props) {
257
- return props.theme.optionPaddingTop;
258
- }, function (props) {
259
- return props.theme.optionPaddingBottom;
260
- }, function (props) {
261
- return props.theme.optionPaddingLeft;
262
- }, function (props) {
263
- return props.theme.optionPaddingRight;
264
- }, function (props) {
265
- return "".concat(props.width, "px");
266
- }, function (props) {
267
- return props.theme.borderThickness;
268
- }, function (props) {
269
- return props.theme.borderStyle;
270
- }, function (props) {
271
- return props.theme.borderColor;
272
- }, function (props) {
273
- return props.theme.borderRadius;
274
- }, function (props) {
275
- return props.theme.borderRadius;
276
- }, function (props) {
277
- return props.theme.scrollBarTrackColor;
278
- }, function (props) {
279
- return props.theme.scrollBarThumbColor;
280
- }, function (props) {
281
- return props.optionsIconPosition === "after" && "row-reverse" || "row";
282
- }, function (props) {
283
- return props.optionsIconPosition === "after" && "flex-end" || "";
284
- }, function (props) {
285
- return props.theme.optionBackgroundColor;
286
- }, function (props) {
287
- return props.theme.optionFontFamily;
288
- }, function (props) {
289
- return props.theme.optionFontSize;
290
- }, function (props) {
291
- return props.theme.optionFontStyle;
292
- }, function (props) {
293
- return props.theme.optionFontWeight;
294
- }, function (props) {
295
- return props.theme.optionFontColor;
296
- }, function (props) {
297
- return props.theme.focusColor;
298
- }, function (props) {
299
- return props.theme.hoverOptionBackgroundColor;
300
- }, function (props) {
301
- return props.theme.activeOptionBackgroundColor;
302
- }, function (props) {
303
- return props.theme.focusColor;
304
- });
305
-
306
- var DropdownTrigger = _styledComponents["default"].button(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n justify-content: space-between;\n align-items: center;\n width: 100%;\n height: auto;\n min-height: 40px;\n cursor: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n border-radius: ", ";\n border-width: ", ";\n border-style: ", ";\n border-color: ", ";\n min-width: ", ";\n padding-top: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n padding-right: ", ";\n background-color: ", ";\n color: ", ";\n border-bottom-right-radius: ", ";\n border-bottom-left-radius: ", ";\n\n ", ";\n"])), function (props) {
307
- return props.disabled ? "not-allowed" : "pointer";
308
- }, function (props) {
309
- return props.theme.buttonFontFamily;
310
- }, function (props) {
311
- return props.theme.buttonFontSize;
312
- }, function (props) {
313
- return props.theme.buttonFontStyle;
279
+ var DropdownTrigger = _styledComponents["default"].button(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n justify-content: space-between;\n align-items: center;\n gap: ", ";\n width: 100%;\n min-height: 40px;\n min-width: ", ";\n border-radius: ", ";\n border-width: ", ";\n border-style: ", ";\n border-color: ", ";\n padding-top: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n padding-right: ", ";\n background-color: ", ";\n color: ", ";\n cursor: ", ";\n\n ", ";\n"])), function (props) {
280
+ return props.theme.caretIconSpacing;
314
281
  }, function (props) {
315
- return props.theme.buttonFontWeight;
282
+ return props.label === "" ? "0px" : calculateWidth(props.margin, props.size);
316
283
  }, function (props) {
317
284
  return props.theme.borderRadius;
318
285
  }, function (props) {
@@ -321,8 +288,6 @@ var DropdownTrigger = _styledComponents["default"].button(_templateObject3 || (_
321
288
  return props.theme.borderStyle;
322
289
  }, function (props) {
323
290
  return props.disabled ? props.theme.disabledBorderColor : props.theme.borderColor;
324
- }, function (props) {
325
- return props.label === "" ? "0px" : calculateWidth(props.margin, props.size);
326
291
  }, function (props) {
327
292
  return props.theme.buttonPaddingTop;
328
293
  }, function (props) {
@@ -336,60 +301,34 @@ var DropdownTrigger = _styledComponents["default"].button(_templateObject3 || (_
336
301
  }, function (props) {
337
302
  return props.disabled ? props.theme.disabledColor : props.theme.buttonFontColor;
338
303
  }, function (props) {
339
- return props.opened ? "0px" : props.theme.borderRadius;
340
- }, function (props) {
341
- return props.opened ? "0px" : props.theme.borderRadius;
304
+ return props.disabled ? "not-allowed" : "pointer";
342
305
  }, function (props) {
343
- return !props.disabled && " \n &:focus {\n outline: none;\n }\n &:focus-visible {\n outline: ".concat(props.theme.focusColor, " solid 2px;\n outline-offset: -2px;\n }\n &:hover {\n background-color: ").concat(props.theme.hoverButtonBackgroundColor, ";\n }\n &:active {\n background-color: ").concat(props.theme.activeButtonBackgroundColor, ";\n }\n ");
306
+ return !props.disabled && "\n &:focus {\n outline: ".concat(props.theme.focusColor, " solid 2px;\n outline-offset: -2px;\n }\n &:hover {\n background-color: ").concat(props.theme.hoverButtonBackgroundColor, ";\n }\n &:active {\n background-color: ").concat(props.theme.activeButtonBackgroundColor, ";\n }\n ");
344
307
  });
345
-
346
- var DropdownTriggerLabel = _styledComponents["default"].span(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n text-align: left;\n text-overflow: ellipsis;\n overflow: hidden;\n"])));
347
-
348
- var DropdownTriggerContainer = _styledComponents["default"].span(_templateObject5 || (_templateObject5 = (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"])), function (props) {
349
- return props.iconPosition === "after" && "row-reverse" || "row";
350
- }, function (props) {
351
- return props.caretHidden ? "100%" : "calc(100% - 36px)";
308
+ var DropdownTriggerContent = _styledComponents["default"].span(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n gap: ", ";\n margin-left: 0px;\n margin-right: 0px;\n width: 100%;\n overflow: hidden;\n white-space: nowrap;\n"])), function (props) {
309
+ return props.theme.buttonIconSpacing;
352
310
  });
353
-
354
- var ButtonIcon = _styledComponents["default"].img(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])([""])));
355
-
356
- var ButtonIconContainer = _styledComponents["default"].div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n overflow: hidden;\n width: ", ";\n height: ", ";\n margin-left: ", ";\n margin-right: ", ";\n color: ", ";\n\n img,\n svg {\n height: 100%;\n width: 100%;\n }\n"])), function (props) {
357
- return props.theme.buttonIconSize;
358
- }, function (props) {
359
- return props.theme.buttonIconSize;
311
+ var DropdownTriggerLabel = _styledComponents["default"].span(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n text-overflow: ellipsis;\n overflow: hidden;\n"])), function (props) {
312
+ return props.theme.buttonFontFamily;
360
313
  }, function (props) {
361
- return props.iconPosition === "after" && props.label !== "" && props.theme.buttonIconSpacing || "0px";
314
+ return props.theme.buttonFontSize;
362
315
  }, function (props) {
363
- return props.iconPosition === "before" && props.label !== "" && props.theme.buttonIconSpacing || "0px";
316
+ return props.theme.buttonFontStyle;
364
317
  }, function (props) {
365
- return props.disabled ? props.theme.disabledColor : props.theme.buttonIconColor;
318
+ return props.theme.buttonFontWeight;
366
319
  });
367
-
368
- var ListIcon = _styledComponents["default"].img(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])([""])));
369
-
370
- var ListIconContainer = _styledComponents["default"].div(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n overflow: hidden;\n width: ", ";\n height: ", ";\n margin-left: ", ";\n margin-right: ", ";\n color: ", ";\n\n img,\n svg {\n height: 100%;\n width: 100%;\n }\n"])), function (props) {
371
- return props.theme.optionIconSize;
372
- }, function (props) {
373
- return props.theme.optionIconSize;
374
- }, function (props) {
375
- return props.iconPosition === "after" && props.label !== "" && props.theme.optionIconSpacing || "0px";
320
+ var DropdownTriggerIcon = _styledComponents["default"].span(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n color: ", ";\n\n img,\n svg {\n width: ", ";\n height: ", ";\n }\n"])), function (props) {
321
+ return props.disabled ? props.theme.disabledColor : props.theme.buttonIconColor;
376
322
  }, function (props) {
377
- return props.iconPosition === "before" && props.label !== "" && props.theme.optionIconSpacing || "0px";
323
+ return props.theme.buttonIconSize;
378
324
  }, function (props) {
379
- return props.theme.optionIconColor;
325
+ return props.theme.buttonIconSize;
380
326
  });
381
-
382
- var CaretIconContainer = _styledComponents["default"].div(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2["default"])(["\n display: ", ";\n margin-left: ", ";\n color: ", ";\n\n svg {\n width: ", ";\n height: ", ";\n }\n"])), function (props) {
383
- return props.caretHidden ? "none" : "inline-flex";
384
- }, function (props) {
385
- return props.theme.caretIconSpacing;
386
- }, function (props) {
327
+ var CaretIcon = _styledComponents["default"].span(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n color: ", ";\n\n svg {\n width: ", ";\n height: ", ";\n }\n"])), function (props) {
387
328
  return props.disabled ? props.theme.disabledColor : props.theme.caretIconColor;
388
329
  }, function (props) {
389
330
  return props.theme.caretIconSize;
390
331
  }, function (props) {
391
332
  return props.theme.caretIconSize;
392
333
  });
393
-
394
- var _default = DxcDropdown;
395
- exports["default"] = _default;
334
+ var _default = exports["default"] = DxcDropdown;