@dxc-technology/halstack-react 0.0.0-bfdc357 → 0.0.0-c023f9a

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 (535) hide show
  1. package/BackgroundColorContext.d.ts +1 -0
  2. package/BackgroundColorContext.js +6 -26
  3. package/HalstackContext.d.ts +1246 -0
  4. package/HalstackContext.js +310 -0
  5. package/README.md +47 -0
  6. package/accordion/Accordion.accessibility.test.d.ts +1 -0
  7. package/accordion/Accordion.accessibility.test.js +71 -0
  8. package/accordion/Accordion.d.ts +1 -1
  9. package/accordion/Accordion.js +103 -193
  10. package/accordion/Accordion.stories.tsx +241 -0
  11. package/accordion/Accordion.test.d.ts +1 -0
  12. package/accordion/Accordion.test.js +56 -0
  13. package/accordion/types.d.ts +12 -23
  14. package/accordion-group/AccordionGroup.accessibility.test.d.ts +1 -0
  15. package/accordion-group/AccordionGroup.accessibility.test.js +82 -0
  16. package/accordion-group/AccordionGroup.d.ts +3 -3
  17. package/accordion-group/AccordionGroup.js +39 -108
  18. package/accordion-group/AccordionGroup.stories.tsx +252 -0
  19. package/accordion-group/AccordionGroup.test.d.ts +1 -0
  20. package/accordion-group/AccordionGroup.test.js +94 -0
  21. package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
  22. package/accordion-group/AccordionGroupAccordion.js +31 -0
  23. package/accordion-group/AccordionGroupContext.d.ts +3 -0
  24. package/accordion-group/AccordionGroupContext.js +8 -0
  25. package/accordion-group/types.d.ts +18 -23
  26. package/action-icon/ActionIcon.accessibility.test.d.ts +1 -0
  27. package/action-icon/ActionIcon.accessibility.test.js +63 -0
  28. package/action-icon/ActionIcon.d.ts +4 -0
  29. package/action-icon/ActionIcon.js +48 -0
  30. package/action-icon/ActionIcon.stories.tsx +41 -0
  31. package/action-icon/ActionIcon.test.d.ts +1 -0
  32. package/action-icon/ActionIcon.test.js +64 -0
  33. package/action-icon/types.d.ts +26 -0
  34. package/alert/Alert.accessibility.test.d.ts +1 -0
  35. package/alert/Alert.accessibility.test.js +95 -0
  36. package/alert/Alert.js +41 -128
  37. package/alert/Alert.stories.tsx +28 -0
  38. package/alert/Alert.test.d.ts +1 -0
  39. package/alert/Alert.test.js +75 -0
  40. package/alert/types.d.ts +6 -6
  41. package/badge/Badge.accessibility.test.d.ts +1 -0
  42. package/badge/Badge.accessibility.test.js +129 -0
  43. package/badge/Badge.d.ts +4 -0
  44. package/badge/Badge.js +142 -40
  45. package/badge/Badge.stories.tsx +210 -0
  46. package/badge/Badge.test.d.ts +1 -0
  47. package/badge/Badge.test.js +30 -0
  48. package/badge/types.d.ts +54 -0
  49. package/badge/types.js +5 -0
  50. package/bleed/Bleed.d.ts +3 -0
  51. package/bleed/Bleed.js +43 -0
  52. package/bleed/Bleed.stories.tsx +342 -0
  53. package/bleed/types.d.ts +37 -0
  54. package/bleed/types.js +5 -0
  55. package/box/Box.accessibility.test.d.ts +1 -0
  56. package/box/Box.accessibility.test.js +33 -0
  57. package/box/Box.d.ts +1 -1
  58. package/box/Box.js +31 -82
  59. package/box/Box.stories.tsx +38 -51
  60. package/box/Box.test.d.ts +1 -0
  61. package/box/Box.test.js +13 -0
  62. package/box/types.d.ts +3 -14
  63. package/breadcrumbs/Breadcrumbs.accessibility.test.d.ts +1 -0
  64. package/breadcrumbs/Breadcrumbs.accessibility.test.js +96 -0
  65. package/breadcrumbs/Breadcrumbs.d.ts +4 -0
  66. package/breadcrumbs/Breadcrumbs.js +79 -0
  67. package/breadcrumbs/Breadcrumbs.stories.tsx +194 -0
  68. package/breadcrumbs/Breadcrumbs.test.d.ts +1 -0
  69. package/breadcrumbs/Breadcrumbs.test.js +169 -0
  70. package/breadcrumbs/Item.d.ts +4 -0
  71. package/breadcrumbs/Item.js +52 -0
  72. package/breadcrumbs/dropdownTheme.d.ts +53 -0
  73. package/breadcrumbs/dropdownTheme.js +62 -0
  74. package/breadcrumbs/types.d.ts +16 -0
  75. package/breadcrumbs/types.js +5 -0
  76. package/bulleted-list/BulletedList.accessibility.test.d.ts +1 -0
  77. package/bulleted-list/BulletedList.accessibility.test.js +119 -0
  78. package/bulleted-list/BulletedList.d.ts +7 -0
  79. package/bulleted-list/BulletedList.js +92 -0
  80. package/bulleted-list/BulletedList.stories.tsx +115 -0
  81. package/bulleted-list/types.d.ts +38 -0
  82. package/bulleted-list/types.js +5 -0
  83. package/button/Button.accessibility.test.d.ts +1 -0
  84. package/button/Button.accessibility.test.js +127 -0
  85. package/button/Button.d.ts +1 -1
  86. package/button/Button.js +65 -121
  87. package/button/Button.stories.tsx +155 -106
  88. package/button/Button.test.d.ts +1 -0
  89. package/button/Button.test.js +38 -0
  90. package/button/types.d.ts +14 -14
  91. package/card/Card.accessibility.test.d.ts +1 -0
  92. package/card/Card.accessibility.test.js +36 -0
  93. package/card/Card.d.ts +1 -1
  94. package/card/Card.js +60 -103
  95. package/card/Card.stories.tsx +171 -0
  96. package/card/Card.test.d.ts +1 -0
  97. package/card/Card.test.js +39 -0
  98. package/card/types.d.ts +8 -15
  99. package/checkbox/Checkbox.accessibility.test.d.ts +1 -0
  100. package/checkbox/Checkbox.accessibility.test.js +87 -0
  101. package/checkbox/Checkbox.d.ts +2 -2
  102. package/checkbox/Checkbox.js +141 -182
  103. package/checkbox/Checkbox.stories.tsx +166 -136
  104. package/checkbox/Checkbox.test.d.ts +1 -0
  105. package/checkbox/Checkbox.test.js +199 -0
  106. package/checkbox/types.d.ts +20 -8
  107. package/chip/Chip.accessibility.test.d.ts +1 -0
  108. package/chip/Chip.accessibility.test.js +67 -0
  109. package/chip/Chip.d.ts +4 -0
  110. package/chip/Chip.js +51 -146
  111. package/chip/Chip.stories.tsx +109 -31
  112. package/chip/Chip.test.d.ts +1 -0
  113. package/chip/Chip.test.js +41 -0
  114. package/chip/types.d.ts +45 -0
  115. package/chip/types.js +5 -0
  116. package/common/coreTokens.d.ts +237 -0
  117. package/common/coreTokens.js +184 -0
  118. package/common/utils.d.ts +1 -0
  119. package/common/utils.js +6 -12
  120. package/common/variables.d.ts +1392 -0
  121. package/common/variables.js +1084 -1397
  122. package/container/Container.d.ts +4 -0
  123. package/container/Container.js +194 -0
  124. package/container/Container.stories.tsx +214 -0
  125. package/container/types.d.ts +74 -0
  126. package/container/types.js +5 -0
  127. package/contextual-menu/ContextualMenu.accessibility.test.d.ts +1 -0
  128. package/contextual-menu/ContextualMenu.accessibility.test.js +98 -0
  129. package/contextual-menu/ContextualMenu.d.ts +5 -0
  130. package/contextual-menu/ContextualMenu.js +88 -0
  131. package/contextual-menu/ContextualMenu.stories.tsx +232 -0
  132. package/contextual-menu/ContextualMenu.test.d.ts +1 -0
  133. package/contextual-menu/ContextualMenu.test.js +205 -0
  134. package/contextual-menu/GroupItem.d.ts +4 -0
  135. package/contextual-menu/GroupItem.js +67 -0
  136. package/contextual-menu/ItemAction.d.ts +4 -0
  137. package/contextual-menu/ItemAction.js +51 -0
  138. package/contextual-menu/MenuItem.d.ts +4 -0
  139. package/contextual-menu/MenuItem.js +29 -0
  140. package/contextual-menu/SingleItem.d.ts +4 -0
  141. package/contextual-menu/SingleItem.js +38 -0
  142. package/contextual-menu/types.d.ts +58 -0
  143. package/contextual-menu/types.js +5 -0
  144. package/date-input/Calendar.d.ts +4 -0
  145. package/date-input/Calendar.js +214 -0
  146. package/date-input/DateInput.accessibility.test.d.ts +1 -0
  147. package/date-input/DateInput.accessibility.test.js +230 -0
  148. package/date-input/DateInput.js +174 -313
  149. package/date-input/DateInput.stories.tsx +210 -56
  150. package/date-input/DateInput.test.d.ts +1 -0
  151. package/date-input/DateInput.test.js +809 -0
  152. package/date-input/DatePicker.d.ts +4 -0
  153. package/date-input/DatePicker.js +121 -0
  154. package/date-input/YearPicker.d.ts +4 -0
  155. package/date-input/YearPicker.js +100 -0
  156. package/date-input/types.d.ts +86 -22
  157. package/dialog/Dialog.accessibility.test.d.ts +1 -0
  158. package/dialog/Dialog.accessibility.test.js +69 -0
  159. package/dialog/Dialog.d.ts +1 -1
  160. package/dialog/Dialog.js +57 -129
  161. package/dialog/Dialog.stories.tsx +325 -167
  162. package/dialog/Dialog.test.d.ts +1 -0
  163. package/dialog/Dialog.test.js +371 -0
  164. package/dialog/types.d.ts +18 -25
  165. package/divider/Divider.accessibility.test.d.ts +1 -0
  166. package/divider/Divider.accessibility.test.js +33 -0
  167. package/divider/Divider.d.ts +4 -0
  168. package/divider/Divider.js +36 -0
  169. package/divider/Divider.stories.tsx +223 -0
  170. package/divider/Divider.test.d.ts +1 -0
  171. package/divider/Divider.test.js +38 -0
  172. package/divider/types.d.ts +21 -0
  173. package/divider/types.js +5 -0
  174. package/dropdown/Dropdown.accessibility.test.d.ts +1 -0
  175. package/dropdown/Dropdown.accessibility.test.js +184 -0
  176. package/dropdown/Dropdown.d.ts +1 -1
  177. package/dropdown/Dropdown.js +233 -330
  178. package/dropdown/Dropdown.stories.tsx +427 -0
  179. package/dropdown/Dropdown.test.d.ts +1 -0
  180. package/dropdown/Dropdown.test.js +629 -0
  181. package/dropdown/DropdownMenu.d.ts +4 -0
  182. package/dropdown/DropdownMenu.js +63 -0
  183. package/dropdown/DropdownMenuItem.d.ts +4 -0
  184. package/dropdown/DropdownMenuItem.js +71 -0
  185. package/dropdown/types.d.ts +38 -31
  186. package/file-input/FileInput.accessibility.test.d.ts +1 -0
  187. package/file-input/FileInput.accessibility.test.js +167 -0
  188. package/file-input/FileInput.d.ts +2 -2
  189. package/file-input/FileInput.js +271 -342
  190. package/file-input/FileInput.stories.tsx +618 -0
  191. package/file-input/FileInput.test.d.ts +1 -0
  192. package/file-input/FileInput.test.js +404 -0
  193. package/file-input/FileItem.d.ts +4 -14
  194. package/file-input/FileItem.js +64 -121
  195. package/file-input/types.d.ts +53 -11
  196. package/flex/Flex.d.ts +4 -0
  197. package/flex/Flex.js +57 -0
  198. package/flex/Flex.stories.tsx +112 -0
  199. package/flex/types.d.ts +97 -0
  200. package/flex/types.js +5 -0
  201. package/footer/Footer.accessibility.test.d.ts +1 -0
  202. package/footer/Footer.accessibility.test.js +125 -0
  203. package/footer/Footer.d.ts +1 -1
  204. package/footer/Footer.js +74 -200
  205. package/footer/{Footer.stories.jsx → Footer.stories.tsx} +96 -39
  206. package/footer/Footer.test.d.ts +1 -0
  207. package/footer/Footer.test.js +85 -0
  208. package/footer/Icons.d.ts +3 -0
  209. package/footer/Icons.js +54 -23
  210. package/footer/types.d.ts +40 -37
  211. package/grid/Grid.d.ts +7 -0
  212. package/grid/Grid.js +76 -0
  213. package/grid/Grid.stories.tsx +219 -0
  214. package/grid/types.d.ts +115 -0
  215. package/grid/types.js +5 -0
  216. package/header/Header.accessibility.test.d.ts +1 -0
  217. package/header/Header.accessibility.test.js +94 -0
  218. package/header/Header.d.ts +4 -3
  219. package/header/Header.js +105 -219
  220. package/header/Header.stories.tsx +168 -63
  221. package/header/Header.test.d.ts +1 -0
  222. package/header/Header.test.js +66 -0
  223. package/header/Icons.d.ts +2 -0
  224. package/header/Icons.js +5 -15
  225. package/header/types.d.ts +6 -18
  226. package/heading/Heading.accessibility.test.d.ts +1 -0
  227. package/heading/Heading.accessibility.test.js +33 -0
  228. package/heading/Heading.js +11 -33
  229. package/heading/Heading.stories.tsx +54 -0
  230. package/heading/Heading.test.d.ts +1 -0
  231. package/heading/Heading.test.js +156 -0
  232. package/heading/types.d.ts +7 -7
  233. package/icon/Icon.accessibility.test.d.ts +1 -0
  234. package/icon/Icon.accessibility.test.js +30 -0
  235. package/icon/Icon.d.ts +4 -0
  236. package/icon/Icon.js +33 -0
  237. package/icon/Icon.stories.tsx +28 -0
  238. package/icon/types.d.ts +4 -0
  239. package/icon/types.js +5 -0
  240. package/image/Image.accessibility.test.d.ts +1 -0
  241. package/image/Image.accessibility.test.js +56 -0
  242. package/image/Image.d.ts +4 -0
  243. package/image/Image.js +70 -0
  244. package/image/Image.stories.tsx +129 -0
  245. package/image/types.d.ts +72 -0
  246. package/image/types.js +5 -0
  247. package/inset/Inset.d.ts +3 -0
  248. package/inset/Inset.js +43 -0
  249. package/inset/Inset.stories.tsx +230 -0
  250. package/inset/types.d.ts +37 -0
  251. package/inset/types.js +5 -0
  252. package/layout/ApplicationLayout.d.ts +20 -0
  253. package/layout/ApplicationLayout.js +88 -186
  254. package/layout/ApplicationLayout.stories.tsx +162 -0
  255. package/layout/Icons.d.ts +7 -0
  256. package/layout/Icons.js +41 -48
  257. package/layout/types.d.ts +41 -0
  258. package/layout/types.js +5 -0
  259. package/link/Link.accessibility.test.d.ts +1 -0
  260. package/link/Link.accessibility.test.js +108 -0
  261. package/link/Link.d.ts +3 -2
  262. package/link/Link.js +65 -109
  263. package/link/Link.stories.tsx +161 -54
  264. package/link/Link.test.d.ts +1 -0
  265. package/link/Link.test.js +63 -0
  266. package/link/types.d.ts +15 -35
  267. package/main.d.ts +20 -14
  268. package/main.js +99 -98
  269. package/nav-tabs/NavTabs.accessibility.test.d.ts +1 -0
  270. package/nav-tabs/NavTabs.accessibility.test.js +44 -0
  271. package/nav-tabs/NavTabs.d.ts +7 -0
  272. package/nav-tabs/NavTabs.js +93 -0
  273. package/nav-tabs/NavTabs.stories.tsx +279 -0
  274. package/nav-tabs/NavTabs.test.d.ts +1 -0
  275. package/nav-tabs/NavTabs.test.js +77 -0
  276. package/nav-tabs/NavTabsContext.d.ts +3 -0
  277. package/nav-tabs/NavTabsContext.js +8 -0
  278. package/nav-tabs/Tab.d.ts +4 -0
  279. package/nav-tabs/Tab.js +117 -0
  280. package/nav-tabs/types.d.ts +52 -0
  281. package/nav-tabs/types.js +5 -0
  282. package/number-input/NumberInput.accessibility.test.d.ts +1 -0
  283. package/number-input/NumberInput.accessibility.test.js +228 -0
  284. package/number-input/NumberInput.js +48 -48
  285. package/number-input/NumberInput.stories.tsx +44 -28
  286. package/number-input/NumberInput.test.d.ts +1 -0
  287. package/number-input/NumberInput.test.js +989 -0
  288. package/number-input/NumberInputContext.d.ts +3 -0
  289. package/number-input/NumberInputContext.js +3 -11
  290. package/number-input/types.d.ts +34 -15
  291. package/package.json +53 -52
  292. package/paginator/Paginator.accessibility.test.d.ts +1 -0
  293. package/paginator/Paginator.accessibility.test.js +79 -0
  294. package/paginator/Paginator.js +47 -107
  295. package/paginator/Paginator.stories.tsx +24 -0
  296. package/paginator/Paginator.test.d.ts +1 -0
  297. package/paginator/Paginator.test.js +335 -0
  298. package/paginator/types.d.ts +3 -3
  299. package/paragraph/Paragraph.accessibility.test.d.ts +1 -0
  300. package/paragraph/Paragraph.accessibility.test.js +28 -0
  301. package/paragraph/Paragraph.d.ts +5 -0
  302. package/paragraph/Paragraph.js +22 -0
  303. package/paragraph/Paragraph.stories.tsx +27 -0
  304. package/password-input/PasswordInput.accessibility.test.d.ts +1 -0
  305. package/password-input/PasswordInput.accessibility.test.js +153 -0
  306. package/password-input/PasswordInput.js +61 -126
  307. package/password-input/PasswordInput.stories.tsx +3 -35
  308. package/password-input/PasswordInput.test.d.ts +1 -0
  309. package/password-input/PasswordInput.test.js +198 -0
  310. package/password-input/types.d.ts +35 -24
  311. package/progress-bar/ProgressBar.accessibility.test.d.ts +1 -0
  312. package/progress-bar/ProgressBar.accessibility.test.js +35 -0
  313. package/progress-bar/ProgressBar.js +69 -93
  314. package/progress-bar/ProgressBar.stories.tsx +93 -0
  315. package/progress-bar/ProgressBar.test.d.ts +1 -0
  316. package/progress-bar/ProgressBar.test.js +93 -0
  317. package/progress-bar/types.d.ts +3 -3
  318. package/quick-nav/QuickNav.accessibility.test.d.ts +1 -0
  319. package/quick-nav/QuickNav.accessibility.test.js +57 -0
  320. package/quick-nav/QuickNav.d.ts +4 -0
  321. package/quick-nav/QuickNav.js +94 -0
  322. package/quick-nav/QuickNav.stories.tsx +356 -0
  323. package/quick-nav/types.d.ts +21 -0
  324. package/quick-nav/types.js +5 -0
  325. package/radio-group/Radio.d.ts +4 -0
  326. package/radio-group/Radio.js +121 -0
  327. package/radio-group/RadioGroup.accessibility.test.d.ts +1 -0
  328. package/radio-group/RadioGroup.accessibility.test.js +97 -0
  329. package/radio-group/RadioGroup.d.ts +4 -0
  330. package/radio-group/RadioGroup.js +233 -0
  331. package/radio-group/RadioGroup.stories.tsx +214 -0
  332. package/radio-group/RadioGroup.test.d.ts +1 -0
  333. package/radio-group/RadioGroup.test.js +754 -0
  334. package/radio-group/types.d.ts +114 -0
  335. package/radio-group/types.js +5 -0
  336. package/resultset-table/Icons.d.ts +7 -0
  337. package/resultset-table/Icons.js +47 -0
  338. package/resultset-table/ResultsetTable.accessibility.test.d.ts +1 -0
  339. package/resultset-table/ResultsetTable.accessibility.test.js +285 -0
  340. package/resultset-table/ResultsetTable.d.ts +7 -0
  341. package/resultset-table/ResultsetTable.js +171 -0
  342. package/resultset-table/ResultsetTable.stories.tsx +413 -0
  343. package/resultset-table/ResultsetTable.test.d.ts +1 -0
  344. package/resultset-table/ResultsetTable.test.js +380 -0
  345. package/resultset-table/types.d.ts +100 -0
  346. package/resultset-table/types.js +5 -0
  347. package/select/Listbox.d.ts +4 -0
  348. package/select/Listbox.js +151 -0
  349. package/select/Option.d.ts +4 -0
  350. package/select/Option.js +89 -0
  351. package/select/Select.accessibility.test.d.ts +1 -0
  352. package/select/Select.accessibility.test.js +228 -0
  353. package/select/Select.d.ts +4 -0
  354. package/select/Select.js +248 -513
  355. package/select/Select.stories.tsx +602 -255
  356. package/select/Select.test.d.ts +1 -0
  357. package/select/Select.test.js +2268 -0
  358. package/select/types.d.ts +209 -0
  359. package/select/types.js +5 -0
  360. package/sidenav/Sidenav.accessibility.test.d.ts +1 -0
  361. package/sidenav/Sidenav.accessibility.test.js +59 -0
  362. package/sidenav/Sidenav.d.ts +6 -5
  363. package/sidenav/Sidenav.js +137 -72
  364. package/sidenav/Sidenav.stories.tsx +277 -0
  365. package/sidenav/Sidenav.test.d.ts +1 -0
  366. package/sidenav/Sidenav.test.js +37 -0
  367. package/sidenav/SidenavContext.d.ts +5 -0
  368. package/sidenav/SidenavContext.js +13 -0
  369. package/sidenav/types.d.ts +52 -26
  370. package/slider/Slider.accessibility.test.d.ts +1 -0
  371. package/slider/Slider.accessibility.test.js +104 -0
  372. package/slider/Slider.d.ts +2 -2
  373. package/slider/Slider.js +149 -183
  374. package/slider/Slider.stories.tsx +68 -65
  375. package/slider/Slider.test.d.ts +1 -0
  376. package/slider/Slider.test.js +257 -0
  377. package/slider/types.d.ts +11 -3
  378. package/spinner/Spinner.accessibility.test.d.ts +1 -0
  379. package/spinner/Spinner.accessibility.test.js +96 -0
  380. package/spinner/Spinner.js +35 -75
  381. package/spinner/{Spinner.stories.jsx → Spinner.stories.tsx} +53 -26
  382. package/spinner/Spinner.test.d.ts +1 -0
  383. package/spinner/Spinner.test.js +55 -0
  384. package/spinner/types.d.ts +3 -3
  385. package/status-light/StatusLight.accessibility.test.d.ts +1 -0
  386. package/status-light/StatusLight.accessibility.test.js +157 -0
  387. package/status-light/StatusLight.d.ts +4 -0
  388. package/status-light/StatusLight.js +51 -0
  389. package/status-light/StatusLight.stories.tsx +74 -0
  390. package/status-light/StatusLight.test.d.ts +1 -0
  391. package/status-light/StatusLight.test.js +25 -0
  392. package/status-light/types.d.ts +17 -0
  393. package/status-light/types.js +5 -0
  394. package/switch/Switch.accessibility.test.d.ts +1 -0
  395. package/switch/Switch.accessibility.test.js +98 -0
  396. package/switch/Switch.d.ts +2 -2
  397. package/switch/Switch.js +147 -115
  398. package/switch/Switch.stories.tsx +57 -68
  399. package/switch/Switch.test.d.ts +1 -0
  400. package/switch/Switch.test.js +180 -0
  401. package/switch/types.d.ts +13 -5
  402. package/table/DropdownTheme.js +62 -0
  403. package/table/Table.accessibility.test.d.ts +1 -0
  404. package/table/Table.accessibility.test.js +93 -0
  405. package/table/Table.d.ts +6 -2
  406. package/table/Table.js +80 -37
  407. package/table/Table.stories.tsx +663 -0
  408. package/table/Table.test.d.ts +1 -0
  409. package/table/Table.test.js +112 -0
  410. package/table/types.d.ts +34 -6
  411. package/tabs/Tab.d.ts +4 -0
  412. package/tabs/Tab.js +117 -0
  413. package/tabs/Tabs.accessibility.test.d.ts +1 -0
  414. package/tabs/Tabs.accessibility.test.js +56 -0
  415. package/tabs/Tabs.d.ts +1 -1
  416. package/tabs/Tabs.js +307 -145
  417. package/tabs/Tabs.stories.tsx +230 -0
  418. package/tabs/Tabs.test.d.ts +1 -0
  419. package/tabs/Tabs.test.js +276 -0
  420. package/tabs/types.d.ts +48 -27
  421. package/tag/Tag.accessibility.test.d.ts +1 -0
  422. package/tag/Tag.accessibility.test.js +69 -0
  423. package/tag/Tag.d.ts +1 -1
  424. package/tag/Tag.js +44 -86
  425. package/tag/Tag.stories.tsx +37 -30
  426. package/tag/Tag.test.d.ts +1 -0
  427. package/tag/Tag.test.js +41 -0
  428. package/tag/types.d.ts +25 -16
  429. package/text-input/Suggestion.d.ts +4 -0
  430. package/text-input/Suggestion.js +67 -0
  431. package/text-input/Suggestions.d.ts +4 -0
  432. package/text-input/Suggestions.js +94 -0
  433. package/text-input/TextInput.accessibility.test.d.ts +1 -0
  434. package/text-input/TextInput.accessibility.test.js +321 -0
  435. package/text-input/TextInput.d.ts +4 -0
  436. package/text-input/TextInput.js +336 -592
  437. package/text-input/TextInput.stories.tsx +474 -0
  438. package/text-input/TextInput.test.d.ts +1 -0
  439. package/text-input/TextInput.test.js +1756 -0
  440. package/text-input/types.d.ts +205 -0
  441. package/text-input/types.js +5 -0
  442. package/textarea/Textarea.accessibility.test.d.ts +1 -0
  443. package/textarea/Textarea.accessibility.test.js +155 -0
  444. package/textarea/Textarea.d.ts +4 -0
  445. package/textarea/Textarea.js +98 -183
  446. package/textarea/Textarea.stories.tsx +174 -0
  447. package/textarea/Textarea.test.d.ts +1 -0
  448. package/textarea/Textarea.test.js +406 -0
  449. package/textarea/types.d.ts +141 -0
  450. package/textarea/types.js +5 -0
  451. package/toggle-group/ToggleGroup.accessibility.test.d.ts +1 -0
  452. package/toggle-group/ToggleGroup.accessibility.test.js +107 -0
  453. package/toggle-group/ToggleGroup.d.ts +4 -0
  454. package/toggle-group/ToggleGroup.js +99 -143
  455. package/toggle-group/ToggleGroup.stories.tsx +79 -39
  456. package/toggle-group/ToggleGroup.test.d.ts +1 -0
  457. package/toggle-group/ToggleGroup.test.js +137 -0
  458. package/toggle-group/types.d.ts +114 -0
  459. package/toggle-group/types.js +5 -0
  460. package/typography/Typography.accessibility.test.d.ts +1 -0
  461. package/typography/Typography.accessibility.test.js +339 -0
  462. package/typography/Typography.d.ts +4 -0
  463. package/typography/Typography.js +23 -0
  464. package/typography/Typography.stories.tsx +198 -0
  465. package/typography/types.d.ts +18 -0
  466. package/typography/types.js +5 -0
  467. package/useTheme.d.ts +1145 -0
  468. package/useTheme.js +4 -11
  469. package/useTranslatedLabels.d.ts +85 -0
  470. package/useTranslatedLabels.js +14 -0
  471. package/utils/BaseTypography.d.ts +21 -0
  472. package/utils/BaseTypography.js +94 -0
  473. package/utils/FocusLock.d.ts +13 -0
  474. package/utils/FocusLock.js +124 -0
  475. package/wizard/Wizard.accessibility.test.d.ts +1 -0
  476. package/wizard/Wizard.accessibility.test.js +55 -0
  477. package/wizard/Wizard.d.ts +1 -1
  478. package/wizard/Wizard.js +122 -114
  479. package/wizard/{Wizard.stories.jsx → Wizard.stories.tsx} +67 -19
  480. package/wizard/Wizard.test.d.ts +1 -0
  481. package/wizard/Wizard.test.js +114 -0
  482. package/wizard/types.d.ts +15 -15
  483. package/ThemeContext.js +0 -246
  484. package/V3Select/V3Select.js +0 -455
  485. package/V3Select/index.d.ts +0 -27
  486. package/V3Textarea/V3Textarea.js +0 -260
  487. package/V3Textarea/index.d.ts +0 -27
  488. package/chip/index.d.ts +0 -22
  489. package/common/OpenSans.css +0 -81
  490. package/common/RequiredComponent.js +0 -32
  491. package/common/fonts/OpenSans-Bold.ttf +0 -0
  492. package/common/fonts/OpenSans-BoldItalic.ttf +0 -0
  493. package/common/fonts/OpenSans-ExtraBold.ttf +0 -0
  494. package/common/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  495. package/common/fonts/OpenSans-Italic.ttf +0 -0
  496. package/common/fonts/OpenSans-Light.ttf +0 -0
  497. package/common/fonts/OpenSans-LightItalic.ttf +0 -0
  498. package/common/fonts/OpenSans-Regular.ttf +0 -0
  499. package/common/fonts/OpenSans-SemiBold.ttf +0 -0
  500. package/common/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  501. package/date/Date.js +0 -373
  502. package/date/index.d.ts +0 -27
  503. package/input-text/Icons.js +0 -22
  504. package/input-text/InputText.js +0 -611
  505. package/input-text/index.d.ts +0 -36
  506. package/paginator/Icons.js +0 -66
  507. package/progress-bar/ProgressBar.stories.jsx +0 -58
  508. package/radio/Radio.d.ts +0 -4
  509. package/radio/Radio.js +0 -174
  510. package/radio/Radio.stories.tsx +0 -192
  511. package/radio/types.d.ts +0 -54
  512. package/resultsetTable/ResultsetTable.js +0 -274
  513. package/resultsetTable/index.d.ts +0 -19
  514. package/select/index.d.ts +0 -131
  515. package/table/Table.stories.jsx +0 -276
  516. package/text-input/index.d.ts +0 -135
  517. package/textarea/Textarea.stories.jsx +0 -135
  518. package/textarea/index.d.ts +0 -117
  519. package/toggle/Toggle.js +0 -186
  520. package/toggle/index.d.ts +0 -21
  521. package/toggle-group/index.d.ts +0 -21
  522. package/upload/Upload.js +0 -201
  523. package/upload/buttons-upload/ButtonsUpload.js +0 -111
  524. package/upload/buttons-upload/Icons.js +0 -40
  525. package/upload/dragAndDropArea/DragAndDropArea.js +0 -225
  526. package/upload/dragAndDropArea/Icons.js +0 -39
  527. package/upload/file-upload/FileToUpload.js +0 -115
  528. package/upload/file-upload/Icons.js +0 -66
  529. package/upload/files-upload/FilesToUpload.js +0 -109
  530. package/upload/index.d.ts +0 -15
  531. package/upload/transaction/Icons.js +0 -160
  532. package/upload/transaction/Transaction.js +0 -104
  533. package/upload/transactions/Transactions.js +0 -94
  534. package/wizard/Icons.js +0 -65
  535. /package/{radio → action-icon}/types.js +0 -0
package/select/Select.js CHANGED
@@ -1,130 +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
- var _useTheme = _interopRequireDefault(require("../useTheme.js"));
25
-
26
- var _variables = require("../common/variables.js");
27
-
28
- var _uuid = require("uuid");
29
-
30
- var _utils = require("../common/utils.js");
31
-
32
- var _Checkbox = _interopRequireDefault(require("../checkbox/Checkbox"));
33
-
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;
35
-
36
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
37
-
38
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
39
-
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
- }))))
15
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
16
+ var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
17
+ var _variables = require("../common/variables");
18
+ var _utils = require("../common/utils");
19
+ var _Listbox = _interopRequireDefault(require("./Listbox"));
20
+ var Popover = _interopRequireWildcard(require("@radix-ui/react-popover"));
21
+ var _Icon = _interopRequireDefault(require("../icon/Icon"));
22
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17;
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;
119
27
  };
120
-
121
- var getNotOptionalErrorMessage = function getNotOptionalErrorMessage() {
122
- return "This field is required. Please, enter a value.";
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) {
33
+ var _groupOption$options;
34
+ return ((_groupOption$options = groupOption.options) === null || _groupOption$options === void 0 ? void 0 : _groupOption$options.length) > 0;
35
+ }) : true;
36
+ };
37
+ var canOpenOptions = function canOpenOptions(options, disabled) {
38
+ return !disabled && (options === null || options === void 0 ? void 0 : options.length) > 0 && groupsHaveOptions(options);
123
39
  };
124
-
125
40
  var filterOptionsBySearchValue = function filterOptionsBySearchValue(options, searchValue) {
126
41
  if ((options === null || options === void 0 ? void 0 : options.length) > 0) {
127
- if (options[0].options) return options.map(function (optionGroup) {
42
+ if (isArrayOfOptionGroups(options)) return options.map(function (optionGroup) {
128
43
  var group = {
129
44
  label: optionGroup.label,
130
45
  options: optionGroup.options.filter(function (option) {
@@ -137,53 +52,43 @@ var filterOptionsBySearchValue = function filterOptionsBySearchValue(options, se
137
52
  });
138
53
  }
139
54
  };
140
-
141
55
  var getLastOptionIndex = function getLastOptionIndex(options, filteredOptions, searchable, optional, multiple) {
142
56
  var last = 0;
143
-
144
57
  var reducer = function reducer(acc, current) {
145
58
  var _current$options;
146
-
147
59
  return acc + ((_current$options = current.options) === null || _current$options === void 0 ? void 0 : _current$options.length);
148
60
  };
149
-
150
- 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;
151
62
  return optional && !multiple ? last + 1 : last;
152
63
  };
153
-
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 ? [] : "";
64
+ var getSelectedOption = function getSelectedOption(value, options, multiple, optional, optionalItem) {
65
+ var selectedOption = multiple ? [] : {};
157
66
  var singleSelectionIndex;
158
-
159
67
  if (multiple) {
160
68
  if ((options === null || options === void 0 ? void 0 : options.length) > 0) {
161
69
  options.forEach(function (option) {
162
- if (option.options) {
163
- option.options.forEach(function (singleOption) {
164
- if (val.includes(singleOption.value)) selectedOption.push(singleOption);
165
- });
166
- } else if (val.includes(option.value)) 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);
167
73
  });
168
74
  }
169
75
  } else {
170
- if (optional && val === "") {
171
- selectedOption = optionalEmptyOption;
76
+ if (optional && value === "") {
77
+ selectedOption = optionalItem;
172
78
  singleSelectionIndex = 0;
173
79
  } else if ((options === null || options === void 0 ? void 0 : options.length) > 0) {
174
80
  var group_index = 0;
175
81
  options.some(function (option, index) {
176
- if (option.options) {
82
+ if (isOptionGroup(option)) {
177
83
  option.options.some(function (singleOption) {
178
- if (singleOption.value === val) {
84
+ if (singleOption.value === value) {
179
85
  selectedOption = singleOption;
180
86
  singleSelectionIndex = optional ? group_index + 1 : group_index;
181
87
  return true;
182
88
  }
183
-
184
89
  group_index++;
185
90
  });
186
- } else if (option.value === val) {
91
+ } else if (option.value === value) {
187
92
  selectedOption = option;
188
93
  singleSelectionIndex = optional ? index + 1 : index;
189
94
  return true;
@@ -191,76 +96,95 @@ var getSelectedOption = function getSelectedOption(options, multiple, optional,
191
96
  });
192
97
  }
193
98
  }
194
-
195
99
  return {
196
100
  selectedOption: selectedOption,
197
101
  singleSelectionIndex: singleSelectionIndex
198
102
  };
199
103
  };
200
-
201
- var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
104
+ var getSelectedOptionLabel = function getSelectedOptionLabel(placeholder, selectedOption) {
202
105
  var _selectedOption$label;
203
-
204
- var _ref$label = _ref.label,
205
- label = _ref$label === void 0 ? "" : _ref$label,
206
- _ref$name = _ref.name,
207
- name = _ref$name === void 0 ? "" : _ref$name,
208
- value = _ref.value,
209
- options = _ref.options,
210
- _ref$helperText = _ref.helperText,
211
- helperText = _ref$helperText === void 0 ? "" : _ref$helperText,
212
- _ref$placeholder = _ref.placeholder,
213
- placeholder = _ref$placeholder === void 0 ? "" : _ref$placeholder,
214
- _ref$disabled = _ref.disabled,
215
- disabled = _ref$disabled === void 0 ? false : _ref$disabled,
216
- _ref$optional = _ref.optional,
217
- optional = _ref$optional === void 0 ? false : _ref$optional,
218
- _ref$searchable = _ref.searchable,
219
- searchable = _ref$searchable === void 0 ? false : _ref$searchable,
220
- _ref$multiple = _ref.multiple,
221
- multiple = _ref$multiple === void 0 ? false : _ref$multiple,
222
- onChange = _ref.onChange,
223
- onBlur = _ref.onBlur,
224
- _ref$error = _ref.error,
225
- error = _ref$error === void 0 ? "" : _ref$error,
226
- margin = _ref.margin,
227
- _ref$size = _ref.size,
228
- size = _ref$size === void 0 ? "medium" : _ref$size,
229
- _ref$tabIndex = _ref.tabIndex,
230
- tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
231
-
232
- var _useState = (0, _react.useState)("select-".concat((0, _uuid.v4)())),
233
- _useState2 = (0, _slicedToArray2["default"])(_useState, 1),
234
- selectId = _useState2[0];
235
-
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
+ };
110
+ var notOptionalCheck = function notOptionalCheck(value, multiple, optional) {
111
+ return !optional && (multiple ? value.length === 0 : value === "");
112
+ };
113
+ var useWidth = function useWidth(target) {
114
+ var _useState = (0, _react.useState)(0),
115
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
116
+ width = _useState2[0],
117
+ setWidth = _useState2[1];
118
+ (0, _react.useEffect)(function () {
119
+ if (target != null) {
120
+ setWidth(target.getBoundingClientRect().width);
121
+ var triggerObserver = new ResizeObserver(function (entries) {
122
+ var rect = entries[0].target.getBoundingClientRect();
123
+ setWidth(rect === null || rect === void 0 ? void 0 : rect.width);
124
+ });
125
+ triggerObserver.observe(target);
126
+ return function () {
127
+ triggerObserver.unobserve(target);
128
+ };
129
+ }
130
+ }, [target]);
131
+ return width;
132
+ };
133
+ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
134
+ var _ref4;
135
+ var label = _ref.label,
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)());
236
161
  var selectLabelId = "label-".concat(selectId);
162
+ var searchableInputId = "searchable-input-".concat(selectId);
163
+ var errorId = "error-".concat(selectId);
237
164
  var optionsListId = "".concat(selectId, "-listbox");
238
-
239
- var _useState3 = (0, _react.useState)(multiple ? [] : ""),
240
- _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
241
- innerValue = _useState4[0],
242
- setInnerValue = _useState4[1];
243
-
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];
244
169
  var _useState5 = (0, _react.useState)(""),
245
- _useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
246
- searchValue = _useState6[0],
247
- setSearchValue = _useState6[1];
248
-
170
+ _useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
171
+ searchValue = _useState6[0],
172
+ setSearchValue = _useState6[1];
249
173
  var _useState7 = (0, _react.useState)(-1),
250
- _useState8 = (0, _slicedToArray2["default"])(_useState7, 2),
251
- visualFocusIndex = _useState8[0],
252
- changeVisualFocusIndex = _useState8[1];
253
-
174
+ _useState8 = (0, _slicedToArray2["default"])(_useState7, 2),
175
+ visualFocusIndex = _useState8[0],
176
+ changeVisualFocusIndex = _useState8[1];
254
177
  var _useState9 = (0, _react.useState)(false),
255
- _useState10 = (0, _slicedToArray2["default"])(_useState9, 2),
256
- isOpen = _useState10[0],
257
- changeIsOpen = _useState10[1];
258
-
259
- var selectContainerRef = (0, _react.useRef)(null);
178
+ _useState10 = (0, _slicedToArray2["default"])(_useState9, 2),
179
+ isOpen = _useState10[0],
180
+ changeIsOpen = _useState10[1];
181
+ var selectRef = (0, _react.useRef)(null);
260
182
  var selectSearchInputRef = (0, _react.useRef)(null);
261
- var selectOptionsListRef = (0, _react.useRef)(null);
183
+ var selectedOptionLabelRef = (0, _react.useRef)(null);
184
+ var width = useWidth(selectRef.current);
262
185
  var colorsTheme = (0, _useTheme["default"])();
263
- var optionalEmptyOption = {
186
+ var translatedLabels = (0, _useTranslatedLabels["default"])();
187
+ var optionalItem = {
264
188
  label: placeholder,
265
189
  value: ""
266
190
  };
@@ -269,147 +193,92 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
269
193
  }, [options, searchValue]);
270
194
  var lastOptionIndex = (0, _react.useMemo)(function () {
271
195
  return getLastOptionIndex(options, filteredOptions, searchable, optional, multiple);
272
- }, [searchable, optional, multiple, filteredOptions, options]);
273
-
196
+ }, [options, filteredOptions, searchable, optional, multiple]);
274
197
  var _useMemo = (0, _react.useMemo)(function () {
275
- return getSelectedOption(options, multiple, optional, optionalEmptyOption, value, innerValue);
276
- }, [options, multiple, optional, value, innerValue]),
277
- selectedOption = _useMemo.selectedOption,
278
- singleSelectionIndex = _useMemo.singleSelectionIndex;
279
-
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
-
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;
306
202
  var openOptions = function openOptions() {
307
- if (!isOpen && canBeOpenOptions()) changeIsOpen(true);
203
+ if (!isOpen && canOpenOptions(options, disabled)) changeIsOpen(true);
308
204
  };
309
-
310
205
  var closeOptions = function closeOptions() {
311
206
  if (isOpen) {
312
207
  changeIsOpen(false);
313
208
  changeVisualFocusIndex(-1);
314
209
  }
315
210
  };
316
-
317
211
  var handleSelectChangeValue = function handleSelectChangeValue(newOption) {
212
+ var newValue;
318
213
  if (multiple) {
319
- var _res, _res2;
320
-
321
- var res;
322
- if ((value !== null && value !== void 0 ? value : innerValue).includes(newOption.value)) value ? res = value.filter(function (optionVal) {
214
+ var _ref2, _ref3;
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) {
323
216
  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
- }
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]);
218
+ } else newValue = newOption.value;
219
+ value !== null && value !== void 0 ? value : setInnerValue(newValue);
220
+ notOptionalCheck(newValue, multiple, optional) ? onChange === null || onChange === void 0 ? void 0 : onChange({
221
+ value: newValue,
222
+ error: translatedLabels.formFields.requiredValueErrorMessage
223
+ }) : onChange === null || onChange === void 0 ? void 0 : onChange({
224
+ value: newValue
225
+ });
348
226
  };
349
-
350
227
  var handleSelectOnClick = function handleSelectOnClick() {
351
228
  searchable && selectSearchInputRef.current.focus();
352
-
353
229
  if (isOpen) {
354
230
  closeOptions();
355
231
  setSearchValue("");
356
232
  } else openOptions();
357
233
  };
358
-
359
234
  var handleSelectOnFocus = function handleSelectOnFocus(event) {
360
235
  if (!event.currentTarget.contains(event.relatedTarget)) searchable && selectSearchInputRef.current.focus();
361
236
  };
362
-
363
237
  var handleSelectOnBlur = function handleSelectOnBlur(event) {
364
- // focus leaves container (outside, not to childs)
238
+ // focus leaves container (outside, not to a child)
365
239
  if (!event.currentTarget.contains(event.relatedTarget)) {
366
240
  closeOptions();
367
241
  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
242
+ var currentValue = value !== null && value !== void 0 ? value : innerValue;
243
+ notOptionalCheck(currentValue, multiple, optional) ? onBlur === null || onBlur === void 0 ? void 0 : onBlur({
244
+ value: currentValue,
245
+ error: translatedLabels.formFields.requiredValueErrorMessage
246
+ }) : onBlur === null || onBlur === void 0 ? void 0 : onBlur({
247
+ value: currentValue
374
248
  });
375
249
  }
376
250
  };
377
-
378
251
  var handleSelectOnKeyDown = function handleSelectOnKeyDown(event) {
379
- switch (event.keyCode) {
380
- case 40:
381
- // Arrow Down
252
+ switch (event.key) {
253
+ case "Down":
254
+ case "ArrowDown":
382
255
  event.preventDefault();
383
256
  singleSelectionIndex !== undefined && (!isOpen || visualFocusIndex === -1 && singleSelectionIndex > -1 && singleSelectionIndex <= lastOptionIndex) ? changeVisualFocusIndex(singleSelectionIndex) : changeVisualFocusIndex(function (visualFocusIndex) {
384
257
  if (visualFocusIndex < lastOptionIndex) return visualFocusIndex + 1;else if (visualFocusIndex === lastOptionIndex) return 0;
385
258
  });
386
259
  openOptions();
387
260
  break;
388
-
389
- case 38:
390
- // Arrow Up
261
+ case "Up":
262
+ case "ArrowUp":
391
263
  event.preventDefault();
392
264
  singleSelectionIndex !== undefined && (!isOpen || visualFocusIndex === -1 && singleSelectionIndex > -1 && singleSelectionIndex <= lastOptionIndex) ? changeVisualFocusIndex(singleSelectionIndex) : changeVisualFocusIndex(function (visualFocusIndex) {
393
265
  return visualFocusIndex === 0 || visualFocusIndex === -1 ? lastOptionIndex : visualFocusIndex - 1;
394
266
  });
395
267
  openOptions();
396
268
  break;
397
-
398
- case 27:
399
- // Esc
269
+ case "Esc":
270
+ case "Escape":
400
271
  event.preventDefault();
272
+ isOpen && event.stopPropagation();
401
273
  closeOptions();
402
274
  setSearchValue("");
403
275
  break;
404
-
405
- case 13:
406
- // Enter
276
+ case "Enter":
407
277
  if (isOpen && visualFocusIndex >= 0) {
408
278
  var accLength = optional && !multiple ? 1 : 0;
409
-
410
279
  if (searchable) {
411
280
  if (filteredOptions.length > 0) {
412
- if (optional && !multiple && visualFocusIndex === 0 && filteredGroupsHaveOptions()) handleSelectChangeValue(optionalEmptyOption);else filteredOptions[0].options ? filteredGroupsHaveOptions() && filteredOptions.some(function (groupOption) {
281
+ if (optional && !multiple && visualFocusIndex === 0 && groupsHaveOptions(filteredOptions)) handleSelectChangeValue(optionalItem);else isArrayOfOptionGroups(filteredOptions) ? groupsHaveOptions(filteredOptions) && filteredOptions.some(function (groupOption) {
413
282
  var groupLength = accLength + groupOption.options.length;
414
283
  groupLength > visualFocusIndex && handleSelectChangeValue(groupOption.options[visualFocusIndex - accLength]);
415
284
  accLength = groupLength;
@@ -417,147 +286,70 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
417
286
  }) : handleSelectChangeValue(filteredOptions[visualFocusIndex - accLength]);
418
287
  }
419
288
  } else {
420
- if (optional && !multiple && visualFocusIndex === 0) handleSelectChangeValue(optionalEmptyOption);else options[0].options ? options.some(function (groupOption) {
289
+ if (optional && !multiple && visualFocusIndex === 0) handleSelectChangeValue(optionalItem);else isArrayOfOptionGroups(options) ? options.some(function (groupOption) {
421
290
  var groupLength = accLength + groupOption.options.length;
422
291
  groupLength > visualFocusIndex && handleSelectChangeValue(groupOption.options[visualFocusIndex - accLength]);
423
292
  accLength = groupLength;
424
293
  return groupLength > visualFocusIndex;
425
294
  }) : handleSelectChangeValue(options[visualFocusIndex - accLength]);
426
295
  }
427
-
428
296
  !multiple && closeOptions();
429
297
  setSearchValue("");
430
298
  }
431
-
432
299
  break;
433
300
  }
434
301
  };
435
-
436
302
  var handleSearchIOnChange = function handleSearchIOnChange(event) {
437
303
  setSearchValue(event.target.value);
438
304
  changeVisualFocusIndex(-1);
439
305
  openOptions();
440
306
  };
441
-
442
307
  var handleClearOptionsActionOnClick = function handleClearOptionsActionOnClick(event) {
443
308
  event.stopPropagation();
444
309
  value !== null && value !== void 0 ? value : setInnerValue([]);
445
- onChange === null || onChange === void 0 ? void 0 : onChange({
310
+ !optional ? onChange === null || onChange === void 0 ? void 0 : onChange({
446
311
  value: [],
447
- error: getNotOptionalErrorMessage()
312
+ error: translatedLabels.formFields.requiredValueErrorMessage
313
+ }) : onChange === null || onChange === void 0 ? void 0 : onChange({
314
+ value: []
448
315
  });
449
316
  };
450
-
451
317
  var handleClearSearchActionOnClick = function handleClearSearchActionOnClick(event) {
452
318
  event.stopPropagation();
453
319
  setSearchValue("");
454
320
  };
455
-
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
- });
321
+ var handleOptionOnClick = (0, _react.useCallback)(function (option) {
322
+ handleSelectChangeValue(option);
323
+ !multiple && closeOptions();
324
+ setSearchValue("");
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 = "";
543
329
  }
544
- };
545
-
330
+ }, [placeholder, selectedOption]);
546
331
  return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
547
332
  theme: colorsTheme.select
548
333
  }, /*#__PURE__*/_react["default"].createElement(SelectContainer, {
549
334
  margin: margin,
550
335
  size: size,
551
336
  ref: ref
552
- }, /*#__PURE__*/_react["default"].createElement(Label, {
337
+ }, label && /*#__PURE__*/_react["default"].createElement(Label, {
553
338
  id: selectLabelId,
554
339
  disabled: disabled,
555
340
  onClick: function onClick() {
556
- selectContainerRef.current.focus();
557
- }
558
- }, label, " ", optional && /*#__PURE__*/_react["default"].createElement(OptionalLabel, null, "(Optional)")), /*#__PURE__*/_react["default"].createElement(HelperText, {
341
+ selectRef.current.focus();
342
+ },
343
+ helperText: helperText,
344
+ htmlFor: searchable ? searchableInputId : undefined
345
+ }, label, " ", optional && /*#__PURE__*/_react["default"].createElement(OptionalLabel, null, translatedLabels.formFields.optionalLabel)), helperText && /*#__PURE__*/_react["default"].createElement(HelperText, {
559
346
  disabled: disabled
560
- }, helperText), /*#__PURE__*/_react["default"].createElement(Select, {
347
+ }, helperText), /*#__PURE__*/_react["default"].createElement(Popover.Root, {
348
+ open: isOpen
349
+ }, /*#__PURE__*/_react["default"].createElement(Popover.Trigger, {
350
+ asChild: true,
351
+ type: undefined
352
+ }, /*#__PURE__*/_react["default"].createElement(Select, {
561
353
  id: selectId,
562
354
  disabled: disabled,
563
355
  error: error,
@@ -565,17 +357,19 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
565
357
  onClick: handleSelectOnClick,
566
358
  onFocus: handleSelectOnFocus,
567
359
  onKeyDown: handleSelectOnKeyDown,
568
- ref: selectContainerRef,
569
- tabIndex: tabIndex,
360
+ ref: selectRef,
361
+ tabIndex: disabled ? -1 : tabIndex,
570
362
  role: "combobox",
571
363
  "aria-controls": optionsListId,
364
+ "aria-disabled": disabled,
572
365
  "aria-expanded": isOpen,
573
366
  "aria-haspopup": "listbox",
574
- "aria-labelledby": selectLabelId,
367
+ "aria-labelledby": label ? selectLabelId : undefined,
575
368
  "aria-activedescendant": visualFocusIndex >= 0 ? "option-".concat(visualFocusIndex) : undefined,
576
- "aria-invalid": error ? "true" : "false",
577
- "aria-required": !optional
578
- }, multiple && selectedOption.length > 0 && /*#__PURE__*/_react["default"].createElement(SelectionIndicator, null, /*#__PURE__*/_react["default"].createElement(SelectionNumber, {
369
+ "aria-invalid": error ? true : false,
370
+ "aria-errormessage": error ? errorId : undefined,
371
+ "aria-required": !disabled && !optional
372
+ }, multiple && Array.isArray(selectedOption) && selectedOption.length > 0 && /*#__PURE__*/_react["default"].createElement(SelectionIndicator, null, /*#__PURE__*/_react["default"].createElement(SelectionNumber, {
579
373
  disabled: disabled
580
374
  }, selectedOption.length), /*#__PURE__*/_react["default"].createElement(ClearOptionsAction, {
581
375
  disabled: disabled,
@@ -585,68 +379,89 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
585
379
  },
586
380
  onClick: handleClearOptionsActionOnClick,
587
381
  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, {
382
+ title: translatedLabels.select.actionClearSelectionTitle,
383
+ "aria-label": translatedLabels.select.actionClearSelectionTitle
384
+ }, /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
385
+ icon: "clear"
386
+ }))), /*#__PURE__*/_react["default"].createElement(SearchableValueContainer, null, /*#__PURE__*/_react["default"].createElement(ValueInput, {
591
387
  name: name,
592
- value: multiple ? (value !== null && value !== void 0 ? value : innerValue).join(", ") : value !== null && value !== void 0 ? value : innerValue,
388
+ disabled: disabled,
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,
593
390
  readOnly: true,
594
391
  "aria-hidden": "true"
595
392
  }), searchable && /*#__PURE__*/_react["default"].createElement(SearchInput, {
393
+ id: searchableInputId,
596
394
  value: searchValue,
597
395
  disabled: disabled,
598
396
  onChange: handleSearchIOnChange,
599
397
  ref: selectSearchInputRef,
600
- autoComplete: "off",
601
- autoCorrect: "off",
602
- size: "1"
603
- }), (!searchable || searchValue === "") && (multiple ? /*#__PURE__*/_react["default"].createElement(SelectedOption, {
604
- disabled: disabled,
605
- atBackground: (value !== null && value !== void 0 ? value : innerValue).length === 0 || searchable && isOpen
606
- }, /*#__PURE__*/_react["default"].createElement(OptionLabel, null, selectedOption.map(function (option) {
607
- return option.label;
608
- }).join(", ")), selectedOption.length === 0 && placeholder) : /*#__PURE__*/_react["default"].createElement(SelectedOption, {
398
+ autoComplete: "nope",
399
+ autoCorrect: "nope",
400
+ size: 1
401
+ }), (!searchable || searchValue === "") && /*#__PURE__*/_react["default"].createElement(SelectedOption, {
609
402
  disabled: disabled,
610
- 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, {
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, {
612
409
  onMouseDown: function onMouseDown(event) {
613
410
  // Avoid input to lose focus
614
411
  event.preventDefault();
615
412
  },
616
413
  onClick: handleClearSearchActionOnClick,
617
414
  tabIndex: -1,
618
- title: "Clear search text",
619
- "aria-label": "Clear search text"
620
- }, selectIcons.clear), /*#__PURE__*/_react["default"].createElement(CollapseIndicator, {
415
+ title: translatedLabels.select.actionClearSearchTitle,
416
+ "aria-label": translatedLabels.select.actionClearSearchTitle
417
+ }, /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
418
+ icon: "clear"
419
+ })), /*#__PURE__*/_react["default"].createElement(CollapseIndicator, {
621
420
  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();
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, {
424
+ sideOffset: 4,
425
+ style: {
426
+ zIndex: "2147483647"
626
427
  },
627
- onMouseDown: function onMouseDown(event) {
428
+ onOpenAutoFocus: function onOpenAutoFocus(event) {
429
+ // Avoid select to lose focus when the list is opened
628
430
  event.preventDefault();
629
431
  },
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)));
432
+ onCloseAutoFocus: function onCloseAutoFocus(event) {
433
+ // Avoid select to lose focus when the list is closed
434
+ event.preventDefault();
435
+ }
436
+ }, /*#__PURE__*/_react["default"].createElement(_Listbox["default"], {
437
+ id: optionsListId,
438
+ currentValue: value !== null && value !== void 0 ? value : innerValue,
439
+ options: searchable ? filteredOptions : options,
440
+ visualFocusIndex: visualFocusIndex,
441
+ lastOptionIndex: lastOptionIndex,
442
+ multiple: multiple,
443
+ optional: optional,
444
+ optionalItem: optionalItem,
445
+ searchable: searchable,
446
+ handleOptionOnClick: handleOptionOnClick,
447
+ styles: {
448
+ width: width
449
+ }
450
+ })))), !disabled && typeof error === "string" && /*#__PURE__*/_react["default"].createElement(Error, {
451
+ id: errorId,
452
+ role: "alert",
453
+ "aria-live": error ? "assertive" : "off"
454
+ }, error)));
637
455
  });
638
-
639
456
  var sizes = {
640
457
  small: "240px",
641
458
  medium: "360px",
642
459
  large: "480px",
643
460
  fillParent: "100%"
644
461
  };
645
-
646
462
  var calculateWidth = function calculateWidth(margin, size) {
647
463
  return size === "fillParent" ? "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")") : sizes[size];
648
464
  };
649
-
650
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) {
651
466
  return calculateWidth(props.margin, props.size);
652
467
  }, function (props) {
@@ -660,8 +475,7 @@ var SelectContainer = _styledComponents["default"].div(_templateObject || (_temp
660
475
  }, function (props) {
661
476
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
662
477
  });
663
-
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) {
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) {
665
479
  return props.disabled ? props.theme.disabledColor : props.theme.labelFontColor;
666
480
  }, function (props) {
667
481
  return props.theme.fontFamily;
@@ -673,13 +487,13 @@ var Label = _styledComponents["default"].span(_templateObject2 || (_templateObje
673
487
  return props.theme.labelFontWeight;
674
488
  }, function (props) {
675
489
  return props.theme.labelLineHeight;
490
+ }, function (props) {
491
+ return !props.helperText && "margin-bottom: 0.25rem";
676
492
  });
677
-
678
493
  var OptionalLabel = _styledComponents["default"].span(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n font-weight: ", ";\n"])), function (props) {
679
494
  return props.theme.optionalLabelFontWeight;
680
495
  });
681
-
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) {
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) {
683
497
  return props.disabled ? props.theme.disabledColor : props.theme.helperTextFontColor;
684
498
  }, function (props) {
685
499
  return props.theme.fontFamily;
@@ -692,10 +506,7 @@ var HelperText = _styledComponents["default"].span(_templateObject4 || (_templat
692
506
  }, function (props) {
693
507
  return props.theme.helperTextLineHeight;
694
508
  });
695
-
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) {
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) {
699
510
  return props.disabled && "background-color: ".concat(props.theme.disabledInputBackgroundColor);
700
511
  }, function (props) {
701
512
  return props.disabled ? props.theme.disabledInputBorderColor : props.theme.enabledInputBorderColor;
@@ -706,11 +517,9 @@ var Select = _styledComponents["default"].div(_templateObject5 || (_templateObje
706
517
  }, function (props) {
707
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 ");
708
519
  });
709
-
710
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) {
711
521
  return props.theme.selectionIndicatorBorderColor;
712
522
  });
713
-
714
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) {
715
524
  return !props.disabled && "background-color: ".concat(props.theme.selectionIndicatorBackgroundColor);
716
525
  }, function (props) {
@@ -728,10 +537,7 @@ var SelectionNumber = _styledComponents["default"].span(_templateObject7 || (_te
728
537
  }, function (props) {
729
538
  return props.disabled ? "cursor: not-allowed;" : "cursor: default;";
730
539
  });
731
-
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) {
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) {
735
541
  return props.disabled ? "cursor: not-allowed;" : "cursor: pointer;";
736
542
  }, function (props) {
737
543
  return props.disabled ? "transparent" : props.theme.enabledSelectionIndicatorActionBackgroundColor;
@@ -740,9 +546,7 @@ var ClearOptionsAction = _styledComponents["default"].button(_templateObject8 ||
740
546
  }, function (props) {
741
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 ");
742
548
  });
743
-
744
549
  var SearchableValueContainer = _styledComponents["default"].div(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n display: grid;\n width: 100%;\n"])));
745
-
746
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) {
747
551
  if (props.disabled) return props.theme.disabledColor;else if (props.atBackground) return props.theme.placeholderFontColor;else return props.theme.valueFontColor;
748
552
  }, function (props) {
@@ -754,10 +558,9 @@ var SelectedOption = _styledComponents["default"].span(_templateObject10 || (_te
754
558
  }, function (props) {
755
559
  return props.theme.valueFontWeight;
756
560
  });
757
-
758
- var ValueInput = _styledComponents["default"].input(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2["default"])(["\n display: none;\n"])));
759
-
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) {
561
+ var SelectedOptionLabel = _styledComponents["default"].span(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2["default"])(["\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n"])));
562
+ var ValueInput = _styledComponents["default"].input(_templateObject12 || (_templateObject12 = (0, _taggedTemplateLiteral2["default"])(["\n display: none;\n"])));
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) {
761
564
  return props.disabled ? props.theme.disabledColor : props.theme.valueFontColor;
762
565
  }, function (props) {
763
566
  return props.theme.fontFamily;
@@ -768,22 +571,18 @@ var SearchInput = _styledComponents["default"].input(_templateObject12 || (_temp
768
571
  }, function (props) {
769
572
  return props.theme.valueFontWeight;
770
573
  });
771
-
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) {
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) {
773
575
  return props.theme.errorIconColor;
774
576
  });
775
-
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) {
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) {
777
578
  return props.theme.errorMessageColor;
778
579
  }, function (props) {
779
580
  return props.theme.fontFamily;
780
581
  });
781
-
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) {
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) {
783
583
  return props.disabled ? props.theme.disabledColor : props.theme.collapseIndicatorColor;
784
584
  });
785
-
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) {
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) {
787
586
  return props.theme.fontFamily;
788
587
  }, function (props) {
789
588
  return props.theme.actionBackgroundColor;
@@ -798,68 +597,4 @@ var ClearSearchAction = _styledComponents["default"].button(_templateObject16 ||
798
597
  }, function (props) {
799
598
  return props.theme.activeActionIconColor;
800
599
  });
801
-
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
- var _default = DxcSelect;
865
- exports["default"] = _default;
600
+ var _default = exports["default"] = DxcSelect;