commit 3c667900eeb2888dc885798d0ed11d6e33dc5797
Author: Emanuele Ingrosso <ingro85@gmail.com>
Date:   Wed Jun 14 09:58:59 2017 +0200

    Remove deprecation warning in react 15.6.0 about React.DOM.noscript

diff --git a/examples/basic/app.js b/examples/basic/app.js
index 83ff3a1..d0988f8 100644
--- a/examples/basic/app.js
+++ b/examples/basic/app.js
@@ -1,12 +1,13 @@
 var React = require('react');
 var ReactDOM = require('react-dom');
 var Modal = require('../../lib/index');
+var createReactClass = require('create-react-class');
 
 var appElement = document.getElementById('example');
 
 Modal.setAppElement('#example');
 
-var App = React.createClass({
+var App = createReactClass({
 
   getInitialState: function() {
     return { modalIsOpen: false, modal2: false };
diff --git a/lib/components/Modal.js b/lib/components/Modal.js
index dd56b6f..a9d017e 100644
--- a/lib/components/Modal.js
+++ b/lib/components/Modal.js
@@ -1,5 +1,6 @@
 var React = require('react');
 var ReactDOM = require('react-dom');
+var DOMFactories = require('react-dom-factories');
 var PropTypes = require('prop-types');
 var ExecutionEnvironment = require('exenv');
 var ModalPortal = React.createFactory(require('./ModalPortal'));
@@ -8,7 +9,7 @@ var refCount = require('../helpers/refCount');
 var elementClass = require('element-class');
 var renderSubtreeIntoContainer = require("react-dom").unstable_renderSubtreeIntoContainer;
 var Assign = require('lodash.assign');
-var createReactClass = require('create-react-class')
+var createReactClass = require('create-react-class');
 
 var SafeHTMLElement = ExecutionEnvironment.canUseDOM ? window.HTMLElement : {};
 var AppElement = ExecutionEnvironment.canUseDOM ? document.body : {appendChild: function() {}};
@@ -145,7 +146,7 @@ var Modal = createReactClass({
   },
 
   render: function () {
-    return React.DOM.noscript();
+    return DOMFactories.noscript();
   }
 });
 
diff --git a/lib/components/ModalPortal.js b/lib/components/ModalPortal.js
index e9cfeff..ec91d85 100644
--- a/lib/components/ModalPortal.js
+++ b/lib/components/ModalPortal.js
@@ -1,10 +1,12 @@
 var React = require('react');
-var div = React.DOM.div;
+var DOMFactories = require('react-dom-factories');
 var focusManager = require('../helpers/focusManager');
 var scopeTab = require('../helpers/scopeTab');
 var Assign = require('lodash.assign');
 var createReactClass = require('create-react-class');
 
+var div = DOMFactories.div;
+
 // so that our CSS is statically analyzable
 var CLASS_NAMES = {
   overlay: 'ReactModal__Overlay',
diff --git a/package.json b/package.json
index bb37c85..431caee 100644
--- a/package.json
+++ b/package.json
@@ -53,7 +53,8 @@
     "element-class": "^0.2.0",
     "exenv": "1.2.0",
     "lodash.assign": "^4.2.0",
-    "prop-types": "^15.5.7"
+    "prop-types": "^15.5.7",
+    "react-dom-factories": "^1.0.0"
   },
   "peerDependencies": {
     "react": "^0.14.0 || ^15.0.0",
diff --git a/specs/Modal.spec.js b/specs/Modal.spec.js
index 620df92..bbf13e7 100644
--- a/specs/Modal.spec.js
+++ b/specs/Modal.spec.js
@@ -5,6 +5,7 @@ import React, { Component } from 'react';
 import ReactDOM from 'react-dom';
 import TestUtils from 'react-addons-test-utils';
 import Modal from '../lib/components/Modal';
+import createReactClass from 'create-react-class';
 import * as ariaAppHider from '../lib/helpers/ariaAppHider';
 import {
   isBodyWithReactModalOpenClass, findDOMWithClass,
@@ -62,7 +63,7 @@ describe('State', () => {
 
   it('renders into the body, not in context', () => {
     var node = document.createElement('div');
-    var App = React.createClass({
+    var App = createReactClass({
       render() {
         return (
           <div>
@@ -346,7 +347,7 @@ describe('State', () => {
     var node = document.createElement('div');
     var modal = null;
 
-    var App = React.createClass({
+    var App = createReactClass({
       getInitialState: function () {
         return { testHasChanged: false };
       },
diff --git a/yarn.lock b/yarn.lock
index 1547b46..b27c6c2 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -1,5 +1,7 @@
 # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
 # yarn lockfile v1
+
+
 abbrev@1, abbrev@~1.0.7, abbrev@~1.0.9:
   version "1.0.9"
   resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.0.9.tgz#91b4792588a7738c25f35dd6f63752a2f8776135"
@@ -1092,6 +1094,13 @@ create-react-class@^15.5.2:
     fbjs "^0.8.9"
     object-assign "^4.1.1"
 
+cross-env@^5.0.1:
+  version "5.0.1"
+  resolved "https://registry.yarnpkg.com/cross-env/-/cross-env-5.0.1.tgz#ff4e72ea43b47da2486b43a7f2043b2609e44913"
+  dependencies:
+    cross-spawn "^5.1.0"
+    is-windows "^1.0.0"
+
 cross-spawn@^4.0.0:
   version "4.0.2"
   resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-4.0.2.tgz#7b9247621c23adfdd3856004a823cbe397424d41"
@@ -1099,6 +1108,14 @@ cross-spawn@^4.0.0:
     lru-cache "^4.0.1"
     which "^1.2.9"
 
+cross-spawn@^5.1.0:
+  version "5.1.0"
+  resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449"
+  dependencies:
+    lru-cache "^4.0.1"
+    shebang-command "^1.2.0"
+    which "^1.2.9"
+
 cryptiles@2.x.x:
   version "2.0.5"
   resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-2.0.5.tgz#3bdfecdc608147c1c67202fa291e7dca59eaa3b8"
@@ -2224,6 +2241,10 @@ is-utf8@^0.2.0:
   version "0.2.1"
   resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72"
 
+is-windows@^1.0.0:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.1.tgz#310db70f742d259a16a369202b51af84233310d9"
+
 isarray@0.0.1:
   version "0.0.1"
   resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf"
@@ -3545,6 +3566,10 @@ react-addons-test-utils@^15.0.0:
   version "15.4.1"
   resolved "https://registry.yarnpkg.com/react-addons-test-utils/-/react-addons-test-utils-15.4.1.tgz#1e4caab151bf27cce26df5f9cb714f4fd8359ae1"
 
+react-dom-factories@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/react-dom-factories/-/react-dom-factories-1.0.0.tgz#f43c05e5051b304f33251618d5bc859b29e46b6d"
+
 react-dom@^15.0.0:
   version "15.4.1"
   resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-15.4.1.tgz#d54c913261aaedb17adc20410d029dcc18a1344a"
@@ -3979,6 +4004,16 @@ sha@~2.0.1:
     graceful-fs "^4.1.2"
     readable-stream "^2.0.2"
 
+shebang-command@^1.2.0:
+  version "1.2.0"
+  resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea"
+  dependencies:
+    shebang-regex "^1.0.0"
+
+shebang-regex@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3"
+
 shell-quote@^1.6.1:
   version "1.6.1"
   resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.6.1.tgz#f4781949cce402697127430ea3b3c5476f481767"
@@ -4676,4 +4711,3 @@ yargs@~3.5.4:
 yeast@0.1.2:
   version "0.1.2"
   resolved "https://registry.yarnpkg.com/yeast/-/yeast-0.1.2.tgz#008e06d8094320c372dbc2f8ed76a0ca6c8ac419"
-
