New hooks and components
- MultiSelect component allows you to create searchable select with option to customize labels and options
- Mark component – mark tag with theme styles
- use-move hook handles move behavior over any element, you can use it to build custom sliders, color pickers, etc.
- use-fullscreen hook allows to work with Fullscreen API (built by @yoroshikun)
- use-idle hook allows to detect if user does nothing on the page (built by @achmurali)
- use-shallow-effect hook – a drop in replacement for useEffect with shallow comparison instead of referential (built by @achmurali)
- use-logger hook will log given values each time component renders (built by @yoroshikun)
Other changes
- use-scroll-lock hook now support state managing inside hook (built by @yoroshikun)
- Select, NativeSelect and Autocomplete components now support data as an array of strings, e.g.,
['React', 'Angular', 'Vue']
(built by @cstrat) - Menu component now has new design and animations, support for labels in menu body and behavior customization (focus trap and close on scroll)
- Button component now supports
compact
prop – it reduces height and horizontal padding if applied - Modal component now supports shadow and padding customization via props
- Card component now has better spacing API with CardSection component instead of context styles for images and dividers
- Menu and RadioGroup components now works differently with Styles API – all styles and classNames should be added to root Menu/RadioGroup component instead of MenuItem/Radio
- @mantine/tag-picker package is deprecated in favor of Select and MultiSelect
- 4 new premade pop-* transitions were added to Transition component