@kiwicom/smart-faq
Version:
Smart FAQ
143 lines (106 loc) • 5.02 kB
JavaScript
"use strict";
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 _reactRelay = require("react-relay");
var _idx = _interopRequireDefault(require("idx"));
var _BookingRenderer = _interopRequireDefault(require("../relay/BookingRenderer"));
var _BookingError = _interopRequireDefault(require("./BookingError"));
var _BookingDetail = _interopRequireDefault(require("./BookingDetail"));
var _BookingNotFound = _interopRequireDefault(require("./BookingNotFound"));
var _BookingLoader = _interopRequireDefault(require("./BookingLoader"));
var _User = require("../context/User");
var _UserStatus = _interopRequireDefault(require("../helpers/UserStatus"));
var _utils = require("../../shared/relay/utils");
// @flow
var singleBookingQuery = function singleBookingQuery() {
var node = require("./__generated__/SelectedBookingBySimpleTokenQuery.graphql");
if (node.hash && node.hash !== "fff5ec24f9d66a8e130014a164d90c15") {
console.error("The definition of 'SelectedBookingBySimpleTokenQuery' appears to have changed. Run `relay-compiler` to update the generated files to receive the expected data.");
}
return require("./__generated__/SelectedBookingBySimpleTokenQuery.graphql");
};
var SelectedBooking =
/*#__PURE__*/
function (_React$Component) {
(0, _inherits2.default)(SelectedBooking, _React$Component);
function SelectedBooking() {
var _getPrototypeOf2;
var _this;
(0, _classCallCheck2.default)(this, SelectedBooking);
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)(SelectedBooking)).call.apply(_getPrototypeOf2, [this].concat(args)));
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)), "renderSelectedBooking", function (renderState
/*: RenderState*/
) {
var content = null;
var booking = (0, _idx.default)(renderState.props, function (_) {
return _.singleBooking;
});
if (booking) {
content = React.createElement(_BookingDetail.default, {
booking: booking
});
} else {
content = React.createElement(_BookingNotFound.default, null);
}
if (!renderState.props) {
content = React.createElement(_BookingLoader.default, null);
}
if (renderState.error) {
content = React.createElement(_BookingError.default, null);
}
return React.createElement("div", {
style: {
height: '100%',
backgroundColor: '#f5f7f9'
}
}, content);
});
return _this;
}
(0, _createClass2.default)(SelectedBooking, [{
key: "render",
value: function render() {
var _this2 = this;
var bookingId = this.props.bookingId;
return React.createElement(React.Fragment, null, React.createElement(_UserStatus.default.LoggedIn, null, React.createElement(_User.UserContext.Consumer, null, function (_ref) {
var simpleToken = _ref.simpleToken,
loginToken = _ref.loginToken,
kwAuthToken = _ref.kwAuthToken,
brand = _ref.brand;
// use simpleToken as last option because it would fail when selecting another booking
var authToken = (0, _utils.maybeGetAuthToken)({
simpleToken: simpleToken,
loginToken: loginToken,
kwAuthToken: kwAuthToken
});
return React.createElement(_BookingRenderer.default, {
query: singleBookingQuery,
variables: {
id: bookingId,
authToken: authToken,
brand: brand
},
render: _this2.renderSelectedBooking
});
})), React.createElement(_UserStatus.default.LoggedOut, null, React.createElement(_BookingError.default, null)));
}
}]);
return SelectedBooking;
}(React.Component);
var _default = SelectedBooking;
exports.default = _default;