@dxc-technology/halstack-react 0.0.0-c1c5f49 → 0.0.0-c2834c3

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 (240) hide show
  1. package/BackgroundColorContext.d.ts +10 -0
  2. package/BackgroundColorContext.js +1 -4
  3. package/HalstackContext.d.ts +12 -0
  4. package/HalstackContext.js +298 -0
  5. package/accordion/Accordion.d.ts +1 -1
  6. package/accordion/Accordion.js +15 -47
  7. package/accordion/Accordion.stories.tsx +307 -0
  8. package/accordion/Accordion.test.js +72 -0
  9. package/accordion/types.d.ts +8 -8
  10. package/accordion-group/AccordionGroup.d.ts +1 -1
  11. package/accordion-group/AccordionGroup.js +15 -17
  12. package/accordion-group/AccordionGroup.stories.tsx +225 -0
  13. package/accordion-group/AccordionGroup.test.js +151 -0
  14. package/accordion-group/types.d.ts +8 -8
  15. package/alert/Alert.js +6 -3
  16. package/alert/Alert.test.js +92 -0
  17. package/badge/Badge.d.ts +4 -0
  18. package/badge/Badge.js +1 -1
  19. package/badge/types.d.ts +4 -0
  20. package/badge/types.js +5 -0
  21. package/bleed/Bleed.d.ts +3 -0
  22. package/bleed/Bleed.js +84 -0
  23. package/bleed/Bleed.stories.tsx +342 -0
  24. package/bleed/types.d.ts +37 -0
  25. package/bleed/types.js +5 -0
  26. package/box/Box.js +2 -2
  27. package/box/Box.test.js +18 -0
  28. package/button/Button.d.ts +1 -1
  29. package/button/Button.js +21 -26
  30. package/button/Button.stories.tsx +6 -8
  31. package/button/Button.test.js +35 -0
  32. package/button/types.d.ts +3 -7
  33. package/card/Card.js +28 -29
  34. package/card/Card.stories.tsx +1 -1
  35. package/card/Card.test.js +50 -0
  36. package/checkbox/Checkbox.d.ts +1 -1
  37. package/checkbox/Checkbox.js +45 -41
  38. package/checkbox/Checkbox.stories.tsx +124 -128
  39. package/checkbox/Checkbox.test.js +78 -0
  40. package/checkbox/types.d.ts +8 -4
  41. package/chip/Chip.d.ts +4 -0
  42. package/chip/Chip.js +16 -76
  43. package/chip/Chip.stories.tsx +6 -8
  44. package/chip/Chip.test.js +56 -0
  45. package/chip/types.d.ts +45 -0
  46. package/chip/types.js +5 -0
  47. package/common/variables.js +233 -327
  48. package/date-input/DateInput.js +63 -52
  49. package/date-input/DateInput.stories.tsx +7 -7
  50. package/date-input/DateInput.test.js +479 -0
  51. package/date-input/types.d.ts +16 -9
  52. package/dialog/Dialog.js +8 -35
  53. package/dialog/Dialog.test.js +40 -0
  54. package/dropdown/Dropdown.d.ts +1 -1
  55. package/dropdown/Dropdown.js +22 -48
  56. package/dropdown/Dropdown.stories.tsx +249 -0
  57. package/dropdown/Dropdown.test.js +189 -0
  58. package/dropdown/types.d.ts +6 -15
  59. package/file-input/FileInput.d.ts +1 -1
  60. package/file-input/FileInput.js +153 -71
  61. package/file-input/FileInput.stories.tsx +507 -0
  62. package/file-input/FileInput.test.js +457 -0
  63. package/file-input/FileItem.js +10 -8
  64. package/file-input/types.d.ts +32 -7
  65. package/footer/Footer.d.ts +1 -1
  66. package/footer/Footer.js +32 -113
  67. package/footer/{Footer.stories.jsx → Footer.stories.tsx} +1 -22
  68. package/footer/Footer.test.js +109 -0
  69. package/footer/Icons.d.ts +2 -0
  70. package/footer/Icons.js +3 -3
  71. package/footer/types.d.ts +21 -17
  72. package/header/Header.js +29 -50
  73. package/header/Header.stories.tsx +46 -36
  74. package/header/Header.test.js +79 -0
  75. package/header/Icons.d.ts +2 -0
  76. package/heading/Heading.js +1 -1
  77. package/heading/Heading.stories.tsx +3 -2
  78. package/heading/Heading.test.js +186 -0
  79. package/inset/Inset.d.ts +3 -0
  80. package/inset/Inset.js +84 -0
  81. package/inset/Inset.stories.tsx +229 -0
  82. package/inset/types.d.ts +37 -0
  83. package/inset/types.js +5 -0
  84. package/layout/ApplicationLayout.d.ts +10 -0
  85. package/layout/ApplicationLayout.js +14 -31
  86. package/layout/ApplicationLayout.stories.tsx +171 -0
  87. package/layout/types.d.ts +57 -0
  88. package/layout/types.js +5 -0
  89. package/link/Link.d.ts +3 -2
  90. package/link/Link.js +71 -70
  91. package/link/Link.stories.tsx +91 -51
  92. package/link/Link.test.js +83 -0
  93. package/link/types.d.ts +10 -29
  94. package/list/List.d.ts +4 -0
  95. package/list/List.js +47 -0
  96. package/list/List.stories.tsx +95 -0
  97. package/list/types.d.ts +7 -0
  98. package/list/types.js +5 -0
  99. package/main.d.ts +11 -8
  100. package/main.js +68 -38
  101. package/number-input/NumberInput.js +14 -24
  102. package/number-input/NumberInput.stories.tsx +5 -5
  103. package/number-input/NumberInput.test.js +506 -0
  104. package/number-input/types.d.ts +17 -10
  105. package/package.json +9 -6
  106. package/paginator/Paginator.js +19 -46
  107. package/paginator/Paginator.test.js +266 -0
  108. package/password-input/PasswordInput.js +19 -17
  109. package/password-input/PasswordInput.stories.tsx +3 -3
  110. package/password-input/PasswordInput.test.js +180 -0
  111. package/password-input/types.d.ts +14 -11
  112. package/progress-bar/ProgressBar.js +4 -4
  113. package/progress-bar/ProgressBar.test.js +65 -0
  114. package/quick-nav/QuickNav.d.ts +4 -0
  115. package/quick-nav/QuickNav.js +116 -0
  116. package/quick-nav/QuickNav.stories.tsx +237 -0
  117. package/quick-nav/types.d.ts +21 -0
  118. package/quick-nav/types.js +5 -0
  119. package/radio/Radio.js +12 -13
  120. package/radio/Radio.test.js +71 -0
  121. package/radio-group/Radio.d.ts +4 -0
  122. package/radio-group/Radio.js +141 -0
  123. package/radio-group/RadioGroup.d.ts +4 -0
  124. package/radio-group/RadioGroup.js +282 -0
  125. package/radio-group/RadioGroup.stories.tsx +100 -0
  126. package/radio-group/RadioGroup.test.js +695 -0
  127. package/radio-group/types.d.ts +114 -0
  128. package/radio-group/types.js +5 -0
  129. package/resultsetTable/ResultsetTable.js +6 -3
  130. package/resultsetTable/ResultsetTable.stories.tsx +275 -0
  131. package/resultsetTable/ResultsetTable.test.js +306 -0
  132. package/resultsetTable/types.d.ts +2 -2
  133. package/row/Row.d.ts +3 -0
  134. package/row/Row.js +127 -0
  135. package/row/Row.stories.tsx +237 -0
  136. package/row/types.d.ts +28 -0
  137. package/row/types.js +5 -0
  138. package/select/Icons.d.ts +10 -0
  139. package/select/Icons.js +93 -0
  140. package/select/Listbox.d.ts +4 -0
  141. package/select/Listbox.js +152 -0
  142. package/select/Option.d.ts +4 -0
  143. package/select/Option.js +110 -0
  144. package/select/Select.d.ts +4 -0
  145. package/select/Select.js +110 -321
  146. package/select/Select.stories.tsx +103 -81
  147. package/select/Select.test.js +2057 -0
  148. package/select/types.d.ts +213 -0
  149. package/select/types.js +5 -0
  150. package/sidenav/Sidenav.js +2 -2
  151. package/sidenav/Sidenav.stories.tsx +18 -1
  152. package/sidenav/Sidenav.test.js +56 -0
  153. package/slider/Slider.d.ts +1 -1
  154. package/slider/Slider.js +4 -3
  155. package/slider/Slider.stories.tsx +8 -8
  156. package/slider/Slider.test.js +150 -0
  157. package/slider/types.d.ts +4 -0
  158. package/spinner/Spinner.js +3 -3
  159. package/spinner/Spinner.stories.jsx +1 -0
  160. package/spinner/Spinner.test.js +64 -0
  161. package/stack/Stack.d.ts +3 -0
  162. package/stack/Stack.js +97 -0
  163. package/stack/Stack.stories.tsx +164 -0
  164. package/stack/types.d.ts +24 -0
  165. package/stack/types.js +5 -0
  166. package/switch/Switch.d.ts +1 -1
  167. package/switch/Switch.js +37 -21
  168. package/switch/Switch.stories.tsx +15 -15
  169. package/switch/Switch.test.js +98 -0
  170. package/switch/types.d.ts +6 -2
  171. package/table/Table.js +2 -2
  172. package/table/Table.stories.jsx +2 -1
  173. package/table/Table.test.js +26 -0
  174. package/tabs/Tabs.d.ts +1 -1
  175. package/tabs/Tabs.js +17 -19
  176. package/tabs/Tabs.stories.tsx +7 -16
  177. package/tabs/Tabs.test.js +140 -0
  178. package/tabs/types.d.ts +27 -15
  179. package/tag/Tag.d.ts +1 -1
  180. package/tag/Tag.js +18 -28
  181. package/tag/Tag.stories.tsx +26 -29
  182. package/tag/Tag.test.js +60 -0
  183. package/tag/types.d.ts +23 -14
  184. package/text/Text.d.ts +7 -0
  185. package/text/Text.js +30 -0
  186. package/text/Text.stories.tsx +19 -0
  187. package/text-input/Suggestion.d.ts +4 -0
  188. package/text-input/Suggestion.js +55 -0
  189. package/text-input/TextInput.js +82 -98
  190. package/text-input/TextInput.stories.tsx +34 -16
  191. package/text-input/TextInput.test.js +1712 -0
  192. package/text-input/types.d.ts +32 -13
  193. package/textarea/Textarea.d.ts +4 -0
  194. package/textarea/Textarea.js +34 -73
  195. package/textarea/Textarea.stories.jsx +37 -15
  196. package/textarea/Textarea.test.js +437 -0
  197. package/textarea/types.d.ts +137 -0
  198. package/textarea/types.js +5 -0
  199. package/toggle-group/ToggleGroup.d.ts +1 -1
  200. package/toggle-group/ToggleGroup.js +15 -17
  201. package/toggle-group/ToggleGroup.stories.tsx +27 -32
  202. package/toggle-group/ToggleGroup.test.js +156 -0
  203. package/toggle-group/types.d.ts +47 -26
  204. package/useTheme.d.ts +2 -0
  205. package/useTheme.js +2 -2
  206. package/useTranslatedLabels.d.ts +2 -0
  207. package/useTranslatedLabels.js +20 -0
  208. package/wizard/Wizard.d.ts +1 -1
  209. package/wizard/Wizard.js +107 -46
  210. package/wizard/{Wizard.stories.jsx → Wizard.stories.tsx} +13 -23
  211. package/wizard/Wizard.test.js +141 -0
  212. package/wizard/types.d.ts +9 -9
  213. package/ThemeContext.js +0 -246
  214. package/V3Select/V3Select.js +0 -455
  215. package/V3Select/index.d.ts +0 -27
  216. package/V3Textarea/V3Textarea.js +0 -260
  217. package/V3Textarea/index.d.ts +0 -27
  218. package/chip/index.d.ts +0 -22
  219. package/date/Date.js +0 -373
  220. package/date/index.d.ts +0 -27
  221. package/input-text/Icons.js +0 -22
  222. package/input-text/InputText.js +0 -611
  223. package/input-text/index.d.ts +0 -36
  224. package/select/index.d.ts +0 -131
  225. package/textarea/index.d.ts +0 -127
  226. package/toggle/Toggle.js +0 -186
  227. package/toggle/index.d.ts +0 -21
  228. package/upload/Upload.js +0 -201
  229. package/upload/buttons-upload/ButtonsUpload.js +0 -111
  230. package/upload/buttons-upload/Icons.js +0 -40
  231. package/upload/dragAndDropArea/DragAndDropArea.js +0 -225
  232. package/upload/dragAndDropArea/Icons.js +0 -39
  233. package/upload/file-upload/FileToUpload.js +0 -115
  234. package/upload/file-upload/Icons.js +0 -66
  235. package/upload/files-upload/FilesToUpload.js +0 -109
  236. package/upload/index.d.ts +0 -15
  237. package/upload/transaction/Icons.js +0 -160
  238. package/upload/transaction/Transaction.js +0 -104
  239. package/upload/transactions/Transactions.js +0 -94
  240. package/wizard/Icons.js +0 -65
package/select/Select.js CHANGED
@@ -21,7 +21,9 @@ var _react = _interopRequireWildcard(require("react"));
21
21
 
22
22
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
23
23
 
24
- var _useTheme = _interopRequireDefault(require("../useTheme.js"));
24
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
25
+
26
+ var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
25
27
 
26
28
  var _variables = require("../common/variables.js");
27
29
 
@@ -29,97 +31,28 @@ var _uuid = require("uuid");
29
31
 
30
32
  var _utils = require("../common/utils.js");
31
33
 
32
- var _Checkbox = _interopRequireDefault(require("../checkbox/Checkbox"));
34
+ var _Icons = _interopRequireDefault(require("./Icons"));
35
+
36
+ var _Listbox = _interopRequireDefault(require("./Listbox"));
33
37
 
34
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17, _templateObject18, _templateObject19, _templateObject20, _templateObject21, _templateObject22, _templateObject23, _templateObject24, _templateObject25, _templateObject26, _templateObject27, _templateObject28;
38
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17;
35
39
 
36
40
  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
41
 
38
42
  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
43
 
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
- }))))
44
+ var groupsHaveOptions = function groupsHaveOptions(innerOptions) {
45
+ return innerOptions[0].hasOwnProperty("options") ? innerOptions[0].options ? innerOptions.some(function (groupOption) {
46
+ return groupOption.options.length > 0;
47
+ }) : false : true;
119
48
  };
120
49
 
121
- var getNotOptionalErrorMessage = function getNotOptionalErrorMessage() {
122
- return "This field is required. Please, enter a value.";
50
+ var filteredGroupsHaveOptions = function filteredGroupsHaveOptions(filteredOptions) {
51
+ return filteredOptions !== null && filteredOptions !== void 0 && filteredOptions[0].options ? filteredOptions.some(function (groupOption) {
52
+ var _groupOption$options;
53
+
54
+ return ((_groupOption$options = groupOption.options) === null || _groupOption$options === void 0 ? void 0 : _groupOption$options.length) > 0;
55
+ }) : true;
123
56
  };
124
57
 
125
58
  var filterOptionsBySearchValue = function filterOptionsBySearchValue(options, searchValue) {
@@ -151,9 +84,8 @@ var getLastOptionIndex = function getLastOptionIndex(options, filteredOptions, s
151
84
  return optional && !multiple ? last + 1 : last;
152
85
  };
153
86
 
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 ? [] : "";
87
+ var getSelectedOption = function getSelectedOption(value, options, multiple, optional, optionalItem) {
88
+ var selectedOption = multiple ? [] : {};
157
89
  var singleSelectionIndex;
158
90
 
159
91
  if (multiple) {
@@ -161,21 +93,21 @@ var getSelectedOption = function getSelectedOption(options, multiple, optional,
161
93
  options.forEach(function (option) {
162
94
  if (option.options) {
163
95
  option.options.forEach(function (singleOption) {
164
- if (val.includes(singleOption.value)) selectedOption.push(singleOption);
96
+ if (value.includes(singleOption.value)) selectedOption.push(singleOption);
165
97
  });
166
- } else if (val.includes(option.value)) selectedOption.push(option);
98
+ } else if (value.includes(option.value)) selectedOption.push(option);
167
99
  });
168
100
  }
169
101
  } else {
170
- if (optional && val === "") {
171
- selectedOption = optionalEmptyOption;
102
+ if (optional && value === "") {
103
+ selectedOption = optionalItem;
172
104
  singleSelectionIndex = 0;
173
105
  } else if ((options === null || options === void 0 ? void 0 : options.length) > 0) {
174
106
  var group_index = 0;
175
107
  options.some(function (option, index) {
176
108
  if (option.options) {
177
109
  option.options.some(function (singleOption) {
178
- if (singleOption.value === val) {
110
+ if (singleOption.value === value) {
179
111
  selectedOption = singleOption;
180
112
  singleSelectionIndex = optional ? group_index + 1 : group_index;
181
113
  return true;
@@ -183,7 +115,7 @@ var getSelectedOption = function getSelectedOption(options, multiple, optional,
183
115
 
184
116
  group_index++;
185
117
  });
186
- } else if (option.value === val) {
118
+ } else if (option.value === value) {
187
119
  selectedOption = option;
188
120
  singleSelectionIndex = optional ? index + 1 : index;
189
121
  return true;
@@ -201,14 +133,13 @@ var getSelectedOption = function getSelectedOption(options, multiple, optional,
201
133
  var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
202
134
  var _selectedOption$label;
203
135
 
204
- var _ref$label = _ref.label,
205
- label = _ref$label === void 0 ? "" : _ref$label,
136
+ var label = _ref.label,
206
137
  _ref$name = _ref.name,
207
138
  name = _ref$name === void 0 ? "" : _ref$name,
139
+ defaultValue = _ref.defaultValue,
208
140
  value = _ref.value,
209
141
  options = _ref.options,
210
- _ref$helperText = _ref.helperText,
211
- helperText = _ref$helperText === void 0 ? "" : _ref$helperText,
142
+ helperText = _ref.helperText,
212
143
  _ref$placeholder = _ref.placeholder,
213
144
  placeholder = _ref$placeholder === void 0 ? "" : _ref$placeholder,
214
145
  _ref$disabled = _ref.disabled,
@@ -221,8 +152,7 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
221
152
  multiple = _ref$multiple === void 0 ? false : _ref$multiple,
222
153
  onChange = _ref.onChange,
223
154
  onBlur = _ref.onBlur,
224
- _ref$error = _ref.error,
225
- error = _ref$error === void 0 ? "" : _ref$error,
155
+ error = _ref.error,
226
156
  margin = _ref.margin,
227
157
  _ref$size = _ref.size,
228
158
  size = _ref$size === void 0 ? "medium" : _ref$size,
@@ -234,9 +164,10 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
234
164
  selectId = _useState2[0];
235
165
 
236
166
  var selectLabelId = "label-".concat(selectId);
167
+ var errorId = "error-".concat(selectId);
237
168
  var optionsListId = "".concat(selectId, "-listbox");
238
169
 
239
- var _useState3 = (0, _react.useState)(multiple ? [] : ""),
170
+ var _useState3 = (0, _react.useState)(defaultValue !== null && defaultValue !== void 0 ? defaultValue : multiple ? [] : ""),
240
171
  _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
241
172
  innerValue = _useState4[0],
242
173
  setInnerValue = _useState4[1];
@@ -260,7 +191,8 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
260
191
  var selectSearchInputRef = (0, _react.useRef)(null);
261
192
  var selectOptionsListRef = (0, _react.useRef)(null);
262
193
  var colorsTheme = (0, _useTheme["default"])();
263
- var optionalEmptyOption = {
194
+ var translatedLabels = (0, _useTranslatedLabels["default"])();
195
+ var optionalItem = {
264
196
  label: placeholder,
265
197
  value: ""
266
198
  };
@@ -269,38 +201,24 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
269
201
  }, [options, searchValue]);
270
202
  var lastOptionIndex = (0, _react.useMemo)(function () {
271
203
  return getLastOptionIndex(options, filteredOptions, searchable, optional, multiple);
272
- }, [searchable, optional, multiple, filteredOptions, options]);
204
+ }, [options, filteredOptions, searchable, optional, multiple]);
273
205
 
274
206
  var _useMemo = (0, _react.useMemo)(function () {
275
- return getSelectedOption(options, multiple, optional, optionalEmptyOption, value, innerValue);
276
- }, [options, multiple, optional, value, innerValue]),
207
+ return getSelectedOption(value !== null && value !== void 0 ? value : innerValue, options, multiple, optional, optionalItem);
208
+ }, [value, innerValue, options, multiple, optional, optionalItem]),
277
209
  selectedOption = _useMemo.selectedOption,
278
210
  singleSelectionIndex = _useMemo.singleSelectionIndex;
279
211
 
280
212
  var notOptionalCheck = function notOptionalCheck(value) {
281
- return value === "" && !optional;
213
+ return !optional && value === "";
282
214
  };
283
215
 
284
- var notOptionalMultipleCheck = function notOptionalMultipleCheck() {
285
- return (value !== null && value !== void 0 ? value : innerValue).length === 0 && !optional;
216
+ var notOptionalMultipleCheck = function notOptionalMultipleCheck(value) {
217
+ return !optional && value.length === 0;
286
218
  };
287
219
 
288
220
  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;
221
+ return !disabled && (options === null || options === void 0 ? void 0 : options.length) > 0 && groupsHaveOptions(options);
304
222
  };
305
223
 
306
224
  var openOptions = function openOptions() {
@@ -316,33 +234,24 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
316
234
 
317
235
  var handleSelectChangeValue = function handleSelectChangeValue(newOption) {
318
236
  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) {
237
+ var res = [];
238
+ if ((value !== null && value !== void 0 ? value : innerValue).includes(newOption.value)) res = (value !== null && value !== void 0 ? value : innerValue).filter(function (optionVal) {
323
239
  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()
240
+ });else res = [].concat((0, _toConsumableArray2["default"])(value !== null && value !== void 0 ? value : innerValue), [newOption.value]);
241
+ value !== null && value !== void 0 ? value : setInnerValue(res);
242
+ if (notOptionalMultipleCheck(res)) onChange === null || onChange === void 0 ? void 0 : onChange({
243
+ value: res,
244
+ error: translatedLabels.formFields.requiredValueErrorMessage
334
245
  });else onChange === null || onChange === void 0 ? void 0 : onChange({
335
- value: (_res2 = res) !== null && _res2 !== void 0 ? _res2 : innerValue,
336
- error: null
246
+ value: res
337
247
  });
338
248
  } else {
339
249
  value !== null && value !== void 0 ? value : setInnerValue(newOption.value);
340
250
  if (notOptionalCheck(newOption.value)) onChange === null || onChange === void 0 ? void 0 : onChange({
341
251
  value: newOption.value,
342
- error: getNotOptionalErrorMessage()
252
+ error: translatedLabels.formFields.requiredValueErrorMessage
343
253
  });else onChange === null || onChange === void 0 ? void 0 : onChange({
344
- value: newOption.value,
345
- error: null
254
+ value: newOption.value
346
255
  });
347
256
  }
348
257
  };
@@ -367,10 +276,9 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
367
276
  setSearchValue("");
368
277
  if (notOptionalCheck(value !== null && value !== void 0 ? value : innerValue)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
369
278
  value: value !== null && value !== void 0 ? value : innerValue,
370
- error: getNotOptionalErrorMessage()
279
+ error: translatedLabels.formFields.requiredValueErrorMessage
371
280
  });else onBlur === null || onBlur === void 0 ? void 0 : onBlur({
372
- value: value !== null && value !== void 0 ? value : innerValue,
373
- error: null
281
+ value: value !== null && value !== void 0 ? value : innerValue
374
282
  });
375
283
  }
376
284
  };
@@ -409,7 +317,7 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
409
317
 
410
318
  if (searchable) {
411
319
  if (filteredOptions.length > 0) {
412
- if (optional && !multiple && visualFocusIndex === 0 && filteredGroupsHaveOptions()) handleSelectChangeValue(optionalEmptyOption);else filteredOptions[0].options ? filteredGroupsHaveOptions() && filteredOptions.some(function (groupOption) {
320
+ if (optional && !multiple && visualFocusIndex === 0 && filteredGroupsHaveOptions(filteredOptions)) handleSelectChangeValue(optionalItem);else filteredOptions[0].options ? filteredGroupsHaveOptions(filteredOptions) && filteredOptions.some(function (groupOption) {
413
321
  var groupLength = accLength + groupOption.options.length;
414
322
  groupLength > visualFocusIndex && handleSelectChangeValue(groupOption.options[visualFocusIndex - accLength]);
415
323
  accLength = groupLength;
@@ -417,7 +325,7 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
417
325
  }) : handleSelectChangeValue(filteredOptions[visualFocusIndex - accLength]);
418
326
  }
419
327
  } else {
420
- if (optional && !multiple && visualFocusIndex === 0) handleSelectChangeValue(optionalEmptyOption);else options[0].options ? options.some(function (groupOption) {
328
+ if (optional && !multiple && visualFocusIndex === 0) handleSelectChangeValue(optionalItem);else options[0].options ? options.some(function (groupOption) {
421
329
  var groupLength = accLength + groupOption.options.length;
422
330
  groupLength > visualFocusIndex && handleSelectChangeValue(groupOption.options[visualFocusIndex - accLength]);
423
331
  accLength = groupLength;
@@ -442,9 +350,11 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
442
350
  var handleClearOptionsActionOnClick = function handleClearOptionsActionOnClick(event) {
443
351
  event.stopPropagation();
444
352
  value !== null && value !== void 0 ? value : setInnerValue([]);
445
- onChange === null || onChange === void 0 ? void 0 : onChange({
353
+ !optional ? onChange === null || onChange === void 0 ? void 0 : onChange({
446
354
  value: [],
447
- error: getNotOptionalErrorMessage()
355
+ error: translatedLabels.formFields.requiredValueErrorMessage
356
+ }) : onChange === null || onChange === void 0 ? void 0 : onChange({
357
+ value: []
448
358
  });
449
359
  };
450
360
 
@@ -453,6 +363,11 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
453
363
  setSearchValue("");
454
364
  };
455
365
 
366
+ var handleOptionOnClick = (0, _react.useCallback)(function (option) {
367
+ handleSelectChangeValue(option);
368
+ !multiple && closeOptions();
369
+ setSearchValue("");
370
+ }, [handleSelectChangeValue, closeOptions, multiple]);
456
371
  (0, _react.useLayoutEffect)(function () {
457
372
  if (isOpen && singleSelectionIndex) {
458
373
  var _listEl$scrollTo;
@@ -473,89 +388,20 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
473
388
  inline: "start"
474
389
  });
475
390
  }, [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
-
546
391
  return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
547
392
  theme: colorsTheme.select
548
393
  }, /*#__PURE__*/_react["default"].createElement(SelectContainer, {
549
394
  margin: margin,
550
395
  size: size,
551
396
  ref: ref
552
- }, /*#__PURE__*/_react["default"].createElement(Label, {
397
+ }, label && /*#__PURE__*/_react["default"].createElement(Label, {
553
398
  id: selectLabelId,
554
399
  disabled: disabled,
555
400
  onClick: function onClick() {
556
401
  selectContainerRef.current.focus();
557
- }
558
- }, label, " ", optional && /*#__PURE__*/_react["default"].createElement(OptionalLabel, null, "(Optional)")), /*#__PURE__*/_react["default"].createElement(HelperText, {
402
+ },
403
+ helperText: helperText
404
+ }, label, " ", optional && /*#__PURE__*/_react["default"].createElement(OptionalLabel, null, translatedLabels.formFields.optionalLabel)), helperText && /*#__PURE__*/_react["default"].createElement(HelperText, {
559
405
  disabled: disabled
560
406
  }, helperText), /*#__PURE__*/_react["default"].createElement(Select, {
561
407
  id: selectId,
@@ -569,12 +415,14 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
569
415
  tabIndex: tabIndex,
570
416
  role: "combobox",
571
417
  "aria-controls": optionsListId,
418
+ "aria-disabled": disabled,
572
419
  "aria-expanded": isOpen,
573
420
  "aria-haspopup": "listbox",
574
421
  "aria-labelledby": selectLabelId,
575
422
  "aria-activedescendant": visualFocusIndex >= 0 ? "option-".concat(visualFocusIndex) : undefined,
576
423
  "aria-invalid": error ? "true" : "false",
577
- "aria-required": !optional
424
+ "aria-errormessage": error ? errorId : undefined,
425
+ "aria-required": !disabled && !optional
578
426
  }, multiple && selectedOption.length > 0 && /*#__PURE__*/_react["default"].createElement(SelectionIndicator, null, /*#__PURE__*/_react["default"].createElement(SelectionNumber, {
579
427
  disabled: disabled
580
428
  }, selectedOption.length), /*#__PURE__*/_react["default"].createElement(ClearOptionsAction, {
@@ -585,11 +433,11 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
585
433
  },
586
434
  onClick: handleClearOptionsActionOnClick,
587
435
  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, {
436
+ title: translatedLabels.select.actionClearSelectionTitle,
437
+ "aria-label": translatedLabels.select.actionClearSelectionTitle
438
+ }, _Icons["default"].clear)), /*#__PURE__*/_react["default"].createElement(SearchableValueContainer, null, /*#__PURE__*/_react["default"].createElement(ValueInput, {
591
439
  name: name,
592
- value: multiple ? (value !== null && value !== void 0 ? value : innerValue).join(", ") : value !== null && value !== void 0 ? value : innerValue,
440
+ value: multiple ? (value !== null && value !== void 0 ? value : innerValue).join(",") : value !== null && value !== void 0 ? value : innerValue,
593
441
  readOnly: true,
594
442
  "aria-hidden": "true"
595
443
  }), searchable && /*#__PURE__*/_react["default"].createElement(SearchInput, {
@@ -597,43 +445,44 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
597
445
  disabled: disabled,
598
446
  onChange: handleSearchIOnChange,
599
447
  ref: selectSearchInputRef,
600
- autoComplete: "off",
601
- autoCorrect: "off",
602
- size: "1"
448
+ autoComplete: "nope",
449
+ autoCorrect: "nope",
450
+ size: 1
603
451
  }), (!searchable || searchValue === "") && (multiple ? /*#__PURE__*/_react["default"].createElement(SelectedOption, {
604
452
  disabled: disabled,
605
453
  atBackground: (value !== null && value !== void 0 ? value : innerValue).length === 0 || searchable && isOpen
606
- }, /*#__PURE__*/_react["default"].createElement(OptionLabel, null, selectedOption.map(function (option) {
454
+ }, /*#__PURE__*/_react["default"].createElement(SelectedOptionLabel, null, selectedOption.map(function (option) {
607
455
  return option.label;
608
456
  }).join(", ")), selectedOption.length === 0 && placeholder) : /*#__PURE__*/_react["default"].createElement(SelectedOption, {
609
457
  disabled: disabled,
610
458
  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, {
459
+ }, /*#__PURE__*/_react["default"].createElement(SelectedOptionLabel, null, (_selectedOption$label = selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.label) !== null && _selectedOption$label !== void 0 ? _selectedOption$label : placeholder)))), !disabled && error && /*#__PURE__*/_react["default"].createElement(ErrorIcon, null, _Icons["default"].error), searchable && searchValue.length > 0 && /*#__PURE__*/_react["default"].createElement(ClearSearchAction, {
612
460
  onMouseDown: function onMouseDown(event) {
613
461
  // Avoid input to lose focus
614
462
  event.preventDefault();
615
463
  },
616
464
  onClick: handleClearSearchActionOnClick,
617
465
  tabIndex: -1,
618
- title: "Clear search text",
619
- "aria-label": "Clear search text"
620
- }, selectIcons.clear), /*#__PURE__*/_react["default"].createElement(CollapseIndicator, {
466
+ title: translatedLabels.select.actionClearSearchTitle,
467
+ "aria-label": translatedLabels.select.actionClearSearchTitle
468
+ }, _Icons["default"].clear), /*#__PURE__*/_react["default"].createElement(CollapseIndicator, {
621
469
  disabled: disabled
622
- }, isOpen ? selectIcons.arrowUp : selectIcons.arrowDown), isOpen && /*#__PURE__*/_react["default"].createElement(OptionsList, {
470
+ }, isOpen ? _Icons["default"].arrowUp : _Icons["default"].arrowDown), isOpen && /*#__PURE__*/_react["default"].createElement(_Listbox["default"], {
623
471
  id: optionsListId,
624
- onClick: function onClick(event) {
625
- event.stopPropagation();
626
- },
627
- onMouseDown: function onMouseDown(event) {
628
- event.preventDefault();
629
- },
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)));
472
+ currentValue: value !== null && value !== void 0 ? value : innerValue,
473
+ options: searchable ? filteredOptions : options,
474
+ visualFocusIndex: visualFocusIndex,
475
+ lastOptionIndex: lastOptionIndex,
476
+ multiple: multiple,
477
+ optional: optional,
478
+ optionalItem: optionalItem,
479
+ searchable: searchable,
480
+ handleOptionOnClick: handleOptionOnClick,
481
+ ref: selectOptionsListRef
482
+ })), !disabled && typeof error === "string" && /*#__PURE__*/_react["default"].createElement(Error, {
483
+ id: errorId,
484
+ "aria-live": error ? "assertive" : "off"
485
+ }, error)));
637
486
  });
638
487
 
639
488
  var sizes = {
@@ -661,7 +510,7 @@ var SelectContainer = _styledComponents["default"].div(_templateObject || (_temp
661
510
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
662
511
  });
663
512
 
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) {
513
+ 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
514
  return props.disabled ? props.theme.disabledColor : props.theme.labelFontColor;
666
515
  }, function (props) {
667
516
  return props.theme.fontFamily;
@@ -673,13 +522,15 @@ var Label = _styledComponents["default"].span(_templateObject2 || (_templateObje
673
522
  return props.theme.labelFontWeight;
674
523
  }, function (props) {
675
524
  return props.theme.labelLineHeight;
525
+ }, function (props) {
526
+ return !props.helperText && "margin-bottom: 0.25rem";
676
527
  });
677
528
 
678
529
  var OptionalLabel = _styledComponents["default"].span(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n font-weight: ", ";\n"])), function (props) {
679
530
  return props.theme.optionalLabelFontWeight;
680
531
  });
681
532
 
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) {
533
+ 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
534
  return props.disabled ? props.theme.disabledColor : props.theme.helperTextFontColor;
684
535
  }, function (props) {
685
536
  return props.theme.fontFamily;
@@ -693,9 +544,7 @@ var HelperText = _styledComponents["default"].span(_templateObject4 || (_templat
693
544
  return props.theme.helperTextLineHeight;
694
545
  });
695
546
 
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) {
547
+ 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
548
  return props.disabled && "background-color: ".concat(props.theme.disabledInputBackgroundColor);
700
549
  }, function (props) {
701
550
  return props.disabled ? props.theme.disabledInputBorderColor : props.theme.enabledInputBorderColor;
@@ -755,9 +604,11 @@ var SelectedOption = _styledComponents["default"].span(_templateObject10 || (_te
755
604
  return props.theme.valueFontWeight;
756
605
  });
757
606
 
758
- var ValueInput = _styledComponents["default"].input(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2["default"])(["\n display: none;\n"])));
607
+ var SelectedOptionLabel = _styledComponents["default"].span(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2["default"])(["\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n"])));
608
+
609
+ var ValueInput = _styledComponents["default"].input(_templateObject12 || (_templateObject12 = (0, _taggedTemplateLiteral2["default"])(["\n display: none;\n"])));
759
610
 
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) {
611
+ 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
612
  return props.disabled ? props.theme.disabledColor : props.theme.valueFontColor;
762
613
  }, function (props) {
763
614
  return props.theme.fontFamily;
@@ -769,21 +620,21 @@ var SearchInput = _styledComponents["default"].input(_templateObject12 || (_temp
769
620
  return props.theme.valueFontWeight;
770
621
  });
771
622
 
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) {
623
+ 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
624
  return props.theme.errorIconColor;
774
625
  });
775
626
 
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) {
627
+ 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
628
  return props.theme.errorMessageColor;
778
629
  }, function (props) {
779
630
  return props.theme.fontFamily;
780
631
  });
781
632
 
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) {
633
+ 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
634
  return props.disabled ? props.theme.disabledColor : props.theme.collapseIndicatorColor;
784
635
  });
785
636
 
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) {
637
+ 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
638
  return props.theme.fontFamily;
788
639
  }, function (props) {
789
640
  return props.theme.actionBackgroundColor;
@@ -799,67 +650,5 @@ var ClearSearchAction = _styledComponents["default"].button(_templateObject16 ||
799
650
  return props.theme.activeActionIconColor;
800
651
  });
801
652
 
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
653
  var _default = DxcSelect;
865
654
  exports["default"] = _default;