diff --git a/src/core/ReactComponent.js b/src/core/ReactComponent.js index 8e7a64ad9e..67b4e90207 100644 --- a/src/core/ReactComponent.js +++ b/src/core/ReactComponent.js @@ -16,6 +16,8 @@ * @providesModule ReactComponent */ +/*jslint evil: true */ + "use strict"; var ReactCurrentOwner = require('ReactCurrentOwner'); @@ -125,7 +127,9 @@ function assignKey(groupingIndex, child, index) { function tryToReuseArray(children) { for (var i = 0; i < children.length; i++) { var child = children[i]; - if (isEmptyChild(child)) return false; + if (isEmptyChild(child)) { + return false; + } assignKey(0, child, i); } return true; @@ -142,7 +146,9 @@ function tryToReuseArray(children) { function appendNestedChildren(groupingIndex, sourceArray, targetArray) { for (var i = 0; i < sourceArray.length; i++) { var child = sourceArray[i]; - if (isEmptyChild(child)) continue; + if (isEmptyChild(child)) { + continue; + } assignKey(groupingIndex, child, i); // TODO: Invalid components like strings could possibly need // keys assigned to them here. Usually they're not stateful but @@ -338,9 +344,13 @@ var ReactComponent = { for (var i = 1; i < arguments.length; i++) { var child = arguments[i]; if (Array.isArray(child)) { - if (child.length === 0) continue; + if (child.length === 0) { + continue; + } - if (targetArray === null) targetArray = []; + if (targetArray === null) { + targetArray = []; + } appendNestedChildren(i - 1, child, targetArray); } else if (!isEmptyChild(child)) { @@ -352,7 +362,9 @@ var ReactComponent = { child._key = createKey(child.props.key, i - 1); } - if (targetArray === null) targetArray = []; + if (targetArray === null) { + targetArray = []; + } targetArray.push(child); } diff --git a/src/core/ReactCurrentOwner.js b/src/core/ReactCurrentOwner.js index 4a6b96ef96..9ac0ab6ede 100644 --- a/src/core/ReactCurrentOwner.js +++ b/src/core/ReactCurrentOwner.js @@ -40,7 +40,9 @@ var ReactCurrentOwner = { */ getDepth: function() { var owner = ReactCurrentOwner.current; - if (!owner) return 0; + if (!owner) { + return 0; + } return owner._compositionLevel; } diff --git a/src/core/__tests__/ReactDOM-test.js b/src/core/__tests__/ReactDOM-test.js index f327b147b9..3d20fd6e16 100644 --- a/src/core/__tests__/ReactDOM-test.js +++ b/src/core/__tests__/ReactDOM-test.js @@ -17,6 +17,8 @@ * @emails react-core */ +/*jslint evil: true */ + "use strict"; var React = require('React'); @@ -81,27 +83,30 @@ describe('ref swapping', function() { theBird:
}}
); + // Warm the cache with theDog myDiv.setProps({ children: { - theDog:
, // Warm the cache with theDog + theDog:
, theBird:
} }); - myDiv.setProps({ - children: { // This better purge that cache - theBird:
- } - }); - // Now, put the dog back. + // Remove theDog - this should purge the cache myDiv.setProps({ children: { - theDog:
, // This is a different node than before theBird:
} }); + // Now, put theDog back. It's now a different DOM node. myDiv.setProps({ - children: { // className changed to bigdog. - theDog:
, // but will it use the proper element + children: { + theDog:
, + theBird:
+ } + }); + // Change the className of theDog. It will use the same element + myDiv.setProps({ + children: { + theDog:
, theBird:
} }); diff --git a/src/core/__tests__/ReactInstanceHandles-test.js b/src/core/__tests__/ReactInstanceHandles-test.js index 4c7b227381..95e03d8250 100644 --- a/src/core/__tests__/ReactInstanceHandles-test.js +++ b/src/core/__tests__/ReactInstanceHandles-test.js @@ -22,8 +22,6 @@ var React = require('React'); var ReactTestUtils = require('ReactTestUtils'); -var reactComponentExpect= require('reactComponentExpect'); - /** * Ensure that all callbacks are invoked, passing this unique argument. */ diff --git a/src/core/__tests__/ReactMountDestruction-test.js b/src/core/__tests__/ReactMountDestruction-test.js index 6a993ea680..2654dfc632 100644 --- a/src/core/__tests__/ReactMountDestruction-test.js +++ b/src/core/__tests__/ReactMountDestruction-test.js @@ -19,12 +19,7 @@ "use strict"; -var ReactMount = require('ReactMount'); var React = require('React'); -var ReactTestUtils = require('ReactTestUtils'); -var ReactMount = require('ReactMount'); - -var reactComponentExpect = require('reactComponentExpect'); describe('ReactMount', function() { it("should destroy a react root upon request", function() { diff --git a/src/core/__tests__/ReactMultiChildText-test.js b/src/core/__tests__/ReactMultiChildText-test.js index 85195a5176..a842d89e14 100644 --- a/src/core/__tests__/ReactMultiChildText-test.js +++ b/src/core/__tests__/ReactMultiChildText-test.js @@ -17,13 +17,14 @@ * @emails react-core */ +/*jslint evil: true */ + "use strict"; require('mock-modules'); var React = require('React'); var ReactTestUtils = require('ReactTestUtils'); -var ReactTextComponent = require('ReactTextComponent'); var reactComponentExpect = require('reactComponentExpect'); @@ -141,7 +142,7 @@ describe('ReactMultiChildText', function() { assertMultiChild(d, 'hello', 'goodbye'); }); - it('should render zero string as text node then switch to spans', function() { + it('should render zero string as text node then switch to spans', function() { var d = renderSingleTextChild('0'); // false should act exactly as a null child assertNodeText(d, '0'); @@ -149,7 +150,7 @@ describe('ReactMultiChildText', function() { assertMultiChild(d, 'hello', 'goodbye'); }); - it('should render zero number as text node then switch to spans', function() { + it('should render zero number as text node then switch to spans', function() { var d = renderSingleTextChild('0'); // false should act exactly as a null child assertNodeText(d, 0); diff --git a/src/core/__tests__/ReactProps-test.js b/src/core/__tests__/ReactProps-test.js index 82cb58ebee..df9080ae3e 100644 --- a/src/core/__tests__/ReactProps-test.js +++ b/src/core/__tests__/ReactProps-test.js @@ -26,7 +26,7 @@ function typeCheck(declaration, value) { if (arguments.length > 1) { props.testProp = value; } - return declaration.bind(this, props, 'testProp', 'testComponent'); + return declaration.bind(null, props, 'testProp', 'testComponent'); } describe('Primitive Types', function() { diff --git a/src/dom/DOMChildrenOperations.js b/src/dom/DOMChildrenOperations.js index f1fd2fc85f..ce0f762a39 100644 --- a/src/dom/DOMChildrenOperations.js +++ b/src/dom/DOMChildrenOperations.js @@ -16,6 +16,9 @@ * @providesModule DOMChildrenOperations */ +// Empty blocks improve readability so disable that warning +// jshint -W035 + "use strict"; var Danger = require('Danger'); diff --git a/src/dom/Danger.js b/src/dom/Danger.js index 0117e2ef5e..1181739679 100644 --- a/src/dom/Danger.js +++ b/src/dom/Danger.js @@ -16,6 +16,8 @@ * @providesModule Danger */ +/*jslint evil: true */ + "use strict"; var ExecutionEnvironment = require('ExecutionEnvironment'); diff --git a/src/dom/__tests__/CSSPropertyOperations-test.js b/src/dom/__tests__/CSSPropertyOperations-test.js index 3918d801af..2164c38e9f 100644 --- a/src/dom/__tests__/CSSPropertyOperations-test.js +++ b/src/dom/__tests__/CSSPropertyOperations-test.js @@ -17,6 +17,8 @@ * @emails react-core */ +/*jslint evil: true */ + "use strict"; var React = require('React'); diff --git a/src/dom/getEventTarget.js b/src/dom/getEventTarget.js index 9529e3932f..7cb4ce3eb7 100644 --- a/src/dom/getEventTarget.js +++ b/src/dom/getEventTarget.js @@ -17,6 +17,8 @@ * @typechecks */ +"use strict"; + var ExecutionEnvironment = require('ExecutionEnvironment'); /** diff --git a/src/environment/__tests__/ReactServerRendering-test.js b/src/environment/__tests__/ReactServerRendering-test.js index 779730a68f..ebbad6b4b0 100644 --- a/src/environment/__tests__/ReactServerRendering-test.js +++ b/src/environment/__tests__/ReactServerRendering-test.js @@ -17,6 +17,8 @@ * @emails react-core */ +/*jslint evil: true */ + "use strict"; require('mock-modules') @@ -147,7 +149,7 @@ describe('ReactServerRendering', function() { return ( Name: {this.props.name} ); - }, + } }); var element = document.createElement('div'); diff --git a/src/event/synthetic/SyntheticEvent.js b/src/event/synthetic/SyntheticEvent.js index c72275f679..366da3cbc6 100644 --- a/src/event/synthetic/SyntheticEvent.js +++ b/src/event/synthetic/SyntheticEvent.js @@ -17,6 +17,8 @@ * @typechecks */ +"use strict"; + var PooledClass = require('PooledClass'); var emptyFunction = require('emptyFunction'); diff --git a/src/event/synthetic/SyntheticFocusEvent.js b/src/event/synthetic/SyntheticFocusEvent.js index 8ba8e73c5c..a90ba3f79a 100644 --- a/src/event/synthetic/SyntheticFocusEvent.js +++ b/src/event/synthetic/SyntheticFocusEvent.js @@ -17,6 +17,8 @@ * @typechecks */ +"use strict"; + var SyntheticUIEvent = require('SyntheticUIEvent'); /** diff --git a/src/event/synthetic/SyntheticKeyboardEvent.js b/src/event/synthetic/SyntheticKeyboardEvent.js index 64448c91f9..6e6b078282 100644 --- a/src/event/synthetic/SyntheticKeyboardEvent.js +++ b/src/event/synthetic/SyntheticKeyboardEvent.js @@ -17,6 +17,8 @@ * @typechecks */ +"use strict"; + var SyntheticUIEvent = require('SyntheticUIEvent'); /** diff --git a/src/event/synthetic/SyntheticMouseEvent.js b/src/event/synthetic/SyntheticMouseEvent.js index fa3fed1c23..6272fbb83a 100644 --- a/src/event/synthetic/SyntheticMouseEvent.js +++ b/src/event/synthetic/SyntheticMouseEvent.js @@ -17,6 +17,8 @@ * @typechecks */ +"use strict"; + var BrowserEnv = require('BrowserEnv'); var SyntheticUIEvent = require('SyntheticUIEvent'); diff --git a/src/event/synthetic/SyntheticMutationEvent.js b/src/event/synthetic/SyntheticMutationEvent.js index 84fcbf187b..55ae1baa35 100644 --- a/src/event/synthetic/SyntheticMutationEvent.js +++ b/src/event/synthetic/SyntheticMutationEvent.js @@ -17,6 +17,8 @@ * @typechecks */ +"use strict"; + var SyntheticEvent = require('SyntheticEvent'); /** diff --git a/src/event/synthetic/SyntheticTouchEvent.js b/src/event/synthetic/SyntheticTouchEvent.js index ccc4fe89d1..304e592608 100644 --- a/src/event/synthetic/SyntheticTouchEvent.js +++ b/src/event/synthetic/SyntheticTouchEvent.js @@ -17,6 +17,8 @@ * @typechecks */ +"use strict"; + var SyntheticUIEvent = require('SyntheticUIEvent'); /** diff --git a/src/event/synthetic/SyntheticUIEvent.js b/src/event/synthetic/SyntheticUIEvent.js index 314d9d81b1..4e2b0d5964 100644 --- a/src/event/synthetic/SyntheticUIEvent.js +++ b/src/event/synthetic/SyntheticUIEvent.js @@ -17,6 +17,8 @@ * @typechecks */ +"use strict"; + var SyntheticEvent = require('SyntheticEvent'); /** diff --git a/src/event/synthetic/SyntheticWheelEvent.js b/src/event/synthetic/SyntheticWheelEvent.js index 857c8eaa9f..bab71dd4ba 100644 --- a/src/event/synthetic/SyntheticWheelEvent.js +++ b/src/event/synthetic/SyntheticWheelEvent.js @@ -17,6 +17,8 @@ * @typechecks */ +"use strict"; + var SyntheticMouseEvent = require('SyntheticMouseEvent'); /** diff --git a/src/eventPlugins/EnterLeaveEventPlugin.js b/src/eventPlugins/EnterLeaveEventPlugin.js index e4967e91dd..c3fe3a8fe7 100644 --- a/src/eventPlugins/EnterLeaveEventPlugin.js +++ b/src/eventPlugins/EnterLeaveEventPlugin.js @@ -72,8 +72,9 @@ var EnterLeaveEventPlugin = { var from, to; if (topLevelType === topLevelTypes.topMouseOut) { from = topLevelTarget; - to = getFirstReactDOM(nativeEvent.relatedTarget || nativeEvent.toElement) - || ExecutionEnvironment.global; + to = + getFirstReactDOM(nativeEvent.relatedTarget || nativeEvent.toElement) || + ExecutionEnvironment.global; } else { from = ExecutionEnvironment.global; to = topLevelTarget; diff --git a/src/utils/__tests__/ImmutableObject-test.js b/src/utils/__tests__/ImmutableObject-test.js index fbcda924ae..3b9bae72cb 100644 --- a/src/utils/__tests__/ImmutableObject-test.js +++ b/src/utils/__tests__/ImmutableObject-test.js @@ -23,9 +23,6 @@ require('mock-modules') var ImmutableObject; -var expectSeriallyEqual = function(one, two) { -}; - /** * To perform performance testing of using `ImmutableObject` vs. not using * `ImmutableObject`, such testing must be done with __DEV__ set to false. @@ -270,7 +267,7 @@ describe('ImmutableObject', function() { }); expect(afterIO).toBeSeriallyEqualTo({ a: {b: {}, c: 'C', d: 'd', e: {f: 'F', g: 'G'}, h: 'H'} - }) + }); expect(afterIO).not.toBe(beforeIO); expect(afterIO.a).not.toBe(beforeIO.a); expect(afterIO.a.e).not.toBe(beforeIO.a.e); diff --git a/src/utils/mergeDeepInto.js b/src/utils/mergeDeepInto.js index daa637624d..36131bb320 100644 --- a/src/utils/mergeDeepInto.js +++ b/src/utils/mergeDeepInto.js @@ -16,6 +16,9 @@ * @providesModule mergeDeepInto */ +// Empty blocks improve readability so disable that warning +// jshint -W035 + "use strict"; var keyMirror = require('keyMirror');