June 3, 2019
A big thanks to the 30 contributors who made this release possible!
Here are some highlights ✨:
- 🐛 A second stability release after the release of v4.0.0.
- 💄 Add a new size="small" prop to the Chip component (#15751) @mbrookes
- 🐛 Fix three IE 11 issues (#15921, #15952, #15967) @eps1lon, @rupert-ong, @ryancogswell
- And many more 📚 improvements.
@material-ui/core@v4.0.2
- [Box] Fix prop-types and TypeScript warnings (#15884) @eps1lon
- [Breadcrumbs] Add theme props and override TypeScript definitions (#15950) @chrislambe
- [Chip] Add size prop for small option (#15751) @mbrookes
- [Container] Document the classes API (#15919) @divyanshutomar
- [Dialog] Improve scroll=body CSS logic (#15896) @DominikSerafin
- [Link] Better support of component="button" (#15863) @ianschmitz
- [Popover] Convert to function component (#15623) @joshwooding
- [Portal] Synchronously call onRendered (#15943) @Arlevoy
- [Radio] Fix dot misalignment in IE11 (#15952) @rupert-ong
- [theme] Return default value for spacing when no args provided (#15891) @mbrookes
- [TrapFocus] Fix error restoring focus when activeElement is null (#15967) @ryancogswell
- [core] Export useMediaQuery & useScrollTrigger in index.js (#15958) @adeelibr
- [core] Migrate extend ButtonBaseProps typings (#15869) @joshwooding
@material-ui/styles@v4.0.2
- [styles] Remove warning when component with no displayName is provided (#15913) @eps1lon
- [styles] Fix createStyles for TypeScript v3.5 (#15990) @merceyz
@material-ui/system@v4.0.2
@material-ui/lab@v4.0.0-alpha.15
@material-ui/codemod@v4.0.2
Docs
- [docs] Add React + Material-UI + Firebase as an example project (#15915) @Phoqe
- [docs] Batch of fixes (#15996) @oliviertassinari
- [docs] Fix a typo within pricing page layout example (#15978) @sdornan
- [docs] Fix broken JSS links (#15972) @timkindberg
- [docs] Fix most lighthouse a11y issues in input demos (#15780) @eps1lon
- [docs] Fix typo (#15975) @rick-software
- [docs] Fix wrong variable name (styles => useStyles) (#15908) @hiromoon
- [docs] Icon TypeScript demos (#15965) @goldins
- [docs] Improve dark mode (#15944) @eps1lon
- [docs] Improve interactive performance (#15874) @eps1lon
- [docs] Improve lighthouse a11y score in demos (#15901) @eps1lon
- [docs] Mention Virtuoso as a possible virtualization integration (#15934) @petyosi
- [docs] Migrate Grid demos to hooks (#15970) @merceyz
- [docs] Migrate Hidden demos to hooks (#15989) @merceyz
- [docs] SignIn -> SignUp typo (#15966) @Hatko
- [docs] Update FUNDING.yml with Tidelift string (#15981) @jeffstern
- [docs] Update the translations (#15991) @mbrookes
- [docs] v4 Migration doc slight clean up (#15886) @mlenser
- [example] Fix ssr example to work on Windows (#15949) @petervaldesii
- [example] Fix theme palette value (#15977) @vaidehi27
- [docs] Fix syntax error in v3 migration guide (#16010) @zhuangya
- [docs] Use immediate export when there is no HOC (#16005) @merceyz
Core
- [core] Add dependency react>=16.3.0 requested by @emotion/core and react-js (#15982) @marco-silva0000
- [core] Fix IE 11 crashes related to Object.assign (#15921) @eps1lon
- [core] Minor fixes (#15875) @joshwooding
- [core] Remove export of internal test-utils (#15895) @eps1lon
- [core] Update babel-plugin-optimize-clsx (#15894) @merceyz
- [core] Upgrade rollup and related plugins (#15939) @merceyz
- [ci] Move static tests into separate job (#15890) @eps1lon
- [core] Upgrade dependencies with esm support (#16000) @TrySound
May 27, 2019
A big thanks to the 23 contributors who made this release possible!
Here are some highlights ✨:
- 🐛 A stability release after the release of v4.0.0.
- 🤖 A new codemod to migrate the theme.spacing.unit API (#15782) @joshwooding
- 🐛 Fix IE 11 crash (#15856) @aditya1906
- 📚 Clean up the documentation after the next -> master migration
@material-ui/core@v4.0.1
- [Buttons] Consolidate ripple props type declarations (#15843) @lychyi
- [IconButton] Add disable ripple props (#15864) @lychyi
- [ListItemText] Update classes type definitions (#15822) @davjo664
- [Tabs] Hide scrollbar on MacOS (#15762) @Umerbhat
- [Tooltip] Fix alignment issues (#15811) @pkmnct
- [styles] Add MuiLink to ComponentsPropsList (#15814) @stuartgrigg
@material-ui/icons@v4.0.1
- [icons] Fix the TypeScript definition of createSvgIcon (#15861) @alexkirsz
@material-ui/codemod@v4.0.1
- [codemod] Create spacing api codemod (#15782) @joshwooding
@material-ui/styles@v4.0.1
- [styles] Fix Symbol() usage in IE11 (#15856) @aditya1906
@material-ui/lab@v4.0.0-alpha.14
Docs
- [docs] Add SECURITY.md (#15804) @oliviertassinari
- [docs] Add Transitions header in the dialogs page (#15847) @prasook-jain
- [docs] Add extendedFab migration (#15866) @chanand
- [docs] Add missing Breadcrumbs CSS API (#15813) @joshwooding
- [docs] Correctly fix the Google Ad issue @oliviertassinari
- [docs] Fix Boolan -> Boolean (#15880) @jaironalves
- [docs] Fix Link import (#15871) @bennyn
- [docs] Fix deploy command @oliviertassinari
- [docs] Fix empty v4 blog post link (#15831) @drac
- [docs] Fix typo in styles advanced guide (#15844) @mgvparas
- [docs] Follow the documentation, my bad @oliviertassinari
- [docs] Global at rule is called font-face (#15865) @aditya1906
- [docs] Hide the Ad fallback to Google (#15815) @oliviertassinari
- [docs] Improve SEO structure @oliviertassinari
- [docs] Improve lighthouse performance score (#15758) @eps1lon
- [docs] Let's take our time, we don't need to rush v5 (#15826) @oliviertassinari
- [docs] Minor fixes (#15836) @mbrookes
- [docs] Minor improvements to codesandbox demos and examples (#15857) @eps1lon
- [docs] Move links to the master branch (#15830) @oliviertassinari
- [docs] Redirect next.material-ui.com to material-ui.com (#15838) @mbrookes
- [docs] Update Installation.md for v4.0.0 (#15818) @hinsxd
- [docs] Update the translations (#15807) @mbrookes
- [docs] Update the v4 blog post (#15862) @mbrookes
- [docs] Update translations (#15841) @mbrookes
- [docs] Use makeStyles from core in layout examples (#15845) @divyanshutomar
- [docs] Fix typo in README (#15817) @ammaristotle
- [example] Update gatsby-plugin-material-ui dependency (#15810) @hupe1980
Core
- [core] Add cross-env to docs:size-why (#15816) @merceyz
- [core] Change the top package name so we get the number of dependents packages @oliviertassinari
- [core] Fix not appearing in github used/dependents (#15859) @eps1lon
- [core] Prepare focus visible polyfill in ref phase (#15851) @eps1lon
- [core] Remove babel-node for server/shared modules (#15764) @cvanem
- [core] Remove dependency on workspace (#15849) @eps1lon
- Create FUNDING.yml @oliviertassinari
- [test] Remove FontAwesome from screenshot tests (#15853) @eps1lon
May 23, 2019
Some statistics with v4 compared to the release of v1 one year ago:
- From 300k downloads/month to 2M downloads/month on npm
- From 90k users/month to 350k users/month on the documentation
@material-ui/lab@v4.0.0-alpha.13
- [ToggleButtonGroup] Added missing size prop to type declarations (#15785) @CoolCyberBrain
@material-ui/system@v4.0.0
- [system] Add missing TypeScript types for flexbox and shadows (#15781) @willbamford
Docs
- [docs] Add remaining TypeScript component demos (#15755) @eps1lon
- [docs] Fix Nav components subsections to be open by default (#15749) @mbrookes
- [docs] Fix some gramma in testing doc (#15776) @DDDDDanica
- [docs] Fix some grammar in right to left guide (#15789) @DDDDDanica
- [docs] Fix typo (#15792) @retyui
- [docs] Material-UI v4 is out (#15766) @oliviertassinari
- [docs] Reference the article with it's full name in icon doc (#15796) @DDDDDanica
- [docs] Revert the marked change (#15797) @oliviertassinari
Core
- [core] Change cssutils responsiveProperty unit type (#15783) @eddiemonge
May 20, 2019
A big thanks to the 17 contributors who made this release possible!
We have done the very last breaking changes (nothing significant). The release of v4 is imminent, stay tuned!
@material-ui/core@v4.0.0-rc.0
Breaking changes
-
[ClickAwayListener] Fix scrollbar interaction (#15743) @Umerbhat
-<ClickAwayListener /> +<ClickAwayListener mouseEvent="onMouseUp" />
We recommend the default value since
mouseup
will be triggered by clicks on scrollbars. -
[Tabs] Hide scrollbar buttons when possible (#15676) @whitneymarkov
-<Tabs /> +<Tabs scrollButtons="desktop" />
-
[Tabs] Remove deprecated fullWidth and scrollable props (#15670) @mbrookes
-<Tabs fullWidth scrollable /> +<Tabs variant="scrollable" />
Changes
- [ButtonBase] Convert to function component (#15716) @eps1lon
- [CssBaseline] Fix wrong default font weight (#15747) @oliviertassinari
- [InputBase] Convert to function component (#15446) @adeelibr
- [Popups] Allow Element as anchor el (#15707) @eps1lon
- [Portal] Fix disablePortal not working (#15701) @imdaveead
- [Radio] Animate the check state change (#15671) @imdaveead
- [Tabs] Remove deprecated fullWidth and scrollable props (#15670) @mbrookes
- [Tabs] Update rendering of auto-scrollable buttons (#15676) @whitneymarkov
- [Tabs] Update onChange docs to match types (#15672) @jharrilim
- [ToggleButtonGroup] Add size prop (#15644) @isaacblinder
@material-ui/icons@v4.0.0-rc.0
@material-ui/lab@v4.0.0-alpha.12
Docs
- [docs] Add showcase criteria (#15686) @cvanem
- [docs] Document if a component is StrictMode compatible (#15718) @eps1lon
- [docs] Fix "enebles" typo on Palette page (#15719) @sbward
- [docs] Fix a typo (#15709) @designorant
- [docs] Fix Algolia top level duplication (#15738) @oliviertassinari
- [docs] Fix typo and formatting in app-bar demo (#15723) @flying-sheep
- [docs] Overhaul bundle size guide (#15739) @eps1lon
- [docs] Persist the side nav scroll (#15704) @oliviertassinari
- [docs] Port blog to next (#15711) @mbrookes
- [docs] Simplify /related-projects (#15702) @pinturic
- [docs] Use pickers from material-ui namespace (#15691) @eps1lon
- [docs] Warn about ButtonBase#disableRipple and a11y (#15740) @eps1lon
- [docs] Add ClickAwayListener breaking change (#15753) @eps1lon
- [docs] Core a11y improvements (#15748) @eps1lon
- [docs] Fix some apostrophe in TypeScript doc (#15757) @DDDDDanica
Core
May 13, 2019
A big thanks to the 13 contributors who made this release possible!
This is a stability release preparing v4.
@material-ui/core@v4.0.0-beta.2
- [Box] Add export to barrel (index.js) (#15602) @ljvanschie
- [ButtonBase] Extend error message for invalid
component
prop (#15627) @eps1lon - [Select] Add to docs that options must be direct descendants (#15619) @bh1505
- [SwipeableDrawer] Remove internal accesses in the tests (#15469) @joshwooding
- [Tabs] scrollButtons have an empty button error in compliance tools (#15646) @elnikolinho
- [useScrollTrigger] Enhance trigger, improve tests (#15634) @cvanem
@material-ui/styles@v4.0.0-beta.2
- [styles] Fix warning false positive (#15595) @oliviertassinari
- [styles] Keep MuiThemeProvider for backward compatibility (#15650) @oliviertassinari
@material-ui/system@v4.0.0-beta.2
@material-ui/lab@v4.0.0-alpha.11
- [SpeedDial] Fix classname override logic (#15652) @janhesters
Docs
- [docs] Add custom default props handler (#15473) @eps1lon
- [docs] Add next page link (#15656) @mbrookes
- [docs] Add QuintoAndar in the showcase (#15622) @oliviertassinari
- [docs] Fix dead David DM badges in README (#15667) @mbrookes
- [docs] Fix few grammar issues (#15643) @DDDDDanica
- [docs] Fix plural spelling (#15613) @cvanem
- [docs] Fix some dev-only warnings (#15640) @eps1lon
- [docs] Fix the adapting makeStyles based on props example syntax (#15621) @devarsh
- [docs] Improve installation instructions for running the docs locally (#15608) @andreawaxman
- [docs] Improve v3 migration guide (#15615) @eps1lon
- [docs] Link edit page button to github editor (#15659) @mbrookes
- [docs] Miscellaneous polish (#15665) @eps1lon
- [docs] Reorganize the structure (#15603) @mbrookes
- [docs] Update the translations (#15653) @mbrookes
Core
- [core] Drop partial chrome 41 support (#15630) @eps1lon
- [core] Optimize clsx usage (#15589) @merceyz
- [core] Remove react-event-listener from function components (#15633) @joshwooding
- [core] Upgrade the dev dependencies (#15590) @oliviertassinari
May 5, 2019
A big thanks to the 19 contributors who made this release possible!
Here are some highlights ✨:
- 🐛 Many bug fixes based on people migrating from v3 to v4.
- 💄 Responsive font sizes (#14573) @n-batalha.
- 💄 AppBar scroll behavior (#15522) @cvanem.
- ♿️ Better Button and Tooltip keyboard behavior (#15398, #15484) @eps1lon.
- And many more 🔍 TypeScript fixes and 📚 documentation improvements.
@material-ui/core@v4.0.0-beta.1
Bug fixes / Breaking changes
- [ListItem][expansionpanel] Follow the style convention (#15534) @oliviertassinari Fix a CSS override issue.
- [Tooltip] Display only on keyboard focus (#15398) @eps1lon Fix an accessibility issue.
Changes
- [AppBar] Hide and Elevate on Scroll (#15522) @cvanem
- [Box] Add to core index TypeScript definitions (#15576) @ljvanschie
- [ButtonBase] Use fork of focus-visible polyfill (#15484) @eps1lon
- [Menu] Add 'variant' prop TypeScript declaration (#15556) @kunimart
- [MenuList] Ignore disableListWrap for text focus navigation (#15555) @ryancogswell
- [Portal] Migrate to React hooks (#15399) @gautam-pahuja
- [TableCell] Fix TypeScript declaration of the 'padding' prop (#15516) @kunimart
- [TableCell] Update TypeScript definitions (#15541) @ljvanschie
- [TablePagination] Use OverridableComponent in TypeScript declarations (#15517) @kunimart
- [Tabs] Fix aria-label issue on the demos (#15507) @amangalvedhekar
- [theme] Responsive font sizes (#14573) @n-batalha
- [Transition] Fix false-positive ref warning (#15526) @eps1lon
- [Badge] Handle undefined badgeContent rendering empty bubble (#15581) @Naismith
@material-ui/styles@v4.0.0-beta.1
- [styles] Create a new JSS instance with injectFirst (#15560) @oliviertassinari
- [core] Set default theme type for makeStyles (#15549) @merceyz
- [core] Set default theme type for useTheme (#15538) @merceyz
@material-ui/types@v4.0.0-beta.2
- [types] Add @material-ui/types package (#15577) @eps1lon
@material-ui/system@v4.0.0-beta.1
@material-ui/lab@v4.0.0-alpha.10
Docs
- [example] Fix TypeScript compilation error (#15550) @emmtqg
- [docs] Add DelayingApperance TypeScript demo (#15551) @merceyz
- [docs] Convert react-autosuggest demo to TypeScript (#15485) @nareshbhatia
- [docs] Document v4 theme.spacing.unit deprecation (#15571) @cvanem
- [docs] Extract inherited component from test (#15562) @eps1lon
- [docs] Fix Draggable Dialog interactions with the content (#15552) @devdanco
- [docs] Fix outdated links & demos (#15521) @oliviertassinari
- [docs] Fix typechecking (#15501) @merceyz
- [docs] Fix typography demo in dark mode (#15591) @jztang
- [docs] Improve v3 migration guide (#15527) @janhesters
- [docs] Migrate more demos to hooks (#15494) @merceyz
- [docs] Remove NoSsr where possible (#15510) @oliviertassinari
- [docs] Simplify wording for customization demo descriptions (#15539) @mbrookes
- [docs] Update Changelog (#15567) @oliviertassinari
- [docs] Updated v3 Migration guide (#15518) @vkasraj
Core
Apr 28, 2019
A big thanks to the 21 contributors who made this release possible!
Here are some highlights ✨:
- ♿️ Significantly improve the keyboard behavior of the menu (#15360, #15495) @ryancogswell.
- 💅 Generate global class names (#15140) @oliviertassinari.
- 📦 Add example integration with Preact (#15401).
- 🔥 Continue the TypeScript and hook demos migration @merceyz, @bh1505, @donigianrp, @eluchsinger, @eps1lon, @lksilva.
- 🎀 4 more core components migrated from Classes to Hooks @joshwooding.
- 📦 Reduce the cost of using the Modal by -74% standalone (#15466).
- And many more 🐛 bug fixes and 💄 improvements.
The library has entered the beta phase of v4. We are grateful to all the contributors that have helped us so far. We will focus or effort on the stability of the library for the next two weeks. We don't plan more breaking changes, at the exception of changes that are required to fix bugs or that have minor impacts. We hope we can release v4 on May 15th, one year after v1.
Please try the beta out! You can find an upgrade guide to ease the transition. You will learn more about v4 in the final release blog post and our plans for the future.
@material-ui/core@v4.0.0-beta.0
Breaking changes
-
[styles] Generate global class names (#15140) @oliviertassinari Remove the dangerouslyUseGlobalCSS options (makes it the default behavior).
-
[Modal] -74% bundle size reduction when used standalone (#15466) @oliviertassinari Remove the classes customization API for the Modal component.
-
[core] Remove RootRef usage (#15347) @joshwooding The Modal and Dialog child needs to be able to hold a ref.
class Component extends React.Component { render() { return <div /> } } -const MyComponent = props => <div {...props} /> +const MyComponent = React.forwardRef((props, ref) => <div ref={ref} {...props} />); <Modal><Component /></Modal> <Modal><MyComponent /></Modal> <Modal><div /></Modal>
-
[ClickAwayListener] Hide react-event-listener (#15420) @oliviertassinari
-
[Slide] Convert to function component (#15344) @joshwooding The child needs to be able to hold a ref.
class Component extends React.Component { render() { return <div /> } } -const MyComponent = props => <div {...props} /> +const MyComponent = React.forwardRef((props, ref) => <div ref={ref} {...props} />); <Slide><Component /></Slide> <Slide><MyComponent /></Slide> <Slide><div /></Slide>
Changes
- [TextField] Update labelWidth for outline variant if required is updated (#15386) @dmiller9911
- [Breadcrumbs] Fix types and enable component generic props (#15414) @Atralbus
- [TextField] Pass rowsMin prop to underlying abstractions (#15411) @pachuka
- [SelectInput] Convert to function component (#15410) @joshwooding
- [Link] Improve TypeScript integration with react-router (#15412) @pachuka
- [ButtonBase] Remove dead style (#15503) @koshea
- [Menu] Improve performance and add support for variants (#15360) @ryancogswell
- [MenuList] Add text keyboard focus navigation (#15495) @ryancogswell
- [Modal] -74% bundle size reduction (#15466) @oliviertassinari
- [Paper] Fix color inheritance issue using nested themes (#15465) @mustafahlvc
- [Popper] Convert to function component (#15405) @joshwooding
- [Radio][checkbox] Revert breaking changes (#15483) @oliviertassinari
- [Select] Display 0 as a valid value, fix a propType warning (#15468) @Princezhm
- [Slider] Add Customized Slider Demo (#15478) @bh1505
- [Snackbar] Convert to function component (#15504) @adeelibr
- [Textarea] Fix cursor jump (#15436) @oliviertassinari
- [Textarea] Remove rowsMin prop (#15430) @pachuka
@material-ui/styles@v4.0.0-beta.0
- [styles] Add type test for withStyles + ref (#15383) @eps1lon
- [styles] Warn if @material-ui/styles is duplicated (#15422) @oliviertassinari
- [styles] Generate global class names (#15140) @oliviertassinari
Docs
- [docs] Add Button + react-router TypeScript demo (#15382) @eps1lon
- [docs] Add CustomizedSwitches TypeScript demo (#15424) @donigianrp
- [docs] Add Interactive List TypeScript demos (#15416) @lksilva
- [docs] Add Nested List and Switch List Secondary TypeScript demos (#15493) @bh1505
- [docs] Add ref vs dom node prop explanation (#15458) @eps1lon
- [docs] Add Selected List Item to TypeScript demos (#15417) @lksilva
- [docs] Add SkipNav (#15409) @mbrookes
- [docs] Add some Selection-Controls TypeScript demos (#15408) @bh1505
- [docs] Add switches typescript demo (#15384) @JarkEMones
- [docs] Add TypeScript demo for hook+props based styling (#15459) @eps1lon
- [docs] Document Tooltip breaking changes (#15403) @joshwooding
- [docs] Fix modal demo jumping on cursor move (#15462) @eps1lon
- [docs] Improve CSS Grid documentation (#15477) @dmwyatt
- [docs] Improved demo transpiling (#15438) @merceyz
- [docs] material-table demo: persist the changes (#15392) @mbrn
- [docs] Migrate Divider demos to hooks (#15490) @merceyz
- [docs] Migrate Drawer demos to hooks (#15487) @merceyz
- [docs] Migrate List demos to hooks (#15488) @merceyz
- [docs] Migrate Paper demos to hooks (#15489) @merceyz
- [docs] Migrate picker demos to hooks (#15390) @merceyz
- [docs] Migrate Table demos to hooks (#15486) @merceyz
- [docs] Migrate TextField demos to hooks (#15434) @merceyz
- [docs] Remove unused imports and declarations (#15479) @merceyz
- [docs] Separate out selection controls to own pages (#15427) @mbrookes
- [docs] Small grammar fix for Menu (#15475) @mbrookes
- [docs] Transfer List TypeScript Demo (#15419) @eluchsinger
- [example] Add preact-next example (#15401) @oliviertassinari
- [example] Fix gatsby-next (#15406) @TheHolyWaffle
Core
- [core] Fix the CI fail (#15428) @oliviertassinari
- [ci] Fail when demos are only available in TS (#15460) @eps1lon
- [core] Fix useLayoutEffect warnings on the server (#15463) @eps1lon
- [core] Minor nitpicks (#15432) @joshwooding
- [core] Use terser for minification in umd bundle (#15491) @eps1lon
- [test] Conform components forward ref to root component (#15425) @eps1lon
- [test] Fix a flaky test (#15445) @oliviertassinari
- [test] Keep track of the bundle size of TrapFocus (#15453) @oliviertassinari
Apr 17, 2019
A big thanks to the 27 contributors who made this release possible!
Here are some highlights ✨:
- 🔥 Many new TypeScript & hook demos @donigianrp, @sperry94, @jasondashwang, @cahilfoley, @bh1505 and @kenzhemir
- 🎀 5 more core components migrated from Classes to Hooks @joshwooding.
- 📐 Update the List to better match the Material Design specification.
- 🎁 Add new TransferList component @mbrookes.
- And many more 🐛 bug fixes and 💄 improvements.
We hope the next release can be 4.0.0-beta.0. Here are the last breaking changes we want to introduce:
- Remove the
dangerouslyUseGlobalCSS
option (make it the default behavior) (#15140) - Require the Slide and Modal child element to be able to hold a ref (#15344, #15347)
- Hide the EventListener dependency of ClickAwayListener (#15126)
We have done a lot of changes in the alpha phase. The beta phase will be used to stabilize the library, we might have introduced bugs. We will encourage people to try the beta out. We hope the migration will be smooth with the upgrade guide.
We hope 2-3 weeks of beta will be enough. We plan on releasing v4 stable in May.
@material-ui/core@v4.0.0-alpha.8
Breaking change
-
[Paper] Reduce the default elevation (#15243) @oliviertassinari Change the default Paper elevation to match the Card and the Expansion Panel:
-<Paper /> +<Paper elevation={2} />
-
[List] Update to match the specification (#15339) @oliviertassinari Rework the list components to match the specification:
- The usage of the
ListItemAvatar
component is required when using an avatar - The usage of the
ListItemIcon
component is required when using a left checkbox - The
edge
property should be set on the icon buttons.
- The usage of the
-
[actions] Rename disableActionSpacing to disableSpacing (#15355) @oliviertassinari
- [CardActions] Rename the
disableActionSpacing
propdisableSpacing
. - [CardActions] Remove the
disableActionSpacing
CSS class. - [CardActions] Rename the
action
CSS classspacing
. - [DialogActions] Rename the
disableActionSpacing
propdisableSpacing
. - [DialogActions] Rename the
action
CSS classspacing
. - [ExpansionPanelActions] Rename the
action
CSS classspacing
.
- [CardActions] Rename the
-
[Tooltip] Convert to function component (#15291) @joshwooding
- The child of the
Tooltip
needs to be able to hold a ref
class Component extends React.Component { render() { return <div /> } } -const MyComponent = props => <div {...props} /> +const MyComponent = React.forwardRef((props, ref) => <div ref={ref} {...props} />); <Tooltip><Component /></Tooltip> <Tooltip><MyComponent /></Tooltip> <Tooltip><div /></Tooltip>
- The child of the
Changes
- [ScrollbarSize] Convert to function component (#15233) @joshwooding
- [InputBase] Fix placeholder bug in Edge (#15267) @rodrigolabs
- [TransferList] Add new component (#15232) @mbrookes
- [withMobileDialog] Improve types (#15276) @eps1lon
- [Collapse] Convert to function component (#15248) @joshwooding
- [DialogContent] Add divider prop type for TypeScript (#15273) @sperry94
- [Tab] Remove outdated classes from the definitions (#15297) @zheeeng
- [Tooltip] Suppress disabled button warning when controlled (#15304) @tasinet
- [typescript] Generic props for FormControl, FormLabel, List (#15292)
- [Select] Fix incorrect event.target type in onChange (#15272) @sperry94
- [Popper] Fix to defer setting of exited state to Transition component (#15250) @Sharakai
- [Modal] Fix to defer setting of exited state to Transition component (#15266) @Sharakai
- [InputBase] Fix onFilled/onEmpty being called during render (#15319) @eps1lon
- [Tooltip] Convert to function component (#15291) @joshwooding
- [Ripple] Convert to function component (#15345) @joshwooding
- [Textarea] Refactor the implementation (#15331) @oliviertassinari
- [Modal] Add reason parameter to onClose function signature (#15373) @JarkEMones
- [Box] Test props to attributes forwarding (#15365) @eps1lon
- [Container] Add component prop for TypeScript (#15369) @Amere
- [Popper] Fix popperOptions prop (#15359) @jaipe
@material-ui/styles@v4.0.0-alpha.8
- Fix dependency duplication issue @oliviertassinari
- [styles] Improve typings for makeStyles (#15366) @geirsagberg
@material-ui/system@v4.0.0-alpha.8
@material-ui/docs@v4.0.0-alpha.8
Docs
- [docs] Fix layout glitch when changing sort-by in showcases (#15255) @thomasnordquist
- [docs] Add Checkbox TypeScript demo (#15222) @donigianrp
- [docs] Add CheckboxLabel TypeScript demo (#15237) @donigianrp
- [docs] Adding Most Stepper TypeScript Demos (#15223) @sperry94
- [docs] Add CustomInputBase TypeScript demo (#15209) @jasondashwang
- [docs] Add most Drawer TypeScript demos (#15119) @cahilfoley
- [docs] Slight grammar changes to color.md (#15257) @raybooysen
- [docs] Document sharing makeStyles between components (#15234) @johnraz
- [docs] Improve the @material-ui/styles documentation (#15236) @oliviertassinari
- [docs] Add CheckboxesGroup TypeScript demo (#15228) @donigianrp
- [docs] Delete legacy lab/layout (#15285) @mbrookes
- [docs] Proof the Styles section (#15268) @mbrookes
- [docs] Enable react profiling in production (#15282) @eps1lon
- [docs] Improve table demos (#15281) @eps1lon
- [docs] Add ClippedDrawer TypeScript demo (#15284) @cahilfoley
- [docs] Add most Dialog TypeScript demos (#15271) @sperry94
- [docs] Who's using Material-UI? (#15301) @mbrookes
- [examples] Fix HTML end tag (#15293) @raybooysen
- [docs] Update version filter (#15307) @mbrookes
- [docs] Removed styled-components in gatsby-next dependencies (#15313) @tatchi
- [docs] Improve ServerStyleSheets documentation (#15287) @raymondsze
- [docs] Add Select TypeScript demos (#15288) @cahilfoley
- [docs] Fix placeholder position in react-select demo (#15332) @merceyz
- [docs] Add some List TypeScript demos (#15323) @bh1505
- [docs] Disable the table of content on a few pages (#15338) @oliviertassinari
- [docs] Document ref forwarding (requirements) (#15298) @eps1lon
- [example] Add Reason example (#15340) @Tevinthuku
- [docs] Migrate docs' breadcrumbs page to hooks (#15349) @kenzhemir
- [docs] Provide a definition to root element and component (#15337) @oliviertassinari
- [docs] update FAQ doc (#15356) @gautam-pahuja
- [docs] Expand demo by default instead of duplicating the code (#15364) @eps1lon
- [docs] Promote material-table (#15367) @oliviertassinari
- [docs] Improve the customization demos (#15368) @oliviertassinari
- [docs] Use tsx syntax highlighting (#15385) @eps1lon
Core
- [core] Allow docs:dev access over local network (#15259) @eps1lon
- [core] Type ref for components (#15199) @eps1lon
- [core] Dedupe lockfile (#15260) @eps1lon
- [core] Ref cleanup (#15261) @eps1lon
- [test] Add undesired withStyles + generic props component behavior (#15215) @eps1lon
- [Transition] Update transition tests (#15249) @joshwooding
- [core] Switch from buttonRef to ref usage (#15296) @eps1lon
- [core] Synchronise value and checked prop typing (#15245) @joshwooding
- [test] Use skip instead of testComponentPropWith: false (#15309) @eps1lon
- [core] Reduce calls to actions props (#15312) @eps1lon
- [test] Use actual React.memo (#15321) @eps1lon
- [core] Add
strict
option to createMount (#15317) @eps1lon - [core] Use implicit children spread (#15354) @oliviertassinari
- [core] Reduce calls to actions prop (#15370) @eps1lon
- [core] Upgrade react-transition-group (#15375) @eps1lon
- [test] Add missing styles tests (#15376) @ellisio
- [test] Add hoc + overrideable component workaround (#15381) @ellisio
- [utils] Fix lazy and memo components issuing forward ref warnings (#15322) @eps1lon
Apr 8, 2019
A big thanks to the 24 contributors who made this release possible!
Here are some highlights ✨:
- 🔥 Many new TypeScript & hook demos @Dudrie, @jasondashwang, @sperry94, @Adherentman, @gabrielgene and @Tevinthuku
- 🎀 6 more core components migrated from Classes to Hooks @joshwooding.
- 📐 Update the selection controls and Snackbar to better match the Material Design specification.
- And many more 🐛 bug fixes and 💄 improvements.
@material-ui/core@v4.0.0-alpha.7
Breaking changes
-
[Switch][radio][Checkbox] Improve specification compliance (#15097) @oliviertassinari
Refactore the implementation to make it easier to override the styles. Rename the class names to match the specification wording:
-icon -bar +thumb +track
-
[Snackbar] Match the new specification (#15122) @oliviertassinari
- Change the dimensions
- Change the default transition to from
Slide
toGrow
.
-
[TextField] Fix height inconsistency (#15217) @gautam-relayr
Remove the
inputType
class fromInputBase
.
Changes
- [Box] Add remaining props to type declaration (#15101) @iamsoorena
- [theme] Prepare the deprecation of theme.mixins.gutters (#15124) @oliviertassinari
- [Switch] Add demo for labels on both sides (#14900) @s7dhansh
- [Zoom] Convert to function component (#15133) @joshwooding
- [Tab] Remove internal indicator prop types (#15143) @sperry94
- [Grid] Add root class (#15163) @eps1lon
- [Grow] Convert to function component (#15134) @joshwooding
- [CardMedia] Move object-fit to the core (#15166) @gebigoma
- [core] Forward ref in Collapse, Popper and SwipeableDrawer (#15170) @eps1lon
- [Popover] Fix the warning when anchorReference="anchorPosition" (#15182) @xaviergonz
- [styles] Fix getLuminance for hsl (#14391) @strayiker
- [Select] Trigger the open callbacks even when uncontrolled (#15176) @rreznichenko
- [Popover] Add warning when non-ref-holding component is used in Paper (#15181) @eps1lon
- [TablePaginationActions] Convert to function component (#15189) @joshwooding
- [TextField] Add links to Input and Select (#15148) @MrHen
- [CardMedia] Allow generic component in TypeScript (#15098) @Domino987
- [Button] Improve types with regard to react-router (#15193) @eps1lon
- [NoSsr] Convert to function component (#15167) @joshwooding
- [ClickAwayListener] Remove findDOMNode usage (#15179) @eps1lon
- [FormControl] Convert to function component (#15208) @joshwooding
- [SwitchBase] Convert to function component (#15188) @joshwooding
@material-ui/styles@v4.0.0-alpha.7
- [styles] Fix types of ServerStyleSheets.collect (#15156) @evenchange4
- [styles] Add injectFirst to StylesOptions interface (#15192) @stefanorie
- [styles] Memoize theme to prevent re-rendering (#15201) @jhrdina
Docs
- [docs] SimplePortal example using Hooks (#15125) @ralvs
- [example] Simplify ssr examples (#15127) @oliviertassinari
- [docs] Add Grid List TypeScript demos (#15118) @Dudrie
- [docs] Polish Snackbar demos (#15129) @eps1lon
- [docs] More Table TypeScript demos (#15086) @jasondashwang
- [docs] Add most Progress TypeScript demos (#15104) @sperry94
- [docs] Flatten /layout/layout (#15120) @oliviertassinari
- [docs] Migrate docs' App Bar page to hooks (#15121) @gabrielgene
- [docs] Migrate docs' Tooltips page to hooks (#15137) @gabrielgene
- [docs] Use Date type instead of any for MUI pickers demo (#15144) @gabrielgene
- [docs] Add virtualized List example (#15149) @joshwooding
- [docs] Update Style Library Interoperability + Container forwardRef (#15147) @oliviertassinari
- [docs] Run the TypeScript demos (#15159) @oliviertassinari
- [docs] Add Breadcrumbs TypeScript demos (#15139) @Adherentman
- [docs] Fix anchor link (#15174) @eps1lon
- [docs] Convert customized select component to use hooks (#15177) @Tevinthuku
- [docs] Add ExpansionPanels TypeScript Demo (#15162) @Adherentman
- [docs] Add ref forwarding to API docs (#15135) @eps1lon
- [docs] Add ImgMediaCard TypeScript demo (#15130) @jasondashwang
- [docs] Link 'React Material-UI Cookbook' (#15211) @oliviertassinari
- [docs] Fix the docs in dev mode for IE 11 (#15230) @oliviertassinari
- [docs] New translations (#15235) @mbrookes
- [examples] Update all the examples + page layout examples (#15219) @nareshbhatia
- [docs] Tidy up moved / deleted translations and update the Crowdin config (#15247) @mbrookes
Core
Mar 30, 2019
A big thanks to the 20 contributors who made this release possible!
Here are some highlights ✨:
- 🔥 Many new TypeScript & hook demos @eluchsinger, @sperry94, @Dudrie.
- 🎀 5 more core components migrated from Classes to Hooks @joshwooding.
- ⚛️ A simpler server-side rendering API (#15030).
- 💅 Better typography defaults (#15100) @oliviertassinari
- And many more 🐛 bug fixes and 💄 improvements.
@material-ui/core@v4.0.0-alpha.6
Breaking changes
-
[Typography] Better defaults (#15100) @oliviertassinari
- Change the default variant from
body2
tobody1
. A font size of 16px is a better default than 14px. Bootstrap, material.io, and even our documentation use 16px as the default font size. 14px like Ant Design is understandable as Chinese users have a different alphabet. We document 12px as the default font size for Japanese. - Remove the default color from the typography variants. The color should inherit most of the time. It's the default behavior of the web.
- Rename
color="default"
tocolor="initial"
following the logic of #13028. The use of default should be avoided, it lacks semantic meaning.
- Change the default variant from
-
[Container] Move to the core (#15062) @oliviertassinari
Changes
- [Box] Use the default theme (#15019) @apanizo
- [SwipeableDrawer] Ignore open swipe if it didn't start on the swipe area (#15045) @leMaik
- [Divider] Enable component generic props (#15040) @StevenGodin
- [ListItem] Add type test for button prop (#15049) @eps1lon
- [Button] Fix typing for type-attribute (#15077) @karlbohlmark
- [RadioGroup] Remove cloneElement, use the context (#15069) @oliviertassinari
- [Popover] Add warning to Popover if anchorRef is not visible (#15090) @alexmironof
- [MobileStepper] Support variant "text" (#15108) @AcidRaZor
- [Tabs] Update so that tabs keep equal widths (#15114) @sosaucily
@material-ui/styles@v4.0.0-alpha.6
- [styles] Fix IE 11 issue (#15034) @oliviertassinari
- [styles] Use the hook directly in styled() (#15029) @oliviertassinari
- [styles] Add a new injectFirst prop (#15028) @oliviertassinari
- [styles] Go back to index counter (#15044) @oliviertassinari
- [styles] Server-side rendering API (#15030) @oliviertassinari
- [styled] Correct doc and typings for styled with theme (#15004) @sveyret
@material-ui/lab@v4.0.0-alpha.6
- [Slider] Fix onChange not being fired on single touch (#14998) @ahockersten
Docs
- [docs] Add keyframes in the v3 -> v4 upgrade guide (#15039) @oliviertassinari
- [docs] Migrate one demo to the hooks (#15031) @oliviertassinari
- [docs] Add TypeScript demos for Dividers (#15037) @eluchsinger
- [docs] Add Chip TypeScript demo for Chip array (#15050) @sperry94
- [docs] Add MQTT Explorer to showcases (#15033) @thomasnordquist
- [docs] Fix CustomizedTabs demo (#15065) @HaNdTriX
- [docs] Add a new site to showcase (learnseeker) (#15064) @ravishwetha
- [docs] Add Tabs TypeScript demo (#15053) @sperry94
- [docs] Migrate docs' badge page to hooks (#15109) @apanizo
- [docs] Migrate docs' buttons page to hooks (#15110) @apanizo
- [docs] Add Pickers TypeScript demos (#15103) @sperry94
- [docs] Migrate Avatar demo page to the hooks (#15116) @rick-mo
- [docs] Add Snackbars TypeScript Demos (#15087) @sperry94
- [docs] Add Tooltip TypeScript demos (#15061) @Dudrie
Core
- [ToggleButtonGroup] Convert to function component (#15025) @joshwooding
- [ToggleButton] Convert to function component (#14965) @joshwooding
- [Fade] Convert to function component (#15027) @joshwooding
- [performance] Add live pages (#15046) @oliviertassinari
- [ExpansionPanelSummary] Convert to function component (#15043) @joshwooding
- [test] Add conformance suite (#14958) @eps1lon
- [Menu] Convert to function component (#15068) @joshwooding
- [test] Update enzyme (#14987) @eps1lon
- [core] Batch of fixes (#15115) @oliviertassinari