August 18, 2020 Release
This release includes a few new components, some new features, many bugfixes, and improvements. A huge thanks to all of the amazing contributors to this release. A special shout out to @tomsontom, @chungwu, and @so99ynoodles for contributing entire new components, including ToggleButton, Slider, and Tabs! 😍
New components#
- ToggleButton - @tomsontom - PR
- ToggleButton component in
@react-spectrum/button
- useToggleButton hook in
@react-aria/button
- ToggleButton component in
- Tooltips - @snowystinger - PR
@react-spectrum/tooltip
(alpha)@react-aria/tooltip
(alpha)@react-stately/tooltip
(alpha)
- Slider - @chungwu - PR
@react-aria/slider
(alpha)@react-stately/slider
(alpha)
- Tabs - @so99ynoodles - PR
@react-spectrum/tabs
(alpha)@react-aria/tabs
(alpha)@react-stately/tabs
(alpha)
Note: Tooltips, Slider, and Tabs are available as alpha releases today, and will receive additional updates, documentation, and bugfixes before their stable release. Please feel free to test them out and report any issues you find.
New features#
aria-modal-polyfill
now handles modal behavior for popovers, trays, and other types of overlays - @snowystinger - PR- Buttons that are link elements now support the
rel
attribute - @ronderksen - PR useTextField
supports aninputElementType
prop to allow for<textarea>
- @maksimsemenov - PRisKeyboardDismissDisabled
was added as a prop touseOverlay
andDialogTrigger
- @amy-lei - PR- Clicking the label in
useSelect
andPicker
now focuses the select element - @gavinhenderson - PR useSelectableCollection
anduseSelectableList
and now supportselectOnFocus
anddisallowTypeAhead
options - @LFDanLu - PRuseSelectableItem
anduseOption
now support ashouldUseVirtualFocus
option- @LFDanLu - PR- Add support for HTML form props to
Form
component - @snowystinger - PR - Added
useVisuallyHidden
hook to@react-aria/visually-hidden
- @devongovett - PR - Added
useHiddenSelect
hook to@react-aria/select
- @devongovett - PR - Added
shouldCloseOnInteractOutside
function touseOverlay
options - @chungwu - PR
Bug fixes#
- Switched from the
classnames
to smaller/fasterclsx
library - @cedeber - PR - Fix incorrect overlay position when flip is enabled and positive offset is given - @raon0211 - PR
useTypeSelect
now matches spaces rather than selecting the option - @solimant - PR- Fix behavior of
maxHeight
andmaxWidth
props inListBox
- @devongovett - PR - Fix resizing of quiet
TextArea
- @zidian257 - PR Breadcrumbs
now usesResizeObserver
instead of listening to windowresize
events - @Anenth - PRuseListState
anduseSingleSelectListState
now accept afilter
option - @LFDanLu - PR- Fix font family in
TextField
- @tomsontom - PR - Fix focusing dialogs when in an iframe on Safari - @devongovett - PR
- Wait for CSS transitions to finish before focusing element in Tray to fix VoiceOver - @devongovett - PR
- Use inline styles instead of CSS import in
VisuallyHidden
- @devongovett - PR - Fix cache invalidation issue in
ListBox
- @devongovett - PR - Fix repeating keyboard events triggering menu item after opening menu - @devongovett - PR
Docs#
- Fix link in PR template - @susickypavel - PR
- Add missing ref to
useSelect
example - @tristandubbeld - PR - Fix docs for
onCompositionStart
andonCompositionEnd
- @amy-lei - PR - Fix broken link in contributing docs - @markhicken - PR
- Fix ActionGroup examples in docs - @snowystinger - PR
- Add missing import to
useOverlayTrigger
- @anuraghazra - PR
Released packages#
- @adobe/react-spectrum@3.2.0
- @react-aria/aria-modal-polyfill@3.2.0
- @react-aria/button@3.2.0
- @react-aria/dialog@3.1.1
- @react-aria/focus@3.2.0
- @react-aria/interactions@3.2.0
- @react-aria/listbox@3.2.0
- @react-aria/menu@3.1.1
- @react-aria/overlays@3.2.0
- @react-aria/select@3.2.0
- @react-aria/selection@3.2.0
- @react-aria/slider@3.0.0-alpha.0
- @react-aria/table@3.0.0-alpha.6
- @react-aria/tabs@3.0.0-alpha.0
- @react-aria/textfield@3.2.0
- @react-aria/tooltip@3.0.0-alpha.0
- @react-aria/utils@3.2.0
- @react-aria/virtualizer@3.1.1
- @react-aria/visually-hidden@3.2.0
- @react-spectrum/breadcrumbs@3.1.1
- @react-spectrum/button@3.2.0
- @react-spectrum/dialog@3.2.0
- @react-spectrum/form@3.2.0
- @react-spectrum/label@3.2.0
- @react-spectrum/layout@3.1.1
- @react-spectrum/listbox@3.2.0
- @react-spectrum/overlays@3.2.0
- @react-spectrum/picker@3.1.1
- @react-spectrum/provider@3.1.1
- @react-spectrum/table@3.0.0-alpha.6
- @react-spectrum/tabs@3.0.0-alpha.0
- @react-spectrum/textfield@3.1.1
- @react-spectrum/tooltip@3.0.0-alpha.0
- @react-spectrum/utils@3.2.0
- @react-stately/collections@3.2.0
- @react-stately/layout@3.1.1
- @react-stately/list@3.2.0
- @react-stately/menu@3.2.0
- @react-stately/selection@3.2.0
- @react-stately/slider@3.0.0-alpha.0
- @react-stately/toggle@3.2.0
- @react-stately/tooltip@3.0.0-alpha.0
- @react-stately/tree@3.1.1
- @react-types/button@3.2.0
- @react-types/dialog@3.2.0
- @react-types/form@3.2.0
- @react-types/label@3.2.0
- @react-types/overlays@3.2.0
- @react-types/shared@3.2.0
- @react-types/slider@3.0.0-alpha.0
- @react-types/tabs@3.0.0-alpha.0
- @react-types/textfield@3.2.0
- @react-types/tooltip@3.0.0-alpha.0