diff --git a/.babelrc b/.babelrc index b0b9a96..01b9c8d 100644 --- a/.babelrc +++ b/.babelrc @@ -1,3 +1,9 @@ { - "stage": 0 -} + "presets": [ + ["env", { + "modules": "commonjs" + }], + "stage-0", + "react" + ] +} \ No newline at end of file diff --git a/package.json b/package.json index 86510e5..12ee29b 100644 --- a/package.json +++ b/package.json @@ -7,16 +7,20 @@ "test": "test" }, "peerDependencies": { - "react": "^0.14.6 || ^15.0.0-0 || ^16.0.0", - "react-dom": "^0.14.6 || ^15.0.0-0 || ^16.0.0" + "react": "^16.0.0", + "react-dom": "^16.0.0" }, "devDependencies": { - "babel": "5.8.34", + "babel-cli": "^6.26.0", + "babel-preset-env": "^1.7.0", + "babel-preset-react": "^6.24.1", + "babel-preset-stage-0": "^6.24.1", "eslint-config-future": "^2.1.1", "gitbook-cli": "2.3.0", "gitbook-plugin-prism": "^1.1.0", "gitbook-plugin-todo": "0.1.2", "mocha": "2.3.4", + "path-is-inside": "^1.0.2", "prop-types": "^15.5.8", "react": "^16.0.0", "react-dom": "^16.0.0" @@ -24,7 +28,7 @@ "scripts": { "build": "npm run clean && npm run build:docs && npm run build:lib", "build:docs": "gitbook build -g ericclemmons/react-resolver", - "build:lib": "babel --out-dir dist src", + "build:lib": "node node_modules/babel-cli/bin/babel.js --out-dir dist src", "clean": "npm run clean:docs && npm run clean:lib", "clean:docs": "rm -rf _book", "clean:lib": "rm -rf dist", diff --git a/src/Resolver.js b/src/Resolver.js index 9a22de8..c48e264 100644 --- a/src/Resolver.js +++ b/src/Resolver.js @@ -45,6 +45,16 @@ export default class Resolver extends React.Component { delete window[PAYLOAD]; } + static hydrate = function(render, node, data = window[PAYLOAD]) { + ReactDOM.hydrate(( + + {render} + + ), node); + + delete window[PAYLOAD]; + } + static resolve = function(render, initialData = {}) { const queue = [];