Releases: mui/material-ui
Releases · mui/material-ui
v0.8.0
Breaking Changes
- Refactored all CSS into Javascript (#30, #316)
- All Material-UI components now have their styles defined inline. This solves
many problems with CSS as mentions in @vjeux's presentation
such as polluting the global namespace with classes that really should be
component specific. In addition to the benefits mentioned in the
presentation, inline styles allow Material-UI to become CSS preprocessor
agnostic and make Themeing much more dynamic and simple.
Read our CSS in JS discussion - Upgrade path:
- If you are overriding component CSS classes: Redefine your overrides as
an object following React's inline styles format,
then pass it into the material-ui component via thestyle
prop. These
changes are applied to the root element of the component. If you are
overriding a nested element of the component, check the component's
documentation and see if there is a style prop available for that nested
element. If a style prop does not exist for the component's nested element
that you are trying to override, submit an issue
requesting to have it added. - If you are using any of Material-UI's Less files: These files have been
refactored into their own javascript files
and can be accessed like sovar FILENAME = require('material-ui').Styles.FILENAME;
.
Material-UI has moved away from being a CSS Framework to being simply a
set of React components.
- If you are overriding component CSS classes: Redefine your overrides as
- All Material-UI components now have their styles defined inline. This solves
- Paper component no longer generates nested divs (#601)
- This allowed us to simplify styling of paper containers. As a result, styling the inner div is no longer necessary.
General
- Themes have been added (#202)
- Requiring individual components is now supported (#363)
- An example would be:
var SvgIcon = require('material-ui/lib/svg-icon);
- The
/lib
folder in Material-UI contains the file structure needed when referencing individual components.
- An example would be:
Components
v0.7.5
v0.7.4
v0.7.3
v0.7.2
General
Components
- Date Picker
- Added
onShow
andonDismiss
props (#399)
- Added
- Dialog
- Flat Button
- Disabled primary buttons use disabled styling over primary (#432)
- Floating Action Button
- Left Nav
- Scrolling is prevented when displayed (#406)
- Menu
- Menu Item
- Added
disable
prop (#402)
- Added
- Overlay
- Now control scroll un/locking. (#406)
- Paper
- Added
innerStyle
prop (#418)
- Added
- Raised Button
- Disabled primary buttons use disabled styling over primary (#432)
- Tabs
- Added
initialSelectedIndex
prop (#389)
- Added
v0.7.1
General
- Allow removal of debug code in production builds (#349)
Components
- AppBar
- Date Picker
- Fixed a bug that caused the date picker dialog window to ghost on small screen widths (#342)
- Dialog Window
- Window no longer loses scroll position after opening a dialog window. (#386)
- DropDown Icon
- Added closeOnMenuItemClick prop (#376)
- Flat Buttons
- Fixed a styling bug with touch ripples.
- Icon Buttons
- Fixed a styling bug with touch ripples. (#341)
- Menu Item
- Link targets can now be set on menu items. (#350)
- Slider
- Fixed percentage calculation in getInitialState (#382)
- Tabs
- The onChange event now passed in the tabIndex, and tab to the callBack (#384)
- Text Field
v0.7.0
Breaking Changes
- Removed Icon component - Replaced with FontIcon and SvgIcon (#318, #125, #148)
- The main motivation here is to give developers more control over which font icons to include
in their project. Instead of automatically including all material design icons in material-ui,
developers can now create their own custom icon font file and just pass the icon className into
the FontIcon component. Read more about FontIcons. - Upgrade path:
- If you were using the Icon component before, you'll need switch to either using FontIcon or SvgIcon.
For FontIcon, create a custom font file and include it in your project and just pass the Icon
className into the FontIcon component. For SvgIcon, create a new React component that represents
that particular icon. This will allow you to package your icons inside your js files. Examples
can be found here. - Additionally, all components that had an icon prop now take an iconClassName prop instead. These
include FloatingActionButton, IconButton, Menu, MenuItem, and DropDownIcon.
- If you were using the Icon component before, you'll need switch to either using FontIcon or SvgIcon.
- The main motivation here is to give developers more control over which font icons to include
General
Components
- Buttons
- Menu Item
- Slider
- Switches
- Tabs
- Fixes width transition for ink bar (#280)
- Text Field
v0.6.1
v0.6.0
General
- Fixed dependencies to prevent multiple versions of React getting loaded on the docs site (#194)
Deprecated
- Input - Please use TextField instead.
New
- Radio Button Group
- This component was created to make it easier to work with groups of radio buttons (#151)
- Tabs
- Added new Tabs component.
- TextField
- This component replaces Input. It extends the native input element and will support all of
its props and events. It also supports valueLink and can be controlled or uncontrolled. - MultiLine text fields now grow and shrink as the user inputs data.
- Allow for both floating labels and hint text in the same input.
- Floating labels now generate a label element.
- This component replaces Input. It extends the native input element and will support all of
Fixes
- AppBar
- Added icon prop. (#250)
- Checkbox
- Checkbox styling now matches material design specs
- This component has been revamped and can now be controlled or uncontrolled.
- Date Picker
- Dialog
- Actions can now be passed in as an array of react elements. (#241)
- Menu Item
- Menu Items now respond to onTouchTap
- Radio Button
- Radio Button styling now matches material design specs
- This component has been revamped and can now be controlled or uncontrolled.
- Slider
- Snackbar
- Fixed Ghost hidden snackbar (#235)
- Toggle
- This component now extends a native input checkbox.
- It can now be controlled or uncontrolled.
- Toolbar
- Fixed FlatButton positioning inside toolbar (#224)
v0.5.0
Breaking Changes
- Removed lesshat dependency. Be sure to change your build process to include an
autoprefixer.
Components
- Buttons
- Ripple animations are much faster now. The animation starts onMouseDown or onTouchStart
and completes onMouseUp or onTouchEnd. Now we can spam buttons all day long. :) - Spacebar key up triggers button clicks. (#155)
- Ripple animations are much faster now. The animation starts onMouseDown or onTouchStart
- Slider
- Changed slider cursor (#187)
- Snackbar (New)
- Added a snackbar component.