@dxc-technology/halstack-react 0.0.0-98ce7b0 → 0.0.0-996618c

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 (254) hide show
  1. package/HalstackContext.d.ts +12 -0
  2. package/HalstackContext.js +294 -0
  3. package/accordion/Accordion.d.ts +1 -1
  4. package/accordion/Accordion.js +121 -123
  5. package/accordion/Accordion.stories.tsx +13 -14
  6. package/accordion/Accordion.test.js +71 -0
  7. package/accordion/types.d.ts +9 -4
  8. package/accordion-group/AccordionGroup.d.ts +1 -1
  9. package/accordion-group/AccordionGroup.js +15 -36
  10. package/accordion-group/AccordionGroup.stories.tsx +28 -2
  11. package/accordion-group/AccordionGroup.test.js +126 -0
  12. package/accordion-group/types.d.ts +14 -3
  13. package/alert/Alert.js +5 -2
  14. package/alert/Alert.test.js +92 -0
  15. package/badge/Badge.d.ts +1 -1
  16. package/badge/Badge.js +5 -3
  17. package/badge/types.d.ts +1 -0
  18. package/bleed/Bleed.js +1 -34
  19. package/bleed/Bleed.stories.tsx +94 -95
  20. package/bleed/types.d.ts +25 -1
  21. package/box/Box.js +23 -33
  22. package/box/Box.test.js +18 -0
  23. package/box/types.d.ts +1 -0
  24. package/bulleted-list/BulletedList.d.ts +7 -0
  25. package/bulleted-list/BulletedList.js +123 -0
  26. package/bulleted-list/BulletedList.stories.tsx +200 -0
  27. package/bulleted-list/types.d.ts +11 -0
  28. package/{list → bulleted-list}/types.js +0 -0
  29. package/button/Button.js +53 -68
  30. package/button/Button.stories.tsx +9 -0
  31. package/button/Button.test.js +35 -0
  32. package/button/types.d.ts +7 -7
  33. package/card/Card.js +24 -27
  34. package/card/Card.test.js +50 -0
  35. package/card/types.d.ts +1 -0
  36. package/checkbox/Checkbox.d.ts +2 -2
  37. package/checkbox/Checkbox.js +106 -109
  38. package/checkbox/Checkbox.stories.tsx +146 -130
  39. package/checkbox/Checkbox.test.js +155 -0
  40. package/checkbox/types.d.ts +13 -5
  41. package/chip/Chip.test.js +56 -0
  42. package/chip/types.d.ts +1 -1
  43. package/common/variables.js +236 -339
  44. package/date-input/DateInput.js +56 -42
  45. package/date-input/DateInput.stories.tsx +7 -7
  46. package/date-input/DateInput.test.js +543 -0
  47. package/date-input/types.d.ts +16 -9
  48. package/dialog/Dialog.js +46 -50
  49. package/dialog/Dialog.stories.tsx +57 -2
  50. package/dialog/Dialog.test.js +70 -0
  51. package/dialog/types.d.ts +3 -2
  52. package/dropdown/Dropdown.d.ts +1 -1
  53. package/dropdown/Dropdown.js +247 -251
  54. package/dropdown/Dropdown.stories.tsx +126 -63
  55. package/dropdown/Dropdown.test.js +585 -0
  56. package/dropdown/DropdownMenu.d.ts +4 -0
  57. package/dropdown/DropdownMenu.js +80 -0
  58. package/dropdown/DropdownMenuItem.d.ts +4 -0
  59. package/dropdown/DropdownMenuItem.js +92 -0
  60. package/dropdown/types.d.ts +25 -5
  61. package/file-input/FileInput.d.ts +2 -2
  62. package/file-input/FileInput.js +183 -222
  63. package/file-input/FileInput.stories.tsx +38 -10
  64. package/file-input/FileInput.test.js +498 -0
  65. package/file-input/FileItem.d.ts +4 -14
  66. package/file-input/FileItem.js +43 -66
  67. package/file-input/types.d.ts +17 -0
  68. package/flex/Flex.d.ts +4 -0
  69. package/flex/Flex.js +69 -0
  70. package/flex/Flex.stories.tsx +103 -0
  71. package/flex/types.d.ts +32 -0
  72. package/{radio → flex}/types.js +0 -0
  73. package/footer/Footer.js +15 -88
  74. package/footer/Footer.stories.tsx +8 -1
  75. package/footer/Footer.test.js +109 -0
  76. package/footer/Icons.js +1 -1
  77. package/footer/types.d.ts +2 -1
  78. package/header/Header.js +95 -114
  79. package/header/Header.stories.tsx +46 -36
  80. package/header/Header.test.js +79 -0
  81. package/header/Icons.js +2 -2
  82. package/header/types.d.ts +3 -2
  83. package/heading/Heading.test.js +186 -0
  84. package/inset/Inset.js +1 -34
  85. package/inset/Inset.stories.tsx +36 -36
  86. package/inset/types.d.ts +25 -1
  87. package/layout/ApplicationLayout.d.ts +16 -6
  88. package/layout/ApplicationLayout.js +71 -131
  89. package/layout/ApplicationLayout.stories.tsx +84 -93
  90. package/layout/Icons.d.ts +5 -0
  91. package/layout/Icons.js +13 -2
  92. package/layout/SidenavContext.d.ts +5 -0
  93. package/layout/SidenavContext.js +19 -0
  94. package/layout/types.d.ts +18 -33
  95. package/link/Link.d.ts +3 -2
  96. package/link/Link.js +58 -75
  97. package/link/Link.stories.tsx +95 -53
  98. package/link/Link.test.js +83 -0
  99. package/link/types.d.ts +7 -23
  100. package/main.d.ts +10 -15
  101. package/main.js +48 -82
  102. package/number-input/NumberInput.js +11 -18
  103. package/number-input/NumberInput.stories.tsx +5 -5
  104. package/number-input/NumberInput.test.js +542 -0
  105. package/number-input/types.d.ts +17 -10
  106. package/package.json +20 -16
  107. package/paginator/Paginator.js +17 -38
  108. package/paginator/Paginator.test.js +308 -0
  109. package/paragraph/Paragraph.d.ts +6 -0
  110. package/paragraph/Paragraph.js +38 -0
  111. package/paragraph/Paragraph.stories.tsx +44 -0
  112. package/password-input/PasswordInput.js +7 -4
  113. package/password-input/PasswordInput.test.js +181 -0
  114. package/password-input/types.d.ts +14 -11
  115. package/progress-bar/ProgressBar.d.ts +2 -2
  116. package/progress-bar/ProgressBar.js +57 -51
  117. package/progress-bar/ProgressBar.stories.jsx +13 -11
  118. package/progress-bar/ProgressBar.test.js +110 -0
  119. package/progress-bar/types.d.ts +3 -4
  120. package/quick-nav/QuickNav.d.ts +4 -0
  121. package/quick-nav/QuickNav.js +117 -0
  122. package/quick-nav/QuickNav.stories.tsx +342 -0
  123. package/quick-nav/types.d.ts +21 -0
  124. package/{row → quick-nav}/types.js +0 -0
  125. package/radio-group/Radio.d.ts +1 -1
  126. package/radio-group/Radio.js +53 -37
  127. package/radio-group/RadioGroup.js +67 -57
  128. package/radio-group/RadioGroup.stories.tsx +61 -39
  129. package/radio-group/RadioGroup.test.js +563 -89
  130. package/radio-group/types.d.ts +82 -4
  131. package/resultsetTable/ResultsetTable.js +1 -3
  132. package/resultsetTable/ResultsetTable.test.js +348 -0
  133. package/select/Icons.d.ts +10 -0
  134. package/select/Icons.js +93 -0
  135. package/select/Listbox.d.ts +4 -0
  136. package/select/Listbox.js +198 -0
  137. package/select/Option.d.ts +4 -0
  138. package/select/Option.js +110 -0
  139. package/select/Select.js +147 -365
  140. package/select/Select.stories.tsx +231 -176
  141. package/select/Select.test.js +2233 -0
  142. package/select/types.d.ts +52 -12
  143. package/sidenav/Sidenav.d.ts +6 -5
  144. package/sidenav/Sidenav.js +184 -52
  145. package/sidenav/Sidenav.stories.tsx +154 -156
  146. package/sidenav/Sidenav.test.js +44 -0
  147. package/sidenav/types.d.ts +50 -27
  148. package/slider/Slider.d.ts +2 -2
  149. package/slider/Slider.js +122 -96
  150. package/slider/Slider.stories.tsx +15 -9
  151. package/slider/Slider.test.js +250 -0
  152. package/slider/types.d.ts +10 -2
  153. package/spinner/Spinner.js +1 -1
  154. package/spinner/Spinner.test.js +64 -0
  155. package/switch/Switch.d.ts +2 -2
  156. package/switch/Switch.js +150 -67
  157. package/switch/Switch.stories.tsx +20 -42
  158. package/switch/Switch.test.js +225 -0
  159. package/switch/types.d.ts +12 -4
  160. package/table/Table.js +1 -1
  161. package/table/Table.test.js +26 -0
  162. package/tabs/Tab.d.ts +4 -0
  163. package/tabs/Tab.js +135 -0
  164. package/tabs/Tabs.d.ts +1 -1
  165. package/tabs/Tabs.js +362 -108
  166. package/tabs/Tabs.stories.tsx +74 -8
  167. package/tabs/Tabs.test.js +351 -0
  168. package/tabs/types.d.ts +19 -5
  169. package/tabs-nav/NavTabs.d.ts +8 -0
  170. package/tabs-nav/NavTabs.js +125 -0
  171. package/tabs-nav/NavTabs.stories.tsx +170 -0
  172. package/tabs-nav/NavTabs.test.js +82 -0
  173. package/tabs-nav/Tab.d.ts +4 -0
  174. package/tabs-nav/Tab.js +130 -0
  175. package/tabs-nav/types.d.ts +53 -0
  176. package/{stack → tabs-nav}/types.js +0 -0
  177. package/tag/Tag.js +15 -20
  178. package/tag/Tag.stories.tsx +12 -8
  179. package/tag/Tag.test.js +60 -0
  180. package/tag/types.d.ts +1 -1
  181. package/text-input/Icons.d.ts +8 -0
  182. package/text-input/Icons.js +60 -0
  183. package/text-input/Suggestion.d.ts +4 -0
  184. package/text-input/Suggestion.js +57 -0
  185. package/text-input/Suggestions.d.ts +4 -0
  186. package/text-input/Suggestions.js +134 -0
  187. package/text-input/TextInput.js +217 -334
  188. package/text-input/TextInput.stories.tsx +219 -194
  189. package/text-input/TextInput.test.js +1624 -0
  190. package/text-input/types.d.ts +50 -12
  191. package/textarea/Textarea.js +20 -27
  192. package/textarea/Textarea.stories.jsx +33 -12
  193. package/textarea/Textarea.test.js +437 -0
  194. package/textarea/types.d.ts +18 -11
  195. package/toggle-group/ToggleGroup.d.ts +1 -1
  196. package/toggle-group/ToggleGroup.js +5 -4
  197. package/toggle-group/ToggleGroup.stories.tsx +4 -4
  198. package/toggle-group/ToggleGroup.test.js +156 -0
  199. package/toggle-group/types.d.ts +9 -1
  200. package/typography/Typography.d.ts +4 -0
  201. package/typography/Typography.js +131 -0
  202. package/typography/Typography.stories.tsx +198 -0
  203. package/typography/types.d.ts +18 -0
  204. package/typography/types.js +5 -0
  205. package/useTheme.js +2 -2
  206. package/useTranslatedLabels.d.ts +2 -0
  207. package/useTranslatedLabels.js +20 -0
  208. package/wizard/Wizard.d.ts +1 -1
  209. package/wizard/Wizard.js +58 -54
  210. package/wizard/Wizard.stories.tsx +33 -24
  211. package/wizard/Wizard.test.js +141 -0
  212. package/wizard/types.d.ts +10 -5
  213. package/ThemeContext.d.ts +0 -15
  214. package/ThemeContext.js +0 -243
  215. package/V3Select/V3Select.js +0 -455
  216. package/V3Select/index.d.ts +0 -27
  217. package/V3Textarea/V3Textarea.js +0 -260
  218. package/V3Textarea/index.d.ts +0 -27
  219. package/date/Date.js +0 -373
  220. package/date/index.d.ts +0 -27
  221. package/input-text/Icons.js +0 -22
  222. package/input-text/InputText.js +0 -611
  223. package/input-text/index.d.ts +0 -36
  224. package/list/List.d.ts +0 -4
  225. package/list/List.js +0 -47
  226. package/list/List.stories.tsx +0 -95
  227. package/list/types.d.ts +0 -7
  228. package/radio/Radio.d.ts +0 -4
  229. package/radio/Radio.js +0 -174
  230. package/radio/Radio.stories.tsx +0 -192
  231. package/radio/types.d.ts +0 -54
  232. package/row/Row.d.ts +0 -3
  233. package/row/Row.js +0 -127
  234. package/row/Row.stories.tsx +0 -237
  235. package/row/types.d.ts +0 -10
  236. package/stack/Stack.d.ts +0 -3
  237. package/stack/Stack.js +0 -97
  238. package/stack/Stack.stories.tsx +0 -164
  239. package/stack/types.d.ts +0 -9
  240. package/text/Text.d.ts +0 -7
  241. package/text/Text.js +0 -30
  242. package/text/Text.stories.tsx +0 -19
  243. package/upload/Upload.js +0 -201
  244. package/upload/buttons-upload/ButtonsUpload.js +0 -111
  245. package/upload/buttons-upload/Icons.js +0 -40
  246. package/upload/dragAndDropArea/DragAndDropArea.js +0 -225
  247. package/upload/dragAndDropArea/Icons.js +0 -39
  248. package/upload/file-upload/FileToUpload.js +0 -115
  249. package/upload/file-upload/Icons.js +0 -66
  250. package/upload/files-upload/FilesToUpload.js +0 -109
  251. package/upload/index.d.ts +0 -15
  252. package/upload/transaction/Icons.js +0 -160
  253. package/upload/transaction/Transaction.js +0 -104
  254. package/upload/transactions/Transactions.js +0 -94
@@ -19,30 +19,72 @@ var _react = _interopRequireWildcard(require("react"));
19
19
 
20
20
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
21
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
22
  var _variables = require("../common/variables.js");
35
23
 
36
24
  var _utils = require("../common/utils.js");
37
25
 
38
26
  var _useTheme = _interopRequireDefault(require("../useTheme"));
39
27
 
40
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10;
28
+ var _uuid = require("uuid");
29
+
30
+ var Popover = _interopRequireWildcard(require("@radix-ui/react-popover"));
31
+
32
+ var _DropdownMenu = _interopRequireDefault(require("./DropdownMenu"));
33
+
34
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6;
41
35
 
42
36
  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
37
 
44
38
  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
39
 
40
+ var upArrowIcon = /*#__PURE__*/_react["default"].createElement("svg", {
41
+ xmlns: "http://www.w3.org/2000/svg",
42
+ width: "24",
43
+ height: "24",
44
+ viewBox: "0 0 24 24",
45
+ fill: "currentColor"
46
+ }, /*#__PURE__*/_react["default"].createElement("path", {
47
+ d: "M7 14l5-5 5 5z"
48
+ }), /*#__PURE__*/_react["default"].createElement("path", {
49
+ d: "M0 0h24v24H0z",
50
+ fill: "none"
51
+ }));
52
+
53
+ var downArrowIcon = /*#__PURE__*/_react["default"].createElement("svg", {
54
+ xmlns: "http://www.w3.org/2000/svg",
55
+ width: "24",
56
+ height: "24",
57
+ viewBox: "0 0 24 24",
58
+ fill: "currentColor"
59
+ }, /*#__PURE__*/_react["default"].createElement("path", {
60
+ d: "M7 10l5 5 5-5z"
61
+ }), /*#__PURE__*/_react["default"].createElement("path", {
62
+ d: "M0 0h24v24H0z",
63
+ fill: "none"
64
+ }));
65
+
66
+ var useWidth = function useWidth(target) {
67
+ var _useState = (0, _react.useState)(0),
68
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
69
+ width = _useState2[0],
70
+ setWidth = _useState2[1];
71
+
72
+ (0, _react.useEffect)(function () {
73
+ if (target != null) {
74
+ setWidth(target.getBoundingClientRect().width);
75
+ var triggerObserver = new ResizeObserver(function (entries) {
76
+ var rect = entries[0].target.getBoundingClientRect();
77
+ setWidth(rect === null || rect === void 0 ? void 0 : rect.width);
78
+ });
79
+ triggerObserver.observe(target);
80
+ return function () {
81
+ triggerObserver.unobserve(target);
82
+ };
83
+ }
84
+ }, [target]);
85
+ return width;
86
+ };
87
+
46
88
  var DxcDropdown = function DxcDropdown(_ref) {
47
89
  var options = _ref.options,
48
90
  _ref$optionsIconPosit = _ref.optionsIconPosition,
@@ -54,171 +96,209 @@ var DxcDropdown = function DxcDropdown(_ref) {
54
96
  label = _ref$label === void 0 ? "" : _ref$label,
55
97
  _ref$caretHidden = _ref.caretHidden,
56
98
  caretHidden = _ref$caretHidden === void 0 ? false : _ref$caretHidden,
57
- onSelectOption = _ref.onSelectOption,
99
+ _ref$disabled = _ref.disabled,
100
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
58
101
  _ref$expandOnHover = _ref.expandOnHover,
59
102
  expandOnHover = _ref$expandOnHover === void 0 ? false : _ref$expandOnHover,
103
+ onSelectOption = _ref.onSelectOption,
60
104
  margin = _ref.margin,
61
105
  _ref$size = _ref.size,
62
106
  size = _ref$size === void 0 ? "fitContent" : _ref$size,
63
107
  _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;
108
+ tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
67
109
 
68
- var _useState = (0, _react.useState)(),
69
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
70
- width = _useState2[0],
71
- setWidth = _useState2[1];
110
+ var _useState3 = (0, _react.useState)("trigger-".concat((0, _uuid.v4)())),
111
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 1),
112
+ triggerId = _useState4[0];
113
+
114
+ var menuId = "menu-".concat(triggerId);
115
+
116
+ var _useState5 = (0, _react.useState)(false),
117
+ _useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
118
+ isOpen = _useState6[0],
119
+ changeIsOpen = _useState6[1];
120
+
121
+ var _useState7 = (0, _react.useState)(0),
122
+ _useState8 = (0, _slicedToArray2["default"])(_useState7, 2),
123
+ visualFocusIndex = _useState8[0],
124
+ setVisualFocusIndex = _useState8[1];
72
125
 
73
126
  var colorsTheme = (0, _useTheme["default"])();
74
- var ref = (0, _react.useRef)(null);
127
+ var triggerRef = (0, _react.useRef)(null);
128
+ var menuRef = (0, _react.useRef)(null);
129
+ var width = useWidth(triggerRef.current);
75
130
 
76
- var handleResize = function handleResize() {
77
- if (ref.current) setWidth(ref.current.offsetWidth);
131
+ var handleOnOpenMenu = function handleOnOpenMenu() {
132
+ changeIsOpen(true);
78
133
  };
79
134
 
80
- (0, _react.useEffect)(function () {
81
- if (ref.current) {
82
- ref.current.addEventListener("resize", handleResize);
83
- handleResize();
135
+ var handleOnCloseMenu = function handleOnCloseMenu() {
136
+ changeIsOpen(false);
137
+ setVisualFocusIndex(0);
138
+ };
139
+
140
+ var handleMenuItemOnClick = (0, _react.useCallback)(function (value) {
141
+ var _triggerRef$current;
142
+
143
+ onSelectOption(value);
144
+ handleOnCloseMenu();
145
+ (_triggerRef$current = triggerRef.current) === null || _triggerRef$current === void 0 ? void 0 : _triggerRef$current.focus();
146
+ }, [onSelectOption]);
147
+
148
+ var handleOnBlur = function handleOnBlur(event) {
149
+ !event.currentTarget.contains(event.relatedTarget) && handleOnCloseMenu();
150
+ };
151
+
152
+ var handleTriggerOnClick = function handleTriggerOnClick() {
153
+ changeIsOpen(function (isOpen) {
154
+ return !isOpen;
155
+ });
156
+ };
157
+
158
+ var handleTriggerOnKeyDown = function handleTriggerOnKeyDown(event) {
159
+ switch (event.key) {
160
+ case "Up":
161
+ case "ArrowUp":
162
+ event.preventDefault();
163
+ setVisualFocusIndex(options.length - 1);
164
+ handleOnOpenMenu();
165
+ break;
166
+
167
+ case " ":
168
+ case "Down":
169
+ case "ArrowDown":
170
+ case "Enter":
171
+ event.preventDefault();
172
+ handleOnOpenMenu();
173
+ break;
84
174
  }
175
+ };
85
176
 
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
- }));
177
+ var setPreviousIndexFocus = function setPreviousIndexFocus() {
178
+ setVisualFocusIndex(function (currentFocusIndex) {
179
+ var index = currentFocusIndex === 0 ? options.length - 1 : currentFocusIndex - 1;
180
+ return index;
181
+ });
124
182
  };
125
183
 
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
- }));
184
+ var setNextIndexFocus = function setNextIndexFocus() {
185
+ setVisualFocusIndex(function (currentFocusIndex) {
186
+ var index = currentFocusIndex === options.length - 1 ? 0 : currentFocusIndex + 1;
187
+ return index;
188
+ });
139
189
  };
140
190
 
191
+ var handleMenuOnKeyDown = (0, _react.useCallback)(function (event) {
192
+ var _triggerRef$current2, _triggerRef$current3;
193
+
194
+ switch (event.key) {
195
+ case "Up":
196
+ case "ArrowUp":
197
+ event.preventDefault();
198
+ setPreviousIndexFocus();
199
+ break;
200
+
201
+ case "Down":
202
+ case "ArrowDown":
203
+ event.preventDefault();
204
+ setNextIndexFocus();
205
+ break;
206
+
207
+ case " ":
208
+ case "Enter":
209
+ event.preventDefault();
210
+ handleMenuItemOnClick(options[visualFocusIndex].value);
211
+ break;
212
+
213
+ case "Esc":
214
+ case "Escape":
215
+ event.preventDefault();
216
+ handleOnCloseMenu();
217
+ (_triggerRef$current2 = triggerRef.current) === null || _triggerRef$current2 === void 0 ? void 0 : _triggerRef$current2.focus();
218
+ break;
219
+
220
+ case "Home":
221
+ case "PageUp":
222
+ event.preventDefault();
223
+ setVisualFocusIndex(0);
224
+ break;
225
+
226
+ case "End":
227
+ case "PageDown":
228
+ event.preventDefault();
229
+ setVisualFocusIndex(options.length - 1);
230
+ break;
231
+
232
+ case "Tab":
233
+ handleOnCloseMenu();
234
+ (_triggerRef$current3 = triggerRef.current) === null || _triggerRef$current3 === void 0 ? void 0 : _triggerRef$current3.focus();
235
+ break;
236
+ }
237
+ }, [onSelectOption, visualFocusIndex, options]);
238
+ (0, _react.useLayoutEffect)(function () {
239
+ var _menuRef$current, _visualFocusedMenuIte;
240
+
241
+ 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];
242
+ visualFocusedMenuItem === null || visualFocusedMenuItem === void 0 ? void 0 : (_visualFocusedMenuIte = visualFocusedMenuItem.scrollIntoView) === null || _visualFocusedMenuIte === void 0 ? void 0 : _visualFocusedMenuIte.call(visualFocusedMenuItem, {
243
+ block: "nearest",
244
+ inline: "start"
245
+ });
246
+ }, [visualFocusIndex]);
141
247
  return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
142
248
  theme: colorsTheme.dropdown
143
- }, /*#__PURE__*/_react["default"].createElement(DXCDropdownContainer, {
249
+ }, /*#__PURE__*/_react["default"].createElement(DropdownContainer, {
250
+ onMouseEnter: !disabled && expandOnHover ? handleOnOpenMenu : undefined,
251
+ onMouseLeave: !disabled && expandOnHover ? handleOnCloseMenu : undefined,
252
+ onBlur: !disabled ? handleOnBlur : undefined,
144
253
  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
254
+ size: size
255
+ }, /*#__PURE__*/_react["default"].createElement(Popover.Root, {
256
+ open: isOpen
257
+ }, /*#__PURE__*/_react["default"].createElement(Popover.Trigger, {
258
+ asChild: true,
259
+ type: undefined
152
260
  }, /*#__PURE__*/_react["default"].createElement(DropdownTrigger, {
153
- opened: anchorEl === null ? false : true,
154
- onClick: handleClickListItem,
261
+ opened: isOpen,
262
+ onClick: handleTriggerOnClick,
263
+ onKeyDown: handleTriggerOnKeyDown,
264
+ onBlur: function onBlur(event) {
265
+ event.stopPropagation();
266
+ },
155
267
  disabled: disabled,
156
268
  label: label,
157
- caretHidden: caretHidden,
158
269
  margin: margin,
159
270
  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, {
271
+ id: triggerId,
272
+ "aria-haspopup": "true",
273
+ "aria-controls": menuId,
274
+ "aria-expanded": isOpen ? true : undefined,
275
+ tabIndex: tabIndex,
276
+ ref: triggerRef
277
+ }, /*#__PURE__*/_react["default"].createElement(DropdownTriggerContent, null, label && iconPosition === "after" && /*#__PURE__*/_react["default"].createElement(DropdownTriggerLabel, null, label), icon && /*#__PURE__*/_react["default"].createElement(DropdownTriggerIcon, {
166
278
  label: label,
167
279
  iconPosition: iconPosition,
168
- disabled: disabled
169
- }, typeof icon === "string" ? /*#__PURE__*/_react["default"].createElement(ButtonIcon, {
280
+ disabled: disabled,
281
+ role: typeof icon === "string" ? undefined : "img"
282
+ }, typeof icon === "string" ? /*#__PURE__*/_react["default"].createElement("img", {
170
283
  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,
284
+ }) : icon), label && iconPosition === "before" && /*#__PURE__*/_react["default"].createElement(DropdownTriggerLabel, null, label)), !caretHidden && /*#__PURE__*/_react["default"].createElement(CaretIcon, {
176
285
  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"
286
+ }, isOpen ? upArrowIcon : downArrowIcon))), /*#__PURE__*/_react["default"].createElement(Popover.Content, {
287
+ sideOffset: 1,
288
+ asChild: true
289
+ }, /*#__PURE__*/_react["default"].createElement(_DropdownMenu["default"], {
290
+ id: menuId,
291
+ dropdownTriggerId: triggerId,
292
+ options: options,
293
+ iconsPosition: optionsIconPosition,
294
+ visualFocusIndex: visualFocusIndex,
295
+ menuItemOnClick: handleMenuItemOnClick,
296
+ onKeyDown: handleMenuOnKeyDown,
297
+ styles: {
298
+ width: width
185
299
  },
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
- }))));
300
+ ref: menuRef
301
+ })))));
222
302
  };
223
303
 
224
304
  var sizes = {
@@ -226,18 +306,14 @@ var sizes = {
226
306
  medium: "240px",
227
307
  large: "480px",
228
308
  fillParent: "100%",
229
- fitContent: "unset"
309
+ fitContent: "fit-content"
230
310
  };
231
311
 
232
312
  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];
313
+ return size === "fillParent" ? "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")") : sizes[size];
238
314
  };
239
315
 
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) {
316
+ 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
317
  return calculateWidth(props.margin, props.size);
242
318
  }, function (props) {
243
319
  return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
@@ -251,68 +327,10 @@ var DXCDropdownContainer = _styledComponents["default"].div(_templateObject || (
251
327
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
252
328
  });
253
329
 
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;
330
+ 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) {
331
+ return props.theme.caretIconSpacing;
314
332
  }, function (props) {
315
- return props.theme.buttonFontWeight;
333
+ return props.label === "" ? "0px" : calculateWidth(props.margin, props.size);
316
334
  }, function (props) {
317
335
  return props.theme.borderRadius;
318
336
  }, function (props) {
@@ -321,8 +339,6 @@ var DropdownTrigger = _styledComponents["default"].button(_templateObject3 || (_
321
339
  return props.theme.borderStyle;
322
340
  }, function (props) {
323
341
  return props.disabled ? props.theme.disabledBorderColor : props.theme.borderColor;
324
- }, function (props) {
325
- return props.label === "" ? "0px" : calculateWidth(props.margin, props.size);
326
342
  }, function (props) {
327
343
  return props.theme.buttonPaddingTop;
328
344
  }, function (props) {
@@ -336,54 +352,34 @@ var DropdownTrigger = _styledComponents["default"].button(_templateObject3 || (_
336
352
  }, function (props) {
337
353
  return props.disabled ? props.theme.disabledColor : props.theme.buttonFontColor;
338
354
  }, function (props) {
339
- return props.opened ? "0px" : props.theme.borderRadius;
340
- }, function (props) {
341
- return props.opened ? "0px" : props.theme.borderRadius;
355
+ return props.disabled ? "not-allowed" : "pointer";
342
356
  }, 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 ");
357
+ 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
358
  });
345
359
 
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)";
360
+ 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) {
361
+ return props.theme.buttonIconSpacing;
352
362
  });
353
363
 
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;
364
+ 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) {
365
+ return props.theme.buttonFontFamily;
360
366
  }, function (props) {
361
- return props.iconPosition === "after" && props.label !== "" && props.theme.buttonIconSpacing || "0px";
367
+ return props.theme.buttonFontSize;
362
368
  }, function (props) {
363
- return props.iconPosition === "before" && props.label !== "" && props.theme.buttonIconSpacing || "0px";
369
+ return props.theme.buttonFontStyle;
364
370
  }, function (props) {
365
- return props.disabled ? props.theme.disabledColor : props.theme.buttonIconColor;
371
+ return props.theme.buttonFontWeight;
366
372
  });
367
373
 
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";
374
+ var DropdownTriggerIcon = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n width: ", ";\n height: ", ";\n color: ", ";\n\n img,\n svg {\n height: 100%;\n width: 100%;\n }\n"])), function (props) {
375
+ return props.theme.buttonIconSize;
376
376
  }, function (props) {
377
- return props.iconPosition === "before" && props.label !== "" && props.theme.optionIconSpacing || "0px";
377
+ return props.theme.buttonIconSize;
378
378
  }, function (props) {
379
- return props.theme.optionIconColor;
379
+ return props.disabled ? props.theme.disabledColor : props.theme.buttonIconColor;
380
380
  });
381
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) {
382
+ 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
383
  return props.disabled ? props.theme.disabledColor : props.theme.caretIconColor;
388
384
  }, function (props) {
389
385
  return props.theme.caretIconSize;