All notable changes to this project will be documented in this file. See standard-version for commit guidelines.
2.2.2 (2018-04-18)
- publish: Compile with latest babel to get rid of react proptype warnings
- publish: Added src folder to package (#232) (a4cc6d0)
2.2.1 (2018-01-09)
- tabs: click wrapper container bubbles up to document causing getAttribute() to throw (#221) (96b163b)
2.2.0 (2018-01-09)
2.1.1 (2017-11-17)
- style: Fix less and sass to correctly generate tab--disabled class (b95891e)
2.1.0 (2017-10-05)
- tabs: Correctly handle children of type string (#211) (6fd4002)
- umd: Fix the umd builds by switching to rollup (#212) (46c1a60)
- dependencies: Support react 16 (94447e9)
- tablist: Enable overwriting tabIndex on
<Tab>and allow tabbing among<Tab>s by using tab key and enter/space. (00a8401) - tabs: Publish also as ES2015 modules (41415ab)
- tabs: Add
domRefprop for getting the ref to the tabs DOM node (#213) (e989491)
2.0.0 (2017-09-05)
- tabs: Allow for higher order components. All HOC which use hoist-non-react-statics are supported out of the box (#196) (1969e65)
- tabs: Always call onSelected callback even if tab is active. (#195) (bc1910a)
- tabs: The
onSelectcallback will now also be called when clicking on the currently active tab.
1.1.0 (2017-06-13)
- Add nested TabList and TabPanel support (#184) (Emmet McPoland)
This allows random elements as children for the <Tabs /> component, for example:
<Tabs>
<div id="tabs-nav-wrapper">
<button>Left</button>
<div className="tabs-container">
<TabList>{tabs}</TabList>
</div>
<button>Right</button>
</div>
<div className="tab-panels">
{tabPanels}
</div>
</Tabs>1.0.0 (2017-05-10)
- New static method to reset the id counter for isomorphic apps. Call this before rendering your application on the server. (#129) (Neehar Venugopal)
import { resetIdCounter } from 'react-tabs';
resetIdCounter();- Allows arbitrary components anywhere inside
<TabList>(#139) (Alexander Wallin) - Allow random order of
<TabList />,<TabPanel />and other arbitrary components. The<TabPanel />components are matched to the<Tab />components in order from top to bottom.
<Tabs>
<TabPanel />
<div />
<TabList>
<Tab />
<Tab />
</TabList>
<span />
<TabPanel />
</Tabs>- Introduce controlled and uncontrolled mode. This two modes allow either to control the tabs from your component from the outside or leave the control to the tabs within react-tabs components. (see README.md for more information)
- New prop
selectedTabPanelClassNameon<Tabs />to change the class name of the current selected tab panel. - New prop
defaultIndexon<Tabs />to allow setting the initial displayed tab. - New prop
forceRenderon<TabPanel />to allow force rendering of individual tab panels. - New prop
selectedClassNameon<TabPanel />to allow changing selected class name of individual tab panels. - New prop
selectedClassNameon<Tab />to allow changing selected class name of individual tabs. - New prop
disabledClassNameon<Tab />to allow changing disabled class name of individual tabs. - Property
classNameon all components can now officially take an array as argument. - PropTypes are now wrapped in
if(process.env.NODE_ENV === 'production') Component.propTypes = { ... }in order to allow removing of proptypes in production builds.
- Peer dependency for react requires now
^0.14.9or^15.3.0 activeTabClassNamemoved from<TabList />to<Tabs />and renamed toselectedTabClassNamedisabledTabClassNamemoved from<TabList />to<Tabs />classNameproperty on all components now overwrites the default classes instead of adding a second class name
// 0.8
<Tabs className="tabs">
<TabList className="list">
<Tab className="tab" />
</TabList>
<TabPanel className="panel" />
</Tabs>
// Same effect in 1.0
<Tabs className={['tabs', 'react-tabs']}>
<TabList className={['list', 'react-tabs__tab-list']}>
<Tab className={['tab', 'react-tabs__tab']} />
</TabList>
<TabPanel className={['panel', 'react-tabs__tab-panel']} />
</Tabs>selectedIndexnow enables controlled mode, which disables internal management of the active tab. If you were usingselectedIndexbefore to set the initial displayed tab usedefaultIndexnow.- The value
-1forselectedIndexanddefaultIndexdo not activate the first tab anymore, but instead display no tab panel at all. Use-1if you want to display only the tabs but have non of them being selected. If you want to have the first tab selected us0. - Support for bower package manager was removed.
- Removed deprecated default export of tabs:
// 0.8
import ReactTabs from 'react-tabs';
<ReactTabs.Tabs></ReactTabs.Tabs>
// in 1.0
import { Tabs } from 'react-tabs';
<Tabs></Tabs>- Removed jsstylesheet dependency and removed default style from javascript. If you want to use the default styles you can use one of the supported methods (see README.md)
- The default class names were all lowercased and separated by hyphen, but still follow BEM methodology. E.g.
ReactTabs->react-tabs,ReactTabs__TabPanel--selected->react-tabs__tab-panel--selected <TabPanel />components do not set the inline styledisplay: noneanymore. Hidding and showing a tab panel is now completely done via css and classnames. If you have your own style for the tabs make sure to add the following rules:
.react-tabs__tab-panel {
display: none;
}
.react-tabs__tab-panel--selected {
display: block;
}
/* If you use custom class names obviously use the class names you set for the tab panels and selected tab panels */0.8.3 (2017-04-19)
- Fix deprecation warnings with react 15.5
0.8.2 (2016-10-19)
- Fix UMD build (#143)
0.8.0 (2016-09-14)
- Allow other components inside TabList (#123)
0.7.0 (2016-07-05)
- Fix warning with react 15.2
0.6.2 (2016-06-24)
0.6.1 (2016-06-23)
0.6.0 (2016-06-20)
- DOMNode.setAttribute() expects the second param to be string (#75, #76)
- Fix nesting of multiple instances of react-tabs (#103)
0.5.5 (2016-06-13)
- Fix main exports of react tabs which were broken in 0.5.4
0.5.4 (2016-06-10)
- Update to support react 15 (#94)
0.5.3 (2016-02-01)
- use correct spelling of aria-labelledby (#67)
0.5.2 (2016-01-29)
- Server Side Rendering won't work with default styles (#45)
0.5.1 (2015-10-22)
- Removing ReactDOM from bundle
0.5.0 (2015-10-22)
- New configuration to disable styling via jss (#25)
- Avoid white on white Tab labels (#40)
- Support react 0.14 (#43)
0.4.1 (2015-09-22)
- Do not bundle react into dist (#26)
0.4.0 (2015-08-18)
0.3.0 (2015-08-11)
- Support for disabling tabs
0.2.1 (2015-01-26)
0.2.0 (2015-01-07)
- Allowing children of Tab to select Tab (#9)
- Only render the selected TabPanel
- Upgrading to React 0.13
- Removing JSX
- Fixing issue with focus management (#7)
- Fixing issue caused by no children being provided (#6)
- Fixing issue that made dynamic Tabs difficult
0.1.2 (2014-07-23)
- Making Tab and TabPanel to be stateless
- Throwing Error when Tab count and TabPanel count aren't equal
0.1.1 (2014-07-19)
- Fixing warning: Invalid access to component property
- Fixing style weirdness in Firefox
- Initial release