v1.4.0

This release brings long awaited drag and drop support to ListView, TableView, and TreeView! TableView now also supports highlight selection and a new TableFooter component. Form components such as ComboBox and TextField now allow custom prefixes, and the new LabeledValue can be used to display non-editable values. In addition, description and error messages can be configured for Checkbox, Radio, and Switch. Last but not least, Calendar now supports multiple date selection.

As always, thank you to all our contributors!

Test utils RC

We are pleased to announce that our test utils have advanced to RC! Alongside improvements such as RTL support and handling grid navigation, the API for the testers has been updated for consistency and thus various breaking changes have been made. To migrate from beta to RC, run the test-utils-rc-update codemod via:

npx @react-spectrum/codemods test-utils-rc-update --path /path/to/tests

Changelog

General Changes

Button

  • Update Button text color to improve contrast when static - @snowystinger - PR

Calendar

  • Add support for selectionMode="multiple" in Calendar - @devongovett - PR
  • Adds anchorDate as an argument to isDateUnavailable in RangeCalendar to let users change available dates based on the first date the user picks - @devongovett - PR

Checkbox

ColorField

  • Add prefix prop for prepending a non-interactive element inside the field - @snowystinger - PR, PR

Collections

  • Fix handling of falsy keys - @reidbarber - PR
  • Allow collection items to be non-object values such as strings and numbers - @devongovett - PR

ComboBox

  • Adjust ComboBox item transition to prevent a background color flash when hovering between items quickly - @reidbarber - PR
  • Add prefix prop for prepending a non-interactive element inside the field - @snowystinger - PR, PR

LabeledValue

ListView

  • Add drag and drop support - @LFDanLu - PR, PR
  • Ensure ListView renders its divider and borders with the proper colors in HCM - @LFDanLu - PR
  • Adjust Menu item transition to prevent a background color flash when hovering between items quickly - @reidbarber - PR
  • Add hold affordance icon for longPress MenuTrigger variants with ActionButton and ToggleButton - @LFDanLu - PR

NumberField

  • Add prefix prop for prepending a non-interactive element inside the field - @snowystinger - PR, PR, PR

Picker

  • Adjust Picker item transition to prevent a background color flash when hovering between items quickly - @reidbarber - PR

RadioGroup

Switch

TableView

  • Add TableFooter component - @devongovett - PR
  • Add highlight selection style to TableView - @yihuiliao - PR
  • Add drag and drop support - @LFDanLu - PR, PR
  • Ensure TableView renders its divider and borders with the proper colors in HCM - @LFDanLu - PR

TextField

  • Add prefix prop for prepending a non-interactive element inside the field - @snowystinger - PR, PR, PR, PR

TreeView