Sha256: 2efac40dca9d1d121763b08374fc6e08c48fe64ddc2ace557116095b9c7384be
Contents?: true
Size: 1.88 KB
Versions: 1
Compression:
Stored size: 1.88 KB
Contents
Rev.registerComponent 'StatelessTabContent', propTypes: activeKey: React.PropTypes.string.isRequired children: React.PropTypes.node.isRequired renderContent: (child) -> newProps = key: child.key newProps.active = true if child.key == this.props.activeKey React.cloneElement child, newProps render: -> <div className="RevTabs-content tabs-content"> {@getNormalizedChildren().map @renderContent} </div> Rev.registerComponent 'StatelessTabs', getDefaultProps: -> activeKey: null onChange: () -> # noop getActiveKey: -> @props.activeKey or @getNormalizedChildren()[0]?.key renderTab: (child) -> className = @classSet active: child.key == @getActiveKey() 'RevTabs-tab': true <dd key={child.key} className={className} onClick={@handleTabClick(child)}> {child.props.tab} </dd> renderContent: (child) -> newProps = key: child.key newProps.active = true if child.key == @getActiveKey() React.cloneElement child, newProps render: -> dlClassName = @classSet 'RevTabs-tabs': true tabs: true vertical: @props.vertical <div className='RevTabs'> <dl className={dlClassName}> {@getNormalizedChildren().map @renderTab} </dl> <Rev.Components.StatelessTabContent {...@props} activeKey={@getActiveKey()}> {@props.children} </Rev.Components.StatelessTabContent> </div> handleTabClick: (activeTab) -> (e) => e.preventDefault() e.stopPropagation() e.activeTab = activeTab @props.onChange(e) Rev.registerComponent 'Tabs', getDefaultProps: -> onChange: () -> # noop getInitialState: -> activeKey: @props.activeKey render: -> <Rev.Components.StatelessTabs {...@props} activeKey={@state.activeKey} onChange={@handleChange} /> handleChange: (e) -> @setState activeKey: e.activeTab.key @props.onChange e
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
revelry_core-0.1.11.6 | app/assets/javascripts/revelry/ui/tabs/Tabs.js.cjsx |