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

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 (145) 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 +3 -3
  5. package/accordion-group/AccordionGroup.d.ts +1 -1
  6. package/accordion-group/AccordionGroup.js +13 -15
  7. package/accordion-group/AccordionGroup.stories.tsx +1 -1
  8. package/accordion-group/AccordionGroup.test.js +24 -6
  9. package/accordion-group/types.d.ts +4 -0
  10. package/alert/Alert.js +4 -1
  11. package/badge/Badge.d.ts +1 -1
  12. package/badge/Badge.js +5 -3
  13. package/badge/types.d.ts +1 -0
  14. package/bleed/Bleed.js +1 -34
  15. package/bleed/Bleed.stories.tsx +31 -32
  16. package/bleed/types.d.ts +1 -1
  17. package/box/Box.js +22 -32
  18. package/bulleted-list/BulletedList.d.ts +7 -0
  19. package/bulleted-list/BulletedList.js +120 -0
  20. package/bulleted-list/BulletedList.stories.tsx +203 -0
  21. package/bulleted-list/types.d.ts +11 -0
  22. package/{list → bulleted-list}/types.js +0 -0
  23. package/button/Button.js +14 -11
  24. package/card/Card.js +24 -27
  25. package/checkbox/Checkbox.d.ts +1 -1
  26. package/checkbox/Checkbox.js +38 -28
  27. package/checkbox/Checkbox.stories.tsx +124 -128
  28. package/checkbox/types.d.ts +3 -3
  29. package/common/variables.js +197 -84
  30. package/date-input/DateInput.js +38 -20
  31. package/date-input/DateInput.test.js +9 -22
  32. package/date-input/types.d.ts +12 -9
  33. package/dialog/Dialog.js +4 -32
  34. package/dropdown/Dropdown.js +13 -17
  35. package/file-input/FileInput.js +9 -6
  36. package/file-input/FileItem.js +7 -5
  37. package/footer/Footer.js +15 -88
  38. package/header/Header.js +27 -48
  39. package/header/Header.stories.tsx +46 -36
  40. package/header/Header.test.js +18 -2
  41. package/inset/Inset.js +1 -34
  42. package/inset/Inset.stories.tsx +32 -32
  43. package/inset/types.d.ts +25 -1
  44. package/layout/ApplicationLayout.d.ts +4 -3
  45. package/layout/ApplicationLayout.js +82 -114
  46. package/layout/ApplicationLayout.stories.tsx +14 -59
  47. package/layout/Icons.d.ts +5 -0
  48. package/layout/Icons.js +13 -2
  49. package/layout/SidenavContext.d.ts +5 -0
  50. package/layout/SidenavContext.js +19 -0
  51. package/layout/types.d.ts +5 -10
  52. package/link/Link.d.ts +3 -2
  53. package/link/Link.js +57 -74
  54. package/link/Link.stories.tsx +87 -52
  55. package/link/Link.test.js +7 -15
  56. package/link/types.d.ts +7 -23
  57. package/main.d.ts +6 -5
  58. package/main.js +37 -23
  59. package/number-input/NumberInput.test.js +2 -4
  60. package/number-input/types.d.ts +13 -10
  61. package/package.json +6 -5
  62. package/paginator/Paginator.js +17 -38
  63. package/paragraph/Paragraph.d.ts +6 -0
  64. package/paragraph/Paragraph.js +38 -0
  65. package/paragraph/Paragraph.stories.tsx +44 -0
  66. package/password-input/PasswordInput.js +7 -4
  67. package/password-input/PasswordInput.test.js +3 -6
  68. package/password-input/types.d.ts +14 -11
  69. package/progress-bar/ProgressBar.js +1 -1
  70. package/progress-bar/ProgressBar.stories.jsx +11 -11
  71. package/quick-nav/QuickNav.js +75 -23
  72. package/quick-nav/QuickNav.stories.tsx +13 -13
  73. package/quick-nav/types.d.ts +4 -8
  74. package/radio-group/Radio.js +1 -1
  75. package/radio-group/RadioGroup.js +8 -6
  76. package/select/Listbox.d.ts +4 -0
  77. package/select/Listbox.js +152 -0
  78. package/select/Option.js +1 -1
  79. package/select/Select.js +66 -161
  80. package/select/Select.stories.tsx +14 -2
  81. package/select/Select.test.js +335 -231
  82. package/select/types.d.ts +33 -11
  83. package/sidenav/Sidenav.d.ts +1 -1
  84. package/sidenav/Sidenav.js +20 -9
  85. package/slider/Slider.d.ts +1 -1
  86. package/slider/Slider.js +2 -1
  87. package/slider/Slider.stories.tsx +8 -8
  88. package/slider/Slider.test.js +31 -10
  89. package/slider/types.d.ts +4 -0
  90. package/spinner/Spinner.js +1 -1
  91. package/switch/Switch.d.ts +1 -1
  92. package/switch/Switch.js +19 -16
  93. package/switch/Switch.stories.tsx +8 -8
  94. package/switch/types.d.ts +2 -2
  95. package/tabs/Tabs.d.ts +1 -1
  96. package/tabs/Tabs.js +9 -11
  97. package/tabs/Tabs.stories.tsx +0 -8
  98. package/tabs/Tabs.test.js +26 -9
  99. package/tabs/types.d.ts +4 -0
  100. package/tabs-nav/NavTabs.d.ts +8 -0
  101. package/tabs-nav/NavTabs.js +125 -0
  102. package/tabs-nav/NavTabs.stories.tsx +170 -0
  103. package/tabs-nav/NavTabs.test.js +82 -0
  104. package/tabs-nav/Tab.d.ts +4 -0
  105. package/tabs-nav/Tab.js +132 -0
  106. package/tabs-nav/types.d.ts +53 -0
  107. package/{radio → tabs-nav}/types.js +0 -0
  108. package/tag/Tag.js +5 -8
  109. package/text-input/Suggestion.d.ts +4 -0
  110. package/text-input/Suggestion.js +55 -0
  111. package/text-input/TextInput.js +48 -76
  112. package/text-input/TextInput.test.js +22 -35
  113. package/text-input/types.d.ts +27 -12
  114. package/textarea/Textarea.js +10 -19
  115. package/textarea/types.d.ts +10 -7
  116. package/toggle-group/ToggleGroup.d.ts +1 -1
  117. package/toggle-group/ToggleGroup.js +5 -4
  118. package/toggle-group/ToggleGroup.stories.tsx +4 -4
  119. package/toggle-group/ToggleGroup.test.js +35 -4
  120. package/toggle-group/types.d.ts +8 -0
  121. package/typography/Typography.d.ts +4 -0
  122. package/typography/Typography.js +131 -0
  123. package/typography/Typography.stories.tsx +175 -0
  124. package/typography/types.d.ts +18 -0
  125. package/typography/types.js +5 -0
  126. package/typography/typographyContextTypes.d.ts +16 -0
  127. package/typography/typographyContextTypes.js +5 -0
  128. package/useTheme.js +2 -2
  129. package/useTranslatedLabels.d.ts +2 -0
  130. package/useTranslatedLabels.js +20 -0
  131. package/wizard/Wizard.js +35 -29
  132. package/ThemeContext.d.ts +0 -10
  133. package/ThemeContext.js +0 -243
  134. package/list/List.d.ts +0 -4
  135. package/list/List.js +0 -47
  136. package/list/List.stories.tsx +0 -95
  137. package/list/types.d.ts +0 -7
  138. package/radio/Radio.d.ts +0 -4
  139. package/radio/Radio.js +0 -174
  140. package/radio/Radio.stories.tsx +0 -192
  141. package/radio/Radio.test.js +0 -71
  142. package/radio/types.d.ts +0 -54
  143. package/text/Text.d.ts +0 -7
  144. package/text/Text.js +0 -30
  145. package/text/Text.stories.tsx +0 -19
@@ -443,7 +443,7 @@ describe("Select component tests", function () {
443
443
 
444
444
  expect(queryByRole("listbox")).toBeFalsy();
445
445
  });
446
- test("Controlled - Not optional constraint", function () {
446
+ test("Controlled - Single selection - Not optional constraint", function () {
447
447
  var onChange = jest.fn();
448
448
  var onBlur = jest.fn();
449
449
 
@@ -475,32 +475,93 @@ describe("Select component tests", function () {
475
475
 
476
476
  expect(onChange).toHaveBeenCalled();
477
477
  expect(onChange).toHaveBeenCalledWith({
478
- value: "1",
479
- error: null
478
+ value: "1"
480
479
  });
481
480
 
481
+ _react2.fireEvent.blur(select);
482
+
483
+ expect(onBlur).toHaveBeenCalled();
484
+ expect(onBlur).toHaveBeenCalledWith({
485
+ value: "1"
486
+ });
487
+ });
488
+ test("Controlled - Multiple selection - Not optional constraint", function () {
489
+ var onChange = jest.fn();
490
+ var onBlur = jest.fn();
491
+
492
+ var _render11 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
493
+ label: "test-select-label",
494
+ options: single_options,
495
+ onChange: onChange,
496
+ onBlur: onBlur,
497
+ multiple: true
498
+ })),
499
+ getByRole = _render11.getByRole,
500
+ getAllByRole = _render11.getAllByRole;
501
+
502
+ var select = getByRole("combobox");
503
+ expect(select.getAttribute("aria-required")).toBe("true");
504
+
482
505
  _react2.fireEvent.focus(select);
483
506
 
484
507
  _react2.fireEvent.blur(select);
485
508
 
486
509
  expect(onBlur).toHaveBeenCalled();
487
510
  expect(onBlur).toHaveBeenCalledWith({
488
- value: "1",
489
- error: null
511
+ value: [],
512
+ error: "This field is required. Please, enter a value."
513
+ });
514
+
515
+ _userEvent["default"].click(select);
516
+
517
+ _userEvent["default"].click(getAllByRole("option")[0]);
518
+
519
+ _userEvent["default"].click(getAllByRole("option")[1]);
520
+
521
+ expect(onChange).toHaveBeenCalled();
522
+ expect(onChange).toHaveBeenCalledWith({
523
+ value: ["1", "2"]
524
+ });
525
+
526
+ _react2.fireEvent.blur(select);
527
+
528
+ expect(onBlur).toHaveBeenCalled();
529
+ expect(onBlur).toHaveBeenCalledWith({
530
+ value: ["1", "2"]
531
+ });
532
+
533
+ _userEvent["default"].click(select);
534
+
535
+ _userEvent["default"].click(getAllByRole("option")[0]);
536
+
537
+ _userEvent["default"].click(getAllByRole("option")[1]);
538
+
539
+ expect(onChange).toHaveBeenCalled();
540
+ expect(onChange).toHaveBeenCalledWith({
541
+ value: [],
542
+ error: "This field is required. Please, enter a value."
543
+ });
544
+
545
+ _react2.fireEvent.blur(select);
546
+
547
+ expect(onBlur).toHaveBeenCalled();
548
+ expect(onBlur).toHaveBeenCalledWith({
549
+ value: [],
550
+ error: "This field is required. Please, enter a value."
490
551
  });
491
552
  });
492
553
  test("Controlled - Optional constraint", function () {
493
554
  var onChange = jest.fn();
494
555
  var onBlur = jest.fn();
495
556
 
496
- var _render11 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
557
+ var _render12 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
497
558
  label: "test-select-label",
498
559
  options: single_options,
499
560
  onChange: onChange,
500
561
  onBlur: onBlur,
501
562
  optional: true
502
563
  })),
503
- getByRole = _render11.getByRole;
564
+ getByRole = _render12.getByRole;
504
565
 
505
566
  var select = getByRole("combobox");
506
567
  expect(select.getAttribute("aria-required")).toBe("false");
@@ -511,20 +572,19 @@ describe("Select component tests", function () {
511
572
 
512
573
  expect(onBlur).toHaveBeenCalled();
513
574
  expect(onBlur).toHaveBeenCalledWith({
514
- value: "",
515
- error: null
575
+ value: ""
516
576
  });
517
577
  expect(select.getAttribute("aria-invalid")).toBe("false");
518
578
  });
519
579
  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"], {
580
+ var _render13 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
521
581
  label: "test-select-label",
522
582
  options: single_options
523
583
  })),
524
- getByText = _render12.getByText,
525
- getByRole = _render12.getByRole,
526
- getAllByRole = _render12.getAllByRole,
527
- queryByRole = _render12.queryByRole;
584
+ getByText = _render13.getByText,
585
+ getByRole = _render13.getByRole,
586
+ getAllByRole = _render13.getAllByRole,
587
+ queryByRole = _render13.queryByRole;
528
588
 
529
589
  var select = getByRole("combobox");
530
590
 
@@ -544,12 +604,12 @@ describe("Select component tests", function () {
544
604
  expect(select.getAttribute("aria-expanded")).toBe("false");
545
605
  });
546
606
  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"], {
607
+ var _render14 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
548
608
  label: "test-select-label",
549
609
  options: []
550
610
  })),
551
- getByRole = _render13.getByRole,
552
- queryByRole = _render13.queryByRole;
611
+ getByRole = _render14.getByRole,
612
+ queryByRole = _render14.queryByRole;
553
613
 
554
614
  var select = getByRole("combobox");
555
615
 
@@ -561,17 +621,17 @@ describe("Select component tests", function () {
561
621
  test("Non-Grouped Options - Click in an option selects it and closes the listbox", function () {
562
622
  var onChange = jest.fn();
563
623
 
564
- var _render14 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
624
+ var _render15 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
565
625
  name: "test",
566
626
  label: "test-select-label",
567
627
  options: single_options,
568
628
  onChange: onChange
569
629
  })),
570
- getByText = _render14.getByText,
571
- getByRole = _render14.getByRole,
572
- getAllByRole = _render14.getAllByRole,
573
- queryByRole = _render14.queryByRole,
574
- container = _render14.container;
630
+ getByText = _render15.getByText,
631
+ getByRole = _render15.getByRole,
632
+ getAllByRole = _render15.getAllByRole,
633
+ queryByRole = _render15.queryByRole,
634
+ container = _render15.container;
575
635
 
576
636
  var select = getByRole("combobox");
577
637
  var submitInput = container.querySelector("input[name=\"test\"]");
@@ -581,8 +641,7 @@ describe("Select component tests", function () {
581
641
  _userEvent["default"].click(getAllByRole("option")[2]);
582
642
 
583
643
  expect(onChange).toHaveBeenCalledWith({
584
- value: "3",
585
- error: null
644
+ value: "3"
586
645
  });
587
646
  expect(queryByRole("listbox")).toBeFalsy();
588
647
  expect(getByText("Option 03")).toBeTruthy();
@@ -595,16 +654,16 @@ describe("Select component tests", function () {
595
654
  test("Non-Grouped Options - Optional renders an empty first option (selected by default) with the placeholder as its label", function () {
596
655
  var onChange = jest.fn();
597
656
 
598
- var _render15 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
657
+ var _render16 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
599
658
  label: "test-select-label",
600
659
  placeholder: "Choose an option",
601
660
  options: single_options,
602
661
  onChange: onChange,
603
662
  optional: true
604
663
  })),
605
- getByRole = _render15.getByRole,
606
- getAllByRole = _render15.getAllByRole,
607
- getAllByText = _render15.getAllByText;
664
+ getByRole = _render16.getByRole,
665
+ getAllByRole = _render16.getAllByRole,
666
+ getAllByText = _render16.getAllByText;
608
667
 
609
668
  var select = getByRole("combobox");
610
669
 
@@ -616,8 +675,7 @@ describe("Select component tests", function () {
616
675
  _userEvent["default"].click(getAllByRole("option")[0]);
617
676
 
618
677
  expect(onChange).toHaveBeenCalledWith({
619
- value: "",
620
- error: null
678
+ value: ""
621
679
  });
622
680
  expect(getAllByText("Choose an option").length).toBe(1);
623
681
 
@@ -638,8 +696,7 @@ describe("Select component tests", function () {
638
696
  });
639
697
 
640
698
  expect(onChange).toHaveBeenCalledWith({
641
- value: "",
642
- error: null
699
+ value: ""
643
700
  });
644
701
  expect(getAllByText("Choose an option").length).toBe(1);
645
702
 
@@ -653,18 +710,18 @@ describe("Select component tests", function () {
653
710
  expect(select.getAttribute("aria-activedescendant")).toBe("option-0");
654
711
  });
655
712
  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"], {
713
+ var _render17 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
657
714
  label: "test-select-label",
658
715
  placeholder: "Placeholder example",
659
716
  options: single_options,
660
717
  optional: true,
661
718
  searchable: true
662
719
  })),
663
- getByRole = _render16.getByRole,
664
- getAllByRole = _render16.getAllByRole,
665
- getByText = _render16.getByText,
666
- queryByText = _render16.queryByText,
667
- container = _render16.container;
720
+ getByRole = _render17.getByRole,
721
+ getAllByRole = _render17.getAllByRole,
722
+ getByText = _render17.getByText,
723
+ queryByText = _render17.queryByText,
724
+ container = _render17.container;
668
725
 
669
726
  var select = getByRole("combobox");
670
727
  var searchInput = container.querySelectorAll("input")[1];
@@ -682,12 +739,12 @@ describe("Select component tests", function () {
682
739
  expect(getByText("No matches found")).toBeTruthy();
683
740
  });
684
741
  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"], {
742
+ var _render18 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
686
743
  label: "test-select-label",
687
744
  options: svg_icon_options
688
745
  })),
689
- getByRole = _render17.getByRole,
690
- getAllByRole = _render17.getAllByRole;
746
+ getByRole = _render18.getByRole,
747
+ getAllByRole = _render18.getAllByRole;
691
748
 
692
749
  var select = getByRole("combobox");
693
750
 
@@ -697,13 +754,13 @@ describe("Select component tests", function () {
697
754
  expect(getAllByRole("option").length).toBe(5);
698
755
  });
699
756
  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"], {
757
+ var _render19 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
701
758
  label: "test-select-label",
702
759
  options: url_icon_options,
703
760
  optional: true
704
761
  })),
705
- getByRole = _render18.getByRole,
706
- getAllByRole = _render18.getAllByRole;
762
+ getByRole = _render19.getByRole,
763
+ getAllByRole = _render19.getAllByRole;
707
764
 
708
765
  var select = getByRole("combobox");
709
766
 
@@ -713,12 +770,12 @@ describe("Select component tests", function () {
713
770
  expect(getAllByRole("option").length).toBe(6);
714
771
  });
715
772
  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"], {
773
+ var _render20 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
717
774
  label: "test-select-label",
718
775
  options: single_options
719
776
  })),
720
- getByRole = _render19.getByRole,
721
- queryByRole = _render19.queryByRole;
777
+ getByRole = _render20.getByRole,
778
+ queryByRole = _render20.queryByRole;
722
779
 
723
780
  var select = getByRole("combobox");
724
781
 
@@ -733,12 +790,12 @@ describe("Select component tests", function () {
733
790
  expect(select.getAttribute("aria-activedescendant")).toBe("option-19");
734
791
  });
735
792
  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"], {
793
+ var _render21 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
737
794
  label: "test-select-label",
738
795
  options: single_options
739
796
  })),
740
- getByRole = _render20.getByRole,
741
- queryByRole = _render20.queryByRole;
797
+ getByRole = _render21.getByRole,
798
+ queryByRole = _render21.queryByRole;
742
799
 
743
800
  var select = getByRole("combobox");
744
801
 
@@ -760,12 +817,12 @@ describe("Select component tests", function () {
760
817
  expect(select.getAttribute("aria-activedescendant")).toBe("option-19");
761
818
  });
762
819
  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"], {
820
+ var _render22 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
764
821
  label: "test-select-label",
765
822
  options: single_options
766
823
  })),
767
- getByRole = _render21.getByRole,
768
- queryByRole = _render21.queryByRole;
824
+ getByRole = _render22.getByRole,
825
+ queryByRole = _render22.queryByRole;
769
826
 
770
827
  var select = getByRole("combobox");
771
828
 
@@ -780,12 +837,12 @@ describe("Select component tests", function () {
780
837
  expect(select.getAttribute("aria-activedescendant")).toBe("option-0");
781
838
  });
782
839
  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"], {
840
+ var _render23 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
784
841
  label: "test-select-label",
785
842
  options: single_options
786
843
  })),
787
- getByRole = _render22.getByRole,
788
- queryByRole = _render22.queryByRole;
844
+ getByRole = _render23.getByRole,
845
+ queryByRole = _render23.queryByRole;
789
846
 
790
847
  var select = getByRole("combobox");
791
848
 
@@ -809,16 +866,16 @@ describe("Select component tests", function () {
809
866
  test("Non-Grouped Options: Enter key - Selects the visually focused option and closes the listbox", function () {
810
867
  var onChange = jest.fn();
811
868
 
812
- var _render23 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
869
+ var _render24 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
813
870
  label: "test-select-label",
814
871
  options: single_options,
815
872
  onChange: onChange,
816
873
  optional: true
817
874
  })),
818
- getByText = _render23.getByText,
819
- getByRole = _render23.getByRole,
820
- getAllByRole = _render23.getAllByRole,
821
- queryByRole = _render23.queryByRole;
875
+ getByText = _render24.getByText,
876
+ getByRole = _render24.getByRole,
877
+ getAllByRole = _render24.getAllByRole,
878
+ queryByRole = _render24.queryByRole;
822
879
 
823
880
  var select = getByRole("combobox");
824
881
 
@@ -858,8 +915,7 @@ describe("Select component tests", function () {
858
915
  });
859
916
 
860
917
  expect(onChange).toHaveBeenCalledWith({
861
- value: "20",
862
- error: null
918
+ value: "20"
863
919
  });
864
920
  expect(queryByRole("listbox")).toBeFalsy();
865
921
  expect(getByText("Option 20")).toBeTruthy();
@@ -871,17 +927,17 @@ describe("Select component tests", function () {
871
927
  test("Non-Grouped Options: Searchable - Displays an input for filtering the list of options", function () {
872
928
  var onChange = jest.fn();
873
929
 
874
- var _render24 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
930
+ var _render25 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
875
931
  label: "test-select-label",
876
932
  options: single_options,
877
933
  onChange: onChange,
878
934
  searchable: true
879
935
  })),
880
- container = _render24.container,
881
- getByText = _render24.getByText,
882
- getByRole = _render24.getByRole,
883
- getAllByRole = _render24.getAllByRole,
884
- queryByRole = _render24.queryByRole;
936
+ container = _render25.container,
937
+ getByText = _render25.getByText,
938
+ getByRole = _render25.getByRole,
939
+ getAllByRole = _render25.getAllByRole,
940
+ queryByRole = _render25.queryByRole;
885
941
 
886
942
  var select = getByRole("combobox");
887
943
  var searchInput = container.querySelectorAll("input")[1];
@@ -895,8 +951,7 @@ describe("Select component tests", function () {
895
951
  _userEvent["default"].click(getByRole("option"));
896
952
 
897
953
  expect(onChange).toHaveBeenCalledWith({
898
- value: "8",
899
- error: null
954
+ value: "8"
900
955
  });
901
956
  expect(queryByRole("listbox")).toBeFalsy();
902
957
  expect(getByText("Option 08")).toBeTruthy();
@@ -909,15 +964,15 @@ describe("Select component tests", function () {
909
964
  test("Non-Grouped Options: Searchable - Displays 'No matches found' when there are no filtering results", function () {
910
965
  var onChange = jest.fn();
911
966
 
912
- var _render25 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
967
+ var _render26 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
913
968
  label: "test-select-label",
914
969
  options: single_options,
915
970
  onChange: onChange,
916
971
  searchable: true
917
972
  })),
918
- container = _render25.container,
919
- getByText = _render25.getByText,
920
- getByRole = _render25.getByRole;
973
+ container = _render26.container,
974
+ getByText = _render26.getByText,
975
+ getByRole = _render26.getByRole;
921
976
 
922
977
  var select = getByRole("combobox");
923
978
  var searchInput = container.querySelectorAll("input")[1];
@@ -933,16 +988,16 @@ describe("Select component tests", function () {
933
988
  test("Non-Grouped Options: Searchable - Clicking the select, when the list is open, clears the search value", function () {
934
989
  var onChange = jest.fn();
935
990
 
936
- var _render26 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
991
+ var _render27 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
937
992
  label: "test-select-label",
938
993
  options: single_options,
939
994
  onChange: onChange,
940
995
  searchable: true
941
996
  })),
942
- container = _render26.container,
943
- getByText = _render26.getByText,
944
- getByRole = _render26.getByRole,
945
- getAllByRole = _render26.getAllByRole;
997
+ container = _render27.container,
998
+ getByText = _render27.getByText,
999
+ getByRole = _render27.getByRole,
1000
+ getAllByRole = _render27.getAllByRole;
946
1001
 
947
1002
  var select = getByRole("combobox");
948
1003
  var searchInput = container.querySelectorAll("input")[1];
@@ -965,15 +1020,15 @@ describe("Select component tests", function () {
965
1020
  test("Non-Grouped Options: Searchable - Writing displays the listbox, if it was not open", function () {
966
1021
  var onChange = jest.fn();
967
1022
 
968
- var _render27 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1023
+ var _render28 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
969
1024
  label: "test-select-label",
970
1025
  options: single_options,
971
1026
  onChange: onChange,
972
1027
  searchable: true
973
1028
  })),
974
- container = _render27.container,
975
- getByRole = _render27.getByRole,
976
- queryByRole = _render27.queryByRole;
1029
+ container = _render28.container,
1030
+ getByRole = _render28.getByRole,
1031
+ queryByRole = _render28.queryByRole;
977
1032
 
978
1033
  var select = getByRole("combobox");
979
1034
  var searchInput = container.querySelectorAll("input")[1];
@@ -991,15 +1046,15 @@ describe("Select component tests", function () {
991
1046
  test("Non-Grouped Options: Searchable - Key Esc cleans the search value and closes the options", function () {
992
1047
  var onChange = jest.fn();
993
1048
 
994
- var _render28 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1049
+ var _render29 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
995
1050
  label: "test-select-label",
996
1051
  options: single_options,
997
1052
  onChange: onChange,
998
1053
  searchable: true
999
1054
  })),
1000
- container = _render28.container,
1001
- getByRole = _render28.getByRole,
1002
- queryByRole = _render28.queryByRole;
1055
+ container = _render29.container,
1056
+ getByRole = _render29.getByRole,
1057
+ queryByRole = _render29.queryByRole;
1003
1058
 
1004
1059
  var select = getByRole("combobox");
1005
1060
  var searchInput = container.querySelectorAll("input")[1];
@@ -1019,16 +1074,16 @@ describe("Select component tests", function () {
1019
1074
  test("Non-Grouped Options: Searchable - While user types, a clear action is displayed for cleaning the search value", function () {
1020
1075
  var onChange = jest.fn();
1021
1076
 
1022
- var _render29 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1077
+ var _render30 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1023
1078
  label: "test-select-label",
1024
1079
  options: single_options,
1025
1080
  onChange: onChange,
1026
1081
  searchable: true
1027
1082
  })),
1028
- container = _render29.container,
1029
- getByRole = _render29.getByRole,
1030
- getAllByRole = _render29.getAllByRole,
1031
- queryByTitle = _render29.queryByTitle;
1083
+ container = _render30.container,
1084
+ getByRole = _render30.getByRole,
1085
+ getAllByRole = _render30.getAllByRole,
1086
+ queryByTitle = _render30.queryByTitle;
1032
1087
 
1033
1088
  var searchInput = container.querySelectorAll("input")[1];
1034
1089
 
@@ -1048,19 +1103,19 @@ describe("Select component tests", function () {
1048
1103
  test("Non-Grouped Options: Multiple selection - Displays a checkbox per option and enables the multi-selection", function () {
1049
1104
  var onChange = jest.fn();
1050
1105
 
1051
- var _render30 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1106
+ var _render31 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1052
1107
  name: "test",
1053
1108
  label: "test-select-label",
1054
1109
  options: single_options,
1055
1110
  onChange: onChange,
1056
1111
  multiple: true
1057
1112
  })),
1058
- getByText = _render30.getByText,
1059
- getAllByText = _render30.getAllByText,
1060
- getByRole = _render30.getByRole,
1061
- getAllByRole = _render30.getAllByRole,
1062
- queryByRole = _render30.queryByRole,
1063
- container = _render30.container;
1113
+ getByText = _render31.getByText,
1114
+ getAllByText = _render31.getAllByText,
1115
+ getByRole = _render31.getByRole,
1116
+ getAllByRole = _render31.getAllByRole,
1117
+ queryByRole = _render31.queryByRole,
1118
+ container = _render31.container;
1064
1119
 
1065
1120
  var select = getByRole("combobox");
1066
1121
  var submitInput = container.querySelector("input[name=\"test\"]");
@@ -1069,9 +1124,11 @@ describe("Select component tests", function () {
1069
1124
 
1070
1125
  expect(getByRole("listbox").getAttribute("aria-multiselectable")).toBe("true");
1071
1126
 
1072
- _userEvent["default"].click(getAllByRole("option")[10]); // expect(onChange).toHaveBeenCalledWith({ value: ["11"], error: null });
1073
-
1127
+ _userEvent["default"].click(getAllByRole("option")[10]);
1074
1128
 
1129
+ expect(onChange).toHaveBeenCalledWith({
1130
+ value: ["11"]
1131
+ });
1075
1132
  expect(queryByRole("listbox")).toBeTruthy();
1076
1133
  expect(getAllByText("Option 11").length).toBe(2);
1077
1134
 
@@ -1094,9 +1151,11 @@ describe("Select component tests", function () {
1094
1151
  code: "Enter",
1095
1152
  keyCode: 13,
1096
1153
  charCode: 13
1097
- }); // expect(onChange).toHaveBeenCalledWith({ value: ["11", "19"], error: null });
1098
-
1154
+ });
1099
1155
 
1156
+ expect(onChange).toHaveBeenCalledWith({
1157
+ value: ["11", "19"]
1158
+ });
1100
1159
  expect(queryByRole("listbox")).toBeTruthy();
1101
1160
  expect(getByText("Option 11, Option 19")).toBeTruthy();
1102
1161
  expect(getAllByRole("option")[10].getAttribute("aria-selected")).toBe("true");
@@ -1106,19 +1165,19 @@ describe("Select component tests", function () {
1106
1165
  test("Non-Grouped Options: Multiple selection - Clear action and selection indicator", function () {
1107
1166
  var onChange = jest.fn();
1108
1167
 
1109
- var _render31 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1168
+ var _render32 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1110
1169
  label: "test-select-label",
1111
1170
  options: single_options,
1112
1171
  onChange: onChange,
1113
1172
  multiple: true
1114
1173
  })),
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;
1174
+ getByText = _render32.getByText,
1175
+ queryByText = _render32.queryByText,
1176
+ getByRole = _render32.getByRole,
1177
+ getAllByRole = _render32.getAllByRole,
1178
+ queryByRole = _render32.queryByRole,
1179
+ getByTitle = _render32.getByTitle,
1180
+ queryByTitle = _render32.queryByTitle;
1122
1181
 
1123
1182
  var select = getByRole("combobox");
1124
1183
 
@@ -1128,9 +1187,11 @@ describe("Select component tests", function () {
1128
1187
 
1129
1188
  _userEvent["default"].click(getAllByRole("option")[8]);
1130
1189
 
1131
- _userEvent["default"].click(getAllByRole("option")[13]); // expect(onChange).toHaveBeenCalledWith({ value: ["6", "9", "14"], error: null });
1132
-
1190
+ _userEvent["default"].click(getAllByRole("option")[13]);
1133
1191
 
1192
+ expect(onChange).toHaveBeenCalledWith({
1193
+ value: ["6", "9", "14"]
1194
+ });
1134
1195
  expect(queryByRole("listbox")).toBeTruthy();
1135
1196
  expect(getByText("Option 06, Option 09, Option 14")).toBeTruthy();
1136
1197
  expect(getByText("3", {
@@ -1139,6 +1200,10 @@ describe("Select component tests", function () {
1139
1200
 
1140
1201
  _userEvent["default"].click(getByTitle("Clear selection"));
1141
1202
 
1203
+ expect(onChange).toHaveBeenCalledWith({
1204
+ value: [],
1205
+ error: "This field is required. Please, enter a value."
1206
+ });
1142
1207
  expect(queryByRole("listbox")).toBeTruthy();
1143
1208
  expect(queryByText("Option 06, Option 09, Option 14")).toBeFalsy();
1144
1209
  expect(queryByText("3")).toBeFalsy();
@@ -1147,7 +1212,7 @@ describe("Select component tests", function () {
1147
1212
  test("Non-Grouped Options: Multiple selection - Optional option should not be added when the select is marked as multiple", function () {
1148
1213
  var onChange = jest.fn();
1149
1214
 
1150
- var _render32 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1215
+ var _render33 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1151
1216
  label: "test-select-label",
1152
1217
  placeholder: "Choose an option",
1153
1218
  options: single_options,
@@ -1155,10 +1220,10 @@ describe("Select component tests", function () {
1155
1220
  multiple: true,
1156
1221
  optional: true
1157
1222
  })),
1158
- getByText = _render32.getByText,
1159
- getAllByText = _render32.getAllByText,
1160
- getByRole = _render32.getByRole,
1161
- getAllByRole = _render32.getAllByRole;
1223
+ getByText = _render33.getByText,
1224
+ getAllByText = _render33.getAllByText,
1225
+ getByRole = _render33.getByRole,
1226
+ getAllByRole = _render33.getAllByRole;
1162
1227
 
1163
1228
  var select = getByRole("combobox");
1164
1229
  expect(getByText("(Optional)")).toBeTruthy();
@@ -1168,19 +1233,21 @@ describe("Select component tests", function () {
1168
1233
  expect(getAllByText("Choose an option").length).toBe(1);
1169
1234
  expect(getAllByRole("option")[0].getAttribute("aria-selected")).toBe("false");
1170
1235
 
1171
- _userEvent["default"].click(getAllByRole("option")[0]); // expect(onChange).toHaveBeenCalledWith({ value: ["1"], error: null });
1172
-
1236
+ _userEvent["default"].click(getAllByRole("option")[0]);
1173
1237
 
1238
+ expect(onChange).toHaveBeenCalledWith({
1239
+ value: ["1"]
1240
+ });
1174
1241
  expect(getAllByText("Option 01").length).toBe(2);
1175
1242
  });
1176
1243
  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"], {
1244
+ var _render34 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1178
1245
  label: "test-select-label",
1179
1246
  options: single_options
1180
1247
  })),
1181
- getByText = _render33.getByText,
1182
- getByRole = _render33.getByRole,
1183
- getAllByRole = _render33.getAllByRole;
1248
+ getByText = _render34.getByText,
1249
+ getByRole = _render34.getByRole,
1250
+ getAllByRole = _render34.getAllByRole;
1184
1251
 
1185
1252
  var select = getByRole("combobox");
1186
1253
 
@@ -1248,14 +1315,14 @@ describe("Select component tests", function () {
1248
1315
  expect(getByText("Option 06")).toBeTruthy();
1249
1316
  });
1250
1317
  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"], {
1318
+ var _render35 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1252
1319
  label: "test-select-label",
1253
1320
  options: single_options
1254
1321
  })),
1255
- getByText = _render34.getByText,
1256
- getByRole = _render34.getByRole,
1257
- getAllByRole = _render34.getAllByRole,
1258
- queryByRole = _render34.queryByRole;
1322
+ getByText = _render35.getByText,
1323
+ getByRole = _render35.getByRole,
1324
+ getAllByRole = _render35.getAllByRole,
1325
+ queryByRole = _render35.queryByRole;
1259
1326
 
1260
1327
  var select = getByRole("combobox");
1261
1328
 
@@ -1323,14 +1390,14 @@ describe("Select component tests", function () {
1323
1390
  expect(getByText("Option 17")).toBeTruthy();
1324
1391
  });
1325
1392
  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"], {
1393
+ var _render36 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1327
1394
  label: "test-select-label",
1328
1395
  options: group_options
1329
1396
  })),
1330
- getByText = _render35.getByText,
1331
- getByRole = _render35.getByRole,
1332
- getAllByRole = _render35.getAllByRole,
1333
- queryByRole = _render35.queryByRole;
1397
+ getByText = _render36.getByText,
1398
+ getByRole = _render36.getByRole,
1399
+ getAllByRole = _render36.getAllByRole,
1400
+ queryByRole = _render36.queryByRole;
1334
1401
 
1335
1402
  var select = getByRole("combobox");
1336
1403
 
@@ -1358,15 +1425,15 @@ describe("Select component tests", function () {
1358
1425
  expect(select.getAttribute("aria-expanded")).toBe("false");
1359
1426
  });
1360
1427
  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"], {
1428
+ var _render37 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1362
1429
  label: "test-select-label",
1363
1430
  options: [{
1364
1431
  label: "Group 1",
1365
1432
  options: []
1366
1433
  }]
1367
1434
  })),
1368
- getByRole = _render36.getByRole,
1369
- queryByRole = _render36.queryByRole;
1435
+ getByRole = _render37.getByRole,
1436
+ queryByRole = _render37.queryByRole;
1370
1437
 
1371
1438
  var select = getByRole("combobox");
1372
1439
 
@@ -1378,17 +1445,17 @@ describe("Select component tests", function () {
1378
1445
  test("Grouped Options - Click in an option selects it and closes the listbox", function () {
1379
1446
  var onChange = jest.fn();
1380
1447
 
1381
- var _render37 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1448
+ var _render38 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1382
1449
  name: "test",
1383
1450
  label: "test-select-label",
1384
1451
  options: group_options,
1385
1452
  onChange: onChange
1386
1453
  })),
1387
- getByText = _render37.getByText,
1388
- getByRole = _render37.getByRole,
1389
- getAllByRole = _render37.getAllByRole,
1390
- queryByRole = _render37.queryByRole,
1391
- container = _render37.container;
1454
+ getByText = _render38.getByText,
1455
+ getByRole = _render38.getByRole,
1456
+ getAllByRole = _render38.getAllByRole,
1457
+ queryByRole = _render38.queryByRole,
1458
+ container = _render38.container;
1392
1459
 
1393
1460
  var select = getByRole("combobox");
1394
1461
  var submitInput = container.querySelector("input[name=\"test\"]");
@@ -1398,8 +1465,7 @@ describe("Select component tests", function () {
1398
1465
  _userEvent["default"].click(getAllByRole("option")[8]);
1399
1466
 
1400
1467
  expect(onChange).toHaveBeenCalledWith({
1401
- value: "oviedo",
1402
- error: null
1468
+ value: "oviedo"
1403
1469
  });
1404
1470
  expect(queryByRole("listbox")).toBeFalsy();
1405
1471
  expect(getByText("Oviedo")).toBeTruthy();
@@ -1412,16 +1478,16 @@ describe("Select component tests", function () {
1412
1478
  test("Grouped Options - Optional renders an empty first option (out of any group) with the placeholder as its label", function () {
1413
1479
  var onChange = jest.fn();
1414
1480
 
1415
- var _render38 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1481
+ var _render39 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1416
1482
  label: "test-select-label",
1417
1483
  placeholder: "Placeholder example",
1418
1484
  options: group_options,
1419
1485
  onChange: onChange,
1420
1486
  optional: true
1421
1487
  })),
1422
- getByRole = _render38.getByRole,
1423
- getAllByRole = _render38.getAllByRole,
1424
- getAllByText = _render38.getAllByText;
1488
+ getByRole = _render39.getByRole,
1489
+ getAllByRole = _render39.getAllByRole,
1490
+ getAllByText = _render39.getAllByText;
1425
1491
 
1426
1492
  var select = getByRole("combobox");
1427
1493
 
@@ -1433,8 +1499,7 @@ describe("Select component tests", function () {
1433
1499
  _userEvent["default"].click(getAllByRole("option")[0]);
1434
1500
 
1435
1501
  expect(onChange).toHaveBeenCalledWith({
1436
- value: "",
1437
- error: null
1502
+ value: ""
1438
1503
  });
1439
1504
  expect(getAllByText("Placeholder example").length).toBe(1);
1440
1505
 
@@ -1455,8 +1520,7 @@ describe("Select component tests", function () {
1455
1520
  });
1456
1521
 
1457
1522
  expect(onChange).toHaveBeenCalledWith({
1458
- value: "",
1459
- error: null
1523
+ value: ""
1460
1524
  });
1461
1525
  expect(getAllByText("Placeholder example").length).toBe(1);
1462
1526
 
@@ -1470,18 +1534,18 @@ describe("Select component tests", function () {
1470
1534
  expect(select.getAttribute("aria-activedescendant")).toBe("option-0");
1471
1535
  });
1472
1536
  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"], {
1537
+ var _render40 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1474
1538
  label: "test-select-label",
1475
1539
  placeholder: "Placeholder example",
1476
1540
  options: group_options,
1477
1541
  optional: true,
1478
1542
  searchable: true
1479
1543
  })),
1480
- getByRole = _render39.getByRole,
1481
- getAllByRole = _render39.getAllByRole,
1482
- getByText = _render39.getByText,
1483
- queryByText = _render39.queryByText,
1484
- container = _render39.container;
1544
+ getByRole = _render40.getByRole,
1545
+ getAllByRole = _render40.getAllByRole,
1546
+ getByText = _render40.getByText,
1547
+ queryByText = _render40.queryByText,
1548
+ container = _render40.container;
1485
1549
 
1486
1550
  var select = getByRole("combobox");
1487
1551
  var searchInput = container.querySelectorAll("input")[1];
@@ -1499,13 +1563,13 @@ describe("Select component tests", function () {
1499
1563
  expect(getByText("No matches found")).toBeTruthy();
1500
1564
  });
1501
1565
  test("Grouped Options - Renders icons correctly when passed with group options", function () {
1502
- var _render40 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1566
+ var _render41 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1503
1567
  label: "test-select-label",
1504
1568
  options: grouped_icon_options,
1505
1569
  optional: true
1506
1570
  })),
1507
- getByRole = _render40.getByRole,
1508
- getAllByRole = _render40.getAllByRole;
1571
+ getByRole = _render41.getByRole,
1572
+ getAllByRole = _render41.getAllByRole;
1509
1573
 
1510
1574
  var select = getByRole("combobox");
1511
1575
 
@@ -1515,12 +1579,12 @@ describe("Select component tests", function () {
1515
1579
  expect(getAllByRole("option").length).toBe(11);
1516
1580
  });
1517
1581
  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"], {
1582
+ var _render42 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1519
1583
  label: "test-select-label",
1520
1584
  options: group_options
1521
1585
  })),
1522
- getByRole = _render41.getByRole,
1523
- queryByRole = _render41.queryByRole;
1586
+ getByRole = _render42.getByRole,
1587
+ queryByRole = _render42.queryByRole;
1524
1588
 
1525
1589
  var select = getByRole("combobox");
1526
1590
 
@@ -1535,12 +1599,12 @@ describe("Select component tests", function () {
1535
1599
  expect(select.getAttribute("aria-activedescendant")).toBe("option-17");
1536
1600
  });
1537
1601
  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"], {
1602
+ var _render43 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1539
1603
  label: "test-select-label",
1540
1604
  options: group_options
1541
1605
  })),
1542
- getByRole = _render42.getByRole,
1543
- queryByRole = _render42.queryByRole;
1606
+ getByRole = _render43.getByRole,
1607
+ queryByRole = _render43.queryByRole;
1544
1608
 
1545
1609
  var select = getByRole("combobox");
1546
1610
 
@@ -1562,12 +1626,12 @@ describe("Select component tests", function () {
1562
1626
  expect(select.getAttribute("aria-activedescendant")).toBe("option-17");
1563
1627
  });
1564
1628
  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"], {
1629
+ var _render44 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1566
1630
  label: "test-select-label",
1567
1631
  options: group_options
1568
1632
  })),
1569
- getByRole = _render43.getByRole,
1570
- queryByRole = _render43.queryByRole;
1633
+ getByRole = _render44.getByRole,
1634
+ queryByRole = _render44.queryByRole;
1571
1635
 
1572
1636
  var select = getByRole("combobox");
1573
1637
 
@@ -1582,12 +1646,12 @@ describe("Select component tests", function () {
1582
1646
  expect(select.getAttribute("aria-activedescendant")).toBe("option-0");
1583
1647
  });
1584
1648
  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"], {
1649
+ var _render45 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1586
1650
  label: "test-select-label",
1587
1651
  options: group_options
1588
1652
  })),
1589
- getByRole = _render44.getByRole,
1590
- queryByRole = _render44.queryByRole;
1653
+ getByRole = _render45.getByRole,
1654
+ queryByRole = _render45.queryByRole;
1591
1655
 
1592
1656
  var select = getByRole("combobox");
1593
1657
 
@@ -1611,16 +1675,16 @@ describe("Select component tests", function () {
1611
1675
  test("Grouped Options: Enter key - Selects the visually focused option and closes the listbox", function () {
1612
1676
  var onChange = jest.fn();
1613
1677
 
1614
- var _render45 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1678
+ var _render46 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1615
1679
  label: "test-select-label",
1616
1680
  options: group_options,
1617
1681
  onChange: onChange,
1618
1682
  optional: true
1619
1683
  })),
1620
- getByText = _render45.getByText,
1621
- getByRole = _render45.getByRole,
1622
- getAllByRole = _render45.getAllByRole,
1623
- queryByRole = _render45.queryByRole;
1684
+ getByText = _render46.getByText,
1685
+ getByRole = _render46.getByRole,
1686
+ getAllByRole = _render46.getAllByRole,
1687
+ queryByRole = _render46.queryByRole;
1624
1688
 
1625
1689
  var select = getByRole("combobox");
1626
1690
 
@@ -1660,8 +1724,7 @@ describe("Select component tests", function () {
1660
1724
  });
1661
1725
 
1662
1726
  expect(onChange).toHaveBeenCalledWith({
1663
- value: "ebro",
1664
- error: null
1727
+ value: "ebro"
1665
1728
  });
1666
1729
  expect(queryByRole("listbox")).toBeFalsy();
1667
1730
  expect(getByText("Ebro")).toBeTruthy();
@@ -1673,17 +1736,17 @@ describe("Select component tests", function () {
1673
1736
  test("Grouped Options: Searchable - Displays an input for filtering the list of options", function () {
1674
1737
  var onChange = jest.fn();
1675
1738
 
1676
- var _render46 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1739
+ var _render47 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1677
1740
  label: "test-select-label",
1678
1741
  options: group_options,
1679
1742
  onChange: onChange,
1680
1743
  searchable: true
1681
1744
  })),
1682
- container = _render46.container,
1683
- getByText = _render46.getByText,
1684
- getByRole = _render46.getByRole,
1685
- getAllByRole = _render46.getAllByRole,
1686
- queryByRole = _render46.queryByRole;
1745
+ container = _render47.container,
1746
+ getByText = _render47.getByText,
1747
+ getByRole = _render47.getByRole,
1748
+ getAllByRole = _render47.getAllByRole,
1749
+ queryByRole = _render47.queryByRole;
1687
1750
 
1688
1751
  var select = getByRole("combobox");
1689
1752
  var searchInput = container.querySelectorAll("input")[1];
@@ -1703,8 +1766,7 @@ describe("Select component tests", function () {
1703
1766
  _userEvent["default"].click(getAllByRole("option")[4]);
1704
1767
 
1705
1768
  expect(onChange).toHaveBeenCalledWith({
1706
- value: "ebro",
1707
- error: null
1769
+ value: "ebro"
1708
1770
  });
1709
1771
  expect(queryByRole("listbox")).toBeFalsy();
1710
1772
  expect(getByText("Ebro")).toBeTruthy();
@@ -1717,15 +1779,15 @@ describe("Select component tests", function () {
1717
1779
  test("Grouped Options: Searchable - Displays 'No matches found' when there are no filtering results", function () {
1718
1780
  var onChange = jest.fn();
1719
1781
 
1720
- var _render47 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1782
+ var _render48 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1721
1783
  label: "test-select-label",
1722
1784
  options: group_options,
1723
1785
  onChange: onChange,
1724
1786
  searchable: true
1725
1787
  })),
1726
- container = _render47.container,
1727
- getByText = _render47.getByText,
1728
- getByRole = _render47.getByRole;
1788
+ container = _render48.container,
1789
+ getByText = _render48.getByText,
1790
+ getByRole = _render48.getByRole;
1729
1791
 
1730
1792
  var select = getByRole("combobox");
1731
1793
  var searchInput = container.querySelectorAll("input")[1];
@@ -1741,19 +1803,19 @@ describe("Select component tests", function () {
1741
1803
  test("Grouped Options: Multiple selection - Displays a checkbox per option and enables the multi-selection", function () {
1742
1804
  var onChange = jest.fn();
1743
1805
 
1744
- var _render48 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1806
+ var _render49 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1745
1807
  name: "test",
1746
1808
  label: "test-select-label",
1747
1809
  options: group_options,
1748
1810
  onChange: onChange,
1749
1811
  multiple: true
1750
1812
  })),
1751
- getByText = _render48.getByText,
1752
- getAllByText = _render48.getAllByText,
1753
- getByRole = _render48.getByRole,
1754
- getAllByRole = _render48.getAllByRole,
1755
- queryByRole = _render48.queryByRole,
1756
- container = _render48.container;
1813
+ getByText = _render49.getByText,
1814
+ getAllByText = _render49.getAllByText,
1815
+ getByRole = _render49.getByRole,
1816
+ getAllByRole = _render49.getAllByRole,
1817
+ queryByRole = _render49.queryByRole,
1818
+ container = _render49.container;
1757
1819
 
1758
1820
  var select = getByRole("combobox");
1759
1821
  var submitInput = container.querySelector("input[name=\"test\"]");
@@ -1762,9 +1824,11 @@ describe("Select component tests", function () {
1762
1824
 
1763
1825
  expect(getByRole("listbox").getAttribute("aria-multiselectable")).toBe("true");
1764
1826
 
1765
- _userEvent["default"].click(getAllByRole("option")[10]); // expect(onChange).toHaveBeenCalledWith({ value: ["bilbao"], error: null });
1766
-
1827
+ _userEvent["default"].click(getAllByRole("option")[10]);
1767
1828
 
1829
+ expect(onChange).toHaveBeenCalledWith({
1830
+ value: ["bilbao"]
1831
+ });
1768
1832
  expect(queryByRole("listbox")).toBeTruthy();
1769
1833
  expect(getAllByText("Bilbao").length).toBe(2);
1770
1834
 
@@ -1787,9 +1851,11 @@ describe("Select component tests", function () {
1787
1851
  code: "Enter",
1788
1852
  keyCode: 13,
1789
1853
  charCode: 13
1790
- }); // expect(onChange).toHaveBeenCalledWith({ value: ["bilbao", "guadalquivir"], error: null });
1791
-
1854
+ });
1792
1855
 
1856
+ expect(onChange).toHaveBeenCalledWith({
1857
+ value: ["bilbao", "guadalquivir"]
1858
+ });
1793
1859
  expect(queryByRole("listbox")).toBeTruthy();
1794
1860
  expect(getByText("Bilbao, Guadalquivir")).toBeTruthy();
1795
1861
  expect(getAllByRole("option")[10].getAttribute("aria-selected")).toBe("true");
@@ -1799,19 +1865,19 @@ describe("Select component tests", function () {
1799
1865
  test("Grouped Options: Multiple selection - Clear action and selection indicator", function () {
1800
1866
  var onChange = jest.fn();
1801
1867
 
1802
- var _render49 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1868
+ var _render50 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1803
1869
  label: "test-select-label",
1804
1870
  options: group_options,
1805
1871
  onChange: onChange,
1806
1872
  multiple: true
1807
1873
  })),
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;
1874
+ getByText = _render50.getByText,
1875
+ queryByText = _render50.queryByText,
1876
+ getByRole = _render50.getByRole,
1877
+ getAllByRole = _render50.getAllByRole,
1878
+ queryByRole = _render50.queryByRole,
1879
+ getByTitle = _render50.getByTitle,
1880
+ queryByTitle = _render50.queryByTitle;
1815
1881
 
1816
1882
  var select = getByRole("combobox");
1817
1883
 
@@ -1823,9 +1889,11 @@ describe("Select component tests", function () {
1823
1889
 
1824
1890
  _userEvent["default"].click(getAllByRole("option")[13]);
1825
1891
 
1826
- _userEvent["default"].click(getAllByRole("option")[17]); // expect(onChange).toHaveBeenCalledWith({ value: ["blanco", "oviedo", "duero", "ebro"], error: null });
1827
-
1892
+ _userEvent["default"].click(getAllByRole("option")[17]);
1828
1893
 
1894
+ expect(onChange).toHaveBeenCalledWith({
1895
+ value: ["blanco", "oviedo", "duero", "ebro"]
1896
+ });
1829
1897
  expect(queryByRole("listbox")).toBeTruthy();
1830
1898
  expect(getByText("Blanco, Oviedo, Duero, Ebro")).toBeTruthy();
1831
1899
  expect(getByText("4", {
@@ -1842,7 +1910,7 @@ describe("Select component tests", function () {
1842
1910
  test("Grouped Options: Multiple selection - Optional option should not be added when the select is marked as multiple", function () {
1843
1911
  var onChange = jest.fn();
1844
1912
 
1845
- var _render50 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1913
+ var _render51 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1846
1914
  label: "test-select-label",
1847
1915
  placeholder: "Choose an option",
1848
1916
  options: group_options,
@@ -1850,10 +1918,10 @@ describe("Select component tests", function () {
1850
1918
  multiple: true,
1851
1919
  optional: true
1852
1920
  })),
1853
- getByText = _render50.getByText,
1854
- getAllByText = _render50.getAllByText,
1855
- getByRole = _render50.getByRole,
1856
- getAllByRole = _render50.getAllByRole;
1921
+ getByText = _render51.getByText,
1922
+ getAllByText = _render51.getAllByText,
1923
+ getByRole = _render51.getByRole,
1924
+ getAllByRole = _render51.getAllByRole;
1857
1925
 
1858
1926
  var select = getByRole("combobox");
1859
1927
  expect(getByText("(Optional)")).toBeTruthy();
@@ -1863,19 +1931,21 @@ describe("Select component tests", function () {
1863
1931
  expect(getAllByText("Choose an option").length).toBe(1);
1864
1932
  expect(getAllByRole("option")[0].getAttribute("aria-selected")).toBe("false");
1865
1933
 
1866
- _userEvent["default"].click(getAllByRole("option")[0]); // expect(onChange).toHaveBeenCalledWith({ value: ["azul"], error: null });
1867
-
1934
+ _userEvent["default"].click(getAllByRole("option")[0]);
1868
1935
 
1936
+ expect(onChange).toHaveBeenCalledWith({
1937
+ value: ["azul"]
1938
+ });
1869
1939
  expect(getAllByText("Azul").length).toBe(2);
1870
1940
  });
1871
1941
  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"], {
1942
+ var _render52 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1873
1943
  label: "test-select-label",
1874
1944
  options: group_options
1875
1945
  })),
1876
- getByText = _render51.getByText,
1877
- getByRole = _render51.getByRole,
1878
- getAllByRole = _render51.getAllByRole;
1946
+ getByText = _render52.getByText,
1947
+ getByRole = _render52.getByRole,
1948
+ getAllByRole = _render52.getAllByRole;
1879
1949
 
1880
1950
  var select = getByRole("combobox");
1881
1951
 
@@ -1943,13 +2013,13 @@ describe("Select component tests", function () {
1943
2013
  expect(getByText("Verde")).toBeTruthy();
1944
2014
  });
1945
2015
  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"], {
2016
+ var _render53 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
1947
2017
  label: "test-select-label",
1948
2018
  options: group_options
1949
2019
  })),
1950
- getByText = _render52.getByText,
1951
- getByRole = _render52.getByRole,
1952
- getAllByRole = _render52.getAllByRole;
2020
+ getByText = _render53.getByText,
2021
+ getByRole = _render53.getByRole,
2022
+ getAllByRole = _render53.getAllByRole;
1953
2023
 
1954
2024
  var select = getByRole("combobox");
1955
2025
 
@@ -2013,4 +2083,38 @@ describe("Select component tests", function () {
2013
2083
 
2014
2084
  expect(getByText("Azul")).toBeTruthy();
2015
2085
  });
2086
+ test("Multiple selection and optional - Clear action cleans every selected option but does not display an error", function () {
2087
+ var onChange = jest.fn();
2088
+
2089
+ var _render54 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Select["default"], {
2090
+ label: "test-select-label",
2091
+ options: single_options,
2092
+ onChange: onChange,
2093
+ multiple: true,
2094
+ optional: true
2095
+ })),
2096
+ getByRole = _render54.getByRole,
2097
+ getAllByRole = _render54.getAllByRole,
2098
+ getByTitle = _render54.getByTitle;
2099
+
2100
+ var select = getByRole("combobox");
2101
+
2102
+ _userEvent["default"].click(select);
2103
+
2104
+ _userEvent["default"].click(getAllByRole("option")[5]);
2105
+
2106
+ _userEvent["default"].click(getAllByRole("option")[8]);
2107
+
2108
+ _userEvent["default"].click(getAllByRole("option")[13]);
2109
+
2110
+ expect(onChange).toHaveBeenCalledWith({
2111
+ value: ["6", "9", "14"]
2112
+ });
2113
+
2114
+ _userEvent["default"].click(getByTitle("Clear selection"));
2115
+
2116
+ expect(onChange).toHaveBeenCalledWith({
2117
+ value: []
2118
+ });
2119
+ });
2016
2120
  });