@dxc-technology/halstack-react 0.0.0-e081e21 → 0.0.0-e1386cf

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