Skip to content

Latest commit

 

History

History
1142 lines (998 loc) · 44.8 KB

CHANGELOG.md

File metadata and controls

1142 lines (998 loc) · 44.8 KB

HEAD

0.14.0

Dec 25, 2015

The chagnes in 0.14.0-rc1 and o.14.0-rc2 are also included as part of this release. Have a look at them as well.

General
  • [Docs] Migrated the following pages to use the new documentation standard:
    1. [Tabs] (#2515)
    2. [Snackbar] (#2562)
    3. [DropDownMenu] (#2565)
    4. [Card] (#2590)
  • Added the following eslint rules:
    1. key-spacing (#2552)
  • [SvgIcon] Improved the code generation tasks (#2606)
  • [ES6] Use module everywhere (#2614)
  • Added a temporary bootstrap project for ReactNative to pave the way for ReactNative support (#2611)
  • Clean up CSS classes (#2630)
Component Fixes / Enhancements
  • [SelectField] [TextField] Fixed error styling issue (#2539)
  • [TextField] Implemented optional underline (#2476)
  • [AutoComplete] Migrated to use popover (#2634)
Deprecations
  • [DropDownMenu] [SelectField] Deprecated menuItems, these components are now composable. (#2565)

0.14.0-rc2

Dec 15, 2015
Breaking Changes
  • [Menu] Depreciation of the old menu, introduces a very small breaking change (#2443)
  • [Dialog] Removed deprecated API (#2396)
  • zIndex, rework them to be more coherent (#2444)
General
  • Decoupled Popover animation from the component to increase flexibility (#2367)
  • [Tests] Migrated tests to use the new react-addons-test-utils package (#2401)
  • [Docs] Improvements to the documentation site (#2426, #2421, #2438, #2479, #2508)
  • [Docs] Migrated the following pages to use the new documentation standard:
    1. [AppBar] (#2382) also where the new standard was introduced by @oliviertassinari
    2. [Avatar] (#2407)
    3. [Toolbars] (#2415)
    4. [Badge] (#2489)
    5. [Dialog] (#2483)
    6. [LeftNav] (#2507)
  • Added the following eslint rules:
    1. react/jsx-indent-props (#2377)
    2. max-len (#2381)
    3. wrap-multilines (#2419)
Component Fixes / Enhancements
  • [Card] Use preventDefault() when handling expansion (#2495)
  • [CardHeader] Made avatar property optional (#2397)
  • [Checkbox] Now updates it's state when checked property changes (#2464)
  • [DatePicker] Fix year selection (#2410)
  • [Dialog] Added overlayStyle property (#2431)
  • [Dialog] Added width property (#2387)
  • [Divider] Initial implementation. Thanks to @newoga (#2473)
  • [DropDownMenu] Added menuStyle property (#2389)
  • [DropDownMenu] Now uses Popover (#2150)
  • [DropDownMenu] Now bubbles keyboard events (#2461)
  • [FlatButton] Adjusted background, hover and ripple colors (#2488)
  • [IconMenu] Added open and onRequestChange properties (#2383)
  • [ListItem] Added option to toggle nested list items on primary action (#2390)
  • [Menu] Fixed an error when children is only one child (#2402)
  • [Menu] Remove absolute positioning (#2455)
  • [Menu] Fixed issue when passed null children (#2429)
  • [SelectField] Fixed the propagation of underline styles (#2405)
  • [TableRow] Fixed a bug when unselectable rows could still be selected (#2503)
Deprecations
  • The old menu components under the material-ui/lib/menu folder (#2443)
  • The actions property of Dialog accepting a JSON is deprecated (#2483)
  • The menuItems of LeftNav and all the related properties are now deprecated in favor of composibility (#2507)

0.14.0-rc1

Dec 4, 2015
Breaking Changes
  • [IconMenu] removed openDirection prop in favor of anchorOrigin and targetOrigin (#2149)
General
  • Use ES6 import / export syntax over require (#2253, #2333, #2334)
  • Dialog render-to-layer version (#2129)
  • Add declarative props to LeftNav, deprecate methods (#2180, #2351)
  • Add linting to test files (#2273)
  • Support nested menu items using Popover (#2148)
  • [DropdownMenu] add labelMember prop (#2285)
  • Add new ESLint rules (#2293, #2314, #2319, #2348, #2360, #2365, #2366)
  • Add unit tests for Dialog (#2298)
  • [AutoComplete] Support changing searchText via props (#2306)
  • [AutoComplete] dataSource prop is of type array (#2286)
  • [AppBar] add titleStyle prop (#2324)
  • [TimePicker] update as per spec (#2358)
  • [Popover] add useLayerForClickAway prop (#2359)
Component Fixes / Enhancements
  • Fix wrong proptype for value in RadioButton (#2276)
  • Make LeftNav swipeable only from far left / right (#2263)
  • [TextField] allow rowsMax prop to equal rows prop (#2312)
  • Fix Invariant Violation error in ClickAwayable mixin (#2296)
  • [DatePicker] fix calendarTextColor context key (#2318)
  • Fix and improve examples (#2344, #2345)
  • [Dropdown][SelectField] change value PropType to React.PropTypes.any (#2352)
  • [CardActions] prevent children styles from being overridden (#2361)

0.13.4

Nov 24, 2015
General
  • Introduced SelectableEnhance HOC to wrap List with valueLink (#1976)
  • Added color prop to LinearProgress and RefreshIndicator (#2206)
  • [AutoComplete] new component! (#2187) (thanks @yongxu)
  • [Table] added wrapperStyle prop to override table wrapper's styles (#2238)
  • Updated SVG icons (#2240)
  • [Table] added props for headerStyle, bodyStyle and footerStyle (#2246)
Component Fixes / Enhancements
  • Fixed double ripple due to compat mouse down (#2216)
  • [RenderToLayer] iframe support for clickaway (#2210)
  • [TextField] Fixed floating label element not allowing focus (#2228)
  • [SelectField] onFocus and onBlur handlers passed to underlying TextField component (#2102)

0.13.3

Nov 17, 2015
General
  • [Snackbar] add bodyStyle prop to style child div (#2104)
  • [DatePicker] add container prop to display DatePicker in-line or inside Dialog (#2120 and #2153)
  • [AppBar] add relative positioning for z-index to take effect (#1478)
  • [AppBar] add onTitleTouchTap prop to AppBar (#2125)
  • [Popover] new component! (#2043) (thanks @chrismcv)
  • Split [SelectField] and [TextField] doc pages (#2161)
Component Fixes / Enhancements
  • [SelectField] onChange triggered consistently when using value prop (#1610)
  • [Dialog] fix page scrolling behind dialog after resizing (#1946)
  • [DatePicker] fix calendar height (#2141)
  • [TimePicker] allow to set time to null (#2108)

0.13.2

Nov 9, 2015
General
  • Add tabs with slide effect (#1907)
  • Universal rendering support (#2007) (thanks @Cavitt)
  • Add labelPosition prop to buttons (#2014)
  • Add RenderToLayer component (#2042) (thanks @chrismcv)
  • Open state of of dialog now controlled through props (#1996)
    • openImmediately, show(), dismiss() deprecated
  • Update TextField docs (#2070)
  • New Badge component (#2045) (thanks @rhythnic)
  • Add import statements to components' docs pages (#2113)
Component Fixes / Enhancements
  • Fix server side rendering (#2021)
  • Add key to TableHeaderColumn for selectAll (#2030)
  • Fix Circular Progress transition (#2047)
  • Fix Snackbar getting stuck when receiving new props (#2024)
  • iPad enhanced textarea fix (#1720)
  • Table clickAway triggers onRowSelection (#2054)
  • Theme color fixes for Slider and Toggle (#2016)

0.13.1

Oct 29, 2015
General
  • [SVGIcons] added index.js and index-generator script (#1959)
  • [TimePicker] openDialog() function (#1939) and autoOk prop (#1940) added
  • [DatePicker] i18n support added (#1658)
  • [LeftNav] supports nested children (w/o menuItems) (#1982)
  • [Snackbar] updated for new specification (#1668)
  • [Tabs] added tabTemplate prop (#1691)
Component Fixes / Enhancements
  • [TextArea] height issue fixed (#1875)
  • [GridList] doc added (#1948) with code examples (#1988)
  • [TextField] fixed custom theme color hiding backgroundColor (#1989)
  • [TimePicker] added style and textFieldStyle props (#1949)
  • [Card] text color is now pulled from theme (#1995)

0.13.0

Oct 21, 2015
Breaking Changes
  • Material-UI for React 0.14.x
Component Fixes / Enhancements
  • FloatingActionButton now has iconStyle prop (#1575)
  • Card title and subtitle props can be any node (#1950)

0.12.5

Oct 21, 2015

v0.12.4 should have really been v0.13.0 as it breaks compatibility with React 0.13.3. This version fixes that. We reverted some commits (related to React 0.14.0 support) from v0.12.4 to bring to you v0.12.5 that works as expected.

Component Fixes / Enhancements
  • DatePicker performance has been improved (#1905)
  • Docs code now follows ESLint rules more strictly (#1778)
  • Removed duplicate keys in component definitions (#1933)

0.12.4

Oct 19, 2015

This version is not compatible with React 0.13.x. If you're on React 0.13.x, use Material-UI v0.12.5 instead.

General
  • React 0.14 compatible
Component Fixes / Enhancements
  • ThemeDecorator supports props (#1841)
  • Full RTL support included (#1674)
  • react-draggable dependency removed for Slider (#1825)

0.12.3

Oct 7, 2015
Component Fixes / Enhancements
  • Quick-fix version until react 0.14 support is somewhat stable
    • Changed react dependency to ~0.13 in package.json (#1836)

0.12.2

Oct 6, 2015
General
  • NEW GridList component and documentation! Thanks to @igorbt (#1320)
Component Fixes / Enhancements
  • Added back canvasColor to theme palette (#1762)
  • Added hintStyle prop to TextField (#1510)
  • Add isScrollbarVisible function to table (#1539)
  • Add rowsMax prop to EnhancedTextarea (#1562)
  • Tab "item three" renamed on docs site (#1775)
  • Fixed docs server to run on Windows (#1774)
  • FlatButton now has a backgroundColor prop (#1561)
  • Fixed DropdownMenu buggy value prop check (#1768)

0.12.1

Sep 28, 2015
Component Fixes / Enhancements
  • Fix broken documentation site
    • Fix theme display switch problem in doc (#1696)
    • Fix typo in src/card-expandable.jsx (#1724)
    • Fix broken link to v0.12.0 release tag
  • Use correct require calls
    • for react addons (#1729)
    • for raw themes (#1742)
  • Remove hard-coded color values from theme-manager
    • Use consistent values from raw theme (#1746)

0.12.0

Sep 25, 2015
Breaking Changes
  • Theming has been re-done so that material-ui components can be used without having to worry about passing a theme (all components implement a default theme) (#1662)
    • There's now a concept of mui theme and raw theme, mui theme is produced from raw theme
    • ThemeManager has been changed, no longer needs new in call
    • ThemeManager produces mui theme from raw theme. Raw themes may be user-defined.
    • Functions in ThemeManager allow to modify theme variables. Component-level styles may be overriden in the mui theme.
    • See new documentation here
  • Function names in the context-pure mixin have been changed (#1711)
    • getContextProps() has been changed to getRelevantContextKeys()
General
  • Updated dependency of react-tap-event-plugin (#1714)
Component Fixes / Enhancements
  • Dialog component (#1717)
    • actions now has id property
    • Fixed a bug in dialog where a faulty check caused an error in console
    • Text field ipad scrolling in dialog

0.11.1

Sep 15, 2015
Component Fixes / Enhancements
  • DatePicker - Updated to new design specs (#1266)
  • LeftNav - Fix sidebar position for browsers that don't support transform3d (#1269)
  • TextField - Added props to override underlineStyle when disabled (#1493)

0.11.0

Aug 24, 2015
Breaking Changes
  • The Table component is now composable. (#1199)
    • JSON objects to create the table and the table component will no longer generate the table for you. The docs site provides a complete example of how a table might look: http://material-ui.com/#/components/table. The example also includes a 'super header' and 'super footer' row.
    • Upgrade Path: Instead of passing in the raw JSON data, you'll need to generate the appropriate TableHeader/TableRow/TableHeaderColumn components and pass them in as children. The same should be applied to the rowData and the footer.
  • Tabs can now be controlled. In order to make this work we had to change the parameters being passed back to the onChange event to: onChange(value, e, tab). Where value is the value of the tab that it was changed to, e is the event, and tab is the actual tab component. (#1232, #1235)
  • Added a new static flag to the ThemeManager that defaults to true. If you're mutating your theme variables after the app initializes, set this flag to false. This will allow us to perform some optimizations to components that require theme variables. (#1397)
  • ListItem (#1438, #1105)
    • Nested list items should no longer be passed in as children. Use the nestedItems prop instead.
    • The open prop has been renamed to initiallyOpen.
  • Removed classable mixin
    • This mixin was no longer used in the library. Removing it allowed us to get rid of the classnames dependency. If you were using this mixin in your own projects, you'll need to pull the source and manually include it.
Component Fixes / Enhancements
  • Buttons - Fixed a bug that caused buttons to not gain keyboard focus in some cases (#1485, #1453, #1458)
  • Card
    • Properly merge CardAction and CardExpandable styles. (#1376)
    • Added Right-To-Left support to CardExpandable. To use this, set isRtl to true in the theme. (#1408)
  • DatePicker - Fixed an error that occurred when using valueLink (#1400)
  • DropDownMenu - Added disabled prop (#1406)
  • FlatButton - Added labelPosition prop. (#1286)
  • InkBar - Added color prop and inkBar.backgroundColor to theme variables. (#1244)
  • Ripple
    • Fixed display glitch on Safari (#1420)
    • Fixed an error when ripples were unMounted (#1416)
  • SelectField
    • Added floatingLabelStyle prop (#1463 #1450)
  • Slider
    • Fixed a bug when setting the width attr (#1368)
    • Fixed a bug with disabled sliders (#1417)
    • Fixed a focus style glitch and other style problems (#1448, #1451, #1468)
  • Snackbar - Added onShow and onDismiss (#1390)
  • Table - Ensure that the table component properly keeps track of selected rows (#1325)
  • TextField
    • Added underlineFocusStyle prop (#1422, #1419)
    • hintText can now be a string or element (#1424, #1202)
  • TimePicker
    • Fixed a bug that caused the am/pm selector to switch (#1440)
    • Fixed a bug that caused defaultTime to not be set (#1466)
  • Tooltip - Probably center tooltips when tooltip text changes (#1205)
  • Theme - Added setContentFontFamily (#1405)

0.10.4

Aug 8, 2015
Component Fixes / Enhancements
  • TouchRipple - Fixed a bug that caused onClick to not fire on the first click (#1370)

0.10.3

Aug 8, 2015
General
  • We've set up the project to perform automated tests - now we just need to increase our test coverage. :) (#1331)
  • The style auto-prefixer now caches browser test results so that it only has to perform them once.
New Components
  • RefreshIndicator (#1312)
Component Fixes / Enhancements
  • AppBar - showMenuIconButton now only affects the icon next to the title (#1295, #1182)
  • CardMedia - CardMedia children styles are now being properly merged (#1306)
  • Dialog - fixed a bug that caused the dialog height to be incorrect on window resize (#1305)
  • FloatingActionButton - Added backgroundColor and disabledColor props (#1329)
  • FocusRipples now only get rendered when needed.
  • IconMenu - Added isOpen() (#1288)
  • LeftNav
    • Added menuItemClassName, menuItemClassNameSubheader, menuItemClassNameLink props (#1318)
    • Fixed a display problem that cuased icons to not be the correct color (#1324)
  • ListItem - fixed incorrect styling on disabled list items (#1350)
  • SelectField
    • Fixed a bug that happened when select field was controlled and the value was undefined (#1227)
    • Fixed error text positioning (#1341, #1111)
    • Added errorStyle prop (#1341)
  • Snackbar - Clickaway is now properly bound when openOnMount is true (#1327)
  • Tabs - Added contentContainerClassName prop (#1285)
  • TextField - Added underlineStyle prop (#1343)
  • TimePicker - Added pedantic prop (#1275, #1173)

0.10.2

Jul 29, 2015
Breaking Changes (Missed in the original release notes.)
  • Changed date-picker/index.js to expose DatePicker and DatePickerDialog. Hence require('material-ui/lib/date-picker') no longer works. Use require('material-ui/lib/date-picker/date-picker') instead.
General
  • Replaced onMouseOver / onMouseOut with onMouseEnter / onMouseLeave to achieve hover affects. This prevented extra unnecessary renders from happening. (#1190)
  • All svg icons inside the /svg-icons folder now uses the PureRenderMixin.
Icon Builder
  • Added tests, build process, file template, and file suffix (#1130, #1127, #1126, #1125, #1139)
Component Fixes / Enhancements
  • AppBar - Fixed a styling bug in Safari (#1226)
  • Cards can now expand and collapse (#1060)
  • DatePicker
    • Allow using DatePicker as a controlled input (#1170)
    • Added valueLink support and openDialog() (#1213)
    • Fixed a bug that caused dates to get selected when switching months (#1243)
    • Avoid handling keyboard events when calendar is not active (#1245)
    • Fixed display glitch on Firefox (#1242, #1248)
  • Dialog
    • Hitting the ESC key no longer closes the window if modal is set to true (#1187, #1162)
    • The onShow event now called after all contents in the dialog have been rendered. (#1198)
  • DropDownMenu - Clicking away no longer triggers other click events to happen (#1177, #1174)
  • FocusRipples now only render when actually shown.
  • IconMenu
    • Fixed a bug that caused a scrollable menu to jump after selecting an item.
    • Fixed keyboard focus when user hits ESC.
  • LeftNav
    • Added some Perf improvements (#1184)
    • Fixed a bug that caused onNavOpen to sometimes not fire (#1225)
    • Added disableSwipeToOpen prop (#1279)
  • Menu
    • Performance improvements when opening a menu.
    • Added animated prop.
  • RaisedButton - Fixed a bug that caused rounded corners not to round (#1048)
  • SelectField - Now passes the index and payload back in the onChange callback (#1193, #1194)
  • Slider - Fixed a bug that caused value to not be set correctly (#1251)
  • Snackbar - Extra props are now being passed down to the root (#1260)
  • SvgIcon - Added code to remove some unnecessary renders on hover.
  • Toolbar - Fixed display glitch on Firefox (#839, #1248)

0.10.1

Jul 13, 2015
Component Fixes / Enhancements
  • CircularProgress - Fixed animation bug in Safari (#1093, #863)
  • Dialog
    • contentClassName is now being passed down to the appropriate child (#1122)
    • Fixed max height on vertically scrollable dialogs (#1153, #1100)
  • DropDownMenu
    • Fixed display height (#1123)
    • Fixed display height when menu items change (#1145)
  • IconMenu - Added closeOnItemTouchTap prop (#1156)
  • LeftNav - Performance improvements during show/hide (#1137)
  • SelectField - errorText is now being passed down to underlying textField (#1131)
  • Table - Added static width to checkbox columns (#1128)
  • Tabs - Added inkBarStyle prop (#1154)
  • TextField - errorStyle prop is now being properly merged (#1116)

0.10.0

Jul 9, 2015
Breaking Changes
  • Removed input.jsx file. This component was deprecated long ago, but was never removed from the project.
  • Buttons now default to a type of button instead of the browser's default of submit. We found that most of the buttons in our apps were not submit buttons and it was more intuitive to default to button. If you need a submit button, be sure to pass in a type of submit. (#1017)
  • The DialogWindow component was refactored into Dialog. DialogWindow was never documented and was just a lower level component that was used by Dialog. It was, however, exposed on the main index.js and has since been removed. If you were using DialogWindow before, you should be able to safely use Dialog instead.
New Components
  • SvgIcons & Icon Builder
    • We've created SvgIcon versions of all the material-design-icons. These SvgIcon components can be found in the /lib/svg-icons directory and were not added to the main index.js file. To use these icons, require them directly: require('material-ui/lib/svg-icons/action/face'). These icons were created using a script that crawls the icon repo and generates the appropriate js and jsx files and can be found in the /icon-builder directory.
  • Menu, MenuItem, MenuDivider
    • This is a new implementation of menus and menu items. With it comes:
      • better composability
      • scrollable menus
      • better transitions
      • better keyboard access
      • selectable with value and valueLink
    • We're working on migrating some of our other components to use this new implementation. Until that's thats done, require these components directly if you'd like to use them: require('material-ui/lib/menus/menu').
  • IconMenu
    • This component replaces DropDownIcon and has all of the new menu features mentioned above.
Component Fixes / Enhancements
  • AppBar
    • IconButton styles are now being properly merged (#967)
    • FlatButtons are now being properly styled (#967)
  • AppCanvas - AppBar child styles can now be overridable (#903)
  • Avatar - Added size prop (#945)
  • CardMedia - Styles are now being properly merged using the mediaStyle prop (#1004)
  • CircularProgress - Added color and innerStyle prop (#928)
  • DatePicker
    • Prevent root styles from propagating to child input (#991)
    • Fixed DatePicker year/month navigation buttons (#1081, #1075)
  • Dialog
    • Window scrolling is now enabled on unmount as well (#946)
    • Allow dialog window to scroll for long content (#1045, #525)
    • Drastically improved dialog performance (#1059)
    • Dialogs now honor modal property. (#1092)
    • Fixed vertical centering on smaller screen sizes (#1095)
  • FloatingActionButton - Now accepts FontIcon and SvgIcon as children (#967, #894)
  • FontIcon - Now supports material-icon ligatures (#952, #1007)
  • IconButton
    • Added tooltipPosition prop (#921)
    • Added tooltipStyles prop (#1010, #1005)
    • Pass iconStyle props to every children (#967)
    • Now supports material-icon ligatures (#1024, #1013)
  • LeftNav - Fixed swipe gesture to open / close (#868, #848, #998, #997)
  • List - Added zDepth prop.
  • ListItem
    • Fixed display glitch on touch devices (#858)
    • List items can now be keyboard focused
    • Allow drop downs to be displayed inside a list item (#978)
    • Fixed a bug that caused rightIconButton events to not propagate (#1055)
    • List Items can now be nested (#918)
    • Added primaryText prop (#1073)
  • Menu
    • Fixed a bug that caused closed menu to be selectable (#913)
    • Fixed menu height and width when menu items change (#1012, #805, #1014)
    • Subheader styles are now being properly merged (#950)
  • MenuItems now properly renders icons (#956)
  • Overlay
    • Added to main index.js (#955)
    • Fix issue where Overlay can prevent the body from scrolling (#1058, #897)
  • RaisedButton
    • Fixed a display glitch when changing the button's height (#937, #765)
    • Added backgroundColor, labelColor, disabledBackgroundColor, disabledLabelColor props (#965)
    • Added fullWidth prop (#989)
  • SelectField
    • Fixed menu and error text display glitches (#922)
    • Added hint text functionality (#966)
    • Fixed display problem when floatingLabelText is set (#976)
    • Fixed font size (#1027)
  • Slider
    • className can now be set (#938, #713)
    • Added min/max prop validation (#1070, #899)
  • Snackbar
    • Root styles are not being merged properly (#925)
    • Added autoHideDuration prop (#1050, #958)
    • Clicking slider track advances the slider knob. (#1089, #1074)
  • Table
    • Fixed displayRowCheckbox prop (#935)
    • Table rows can be selected in the rowData configuration (#1023)
    • Removed duplicate table calls and support multiple tables (#954, #1087, #1084)
  • Tab - Added contentContainerStyle prop (#953)
  • Tabs - Fixed a bug that caused inkbar to not display properly (#1015, #940)
  • TextField
    • Fix error when setting the value of the textfield input. (#959)
    • Style fixes for floating label (#980)
    • Fixed display glitch for long hint text and error text (#987, #438, #439)
    • Fixed display problem when value is 0 (#1090)
    • Added errorStyle prop (#1079)
  • TimePicker - Fixed key warnings (#1018)
  • Toolbar
    • Fixed display glitch with DropDownIcons (#917, #904)
    • Styles are now being properly merged for DropDownMenu, DropDownIcon, RaisedButton, FontIcon (#965)

0.9.2

Jun 20, 2015
New Components
  • SelectField (#846)
  • Card, CardActions, CardHeader, CardMedia, CardText, CardTitle (#857)
  • Table (#890)
Components
  • AppBar - Long AppBar titles now render ellipses (#875)
  • Buttons
    • Added containerElement prop (#850)
    • Fixed styling for disabled link buttons
  • DropDownMenu - Added keyboard functionality (#846)
  • FontIcon - Added color and hoverColor props
  • ListItem
    • Fixed display problem with Single line checkboxes (#854)
    • Added rightIconButton prop
  • Slider - Added step functionality (#860)
  • Switches - Added labelStyle prop (#871)
  • SvgIcon - Added color and hoverColor props
  • TextField - Made element styles overridable (#864)
  • TimePicker
    • Fixed clock functionality for various browsers (#840)
    • Fixed clock numbers positioning for Safari (#870)
    • Fixed clock handles on Android Chrome (#873)
  • Toggle
    • Made element styles overridable (#855)
    • Fixed style bug on IE 10, 11 (#885)
  • Toolbar - Fixed error when a child element is null (#847)
Theming
  • Theme spacing can now be overriden (#879)

0.9.1

Jun 14, 2015
General

The following components have been modified to allow for style overrides: Radio Button Group, Radio Button, Enhanced Switch Label, Text Field, Toggle, Checkbox (#807)

New Components
  • List, ListItem, ListDivider, Avatar (#836)
Components
  • Checkbox - Added checkedIcon and unCheckedIcon props. This is useful to create icon toggles.
  • Dialog - Fixed a bug with the open immediately flag (#810)
  • DropDownIcon - Added support for icon ligature (#806)
  • Menu - Fixed a style problem (#843)
  • RadioButtonGroup - Fixed a bug with mapping Radio children (#820)
  • Slider - Fixed a glitch that happened when click on the slider handle (#833)
  • TextField - Added fullWidth prop (#827)
  • TimePicker
    • Fixed a bug with the defaultTime setting (#822)
    • Fixed clock handles on Firefox (#825)

0.9.0

Jun 9, 2015
Breaking

We've cleaned up some of our click/tap events. (#771) Upgrade should be straight forward, please see below:

  • DropDownIcon - closeOnMenuItemClick has been replaced with closeOnMenuItemTouchTap.
  • Menu - onItemClick has been removed; use onItemTap instead.
  • MenuItem - onClick event has been removed; use onTouchTap instead.
General
  • ClickAwayable is now bound to onTouchTap instead of onClick (#766)
Components
  • AppBar will now render its children (#725)
  • DatePicker will now properly handle defaultDate prop changes (#722)
  • Dialog actions now respond to onTouchTap (#752)
  • LeftNav
    • Fixed line height style bug (#742)
    • Fixed a bug that caused the LeftNav to immediately close on iOS full screen mode (#751, #366)
  • Menu
    • Will now adjust its height when props change (#544, #203)
    • MenuItemStyle prop is now passed down to nested menus (#802)
  • RadioButtonGroup can now have its styles overridden (#768)
  • RaisedButtons - Fixed a bug that caused incorrect transitions (#731, #702)
  • SvgIcon - ViewBox can now be passed in as a prop (#747)
  • Tabs - Components inside tabs now keep their state when switching between tabs (#700, #450)
  • TextField
    • Multi-line text fields can now be initialized with a certain number of rows (#693)
    • Fixed style bug that caused width to not be set on disabled text-fields
    • Fixed style bug that caused focus underline to be black
    • Fixed style problem that caused text to jump on multi-line inputs
  • Theme (New)
    • This is a high order component that can be used to set your theme overrides (#797)

0.8.0

May 24, 2015
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 the style 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 so var FILENAME = require('material-ui').Styles.FILENAME;. Material-UI has moved away from being a CSS Framework to being simply a set of React components.
  • 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.
Components
  • Date Picker
    • Added AutoOK Prop (#658)
    • Added ability to specify min and max dates (#658)
    • Added Year Selector (#658)
  • Dialog now repositions on screen resize (#597)
  • Left Nav will now close with a swipe gesture (#614)
  • Linear and Circular Progress Indicators - NEW (#632)
  • TimePicker - NEW (#589)

0.7.5

Apr. 27, 2015
General
  • Removed deprecation warnings by replacing this.getDOMNode() with React.findDOMNode() (#558)
  • Replaced process.NODE_ENV with process.env.NODE_ENV (#573)
Components
  • DropDownMenu
    • Fixed props is not defined error when onChange is invoked (#556)
  • Floating Action Button
    • Fixed alignment bug on Chrome when using FAB as a link (#574)

0.7.4

Apr. 21, 2015
General
  • Updated to react v0.13
Components
  • AppBar
    • Fixed IE toString.Call() issue (#518, #468)
  • Buttons
    • Button events now do not fire on disabled buttons (#512)
    • Fixed rapid keyboard tabbing issue (#528)
  • DatePicker
    • Added autoOk, minDate, and maxDate props (#538)
  • Dialog
    • Fixed IE toString.Call() issue (#518, #468)
    • Added modal prop (#523)
    • Fixed warnings caused by overwriting props (#500)
    • Added ability to give an action button autofocus (#552)
  • DropDownMenu
    • Handle selectIndex less than 0 (#480)
    • Fixed issue of using this component outside strict mode (#533)
  • LeftNav
    • Added onNavOpen & onNavClose events (#495)
  • Switches
    • Fixed errors on disabled switches on mobile (#476)

0.7.3

Apr. 1, 2015
General
  • Updated mui to use peer dependency changes (#471)
  • Replaced DOMIdable with UniqueId (#490)
Components
  • Dialog
    • Changed title prop to accept node types instead of just strings (#474)
  • Link Menu Item
    • Fixed anchor attribute name (#493)
  • Menu
    • Nested menus expand when hovered (#475)

0.7.2

Mar. 25, 2015
General
  • Updated react-draggable2 dependency (#391)
  • Updated react and peer dependecies to React v0.13 (#452)
Components
  • Date Picker
    • Added onShow and onDismiss props (#399)
  • Dialog
    • Fixed scrolling issue when opened immediately (#406)
    • onShow is now called when opened immediately (#453)
  • Flat Button
    • Disabled primary buttons use disabled styling over primary (#432)
  • Floating Action Button
    • Fixed zdepth to update when disabled prop changes (#390)
    • Disabled secondary buttons use disabled styling over secondary (#432)
  • Left Nav
    • Scrolling is prevented when displayed (#406)
  • Menu
    • Menu and menu-related components have been moved into js/menu/* (#402)
    • Added LinkMenuItem component (#402)
  • Menu Item
    • Added disable prop (#402)
  • Overlay
    • Now control scroll un/locking. (#406)
  • Paper
    • Added innerStyle prop (#418)
  • Raised Button
    • Disabled primary buttons use disabled styling over primary (#432)
  • Tabs
    • Added initialSelectedIndex prop (#389)

0.7.1

Mar. 4, 2015
General
  • Allow removal of debug code in production builds (#349)
Components
  • AppBar
    • Fixed a styling bug that caused icons not to show (#336)
    • Title prop can now be an element (#361)
    • Added iconClassNameLeft, iconElementLeft, iconElementRight props (#367)
  • 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
    • Added onEnterKeyDown prop. (#328)
    • Fixed a bug with setting multiLine values (#356, #357)

0.7.0

Feb. 13, 2015
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.
General
  • All jsx files are now being compiled before publishing to npm. (#179, #215)
Components
  • Buttons
    • Fixed a bug that cause onClick to not fire in Safari (#307)
    • You can now pass down children into all buttons. This allows you to add icons to flat and raised buttons or to add a file input element. (#323, #189)
  • Menu Item
    • Fixed toggle display bug (#298)
    • Toggle props can now be passed in (#299)
  • Slider
    • Removed inline style @import (#218)
  • Switches
    • Switches now support focusability and can be focused/changed via keyboard inputs. (#292)
    • Added focus and touch ripple animations.
    • All switches use the labelPosition prop (as opposed to labelPositionRight), including RadioButtonGroup.
    • Added innerClassName prop. (#309)
  • Tabs
    • Fixes width transition for ink bar (#280)
  • Text Field
    • Fixed a bug with using valueLink with a multiline Text Field (#311)
    • Fixed a bug with multiline defaultValues in a multiline Text Field (#296)

0.6.1

Jan. 26, 2015
Fixes
  • Checkbox & Toggle
    • Fixed a bug that caused checkboxes and toggles to not uncheck.

0.6.0

Jan. 26, 2015
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.
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
    • Fixed a bug with getDate() (#196)
    • Added onChange prop (#198)
  • 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
    • Fixed a css bug with slider handles (#225)
    • Added onDragStart and onDragStop props (#217)
  • 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)

0.5.0

Jan. 3, 2015
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)
  • Slider
    • Changed slider cursor (#187)
  • Snackbar (New)
    • Added a snackbar component.

0.4.1

Dec. 25, 2014
General
  • Updated to react 0.12.2; browserify 7.0.3
  • Fixed ripple animation on Firefox (#129)
  • Updated red, green, and blue color variables to match specs (#177)
Components
  • Buttons
    • Added secondary button colors
    • Removed underline styles on link buttons (#172)
  • Date Picker (New)
    • Added new date picker component.
    • Dialog version is implemented, inline version to follow in upcoming release.
    • Has both portrait and landscape modes.
    • Keyboard support: arrow keys advance dates, shift+arrow advances month.
  • Dialog
    • Dialog actions now generate buttons with secondary colors.
    • Added contentClassName prop. This is used to style the actual dialog window. For example, setting its width.
    • Dialog contents no longer are removed from the DOM when the dialog is dismissed.
    • Disabled scrolling when the dialog window is open.
  • Input
    • Added disabled input styles (#140)
    • Added blur() method
    • Added support for email input type (#170)
    • Fix textarea placeholder focus exception (#170)
    • Added mui-is-not-empty class when the input isn't empty (#170)
  • Slider
    • Trigger onChange when clicking on slider (#153)

0.4.0

Dec. 15, 2014
Breaking Changes
  • Removed PaperButton - Use FlatButton, RaisedButton, or FloatingActionButton
  • Removed Roboto font import (#104) - Be sure to include the Roboto font in your project.
General
  • Added react-draggable2 dependency
Components
  • Buttons
    • Added linkButton functionality (#130)
  • Icon Buttons
    • Added tooltip functionality
  • Input
    • Added method to set focus
  • Left Nav
    • Added method to open left nav panel
  • Radio Button
    • Added defaultChecked prop
  • Slider (New)
    • Added slider component
  • Toggle
    • Updated styles to match material design specs

0.3.3

Dec. 7, 2014
General
  • Added a basic example project in /example
Components
  • Dialog
    • Actions are now real buttons
    • Added transitions
    • Prefixed classNames with mui
    • Cleaned up styles
  • Input
    • Fixed a bug that caused placeholder to not show on focus (#112)
    • Placeholders can now be displayed in-line by setting inlinePlaceholder to true.
    • The initial number of rows can now be set with the rows prop.
  • Toggle
    • Fixed alignment issue (#118)
    • The inital state of the toggle can now be set with the toggled prop.

0.3.2

Nov. 30, 2014
General
  • Upgraded dependencies: react 0.12.1, browserify 6.3.3, reactify: 0.17.1
Components
  • Dialog
    • Added key prop to dialog actions. (#99)
    • Added onDismiss event callback. (#86)
    • Dialog is now positioned onMound and onUpdate (#85)
    • Fixed a bug that cuased dialog to not be vertically centered on long pages
  • Dropdown Menu
    • Added autoWidth prop (#89)
  • Menu
    • Added autoWidth prop
  • Nested Menu
    • Fixed bug that caused some nesteed menus to not show. (#88)
  • Paper
    • Updated to use spread operator
  • Radio Button
    • Fixed radio button label styles. (#94)
  • Ripple
    • Account for page scrolling on ripple animation. (#93)

0.3.1

Nov. 28, 2014
General
  • Removed browserify react addons alias. (#68)
Components
  • FlatButton, RaisedButton, and FloatingActionButton (NEW)
    • These buttons will replace the current PaperButton which will be depreciated in v.0.4.0.
    • They generate actual button tags, are keyboard focusable and listen to onTouchTap. (#50, #61)
  • Icon Button
    • Pressing enter when the button is in focus now fires onTouchTap
    • Added dark theme ripple colors
    • Focus and click animations now use Scale Transforms to improve performance.
  • Input
    • Added support for ReactLink and use JSX spread attributes
    • Error messages are now props instead of internal states (#95)
  • LeftNav
    • Pressing ESC now closes the left nav
  • PaperButton
    • Will be depreciated in v.0.4.0.
  • Radio Button
    • Fixed toggle bug. (#70)
Mixins
  • WindowListenable is now available from Mixins.WindowListenable
Utils
  • Added KeyCodes constants

0.3.0

Nov. 17, 2014
General
  • Updated Browserify & Reactify versions
  • Enabled reactify es6 transformations
  • Removed jQuery dependency (#25)
  • Added reaact-tap-event-plugin dependency
Components
  • Dialog
    • Width is now determined by content
    • Position is centered horizontally inside parent container
    • Pressing Esc now closes the dialog (#35)
  • Dropdown Menu
    • Added underline (#39)
    • Fixed display problem on double click (#43)
  • Icon
    • Transfer all props to underlying span
  • Icon Button (New)
    • Buttons...that are icons. :)
  • Input
    • Added required, min, max and step
  • LeftNav
    • Fixed left nav style when docked (#36)
    • Transition now uses translate3d instead of left
    • Overlay now listens to onTouchTap
  • Menu Items
    • Added user select none styles (#45)
  • Paper
    • Added onMouseOver & onMouseOut props
  • Toolbar
    • Items are now passed in as children instead of groupItem prop
Mixins
  • Added WindowListenable. Allows listening to window events.
Utils
  • Added Dom and Events utility functions
  • Fixed a bug that caused CSS Events to bind twice
Less
  • Added media query variables
  • Added no-wrap mixin
  • Removed unnecessary style resets
  • Removed tab highlight color on all elements

0.2.2

Nov. 11, 2014
  • Changed project structure to be less confusing. Material-UI components/styles live in the src directory. Docs site code lives in the docs directory. This still allows us to easily test components in the docs site as we are working on them
  • Added .editorconfig to help keep code formatting consistent among contributors. See http://editorconfig.org/
  • Fixed drop down display issue in safari
  • Fixed nested menu arrow icon
  • Added hover transitions to menus
  • Improved ripple animation on buttons

0.2.1

Nov. 8, 2014
  • Fixed icon font reference. We're now including it as part of the project instead of an npm dependency.

0.2.0

Nov. 7, 2014
  • Icon
  • PaperButton
    • Added href prop
    • Css fixes
  • Dialog
    • Added onShow event
    • Children contents of the dialog is only rendered if the dialog is opened
  • LeftNav
    • Fixed a bug that caused docked LeftNav component to close on menu click
    • Removed isInitiallyOpen prop
  • Input
    • onLineBreak event now passes back event (e) on callback

0.1.29

Nov. 5, 2014
  • css fix on paper component
  • hover transition fix on buttons
  • removed selected state on drop down icon component
  • css fix on left nav component
  • added prop on left nav component to allow left nav to be docked and hidden