@dxc-technology/halstack-react 0.0.0-fdc49d2 → 0.0.0-feed711

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 (188) hide show
  1. package/HalstackContext.d.ts +12 -0
  2. package/HalstackContext.js +295 -0
  3. package/accordion/Accordion.js +5 -27
  4. package/accordion/Accordion.stories.tsx +4 -4
  5. package/accordion/types.d.ts +1 -1
  6. package/accordion-group/AccordionGroup.d.ts +1 -1
  7. package/accordion-group/AccordionGroup.js +14 -15
  8. package/accordion-group/AccordionGroup.stories.tsx +1 -1
  9. package/accordion-group/AccordionGroup.test.js +24 -6
  10. package/accordion-group/types.d.ts +5 -1
  11. package/alert/Alert.js +4 -1
  12. package/badge/Badge.d.ts +1 -1
  13. package/badge/Badge.js +5 -3
  14. package/badge/types.d.ts +1 -0
  15. package/bleed/Bleed.js +1 -34
  16. package/bleed/Bleed.stories.tsx +94 -95
  17. package/bleed/types.d.ts +1 -1
  18. package/box/Box.js +22 -32
  19. package/bulleted-list/BulletedList.d.ts +7 -0
  20. package/bulleted-list/BulletedList.js +123 -0
  21. package/bulleted-list/BulletedList.stories.tsx +200 -0
  22. package/bulleted-list/types.d.ts +11 -0
  23. package/{list → bulleted-list}/types.js +0 -0
  24. package/button/Button.js +53 -68
  25. package/button/Button.stories.tsx +9 -0
  26. package/button/types.d.ts +7 -7
  27. package/card/Card.js +24 -27
  28. package/checkbox/Checkbox.d.ts +1 -1
  29. package/checkbox/Checkbox.js +38 -28
  30. package/checkbox/Checkbox.stories.tsx +124 -128
  31. package/checkbox/types.d.ts +3 -3
  32. package/chip/types.d.ts +1 -1
  33. package/common/variables.js +229 -98
  34. package/date-input/DateInput.js +41 -23
  35. package/date-input/DateInput.test.js +9 -22
  36. package/date-input/types.d.ts +12 -9
  37. package/dialog/Dialog.js +46 -50
  38. package/dialog/Dialog.stories.tsx +1 -2
  39. package/dialog/Dialog.test.js +34 -4
  40. package/dialog/types.d.ts +2 -2
  41. package/dropdown/Dropdown.d.ts +1 -1
  42. package/dropdown/Dropdown.js +242 -250
  43. package/dropdown/Dropdown.stories.tsx +126 -63
  44. package/dropdown/Dropdown.test.js +510 -108
  45. package/dropdown/DropdownMenu.d.ts +4 -0
  46. package/dropdown/DropdownMenu.js +80 -0
  47. package/dropdown/DropdownMenuItem.d.ts +4 -0
  48. package/dropdown/DropdownMenuItem.js +92 -0
  49. package/dropdown/types.d.ts +25 -5
  50. package/file-input/FileInput.js +9 -6
  51. package/file-input/FileItem.js +7 -5
  52. package/flex/Flex.d.ts +4 -0
  53. package/flex/Flex.js +57 -0
  54. package/flex/Flex.stories.tsx +103 -0
  55. package/flex/types.d.ts +21 -0
  56. package/{radio → flex}/types.js +0 -0
  57. package/footer/Footer.js +15 -88
  58. package/footer/Icons.js +1 -1
  59. package/footer/types.d.ts +1 -1
  60. package/header/Header.js +95 -114
  61. package/header/Header.stories.tsx +46 -36
  62. package/header/Header.test.js +18 -2
  63. package/header/Icons.js +2 -2
  64. package/header/types.d.ts +2 -2
  65. package/inset/Inset.js +1 -34
  66. package/inset/Inset.stories.tsx +36 -36
  67. package/inset/types.d.ts +25 -1
  68. package/layout/ApplicationLayout.d.ts +16 -6
  69. package/layout/ApplicationLayout.js +71 -131
  70. package/layout/ApplicationLayout.stories.tsx +83 -93
  71. package/layout/Icons.d.ts +5 -0
  72. package/layout/Icons.js +13 -2
  73. package/layout/SidenavContext.d.ts +5 -0
  74. package/layout/SidenavContext.js +19 -0
  75. package/layout/types.d.ts +18 -33
  76. package/link/Link.d.ts +3 -2
  77. package/link/Link.js +57 -74
  78. package/link/Link.stories.tsx +95 -53
  79. package/link/Link.test.js +7 -15
  80. package/link/types.d.ts +7 -23
  81. package/main.d.ts +7 -10
  82. package/main.js +43 -61
  83. package/number-input/NumberInput.test.js +2 -4
  84. package/number-input/types.d.ts +13 -10
  85. package/package.json +14 -12
  86. package/paginator/Paginator.js +17 -38
  87. package/paginator/Paginator.test.js +42 -0
  88. package/paragraph/Paragraph.d.ts +6 -0
  89. package/paragraph/Paragraph.js +38 -0
  90. package/paragraph/Paragraph.stories.tsx +44 -0
  91. package/password-input/PasswordInput.js +7 -4
  92. package/password-input/PasswordInput.test.js +3 -6
  93. package/password-input/types.d.ts +14 -11
  94. package/progress-bar/ProgressBar.d.ts +2 -2
  95. package/progress-bar/ProgressBar.js +57 -51
  96. package/progress-bar/ProgressBar.stories.jsx +13 -11
  97. package/progress-bar/ProgressBar.test.js +67 -22
  98. package/progress-bar/types.d.ts +3 -4
  99. package/quick-nav/QuickNav.js +83 -25
  100. package/quick-nav/QuickNav.stories.tsx +43 -16
  101. package/quick-nav/types.d.ts +4 -8
  102. package/radio-group/Radio.js +1 -1
  103. package/radio-group/RadioGroup.js +21 -20
  104. package/resultsetTable/ResultsetTable.test.js +42 -0
  105. package/select/Listbox.d.ts +4 -0
  106. package/select/Listbox.js +199 -0
  107. package/select/Option.js +1 -1
  108. package/select/Select.js +102 -199
  109. package/select/Select.stories.tsx +145 -100
  110. package/select/Select.test.js +440 -281
  111. package/select/types.d.ts +31 -12
  112. package/sidenav/Sidenav.d.ts +6 -5
  113. package/sidenav/Sidenav.js +184 -52
  114. package/sidenav/Sidenav.stories.tsx +154 -156
  115. package/sidenav/Sidenav.test.js +25 -37
  116. package/sidenav/types.d.ts +50 -27
  117. package/slider/Slider.d.ts +1 -1
  118. package/slider/Slider.js +5 -4
  119. package/slider/Slider.stories.tsx +8 -8
  120. package/slider/Slider.test.js +68 -10
  121. package/slider/types.d.ts +4 -0
  122. package/spinner/Spinner.js +1 -1
  123. package/switch/Switch.d.ts +2 -2
  124. package/switch/Switch.js +113 -54
  125. package/switch/Switch.stories.tsx +16 -38
  126. package/switch/Switch.test.js +122 -8
  127. package/switch/types.d.ts +5 -6
  128. package/tabs/Tabs.d.ts +1 -1
  129. package/tabs/Tabs.js +9 -11
  130. package/tabs/Tabs.stories.tsx +0 -8
  131. package/tabs/Tabs.test.js +26 -9
  132. package/tabs/types.d.ts +5 -1
  133. package/tabs-nav/NavTabs.d.ts +8 -0
  134. package/tabs-nav/NavTabs.js +125 -0
  135. package/tabs-nav/NavTabs.stories.tsx +170 -0
  136. package/tabs-nav/NavTabs.test.js +82 -0
  137. package/tabs-nav/Tab.d.ts +4 -0
  138. package/tabs-nav/Tab.js +130 -0
  139. package/tabs-nav/types.d.ts +53 -0
  140. package/{row → tabs-nav}/types.js +0 -0
  141. package/tag/Tag.js +5 -8
  142. package/tag/types.d.ts +1 -1
  143. package/text-input/Suggestion.d.ts +4 -0
  144. package/text-input/Suggestion.js +55 -0
  145. package/text-input/TextInput.js +60 -97
  146. package/text-input/TextInput.stories.tsx +1 -2
  147. package/text-input/TextInput.test.js +22 -35
  148. package/text-input/types.d.ts +27 -12
  149. package/textarea/Textarea.js +10 -19
  150. package/textarea/types.d.ts +10 -7
  151. package/toggle-group/ToggleGroup.d.ts +1 -1
  152. package/toggle-group/ToggleGroup.js +5 -4
  153. package/toggle-group/ToggleGroup.stories.tsx +4 -4
  154. package/toggle-group/ToggleGroup.test.js +35 -4
  155. package/toggle-group/types.d.ts +9 -1
  156. package/typography/Typography.d.ts +4 -0
  157. package/typography/Typography.js +131 -0
  158. package/typography/Typography.stories.tsx +198 -0
  159. package/typography/types.d.ts +18 -0
  160. package/{stack → typography}/types.js +0 -0
  161. package/useTheme.js +2 -2
  162. package/useTranslatedLabels.d.ts +2 -0
  163. package/useTranslatedLabels.js +20 -0
  164. package/wizard/Wizard.js +43 -44
  165. package/wizard/Wizard.stories.tsx +20 -1
  166. package/wizard/types.d.ts +5 -4
  167. package/ThemeContext.d.ts +0 -10
  168. package/ThemeContext.js +0 -243
  169. package/list/List.d.ts +0 -4
  170. package/list/List.js +0 -47
  171. package/list/List.stories.tsx +0 -95
  172. package/list/types.d.ts +0 -7
  173. package/radio/Radio.d.ts +0 -4
  174. package/radio/Radio.js +0 -174
  175. package/radio/Radio.stories.tsx +0 -192
  176. package/radio/Radio.test.js +0 -71
  177. package/radio/types.d.ts +0 -54
  178. package/row/Row.d.ts +0 -3
  179. package/row/Row.js +0 -127
  180. package/row/Row.stories.tsx +0 -237
  181. package/row/types.d.ts +0 -28
  182. package/stack/Stack.d.ts +0 -3
  183. package/stack/Stack.js +0 -97
  184. package/stack/Stack.stories.tsx +0 -164
  185. package/stack/types.d.ts +0 -24
  186. package/text/Text.d.ts +0 -7
  187. package/text/Text.js +0 -30
  188. package/text/Text.stories.tsx +0 -19
@@ -2,6 +2,10 @@
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
 
5
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
6
+
7
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
8
+
5
9
  var _react = _interopRequireDefault(require("react"));
6
10
 
7
11
  var _Select = _interopRequireDefault(require("./Select"));
@@ -10,6 +14,44 @@ var _react2 = require("@testing-library/react");
10
14
 
11
15
  var _userEvent = _interopRequireDefault(require("@testing-library/user-event"));
12
16
 
17
+ // Mocking DOMRect for Radix Primitive Popover
18
+ global.globalThis = global;
19
+
20
+ global.ResizeObserver = /*#__PURE__*/function () {
21
+ function ResizeObserver(cb) {
22
+ (0, _classCallCheck2["default"])(this, ResizeObserver);
23
+ this.cb = cb;
24
+ }
25
+
26
+ (0, _createClass2["default"])(ResizeObserver, [{
27
+ key: "observe",
28
+ value: function observe() {
29
+ this.cb([{
30
+ borderBoxSize: {
31
+ inlineSize: 0,
32
+ blockSize: 0
33
+ }
34
+ }]);
35
+ }
36
+ }, {
37
+ key: "unobserve",
38
+ value: function unobserve() {}
39
+ }]);
40
+ return ResizeObserver;
41
+ }();
42
+
43
+ global.DOMRect = {
44
+ fromRect: function fromRect() {
45
+ return {
46
+ top: 0,
47
+ left: 0,
48
+ bottom: 0,
49
+ right: 0,
50
+ width: 0,
51
+ height: 0
52
+ };
53
+ }
54
+ };
13
55
  var single_options = [{
14
56
  label: "Option 01",
15
57
  value: "1"
@@ -264,7 +306,7 @@ var grouped_icon_options = [{
264
306
  }]
265
307
  }];
266
308
  describe("Select component tests", function () {
267
- test("Renders with correct label", function () {
309
+ test("When clicking the label, the focus goes to the select", function () {
268
310
  var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
269
311
  label: "test-select-label",
270
312
  helperText: "test-select-helper-text",
@@ -275,40 +317,18 @@ describe("Select component tests", function () {
275
317
 
276
318
  var select = getByRole("combobox");
277
319
  var label = getByText("test-select-label");
278
- expect(label).toBeTruthy();
279
320
 
280
321
  _userEvent["default"].click(label);
281
322
 
282
323
  expect(document.activeElement).toEqual(select);
283
324
  });
284
- test("Renders with correct helper text and placeholder", function () {
325
+ test("Renders with correct aria attributes when is in error state", function () {
285
326
  var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
286
- label: "test-select-label",
287
- helperText: "test-select-helper-text",
288
- placeholder: "Example text"
289
- })),
290
- getByText = _render2.getByText;
291
-
292
- expect(getByText("test-select-helper-text")).toBeTruthy();
293
- expect(getByText("Example text")).toBeTruthy();
294
- });
295
- test("Renders with correct optional label", function () {
296
- var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
297
- label: "test-select-label",
298
- optional: true
299
- })),
300
- getByText = _render3.getByText;
301
-
302
- expect(getByText("test-select-label")).toBeTruthy();
303
- expect(getByText("(Optional)")).toBeTruthy();
304
- });
305
- test("Renders with error message and correct aria attributes", function () {
306
- var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
307
327
  label: "Error label",
308
328
  error: "Error message."
309
329
  })),
310
- getByText = _render4.getByText,
311
- getByRole = _render4.getByRole;
330
+ getByText = _render2.getByText,
331
+ getByRole = _render2.getByRole;
312
332
 
313
333
  var select = getByRole("combobox");
314
334
  var errorMessage = getByText("Error message.");
@@ -318,13 +338,13 @@ describe("Select component tests", function () {
318
338
  expect(errorMessage.getAttribute("aria-live")).toBe("assertive");
319
339
  });
320
340
  test("Renders with correct aria attributes", function () {
321
- var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
341
+ var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
322
342
  label: "test-select-label",
323
343
  placeholder: "Example",
324
344
  options: single_options
325
345
  })),
326
- getByText = _render5.getByText,
327
- getByRole = _render5.getByRole;
346
+ getByText = _render3.getByText,
347
+ getByRole = _render3.getByRole;
328
348
 
329
349
  var select = getByRole("combobox");
330
350
  var label = getByText("test-select-label");
@@ -343,17 +363,17 @@ describe("Select component tests", function () {
343
363
  expect(list.getAttribute("aria-multiselectable")).toBe("false");
344
364
  });
345
365
  test("Single selection: Renders with correct default value", function () {
346
- var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
366
+ var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
347
367
  label: "test-select-label",
348
368
  name: "test",
349
369
  defaultValue: "4",
350
370
  options: single_options
351
371
  })),
352
- getByText = _render6.getByText,
353
- getByRole = _render6.getByRole,
354
- getAllByRole = _render6.getAllByRole,
355
- queryByRole = _render6.queryByRole,
356
- container = _render6.container;
372
+ getByText = _render4.getByText,
373
+ getByRole = _render4.getByRole,
374
+ getAllByRole = _render4.getAllByRole,
375
+ queryByRole = _render4.queryByRole,
376
+ container = _render4.container;
357
377
 
358
378
  var select = getByRole("combobox");
359
379
  var submitInput = container.querySelector("input[name=\"test\"]");
@@ -371,18 +391,18 @@ describe("Select component tests", function () {
371
391
  expect(submitInput.value).toBe("8");
372
392
  });
373
393
  test("Multiple selection: Renders with correct default value", function () {
374
- var _render7 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
394
+ var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
375
395
  label: "test-select-label",
376
396
  name: "test",
377
397
  defaultValue: ["4", "2", "6"],
378
398
  options: single_options,
379
399
  multiple: true
380
400
  })),
381
- getByText = _render7.getByText,
382
- getByRole = _render7.getByRole,
383
- getAllByRole = _render7.getAllByRole,
384
- queryByRole = _render7.queryByRole,
385
- container = _render7.container;
401
+ getByText = _render5.getByText,
402
+ getByRole = _render5.getByRole,
403
+ getAllByRole = _render5.getAllByRole,
404
+ queryByRole = _render5.queryByRole,
405
+ container = _render5.container;
386
406
 
387
407
  var select = getByRole("combobox");
388
408
  var submitInput = container.querySelector("input[name=\"test\"]");
@@ -401,18 +421,15 @@ describe("Select component tests", function () {
401
421
  expect(getByText("Option 02, Option 03, Option 04, Option 06")).toBeTruthy();
402
422
  expect(submitInput.value).toBe("4,2,6,3");
403
423
  });
404
- test("Disabled select - Clear all options action must be shown but not clickable", function () {
405
- var _render8 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
424
+ test("Disabled select - Cannot gain focus or open the listbox via click", function () {
425
+ var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
406
426
  label: "test-select-label",
407
427
  value: ["1", "2"],
408
428
  options: single_options,
409
- disabled: true,
410
- searchable: true,
411
- multiple: true
429
+ disabled: true
412
430
  })),
413
- getByRole = _render8.getByRole,
414
- getByText = _render8.getByText,
415
- queryByRole = _render8.queryByRole;
431
+ getByRole = _render6.getByRole,
432
+ queryByRole = _render6.queryByRole;
416
433
 
417
434
  var select = getByRole("combobox");
418
435
  expect(select.getAttribute("aria-disabled")).toBe("true");
@@ -420,12 +437,49 @@ describe("Select component tests", function () {
420
437
  _userEvent["default"].click(select);
421
438
 
422
439
  expect(queryByRole("listbox")).toBeFalsy();
440
+ expect(document.activeElement === select).toBeFalsy();
441
+ });
442
+ test("Disabled select - Clear all options action must be shown but not clickable", function () {
443
+ var _render7 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
444
+ label: "test-select-label",
445
+ value: ["1", "2"],
446
+ options: single_options,
447
+ disabled: true,
448
+ searchable: true,
449
+ multiple: true
450
+ })),
451
+ getByRole = _render7.getByRole,
452
+ getByText = _render7.getByText;
423
453
 
424
454
  _userEvent["default"].click(getByRole("button"));
425
455
 
426
456
  expect(getByText("Option 01, Option 02")).toBeTruthy();
427
457
  });
428
- test("Focused select does not open the listbox", function () {
458
+ test("Disabled select - Does not call onBlur event", function () {
459
+ var onBlur = jest.fn();
460
+
461
+ var _render8 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
462
+ label: "test-select-label",
463
+ options: single_options,
464
+ disabled: true,
465
+ onBlur: onBlur
466
+ })),
467
+ getByRole = _render8.getByRole;
468
+
469
+ var select = getByRole("combobox");
470
+
471
+ _userEvent["default"].click(select);
472
+
473
+ _react2.fireEvent.keyDown(getByRole("combobox"), {
474
+ key: "Tab",
475
+ code: "Tab",
476
+ keyCode: 9,
477
+ charCode: 9
478
+ });
479
+
480
+ expect(onBlur).not.toHaveBeenCalled();
481
+ });
482
+ test("Disabled select - When the component gains the focus, the listbox does not open", function () {
429
483
  var _render9 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
430
484
  label: "test-select-label",
431
485
  value: ["1", "2"],
@@ -442,8 +496,9 @@ describe("Select component tests", function () {
442
496
  _react2.fireEvent.focus(select);
443
497
 
444
498
  expect(queryByRole("listbox")).toBeFalsy();
499
+ expect(document.activeElement === select).toBeFalsy();
445
500
  });
446
- test("Controlled - Not optional constraint", function () {
501
+ test("Controlled - Single selection - Not optional constraint", function () {
447
502
  var onChange = jest.fn();
448
503
  var onBlur = jest.fn();
449
504
 
@@ -475,9 +530,32 @@ describe("Select component tests", function () {
475
530
 
476
531
  expect(onChange).toHaveBeenCalled();
477
532
  expect(onChange).toHaveBeenCalledWith({
478
- value: "1",
479
- error: null
533
+ value: "1"
534
+ });
535
+
536
+ _react2.fireEvent.blur(select);
537
+
538
+ expect(onBlur).toHaveBeenCalled();
539
+ expect(onBlur).toHaveBeenCalledWith({
540
+ value: "1"
480
541
  });
542
+ });
543
+ test("Controlled - Multiple selection - Not optional constraint", function () {
544
+ var onChange = jest.fn();
545
+ var onBlur = jest.fn();
546
+
547
+ var _render11 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
548
+ label: "test-select-label",
549
+ options: single_options,
550
+ onChange: onChange,
551
+ onBlur: onBlur,
552
+ multiple: true
553
+ })),
554
+ getByRole = _render11.getByRole,
555
+ getAllByRole = _render11.getAllByRole;
556
+
557
+ var select = getByRole("combobox");
558
+ expect(select.getAttribute("aria-required")).toBe("true");
481
559
 
482
560
  _react2.fireEvent.focus(select);
483
561
 
@@ -485,22 +563,60 @@ describe("Select component tests", function () {
485
563
 
486
564
  expect(onBlur).toHaveBeenCalled();
487
565
  expect(onBlur).toHaveBeenCalledWith({
488
- value: "1",
489
- error: null
566
+ value: [],
567
+ error: "This field is required. Please, enter a value."
568
+ });
569
+
570
+ _userEvent["default"].click(select);
571
+
572
+ _userEvent["default"].click(getAllByRole("option")[0]);
573
+
574
+ _userEvent["default"].click(getAllByRole("option")[1]);
575
+
576
+ expect(onChange).toHaveBeenCalled();
577
+ expect(onChange).toHaveBeenCalledWith({
578
+ value: ["1", "2"]
579
+ });
580
+
581
+ _react2.fireEvent.blur(select);
582
+
583
+ expect(onBlur).toHaveBeenCalled();
584
+ expect(onBlur).toHaveBeenCalledWith({
585
+ value: ["1", "2"]
586
+ });
587
+
588
+ _userEvent["default"].click(select);
589
+
590
+ _userEvent["default"].click(getAllByRole("option")[0]);
591
+
592
+ _userEvent["default"].click(getAllByRole("option")[1]);
593
+
594
+ expect(onChange).toHaveBeenCalled();
595
+ expect(onChange).toHaveBeenCalledWith({
596
+ value: [],
597
+ error: "This field is required. Please, enter a value."
598
+ });
599
+
600
+ _react2.fireEvent.blur(select);
601
+
602
+ expect(onBlur).toHaveBeenCalled();
603
+ expect(onBlur).toHaveBeenCalledWith({
604
+ value: [],
605
+ error: "This field is required. Please, enter a value."
490
606
  });
491
607
  });
492
608
  test("Controlled - Optional constraint", function () {
493
609
  var onChange = jest.fn();
494
610
  var onBlur = jest.fn();
495
611
 
496
- var _render11 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
612
+ var _render12 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
497
613
  label: "test-select-label",
498
614
  options: single_options,
499
615
  onChange: onChange,
500
616
  onBlur: onBlur,
501
617
  optional: true
502
618
  })),
503
- getByRole = _render11.getByRole;
619
+ getByRole = _render12.getByRole;
504
620
 
505
621
  var select = getByRole("combobox");
506
622
  expect(select.getAttribute("aria-required")).toBe("false");
@@ -511,20 +627,19 @@ describe("Select component tests", function () {
511
627
 
512
628
  expect(onBlur).toHaveBeenCalled();
513
629
  expect(onBlur).toHaveBeenCalledWith({
514
- value: "",
515
- error: null
630
+ value: ""
516
631
  });
517
632
  expect(select.getAttribute("aria-invalid")).toBe("false");
518
633
  });
519
634
  test("Non-Grouped Options - Opens listbox and renders correctly or closes it with a click on select", function () {
520
- var _render12 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
635
+ var _render13 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
521
636
  label: "test-select-label",
522
637
  options: single_options
523
638
  })),
524
- getByText = _render12.getByText,
525
- getByRole = _render12.getByRole,
526
- getAllByRole = _render12.getAllByRole,
527
- queryByRole = _render12.queryByRole;
639
+ getByText = _render13.getByText,
640
+ getByRole = _render13.getByRole,
641
+ getAllByRole = _render13.getAllByRole,
642
+ queryByRole = _render13.queryByRole;
528
643
 
529
644
  var select = getByRole("combobox");
530
645
 
@@ -544,12 +659,12 @@ describe("Select component tests", function () {
544
659
  expect(select.getAttribute("aria-expanded")).toBe("false");
545
660
  });
546
661
  test("Non-Grouped Options - If an empty list of options is passed, the select is rendered but doestn't open the listbox", function () {
547
- var _render13 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
662
+ var _render14 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
548
663
  label: "test-select-label",
549
664
  options: []
550
665
  })),
551
- getByRole = _render13.getByRole,
552
- queryByRole = _render13.queryByRole;
666
+ getByRole = _render14.getByRole,
667
+ queryByRole = _render14.queryByRole;
553
668
 
554
669
  var select = getByRole("combobox");
555
670
 
@@ -561,17 +676,17 @@ describe("Select component tests", function () {
561
676
  test("Non-Grouped Options - Click in an option selects it and closes the listbox", function () {
562
677
  var onChange = jest.fn();
563
678
 
564
- var _render14 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
679
+ var _render15 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
565
680
  name: "test",
566
681
  label: "test-select-label",
567
682
  options: single_options,
568
683
  onChange: onChange
569
684
  })),
570
- getByText = _render14.getByText,
571
- getByRole = _render14.getByRole,
572
- getAllByRole = _render14.getAllByRole,
573
- queryByRole = _render14.queryByRole,
574
- container = _render14.container;
685
+ getByText = _render15.getByText,
686
+ getByRole = _render15.getByRole,
687
+ getAllByRole = _render15.getAllByRole,
688
+ queryByRole = _render15.queryByRole,
689
+ container = _render15.container;
575
690
 
576
691
  var select = getByRole("combobox");
577
692
  var submitInput = container.querySelector("input[name=\"test\"]");
@@ -581,8 +696,7 @@ describe("Select component tests", function () {
581
696
  _userEvent["default"].click(getAllByRole("option")[2]);
582
697
 
583
698
  expect(onChange).toHaveBeenCalledWith({
584
- value: "3",
585
- error: null
699
+ value: "3"
586
700
  });
587
701
  expect(queryByRole("listbox")).toBeFalsy();
588
702
  expect(getByText("Option 03")).toBeTruthy();
@@ -595,16 +709,16 @@ describe("Select component tests", function () {
595
709
  test("Non-Grouped Options - Optional renders an empty first option (selected by default) with the placeholder as its label", function () {
596
710
  var onChange = jest.fn();
597
711
 
598
- var _render15 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
712
+ var _render16 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
599
713
  label: "test-select-label",
600
714
  placeholder: "Choose an option",
601
715
  options: single_options,
602
716
  onChange: onChange,
603
717
  optional: true
604
718
  })),
605
- getByRole = _render15.getByRole,
606
- getAllByRole = _render15.getAllByRole,
607
- getAllByText = _render15.getAllByText;
719
+ getByRole = _render16.getByRole,
720
+ getAllByRole = _render16.getAllByRole,
721
+ getAllByText = _render16.getAllByText;
608
722
 
609
723
  var select = getByRole("combobox");
610
724
 
@@ -616,8 +730,7 @@ describe("Select component tests", function () {
616
730
  _userEvent["default"].click(getAllByRole("option")[0]);
617
731
 
618
732
  expect(onChange).toHaveBeenCalledWith({
619
- value: "",
620
- error: null
733
+ value: ""
621
734
  });
622
735
  expect(getAllByText("Choose an option").length).toBe(1);
623
736
 
@@ -638,8 +751,7 @@ describe("Select component tests", function () {
638
751
  });
639
752
 
640
753
  expect(onChange).toHaveBeenCalledWith({
641
- value: "",
642
- error: null
754
+ value: ""
643
755
  });
644
756
  expect(getAllByText("Choose an option").length).toBe(1);
645
757
 
@@ -653,18 +765,18 @@ describe("Select component tests", function () {
653
765
  expect(select.getAttribute("aria-activedescendant")).toBe("option-0");
654
766
  });
655
767
  test("Non-Grouped Options - Filtering options never affects the optional item until there are no coincidence", function () {
656
- var _render16 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
768
+ var _render17 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
657
769
  label: "test-select-label",
658
770
  placeholder: "Placeholder example",
659
771
  options: single_options,
660
772
  optional: true,
661
773
  searchable: true
662
774
  })),
663
- getByRole = _render16.getByRole,
664
- getAllByRole = _render16.getAllByRole,
665
- getByText = _render16.getByText,
666
- queryByText = _render16.queryByText,
667
- container = _render16.container;
775
+ getByRole = _render17.getByRole,
776
+ getAllByRole = _render17.getAllByRole,
777
+ getByText = _render17.getByText,
778
+ queryByText = _render17.queryByText,
779
+ container = _render17.container;
668
780
 
669
781
  var select = getByRole("combobox");
670
782
  var searchInput = container.querySelectorAll("input")[1];
@@ -682,12 +794,12 @@ describe("Select component tests", function () {
682
794
  expect(getByText("No matches found")).toBeTruthy();
683
795
  });
684
796
  test("Non-Grouped Options - Renders SVG icons correctly when passed with options", function () {
685
- var _render17 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
797
+ var _render18 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
686
798
  label: "test-select-label",
687
799
  options: svg_icon_options
688
800
  })),
689
- getByRole = _render17.getByRole,
690
- getAllByRole = _render17.getAllByRole;
801
+ getByRole = _render18.getByRole,
802
+ getAllByRole = _render18.getAllByRole;
691
803
 
692
804
  var select = getByRole("combobox");
693
805
 
@@ -697,13 +809,13 @@ describe("Select component tests", function () {
697
809
  expect(getAllByRole("option").length).toBe(5);
698
810
  });
699
811
  test("Non-Grouped Options - Renders string url icons correctly when passed with options", function () {
700
- var _render18 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
812
+ var _render19 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
701
813
  label: "test-select-label",
702
814
  options: url_icon_options,
703
815
  optional: true
704
816
  })),
705
- getByRole = _render18.getByRole,
706
- getAllByRole = _render18.getAllByRole;
817
+ getByRole = _render19.getByRole,
818
+ getAllByRole = _render19.getAllByRole;
707
819
 
708
820
  var select = getByRole("combobox");
709
821
 
@@ -713,12 +825,12 @@ describe("Select component tests", function () {
713
825
  expect(getAllByRole("option").length).toBe(6);
714
826
  });
715
827
  test("Non-Grouped Options: Arrow up key - Opens the listbox and visually focus the last option", function () {
716
- var _render19 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
828
+ var _render20 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
717
829
  label: "test-select-label",
718
830
  options: single_options
719
831
  })),
720
- getByRole = _render19.getByRole,
721
- queryByRole = _render19.queryByRole;
832
+ getByRole = _render20.getByRole,
833
+ queryByRole = _render20.queryByRole;
722
834
 
723
835
  var select = getByRole("combobox");
724
836
 
@@ -733,12 +845,12 @@ describe("Select component tests", function () {
733
845
  expect(select.getAttribute("aria-activedescendant")).toBe("option-19");
734
846
  });
735
847
  test("Non-Grouped Options: Arrow up key - Puts the focus in last option when the first one is visually focused", function () {
736
- var _render20 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
848
+ var _render21 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
737
849
  label: "test-select-label",
738
850
  options: single_options
739
851
  })),
740
- getByRole = _render20.getByRole,
741
- queryByRole = _render20.queryByRole;
852
+ getByRole = _render21.getByRole,
853
+ queryByRole = _render21.queryByRole;
742
854
 
743
855
  var select = getByRole("combobox");
744
856
 
@@ -760,12 +872,12 @@ describe("Select component tests", function () {
760
872
  expect(select.getAttribute("aria-activedescendant")).toBe("option-19");
761
873
  });
762
874
  test("Non-Grouped Options: Arrow down key - Opens the listbox and visually focus the first option", function () {
763
- var _render21 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
875
+ var _render22 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
764
876
  label: "test-select-label",
765
877
  options: single_options
766
878
  })),
767
- getByRole = _render21.getByRole,
768
- queryByRole = _render21.queryByRole;
879
+ getByRole = _render22.getByRole,
880
+ queryByRole = _render22.queryByRole;
769
881
 
770
882
  var select = getByRole("combobox");
771
883
 
@@ -780,12 +892,12 @@ describe("Select component tests", function () {
780
892
  expect(select.getAttribute("aria-activedescendant")).toBe("option-0");
781
893
  });
782
894
  test("Non-Grouped Options: Arrow down key - Puts the focus in the first option when the last one is visually focused", function () {
783
- var _render22 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
895
+ var _render23 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
784
896
  label: "test-select-label",
785
897
  options: single_options
786
898
  })),
787
- getByRole = _render22.getByRole,
788
- queryByRole = _render22.queryByRole;
899
+ getByRole = _render23.getByRole,
900
+ queryByRole = _render23.queryByRole;
789
901
 
790
902
  var select = getByRole("combobox");
791
903
 
@@ -809,16 +921,16 @@ describe("Select component tests", function () {
809
921
  test("Non-Grouped Options: Enter key - Selects the visually focused option and closes the listbox", function () {
810
922
  var onChange = jest.fn();
811
923
 
812
- var _render23 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
924
+ var _render24 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
813
925
  label: "test-select-label",
814
926
  options: single_options,
815
927
  onChange: onChange,
816
928
  optional: true
817
929
  })),
818
- getByText = _render23.getByText,
819
- getByRole = _render23.getByRole,
820
- getAllByRole = _render23.getAllByRole,
821
- queryByRole = _render23.queryByRole;
930
+ getByText = _render24.getByText,
931
+ getByRole = _render24.getByRole,
932
+ getAllByRole = _render24.getAllByRole,
933
+ queryByRole = _render24.queryByRole;
822
934
 
823
935
  var select = getByRole("combobox");
824
936
 
@@ -858,8 +970,7 @@ describe("Select component tests", function () {
858
970
  });
859
971
 
860
972
  expect(onChange).toHaveBeenCalledWith({
861
- value: "20",
862
- error: null
973
+ value: "20"
863
974
  });
864
975
  expect(queryByRole("listbox")).toBeFalsy();
865
976
  expect(getByText("Option 20")).toBeTruthy();
@@ -871,17 +982,17 @@ describe("Select component tests", function () {
871
982
  test("Non-Grouped Options: Searchable - Displays an input for filtering the list of options", function () {
872
983
  var onChange = jest.fn();
873
984
 
874
- var _render24 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
985
+ var _render25 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
875
986
  label: "test-select-label",
876
987
  options: single_options,
877
988
  onChange: onChange,
878
989
  searchable: true
879
990
  })),
880
- container = _render24.container,
881
- getByText = _render24.getByText,
882
- getByRole = _render24.getByRole,
883
- getAllByRole = _render24.getAllByRole,
884
- queryByRole = _render24.queryByRole;
991
+ container = _render25.container,
992
+ getByText = _render25.getByText,
993
+ getByRole = _render25.getByRole,
994
+ getAllByRole = _render25.getAllByRole,
995
+ queryByRole = _render25.queryByRole;
885
996
 
886
997
  var select = getByRole("combobox");
887
998
  var searchInput = container.querySelectorAll("input")[1];
@@ -895,8 +1006,7 @@ describe("Select component tests", function () {
895
1006
  _userEvent["default"].click(getByRole("option"));
896
1007
 
897
1008
  expect(onChange).toHaveBeenCalledWith({
898
- value: "8",
899
- error: null
1009
+ value: "8"
900
1010
  });
901
1011
  expect(queryByRole("listbox")).toBeFalsy();
902
1012
  expect(getByText("Option 08")).toBeTruthy();
@@ -909,15 +1019,15 @@ describe("Select component tests", function () {
909
1019
  test("Non-Grouped Options: Searchable - Displays 'No matches found' when there are no filtering results", function () {
910
1020
  var onChange = jest.fn();
911
1021
 
912
- var _render25 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1022
+ var _render26 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
913
1023
  label: "test-select-label",
914
1024
  options: single_options,
915
1025
  onChange: onChange,
916
1026
  searchable: true
917
1027
  })),
918
- container = _render25.container,
919
- getByText = _render25.getByText,
920
- getByRole = _render25.getByRole;
1028
+ container = _render26.container,
1029
+ getByText = _render26.getByText,
1030
+ getByRole = _render26.getByRole;
921
1031
 
922
1032
  var select = getByRole("combobox");
923
1033
  var searchInput = container.querySelectorAll("input")[1];
@@ -933,16 +1043,16 @@ describe("Select component tests", function () {
933
1043
  test("Non-Grouped Options: Searchable - Clicking the select, when the list is open, clears the search value", function () {
934
1044
  var onChange = jest.fn();
935
1045
 
936
- var _render26 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1046
+ var _render27 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
937
1047
  label: "test-select-label",
938
1048
  options: single_options,
939
1049
  onChange: onChange,
940
1050
  searchable: true
941
1051
  })),
942
- container = _render26.container,
943
- getByText = _render26.getByText,
944
- getByRole = _render26.getByRole,
945
- getAllByRole = _render26.getAllByRole;
1052
+ container = _render27.container,
1053
+ getByText = _render27.getByText,
1054
+ getByRole = _render27.getByRole,
1055
+ getAllByRole = _render27.getAllByRole;
946
1056
 
947
1057
  var select = getByRole("combobox");
948
1058
  var searchInput = container.querySelectorAll("input")[1];
@@ -965,15 +1075,15 @@ describe("Select component tests", function () {
965
1075
  test("Non-Grouped Options: Searchable - Writing displays the listbox, if it was not open", function () {
966
1076
  var onChange = jest.fn();
967
1077
 
968
- var _render27 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1078
+ var _render28 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
969
1079
  label: "test-select-label",
970
1080
  options: single_options,
971
1081
  onChange: onChange,
972
1082
  searchable: true
973
1083
  })),
974
- container = _render27.container,
975
- getByRole = _render27.getByRole,
976
- queryByRole = _render27.queryByRole;
1084
+ container = _render28.container,
1085
+ getByRole = _render28.getByRole,
1086
+ queryByRole = _render28.queryByRole;
977
1087
 
978
1088
  var select = getByRole("combobox");
979
1089
  var searchInput = container.querySelectorAll("input")[1];
@@ -991,15 +1101,15 @@ describe("Select component tests", function () {
991
1101
  test("Non-Grouped Options: Searchable - Key Esc cleans the search value and closes the options", function () {
992
1102
  var onChange = jest.fn();
993
1103
 
994
- var _render28 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1104
+ var _render29 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
995
1105
  label: "test-select-label",
996
1106
  options: single_options,
997
1107
  onChange: onChange,
998
1108
  searchable: true
999
1109
  })),
1000
- container = _render28.container,
1001
- getByRole = _render28.getByRole,
1002
- queryByRole = _render28.queryByRole;
1110
+ container = _render29.container,
1111
+ getByRole = _render29.getByRole,
1112
+ queryByRole = _render29.queryByRole;
1003
1113
 
1004
1114
  var select = getByRole("combobox");
1005
1115
  var searchInput = container.querySelectorAll("input")[1];
@@ -1019,16 +1129,16 @@ describe("Select component tests", function () {
1019
1129
  test("Non-Grouped Options: Searchable - While user types, a clear action is displayed for cleaning the search value", function () {
1020
1130
  var onChange = jest.fn();
1021
1131
 
1022
- var _render29 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1132
+ var _render30 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1023
1133
  label: "test-select-label",
1024
1134
  options: single_options,
1025
1135
  onChange: onChange,
1026
1136
  searchable: true
1027
1137
  })),
1028
- container = _render29.container,
1029
- getByRole = _render29.getByRole,
1030
- getAllByRole = _render29.getAllByRole,
1031
- queryByTitle = _render29.queryByTitle;
1138
+ container = _render30.container,
1139
+ getByRole = _render30.getByRole,
1140
+ getAllByRole = _render30.getAllByRole,
1141
+ queryByTitle = _render30.queryByTitle;
1032
1142
 
1033
1143
  var searchInput = container.querySelectorAll("input")[1];
1034
1144
 
@@ -1048,19 +1158,19 @@ describe("Select component tests", function () {
1048
1158
  test("Non-Grouped Options: Multiple selection - Displays a checkbox per option and enables the multi-selection", function () {
1049
1159
  var onChange = jest.fn();
1050
1160
 
1051
- var _render30 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1161
+ var _render31 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1052
1162
  name: "test",
1053
1163
  label: "test-select-label",
1054
1164
  options: single_options,
1055
1165
  onChange: onChange,
1056
1166
  multiple: true
1057
1167
  })),
1058
- getByText = _render30.getByText,
1059
- getAllByText = _render30.getAllByText,
1060
- getByRole = _render30.getByRole,
1061
- getAllByRole = _render30.getAllByRole,
1062
- queryByRole = _render30.queryByRole,
1063
- container = _render30.container;
1168
+ getByText = _render31.getByText,
1169
+ getAllByText = _render31.getAllByText,
1170
+ getByRole = _render31.getByRole,
1171
+ getAllByRole = _render31.getAllByRole,
1172
+ queryByRole = _render31.queryByRole,
1173
+ container = _render31.container;
1064
1174
 
1065
1175
  var select = getByRole("combobox");
1066
1176
  var submitInput = container.querySelector("input[name=\"test\"]");
@@ -1069,9 +1179,11 @@ describe("Select component tests", function () {
1069
1179
 
1070
1180
  expect(getByRole("listbox").getAttribute("aria-multiselectable")).toBe("true");
1071
1181
 
1072
- _userEvent["default"].click(getAllByRole("option")[10]); // expect(onChange).toHaveBeenCalledWith({ value: ["11"], error: null });
1073
-
1182
+ _userEvent["default"].click(getAllByRole("option")[10]);
1074
1183
 
1184
+ expect(onChange).toHaveBeenCalledWith({
1185
+ value: ["11"]
1186
+ });
1075
1187
  expect(queryByRole("listbox")).toBeTruthy();
1076
1188
  expect(getAllByText("Option 11").length).toBe(2);
1077
1189
 
@@ -1094,9 +1206,11 @@ describe("Select component tests", function () {
1094
1206
  code: "Enter",
1095
1207
  keyCode: 13,
1096
1208
  charCode: 13
1097
- }); // expect(onChange).toHaveBeenCalledWith({ value: ["11", "19"], error: null });
1098
-
1209
+ });
1099
1210
 
1211
+ expect(onChange).toHaveBeenCalledWith({
1212
+ value: ["11", "19"]
1213
+ });
1100
1214
  expect(queryByRole("listbox")).toBeTruthy();
1101
1215
  expect(getByText("Option 11, Option 19")).toBeTruthy();
1102
1216
  expect(getAllByRole("option")[10].getAttribute("aria-selected")).toBe("true");
@@ -1106,19 +1220,19 @@ describe("Select component tests", function () {
1106
1220
  test("Non-Grouped Options: Multiple selection - Clear action and selection indicator", function () {
1107
1221
  var onChange = jest.fn();
1108
1222
 
1109
- var _render31 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1223
+ var _render32 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1110
1224
  label: "test-select-label",
1111
1225
  options: single_options,
1112
1226
  onChange: onChange,
1113
1227
  multiple: true
1114
1228
  })),
1115
- getByText = _render31.getByText,
1116
- queryByText = _render31.queryByText,
1117
- getByRole = _render31.getByRole,
1118
- getAllByRole = _render31.getAllByRole,
1119
- queryByRole = _render31.queryByRole,
1120
- getByTitle = _render31.getByTitle,
1121
- queryByTitle = _render31.queryByTitle;
1229
+ getByText = _render32.getByText,
1230
+ queryByText = _render32.queryByText,
1231
+ getByRole = _render32.getByRole,
1232
+ getAllByRole = _render32.getAllByRole,
1233
+ queryByRole = _render32.queryByRole,
1234
+ getByTitle = _render32.getByTitle,
1235
+ queryByTitle = _render32.queryByTitle;
1122
1236
 
1123
1237
  var select = getByRole("combobox");
1124
1238
 
@@ -1128,9 +1242,11 @@ describe("Select component tests", function () {
1128
1242
 
1129
1243
  _userEvent["default"].click(getAllByRole("option")[8]);
1130
1244
 
1131
- _userEvent["default"].click(getAllByRole("option")[13]); // expect(onChange).toHaveBeenCalledWith({ value: ["6", "9", "14"], error: null });
1132
-
1245
+ _userEvent["default"].click(getAllByRole("option")[13]);
1133
1246
 
1247
+ expect(onChange).toHaveBeenCalledWith({
1248
+ value: ["6", "9", "14"]
1249
+ });
1134
1250
  expect(queryByRole("listbox")).toBeTruthy();
1135
1251
  expect(getByText("Option 06, Option 09, Option 14")).toBeTruthy();
1136
1252
  expect(getByText("3", {
@@ -1139,6 +1255,10 @@ describe("Select component tests", function () {
1139
1255
 
1140
1256
  _userEvent["default"].click(getByTitle("Clear selection"));
1141
1257
 
1258
+ expect(onChange).toHaveBeenCalledWith({
1259
+ value: [],
1260
+ error: "This field is required. Please, enter a value."
1261
+ });
1142
1262
  expect(queryByRole("listbox")).toBeTruthy();
1143
1263
  expect(queryByText("Option 06, Option 09, Option 14")).toBeFalsy();
1144
1264
  expect(queryByText("3")).toBeFalsy();
@@ -1147,7 +1267,7 @@ describe("Select component tests", function () {
1147
1267
  test("Non-Grouped Options: Multiple selection - Optional option should not be added when the select is marked as multiple", function () {
1148
1268
  var onChange = jest.fn();
1149
1269
 
1150
- var _render32 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1270
+ var _render33 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1151
1271
  label: "test-select-label",
1152
1272
  placeholder: "Choose an option",
1153
1273
  options: single_options,
@@ -1155,10 +1275,10 @@ describe("Select component tests", function () {
1155
1275
  multiple: true,
1156
1276
  optional: true
1157
1277
  })),
1158
- getByText = _render32.getByText,
1159
- getAllByText = _render32.getAllByText,
1160
- getByRole = _render32.getByRole,
1161
- getAllByRole = _render32.getAllByRole;
1278
+ getByText = _render33.getByText,
1279
+ getAllByText = _render33.getAllByText,
1280
+ getByRole = _render33.getByRole,
1281
+ getAllByRole = _render33.getAllByRole;
1162
1282
 
1163
1283
  var select = getByRole("combobox");
1164
1284
  expect(getByText("(Optional)")).toBeTruthy();
@@ -1168,19 +1288,21 @@ describe("Select component tests", function () {
1168
1288
  expect(getAllByText("Choose an option").length).toBe(1);
1169
1289
  expect(getAllByRole("option")[0].getAttribute("aria-selected")).toBe("false");
1170
1290
 
1171
- _userEvent["default"].click(getAllByRole("option")[0]); // expect(onChange).toHaveBeenCalledWith({ value: ["1"], error: null });
1172
-
1291
+ _userEvent["default"].click(getAllByRole("option")[0]);
1173
1292
 
1293
+ expect(onChange).toHaveBeenCalledWith({
1294
+ value: ["1"]
1295
+ });
1174
1296
  expect(getAllByText("Option 01").length).toBe(2);
1175
1297
  });
1176
1298
  test("Non-Grouped Options - If an options was previously selected when its opened (by key press), the visual focus appears always in the selected option", function () {
1177
- var _render33 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1299
+ var _render34 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1178
1300
  label: "test-select-label",
1179
1301
  options: single_options
1180
1302
  })),
1181
- getByText = _render33.getByText,
1182
- getByRole = _render33.getByRole,
1183
- getAllByRole = _render33.getAllByRole;
1303
+ getByText = _render34.getByText,
1304
+ getByRole = _render34.getByRole,
1305
+ getAllByRole = _render34.getAllByRole;
1184
1306
 
1185
1307
  var select = getByRole("combobox");
1186
1308
 
@@ -1248,14 +1370,14 @@ describe("Select component tests", function () {
1248
1370
  expect(getByText("Option 06")).toBeTruthy();
1249
1371
  });
1250
1372
  test("Non-Grouped Options - If an options was previously selected when its opened (by click and key press), the visual focus appears always in the selected option", function () {
1251
- var _render34 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1373
+ var _render35 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1252
1374
  label: "test-select-label",
1253
1375
  options: single_options
1254
1376
  })),
1255
- getByText = _render34.getByText,
1256
- getByRole = _render34.getByRole,
1257
- getAllByRole = _render34.getAllByRole,
1258
- queryByRole = _render34.queryByRole;
1377
+ getByText = _render35.getByText,
1378
+ getByRole = _render35.getByRole,
1379
+ getAllByRole = _render35.getAllByRole,
1380
+ queryByRole = _render35.queryByRole;
1259
1381
 
1260
1382
  var select = getByRole("combobox");
1261
1383
 
@@ -1323,14 +1445,14 @@ describe("Select component tests", function () {
1323
1445
  expect(getByText("Option 17")).toBeTruthy();
1324
1446
  });
1325
1447
  test("Grouped Options - Opens listbox and renders it correctly or closes it with a click on select", function () {
1326
- var _render35 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1448
+ var _render36 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1327
1449
  label: "test-select-label",
1328
1450
  options: group_options
1329
1451
  })),
1330
- getByText = _render35.getByText,
1331
- getByRole = _render35.getByRole,
1332
- getAllByRole = _render35.getAllByRole,
1333
- queryByRole = _render35.queryByRole;
1452
+ getByText = _render36.getByText,
1453
+ getByRole = _render36.getByRole,
1454
+ getAllByRole = _render36.getAllByRole,
1455
+ queryByRole = _render36.queryByRole;
1334
1456
 
1335
1457
  var select = getByRole("combobox");
1336
1458
 
@@ -1358,15 +1480,15 @@ describe("Select component tests", function () {
1358
1480
  expect(select.getAttribute("aria-expanded")).toBe("false");
1359
1481
  });
1360
1482
  test("Grouped Options - If an empty list of options in a group is passed, the select is rendered but doestn't open the listbox", function () {
1361
- var _render36 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1483
+ var _render37 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1362
1484
  label: "test-select-label",
1363
1485
  options: [{
1364
1486
  label: "Group 1",
1365
1487
  options: []
1366
1488
  }]
1367
1489
  })),
1368
- getByRole = _render36.getByRole,
1369
- queryByRole = _render36.queryByRole;
1490
+ getByRole = _render37.getByRole,
1491
+ queryByRole = _render37.queryByRole;
1370
1492
 
1371
1493
  var select = getByRole("combobox");
1372
1494
 
@@ -1378,17 +1500,17 @@ describe("Select component tests", function () {
1378
1500
  test("Grouped Options - Click in an option selects it and closes the listbox", function () {
1379
1501
  var onChange = jest.fn();
1380
1502
 
1381
- var _render37 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1503
+ var _render38 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1382
1504
  name: "test",
1383
1505
  label: "test-select-label",
1384
1506
  options: group_options,
1385
1507
  onChange: onChange
1386
1508
  })),
1387
- getByText = _render37.getByText,
1388
- getByRole = _render37.getByRole,
1389
- getAllByRole = _render37.getAllByRole,
1390
- queryByRole = _render37.queryByRole,
1391
- container = _render37.container;
1509
+ getByText = _render38.getByText,
1510
+ getByRole = _render38.getByRole,
1511
+ getAllByRole = _render38.getAllByRole,
1512
+ queryByRole = _render38.queryByRole,
1513
+ container = _render38.container;
1392
1514
 
1393
1515
  var select = getByRole("combobox");
1394
1516
  var submitInput = container.querySelector("input[name=\"test\"]");
@@ -1398,8 +1520,7 @@ describe("Select component tests", function () {
1398
1520
  _userEvent["default"].click(getAllByRole("option")[8]);
1399
1521
 
1400
1522
  expect(onChange).toHaveBeenCalledWith({
1401
- value: "oviedo",
1402
- error: null
1523
+ value: "oviedo"
1403
1524
  });
1404
1525
  expect(queryByRole("listbox")).toBeFalsy();
1405
1526
  expect(getByText("Oviedo")).toBeTruthy();
@@ -1412,16 +1533,16 @@ describe("Select component tests", function () {
1412
1533
  test("Grouped Options - Optional renders an empty first option (out of any group) with the placeholder as its label", function () {
1413
1534
  var onChange = jest.fn();
1414
1535
 
1415
- var _render38 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1536
+ var _render39 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1416
1537
  label: "test-select-label",
1417
1538
  placeholder: "Placeholder example",
1418
1539
  options: group_options,
1419
1540
  onChange: onChange,
1420
1541
  optional: true
1421
1542
  })),
1422
- getByRole = _render38.getByRole,
1423
- getAllByRole = _render38.getAllByRole,
1424
- getAllByText = _render38.getAllByText;
1543
+ getByRole = _render39.getByRole,
1544
+ getAllByRole = _render39.getAllByRole,
1545
+ getAllByText = _render39.getAllByText;
1425
1546
 
1426
1547
  var select = getByRole("combobox");
1427
1548
 
@@ -1433,8 +1554,7 @@ describe("Select component tests", function () {
1433
1554
  _userEvent["default"].click(getAllByRole("option")[0]);
1434
1555
 
1435
1556
  expect(onChange).toHaveBeenCalledWith({
1436
- value: "",
1437
- error: null
1557
+ value: ""
1438
1558
  });
1439
1559
  expect(getAllByText("Placeholder example").length).toBe(1);
1440
1560
 
@@ -1455,8 +1575,7 @@ describe("Select component tests", function () {
1455
1575
  });
1456
1576
 
1457
1577
  expect(onChange).toHaveBeenCalledWith({
1458
- value: "",
1459
- error: null
1578
+ value: ""
1460
1579
  });
1461
1580
  expect(getAllByText("Placeholder example").length).toBe(1);
1462
1581
 
@@ -1470,18 +1589,18 @@ describe("Select component tests", function () {
1470
1589
  expect(select.getAttribute("aria-activedescendant")).toBe("option-0");
1471
1590
  });
1472
1591
  test("Grouped Options - Filtering options never affects the optional item until there are no coincidence", function () {
1473
- var _render39 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1592
+ var _render40 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1474
1593
  label: "test-select-label",
1475
1594
  placeholder: "Placeholder example",
1476
1595
  options: group_options,
1477
1596
  optional: true,
1478
1597
  searchable: true
1479
1598
  })),
1480
- getByRole = _render39.getByRole,
1481
- getAllByRole = _render39.getAllByRole,
1482
- getByText = _render39.getByText,
1483
- queryByText = _render39.queryByText,
1484
- container = _render39.container;
1599
+ getByRole = _render40.getByRole,
1600
+ getAllByRole = _render40.getAllByRole,
1601
+ getByText = _render40.getByText,
1602
+ queryByText = _render40.queryByText,
1603
+ container = _render40.container;
1485
1604
 
1486
1605
  var select = getByRole("combobox");
1487
1606
  var searchInput = container.querySelectorAll("input")[1];
@@ -1499,13 +1618,13 @@ describe("Select component tests", function () {
1499
1618
  expect(getByText("No matches found")).toBeTruthy();
1500
1619
  });
1501
1620
  test("Grouped Options - Renders icons correctly when passed with group options", function () {
1502
- var _render40 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1621
+ var _render41 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1503
1622
  label: "test-select-label",
1504
1623
  options: grouped_icon_options,
1505
1624
  optional: true
1506
1625
  })),
1507
- getByRole = _render40.getByRole,
1508
- getAllByRole = _render40.getAllByRole;
1626
+ getByRole = _render41.getByRole,
1627
+ getAllByRole = _render41.getAllByRole;
1509
1628
 
1510
1629
  var select = getByRole("combobox");
1511
1630
 
@@ -1515,12 +1634,12 @@ describe("Select component tests", function () {
1515
1634
  expect(getAllByRole("option").length).toBe(11);
1516
1635
  });
1517
1636
  test("Grouped Options: Arrow up key - Opens the listbox and visually focus the last option", function () {
1518
- var _render41 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1637
+ var _render42 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1519
1638
  label: "test-select-label",
1520
1639
  options: group_options
1521
1640
  })),
1522
- getByRole = _render41.getByRole,
1523
- queryByRole = _render41.queryByRole;
1641
+ getByRole = _render42.getByRole,
1642
+ queryByRole = _render42.queryByRole;
1524
1643
 
1525
1644
  var select = getByRole("combobox");
1526
1645
 
@@ -1535,12 +1654,12 @@ describe("Select component tests", function () {
1535
1654
  expect(select.getAttribute("aria-activedescendant")).toBe("option-17");
1536
1655
  });
1537
1656
  test("Grouped Options: Arrow up key - Puts the focus in last option when the first one is visually focused", function () {
1538
- var _render42 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1657
+ var _render43 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1539
1658
  label: "test-select-label",
1540
1659
  options: group_options
1541
1660
  })),
1542
- getByRole = _render42.getByRole,
1543
- queryByRole = _render42.queryByRole;
1661
+ getByRole = _render43.getByRole,
1662
+ queryByRole = _render43.queryByRole;
1544
1663
 
1545
1664
  var select = getByRole("combobox");
1546
1665
 
@@ -1562,12 +1681,12 @@ describe("Select component tests", function () {
1562
1681
  expect(select.getAttribute("aria-activedescendant")).toBe("option-17");
1563
1682
  });
1564
1683
  test("Grouped Options: Arrow down key - Opens the listbox and visually focus the first option", function () {
1565
- var _render43 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1684
+ var _render44 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1566
1685
  label: "test-select-label",
1567
1686
  options: group_options
1568
1687
  })),
1569
- getByRole = _render43.getByRole,
1570
- queryByRole = _render43.queryByRole;
1688
+ getByRole = _render44.getByRole,
1689
+ queryByRole = _render44.queryByRole;
1571
1690
 
1572
1691
  var select = getByRole("combobox");
1573
1692
 
@@ -1582,12 +1701,12 @@ describe("Select component tests", function () {
1582
1701
  expect(select.getAttribute("aria-activedescendant")).toBe("option-0");
1583
1702
  });
1584
1703
  test("Grouped Options: Arrow down key - Puts the focus in the first option when the last one is visually focused", function () {
1585
- var _render44 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1704
+ var _render45 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1586
1705
  label: "test-select-label",
1587
1706
  options: group_options
1588
1707
  })),
1589
- getByRole = _render44.getByRole,
1590
- queryByRole = _render44.queryByRole;
1708
+ getByRole = _render45.getByRole,
1709
+ queryByRole = _render45.queryByRole;
1591
1710
 
1592
1711
  var select = getByRole("combobox");
1593
1712
 
@@ -1611,16 +1730,16 @@ describe("Select component tests", function () {
1611
1730
  test("Grouped Options: Enter key - Selects the visually focused option and closes the listbox", function () {
1612
1731
  var onChange = jest.fn();
1613
1732
 
1614
- var _render45 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1733
+ var _render46 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1615
1734
  label: "test-select-label",
1616
1735
  options: group_options,
1617
1736
  onChange: onChange,
1618
1737
  optional: true
1619
1738
  })),
1620
- getByText = _render45.getByText,
1621
- getByRole = _render45.getByRole,
1622
- getAllByRole = _render45.getAllByRole,
1623
- queryByRole = _render45.queryByRole;
1739
+ getByText = _render46.getByText,
1740
+ getByRole = _render46.getByRole,
1741
+ getAllByRole = _render46.getAllByRole,
1742
+ queryByRole = _render46.queryByRole;
1624
1743
 
1625
1744
  var select = getByRole("combobox");
1626
1745
 
@@ -1660,8 +1779,7 @@ describe("Select component tests", function () {
1660
1779
  });
1661
1780
 
1662
1781
  expect(onChange).toHaveBeenCalledWith({
1663
- value: "ebro",
1664
- error: null
1782
+ value: "ebro"
1665
1783
  });
1666
1784
  expect(queryByRole("listbox")).toBeFalsy();
1667
1785
  expect(getByText("Ebro")).toBeTruthy();
@@ -1673,17 +1791,17 @@ describe("Select component tests", function () {
1673
1791
  test("Grouped Options: Searchable - Displays an input for filtering the list of options", function () {
1674
1792
  var onChange = jest.fn();
1675
1793
 
1676
- var _render46 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1794
+ var _render47 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1677
1795
  label: "test-select-label",
1678
1796
  options: group_options,
1679
1797
  onChange: onChange,
1680
1798
  searchable: true
1681
1799
  })),
1682
- container = _render46.container,
1683
- getByText = _render46.getByText,
1684
- getByRole = _render46.getByRole,
1685
- getAllByRole = _render46.getAllByRole,
1686
- queryByRole = _render46.queryByRole;
1800
+ container = _render47.container,
1801
+ getByText = _render47.getByText,
1802
+ getByRole = _render47.getByRole,
1803
+ getAllByRole = _render47.getAllByRole,
1804
+ queryByRole = _render47.queryByRole;
1687
1805
 
1688
1806
  var select = getByRole("combobox");
1689
1807
  var searchInput = container.querySelectorAll("input")[1];
@@ -1703,8 +1821,7 @@ describe("Select component tests", function () {
1703
1821
  _userEvent["default"].click(getAllByRole("option")[4]);
1704
1822
 
1705
1823
  expect(onChange).toHaveBeenCalledWith({
1706
- value: "ebro",
1707
- error: null
1824
+ value: "ebro"
1708
1825
  });
1709
1826
  expect(queryByRole("listbox")).toBeFalsy();
1710
1827
  expect(getByText("Ebro")).toBeTruthy();
@@ -1717,15 +1834,15 @@ describe("Select component tests", function () {
1717
1834
  test("Grouped Options: Searchable - Displays 'No matches found' when there are no filtering results", function () {
1718
1835
  var onChange = jest.fn();
1719
1836
 
1720
- var _render47 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1837
+ var _render48 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1721
1838
  label: "test-select-label",
1722
1839
  options: group_options,
1723
1840
  onChange: onChange,
1724
1841
  searchable: true
1725
1842
  })),
1726
- container = _render47.container,
1727
- getByText = _render47.getByText,
1728
- getByRole = _render47.getByRole;
1843
+ container = _render48.container,
1844
+ getByText = _render48.getByText,
1845
+ getByRole = _render48.getByRole;
1729
1846
 
1730
1847
  var select = getByRole("combobox");
1731
1848
  var searchInput = container.querySelectorAll("input")[1];
@@ -1741,19 +1858,19 @@ describe("Select component tests", function () {
1741
1858
  test("Grouped Options: Multiple selection - Displays a checkbox per option and enables the multi-selection", function () {
1742
1859
  var onChange = jest.fn();
1743
1860
 
1744
- var _render48 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1861
+ var _render49 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1745
1862
  name: "test",
1746
1863
  label: "test-select-label",
1747
1864
  options: group_options,
1748
1865
  onChange: onChange,
1749
1866
  multiple: true
1750
1867
  })),
1751
- getByText = _render48.getByText,
1752
- getAllByText = _render48.getAllByText,
1753
- getByRole = _render48.getByRole,
1754
- getAllByRole = _render48.getAllByRole,
1755
- queryByRole = _render48.queryByRole,
1756
- container = _render48.container;
1868
+ getByText = _render49.getByText,
1869
+ getAllByText = _render49.getAllByText,
1870
+ getByRole = _render49.getByRole,
1871
+ getAllByRole = _render49.getAllByRole,
1872
+ queryByRole = _render49.queryByRole,
1873
+ container = _render49.container;
1757
1874
 
1758
1875
  var select = getByRole("combobox");
1759
1876
  var submitInput = container.querySelector("input[name=\"test\"]");
@@ -1762,9 +1879,11 @@ describe("Select component tests", function () {
1762
1879
 
1763
1880
  expect(getByRole("listbox").getAttribute("aria-multiselectable")).toBe("true");
1764
1881
 
1765
- _userEvent["default"].click(getAllByRole("option")[10]); // expect(onChange).toHaveBeenCalledWith({ value: ["bilbao"], error: null });
1766
-
1882
+ _userEvent["default"].click(getAllByRole("option")[10]);
1767
1883
 
1884
+ expect(onChange).toHaveBeenCalledWith({
1885
+ value: ["bilbao"]
1886
+ });
1768
1887
  expect(queryByRole("listbox")).toBeTruthy();
1769
1888
  expect(getAllByText("Bilbao").length).toBe(2);
1770
1889
 
@@ -1787,9 +1906,11 @@ describe("Select component tests", function () {
1787
1906
  code: "Enter",
1788
1907
  keyCode: 13,
1789
1908
  charCode: 13
1790
- }); // expect(onChange).toHaveBeenCalledWith({ value: ["bilbao", "guadalquivir"], error: null });
1791
-
1909
+ });
1792
1910
 
1911
+ expect(onChange).toHaveBeenCalledWith({
1912
+ value: ["bilbao", "guadalquivir"]
1913
+ });
1793
1914
  expect(queryByRole("listbox")).toBeTruthy();
1794
1915
  expect(getByText("Bilbao, Guadalquivir")).toBeTruthy();
1795
1916
  expect(getAllByRole("option")[10].getAttribute("aria-selected")).toBe("true");
@@ -1799,19 +1920,19 @@ describe("Select component tests", function () {
1799
1920
  test("Grouped Options: Multiple selection - Clear action and selection indicator", function () {
1800
1921
  var onChange = jest.fn();
1801
1922
 
1802
- var _render49 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1923
+ var _render50 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1803
1924
  label: "test-select-label",
1804
1925
  options: group_options,
1805
1926
  onChange: onChange,
1806
1927
  multiple: true
1807
1928
  })),
1808
- getByText = _render49.getByText,
1809
- queryByText = _render49.queryByText,
1810
- getByRole = _render49.getByRole,
1811
- getAllByRole = _render49.getAllByRole,
1812
- queryByRole = _render49.queryByRole,
1813
- getByTitle = _render49.getByTitle,
1814
- queryByTitle = _render49.queryByTitle;
1929
+ getByText = _render50.getByText,
1930
+ queryByText = _render50.queryByText,
1931
+ getByRole = _render50.getByRole,
1932
+ getAllByRole = _render50.getAllByRole,
1933
+ queryByRole = _render50.queryByRole,
1934
+ getByTitle = _render50.getByTitle,
1935
+ queryByTitle = _render50.queryByTitle;
1815
1936
 
1816
1937
  var select = getByRole("combobox");
1817
1938
 
@@ -1823,9 +1944,11 @@ describe("Select component tests", function () {
1823
1944
 
1824
1945
  _userEvent["default"].click(getAllByRole("option")[13]);
1825
1946
 
1826
- _userEvent["default"].click(getAllByRole("option")[17]); // expect(onChange).toHaveBeenCalledWith({ value: ["blanco", "oviedo", "duero", "ebro"], error: null });
1827
-
1947
+ _userEvent["default"].click(getAllByRole("option")[17]);
1828
1948
 
1949
+ expect(onChange).toHaveBeenCalledWith({
1950
+ value: ["blanco", "oviedo", "duero", "ebro"]
1951
+ });
1829
1952
  expect(queryByRole("listbox")).toBeTruthy();
1830
1953
  expect(getByText("Blanco, Oviedo, Duero, Ebro")).toBeTruthy();
1831
1954
  expect(getByText("4", {
@@ -1842,7 +1965,7 @@ describe("Select component tests", function () {
1842
1965
  test("Grouped Options: Multiple selection - Optional option should not be added when the select is marked as multiple", function () {
1843
1966
  var onChange = jest.fn();
1844
1967
 
1845
- var _render50 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1968
+ var _render51 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1846
1969
  label: "test-select-label",
1847
1970
  placeholder: "Choose an option",
1848
1971
  options: group_options,
@@ -1850,10 +1973,10 @@ describe("Select component tests", function () {
1850
1973
  multiple: true,
1851
1974
  optional: true
1852
1975
  })),
1853
- getByText = _render50.getByText,
1854
- getAllByText = _render50.getAllByText,
1855
- getByRole = _render50.getByRole,
1856
- getAllByRole = _render50.getAllByRole;
1976
+ getByText = _render51.getByText,
1977
+ getAllByText = _render51.getAllByText,
1978
+ getByRole = _render51.getByRole,
1979
+ getAllByRole = _render51.getAllByRole;
1857
1980
 
1858
1981
  var select = getByRole("combobox");
1859
1982
  expect(getByText("(Optional)")).toBeTruthy();
@@ -1863,19 +1986,21 @@ describe("Select component tests", function () {
1863
1986
  expect(getAllByText("Choose an option").length).toBe(1);
1864
1987
  expect(getAllByRole("option")[0].getAttribute("aria-selected")).toBe("false");
1865
1988
 
1866
- _userEvent["default"].click(getAllByRole("option")[0]); // expect(onChange).toHaveBeenCalledWith({ value: ["azul"], error: null });
1867
-
1989
+ _userEvent["default"].click(getAllByRole("option")[0]);
1868
1990
 
1991
+ expect(onChange).toHaveBeenCalledWith({
1992
+ value: ["azul"]
1993
+ });
1869
1994
  expect(getAllByText("Azul").length).toBe(2);
1870
1995
  });
1871
1996
  test("Grouped Options - If an options was previously selected when its opened (by key press), the visual focus appears always in the selected option", function () {
1872
- var _render51 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1997
+ var _render52 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1873
1998
  label: "test-select-label",
1874
1999
  options: group_options
1875
2000
  })),
1876
- getByText = _render51.getByText,
1877
- getByRole = _render51.getByRole,
1878
- getAllByRole = _render51.getAllByRole;
2001
+ getByText = _render52.getByText,
2002
+ getByRole = _render52.getByRole,
2003
+ getAllByRole = _render52.getAllByRole;
1879
2004
 
1880
2005
  var select = getByRole("combobox");
1881
2006
 
@@ -1943,13 +2068,13 @@ describe("Select component tests", function () {
1943
2068
  expect(getByText("Verde")).toBeTruthy();
1944
2069
  });
1945
2070
  test("Grouped Options - If an options was previously selected when its opened (by click and key press), the visual focus appears always in the selected option", function () {
1946
- var _render52 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
2071
+ var _render53 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1947
2072
  label: "test-select-label",
1948
2073
  options: group_options
1949
2074
  })),
1950
- getByText = _render52.getByText,
1951
- getByRole = _render52.getByRole,
1952
- getAllByRole = _render52.getAllByRole;
2075
+ getByText = _render53.getByText,
2076
+ getByRole = _render53.getByRole,
2077
+ getAllByRole = _render53.getAllByRole;
1953
2078
 
1954
2079
  var select = getByRole("combobox");
1955
2080
 
@@ -2013,4 +2138,38 @@ describe("Select component tests", function () {
2013
2138
 
2014
2139
  expect(getByText("Azul")).toBeTruthy();
2015
2140
  });
2141
+ test("Multiple selection and optional - Clear action cleans every selected option but does not display an error", function () {
2142
+ var onChange = jest.fn();
2143
+
2144
+ var _render54 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
2145
+ label: "test-select-label",
2146
+ options: single_options,
2147
+ onChange: onChange,
2148
+ multiple: true,
2149
+ optional: true
2150
+ })),
2151
+ getByRole = _render54.getByRole,
2152
+ getAllByRole = _render54.getAllByRole,
2153
+ getByTitle = _render54.getByTitle;
2154
+
2155
+ var select = getByRole("combobox");
2156
+
2157
+ _userEvent["default"].click(select);
2158
+
2159
+ _userEvent["default"].click(getAllByRole("option")[5]);
2160
+
2161
+ _userEvent["default"].click(getAllByRole("option")[8]);
2162
+
2163
+ _userEvent["default"].click(getAllByRole("option")[13]);
2164
+
2165
+ expect(onChange).toHaveBeenCalledWith({
2166
+ value: ["6", "9", "14"]
2167
+ });
2168
+
2169
+ _userEvent["default"].click(getByTitle("Clear selection"));
2170
+
2171
+ expect(onChange).toHaveBeenCalledWith({
2172
+ value: []
2173
+ });
2174
+ });
2016
2175
  });