@dxc-technology/halstack-react 0.0.0-49c38a4 → 0.0.0-4a67e25

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 (225) hide show
  1. package/HalstackContext.d.ts +12 -0
  2. package/HalstackContext.js +294 -0
  3. package/accordion/Accordion.d.ts +1 -1
  4. package/accordion/Accordion.js +121 -123
  5. package/accordion/Accordion.stories.tsx +13 -14
  6. package/accordion/Accordion.test.js +25 -11
  7. package/accordion/types.d.ts +9 -4
  8. package/accordion-group/AccordionGroup.d.ts +1 -1
  9. package/accordion-group/AccordionGroup.js +15 -36
  10. package/accordion-group/AccordionGroup.stories.tsx +28 -2
  11. package/accordion-group/AccordionGroup.test.js +30 -37
  12. package/accordion-group/types.d.ts +14 -3
  13. package/alert/Alert.js +5 -2
  14. package/badge/Badge.d.ts +1 -1
  15. package/badge/Badge.js +5 -3
  16. package/badge/types.d.ts +1 -0
  17. package/bleed/Bleed.js +1 -34
  18. package/bleed/Bleed.stories.tsx +94 -95
  19. package/bleed/types.d.ts +25 -1
  20. package/box/Box.js +23 -33
  21. package/box/types.d.ts +1 -0
  22. package/bulleted-list/BulletedList.d.ts +7 -0
  23. package/bulleted-list/BulletedList.js +123 -0
  24. package/bulleted-list/BulletedList.stories.tsx +200 -0
  25. package/bulleted-list/types.d.ts +11 -0
  26. package/{list → bulleted-list}/types.js +0 -0
  27. package/button/Button.js +53 -68
  28. package/button/Button.stories.tsx +9 -0
  29. package/button/types.d.ts +7 -7
  30. package/card/Card.js +24 -27
  31. package/card/types.d.ts +1 -0
  32. package/checkbox/Checkbox.d.ts +2 -2
  33. package/checkbox/Checkbox.js +106 -109
  34. package/checkbox/Checkbox.stories.tsx +146 -130
  35. package/checkbox/Checkbox.test.js +100 -10
  36. package/checkbox/types.d.ts +13 -5
  37. package/chip/types.d.ts +1 -1
  38. package/common/variables.js +236 -106
  39. package/date-input/DateInput.js +56 -42
  40. package/date-input/DateInput.stories.tsx +19 -8
  41. package/date-input/DateInput.test.js +161 -87
  42. package/date-input/types.d.ts +16 -9
  43. package/dialog/Dialog.js +46 -50
  44. package/dialog/Dialog.stories.tsx +57 -2
  45. package/dialog/Dialog.test.js +34 -4
  46. package/dialog/types.d.ts +3 -2
  47. package/dropdown/Dropdown.d.ts +1 -1
  48. package/dropdown/Dropdown.js +247 -251
  49. package/dropdown/Dropdown.stories.tsx +126 -63
  50. package/dropdown/Dropdown.test.js +504 -108
  51. package/dropdown/DropdownMenu.d.ts +4 -0
  52. package/dropdown/DropdownMenu.js +80 -0
  53. package/dropdown/DropdownMenuItem.d.ts +4 -0
  54. package/dropdown/DropdownMenuItem.js +92 -0
  55. package/dropdown/types.d.ts +25 -5
  56. package/file-input/FileInput.d.ts +2 -2
  57. package/file-input/FileInput.js +183 -222
  58. package/file-input/FileInput.stories.tsx +38 -10
  59. package/file-input/FileInput.test.js +53 -12
  60. package/file-input/FileItem.d.ts +4 -14
  61. package/file-input/FileItem.js +43 -66
  62. package/file-input/types.d.ts +17 -0
  63. package/flex/Flex.d.ts +4 -0
  64. package/flex/Flex.js +69 -0
  65. package/flex/Flex.stories.tsx +103 -0
  66. package/flex/types.d.ts +32 -0
  67. package/{radio → flex}/types.js +0 -0
  68. package/footer/Footer.js +15 -88
  69. package/footer/Footer.stories.tsx +8 -1
  70. package/footer/Icons.js +1 -1
  71. package/footer/types.d.ts +2 -1
  72. package/header/Header.js +95 -114
  73. package/header/Header.stories.tsx +46 -36
  74. package/header/Header.test.js +18 -2
  75. package/header/Icons.js +2 -2
  76. package/header/types.d.ts +3 -2
  77. package/inset/Inset.js +1 -34
  78. package/inset/Inset.stories.tsx +36 -36
  79. package/inset/types.d.ts +25 -1
  80. package/layout/ApplicationLayout.d.ts +16 -6
  81. package/layout/ApplicationLayout.js +71 -131
  82. package/layout/ApplicationLayout.stories.tsx +84 -93
  83. package/layout/Icons.d.ts +5 -0
  84. package/layout/Icons.js +13 -2
  85. package/layout/SidenavContext.d.ts +5 -0
  86. package/layout/SidenavContext.js +19 -0
  87. package/layout/types.d.ts +18 -33
  88. package/link/Link.d.ts +3 -2
  89. package/link/Link.js +58 -75
  90. package/link/Link.stories.tsx +95 -53
  91. package/link/Link.test.js +7 -15
  92. package/link/types.d.ts +7 -23
  93. package/main.d.ts +8 -10
  94. package/main.js +46 -56
  95. package/number-input/NumberInput.js +11 -18
  96. package/number-input/NumberInput.stories.tsx +5 -5
  97. package/number-input/NumberInput.test.js +45 -11
  98. package/number-input/types.d.ts +17 -10
  99. package/package.json +20 -16
  100. package/paginator/Paginator.js +17 -38
  101. package/paginator/Paginator.test.js +43 -1
  102. package/paragraph/Paragraph.d.ts +6 -0
  103. package/paragraph/Paragraph.js +38 -0
  104. package/paragraph/Paragraph.stories.tsx +44 -0
  105. package/password-input/PasswordInput.js +7 -4
  106. package/password-input/PasswordInput.test.js +16 -18
  107. package/password-input/types.d.ts +14 -11
  108. package/progress-bar/ProgressBar.d.ts +2 -2
  109. package/progress-bar/ProgressBar.js +57 -51
  110. package/progress-bar/ProgressBar.stories.jsx +13 -11
  111. package/progress-bar/ProgressBar.test.js +67 -22
  112. package/progress-bar/types.d.ts +3 -4
  113. package/quick-nav/QuickNav.d.ts +4 -0
  114. package/quick-nav/QuickNav.js +117 -0
  115. package/quick-nav/QuickNav.stories.tsx +342 -0
  116. package/quick-nav/types.d.ts +21 -0
  117. package/{row → quick-nav}/types.js +0 -0
  118. package/radio-group/Radio.d.ts +1 -1
  119. package/radio-group/Radio.js +43 -28
  120. package/radio-group/RadioGroup.js +32 -28
  121. package/radio-group/RadioGroup.stories.tsx +5 -0
  122. package/radio-group/RadioGroup.test.js +144 -116
  123. package/radio-group/types.d.ts +79 -2
  124. package/resultsetTable/ResultsetTable.js +1 -3
  125. package/resultsetTable/ResultsetTable.test.js +42 -0
  126. package/select/Icons.d.ts +10 -0
  127. package/select/Icons.js +93 -0
  128. package/select/Listbox.d.ts +4 -0
  129. package/select/Listbox.js +198 -0
  130. package/select/Option.d.ts +4 -0
  131. package/select/Option.js +110 -0
  132. package/select/Select.js +141 -365
  133. package/select/Select.stories.tsx +160 -115
  134. package/select/Select.test.js +609 -276
  135. package/select/types.d.ts +52 -12
  136. package/sidenav/Sidenav.d.ts +6 -5
  137. package/sidenav/Sidenav.js +184 -52
  138. package/sidenav/Sidenav.stories.tsx +154 -156
  139. package/sidenav/Sidenav.test.js +25 -37
  140. package/sidenav/types.d.ts +50 -27
  141. package/slider/Slider.d.ts +2 -2
  142. package/slider/Slider.js +122 -96
  143. package/slider/Slider.stories.tsx +15 -9
  144. package/slider/Slider.test.js +142 -21
  145. package/slider/types.d.ts +10 -2
  146. package/spinner/Spinner.js +1 -1
  147. package/switch/Switch.d.ts +2 -2
  148. package/switch/Switch.js +150 -67
  149. package/switch/Switch.stories.tsx +20 -42
  150. package/switch/Switch.test.js +155 -3
  151. package/switch/types.d.ts +12 -4
  152. package/table/Table.js +1 -1
  153. package/table/Table.test.js +1 -1
  154. package/tabs/Tab.d.ts +4 -0
  155. package/tabs/Tab.js +135 -0
  156. package/tabs/Tabs.d.ts +1 -1
  157. package/tabs/Tabs.js +362 -108
  158. package/tabs/Tabs.stories.tsx +74 -8
  159. package/tabs/Tabs.test.js +241 -13
  160. package/tabs/types.d.ts +19 -5
  161. package/tabs-nav/NavTabs.d.ts +8 -0
  162. package/tabs-nav/NavTabs.js +125 -0
  163. package/tabs-nav/NavTabs.stories.tsx +170 -0
  164. package/tabs-nav/NavTabs.test.js +82 -0
  165. package/tabs-nav/Tab.d.ts +4 -0
  166. package/tabs-nav/Tab.js +130 -0
  167. package/tabs-nav/types.d.ts +53 -0
  168. package/{stack → tabs-nav}/types.js +0 -0
  169. package/tag/Tag.js +15 -20
  170. package/tag/Tag.stories.tsx +12 -8
  171. package/tag/types.d.ts +1 -1
  172. package/text-input/Icons.d.ts +8 -0
  173. package/text-input/Icons.js +60 -0
  174. package/text-input/Suggestion.d.ts +4 -0
  175. package/text-input/Suggestion.js +57 -0
  176. package/text-input/Suggestions.d.ts +4 -0
  177. package/text-input/Suggestions.js +134 -0
  178. package/text-input/TextInput.js +214 -333
  179. package/text-input/TextInput.stories.tsx +199 -192
  180. package/text-input/TextInput.test.js +686 -753
  181. package/text-input/types.d.ts +50 -12
  182. package/textarea/Textarea.js +15 -24
  183. package/textarea/Textarea.stories.jsx +5 -5
  184. package/textarea/Textarea.test.js +37 -36
  185. package/textarea/types.d.ts +18 -11
  186. package/toggle-group/ToggleGroup.d.ts +1 -1
  187. package/toggle-group/ToggleGroup.js +5 -4
  188. package/toggle-group/ToggleGroup.stories.tsx +4 -4
  189. package/toggle-group/ToggleGroup.test.js +35 -4
  190. package/toggle-group/types.d.ts +9 -1
  191. package/typography/Typography.d.ts +4 -0
  192. package/typography/Typography.js +131 -0
  193. package/typography/Typography.stories.tsx +198 -0
  194. package/typography/types.d.ts +18 -0
  195. package/typography/types.js +5 -0
  196. package/useTheme.js +2 -2
  197. package/useTranslatedLabels.d.ts +2 -0
  198. package/useTranslatedLabels.js +20 -0
  199. package/wizard/Wizard.d.ts +1 -1
  200. package/wizard/Wizard.js +58 -54
  201. package/wizard/Wizard.stories.tsx +33 -24
  202. package/wizard/Wizard.test.js +36 -23
  203. package/wizard/types.d.ts +10 -5
  204. package/ThemeContext.d.ts +0 -15
  205. package/ThemeContext.js +0 -235
  206. package/list/List.d.ts +0 -4
  207. package/list/List.js +0 -47
  208. package/list/List.stories.tsx +0 -95
  209. package/list/types.d.ts +0 -7
  210. package/radio/Radio.d.ts +0 -4
  211. package/radio/Radio.js +0 -174
  212. package/radio/Radio.stories.tsx +0 -192
  213. package/radio/Radio.test.js +0 -71
  214. package/radio/types.d.ts +0 -54
  215. package/row/Row.d.ts +0 -3
  216. package/row/Row.js +0 -127
  217. package/row/Row.stories.tsx +0 -237
  218. package/row/types.d.ts +0 -10
  219. package/stack/Stack.d.ts +0 -3
  220. package/stack/Stack.js +0 -97
  221. package/stack/Stack.stories.tsx +0 -164
  222. package/stack/types.d.ts +0 -9
  223. package/text/Text.d.ts +0 -7
  224. package/text/Text.js +0 -30
  225. package/text/Text.stories.tsx +0 -19
@@ -6,6 +6,10 @@ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"))
6
6
 
7
7
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
8
8
 
9
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
10
+
11
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
12
+
9
13
  var _react = _interopRequireDefault(require("react"));
10
14
 
11
15
  var _react2 = require("@testing-library/react");
@@ -14,56 +18,54 @@ var _userEvent = _interopRequireDefault(require("@testing-library/user-event"));
14
18
 
15
19
  var _TextInput = _interopRequireDefault(require("./TextInput"));
16
20
 
21
+ // Mocking DOMRect for Radix Primitive Popover
22
+ global.globalThis = global;
23
+
24
+ global.ResizeObserver = /*#__PURE__*/function () {
25
+ function ResizeObserver(cb) {
26
+ (0, _classCallCheck2["default"])(this, ResizeObserver);
27
+ this.cb = cb;
28
+ }
29
+
30
+ (0, _createClass2["default"])(ResizeObserver, [{
31
+ key: "observe",
32
+ value: function observe() {
33
+ this.cb([{
34
+ borderBoxSize: {
35
+ inlineSize: 0,
36
+ blockSize: 0
37
+ }
38
+ }]);
39
+ }
40
+ }, {
41
+ key: "unobserve",
42
+ value: function unobserve() {}
43
+ }]);
44
+ return ResizeObserver;
45
+ }();
46
+
47
+ global.DOMRect = {
48
+ fromRect: function fromRect() {
49
+ return {
50
+ top: 0,
51
+ left: 0,
52
+ bottom: 0,
53
+ right: 0,
54
+ width: 0,
55
+ height: 0
56
+ };
57
+ }
58
+ };
17
59
  var countries = ["Afghanistan", "Albania", "Algeria", "Andorra", "Angola", "Antigua and Barbuda", "Bahamas", "Bahrain", "Bangladesh", "Barbados", "Cabo Verde", "Cambodia", "Cameroon", "Canada", "Cayman Islands, The", "Central African Republic", "Chad", "Democratic Republic of the Congo", "Dominican Republic", "Dominica", "Denmark", "Djibouti"];
18
60
  describe("TextInput component tests", function () {
19
- test("Renders with correct label", function () {
61
+ test("Renders with correct error aria attributes", function () {
20
62
  var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
21
- label: "Example label"
22
- })),
23
- getByText = _render.getByText;
24
-
25
- expect(getByText("Example label")).toBeTruthy();
26
- });
27
- test("Renders with correct label and helper text", function () {
28
- var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
29
- label: "Example label",
30
- helperText: "Example helper text"
31
- })),
32
- getByText = _render2.getByText;
33
-
34
- expect(getByText("Example label")).toBeTruthy();
35
- expect(getByText("Example helper text")).toBeTruthy();
36
- });
37
- test("Renders with correct label and optional", function () {
38
- var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
39
- label: "Example label",
40
- helperText: "Example helper text",
41
- optional: true
42
- })),
43
- getByText = _render3.getByText;
44
-
45
- expect(getByText("Example label")).toBeTruthy();
46
- expect(getByText("(Optional)")).toBeTruthy();
47
- expect(getByText("Example helper text")).toBeTruthy();
48
- });
49
- test("Renders with correct placeholder", function () {
50
- var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
51
- label: "Example label",
52
- placeholder: "Placeholder"
53
- })),
54
- getByRole = _render4.getByRole;
55
-
56
- var input = getByRole("textbox");
57
- expect(input.getAttribute("placeholder")).toBe("Placeholder");
58
- });
59
- test("Renders with error message and correct aria attributes", function () {
60
- var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
61
63
  label: "Error label",
62
64
  placeholder: "Placeholder",
63
65
  error: "Error message."
64
66
  })),
65
- getByText = _render5.getByText,
66
- getByRole = _render5.getByRole;
67
+ getByText = _render.getByText,
68
+ getByRole = _render.getByRole;
67
69
 
68
70
  var input = getByRole("textbox");
69
71
  var errorMessage = getByText("Error message.");
@@ -72,18 +74,29 @@ describe("TextInput component tests", function () {
72
74
  expect(input.getAttribute("aria-invalid")).toBe("true");
73
75
  expect(errorMessage.getAttribute("aria-live")).toBe("assertive");
74
76
  });
77
+ test("Renders with correct initial value", function () {
78
+ var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
79
+ label: "Default label",
80
+ placeholder: "Placeholder",
81
+ defaultValue: "Example text"
82
+ })),
83
+ getByRole = _render2.getByRole;
84
+
85
+ var input = getByRole("textbox");
86
+ expect(input.value).toBe("Example text");
87
+ });
75
88
  test("Not optional constraint (onBlur)", function () {
76
89
  var onChange = jest.fn();
77
90
  var onBlur = jest.fn();
78
91
 
79
- var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
92
+ var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
80
93
  label: "Input label",
81
94
  placeholder: "Placeholder",
82
95
  onChange: onChange,
83
96
  onBlur: onBlur,
84
97
  clearable: true
85
98
  })),
86
- getByRole = _render6.getByRole;
99
+ getByRole = _render3.getByRole;
87
100
 
88
101
  var input = getByRole("textbox");
89
102
 
@@ -107,20 +120,19 @@ describe("TextInput component tests", function () {
107
120
 
108
121
  expect(onBlur).toHaveBeenCalled();
109
122
  expect(onBlur).toHaveBeenCalledWith({
110
- value: "Test",
111
- error: null
123
+ value: "Test"
112
124
  });
113
125
  });
114
126
  test("Not optional constraint (onChange)", function () {
115
127
  var onChange = jest.fn();
116
128
 
117
- var _render7 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
129
+ var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
118
130
  label: "Input label",
119
131
  placeholder: "Placeholder",
120
132
  onChange: onChange,
121
133
  clearable: true
122
134
  })),
123
- getByRole = _render7.getByRole;
135
+ getByRole = _render4.getByRole;
124
136
 
125
137
  var input = getByRole("textbox");
126
138
 
@@ -132,8 +144,7 @@ describe("TextInput component tests", function () {
132
144
 
133
145
  expect(onChange).toHaveBeenCalled();
134
146
  expect(onChange).toHaveBeenCalledWith({
135
- value: "Test",
136
- error: null
147
+ value: "Test"
137
148
  });
138
149
 
139
150
  _userEvent["default"].clear(input);
@@ -148,7 +159,7 @@ describe("TextInput component tests", function () {
148
159
  var onChange = jest.fn();
149
160
  var onBlur = jest.fn();
150
161
 
151
- var _render8 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
162
+ var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
152
163
  label: "Input label",
153
164
  placeholder: "Placeholder",
154
165
  onChange: onChange,
@@ -160,7 +171,7 @@ describe("TextInput component tests", function () {
160
171
  clearable: true,
161
172
  pattern: "^.*(?=.*[a-zA-Z])(?=.*\\d)(?=.*[!&$%&? \"]).*$"
162
173
  })),
163
- getByRole = _render8.getByRole;
174
+ getByRole = _render5.getByRole;
164
175
 
165
176
  var input = getByRole("textbox");
166
177
 
@@ -194,23 +205,21 @@ describe("TextInput component tests", function () {
194
205
 
195
206
  expect(onChange).toHaveBeenCalled();
196
207
  expect(onChange).toHaveBeenCalledWith({
197
- value: "pattern4&",
198
- error: null
208
+ value: "pattern4&"
199
209
  });
200
210
 
201
211
  _react2.fireEvent.blur(input);
202
212
 
203
213
  expect(onBlur).toHaveBeenCalled();
204
214
  expect(onBlur).toHaveBeenCalledWith({
205
- value: "pattern4&",
206
- error: null
215
+ value: "pattern4&"
207
216
  });
208
217
  });
209
218
  test("Length constraint", function () {
210
219
  var onChange = jest.fn();
211
220
  var onBlur = jest.fn();
212
221
 
213
- var _render9 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
222
+ var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
214
223
  label: "Input label",
215
224
  placeholder: "Placeholder",
216
225
  onChange: onChange,
@@ -223,7 +232,7 @@ describe("TextInput component tests", function () {
223
232
  minLength: 5,
224
233
  maxLength: 10
225
234
  })),
226
- getByRole = _render9.getByRole;
235
+ getByRole = _render6.getByRole;
227
236
 
228
237
  var input = getByRole("textbox");
229
238
 
@@ -257,23 +266,21 @@ describe("TextInput component tests", function () {
257
266
 
258
267
  expect(onChange).toHaveBeenCalled();
259
268
  expect(onChange).toHaveBeenCalledWith({
260
- value: "length",
261
- error: null
269
+ value: "length"
262
270
  });
263
271
 
264
272
  _react2.fireEvent.blur(input);
265
273
 
266
274
  expect(onBlur).toHaveBeenCalled();
267
275
  expect(onBlur).toHaveBeenCalledWith({
268
- value: "length",
269
- error: null
276
+ value: "length"
270
277
  });
271
278
  });
272
279
  test("Pattern and length constraints", function () {
273
280
  var onChange = jest.fn();
274
281
  var onBlur = jest.fn();
275
282
 
276
- var _render10 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
283
+ var _render7 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
277
284
  label: "Input label",
278
285
  placeholder: "Placeholder",
279
286
  onChange: onChange,
@@ -287,7 +294,7 @@ describe("TextInput component tests", function () {
287
294
  minLength: 5,
288
295
  maxLength: 10
289
296
  })),
290
- getByRole = _render10.getByRole;
297
+ getByRole = _render7.getByRole;
291
298
 
292
299
  var input = getByRole("textbox");
293
300
 
@@ -339,26 +346,24 @@ describe("TextInput component tests", function () {
339
346
 
340
347
  expect(onChange).toHaveBeenCalled();
341
348
  expect(onChange).toHaveBeenCalledWith({
342
- value: "tests4&",
343
- error: null
349
+ value: "tests4&"
344
350
  });
345
351
 
346
352
  _react2.fireEvent.blur(input);
347
353
 
348
354
  expect(onBlur).toHaveBeenCalled();
349
355
  expect(onBlur).toHaveBeenCalledWith({
350
- value: "tests4&",
351
- error: null
356
+ value: "tests4&"
352
357
  });
353
358
  });
354
359
  test("onChange function is called correctly", function () {
355
360
  var onChange = jest.fn();
356
361
 
357
- var _render11 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
362
+ var _render8 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
358
363
  label: "Input label",
359
364
  onChange: onChange
360
365
  })),
361
- getByRole = _render11.getByRole;
366
+ getByRole = _render8.getByRole;
362
367
 
363
368
  var input = getByRole("textbox");
364
369
 
@@ -367,20 +372,19 @@ describe("TextInput component tests", function () {
367
372
  expect(input.value).toBe("onchange event test");
368
373
  expect(onChange).toHaveBeenCalled();
369
374
  expect(onChange).toHaveBeenCalledWith({
370
- value: "onchange event test",
371
- error: null
375
+ value: "onchange event test"
372
376
  });
373
377
  });
374
378
  test("onBlur function is called correctly", function () {
375
379
  var onBlur = jest.fn();
376
380
  var onChange = jest.fn();
377
381
 
378
- var _render12 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
382
+ var _render9 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
379
383
  label: "Input label",
380
384
  onChange: onChange,
381
385
  onBlur: onBlur
382
386
  })),
383
- getByRole = _render12.getByRole;
387
+ getByRole = _render9.getByRole;
384
388
 
385
389
  var input = getByRole("textbox");
386
390
 
@@ -394,37 +398,25 @@ describe("TextInput component tests", function () {
394
398
 
395
399
  expect(onBlur).toHaveBeenCalled();
396
400
  expect(onBlur).toHaveBeenCalledWith({
397
- value: "Blur test",
398
- error: null
401
+ value: "Blur test"
399
402
  });
400
403
  });
401
- test("Clear action's tooltip is correct", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
402
- var _render13, getByTitle;
404
+ test("Clear action tooltip is correct", function () {
405
+ var _render10 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
406
+ label: "Input label",
407
+ value: "Text",
408
+ clearable: true
409
+ })),
410
+ getByTitle = _render10.getByTitle;
403
411
 
404
- return _regenerator["default"].wrap(function _callee$(_context) {
405
- while (1) {
406
- switch (_context.prev = _context.next) {
407
- case 0:
408
- _render13 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
409
- label: "Input label",
410
- value: "Text",
411
- clearable: true
412
- })), getByTitle = _render13.getByTitle;
413
- expect(getByTitle("Clear field")).toBeTruthy();
414
-
415
- case 2:
416
- case "end":
417
- return _context.stop();
418
- }
419
- }
420
- }, _callee);
421
- })));
412
+ expect(getByTitle("Clear field")).toBeTruthy();
413
+ });
422
414
  test("Clear action onClick cleans the input", function () {
423
- var _render14 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
415
+ var _render11 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
424
416
  label: "Input label",
425
417
  clearable: true
426
418
  })),
427
- getByRole = _render14.getByRole;
419
+ getByRole = _render11.getByRole;
428
420
 
429
421
  var input = getByRole("textbox");
430
422
 
@@ -439,15 +431,14 @@ describe("TextInput component tests", function () {
439
431
  test("Disabled input renders with correct aria and can not be modified", function () {
440
432
  var onChange = jest.fn();
441
433
 
442
- var _render15 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
434
+ var _render12 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
443
435
  label: "Input label",
444
436
  onChange: onChange,
445
437
  disabled: true
446
438
  })),
447
- getByRole = _render15.getByRole;
439
+ getByRole = _render12.getByRole;
448
440
 
449
441
  var input = getByRole("textbox");
450
- expect(input.getAttribute("aria-disabled")).toBe("true");
451
442
 
452
443
  _userEvent["default"].type(input, "Test");
453
444
 
@@ -472,12 +463,12 @@ describe("TextInput component tests", function () {
472
463
  }))
473
464
  };
474
465
 
475
- var _render16 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
466
+ var _render13 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
476
467
  label: "Disabled input label",
477
468
  action: action,
478
469
  disabled: true
479
470
  })),
480
- getByRole = _render16.getByRole;
471
+ getByRole = _render13.getByRole;
481
472
 
482
473
  var input = getByRole("textbox");
483
474
  expect(input.disabled).toBeTruthy();
@@ -487,29 +478,29 @@ describe("TextInput component tests", function () {
487
478
  expect(onClick).not.toHaveBeenCalled();
488
479
  });
489
480
  test("Disabled input (clear default action should not be displayed, even with text written on the input)", function () {
490
- var _render17 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
481
+ var _render14 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
491
482
  label: "Disabled input label",
492
483
  value: "Sample text",
493
484
  disabled: true,
494
485
  clearable: true
495
486
  })),
496
- getByRole = _render17.getByRole,
497
- queryByRole = _render17.queryByRole;
487
+ getByRole = _render14.getByRole,
488
+ queryByRole = _render14.queryByRole;
498
489
 
499
490
  var input = getByRole("textbox");
500
491
  expect(input.disabled).toBeTruthy();
501
492
  expect(queryByRole("button")).toBeFalsy();
502
493
  });
503
494
  test("Disabled input (suffix and preffix must be displayed)", function () {
504
- var _render18 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
495
+ var _render15 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
505
496
  label: "Disabled input label",
506
497
  value: "Sample text",
507
498
  prefix: "+34",
508
499
  suffix: "USD",
509
500
  disabled: true
510
501
  })),
511
- getByRole = _render18.getByRole,
512
- getByText = _render18.getByText;
502
+ getByRole = _render15.getByRole,
503
+ getByText = _render15.getByText;
513
504
 
514
505
  var input = getByRole("textbox");
515
506
  expect(input.disabled).toBeTruthy();
@@ -536,13 +527,13 @@ describe("TextInput component tests", function () {
536
527
  title: "Search"
537
528
  };
538
529
 
539
- var _render19 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
530
+ var _render16 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
540
531
  label: "Input label",
541
532
  action: action
542
533
  })),
543
- getByRole = _render19.getByRole,
544
- getByTestId = _render19.getByTestId,
545
- getByTitle = _render19.getByTitle;
534
+ getByRole = _render16.getByRole,
535
+ getByTestId = _render16.getByTestId,
536
+ getByTitle = _render16.getByTitle;
546
537
 
547
538
  expect(getByTestId("image")).toBeTruthy();
548
539
  expect(getByTitle("Search")).toBeTruthy();
@@ -551,18 +542,75 @@ describe("TextInput component tests", function () {
551
542
 
552
543
  expect(onClick).toHaveBeenCalled();
553
544
  });
545
+ test("Text input submit correctly value in form", function () {
546
+ var onClick = jest.fn();
547
+ var action = {
548
+ onClick: onClick,
549
+ icon: /*#__PURE__*/_react["default"].createElement("svg", {
550
+ "data-testid": "image",
551
+ xmlns: "http://www.w3.org/2000/svg",
552
+ height: "24px",
553
+ viewBox: "0 0 24 24",
554
+ width: "24px",
555
+ fill: "currentColor"
556
+ }, /*#__PURE__*/_react["default"].createElement("path", {
557
+ d: "M0 0h24v24H0V0z",
558
+ fill: "none"
559
+ }), /*#__PURE__*/_react["default"].createElement("path", {
560
+ d: "M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z"
561
+ })),
562
+ title: "Search"
563
+ };
564
+ var handlerOnSubmit = jest.fn(function (e) {
565
+ e.preventDefault();
566
+ var formData = new FormData(e.target);
567
+ var formProps = Object.fromEntries(formData);
568
+ expect(formProps).toStrictEqual({
569
+ data: "test"
570
+ });
571
+ });
572
+
573
+ var _render17 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement("form", {
574
+ onSubmit: handlerOnSubmit
575
+ }, /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
576
+ label: "Input label",
577
+ name: "data",
578
+ action: action
579
+ }), /*#__PURE__*/_react["default"].createElement("button", {
580
+ type: "submit"
581
+ }, "Submit"))),
582
+ getByText = _render17.getByText,
583
+ getAllByRole = _render17.getAllByRole,
584
+ getByRole = _render17.getByRole;
585
+
586
+ var search = getAllByRole("button")[0];
587
+ var submit = getByText("Submit");
588
+ var input = getByRole("textbox");
589
+
590
+ _userEvent["default"].type(input, "test");
591
+
592
+ expect(input.value).toBe("test");
593
+
594
+ _userEvent["default"].click(search);
595
+
596
+ expect(handlerOnSubmit).not.toHaveBeenCalled();
597
+
598
+ _userEvent["default"].click(submit);
599
+
600
+ expect(handlerOnSubmit).toHaveBeenCalled();
601
+ });
554
602
  test("Renders with correct prefix and suffix", function () {
555
- var _render20 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
603
+ var _render18 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
556
604
  label: "Input label",
557
605
  prefix: "+34",
558
606
  suffix: "USD"
559
607
  })),
560
- getByText = _render20.getByText;
608
+ getByText = _render18.getByText;
561
609
 
562
610
  expect(getByText("+34")).toBeTruthy();
563
611
  expect(getByText("USD")).toBeTruthy();
564
612
  });
565
- test("Input has correct accesibility attributes", function () {
613
+ test("Text Input has correct aria accesibility attributes", function () {
566
614
  var onClick = jest.fn();
567
615
  var action = {
568
616
  onClick: onClick,
@@ -582,18 +630,19 @@ describe("TextInput component tests", function () {
582
630
  title: "Search"
583
631
  };
584
632
 
585
- var _render21 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
633
+ var _render19 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
586
634
  label: "Example label",
587
635
  clearable: true,
588
636
  action: action
589
637
  })),
590
- getByRole = _render21.getByRole,
591
- getAllByRole = _render21.getAllByRole;
638
+ getByRole = _render19.getByRole,
639
+ getAllByRole = _render19.getAllByRole;
592
640
 
593
641
  var input = getByRole("textbox");
594
642
  expect(input.getAttribute("aria-autocomplete")).toBeNull();
595
643
  expect(input.getAttribute("aria-controls")).toBeNull();
596
644
  expect(input.getAttribute("aria-expanded")).toBeNull();
645
+ expect(input.getAttribute("aria-haspopup")).toBeNull();
597
646
  expect(input.getAttribute("aria-activedescendant")).toBeNull();
598
647
  expect(input.getAttribute("aria-invalid")).toBe("false");
599
648
  expect(input.getAttribute("aria-errormessage")).toBeNull();
@@ -607,17 +656,18 @@ describe("TextInput component tests", function () {
607
656
  expect(search.getAttribute("aria-label")).toBe("Search");
608
657
  });
609
658
  test("Autosuggest has correct accesibility attributes", function () {
610
- var _render22 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
659
+ var _render20 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
611
660
  label: "Autocomplete Countries",
612
661
  optional: true,
613
662
  suggestions: countries
614
663
  })),
615
- getByRole = _render22.getByRole,
616
- getAllByRole = _render22.getAllByRole;
664
+ getByRole = _render20.getByRole,
665
+ getAllByRole = _render20.getAllByRole;
617
666
 
618
667
  var input = getByRole("combobox");
619
668
  expect(input.getAttribute("aria-autocomplete")).toBe("list");
620
669
  expect(input.getAttribute("aria-expanded")).toBe("false");
670
+ expect(input.getAttribute("aria-haspopup")).toBe("listbox");
621
671
  expect(input.getAttribute("aria-required")).toBe("false");
622
672
 
623
673
  _react2.fireEvent.focus(input);
@@ -625,631 +675,522 @@ describe("TextInput component tests", function () {
625
675
  var list = getByRole("listbox");
626
676
  expect(input.getAttribute("aria-controls")).toBe(list.id);
627
677
  expect(input.getAttribute("aria-expanded")).toBe("true");
628
- expect(list.getAttribute("aria-label")).toBe("Autocomplete Countries");
629
678
  var options = getAllByRole("option");
630
- expect(options[0].getAttribute("aria-selected")).toBe("false");
679
+ expect(options[0].getAttribute("aria-selected")).toBeNull();
631
680
  });
632
681
  });
633
682
  describe("TextInput component synchronous autosuggest tests", function () {
634
- test("Autosuggest is displayed when the input gains focus", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2() {
635
- var onChange, _render23, getByRole, getByText, input, list;
683
+ test("Autosuggest is displayed when the input gains focus", function () {
684
+ var onChange = jest.fn();
636
685
 
637
- return _regenerator["default"].wrap(function _callee2$(_context2) {
638
- while (1) {
639
- switch (_context2.prev = _context2.next) {
640
- case 0:
641
- onChange = jest.fn();
642
- _render23 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
643
- label: "Autocomplete Countries",
644
- suggestions: countries,
645
- onChange: onChange
646
- })), getByRole = _render23.getByRole, getByText = _render23.getByText;
647
- input = getByRole("combobox");
686
+ var _render21 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
687
+ label: "Autocomplete Countries",
688
+ suggestions: countries,
689
+ onChange: onChange
690
+ })),
691
+ getByRole = _render21.getByRole,
692
+ getByText = _render21.getByText;
648
693
 
649
- _react2.fireEvent.focus(input);
694
+ var input = getByRole("combobox");
650
695
 
651
- list = getByRole("listbox");
652
- expect(list).toBeTruthy();
653
- expect(getByText("Afghanistan")).toBeTruthy();
654
- expect(getByText("Albania")).toBeTruthy();
655
- expect(getByText("Algeria")).toBeTruthy();
656
- expect(getByText("Andorra")).toBeTruthy();
696
+ _react2.fireEvent.focus(input);
657
697
 
658
- case 10:
659
- case "end":
660
- return _context2.stop();
661
- }
662
- }
663
- }, _callee2);
664
- })));
665
- test("Autosuggest is displayed when the user clicks the input", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3() {
666
- var onChange, _render24, getByRole, getByText, input, list;
698
+ var list = getByRole("listbox");
699
+ expect(list).toBeTruthy();
700
+ expect(getByText("Afghanistan")).toBeTruthy();
701
+ expect(getByText("Albania")).toBeTruthy();
702
+ expect(getByText("Algeria")).toBeTruthy();
703
+ expect(getByText("Andorra")).toBeTruthy();
704
+ });
705
+ test("Autosuggest is displayed when the user clicks the input", function () {
706
+ var onChange = jest.fn();
667
707
 
668
- return _regenerator["default"].wrap(function _callee3$(_context3) {
669
- while (1) {
670
- switch (_context3.prev = _context3.next) {
671
- case 0:
672
- onChange = jest.fn();
673
- _render24 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
674
- label: "Autocomplete Countries",
675
- suggestions: countries,
676
- onChange: onChange
677
- })), getByRole = _render24.getByRole, getByText = _render24.getByText;
678
- input = getByRole("combobox");
708
+ var _render22 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
709
+ label: "Autocomplete Countries",
710
+ suggestions: countries,
711
+ onChange: onChange
712
+ })),
713
+ getByRole = _render22.getByRole,
714
+ getByText = _render22.getByText;
679
715
 
680
- _react2.fireEvent.focus(input);
716
+ var input = getByRole("combobox");
681
717
 
682
- list = getByRole("listbox");
683
- expect(list).toBeTruthy();
684
- expect(getByText("Afghanistan")).toBeTruthy();
685
- expect(getByText("Albania")).toBeTruthy();
686
- expect(getByText("Algeria")).toBeTruthy();
687
- expect(getByText("Andorra")).toBeTruthy();
718
+ _react2.fireEvent.focus(input);
688
719
 
689
- case 10:
690
- case "end":
691
- return _context3.stop();
692
- }
693
- }
694
- }, _callee3);
695
- })));
696
- test("Autosuggest is displayed while the user is writing (if closed previously, if open stays open)", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee4() {
697
- var onChange, _render25, getByRole, queryByRole, getByText, getAllByText, input, list;
720
+ var list = getByRole("listbox");
721
+ expect(list).toBeTruthy();
722
+ expect(getByText("Afghanistan")).toBeTruthy();
723
+ expect(getByText("Albania")).toBeTruthy();
724
+ expect(getByText("Algeria")).toBeTruthy();
725
+ expect(getByText("Andorra")).toBeTruthy();
726
+ });
727
+ test("Autosuggest is displayed while the user is writing (if closed previously, if it is open stays open)", function () {
728
+ var onChange = jest.fn();
698
729
 
699
- return _regenerator["default"].wrap(function _callee4$(_context4) {
700
- while (1) {
701
- switch (_context4.prev = _context4.next) {
702
- case 0:
703
- onChange = jest.fn();
704
- _render25 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
705
- label: "Autocomplete Countries",
706
- suggestions: countries,
707
- onChange: onChange
708
- })), getByRole = _render25.getByRole, queryByRole = _render25.queryByRole, getByText = _render25.getByText, getAllByText = _render25.getAllByText;
709
- input = getByRole("combobox");
730
+ var _render23 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
731
+ label: "Autocomplete Countries",
732
+ suggestions: countries,
733
+ onChange: onChange
734
+ })),
735
+ getByRole = _render23.getByRole,
736
+ queryByRole = _render23.queryByRole,
737
+ getByText = _render23.getByText,
738
+ getAllByText = _render23.getAllByText;
710
739
 
711
- _react2.fireEvent.focus(input);
740
+ var input = getByRole("combobox");
712
741
 
713
- list = getByRole("listbox");
714
- expect(list).toBeTruthy();
742
+ _react2.fireEvent.focus(input);
715
743
 
716
- _react2.fireEvent.keyDown(input, {
717
- key: "Esc",
718
- code: "Esc",
719
- keyCode: 27,
720
- charCode: 27
721
- });
744
+ var list = getByRole("listbox");
745
+ expect(list).toBeTruthy();
722
746
 
723
- expect(queryByRole("listbox")).toBeFalsy();
747
+ _react2.fireEvent.keyDown(input, {
748
+ key: "Esc",
749
+ code: "Esc",
750
+ keyCode: 27,
751
+ charCode: 27
752
+ });
724
753
 
725
- _userEvent["default"].type(input, "B");
754
+ expect(queryByRole("listbox")).toBeFalsy();
726
755
 
727
- expect(list).toBeTruthy();
728
- expect(getAllByText("B").length).toBe(4);
729
- expect(getByText("ahamas")).toBeTruthy();
730
- expect(getByText("ahrain")).toBeTruthy();
731
- expect(getByText("angladesh")).toBeTruthy();
732
- expect(getByText("arbados")).toBeTruthy();
756
+ _userEvent["default"].type(input, "B");
733
757
 
734
- case 15:
735
- case "end":
736
- return _context4.stop();
737
- }
738
- }
739
- }, _callee4);
740
- })));
741
- test("Autosuggest is not displayed when prop suggestions is an empty array", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee5() {
742
- var onChange, _render26, queryByRole, input;
758
+ expect(list).toBeTruthy();
759
+ expect(getAllByText("B").length).toBe(4);
760
+ expect(getByText("ahamas")).toBeTruthy();
761
+ expect(getByText("ahrain")).toBeTruthy();
762
+ expect(getByText("angladesh")).toBeTruthy();
763
+ expect(getByText("arbados")).toBeTruthy();
764
+ });
765
+ test("Autosuggest displays filtered when the input has a default value", function () {
766
+ var _render24 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
767
+ label: "Uncontrolled suggestions filtered by default",
768
+ helperText: "Example of helper text",
769
+ placeholder: "Placeholder",
770
+ margin: "medium",
771
+ defaultValue: "Suggestion 2",
772
+ suggestions: ["Suggestion 11", "Suggestion 12", "Suggestion 23", "Suggestion 24"],
773
+ clearable: true
774
+ })),
775
+ getByRole = _render24.getByRole,
776
+ getByText = _render24.getByText,
777
+ getAllByText = _render24.getAllByText;
743
778
 
744
- return _regenerator["default"].wrap(function _callee5$(_context5) {
745
- while (1) {
746
- switch (_context5.prev = _context5.next) {
747
- case 0:
748
- onChange = jest.fn();
749
- _render26 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
750
- label: "Autocomplete Countries",
751
- suggestions: [],
752
- onChange: onChange
753
- })), queryByRole = _render26.queryByRole;
754
- input = queryByRole("textbox");
779
+ var input = getByRole("combobox");
780
+ expect(input.value).toBe("Suggestion 2");
755
781
 
756
- _react2.fireEvent.focus(input);
782
+ _react2.fireEvent.focus(input);
757
783
 
758
- expect(queryByRole("listbox")).toBeFalsy();
784
+ expect(getAllByText("Suggestion 2").length).toBe(2);
785
+ expect(getByText("3")).toBeTruthy();
786
+ expect(getByText("4")).toBeTruthy();
787
+ });
788
+ test("Autosuggest is not displayed when prop suggestions is an empty array", function () {
789
+ var onChange = jest.fn();
759
790
 
760
- case 5:
761
- case "end":
762
- return _context5.stop();
763
- }
764
- }
765
- }, _callee5);
766
- })));
767
- test("Autosuggest closes the listbox when there are no matches for the user's input", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee6() {
768
- var onChange, _render27, getByRole, queryByRole, getByText, input, list;
791
+ var _render25 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
792
+ label: "Autocomplete Countries",
793
+ suggestions: [],
794
+ onChange: onChange
795
+ })),
796
+ queryByRole = _render25.queryByRole;
769
797
 
770
- return _regenerator["default"].wrap(function _callee6$(_context6) {
771
- while (1) {
772
- switch (_context6.prev = _context6.next) {
773
- case 0:
774
- onChange = jest.fn();
775
- _render27 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
776
- label: "Autocomplete Countries",
777
- suggestions: countries,
778
- onChange: onChange
779
- })), getByRole = _render27.getByRole, queryByRole = _render27.queryByRole, getByText = _render27.getByText;
780
- input = getByRole("combobox");
798
+ var input = queryByRole("textbox");
781
799
 
782
- _react2.fireEvent.focus(input);
800
+ _react2.fireEvent.focus(input);
783
801
 
784
- list = getByRole("listbox");
785
- expect(list).toBeTruthy();
786
- expect(getByText("Afghanistan")).toBeTruthy();
802
+ expect(queryByRole("listbox")).toBeFalsy();
803
+ });
804
+ test("Autosuggest closes the listbox when there are no matches for the user's input", function () {
805
+ var onChange = jest.fn();
787
806
 
788
- _userEvent["default"].type(input, "x");
807
+ var _render26 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
808
+ label: "Autocomplete Countries",
809
+ suggestions: countries,
810
+ onChange: onChange
811
+ })),
812
+ getByRole = _render26.getByRole,
813
+ queryByRole = _render26.queryByRole,
814
+ getByText = _render26.getByText;
789
815
 
790
- expect(queryByRole("listbox")).toBeFalsy();
816
+ var input = getByRole("combobox");
791
817
 
792
- case 9:
793
- case "end":
794
- return _context6.stop();
795
- }
796
- }
797
- }, _callee6);
798
- })));
799
- test("Autosuggest with no matches founded doesn't let the listbox to be opened", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee7() {
800
- var onChange, _render28, getByRole, queryByRole, getByText, input, list;
818
+ _react2.fireEvent.focus(input);
801
819
 
802
- return _regenerator["default"].wrap(function _callee7$(_context7) {
803
- while (1) {
804
- switch (_context7.prev = _context7.next) {
805
- case 0:
806
- onChange = jest.fn();
807
- _render28 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
808
- label: "Autocomplete Countries",
809
- suggestions: countries,
810
- onChange: onChange
811
- })), getByRole = _render28.getByRole, queryByRole = _render28.queryByRole, getByText = _render28.getByText;
812
- input = getByRole("combobox");
820
+ var list = getByRole("listbox");
821
+ expect(list).toBeTruthy();
822
+ expect(getByText("Afghanistan")).toBeTruthy();
813
823
 
814
- _react2.fireEvent.focus(input);
824
+ _userEvent["default"].type(input, "x");
815
825
 
816
- list = getByRole("listbox");
817
- expect(list).toBeTruthy();
818
- expect(getByText("Afghanistan")).toBeTruthy();
826
+ expect(queryByRole("listbox")).toBeFalsy();
827
+ });
828
+ test("Autosuggest with no matches founded doesn't let the listbox to be opened", function () {
829
+ var onChange = jest.fn();
819
830
 
820
- _userEvent["default"].type(input, "x");
831
+ var _render27 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
832
+ label: "Autocomplete Countries",
833
+ suggestions: countries,
834
+ onChange: onChange
835
+ })),
836
+ getByRole = _render27.getByRole,
837
+ queryByRole = _render27.queryByRole,
838
+ getByText = _render27.getByText;
821
839
 
822
- expect(queryByRole("listbox")).toBeFalsy();
840
+ var input = getByRole("combobox");
823
841
 
824
- _react2.fireEvent.focus(input);
842
+ _react2.fireEvent.focus(input);
825
843
 
826
- expect(queryByRole("listbox")).toBeFalsy();
844
+ var list = getByRole("listbox");
845
+ expect(list).toBeTruthy();
846
+ expect(getByText("Afghanistan")).toBeTruthy();
827
847
 
828
- _react2.fireEvent.keyDown(input, {
829
- key: "ArrowUp",
830
- code: "ArrowUp",
831
- keyCode: 38,
832
- charCode: 38
833
- });
848
+ _userEvent["default"].type(input, "x");
834
849
 
835
- expect(queryByRole("listbox")).toBeFalsy();
850
+ expect(queryByRole("listbox")).toBeFalsy();
836
851
 
837
- _react2.fireEvent.keyDown(input, {
838
- key: "ArrowDown",
839
- code: "ArrowDown",
840
- keyCode: 40,
841
- charCode: 40
842
- });
852
+ _react2.fireEvent.focus(input);
843
853
 
844
- expect(queryByRole("listbox")).toBeFalsy();
854
+ expect(queryByRole("listbox")).toBeFalsy();
845
855
 
846
- case 15:
847
- case "end":
848
- return _context7.stop();
849
- }
850
- }
851
- }, _callee7);
852
- })));
853
- test("Autosuggest uncontrolled - Suggestion selected by click", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee8() {
854
- var onChange, _render29, getByRole, getByText, queryByRole, input;
856
+ _react2.fireEvent.keyDown(input, {
857
+ key: "ArrowUp",
858
+ code: "ArrowUp",
859
+ keyCode: 38,
860
+ charCode: 38
861
+ });
855
862
 
856
- return _regenerator["default"].wrap(function _callee8$(_context8) {
857
- while (1) {
858
- switch (_context8.prev = _context8.next) {
859
- case 0:
860
- onChange = jest.fn();
861
- _render29 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
862
- label: "Autocomplete Countries",
863
- suggestions: countries,
864
- onChange: onChange
865
- })), getByRole = _render29.getByRole, getByText = _render29.getByText, queryByRole = _render29.queryByRole;
866
- input = getByRole("combobox");
863
+ expect(queryByRole("listbox")).toBeFalsy();
867
864
 
868
- _react2.fireEvent.focus(input);
865
+ _react2.fireEvent.keyDown(input, {
866
+ key: "ArrowDown",
867
+ code: "ArrowDown",
868
+ keyCode: 40,
869
+ charCode: 40
870
+ });
869
871
 
870
- _userEvent["default"].type(input, "Alba");
872
+ expect(queryByRole("listbox")).toBeFalsy();
873
+ });
874
+ test("Autosuggest uncontrolled - Suggestion selected by click", function () {
875
+ var onChange = jest.fn();
871
876
 
872
- expect(onChange).toHaveBeenCalled();
873
- expect(getByText("Alba")).toBeTruthy();
874
- expect(getByText("nia")).toBeTruthy();
877
+ var _render28 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
878
+ label: "Autocomplete Countries",
879
+ suggestions: countries,
880
+ onChange: onChange
881
+ })),
882
+ getByRole = _render28.getByRole,
883
+ getByText = _render28.getByText,
884
+ queryByRole = _render28.queryByRole;
875
885
 
876
- _userEvent["default"].click(getByRole("option"));
886
+ var input = getByRole("combobox");
877
887
 
878
- expect(input.value).toBe("Albania");
879
- expect(queryByRole("listbox")).toBeFalsy();
888
+ _react2.fireEvent.focus(input);
880
889
 
881
- case 11:
882
- case "end":
883
- return _context8.stop();
884
- }
885
- }
886
- }, _callee8);
887
- })));
888
- test("Autosuggest controlled - Suggestion selected by click", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee9() {
889
- var onChange, _render30, getByRole, getByText, queryByRole, input;
890
+ _userEvent["default"].type(input, "Alba");
890
891
 
891
- return _regenerator["default"].wrap(function _callee9$(_context9) {
892
- while (1) {
893
- switch (_context9.prev = _context9.next) {
894
- case 0:
895
- onChange = jest.fn();
896
- _render30 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
897
- label: "Autocomplete Countries",
898
- value: "Andor",
899
- suggestions: countries,
900
- onChange: onChange
901
- })), getByRole = _render30.getByRole, getByText = _render30.getByText, queryByRole = _render30.queryByRole;
902
- input = getByRole("combobox");
892
+ expect(onChange).toHaveBeenCalled();
893
+ expect(getByText("Alba")).toBeTruthy();
894
+ expect(getByText("nia")).toBeTruthy();
903
895
 
904
- _react2.fireEvent.focus(input);
896
+ _userEvent["default"].click(getByRole("option"));
905
897
 
906
- expect(input.value).toBe("Andor");
907
- expect(getByText("Andor")).toBeTruthy();
908
- expect(getByText("ra")).toBeTruthy();
898
+ expect(input.value).toBe("Albania");
899
+ expect(queryByRole("listbox")).toBeFalsy();
900
+ });
901
+ test("Autosuggest controlled - Suggestion selected by click", function () {
902
+ var onChange = jest.fn();
909
903
 
910
- _userEvent["default"].click(getByRole("option"));
904
+ var _render29 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
905
+ label: "Autocomplete Countries",
906
+ value: "Andor",
907
+ suggestions: countries,
908
+ onChange: onChange
909
+ })),
910
+ getByRole = _render29.getByRole,
911
+ getByText = _render29.getByText,
912
+ queryByRole = _render29.queryByRole;
911
913
 
912
- expect(onChange).toHaveBeenCalledWith({
913
- value: "Andorra",
914
- error: null
915
- });
916
- expect(queryByRole("listbox")).toBeFalsy();
914
+ var input = getByRole("combobox");
917
915
 
918
- case 10:
919
- case "end":
920
- return _context9.stop();
921
- }
922
- }
923
- }, _callee9);
924
- })));
925
- test("Autosuggest - Pattern constraint", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee10() {
926
- var onChange, onBlur, _render31, getByRole, getByText, input;
916
+ _userEvent["default"].click(getByText("Autocomplete Countries"));
927
917
 
928
- return _regenerator["default"].wrap(function _callee10$(_context10) {
929
- while (1) {
930
- switch (_context10.prev = _context10.next) {
931
- case 0:
932
- onChange = jest.fn();
933
- onBlur = jest.fn();
934
- _render31 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
935
- label: "Autocomplete Countries",
936
- suggestions: countries,
937
- onChange: onChange,
938
- onBlur: onBlur,
939
- pattern: "^.*(?=.*[a-zA-Z])(?=.*\\d)(?=.*[!&$%&? \"]).*$"
940
- })), getByRole = _render31.getByRole, getByText = _render31.getByText;
941
- input = getByRole("combobox");
918
+ expect(input.value).toBe("Andor");
919
+ expect(getByText("Andor")).toBeTruthy();
920
+ expect(getByText("ra")).toBeTruthy();
942
921
 
943
- _react2.fireEvent.focus(input);
922
+ _userEvent["default"].click(getByRole("option"));
944
923
 
945
- _userEvent["default"].type(input, "Andor");
924
+ expect(onChange).toHaveBeenCalledWith({
925
+ value: "Andorra"
926
+ });
927
+ expect(queryByRole("listbox")).toBeFalsy();
928
+ });
929
+ test("Autosuggest - Pattern constraint", function () {
930
+ var onChange = jest.fn();
931
+ var onBlur = jest.fn();
946
932
 
947
- expect(getByText("Andor")).toBeTruthy();
948
- expect(getByText("ra")).toBeTruthy();
933
+ var _render30 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
934
+ label: "Autocomplete Countries",
935
+ suggestions: countries,
936
+ onChange: onChange,
937
+ onBlur: onBlur,
938
+ pattern: "^.*(?=.*[a-zA-Z])(?=.*\\d)(?=.*[!&$%&? \"]).*$"
939
+ })),
940
+ getByRole = _render30.getByRole,
941
+ getByText = _render30.getByText;
949
942
 
950
- _userEvent["default"].click(getByRole("option"));
943
+ var input = getByRole("combobox");
951
944
 
952
- expect(onChange).toHaveBeenCalledWith({
953
- value: "Andorra",
954
- error: "Please match the format requested."
955
- });
945
+ _react2.fireEvent.focus(input);
956
946
 
957
- _react2.fireEvent.blur(input);
947
+ _userEvent["default"].type(input, "Andor");
958
948
 
959
- expect(onBlur).toHaveBeenCalledWith({
960
- value: "Andorra",
961
- error: "Please match the format requested."
962
- });
949
+ expect(getByText("Andor")).toBeTruthy();
950
+ expect(getByText("ra")).toBeTruthy();
963
951
 
964
- case 12:
965
- case "end":
966
- return _context10.stop();
967
- }
968
- }
969
- }, _callee10);
970
- })));
971
- test("Autosuggest - Length constraint", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee11() {
972
- var onChange, onBlur, _render32, getByText, getByRole, input;
952
+ _userEvent["default"].click(getByRole("option"));
973
953
 
974
- return _regenerator["default"].wrap(function _callee11$(_context11) {
975
- while (1) {
976
- switch (_context11.prev = _context11.next) {
977
- case 0:
978
- onChange = jest.fn();
979
- onBlur = jest.fn();
980
- _render32 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
981
- label: "Autocomplete Countries",
982
- suggestions: countries,
983
- onChange: onChange,
984
- onBlur: onBlur,
985
- minLength: 5,
986
- maxLength: 10
987
- })), getByText = _render32.getByText, getByRole = _render32.getByRole;
988
- input = getByRole("combobox");
954
+ expect(onChange).toHaveBeenCalledWith({
955
+ value: "Andorra",
956
+ error: "Please match the format requested."
957
+ });
989
958
 
990
- _react2.fireEvent.focus(input);
959
+ _react2.fireEvent.blur(input);
991
960
 
992
- _userEvent["default"].type(input, "Cha");
961
+ expect(onBlur).toHaveBeenCalledWith({
962
+ value: "Andorra",
963
+ error: "Please match the format requested."
964
+ });
965
+ });
966
+ test("Autosuggest - Length constraint", function () {
967
+ var onChange = jest.fn();
968
+ var onBlur = jest.fn();
993
969
 
994
- expect(getByText("Cha")).toBeTruthy();
995
- expect(getByText("d")).toBeTruthy();
970
+ var _render31 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
971
+ label: "Autocomplete Countries",
972
+ suggestions: countries,
973
+ onChange: onChange,
974
+ onBlur: onBlur,
975
+ minLength: 5,
976
+ maxLength: 10
977
+ })),
978
+ getByText = _render31.getByText,
979
+ getByRole = _render31.getByRole;
996
980
 
997
- _userEvent["default"].click(getByRole("option"));
981
+ var input = getByRole("combobox");
998
982
 
999
- expect(onChange).toHaveBeenCalledWith({
1000
- value: "Cha",
1001
- error: "Min length 5, max length 10."
1002
- });
983
+ _react2.fireEvent.focus(input);
1003
984
 
1004
- _react2.fireEvent.blur(input);
985
+ _userEvent["default"].type(input, "Cha");
1005
986
 
1006
- expect(onBlur).toHaveBeenCalledWith({
1007
- value: "Chad",
1008
- error: "Min length 5, max length 10."
1009
- });
987
+ expect(getByText("Cha")).toBeTruthy();
988
+ expect(getByText("d")).toBeTruthy();
1010
989
 
1011
- case 12:
1012
- case "end":
1013
- return _context11.stop();
1014
- }
1015
- }
1016
- }, _callee11);
1017
- })));
1018
- test("Autosuggest keys: arrow down key opens autosuggest, active first option is selected with Enter and closes the autosuggest", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee12() {
1019
- var onChange, _render33, getByRole, queryByRole, input, list;
990
+ _userEvent["default"].click(getByRole("option"));
1020
991
 
1021
- return _regenerator["default"].wrap(function _callee12$(_context12) {
1022
- while (1) {
1023
- switch (_context12.prev = _context12.next) {
1024
- case 0:
1025
- onChange = jest.fn();
1026
- _render33 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
1027
- label: "Autocomplete Countries",
1028
- suggestions: countries,
1029
- onChange: onChange
1030
- })), getByRole = _render33.getByRole, queryByRole = _render33.queryByRole;
1031
- input = getByRole("combobox");
992
+ expect(onChange).toHaveBeenCalledWith({
993
+ value: "Cha",
994
+ error: "Min length 5, max length 10."
995
+ });
1032
996
 
1033
- _react2.fireEvent.keyDown(input, {
1034
- key: "ArrowDown",
1035
- code: "ArrowDown",
1036
- keyCode: 40,
1037
- charCode: 40
1038
- });
997
+ _react2.fireEvent.blur(input);
1039
998
 
1040
- list = getByRole("listbox");
1041
- expect(list).toBeTruthy();
999
+ expect(onBlur).toHaveBeenCalledWith({
1000
+ value: "Chad",
1001
+ error: "Min length 5, max length 10."
1002
+ });
1003
+ });
1004
+ test("Autosuggest keys: arrow down key opens autosuggest, active first option is selected with Enter and closes the autosuggest", function () {
1005
+ var onChange = jest.fn();
1042
1006
 
1043
- _react2.fireEvent.keyDown(input, {
1044
- key: "Enter",
1045
- code: "Enter",
1046
- keyCode: 13,
1047
- charCode: 13
1048
- });
1007
+ var _render32 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
1008
+ label: "Autocomplete Countries",
1009
+ suggestions: countries,
1010
+ onChange: onChange
1011
+ })),
1012
+ getByRole = _render32.getByRole,
1013
+ queryByRole = _render32.queryByRole;
1049
1014
 
1050
- expect(input.value).toBe("Afghanistan");
1051
- expect(queryByRole("list")).toBeFalsy();
1015
+ var input = getByRole("combobox");
1052
1016
 
1053
- case 9:
1054
- case "end":
1055
- return _context12.stop();
1056
- }
1057
- }
1058
- }, _callee12);
1059
- })));
1060
- test("Autosuggest keys: arrow up key opens autosuggest, active last option is selected with Enter and closes the autosuggest", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee13() {
1061
- var onChange, _render34, getByRole, queryByRole, input, list;
1017
+ _react2.fireEvent.keyDown(input, {
1018
+ key: "ArrowDown",
1019
+ code: "ArrowDown",
1020
+ keyCode: 40,
1021
+ charCode: 40
1022
+ });
1062
1023
 
1063
- return _regenerator["default"].wrap(function _callee13$(_context13) {
1064
- while (1) {
1065
- switch (_context13.prev = _context13.next) {
1066
- case 0:
1067
- onChange = jest.fn();
1068
- _render34 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
1069
- label: "Autocomplete Countries",
1070
- suggestions: countries,
1071
- onChange: onChange
1072
- })), getByRole = _render34.getByRole, queryByRole = _render34.queryByRole;
1073
- input = getByRole("combobox");
1024
+ var list = getByRole("listbox");
1025
+ expect(list).toBeTruthy();
1074
1026
 
1075
- _react2.fireEvent.keyDown(input, {
1076
- key: "ArrowUp",
1077
- code: "ArrowUp",
1078
- keyCode: 38,
1079
- charCode: 38
1080
- });
1027
+ _react2.fireEvent.keyDown(input, {
1028
+ key: "Enter",
1029
+ code: "Enter",
1030
+ keyCode: 13,
1031
+ charCode: 13
1032
+ });
1081
1033
 
1082
- list = getByRole("listbox");
1083
- expect(list).toBeTruthy();
1034
+ expect(input.value).toBe("Afghanistan");
1035
+ expect(queryByRole("list")).toBeFalsy();
1036
+ });
1037
+ test("Autosuggest keys: arrow up key opens autosuggest, active last option is selected with Enter and closes the autosuggest", function () {
1038
+ var onChange = jest.fn();
1084
1039
 
1085
- _react2.fireEvent.keyDown(input, {
1086
- key: "Enter",
1087
- code: "Enter",
1088
- keyCode: 13,
1089
- charCode: 13
1090
- });
1040
+ var _render33 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
1041
+ label: "Autocomplete Countries",
1042
+ suggestions: countries,
1043
+ onChange: onChange
1044
+ })),
1045
+ getByRole = _render33.getByRole,
1046
+ queryByRole = _render33.queryByRole;
1091
1047
 
1092
- expect(input.value).toBe("Djibouti");
1093
- expect(queryByRole("list")).toBeFalsy();
1048
+ var input = getByRole("combobox");
1094
1049
 
1095
- case 9:
1096
- case "end":
1097
- return _context13.stop();
1098
- }
1099
- }
1100
- }, _callee13);
1101
- })));
1102
- test("Autosuggest keys: Esc key closes the autosuggest and cleans the input", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee14() {
1103
- var onChange, _render35, getByRole, queryByRole, input, list;
1050
+ _react2.fireEvent.keyDown(input, {
1051
+ key: "ArrowUp",
1052
+ code: "ArrowUp",
1053
+ keyCode: 38,
1054
+ charCode: 38
1055
+ });
1104
1056
 
1105
- return _regenerator["default"].wrap(function _callee14$(_context14) {
1106
- while (1) {
1107
- switch (_context14.prev = _context14.next) {
1108
- case 0:
1109
- onChange = jest.fn();
1110
- _render35 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
1111
- label: "Autocomplete Countries",
1112
- suggestions: countries,
1113
- onChange: onChange
1114
- })), getByRole = _render35.getByRole, queryByRole = _render35.queryByRole;
1115
- input = getByRole("combobox");
1057
+ var list = getByRole("listbox");
1058
+ expect(list).toBeTruthy();
1116
1059
 
1117
- _react2.fireEvent.focus(input);
1060
+ _react2.fireEvent.keyDown(input, {
1061
+ key: "Enter",
1062
+ code: "Enter",
1063
+ keyCode: 13,
1064
+ charCode: 13
1065
+ });
1118
1066
 
1119
- _userEvent["default"].type(input, "Bangla");
1067
+ expect(input.value).toBe("Djibouti");
1068
+ expect(queryByRole("list")).toBeFalsy();
1069
+ });
1070
+ test("Autosuggest keys: Esc key closes the autosuggest and cleans the input", function () {
1071
+ var onChange = jest.fn();
1120
1072
 
1121
- list = getByRole("listbox");
1122
- expect(list).toBeTruthy();
1073
+ var _render34 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
1074
+ label: "Autocomplete Countries",
1075
+ suggestions: countries,
1076
+ onChange: onChange
1077
+ })),
1078
+ getByRole = _render34.getByRole,
1079
+ queryByRole = _render34.queryByRole;
1123
1080
 
1124
- _react2.fireEvent.keyDown(input, {
1125
- key: "Esc",
1126
- code: "Esc",
1127
- keyCode: 27,
1128
- charCode: 27
1129
- });
1081
+ var input = getByRole("combobox");
1130
1082
 
1131
- expect(input.value).toBe("");
1132
- expect(queryByRole("listbox")).toBeFalsy();
1083
+ _react2.fireEvent.focus(input);
1133
1084
 
1134
- case 10:
1135
- case "end":
1136
- return _context14.stop();
1137
- }
1138
- }
1139
- }, _callee14);
1140
- })));
1141
- test("Autosuggest keys: Enter, if no active suggestion closes the autosuggest", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee15() {
1142
- var onChange, _render36, getByRole, queryByRole, input, list;
1085
+ _userEvent["default"].type(input, "Bangla");
1143
1086
 
1144
- return _regenerator["default"].wrap(function _callee15$(_context15) {
1145
- while (1) {
1146
- switch (_context15.prev = _context15.next) {
1147
- case 0:
1148
- onChange = jest.fn();
1149
- _render36 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
1150
- label: "Autocomplete Countries",
1151
- suggestions: countries,
1152
- onChange: onChange
1153
- })), getByRole = _render36.getByRole, queryByRole = _render36.queryByRole;
1154
- input = getByRole("combobox");
1087
+ var list = getByRole("listbox");
1088
+ expect(list).toBeTruthy();
1155
1089
 
1156
- _react2.fireEvent.focus(input);
1090
+ _react2.fireEvent.keyDown(input, {
1091
+ key: "Esc",
1092
+ code: "Esc",
1093
+ keyCode: 27,
1094
+ charCode: 27
1095
+ });
1157
1096
 
1158
- list = getByRole("listbox");
1159
- expect(list).toBeTruthy();
1097
+ expect(input.value).toBe("");
1098
+ expect(queryByRole("listbox")).toBeFalsy();
1099
+ });
1100
+ test("Autosuggest keys: Enter, if no active suggestion closes the autosuggest", function () {
1101
+ var onChange = jest.fn();
1160
1102
 
1161
- _react2.fireEvent.keyDown(input, {
1162
- key: "Enter",
1163
- code: "Enter",
1164
- keyCode: 27,
1165
- charCode: 27
1166
- });
1103
+ var _render35 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
1104
+ label: "Autocomplete Countries",
1105
+ suggestions: countries,
1106
+ onChange: onChange
1107
+ })),
1108
+ getByRole = _render35.getByRole,
1109
+ queryByRole = _render35.queryByRole;
1167
1110
 
1168
- expect(input.value).toBe("");
1169
- expect(queryByRole("list")).toBeFalsy();
1111
+ var input = getByRole("combobox");
1170
1112
 
1171
- case 9:
1172
- case "end":
1173
- return _context15.stop();
1174
- }
1175
- }
1176
- }, _callee15);
1177
- })));
1178
- test("Autosuggest complex key secuence: write, arrow up two times, arrow down and select with Enter. Then, clean with Esc.", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee16() {
1179
- var onChange, _render37, getByRole, queryByRole, input;
1113
+ _react2.fireEvent.focus(input);
1180
1114
 
1181
- return _regenerator["default"].wrap(function _callee16$(_context16) {
1182
- while (1) {
1183
- switch (_context16.prev = _context16.next) {
1184
- case 0:
1185
- onChange = jest.fn();
1186
- _render37 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
1187
- label: "Autocomplete Countries",
1188
- suggestions: countries,
1189
- onChange: onChange
1190
- })), getByRole = _render37.getByRole, queryByRole = _render37.queryByRole;
1191
- input = getByRole("combobox");
1115
+ var list = getByRole("listbox");
1116
+ expect(list).toBeTruthy();
1192
1117
 
1193
- _react2.fireEvent.focus(input);
1118
+ _react2.fireEvent.keyDown(input, {
1119
+ key: "Enter",
1120
+ code: "Enter",
1121
+ keyCode: 27,
1122
+ charCode: 27
1123
+ });
1194
1124
 
1195
- _userEvent["default"].type(input, "Ba");
1125
+ expect(input.value).toBe("");
1126
+ expect(queryByRole("list")).toBeFalsy();
1127
+ });
1128
+ test("Autosuggest complex key secuence: write, arrow up two times, arrow down and select with Enter. Then, clean with Esc.", function () {
1129
+ var onChange = jest.fn();
1196
1130
 
1197
- _react2.fireEvent.keyDown(input, {
1198
- key: "ArrowUp",
1199
- code: "ArrowUp",
1200
- keyCode: 38,
1201
- charCode: 38
1202
- });
1131
+ var _render36 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
1132
+ label: "Autocomplete Countries",
1133
+ suggestions: countries,
1134
+ onChange: onChange
1135
+ })),
1136
+ getByRole = _render36.getByRole,
1137
+ queryByRole = _render36.queryByRole;
1203
1138
 
1204
- _react2.fireEvent.keyDown(input, {
1205
- key: "ArrowUp",
1206
- code: "ArrowUpp",
1207
- keyCode: 38,
1208
- charCode: 38
1209
- });
1139
+ var input = getByRole("combobox");
1210
1140
 
1211
- _react2.fireEvent.keyDown(input, {
1212
- key: "ArrowDown",
1213
- code: "ArrowDown",
1214
- keyCode: 40,
1215
- charCode: 40
1216
- });
1141
+ _react2.fireEvent.focus(input);
1217
1142
 
1218
- _react2.fireEvent.keyDown(input, {
1219
- key: "Enter",
1220
- code: "Enter",
1221
- keyCode: 13,
1222
- charCode: 13
1223
- });
1143
+ _userEvent["default"].type(input, "Ba");
1224
1144
 
1225
- expect(input.value).toBe("Barbados");
1226
- expect(queryByRole("listbox")).toBeFalsy();
1145
+ _react2.fireEvent.keyDown(input, {
1146
+ key: "ArrowUp",
1147
+ code: "ArrowUp",
1148
+ keyCode: 38,
1149
+ charCode: 38
1150
+ });
1227
1151
 
1228
- _react2.fireEvent.keyDown(input, {
1229
- key: "Esc",
1230
- code: "Esp",
1231
- keyCode: 27,
1232
- charCode: 27
1233
- });
1152
+ _react2.fireEvent.keyDown(input, {
1153
+ key: "ArrowUp",
1154
+ code: "ArrowUpp",
1155
+ keyCode: 38,
1156
+ charCode: 38
1157
+ });
1234
1158
 
1235
- expect(input.value).toBe("");
1236
- expect(queryByRole("listbox")).toBeFalsy();
1159
+ _react2.fireEvent.keyDown(input, {
1160
+ key: "ArrowDown",
1161
+ code: "ArrowDown",
1162
+ keyCode: 40,
1163
+ charCode: 40
1164
+ });
1237
1165
 
1238
- case 14:
1239
- case "end":
1240
- return _context16.stop();
1241
- }
1242
- }
1243
- }, _callee16);
1244
- })));
1166
+ _react2.fireEvent.keyDown(input, {
1167
+ key: "Enter",
1168
+ code: "Enter",
1169
+ keyCode: 13,
1170
+ charCode: 13
1171
+ });
1172
+
1173
+ expect(input.value).toBe("Barbados");
1174
+ expect(queryByRole("listbox")).toBeFalsy();
1175
+
1176
+ _react2.fireEvent.keyDown(input, {
1177
+ key: "Esc",
1178
+ code: "Esp",
1179
+ keyCode: 27,
1180
+ charCode: 27
1181
+ });
1182
+
1183
+ expect(input.value).toBe("");
1184
+ expect(queryByRole("listbox")).toBeFalsy();
1185
+ });
1245
1186
  });
1246
1187
  describe("TextInput component asynchronous autosuggest tests", function () {
1247
- test("Autosuggest 'Searching...' message is shown", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee17() {
1248
- var callbackFunc, onChange, _render38, getByRole, getByText, input;
1188
+ test("Autosuggest 'Searching...' message is shown", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
1189
+ var callbackFunc, onChange, _render37, getByRole, getByText, input;
1249
1190
 
1250
- return _regenerator["default"].wrap(function _callee17$(_context17) {
1191
+ return _regenerator["default"].wrap(function _callee$(_context) {
1251
1192
  while (1) {
1252
- switch (_context17.prev = _context17.next) {
1193
+ switch (_context.prev = _context.next) {
1253
1194
  case 0:
1254
1195
  callbackFunc = jest.fn(function (newValue) {
1255
1196
  var result = new Promise(function (resolve) {
@@ -1257,22 +1198,22 @@ describe("TextInput component asynchronous autosuggest tests", function () {
1257
1198
  resolve(newValue ? countries.filter(function (option) {
1258
1199
  return option.toUpperCase().includes(newValue.toUpperCase());
1259
1200
  }) : countries);
1260
- }, 1000);
1201
+ }, 100);
1261
1202
  });
1262
1203
  return result;
1263
1204
  });
1264
1205
  onChange = jest.fn();
1265
- _render38 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
1206
+ _render37 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
1266
1207
  label: "Autosuggest Countries",
1267
1208
  suggestions: callbackFunc,
1268
1209
  onChange: onChange
1269
- })), getByRole = _render38.getByRole, getByText = _render38.getByText;
1210
+ })), getByRole = _render37.getByRole, getByText = _render37.getByText;
1270
1211
  input = getByRole("combobox");
1271
1212
 
1272
1213
  _react2.fireEvent.focus(input);
1273
1214
 
1274
1215
  expect(getByRole("listbox")).toBeTruthy();
1275
- _context17.next = 8;
1216
+ _context.next = 8;
1276
1217
  return (0, _react2.waitForElementToBeRemoved)(function () {
1277
1218
  return getByText("Searching...");
1278
1219
  });
@@ -1285,7 +1226,7 @@ describe("TextInput component asynchronous autosuggest tests", function () {
1285
1226
 
1286
1227
  _userEvent["default"].type(input, "Ab");
1287
1228
 
1288
- _context17.next = 15;
1229
+ _context.next = 15;
1289
1230
  return (0, _react2.waitForElementToBeRemoved)(function () {
1290
1231
  return getByText("Searching...");
1291
1232
  });
@@ -1311,66 +1252,58 @@ describe("TextInput component asynchronous autosuggest tests", function () {
1311
1252
 
1312
1253
  case 19:
1313
1254
  case "end":
1314
- return _context17.stop();
1255
+ return _context.stop();
1315
1256
  }
1316
1257
  }
1317
- }, _callee17);
1258
+ }, _callee);
1318
1259
  })));
1319
- test("Autosuggest Esc key works while 'Searching...' message is shown", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee18() {
1320
- var callbackFunc, onChange, _render39, getByRole, queryByText, queryByRole, input;
1260
+ test("Autosuggest Esc key works while 'Searching...' message is shown", function () {
1261
+ var callbackFunc = jest.fn(function (newValue) {
1262
+ var result = new Promise(function (resolve) {
1263
+ return setTimeout(function () {
1264
+ resolve(newValue ? countries.filter(function (option) {
1265
+ return option.toUpperCase().includes(newValue.toUpperCase());
1266
+ }) : countries);
1267
+ }, 100);
1268
+ });
1269
+ return result;
1270
+ });
1271
+ var onChange = jest.fn();
1321
1272
 
1322
- return _regenerator["default"].wrap(function _callee18$(_context18) {
1323
- while (1) {
1324
- switch (_context18.prev = _context18.next) {
1325
- case 0:
1326
- callbackFunc = jest.fn(function (newValue) {
1327
- var result = new Promise(function (resolve) {
1328
- return setTimeout(function () {
1329
- resolve(newValue ? countries.filter(function (option) {
1330
- return option.toUpperCase().includes(newValue.toUpperCase());
1331
- }) : countries);
1332
- }, 1000);
1333
- });
1334
- return result;
1335
- });
1336
- onChange = jest.fn();
1337
- _render39 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
1338
- label: "Autosuggest Countries",
1339
- suggestions: callbackFunc,
1340
- onChange: onChange
1341
- })), getByRole = _render39.getByRole, queryByText = _render39.queryByText, queryByRole = _render39.queryByRole;
1342
- input = getByRole("combobox");
1273
+ var _render38 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
1274
+ label: "Autosuggest Countries",
1275
+ suggestions: callbackFunc,
1276
+ onChange: onChange
1277
+ })),
1278
+ getByRole = _render38.getByRole,
1279
+ queryByText = _render38.queryByText,
1280
+ queryByRole = _render38.queryByRole;
1343
1281
 
1344
- _react2.fireEvent.focus(input);
1282
+ var input = getByRole("combobox");
1345
1283
 
1346
- expect(getByRole("listbox")).toBeTruthy();
1284
+ _react2.fireEvent.focus(input);
1347
1285
 
1348
- _userEvent["default"].type(input, "Ab");
1286
+ expect(getByRole("listbox")).toBeTruthy();
1349
1287
 
1350
- _react2.fireEvent.keyDown(input, {
1351
- key: "Esc",
1352
- code: "Esc",
1353
- keyCode: 27,
1354
- charCode: 27
1355
- });
1288
+ _userEvent["default"].type(input, "Ab");
1356
1289
 
1357
- expect(queryByRole("listbox")).toBeFalsy();
1358
- expect(queryByText("Searching...")).toBeFalsy();
1359
- expect(input.value).toBe("");
1290
+ _react2.fireEvent.keyDown(input, {
1291
+ key: "Esc",
1292
+ code: "Esc",
1293
+ keyCode: 27,
1294
+ charCode: 27
1295
+ });
1360
1296
 
1361
- case 11:
1362
- case "end":
1363
- return _context18.stop();
1364
- }
1365
- }
1366
- }, _callee18);
1367
- })));
1368
- test("Autosuggest Esc + arrow down working while 'Searching...' message is shown", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee19() {
1369
- var callbackFunc, onChange, _render40, getByRole, getByText, queryByText, queryByRole, input, list;
1297
+ expect(queryByRole("listbox")).toBeFalsy();
1298
+ expect(queryByText("Searching...")).toBeFalsy();
1299
+ expect(input.value).toBe("");
1300
+ });
1301
+ test("Autosuggest Esc + arrow down working while 'Searching...' message is shown", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2() {
1302
+ var callbackFunc, onChange, _render39, getByRole, getByText, queryByText, queryByRole, input, list;
1370
1303
 
1371
- return _regenerator["default"].wrap(function _callee19$(_context19) {
1304
+ return _regenerator["default"].wrap(function _callee2$(_context2) {
1372
1305
  while (1) {
1373
- switch (_context19.prev = _context19.next) {
1306
+ switch (_context2.prev = _context2.next) {
1374
1307
  case 0:
1375
1308
  callbackFunc = jest.fn(function (newValue) {
1376
1309
  var result = new Promise(function (resolve) {
@@ -1378,16 +1311,16 @@ describe("TextInput component asynchronous autosuggest tests", function () {
1378
1311
  resolve(newValue ? countries.filter(function (option) {
1379
1312
  return option.toUpperCase().includes(newValue.toUpperCase());
1380
1313
  }) : countries);
1381
- }, 1000);
1314
+ }, 100);
1382
1315
  });
1383
1316
  return result;
1384
1317
  });
1385
1318
  onChange = jest.fn();
1386
- _render40 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
1319
+ _render39 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
1387
1320
  label: "Autosuggest Countries",
1388
1321
  suggestions: callbackFunc,
1389
1322
  onChange: onChange
1390
- })), getByRole = _render40.getByRole, getByText = _render40.getByText, queryByText = _render40.queryByText, queryByRole = _render40.queryByRole;
1323
+ })), getByRole = _render39.getByRole, getByText = _render39.getByText, queryByText = _render39.queryByText, queryByRole = _render39.queryByRole;
1391
1324
  input = getByRole("combobox");
1392
1325
 
1393
1326
  _react2.fireEvent.focus(input);
@@ -1416,7 +1349,7 @@ describe("TextInput component asynchronous autosuggest tests", function () {
1416
1349
  });
1417
1350
 
1418
1351
  expect(list).toBeTruthy();
1419
- _context19.next = 16;
1352
+ _context2.next = 16;
1420
1353
  return (0, _react2.waitForElementToBeRemoved)(function () {
1421
1354
  return getByText("Searching...");
1422
1355
  });
@@ -1429,17 +1362,17 @@ describe("TextInput component asynchronous autosuggest tests", function () {
1429
1362
 
1430
1363
  case 20:
1431
1364
  case "end":
1432
- return _context19.stop();
1365
+ return _context2.stop();
1433
1366
  }
1434
1367
  }
1435
- }, _callee19);
1368
+ }, _callee2);
1436
1369
  })));
1437
- test("Asynchronous uncontrolled autosuggest test", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee20() {
1438
- var callbackFunc, onChange, _render41, getByRole, getByText, input;
1370
+ test("Asynchronous uncontrolled autosuggest test", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3() {
1371
+ var callbackFunc, onChange, _render40, getByRole, getByText, input;
1439
1372
 
1440
- return _regenerator["default"].wrap(function _callee20$(_context20) {
1373
+ return _regenerator["default"].wrap(function _callee3$(_context3) {
1441
1374
  while (1) {
1442
- switch (_context20.prev = _context20.next) {
1375
+ switch (_context3.prev = _context3.next) {
1443
1376
  case 0:
1444
1377
  callbackFunc = jest.fn(function (newValue) {
1445
1378
  var result = new Promise(function (resolve) {
@@ -1447,23 +1380,23 @@ describe("TextInput component asynchronous autosuggest tests", function () {
1447
1380
  resolve(newValue ? countries.filter(function (option) {
1448
1381
  return option.toUpperCase().includes(newValue.toUpperCase());
1449
1382
  }) : countries);
1450
- }, 1000);
1383
+ }, 100);
1451
1384
  });
1452
1385
  return result;
1453
1386
  });
1454
1387
  onChange = jest.fn();
1455
- _render41 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
1388
+ _render40 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
1456
1389
  label: "Autosuggest Countries",
1457
1390
  onChange: onChange,
1458
1391
  suggestions: callbackFunc
1459
- })), getByRole = _render41.getByRole, getByText = _render41.getByText;
1392
+ })), getByRole = _render40.getByRole, getByText = _render40.getByText;
1460
1393
  input = getByRole("combobox");
1461
1394
 
1462
1395
  _react2.fireEvent.focus(input);
1463
1396
 
1464
1397
  _userEvent["default"].type(input, "Den");
1465
1398
 
1466
- _context20.next = 8;
1399
+ _context3.next = 8;
1467
1400
  return (0, _react2.waitForElementToBeRemoved)(function () {
1468
1401
  return getByText("Searching...");
1469
1402
  });
@@ -1474,24 +1407,23 @@ describe("TextInput component asynchronous autosuggest tests", function () {
1474
1407
  _userEvent["default"].click(getByRole("option"));
1475
1408
 
1476
1409
  expect(onChange).toHaveBeenCalledWith({
1477
- value: "Denmark",
1478
- error: null
1410
+ value: "Denmark"
1479
1411
  });
1480
1412
  expect(input.value).toBe("Denmark");
1481
1413
 
1482
1414
  case 12:
1483
1415
  case "end":
1484
- return _context20.stop();
1416
+ return _context3.stop();
1485
1417
  }
1486
1418
  }
1487
- }, _callee20);
1419
+ }, _callee3);
1488
1420
  })));
1489
- test("Asynchronous controlled autosuggest test", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee21() {
1490
- var callbackFunc, onChange, _render42, getByRole, getByText, queryByRole, input;
1421
+ test("Asynchronous controlled autosuggest test", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee4() {
1422
+ var callbackFunc, onChange, _render41, getByRole, getByText, queryByRole, input;
1491
1423
 
1492
- return _regenerator["default"].wrap(function _callee21$(_context21) {
1424
+ return _regenerator["default"].wrap(function _callee4$(_context4) {
1493
1425
  while (1) {
1494
- switch (_context21.prev = _context21.next) {
1426
+ switch (_context4.prev = _context4.next) {
1495
1427
  case 0:
1496
1428
  callbackFunc = jest.fn(function (newValue) {
1497
1429
  var result = new Promise(function (resolve) {
@@ -1499,51 +1431,52 @@ describe("TextInput component asynchronous autosuggest tests", function () {
1499
1431
  resolve(newValue ? countries.filter(function (option) {
1500
1432
  return option.toUpperCase().includes(newValue.toUpperCase());
1501
1433
  }) : countries);
1502
- }, 1000);
1434
+ }, 100);
1503
1435
  });
1504
1436
  return result;
1505
1437
  });
1506
1438
  onChange = jest.fn();
1507
- _render42 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
1439
+ _render41 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
1508
1440
  label: "Autosuggest Countries",
1509
1441
  value: "Denm",
1510
1442
  onChange: onChange,
1511
1443
  suggestions: callbackFunc
1512
- })), getByRole = _render42.getByRole, getByText = _render42.getByText, queryByRole = _render42.queryByRole;
1444
+ })), getByRole = _render41.getByRole, getByText = _render41.getByText, queryByRole = _render41.queryByRole;
1513
1445
  input = getByRole("combobox");
1446
+ expect(input.value).toBe("Denm");
1514
1447
 
1515
- _react2.fireEvent.focus(input);
1448
+ _userEvent["default"].click(getByText("Autosuggest Countries"));
1516
1449
 
1517
- _context21.next = 7;
1450
+ _context4.next = 8;
1518
1451
  return (0, _react2.waitForElementToBeRemoved)(function () {
1519
1452
  return getByText("Searching...");
1520
1453
  });
1521
1454
 
1522
- case 7:
1523
- expect(input.value).toBe("Denm");
1455
+ case 8:
1524
1456
  expect(getByText("Denmark")).toBeTruthy();
1525
1457
 
1526
- _userEvent["default"].click(getByRole("option"));
1458
+ _react2.fireEvent.focus(getByRole("option"));
1459
+
1460
+ _userEvent["default"].click(getByText("Denmark"));
1527
1461
 
1528
1462
  expect(onChange).toHaveBeenCalledWith({
1529
- value: "Denmark",
1530
- error: null
1463
+ value: "Denmark"
1531
1464
  });
1532
1465
  expect(queryByRole("listbox")).toBeFalsy();
1533
1466
 
1534
- case 12:
1467
+ case 13:
1535
1468
  case "end":
1536
- return _context21.stop();
1469
+ return _context4.stop();
1537
1470
  }
1538
1471
  }
1539
- }, _callee21);
1472
+ }, _callee4);
1540
1473
  })));
1541
- test("Asynchronous autosuggest closes the listbox after finishing no matches search", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee22() {
1542
- var callbackFunc, onChange, _render43, getByText, getByRole, queryByRole, input;
1474
+ test("Asynchronous autosuggest closes the listbox after finishing no matches search", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee5() {
1475
+ var callbackFunc, onChange, _render42, getByText, getByRole, queryByRole, input;
1543
1476
 
1544
- return _regenerator["default"].wrap(function _callee22$(_context22) {
1477
+ return _regenerator["default"].wrap(function _callee5$(_context5) {
1545
1478
  while (1) {
1546
- switch (_context22.prev = _context22.next) {
1479
+ switch (_context5.prev = _context5.next) {
1547
1480
  case 0:
1548
1481
  callbackFunc = jest.fn(function (newValue) {
1549
1482
  var result = new Promise(function (resolve) {
@@ -1551,23 +1484,23 @@ describe("TextInput component asynchronous autosuggest tests", function () {
1551
1484
  resolve(newValue ? countries.filter(function (option) {
1552
1485
  return option.toUpperCase().includes(newValue.toUpperCase());
1553
1486
  }) : countries);
1554
- }, 1000);
1487
+ }, 100);
1555
1488
  });
1556
1489
  return result;
1557
1490
  });
1558
1491
  onChange = jest.fn();
1559
- _render43 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
1492
+ _render42 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
1560
1493
  label: "Autosuggest Countries",
1561
1494
  onChange: onChange,
1562
1495
  suggestions: callbackFunc
1563
- })), getByText = _render43.getByText, getByRole = _render43.getByRole, queryByRole = _render43.queryByRole;
1496
+ })), getByText = _render42.getByText, getByRole = _render42.getByRole, queryByRole = _render42.queryByRole;
1564
1497
  input = getByRole("combobox");
1565
1498
 
1566
1499
  _react2.fireEvent.focus(input);
1567
1500
 
1568
1501
  _userEvent["default"].type(input, "Example text");
1569
1502
 
1570
- _context22.next = 8;
1503
+ _context5.next = 8;
1571
1504
  return (0, _react2.waitForElementToBeRemoved)(function () {
1572
1505
  return getByText("Searching...");
1573
1506
  });
@@ -1577,17 +1510,17 @@ describe("TextInput component asynchronous autosuggest tests", function () {
1577
1510
 
1578
1511
  case 9:
1579
1512
  case "end":
1580
- return _context22.stop();
1513
+ return _context5.stop();
1581
1514
  }
1582
1515
  }
1583
- }, _callee22);
1516
+ }, _callee5);
1584
1517
  })));
1585
- test("Asynchronous autosuggest with no matches founded doesn't let the listbox to be opened", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee23() {
1586
- var callbackFunc, onChange, _render44, getByText, getByRole, queryByRole, input;
1518
+ test("Asynchronous autosuggest with no matches founded doesn't let the listbox to be opened", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee6() {
1519
+ var callbackFunc, onChange, _render43, getByText, getByRole, queryByRole, input;
1587
1520
 
1588
- return _regenerator["default"].wrap(function _callee23$(_context23) {
1521
+ return _regenerator["default"].wrap(function _callee6$(_context6) {
1589
1522
  while (1) {
1590
- switch (_context23.prev = _context23.next) {
1523
+ switch (_context6.prev = _context6.next) {
1591
1524
  case 0:
1592
1525
  callbackFunc = jest.fn(function (newValue) {
1593
1526
  var result = new Promise(function (resolve) {
@@ -1595,23 +1528,23 @@ describe("TextInput component asynchronous autosuggest tests", function () {
1595
1528
  resolve(newValue ? countries.filter(function (option) {
1596
1529
  return option.toUpperCase().includes(newValue.toUpperCase());
1597
1530
  }) : countries);
1598
- }, 1000);
1531
+ }, 100);
1599
1532
  });
1600
1533
  return result;
1601
1534
  });
1602
1535
  onChange = jest.fn();
1603
- _render44 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
1536
+ _render43 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
1604
1537
  label: "Autosuggest Countries",
1605
1538
  onChange: onChange,
1606
1539
  suggestions: callbackFunc
1607
- })), getByText = _render44.getByText, getByRole = _render44.getByRole, queryByRole = _render44.queryByRole;
1540
+ })), getByText = _render43.getByText, getByRole = _render43.getByRole, queryByRole = _render43.queryByRole;
1608
1541
  input = getByRole("combobox");
1609
1542
 
1610
1543
  _react2.fireEvent.focus(input);
1611
1544
 
1612
1545
  _userEvent["default"].type(input, "wrong");
1613
1546
 
1614
- _context23.next = 8;
1547
+ _context6.next = 8;
1615
1548
  return (0, _react2.waitForElementToBeRemoved)(function () {
1616
1549
  return getByText("Searching...");
1617
1550
  });
@@ -1643,37 +1576,37 @@ describe("TextInput component asynchronous autosuggest tests", function () {
1643
1576
 
1644
1577
  case 15:
1645
1578
  case "end":
1646
- return _context23.stop();
1579
+ return _context6.stop();
1647
1580
  }
1648
1581
  }
1649
- }, _callee23);
1582
+ }, _callee6);
1650
1583
  })));
1651
- test("Asynchronous autosuggest request failed, shows 'Error fetching data' message", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee24() {
1652
- var errorCallbackFunc, onChange, _render45, getByRole, getByText, input;
1584
+ test("Asynchronous autosuggest request failed, shows 'Error fetching data' message", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee7() {
1585
+ var errorCallbackFunc, onChange, _render44, getByRole, getByText, input;
1653
1586
 
1654
- return _regenerator["default"].wrap(function _callee24$(_context24) {
1587
+ return _regenerator["default"].wrap(function _callee7$(_context7) {
1655
1588
  while (1) {
1656
- switch (_context24.prev = _context24.next) {
1589
+ switch (_context7.prev = _context7.next) {
1657
1590
  case 0:
1658
1591
  errorCallbackFunc = jest.fn(function () {
1659
1592
  var result = new Promise(function (resolve, reject) {
1660
1593
  return setTimeout(function () {
1661
1594
  reject("err");
1662
- }, 1000);
1595
+ }, 100);
1663
1596
  });
1664
1597
  return result;
1665
1598
  });
1666
1599
  onChange = jest.fn();
1667
- _render45 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
1600
+ _render44 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
1668
1601
  label: "Autosuggest Countries",
1669
1602
  onChange: onChange,
1670
1603
  suggestions: errorCallbackFunc
1671
- })), getByRole = _render45.getByRole, getByText = _render45.getByText;
1604
+ })), getByRole = _render44.getByRole, getByText = _render44.getByText;
1672
1605
  input = getByRole("combobox");
1673
1606
 
1674
1607
  _react2.fireEvent.focus(input);
1675
1608
 
1676
- _context24.next = 7;
1609
+ _context7.next = 7;
1677
1610
  return (0, _react2.waitForElementToBeRemoved)(function () {
1678
1611
  return getByText("Searching...");
1679
1612
  });
@@ -1683,9 +1616,9 @@ describe("TextInput component asynchronous autosuggest tests", function () {
1683
1616
 
1684
1617
  case 8:
1685
1618
  case "end":
1686
- return _context24.stop();
1619
+ return _context7.stop();
1687
1620
  }
1688
1621
  }
1689
- }, _callee24);
1622
+ }, _callee7);
1690
1623
  })));
1691
1624
  });