@zohodesk/components 1.6.32 → 1.6.34

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 (162) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/es/Accordion/__tests__/Accordion.spec.js +117 -3
  3. package/es/Accordion/__tests__/AccordionItem.spec.js +118 -6
  4. package/es/Accordion/__tests__/__snapshots__/Accordion.spec.js.snap +344 -2
  5. package/es/Accordion/__tests__/__snapshots__/AccordionItem.spec.js.snap +155 -3
  6. package/es/Animation/__tests__/Animation.spec.js +28 -4
  7. package/es/Animation/__tests__/__snapshots__/Animation.spec.js.snap +92 -2
  8. package/es/Button/css/Button.module.css +2 -3
  9. package/es/CheckBox/CheckBox.js +1 -1
  10. package/es/CheckBox/__tests__/__snapshots__/CheckBox.spec.js.snap +1 -1
  11. package/es/DateTime/DateTime.module.css +2 -2
  12. package/es/DateTime/__tests__/CalendarView.spec.js +70 -3
  13. package/es/DateTime/__tests__/DateTime.spec.js +89 -6
  14. package/es/DateTime/__tests__/DateTimePopupFooter.spec.js +20 -2
  15. package/es/DateTime/__tests__/DateTimePopupHeader.spec.js +29 -2
  16. package/es/DateTime/__tests__/DateWidget.spec.js +34 -2
  17. package/es/DateTime/__tests__/DaysRow.spec.js +19 -3
  18. package/es/DateTime/__tests__/Time.spec.js +50 -3
  19. package/es/DateTime/__tests__/YearView.spec.js +60 -3
  20. package/es/DateTime/__tests__/__snapshots__/CalendarView.spec.js.snap +2907 -170
  21. package/es/DateTime/__tests__/__snapshots__/DateTime.spec.js.snap +4392 -108
  22. package/es/DateTime/__tests__/__snapshots__/DateTimePopupFooter.spec.js.snap +67 -1
  23. package/es/DateTime/__tests__/__snapshots__/DateTimePopupHeader.spec.js.snap +187 -1
  24. package/es/DateTime/__tests__/__snapshots__/DateWidget.spec.js.snap +265 -1
  25. package/es/DateTime/__tests__/__snapshots__/DaysRow.spec.js.snap +155 -2
  26. package/es/DateTime/__tests__/__snapshots__/Time.spec.js.snap +522 -5
  27. package/es/DateTime/__tests__/__snapshots__/YearView.spec.js.snap +540 -0
  28. package/es/DropBox/DropBoxElement/css/DropBoxElement.module.css +1 -4
  29. package/es/Heading/Heading.module.css +1 -1
  30. package/es/Heading/__tests__/Heading.spec.js +57 -3
  31. package/es/Heading/__tests__/__snapshots__/Heading.spec.js.snap +87 -14
  32. package/es/ListItem/__tests__/ListContainer.spec.js +228 -1
  33. package/es/ListItem/__tests__/ListItem.spec.js +359 -1
  34. package/es/ListItem/__tests__/ListItemWithAvatar.spec.js +390 -1
  35. package/es/ListItem/__tests__/ListItemWithCheckBox.spec.js +214 -1
  36. package/es/ListItem/__tests__/ListItemWithIcon.spec.js +303 -1
  37. package/es/ListItem/__tests__/ListItemWithRadio.spec.js +230 -1
  38. package/es/ListItem/__tests__/__snapshots__/ListContainer.spec.js.snap +602 -0
  39. package/es/ListItem/__tests__/__snapshots__/ListItem.spec.js.snap +1807 -0
  40. package/es/ListItem/__tests__/__snapshots__/ListItemWithAvatar.spec.js.snap +2703 -0
  41. package/es/ListItem/__tests__/__snapshots__/ListItemWithCheckBox.spec.js.snap +2909 -0
  42. package/es/ListItem/__tests__/__snapshots__/ListItemWithIcon.spec.js.snap +2009 -0
  43. package/es/ListItem/__tests__/__snapshots__/ListItemWithRadio.spec.js.snap +3070 -0
  44. package/es/MultiSelect/MultiSelect.module.css +1 -2
  45. package/es/MultiSelect/__tests__/AdvancedGroupMultiSelect.spec.js +671 -1
  46. package/es/MultiSelect/__tests__/AdvancedMultiSelect.spec.js +730 -1
  47. package/es/MultiSelect/__tests__/EmptyState.spec.js +268 -1
  48. package/es/MultiSelect/__tests__/MultiSelect.spec.js +889 -2
  49. package/es/MultiSelect/__tests__/MultiSelectHeader.spec.js +50 -1
  50. package/es/MultiSelect/__tests__/MultiSelectWithAvatar.spec.js +487 -1
  51. package/es/MultiSelect/__tests__/SelectedOptions.spec.js +291 -1
  52. package/es/MultiSelect/__tests__/Suggestions.spec.js +370 -2
  53. package/es/MultiSelect/__tests__/__snapshots__/AdvancedGroupMultiSelect.spec.js.snap +11785 -0
  54. package/es/MultiSelect/__tests__/__snapshots__/AdvancedMultiSelect.spec.js.snap +12083 -0
  55. package/es/MultiSelect/__tests__/__snapshots__/EmptyState.spec.js.snap +253 -0
  56. package/es/MultiSelect/__tests__/__snapshots__/MultiSelect.spec.js.snap +14052 -0
  57. package/es/MultiSelect/__tests__/__snapshots__/MultiSelectHeader.spec.js.snap +136 -0
  58. package/es/MultiSelect/__tests__/__snapshots__/MultiSelectWithAvatar.spec.js.snap +11506 -0
  59. package/es/MultiSelect/__tests__/__snapshots__/SelectedOptions.spec.js.snap +1382 -0
  60. package/es/MultiSelect/__tests__/__snapshots__/Suggestions.spec.js.snap +3611 -0
  61. package/es/PopOver/__tests__/PopOver.spec.js +141 -2
  62. package/es/PopOver/__tests__/__snapshots__/PopOver.spec.js.snap +1260 -0
  63. package/es/ResponsiveDropBox/__tests__/ResponsiveDropBox.spec.js +212 -1
  64. package/es/ResponsiveDropBox/__tests__/__snapshots__/ResponsiveDropBox.spec.js.snap +1802 -0
  65. package/es/Tab/Tabs.module.css +1 -2
  66. package/es/Tab/__tests__/Tab.spec.js +249 -1
  67. package/es/Tab/__tests__/TabContent.spec.js +34 -1
  68. package/es/Tab/__tests__/TabContentWrapper.spec.js +72 -1
  69. package/es/Tab/__tests__/TabWrapper.spec.js +163 -1
  70. package/es/Tab/__tests__/Tabs.spec.js +681 -1
  71. package/es/Tab/__tests__/__snapshots__/Tab.spec.js.snap +1049 -0
  72. package/es/Tab/__tests__/__snapshots__/TabContent.spec.js.snap +99 -0
  73. package/es/Tab/__tests__/__snapshots__/TabContentWrapper.spec.js.snap +121 -0
  74. package/es/Tab/__tests__/__snapshots__/TabWrapper.spec.js.snap +2002 -0
  75. package/es/Tab/__tests__/__snapshots__/Tabs.spec.js.snap +11053 -0
  76. package/es/Textarea/Textarea.module.css +1 -1
  77. package/es/Tooltip/Tooltip.module.css +1 -2
  78. package/es/Tooltip/__tests__/Tooltip.spec.js +590 -0
  79. package/es/Tooltip/__tests__/__snapshots__/Tooltip.spec.js.snap +813 -0
  80. package/es/Typography/css/Typography.module.css +8 -7
  81. package/es/common/common.module.css +4 -4
  82. package/lib/Accordion/__tests__/Accordion.spec.js +122 -2
  83. package/lib/Accordion/__tests__/AccordionItem.spec.js +126 -4
  84. package/lib/Accordion/__tests__/__snapshots__/Accordion.spec.js.snap +344 -2
  85. package/lib/Accordion/__tests__/__snapshots__/AccordionItem.spec.js.snap +155 -3
  86. package/lib/Animation/__tests__/Animation.spec.js +31 -5
  87. package/lib/Animation/__tests__/__snapshots__/Animation.spec.js.snap +92 -2
  88. package/lib/Button/css/Button.module.css +2 -3
  89. package/lib/CheckBox/CheckBox.js +1 -1
  90. package/lib/CheckBox/__tests__/__snapshots__/CheckBox.spec.js.snap +1 -1
  91. package/lib/DateTime/DateTime.module.css +2 -2
  92. package/lib/DateTime/__tests__/CalendarView.spec.js +71 -2
  93. package/lib/DateTime/__tests__/DateTime.spec.js +92 -6
  94. package/lib/DateTime/__tests__/DateTimePopupFooter.spec.js +21 -1
  95. package/lib/DateTime/__tests__/DateTimePopupHeader.spec.js +30 -1
  96. package/lib/DateTime/__tests__/DateWidget.spec.js +35 -1
  97. package/lib/DateTime/__tests__/DaysRow.spec.js +20 -2
  98. package/lib/DateTime/__tests__/Time.spec.js +51 -2
  99. package/lib/DateTime/__tests__/YearView.spec.js +61 -2
  100. package/lib/DateTime/__tests__/__snapshots__/CalendarView.spec.js.snap +2907 -170
  101. package/lib/DateTime/__tests__/__snapshots__/DateTime.spec.js.snap +4392 -108
  102. package/lib/DateTime/__tests__/__snapshots__/DateTimePopupFooter.spec.js.snap +67 -1
  103. package/lib/DateTime/__tests__/__snapshots__/DateTimePopupHeader.spec.js.snap +187 -1
  104. package/lib/DateTime/__tests__/__snapshots__/DateWidget.spec.js.snap +265 -1
  105. package/lib/DateTime/__tests__/__snapshots__/DaysRow.spec.js.snap +155 -2
  106. package/lib/DateTime/__tests__/__snapshots__/Time.spec.js.snap +522 -5
  107. package/lib/DateTime/__tests__/__snapshots__/YearView.spec.js.snap +540 -0
  108. package/lib/DropBox/DropBoxElement/css/DropBoxElement.module.css +1 -4
  109. package/lib/Heading/Heading.module.css +1 -1
  110. package/lib/Heading/__tests__/Heading.spec.js +60 -4
  111. package/lib/Heading/__tests__/__snapshots__/Heading.spec.js.snap +87 -14
  112. package/lib/ListItem/__tests__/ListContainer.spec.js +229 -0
  113. package/lib/ListItem/__tests__/ListItem.spec.js +362 -0
  114. package/lib/ListItem/__tests__/ListItemWithAvatar.spec.js +391 -0
  115. package/lib/ListItem/__tests__/ListItemWithCheckBox.spec.js +215 -0
  116. package/lib/ListItem/__tests__/ListItemWithIcon.spec.js +304 -0
  117. package/lib/ListItem/__tests__/ListItemWithRadio.spec.js +231 -0
  118. package/lib/ListItem/__tests__/__snapshots__/ListContainer.spec.js.snap +602 -0
  119. package/lib/ListItem/__tests__/__snapshots__/ListItem.spec.js.snap +1807 -0
  120. package/lib/ListItem/__tests__/__snapshots__/ListItemWithAvatar.spec.js.snap +2703 -0
  121. package/lib/ListItem/__tests__/__snapshots__/ListItemWithCheckBox.spec.js.snap +2909 -0
  122. package/lib/ListItem/__tests__/__snapshots__/ListItemWithIcon.spec.js.snap +2009 -0
  123. package/lib/ListItem/__tests__/__snapshots__/ListItemWithRadio.spec.js.snap +3070 -0
  124. package/lib/MultiSelect/MultiSelect.module.css +1 -2
  125. package/lib/MultiSelect/__tests__/AdvancedGroupMultiSelect.spec.js +692 -0
  126. package/lib/MultiSelect/__tests__/AdvancedMultiSelect.spec.js +741 -0
  127. package/lib/MultiSelect/__tests__/EmptyState.spec.js +273 -0
  128. package/lib/MultiSelect/__tests__/MultiSelect.spec.js +910 -0
  129. package/lib/MultiSelect/__tests__/MultiSelectHeader.spec.js +51 -0
  130. package/lib/MultiSelect/__tests__/MultiSelectWithAvatar.spec.js +497 -0
  131. package/lib/MultiSelect/__tests__/SelectedOptions.spec.js +305 -0
  132. package/lib/MultiSelect/__tests__/Suggestions.spec.js +375 -0
  133. package/lib/MultiSelect/__tests__/__snapshots__/AdvancedGroupMultiSelect.spec.js.snap +11785 -0
  134. package/lib/MultiSelect/__tests__/__snapshots__/AdvancedMultiSelect.spec.js.snap +12083 -0
  135. package/lib/MultiSelect/__tests__/__snapshots__/EmptyState.spec.js.snap +253 -0
  136. package/lib/MultiSelect/__tests__/__snapshots__/MultiSelect.spec.js.snap +14052 -0
  137. package/lib/MultiSelect/__tests__/__snapshots__/MultiSelectHeader.spec.js.snap +136 -0
  138. package/lib/MultiSelect/__tests__/__snapshots__/MultiSelectWithAvatar.spec.js.snap +11506 -0
  139. package/lib/MultiSelect/__tests__/__snapshots__/SelectedOptions.spec.js.snap +1382 -0
  140. package/lib/MultiSelect/__tests__/__snapshots__/Suggestions.spec.js.snap +3611 -0
  141. package/lib/PopOver/__tests__/PopOver.spec.js +150 -1
  142. package/lib/PopOver/__tests__/__snapshots__/PopOver.spec.js.snap +1260 -0
  143. package/lib/ResponsiveDropBox/__tests__/ResponsiveDropBox.spec.js +213 -0
  144. package/lib/ResponsiveDropBox/__tests__/__snapshots__/ResponsiveDropBox.spec.js.snap +1802 -0
  145. package/lib/Tab/Tabs.module.css +1 -2
  146. package/lib/Tab/__tests__/Tab.spec.js +250 -0
  147. package/lib/Tab/__tests__/TabContent.spec.js +35 -0
  148. package/lib/Tab/__tests__/TabContentWrapper.spec.js +76 -0
  149. package/lib/Tab/__tests__/TabWrapper.spec.js +174 -0
  150. package/lib/Tab/__tests__/Tabs.spec.js +741 -0
  151. package/lib/Tab/__tests__/__snapshots__/Tab.spec.js.snap +1049 -0
  152. package/lib/Tab/__tests__/__snapshots__/TabContent.spec.js.snap +99 -0
  153. package/lib/Tab/__tests__/__snapshots__/TabContentWrapper.spec.js.snap +121 -0
  154. package/lib/Tab/__tests__/__snapshots__/TabWrapper.spec.js.snap +2002 -0
  155. package/lib/Tab/__tests__/__snapshots__/Tabs.spec.js.snap +11053 -0
  156. package/lib/Textarea/Textarea.module.css +1 -1
  157. package/lib/Tooltip/Tooltip.module.css +1 -2
  158. package/lib/Tooltip/__tests__/Tooltip.spec.js +629 -0
  159. package/lib/Tooltip/__tests__/__snapshots__/Tooltip.spec.js.snap +813 -0
  160. package/lib/Typography/css/Typography.module.css +8 -7
  161. package/lib/common/common.module.css +4 -4
  162. package/package.json +6 -5
@@ -1,7 +1,8 @@
1
1
  import React from 'react';
2
- import { render } from '@testing-library/react';
2
+ import { render, cleanup } from '@testing-library/react';
3
3
  import MultiSelectHeader from "../MultiSelectHeader";
4
4
  describe('MultiSelectHeader', () => {
5
+ afterEach(() => cleanup());
5
6
  test('rendering the defult props', () => {
6
7
  const {
7
8
  asFragment
@@ -17,5 +18,53 @@ describe('MultiSelectHeader', () => {
17
18
  suggestions: [1, 2, 3]
18
19
  }));
19
20
  expect(asFragment()).toMatchSnapshot();
21
+ }); // the select-all row appears only when there is more than one suggestion
22
+
23
+ const twoSuggestions = [{
24
+ id: 1,
25
+ value: 'Option 1'
26
+ }, {
27
+ id: 2,
28
+ value: 'Option 2'
29
+ }];
30
+ test('Render with no suggestions', () => {
31
+ const {
32
+ asFragment
33
+ } = render( /*#__PURE__*/React.createElement(MultiSelectHeader, {
34
+ suggestions: [],
35
+ selectAllText: "Select all"
36
+ }));
37
+ expect(asFragment()).toMatchSnapshot();
38
+ });
39
+ test('Render with one suggestion and selectAllText', () => {
40
+ const {
41
+ asFragment
42
+ } = render( /*#__PURE__*/React.createElement(MultiSelectHeader, {
43
+ suggestions: [{
44
+ id: 1,
45
+ value: 'Option 1'
46
+ }],
47
+ selectAllText: "Select all"
48
+ }));
49
+ expect(asFragment()).toMatchSnapshot();
50
+ });
51
+ test('Render with two suggestions and selectAllText', () => {
52
+ const {
53
+ asFragment
54
+ } = render( /*#__PURE__*/React.createElement(MultiSelectHeader, {
55
+ suggestions: twoSuggestions,
56
+ selectAllText: "Select all"
57
+ }));
58
+ expect(asFragment()).toMatchSnapshot();
59
+ });
60
+ test('Render with two suggestions, selectAllText and dataId', () => {
61
+ const {
62
+ asFragment
63
+ } = render( /*#__PURE__*/React.createElement(MultiSelectHeader, {
64
+ suggestions: twoSuggestions,
65
+ selectAllText: "Select all",
66
+ dataId: "multi-select-header-dataId"
67
+ }));
68
+ expect(asFragment()).toMatchSnapshot();
20
69
  });
21
70
  });
@@ -1,11 +1,497 @@
1
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
+
1
3
  import React from 'react';
2
- import { render } from '@testing-library/react';
4
+ import { render, cleanup, fireEvent } from '@testing-library/react';
3
5
  import MultiSelectWithAvatar from "../MultiSelectWithAvatar";
4
6
  describe('MultiSelectWithAvatar', () => {
7
+ afterEach(() => cleanup());
5
8
  test('rendering the defult props', () => {
6
9
  const {
7
10
  asFragment
8
11
  } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, null));
9
12
  expect(asFragment()).toMatchSnapshot();
10
13
  });
14
+ const avatarOptions = [{
15
+ id: 'option1',
16
+ text: 'Option 1',
17
+ photoURL: 'avatar1.png'
18
+ }, {
19
+ id: 'option2',
20
+ text: 'Option 2',
21
+ photoURL: 'avatar2.png'
22
+ }, {
23
+ id: 'option3',
24
+ text: 'Option 3',
25
+ photoURL: 'avatar3.png'
26
+ }]; // options, selectedOptions, onChange and emptyMessage are required without defaults
27
+
28
+ const getRequiredProps = () => ({
29
+ emptyMessage: 'No options',
30
+ onChange: jest.fn(),
31
+ options: avatarOptions,
32
+ selectedOptions: []
33
+ });
34
+
35
+ const getSearchInput = container => container.querySelector('[data-id="multiSelectWithAvatar_textBox"]');
36
+
37
+ test('Render with selectedOptions', () => {
38
+ const {
39
+ asFragment
40
+ } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, _extends({}, getRequiredProps(), {
41
+ selectedOptions: ['option1']
42
+ })));
43
+ expect(asFragment()).toMatchSnapshot();
44
+ });
45
+ test('Render with two selectedOptions', () => {
46
+ const {
47
+ asFragment
48
+ } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, _extends({}, getRequiredProps(), {
49
+ selectedOptions: ['option1', 'option2']
50
+ })));
51
+ expect(asFragment()).toMatchSnapshot();
52
+ });
53
+ test('Render with selectedOptions not in options', () => {
54
+ const {
55
+ asFragment
56
+ } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, _extends({}, getRequiredProps(), {
57
+ selectedOptions: ['unknown']
58
+ })));
59
+ expect(asFragment()).toMatchSnapshot();
60
+ });
61
+ test('Render with imageField', () => {
62
+ const {
63
+ asFragment
64
+ } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, _extends({}, getRequiredProps(), {
65
+ options: [{
66
+ id: 'option1',
67
+ text: 'Option 1',
68
+ picture: 'picture1.png'
69
+ }],
70
+ selectedOptions: ['option1'],
71
+ imageField: "picture"
72
+ })));
73
+ expect(asFragment()).toMatchSnapshot();
74
+ });
75
+ test('Render with isReadOnly', () => {
76
+ const {
77
+ asFragment
78
+ } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, _extends({}, getRequiredProps(), {
79
+ selectedOptions: ['option1', 'option2'],
80
+ isReadOnly: true
81
+ })));
82
+ expect(asFragment()).toMatchSnapshot();
83
+ });
84
+ test('Render with isDisabled and title', () => {
85
+ const {
86
+ asFragment
87
+ } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, _extends({}, getRequiredProps(), {
88
+ selectedOptions: ['option1'],
89
+ isDisabled: true,
90
+ title: "Disabled title"
91
+ })));
92
+ expect(asFragment()).toMatchSnapshot();
93
+ });
94
+ test('Render with disableAction', () => {
95
+ const {
96
+ asFragment
97
+ } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, _extends({}, getRequiredProps(), {
98
+ selectedOptions: ['option1', 'option2'],
99
+ disableAction: true
100
+ })));
101
+ expect(asFragment()).toMatchSnapshot();
102
+ });
103
+ test('Render with limit as 2 and three selectedOptions', () => {
104
+ const {
105
+ asFragment
106
+ } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, _extends({}, getRequiredProps(), {
107
+ selectedOptions: ['option1', 'option2', 'option3'],
108
+ limit: 2
109
+ })));
110
+ expect(asFragment()).toMatchSnapshot();
111
+ });
112
+ test('Render with size as xmedium', () => {
113
+ const {
114
+ asFragment
115
+ } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, _extends({}, getRequiredProps(), {
116
+ selectedOptions: ['option1'],
117
+ size: "xmedium"
118
+ })));
119
+ expect(asFragment()).toMatchSnapshot();
120
+ });
121
+ test('Render with palette as dark', () => {
122
+ const {
123
+ asFragment
124
+ } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, _extends({}, getRequiredProps(), {
125
+ selectedOptions: ['option1', 'option2'],
126
+ palette: "dark"
127
+ })));
128
+ expect(asFragment()).toMatchSnapshot();
129
+ });
130
+ test('Render with placeHolder', () => {
131
+ const {
132
+ asFragment
133
+ } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, _extends({}, getRequiredProps(), {
134
+ placeHolder: "Select people"
135
+ })));
136
+ expect(asFragment()).toMatchSnapshot();
137
+ });
138
+ test('Render with dataId', () => {
139
+ const {
140
+ asFragment
141
+ } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, _extends({}, getRequiredProps(), {
142
+ dataId: "avatar-dataId"
143
+ })));
144
+ expect(asFragment()).toMatchSnapshot();
145
+ });
146
+ test('Render with dataSelectorId', () => {
147
+ const {
148
+ asFragment
149
+ } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, _extends({}, getRequiredProps(), {
150
+ dataSelectorId: "avatar-selector"
151
+ })));
152
+ expect(asFragment()).toMatchSnapshot();
153
+ });
154
+ test('Render with htmlId', () => {
155
+ const {
156
+ asFragment
157
+ } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, _extends({}, getRequiredProps(), {
158
+ htmlId: "avatar-htmlId"
159
+ })));
160
+ expect(asFragment()).toMatchSnapshot();
161
+ }); // open menu
162
+
163
+ test('Render with isPopupOpen and isPopupReady', () => {
164
+ const {
165
+ asFragment
166
+ } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, _extends({}, getRequiredProps(), {
167
+ isPopupOpen: true,
168
+ isPopupReady: true
169
+ })));
170
+ expect(asFragment()).toMatchSnapshot();
171
+ });
172
+ test('Render with isPopupOpen, isPopupReady and isDisabled', () => {
173
+ const {
174
+ asFragment
175
+ } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, _extends({}, getRequiredProps(), {
176
+ isPopupOpen: true,
177
+ isPopupReady: true,
178
+ isDisabled: true
179
+ })));
180
+ expect(asFragment()).toMatchSnapshot();
181
+ });
182
+ test('Render with isPopupOpen, isPopupReady and selectedOptions', () => {
183
+ const {
184
+ asFragment
185
+ } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, _extends({}, getRequiredProps(), {
186
+ isPopupOpen: true,
187
+ isPopupReady: true,
188
+ selectedOptions: ['option1']
189
+ })));
190
+ expect(asFragment()).toMatchSnapshot();
191
+ });
192
+ test('Render with isPopupOpen, isPopupReady, selectedOptions and keepSelectedOptions', () => {
193
+ const {
194
+ asFragment
195
+ } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, _extends({}, getRequiredProps(), {
196
+ isPopupOpen: true,
197
+ isPopupReady: true,
198
+ selectedOptions: ['option1'],
199
+ keepSelectedOptions: true
200
+ })));
201
+ expect(asFragment()).toMatchSnapshot();
202
+ });
203
+ test('Render with isPopupOpen, isPopupReady and disabledOptions', () => {
204
+ const {
205
+ asFragment
206
+ } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, _extends({}, getRequiredProps(), {
207
+ isPopupOpen: true,
208
+ isPopupReady: true,
209
+ disabledOptions: ['option2']
210
+ })));
211
+ expect(asFragment()).toMatchSnapshot();
212
+ });
213
+ test('Render with isPopupOpen, isPopupReady and secondaryField', () => {
214
+ const {
215
+ asFragment
216
+ } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, _extends({}, getRequiredProps(), {
217
+ isPopupOpen: true,
218
+ isPopupReady: true,
219
+ options: [{
220
+ id: 'option1',
221
+ text: 'Option 1',
222
+ photoURL: 'avatar1.png',
223
+ secondary: 'Secondary 1'
224
+ }],
225
+ secondaryField: "secondary"
226
+ })));
227
+ expect(asFragment()).toMatchSnapshot();
228
+ });
229
+ test('Render with isPopupOpen, isPopupReady and imageField', () => {
230
+ const {
231
+ asFragment
232
+ } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, _extends({}, getRequiredProps(), {
233
+ isPopupOpen: true,
234
+ isPopupReady: true,
235
+ options: [{
236
+ id: 'option1',
237
+ text: 'Option 1',
238
+ picture: 'picture1.png'
239
+ }],
240
+ imageField: "picture"
241
+ })));
242
+ expect(asFragment()).toMatchSnapshot();
243
+ });
244
+ test('Render with isPopupOpen, isPopupReady and customProps SuggestionsProps', () => {
245
+ const {
246
+ asFragment
247
+ } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, _extends({}, getRequiredProps(), {
248
+ isPopupOpen: true,
249
+ isPopupReady: true,
250
+ customProps: {
251
+ SuggestionsProps: {
252
+ listItemSize: 'small',
253
+ avatarPalette: 'secondary'
254
+ }
255
+ }
256
+ })));
257
+ expect(asFragment()).toMatchSnapshot();
258
+ });
259
+ test('Render with isPopupOpen, isPopupReady and needSelectAll', () => {
260
+ const {
261
+ asFragment
262
+ } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, _extends({}, getRequiredProps(), {
263
+ isPopupOpen: true,
264
+ isPopupReady: true,
265
+ needSelectAll: true
266
+ })));
267
+ expect(asFragment()).toMatchSnapshot();
268
+ });
269
+ test('Render with isPopupOpen, isPopupReady, needSelectAll and selectAllText', () => {
270
+ const {
271
+ asFragment
272
+ } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, _extends({}, getRequiredProps(), {
273
+ isPopupOpen: true,
274
+ isPopupReady: true,
275
+ needSelectAll: true,
276
+ selectAllText: "Select everyone"
277
+ })));
278
+ expect(asFragment()).toMatchSnapshot();
279
+ }); // select all is hidden once a limit is set
280
+
281
+ test('Render with isPopupOpen, isPopupReady, needSelectAll and limit', () => {
282
+ const {
283
+ asFragment
284
+ } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, _extends({}, getRequiredProps(), {
285
+ isPopupOpen: true,
286
+ isPopupReady: true,
287
+ needSelectAll: true,
288
+ limit: 3
289
+ })));
290
+ expect(asFragment()).toMatchSnapshot();
291
+ });
292
+ test('Render with isPopupOpen, isPopupReady and limit reached', () => {
293
+ const {
294
+ asFragment
295
+ } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, _extends({}, getRequiredProps(), {
296
+ isPopupOpen: true,
297
+ isPopupReady: true,
298
+ selectedOptions: ['option1'],
299
+ limit: 1
300
+ })));
301
+ expect(asFragment()).toMatchSnapshot();
302
+ });
303
+ test('Render with isPopupOpen, isPopupReady, limit reached and i18nKeys limitReachedMessage', () => {
304
+ const {
305
+ asFragment
306
+ } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, _extends({}, getRequiredProps(), {
307
+ isPopupOpen: true,
308
+ isPopupReady: true,
309
+ selectedOptions: ['option1'],
310
+ limit: 1,
311
+ i18nKeys: {
312
+ limitReachedMessage: 'Only one allowed'
313
+ }
314
+ })));
315
+ expect(asFragment()).toMatchSnapshot();
316
+ });
317
+ test('Render with isPopupOpen, isPopupReady and isLoading', () => {
318
+ const {
319
+ asFragment
320
+ } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, _extends({}, getRequiredProps(), {
321
+ isPopupOpen: true,
322
+ isPopupReady: true,
323
+ isLoading: true
324
+ })));
325
+ expect(asFragment()).toMatchSnapshot();
326
+ });
327
+ test('Render with isPopupOpen, isPopupReady, isLoading and shouldUseInternalLoader=false', () => {
328
+ const {
329
+ asFragment
330
+ } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, _extends({}, getRequiredProps(), {
331
+ isPopupOpen: true,
332
+ isPopupReady: true,
333
+ isLoading: true,
334
+ shouldUseInternalLoader: false
335
+ })));
336
+ expect(asFragment()).toMatchSnapshot();
337
+ });
338
+ test('Render with isPopupOpen, isPopupReady and no options', () => {
339
+ const {
340
+ asFragment
341
+ } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, _extends({}, getRequiredProps(), {
342
+ options: [],
343
+ isPopupOpen: true,
344
+ isPopupReady: true
345
+ })));
346
+ expect(asFragment()).toMatchSnapshot();
347
+ });
348
+ test('Render with isPopupOpen, isPopupReady, no options and emptyMessage', () => {
349
+ const {
350
+ asFragment
351
+ } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, _extends({}, getRequiredProps(), {
352
+ options: [],
353
+ isPopupOpen: true,
354
+ isPopupReady: true,
355
+ emptyMessage: "Nobody to select"
356
+ })));
357
+ expect(asFragment()).toMatchSnapshot();
358
+ });
359
+ test('Render with isPopupOpen, isPopupReady, no options and renderCustomEmptyState', () => {
360
+ const {
361
+ asFragment
362
+ } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, _extends({}, getRequiredProps(), {
363
+ options: [],
364
+ isPopupOpen: true,
365
+ isPopupReady: true,
366
+ renderCustomEmptyState: () => /*#__PURE__*/React.createElement("span", null, "Custom empty state")
367
+ })));
368
+ expect(asFragment()).toMatchSnapshot();
369
+ });
370
+ test('Render with isPopupOpen, isPopupReady and all options selected', () => {
371
+ const {
372
+ asFragment
373
+ } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, _extends({}, getRequiredProps(), {
374
+ isPopupOpen: true,
375
+ isPopupReady: true,
376
+ selectedOptions: ['option1', 'option2', 'option3']
377
+ })));
378
+ expect(asFragment()).toMatchSnapshot();
379
+ });
380
+ test('Render with isPopupOpen, isPopupReady, all options selected and noMoreOptionsMessage', () => {
381
+ const {
382
+ asFragment
383
+ } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, _extends({}, getRequiredProps(), {
384
+ isPopupOpen: true,
385
+ isPopupReady: true,
386
+ selectedOptions: ['option1', 'option2', 'option3'],
387
+ noMoreOptionsMessage: "No more people"
388
+ })));
389
+ expect(asFragment()).toMatchSnapshot();
390
+ });
391
+ test('Render with isPopupOpen, isPopupReady and search text matching an option', () => {
392
+ const {
393
+ asFragment,
394
+ container
395
+ } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, _extends({}, getRequiredProps(), {
396
+ isPopupOpen: true,
397
+ isPopupReady: true
398
+ })));
399
+ fireEvent.change(getSearchInput(container), {
400
+ target: {
401
+ value: 'Option 2'
402
+ }
403
+ });
404
+ expect(asFragment()).toMatchSnapshot();
405
+ });
406
+ test('Render with isPopupOpen, isPopupReady and search text matching no option', () => {
407
+ const {
408
+ asFragment,
409
+ container
410
+ } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, _extends({}, getRequiredProps(), {
411
+ isPopupOpen: true,
412
+ isPopupReady: true
413
+ })));
414
+ fireEvent.change(getSearchInput(container), {
415
+ target: {
416
+ value: 'zzz'
417
+ }
418
+ });
419
+ expect(asFragment()).toMatchSnapshot();
420
+ });
421
+ test('Render with isPopupOpen, isPopupReady, search text matching no option and searchEmptyMessage', () => {
422
+ const {
423
+ asFragment,
424
+ container
425
+ } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, _extends({}, getRequiredProps(), {
426
+ isPopupOpen: true,
427
+ isPopupReady: true,
428
+ searchEmptyMessage: "No matches found"
429
+ })));
430
+ fireEvent.change(getSearchInput(container), {
431
+ target: {
432
+ value: 'zzz'
433
+ }
434
+ });
435
+ expect(asFragment()).toMatchSnapshot();
436
+ });
437
+ test.each(['medium', 'large'])('Render with isPopupOpen, isPopupReady and dropBoxSize as %s', dropBoxSize => {
438
+ const {
439
+ asFragment
440
+ } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, _extends({}, getRequiredProps(), {
441
+ isPopupOpen: true,
442
+ isPopupReady: true,
443
+ dropBoxSize: dropBoxSize
444
+ })));
445
+ expect(asFragment()).toMatchSnapshot();
446
+ });
447
+ test('Render with isPopupOpen, isPopupReady and palette as dark', () => {
448
+ const {
449
+ asFragment
450
+ } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, _extends({}, getRequiredProps(), {
451
+ isPopupOpen: true,
452
+ isPopupReady: true,
453
+ palette: "dark"
454
+ })));
455
+ expect(asFragment()).toMatchSnapshot();
456
+ });
457
+ test('Render with isPopupOpen, isPopupReady and isAnimate=false', () => {
458
+ const {
459
+ asFragment
460
+ } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, _extends({}, getRequiredProps(), {
461
+ isPopupOpen: true,
462
+ isPopupReady: true,
463
+ isAnimate: false
464
+ })));
465
+ expect(asFragment()).toMatchSnapshot();
466
+ });
467
+ test('Render with isPopupOpen, isPopupReady and animationStyle as default', () => {
468
+ const {
469
+ asFragment
470
+ } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, _extends({}, getRequiredProps(), {
471
+ isPopupOpen: true,
472
+ isPopupReady: true,
473
+ animationStyle: "default"
474
+ })));
475
+ expect(asFragment()).toMatchSnapshot();
476
+ });
477
+ test('Render with isPopupOpen, isPopupReady and isBoxPaddingNeed=false', () => {
478
+ const {
479
+ asFragment
480
+ } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, _extends({}, getRequiredProps(), {
481
+ isPopupOpen: true,
482
+ isPopupReady: true,
483
+ isBoxPaddingNeed: false
484
+ })));
485
+ expect(asFragment()).toMatchSnapshot();
486
+ });
487
+ test('Render with isPopupOpen, isPopupReady and dataId', () => {
488
+ const {
489
+ asFragment
490
+ } = render( /*#__PURE__*/React.createElement(MultiSelectWithAvatar, _extends({}, getRequiredProps(), {
491
+ isPopupOpen: true,
492
+ isPopupReady: true,
493
+ dataId: "avatar-dataId"
494
+ })));
495
+ expect(asFragment()).toMatchSnapshot();
496
+ });
11
497
  });