@kiwicom/smart-faq
Version:
Smart FAQ
109 lines (84 loc) • 3.82 kB
JavaScript
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
var _getPrototypeOf3 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
var React = _interopRequireWildcard(require("react"));
var _memoizeOne = _interopRequireDefault(require("memoize-one"));
var _reactRelay = require("react-relay");
var _environment = _interopRequireDefault(require("./environment"));
var _translationUtils = require("../helpers/translationUtils");
var _SSRContext = _interopRequireDefault(require("../ssr/SSRContext"));
// @flow
// TODO: replace by React.memo when updating to React 16.6
var QueryRenderer =
/*#__PURE__*/
function (_React$Component) {
(0, _inherits2.default)(QueryRenderer, _React$Component);
function QueryRenderer() {
var _getPrototypeOf2;
var _this;
(0, _classCallCheck2.default)(this, QueryRenderer);
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
args[_key] = arguments[_key];
}
_this = (0, _possibleConstructorReturn2.default)(this, (_getPrototypeOf2 = (0, _getPrototypeOf3.default)(QueryRenderer)).call.apply(_getPrototypeOf2, [this].concat(args)));
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)), "getEnvironment", (0, _memoizeOne.default)(function (loginToken
/*: ?string*/
, kwAuthToken
/*: ?string*/
, locale
/*: string*/
) {
return (0, _environment.default)(loginToken, kwAuthToken, locale);
}));
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)), "fetchSSRData", function () {
return {
query: _this.props.query,
variables: _this.props.variables
};
});
return _this;
}
(0, _createClass2.default)(QueryRenderer, [{
key: "renderNormalQueryRenderer",
value: function renderNormalQueryRenderer() {
var _this$props = this.props,
loginToken = _this$props.loginToken,
kwAuthToken = _this$props.kwAuthToken;
var locale = (0, _translationUtils.fromLanguageToLocale)(this.props.language);
var newEnvironment = this.getEnvironment(loginToken, kwAuthToken, locale);
return React.createElement(_reactRelay.QueryRenderer, {
query: this.props.query,
variables: this.props.variables,
cacheConfig: this.props.cacheConfig,
render: this.props.render,
environment: newEnvironment
});
}
}, {
key: "render",
value: function render() {
var _this2 = this;
return React.createElement(_SSRContext.default.Consumer, null, function (context) {
return context && context.data ? _this2.props.render({
props: context.data,
error: null,
retry: null
}) : _this2.renderNormalQueryRenderer();
});
}
}]);
return QueryRenderer;
}(React.Component);
var _default = QueryRenderer;
exports.default = _default;
;