all files / modules/ IndexRoute.js

100% Statements 53/53
100% Branches 32/32
100% Functions 10/10
100% Lines 6/6
8 statements, 3 functions, 18 branches Ignored     
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47                              31× 31×                                                      
import warning from 'warning'
import invariant from 'invariant'
import React, { Component } from 'react'
import { createRouteFromReactElement } from './RouteUtils'
import { component, components, falsy } from './PropTypes'
 
const { bool, func } = React.PropTypes
 
/**
 * An <IndexRoute> is used to specify its parent's <Route indexRoute> in
 * a JSX route config.
 */
class IndexRoute extends Component {
 
  static createRouteFromReactElement(element, parentRoute) {
    /* istanbul ignore else: sanity check */
    Eif (parentRoute) {
      parentRoute.indexRoute = createRouteFromReactElement(element)
    } else {
      warning(
        false,
        'An <IndexRoute> does not make sense at the root of your route config'
      )
    }
  }
 
  static propTypes = {
    path: falsy,
    ignoreScrollBehavior: bool,
    component,
    components,
    getComponents: func
  }
 
  /* istanbul ignore next: sanity check */
  render() {
    invariant(
      false,
      '<IndexRoute> elements are for router configuration only and should not be rendered'
    )
  }
 
}
 
export default IndexRoute