@dxc-technology/halstack-react 0.0.0-9e83fd2 → 0.0.0-9ef63cd

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 (353) hide show
  1. package/BackgroundColorContext.d.ts +1 -10
  2. package/BackgroundColorContext.js +4 -21
  3. package/HalstackContext.d.ts +53 -143
  4. package/HalstackContext.js +10 -35
  5. package/README.md +47 -0
  6. package/accordion/Accordion.accessibility.test.js +71 -0
  7. package/accordion/Accordion.js +33 -87
  8. package/accordion/Accordion.stories.tsx +8 -64
  9. package/accordion/Accordion.test.js +18 -33
  10. package/accordion/types.d.ts +6 -6
  11. package/accordion-group/AccordionGroup.accessibility.test.js +88 -0
  12. package/accordion-group/AccordionGroup.d.ts +2 -3
  13. package/accordion-group/AccordionGroup.js +17 -44
  14. package/accordion-group/AccordionGroup.stories.tsx +24 -24
  15. package/accordion-group/AccordionGroup.test.js +42 -60
  16. package/accordion-group/AccordionGroupAccordion.js +11 -23
  17. package/accordion-group/AccordionGroupContext.d.ts +3 -0
  18. package/accordion-group/AccordionGroupContext.js +8 -0
  19. package/accordion-group/types.d.ts +7 -7
  20. package/action-icon/ActionIcon.accessibility.test.js +63 -0
  21. package/action-icon/ActionIcon.d.ts +4 -0
  22. package/action-icon/ActionIcon.js +48 -0
  23. package/action-icon/ActionIcon.stories.tsx +41 -0
  24. package/action-icon/ActionIcon.test.js +64 -0
  25. package/action-icon/types.d.ts +26 -0
  26. package/alert/Alert.accessibility.test.js +95 -0
  27. package/alert/Alert.js +34 -120
  28. package/alert/Alert.test.js +28 -45
  29. package/alert/types.d.ts +5 -5
  30. package/badge/Badge.accessibility.test.js +129 -0
  31. package/badge/Badge.d.ts +1 -1
  32. package/badge/Badge.js +142 -42
  33. package/badge/Badge.stories.tsx +210 -0
  34. package/badge/Badge.test.js +30 -0
  35. package/badge/types.d.ts +52 -3
  36. package/bleed/Bleed.js +13 -21
  37. package/bleed/types.d.ts +2 -2
  38. package/box/Box.accessibility.test.js +33 -0
  39. package/box/Box.js +11 -33
  40. package/box/Box.test.js +1 -6
  41. package/box/types.d.ts +3 -3
  42. package/breadcrumbs/Breadcrumbs.accessibility.test.d.ts +1 -0
  43. package/breadcrumbs/Breadcrumbs.accessibility.test.js +96 -0
  44. package/breadcrumbs/Breadcrumbs.d.ts +4 -0
  45. package/breadcrumbs/Breadcrumbs.js +79 -0
  46. package/breadcrumbs/Breadcrumbs.stories.tsx +194 -0
  47. package/breadcrumbs/Breadcrumbs.test.d.ts +1 -0
  48. package/breadcrumbs/Breadcrumbs.test.js +169 -0
  49. package/breadcrumbs/Item.d.ts +4 -0
  50. package/breadcrumbs/Item.js +52 -0
  51. package/breadcrumbs/dropdownTheme.d.ts +53 -0
  52. package/breadcrumbs/dropdownTheme.js +62 -0
  53. package/breadcrumbs/types.d.ts +16 -0
  54. package/breadcrumbs/types.js +5 -0
  55. package/bulleted-list/BulletedList.accessibility.test.js +119 -0
  56. package/bulleted-list/BulletedList.js +22 -55
  57. package/bulleted-list/BulletedList.stories.tsx +2 -93
  58. package/bulleted-list/types.d.ts +5 -5
  59. package/button/Button.accessibility.test.js +127 -0
  60. package/button/Button.js +36 -59
  61. package/button/Button.stories.tsx +35 -135
  62. package/button/Button.test.js +13 -21
  63. package/button/types.d.ts +5 -5
  64. package/card/Card.accessibility.test.js +36 -0
  65. package/card/Card.js +23 -45
  66. package/card/Card.test.js +10 -21
  67. package/card/types.d.ts +5 -5
  68. package/checkbox/Checkbox.accessibility.test.js +87 -0
  69. package/checkbox/Checkbox.js +88 -126
  70. package/checkbox/Checkbox.stories.tsx +16 -54
  71. package/checkbox/Checkbox.test.js +107 -63
  72. package/checkbox/types.d.ts +8 -4
  73. package/chip/Chip.accessibility.test.js +67 -0
  74. package/chip/Chip.js +22 -36
  75. package/chip/Chip.stories.tsx +10 -25
  76. package/chip/Chip.test.js +17 -30
  77. package/chip/types.d.ts +4 -4
  78. package/common/coreTokens.d.ts +105 -14
  79. package/common/coreTokens.js +40 -23
  80. package/common/utils.js +2 -8
  81. package/common/variables.d.ts +54 -144
  82. package/common/variables.js +128 -225
  83. package/container/Container.d.ts +4 -0
  84. package/container/Container.js +194 -0
  85. package/container/Container.stories.tsx +214 -0
  86. package/container/types.d.ts +74 -0
  87. package/container/types.js +5 -0
  88. package/contextual-menu/ContextualMenu.accessibility.test.js +97 -0
  89. package/contextual-menu/ContextualMenu.d.ts +5 -0
  90. package/contextual-menu/ContextualMenu.js +88 -0
  91. package/contextual-menu/ContextualMenu.stories.tsx +232 -0
  92. package/contextual-menu/ContextualMenu.test.js +205 -0
  93. package/contextual-menu/GroupItem.d.ts +4 -0
  94. package/contextual-menu/GroupItem.js +67 -0
  95. package/contextual-menu/ItemAction.d.ts +4 -0
  96. package/contextual-menu/ItemAction.js +51 -0
  97. package/contextual-menu/MenuItem.d.ts +4 -0
  98. package/contextual-menu/MenuItem.js +29 -0
  99. package/contextual-menu/SingleItem.d.ts +4 -0
  100. package/contextual-menu/SingleItem.js +38 -0
  101. package/contextual-menu/types.d.ts +58 -0
  102. package/contextual-menu/types.js +5 -0
  103. package/date-input/Calendar.js +13 -57
  104. package/date-input/DateInput.accessibility.test.js +228 -0
  105. package/date-input/DateInput.js +61 -108
  106. package/date-input/DateInput.stories.tsx +19 -31
  107. package/date-input/DateInput.test.js +674 -701
  108. package/date-input/DatePicker.js +23 -48
  109. package/date-input/YearPicker.js +8 -34
  110. package/date-input/types.d.ts +28 -22
  111. package/dialog/Dialog.accessibility.test.js +69 -0
  112. package/dialog/Dialog.js +21 -59
  113. package/dialog/Dialog.stories.tsx +175 -0
  114. package/dialog/Dialog.test.js +206 -204
  115. package/dialog/types.d.ts +18 -13
  116. package/divider/Divider.accessibility.test.js +33 -0
  117. package/divider/Divider.d.ts +4 -0
  118. package/divider/Divider.js +36 -0
  119. package/divider/Divider.stories.tsx +223 -0
  120. package/divider/Divider.test.js +38 -0
  121. package/divider/types.d.ts +21 -0
  122. package/divider/types.js +5 -0
  123. package/dropdown/Dropdown.accessibility.test.js +180 -0
  124. package/dropdown/Dropdown.js +67 -135
  125. package/dropdown/Dropdown.stories.tsx +15 -26
  126. package/dropdown/Dropdown.test.js +402 -389
  127. package/dropdown/DropdownMenu.js +12 -23
  128. package/dropdown/DropdownMenuItem.js +13 -21
  129. package/dropdown/types.d.ts +20 -24
  130. package/file-input/FileInput.accessibility.test.js +160 -0
  131. package/file-input/FileInput.js +179 -286
  132. package/file-input/FileInput.stories.tsx +1 -1
  133. package/file-input/FileInput.test.js +293 -354
  134. package/file-input/FileItem.js +29 -66
  135. package/file-input/types.d.ts +9 -9
  136. package/flex/Flex.js +25 -39
  137. package/flex/types.d.ts +6 -6
  138. package/footer/Footer.accessibility.test.js +125 -0
  139. package/footer/Footer.d.ts +1 -1
  140. package/footer/Footer.js +43 -68
  141. package/footer/Footer.stories.tsx +66 -9
  142. package/footer/Footer.test.js +18 -32
  143. package/footer/Icons.d.ts +3 -2
  144. package/footer/Icons.js +53 -22
  145. package/footer/types.d.ts +17 -17
  146. package/grid/Grid.js +1 -16
  147. package/grid/types.d.ts +10 -10
  148. package/header/Header.accessibility.test.js +93 -0
  149. package/header/Header.d.ts +1 -1
  150. package/header/Header.js +38 -104
  151. package/header/Header.stories.tsx +16 -0
  152. package/header/Header.test.js +12 -25
  153. package/header/Icons.d.ts +2 -2
  154. package/header/Icons.js +3 -13
  155. package/header/types.d.ts +7 -8
  156. package/heading/Heading.accessibility.test.js +33 -0
  157. package/heading/Heading.js +9 -31
  158. package/heading/Heading.test.js +70 -87
  159. package/heading/types.d.ts +7 -7
  160. package/icon/Icon.accessibility.test.js +30 -0
  161. package/icon/Icon.d.ts +4 -0
  162. package/icon/Icon.js +33 -0
  163. package/icon/Icon.stories.tsx +28 -0
  164. package/icon/types.d.ts +4 -0
  165. package/icon/types.js +5 -0
  166. package/image/Image.accessibility.test.js +56 -0
  167. package/image/Image.d.ts +4 -0
  168. package/image/Image.js +70 -0
  169. package/image/Image.stories.tsx +129 -0
  170. package/image/types.d.ts +72 -0
  171. package/image/types.js +5 -0
  172. package/inset/Inset.js +13 -21
  173. package/inset/types.d.ts +2 -2
  174. package/layout/ApplicationLayout.d.ts +2 -2
  175. package/layout/ApplicationLayout.js +32 -69
  176. package/layout/ApplicationLayout.stories.tsx +1 -1
  177. package/layout/Icons.d.ts +7 -5
  178. package/layout/Icons.js +41 -59
  179. package/layout/types.d.ts +3 -3
  180. package/link/Link.accessibility.test.js +108 -0
  181. package/link/Link.js +28 -47
  182. package/link/Link.stories.tsx +4 -4
  183. package/link/Link.test.js +23 -41
  184. package/link/types.d.ts +14 -14
  185. package/main.d.ts +9 -4
  186. package/main.js +46 -59
  187. package/nav-tabs/NavTabs.accessibility.test.js +44 -0
  188. package/nav-tabs/NavTabs.d.ts +1 -2
  189. package/nav-tabs/NavTabs.js +19 -48
  190. package/nav-tabs/NavTabs.stories.tsx +30 -25
  191. package/nav-tabs/NavTabs.test.js +45 -50
  192. package/nav-tabs/NavTabsContext.d.ts +3 -0
  193. package/nav-tabs/NavTabsContext.js +8 -0
  194. package/nav-tabs/Tab.js +38 -67
  195. package/nav-tabs/types.d.ts +10 -10
  196. package/number-input/NumberInput.accessibility.test.js +228 -0
  197. package/number-input/NumberInput.d.ts +0 -7
  198. package/number-input/NumberInput.js +47 -39
  199. package/number-input/NumberInput.stories.tsx +42 -26
  200. package/number-input/NumberInput.test.js +839 -575
  201. package/number-input/NumberInputContext.d.ts +3 -0
  202. package/number-input/NumberInputContext.js +8 -0
  203. package/number-input/types.d.ts +17 -5
  204. package/package.json +42 -40
  205. package/paginator/Paginator.accessibility.test.js +79 -0
  206. package/paginator/Paginator.js +27 -52
  207. package/paginator/Paginator.test.js +224 -207
  208. package/paginator/types.d.ts +3 -3
  209. package/paragraph/Paragraph.accessibility.test.js +28 -0
  210. package/paragraph/Paragraph.js +3 -19
  211. package/paragraph/Paragraph.stories.tsx +0 -17
  212. package/password-input/PasswordInput.accessibility.test.js +153 -0
  213. package/password-input/PasswordInput.js +32 -54
  214. package/password-input/PasswordInput.stories.tsx +1 -34
  215. package/password-input/PasswordInput.test.js +153 -129
  216. package/password-input/types.d.ts +8 -7
  217. package/progress-bar/ProgressBar.accessibility.test.js +35 -0
  218. package/progress-bar/ProgressBar.js +26 -56
  219. package/progress-bar/{ProgressBar.stories.jsx → ProgressBar.stories.tsx} +1 -1
  220. package/progress-bar/ProgressBar.test.js +35 -52
  221. package/progress-bar/types.d.ts +3 -3
  222. package/quick-nav/QuickNav.accessibility.test.js +57 -0
  223. package/quick-nav/QuickNav.js +4 -27
  224. package/quick-nav/QuickNav.stories.tsx +1 -1
  225. package/quick-nav/types.d.ts +10 -10
  226. package/radio-group/Radio.d.ts +1 -1
  227. package/radio-group/Radio.js +22 -57
  228. package/radio-group/RadioGroup.accessibility.test.js +97 -0
  229. package/radio-group/RadioGroup.js +40 -88
  230. package/radio-group/RadioGroup.stories.tsx +10 -10
  231. package/radio-group/RadioGroup.test.js +504 -472
  232. package/radio-group/types.d.ts +8 -8
  233. package/resultset-table/Icons.d.ts +7 -0
  234. package/{resultsetTable → resultset-table}/Icons.js +1 -5
  235. package/resultset-table/ResultsetTable.accessibility.test.js +285 -0
  236. package/resultset-table/ResultsetTable.d.ts +7 -0
  237. package/{resultsetTable → resultset-table}/ResultsetTable.js +45 -69
  238. package/{resultsetTable → resultset-table}/ResultsetTable.stories.tsx +118 -5
  239. package/{resultsetTable → resultset-table}/ResultsetTable.test.js +148 -92
  240. package/{resultsetTable → resultset-table}/types.d.ts +44 -11
  241. package/resultset-table/types.js +5 -0
  242. package/select/Listbox.js +36 -54
  243. package/select/Option.js +28 -36
  244. package/select/Select.accessibility.test.js +228 -0
  245. package/select/Select.js +111 -177
  246. package/select/Select.stories.tsx +59 -111
  247. package/select/Select.test.js +1895 -1858
  248. package/select/types.d.ts +15 -16
  249. package/sidenav/Sidenav.accessibility.test.js +59 -0
  250. package/sidenav/Sidenav.js +44 -81
  251. package/sidenav/Sidenav.stories.tsx +4 -9
  252. package/sidenav/Sidenav.test.js +3 -10
  253. package/{layout → sidenav}/SidenavContext.d.ts +1 -1
  254. package/{layout → sidenav}/SidenavContext.js +3 -9
  255. package/sidenav/types.d.ts +20 -20
  256. package/slider/Slider.accessibility.test.js +104 -0
  257. package/slider/Slider.js +66 -125
  258. package/slider/Slider.stories.tsx +0 -60
  259. package/slider/Slider.test.js +107 -103
  260. package/slider/types.d.ts +4 -4
  261. package/spinner/Spinner.accessibility.test.js +96 -0
  262. package/spinner/Spinner.js +21 -55
  263. package/spinner/Spinner.test.js +25 -34
  264. package/spinner/types.d.ts +3 -3
  265. package/status-light/StatusLight.accessibility.test.js +157 -0
  266. package/status-light/StatusLight.d.ts +4 -0
  267. package/status-light/StatusLight.js +51 -0
  268. package/status-light/StatusLight.stories.tsx +74 -0
  269. package/status-light/StatusLight.test.js +25 -0
  270. package/status-light/types.d.ts +17 -0
  271. package/status-light/types.js +5 -0
  272. package/switch/Switch.accessibility.test.js +98 -0
  273. package/switch/Switch.js +49 -100
  274. package/switch/Switch.stories.tsx +12 -34
  275. package/switch/Switch.test.js +51 -96
  276. package/switch/types.d.ts +4 -4
  277. package/table/DropdownTheme.js +62 -0
  278. package/table/Table.accessibility.test.js +93 -0
  279. package/table/Table.d.ts +6 -2
  280. package/table/Table.js +76 -33
  281. package/table/{Table.stories.jsx → Table.stories.tsx} +309 -2
  282. package/table/Table.test.js +93 -6
  283. package/table/types.d.ts +34 -6
  284. package/tabs/Tab.js +22 -37
  285. package/tabs/Tabs.accessibility.test.js +56 -0
  286. package/tabs/Tabs.js +59 -147
  287. package/tabs/Tabs.stories.tsx +8 -4
  288. package/tabs/Tabs.test.js +57 -131
  289. package/tabs/types.d.ts +21 -21
  290. package/tag/Tag.accessibility.test.js +69 -0
  291. package/tag/Tag.js +27 -57
  292. package/tag/Tag.stories.tsx +4 -7
  293. package/tag/Tag.test.js +17 -36
  294. package/tag/types.d.ts +9 -9
  295. package/text-input/Suggestion.js +9 -26
  296. package/text-input/Suggestions.d.ts +1 -1
  297. package/text-input/Suggestions.js +30 -70
  298. package/text-input/TextInput.accessibility.test.js +321 -0
  299. package/text-input/TextInput.js +198 -286
  300. package/text-input/TextInput.stories.tsx +65 -160
  301. package/text-input/TextInput.test.js +1227 -1194
  302. package/text-input/types.d.ts +25 -17
  303. package/textarea/Textarea.accessibility.test.js +155 -0
  304. package/textarea/Textarea.js +67 -111
  305. package/textarea/{Textarea.stories.jsx → Textarea.stories.tsx} +58 -100
  306. package/textarea/Textarea.test.js +150 -179
  307. package/textarea/types.d.ts +9 -5
  308. package/toggle-group/ToggleGroup.accessibility.test.js +107 -0
  309. package/toggle-group/ToggleGroup.js +25 -67
  310. package/toggle-group/ToggleGroup.stories.tsx +7 -7
  311. package/toggle-group/ToggleGroup.test.js +48 -81
  312. package/toggle-group/types.d.ts +12 -12
  313. package/typography/Typography.accessibility.test.js +339 -0
  314. package/typography/Typography.js +4 -13
  315. package/typography/types.d.ts +1 -1
  316. package/useTheme.d.ts +51 -141
  317. package/useTheme.js +1 -8
  318. package/useTranslatedLabels.js +1 -7
  319. package/utils/BaseTypography.d.ts +2 -2
  320. package/utils/BaseTypography.js +16 -30
  321. package/utils/FocusLock.js +25 -39
  322. package/wizard/Wizard.accessibility.test.js +55 -0
  323. package/wizard/Wizard.js +27 -73
  324. package/wizard/Wizard.stories.tsx +19 -0
  325. package/wizard/Wizard.test.js +53 -80
  326. package/wizard/types.d.ts +8 -8
  327. package/common/OpenSans.css +0 -69
  328. package/common/fonts/OpenSans-Bold.ttf +0 -0
  329. package/common/fonts/OpenSans-BoldItalic.ttf +0 -0
  330. package/common/fonts/OpenSans-ExtraBold.ttf +0 -0
  331. package/common/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  332. package/common/fonts/OpenSans-Italic.ttf +0 -0
  333. package/common/fonts/OpenSans-Light.ttf +0 -0
  334. package/common/fonts/OpenSans-LightItalic.ttf +0 -0
  335. package/common/fonts/OpenSans-Regular.ttf +0 -0
  336. package/common/fonts/OpenSans-SemiBold.ttf +0 -0
  337. package/common/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  338. package/date-input/Icons.d.ts +0 -6
  339. package/date-input/Icons.js +0 -75
  340. package/paginator/Icons.d.ts +0 -5
  341. package/paginator/Icons.js +0 -54
  342. package/password-input/Icons.d.ts +0 -6
  343. package/password-input/Icons.js +0 -39
  344. package/resultsetTable/Icons.d.ts +0 -7
  345. package/resultsetTable/ResultsetTable.d.ts +0 -4
  346. package/select/Icons.d.ts +0 -10
  347. package/select/Icons.js +0 -93
  348. package/sidenav/Icons.d.ts +0 -7
  349. package/sidenav/Icons.js +0 -51
  350. package/text-input/Icons.d.ts +0 -8
  351. package/text-input/Icons.js +0 -60
  352. /package/{resultsetTable → action-icon}/types.js +0 -0
  353. /package/spinner/{Spinner.stories.jsx → Spinner.stories.tsx} +0 -0
package/select/Select.js CHANGED
@@ -1,69 +1,45 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  var _typeof3 = require("@babel/runtime/helpers/typeof");
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
10
8
  exports["default"] = void 0;
11
-
12
9
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
13
-
14
10
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
15
-
16
11
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
17
-
18
12
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
19
-
20
13
  var _react = _interopRequireWildcard(require("react"));
21
-
22
14
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
23
-
24
15
  var _useTheme = _interopRequireDefault(require("../useTheme"));
25
-
26
16
  var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
27
-
28
17
  var _variables = require("../common/variables");
29
-
30
- var _uuid = require("uuid");
31
-
32
18
  var _utils = require("../common/utils");
33
-
34
- var _Icons = _interopRequireDefault(require("./Icons"));
35
-
36
19
  var _Listbox = _interopRequireDefault(require("./Listbox"));
37
-
38
20
  var Popover = _interopRequireWildcard(require("@radix-ui/react-popover"));
39
-
21
+ var _Icon = _interopRequireDefault(require("../icon/Icon"));
40
22
  var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17;
41
-
42
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
43
-
44
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
45
-
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;
23
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
24
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof3(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
25
+ var isOptionGroup = function isOptionGroup(option) {
26
+ return "options" in option && option.options != null;
50
27
  };
51
-
52
- var filteredGroupsHaveOptions = function filteredGroupsHaveOptions(filteredOptions) {
53
- return filteredOptions !== null && filteredOptions !== void 0 && filteredOptions[0].options ? filteredOptions.some(function (groupOption) {
28
+ var isArrayOfOptionGroups = function isArrayOfOptionGroups(options) {
29
+ return isOptionGroup(options[0]);
30
+ };
31
+ var groupsHaveOptions = function groupsHaveOptions(filteredOptions) {
32
+ return isArrayOfOptionGroups(filteredOptions) ? filteredOptions.some(function (groupOption) {
54
33
  var _groupOption$options;
55
-
56
34
  return ((_groupOption$options = groupOption.options) === null || _groupOption$options === void 0 ? void 0 : _groupOption$options.length) > 0;
57
35
  }) : true;
58
36
  };
59
-
60
37
  var canOpenOptions = function canOpenOptions(options, disabled) {
61
38
  return !disabled && (options === null || options === void 0 ? void 0 : options.length) > 0 && groupsHaveOptions(options);
62
39
  };
63
-
64
40
  var filterOptionsBySearchValue = function filterOptionsBySearchValue(options, searchValue) {
65
41
  if ((options === null || options === void 0 ? void 0 : options.length) > 0) {
66
- if (options[0].options) return options.map(function (optionGroup) {
42
+ if (isArrayOfOptionGroups(options)) return options.map(function (optionGroup) {
67
43
  var group = {
68
44
  label: optionGroup.label,
69
45
  options: optionGroup.options.filter(function (option) {
@@ -76,32 +52,24 @@ var filterOptionsBySearchValue = function filterOptionsBySearchValue(options, se
76
52
  });
77
53
  }
78
54
  };
79
-
80
55
  var getLastOptionIndex = function getLastOptionIndex(options, filteredOptions, searchable, optional, multiple) {
81
56
  var last = 0;
82
-
83
57
  var reducer = function reducer(acc, current) {
84
58
  var _current$options;
85
-
86
59
  return acc + ((_current$options = current.options) === null || _current$options === void 0 ? void 0 : _current$options.length);
87
60
  };
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;
61
+ if (searchable && (filteredOptions === null || filteredOptions === void 0 ? void 0 : filteredOptions.length) > 0) isArrayOfOptionGroups(filteredOptions) ? last = filteredOptions.reduce(reducer, 0) - 1 : last = filteredOptions.length - 1;else if ((options === null || options === void 0 ? void 0 : options.length) > 0) isArrayOfOptionGroups(options) ? last = options.reduce(reducer, 0) - 1 : last = options.length - 1;
90
62
  return optional && !multiple ? last + 1 : last;
91
63
  };
92
-
93
64
  var getSelectedOption = function getSelectedOption(value, options, multiple, optional, optionalItem) {
94
65
  var selectedOption = multiple ? [] : {};
95
66
  var singleSelectionIndex;
96
-
97
67
  if (multiple) {
98
68
  if ((options === null || options === void 0 ? void 0 : options.length) > 0) {
99
69
  options.forEach(function (option) {
100
- if (option.options) {
101
- option.options.forEach(function (singleOption) {
102
- if (value.includes(singleOption.value) && Array.isArray(selectedOption)) selectedOption.push(singleOption);
103
- });
104
- } else if (value.includes(option.value) && Array.isArray(selectedOption)) selectedOption.push(option);
70
+ if (isOptionGroup(option)) option.options.forEach(function (singleOption) {
71
+ if (value.includes(singleOption.value) && Array.isArray(selectedOption)) selectedOption.push(singleOption);
72
+ });else if (value.includes(option.value) && Array.isArray(selectedOption)) selectedOption.push(option);
105
73
  });
106
74
  }
107
75
  } else {
@@ -111,14 +79,13 @@ var getSelectedOption = function getSelectedOption(value, options, multiple, opt
111
79
  } else if ((options === null || options === void 0 ? void 0 : options.length) > 0) {
112
80
  var group_index = 0;
113
81
  options.some(function (option, index) {
114
- if (option.options) {
82
+ if (isOptionGroup(option)) {
115
83
  option.options.some(function (singleOption) {
116
84
  if (singleOption.value === value) {
117
85
  selectedOption = singleOption;
118
86
  singleSelectionIndex = optional ? group_index + 1 : group_index;
119
87
  return true;
120
88
  }
121
-
122
89
  group_index++;
123
90
  });
124
91
  } else if (option.value === value) {
@@ -129,23 +96,25 @@ var getSelectedOption = function getSelectedOption(value, options, multiple, opt
129
96
  });
130
97
  }
131
98
  }
132
-
133
99
  return {
134
100
  selectedOption: selectedOption,
135
101
  singleSelectionIndex: singleSelectionIndex
136
102
  };
137
103
  };
138
-
104
+ var getSelectedOptionLabel = function getSelectedOptionLabel(placeholder, selectedOption) {
105
+ var _selectedOption$label;
106
+ if (Array.isArray(selectedOption)) return selectedOption.length === 0 ? placeholder : selectedOption.map(function (option) {
107
+ return option.label;
108
+ }).join(", ");else return (_selectedOption$label = selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.label) !== null && _selectedOption$label !== void 0 ? _selectedOption$label : placeholder;
109
+ };
139
110
  var notOptionalCheck = function notOptionalCheck(value, multiple, optional) {
140
111
  return !optional && (multiple ? value.length === 0 : value === "");
141
112
  };
142
-
143
113
  var useWidth = function useWidth(target) {
144
114
  var _useState = (0, _react.useState)(0),
145
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
146
- width = _useState2[0],
147
- setWidth = _useState2[1];
148
-
115
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
116
+ width = _useState2[0],
117
+ setWidth = _useState2[1];
149
118
  (0, _react.useEffect)(function () {
150
119
  if (target != null) {
151
120
  setWidth(target.getBoundingClientRect().width);
@@ -161,66 +130,57 @@ var useWidth = function useWidth(target) {
161
130
  }, [target]);
162
131
  return width;
163
132
  };
164
-
165
133
  var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
166
- var _ref4, _selectedOption$label;
167
-
134
+ var _ref4;
168
135
  var label = _ref.label,
169
- _ref$name = _ref.name,
170
- name = _ref$name === void 0 ? "" : _ref$name,
171
- defaultValue = _ref.defaultValue,
172
- value = _ref.value,
173
- options = _ref.options,
174
- helperText = _ref.helperText,
175
- _ref$placeholder = _ref.placeholder,
176
- placeholder = _ref$placeholder === void 0 ? "" : _ref$placeholder,
177
- _ref$disabled = _ref.disabled,
178
- disabled = _ref$disabled === void 0 ? false : _ref$disabled,
179
- _ref$optional = _ref.optional,
180
- optional = _ref$optional === void 0 ? false : _ref$optional,
181
- _ref$searchable = _ref.searchable,
182
- searchable = _ref$searchable === void 0 ? false : _ref$searchable,
183
- _ref$multiple = _ref.multiple,
184
- multiple = _ref$multiple === void 0 ? false : _ref$multiple,
185
- onChange = _ref.onChange,
186
- onBlur = _ref.onBlur,
187
- error = _ref.error,
188
- margin = _ref.margin,
189
- _ref$size = _ref.size,
190
- size = _ref$size === void 0 ? "medium" : _ref$size,
191
- _ref$tabIndex = _ref.tabIndex,
192
- tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
193
-
194
- var _useState3 = (0, _react.useState)("select-".concat((0, _uuid.v4)())),
195
- _useState4 = (0, _slicedToArray2["default"])(_useState3, 1),
196
- selectId = _useState4[0];
197
-
136
+ _ref$name = _ref.name,
137
+ name = _ref$name === void 0 ? "" : _ref$name,
138
+ defaultValue = _ref.defaultValue,
139
+ value = _ref.value,
140
+ options = _ref.options,
141
+ helperText = _ref.helperText,
142
+ _ref$placeholder = _ref.placeholder,
143
+ placeholder = _ref$placeholder === void 0 ? "" : _ref$placeholder,
144
+ _ref$disabled = _ref.disabled,
145
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
146
+ _ref$optional = _ref.optional,
147
+ optional = _ref$optional === void 0 ? false : _ref$optional,
148
+ _ref$searchable = _ref.searchable,
149
+ searchable = _ref$searchable === void 0 ? false : _ref$searchable,
150
+ _ref$multiple = _ref.multiple,
151
+ multiple = _ref$multiple === void 0 ? false : _ref$multiple,
152
+ onChange = _ref.onChange,
153
+ onBlur = _ref.onBlur,
154
+ error = _ref.error,
155
+ margin = _ref.margin,
156
+ _ref$size = _ref.size,
157
+ size = _ref$size === void 0 ? "medium" : _ref$size,
158
+ _ref$tabIndex = _ref.tabIndex,
159
+ tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
160
+ var selectId = "select-".concat((0, _react.useId)());
198
161
  var selectLabelId = "label-".concat(selectId);
162
+ var searchableInputId = "searchable-input-".concat(selectId);
199
163
  var errorId = "error-".concat(selectId);
200
164
  var optionsListId = "".concat(selectId, "-listbox");
201
-
202
- var _useState5 = (0, _react.useState)(defaultValue !== null && defaultValue !== void 0 ? defaultValue : multiple ? [] : ""),
203
- _useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
204
- innerValue = _useState6[0],
205
- setInnerValue = _useState6[1];
206
-
207
- var _useState7 = (0, _react.useState)(""),
208
- _useState8 = (0, _slicedToArray2["default"])(_useState7, 2),
209
- searchValue = _useState8[0],
210
- setSearchValue = _useState8[1];
211
-
212
- var _useState9 = (0, _react.useState)(-1),
213
- _useState10 = (0, _slicedToArray2["default"])(_useState9, 2),
214
- visualFocusIndex = _useState10[0],
215
- changeVisualFocusIndex = _useState10[1];
216
-
217
- var _useState11 = (0, _react.useState)(false),
218
- _useState12 = (0, _slicedToArray2["default"])(_useState11, 2),
219
- isOpen = _useState12[0],
220
- changeIsOpen = _useState12[1];
221
-
165
+ var _useState3 = (0, _react.useState)(defaultValue !== null && defaultValue !== void 0 ? defaultValue : multiple ? [] : ""),
166
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
167
+ innerValue = _useState4[0],
168
+ setInnerValue = _useState4[1];
169
+ var _useState5 = (0, _react.useState)(""),
170
+ _useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
171
+ searchValue = _useState6[0],
172
+ setSearchValue = _useState6[1];
173
+ var _useState7 = (0, _react.useState)(-1),
174
+ _useState8 = (0, _slicedToArray2["default"])(_useState7, 2),
175
+ visualFocusIndex = _useState8[0],
176
+ changeVisualFocusIndex = _useState8[1];
177
+ var _useState9 = (0, _react.useState)(false),
178
+ _useState10 = (0, _slicedToArray2["default"])(_useState9, 2),
179
+ isOpen = _useState10[0],
180
+ changeIsOpen = _useState10[1];
222
181
  var selectRef = (0, _react.useRef)(null);
223
182
  var selectSearchInputRef = (0, _react.useRef)(null);
183
+ var selectedOptionLabelRef = (0, _react.useRef)(null);
224
184
  var width = useWidth(selectRef.current);
225
185
  var colorsTheme = (0, _useTheme["default"])();
226
186
  var translatedLabels = (0, _useTranslatedLabels["default"])();
@@ -234,35 +194,28 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
234
194
  var lastOptionIndex = (0, _react.useMemo)(function () {
235
195
  return getLastOptionIndex(options, filteredOptions, searchable, optional, multiple);
236
196
  }, [options, filteredOptions, searchable, optional, multiple]);
237
-
238
197
  var _useMemo = (0, _react.useMemo)(function () {
239
- return getSelectedOption(value !== null && value !== void 0 ? value : innerValue, options, multiple, optional, optionalItem);
240
- }, [value, innerValue, options, multiple, optional, optionalItem]),
241
- selectedOption = _useMemo.selectedOption,
242
- singleSelectionIndex = _useMemo.singleSelectionIndex;
243
-
198
+ return getSelectedOption(value !== null && value !== void 0 ? value : innerValue, options, multiple, optional, optionalItem);
199
+ }, [value, innerValue, options, multiple, optional, optionalItem]),
200
+ selectedOption = _useMemo.selectedOption,
201
+ singleSelectionIndex = _useMemo.singleSelectionIndex;
244
202
  var openOptions = function openOptions() {
245
203
  if (!isOpen && canOpenOptions(options, disabled)) changeIsOpen(true);
246
204
  };
247
-
248
205
  var closeOptions = function closeOptions() {
249
206
  if (isOpen) {
250
207
  changeIsOpen(false);
251
208
  changeVisualFocusIndex(-1);
252
209
  }
253
210
  };
254
-
255
211
  var handleSelectChangeValue = function handleSelectChangeValue(newOption) {
256
212
  var newValue;
257
-
258
213
  if (multiple) {
259
214
  var _ref2, _ref3;
260
-
261
215
  if ((value !== null && value !== void 0 ? value : innerValue).includes(newOption.value)) newValue = ((_ref2 = value && Array.isArray(value) && value) !== null && _ref2 !== void 0 ? _ref2 : innerValue && Array.isArray(innerValue) && innerValue).filter(function (optionVal) {
262
216
  return optionVal !== newOption.value;
263
217
  });else newValue = [].concat((0, _toConsumableArray2["default"])((_ref3 = value && Array.isArray(value) && value) !== null && _ref3 !== void 0 ? _ref3 : innerValue && Array.isArray(innerValue) && innerValue), [newOption.value]);
264
218
  } else newValue = newOption.value;
265
-
266
219
  value !== null && value !== void 0 ? value : setInnerValue(newValue);
267
220
  notOptionalCheck(newValue, multiple, optional) ? onChange === null || onChange === void 0 ? void 0 : onChange({
268
221
  value: newValue,
@@ -271,22 +224,18 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
271
224
  value: newValue
272
225
  });
273
226
  };
274
-
275
227
  var handleSelectOnClick = function handleSelectOnClick() {
276
228
  searchable && selectSearchInputRef.current.focus();
277
-
278
229
  if (isOpen) {
279
230
  closeOptions();
280
231
  setSearchValue("");
281
232
  } else openOptions();
282
233
  };
283
-
284
234
  var handleSelectOnFocus = function handleSelectOnFocus(event) {
285
235
  if (!event.currentTarget.contains(event.relatedTarget)) searchable && selectSearchInputRef.current.focus();
286
236
  };
287
-
288
237
  var handleSelectOnBlur = function handleSelectOnBlur(event) {
289
- // focus leaves container (outside, not to childs)
238
+ // focus leaves container (outside, not to a child)
290
239
  if (!event.currentTarget.contains(event.relatedTarget)) {
291
240
  closeOptions();
292
241
  setSearchValue("");
@@ -299,7 +248,6 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
299
248
  });
300
249
  }
301
250
  };
302
-
303
251
  var handleSelectOnKeyDown = function handleSelectOnKeyDown(event) {
304
252
  switch (event.key) {
305
253
  case "Down":
@@ -310,7 +258,6 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
310
258
  });
311
259
  openOptions();
312
260
  break;
313
-
314
261
  case "Up":
315
262
  case "ArrowUp":
316
263
  event.preventDefault();
@@ -319,21 +266,19 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
319
266
  });
320
267
  openOptions();
321
268
  break;
322
-
323
269
  case "Esc":
324
270
  case "Escape":
325
271
  event.preventDefault();
272
+ isOpen && event.stopPropagation();
326
273
  closeOptions();
327
274
  setSearchValue("");
328
275
  break;
329
-
330
276
  case "Enter":
331
277
  if (isOpen && visualFocusIndex >= 0) {
332
278
  var accLength = optional && !multiple ? 1 : 0;
333
-
334
279
  if (searchable) {
335
280
  if (filteredOptions.length > 0) {
336
- if (optional && !multiple && visualFocusIndex === 0 && filteredGroupsHaveOptions(filteredOptions)) handleSelectChangeValue(optionalItem);else filteredOptions[0].options ? filteredGroupsHaveOptions(filteredOptions) && filteredOptions.some(function (groupOption) {
281
+ if (optional && !multiple && visualFocusIndex === 0 && groupsHaveOptions(filteredOptions)) handleSelectChangeValue(optionalItem);else isArrayOfOptionGroups(filteredOptions) ? groupsHaveOptions(filteredOptions) && filteredOptions.some(function (groupOption) {
337
282
  var groupLength = accLength + groupOption.options.length;
338
283
  groupLength > visualFocusIndex && handleSelectChangeValue(groupOption.options[visualFocusIndex - accLength]);
339
284
  accLength = groupLength;
@@ -341,28 +286,24 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
341
286
  }) : handleSelectChangeValue(filteredOptions[visualFocusIndex - accLength]);
342
287
  }
343
288
  } else {
344
- if (optional && !multiple && visualFocusIndex === 0) handleSelectChangeValue(optionalItem);else options[0].options ? options.some(function (groupOption) {
289
+ if (optional && !multiple && visualFocusIndex === 0) handleSelectChangeValue(optionalItem);else isArrayOfOptionGroups(options) ? options.some(function (groupOption) {
345
290
  var groupLength = accLength + groupOption.options.length;
346
291
  groupLength > visualFocusIndex && handleSelectChangeValue(groupOption.options[visualFocusIndex - accLength]);
347
292
  accLength = groupLength;
348
293
  return groupLength > visualFocusIndex;
349
294
  }) : handleSelectChangeValue(options[visualFocusIndex - accLength]);
350
295
  }
351
-
352
296
  !multiple && closeOptions();
353
297
  setSearchValue("");
354
298
  }
355
-
356
299
  break;
357
300
  }
358
301
  };
359
-
360
302
  var handleSearchIOnChange = function handleSearchIOnChange(event) {
361
303
  setSearchValue(event.target.value);
362
304
  changeVisualFocusIndex(-1);
363
305
  openOptions();
364
306
  };
365
-
366
307
  var handleClearOptionsActionOnClick = function handleClearOptionsActionOnClick(event) {
367
308
  event.stopPropagation();
368
309
  value !== null && value !== void 0 ? value : setInnerValue([]);
@@ -373,17 +314,20 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
373
314
  value: []
374
315
  });
375
316
  };
376
-
377
317
  var handleClearSearchActionOnClick = function handleClearSearchActionOnClick(event) {
378
318
  event.stopPropagation();
379
319
  setSearchValue("");
380
320
  };
381
-
382
321
  var handleOptionOnClick = (0, _react.useCallback)(function (option) {
383
322
  handleSelectChangeValue(option);
384
323
  !multiple && closeOptions();
385
324
  setSearchValue("");
386
325
  }, [handleSelectChangeValue, closeOptions, multiple]);
326
+ (0, _react.useEffect)(function () {
327
+ if ((selectedOptionLabelRef === null || selectedOptionLabelRef === void 0 ? void 0 : selectedOptionLabelRef.current) != null) {
328
+ if ((selectedOptionLabelRef === null || selectedOptionLabelRef === void 0 ? void 0 : selectedOptionLabelRef.current.scrollWidth) > (selectedOptionLabelRef === null || selectedOptionLabelRef === void 0 ? void 0 : selectedOptionLabelRef.current.clientWidth)) selectedOptionLabelRef.current.title = getSelectedOptionLabel(placeholder, selectedOption);else selectedOptionLabelRef.current.title = "";
329
+ }
330
+ }, [placeholder, selectedOption]);
387
331
  return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
388
332
  theme: colorsTheme.select
389
333
  }, /*#__PURE__*/_react["default"].createElement(SelectContainer, {
@@ -396,7 +340,8 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
396
340
  onClick: function onClick() {
397
341
  selectRef.current.focus();
398
342
  },
399
- helperText: helperText
343
+ helperText: helperText,
344
+ htmlFor: searchable ? searchableInputId : undefined
400
345
  }, label, " ", optional && /*#__PURE__*/_react["default"].createElement(OptionalLabel, null, translatedLabels.formFields.optionalLabel)), helperText && /*#__PURE__*/_react["default"].createElement(HelperText, {
401
346
  disabled: disabled
402
347
  }, helperText), /*#__PURE__*/_react["default"].createElement(Popover.Root, {
@@ -436,13 +381,16 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
436
381
  tabIndex: -1,
437
382
  title: translatedLabels.select.actionClearSelectionTitle,
438
383
  "aria-label": translatedLabels.select.actionClearSelectionTitle
439
- }, _Icons["default"].clear)), /*#__PURE__*/_react["default"].createElement(SearchableValueContainer, null, /*#__PURE__*/_react["default"].createElement(ValueInput, {
384
+ }, /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
385
+ icon: "clear"
386
+ }))), /*#__PURE__*/_react["default"].createElement(SearchableValueContainer, null, /*#__PURE__*/_react["default"].createElement(ValueInput, {
440
387
  name: name,
441
388
  disabled: disabled,
442
389
  value: multiple ? ((_ref4 = value && Array.isArray(value) && value) !== null && _ref4 !== void 0 ? _ref4 : innerValue && Array.isArray(innerValue) && innerValue).join(",") : value !== null && value !== void 0 ? value : innerValue,
443
390
  readOnly: true,
444
391
  "aria-hidden": "true"
445
392
  }), searchable && /*#__PURE__*/_react["default"].createElement(SearchInput, {
393
+ id: searchableInputId,
446
394
  value: searchValue,
447
395
  disabled: disabled,
448
396
  onChange: handleSearchIOnChange,
@@ -450,15 +398,14 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
450
398
  autoComplete: "nope",
451
399
  autoCorrect: "nope",
452
400
  size: 1
453
- }), (!searchable || searchValue === "") && (multiple ? /*#__PURE__*/_react["default"].createElement(SelectedOption, {
401
+ }), (!searchable || searchValue === "") && /*#__PURE__*/_react["default"].createElement(SelectedOption, {
454
402
  disabled: disabled,
455
- atBackground: (value !== null && value !== void 0 ? value : innerValue).length === 0 || searchable && isOpen
456
- }, /*#__PURE__*/_react["default"].createElement(SelectedOptionLabel, null, Array.isArray(selectedOption) && selectedOption.map(function (option) {
457
- return option.label;
458
- }).join(", ")), Array.isArray(selectedOption) && selectedOption.length === 0 && placeholder) : /*#__PURE__*/_react["default"].createElement(SelectedOption, {
459
- disabled: disabled,
460
- atBackground: !(value !== null && value !== void 0 ? value : innerValue) || searchable && isOpen
461
- }, /*#__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, {
403
+ atBackground: (multiple ? (value !== null && value !== void 0 ? value : innerValue).length === 0 : !(value !== null && value !== void 0 ? value : innerValue)) || searchable && isOpen
404
+ }, /*#__PURE__*/_react["default"].createElement(SelectedOptionLabel, {
405
+ ref: selectedOptionLabelRef
406
+ }, getSelectedOptionLabel(placeholder, selectedOption)))), !disabled && error && /*#__PURE__*/_react["default"].createElement(ErrorIcon, null, /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
407
+ icon: "filled_error"
408
+ })), searchable && searchValue.length > 0 && /*#__PURE__*/_react["default"].createElement(ClearSearchAction, {
462
409
  onMouseDown: function onMouseDown(event) {
463
410
  // Avoid input to lose focus
464
411
  event.preventDefault();
@@ -467,10 +414,17 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
467
414
  tabIndex: -1,
468
415
  title: translatedLabels.select.actionClearSearchTitle,
469
416
  "aria-label": translatedLabels.select.actionClearSearchTitle
470
- }, _Icons["default"].clear), /*#__PURE__*/_react["default"].createElement(CollapseIndicator, {
417
+ }, /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
418
+ icon: "clear"
419
+ })), /*#__PURE__*/_react["default"].createElement(CollapseIndicator, {
471
420
  disabled: disabled
472
- }, isOpen ? _Icons["default"].arrowUp : _Icons["default"].arrowDown))), /*#__PURE__*/_react["default"].createElement(Popover.Content, {
421
+ }, /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
422
+ icon: isOpen ? "keyboard_arrow_up" : "keyboard_arrow_down"
423
+ })))), /*#__PURE__*/_react["default"].createElement(Popover.Portal, null, /*#__PURE__*/_react["default"].createElement(Popover.Content, {
473
424
  sideOffset: 4,
425
+ style: {
426
+ zIndex: "2147483647"
427
+ },
474
428
  onOpenAutoFocus: function onOpenAutoFocus(event) {
475
429
  // Avoid select to lose focus when the list is opened
476
430
  event.preventDefault();
@@ -493,23 +447,21 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
493
447
  styles: {
494
448
  width: width
495
449
  }
496
- }))), !disabled && typeof error === "string" && /*#__PURE__*/_react["default"].createElement(Error, {
450
+ })))), !disabled && typeof error === "string" && /*#__PURE__*/_react["default"].createElement(Error, {
497
451
  id: errorId,
452
+ role: "alert",
498
453
  "aria-live": error ? "assertive" : "off"
499
454
  }, error)));
500
455
  });
501
-
502
456
  var sizes = {
503
457
  small: "240px",
504
458
  medium: "360px",
505
459
  large: "480px",
506
460
  fillParent: "100%"
507
461
  };
508
-
509
462
  var calculateWidth = function calculateWidth(margin, size) {
510
463
  return size === "fillParent" ? "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")") : sizes[size];
511
464
  };
512
-
513
465
  var SelectContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n\n width: ", ";\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n"])), function (props) {
514
466
  return calculateWidth(props.margin, props.size);
515
467
  }, function (props) {
@@ -523,8 +475,7 @@ var SelectContainer = _styledComponents["default"].div(_templateObject || (_temp
523
475
  }, function (props) {
524
476
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
525
477
  });
526
-
527
- 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) {
478
+ var Label = _styledComponents["default"].label(_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) {
528
479
  return props.disabled ? props.theme.disabledColor : props.theme.labelFontColor;
529
480
  }, function (props) {
530
481
  return props.theme.fontFamily;
@@ -539,11 +490,9 @@ var Label = _styledComponents["default"].span(_templateObject2 || (_templateObje
539
490
  }, function (props) {
540
491
  return !props.helperText && "margin-bottom: 0.25rem";
541
492
  });
542
-
543
493
  var OptionalLabel = _styledComponents["default"].span(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n font-weight: ", ";\n"])), function (props) {
544
494
  return props.theme.optionalLabelFontWeight;
545
495
  });
546
-
547
496
  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) {
548
497
  return props.disabled ? props.theme.disabledColor : props.theme.helperTextFontColor;
549
498
  }, function (props) {
@@ -557,7 +506,6 @@ var HelperText = _styledComponents["default"].span(_templateObject4 || (_templat
557
506
  }, function (props) {
558
507
  return props.theme.helperTextLineHeight;
559
508
  });
560
-
561
509
  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) {
562
510
  return props.disabled && "background-color: ".concat(props.theme.disabledInputBackgroundColor);
563
511
  }, function (props) {
@@ -569,11 +517,9 @@ var Select = _styledComponents["default"].div(_templateObject5 || (_templateObje
569
517
  }, function (props) {
570
518
  return !props.disabled && "\n &:hover {\n border-color: ".concat(props.error ? "transparent" : props.theme.hoverInputBorderColor, ";\n ").concat(props.error && "box-shadow: 0 0 0 2px ".concat(props.theme.hoverInputErrorBorderColor, ";"), "\n }\n &:focus-within {\n border-color: transparent;\n box-shadow: 0 0 0 2px ").concat(props.theme.focusInputBorderColor, ";\n }\n ");
571
519
  });
572
-
573
520
  var SelectionIndicator = _styledComponents["default"].span(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n border: 1px solid ", ";\n border-radius: 2px;\n max-height: 22px;\n width: 46px;\n"])), function (props) {
574
521
  return props.theme.selectionIndicatorBorderColor;
575
522
  });
576
-
577
523
  var SelectionNumber = _styledComponents["default"].span(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n justify-content: center;\n width: 22px;\n height: 22px;\n user-select: none;\n ", ";\n border-right: 1px solid ", ";\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n ", "\n"])), function (props) {
578
524
  return !props.disabled && "background-color: ".concat(props.theme.selectionIndicatorBackgroundColor);
579
525
  }, function (props) {
@@ -591,8 +537,7 @@ var SelectionNumber = _styledComponents["default"].span(_templateObject7 || (_te
591
537
  }, function (props) {
592
538
  return props.disabled ? "cursor: not-allowed;" : "cursor: default;";
593
539
  });
594
-
595
- 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) {
540
+ 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 font-size:16px;\n"])), function (props) {
596
541
  return props.disabled ? "cursor: not-allowed;" : "cursor: pointer;";
597
542
  }, function (props) {
598
543
  return props.disabled ? "transparent" : props.theme.enabledSelectionIndicatorActionBackgroundColor;
@@ -601,9 +546,7 @@ var ClearOptionsAction = _styledComponents["default"].button(_templateObject8 ||
601
546
  }, function (props) {
602
547
  return !props.disabled && "\n &:hover {\n background-color: ".concat(props.theme.hoverSelectionIndicatorActionBackgroundColor, ";\n color: ").concat(props.theme.hoverSelectionIndicatorActionIconColor, ";\n }\n &:active {\n background-color: ").concat(props.theme.activeSelectionIndicatorActionBackgroundColor, ";\n color: ").concat(props.theme.activeSelectionIndicatorActionIconColor, ";\n }\n ");
603
548
  });
604
-
605
549
  var SearchableValueContainer = _styledComponents["default"].div(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n display: grid;\n width: 100%;\n"])));
606
-
607
550
  var SelectedOption = _styledComponents["default"].span(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2["default"])(["\n grid-area: 1 / 1 / 1 / 1;\n display: inline-flex;\n align-items: center;\n height: calc(2.5rem - 2px);\n padding: 0 0.5rem;\n user-select: none;\n overflow: hidden;\n\n color: ", ";\n\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n"])), function (props) {
608
551
  if (props.disabled) return props.theme.disabledColor;else if (props.atBackground) return props.theme.placeholderFontColor;else return props.theme.valueFontColor;
609
552
  }, function (props) {
@@ -615,11 +558,8 @@ var SelectedOption = _styledComponents["default"].span(_templateObject10 || (_te
615
558
  }, function (props) {
616
559
  return props.theme.valueFontWeight;
617
560
  });
618
-
619
561
  var SelectedOptionLabel = _styledComponents["default"].span(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2["default"])(["\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n"])));
620
-
621
562
  var ValueInput = _styledComponents["default"].input(_templateObject12 || (_templateObject12 = (0, _taggedTemplateLiteral2["default"])(["\n display: none;\n"])));
622
-
623
563
  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) {
624
564
  return props.disabled ? props.theme.disabledColor : props.theme.valueFontColor;
625
565
  }, function (props) {
@@ -631,22 +571,18 @@ var SearchInput = _styledComponents["default"].input(_templateObject13 || (_temp
631
571
  }, function (props) {
632
572
  return props.theme.valueFontWeight;
633
573
  });
634
-
635
- 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) {
574
+ 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 font-size: 1.25rem;\n"])), function (props) {
636
575
  return props.theme.errorIconColor;
637
576
  });
638
-
639
577
  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) {
640
578
  return props.theme.errorMessageColor;
641
579
  }, function (props) {
642
580
  return props.theme.fontFamily;
643
581
  });
644
-
645
582
  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) {
646
583
  return props.disabled ? props.theme.disabledColor : props.theme.collapseIndicatorColor;
647
584
  });
648
-
649
- 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) {
585
+ 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 font-size: 16px;\n"])), function (props) {
650
586
  return props.theme.fontFamily;
651
587
  }, function (props) {
652
588
  return props.theme.actionBackgroundColor;
@@ -661,6 +597,4 @@ var ClearSearchAction = _styledComponents["default"].button(_templateObject17 ||
661
597
  }, function (props) {
662
598
  return props.theme.activeActionIconColor;
663
599
  });
664
-
665
- var _default = DxcSelect;
666
- exports["default"] = _default;
600
+ var _default = exports["default"] = DxcSelect;