Releases: mantinedev/mantine
8.3.9
What's Changed
[@mantine/core]ColorInput: Fix incorrect action icon size (#8481)[@mantine/form]FixinsertListItemandreplaceListItemhandlers not being type safe (#8478)[@mantine/dates]DatePickerInput: FixplaceholderStyles API selector not working (#8405)[@mantine/core]ColorInput: Fix incorrect font-size ifsizeprop not set explicitly (#8472)[@mantine/emotion]AddmergeSxutility function (#8471)[@mantine/core]ActionIcon: Fix incorrect disabled state background-color for gradient variant[@mantine/modals]Fix breaking changes accidentally introduced in the previous patch (#8476)[@mantine/core]Combobox: AddwithAlignedLabelsprop support to offset selected check icon in the dropdown options (#8391)[@mantine/core]Badge: Fixcircleprop not working whenradiusprop is set explicitly (#8466)[@mantine/core]Checkbox: Fix incorrectindeterminatestate calculation (#8460)[@mantine/core]Radio: Fix Radio.Group switching from uncontrolled to controlled mode when value is explicitly set (#8453)
New Contributors
- @semimikoh made their first contribution in #8466
- @oguzgelal made their first contribution in #8471
- @Copilot made their first contribution in #8478
Full Changelog: 8.3.8...8.3.9
8.3.8
What's Changed
[@mantine/modals]Improve types of context modals (#8439)[@mantine/core]Combobox: Fix keyboard interactions not working when used in shadow DOM (#8438)[@mantine/core]NumberInput: Fix,decimal separator not being converted to.when entering value from mobile keyboard[@mantine/core]NumberInput: Fix incorrect keyboard displayed on iOS 26[@mantine/charts]Add cellProps prop support to DonutChart and PieChart (#8444)[@mantine/core]Alert: Allow overridingroleattribute (#8447)[@mantine/core]Menu: AddopenDelayprop support to Menu.Sub component (#8437)
New Contributors
- @ScotchAndSoda made their first contribution in #8444
- @justinwhall made their first contribution in #8438
Full Changelog: 8.3.7...8.3.8
8.3.7
What's Changed
[@mantine/modals]AddConfirmModalPropstype exports (#8414)[@mantine/core]AppShell: Fix unexpected Header transition when scrollbar becomes hidden via scroll lock (#8420)[@mantine/core]Adddisabledprop for Radio.Group, Checkbox.Group and Switch.Group (#8396)[@mantine/core]Fix missing sub Menu components exports (#8419)[@mantine/tiptap]Fix editor control being overridden by customonClickhandler (#8421)[@mantine/core]PasswordInput: Addaria-pressedattribute to the visibility toggle (#8425)[@mantine/tiptap]Fix bubble menu being overlapped by the toolbar (#8416)[@mantine/core]Chip: RemoveiconWrapperif icon is exlicitly disabled[@mantine/charts]AddlabelFormattersupport to the default tooltip (#8404)
New Contributors
- @Visualizeit made their first contribution in #8419
- @Spichkenss made their first contribution in #8407
- @schummar made their first contribution in #8420
Full Changelog: 8.3.6...8.3.7
8.3.6
What's Changed
[@mantine/charts]Add options to setcurveTypeper series in LineChart and AreaChart components (#8403)[@mantine/charts]Heatmap: Fix dates range being affected by the user timezone (#8371)[@mantine/core]Chip: Allow disabling icon by settingicon={null}(#8382)[@mantine/core]List: Fix unexpected padding withlistStyleType="none"(#8393)[@mantine/dates]TimePicker: Add option to change placeholders (#8387)[@mantine/core]Checkbox: Fix data-indeterminate not being set correctly (#8385)[@mantine/dates]TimePicker: Fix time being clamped incorrectly when onlyminormaxdefined[@mantine/core]NumberInput: Fix zero value represented as string being transformed to empty string on blur[@mantine/core]Chip: Fix incorrect size calculations forsize="xs"(#8367)
New Contributors
- @LaExploradora made their first contribution in #8387
- @drewhoener made their first contribution in #8403
Full Changelog: 8.3.5...8.3.6
8.3.5
What's Changed
[@mantine/code-highlight]Add option to load custom shiki themes (#8356)[@mantine/form]Export more types (#8357)[@mantine/hooks]use-local-storage: Fix value not resetting to the default value when value is cleared from the local storage (#8361)[@mantine/core]Checkbox: Fix incorrect data-indeterminate attribute removal on state change (#8363)[@mantine/core]Alert: Fix invalidaria-describedbyandarialabelled-byif title or children props are not used (#8345)
New Contributors
- @chlee1001 made their first contribution in #8363
- @snelsi made their first contribution in #8361
- @keshane made their first contribution in #8357
- @onurcancamci made their first contribution in #8356
Full Changelog: 8.3.4...8.3.5
8.3.4
What's Changed
[@mantine/core]Select: Allow overridingrightSectionwithnull(#8328)[@mantine/dates]Calendar: Fix incorrect props types forhasNextLevel(#8344)[@mantine/core]Transition: Fix some animations being blurry (#8070, #8324)[@mantine/dates]TimePicker: Fix custom amPmLabels being truncated in input and dropdown (#8336)[@mantine/dates]DatePicker: Add missingmultiplehandling toDatePickerPresettype (#8341)
Full Changelog: 8.3.3...8.3.4
8.3.3
What's Changed
[@mantine/core]Checkbox: FixiconColorprop not working as intended in some cases (#8271)[@mantine/spotlight]AddscrollareaPropsto pass props down to the actions list wrapper (#8300)[@mantine/core]Tabs: Fixaria-controlsnot being overriden by...others(#8248)[@mantine/dates]DateInput: Fix invalid datevaluecrashing component (#8290)[@mantine/hooks]use-did-update: Fix hook not working in react strict mode (#8306)[@mantine/core]Popover: Fix excessive dropdown position recalculations (#8308)[@mantine/core]AppShell: Fix performance issues on first render (#8287)
New Contributors
- @macaroni10y made their first contribution in #8308
- @barkinkaradeniz-tr made their first contribution in #8306
- @sjroesink made their first contribution in #8290
Full Changelog: 8.3.2...8.3.3
8.3.2
What's Changed
[@mantine/dates]FixgetDayPropsnot including types fordata-*attributes (#8275)[@mantine/date]DateInput: FixallowDeselectnot allowing to clear the input value withBackspacekey (#8229)[@mantine/date]DateInput: FixallowDeselectnot allowing to clear the input value withBackspacekey[@mantine/charts]Heatmap: Fix months displaying as splitted even ifsplitMonthsis not set[@mantine/hooks]use-click-outside: Pass event object as an argument to the callback function (#8282)[@mantine/core]NavLink: Fix passedonClick/onKeyDownpreventing expand/collapse of child nodes (#8294)[@mantine/hooks]use-window-scroll: Limit number of state updates withrequestAnimationFrame(#8287)[@mantine/dates]TimePicker: Fix page scrolling to the top on keyboard navigation (#8237)[@mantine/core]Menu: Add missingonChangetype toMenu.Sub(#8292)[@mantine/core]List: Fix nested list items overflowing parent list container (#8269)[@mantine/core]Input: Fix alignment of right section with clear button (#8254)[@mantine/form]Fixnodenextresolutions (#8260)[@mantine/spotlight]Improve group label encoding logic (#8264)
New Contributors
- @ahmedsemih made their first contribution in #8266
- @terrydkim made their first contribution in #8269
- @samuelkarani made their first contribution in #8176
- @narminmolina made their first contribution in #8291
- @wo-o29 made their first contribution in #8287
- @Redbird10 made their first contribution in #8294
- @ThoDon made their first contribution in #8282
Full Changelog: 8.3.1...8.3.2
8.3.1
What's new
[@mantine/hooks]use-scroll-spy: Fix scroll events not being reassigned whenscrollHostchanges (#8251)[@mantine/modals]UpdateupdateModalto include types for confirm modal[@mantine/core]Tabs: Allow overriding aria attributes with...others[@mantine/core]Select: Fix clear button overlaying selected option (#8249)[@mantine/core]Combobox: UpdatefocusTargethandler to correctly handle missing DOM node (#8185)[@mantine/core]ColorPicker: Fix unexpected margin-top (#8247)[@mantine/core]Allow specifying generic component in default props in the theme object (#8188)[@mantine/form]Fix incorrect type ofmatchesFieldvalidator (#8201)[@mantine/modals]Fixdata-*attributes triggering type error (#8217)[@mantine/dates]DateInput: FixallowDeselectprop not working (#8229)[@mantine/charts]Fix long tooltip names overflowing on the series color swatch in the tooltip (#8230)
8.3.0 π₯
View changelog with demos on mantine.dev website
MiniCalendar component
New MiniCalendar component:
import { useState } from 'react';
import { MiniCalendar } from '@mantine/dates';
function Demo() {
const [value, onChange] = useState<string | null>('2025-04-15');
return <MiniCalendar value={value} onChange={onChange} numberOfDays={6} />;
}Progress vertical orientation
Progress now supports vertical orientation:
import { Progress } from '@mantine/core';
function Demo() {
return (
<Group>
<Progress value={80} orientation="vertical" h={200} />
<Progress value={60} color="orange" size="xl" orientation="vertical" h={200} animated />
<Progress.Root size="xl" autoContrast orientation="vertical" h={200}>
<Progress.Section value={40} color="lime.4">
<Progress.Label>Documents</Progress.Label>
</Progress.Section>
<Progress.Section value={20} color="yellow.4">
<Progress.Label>Apps</Progress.Label>
</Progress.Section>
<Progress.Section value={20} color="cyan.7">
<Progress.Label>Other</Progress.Label>
</Progress.Section>
</Progress.Root>
</Group>
);
}Heatmap splitMonths
Heatmap now supports splitMonths prop to visually separate months with a spacer column and render only days that belong to each month in its columns.
import { Heatmap } from '@mantine/charts';
import { data } from './data';
function Demo() {
return (
<Heatmap
data={data}
startDate="2024-02-16"
endDate="2025-02-16"
withMonthLabels
splitMonths
/>
);
}Improved clearable prop handling
Select, MultiSelect, and other components with
clearable prop now allow displaying the clear button next to the right section:
import { Select } from '@mantine/core';
function Demo() {
return (
<Select
label="Your favorite library"
placeholder="Pick value"
data={['React', 'Angular', 'Vue', 'Svelte']}
defaultValue="React"
clearable
/>
);
}Tiptap 3 support
@mantine/tiptap now supports Tiptap 3. It is
recommended to update all @tiptap/* packages to version 3.2.0 or later.
Your application might require some modifications related to Tiptap 3.
If you want to update your application to TipTap 3, follow
migration guide.
LLMs.txt
You can now use LLMs.txt file with Cursor and other IDEs.
The file is automatically updated with each release and includes
every demo and documentation page from mantine.dev. It is about 1.8mb.
You can find the latest version of LLMs.txt here
and further documentation here.
Other changes
- MultiSelect now supports
clearSearchOnChangeprop to clear search input when an item is selected. - Reordering list items example now uses dnd-kit instead of
@hello-pangea/dnd - TimePicker now supports
reverseTimeControlsListprop to reverse the order of time controls in the dropdown. Use this option if you want the order of controls to match keyboard controls (up and down arrow) direction. - DirectionProvider now automatically subscribes to the
dirattribute mutations of the root element (usually<html />) and updates internal state automatically. - Select and MultiSelect now retain references to selected options that are no longer present in
dataprop. - Active color swatch now has check icon in ColorPicker and ColorInput components.