@dxc-technology/halstack-react 0.0.0-0f1b72b → 0.0.0-100df21

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 (304) hide show
  1. package/BackgroundColorContext.d.ts +1 -10
  2. package/BackgroundColorContext.js +5 -22
  3. package/HalstackContext.d.ts +1229 -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/alert/Alert.js +20 -59
  19. package/alert/Alert.stories.tsx +28 -0
  20. package/alert/Alert.test.js +29 -46
  21. package/alert/types.d.ts +5 -5
  22. package/badge/Badge.js +4 -17
  23. package/badge/types.d.ts +1 -1
  24. package/bleed/Bleed.js +13 -21
  25. package/bleed/Bleed.stories.tsx +64 -63
  26. package/bleed/types.d.ts +2 -2
  27. package/box/Box.d.ts +1 -1
  28. package/box/Box.js +19 -60
  29. package/box/Box.stories.tsx +38 -51
  30. package/box/Box.test.js +2 -7
  31. package/box/types.d.ts +3 -14
  32. package/bulleted-list/BulletedList.d.ts +7 -0
  33. package/bulleted-list/BulletedList.js +89 -0
  34. package/bulleted-list/BulletedList.stories.tsx +115 -0
  35. package/bulleted-list/types.d.ts +38 -0
  36. package/button/Button.d.ts +1 -1
  37. package/button/Button.js +63 -117
  38. package/button/Button.stories.tsx +160 -90
  39. package/button/Button.test.js +18 -17
  40. package/button/types.d.ts +12 -8
  41. package/card/Card.d.ts +1 -1
  42. package/card/Card.js +48 -89
  43. package/card/Card.stories.tsx +12 -42
  44. package/card/Card.test.js +11 -22
  45. package/card/types.d.ts +6 -11
  46. package/checkbox/Checkbox.d.ts +2 -2
  47. package/checkbox/Checkbox.js +140 -182
  48. package/checkbox/Checkbox.stories.tsx +128 -94
  49. package/checkbox/Checkbox.test.js +160 -39
  50. package/checkbox/types.d.ts +11 -3
  51. package/chip/Chip.js +39 -79
  52. package/chip/Chip.stories.tsx +121 -26
  53. package/chip/Chip.test.js +16 -31
  54. package/chip/types.d.ts +4 -4
  55. package/common/OpenSans.css +68 -80
  56. package/common/coreTokens.d.ts +237 -0
  57. package/common/coreTokens.js +184 -0
  58. package/common/utils.d.ts +1 -0
  59. package/common/utils.js +6 -12
  60. package/common/variables.d.ts +1381 -0
  61. package/common/variables.js +914 -1131
  62. package/container/Container.d.ts +4 -0
  63. package/container/Container.js +194 -0
  64. package/container/Container.stories.tsx +214 -0
  65. package/container/types.d.ts +74 -0
  66. package/date-input/Calendar.d.ts +4 -0
  67. package/date-input/Calendar.js +214 -0
  68. package/date-input/DateInput.js +150 -299
  69. package/date-input/DateInput.stories.tsx +203 -56
  70. package/date-input/DateInput.test.js +700 -371
  71. package/date-input/DatePicker.d.ts +4 -0
  72. package/date-input/DatePicker.js +115 -0
  73. package/date-input/Icons.d.ts +6 -0
  74. package/date-input/Icons.js +58 -0
  75. package/date-input/YearPicker.d.ts +4 -0
  76. package/date-input/YearPicker.js +100 -0
  77. package/date-input/types.d.ts +72 -15
  78. package/dialog/Dialog.d.ts +1 -1
  79. package/dialog/Dialog.js +73 -107
  80. package/dialog/Dialog.stories.tsx +320 -167
  81. package/dialog/Dialog.test.js +287 -20
  82. package/dialog/types.d.ts +18 -25
  83. package/dropdown/Dropdown.d.ts +1 -1
  84. package/dropdown/Dropdown.js +243 -300
  85. package/dropdown/Dropdown.stories.tsx +245 -56
  86. package/dropdown/Dropdown.test.js +575 -165
  87. package/dropdown/DropdownMenu.d.ts +4 -0
  88. package/dropdown/DropdownMenu.js +63 -0
  89. package/dropdown/DropdownMenuItem.d.ts +4 -0
  90. package/dropdown/DropdownMenuItem.js +67 -0
  91. package/dropdown/types.d.ts +32 -14
  92. package/file-input/FileInput.d.ts +2 -2
  93. package/file-input/FileInput.js +241 -355
  94. package/file-input/FileInput.stories.tsx +123 -12
  95. package/file-input/FileInput.test.js +369 -367
  96. package/file-input/FileItem.d.ts +4 -14
  97. package/file-input/FileItem.js +45 -96
  98. package/file-input/types.d.ts +25 -8
  99. package/flex/Flex.d.ts +4 -0
  100. package/flex/Flex.js +57 -0
  101. package/flex/Flex.stories.tsx +112 -0
  102. package/flex/types.d.ts +97 -0
  103. package/footer/Footer.d.ts +1 -1
  104. package/footer/Footer.js +55 -115
  105. package/footer/Footer.stories.tsx +41 -19
  106. package/footer/Footer.test.js +33 -57
  107. package/footer/Icons.d.ts +2 -2
  108. package/footer/Icons.js +3 -8
  109. package/footer/types.d.ts +21 -28
  110. package/grid/Grid.d.ts +7 -0
  111. package/grid/Grid.js +76 -0
  112. package/grid/Grid.stories.tsx +219 -0
  113. package/grid/types.d.ts +115 -0
  114. package/header/Header.d.ts +4 -3
  115. package/header/Header.js +85 -168
  116. package/header/Header.stories.tsx +118 -39
  117. package/header/Header.test.js +13 -26
  118. package/header/Icons.d.ts +2 -2
  119. package/header/Icons.js +4 -9
  120. package/header/types.d.ts +5 -19
  121. package/heading/Heading.js +10 -32
  122. package/heading/Heading.test.js +71 -88
  123. package/heading/types.d.ts +7 -7
  124. package/image/Image.d.ts +4 -0
  125. package/image/Image.js +70 -0
  126. package/image/Image.stories.tsx +127 -0
  127. package/image/types.d.ts +72 -0
  128. package/inset/Inset.js +13 -21
  129. package/inset/Inset.stories.tsx +5 -4
  130. package/inset/types.d.ts +2 -2
  131. package/layout/ApplicationLayout.d.ts +15 -6
  132. package/layout/ApplicationLayout.js +51 -116
  133. package/layout/ApplicationLayout.stories.tsx +81 -45
  134. package/layout/Icons.d.ts +8 -5
  135. package/layout/Icons.js +51 -59
  136. package/layout/SidenavContext.d.ts +1 -1
  137. package/layout/SidenavContext.js +3 -9
  138. package/layout/types.d.ts +21 -32
  139. package/link/Link.js +25 -46
  140. package/link/Link.stories.tsx +73 -6
  141. package/link/Link.test.js +24 -44
  142. package/link/types.d.ts +14 -14
  143. package/main.d.ts +10 -12
  144. package/main.js +41 -106
  145. package/{tabs-nav → nav-tabs}/NavTabs.d.ts +2 -2
  146. package/{tabs-nav → nav-tabs}/NavTabs.js +22 -57
  147. package/{tabs-nav → nav-tabs}/NavTabs.stories.tsx +111 -7
  148. package/{tabs-nav → nav-tabs}/NavTabs.test.js +37 -44
  149. package/nav-tabs/Tab.js +117 -0
  150. package/{tabs-nav → nav-tabs}/types.d.ts +14 -15
  151. package/number-input/NumberInput.d.ts +7 -0
  152. package/number-input/NumberInput.js +26 -35
  153. package/number-input/NumberInput.stories.tsx +42 -26
  154. package/number-input/NumberInput.test.js +701 -377
  155. package/number-input/types.d.ts +11 -5
  156. package/package.json +43 -46
  157. package/paginator/Icons.d.ts +5 -0
  158. package/paginator/Icons.js +21 -47
  159. package/paginator/Paginator.js +23 -59
  160. package/paginator/Paginator.stories.tsx +24 -0
  161. package/paginator/Paginator.test.js +253 -226
  162. package/paginator/types.d.ts +3 -3
  163. package/paragraph/Paragraph.d.ts +5 -0
  164. package/paragraph/Paragraph.js +22 -0
  165. package/paragraph/Paragraph.stories.tsx +27 -0
  166. package/password-input/Icons.d.ts +6 -0
  167. package/password-input/Icons.js +35 -0
  168. package/password-input/PasswordInput.js +57 -126
  169. package/password-input/PasswordInput.stories.tsx +1 -33
  170. package/password-input/PasswordInput.test.js +160 -142
  171. package/password-input/types.d.ts +8 -7
  172. package/progress-bar/ProgressBar.js +65 -91
  173. package/progress-bar/{ProgressBar.stories.jsx → ProgressBar.stories.tsx} +39 -4
  174. package/progress-bar/ProgressBar.test.js +72 -44
  175. package/progress-bar/types.d.ts +3 -3
  176. package/quick-nav/QuickNav.js +27 -45
  177. package/quick-nav/QuickNav.stories.tsx +146 -27
  178. package/quick-nav/types.d.ts +10 -10
  179. package/radio-group/Radio.d.ts +1 -1
  180. package/radio-group/Radio.js +59 -76
  181. package/radio-group/RadioGroup.js +67 -114
  182. package/radio-group/RadioGroup.stories.tsx +132 -18
  183. package/radio-group/RadioGroup.test.js +518 -457
  184. package/radio-group/types.d.ts +10 -10
  185. package/resultset-table/Icons.d.ts +7 -0
  186. package/resultset-table/Icons.js +47 -0
  187. package/resultset-table/ResultsetTable.js +159 -0
  188. package/{resultsetTable → resultset-table}/ResultsetTable.stories.tsx +50 -25
  189. package/{resultsetTable → resultset-table}/ResultsetTable.test.js +101 -144
  190. package/{resultsetTable → resultset-table}/types.d.ts +7 -7
  191. package/select/Icons.d.ts +7 -7
  192. package/select/Icons.js +1 -5
  193. package/select/Listbox.js +17 -49
  194. package/select/Option.js +20 -50
  195. package/select/Select.js +119 -198
  196. package/select/Select.stories.tsx +497 -152
  197. package/select/Select.test.js +1966 -1758
  198. package/select/types.d.ts +16 -19
  199. package/sidenav/Icons.d.ts +7 -0
  200. package/sidenav/Icons.js +47 -0
  201. package/sidenav/Sidenav.d.ts +6 -5
  202. package/sidenav/Sidenav.js +127 -78
  203. package/sidenav/Sidenav.stories.tsx +251 -151
  204. package/sidenav/Sidenav.test.js +26 -45
  205. package/sidenav/types.d.ts +52 -26
  206. package/slider/Slider.d.ts +2 -2
  207. package/slider/Slider.js +148 -181
  208. package/slider/Slider.test.js +185 -81
  209. package/slider/types.d.ts +7 -3
  210. package/spinner/Spinner.js +31 -75
  211. package/spinner/{Spinner.stories.jsx → Spinner.stories.tsx} +53 -27
  212. package/spinner/Spinner.test.js +26 -35
  213. package/spinner/types.d.ts +3 -3
  214. package/switch/Switch.d.ts +2 -2
  215. package/switch/Switch.js +145 -126
  216. package/switch/Switch.stories.tsx +37 -60
  217. package/switch/Switch.test.js +138 -56
  218. package/switch/types.d.ts +7 -3
  219. package/table/Table.js +8 -30
  220. package/table/{Table.stories.jsx → Table.stories.tsx} +80 -1
  221. package/table/Table.test.js +3 -8
  222. package/table/types.d.ts +8 -8
  223. package/tabs/Tab.d.ts +4 -0
  224. package/tabs/Tab.js +113 -0
  225. package/tabs/Tabs.js +315 -141
  226. package/tabs/Tabs.stories.tsx +119 -5
  227. package/tabs/Tabs.test.js +223 -69
  228. package/tabs/types.d.ts +28 -18
  229. package/tag/Tag.js +29 -61
  230. package/tag/Tag.stories.tsx +14 -1
  231. package/tag/Tag.test.js +20 -31
  232. package/tag/types.d.ts +7 -7
  233. package/text-input/Icons.d.ts +8 -0
  234. package/text-input/Icons.js +56 -0
  235. package/text-input/Suggestion.js +40 -28
  236. package/text-input/Suggestions.d.ts +4 -0
  237. package/text-input/Suggestions.js +84 -0
  238. package/text-input/TextInput.js +291 -483
  239. package/text-input/TextInput.stories.tsx +266 -275
  240. package/text-input/TextInput.test.js +1402 -1375
  241. package/text-input/types.d.ts +43 -16
  242. package/textarea/Textarea.js +70 -113
  243. package/textarea/Textarea.stories.tsx +174 -0
  244. package/textarea/Textarea.test.js +152 -183
  245. package/textarea/types.d.ts +9 -5
  246. package/toggle-group/ToggleGroup.d.ts +2 -2
  247. package/toggle-group/ToggleGroup.js +92 -106
  248. package/toggle-group/ToggleGroup.stories.tsx +49 -4
  249. package/toggle-group/ToggleGroup.test.js +69 -88
  250. package/toggle-group/types.d.ts +26 -17
  251. package/typography/Typography.d.ts +4 -0
  252. package/typography/Typography.js +23 -0
  253. package/typography/Typography.stories.tsx +198 -0
  254. package/typography/types.d.ts +18 -0
  255. package/typography/types.js +5 -0
  256. package/useTheme.d.ts +1133 -1
  257. package/useTheme.js +2 -9
  258. package/useTranslatedLabels.d.ts +84 -1
  259. package/useTranslatedLabels.js +1 -7
  260. package/utils/BaseTypography.d.ts +21 -0
  261. package/utils/BaseTypography.js +94 -0
  262. package/utils/FocusLock.d.ts +13 -0
  263. package/utils/FocusLock.js +121 -0
  264. package/wizard/Wizard.js +24 -66
  265. package/wizard/Wizard.stories.tsx +40 -1
  266. package/wizard/Wizard.test.js +54 -81
  267. package/wizard/types.d.ts +7 -7
  268. package/card/ice-cream.jpg +0 -0
  269. package/common/RequiredComponent.js +0 -32
  270. package/inline/Inline.d.ts +0 -4
  271. package/inline/Inline.js +0 -54
  272. package/inline/Inline.stories.tsx +0 -240
  273. package/inline/types.d.ts +0 -32
  274. package/list/List.d.ts +0 -4
  275. package/list/List.js +0 -47
  276. package/list/List.stories.tsx +0 -95
  277. package/list/types.d.ts +0 -7
  278. package/number-input/NumberInputContext.d.ts +0 -4
  279. package/number-input/NumberInputContext.js +0 -19
  280. package/number-input/numberInputContextTypes.d.ts +0 -19
  281. package/resultsetTable/ResultsetTable.js +0 -254
  282. package/row/Row.d.ts +0 -3
  283. package/row/Row.js +0 -127
  284. package/row/Row.stories.tsx +0 -237
  285. package/row/types.d.ts +0 -28
  286. package/slider/Slider.stories.tsx +0 -177
  287. package/stack/Stack.d.ts +0 -3
  288. package/stack/Stack.js +0 -97
  289. package/stack/Stack.stories.tsx +0 -164
  290. package/stack/types.d.ts +0 -24
  291. package/tabs-nav/Tab.js +0 -132
  292. package/text/Text.d.ts +0 -7
  293. package/text/Text.js +0 -30
  294. package/text/Text.stories.tsx +0 -19
  295. package/textarea/Textarea.stories.jsx +0 -157
  296. /package/{inline → bulleted-list}/types.js +0 -0
  297. /package/{list → container}/types.js +0 -0
  298. /package/{resultsetTable → flex}/types.js +0 -0
  299. /package/{row → grid}/types.js +0 -0
  300. /package/{stack → image}/types.js +0 -0
  301. /package/{tabs-nav → nav-tabs}/Tab.d.ts +0 -0
  302. /package/{tabs-nav → nav-tabs}/types.js +0 -0
  303. /package/{resultsetTable → resultset-table}/ResultsetTable.d.ts +0 -0
  304. /package/{number-input/numberInputContextTypes.js → resultset-table/types.js} +0 -0
@@ -1,94 +1,43 @@
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 _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11;
24
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
25
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof3(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
26
+ var sizes = {
27
+ small: "240px",
28
+ medium: "360px",
29
+ large: "480px",
30
+ fillParent: "100%"
31
+ };
32
+ var AutosuggestWrapper = function AutosuggestWrapper(_ref) {
33
+ var condition = _ref.condition,
34
+ wrapper = _ref.wrapper,
35
+ children = _ref.children;
36
+ return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, condition ? wrapper(children) : children);
37
+ };
38
+ var calculateWidth = function calculateWidth(margin, size) {
39
+ return size === "fillParent" ? "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")") : sizes[size];
90
40
  };
91
-
92
41
  var makeCancelable = function makeCancelable(promise) {
93
42
  var hasCanceled_ = false;
94
43
  var wrappedPromise = new Promise(function (resolve, reject) {
@@ -109,338 +58,257 @@ var makeCancelable = function makeCancelable(promise) {
109
58
  }
110
59
  };
111
60
  };
112
-
113
- var getNotOptionalErrorMessage = function getNotOptionalErrorMessage() {
114
- return "This field is required. Please, enter a value.";
61
+ var hasSuggestions = function hasSuggestions(suggestions) {
62
+ return typeof suggestions === "function" || (suggestions === null || suggestions === void 0 ? void 0 : suggestions.length) > 0;
115
63
  };
116
-
117
- var getPatternErrorMessage = function getPatternErrorMessage() {
118
- return "Please match the format requested.";
64
+ var isRequired = function isRequired(value, optional) {
65
+ return value === "" && !optional;
119
66
  };
120
-
121
- var patternMatch = function patternMatch(pattern, value) {
122
- return new RegExp(pattern).test(value);
67
+ var isLengthIncorrect = function isLengthIncorrect(value, minLength, maxLength) {
68
+ return value != null && (value.length < minLength || value.length > maxLength);
123
69
  };
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;
70
+ var isNumberIncorrect = function isNumberIncorrect(value, minNumber, maxNumber) {
71
+ return value < minNumber || value > maxNumber;
136
72
  };
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
-
73
+ var patternMismatch = function patternMismatch(pattern, value) {
74
+ return pattern != null && !new RegExp(pattern).test(value);
75
+ };
76
+ var useWidth = function useWidth(target) {
77
+ var _useState = (0, _react.useState)(0),
78
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
79
+ width = _useState2[0],
80
+ setWidth = _useState2[1];
81
+ (0, _react.useEffect)(function () {
82
+ if (target != null) {
83
+ setWidth(target.getBoundingClientRect().width);
84
+ var triggerObserver = new ResizeObserver(function (entries) {
85
+ var rect = entries[0].target.getBoundingClientRect();
86
+ setWidth(rect === null || rect === void 0 ? void 0 : rect.width);
87
+ });
88
+ triggerObserver.observe(target);
89
+ return function () {
90
+ triggerObserver.unobserve(target);
91
+ };
92
+ }
93
+ }, [target]);
94
+ return width;
95
+ };
96
+ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref2, ref) {
97
+ var label = _ref2.label,
98
+ _ref2$name = _ref2.name,
99
+ name = _ref2$name === void 0 ? "" : _ref2$name,
100
+ _ref2$defaultValue = _ref2.defaultValue,
101
+ defaultValue = _ref2$defaultValue === void 0 ? "" : _ref2$defaultValue,
102
+ value = _ref2.value,
103
+ helperText = _ref2.helperText,
104
+ _ref2$placeholder = _ref2.placeholder,
105
+ placeholder = _ref2$placeholder === void 0 ? "" : _ref2$placeholder,
106
+ action = _ref2.action,
107
+ _ref2$clearable = _ref2.clearable,
108
+ clearable = _ref2$clearable === void 0 ? false : _ref2$clearable,
109
+ _ref2$disabled = _ref2.disabled,
110
+ disabled = _ref2$disabled === void 0 ? false : _ref2$disabled,
111
+ _ref2$readOnly = _ref2.readOnly,
112
+ readOnly = _ref2$readOnly === void 0 ? false : _ref2$readOnly,
113
+ _ref2$optional = _ref2.optional,
114
+ optional = _ref2$optional === void 0 ? false : _ref2$optional,
115
+ _ref2$prefix = _ref2.prefix,
116
+ prefix = _ref2$prefix === void 0 ? "" : _ref2$prefix,
117
+ _ref2$suffix = _ref2.suffix,
118
+ suffix = _ref2$suffix === void 0 ? "" : _ref2$suffix,
119
+ onChange = _ref2.onChange,
120
+ onBlur = _ref2.onBlur,
121
+ error = _ref2.error,
122
+ suggestions = _ref2.suggestions,
123
+ pattern = _ref2.pattern,
124
+ minLength = _ref2.minLength,
125
+ maxLength = _ref2.maxLength,
126
+ _ref2$autocomplete = _ref2.autocomplete,
127
+ autocomplete = _ref2$autocomplete === void 0 ? "off" : _ref2$autocomplete,
128
+ margin = _ref2.margin,
129
+ _ref2$size = _ref2.size,
130
+ size = _ref2$size === void 0 ? "medium" : _ref2$size,
131
+ _ref2$tabIndex = _ref2.tabIndex,
132
+ tabIndex = _ref2$tabIndex === void 0 ? 0 : _ref2$tabIndex;
133
+ var _useState3 = (0, _react.useState)("input-".concat((0, _uuid.v4)())),
134
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 1),
135
+ inputId = _useState4[0];
136
+ var autosuggestId = "suggestions-".concat(inputId);
137
+ var errorId = "error-".concat(inputId);
138
+ var _useState5 = (0, _react.useState)(defaultValue),
139
+ _useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
140
+ innerValue = _useState6[0],
141
+ setInnerValue = _useState6[1];
188
142
  var _useState7 = (0, _react.useState)(false),
189
- _useState8 = (0, _slicedToArray2["default"])(_useState7, 2),
190
- isSearching = _useState8[0],
191
- changeIsSearching = _useState8[1];
192
-
143
+ _useState8 = (0, _slicedToArray2["default"])(_useState7, 2),
144
+ isOpen = _useState8[0],
145
+ changeIsOpen = _useState8[1];
193
146
  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);
147
+ _useState10 = (0, _slicedToArray2["default"])(_useState9, 2),
148
+ isSearching = _useState10[0],
149
+ changeIsSearching = _useState10[1];
150
+ var _useState11 = (0, _react.useState)(false),
151
+ _useState12 = (0, _slicedToArray2["default"])(_useState11, 2),
152
+ isAutosuggestError = _useState12[0],
153
+ changeIsAutosuggestError = _useState12[1];
154
+ var _useState13 = (0, _react.useState)([]),
155
+ _useState14 = (0, _slicedToArray2["default"])(_useState13, 2),
156
+ filteredSuggestions = _useState14[0],
157
+ changeFilteredSuggestions = _useState14[1];
158
+ var _useState15 = (0, _react.useState)(-1),
159
+ _useState16 = (0, _slicedToArray2["default"])(_useState15, 2),
160
+ visualFocusIndex = _useState16[0],
161
+ changeVisualFocusIndex = _useState16[1];
209
162
  var inputRef = (0, _react.useRef)(null);
163
+ var inputContainerRef = (0, _react.useRef)(null);
210
164
  var actionRef = (0, _react.useRef)(null);
165
+ var width = useWidth(inputContainerRef.current);
211
166
  var colorsTheme = (0, _useTheme["default"])();
212
167
  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
-
168
+ var numberInputContext = (0, _react.useContext)(_NumberInput.NumberInputContext);
239
169
  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);
170
+ 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);
241
171
  };
242
-
243
- var hasSuggestions = function hasSuggestions() {
244
- return typeof suggestions === "function" || (suggestions === null || suggestions === void 0 ? void 0 : suggestions.length) > 0;
245
- };
246
-
247
172
  var openSuggestions = function openSuggestions() {
248
- hasSuggestions() && changeIsOpen(true);
173
+ hasSuggestions(suggestions) && changeIsOpen(true);
249
174
  };
250
-
251
175
  var closeSuggestions = function closeSuggestions() {
252
- changeIsOpen(false);
253
- changeVisualFocusedSuggIndex(-1);
176
+ if (hasSuggestions(suggestions)) {
177
+ changeIsOpen(false);
178
+ changeVisualFocusIndex(-1);
179
+ }
254
180
  };
255
-
256
181
  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,
182
+ var formattedValue = typeof newValue === "number" ? newValue.toString() : newValue;
183
+ value !== null && value !== void 0 ? value : setInnerValue(formattedValue);
184
+ if (isRequired(formattedValue, optional)) onChange === null || onChange === void 0 ? void 0 : onChange({
185
+ value: formattedValue,
261
186
  error: translatedLabels.formFields.requiredValueErrorMessage
262
- });else if (isLengthIncorrect(newValue)) onChange === null || onChange === void 0 ? void 0 : onChange({
263
- value: changedValue,
187
+ });else if (isLengthIncorrect(formattedValue, minLength, maxLength)) onChange === null || onChange === void 0 ? void 0 : onChange({
188
+ value: formattedValue,
264
189
  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,
190
+ });else if (patternMismatch(pattern, formattedValue)) onChange === null || onChange === void 0 ? void 0 : onChange({
191
+ value: formattedValue,
267
192
  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)
193
+ });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({
194
+ value: formattedValue,
195
+ error: getNumberErrorMessage(Number(newValue))
271
196
  });else onChange === null || onChange === void 0 ? void 0 : onChange({
272
- value: changedValue
197
+ value: formattedValue
273
198
  });
274
199
  };
275
-
276
200
  var handleInputContainerOnClick = function handleInputContainerOnClick() {
277
201
  document.activeElement !== actionRef.current && inputRef.current.focus();
278
202
  };
279
-
280
203
  var handleInputContainerOnMouseDown = function handleInputContainerOnMouseDown(event) {
281
204
  // Avoid input to lose the focus when the container is pressed
282
205
  document.activeElement === inputRef.current && event.preventDefault();
283
206
  };
284
-
285
- var handleIOnChange = function handleIOnChange(event) {
207
+ var handleInputOnChange = function handleInputOnChange(event) {
286
208
  openSuggestions();
287
209
  changeValue(event.target.value);
288
210
  };
289
-
290
- var handleIOnBlur = function handleIOnBlur(event) {
291
- suggestions && closeSuggestions();
292
- if (isNotOptional(event.target.value)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
211
+ var handleInputOnBlur = function handleInputOnBlur(event) {
212
+ closeSuggestions();
213
+ if (isRequired(event.target.value, optional)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
293
214
  value: event.target.value,
294
215
  error: translatedLabels.formFields.requiredValueErrorMessage
295
- });else if (isLengthIncorrect(event.target.value)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
216
+ });else if (isLengthIncorrect(event.target.value, minLength, maxLength)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
296
217
  value: event.target.value,
297
218
  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({
219
+ });else if (patternMismatch(pattern, event.target.value)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
299
220
  value: event.target.value,
300
221
  error: translatedLabels.formFields.formatRequestedErrorMessage
301
- });else if (event.target.value && isNumberIncorrect(event.target.value)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
222
+ });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
223
  value: event.target.value,
303
- error: getNumberErrorMessage(event.target.value)
224
+ error: getNumberErrorMessage(Number(event.target.value))
304
225
  });else onBlur === null || onBlur === void 0 ? void 0 : onBlur({
305
226
  value: event.target.value
306
227
  });
307
228
  };
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();
229
+ var handleInputOnKeyDown = function handleInputOnKeyDown(event) {
230
+ switch (event.key) {
231
+ case "Down":
232
+ case "ArrowDown":
233
+ event.preventDefault();
234
+ if ((numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.typeNumber) === "number") decrementNumber();else {
318
235
  openSuggestions();
319
-
320
236
  if (!isAutosuggestError && !isSearching && filteredSuggestions.length > 0) {
321
- changeVisualFocusedSuggIndex(function (visualFocusedSuggIndex) {
237
+ changeVisualFocusIndex(function (visualFocusedSuggIndex) {
322
238
  if (visualFocusedSuggIndex < filteredSuggestions.length - 1) return visualFocusedSuggIndex + 1;else if (visualFocusedSuggIndex === filteredSuggestions.length - 1) return 0;
323
239
  });
324
240
  }
325
241
  }
326
-
327
242
  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();
243
+ case "Up":
244
+ case "ArrowUp":
245
+ event.preventDefault();
246
+ if ((numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.typeNumber) === "number") incrementNumber();else {
336
247
  openSuggestions();
337
-
338
248
  if (!isAutosuggestError && !isSearching && filteredSuggestions.length > 0) {
339
- changeVisualFocusedSuggIndex(function (visualFocusedSuggIndex) {
249
+ changeVisualFocusIndex(function (visualFocusedSuggIndex) {
340
250
  if (visualFocusedSuggIndex === 0 || visualFocusedSuggIndex === -1) return filteredSuggestions.length > 0 ? filteredSuggestions.length - 1 : suggestions.length - 1;else return visualFocusedSuggIndex - 1;
341
251
  });
342
252
  }
343
253
  }
344
-
345
254
  break;
346
-
347
- case 27:
348
- // Esc
255
+ case "Esc":
256
+ case "Escape":
349
257
  event.preventDefault();
350
-
351
- if (hasSuggestions()) {
258
+ if (hasSuggestions(suggestions)) {
352
259
  changeValue("");
353
260
  isOpen && closeSuggestions();
354
261
  }
355
-
356
262
  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]);
263
+ case "Enter":
264
+ if (hasSuggestions(suggestions) && !isSearching) {
265
+ var validFocusedSuggestion = filteredSuggestions.length > 0 && visualFocusIndex >= 0 && visualFocusIndex < filteredSuggestions.length;
266
+ validFocusedSuggestion && changeValue(filteredSuggestions[visualFocusIndex]);
363
267
  isOpen && closeSuggestions();
364
268
  }
365
-
366
269
  break;
367
270
  }
368
271
  };
369
-
370
272
  var handleClearActionOnClick = function handleClearActionOnClick() {
371
273
  changeValue("");
372
274
  inputRef.current.focus();
373
275
  suggestions && closeSuggestions();
374
276
  };
375
-
376
277
  var handleDecrementActionOnClick = function handleDecrementActionOnClick() {
377
278
  decrementNumber();
378
279
  inputRef.current.focus();
379
280
  };
380
-
381
281
  var handleIncrementActionOnClick = function handleIncrementActionOnClick() {
382
282
  incrementNumber();
383
283
  inputRef.current.focus();
384
284
  };
385
-
386
285
  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));
286
+ var _inputRef$current, _inputRef$current2, _inputRef$current3, _inputRef$current4;
287
+ min && (inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.setAttribute("min", min));
288
+ max && (inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current2 = inputRef.current) === null || _inputRef$current2 === void 0 ? void 0 : _inputRef$current2.setAttribute("max", max));
289
+ inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current3 = inputRef.current) === null || _inputRef$current3 === void 0 ? void 0 : _inputRef$current3.setAttribute("step", step);
290
+ inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current4 = inputRef.current) === null || _inputRef$current4 === void 0 ? void 0 : _inputRef$current4.setAttribute("type", type);
393
291
  };
394
-
395
292
  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);
293
+ var currentValue = value !== null && value !== void 0 ? value : innerValue;
294
+ var numberValue = Number(currentValue);
295
+ var steppedValue = Math.round((numberValue - (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.stepNumber) + Number.EPSILON) * 100) / 100;
296
+ if (currentValue !== "") {
297
+ 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
298
  } else {
411
- changeValue(parseInt(numberValue) - 1);
299
+ 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
300
  }
413
301
  };
414
-
415
302
  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);
303
+ var currentValue = value !== null && value !== void 0 ? value : innerValue;
304
+ var numberValue = Number(currentValue);
305
+ var steppedValue = Math.round((numberValue + (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.stepNumber) + Number.EPSILON) * 100) / 100;
306
+ if (currentValue !== "") {
307
+ 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
308
  } else {
431
- changeValue(parseInt(numberValue) + 1);
309
+ 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
310
  }
433
311
  };
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
312
  (0, _react.useEffect)(function () {
445
313
  if (typeof suggestions === "function") {
446
314
  changeIsSearching(true);
@@ -464,10 +332,9 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
464
332
  changeFilteredSuggestions(suggestions.filter(function (suggestion) {
465
333
  return suggestion.toUpperCase().startsWith((value !== null && value !== void 0 ? value : innerValue).toUpperCase());
466
334
  }));
467
- changeVisualFocusedSuggIndex(-1);
335
+ changeVisualFocusIndex(-1);
468
336
  }
469
-
470
- (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.typeNumber) === "number" && setNumberProps(numberInputContext.typeNumber, numberInputContext.minNumber, numberInputContext.maxNumber, numberInputContext.stepNumber);
337
+ numberInputContext != null && setNumberProps(numberInputContext.typeNumber, numberInputContext.minNumber, numberInputContext.maxNumber, numberInputContext.stepNumber);
471
338
  }, [value, innerValue, suggestions, numberInputContext]);
472
339
  return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
473
340
  theme: colorsTheme.textInput
@@ -478,153 +345,140 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
478
345
  }, label && /*#__PURE__*/_react["default"].createElement(Label, {
479
346
  htmlFor: inputId,
480
347
  disabled: disabled,
481
- backgroundType: backgroundType,
482
348
  hasHelperText: helperText ? true : false
483
349
  }, 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, {
350
+ disabled: disabled
351
+ }, helperText), /*#__PURE__*/_react["default"].createElement(AutosuggestWrapper, {
352
+ condition: hasSuggestions(suggestions),
353
+ wrapper: function wrapper(children) {
354
+ return /*#__PURE__*/_react["default"].createElement(Popover.Root, {
355
+ open: isOpen && (filteredSuggestions.length > 0 || isSearching || isAutosuggestError)
356
+ }, /*#__PURE__*/_react["default"].createElement(Popover.Trigger, {
357
+ asChild: true,
358
+ "aria-controls": undefined
359
+ }, children), /*#__PURE__*/_react["default"].createElement(Popover.Portal, null, /*#__PURE__*/_react["default"].createElement(Popover.Content, {
360
+ sideOffset: 5,
361
+ style: {
362
+ zIndex: "2147483647"
363
+ },
364
+ onOpenAutoFocus: function onOpenAutoFocus(event) {
365
+ // Avoid select to lose focus when the list is opened
366
+ event.preventDefault();
367
+ },
368
+ onCloseAutoFocus: function onCloseAutoFocus(event) {
369
+ // Avoid select to lose focus when the list is closed
370
+ event.preventDefault();
371
+ }
372
+ }, /*#__PURE__*/_react["default"].createElement(_Suggestions["default"], {
373
+ id: autosuggestId,
374
+ value: value !== null && value !== void 0 ? value : innerValue,
375
+ suggestions: filteredSuggestions,
376
+ visualFocusIndex: visualFocusIndex,
377
+ highlightedSuggestions: typeof suggestions !== "function",
378
+ searchHasErrors: isAutosuggestError,
379
+ isSearching: isSearching,
380
+ suggestionOnClick: function suggestionOnClick(suggestion) {
381
+ changeValue(suggestion);
382
+ closeSuggestions();
383
+ },
384
+ styles: {
385
+ width: width
386
+ }
387
+ }))));
388
+ }
389
+ }, /*#__PURE__*/_react["default"].createElement(InputContainer, {
487
390
  error: error ? true : false,
488
391
  disabled: disabled,
489
- backgroundType: backgroundType,
392
+ readOnly: readOnly,
490
393
  onClick: handleInputContainerOnClick,
491
- onMouseDown: handleInputContainerOnMouseDown
394
+ onMouseDown: handleInputContainerOnMouseDown,
395
+ ref: inputContainerRef
492
396
  }, prefix && /*#__PURE__*/_react["default"].createElement(Prefix, {
493
- disabled: disabled,
494
- backgroundType: backgroundType
397
+ disabled: disabled
495
398
  }, prefix), /*#__PURE__*/_react["default"].createElement(Input, {
496
399
  id: inputId,
497
400
  name: name,
498
401
  value: value !== null && value !== void 0 ? value : innerValue,
499
402
  placeholder: placeholder,
500
- onBlur: handleIOnBlur,
501
- onChange: handleIOnChange,
502
- onFocus: function onFocus() {
503
- openSuggestions();
504
- },
505
- onKeyDown: handleIOnKeyDown,
403
+ onBlur: handleInputOnBlur,
404
+ onChange: handleInputOnChange,
405
+ onFocus: !readOnly ? openSuggestions : undefined,
406
+ onKeyDown: !readOnly ? handleInputOnKeyDown : undefined,
506
407
  onMouseDown: function onMouseDown(event) {
507
408
  event.stopPropagation();
508
409
  },
509
410
  disabled: disabled,
411
+ readOnly: readOnly,
510
412
  ref: inputRef,
511
- backgroundType: backgroundType,
512
413
  pattern: pattern,
513
414
  minLength: minLength,
514
415
  maxLength: maxLength,
515
- autoComplete: autocomplete,
416
+ autoComplete: autocomplete === "off" ? "nope" : autocomplete,
516
417
  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",
418
+ type: "text",
419
+ role: hasSuggestions(suggestions) ? "combobox" : undefined,
420
+ "aria-autocomplete": hasSuggestions(suggestions) ? "list" : undefined,
421
+ "aria-controls": hasSuggestions(suggestions) ? autosuggestId : undefined,
422
+ "aria-expanded": hasSuggestions(suggestions) ? isOpen : undefined,
423
+ "aria-haspopup": hasSuggestions(suggestions) ? "listbox" : undefined,
424
+ "aria-activedescendant": hasSuggestions(suggestions) && isOpen && visualFocusIndex !== -1 ? "suggestion-".concat(visualFocusIndex) : undefined,
425
+ "aria-invalid": error ? true : false,
524
426
  "aria-errormessage": error ? errorId : undefined,
525
- "aria-required": optional ? "false" : "true"
427
+ "aria-required": !disabled && !optional
526
428
  }), !disabled && error && /*#__PURE__*/_react["default"].createElement(ErrorIcon, {
527
- backgroundType: backgroundType,
528
429
  "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
- },
430
+ }, _Icons["default"].error), !disabled && !readOnly && clearable && (value !== null && value !== void 0 ? value : innerValue).length > 0 && /*#__PURE__*/_react["default"].createElement(Action, {
431
+ "aria-label": translatedLabels.textInput.clearFieldActionTitle,
432
+ onClick: handleClearActionOnClick,
533
433
  onMouseDown: function onMouseDown(event) {
534
434
  event.stopPropagation();
535
435
  },
536
- backgroundType: backgroundType,
537
436
  tabIndex: tabIndex,
538
437
  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,
438
+ type: "button"
439
+ }, _Icons["default"].clear), (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.typeNumber) === "number" && /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(Action, {
440
+ "aria-label": translatedLabels.numberInput.decrementValueTitle,
542
441
  disabled: disabled,
543
- onClick: function onClick() {
544
- return handleDecrementActionOnClick();
545
- },
442
+ onClick: !readOnly ? handleDecrementActionOnClick : undefined,
546
443
  onMouseDown: function onMouseDown(event) {
547
444
  event.stopPropagation();
548
445
  },
549
- backgroundType: backgroundType,
446
+ ref: actionRef,
550
447
  tabIndex: tabIndex,
551
448
  title: translatedLabels.numberInput.decrementValueTitle,
552
- "aria-label": translatedLabels.numberInput.decrementValueTitle
553
- }, textInputIcons.decrement), /*#__PURE__*/_react["default"].createElement(Action, {
554
- ref: actionRef,
449
+ type: "button"
450
+ }, _Icons["default"].decrement), /*#__PURE__*/_react["default"].createElement(Action, {
451
+ "aria-label": translatedLabels.numberInput.incrementValueTitle,
555
452
  disabled: disabled,
556
- onClick: function onClick() {
557
- return handleIncrementActionOnClick();
558
- },
453
+ onClick: !readOnly ? handleIncrementActionOnClick : undefined,
559
454
  onMouseDown: function onMouseDown(event) {
560
455
  event.stopPropagation();
561
456
  },
562
- backgroundType: backgroundType,
457
+ ref: actionRef,
563
458
  tabIndex: tabIndex,
564
459
  title: translatedLabels.numberInput.incrementValueTitle,
565
- "aria-label": translatedLabels.numberInput.incrementValueTitle
566
- }, textInputIcons.increment)) : action && /*#__PURE__*/_react["default"].createElement(Action, {
567
- ref: actionRef,
460
+ type: "button"
461
+ }, _Icons["default"].increment)), action && /*#__PURE__*/_react["default"].createElement(Action, {
462
+ "aria-label": action.title,
568
463
  disabled: disabled,
569
- onClick: function onClick() {
570
- return action.onClick();
571
- },
464
+ onClick: !readOnly ? action.onClick : undefined,
572
465
  onMouseDown: function onMouseDown(event) {
573
466
  event.stopPropagation();
574
467
  },
468
+ ref: actionRef,
469
+ tabIndex: tabIndex,
575
470
  title: action.title,
576
- "aria-label": action.title,
577
- backgroundType: backgroundType,
578
- tabIndex: tabIndex
579
- }, typeof action.icon === "string" ? /*#__PURE__*/_react["default"].createElement(ActionIcon, {
471
+ type: "button"
472
+ }, typeof action.icon === "string" ? /*#__PURE__*/_react["default"].createElement("img", {
580
473
  src: action.icon
581
474
  }) : 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, {
475
+ disabled: disabled
476
+ }, suffix))), !disabled && typeof error === "string" && /*#__PURE__*/_react["default"].createElement(Error, {
610
477
  id: errorId,
611
- backgroundType: backgroundType,
612
478
  "aria-live": error ? "assertive" : "off"
613
479
  }, error)));
614
480
  });
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) {
481
+ 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
482
  return calculateWidth(props.margin, props.size);
629
483
  }, function (props) {
630
484
  return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
@@ -637,9 +491,8 @@ var TextInputContainer = _styledComponents["default"].div(_templateObject || (_t
637
491
  }, function (props) {
638
492
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
639
493
  });
640
-
641
494
  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;
495
+ return props.disabled ? props.theme.disabledLabelFontColor : props.theme.labelFontColor;
643
496
  }, function (props) {
644
497
  return props.theme.fontFamily;
645
498
  }, function (props) {
@@ -653,13 +506,11 @@ var Label = _styledComponents["default"].label(_templateObject2 || (_templateObj
653
506
  }, function (props) {
654
507
  return !props.hasHelperText && "margin-bottom: 0.25rem";
655
508
  });
656
-
657
509
  var OptionalLabel = _styledComponents["default"].span(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n font-weight: ", ";\n"])), function (props) {
658
510
  return props.theme.optionalLabelFontWeight;
659
511
  });
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;
512
+ 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) {
513
+ return props.disabled ? props.theme.disabledHelperTextFontColor : props.theme.helperTextFontColor;
663
514
  }, function (props) {
664
515
  return props.theme.fontFamily;
665
516
  }, function (props) {
@@ -671,21 +522,17 @@ var HelperText = _styledComponents["default"].span(_templateObject4 || (_templat
671
522
  }, function (props) {
672
523
  return props.theme.helperTextLineHeight;
673
524
  });
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, ";");
525
+ 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) {
526
+ if (props.disabled) return "background-color: ".concat(props.theme.disabledContainerFillColor, ";");
677
527
  }, 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
+ if (props.disabled) return props.theme.disabledBorderColor;else if (props.readOnly) return props.theme.readOnlyBorderColor;else return props.theme.enabledBorderColor;
679
529
  }, 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 ");
530
+ return props.error && !props.disabled && "border-color: transparent;\n box-shadow: 0 0 0 2px ".concat(props.theme.errorBorderColor, ";\n ");
681
531
  }, function (props) {
682
- return props.disabled && "cursor: not-allowed;";
683
- }, 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 ");
532
+ 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
533
  });
686
-
687
534
  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;
535
+ return props.disabled ? props.theme.disabledValueFontColor : props.theme.valueFontColor;
689
536
  }, function (props) {
690
537
  return props.theme.fontFamily;
691
538
  }, function (props) {
@@ -697,74 +544,35 @@ var Input = _styledComponents["default"].input(_templateObject6 || (_templateObj
697
544
  }, function (props) {
698
545
  return props.disabled && "cursor: not-allowed;";
699
546
  }, function (props) {
700
- return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledPlaceholderFontColorOnDark : props.theme.disabledPlaceholderFontColor : props.backgroundType === "dark" ? props.theme.placeholderFontColorOnDark : props.theme.placeholderFontColor;
547
+ return props.disabled ? props.theme.disabledPlaceholderFontColor : props.theme.placeholderFontColor;
701
548
  });
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) {
549
+ var Action = _styledComponents["default"].button(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n border: 1px solid transparent;\n border-radius: 2px;\n width: 24px;\n height: 24px;\n padding: 3px;\n margin-left: 0.25rem;\n ", "\n \n box-shadow: 0 0 0 2px transparent;\n background-color: ", ";\n color: ", ";\n\n ", "\n\n img, svg {\n width: 16px;\n height: 16px;\n }\n"])), function (props) {
708
550
  return props.disabled ? "cursor: not-allowed;" : "cursor: pointer;";
709
551
  }, function (props) {
710
- return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledActionBackgroundColorOnDark : props.theme.disabledActionBackgroundColor : props.backgroundType === "dark" ? props.theme.actionBackgroundColorOnDark : props.theme.actionBackgroundColor;
552
+ return props.disabled ? props.theme.disabledActionBackgroundColor : props.theme.actionBackgroundColor;
711
553
  }, function (props) {
712
- return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledActionIconColorOnDark : props.theme.disabledActionIconColor : props.backgroundType === "dark" ? props.theme.actionIconColorOnDark : props.theme.actionIconColor;
554
+ return props.disabled ? props.theme.disabledActionIconColor : props.theme.actionIconColor;
713
555
  }, 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 ");
556
+ return !props.disabled && "\n &:focus, \n &:focus-visible {\n outline: none;\n box-shadow: 0 0 0 2px ".concat(props.theme.focusActionBorderColor, ";\n color: ").concat(props.theme.focusActionIconColor, ";\n }\n &:hover {\n background-color: ").concat(props.theme.hoverActionBackgroundColor, ";\n color: ").concat(props.theme.hoverActionIconColor, ";\n }\n &:active {\n background-color: ").concat(props.theme.activeActionBackgroundColor, ";\n color: ").concat(props.theme.activeActionIconColor, ";\n }\n ");
715
557
  });
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;
558
+ var Prefix = _styledComponents["default"].span(_templateObject8 || (_templateObject8 = (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) {
559
+ var color = props.disabled ? props.theme.disabledPrefixColor : props.theme.prefixColor;
719
560
  return "color: ".concat(color, "; border-right: 1px solid ").concat(color, ";");
720
561
  }, function (props) {
721
562
  return props.theme.fontFamily;
722
563
  });
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;
564
+ var Suffix = _styledComponents["default"].span(_templateObject9 || (_templateObject9 = (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) {
565
+ var color = props.disabled ? props.theme.disabledSuffixColor : props.theme.suffixColor;
726
566
  return "color: ".concat(color, "; border-left: 1px solid ").concat(color, ";");
727
567
  }, function (props) {
728
568
  return props.theme.fontFamily;
729
569
  });
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;
570
+ var ErrorIcon = _styledComponents["default"].span(_templateObject10 || (_templateObject10 = (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) {
571
+ return props.theme.errorIconColor;
733
572
  });
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;
573
+ var Error = _styledComponents["default"].span(_templateObject11 || (_templateObject11 = (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) {
574
+ return props.theme.errorMessageColor;
737
575
  }, function (props) {
738
576
  return props.theme.fontFamily;
739
577
  });
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;
747
- }, function (props) {
748
- 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
- });
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;
578
+ var _default = exports["default"] = DxcTextInput;