@dxc-technology/halstack-react 0.0.0-c291a0c → 0.0.0-c3c521c

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 (319) hide show
  1. package/BackgroundColorContext.d.ts +1 -10
  2. package/BackgroundColorContext.js +5 -22
  3. package/HalstackContext.d.ts +1215 -6
  4. package/HalstackContext.js +125 -110
  5. package/README.md +47 -0
  6. package/accordion/Accordion.d.ts +1 -1
  7. package/accordion/Accordion.js +116 -160
  8. package/accordion/Accordion.stories.tsx +102 -126
  9. package/accordion/Accordion.test.js +25 -41
  10. package/accordion/types.d.ts +5 -16
  11. package/accordion-group/AccordionGroup.d.ts +4 -3
  12. package/accordion-group/AccordionGroup.js +31 -98
  13. package/accordion-group/AccordionGroup.stories.tsx +94 -67
  14. package/accordion-group/AccordionGroup.test.js +52 -105
  15. package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
  16. package/accordion-group/AccordionGroupAccordion.js +31 -0
  17. package/accordion-group/types.d.ts +11 -16
  18. package/action-icon/ActionIcon.d.ts +4 -0
  19. package/action-icon/ActionIcon.js +47 -0
  20. package/action-icon/ActionIcon.stories.tsx +41 -0
  21. package/action-icon/ActionIcon.test.js +64 -0
  22. package/action-icon/types.d.ts +26 -0
  23. package/alert/Alert.js +20 -59
  24. package/alert/Alert.stories.tsx +28 -0
  25. package/alert/Alert.test.js +29 -46
  26. package/alert/types.d.ts +5 -5
  27. package/badge/Badge.d.ts +1 -1
  28. package/badge/Badge.js +142 -42
  29. package/badge/Badge.stories.tsx +210 -0
  30. package/badge/Badge.test.js +30 -0
  31. package/badge/types.d.ts +52 -3
  32. package/bleed/Bleed.js +13 -21
  33. package/bleed/Bleed.stories.tsx +64 -63
  34. package/bleed/types.d.ts +2 -2
  35. package/box/Box.d.ts +1 -1
  36. package/box/Box.js +19 -60
  37. package/box/Box.stories.tsx +38 -51
  38. package/box/Box.test.js +2 -7
  39. package/box/types.d.ts +3 -14
  40. package/bulleted-list/BulletedList.d.ts +7 -0
  41. package/bulleted-list/BulletedList.js +89 -0
  42. package/bulleted-list/BulletedList.stories.tsx +115 -0
  43. package/bulleted-list/types.d.ts +38 -0
  44. package/button/Button.d.ts +1 -1
  45. package/button/Button.js +63 -117
  46. package/button/Button.stories.tsx +160 -90
  47. package/button/Button.test.js +20 -17
  48. package/button/types.d.ts +12 -8
  49. package/card/Card.d.ts +1 -1
  50. package/card/Card.js +48 -89
  51. package/card/Card.stories.tsx +12 -42
  52. package/card/Card.test.js +11 -22
  53. package/card/types.d.ts +6 -11
  54. package/checkbox/Checkbox.d.ts +2 -2
  55. package/checkbox/Checkbox.js +140 -182
  56. package/checkbox/Checkbox.stories.tsx +128 -94
  57. package/checkbox/Checkbox.test.js +160 -39
  58. package/checkbox/types.d.ts +11 -3
  59. package/chip/Chip.js +39 -79
  60. package/chip/Chip.stories.tsx +121 -26
  61. package/chip/Chip.test.js +16 -31
  62. package/chip/types.d.ts +4 -4
  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 +1367 -0
  69. package/common/variables.js +909 -1140
  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/date-input/Calendar.d.ts +4 -0
  75. package/date-input/Calendar.js +214 -0
  76. package/date-input/DateInput.js +150 -299
  77. package/date-input/DateInput.stories.tsx +203 -56
  78. package/date-input/DateInput.test.js +700 -371
  79. package/date-input/DatePicker.d.ts +4 -0
  80. package/date-input/DatePicker.js +115 -0
  81. package/date-input/Icons.d.ts +6 -0
  82. package/date-input/Icons.js +58 -0
  83. package/date-input/YearPicker.d.ts +4 -0
  84. package/date-input/YearPicker.js +100 -0
  85. package/date-input/types.d.ts +72 -15
  86. package/dialog/Dialog.d.ts +1 -1
  87. package/dialog/Dialog.js +73 -107
  88. package/dialog/Dialog.stories.tsx +320 -167
  89. package/dialog/Dialog.test.js +287 -20
  90. package/dialog/types.d.ts +18 -25
  91. package/dropdown/Dropdown.d.ts +1 -1
  92. package/dropdown/Dropdown.js +243 -300
  93. package/dropdown/Dropdown.stories.tsx +245 -56
  94. package/dropdown/Dropdown.test.js +575 -165
  95. package/dropdown/DropdownMenu.d.ts +4 -0
  96. package/dropdown/DropdownMenu.js +63 -0
  97. package/dropdown/DropdownMenuItem.d.ts +4 -0
  98. package/dropdown/DropdownMenuItem.js +67 -0
  99. package/dropdown/types.d.ts +32 -14
  100. package/file-input/FileInput.d.ts +2 -2
  101. package/file-input/FileInput.js +241 -355
  102. package/file-input/FileInput.stories.tsx +123 -12
  103. package/file-input/FileInput.test.js +369 -367
  104. package/file-input/FileItem.d.ts +4 -14
  105. package/file-input/FileItem.js +45 -96
  106. package/file-input/types.d.ts +25 -8
  107. package/flex/Flex.d.ts +4 -0
  108. package/flex/Flex.js +57 -0
  109. package/flex/Flex.stories.tsx +112 -0
  110. package/flex/types.d.ts +97 -0
  111. package/footer/Footer.d.ts +1 -1
  112. package/footer/Footer.js +70 -117
  113. package/footer/Footer.stories.tsx +60 -19
  114. package/footer/Footer.test.js +33 -57
  115. package/footer/Icons.d.ts +3 -2
  116. package/footer/Icons.js +66 -7
  117. package/footer/types.d.ts +25 -26
  118. package/grid/Grid.d.ts +7 -0
  119. package/grid/Grid.js +76 -0
  120. package/grid/Grid.stories.tsx +219 -0
  121. package/grid/types.d.ts +115 -0
  122. package/header/Header.d.ts +4 -3
  123. package/header/Header.js +85 -168
  124. package/header/Header.stories.tsx +118 -39
  125. package/header/Header.test.js +13 -26
  126. package/header/Icons.d.ts +2 -2
  127. package/header/Icons.js +4 -9
  128. package/header/types.d.ts +5 -19
  129. package/heading/Heading.js +10 -32
  130. package/heading/Heading.test.js +71 -88
  131. package/heading/types.d.ts +7 -7
  132. package/image/Image.d.ts +4 -0
  133. package/image/Image.js +70 -0
  134. package/image/Image.stories.tsx +127 -0
  135. package/image/types.d.ts +72 -0
  136. package/inset/Inset.js +13 -21
  137. package/inset/Inset.stories.tsx +5 -4
  138. package/inset/types.d.ts +2 -2
  139. package/layout/ApplicationLayout.d.ts +15 -6
  140. package/layout/ApplicationLayout.js +50 -115
  141. package/layout/ApplicationLayout.stories.tsx +81 -45
  142. package/layout/Icons.d.ts +8 -5
  143. package/layout/Icons.js +51 -59
  144. package/layout/SidenavContext.d.ts +1 -1
  145. package/layout/SidenavContext.js +3 -9
  146. package/layout/types.d.ts +21 -32
  147. package/link/Link.js +25 -46
  148. package/link/Link.stories.tsx +73 -6
  149. package/link/Link.test.js +24 -44
  150. package/link/types.d.ts +14 -14
  151. package/main.d.ts +12 -13
  152. package/main.js +45 -103
  153. package/{tabs-nav → nav-tabs}/NavTabs.d.ts +2 -2
  154. package/{tabs-nav → nav-tabs}/NavTabs.js +28 -60
  155. package/{tabs-nav → nav-tabs}/NavTabs.stories.tsx +115 -9
  156. package/{tabs-nav → nav-tabs}/NavTabs.test.js +39 -45
  157. package/nav-tabs/Tab.js +118 -0
  158. package/{tabs-nav → nav-tabs}/types.d.ts +14 -15
  159. package/number-input/NumberInput.d.ts +7 -0
  160. package/number-input/NumberInput.js +26 -35
  161. package/number-input/NumberInput.stories.tsx +42 -26
  162. package/number-input/NumberInput.test.js +701 -377
  163. package/number-input/types.d.ts +11 -5
  164. package/package.json +43 -46
  165. package/paginator/Icons.d.ts +5 -0
  166. package/paginator/Icons.js +21 -47
  167. package/paginator/Paginator.js +23 -59
  168. package/paginator/Paginator.stories.tsx +24 -0
  169. package/paginator/Paginator.test.js +253 -226
  170. package/paginator/types.d.ts +3 -3
  171. package/paragraph/Paragraph.d.ts +5 -0
  172. package/paragraph/Paragraph.js +22 -0
  173. package/paragraph/Paragraph.stories.tsx +27 -0
  174. package/password-input/Icons.d.ts +6 -0
  175. package/password-input/Icons.js +35 -0
  176. package/password-input/PasswordInput.js +57 -126
  177. package/password-input/PasswordInput.stories.tsx +1 -33
  178. package/password-input/PasswordInput.test.js +160 -142
  179. package/password-input/types.d.ts +8 -7
  180. package/progress-bar/ProgressBar.js +65 -91
  181. package/progress-bar/{ProgressBar.stories.jsx → ProgressBar.stories.tsx} +39 -4
  182. package/progress-bar/ProgressBar.test.js +72 -44
  183. package/progress-bar/types.d.ts +3 -3
  184. package/quick-nav/QuickNav.js +27 -45
  185. package/quick-nav/QuickNav.stories.tsx +146 -27
  186. package/quick-nav/types.d.ts +10 -10
  187. package/radio-group/Radio.d.ts +1 -1
  188. package/radio-group/Radio.js +59 -76
  189. package/radio-group/RadioGroup.js +67 -114
  190. package/radio-group/RadioGroup.stories.tsx +132 -18
  191. package/radio-group/RadioGroup.test.js +518 -457
  192. package/radio-group/types.d.ts +10 -10
  193. package/resultset-table/Icons.d.ts +7 -0
  194. package/resultset-table/Icons.js +47 -0
  195. package/resultset-table/ResultsetTable.js +159 -0
  196. package/{resultsetTable → resultset-table}/ResultsetTable.stories.tsx +50 -25
  197. package/{resultsetTable → resultset-table}/ResultsetTable.test.js +101 -144
  198. package/{resultsetTable → resultset-table}/types.d.ts +7 -7
  199. package/resultset-table/types.js +5 -0
  200. package/select/Icons.d.ts +7 -7
  201. package/select/Icons.js +1 -5
  202. package/select/Listbox.js +17 -49
  203. package/select/Option.js +27 -50
  204. package/select/Select.js +132 -202
  205. package/select/Select.stories.tsx +497 -152
  206. package/select/Select.test.js +1966 -1758
  207. package/select/types.d.ts +16 -19
  208. package/sidenav/Icons.d.ts +7 -0
  209. package/sidenav/Icons.js +47 -0
  210. package/sidenav/Sidenav.d.ts +6 -5
  211. package/sidenav/Sidenav.js +127 -78
  212. package/sidenav/Sidenav.stories.tsx +251 -151
  213. package/sidenav/Sidenav.test.js +26 -45
  214. package/sidenav/types.d.ts +52 -26
  215. package/slider/Slider.d.ts +2 -2
  216. package/slider/Slider.js +148 -181
  217. package/slider/Slider.test.js +185 -81
  218. package/slider/types.d.ts +7 -3
  219. package/spinner/Spinner.js +31 -75
  220. package/spinner/{Spinner.stories.jsx → Spinner.stories.tsx} +53 -27
  221. package/spinner/Spinner.test.js +26 -35
  222. package/spinner/types.d.ts +3 -3
  223. package/status-light/StatusLight.d.ts +4 -0
  224. package/status-light/StatusLight.js +51 -0
  225. package/status-light/StatusLight.stories.tsx +74 -0
  226. package/status-light/StatusLight.test.js +25 -0
  227. package/status-light/types.d.ts +17 -0
  228. package/status-light/types.js +5 -0
  229. package/switch/Switch.d.ts +2 -2
  230. package/switch/Switch.js +145 -126
  231. package/switch/Switch.stories.tsx +37 -60
  232. package/switch/Switch.test.js +138 -56
  233. package/switch/types.d.ts +7 -3
  234. package/table/Table.js +8 -30
  235. package/table/{Table.stories.jsx → Table.stories.tsx} +80 -1
  236. package/table/Table.test.js +3 -8
  237. package/table/types.d.ts +8 -8
  238. package/tabs/Tab.d.ts +4 -0
  239. package/tabs/Tab.js +116 -0
  240. package/tabs/Tabs.js +314 -141
  241. package/tabs/Tabs.stories.tsx +120 -6
  242. package/tabs/Tabs.test.js +223 -69
  243. package/tabs/types.d.ts +28 -18
  244. package/tag/Tag.js +29 -61
  245. package/tag/Tag.stories.tsx +14 -1
  246. package/tag/Tag.test.js +20 -31
  247. package/tag/types.d.ts +7 -7
  248. package/text-input/Icons.d.ts +8 -0
  249. package/text-input/Icons.js +56 -0
  250. package/text-input/Suggestion.js +40 -28
  251. package/text-input/Suggestions.d.ts +4 -0
  252. package/text-input/Suggestions.js +84 -0
  253. package/text-input/TextInput.js +308 -506
  254. package/text-input/TextInput.stories.tsx +266 -275
  255. package/text-input/TextInput.test.js +1402 -1375
  256. package/text-input/types.d.ts +43 -16
  257. package/textarea/Textarea.js +70 -113
  258. package/textarea/Textarea.stories.tsx +174 -0
  259. package/textarea/Textarea.test.js +152 -183
  260. package/textarea/types.d.ts +9 -5
  261. package/toggle-group/ToggleGroup.d.ts +2 -2
  262. package/toggle-group/ToggleGroup.js +92 -106
  263. package/toggle-group/ToggleGroup.stories.tsx +49 -4
  264. package/toggle-group/ToggleGroup.test.js +69 -88
  265. package/toggle-group/types.d.ts +26 -17
  266. package/typography/Typography.d.ts +4 -0
  267. package/typography/Typography.js +23 -0
  268. package/typography/Typography.stories.tsx +198 -0
  269. package/typography/types.d.ts +18 -0
  270. package/typography/types.js +5 -0
  271. package/useTheme.d.ts +1119 -1
  272. package/useTheme.js +2 -9
  273. package/useTranslatedLabels.d.ts +84 -1
  274. package/useTranslatedLabels.js +1 -7
  275. package/utils/BaseTypography.d.ts +21 -0
  276. package/utils/BaseTypography.js +94 -0
  277. package/utils/FocusLock.d.ts +13 -0
  278. package/utils/FocusLock.js +124 -0
  279. package/wizard/Wizard.js +24 -66
  280. package/wizard/Wizard.stories.tsx +40 -1
  281. package/wizard/Wizard.test.js +54 -81
  282. package/wizard/types.d.ts +7 -7
  283. package/card/ice-cream.jpg +0 -0
  284. package/common/RequiredComponent.js +0 -32
  285. package/inline/Inline.d.ts +0 -4
  286. package/inline/Inline.js +0 -54
  287. package/inline/Inline.stories.tsx +0 -264
  288. package/inline/types.d.ts +0 -32
  289. package/list/List.d.ts +0 -4
  290. package/list/List.js +0 -47
  291. package/list/List.stories.tsx +0 -89
  292. package/list/types.d.ts +0 -7
  293. package/number-input/NumberInputContext.d.ts +0 -4
  294. package/number-input/NumberInputContext.js +0 -19
  295. package/number-input/numberInputContextTypes.d.ts +0 -19
  296. package/resultsetTable/ResultsetTable.js +0 -254
  297. package/row/Row.d.ts +0 -3
  298. package/row/Row.js +0 -127
  299. package/row/Row.stories.tsx +0 -237
  300. package/row/types.d.ts +0 -28
  301. package/slider/Slider.stories.tsx +0 -177
  302. package/stack/Stack.d.ts +0 -4
  303. package/stack/Stack.js +0 -50
  304. package/stack/Stack.stories.tsx +0 -225
  305. package/stack/types.d.ts +0 -28
  306. package/tabs-nav/Tab.js +0 -132
  307. package/text/Text.d.ts +0 -7
  308. package/text/Text.js +0 -30
  309. package/text/Text.stories.tsx +0 -19
  310. package/textarea/Textarea.stories.jsx +0 -157
  311. /package/{inline → action-icon}/types.js +0 -0
  312. /package/{list → bulleted-list}/types.js +0 -0
  313. /package/{resultsetTable → container}/types.js +0 -0
  314. /package/{row → flex}/types.js +0 -0
  315. /package/{stack → grid}/types.js +0 -0
  316. /package/{tabs-nav → image}/types.js +0 -0
  317. /package/{tabs-nav → nav-tabs}/Tab.d.ts +0 -0
  318. /package/{number-input/numberInputContextTypes.js → nav-tabs/types.js} +0 -0
  319. /package/{resultsetTable → resultset-table}/ResultsetTable.d.ts +0 -0
@@ -1,94 +1,45 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  var _typeof3 = require("@babel/runtime/helpers/typeof");
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
10
8
  exports["default"] = void 0;
11
-
12
9
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
13
-
14
10
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
15
-
16
11
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
17
-
18
12
  var _react = _interopRequireWildcard(require("react"));
19
-
20
13
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
21
-
22
14
  var _useTheme = _interopRequireDefault(require("../useTheme"));
23
-
24
15
  var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
25
-
26
- var _variables = require("../common/variables.js");
27
-
28
- var _utils = require("../common/utils.js");
29
-
16
+ var _variables = require("../common/variables");
17
+ var _utils = require("../common/utils");
18
+ var _NumberInput = require("../number-input/NumberInput");
19
+ var _Suggestions = _interopRequireDefault(require("./Suggestions"));
20
+ var Popover = _interopRequireWildcard(require("@radix-ui/react-popover"));
21
+ var _Icons = _interopRequireDefault(require("./Icons"));
30
22
  var _uuid = require("uuid");
31
-
32
- var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext"));
33
-
34
- var _NumberInputContext = _interopRequireDefault(require("../number-input/NumberInputContext"));
35
-
36
- var _Suggestion = _interopRequireDefault(require("./Suggestion"));
37
-
38
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16;
39
-
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); }
41
-
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; }
43
-
44
- var textInputIcons = {
45
- error: /*#__PURE__*/_react["default"].createElement("svg", {
46
- xmlns: "http://www.w3.org/2000/svg",
47
- height: "24px",
48
- viewBox: "0 0 24 24",
49
- width: "24px",
50
- fill: "currentColor"
51
- }, /*#__PURE__*/_react["default"].createElement("path", {
52
- 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"
53
- })),
54
- clear: /*#__PURE__*/_react["default"].createElement("svg", {
55
- xmlns: "http://www.w3.org/2000/svg",
56
- width: "24",
57
- height: "24",
58
- viewBox: "0 0 24 24",
59
- fill: "currentColor"
60
- }, /*#__PURE__*/_react["default"].createElement("path", {
61
- d: "M0 0h24v24H0V0z",
62
- fill: "none"
63
- }), /*#__PURE__*/_react["default"].createElement("path", {
64
- 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"
65
- })),
66
- increment: /*#__PURE__*/_react["default"].createElement("svg", {
67
- xmlns: "http://www.w3.org/2000/svg",
68
- height: "24px",
69
- viewBox: "0 0 24 24",
70
- width: "24px",
71
- fill: "currentColor"
72
- }, /*#__PURE__*/_react["default"].createElement("path", {
73
- d: "M0 0h24v24H0z",
74
- fill: "none"
75
- }), /*#__PURE__*/_react["default"].createElement("path", {
76
- d: "M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"
77
- })),
78
- decrement: /*#__PURE__*/_react["default"].createElement("svg", {
79
- xmlns: "http://www.w3.org/2000/svg",
80
- height: "24px",
81
- viewBox: "0 0 24 24",
82
- width: "24px",
83
- fill: "currentColor"
84
- }, /*#__PURE__*/_react["default"].createElement("path", {
85
- d: "M0 0h24v24H0z",
86
- fill: "none"
87
- }), /*#__PURE__*/_react["default"].createElement("path", {
88
- d: "M19 13H5v-2h14v2z"
89
- }))
23
+ var _ActionIcon = _interopRequireDefault(require("../action-icon/ActionIcon"));
24
+ var _main = require("../main");
25
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10;
26
+ 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); }
27
+ 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; }
28
+ var sizes = {
29
+ small: "240px",
30
+ medium: "360px",
31
+ large: "480px",
32
+ fillParent: "100%"
33
+ };
34
+ var AutosuggestWrapper = function AutosuggestWrapper(_ref) {
35
+ var condition = _ref.condition,
36
+ wrapper = _ref.wrapper,
37
+ children = _ref.children;
38
+ return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, condition ? wrapper(children) : children);
39
+ };
40
+ var calculateWidth = function calculateWidth(margin, size) {
41
+ return size === "fillParent" ? "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")") : sizes[size];
90
42
  };
91
-
92
43
  var makeCancelable = function makeCancelable(promise) {
93
44
  var hasCanceled_ = false;
94
45
  var wrappedPromise = new Promise(function (resolve, reject) {
@@ -109,338 +60,263 @@ var makeCancelable = function makeCancelable(promise) {
109
60
  }
110
61
  };
111
62
  };
112
-
113
- var getNotOptionalErrorMessage = function getNotOptionalErrorMessage() {
114
- return "This field is required. Please, enter a value.";
63
+ var hasSuggestions = function hasSuggestions(suggestions) {
64
+ return typeof suggestions === "function" || (suggestions === null || suggestions === void 0 ? void 0 : suggestions.length) > 0;
115
65
  };
116
-
117
- var getPatternErrorMessage = function getPatternErrorMessage() {
118
- return "Please match the format requested.";
66
+ var isRequired = function isRequired(value, optional) {
67
+ return value === "" && !optional;
119
68
  };
120
-
121
- var patternMatch = function patternMatch(pattern, value) {
122
- return new RegExp(pattern).test(value);
69
+ var isLengthIncorrect = function isLengthIncorrect(value, minLength, maxLength) {
70
+ return value != null && (value.length < minLength || value.length > maxLength);
123
71
  };
124
-
125
- var getLastOptionIndex = function getLastOptionIndex(filteredSuggestions) {
126
- var last = 0;
127
-
128
- var reducer = function reducer(acc, current) {
129
- var _current$options;
130
-
131
- return acc + ((_current$options = current.options) === null || _current$options === void 0 ? void 0 : _current$options.length);
132
- };
133
-
134
- if (filteredSuggestions.length > 0) filteredSuggestions[0].options ? last = filteredSuggestions.reduce(reducer, 0) - 1 : last = filteredSuggestions.length - 1;
135
- return last;
72
+ var isNumberIncorrect = function isNumberIncorrect(value, minNumber, maxNumber) {
73
+ return value < minNumber || value > maxNumber;
136
74
  };
137
-
138
- var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
139
- var label = _ref.label,
140
- _ref$name = _ref.name,
141
- name = _ref$name === void 0 ? "" : _ref$name,
142
- _ref$defaultValue = _ref.defaultValue,
143
- defaultValue = _ref$defaultValue === void 0 ? "" : _ref$defaultValue,
144
- value = _ref.value,
145
- helperText = _ref.helperText,
146
- _ref$placeholder = _ref.placeholder,
147
- placeholder = _ref$placeholder === void 0 ? "" : _ref$placeholder,
148
- action = _ref.action,
149
- _ref$clearable = _ref.clearable,
150
- clearable = _ref$clearable === void 0 ? false : _ref$clearable,
151
- _ref$disabled = _ref.disabled,
152
- disabled = _ref$disabled === void 0 ? false : _ref$disabled,
153
- _ref$optional = _ref.optional,
154
- optional = _ref$optional === void 0 ? false : _ref$optional,
155
- _ref$prefix = _ref.prefix,
156
- prefix = _ref$prefix === void 0 ? "" : _ref$prefix,
157
- _ref$suffix = _ref.suffix,
158
- suffix = _ref$suffix === void 0 ? "" : _ref$suffix,
159
- onChange = _ref.onChange,
160
- onBlur = _ref.onBlur,
161
- error = _ref.error,
162
- suggestions = _ref.suggestions,
163
- pattern = _ref.pattern,
164
- minLength = _ref.minLength,
165
- maxLength = _ref.maxLength,
166
- _ref$autocomplete = _ref.autocomplete,
167
- autocomplete = _ref$autocomplete === void 0 ? "off" : _ref$autocomplete,
168
- margin = _ref.margin,
169
- _ref$size = _ref.size,
170
- size = _ref$size === void 0 ? "medium" : _ref$size,
171
- _ref$tabIndex = _ref.tabIndex,
172
- tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
173
-
174
- var _useState = (0, _react.useState)("input-".concat((0, _uuid.v4)())),
175
- _useState2 = (0, _slicedToArray2["default"])(_useState, 1),
176
- inputId = _useState2[0];
177
-
178
- var _useState3 = (0, _react.useState)(defaultValue),
179
- _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
180
- innerValue = _useState4[0],
181
- setInnerValue = _useState4[1];
182
-
183
- var _useState5 = (0, _react.useState)(false),
184
- _useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
185
- isOpen = _useState6[0],
186
- changeIsOpen = _useState6[1];
187
-
75
+ var patternMismatch = function patternMismatch(pattern, value) {
76
+ return pattern != null && !new RegExp(pattern).test(value);
77
+ };
78
+ var useWidth = function useWidth(target) {
79
+ var _useState = (0, _react.useState)(0),
80
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
81
+ width = _useState2[0],
82
+ setWidth = _useState2[1];
83
+ (0, _react.useEffect)(function () {
84
+ if (target != null) {
85
+ setWidth(target.getBoundingClientRect().width);
86
+ var triggerObserver = new ResizeObserver(function (entries) {
87
+ var rect = entries[0].target.getBoundingClientRect();
88
+ setWidth(rect === null || rect === void 0 ? void 0 : rect.width);
89
+ });
90
+ triggerObserver.observe(target);
91
+ return function () {
92
+ triggerObserver.unobserve(target);
93
+ };
94
+ }
95
+ }, [target]);
96
+ return width;
97
+ };
98
+ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref2, ref) {
99
+ var label = _ref2.label,
100
+ _ref2$name = _ref2.name,
101
+ name = _ref2$name === void 0 ? "" : _ref2$name,
102
+ _ref2$defaultValue = _ref2.defaultValue,
103
+ defaultValue = _ref2$defaultValue === void 0 ? "" : _ref2$defaultValue,
104
+ value = _ref2.value,
105
+ helperText = _ref2.helperText,
106
+ _ref2$placeholder = _ref2.placeholder,
107
+ placeholder = _ref2$placeholder === void 0 ? "" : _ref2$placeholder,
108
+ action = _ref2.action,
109
+ _ref2$clearable = _ref2.clearable,
110
+ clearable = _ref2$clearable === void 0 ? false : _ref2$clearable,
111
+ _ref2$disabled = _ref2.disabled,
112
+ disabled = _ref2$disabled === void 0 ? false : _ref2$disabled,
113
+ _ref2$readOnly = _ref2.readOnly,
114
+ readOnly = _ref2$readOnly === void 0 ? false : _ref2$readOnly,
115
+ _ref2$optional = _ref2.optional,
116
+ optional = _ref2$optional === void 0 ? false : _ref2$optional,
117
+ _ref2$prefix = _ref2.prefix,
118
+ prefix = _ref2$prefix === void 0 ? "" : _ref2$prefix,
119
+ _ref2$suffix = _ref2.suffix,
120
+ suffix = _ref2$suffix === void 0 ? "" : _ref2$suffix,
121
+ onChange = _ref2.onChange,
122
+ onBlur = _ref2.onBlur,
123
+ error = _ref2.error,
124
+ suggestions = _ref2.suggestions,
125
+ pattern = _ref2.pattern,
126
+ minLength = _ref2.minLength,
127
+ maxLength = _ref2.maxLength,
128
+ _ref2$autocomplete = _ref2.autocomplete,
129
+ autocomplete = _ref2$autocomplete === void 0 ? "off" : _ref2$autocomplete,
130
+ margin = _ref2.margin,
131
+ _ref2$size = _ref2.size,
132
+ size = _ref2$size === void 0 ? "medium" : _ref2$size,
133
+ _ref2$tabIndex = _ref2.tabIndex,
134
+ tabIndex = _ref2$tabIndex === void 0 ? 0 : _ref2$tabIndex;
135
+ var _useState3 = (0, _react.useState)("input-".concat((0, _uuid.v4)())),
136
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 1),
137
+ inputId = _useState4[0];
138
+ var autosuggestId = "suggestions-".concat(inputId);
139
+ var errorId = "error-".concat(inputId);
140
+ var _useState5 = (0, _react.useState)(defaultValue),
141
+ _useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
142
+ innerValue = _useState6[0],
143
+ setInnerValue = _useState6[1];
188
144
  var _useState7 = (0, _react.useState)(false),
189
- _useState8 = (0, _slicedToArray2["default"])(_useState7, 2),
190
- isSearching = _useState8[0],
191
- changeIsSearching = _useState8[1];
192
-
145
+ _useState8 = (0, _slicedToArray2["default"])(_useState7, 2),
146
+ isOpen = _useState8[0],
147
+ changeIsOpen = _useState8[1];
193
148
  var _useState9 = (0, _react.useState)(false),
194
- _useState10 = (0, _slicedToArray2["default"])(_useState9, 2),
195
- isAutosuggestError = _useState10[0],
196
- changeIsAutosuggestError = _useState10[1];
197
-
198
- var _useState11 = (0, _react.useState)([]),
199
- _useState12 = (0, _slicedToArray2["default"])(_useState11, 2),
200
- filteredSuggestions = _useState12[0],
201
- changeFilteredSuggestions = _useState12[1];
202
-
203
- var _useState13 = (0, _react.useState)(-1),
204
- _useState14 = (0, _slicedToArray2["default"])(_useState13, 2),
205
- visualFocusedSuggIndex = _useState14[0],
206
- changeVisualFocusedSuggIndex = _useState14[1];
207
-
208
- var suggestionsRef = (0, _react.useRef)(null);
149
+ _useState10 = (0, _slicedToArray2["default"])(_useState9, 2),
150
+ isSearching = _useState10[0],
151
+ changeIsSearching = _useState10[1];
152
+ var _useState11 = (0, _react.useState)(false),
153
+ _useState12 = (0, _slicedToArray2["default"])(_useState11, 2),
154
+ isAutosuggestError = _useState12[0],
155
+ changeIsAutosuggestError = _useState12[1];
156
+ var _useState13 = (0, _react.useState)([]),
157
+ _useState14 = (0, _slicedToArray2["default"])(_useState13, 2),
158
+ filteredSuggestions = _useState14[0],
159
+ changeFilteredSuggestions = _useState14[1];
160
+ var _useState15 = (0, _react.useState)(-1),
161
+ _useState16 = (0, _slicedToArray2["default"])(_useState15, 2),
162
+ visualFocusIndex = _useState16[0],
163
+ changeVisualFocusIndex = _useState16[1];
209
164
  var inputRef = (0, _react.useRef)(null);
165
+ var inputContainerRef = (0, _react.useRef)(null);
210
166
  var actionRef = (0, _react.useRef)(null);
167
+ var width = useWidth(inputContainerRef.current);
211
168
  var colorsTheme = (0, _useTheme["default"])();
212
169
  var translatedLabels = (0, _useTranslatedLabels["default"])();
213
- var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
214
- var autosuggestId = "".concat(inputId, "-listBox");
215
- var errorId = "error-".concat(inputId);
216
- var numberInputContext = (0, _react.useContext)(_NumberInputContext["default"]);
217
- var lastOptionIndex = (0, _react.useMemo)(function () {
218
- return getLastOptionIndex(filteredSuggestions);
219
- }, [filteredSuggestions]);
220
-
221
- var isNotOptional = function isNotOptional(value) {
222
- return value === "" && !optional;
223
- };
224
-
225
- var isLengthIncorrect = function isLengthIncorrect(value) {
226
- return value && minLength && maxLength && (value.length < minLength || value.length > maxLength);
227
- };
228
-
229
- var isNumberIncorrect = function isNumberIncorrect(value) {
230
- return (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.minNumber) && parseInt(value) < (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.minNumber) || (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.maxNumber) && parseInt(value) > (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.maxNumber);
231
- };
232
-
233
- var isTextInputType = function isTextInputType() {
234
- var _inputRef$current, _inputRef$current2;
235
-
236
- return !(inputRef !== null && inputRef !== void 0 && (_inputRef$current = inputRef.current) !== null && _inputRef$current !== void 0 && _inputRef$current.getAttribute("type")) || (inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current2 = inputRef.current) === null || _inputRef$current2 === void 0 ? void 0 : _inputRef$current2.getAttribute("type")) === "text";
237
- };
238
-
170
+ var numberInputContext = (0, _react.useContext)(_NumberInput.NumberInputContext);
239
171
  var getNumberErrorMessage = function getNumberErrorMessage(value) {
240
- if (numberInputContext !== null && numberInputContext !== void 0 && numberInputContext.minNumber && parseInt(value) < (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.minNumber)) return translatedLabels.numberInput.valueGreaterThanOrEqualToErrorMessage(numberInputContext.minNumber);else if (numberInputContext !== null && numberInputContext !== void 0 && numberInputContext.maxNumber && parseInt(value) > (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.maxNumber)) return translatedLabels.numberInput.valueLessThanOrEqualToErrorMessage(numberInputContext.maxNumber);
241
- };
242
-
243
- var hasSuggestions = function hasSuggestions() {
244
- return typeof suggestions === "function" || (suggestions === null || suggestions === void 0 ? void 0 : suggestions.length) > 0;
172
+ if (value < (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.minNumber)) return translatedLabels.numberInput.valueGreaterThanOrEqualToErrorMessage(numberInputContext.minNumber);else if (value > (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.maxNumber)) return translatedLabels.numberInput.valueLessThanOrEqualToErrorMessage(numberInputContext.maxNumber);
245
173
  };
246
-
247
174
  var openSuggestions = function openSuggestions() {
248
- hasSuggestions() && changeIsOpen(true);
175
+ hasSuggestions(suggestions) && changeIsOpen(true);
249
176
  };
250
-
251
177
  var closeSuggestions = function closeSuggestions() {
252
- changeIsOpen(false);
253
- changeVisualFocusedSuggIndex(-1);
178
+ if (hasSuggestions(suggestions)) {
179
+ changeIsOpen(false);
180
+ changeVisualFocusIndex(-1);
181
+ }
254
182
  };
255
-
256
183
  var changeValue = function changeValue(newValue) {
257
- value !== null && value !== void 0 ? value : setInnerValue(newValue);
258
- var changedValue = typeof newValue === "number" ? newValue.toString() : newValue;
259
- if (isNotOptional(newValue)) onChange === null || onChange === void 0 ? void 0 : onChange({
260
- value: changedValue,
184
+ var formattedValue = typeof newValue === "number" ? newValue.toString() : newValue;
185
+ value !== null && value !== void 0 ? value : setInnerValue(formattedValue);
186
+ if (isRequired(formattedValue, optional)) onChange === null || onChange === void 0 ? void 0 : onChange({
187
+ value: formattedValue,
261
188
  error: translatedLabels.formFields.requiredValueErrorMessage
262
- });else if (isLengthIncorrect(newValue)) onChange === null || onChange === void 0 ? void 0 : onChange({
263
- value: changedValue,
189
+ });else if (isLengthIncorrect(formattedValue, minLength, maxLength)) onChange === null || onChange === void 0 ? void 0 : onChange({
190
+ value: formattedValue,
264
191
  error: translatedLabels.formFields.lengthErrorMessage(minLength, maxLength)
265
- });else if (newValue && pattern && !patternMatch(pattern, newValue)) onChange === null || onChange === void 0 ? void 0 : onChange({
266
- value: changedValue,
192
+ });else if (patternMismatch(pattern, formattedValue)) onChange === null || onChange === void 0 ? void 0 : onChange({
193
+ value: formattedValue,
267
194
  error: translatedLabels.formFields.formatRequestedErrorMessage
268
- });else if (newValue && isNumberIncorrect(newValue)) onChange === null || onChange === void 0 ? void 0 : onChange({
269
- value: changedValue,
270
- error: getNumberErrorMessage(newValue)
195
+ });else if ((numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.typeNumber) === "number" && isNumberIncorrect(Number(newValue), numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.minNumber, numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.maxNumber)) onChange === null || onChange === void 0 ? void 0 : onChange({
196
+ value: formattedValue,
197
+ error: getNumberErrorMessage(Number(newValue))
271
198
  });else onChange === null || onChange === void 0 ? void 0 : onChange({
272
- value: changedValue
199
+ value: formattedValue
273
200
  });
274
201
  };
275
-
276
202
  var handleInputContainerOnClick = function handleInputContainerOnClick() {
277
203
  document.activeElement !== actionRef.current && inputRef.current.focus();
278
204
  };
279
-
280
205
  var handleInputContainerOnMouseDown = function handleInputContainerOnMouseDown(event) {
281
206
  // Avoid input to lose the focus when the container is pressed
282
207
  document.activeElement === inputRef.current && event.preventDefault();
283
208
  };
284
-
285
- var handleIOnChange = function handleIOnChange(event) {
209
+ var handleInputOnChange = function handleInputOnChange(event) {
286
210
  openSuggestions();
287
211
  changeValue(event.target.value);
288
212
  };
289
-
290
- var handleIOnBlur = function handleIOnBlur(event) {
291
- suggestions && closeSuggestions();
292
- if (isNotOptional(event.target.value)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
213
+ var handleInputOnBlur = function handleInputOnBlur(event) {
214
+ closeSuggestions();
215
+ if (isRequired(event.target.value, optional)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
293
216
  value: event.target.value,
294
217
  error: translatedLabels.formFields.requiredValueErrorMessage
295
- });else if (isLengthIncorrect(event.target.value)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
218
+ });else if (isLengthIncorrect(event.target.value, minLength, maxLength)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
296
219
  value: event.target.value,
297
220
  error: translatedLabels.formFields.lengthErrorMessage(minLength, maxLength)
298
- });else if (event.target.value && pattern && !patternMatch(pattern, event.target.value)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
221
+ });else if (patternMismatch(pattern, event.target.value)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
299
222
  value: event.target.value,
300
223
  error: translatedLabels.formFields.formatRequestedErrorMessage
301
- });else if (event.target.value && isNumberIncorrect(event.target.value)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
224
+ });else if ((numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.typeNumber) === "number" && isNumberIncorrect(Number(event.target.value), numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.minNumber, numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.maxNumber)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
302
225
  value: event.target.value,
303
- error: getNumberErrorMessage(event.target.value)
226
+ error: getNumberErrorMessage(Number(event.target.value))
304
227
  });else onBlur === null || onBlur === void 0 ? void 0 : onBlur({
305
228
  value: event.target.value
306
229
  });
307
230
  };
308
-
309
- var handleIOnKeyDown = function handleIOnKeyDown(event) {
310
- switch (event.keyCode) {
311
- case 40:
312
- // Arrow Down
313
- if ((numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.typeNumber) === "number") {
314
- decrementNumber();
315
- event.preventDefault();
316
- } else {
317
- event.preventDefault();
231
+ var handleInputOnKeyDown = function handleInputOnKeyDown(event) {
232
+ switch (event.key) {
233
+ case "Down":
234
+ case "ArrowDown":
235
+ event.preventDefault();
236
+ if ((numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.typeNumber) === "number") decrementNumber();else {
318
237
  openSuggestions();
319
-
320
238
  if (!isAutosuggestError && !isSearching && filteredSuggestions.length > 0) {
321
- changeVisualFocusedSuggIndex(function (visualFocusedSuggIndex) {
239
+ changeVisualFocusIndex(function (visualFocusedSuggIndex) {
322
240
  if (visualFocusedSuggIndex < filteredSuggestions.length - 1) return visualFocusedSuggIndex + 1;else if (visualFocusedSuggIndex === filteredSuggestions.length - 1) return 0;
323
241
  });
324
242
  }
325
243
  }
326
-
327
244
  break;
328
-
329
- case 38:
330
- // Arrow Up
331
- if ((numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.typeNumber) === "number") {
332
- incrementNumber();
333
- event.preventDefault();
334
- } else {
335
- event.preventDefault();
245
+ case "Up":
246
+ case "ArrowUp":
247
+ event.preventDefault();
248
+ if ((numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.typeNumber) === "number") incrementNumber();else {
336
249
  openSuggestions();
337
-
338
250
  if (!isAutosuggestError && !isSearching && filteredSuggestions.length > 0) {
339
- changeVisualFocusedSuggIndex(function (visualFocusedSuggIndex) {
251
+ changeVisualFocusIndex(function (visualFocusedSuggIndex) {
340
252
  if (visualFocusedSuggIndex === 0 || visualFocusedSuggIndex === -1) return filteredSuggestions.length > 0 ? filteredSuggestions.length - 1 : suggestions.length - 1;else return visualFocusedSuggIndex - 1;
341
253
  });
342
254
  }
343
255
  }
344
-
345
256
  break;
346
-
347
- case 27:
348
- // Esc
257
+ case "Esc":
258
+ case "Escape":
349
259
  event.preventDefault();
350
-
351
- if (hasSuggestions()) {
260
+ if (hasSuggestions(suggestions)) {
352
261
  changeValue("");
353
262
  isOpen && closeSuggestions();
354
263
  }
355
-
356
264
  break;
357
-
358
- case 13:
359
- // Enter
360
- if (hasSuggestions() && !isSearching) {
361
- var validFocusedSuggestion = filteredSuggestions.length > 0 && visualFocusedSuggIndex >= 0 && visualFocusedSuggIndex < filteredSuggestions.length;
362
- validFocusedSuggestion && changeValue(filteredSuggestions[visualFocusedSuggIndex]);
265
+ case "Enter":
266
+ if (hasSuggestions(suggestions) && !isSearching) {
267
+ var validFocusedSuggestion = filteredSuggestions.length > 0 && visualFocusIndex >= 0 && visualFocusIndex < filteredSuggestions.length;
268
+ validFocusedSuggestion && changeValue(filteredSuggestions[visualFocusIndex]);
363
269
  isOpen && closeSuggestions();
364
270
  }
365
-
366
271
  break;
367
272
  }
368
273
  };
369
-
274
+ var handleWheel = (0, _react.useCallback)(function (event) {
275
+ if (document.activeElement === inputRef.current) {
276
+ event.preventDefault();
277
+ event.deltaY < 0 ? incrementNumber(inputRef.current.value) : decrementNumber(inputRef.current.value);
278
+ }
279
+ }, []);
370
280
  var handleClearActionOnClick = function handleClearActionOnClick() {
371
281
  changeValue("");
372
282
  inputRef.current.focus();
373
283
  suggestions && closeSuggestions();
374
284
  };
375
-
376
285
  var handleDecrementActionOnClick = function handleDecrementActionOnClick() {
377
286
  decrementNumber();
378
287
  inputRef.current.focus();
379
288
  };
380
-
381
289
  var handleIncrementActionOnClick = function handleIncrementActionOnClick() {
382
290
  incrementNumber();
383
291
  inputRef.current.focus();
384
292
  };
385
-
386
293
  var setNumberProps = function setNumberProps(type, min, max, step) {
387
- var _inputRef$current3, _inputRef$current4, _inputRef$current5, _inputRef$current6;
388
-
389
- type && (inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current3 = inputRef.current) === null || _inputRef$current3 === void 0 ? void 0 : _inputRef$current3.setAttribute("type", type));
390
- min && (inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current4 = inputRef.current) === null || _inputRef$current4 === void 0 ? void 0 : _inputRef$current4.setAttribute("min", min));
391
- max && (inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current5 = inputRef.current) === null || _inputRef$current5 === void 0 ? void 0 : _inputRef$current5.setAttribute("max", max));
392
- step && (inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current6 = inputRef.current) === null || _inputRef$current6 === void 0 ? void 0 : _inputRef$current6.setAttribute("step", step));
294
+ var _inputRef$current, _inputRef$current2, _inputRef$current3, _inputRef$current4;
295
+ min && (inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.setAttribute("min", min));
296
+ max && (inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current2 = inputRef.current) === null || _inputRef$current2 === void 0 ? void 0 : _inputRef$current2.setAttribute("max", max));
297
+ inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current3 = inputRef.current) === null || _inputRef$current3 === void 0 ? void 0 : _inputRef$current3.setAttribute("step", step);
298
+ inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current4 = inputRef.current) === null || _inputRef$current4 === void 0 ? void 0 : _inputRef$current4.setAttribute("type", type);
393
299
  };
394
-
395
300
  var decrementNumber = function decrementNumber() {
396
- var numberValue = value !== null && value !== void 0 ? value : innerValue;
397
-
398
- if (numberInputContext !== null && numberInputContext !== void 0 && numberInputContext.minNumber && parseInt(numberValue) < (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.minNumber)) {
399
- changeValue(parseInt(numberValue));
400
- } else if (numberInputContext !== null && numberInputContext !== void 0 && numberInputContext.maxNumber && parseInt(numberValue) > (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.maxNumber)) {
401
- changeValue(numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.maxNumber);
402
- } else if (numberInputContext !== null && numberInputContext !== void 0 && numberInputContext.minNumber && (parseInt(numberValue) === (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.minNumber) || numberValue === "" || numberInputContext !== null && numberInputContext !== void 0 && numberInputContext.stepNumber && parseInt(numberValue) - (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.stepNumber) < (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.minNumber))) {
403
- changeValue(numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.minNumber);
404
- } else if (numberInputContext !== null && numberInputContext !== void 0 && numberInputContext.stepNumber && numberInputContext !== null && numberInputContext !== void 0 && numberInputContext.minNumber && parseInt(numberValue) - (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.stepNumber) >= (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.minNumber) || numberInputContext !== null && numberInputContext !== void 0 && numberInputContext.stepNumber && numberValue !== "") {
405
- changeValue(parseInt(numberValue) - (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.stepNumber));
406
- } else if (numberInputContext !== null && numberInputContext !== void 0 && numberInputContext.stepNumber && numberValue == "") {
407
- changeValue(-(numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.stepNumber));
408
- } else if (numberValue === "") {
409
- changeValue(-1);
301
+ var currentValue = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : value !== null && value !== void 0 ? value : innerValue;
302
+ var numberValue = Number(currentValue);
303
+ var steppedValue = Math.round((numberValue - (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.stepNumber) + Number.EPSILON) * 100) / 100;
304
+ if (currentValue !== "") {
305
+ if (numberValue < (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.minNumber) || steppedValue < (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.minNumber)) changeValue(numberValue);else if (numberValue > (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.maxNumber)) changeValue(numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.maxNumber);else if (numberValue === (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.minNumber)) changeValue(numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.minNumber);else changeValue(steppedValue);
410
306
  } else {
411
- changeValue(parseInt(numberValue) - 1);
307
+ if ((numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.minNumber) >= 0) changeValue(numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.minNumber);else if ((numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.maxNumber) < 0) changeValue(numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.maxNumber);else changeValue(-numberInputContext.stepNumber);
412
308
  }
413
309
  };
414
-
415
310
  var incrementNumber = function incrementNumber() {
416
- var numberValue = value !== null && value !== void 0 ? value : innerValue;
417
-
418
- if (numberInputContext !== null && numberInputContext !== void 0 && numberInputContext.maxNumber && parseInt(numberValue) > (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.maxNumber)) {
419
- changeValue(parseInt(numberValue));
420
- } else if (numberInputContext !== null && numberInputContext !== void 0 && numberInputContext.minNumber && (parseInt(numberValue) < (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.minNumber) || numberValue === "")) {
421
- changeValue(numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.minNumber);
422
- } else if (numberInputContext !== null && numberInputContext !== void 0 && numberInputContext.maxNumber && (parseInt(numberValue) === (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.maxNumber) || numberInputContext !== null && numberInputContext !== void 0 && numberInputContext.stepNumber && parseInt(numberValue) + (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.stepNumber) > (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.maxNumber))) {
423
- changeValue(numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.maxNumber);
424
- } else if (numberInputContext !== null && numberInputContext !== void 0 && numberInputContext.stepNumber && numberInputContext !== null && numberInputContext !== void 0 && numberInputContext.maxNumber && parseInt(numberValue) + (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.stepNumber) <= (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.maxNumber) || numberInputContext !== null && numberInputContext !== void 0 && numberInputContext.stepNumber && numberValue !== "") {
425
- changeValue(parseInt(numberValue) + (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.stepNumber));
426
- } else if (numberInputContext !== null && numberInputContext !== void 0 && numberInputContext.stepNumber && numberValue == "") {
427
- changeValue(numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.stepNumber);
428
- } else if (numberValue === "") {
429
- changeValue(1);
311
+ var currentValue = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : value !== null && value !== void 0 ? value : innerValue;
312
+ var numberValue = Number(currentValue);
313
+ var steppedValue = Math.round((numberValue + (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.stepNumber) + Number.EPSILON) * 100) / 100;
314
+ if (currentValue !== "") {
315
+ if (numberValue > (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.maxNumber) || steppedValue > (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.maxNumber)) changeValue(numberValue);else if (numberValue < (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.minNumber)) changeValue(numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.minNumber);else if (numberValue === (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.maxNumber)) changeValue(numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.maxNumber);else changeValue(steppedValue);
430
316
  } else {
431
- changeValue(parseInt(numberValue) + 1);
317
+ if ((numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.minNumber) > 0) changeValue(numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.minNumber);else if ((numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.maxNumber) <= 0) changeValue(numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.maxNumber);else changeValue(numberInputContext.stepNumber);
432
318
  }
433
319
  };
434
-
435
- (0, _react.useLayoutEffect)(function () {
436
- var _suggestionsRef$curre, _visualFocusedOptionE;
437
-
438
- var visualFocusedOptionEl = suggestionsRef === null || suggestionsRef === void 0 ? void 0 : (_suggestionsRef$curre = suggestionsRef.current) === null || _suggestionsRef$curre === void 0 ? void 0 : _suggestionsRef$curre.querySelectorAll("[role='option']")[visualFocusedSuggIndex];
439
- visualFocusedOptionEl === null || visualFocusedOptionEl === void 0 ? void 0 : (_visualFocusedOptionE = visualFocusedOptionEl.scrollIntoView) === null || _visualFocusedOptionE === void 0 ? void 0 : _visualFocusedOptionE.call(visualFocusedOptionEl, {
440
- block: "nearest",
441
- inline: "start"
442
- });
443
- }, [visualFocusedSuggIndex]);
444
320
  (0, _react.useEffect)(function () {
445
321
  if (typeof suggestions === "function") {
446
322
  changeIsSearching(true);
@@ -464,11 +340,19 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
464
340
  changeFilteredSuggestions(suggestions.filter(function (suggestion) {
465
341
  return suggestion.toUpperCase().startsWith((value !== null && value !== void 0 ? value : innerValue).toUpperCase());
466
342
  }));
467
- changeVisualFocusedSuggIndex(-1);
343
+ changeVisualFocusIndex(-1);
468
344
  }
469
-
470
- (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.typeNumber) === "number" && setNumberProps(numberInputContext.typeNumber, numberInputContext.minNumber, numberInputContext.maxNumber, numberInputContext.stepNumber);
345
+ numberInputContext != null && setNumberProps(numberInputContext.typeNumber, numberInputContext.minNumber, numberInputContext.maxNumber, numberInputContext.stepNumber);
471
346
  }, [value, innerValue, suggestions, numberInputContext]);
347
+ (0, _react.useEffect)(function () {
348
+ var input = inputRef.current;
349
+ input.addEventListener('wheel', handleWheel, {
350
+ passive: false
351
+ });
352
+ return function () {
353
+ input.removeEventListener('wheel', handleWheel);
354
+ };
355
+ }, [handleWheel]);
472
356
  return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
473
357
  theme: colorsTheme.textInput
474
358
  }, /*#__PURE__*/_react["default"].createElement(TextInputContainer, {
@@ -478,153 +362,126 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
478
362
  }, label && /*#__PURE__*/_react["default"].createElement(Label, {
479
363
  htmlFor: inputId,
480
364
  disabled: disabled,
481
- backgroundType: backgroundType,
482
365
  hasHelperText: helperText ? true : false
483
366
  }, label, " ", optional && /*#__PURE__*/_react["default"].createElement(OptionalLabel, null, translatedLabels.formFields.optionalLabel)), helperText && /*#__PURE__*/_react["default"].createElement(HelperText, {
484
- disabled: disabled,
485
- backgroundType: backgroundType
486
- }, helperText), /*#__PURE__*/_react["default"].createElement(InputContainer, {
367
+ disabled: disabled
368
+ }, helperText), /*#__PURE__*/_react["default"].createElement(AutosuggestWrapper, {
369
+ condition: hasSuggestions(suggestions),
370
+ wrapper: function wrapper(children) {
371
+ return /*#__PURE__*/_react["default"].createElement(Popover.Root, {
372
+ open: isOpen && (filteredSuggestions.length > 0 || isSearching || isAutosuggestError)
373
+ }, /*#__PURE__*/_react["default"].createElement(Popover.Trigger, {
374
+ asChild: true,
375
+ "aria-controls": undefined
376
+ }, children), /*#__PURE__*/_react["default"].createElement(Popover.Portal, null, /*#__PURE__*/_react["default"].createElement(Popover.Content, {
377
+ sideOffset: 5,
378
+ style: {
379
+ zIndex: "2147483647"
380
+ },
381
+ onOpenAutoFocus: function onOpenAutoFocus(event) {
382
+ // Avoid select to lose focus when the list is opened
383
+ event.preventDefault();
384
+ },
385
+ onCloseAutoFocus: function onCloseAutoFocus(event) {
386
+ // Avoid select to lose focus when the list is closed
387
+ event.preventDefault();
388
+ }
389
+ }, /*#__PURE__*/_react["default"].createElement(_Suggestions["default"], {
390
+ id: autosuggestId,
391
+ value: value !== null && value !== void 0 ? value : innerValue,
392
+ suggestions: filteredSuggestions,
393
+ visualFocusIndex: visualFocusIndex,
394
+ highlightedSuggestions: typeof suggestions !== "function",
395
+ searchHasErrors: isAutosuggestError,
396
+ isSearching: isSearching,
397
+ suggestionOnClick: function suggestionOnClick(suggestion) {
398
+ changeValue(suggestion);
399
+ closeSuggestions();
400
+ },
401
+ styles: {
402
+ width: width
403
+ }
404
+ }))));
405
+ }
406
+ }, /*#__PURE__*/_react["default"].createElement(InputContainer, {
487
407
  error: error ? true : false,
488
408
  disabled: disabled,
489
- backgroundType: backgroundType,
409
+ readOnly: readOnly,
490
410
  onClick: handleInputContainerOnClick,
491
- onMouseDown: handleInputContainerOnMouseDown
411
+ onMouseDown: handleInputContainerOnMouseDown,
412
+ ref: inputContainerRef
492
413
  }, prefix && /*#__PURE__*/_react["default"].createElement(Prefix, {
493
- disabled: disabled,
494
- backgroundType: backgroundType
495
- }, prefix), /*#__PURE__*/_react["default"].createElement(Input, {
414
+ disabled: disabled
415
+ }, prefix), /*#__PURE__*/_react["default"].createElement(_main.DxcFlex, {
416
+ gap: "0.25rem",
417
+ alignItems: "center",
418
+ grow: 1
419
+ }, /*#__PURE__*/_react["default"].createElement(Input, {
496
420
  id: inputId,
497
421
  name: name,
498
422
  value: value !== null && value !== void 0 ? value : innerValue,
499
423
  placeholder: placeholder,
500
- onBlur: handleIOnBlur,
501
- onChange: handleIOnChange,
502
- onFocus: function onFocus() {
503
- openSuggestions();
504
- },
505
- onKeyDown: handleIOnKeyDown,
424
+ onBlur: handleInputOnBlur,
425
+ onChange: handleInputOnChange,
426
+ onFocus: !readOnly ? openSuggestions : undefined,
427
+ onKeyDown: !readOnly ? handleInputOnKeyDown : undefined,
506
428
  onMouseDown: function onMouseDown(event) {
507
429
  event.stopPropagation();
508
430
  },
509
431
  disabled: disabled,
432
+ readOnly: readOnly,
510
433
  ref: inputRef,
511
- backgroundType: backgroundType,
512
434
  pattern: pattern,
513
435
  minLength: minLength,
514
436
  maxLength: maxLength,
515
- autoComplete: autocomplete,
437
+ autoComplete: autocomplete === "off" ? "nope" : autocomplete,
516
438
  tabIndex: tabIndex,
517
- role: isTextInputType() && hasSuggestions() ? "combobox" : "textbox",
518
- "aria-autocomplete": isTextInputType() && hasSuggestions() ? "list" : undefined,
519
- "aria-controls": isTextInputType() && hasSuggestions() ? autosuggestId : undefined,
520
- "aria-disabled": disabled,
521
- "aria-expanded": isTextInputType() && hasSuggestions() ? isOpen ? "true" : "false" : undefined,
522
- "aria-activedescendant": isTextInputType() && hasSuggestions() && isOpen && visualFocusedSuggIndex !== -1 ? "suggestion-".concat(visualFocusedSuggIndex) : undefined,
523
- "aria-invalid": error ? "true" : "false",
439
+ type: "text",
440
+ role: hasSuggestions(suggestions) ? "combobox" : undefined,
441
+ "aria-autocomplete": hasSuggestions(suggestions) ? "list" : undefined,
442
+ "aria-controls": hasSuggestions(suggestions) ? autosuggestId : undefined,
443
+ "aria-expanded": hasSuggestions(suggestions) ? isOpen : undefined,
444
+ "aria-haspopup": hasSuggestions(suggestions) ? "listbox" : undefined,
445
+ "aria-activedescendant": hasSuggestions(suggestions) && isOpen && visualFocusIndex !== -1 ? "suggestion-".concat(visualFocusIndex) : undefined,
446
+ "aria-invalid": error ? true : false,
524
447
  "aria-errormessage": error ? errorId : undefined,
525
- "aria-required": optional ? "false" : "true"
448
+ "aria-required": !disabled && !optional
526
449
  }), !disabled && error && /*#__PURE__*/_react["default"].createElement(ErrorIcon, {
527
- backgroundType: backgroundType,
528
450
  "aria-label": "Error"
529
- }, textInputIcons.error), !disabled && clearable && (value !== null && value !== void 0 ? value : innerValue).length > 0 && /*#__PURE__*/_react["default"].createElement(Action, {
530
- onClick: function onClick() {
531
- return handleClearActionOnClick();
532
- },
533
- onMouseDown: function onMouseDown(event) {
534
- event.stopPropagation();
535
- },
536
- backgroundType: backgroundType,
451
+ }, _Icons["default"].error), !disabled && !readOnly && clearable && (value !== null && value !== void 0 ? value : innerValue).length > 0 && /*#__PURE__*/_react["default"].createElement(_ActionIcon["default"], {
452
+ onClick: handleClearActionOnClick,
453
+ icon: _Icons["default"].clear,
537
454
  tabIndex: tabIndex,
538
- title: translatedLabels.textInput.clearFieldActionTitle,
539
- "aria-label": translatedLabels.textInput.clearFieldActionTitle
540
- }, textInputIcons.clear), (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.typeNumber) === "number" ? /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(Action, {
541
- ref: actionRef,
542
- disabled: disabled,
543
- onClick: function onClick() {
544
- return handleDecrementActionOnClick();
545
- },
546
- onMouseDown: function onMouseDown(event) {
547
- event.stopPropagation();
548
- },
549
- backgroundType: backgroundType,
455
+ title: translatedLabels.textInput.clearFieldActionTitle
456
+ }), (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.typeNumber) === "number" && /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(_ActionIcon["default"], {
457
+ onClick: !readOnly ? handleDecrementActionOnClick : undefined,
458
+ icon: _Icons["default"].decrement,
550
459
  tabIndex: tabIndex,
551
- title: translatedLabels.numberInput.decrementValueTitle,
552
- "aria-label": translatedLabels.numberInput.decrementValueTitle
553
- }, textInputIcons.decrement), /*#__PURE__*/_react["default"].createElement(Action, {
554
460
  ref: actionRef,
555
- disabled: disabled,
556
- onClick: function onClick() {
557
- return handleIncrementActionOnClick();
558
- },
559
- onMouseDown: function onMouseDown(event) {
560
- event.stopPropagation();
561
- },
562
- backgroundType: backgroundType,
461
+ title: translatedLabels.numberInput.decrementValueTitle,
462
+ disabled: disabled
463
+ }), /*#__PURE__*/_react["default"].createElement(_ActionIcon["default"], {
464
+ onClick: !readOnly ? handleIncrementActionOnClick : undefined,
465
+ icon: _Icons["default"].increment,
563
466
  tabIndex: tabIndex,
467
+ ref: actionRef,
564
468
  title: translatedLabels.numberInput.incrementValueTitle,
565
- "aria-label": translatedLabels.numberInput.incrementValueTitle
566
- }, textInputIcons.increment)) : action && /*#__PURE__*/_react["default"].createElement(Action, {
469
+ disabled: disabled
470
+ })), action && /*#__PURE__*/_react["default"].createElement(_ActionIcon["default"], {
471
+ onClick: !readOnly ? action.onClick : undefined,
472
+ icon: action.icon,
473
+ tabIndex: tabIndex,
567
474
  ref: actionRef,
568
- disabled: disabled,
569
- onClick: function onClick() {
570
- return action.onClick();
571
- },
572
- onMouseDown: function onMouseDown(event) {
573
- event.stopPropagation();
574
- },
575
475
  title: action.title,
576
- "aria-label": action.title,
577
- backgroundType: backgroundType,
578
- tabIndex: tabIndex
579
- }, typeof action.icon === "string" ? /*#__PURE__*/_react["default"].createElement(ActionIcon, {
580
- src: action.icon
581
- }) : action.icon), suffix && /*#__PURE__*/_react["default"].createElement(Suffix, {
582
- disabled: disabled,
583
- backgroundType: backgroundType
584
- }, suffix), isOpen && (filteredSuggestions.length > 0 || isSearching || isAutosuggestError) && /*#__PURE__*/_react["default"].createElement(Suggestions, {
585
- id: autosuggestId,
586
- error: isAutosuggestError ? true : false,
587
- onMouseDown: function onMouseDown(event) {
588
- event.preventDefault();
589
- },
590
- ref: suggestionsRef,
591
- role: "listbox",
592
- "aria-label": label
593
- }, !isSearching && !isAutosuggestError && filteredSuggestions.length > 0 && filteredSuggestions.map(function (suggestion, index) {
594
- return /*#__PURE__*/_react["default"].createElement(_Suggestion["default"], {
595
- key: "suggestion-".concat(index),
596
- id: "suggestion-".concat(index),
597
- value: value !== null && value !== void 0 ? value : innerValue,
598
- onClick: function onClick() {
599
- changeValue(suggestion);
600
- closeSuggestions();
601
- },
602
- suggestion: suggestion,
603
- isLast: index === lastOptionIndex,
604
- visuallyFocused: visualFocusedSuggIndex === index,
605
- highlighted: typeof suggestions === "function"
606
- });
607
- }), isSearching && /*#__PURE__*/_react["default"].createElement(SuggestionsSystemMessage, null, translatedLabels.textInput.searchingMessage), isAutosuggestError && /*#__PURE__*/_react["default"].createElement(SuggestionsError, null, /*#__PURE__*/_react["default"].createElement(SuggestionsErrorIcon, {
608
- backgroundType: backgroundType
609
- }, textInputIcons.error), translatedLabels.textInput.fetchingDataErrorMessage))), !disabled && typeof error === "string" && /*#__PURE__*/_react["default"].createElement(Error, {
476
+ disabled: disabled
477
+ })), suffix && /*#__PURE__*/_react["default"].createElement(Suffix, {
478
+ disabled: disabled
479
+ }, suffix))), !disabled && typeof error === "string" && /*#__PURE__*/_react["default"].createElement(Error, {
610
480
  id: errorId,
611
- backgroundType: backgroundType,
612
481
  "aria-live": error ? "assertive" : "off"
613
482
  }, error)));
614
483
  });
615
-
616
- var sizes = {
617
- small: "240px",
618
- medium: "360px",
619
- large: "480px",
620
- fillParent: "100%"
621
- };
622
-
623
- var calculateWidth = function calculateWidth(margin, size) {
624
- return size === "fillParent" ? "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")") : sizes[size];
625
- };
626
-
627
- var TextInputContainer = _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) {
484
+ var TextInputContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n width: ", ";\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n"])), function (props) {
628
485
  return calculateWidth(props.margin, props.size);
629
486
  }, function (props) {
630
487
  return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
@@ -637,9 +494,8 @@ var TextInputContainer = _styledComponents["default"].div(_templateObject || (_t
637
494
  }, function (props) {
638
495
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
639
496
  });
640
-
641
497
  var Label = _styledComponents["default"].label(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n ", "\n"])), function (props) {
642
- return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledLabelFontColorOnDark : props.theme.disabledLabelFontColor : props.backgroundType === "dark" ? props.theme.labelFontColorOnDark : props.theme.labelFontColor;
498
+ return props.disabled ? props.theme.disabledLabelFontColor : props.theme.labelFontColor;
643
499
  }, function (props) {
644
500
  return props.theme.fontFamily;
645
501
  }, function (props) {
@@ -653,13 +509,11 @@ var Label = _styledComponents["default"].label(_templateObject2 || (_templateObj
653
509
  }, function (props) {
654
510
  return !props.hasHelperText && "margin-bottom: 0.25rem";
655
511
  });
656
-
657
512
  var OptionalLabel = _styledComponents["default"].span(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n font-weight: ", ";\n"])), function (props) {
658
513
  return props.theme.optionalLabelFontWeight;
659
514
  });
660
-
661
- var HelperText = _styledComponents["default"].span(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n margin-bottom: 0.25rem;\n"])), function (props) {
662
- return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledHelperTextFontColorOnDark : props.theme.disabledHelperTextFontColor : props.backgroundType === "dark" ? props.theme.helperTextFontColorOnDark : props.theme.helperTextFontColor;
515
+ 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) {
516
+ return props.disabled ? props.theme.disabledHelperTextFontColor : props.theme.helperTextFontColor;
663
517
  }, function (props) {
664
518
  return props.theme.fontFamily;
665
519
  }, function (props) {
@@ -671,21 +525,17 @@ var HelperText = _styledComponents["default"].span(_templateObject4 || (_templat
671
525
  }, function (props) {
672
526
  return props.theme.helperTextLineHeight;
673
527
  });
674
-
675
- var InputContainer = _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\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) {
676
- if (props.disabled) return props.backgroundType === "dark" ? "background-color: ".concat(props.theme.disabledContainerFillColorOnDark, ";") : "background-color: ".concat(props.theme.disabledContainerFillColor, ";");
677
- }, function (props) {
678
- if (props.disabled) return props.backgroundType === "dark" ? props.theme.disabledBorderColorOnDark : props.theme.disabledBorderColor;else return props.backgroundType === "dark" ? props.theme.enabledBorderColorOnDark : props.theme.enabledBorderColor;
528
+ var InputContainer = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n position: relative;\n display: flex;\n align-items: center;\n height: calc(2.5rem - 2px);\n padding: 0 0.5rem;\n\n ", "\n box-shadow: 0 0 0 2px transparent;\n border-radius: 4px;\n border: 1px solid\n ", ";\n ", "\n\n ", ";\n"])), function (props) {
529
+ if (props.disabled) return "background-color: ".concat(props.theme.disabledContainerFillColor, ";");
679
530
  }, function (props) {
680
- return props.error && !props.disabled && "border-color: transparent;\n box-shadow: 0 0 0 2px ".concat(props.backgroundType === "dark" ? props.theme.errorBorderColorOnDark : props.theme.errorBorderColor, ";\n ");
531
+ if (props.disabled) return props.theme.disabledBorderColor;else if (props.readOnly) return props.theme.readOnlyBorderColor;else return props.theme.enabledBorderColor;
681
532
  }, function (props) {
682
- return props.disabled && "cursor: not-allowed;";
533
+ return props.error && !props.disabled && "border-color: transparent;\n box-shadow: 0 0 0 2px ".concat(props.theme.errorBorderColor, ";\n ");
683
534
  }, function (props) {
684
- return !props.disabled && "\n &:hover {\n border-color: ".concat(props.error ? "transparent" : props.backgroundType === "dark" ? props.theme.hoverBorderColorOnDark : props.theme.hoverBorderColor, ";\n ").concat(props.error && "box-shadow: 0 0 0 2px ".concat(props.backgroundType === "dark" ? props.theme.hoverErrorBorderColorOnDark : props.theme.hoverErrorBorderColor, ";"), "\n }\n &:focus-within {\n border-color: transparent;\n box-shadow: 0 0 0 2px ").concat(props.backgroundType === "dark" ? props.theme.focusBorderColorOnDark : props.theme.focusBorderColor, ";\n }\n ");
535
+ return !props.disabled ? "\n &:hover {\n border-color: ".concat(props.error ? "transparent" : props.readOnly ? props.theme.hoverReadOnlyBorderColor : props.theme.hoverBorderColor, ";\n ").concat(props.error ? "box-shadow: 0 0 0 2px ".concat(props.theme.hoverErrorBorderColor, ";") : "", "\n }\n &:focus-within {\n border-color: transparent;\n box-shadow: 0 0 0 2px ").concat(props.theme.focusBorderColor, ";\n }\n ") : "cursor: not-allowed;";
685
536
  });
686
-
687
537
  var Input = _styledComponents["default"].input(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n height: calc(2.5rem - 2px);\n width: 100%;\n background: none;\n border: none;\n outline: none;\n padding: 0 0.5rem;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n\n color: ", ";\n\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: 1.5em;\n ", "\n\n ::placeholder {\n color: ", ";\n }\n"])), function (props) {
688
- return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledValueFontColorOnDark : props.theme.disabledValueFontColor : props.backgroundType === "dark" ? props.theme.valueFontColorOnDark : props.theme.valueFontColor;
538
+ return props.disabled ? props.theme.disabledValueFontColor : props.theme.valueFontColor;
689
539
  }, function (props) {
690
540
  return props.theme.fontFamily;
691
541
  }, function (props) {
@@ -697,74 +547,26 @@ var Input = _styledComponents["default"].input(_templateObject6 || (_templateObj
697
547
  }, function (props) {
698
548
  return props.disabled && "cursor: not-allowed;";
699
549
  }, function (props) {
700
- return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledPlaceholderFontColorOnDark : props.theme.disabledPlaceholderFontColor : props.backgroundType === "dark" ? props.theme.placeholderFontColorOnDark : props.theme.placeholderFontColor;
701
- });
702
-
703
- var ActionIcon = _styledComponents["default"].img(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n width: 16px;\n height: 16px;\n"])));
704
-
705
- var Action = _styledComponents["default"].button(_templateObject8 || (_templateObject8 = (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 ", "\n\n box-shadow: 0 0 0 2px transparent;\n background-color: ", ";\n\n color: ", ";\n\n ", "\n\n svg {\n line-height: 18px;\n }\n"])), function (props) {
706
- return props.theme.fontFamily;
707
- }, function (props) {
708
- return props.disabled ? "cursor: not-allowed;" : "cursor: pointer;";
709
- }, function (props) {
710
- return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledActionBackgroundColorOnDark : props.theme.disabledActionBackgroundColor : props.backgroundType === "dark" ? props.theme.actionBackgroundColorOnDark : props.theme.actionBackgroundColor;
711
- }, function (props) {
712
- return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledActionIconColorOnDark : props.theme.disabledActionIconColor : props.backgroundType === "dark" ? props.theme.actionIconColorOnDark : props.theme.actionIconColor;
713
- }, function (props) {
714
- return !props.disabled && "\n &:focus {\n outline: none;\n box-shadow: 0 0 0 2px ".concat(props.backgroundType === "dark" ? props.theme.focusActionBorderColorOnDark : props.theme.focusActionBorderColor, ";\n color: ").concat(props.backgroundType === "dark" ? props.theme.focusActionIconColorOnDark : props.theme.focusActionIconColor, ";\n }\n &:focus-visible {\n outline: none;\n box-shadow: 0 0 0 2px ").concat(props.backgroundType === "dark" ? props.theme.focusActionBorderColorOnDark : props.theme.focusActionBorderColor, ";\n color: ").concat(props.backgroundType === "dark" ? props.theme.focusActionIconColorOnDark : props.theme.focusActionIconColor, ";\n }\n &:hover {\n background-color: ").concat(props.backgroundType === "dark" ? props.theme.hoverActionBackgroundColorOnDark : props.theme.hoverActionBackgroundColor, ";\n color: ").concat(props.backgroundType === "dark" ? props.theme.hoverActionIconColorOnDark : props.theme.hoverActionIconColor, ";\n }\n &:active {\n background-color: ").concat(props.backgroundType === "dark" ? props.theme.activeActionBackgroundColorOnDark : props.theme.activeActionBackgroundColor, ";\n color: ").concat(props.backgroundType === "dark" ? props.theme.activeActionIconColorOnDark : props.theme.activeActionIconColor, ";\n }\n ");
550
+ return props.disabled ? props.theme.disabledPlaceholderFontColor : props.theme.placeholderFontColor;
715
551
  });
716
-
717
- var Prefix = _styledComponents["default"].span(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n height: 1.5rem;\n line-height: 1.5rem;\n margin-left: 0.25rem;\n padding: 0 0.5rem 0 0;\n ", ";\n font-family: ", ";\n font-size: 1rem;\n pointer-events: none;\n"])), function (props) {
718
- var color = props.disabled ? props.backgroundType === "dark" ? props.theme.disabledPrefixColorOnDark : props.theme.disabledPrefixColor : props.backgroundType === "dark" ? props.theme.prefixColorOnDark : props.theme.prefixColor;
552
+ var Prefix = _styledComponents["default"].span(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n height: 1.5rem;\n line-height: 1.5rem;\n margin-left: 0.25rem;\n padding: 0 0.5rem 0 0;\n ", ";\n font-family: ", ";\n font-size: 1rem;\n pointer-events: none;\n"])), function (props) {
553
+ var color = props.disabled ? props.theme.disabledPrefixColor : props.theme.prefixColor;
719
554
  return "color: ".concat(color, "; border-right: 1px solid ").concat(color, ";");
720
555
  }, function (props) {
721
556
  return props.theme.fontFamily;
722
557
  });
723
-
724
- var Suffix = _styledComponents["default"].span(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2["default"])(["\n height: 1.5rem;\n line-height: 1.5rem;\n margin: 0 0.25rem;\n padding: 0 0 0 0.5rem;\n ", ";\n font-family: ", ";\n font-size: 1rem;\n pointer-events: none;\n"])), function (props) {
725
- var color = props.disabled ? props.backgroundType === "dark" ? props.theme.disabledSuffixColorOnDark : props.theme.disabledSuffixColor : props.backgroundType === "dark" ? props.theme.suffixColorOnDark : props.theme.suffixColor;
558
+ var Suffix = _styledComponents["default"].span(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n height: 1.5rem;\n line-height: 1.5rem;\n margin: 0 0.25rem;\n padding: 0 0 0 0.5rem;\n ", ";\n font-family: ", ";\n font-size: 1rem;\n pointer-events: none;\n"])), function (props) {
559
+ var color = props.disabled ? props.theme.disabledSuffixColor : props.theme.suffixColor;
726
560
  return "color: ".concat(color, "; border-left: 1px solid ").concat(color, ";");
727
561
  }, function (props) {
728
562
  return props.theme.fontFamily;
729
563
  });
730
-
731
- var ErrorIcon = _styledComponents["default"].span(_templateObject11 || (_templateObject11 = (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 color: ", ";\n\n svg {\n line-height: 18px;\n font-size: 1.25rem;\n }\n"])), function (props) {
732
- return props.backgroundType === "dark" ? props.theme.errorIconColorOnDark : props.theme.errorIconColor;
733
- });
734
-
735
- var Error = _styledComponents["default"].span(_templateObject12 || (_templateObject12 = (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) {
736
- return props.backgroundType === "dark" ? props.theme.errorMessageColorOnDark : props.theme.errorMessageColor;
737
- }, function (props) {
738
- return props.theme.fontFamily;
564
+ var ErrorIcon = _styledComponents["default"].span(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-wrap: wrap;\n align-content: center;\n padding: 3px;\n height: 18px;\n width: 18px;\n color: ", ";\n\n svg {\n line-height: 18px;\n font-size: 1.25rem;\n }\n"])), function (props) {
565
+ return props.theme.errorIconColor;
739
566
  });
740
-
741
- var Suggestions = _styledComponents["default"].ul(_templateObject13 || (_templateObject13 = (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 ", ";\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) {
742
- return props.error ? props.theme.errorListDialogBackgroundColor : props.theme.listDialogBackgroundColor;
743
- }, function (props) {
744
- return props.error ? props.theme.errorListDialogBorderColor : props.theme.listDialogBorderColor;
745
- }, function (props) {
746
- return props.theme.listOptionFontColor;
567
+ var Error = _styledComponents["default"].span(_templateObject10 || (_templateObject10 = (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) {
568
+ return props.theme.errorMessageColor;
747
569
  }, function (props) {
748
570
  return props.theme.fontFamily;
749
- }, function (props) {
750
- return props.theme.listOptionFontSize;
751
- }, function (props) {
752
- return props.theme.listOptionFontStyle;
753
- }, function (props) {
754
- return props.theme.listOptionFontWeight;
755
- });
756
-
757
- var SuggestionsSystemMessage = _styledComponents["default"].span(_templateObject14 || (_templateObject14 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n padding: 0.25rem 1rem;\n color: ", ";\n line-height: 1.715em;\n"])), function (props) {
758
- return props.theme.systemMessageFontColor;
759
- });
760
-
761
- var SuggestionsErrorIcon = _styledComponents["default"].span(_templateObject15 || (_templateObject15 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-wrap: wrap;\n align-content: center;\n margin-right: 0.5rem;\n height: 18px;\n width: 18px;\n color: ", ";\n"])), function (props) {
762
- return props.backgroundType === "dark" ? props.theme.errorIconColorOnDark : props.theme.errorIconColor;
763
571
  });
764
-
765
- var SuggestionsError = _styledComponents["default"].span(_templateObject16 || (_templateObject16 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n padding: 0.25rem 1rem;\n align-items: center;\n line-height: 1.715em;\n color: ", ";\n"])), function (props) {
766
- return props.theme.errorListDialogFontColor;
767
- });
768
-
769
- var _default = DxcTextInput;
770
- exports["default"] = _default;
572
+ var _default = exports["default"] = DxcTextInput;