v1.3.0
1.3.0 (2021-08-17)
Our first minor release since v1.2.0 includes two new components, updated documentation, and a variety of fixes and improvements. A complete list of changes is listed below, but here are the highlights:
New Components
- Badge brings attention to information about a related component.
- Tag allows you to interact with or dismiss a status or classification.
Feature Enhancements and Improvements
This release also has some exciting improvements and updates.
- Text Field now supports multiline input! This update allows the user to enter multiple lines of text in one edit box. Automatic resizing was also added as part of this change to ensure that the Text Field continues to grow as the user inputs text.
- Tooltips provide a more user-friendly experience with added transitions, and the ability to set a delay before showing or hiding the Tooltip. By default, tooltips have a
400ms
delay before opening and a200ms
delay before closing, but these can be fully configured. - We've made significant improvements to some of the internals of our React implementation. These changes are the first step to decoupling our more complex components in order to give developers greater control over the composition of their UI.
- Our component for positioning elements relative to other elements has been completely rewritten. This component, Popper, is now used by our Tooltips and Popover, and can be used directly by developers.
- A new Listbox component allows the user to select one or more items from a list of choices. It will be used in an upcoming Combobox component, as well as a Dropdown update.
- Server-side renders should no longer see errors about
useLayoutEffect
.
Complete list of changes in 1.3.0 (2021-08-17)
⚡️ Performance
- listbox: memoize the options map (d0655e2)
🐛 Bug Fixes
- button: pass ARIA labelling attributes to button (af7b12c)
- core: remove default focus z-index (2ccae23)
- disclosure: properly render flex summary on Safari [NDS-93] (#187) (1fd081a)
- replace React.useLayoutEffect with isomorphic useLayoutEffect (12256a8)
- select-hook: use the correct form target (a2b432b), closes /github.com/DefinitelyTyped/DefinitelyTyped/issues/11508#issuecomment-256045682
✨ Features
- button: set a default tooltip show delay when iconOnly (877f07d)
- hooks: add initial stepper hook (90bdbed)
- hooks: add roving tabindex hook (a5a44e8)
- initial badge implementation (97a5e23)
- listbox: add default listbox and option styling (aae5942)
- listbox: initial standalone listbox (f4450b4)
- motion: add fade transition (71124e5)
- popper: add show delay (ead1e5d)
- react: add children utilities (ea148c6)
- tag: initial tag implementation (2590936)
- text-field: add multiline and auto resizing (38b1c53)
- tooltip: set a default show delay of 400ms (7365cff)
📝 Documentation
- button: add intro to react api (00905d4)
- initial badge and tag documentation (0aa70ef)
- link: update component docs with new react API (b4b6e26)
- listbox: add custom marker story (a835c4d)
- popover: add distance knob to minimal story (2b3aeb1)
- react-providers: add initial docs on context providers (1b70c3d)
- storybook: add initial listbox stories (ff00e6e)
- text-field: update section on multiline (bde00ac)
- tooltip: add showDelay knob to applicable stories (d6b9848)
- website: initial content guidelines (acb0f42)
♻️ Refactor
- button: destructure props in one place (e237e72)
- core: black and white are system tokens (0ceb830)
- core: remove default selection styling (5af2a09)
- core: undeclared properties cannot be null (ed0426d)
- core: use data-color-scheme for theming (0bda516)
- core: use new sass div syntax (219ee4d)
- error if onChange triggers without a checked attribute (d18e030)
- hooks: rewrite the useSelect hook (6b87075)
- import TooltipCoreProps from the new types file (aa287f8)
- popover: use "distance" for offset token (a221bf4)
- popover: use new Popper component (6077554)
- popover: use updated popper tokens (f444f48)
- popper: add new Popper implementation (ebdece0)
- popper: promote popper sass to real component (74d2f46)
- reference can be an SVGElement (3d0a6b7)
- remove Element check (0e10fc0)
- text-field: update email regex (431ce8d), closes #152
- tooltip: use "distance" for offset token (f3ccc6a)
- tooltip: use new Popper component (4aa08f6)
- tooltip: use updated popper tokens (b21f868)
- use type checking instead of assertion (f4a7dde)
- website: re-swizzle NavBar (4df05d5)
- website: remove unused var (a8c3e6d)
- website: use nds color scheme switch in navbar (c439a1f)