@dxc-technology/halstack-react 0.0.0-dfcca07 → 0.0.0-e01c6f9

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