MCPcopy Create free account
hub / github.com/adobe/react-spectrum / selectDate

Function selectDate

packages/react-stately/src/calendar/useCalendarState.ts:408–435  ·  view source on GitHub ↗
(date)

Source from the content-addressed store, hash-verified

406 }
407 },
408 selectDate(date) {
409 if (props.isDisabled || props.isReadOnly) {
410 return;
411 }
412
413 if (selectionMode === 'multiple' && date != null) {
414 let newDate = normalizeValue(date);
415 if (!newDate) {
416 return;
417 }
418
419 let baseValue: T[] = [];
420 if (Array.isArray(value)) {
421 baseValue = value;
422 } else if (value != null) {
423 baseValue = [value];
424 }
425
426 let index = baseValue.findIndex(value => isSameDay(value, newDate));
427 let newValue =
428 index >= 0
429 ? baseValue.slice(0, index).concat(baseValue.slice(index + 1))
430 : [...baseValue, newDate];
431 setControlledValue(newValue);
432 } else {
433 setValue(date);
434 }
435 },
436 isFocused,
437 setFocused,
438 isInvalid(date) {

Callers

nothing calls this directly

Calls 4

isSameDayFunction · 0.90
normalizeValueFunction · 0.85
sliceMethod · 0.80
setValueFunction · 0.70

Tested by

no test coverage detected