ff-stream-web

git clone git://archive.git.mtrnord.blog/MTRNord/ff-stream-web.git
Log | Files | Refs | README | LICENSE

commit 1e9e83b25ce0426c9648a0950ffb29aecc8bc6a0
parent 3f99261016dd56b87acd1035f8ef23c3f01c23c8
Author: Konstantin Tarkus <hello@tarkus.me>
Date:   Tue, 16 Dec 2014 11:56:06 +0300

Add jshint ignore comments for JSX

Diffstat:
Mpackage.json | 2+-
Msrc/components/common/Link.js | 10+++++++++-
Msrc/components/forms/TextBox.js | 2++
Msrc/components/layout/App.js | 4++++
Msrc/components/layout/Navbar.js | 4++++
Msrc/components/layout/__tests__/Navbar-test.js | 4+++-
Msrc/components/pages/Home.js | 2++
Msrc/components/pages/Privacy.js | 4++++
8 files changed, 29 insertions(+), 3 deletions(-)

diff --git a/package.json b/package.json @@ -64,7 +64,7 @@ }, "scripts": { "start": "gulp", - "test": "jest", + "test": "jshint ./src && jest", "preupdate-webdriver": "npm install", "update-webdriver": "webdriver-manager update" } diff --git a/src/components/common/Link.js b/src/components/common/Link.js @@ -12,20 +12,28 @@ var React = require('react'); var RouteActions = require('../../actions/RouteActions'); var Link = React.createClass({ + propTypes: { to: React.PropTypes.string.isRequired }, + render() { this.props.href = this.props.to && this.props.to.lastIndexOf('/', 0) === 0 ? this.props.to : '/' + this.props.to; - return <a onClick={this.handleClick} {...this.props}>{this.props.children}</a>; + return ( + /* jshint ignore:start */ + <a onClick={this.handleClick} {...this.props}>{this.props.children}</a> + /* jshint ignore:end */ + ); }, + handleClick(e) { e.preventDefault(); RouteActions.setRoute(this.props.to); } + }); module.exports = Link; diff --git a/src/components/forms/TextBox.js b/src/components/forms/TextBox.js @@ -26,11 +26,13 @@ var TextBox = React.createClass({ render() { return ( + /* jshint ignore:start */ <div className="TextBox"> {this.props.maxLines > 1 ? <textarea {...this.props} className="TextBox-input" ref="input" key="input" rows={this.props.maxLines} /> : <input {...this.props} className="TextBox-input" ref="input" key="input" />} </div> + /* jshint ignore:end */ ); } diff --git a/src/components/layout/App.js b/src/components/layout/App.js @@ -36,6 +36,7 @@ var DefaultLayout = React.createClass({ }, render() { + /* jshint ignore:start */ var header = this.props.children.type.breadcrumb ? ( <div className="container"> <h2>{this.state.title}</h2> @@ -49,8 +50,10 @@ var DefaultLayout = React.createClass({ </div> </div> ); + /* jshint ignore:end */ return ( + /* jshint ignore:start */ <div> <Navbar /> {header} @@ -65,6 +68,7 @@ var DefaultLayout = React.createClass({ </div> </div> </div> + /* jshint ignore:end */ ); }, diff --git a/src/components/layout/Navbar.js b/src/components/layout/Navbar.js @@ -12,8 +12,10 @@ var React = require('react'); var Link = require('../common/Link'); var Navbar = React.createClass({ + render() { return ( + /* jshint ignore:start */ <div className="navbar-top" role="navigation"> <div className="container"> <Link className="navbar-brand row" to="/"> @@ -22,8 +24,10 @@ var Navbar = React.createClass({ </Link> </div> </div> + /* jshint ignore:end */ ); } + }); module.exports = Navbar; diff --git a/src/components/layout/__tests__/Navbar-test.js b/src/components/layout/__tests__/Navbar-test.js @@ -13,14 +13,16 @@ jest.dontMock('../Navbar'); describe('Navbar', function() { + it('sets class name', function() { var React = require('react/addons'); var TestUtils = React.addons.TestUtils; var Navbar = require('../Navbar'); - var Component = TestUtils.renderIntoDocument(<Navbar />); + var Component = TestUtils.renderIntoDocument(React.createElement(Navbar)); var element = TestUtils.findRenderedDOMComponentWithClass(Component, 'navbar-top'); expect(element).toBeDefined(); }); + }); diff --git a/src/components/pages/Home.js b/src/components/pages/Home.js @@ -24,6 +24,7 @@ var HomePage = React.createClass({ render() { return ( + /* jshint ignore:start */ <div className="container"> <div className="row"> <div className="col-sm-4"> @@ -54,6 +55,7 @@ var HomePage = React.createClass({ </div> </div> </div> + /* jshint ignore:end */ ); } diff --git a/src/components/pages/Privacy.js b/src/components/pages/Privacy.js @@ -18,10 +18,12 @@ var PrivacyPage = React.createClass({ statics: { layout: App, breadcrumb: ( + /* jshint ignore:start */ <ol className="breadcrumb"> <li><Link to="/">Home</Link></li> <li className="active">Privacy</li> </ol> + /* jshint ignore:end */ ) }, @@ -31,6 +33,7 @@ var PrivacyPage = React.createClass({ render() { return ( + /* jshint ignore:start */ <div className="container"> <p> Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean consequat tortor fermentum mi @@ -73,6 +76,7 @@ var PrivacyPage = React.createClass({ sapien nulla fermentum mauris, sed consectetur tortor arcu eget arcu. Vestibulum vel quam enim. </p> </div> + /* jshint ignore:end */ ); }