{"version":3,"file":"static/js/691.0ddce5e6.chunk.js","mappings":"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","sources":["shared/flight/flight-signup-module.js"],"sourcesContent":["import * as endpoints from \"../../api/endpoints\"\nimport React, { Component } from \"react\"\nimport ReactDOM from \"react-dom\"\nimport { UserProfile } from \"../../hooks/userProfile\"\nimport Emitter from \"../../helpers/emitter\"\nimport * as emits from \"../../constants/emits\"\nimport Spinner from \"../../booking/components/spinner\"\nimport { isValidPhoneNumber } from \"react-phone-number-input\"\n\nconst emailValidatingRegex =\n /^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/\n\nexport default class FlightSignup {\n constructor(elem) {\n const self = this\n self.elem = elem\n self.state = {\n email: \"\",\n flightId: elem.dataset.flightid,\n valid: true,\n }\n this.init()\n }\n\n init() {\n ReactDOM.unmountComponentAtNode(this.elem)\n ReactDOM.render(\n <UserProfile>\n {(profile) => {\n if (profile) {\n return <FlightSignupComponent {...this.elem.dataset} profile={profile} />\n } else {\n return <FlightSignupComponent {...this.elem.dataset} profile={null} />\n }\n }}\n </UserProfile>,\n this.elem,\n )\n }\n}\n\nclass FlightSignupComponent extends Component {\n constructor(props) {\n super(props)\n\n this.state = {\n email: \"\",\n phoneNumber: \"\",\n flightId: props.flightid,\n acceptedTerms: false,\n validEmail: true,\n validPhoneNumber: true,\n validAcceptedTerms: true,\n profile: props.profile,\n ajaxSpinnerActive: false,\n ajaxSpinnerTransparent: false,\n }\n }\n\n getDerivedStateFromProps(nextProps, _prevState) {\n if (nextProps.profile) {\n let newState = {}\n\n if (nextProps.profile.EmailAddress) {\n newState.email = nextProps.profile.EmailAddress\n }\n if (nextProps.profile.ContactDetails && nextProps.profile.ContactDetails.MobilePhone) {\n newState.phoneNumber = nextProps.profile.ContactDetails.MobilePhone\n }\n if (nextProps.profile.ContactDetails && nextProps.profile.ContactDetails.NewsletterSubscription) {\n newState.acceptedTerms = true\n }\n\n return newState\n }\n\n // Return null if no changes to state\n return null\n }\n\n onSubmit = (e) => {\n e.preventDefault()\n this.onEmailSubmit(e)\n this.onSmsSubmit(e)\n }\n\n onEmailSubmit = (e) => {\n e.preventDefault()\n let failedValidation = false\n if (!this.validateEmail(this.state.email)) {\n this.setState({ validEmail: false })\n failedValidation = true\n } else {\n this.setState({ validEmail: true })\n }\n if (!this.state.acceptedTerms) {\n this.setState({ validAcceptedTerms: false })\n failedValidation = true\n } else {\n this.setState({ validAcceptedTerms: true })\n }\n if (failedValidation) {\n return false\n }\n this.setState({ ajaxSpinnerActive: true })\n endpoints\n .subscribeToFlightByEmail(this.state.flightId, this.state.email)\n .then((_res) => {\n Emitter.emit(\"*\", {\n type: emits.REQUEST_CONTENT_MODAL_OPEN,\n modalJson: {\n usePortalStyling: true,\n h3: this.props.successHeadline || \"Success\",\n richText: this.props.successMessage || \"Du bliver nu informeret om ændringer på denne flyvning\",\n },\n })\n })\n .catch((error) => {\n Emitter.emit(\"*\", {\n type: emits.REQUEST_CONTENT_MODAL_OPEN,\n modalJson: {\n usePortalStyling: true,\n h3: error,\n richText: \"\",\n },\n })\n })\n .finally(() => {\n this.setState({ ajaxSpinnerActive: false })\n })\n }\n\n onSmsSubmit = (e) => {\n e.preventDefault()\n let failedValidation = false\n if (!this.validatePhoneNumber(this.state.phoneNumber)) {\n this.setState({ validPhoneNumber: false })\n failedValidation = true\n } else {\n this.setState({ validPhoneNumber: true })\n }\n if (!this.state.acceptedTerms) {\n this.setState({ validAcceptedTerms: false })\n failedValidation = true\n } else {\n this.setState({ validAcceptedTerms: true })\n }\n if (failedValidation) {\n return false\n }\n this.setState({ ajaxSpinnerActive: true })\n endpoints\n .subscribeToFlightBySms(this.state.flightId, this.state.phoneNumber)\n .then((_res) => {\n Emitter.emit(\"*\", {\n type: emits.REQUEST_CONTENT_MODAL_OPEN,\n modalJson: {\n usePortalStyling: true,\n h3: this.props.successHeadline || \"Success\",\n richText: this.props.successMessage || \"Du bliver nu informeret om ændringer på denne flyvning\",\n },\n })\n })\n .catch((error) => {\n Emitter.emit(\"*\", {\n type: emits.REQUEST_CONTENT_MODAL_OPEN,\n modalJson: {\n usePortalStyling: true,\n h3: error,\n richText: \"\",\n },\n })\n })\n .finally(() => {\n this.setState({ ajaxSpinnerActive: false })\n })\n }\n\n handleEmailClick = (e) => {\n this.onEmailSubmit(e)\n // document.querySelector('.js-module-flight-signup').querySelector('.js-email-form').dispatchEvent(new Event('submit'))\n }\n\n handleSmsClick = (e) => {\n this.onSmsSubmit(e)\n // document.querySelector('.js-module-flight-signup').querySelector('.js-sms-form').dispatchEvent(new Event('submit'))\n }\n\n validateEmail = (email) => {\n return emailValidatingRegex.test(String(email).toLowerCase())\n }\n\n validatePhoneNumber = (phoneNumber) => {\n return isValidPhoneNumber(phoneNumber)\n }\n\n createMarkup = (html) => {\n return { __html: html }\n }\n\n render() {\n let emailInput = (\n <div className=\"grid-item col--12 col-xs--9 form__section__inner\">\n <div className=\"form__field form__field--text form__field--text--no-label is-bound is-required\">\n <span className=\"form__valid\"></span>\n <input\n className=\"form__item signup-email\"\n name=\"email\"\n type=\"email\"\n placeholder={this.props.placeholderMail || \"email adress\"}\n onChange={(e) => this.setState({ email: e.target.value })}\n />\n <span className={(this.state.validEmail ? \"d-none\" : \"\") + \" form__notice form__notice--box is-invalid\"}>\n {this.props.emailvalidationerror}\n </span>\n </div>\n </div>\n )\n let smsInput = (\n <div className=\"grid-item col--12 col-xs--9 form__section__inner\">\n <div className=\"form__field form__field--text form__field--text--no-label is-bound is-required\">\n <span className=\"form__valid\"></span>\n <input\n className=\"form__item signup-email\"\n name=\"phoneNumber\"\n type=\"tel\"\n placeholder={this.props.placeholderSms || \"Phone number\"}\n onChange={(e) => this.setState({ phoneNumber: e.target.value })}\n defaultValue={this.props.profile && this.props.profile.ContactDetails && this.props.profile.ContactDetails.MobilePhone}\n />\n <span className={(this.state.validPhoneNumber ? \"d-none\" : \"\") + \" form__notice form__notice--box is-invalid\"}>\n {this.props.smsvalidationerror || \"Error in phone number use full number\"}\n </span>\n </div>\n </div>\n )\n let permissionInput = (\n <div className=\"form__section form__section--short\">\n <div className=\"form__field form__field--checkbox is-bound is-required\">\n <label className=\"form__label\">\n <input\n className=\"form__item signup-checkbox \"\n name=\"check-name\"\n type=\"checkbox\"\n onChange={(e) => this.setState({ acceptedTerms: e.target.checked })}\n />\n <span className=\"form__label__text\">\n <p dangerouslySetInnerHTML={this.createMarkup(this.props.terms)}></p>\n </span>\n </label>\n </div>\n <span className={(this.state.validAcceptedTerms ? \"d-none\" : \"\") + \" form__notice form__notice--box is-invalid\"}>\n {this.props.accepttermserror}\n </span>\n </div>\n )\n let emailSubmitClass = \"grid-item col--12 col-xs--3\"\n let smsSubmitClass = \"grid-item col--12 col-xs--3\"\n if (this.props.profile) {\n if (this.props.profile.EmailAddress) {\n emailInput = null\n emailSubmitClass = \"grid-item col--12 col-xs--12\"\n }\n if (this.props.profile.ContactDetails && this.props.profile.ContactDetails.MobilePhone) {\n // validate phone number\n if (this.validatePhoneNumber(this.props.profile.ContactDetails.MobilePhone)) {\n smsInput = null\n smsSubmitClass = \"grid-item col--12 col-xs--12\"\n }\n }\n if (this.props.profile.ContactDetails && this.props.profile.ContactDetails.NewsletterSubscription) {\n permissionInput = null\n }\n }\n\n const emailIsDisabled = this.props.isEmailDisabled && this.props.isEmailDisabled.toLowerCase() === \"true\"\n const smsIsDisabled = this.props.isSmsDisabled && this.props.isSmsDisabled.toLowerCase() === \"true\"\n\n return (\n <React.Fragment>\n <Spinner isActive={this.state.ajaxSpinnerActive} isTransparent={this.state.ajaxSpinnerTransparent} />\n <div className=\"w--wider newsletter-signup__inner\">\n <div className=\"grid\">\n <div className=\"grid-item col--12 col-lg--6\">\n <h3>{this.props.header}</h3>\n </div>\n <form className=\"grid-item col--12 col-lg--6 form\" onSubmit={this.onSubmit}>\n <input className=\"signup-flight-id\" value={this.state.flightId} readOnly hidden />\n {emailIsDisabled ? null : (\n <div className=\"grid form__section form__section--short\">\n {emailInput}\n <div className={emailSubmitClass}>\n <a className=\"button button--medium button--general-inverted\" onClick={this.handleEmailClick}>\n <span className=\"text\">{this.props.followMail || \"Follow on email\"}</span>\n </a>\n </div>\n <div className=\"grid-item d-none d-block--md col-md--2 d-none--lg\"></div>\n </div>\n )}\n {smsIsDisabled ? null : (\n <div className=\"grid form__section form__section--short\">\n {smsInput}\n <div className={smsSubmitClass}>\n <a className=\"button button--medium button--general-inverted\" onClick={this.handleSmsClick}>\n <span className=\"text\">{this.props.followSms || \"Follow on SMS\"}</span>\n </a>\n </div>\n <div className=\"grid-item d-none d-block--md col-md--2 d-none--lg\"></div>\n </div>\n )}\n {permissionInput}\n <input type=\"submit\" hidden />\n </form>\n </div>\n </div>\n </React.Fragment>\n )\n }\n}\n"],"names":["emailValidatingRegex","FlightSignup","_createClass","elem","_classCallCheck","this","state","email","flightId","dataset","flightid","valid","init","key","value","_this","ReactDOM","_jsx","UserProfile","children","profile","FlightSignupComponent","_objectSpread","_Component","props","_this2","_callSuper","onSubmit","e","preventDefault","onEmailSubmit","onSmsSubmit","failedValidation","validateEmail","setState","validEmail","acceptedTerms","validAcceptedTerms","ajaxSpinnerActive","endpoints","then","_res","Emitter","emit","type","emits","modalJson","usePortalStyling","h3","successHeadline","richText","successMessage","catch","error","finally","validatePhoneNumber","phoneNumber","validPhoneNumber","handleEmailClick","handleSmsClick","test","String","toLowerCase","isValidPhoneNumber","createMarkup","html","__html","ajaxSpinnerTransparent","_inherits","nextProps","_prevState","newState","EmailAddress","ContactDetails","MobilePhone","NewsletterSubscription","_this3","emailInput","className","_jsxs","name","placeholder","placeholderMail","onChange","target","emailvalidationerror","smsInput","placeholderSms","defaultValue","smsvalidationerror","permissionInput","checked","dangerouslySetInnerHTML","terms","accepttermserror","emailSubmitClass","smsSubmitClass","emailIsDisabled","isEmailDisabled","smsIsDisabled","isSmsDisabled","React","Spinner","isActive","isTransparent","header","readOnly","hidden","onClick","followMail","followSms","Component"],"sourceRoot":""}