UNPKG

@kiwicom/smart-faq

Version:

Smart FAQ

199 lines (157 loc) 10.9 kB
"use strict"; var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard"); var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = exports.PureIntro = void 0; var _style = _interopRequireDefault(require("styled-jsx/style")); 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 _idx = _interopRequireDefault(require("idx")); var React = _interopRequireWildcard(require("react")); var _reactRouterDom = require("react-router-dom"); var _Stack = _interopRequireDefault(require("@kiwicom/orbit-components/lib/Stack")); var _Button = _interopRequireDefault(require("@kiwicom/orbit-components/lib/Button")); var _Alert = _interopRequireDefault(require("@kiwicom/orbit-components/lib/Alert")); var _Illustration = _interopRequireDefault(require("@kiwicom/orbit-components/lib/Illustration")); var _Text = _interopRequireDefault(require("@kiwicom/orbit-components/lib/Text")); var _AlertCircle = _interopRequireDefault(require("@kiwicom/orbit-components/lib/icons/AlertCircle")); var _Translate = _interopRequireDefault(require("@kiwicom/nitro/lib/components/Translate")); var _reactResponsive = _interopRequireDefault(require("react-responsive")); var _UserStatus = _interopRequireDefault(require("../helpers/UserStatus")); var _CloseButton = _interopRequireDefault(require("../common/buttons/CloseButton")); var _User = require("../context/User"); var _FullFAQLink = _interopRequireDefault(require("../common/FullFAQLink")); var _trackers = require("../../shared/helpers/analytics/trackers"); var _tracker = require("../../shared/cuckoo/tracker"); // @flow var style = new String(".Intro{width:480px;padding-top:128px;height:100%;overflow-y:auto;overflow-x:hidden;}div.picture{text-align:center;}div.text{margin-left:40px;}[dir='rtl'] div.text{margin-right:40px;text-align:right;}p.title{color:#171b1e;font-size:28px;font-weight:bold;margin-bottom:6px;}div.buttons{margin-left:40px;margin-top:52.4px;}[dir='rtl'] div.buttons{margin-right:40px;}hr.hr-line{margin:36px 64px 22px 64px;height:0;border:0;border-top:1px solid #e8edf1;}.faqLink{margin-bottom:20px;line-height:1.4;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;}@media only screen and (max-width:480px){.Intro{width:100%;padding-top:75px;}div.picture{text-align:center;margin:0px 0px 40px 0px;}hr.hr-line{margin:28px 16px 22px 16px;}div.text{margin-left:16px;margin-right:16px;}p.title{font-size:22px;}div.buttons{margin:28px 16px 24px 16px;}button{width:100%;}}@media only screen and (max-height:480px){.Intro{width:100%;padding-top:20px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}div.picture{display:none;}hr.hr-line{width:288px;margin:19px 0 22px;}div.text{width:288px;margin:0;}p.title{font-size:22px;text-align:center;margin-bottom:20px;}div.buttons{width:288px;margin:12px 0 0;}[dir='rtl'] div.buttons{margin:0 12px 0 0;}div.buttons button{width:100%;}.faqLink{margin:0;}}"); style.__hash = "2944281983"; style.__scoped = ".Intro.jsx-35039806{width:480px;padding-top:128px;height:100%;overflow-y:auto;overflow-x:hidden;}div.picture.jsx-35039806{text-align:center;}div.text.jsx-35039806{margin-left:40px;}[dir='rtl'] div.text.jsx-35039806{margin-right:40px;text-align:right;}p.title.jsx-35039806{color:#171b1e;font-size:28px;font-weight:bold;margin-bottom:6px;}div.buttons.jsx-35039806{margin-left:40px;margin-top:52.4px;}[dir='rtl'] div.buttons.jsx-35039806{margin-right:40px;}hr.hr-line.jsx-35039806{margin:36px 64px 22px 64px;height:0;border:0;border-top:1px solid #e8edf1;}.faqLink.jsx-35039806{margin-bottom:20px;line-height:1.4;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;}@media only screen and (max-width:480px){.Intro.jsx-35039806{width:100%;padding-top:75px;}div.picture.jsx-35039806{text-align:center;margin:0px 0px 40px 0px;}hr.hr-line.jsx-35039806{margin:28px 16px 22px 16px;}div.text.jsx-35039806{margin-left:16px;margin-right:16px;}p.title.jsx-35039806{font-size:22px;}div.buttons.jsx-35039806{margin:28px 16px 24px 16px;}button.jsx-35039806{width:100%;}}@media only screen and (max-height:480px){.Intro.jsx-35039806{width:100%;padding-top:20px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}div.picture.jsx-35039806{display:none;}hr.hr-line.jsx-35039806{width:288px;margin:19px 0 22px;}div.text.jsx-35039806{width:288px;margin:0;}p.title.jsx-35039806{font-size:22px;text-align:center;margin-bottom:20px;}div.buttons.jsx-35039806{width:288px;margin:12px 0 0;}[dir='rtl'] div.buttons.jsx-35039806{margin:0 12px 0 0;}div.buttons.jsx-35039806 button.jsx-35039806{width:100%;}.faqLink.jsx-35039806{margin:0;}}"; style.__scopedHash = "35039806"; /*:: type Props = { history: { push: string => void, }, location: ?Location, onLogin: onLogin, };*/ var PureIntro = /*#__PURE__*/ function (_React$Component) { (0, _inherits2.default)(PureIntro, _React$Component); function PureIntro() { var _getPrototypeOf2; var _this; (0, _classCallCheck2.default)(this, PureIntro); 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)(PureIntro)).call.apply(_getPrototypeOf2, [this].concat(args))); (0, _defineProperty2.default)((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)), "goToExistingBooking", function () { (0, _trackers.simpleTracker)('smartFAQ', { action: 'clickOnIntroButton', haveBooking: true }); (0, _tracker.track)('Login', 'clickOnIntroButton', { haveBooking: true }); _this.props.onLogin(); }); (0, _defineProperty2.default)((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)), "goToNoBooking", function () { (0, _trackers.simpleTracker)('smartFAQ', { action: 'clickOnIntroButton', haveBooking: false }); (0, _tracker.track)('Login', 'clickOnIntroButton', { haveBooking: false }); _this.props.history.push('/faq'); }); return _this; } (0, _createClass2.default)(PureIntro, [{ key: "renderExpiredSession", value: function renderExpiredSession() { return React.createElement("div", { "data-cy": "message-expired-session", className: "jsx-3514436841" + " " + "infoMessage" }, React.createElement(_Alert.default, { type: "info", icon: React.createElement(_AlertCircle.default, null) }, React.createElement(_Translate.default, { t: "smartfaq.intro_page.alert" })), React.createElement(_style.default, { styleId: "3514436841", css: "div.infoMessage.jsx-3514436841{margin:20px 40px 0;}" })); } }, { key: "render", value: function render() { var sessionExpired = (0, _idx.default)(this.props.location, function (_) { return _.state.sessionExpired; }); return React.createElement("div", { className: "jsx-".concat(style.__scopedHash) + " " + "Intro" }, React.createElement(_CloseButton.default, null), React.createElement(_reactResponsive.default, { minWidth: "339px" }, React.createElement("div", { className: "jsx-".concat(style.__scopedHash) + " " + "picture" }, React.createElement(_Illustration.default, { size: "medium", name: "Help" }))), React.createElement("div", { className: "jsx-".concat(style.__scopedHash) + " " + "text" }, React.createElement("p", { className: "jsx-".concat(style.__scopedHash) + " " + "title" }, React.createElement(_Translate.default, { t: "smartfaq.intro_page.title" })), React.createElement(_Text.default, { type: "secondary" }, React.createElement(_Translate.default, { t: "smartfaq.intro_page.subtitle" }))), sessionExpired && this.renderExpiredSession(), React.createElement("div", { className: "jsx-".concat(style.__scopedHash) + " " + "buttons" }, React.createElement(_Stack.default, { spacing: "natural" }, React.createElement(_Button.default, { type: "primary", onClick: this.goToExistingBooking, dataTest: "btn-existent-booking" }, React.createElement(_Translate.default, { t: "smartfaq.intro_page.existing_booking" })), React.createElement(_Button.default, { type: "secondary", onClick: this.goToNoBooking, dataTest: "btn-nonexistent-booking" }, React.createElement(_Translate.default, { t: "smartfaq.intro_page.no_booking" })))), React.createElement("hr", { className: "jsx-".concat(style.__scopedHash) + " " + "hr-line" }), React.createElement("div", { className: "jsx-".concat(style.__scopedHash) + " " + "faqLink" }, React.createElement(_FullFAQLink.default, null)), React.createElement(_style.default, { styleId: style.__scopedHash, css: style.__scoped })); } }]); return PureIntro; }(React.Component); exports.PureIntro = PureIntro; var IntroPage = function IntroPage(props /*: Props*/ ) { return React.createElement(React.Fragment, null, React.createElement(_UserStatus.default.LoggedIn, null, React.createElement(_reactRouterDom.Redirect, { to: "/faq" })), React.createElement(PureIntro, props)); }; var _default = (0, _User.withLogin)((0, _reactRouterDom.withRouter)(IntroPage)); exports.default = _default;