Skip to content
This repository has been archived by the owner on Mar 15, 2018. It is now read-only.

createContainer.js: added getComponent() to return the original component #61

Closed
wants to merge 5 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "react-transmit",
"name": "react-setup-transmit",
"description": "Relay-inspired library based on Promises instead of GraphQL.",
"version": "3.1.7",
"version": "3.1.8",
"license": "BSD-3-Clause",
"repository": {
"type": "git",
Expand Down Expand Up @@ -35,8 +35,8 @@
"fetch-plus-json": "3.6.0",
"isomorphic-fetch": "2.2.0",
"json-loader": "0.5.4",
"react": "0.14.6",
"react-dom": "0.14.6",
"react": "15.1.0",
"react-dom": "15.1.0",
"react-hot-loader": "1.3.0",
"react-inline-css": "2.1.0",
"webpack": "1.12.11",
Expand Down
8 changes: 0 additions & 8 deletions src/lib/assign.js

This file was deleted.

14 changes: 8 additions & 6 deletions src/lib/createContainer.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@
var isRootContainer = require("./isRootContainer");
var promiseProxy = require("./promiseProxy");
var React = require("./react");
var assign = require("./assign");
var assignProperty = require("./assignProperty");

/**
Expand Down Expand Up @@ -39,7 +38,7 @@ module.exports = function (Component, options) {
throw new Error(Component.displayName + " has no '" + fragmentName +"' fragment")
}

variables = assign({}, Container.variables, variables || {});
variables = Object.assign({}, Container.variables, variables || {});

var promise = Container.fragments[fragmentName](variables);

Expand Down Expand Up @@ -82,8 +81,11 @@ module.exports = function (Component, options) {
return promiseProxy.Promise.all(
promises
).then(function (fetchedFragments) {
return assign.apply(null, fetchedFragments);
return Object.assign.apply(null, fetchedFragments);
});
},
getComponent: function () {
return Component;
}
},
componentDidMount: function () {
Expand Down Expand Up @@ -128,7 +130,7 @@ module.exports = function (Component, options) {
}
}

assign(_this.variables, nextVariables);
Object.assign(_this.variables, nextVariables);
var fetchPromise = Container.getAllFragments(_this.variables, optionalFragmentNames);

fetchPromise.then(function (fetchedFragments) {
Expand Down Expand Up @@ -233,7 +235,7 @@ module.exports = function (Component, options) {
componentWillMount: function () {
var externalVariables = this.props && this.props.variables || {};

this.variables = assign({}, Container.variables, externalVariables);
this.variables = Object.assign({}, Container.variables, externalVariables);
this.variables = Container.prepareVariables(this.variables);

if (isRootContainer(Container)) {
Expand Down Expand Up @@ -278,7 +280,7 @@ module.exports = function (Component, options) {

return React.createElement(
Component,
assign({}, props, state, {transmit: transmit})
Object.assign({}, props, state, {transmit: transmit})
);
}
});
Expand Down
5 changes: 2 additions & 3 deletions src/lib/render.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@
*/
"use strict";

var assign = require("./assign");
var isRootContainer = require("./isRootContainer");
var overrideCreateElement = require("./overrideCreateElement");
var React = require("./react");
Expand All @@ -23,13 +22,13 @@ module.exports = function (Component, props, targetDOMNode, callback) {
var args = [].slice.call(arguments, 1);

if (isRootContainer(type) && fetchedFragments.length) {
assign(props, fetchedFragments.pop());
Object.assign(props, fetchedFragments.pop());
}

return originalCreateElement.apply(null, args);
},
function () {
assign(props, {createElement: React.createElement});
Object.assign(props, {createElement: React.createElement});
ReactDOM.render(React.createElement(Component, props), targetDOMNode, callback);
}
);
Expand Down
9 changes: 4 additions & 5 deletions src/lib/renderToString.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@
*/
"use strict";

var assign = require("./assign");
var isRootContainer = require("./isRootContainer");
var overrideCreateElement = require("./overrideCreateElement");
var promiseProxy = require("./promiseProxy");
Expand All @@ -18,7 +17,7 @@ module.exports = function (Component, props) {

return new promiseProxy.Promise(function (resolve, reject) {
var promises = [];
var myProps = assign({}, props);
var myProps = Object.assign({}, props);

var reactString;

Expand All @@ -35,7 +34,7 @@ module.exports = function (Component, props) {
return originalCreateElement.apply(null, args);
},
function () {
assign(myProps, {createElement: React.createElement});
Object.assign(myProps, {createElement: React.createElement});
reactString = ReactDOM.renderToString(React.createElement(Component, myProps));
}
);
Expand All @@ -53,13 +52,13 @@ module.exports = function (Component, props) {
var args = [].slice.call(arguments, 1);

if (isRootContainer(type) && fetchedFragments.length) {
assign(props, fetchedFragments.pop());
Object.assign(props, fetchedFragments.pop());
}

return originalCreateElement.apply(null, args);
},
function () {
assign(myProps, {createElement: React.createElement});
Object.assign(myProps, {createElement: React.createElement});
reactString = ReactDOM.renderToString(React.createElement(Component, myProps));
}
);
Expand Down