@kiwicom/smart-faq
Version:
111 lines (85 loc) • 4.61 kB
JavaScript
"use strict";
require("core-js/modules/es.object.get-own-property-descriptor");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _style = _interopRequireDefault(require("styled-jsx/style"));
var React = _interopRequireWildcard(require("react"));
var _reactRouterDom = require("react-router-dom");
var _reactRelay = require("react-relay");
var _TextNode = _interopRequireDefault(require("@kiwicom/nitro/lib/components/TextNode"));
var _OneWay = _interopRequireDefault(require("./BookingHeaders/OneWay"));
var _Return = _interopRequireDefault(require("./BookingHeaders/Return"));
var _Multicity = _interopRequireDefault(require("./BookingHeaders/Multicity"));
var _formatBookingId = _interopRequireDefault(require("../../helpers/formatBookingId"));
var _bookingTypes = _interopRequireDefault(require("../../common/booking/bookingTypes"));
var _bookingStatuses = require("../../common/booking/bookingStatuses");
var _SelectAnotherBookingLink = _interopRequireDefault(require("../../common/booking/SelectAnotherBookingLink"));
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {}; if (desc.get || desc.set) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj.default = obj; return newObj; } }
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
// @flow
// $FlowExpectedError: Flow types are broken in TextNode
function renderHeaderTitleByType(type
/*: string*/
, booking
/*: HeaderBookingType*/
) {
switch (type) {
case _bookingTypes.default.ONE_WAY:
return React.createElement(_OneWay.default, {
booking: booking
});
case _bookingTypes.default.RETURN:
return React.createElement(_Return.default, {
booking: booking
});
case _bookingTypes.default.MULTICITY:
return React.createElement(_Multicity.default, {
booking: booking
});
}
return null;
}
var Header = function Header(props
/*: Props*/
) {
var _booking$databaseId, _booking$databaseId2;
var booking = props.booking,
isFuture = props.isFuture;
var type = booking.type;
return React.createElement(React.Fragment, null, React.createElement("div", {
className: "jsx-1251929388" + " " + "headerAbove"
}, React.createElement(_TextNode.default, {
type: "secondary",
dataTest: "booking-type",
t: isFuture ? "smartfaq.single_booking_page.header.booking_id.upcoming" : "smartfaq.single_booking_page.header.booking_id.past",
values: {
booking_id: React.createElement("span", {
dir: "ltr",
key: (_booking$databaseId = booking.databaseId) !== null && _booking$databaseId !== void 0 ? _booking$databaseId : 0,
className: "jsx-1251929388"
}, (0, _formatBookingId.default)((_booking$databaseId2 = booking.databaseId) !== null && _booking$databaseId2 !== void 0 ? _booking$databaseId2 : 0))
}
}), React.createElement(_SelectAnotherBookingLink.default, null)), React.createElement("div", {
"data-cy": "booking-title",
className: "jsx-1251929388" + " " + "headerTitle"
}, type && renderHeaderTitleByType(type, booking)), React.createElement("div", {
className: "jsx-1251929388" + " " + "headerBelow"
}, booking.status && React.createElement(_bookingStatuses.BookingBadgeStatus, {
status: booking.status
})), React.createElement(_style.default, {
styleId: "1251929388",
css: ".headerAbove.jsx-1251929388,.headerTitle.jsx-1251929388{margin-bottom:4px;}.headerAbove.jsx-1251929388{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;}.headerBelow.jsx-1251929388{margin-bottom:16px;}"
}));
};
var _default = (0, _reactRelay.createFragmentContainer)((0, _reactRouterDom.withRouter)(Header), {
booking: function booking() {
var node = require("./__generated__/Header_booking.graphql");
if (node.hash && node.hash !== "a0fe38dfa08deeef3a932a88739b67b8") {
console.error("The definition of 'Header_booking' appears to have changed. Run `relay-compiler` to update the generated files to receive the expected data.");
}
return require("./__generated__/Header_booking.graphql");
}
});
exports.default = _default;