From 6c470931648c3552e79c1e98c4468e34a3c36ae8 Mon Sep 17 00:00:00 2001 From: Gabriel Bull Date: Mon, 17 Apr 2017 20:00:51 -0400 Subject: [PATCH] Made compatible with react 15.5 --- CHANGELOG.md | 4 ++++ src/components/AsyncRenderer.jsx | 8 ++++---- src/components/Module.jsx | 10 +++++----- src/components/ServerStateProvider.jsx | 8 ++++---- src/components/fetchState.jsx | 10 +++++----- src/renderer/renderPass.js | 2 +- test/tests/components/fetchState/includes/Foo.jsx | 4 ++-- test/tests/components/module/includes/Foo.jsx | 2 +- test/tests/renderer/includes/App.jsx | 2 +- test/tests/renderer/includes/Foo.jsx | 4 ++-- test/tests/stats/includes/Foo.jsx | 2 +- 11 files changed, 30 insertions(+), 26 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f8d1b48..b728171 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # CHANGELOG +# 4.0.1 (...) + +- Made compatible with React 15.5 + # 4.0.0 (March 22th, 2017) - Removed support for react-router beta and cleaned up diff --git a/src/components/AsyncRenderer.jsx b/src/components/AsyncRenderer.jsx index 6ba26dc..c707aab 100644 --- a/src/components/AsyncRenderer.jsx +++ b/src/components/AsyncRenderer.jsx @@ -1,12 +1,12 @@ -import * as React from 'react'; +import React, { Component } from 'react'; -class AsyncRenderer extends React.Component { +class AsyncRenderer extends Component { static propTypes = { - context: React.PropTypes.object.isRequired + context: () => null }; static childContextTypes = { - reactRouterServerAsyncRenderer: React.PropTypes.object + reactRouterServerAsyncRenderer: () => null }; fetchStateResults = {}; diff --git a/src/components/Module.jsx b/src/components/Module.jsx index ee59451..d23b626 100644 --- a/src/components/Module.jsx +++ b/src/components/Module.jsx @@ -1,17 +1,17 @@ -import * as React from 'react'; +import React, { Component } from 'react'; import { exists, add, fetch } from '../module/cache'; import { exists as preloadExists, fetch as preloadFetch } from '../module/preload'; import { default as load } from '../module/load'; import isNode from '../utils/isNode'; -class Module extends React.Component { +class Module extends Component { static propTypes = { - module: React.PropTypes.func.isRequired, - children: React.PropTypes.func + module: () => null, + children: () => null }; static contextTypes = { - reactRouterServerAsyncRenderer: React.PropTypes.object + reactRouterServerAsyncRenderer: () => null }; state = { diff --git a/src/components/ServerStateProvider.jsx b/src/components/ServerStateProvider.jsx index d46e8a7..c8d3104 100644 --- a/src/components/ServerStateProvider.jsx +++ b/src/components/ServerStateProvider.jsx @@ -1,13 +1,13 @@ -import React, { Component, PropTypes } from 'react'; +import React, { Component } from 'react'; class ServerStateProvider extends Component { static propTypes = { - state: PropTypes.object, - children: PropTypes.oneOfType([PropTypes.element, PropTypes.func, PropTypes.node]), + state: () => null, + children: () => null, }; static childContextTypes = { - reactRouterServerServerState: PropTypes.object + reactRouterServerServerState: () => null }; fetchStateIndex = 0; diff --git a/src/components/fetchState.jsx b/src/components/fetchState.jsx index 3433ea1..33ef07c 100644 --- a/src/components/fetchState.jsx +++ b/src/components/fetchState.jsx @@ -1,16 +1,16 @@ -import React, { Component, PropTypes } from 'react'; +import React, { Component } from 'react'; import isNode from '../utils/isNode'; export default (mapStateToProps, mapActionsToProps) => WrappedComponent =>{ return class extends Component { static contextTypes = { - reactRouterServerAsyncRenderer: PropTypes.object, - reactRouterServerServerState: PropTypes.object, - reactRouterServerFetchStateParentIndex: PropTypes.string + reactRouterServerAsyncRenderer: () => null, + reactRouterServerServerState: () => null, + reactRouterServerFetchStateParentIndex: () => null }; static childContextTypes = { - reactRouterServerFetchStateParentIndex: PropTypes.string + reactRouterServerFetchStateParentIndex: () => null }; getChildContext() { diff --git a/src/renderer/renderPass.js b/src/renderer/renderPass.js index ca796b0..0c2519b 100644 --- a/src/renderer/renderPass.js +++ b/src/renderer/renderPass.js @@ -1,4 +1,4 @@ -import * as React from 'react'; +import React from 'react'; import { renderToString, renderToStaticMarkup } from 'react-dom/server'; import AsyncRenderer from '../components/AsyncRenderer'; import removeDuplicateModules from '../utils/removeDuplicateModules'; diff --git a/test/tests/components/fetchState/includes/Foo.jsx b/test/tests/components/fetchState/includes/Foo.jsx index c308e8a..d99774c 100644 --- a/test/tests/components/fetchState/includes/Foo.jsx +++ b/test/tests/components/fetchState/includes/Foo.jsx @@ -1,11 +1,11 @@ -import * as React from 'react'; +import React, { Component } from 'react'; import fetchState from '../../../../../src/components/fetchState'; @fetchState( ({ message }) => ({ message }), ({ done }) => ({ done }) ) -class Foo extends React.Component { +class Foo extends Component { componentWillMount() { setTimeout(() => { // do something async diff --git a/test/tests/components/module/includes/Foo.jsx b/test/tests/components/module/includes/Foo.jsx index 87a847d..854a2a5 100644 --- a/test/tests/components/module/includes/Foo.jsx +++ b/test/tests/components/module/includes/Foo.jsx @@ -1,2 +1,2 @@ -import * as React from 'react'; +import React from 'react'; export default (props) =>
foobar
; diff --git a/test/tests/renderer/includes/App.jsx b/test/tests/renderer/includes/App.jsx index c7d3168..f1617ea 100644 --- a/test/tests/renderer/includes/App.jsx +++ b/test/tests/renderer/includes/App.jsx @@ -1,4 +1,4 @@ -import * as React from 'react'; +import React from 'react'; import Module from '../../../../src/components/Module'; const App = (props) => ( diff --git a/test/tests/renderer/includes/Foo.jsx b/test/tests/renderer/includes/Foo.jsx index 320ba1b..5bf5cb5 100644 --- a/test/tests/renderer/includes/Foo.jsx +++ b/test/tests/renderer/includes/Foo.jsx @@ -1,11 +1,11 @@ -import * as React from 'react'; +import React, { Component } from 'react'; import fetchState from '../../../../src/components/fetchState'; @fetchState( ({ message }) => ({ message }), ({ done }) => ({ done }), ) -class Foo extends React.Component { +class Foo extends Component { componentWillMount() { setTimeout(() => { this.props.done({ message: 'foobar' }); diff --git a/test/tests/stats/includes/Foo.jsx b/test/tests/stats/includes/Foo.jsx index 87a847d..854a2a5 100644 --- a/test/tests/stats/includes/Foo.jsx +++ b/test/tests/stats/includes/Foo.jsx @@ -1,2 +1,2 @@ -import * as React from 'react'; +import React from 'react'; export default (props) =>
foobar
;