@dxc-technology/halstack-react 0.0.0-28a98e5 → 0.0.0-290c489

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 (359) hide show
  1. package/BackgroundColorContext.d.ts +10 -0
  2. package/BackgroundColorContext.js +1 -4
  3. package/HalstackContext.d.ts +12 -0
  4. package/HalstackContext.js +295 -0
  5. package/accordion/Accordion.d.ts +4 -0
  6. package/accordion/Accordion.js +18 -81
  7. package/accordion/Accordion.stories.tsx +307 -0
  8. package/accordion/Accordion.test.js +72 -0
  9. package/accordion/types.d.ts +68 -0
  10. package/accordion/types.js +5 -0
  11. package/accordion-group/AccordionGroup.d.ts +7 -0
  12. package/accordion-group/AccordionGroup.js +61 -76
  13. package/accordion-group/AccordionGroup.stories.tsx +225 -0
  14. package/accordion-group/AccordionGroup.test.js +151 -0
  15. package/accordion-group/types.d.ts +72 -0
  16. package/accordion-group/types.js +5 -0
  17. package/alert/Alert.d.ts +4 -0
  18. package/alert/Alert.js +7 -23
  19. package/alert/Alert.stories.tsx +170 -0
  20. package/alert/Alert.test.js +92 -0
  21. package/alert/types.d.ts +49 -0
  22. package/alert/types.js +5 -0
  23. package/badge/Badge.d.ts +4 -0
  24. package/badge/Badge.js +6 -4
  25. package/badge/types.d.ts +5 -0
  26. package/badge/types.js +5 -0
  27. package/bleed/Bleed.d.ts +3 -0
  28. package/bleed/Bleed.js +51 -0
  29. package/bleed/Bleed.stories.tsx +341 -0
  30. package/bleed/types.d.ts +37 -0
  31. package/bleed/types.js +5 -0
  32. package/box/Box.d.ts +4 -0
  33. package/box/Box.js +28 -64
  34. package/box/Box.stories.tsx +132 -0
  35. package/box/Box.test.js +18 -0
  36. package/box/types.d.ts +43 -0
  37. package/box/types.js +5 -0
  38. package/bulleted-list/BulletedList.d.ts +7 -0
  39. package/bulleted-list/BulletedList.js +123 -0
  40. package/bulleted-list/BulletedList.stories.tsx +200 -0
  41. package/bulleted-list/types.d.ts +11 -0
  42. package/bulleted-list/types.js +5 -0
  43. package/button/Button.d.ts +1 -1
  44. package/button/Button.js +24 -32
  45. package/button/Button.stories.tsx +250 -282
  46. package/button/Button.test.js +35 -0
  47. package/button/types.d.ts +9 -13
  48. package/card/Card.d.ts +4 -0
  49. package/card/Card.js +38 -77
  50. package/card/Card.stories.tsx +201 -0
  51. package/card/Card.test.js +50 -0
  52. package/card/ice-cream.jpg +0 -0
  53. package/card/types.d.ts +67 -0
  54. package/card/types.js +5 -0
  55. package/checkbox/Checkbox.d.ts +4 -0
  56. package/checkbox/Checkbox.js +45 -63
  57. package/checkbox/Checkbox.stories.tsx +188 -0
  58. package/checkbox/Checkbox.test.js +78 -0
  59. package/checkbox/types.d.ts +64 -0
  60. package/checkbox/types.js +5 -0
  61. package/chip/Chip.d.ts +4 -0
  62. package/chip/Chip.js +16 -76
  63. package/chip/Chip.stories.tsx +119 -0
  64. package/chip/Chip.test.js +56 -0
  65. package/chip/types.d.ts +45 -0
  66. package/chip/types.js +5 -0
  67. package/common/variables.js +301 -373
  68. package/date-input/DateInput.d.ts +4 -0
  69. package/date-input/DateInput.js +62 -86
  70. package/date-input/DateInput.stories.tsx +138 -0
  71. package/date-input/DateInput.test.js +479 -0
  72. package/date-input/types.d.ts +107 -0
  73. package/date-input/types.js +5 -0
  74. package/dialog/Dialog.d.ts +4 -0
  75. package/dialog/Dialog.js +10 -56
  76. package/dialog/Dialog.stories.tsx +212 -0
  77. package/dialog/Dialog.test.js +40 -0
  78. package/dialog/types.d.ts +43 -0
  79. package/dialog/types.js +5 -0
  80. package/dropdown/Dropdown.d.ts +4 -0
  81. package/dropdown/Dropdown.js +28 -87
  82. package/dropdown/Dropdown.stories.tsx +249 -0
  83. package/dropdown/Dropdown.test.js +189 -0
  84. package/dropdown/types.d.ts +80 -0
  85. package/dropdown/types.js +5 -0
  86. package/file-input/FileInput.d.ts +4 -0
  87. package/file-input/FileInput.js +172 -111
  88. package/file-input/FileInput.stories.tsx +507 -0
  89. package/file-input/FileInput.test.js +457 -0
  90. package/file-input/FileItem.d.ts +14 -0
  91. package/file-input/FileItem.js +16 -23
  92. package/file-input/types.d.ts +112 -0
  93. package/file-input/types.js +5 -0
  94. package/flex/Flex.d.ts +3 -0
  95. package/flex/Flex.js +74 -0
  96. package/flex/Flex.stories.tsx +103 -0
  97. package/flex/types.d.ts +21 -0
  98. package/flex/types.js +5 -0
  99. package/footer/Footer.d.ts +4 -0
  100. package/footer/Footer.js +36 -148
  101. package/footer/Footer.stories.tsx +130 -0
  102. package/footer/Footer.test.js +109 -0
  103. package/footer/Icons.d.ts +2 -0
  104. package/footer/Icons.js +4 -4
  105. package/footer/types.d.ts +65 -0
  106. package/footer/types.js +5 -0
  107. package/header/Header.d.ts +7 -0
  108. package/header/Header.js +55 -78
  109. package/header/Header.stories.tsx +172 -0
  110. package/header/Header.test.js +79 -0
  111. package/header/Icons.d.ts +2 -0
  112. package/header/Icons.js +2 -27
  113. package/header/types.d.ts +47 -0
  114. package/header/types.js +5 -0
  115. package/heading/Heading.d.ts +4 -0
  116. package/heading/Heading.js +7 -24
  117. package/heading/Heading.stories.tsx +54 -0
  118. package/heading/Heading.test.js +186 -0
  119. package/heading/types.d.ts +33 -0
  120. package/heading/types.js +5 -0
  121. package/inset/Inset.d.ts +3 -0
  122. package/inset/Inset.js +51 -0
  123. package/inset/Inset.stories.tsx +229 -0
  124. package/inset/types.d.ts +37 -0
  125. package/inset/types.js +5 -0
  126. package/layout/ApplicationLayout.d.ts +20 -0
  127. package/layout/ApplicationLayout.js +71 -135
  128. package/layout/ApplicationLayout.stories.tsx +161 -0
  129. package/layout/Icons.d.ts +5 -0
  130. package/layout/Icons.js +13 -2
  131. package/layout/SidenavContext.d.ts +5 -0
  132. package/layout/SidenavContext.js +19 -0
  133. package/layout/types.d.ts +42 -0
  134. package/layout/types.js +5 -0
  135. package/link/Link.d.ts +4 -0
  136. package/link/Link.js +60 -107
  137. package/link/Link.stories.tsx +186 -0
  138. package/link/Link.test.js +83 -0
  139. package/link/types.d.ts +54 -0
  140. package/link/types.js +5 -0
  141. package/main.d.ts +14 -12
  142. package/main.js +78 -56
  143. package/number-input/NumberInput.d.ts +4 -0
  144. package/number-input/NumberInput.js +16 -68
  145. package/number-input/NumberInput.stories.tsx +115 -0
  146. package/number-input/NumberInput.test.js +506 -0
  147. package/number-input/NumberInputContext.d.ts +4 -0
  148. package/number-input/NumberInputContext.js +5 -2
  149. package/number-input/numberInputContextTypes.d.ts +19 -0
  150. package/number-input/numberInputContextTypes.js +5 -0
  151. package/number-input/types.d.ts +124 -0
  152. package/number-input/types.js +5 -0
  153. package/package.json +11 -7
  154. package/paginator/Paginator.d.ts +4 -0
  155. package/paginator/Paginator.js +19 -69
  156. package/paginator/Paginator.stories.tsx +63 -0
  157. package/paginator/Paginator.test.js +308 -0
  158. package/paginator/types.d.ts +38 -0
  159. package/paginator/types.js +5 -0
  160. package/paragraph/Paragraph.d.ts +6 -0
  161. package/paragraph/Paragraph.js +38 -0
  162. package/paragraph/Paragraph.stories.tsx +44 -0
  163. package/password-input/PasswordInput.d.ts +4 -0
  164. package/password-input/PasswordInput.js +24 -57
  165. package/password-input/PasswordInput.stories.tsx +131 -0
  166. package/password-input/PasswordInput.test.js +180 -0
  167. package/password-input/types.d.ts +110 -0
  168. package/password-input/types.js +5 -0
  169. package/progress-bar/ProgressBar.d.ts +4 -0
  170. package/progress-bar/ProgressBar.js +6 -24
  171. package/progress-bar/ProgressBar.stories.jsx +58 -0
  172. package/progress-bar/ProgressBar.test.js +65 -0
  173. package/progress-bar/types.d.ts +37 -0
  174. package/progress-bar/types.js +5 -0
  175. package/quick-nav/QuickNav.d.ts +4 -0
  176. package/quick-nav/QuickNav.js +118 -0
  177. package/quick-nav/QuickNav.stories.tsx +264 -0
  178. package/quick-nav/types.d.ts +21 -0
  179. package/quick-nav/types.js +5 -0
  180. package/radio-group/Radio.d.ts +4 -0
  181. package/radio-group/Radio.js +141 -0
  182. package/radio-group/RadioGroup.d.ts +4 -0
  183. package/radio-group/RadioGroup.js +283 -0
  184. package/radio-group/RadioGroup.stories.tsx +100 -0
  185. package/radio-group/RadioGroup.test.js +695 -0
  186. package/radio-group/types.d.ts +114 -0
  187. package/radio-group/types.js +5 -0
  188. package/resultsetTable/ResultsetTable.d.ts +4 -0
  189. package/resultsetTable/ResultsetTable.js +9 -29
  190. package/resultsetTable/ResultsetTable.stories.tsx +275 -0
  191. package/resultsetTable/ResultsetTable.test.js +348 -0
  192. package/resultsetTable/types.d.ts +67 -0
  193. package/resultsetTable/types.js +5 -0
  194. package/row/Row.d.ts +3 -0
  195. package/row/Row.js +127 -0
  196. package/row/Row.stories.tsx +237 -0
  197. package/row/types.d.ts +28 -0
  198. package/row/types.js +5 -0
  199. package/select/Icons.d.ts +10 -0
  200. package/select/Icons.js +93 -0
  201. package/select/Listbox.d.ts +4 -0
  202. package/select/Listbox.js +175 -0
  203. package/select/Option.d.ts +4 -0
  204. package/select/Option.js +110 -0
  205. package/select/Select.d.ts +4 -0
  206. package/select/Select.js +214 -418
  207. package/select/Select.stories.tsx +626 -0
  208. package/select/Select.test.js +2162 -0
  209. package/select/types.d.ts +212 -0
  210. package/select/types.js +5 -0
  211. package/sidenav/Sidenav.d.ts +10 -0
  212. package/sidenav/Sidenav.js +174 -63
  213. package/sidenav/Sidenav.stories.tsx +180 -0
  214. package/sidenav/Sidenav.test.js +44 -0
  215. package/sidenav/types.d.ts +73 -0
  216. package/sidenav/types.js +5 -0
  217. package/slider/Slider.d.ts +4 -0
  218. package/slider/Slider.js +63 -85
  219. package/slider/Slider.stories.tsx +177 -0
  220. package/slider/Slider.test.js +150 -0
  221. package/slider/types.d.ts +82 -0
  222. package/slider/types.js +5 -0
  223. package/spinner/Spinner.d.ts +4 -0
  224. package/spinner/Spinner.js +9 -26
  225. package/spinner/Spinner.stories.jsx +103 -0
  226. package/spinner/Spinner.test.js +64 -0
  227. package/spinner/types.d.ts +32 -0
  228. package/spinner/types.js +5 -0
  229. package/stack/Stack.d.ts +4 -0
  230. package/stack/Stack.js +56 -0
  231. package/stack/Stack.stories.tsx +263 -0
  232. package/stack/types.d.ts +32 -0
  233. package/stack/types.js +5 -0
  234. package/switch/Switch.d.ts +4 -0
  235. package/switch/Switch.js +49 -62
  236. package/switch/Switch.stories.tsx +160 -0
  237. package/switch/Switch.test.js +98 -0
  238. package/switch/types.d.ts +62 -0
  239. package/switch/types.js +5 -0
  240. package/table/Table.d.ts +4 -0
  241. package/table/Table.js +3 -3
  242. package/table/Table.stories.jsx +277 -0
  243. package/table/Table.test.js +26 -0
  244. package/table/types.d.ts +21 -0
  245. package/table/types.js +5 -0
  246. package/tabs/Tabs.d.ts +4 -0
  247. package/tabs/Tabs.js +24 -72
  248. package/tabs/Tabs.stories.tsx +112 -0
  249. package/tabs/Tabs.test.js +140 -0
  250. package/tabs/types.d.ts +82 -0
  251. package/tabs/types.js +5 -0
  252. package/tabs-nav/NavTabs.d.ts +8 -0
  253. package/tabs-nav/NavTabs.js +125 -0
  254. package/tabs-nav/NavTabs.stories.tsx +170 -0
  255. package/tabs-nav/NavTabs.test.js +82 -0
  256. package/tabs-nav/Tab.d.ts +4 -0
  257. package/tabs-nav/Tab.js +132 -0
  258. package/tabs-nav/types.d.ts +53 -0
  259. package/tabs-nav/types.js +5 -0
  260. package/tag/Tag.d.ts +4 -0
  261. package/tag/Tag.js +34 -59
  262. package/tag/Tag.stories.tsx +142 -0
  263. package/tag/Tag.test.js +60 -0
  264. package/tag/types.d.ts +69 -0
  265. package/tag/types.js +5 -0
  266. package/text-input/Suggestion.d.ts +4 -0
  267. package/text-input/Suggestion.js +55 -0
  268. package/text-input/TextInput.d.ts +4 -0
  269. package/text-input/TextInput.js +137 -185
  270. package/text-input/TextInput.stories.tsx +474 -0
  271. package/text-input/TextInput.test.js +1712 -0
  272. package/text-input/types.d.ts +178 -0
  273. package/text-input/types.js +5 -0
  274. package/textarea/Textarea.d.ts +4 -0
  275. package/textarea/Textarea.js +39 -77
  276. package/textarea/Textarea.stories.jsx +157 -0
  277. package/textarea/Textarea.test.js +437 -0
  278. package/textarea/types.d.ts +137 -0
  279. package/textarea/types.js +5 -0
  280. package/toggle-group/ToggleGroup.d.ts +4 -0
  281. package/toggle-group/ToggleGroup.js +18 -46
  282. package/toggle-group/ToggleGroup.stories.tsx +173 -0
  283. package/toggle-group/ToggleGroup.test.js +156 -0
  284. package/toggle-group/types.d.ts +105 -0
  285. package/toggle-group/types.js +5 -0
  286. package/typography/Typography.d.ts +4 -0
  287. package/typography/Typography.js +131 -0
  288. package/typography/Typography.stories.tsx +198 -0
  289. package/typography/types.d.ts +18 -0
  290. package/typography/types.js +5 -0
  291. package/useTheme.d.ts +2 -0
  292. package/useTheme.js +2 -2
  293. package/useTranslatedLabels.d.ts +2 -0
  294. package/useTranslatedLabels.js +20 -0
  295. package/wizard/Wizard.d.ts +4 -0
  296. package/wizard/Wizard.js +118 -104
  297. package/wizard/Wizard.stories.tsx +233 -0
  298. package/wizard/Wizard.test.js +141 -0
  299. package/wizard/types.d.ts +65 -0
  300. package/wizard/types.js +5 -0
  301. package/ThemeContext.js +0 -246
  302. package/V3Select/V3Select.js +0 -455
  303. package/V3Select/index.d.ts +0 -27
  304. package/V3Textarea/V3Textarea.js +0 -260
  305. package/V3Textarea/index.d.ts +0 -27
  306. package/accordion/index.d.ts +0 -28
  307. package/accordion-group/index.d.ts +0 -16
  308. package/alert/index.d.ts +0 -51
  309. package/box/index.d.ts +0 -25
  310. package/card/index.d.ts +0 -22
  311. package/checkbox/index.d.ts +0 -24
  312. package/chip/index.d.ts +0 -22
  313. package/date/Date.js +0 -373
  314. package/date/index.d.ts +0 -27
  315. package/date-input/index.d.ts +0 -95
  316. package/dialog/index.d.ts +0 -18
  317. package/dropdown/index.d.ts +0 -26
  318. package/file-input/index.d.ts +0 -81
  319. package/footer/index.d.ts +0 -25
  320. package/header/index.d.ts +0 -25
  321. package/heading/index.d.ts +0 -17
  322. package/input-text/Icons.js +0 -22
  323. package/input-text/InputText.js +0 -611
  324. package/input-text/index.d.ts +0 -36
  325. package/link/index.d.ts +0 -23
  326. package/number-input/index.d.ts +0 -113
  327. package/paginator/index.d.ts +0 -20
  328. package/password-input/index.d.ts +0 -94
  329. package/progress-bar/index.d.ts +0 -18
  330. package/radio/Radio.js +0 -195
  331. package/radio/index.d.ts +0 -23
  332. package/resultsetTable/index.d.ts +0 -19
  333. package/select/index.d.ts +0 -131
  334. package/sidenav/index.d.ts +0 -13
  335. package/slider/index.d.ts +0 -29
  336. package/spinner/index.d.ts +0 -17
  337. package/switch/index.d.ts +0 -24
  338. package/table/index.d.ts +0 -13
  339. package/tabs/index.d.ts +0 -19
  340. package/tag/index.d.ts +0 -24
  341. package/text-input/index.d.ts +0 -135
  342. package/textarea/index.d.ts +0 -117
  343. package/toggle/Toggle.js +0 -186
  344. package/toggle/index.d.ts +0 -21
  345. package/toggle-group/index.d.ts +0 -21
  346. package/upload/Upload.js +0 -201
  347. package/upload/buttons-upload/ButtonsUpload.js +0 -111
  348. package/upload/buttons-upload/Icons.js +0 -40
  349. package/upload/dragAndDropArea/DragAndDropArea.js +0 -225
  350. package/upload/dragAndDropArea/Icons.js +0 -39
  351. package/upload/file-upload/FileToUpload.js +0 -115
  352. package/upload/file-upload/Icons.js +0 -66
  353. package/upload/files-upload/FilesToUpload.js +0 -109
  354. package/upload/index.d.ts +0 -15
  355. package/upload/transaction/Icons.js +0 -160
  356. package/upload/transaction/Transaction.js +0 -104
  357. package/upload/transactions/Transactions.js +0 -94
  358. package/wizard/Icons.js +0 -65
  359. package/wizard/index.d.ts +0 -18
package/select/Select.js CHANGED
@@ -21,7 +21,9 @@ var _react = _interopRequireWildcard(require("react"));
21
21
 
22
22
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
23
23
 
24
- var _useTheme = _interopRequireDefault(require("../useTheme.js"));
24
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
25
+
26
+ var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
25
27
 
26
28
  var _variables = require("../common/variables.js");
27
29
 
@@ -29,97 +31,34 @@ var _uuid = require("uuid");
29
31
 
30
32
  var _utils = require("../common/utils.js");
31
33
 
32
- var _Checkbox = _interopRequireDefault(require("../checkbox/Checkbox"));
34
+ var _Icons = _interopRequireDefault(require("./Icons"));
35
+
36
+ var _Listbox = _interopRequireDefault(require("./Listbox"));
33
37
 
34
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17, _templateObject18, _templateObject19, _templateObject20, _templateObject21, _templateObject22, _templateObject23, _templateObject24, _templateObject25, _templateObject26, _templateObject27, _templateObject28;
38
+ var Popover = _interopRequireWildcard(require("@radix-ui/react-popover"));
39
+
40
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17;
35
41
 
36
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); }
37
43
 
38
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; }
39
45
 
40
- var selectIcons = {
41
- error: /*#__PURE__*/_react["default"].createElement("svg", {
42
- role: "img",
43
- xmlns: "http://www.w3.org/2000/svg",
44
- height: "24px",
45
- viewBox: "0 0 24 24",
46
- width: "24px",
47
- fill: "currentColor"
48
- }, /*#__PURE__*/_react["default"].createElement("path", {
49
- d: "M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-2h2v2zm0-4h-2V7h2v6z"
50
- })),
51
- arrowUp: /*#__PURE__*/_react["default"].createElement("svg", {
52
- role: "img",
53
- xmlns: "http://www.w3.org/2000/svg",
54
- height: "24px",
55
- viewBox: "0 0 24 24",
56
- width: "24px",
57
- fill: "currentColor"
58
- }, /*#__PURE__*/_react["default"].createElement("path", {
59
- d: "M0 0h24v24H0V0z",
60
- fill: "none"
61
- }), /*#__PURE__*/_react["default"].createElement("path", {
62
- d: "M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6 1.41 1.41z"
63
- })),
64
- arrowDown: /*#__PURE__*/_react["default"].createElement("svg", {
65
- role: "img",
66
- xmlns: "http://www.w3.org/2000/svg",
67
- height: "24px",
68
- viewBox: "0 0 24 24",
69
- width: "24px",
70
- fill: "currentColor"
71
- }, /*#__PURE__*/_react["default"].createElement("path", {
72
- d: "M0 0h24v24H0V0z",
73
- fill: "none"
74
- }), /*#__PURE__*/_react["default"].createElement("path", {
75
- d: "M7.41 8.59L12 13.17l4.59-4.58L18 10l-6 6-6-6 1.41-1.41z"
76
- })),
77
- clear: /*#__PURE__*/_react["default"].createElement("svg", {
78
- role: "img",
79
- xmlns: "http://www.w3.org/2000/svg",
80
- width: "24",
81
- height: "24",
82
- viewBox: "0 0 24 24",
83
- fill: "currentColor"
84
- }, /*#__PURE__*/_react["default"].createElement("path", {
85
- d: "M0 0h24v24H0V0z",
86
- fill: "none"
87
- }), /*#__PURE__*/_react["default"].createElement("path", {
88
- d: "M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41z"
89
- })),
90
- selected: /*#__PURE__*/_react["default"].createElement("svg", {
91
- role: "img",
92
- xmlns: "http://www.w3.org/2000/svg",
93
- height: "24px",
94
- viewBox: "0 0 24 24",
95
- width: "24px",
96
- fill: "currentColor"
97
- }, /*#__PURE__*/_react["default"].createElement("path", {
98
- d: "M0 0h24v24H0z",
99
- fill: "none"
100
- }), /*#__PURE__*/_react["default"].createElement("path", {
101
- d: "M9 16.2L4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4L9 16.2z"
102
- })),
103
- searchOff: /*#__PURE__*/_react["default"].createElement("svg", {
104
- role: "img",
105
- xmlns: "http://www.w3.org/2000/svg",
106
- height: "24px",
107
- viewBox: "0 0 24 24",
108
- width: "24px",
109
- fill: "currentColor"
110
- }, /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("rect", {
111
- fill: "none",
112
- height: "24",
113
- width: "24"
114
- })), /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("path", {
115
- d: "M15.5,14h-0.79l-0.28-0.27C15.41,12.59,16,11.11,16,9.5C16,5.91,13.09,3,9.5,3C6.08,3,3.28,5.64,3.03,9h2.02 C5.3,6.75,7.18,5,9.5,5C11.99,5,14,7.01,14,9.5S11.99,14,9.5,14c-0.17,0-0.33-0.03-0.5-0.05v2.02C9.17,15.99,9.33,16,9.5,16 c1.61,0,3.09-0.59,4.23-1.57L14,14.71v0.79l5,4.99L20.49,19L15.5,14z"
116
- }), /*#__PURE__*/_react["default"].createElement("polygon", {
117
- points: "6.47,10.82 4,13.29 1.53,10.82 0.82,11.53 3.29,14 0.82,16.47 1.53,17.18 4,14.71 6.47,17.18 7.18,16.47 4.71,14 7.18,11.53"
118
- }))))
46
+ var groupsHaveOptions = function groupsHaveOptions(innerOptions) {
47
+ return innerOptions[0].hasOwnProperty("options") ? innerOptions[0].options ? innerOptions.some(function (groupOption) {
48
+ return groupOption.options.length > 0;
49
+ }) : false : true;
50
+ };
51
+
52
+ var filteredGroupsHaveOptions = function filteredGroupsHaveOptions(filteredOptions) {
53
+ return filteredOptions !== null && filteredOptions !== void 0 && filteredOptions[0].options ? filteredOptions.some(function (groupOption) {
54
+ var _groupOption$options;
55
+
56
+ return ((_groupOption$options = groupOption.options) === null || _groupOption$options === void 0 ? void 0 : _groupOption$options.length) > 0;
57
+ }) : true;
119
58
  };
120
59
 
121
- var getNotOptionalErrorMessage = function getNotOptionalErrorMessage() {
122
- return "This field is required. Please, enter a value.";
60
+ var canOpenOptions = function canOpenOptions(options, disabled) {
61
+ return !disabled && (options === null || options === void 0 ? void 0 : options.length) > 0 && groupsHaveOptions(options);
123
62
  };
124
63
 
125
64
  var filterOptionsBySearchValue = function filterOptionsBySearchValue(options, searchValue) {
@@ -138,17 +77,79 @@ var filterOptionsBySearchValue = function filterOptionsBySearchValue(options, se
138
77
  }
139
78
  };
140
79
 
80
+ var getLastOptionIndex = function getLastOptionIndex(options, filteredOptions, searchable, optional, multiple) {
81
+ var last = 0;
82
+
83
+ var reducer = function reducer(acc, current) {
84
+ var _current$options;
85
+
86
+ return acc + ((_current$options = current.options) === null || _current$options === void 0 ? void 0 : _current$options.length);
87
+ };
88
+
89
+ if (searchable && filteredOptions.length > 0) filteredOptions[0].options ? last = filteredOptions.reduce(reducer, 0) - 1 : last = filteredOptions.length - 1;else if ((options === null || options === void 0 ? void 0 : options.length) > 0) options[0].options ? last = options.reduce(reducer, 0) - 1 : last = options.length - 1;
90
+ return optional && !multiple ? last + 1 : last;
91
+ };
92
+
93
+ var getSelectedOption = function getSelectedOption(value, options, multiple, optional, optionalItem) {
94
+ var selectedOption = multiple ? [] : {};
95
+ var singleSelectionIndex;
96
+
97
+ if (multiple) {
98
+ if ((options === null || options === void 0 ? void 0 : options.length) > 0) {
99
+ options.forEach(function (option) {
100
+ if (option.options) {
101
+ option.options.forEach(function (singleOption) {
102
+ if (value.includes(singleOption.value)) selectedOption.push(singleOption);
103
+ });
104
+ } else if (value.includes(option.value)) selectedOption.push(option);
105
+ });
106
+ }
107
+ } else {
108
+ if (optional && value === "") {
109
+ selectedOption = optionalItem;
110
+ singleSelectionIndex = 0;
111
+ } else if ((options === null || options === void 0 ? void 0 : options.length) > 0) {
112
+ var group_index = 0;
113
+ options.some(function (option, index) {
114
+ if (option.options) {
115
+ option.options.some(function (singleOption) {
116
+ if (singleOption.value === value) {
117
+ selectedOption = singleOption;
118
+ singleSelectionIndex = optional ? group_index + 1 : group_index;
119
+ return true;
120
+ }
121
+
122
+ group_index++;
123
+ });
124
+ } else if (option.value === value) {
125
+ selectedOption = option;
126
+ singleSelectionIndex = optional ? index + 1 : index;
127
+ return true;
128
+ }
129
+ });
130
+ }
131
+ }
132
+
133
+ return {
134
+ selectedOption: selectedOption,
135
+ singleSelectionIndex: singleSelectionIndex
136
+ };
137
+ };
138
+
139
+ var notOptionalCheck = function notOptionalCheck(value, multiple, optional) {
140
+ return !optional && (multiple ? value.length === 0 : value === "");
141
+ };
142
+
141
143
  var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
142
144
  var _selectedOption$label;
143
145
 
144
- var _ref$label = _ref.label,
145
- label = _ref$label === void 0 ? "" : _ref$label,
146
+ var label = _ref.label,
146
147
  _ref$name = _ref.name,
147
148
  name = _ref$name === void 0 ? "" : _ref$name,
149
+ defaultValue = _ref.defaultValue,
148
150
  value = _ref.value,
149
151
  options = _ref.options,
150
- _ref$helperText = _ref.helperText,
151
- helperText = _ref$helperText === void 0 ? "" : _ref$helperText,
152
+ helperText = _ref.helperText,
152
153
  _ref$placeholder = _ref.placeholder,
153
154
  placeholder = _ref$placeholder === void 0 ? "" : _ref$placeholder,
154
155
  _ref$disabled = _ref.disabled,
@@ -161,8 +162,7 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
161
162
  multiple = _ref$multiple === void 0 ? false : _ref$multiple,
162
163
  onChange = _ref.onChange,
163
164
  onBlur = _ref.onBlur,
164
- _ref$error = _ref.error,
165
- error = _ref$error === void 0 ? "" : _ref$error,
165
+ error = _ref.error,
166
166
  margin = _ref.margin,
167
167
  _ref$size = _ref.size,
168
168
  size = _ref$size === void 0 ? "medium" : _ref$size,
@@ -174,9 +174,10 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
174
174
  selectId = _useState2[0];
175
175
 
176
176
  var selectLabelId = "label-".concat(selectId);
177
+ var errorId = "error-".concat(selectId);
177
178
  var optionsListId = "".concat(selectId, "-listbox");
178
179
 
179
- var _useState3 = (0, _react.useState)(multiple ? [] : ""),
180
+ var _useState3 = (0, _react.useState)(defaultValue !== null && defaultValue !== void 0 ? defaultValue : multiple ? [] : ""),
180
181
  _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
181
182
  innerValue = _useState4[0],
182
183
  setInnerValue = _useState4[1];
@@ -196,116 +197,34 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
196
197
  isOpen = _useState10[0],
197
198
  changeIsOpen = _useState10[1];
198
199
 
199
- var selectContainerRef = (0, _react.useRef)(null);
200
+ var _useState11 = (0, _react.useState)(null),
201
+ _useState12 = (0, _slicedToArray2["default"])(_useState11, 2),
202
+ listboxStyles = _useState12[0],
203
+ setListboxStyles = _useState12[1];
204
+
205
+ var selectRef = (0, _react.useRef)(null);
200
206
  var selectSearchInputRef = (0, _react.useRef)(null);
201
- var selectOptionsListRef = (0, _react.useRef)(null);
202
207
  var colorsTheme = (0, _useTheme["default"])();
203
- var optionalEmptyOption = {
208
+ var translatedLabels = (0, _useTranslatedLabels["default"])();
209
+ var optionalItem = {
204
210
  label: placeholder,
205
211
  value: ""
206
212
  };
207
213
  var filteredOptions = (0, _react.useMemo)(function () {
208
214
  return filterOptionsBySearchValue(options, searchValue);
209
215
  }, [options, searchValue]);
210
-
211
- var getLastOptionIndex = function getLastOptionIndex() {
212
- var last = 0;
213
-
214
- var reducer = function reducer(acc, current) {
215
- var _current$options;
216
-
217
- return acc + ((_current$options = current.options) === null || _current$options === void 0 ? void 0 : _current$options.length);
218
- };
219
-
220
- if (searchable && filteredOptions.length > 0) filteredOptions[0].options ? last = filteredOptions.reduce(reducer, 0) - 1 : last = filteredOptions.length - 1;else if ((options === null || options === void 0 ? void 0 : options.length) > 0) options[0].options ? last = options.reduce(reducer, 0) - 1 : last = options.length - 1;
221
- return optional && !multiple ? last + 1 : last;
222
- };
223
-
224
216
  var lastOptionIndex = (0, _react.useMemo)(function () {
225
- return getLastOptionIndex();
226
- }, [searchable, optional, multiple, filteredOptions, options]);
227
-
228
- var getSelectedOption = function getSelectedOption() {
229
- var val = value !== null && value !== void 0 ? value : innerValue;
230
- var selectedOption = multiple ? [] : "";
231
- var singleSelectionIndex;
232
-
233
- if (multiple) {
234
- if ((options === null || options === void 0 ? void 0 : options.length) > 0) {
235
- options.forEach(function (option) {
236
- if (option.options) {
237
- option.options.forEach(function (singleOption) {
238
- if (val.includes(singleOption.value)) selectedOption.push(singleOption);
239
- });
240
- } else if (val.includes(option.value)) selectedOption.push(option);
241
- });
242
- }
243
- } else {
244
- if (optional && val === "") {
245
- selectedOption = optionalEmptyOption;
246
- singleSelectionIndex = 0;
247
- } else if ((options === null || options === void 0 ? void 0 : options.length) > 0) {
248
- var group_index = 0;
249
- options.some(function (option, index) {
250
- if (option.options) {
251
- option.options.some(function (singleOption) {
252
- if (singleOption.value === val) {
253
- selectedOption = singleOption;
254
- singleSelectionIndex = optional ? group_index + 1 : group_index;
255
- return true;
256
- }
257
-
258
- group_index++;
259
- });
260
- } else if (option.value === val) {
261
- selectedOption = option;
262
- singleSelectionIndex = optional ? index + 1 : index;
263
- return true;
264
- }
265
- });
266
- }
267
- }
268
-
269
- return {
270
- selectedOption: selectedOption,
271
- singleSelectionIndex: singleSelectionIndex
272
- };
273
- };
217
+ return getLastOptionIndex(options, filteredOptions, searchable, optional, multiple);
218
+ }, [options, filteredOptions, searchable, optional, multiple]);
274
219
 
275
220
  var _useMemo = (0, _react.useMemo)(function () {
276
- return getSelectedOption();
277
- }, [options, multiple, value, innerValue]),
221
+ return getSelectedOption(value !== null && value !== void 0 ? value : innerValue, options, multiple, optional, optionalItem);
222
+ }, [value, innerValue, options, multiple, optional, optionalItem]),
278
223
  selectedOption = _useMemo.selectedOption,
279
224
  singleSelectionIndex = _useMemo.singleSelectionIndex;
280
225
 
281
- var notOptionalCheck = function notOptionalCheck(value) {
282
- return value === "" && !optional;
283
- };
284
-
285
- var notOptionalMultipleCheck = function notOptionalMultipleCheck() {
286
- return (value !== null && value !== void 0 ? value : innerValue).length === 0 && !optional;
287
- };
288
-
289
- var canBeOpenOptions = function canBeOpenOptions() {
290
- return !disabled && (options === null || options === void 0 ? void 0 : options.length) > 0 && groupsHaveOptions();
291
- };
292
-
293
- var groupsHaveOptions = function groupsHaveOptions() {
294
- return options[0].hasOwnProperty("options") ? options[0].options ? options.some(function (groupOption) {
295
- return groupOption.options.length > 0;
296
- }) : false : true;
297
- };
298
-
299
- var filteredGroupsHaveOptions = function filteredGroupsHaveOptions() {
300
- return filteredOptions !== null && filteredOptions !== void 0 && filteredOptions[0].options ? filteredOptions.some(function (groupOption) {
301
- var _groupOption$options;
302
-
303
- return ((_groupOption$options = groupOption.options) === null || _groupOption$options === void 0 ? void 0 : _groupOption$options.length) > 0;
304
- }) : true;
305
- };
306
-
307
226
  var openOptions = function openOptions() {
308
- if (!isOpen && canBeOpenOptions()) changeIsOpen(true);
227
+ if (!isOpen && canOpenOptions(options, disabled)) changeIsOpen(true);
309
228
  };
310
229
 
311
230
  var closeOptions = function closeOptions() {
@@ -316,36 +235,21 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
316
235
  };
317
236
 
318
237
  var handleSelectChangeValue = function handleSelectChangeValue(newOption) {
319
- if (multiple) {
320
- var _res, _res2;
238
+ var newValue;
321
239
 
322
- var res;
323
- if ((value !== null && value !== void 0 ? value : innerValue).includes(newOption.value)) value ? res = value.filter(function (optionVal) {
240
+ if (multiple) {
241
+ if ((value !== null && value !== void 0 ? value : innerValue).includes(newOption.value)) newValue = (value !== null && value !== void 0 ? value : innerValue).filter(function (optionVal) {
324
242
  return optionVal !== newOption.value;
325
- }) : setInnerValue(function (previous) {
326
- return previous.filter(function (optionVal) {
327
- return optionVal !== newOption.value;
328
- });
329
- });else value ? res = [].concat((0, _toConsumableArray2["default"])(value), [newOption.value]) : setInnerValue(function (previous) {
330
- return [].concat((0, _toConsumableArray2["default"])(previous), [newOption.value]);
331
- });
332
- if (notOptionalMultipleCheck(newOption.value)) onChange === null || onChange === void 0 ? void 0 : onChange({
333
- value: (_res = res) !== null && _res !== void 0 ? _res : innerValue,
334
- error: getNotOptionalErrorMessage()
335
- });else onChange === null || onChange === void 0 ? void 0 : onChange({
336
- value: (_res2 = res) !== null && _res2 !== void 0 ? _res2 : innerValue,
337
- error: null
338
- });
339
- } else {
340
- value !== null && value !== void 0 ? value : setInnerValue(newOption.value);
341
- if (notOptionalCheck(newOption.value)) onChange === null || onChange === void 0 ? void 0 : onChange({
342
- value: newOption.value,
343
- error: getNotOptionalErrorMessage()
344
- });else onChange === null || onChange === void 0 ? void 0 : onChange({
345
- value: newOption.value,
346
- error: null
347
- });
348
- }
243
+ });else newValue = [].concat((0, _toConsumableArray2["default"])(value !== null && value !== void 0 ? value : innerValue), [newOption.value]);
244
+ } else newValue = newOption.value;
245
+
246
+ value !== null && value !== void 0 ? value : setInnerValue(newValue);
247
+ notOptionalCheck(newValue, multiple, optional) ? onChange === null || onChange === void 0 ? void 0 : onChange({
248
+ value: newValue,
249
+ error: translatedLabels.formFields.requiredValueErrorMessage
250
+ }) : onChange === null || onChange === void 0 ? void 0 : onChange({
251
+ value: newValue
252
+ });
349
253
  };
350
254
 
351
255
  var handleSelectOnClick = function handleSelectOnClick() {
@@ -366,12 +270,12 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
366
270
  if (!event.currentTarget.contains(event.relatedTarget)) {
367
271
  closeOptions();
368
272
  setSearchValue("");
369
- if (notOptionalCheck(value !== null && value !== void 0 ? value : innerValue)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
370
- value: value !== null && value !== void 0 ? value : innerValue,
371
- error: getNotOptionalErrorMessage()
372
- });else onBlur === null || onBlur === void 0 ? void 0 : onBlur({
373
- value: value !== null && value !== void 0 ? value : innerValue,
374
- error: null
273
+ var currentValue = value !== null && value !== void 0 ? value : innerValue;
274
+ notOptionalCheck(currentValue, multiple, optional) ? onBlur === null || onBlur === void 0 ? void 0 : onBlur({
275
+ value: currentValue,
276
+ error: translatedLabels.formFields.requiredValueErrorMessage
277
+ }) : onBlur === null || onBlur === void 0 ? void 0 : onBlur({
278
+ value: currentValue
375
279
  });
376
280
  }
377
281
  };
@@ -410,7 +314,7 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
410
314
 
411
315
  if (searchable) {
412
316
  if (filteredOptions.length > 0) {
413
- if (optional && !multiple && visualFocusIndex === 0 && filteredGroupsHaveOptions()) handleSelectChangeValue(optionalEmptyOption);else filteredOptions[0].options ? filteredGroupsHaveOptions() && filteredOptions.some(function (groupOption) {
317
+ if (optional && !multiple && visualFocusIndex === 0 && filteredGroupsHaveOptions(filteredOptions)) handleSelectChangeValue(optionalItem);else filteredOptions[0].options ? filteredGroupsHaveOptions(filteredOptions) && filteredOptions.some(function (groupOption) {
414
318
  var groupLength = accLength + groupOption.options.length;
415
319
  groupLength > visualFocusIndex && handleSelectChangeValue(groupOption.options[visualFocusIndex - accLength]);
416
320
  accLength = groupLength;
@@ -418,7 +322,7 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
418
322
  }) : handleSelectChangeValue(filteredOptions[visualFocusIndex - accLength]);
419
323
  }
420
324
  } else {
421
- if (optional && !multiple && visualFocusIndex === 0) handleSelectChangeValue(optionalEmptyOption);else options[0].options ? options.some(function (groupOption) {
325
+ if (optional && !multiple && visualFocusIndex === 0) handleSelectChangeValue(optionalItem);else options[0].options ? options.some(function (groupOption) {
422
326
  var groupLength = accLength + groupOption.options.length;
423
327
  groupLength > visualFocusIndex && handleSelectChangeValue(groupOption.options[visualFocusIndex - accLength]);
424
328
  accLength = groupLength;
@@ -443,9 +347,11 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
443
347
  var handleClearOptionsActionOnClick = function handleClearOptionsActionOnClick(event) {
444
348
  event.stopPropagation();
445
349
  value !== null && value !== void 0 ? value : setInnerValue([]);
446
- onChange === null || onChange === void 0 ? void 0 : onChange({
350
+ !optional ? onChange === null || onChange === void 0 ? void 0 : onChange({
447
351
  value: [],
448
- error: getNotOptionalErrorMessage()
352
+ error: translatedLabels.formFields.requiredValueErrorMessage
353
+ }) : onChange === null || onChange === void 0 ? void 0 : onChange({
354
+ value: []
449
355
  });
450
356
  };
451
357
 
@@ -454,108 +360,48 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
454
360
  setSearchValue("");
455
361
  };
456
362
 
457
- (0, _react.useLayoutEffect)(function () {
458
- if (isOpen && singleSelectionIndex) {
459
- var _listEl$scrollTo;
363
+ var handleOptionOnClick = (0, _react.useCallback)(function (option) {
364
+ handleSelectChangeValue(option);
365
+ !multiple && closeOptions();
366
+ setSearchValue("");
367
+ }, [handleSelectChangeValue, closeOptions, multiple]);
460
368
 
461
- var listEl = selectOptionsListRef === null || selectOptionsListRef === void 0 ? void 0 : selectOptionsListRef.current;
462
- var selectedListOptionEl = listEl === null || listEl === void 0 ? void 0 : listEl.querySelector("[aria-selected='true']");
463
- listEl === null || listEl === void 0 ? void 0 : (_listEl$scrollTo = listEl.scrollTo) === null || _listEl$scrollTo === void 0 ? void 0 : _listEl$scrollTo.call(listEl, {
464
- top: (selectedListOptionEl === null || selectedListOptionEl === void 0 ? void 0 : selectedListOptionEl.offsetTop) - (listEl === null || listEl === void 0 ? void 0 : listEl.clientHeight) / 2
465
- });
466
- }
467
- }, [isOpen]);
468
- (0, _react.useLayoutEffect)(function () {
469
- var _selectOptionsListRef, _visualFocusedOptionE;
470
-
471
- var visualFocusedOptionEl = selectOptionsListRef === null || selectOptionsListRef === void 0 ? void 0 : (_selectOptionsListRef = selectOptionsListRef.current) === null || _selectOptionsListRef === void 0 ? void 0 : _selectOptionsListRef.querySelectorAll("[role='option']")[visualFocusIndex];
472
- visualFocusedOptionEl === null || visualFocusedOptionEl === void 0 ? void 0 : (_visualFocusedOptionE = visualFocusedOptionEl.scrollIntoView) === null || _visualFocusedOptionE === void 0 ? void 0 : _visualFocusedOptionE.call(visualFocusedOptionEl, {
473
- block: "nearest",
474
- inline: "start"
475
- });
476
- }, [visualFocusIndex]);
477
-
478
- var Option = function Option(_ref2) {
479
- var option = _ref2.option,
480
- index = _ref2.index,
481
- _ref2$isGroupedOption = _ref2.isGroupedOption,
482
- isGroupedOption = _ref2$isGroupedOption === void 0 ? false : _ref2$isGroupedOption;
483
- var isSelected = multiple ? (value !== null && value !== void 0 ? value : innerValue).includes(option.value) : (value !== null && value !== void 0 ? value : innerValue) === option.value;
484
- var isLastOption = index === lastOptionIndex;
485
- return /*#__PURE__*/_react["default"].createElement(OptionItem, {
486
- id: "option-".concat(index),
487
- onClick: function onClick() {
488
- handleSelectChangeValue(option);
489
- !multiple && closeOptions();
490
- setSearchValue("");
491
- },
492
- visualFocused: visualFocusIndex === index,
493
- selected: isSelected,
494
- role: "option",
495
- "aria-selected": isSelected && "true"
496
- }, /*#__PURE__*/_react["default"].createElement(StyledOption, {
497
- visualFocused: visualFocusIndex === index,
498
- selected: isSelected,
499
- last: isLastOption,
500
- grouped: isGroupedOption,
501
- multiple: multiple
502
- }, multiple && /*#__PURE__*/_react["default"].createElement(_Checkbox["default"], {
503
- tabIndex: -1,
504
- checked: isSelected
505
- }), option.icon && /*#__PURE__*/_react["default"].createElement(OptionIcon, {
506
- grouped: isGroupedOption,
507
- multiple: multiple,
508
- role: !(typeof option.icon === "string") && "img"
509
- }, typeof option.icon === "string" ? /*#__PURE__*/_react["default"].createElement(OptionIconImg, {
510
- src: option.icon
511
- }) : option.icon), /*#__PURE__*/_react["default"].createElement(OptionContent, {
512
- grouped: isGroupedOption,
513
- hasIcon: option.icon,
514
- multiple: multiple
515
- }, /*#__PURE__*/_react["default"].createElement(OptionLabel, null, option.label), !multiple && isSelected && /*#__PURE__*/_react["default"].createElement(OptionSelectedIndicator, null, selectIcons.selected))));
516
- };
369
+ var handleListboxResize = function handleListboxResize() {
370
+ var _selectRef$current;
517
371
 
518
- var global_index = optional && !multiple ? 0 : -1; // index for options, starting from 0 to options.length -1
519
-
520
- var mapOptionFunc = function mapOptionFunc(option) {
521
- if (option.options) {
522
- return option.options.length > 0 && /*#__PURE__*/_react["default"].createElement("li", null, /*#__PURE__*/_react["default"].createElement(GroupList, {
523
- role: "group"
524
- }, /*#__PURE__*/_react["default"].createElement(GroupLabel, {
525
- role: "presentation"
526
- }, option.label), option.options.map(function (singleOption) {
527
- global_index++;
528
- return /*#__PURE__*/_react["default"].createElement(Option, {
529
- option: singleOption,
530
- index: global_index,
531
- isGroupedOption: true
532
- });
533
- })));
534
- } else {
535
- global_index++;
536
- return /*#__PURE__*/_react["default"].createElement(Option, {
537
- key: "option-".concat(option.value),
538
- option: option,
539
- index: global_index
540
- });
541
- }
372
+ var rect = selectRef === null || selectRef === void 0 ? void 0 : (_selectRef$current = selectRef.current) === null || _selectRef$current === void 0 ? void 0 : _selectRef$current.getBoundingClientRect();
373
+ setListboxStyles({
374
+ width: rect === null || rect === void 0 ? void 0 : rect.width
375
+ });
542
376
  };
543
377
 
378
+ (0, _react.useEffect)(function () {
379
+ handleListboxResize();
380
+ window.addEventListener("resize", handleListboxResize);
381
+ return function () {
382
+ window.removeEventListener("resize", handleListboxResize);
383
+ };
384
+ }, [setListboxStyles]);
544
385
  return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
545
386
  theme: colorsTheme.select
546
387
  }, /*#__PURE__*/_react["default"].createElement(SelectContainer, {
547
388
  margin: margin,
548
389
  size: size,
549
390
  ref: ref
550
- }, /*#__PURE__*/_react["default"].createElement(Label, {
391
+ }, label && /*#__PURE__*/_react["default"].createElement(Label, {
551
392
  id: selectLabelId,
552
393
  disabled: disabled,
553
394
  onClick: function onClick() {
554
- selectContainerRef.current.focus();
555
- }
556
- }, label, " ", optional && /*#__PURE__*/_react["default"].createElement(OptionalLabel, null, "(Optional)")), /*#__PURE__*/_react["default"].createElement(HelperText, {
395
+ selectRef.current.focus();
396
+ },
397
+ helperText: helperText
398
+ }, label, " ", optional && /*#__PURE__*/_react["default"].createElement(OptionalLabel, null, translatedLabels.formFields.optionalLabel)), helperText && /*#__PURE__*/_react["default"].createElement(HelperText, {
557
399
  disabled: disabled
558
- }, helperText), /*#__PURE__*/_react["default"].createElement(Select, {
400
+ }, helperText), /*#__PURE__*/_react["default"].createElement(Popover.Root, {
401
+ open: isOpen
402
+ }, /*#__PURE__*/_react["default"].createElement(Popover.Trigger, {
403
+ asChild: true
404
+ }, /*#__PURE__*/_react["default"].createElement(Select, {
559
405
  id: selectId,
560
406
  disabled: disabled,
561
407
  error: error,
@@ -563,16 +409,18 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
563
409
  onClick: handleSelectOnClick,
564
410
  onFocus: handleSelectOnFocus,
565
411
  onKeyDown: handleSelectOnKeyDown,
566
- ref: selectContainerRef,
412
+ ref: selectRef,
567
413
  tabIndex: tabIndex,
568
414
  role: "combobox",
569
415
  "aria-controls": optionsListId,
570
- "aria-expanded": isOpen ? "true" : "false",
416
+ "aria-disabled": disabled,
417
+ "aria-expanded": isOpen,
571
418
  "aria-haspopup": "listbox",
572
- "aria-labelledby": selectLabelId,
419
+ "aria-labelledby": label ? selectLabelId : undefined,
573
420
  "aria-activedescendant": visualFocusIndex >= 0 ? "option-".concat(visualFocusIndex) : undefined,
574
421
  "aria-invalid": error ? "true" : "false",
575
- "aria-required": optional ? "false" : "true"
422
+ "aria-errormessage": error ? errorId : undefined,
423
+ "aria-required": !disabled && !optional
576
424
  }, multiple && selectedOption.length > 0 && /*#__PURE__*/_react["default"].createElement(SelectionIndicator, null, /*#__PURE__*/_react["default"].createElement(SelectionNumber, {
577
425
  disabled: disabled
578
426
  }, selectedOption.length), /*#__PURE__*/_react["default"].createElement(ClearOptionsAction, {
@@ -583,11 +431,11 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
583
431
  },
584
432
  onClick: handleClearOptionsActionOnClick,
585
433
  tabIndex: -1,
586
- title: "Clear selected options",
587
- "aria-label": "Clear selected options"
588
- }, selectIcons.clear)), /*#__PURE__*/_react["default"].createElement(SearchableValueContainer, null, /*#__PURE__*/_react["default"].createElement(ValueInput, {
434
+ title: translatedLabels.select.actionClearSelectionTitle,
435
+ "aria-label": translatedLabels.select.actionClearSelectionTitle
436
+ }, _Icons["default"].clear)), /*#__PURE__*/_react["default"].createElement(SearchableValueContainer, null, /*#__PURE__*/_react["default"].createElement(ValueInput, {
589
437
  name: name,
590
- value: multiple ? (value !== null && value !== void 0 ? value : innerValue).join(", ") : value !== null && value !== void 0 ? value : innerValue,
438
+ value: multiple ? (value !== null && value !== void 0 ? value : innerValue).join(",") : value !== null && value !== void 0 ? value : innerValue,
591
439
  readOnly: true,
592
440
  "aria-hidden": "true"
593
441
  }), searchable && /*#__PURE__*/_react["default"].createElement(SearchInput, {
@@ -595,44 +443,54 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
595
443
  disabled: disabled,
596
444
  onChange: handleSearchIOnChange,
597
445
  ref: selectSearchInputRef,
598
- autoComplete: "off",
599
- autoCorrect: "off",
600
- size: "1"
446
+ autoComplete: "nope",
447
+ autoCorrect: "nope",
448
+ size: 1
601
449
  }), (!searchable || searchValue === "") && (multiple ? /*#__PURE__*/_react["default"].createElement(SelectedOption, {
602
450
  disabled: disabled,
603
451
  atBackground: (value !== null && value !== void 0 ? value : innerValue).length === 0 || searchable && isOpen
604
- }, /*#__PURE__*/_react["default"].createElement(OptionLabel, null, selectedOption.map(function (option) {
452
+ }, /*#__PURE__*/_react["default"].createElement(SelectedOptionLabel, null, selectedOption.map(function (option) {
605
453
  return option.label;
606
454
  }).join(", ")), selectedOption.length === 0 && placeholder) : /*#__PURE__*/_react["default"].createElement(SelectedOption, {
607
455
  disabled: disabled,
608
456
  atBackground: !(value !== null && value !== void 0 ? value : innerValue) || searchable && isOpen
609
- }, /*#__PURE__*/_react["default"].createElement(OptionLabel, null, (_selectedOption$label = selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.label) !== null && _selectedOption$label !== void 0 ? _selectedOption$label : placeholder)))), !disabled && error && /*#__PURE__*/_react["default"].createElement(ErrorIcon, null, selectIcons.error), searchable && searchValue.length > 0 && /*#__PURE__*/_react["default"].createElement(ClearSearchAction, {
457
+ }, /*#__PURE__*/_react["default"].createElement(SelectedOptionLabel, null, (_selectedOption$label = selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.label) !== null && _selectedOption$label !== void 0 ? _selectedOption$label : placeholder)))), !disabled && error && /*#__PURE__*/_react["default"].createElement(ErrorIcon, null, _Icons["default"].error), searchable && searchValue.length > 0 && /*#__PURE__*/_react["default"].createElement(ClearSearchAction, {
610
458
  onMouseDown: function onMouseDown(event) {
611
459
  // Avoid input to lose focus
612
460
  event.preventDefault();
613
461
  },
614
462
  onClick: handleClearSearchActionOnClick,
615
463
  tabIndex: -1,
616
- title: "Clear search text",
617
- "aria-label": "Clear search text"
618
- }, selectIcons.clear), /*#__PURE__*/_react["default"].createElement(CollapseIndicator, {
464
+ title: translatedLabels.select.actionClearSearchTitle,
465
+ "aria-label": translatedLabels.select.actionClearSearchTitle
466
+ }, _Icons["default"].clear), /*#__PURE__*/_react["default"].createElement(CollapseIndicator, {
619
467
  disabled: disabled
620
- }, isOpen ? selectIcons.arrowUp : selectIcons.arrowDown), isOpen && /*#__PURE__*/_react["default"].createElement(OptionsList, {
621
- id: optionsListId,
622
- onClick: function onClick(event) {
623
- event.stopPropagation();
624
- },
625
- onMouseDown: function onMouseDown(event) {
468
+ }, isOpen ? _Icons["default"].arrowUp : _Icons["default"].arrowDown))), /*#__PURE__*/_react["default"].createElement(Popover.Content, {
469
+ sideOffset: 4,
470
+ onOpenAutoFocus: function onOpenAutoFocus(event) {
471
+ // Avoid select to lose focus when the list is opened
626
472
  event.preventDefault();
627
473
  },
628
- ref: selectOptionsListRef,
629
- role: "listbox",
630
- "aria-labelledby": selectLabelId,
631
- "aria-multiselectable": multiple ? "true" : "false"
632
- }, searchable && (filteredOptions.length === 0 || !filteredGroupsHaveOptions()) ? /*#__PURE__*/_react["default"].createElement(OptionsSystemMessage, null, /*#__PURE__*/_react["default"].createElement(NoMatchesFoundIcon, null, selectIcons.searchOff), "No matches found") : optional && !multiple && /*#__PURE__*/_react["default"].createElement(Option, {
633
- option: optionalEmptyOption,
634
- index: 0
635
- }), searchable ? filteredOptions.map(mapOptionFunc) : options.map(mapOptionFunc))), !disabled && /*#__PURE__*/_react["default"].createElement(Error, null, error)));
474
+ onCloseAutoFocus: function onCloseAutoFocus(event) {
475
+ // Avoid select to lose focus when the list is closed
476
+ event.preventDefault();
477
+ }
478
+ }, /*#__PURE__*/_react["default"].createElement(_Listbox["default"], {
479
+ id: optionsListId,
480
+ currentValue: value !== null && value !== void 0 ? value : innerValue,
481
+ options: searchable ? filteredOptions : options,
482
+ visualFocusIndex: visualFocusIndex,
483
+ lastOptionIndex: lastOptionIndex,
484
+ multiple: multiple,
485
+ optional: optional,
486
+ optionalItem: optionalItem,
487
+ searchable: searchable,
488
+ handleOptionOnClick: handleOptionOnClick,
489
+ styles: listboxStyles
490
+ }))), !disabled && typeof error === "string" && /*#__PURE__*/_react["default"].createElement(Error, {
491
+ id: errorId,
492
+ "aria-live": error ? "assertive" : "off"
493
+ }, error)));
636
494
  });
637
495
 
638
496
  var sizes = {
@@ -660,7 +518,7 @@ var SelectContainer = _styledComponents["default"].div(_templateObject || (_temp
660
518
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
661
519
  });
662
520
 
663
- var Label = _styledComponents["default"].span(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n cursor: default;\n"])), function (props) {
521
+ var Label = _styledComponents["default"].span(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n cursor: default;\n ", "\n"])), function (props) {
664
522
  return props.disabled ? props.theme.disabledColor : props.theme.labelFontColor;
665
523
  }, function (props) {
666
524
  return props.theme.fontFamily;
@@ -672,13 +530,15 @@ var Label = _styledComponents["default"].span(_templateObject2 || (_templateObje
672
530
  return props.theme.labelFontWeight;
673
531
  }, function (props) {
674
532
  return props.theme.labelLineHeight;
533
+ }, function (props) {
534
+ return !props.helperText && "margin-bottom: 0.25rem";
675
535
  });
676
536
 
677
537
  var OptionalLabel = _styledComponents["default"].span(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n font-weight: ", ";\n"])), function (props) {
678
538
  return props.theme.optionalLabelFontWeight;
679
539
  });
680
540
 
681
- var HelperText = _styledComponents["default"].span(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n"])), function (props) {
541
+ var HelperText = _styledComponents["default"].span(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n margin-bottom: 0.25rem;\n"])), function (props) {
682
542
  return props.disabled ? props.theme.disabledColor : props.theme.helperTextFontColor;
683
543
  }, function (props) {
684
544
  return props.theme.fontFamily;
@@ -692,9 +552,7 @@ var HelperText = _styledComponents["default"].span(_templateObject4 || (_templat
692
552
  return props.theme.helperTextLineHeight;
693
553
  });
694
554
 
695
- var Select = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n position: relative;\n align-items: center;\n height: calc(2.5rem - 2px);\n margin: ", ";\n padding: 0 0.5rem;\n outline: none;\n ", ";\n box-shadow: 0 0 0 2px transparent;\n border-radius: 4px;\n border: 1px solid\n ", ";\n ", "\n ", ";\n\n ", ";\n"])), function (props) {
696
- return "".concat(props.theme.inputMarginTop, " 0 ").concat(props.theme.inputMarginBottom, " 0");
697
- }, function (props) {
555
+ var Select = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n position: relative;\n align-items: center;\n height: calc(2.5rem - 2px);\n padding: 0 0.5rem;\n outline: none;\n ", ";\n box-shadow: 0 0 0 2px transparent;\n border-radius: 4px;\n border: 1px solid\n ", ";\n ", "\n ", ";\n\n ", ";\n"])), function (props) {
698
556
  return props.disabled && "background-color: ".concat(props.theme.disabledInputBackgroundColor);
699
557
  }, function (props) {
700
558
  return props.disabled ? props.theme.disabledInputBorderColor : props.theme.enabledInputBorderColor;
@@ -728,9 +586,7 @@ var SelectionNumber = _styledComponents["default"].span(_templateObject7 || (_te
728
586
  return props.disabled ? "cursor: not-allowed;" : "cursor: default;";
729
587
  });
730
588
 
731
- var ClearOptionsAction = _styledComponents["default"].button(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-wrap: wrap;\n align-content: center;\n width: 23px;\n height: 22px;\n font-size: 1rem;\n font-family: ", ";\n border: none;\n padding: 0.25rem;\n ", "\n background-color: ", ";\n color: ", ";\n\n :focus-visible {\n outline: none;\n }\n ", "\n\n svg {\n line-height: 18px;\n }\n"])), function (props) {
732
- return props.theme.fontFamily;
733
- }, function (props) {
589
+ var ClearOptionsAction = _styledComponents["default"].button(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-wrap: wrap;\n align-content: center;\n width: 23px;\n height: 22px;\n border: none;\n padding: 0.25rem;\n ", "\n background-color: ", ";\n color: ", ";\n\n :focus-visible {\n outline: none;\n }\n ", "\n\n svg {\n line-height: 18px;\n }\n"])), function (props) {
734
590
  return props.disabled ? "cursor: not-allowed;" : "cursor: pointer;";
735
591
  }, function (props) {
736
592
  return props.disabled ? "transparent" : props.theme.enabledSelectionIndicatorActionBackgroundColor;
@@ -754,9 +610,11 @@ var SelectedOption = _styledComponents["default"].span(_templateObject10 || (_te
754
610
  return props.theme.valueFontWeight;
755
611
  });
756
612
 
757
- var ValueInput = _styledComponents["default"].input(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2["default"])(["\n display: none;\n"])));
613
+ var SelectedOptionLabel = _styledComponents["default"].span(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2["default"])(["\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n"])));
614
+
615
+ var ValueInput = _styledComponents["default"].input(_templateObject12 || (_templateObject12 = (0, _taggedTemplateLiteral2["default"])(["\n display: none;\n"])));
758
616
 
759
- var SearchInput = _styledComponents["default"].input(_templateObject12 || (_templateObject12 = (0, _taggedTemplateLiteral2["default"])(["\n grid-area: 1 / 1 / 1 / 1;\n height: calc(2.5rem - 2px);\n background: none;\n border: none;\n outline: none;\n padding: 0 0.5rem;\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: 1.5em;\n"])), function (props) {
617
+ var SearchInput = _styledComponents["default"].input(_templateObject13 || (_templateObject13 = (0, _taggedTemplateLiteral2["default"])(["\n grid-area: 1 / 1 / 1 / 1;\n height: calc(2.5rem - 2px);\n background: none;\n border: none;\n outline: none;\n padding: 0 0.5rem;\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: 1.5em;\n"])), function (props) {
760
618
  return props.disabled ? props.theme.disabledColor : props.theme.valueFontColor;
761
619
  }, function (props) {
762
620
  return props.theme.fontFamily;
@@ -768,21 +626,21 @@ var SearchInput = _styledComponents["default"].input(_templateObject12 || (_temp
768
626
  return props.theme.valueFontWeight;
769
627
  });
770
628
 
771
- var ErrorIcon = _styledComponents["default"].span(_templateObject13 || (_templateObject13 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-wrap: wrap;\n align-content: center;\n padding: 3px;\n height: 18px;\n width: 18px;\n margin-left: 0.25rem;\n pointer-events: none;\n color: ", ";\n\n svg {\n line-height: 18px;\n font-size: 1.25rem;\n }\n"])), function (props) {
629
+ var ErrorIcon = _styledComponents["default"].span(_templateObject14 || (_templateObject14 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-wrap: wrap;\n align-content: center;\n padding: 3px;\n height: 18px;\n width: 18px;\n margin-left: 0.25rem;\n pointer-events: none;\n color: ", ";\n\n svg {\n line-height: 18px;\n font-size: 1.25rem;\n }\n"])), function (props) {
772
630
  return props.theme.errorIconColor;
773
631
  });
774
632
 
775
- var Error = _styledComponents["default"].span(_templateObject14 || (_templateObject14 = (0, _taggedTemplateLiteral2["default"])(["\n min-height: 1.5em;\n color: ", ";\n font-family: ", ";\n font-size: 0.75rem;\n font-weight: 400;\n"])), function (props) {
633
+ var Error = _styledComponents["default"].span(_templateObject15 || (_templateObject15 = (0, _taggedTemplateLiteral2["default"])(["\n min-height: 1.5em;\n color: ", ";\n font-family: ", ";\n font-size: 0.75rem;\n font-weight: 400;\n line-height: 1.5em;\n margin-top: 0.25rem;\n"])), function (props) {
776
634
  return props.theme.errorMessageColor;
777
635
  }, function (props) {
778
636
  return props.theme.fontFamily;
779
637
  });
780
638
 
781
- var CollapseIndicator = _styledComponents["default"].span(_templateObject15 || (_templateObject15 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-wrap: wrap;\n align-content: center;\n height: 16px;\n width: 16px;\n padding: 4px;\n margin-left: 0.25rem;\n color: ", ";\n"])), function (props) {
639
+ var CollapseIndicator = _styledComponents["default"].span(_templateObject16 || (_templateObject16 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-wrap: wrap;\n align-content: center;\n height: 16px;\n width: 16px;\n padding: 4px;\n margin-left: 0.25rem;\n color: ", ";\n"])), function (props) {
782
640
  return props.disabled ? props.theme.disabledColor : props.theme.collapseIndicatorColor;
783
641
  });
784
642
 
785
- var ClearSearchAction = _styledComponents["default"].button(_templateObject16 || (_templateObject16 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-wrap: wrap;\n align-content: center;\n height: 24px;\n width: 24px;\n font-size: 1rem;\n font-family: ", ";\n border: 1px solid transparent;\n border-radius: 2px;\n padding: 3px;\n margin-left: 0.25rem;\n background-color: ", ";\n color: ", ";\n\n cursor: pointer;\n &:hover {\n background-color: ", ";\n color: ", ";\n }\n &:active {\n background-color: ", ";\n color: ", ";\n }\n svg {\n line-height: 18px;\n }\n"])), function (props) {
643
+ var ClearSearchAction = _styledComponents["default"].button(_templateObject17 || (_templateObject17 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-wrap: wrap;\n align-content: center;\n height: 24px;\n width: 24px;\n font-size: 1rem;\n font-family: ", ";\n border: 1px solid transparent;\n border-radius: 2px;\n padding: 3px;\n margin-left: 0.25rem;\n background-color: ", ";\n color: ", ";\n\n cursor: pointer;\n &:hover {\n background-color: ", ";\n color: ", ";\n }\n &:active {\n background-color: ", ";\n color: ", ";\n }\n svg {\n line-height: 18px;\n }\n"])), function (props) {
786
644
  return props.theme.fontFamily;
787
645
  }, function (props) {
788
646
  return props.theme.actionBackgroundColor;
@@ -798,67 +656,5 @@ var ClearSearchAction = _styledComponents["default"].button(_templateObject16 ||
798
656
  return props.theme.activeActionIconColor;
799
657
  });
800
658
 
801
- var OptionsList = _styledComponents["default"].ul(_templateObject17 || (_templateObject17 = (0, _taggedTemplateLiteral2["default"])(["\n position: absolute;\n z-index: 1;\n max-height: 304px;\n overflow-y: auto;\n top: calc(100% + 4px);\n left: 0;\n margin: 0;\n padding: 0.25rem 0;\n width: 100%;\n background-color: ", ";\n border: 1px solid ", ";\n border-radius: 0.25rem;\n box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);\n cursor: default;\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n"])), function (props) {
802
- return props.theme.listDialogBackgroundColor;
803
- }, function (props) {
804
- return props.theme.listDialogBorderColor;
805
- }, function (props) {
806
- return props.theme.listOptionFontColor;
807
- }, function (props) {
808
- return props.theme.fontFamily;
809
- }, function (props) {
810
- return props.theme.listOptionFontSize;
811
- }, function (props) {
812
- return props.theme.listOptionFontStyle;
813
- }, function (props) {
814
- return props.theme.listOptionFontWeight;
815
- });
816
-
817
- var OptionsSystemMessage = _styledComponents["default"].span(_templateObject18 || (_templateObject18 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n padding: 4px 16px;\n color: ", ";\n font-size: 0.875rem;\n line-height: 1.715em;\n"])), function (props) {
818
- return props.theme.systemMessageFontColor;
819
- });
820
-
821
- var NoMatchesFoundIcon = _styledComponents["default"].span(_templateObject19 || (_templateObject19 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-wrap: wrap;\n align-content: center;\n height: 16px;\n width: 16px;\n padding: 4px;\n margin-right: 0.25rem;\n"])));
822
-
823
- var GroupList = _styledComponents["default"].ul(_templateObject20 || (_templateObject20 = (0, _taggedTemplateLiteral2["default"])(["\n padding: 0;\n"])));
824
-
825
- var GroupLabel = _styledComponents["default"].li(_templateObject21 || (_templateObject21 = (0, _taggedTemplateLiteral2["default"])(["\n padding: 4px 16px;\n font-weight: ", ";\n line-height: 1.715em;\n"])), function (props) {
826
- return props.theme.listGroupLabelFontWeight;
827
- });
828
-
829
- var OptionItem = _styledComponents["default"].li(_templateObject22 || (_templateObject22 = (0, _taggedTemplateLiteral2["default"])(["\n padding: 0 0.5rem;\n box-shadow: inset 0 0 0 2px transparent;\n ", "\n ", ";\n line-height: 1.715em;\n cursor: pointer;\n\n &:hover {\n ", ";\n }\n &:active {\n ", ";\n }\n"])), function (props) {
830
- return props.visualFocused && "box-shadow: inset 0 0 0 2px ".concat(props.theme.focusListOptionBorderColor, ";");
831
- }, function (props) {
832
- return props.selected && "background-color: ".concat(props.theme.selectedListOptionBackgroundColor);
833
- }, function (props) {
834
- return props.selected ? "background-color: ".concat(props.theme.selectedHoverListOptionBackgroundColor, ";") : "background-color: ".concat(props.theme.unselectedHoverListOptionBackgroundColor, ";");
835
- }, function (props) {
836
- return props.selected ? "background-color: ".concat(props.theme.selectedActiveListOptionBackgroundColor, ";") : "background-color: ".concat(props.theme.unselectedActiveListOptionBackgroundColor, ";");
837
- });
838
-
839
- var StyledOption = _styledComponents["default"].span(_templateObject23 || (_templateObject23 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n padding: 0.25rem 0.5rem 0.188rem 0;\n min-height: 24px;\n ", "\n ", ";\n"])), function (props) {
840
- return props.grouped && props.multiple && "padding-left: 16px;";
841
- }, function (props) {
842
- return props.last || props.visualFocused || props.selected ? "border-bottom: 1px solid transparent" : "border-bottom: 1px solid ".concat(props.theme.listOptionDividerColor);
843
- });
844
-
845
- var OptionContent = _styledComponents["default"].span(_templateObject24 || (_templateObject24 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n justify-content: space-between;\n width: 100%;\n overflow: hidden;\n ", "\n"])), function (props) {
846
- return props.grouped && !props.multiple && !props.hasIcon ? "padding-left: 16px;" : "padding-left: 8px;";
847
- });
848
-
849
- var OptionIcon = _styledComponents["default"].span(_templateObject25 || (_templateObject25 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-wrap: wrap;\n align-content: center;\n height: 24px;\n width: 24px;\n ", "\n color: ", ";\n"])), function (props) {
850
- return props.grouped && !props.multiple ? "padding-left: 16px;" : "padding-left: 8px;";
851
- }, function (props) {
852
- return props.theme.listOptionIconColor;
853
- });
854
-
855
- var OptionIconImg = _styledComponents["default"].img(_templateObject26 || (_templateObject26 = (0, _taggedTemplateLiteral2["default"])(["\n width: 16px;\n height: 16px;\n"])));
856
-
857
- var OptionLabel = _styledComponents["default"].span(_templateObject27 || (_templateObject27 = (0, _taggedTemplateLiteral2["default"])(["\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n"])));
858
-
859
- var OptionSelectedIndicator = _styledComponents["default"].span(_templateObject28 || (_templateObject28 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n height: 16px;\n width: 16px;\n margin-left: 4px;\n color: ", ";\n"])), function (props) {
860
- return props.theme.selectedListOptionIconColor;
861
- });
862
-
863
659
  var _default = DxcSelect;
864
660
  exports["default"] = _default;