'use strict'; var React = require('react'); var RouteHandler = require('./components/RouteHandler'); var PropTypes = require('./PropTypes'); exports.Nested = React.createClass({ displayName: 'Nested', render: function render() { return React.createElement( 'div', null, React.createElement( 'h1', { className: 'Nested' }, 'Nested' ), React.createElement(RouteHandler, null) ); } }); exports.Foo = React.createClass({ displayName: 'Foo', render: function render() { return React.createElement( 'div', { className: 'Foo' }, 'Foo' ); } }); exports.Bar = React.createClass({ displayName: 'Bar', render: function render() { return React.createElement( 'div', { className: 'Bar' }, 'Bar' ); } }); exports.Baz = React.createClass({ displayName: 'Baz', render: function render() { return React.createElement( 'div', { className: 'Baz' }, 'Baz' ); } }); exports.Async = React.createClass({ displayName: 'Async', statics: { delay: 10, willTransitionTo: function willTransitionTo(transition, params, query, callback) { setTimeout(callback, exports.Async.delay); } }, render: function render() { return React.createElement( 'div', { className: 'Async' }, 'Async' ); } }); exports.RedirectToFoo = React.createClass({ displayName: 'RedirectToFoo', statics: { willTransitionTo: function willTransitionTo(transition) { transition.redirect('/foo'); } }, render: function render() { return null; } }); exports.RedirectToFooAsync = React.createClass({ displayName: 'RedirectToFooAsync', statics: { delay: 10, willTransitionTo: function willTransitionTo(transition, params, query, callback) { setTimeout(function () { transition.redirect('/foo'); callback(); }, exports.RedirectToFooAsync.delay); } }, render: function render() { return null; } }); exports.Abort = React.createClass({ displayName: 'Abort', statics: { willTransitionTo: function willTransitionTo(transition) { transition.abort(); } }, render: function render() { return null; } }); exports.AbortAsync = React.createClass({ displayName: 'AbortAsync', statics: { delay: 10, willTransitionTo: function willTransitionTo(transition, params, query, callback) { setTimeout(function () { transition.abort(); callback(); }, exports.AbortAsync.delay); } }, render: function render() { return null; } }); exports.EchoFooProp = React.createClass({ displayName: 'EchoFooProp', render: function render() { return React.createElement( 'div', null, this.props.foo ); } }); exports.EchoBarParam = React.createClass({ displayName: 'EchoBarParam', contextTypes: { router: PropTypes.router.isRequired }, render: function render() { return React.createElement( 'div', { className: 'EchoBarParam' }, this.context.router.getCurrentParams().bar ); } });