@instructure/ui-select 10.2.3-snapshot-13 → 10.2.3-snapshot-15
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.
- package/CHANGELOG.md +1 -1
- package/es/Select/__new-tests__/Select.test.js +36 -36
- package/lib/Select/__new-tests__/Select.test.js +36 -36
- package/package.json +27 -27
- package/tsconfig.build.tsbuildinfo +1 -1
- package/types/Select/Group/index.d.ts +2 -2
- package/types/Select/Group/index.d.ts.map +1 -1
- package/types/Select/Option/index.d.ts +2 -2
- package/types/Select/Option/index.d.ts.map +1 -1
- package/types/Select/SelectLocator.d.ts +75 -1
- package/types/Select/SelectLocator.d.ts.map +1 -1
- package/types/Select/index.d.ts.map +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
-
## [10.2.3-snapshot-
|
|
6
|
+
## [10.2.3-snapshot-15](https://github.com/instructure/instructure-ui/compare/v10.2.2...v10.2.3-snapshot-15) (2024-10-03)
|
|
7
7
|
|
|
8
8
|
**Note:** Version bump only for package @instructure/ui-select
|
|
9
9
|
|
|
@@ -62,7 +62,7 @@ describe('<Select />', () => {
|
|
|
62
62
|
consoleErrorMock.mockRestore();
|
|
63
63
|
});
|
|
64
64
|
it('should have role button in Safari without onInputChange', async () => {
|
|
65
|
-
const _render = render(
|
|
65
|
+
const _render = render(/*#__PURE__*/React.createElement(Select, {
|
|
66
66
|
renderLabel: "Choose an option"
|
|
67
67
|
}, getOptions())),
|
|
68
68
|
container = _render.container;
|
|
@@ -71,7 +71,7 @@ describe('<Select />', () => {
|
|
|
71
71
|
});
|
|
72
72
|
it('should have role combobox in different browsers than Safari without onInputChange', async () => {
|
|
73
73
|
mockUtils.isSafari = vi.fn(() => false);
|
|
74
|
-
const _render2 = render(
|
|
74
|
+
const _render2 = render(/*#__PURE__*/React.createElement(Select, {
|
|
75
75
|
renderLabel: "Choose an option"
|
|
76
76
|
}, getOptions())),
|
|
77
77
|
container = _render2.container;
|
|
@@ -79,7 +79,7 @@ describe('<Select />', () => {
|
|
|
79
79
|
expect(input).toHaveAttribute('role', 'combobox');
|
|
80
80
|
});
|
|
81
81
|
it('should have role combobox with onInputChange', async () => {
|
|
82
|
-
const _render3 = render(
|
|
82
|
+
const _render3 = render(/*#__PURE__*/React.createElement(Select, {
|
|
83
83
|
renderLabel: "Choose an option",
|
|
84
84
|
onInputChange: () => {}
|
|
85
85
|
}, getOptions())),
|
|
@@ -88,7 +88,7 @@ describe('<Select />', () => {
|
|
|
88
88
|
expect(input).toHaveAttribute('role', 'combobox');
|
|
89
89
|
});
|
|
90
90
|
it('should render an input and a list', async () => {
|
|
91
|
-
const _render4 = render(
|
|
91
|
+
const _render4 = render(/*#__PURE__*/React.createElement(Select, {
|
|
92
92
|
renderLabel: "Choose an option",
|
|
93
93
|
isShowingOptions: true,
|
|
94
94
|
"data-testid": "subidubi"
|
|
@@ -147,7 +147,7 @@ describe('<Select />', () => {
|
|
|
147
147
|
it('should provide a focus method', async () => {
|
|
148
148
|
var _ref$current;
|
|
149
149
|
const ref = /*#__PURE__*/React.createRef();
|
|
150
|
-
render(
|
|
150
|
+
render(/*#__PURE__*/React.createElement(Select, {
|
|
151
151
|
renderLabel: "Choose an option",
|
|
152
152
|
ref: ref
|
|
153
153
|
}, getOptions()));
|
|
@@ -160,7 +160,7 @@ describe('<Select />', () => {
|
|
|
160
160
|
it('should provide a focused getter', async () => {
|
|
161
161
|
var _ref$current2, _ref$current3;
|
|
162
162
|
const ref = /*#__PURE__*/React.createRef();
|
|
163
|
-
render(
|
|
163
|
+
render(/*#__PURE__*/React.createElement(Select, {
|
|
164
164
|
renderLabel: "Choose an option",
|
|
165
165
|
ref: ref
|
|
166
166
|
}, getOptions()));
|
|
@@ -200,7 +200,7 @@ describe('<Select />', () => {
|
|
|
200
200
|
expect(input).not.toHaveAttribute('disabled');
|
|
201
201
|
});
|
|
202
202
|
it('should not render readonly when interaction="enabled" with onInputChange', () => {
|
|
203
|
-
render(
|
|
203
|
+
render(/*#__PURE__*/React.createElement(Select, {
|
|
204
204
|
renderLabel: "Choose an option",
|
|
205
205
|
onInputChange: () => {}
|
|
206
206
|
}));
|
|
@@ -209,7 +209,7 @@ describe('<Select />', () => {
|
|
|
209
209
|
expect(input).not.toHaveAttribute('disabled');
|
|
210
210
|
});
|
|
211
211
|
it('should render readonly when interaction="readonly"', () => {
|
|
212
|
-
render(
|
|
212
|
+
render(/*#__PURE__*/React.createElement(Select, {
|
|
213
213
|
renderLabel: "Choose an option",
|
|
214
214
|
interaction: "readonly",
|
|
215
215
|
onInputChange: () => {}
|
|
@@ -219,7 +219,7 @@ describe('<Select />', () => {
|
|
|
219
219
|
expect(input).not.toHaveAttribute('disabled');
|
|
220
220
|
});
|
|
221
221
|
it('should render disabled when interaction="disabled"', () => {
|
|
222
|
-
render(
|
|
222
|
+
render(/*#__PURE__*/React.createElement(Select, {
|
|
223
223
|
renderLabel: "Choose an option",
|
|
224
224
|
interaction: "disabled",
|
|
225
225
|
onInputChange: () => {}
|
|
@@ -247,7 +247,7 @@ describe('<Select />', () => {
|
|
|
247
247
|
});
|
|
248
248
|
it('should render with inputValue', () => {
|
|
249
249
|
const val = 'hello world';
|
|
250
|
-
render(
|
|
250
|
+
render(/*#__PURE__*/React.createElement(Select, {
|
|
251
251
|
renderLabel: "Choose an option",
|
|
252
252
|
inputValue: val
|
|
253
253
|
}));
|
|
@@ -255,7 +255,7 @@ describe('<Select />', () => {
|
|
|
255
255
|
expect(input).toHaveAttribute('value', val);
|
|
256
256
|
});
|
|
257
257
|
it('should set aria-activedescendant based on the highlighted option', () => {
|
|
258
|
-
render(
|
|
258
|
+
render(/*#__PURE__*/React.createElement(Select, {
|
|
259
259
|
renderLabel: "Choose an option",
|
|
260
260
|
isShowingOptions: true
|
|
261
261
|
}, getOptions(defaultOptions[1])));
|
|
@@ -263,14 +263,14 @@ describe('<Select />', () => {
|
|
|
263
263
|
expect(input).toHaveAttribute('aria-activedescendant', defaultOptions[1]);
|
|
264
264
|
});
|
|
265
265
|
it('should not set aria-activedescendant when not showing options', () => {
|
|
266
|
-
render(
|
|
266
|
+
render(/*#__PURE__*/React.createElement(Select, {
|
|
267
267
|
renderLabel: "Choose an option"
|
|
268
268
|
}, getOptions(defaultOptions[1])));
|
|
269
269
|
const input = screen.getByLabelText('Choose an option');
|
|
270
270
|
expect(input).not.toHaveAttribute('aria-activedescendant');
|
|
271
271
|
});
|
|
272
272
|
it('should allow assistive text', () => {
|
|
273
|
-
render(
|
|
273
|
+
render(/*#__PURE__*/React.createElement(Select, {
|
|
274
274
|
renderLabel: "Choose an option",
|
|
275
275
|
assistiveText: "hello world"
|
|
276
276
|
}, getOptions()));
|
|
@@ -280,7 +280,7 @@ describe('<Select />', () => {
|
|
|
280
280
|
expect(input).toHaveAttribute('aria-describedby', assistiveTextId);
|
|
281
281
|
});
|
|
282
282
|
it('should allow custom props to pass through', () => {
|
|
283
|
-
render(
|
|
283
|
+
render(/*#__PURE__*/React.createElement(Select, {
|
|
284
284
|
renderLabel: "Choose an option",
|
|
285
285
|
"data-custom-attr": "true"
|
|
286
286
|
}, getOptions()));
|
|
@@ -288,13 +288,13 @@ describe('<Select />', () => {
|
|
|
288
288
|
expect(input).toHaveAttribute('data-custom-attr', 'true');
|
|
289
289
|
});
|
|
290
290
|
it('should allow override of autoComplete prop', () => {
|
|
291
|
-
const _render7 = render(
|
|
291
|
+
const _render7 = render(/*#__PURE__*/React.createElement(Select, {
|
|
292
292
|
renderLabel: "Choose an option"
|
|
293
293
|
}, getOptions())),
|
|
294
294
|
rerender = _render7.rerender;
|
|
295
295
|
const input = screen.getByLabelText('Choose an option');
|
|
296
296
|
expect(input).toHaveAttribute('autocomplete', 'off');
|
|
297
|
-
rerender(
|
|
297
|
+
rerender(/*#__PURE__*/React.createElement(Select, {
|
|
298
298
|
renderLabel: "Choose an option",
|
|
299
299
|
autoComplete: "false"
|
|
300
300
|
}, getOptions()));
|
|
@@ -302,7 +302,7 @@ describe('<Select />', () => {
|
|
|
302
302
|
});
|
|
303
303
|
it('should provide a ref to the input element', async () => {
|
|
304
304
|
const inputRef = vi.fn();
|
|
305
|
-
render(
|
|
305
|
+
render(/*#__PURE__*/React.createElement(Select, {
|
|
306
306
|
renderLabel: "Choose an option",
|
|
307
307
|
inputRef: inputRef
|
|
308
308
|
}, getOptions()));
|
|
@@ -314,7 +314,7 @@ describe('<Select />', () => {
|
|
|
314
314
|
});
|
|
315
315
|
describe('list', () => {
|
|
316
316
|
it('should set aria-selected on options with isSelected={true}', () => {
|
|
317
|
-
render(
|
|
317
|
+
render(/*#__PURE__*/React.createElement(Select, {
|
|
318
318
|
renderLabel: "Choose an option",
|
|
319
319
|
isShowingOptions: true
|
|
320
320
|
}, getOptions(void 0, defaultOptions[1])));
|
|
@@ -322,7 +322,7 @@ describe('<Select />', () => {
|
|
|
322
322
|
expect(options[1].getAttribute('aria-selected')).toEqual('true');
|
|
323
323
|
});
|
|
324
324
|
it('should set aria-disabled on options when isDisabled={true}', () => {
|
|
325
|
-
render(
|
|
325
|
+
render(/*#__PURE__*/React.createElement(Select, {
|
|
326
326
|
renderLabel: "Choose an option",
|
|
327
327
|
isShowingOptions: true
|
|
328
328
|
}, getOptions(void 0, void 0, defaultOptions[2])));
|
|
@@ -331,7 +331,7 @@ describe('<Select />', () => {
|
|
|
331
331
|
expect(options[2]).toHaveAttribute('aria-disabled', 'true');
|
|
332
332
|
});
|
|
333
333
|
it('should set list element role to "listbox"', async () => {
|
|
334
|
-
render(
|
|
334
|
+
render(/*#__PURE__*/React.createElement(Select, {
|
|
335
335
|
renderLabel: "Choose an option",
|
|
336
336
|
isShowingOptions: true
|
|
337
337
|
}, getOptions()));
|
|
@@ -341,7 +341,7 @@ describe('<Select />', () => {
|
|
|
341
341
|
});
|
|
342
342
|
it('should provide a ref to the list element', async () => {
|
|
343
343
|
const listRef = vi.fn();
|
|
344
|
-
render(
|
|
344
|
+
render(/*#__PURE__*/React.createElement(Select, {
|
|
345
345
|
renderLabel: "Choose an option",
|
|
346
346
|
isShowingOptions: true,
|
|
347
347
|
listRef: listRef
|
|
@@ -356,7 +356,7 @@ describe('<Select />', () => {
|
|
|
356
356
|
describe('should fire onRequestShowOptions', () => {
|
|
357
357
|
it('when root is clicked', async () => {
|
|
358
358
|
const onRequestShowOptions = vi.fn();
|
|
359
|
-
const _render8 = render(
|
|
359
|
+
const _render8 = render(/*#__PURE__*/React.createElement(Select, {
|
|
360
360
|
renderLabel: "Choose an option",
|
|
361
361
|
onRequestShowOptions: onRequestShowOptions
|
|
362
362
|
}, getOptions())),
|
|
@@ -374,7 +374,7 @@ describe('<Select />', () => {
|
|
|
374
374
|
await waitFor(() => {
|
|
375
375
|
expect(onRequestShowOptions).toHaveBeenCalledTimes(2);
|
|
376
376
|
});
|
|
377
|
-
rerender(
|
|
377
|
+
rerender(/*#__PURE__*/React.createElement(Select, {
|
|
378
378
|
renderLabel: "Choose an option",
|
|
379
379
|
onRequestShowOptions: onRequestShowOptions,
|
|
380
380
|
isShowingOptions: true
|
|
@@ -386,7 +386,7 @@ describe('<Select />', () => {
|
|
|
386
386
|
});
|
|
387
387
|
it('when input is clicked', async () => {
|
|
388
388
|
const onRequestShowOptions = vi.fn();
|
|
389
|
-
const _render9 = render(
|
|
389
|
+
const _render9 = render(/*#__PURE__*/React.createElement(Select, {
|
|
390
390
|
renderLabel: "Choose an option",
|
|
391
391
|
onRequestShowOptions: onRequestShowOptions
|
|
392
392
|
}, getOptions())),
|
|
@@ -396,7 +396,7 @@ describe('<Select />', () => {
|
|
|
396
396
|
await waitFor(() => {
|
|
397
397
|
expect(onRequestShowOptions).toHaveBeenCalledTimes(1);
|
|
398
398
|
});
|
|
399
|
-
rerender(
|
|
399
|
+
rerender(/*#__PURE__*/React.createElement(Select, {
|
|
400
400
|
renderLabel: "Choose an option",
|
|
401
401
|
onRequestShowOptions: onRequestShowOptions,
|
|
402
402
|
isShowingOptions: true
|
|
@@ -408,7 +408,7 @@ describe('<Select />', () => {
|
|
|
408
408
|
});
|
|
409
409
|
it('when up/down arrows are pressed', async () => {
|
|
410
410
|
const onRequestShowOptions = vi.fn();
|
|
411
|
-
render(
|
|
411
|
+
render(/*#__PURE__*/React.createElement(Select, {
|
|
412
412
|
renderLabel: "Choose an option",
|
|
413
413
|
onRequestShowOptions: onRequestShowOptions
|
|
414
414
|
}, getOptions()));
|
|
@@ -424,7 +424,7 @@ describe('<Select />', () => {
|
|
|
424
424
|
});
|
|
425
425
|
it('when space is pressed', async () => {
|
|
426
426
|
const onRequestShowOptions = vi.fn();
|
|
427
|
-
const _render10 = render(
|
|
427
|
+
const _render10 = render(/*#__PURE__*/React.createElement(Select, {
|
|
428
428
|
renderLabel: "Choose an option",
|
|
429
429
|
onRequestShowOptions: onRequestShowOptions
|
|
430
430
|
}, getOptions())),
|
|
@@ -434,7 +434,7 @@ describe('<Select />', () => {
|
|
|
434
434
|
await waitFor(() => {
|
|
435
435
|
expect(onRequestShowOptions).toHaveBeenCalledTimes(1);
|
|
436
436
|
});
|
|
437
|
-
rerender(
|
|
437
|
+
rerender(/*#__PURE__*/React.createElement(Select, {
|
|
438
438
|
renderLabel: "Choose an option",
|
|
439
439
|
onRequestShowOptions: onRequestShowOptions,
|
|
440
440
|
isShowingOptions: true
|
|
@@ -448,7 +448,7 @@ describe('<Select />', () => {
|
|
|
448
448
|
describe('should fire onRequestHideOptions', () => {
|
|
449
449
|
it('when root is clicked and isShowingOptions is true', async () => {
|
|
450
450
|
const onRequestHideOptions = vi.fn();
|
|
451
|
-
const _render11 = render(
|
|
451
|
+
const _render11 = render(/*#__PURE__*/React.createElement(Select, {
|
|
452
452
|
renderLabel: "Choose an option",
|
|
453
453
|
isShowingOptions: true,
|
|
454
454
|
onRequestHideOptions: onRequestHideOptions
|
|
@@ -469,7 +469,7 @@ describe('<Select />', () => {
|
|
|
469
469
|
});
|
|
470
470
|
it('when root is clicked and isShowingOptions is false should NOT fire onRequestHideOptions', async () => {
|
|
471
471
|
const onRequestHideOptions = vi.fn();
|
|
472
|
-
render(
|
|
472
|
+
render(/*#__PURE__*/React.createElement(Select, {
|
|
473
473
|
renderLabel: "Choose an option",
|
|
474
474
|
isShowingOptions: false,
|
|
475
475
|
onRequestHideOptions: onRequestHideOptions
|
|
@@ -483,7 +483,7 @@ describe('<Select />', () => {
|
|
|
483
483
|
});
|
|
484
484
|
it('when input is clicked', async () => {
|
|
485
485
|
const onRequestHideOptions = vi.fn();
|
|
486
|
-
const _render12 = render(
|
|
486
|
+
const _render12 = render(/*#__PURE__*/React.createElement(Select, {
|
|
487
487
|
renderLabel: "Choose an option",
|
|
488
488
|
isShowingOptions: true,
|
|
489
489
|
onRequestHideOptions: onRequestHideOptions
|
|
@@ -494,7 +494,7 @@ describe('<Select />', () => {
|
|
|
494
494
|
await waitFor(() => {
|
|
495
495
|
expect(onRequestHideOptions).toHaveBeenCalledTimes(1);
|
|
496
496
|
});
|
|
497
|
-
rerender(
|
|
497
|
+
rerender(/*#__PURE__*/React.createElement(Select, {
|
|
498
498
|
renderLabel: "Choose an option",
|
|
499
499
|
isShowingOptions: false,
|
|
500
500
|
onRequestHideOptions: onRequestHideOptions
|
|
@@ -506,7 +506,7 @@ describe('<Select />', () => {
|
|
|
506
506
|
});
|
|
507
507
|
it('when escape is pressed', async () => {
|
|
508
508
|
const onRequestHideOptions = vi.fn();
|
|
509
|
-
render(
|
|
509
|
+
render(/*#__PURE__*/React.createElement(Select, {
|
|
510
510
|
renderLabel: "Choose an option",
|
|
511
511
|
isShowingOptions: true,
|
|
512
512
|
onRequestHideOptions: onRequestHideOptions
|
|
@@ -521,7 +521,7 @@ describe('<Select />', () => {
|
|
|
521
521
|
describe('should fire onRequestHighlightOption', () => {
|
|
522
522
|
it('when options are hovered', async () => {
|
|
523
523
|
const onRequestHighlightOption = vi.fn();
|
|
524
|
-
render(
|
|
524
|
+
render(/*#__PURE__*/React.createElement(Select, {
|
|
525
525
|
renderLabel: "Choose an option",
|
|
526
526
|
isShowingOptions: true,
|
|
527
527
|
onRequestHighlightOption: onRequestHighlightOption
|
|
@@ -544,7 +544,7 @@ describe('<Select />', () => {
|
|
|
544
544
|
describe('input callbacks', () => {
|
|
545
545
|
it('should fire onInputChange when input is typed in', async () => {
|
|
546
546
|
const onInputChange = vi.fn();
|
|
547
|
-
render(
|
|
547
|
+
render(/*#__PURE__*/React.createElement(Select, {
|
|
548
548
|
renderLabel: "Choose an option",
|
|
549
549
|
onInputChange: onInputChange
|
|
550
550
|
}, getOptions()));
|
|
@@ -556,7 +556,7 @@ describe('<Select />', () => {
|
|
|
556
556
|
});
|
|
557
557
|
it('should fire onFocus when input gains focus', async () => {
|
|
558
558
|
const onFocus = vi.fn();
|
|
559
|
-
render(
|
|
559
|
+
render(/*#__PURE__*/React.createElement(Select, {
|
|
560
560
|
renderLabel: "Choose an option",
|
|
561
561
|
onFocus: onFocus
|
|
562
562
|
}, getOptions()));
|
|
@@ -65,7 +65,7 @@ describe('<Select />', () => {
|
|
|
65
65
|
consoleErrorMock.mockRestore();
|
|
66
66
|
});
|
|
67
67
|
it('should have role button in Safari without onInputChange', async () => {
|
|
68
|
-
const _render = (0, _react2.render)(
|
|
68
|
+
const _render = (0, _react2.render)(/*#__PURE__*/_react.default.createElement(_index.default, {
|
|
69
69
|
renderLabel: "Choose an option"
|
|
70
70
|
}, getOptions())),
|
|
71
71
|
container = _render.container;
|
|
@@ -74,7 +74,7 @@ describe('<Select />', () => {
|
|
|
74
74
|
});
|
|
75
75
|
it('should have role combobox in different browsers than Safari without onInputChange', async () => {
|
|
76
76
|
mockUtils.isSafari = _vitest.vi.fn(() => false);
|
|
77
|
-
const _render2 = (0, _react2.render)(
|
|
77
|
+
const _render2 = (0, _react2.render)(/*#__PURE__*/_react.default.createElement(_index.default, {
|
|
78
78
|
renderLabel: "Choose an option"
|
|
79
79
|
}, getOptions())),
|
|
80
80
|
container = _render2.container;
|
|
@@ -82,7 +82,7 @@ describe('<Select />', () => {
|
|
|
82
82
|
expect(input).toHaveAttribute('role', 'combobox');
|
|
83
83
|
});
|
|
84
84
|
it('should have role combobox with onInputChange', async () => {
|
|
85
|
-
const _render3 = (0, _react2.render)(
|
|
85
|
+
const _render3 = (0, _react2.render)(/*#__PURE__*/_react.default.createElement(_index.default, {
|
|
86
86
|
renderLabel: "Choose an option",
|
|
87
87
|
onInputChange: () => {}
|
|
88
88
|
}, getOptions())),
|
|
@@ -91,7 +91,7 @@ describe('<Select />', () => {
|
|
|
91
91
|
expect(input).toHaveAttribute('role', 'combobox');
|
|
92
92
|
});
|
|
93
93
|
it('should render an input and a list', async () => {
|
|
94
|
-
const _render4 = (0, _react2.render)(
|
|
94
|
+
const _render4 = (0, _react2.render)(/*#__PURE__*/_react.default.createElement(_index.default, {
|
|
95
95
|
renderLabel: "Choose an option",
|
|
96
96
|
isShowingOptions: true,
|
|
97
97
|
"data-testid": "subidubi"
|
|
@@ -150,7 +150,7 @@ describe('<Select />', () => {
|
|
|
150
150
|
it('should provide a focus method', async () => {
|
|
151
151
|
var _ref$current;
|
|
152
152
|
const ref = /*#__PURE__*/_react.default.createRef();
|
|
153
|
-
(0, _react2.render)(
|
|
153
|
+
(0, _react2.render)(/*#__PURE__*/_react.default.createElement(_index.default, {
|
|
154
154
|
renderLabel: "Choose an option",
|
|
155
155
|
ref: ref
|
|
156
156
|
}, getOptions()));
|
|
@@ -163,7 +163,7 @@ describe('<Select />', () => {
|
|
|
163
163
|
it('should provide a focused getter', async () => {
|
|
164
164
|
var _ref$current2, _ref$current3;
|
|
165
165
|
const ref = /*#__PURE__*/_react.default.createRef();
|
|
166
|
-
(0, _react2.render)(
|
|
166
|
+
(0, _react2.render)(/*#__PURE__*/_react.default.createElement(_index.default, {
|
|
167
167
|
renderLabel: "Choose an option",
|
|
168
168
|
ref: ref
|
|
169
169
|
}, getOptions()));
|
|
@@ -203,7 +203,7 @@ describe('<Select />', () => {
|
|
|
203
203
|
expect(input).not.toHaveAttribute('disabled');
|
|
204
204
|
});
|
|
205
205
|
it('should not render readonly when interaction="enabled" with onInputChange', () => {
|
|
206
|
-
(0, _react2.render)(
|
|
206
|
+
(0, _react2.render)(/*#__PURE__*/_react.default.createElement(_index.default, {
|
|
207
207
|
renderLabel: "Choose an option",
|
|
208
208
|
onInputChange: () => {}
|
|
209
209
|
}));
|
|
@@ -212,7 +212,7 @@ describe('<Select />', () => {
|
|
|
212
212
|
expect(input).not.toHaveAttribute('disabled');
|
|
213
213
|
});
|
|
214
214
|
it('should render readonly when interaction="readonly"', () => {
|
|
215
|
-
(0, _react2.render)(
|
|
215
|
+
(0, _react2.render)(/*#__PURE__*/_react.default.createElement(_index.default, {
|
|
216
216
|
renderLabel: "Choose an option",
|
|
217
217
|
interaction: "readonly",
|
|
218
218
|
onInputChange: () => {}
|
|
@@ -222,7 +222,7 @@ describe('<Select />', () => {
|
|
|
222
222
|
expect(input).not.toHaveAttribute('disabled');
|
|
223
223
|
});
|
|
224
224
|
it('should render disabled when interaction="disabled"', () => {
|
|
225
|
-
(0, _react2.render)(
|
|
225
|
+
(0, _react2.render)(/*#__PURE__*/_react.default.createElement(_index.default, {
|
|
226
226
|
renderLabel: "Choose an option",
|
|
227
227
|
interaction: "disabled",
|
|
228
228
|
onInputChange: () => {}
|
|
@@ -250,7 +250,7 @@ describe('<Select />', () => {
|
|
|
250
250
|
});
|
|
251
251
|
it('should render with inputValue', () => {
|
|
252
252
|
const val = 'hello world';
|
|
253
|
-
(0, _react2.render)(
|
|
253
|
+
(0, _react2.render)(/*#__PURE__*/_react.default.createElement(_index.default, {
|
|
254
254
|
renderLabel: "Choose an option",
|
|
255
255
|
inputValue: val
|
|
256
256
|
}));
|
|
@@ -258,7 +258,7 @@ describe('<Select />', () => {
|
|
|
258
258
|
expect(input).toHaveAttribute('value', val);
|
|
259
259
|
});
|
|
260
260
|
it('should set aria-activedescendant based on the highlighted option', () => {
|
|
261
|
-
(0, _react2.render)(
|
|
261
|
+
(0, _react2.render)(/*#__PURE__*/_react.default.createElement(_index.default, {
|
|
262
262
|
renderLabel: "Choose an option",
|
|
263
263
|
isShowingOptions: true
|
|
264
264
|
}, getOptions(defaultOptions[1])));
|
|
@@ -266,14 +266,14 @@ describe('<Select />', () => {
|
|
|
266
266
|
expect(input).toHaveAttribute('aria-activedescendant', defaultOptions[1]);
|
|
267
267
|
});
|
|
268
268
|
it('should not set aria-activedescendant when not showing options', () => {
|
|
269
|
-
(0, _react2.render)(
|
|
269
|
+
(0, _react2.render)(/*#__PURE__*/_react.default.createElement(_index.default, {
|
|
270
270
|
renderLabel: "Choose an option"
|
|
271
271
|
}, getOptions(defaultOptions[1])));
|
|
272
272
|
const input = _react2.screen.getByLabelText('Choose an option');
|
|
273
273
|
expect(input).not.toHaveAttribute('aria-activedescendant');
|
|
274
274
|
});
|
|
275
275
|
it('should allow assistive text', () => {
|
|
276
|
-
(0, _react2.render)(
|
|
276
|
+
(0, _react2.render)(/*#__PURE__*/_react.default.createElement(_index.default, {
|
|
277
277
|
renderLabel: "Choose an option",
|
|
278
278
|
assistiveText: "hello world"
|
|
279
279
|
}, getOptions()));
|
|
@@ -283,7 +283,7 @@ describe('<Select />', () => {
|
|
|
283
283
|
expect(input).toHaveAttribute('aria-describedby', assistiveTextId);
|
|
284
284
|
});
|
|
285
285
|
it('should allow custom props to pass through', () => {
|
|
286
|
-
(0, _react2.render)(
|
|
286
|
+
(0, _react2.render)(/*#__PURE__*/_react.default.createElement(_index.default, {
|
|
287
287
|
renderLabel: "Choose an option",
|
|
288
288
|
"data-custom-attr": "true"
|
|
289
289
|
}, getOptions()));
|
|
@@ -291,13 +291,13 @@ describe('<Select />', () => {
|
|
|
291
291
|
expect(input).toHaveAttribute('data-custom-attr', 'true');
|
|
292
292
|
});
|
|
293
293
|
it('should allow override of autoComplete prop', () => {
|
|
294
|
-
const _render7 = (0, _react2.render)(
|
|
294
|
+
const _render7 = (0, _react2.render)(/*#__PURE__*/_react.default.createElement(_index.default, {
|
|
295
295
|
renderLabel: "Choose an option"
|
|
296
296
|
}, getOptions())),
|
|
297
297
|
rerender = _render7.rerender;
|
|
298
298
|
const input = _react2.screen.getByLabelText('Choose an option');
|
|
299
299
|
expect(input).toHaveAttribute('autocomplete', 'off');
|
|
300
|
-
rerender(
|
|
300
|
+
rerender(/*#__PURE__*/_react.default.createElement(_index.default, {
|
|
301
301
|
renderLabel: "Choose an option",
|
|
302
302
|
autoComplete: "false"
|
|
303
303
|
}, getOptions()));
|
|
@@ -305,7 +305,7 @@ describe('<Select />', () => {
|
|
|
305
305
|
});
|
|
306
306
|
it('should provide a ref to the input element', async () => {
|
|
307
307
|
const inputRef = _vitest.vi.fn();
|
|
308
|
-
(0, _react2.render)(
|
|
308
|
+
(0, _react2.render)(/*#__PURE__*/_react.default.createElement(_index.default, {
|
|
309
309
|
renderLabel: "Choose an option",
|
|
310
310
|
inputRef: inputRef
|
|
311
311
|
}, getOptions()));
|
|
@@ -317,7 +317,7 @@ describe('<Select />', () => {
|
|
|
317
317
|
});
|
|
318
318
|
describe('list', () => {
|
|
319
319
|
it('should set aria-selected on options with isSelected={true}', () => {
|
|
320
|
-
(0, _react2.render)(
|
|
320
|
+
(0, _react2.render)(/*#__PURE__*/_react.default.createElement(_index.default, {
|
|
321
321
|
renderLabel: "Choose an option",
|
|
322
322
|
isShowingOptions: true
|
|
323
323
|
}, getOptions(void 0, defaultOptions[1])));
|
|
@@ -325,7 +325,7 @@ describe('<Select />', () => {
|
|
|
325
325
|
expect(options[1].getAttribute('aria-selected')).toEqual('true');
|
|
326
326
|
});
|
|
327
327
|
it('should set aria-disabled on options when isDisabled={true}', () => {
|
|
328
|
-
(0, _react2.render)(
|
|
328
|
+
(0, _react2.render)(/*#__PURE__*/_react.default.createElement(_index.default, {
|
|
329
329
|
renderLabel: "Choose an option",
|
|
330
330
|
isShowingOptions: true
|
|
331
331
|
}, getOptions(void 0, void 0, defaultOptions[2])));
|
|
@@ -334,7 +334,7 @@ describe('<Select />', () => {
|
|
|
334
334
|
expect(options[2]).toHaveAttribute('aria-disabled', 'true');
|
|
335
335
|
});
|
|
336
336
|
it('should set list element role to "listbox"', async () => {
|
|
337
|
-
(0, _react2.render)(
|
|
337
|
+
(0, _react2.render)(/*#__PURE__*/_react.default.createElement(_index.default, {
|
|
338
338
|
renderLabel: "Choose an option",
|
|
339
339
|
isShowingOptions: true
|
|
340
340
|
}, getOptions()));
|
|
@@ -344,7 +344,7 @@ describe('<Select />', () => {
|
|
|
344
344
|
});
|
|
345
345
|
it('should provide a ref to the list element', async () => {
|
|
346
346
|
const listRef = _vitest.vi.fn();
|
|
347
|
-
(0, _react2.render)(
|
|
347
|
+
(0, _react2.render)(/*#__PURE__*/_react.default.createElement(_index.default, {
|
|
348
348
|
renderLabel: "Choose an option",
|
|
349
349
|
isShowingOptions: true,
|
|
350
350
|
listRef: listRef
|
|
@@ -359,7 +359,7 @@ describe('<Select />', () => {
|
|
|
359
359
|
describe('should fire onRequestShowOptions', () => {
|
|
360
360
|
it('when root is clicked', async () => {
|
|
361
361
|
const onRequestShowOptions = _vitest.vi.fn();
|
|
362
|
-
const _render8 = (0, _react2.render)(
|
|
362
|
+
const _render8 = (0, _react2.render)(/*#__PURE__*/_react.default.createElement(_index.default, {
|
|
363
363
|
renderLabel: "Choose an option",
|
|
364
364
|
onRequestShowOptions: onRequestShowOptions
|
|
365
365
|
}, getOptions())),
|
|
@@ -377,7 +377,7 @@ describe('<Select />', () => {
|
|
|
377
377
|
await (0, _react2.waitFor)(() => {
|
|
378
378
|
expect(onRequestShowOptions).toHaveBeenCalledTimes(2);
|
|
379
379
|
});
|
|
380
|
-
rerender(
|
|
380
|
+
rerender(/*#__PURE__*/_react.default.createElement(_index.default, {
|
|
381
381
|
renderLabel: "Choose an option",
|
|
382
382
|
onRequestShowOptions: onRequestShowOptions,
|
|
383
383
|
isShowingOptions: true
|
|
@@ -389,7 +389,7 @@ describe('<Select />', () => {
|
|
|
389
389
|
});
|
|
390
390
|
it('when input is clicked', async () => {
|
|
391
391
|
const onRequestShowOptions = _vitest.vi.fn();
|
|
392
|
-
const _render9 = (0, _react2.render)(
|
|
392
|
+
const _render9 = (0, _react2.render)(/*#__PURE__*/_react.default.createElement(_index.default, {
|
|
393
393
|
renderLabel: "Choose an option",
|
|
394
394
|
onRequestShowOptions: onRequestShowOptions
|
|
395
395
|
}, getOptions())),
|
|
@@ -399,7 +399,7 @@ describe('<Select />', () => {
|
|
|
399
399
|
await (0, _react2.waitFor)(() => {
|
|
400
400
|
expect(onRequestShowOptions).toHaveBeenCalledTimes(1);
|
|
401
401
|
});
|
|
402
|
-
rerender(
|
|
402
|
+
rerender(/*#__PURE__*/_react.default.createElement(_index.default, {
|
|
403
403
|
renderLabel: "Choose an option",
|
|
404
404
|
onRequestShowOptions: onRequestShowOptions,
|
|
405
405
|
isShowingOptions: true
|
|
@@ -411,7 +411,7 @@ describe('<Select />', () => {
|
|
|
411
411
|
});
|
|
412
412
|
it('when up/down arrows are pressed', async () => {
|
|
413
413
|
const onRequestShowOptions = _vitest.vi.fn();
|
|
414
|
-
(0, _react2.render)(
|
|
414
|
+
(0, _react2.render)(/*#__PURE__*/_react.default.createElement(_index.default, {
|
|
415
415
|
renderLabel: "Choose an option",
|
|
416
416
|
onRequestShowOptions: onRequestShowOptions
|
|
417
417
|
}, getOptions()));
|
|
@@ -427,7 +427,7 @@ describe('<Select />', () => {
|
|
|
427
427
|
});
|
|
428
428
|
it('when space is pressed', async () => {
|
|
429
429
|
const onRequestShowOptions = _vitest.vi.fn();
|
|
430
|
-
const _render10 = (0, _react2.render)(
|
|
430
|
+
const _render10 = (0, _react2.render)(/*#__PURE__*/_react.default.createElement(_index.default, {
|
|
431
431
|
renderLabel: "Choose an option",
|
|
432
432
|
onRequestShowOptions: onRequestShowOptions
|
|
433
433
|
}, getOptions())),
|
|
@@ -437,7 +437,7 @@ describe('<Select />', () => {
|
|
|
437
437
|
await (0, _react2.waitFor)(() => {
|
|
438
438
|
expect(onRequestShowOptions).toHaveBeenCalledTimes(1);
|
|
439
439
|
});
|
|
440
|
-
rerender(
|
|
440
|
+
rerender(/*#__PURE__*/_react.default.createElement(_index.default, {
|
|
441
441
|
renderLabel: "Choose an option",
|
|
442
442
|
onRequestShowOptions: onRequestShowOptions,
|
|
443
443
|
isShowingOptions: true
|
|
@@ -451,7 +451,7 @@ describe('<Select />', () => {
|
|
|
451
451
|
describe('should fire onRequestHideOptions', () => {
|
|
452
452
|
it('when root is clicked and isShowingOptions is true', async () => {
|
|
453
453
|
const onRequestHideOptions = _vitest.vi.fn();
|
|
454
|
-
const _render11 = (0, _react2.render)(
|
|
454
|
+
const _render11 = (0, _react2.render)(/*#__PURE__*/_react.default.createElement(_index.default, {
|
|
455
455
|
renderLabel: "Choose an option",
|
|
456
456
|
isShowingOptions: true,
|
|
457
457
|
onRequestHideOptions: onRequestHideOptions
|
|
@@ -472,7 +472,7 @@ describe('<Select />', () => {
|
|
|
472
472
|
});
|
|
473
473
|
it('when root is clicked and isShowingOptions is false should NOT fire onRequestHideOptions', async () => {
|
|
474
474
|
const onRequestHideOptions = _vitest.vi.fn();
|
|
475
|
-
(0, _react2.render)(
|
|
475
|
+
(0, _react2.render)(/*#__PURE__*/_react.default.createElement(_index.default, {
|
|
476
476
|
renderLabel: "Choose an option",
|
|
477
477
|
isShowingOptions: false,
|
|
478
478
|
onRequestHideOptions: onRequestHideOptions
|
|
@@ -486,7 +486,7 @@ describe('<Select />', () => {
|
|
|
486
486
|
});
|
|
487
487
|
it('when input is clicked', async () => {
|
|
488
488
|
const onRequestHideOptions = _vitest.vi.fn();
|
|
489
|
-
const _render12 = (0, _react2.render)(
|
|
489
|
+
const _render12 = (0, _react2.render)(/*#__PURE__*/_react.default.createElement(_index.default, {
|
|
490
490
|
renderLabel: "Choose an option",
|
|
491
491
|
isShowingOptions: true,
|
|
492
492
|
onRequestHideOptions: onRequestHideOptions
|
|
@@ -497,7 +497,7 @@ describe('<Select />', () => {
|
|
|
497
497
|
await (0, _react2.waitFor)(() => {
|
|
498
498
|
expect(onRequestHideOptions).toHaveBeenCalledTimes(1);
|
|
499
499
|
});
|
|
500
|
-
rerender(
|
|
500
|
+
rerender(/*#__PURE__*/_react.default.createElement(_index.default, {
|
|
501
501
|
renderLabel: "Choose an option",
|
|
502
502
|
isShowingOptions: false,
|
|
503
503
|
onRequestHideOptions: onRequestHideOptions
|
|
@@ -509,7 +509,7 @@ describe('<Select />', () => {
|
|
|
509
509
|
});
|
|
510
510
|
it('when escape is pressed', async () => {
|
|
511
511
|
const onRequestHideOptions = _vitest.vi.fn();
|
|
512
|
-
(0, _react2.render)(
|
|
512
|
+
(0, _react2.render)(/*#__PURE__*/_react.default.createElement(_index.default, {
|
|
513
513
|
renderLabel: "Choose an option",
|
|
514
514
|
isShowingOptions: true,
|
|
515
515
|
onRequestHideOptions: onRequestHideOptions
|
|
@@ -524,7 +524,7 @@ describe('<Select />', () => {
|
|
|
524
524
|
describe('should fire onRequestHighlightOption', () => {
|
|
525
525
|
it('when options are hovered', async () => {
|
|
526
526
|
const onRequestHighlightOption = _vitest.vi.fn();
|
|
527
|
-
(0, _react2.render)(
|
|
527
|
+
(0, _react2.render)(/*#__PURE__*/_react.default.createElement(_index.default, {
|
|
528
528
|
renderLabel: "Choose an option",
|
|
529
529
|
isShowingOptions: true,
|
|
530
530
|
onRequestHighlightOption: onRequestHighlightOption
|
|
@@ -547,7 +547,7 @@ describe('<Select />', () => {
|
|
|
547
547
|
describe('input callbacks', () => {
|
|
548
548
|
it('should fire onInputChange when input is typed in', async () => {
|
|
549
549
|
const onInputChange = _vitest.vi.fn();
|
|
550
|
-
(0, _react2.render)(
|
|
550
|
+
(0, _react2.render)(/*#__PURE__*/_react.default.createElement(_index.default, {
|
|
551
551
|
renderLabel: "Choose an option",
|
|
552
552
|
onInputChange: onInputChange
|
|
553
553
|
}, getOptions()));
|
|
@@ -559,7 +559,7 @@ describe('<Select />', () => {
|
|
|
559
559
|
});
|
|
560
560
|
it('should fire onFocus when input gains focus', async () => {
|
|
561
561
|
const onFocus = _vitest.vi.fn();
|
|
562
|
-
(0, _react2.render)(
|
|
562
|
+
(0, _react2.render)(/*#__PURE__*/_react.default.createElement(_index.default, {
|
|
563
563
|
renderLabel: "Choose an option",
|
|
564
564
|
onFocus: onFocus
|
|
565
565
|
}, getOptions()));
|