1(self.webpackChunkweb=self.webpackChunkweb||[]).push([[2622,7131],{4213:function(e,t,r){var n,o,a;o=[],void 0===(a="function"==typeof(n=function(){"use strict";function t(e,t){return void 0===t?t={autoBom:!1}:"object"!=typeof t&&(console.warn("Deprecated: Expected third argument to be a object"),t={autoBom:!t}),t.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(e.type)?new Blob(["\ufeff",e],{type:e.type}):e}function n(e,t,r){var n=new XMLHttpRequest;n.open("GET",e),n.responseType="blob",n.onload=function(){c(n.response,t,r)},n.onerror=function(){console.error("could not download file")},n.send()}function o(e){var t=new XMLHttpRequest;t.open("HEAD",e,!1);try{t.send()}catch(e){}return 200<=t.status&&299>=t.status}function a(e){try{e.dispatchEvent(new MouseEvent("click"))}catch(r){var t=document.createEvent("MouseEvents");t.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),e.dispatchEvent(t)}}var i="object"==typeof window&&window.window===window?window:"object"==typeof self&&self.self===self?self:"object"==typeof r.g&&r.g.global===r.g?r.g:void 0,c=i.saveAs||("object"!=typeof window||window!==i?function(){}:"download"in HTMLAnchorElement.prototype?function(e,t,r){var c=i.URL||i.webkitURL,s=document.createElement("a");t=t||e.name||"download",s.download=t,s.rel="noopener","string"==typeof e?(s.href=e,s.origin===location.origin?a(s):o(s.href)?n(e,t,r):a(s,s.target="_blank")):(s.href=c.createObjectURL(e),setTimeout(function(){c.revokeObjectURL(s.href)},4e4),setTimeout(function(){a(s)},0))}:"msSaveOrOpenBlob"in navigator?function(e,r,i){if(r=r||e.name||"download","string"!=typeof e)navigator.msSaveOrOpenBlob(t(e,i),r);else if(o(e))n(e,r,i);else{var c=document.createElement("a");c.href=e,c.target="_blank",setTimeout(function(){a(c)})}}:function(e,t,r,o){if((o=o||open("","_blank"))&&(o.document.title=o.document.body.innerText="downloading..."),"string"==typeof e)return n(e,t,r);var a="application/octet-stream"===e.type,c=/constructor/i.test(i.HTMLElement)||i.safari,s=/CriOS\/[\d]+/.test(navigator.userAgent);if((s||a&&c)&&"object"==typeof FileReader){var l=new FileReader;l.onloadend=function(){var e=l.result;e=s?e:e.replace(/^data:[^;]*;/,"data:attachment/file;"),o?o.location.href=e:location=e,o=null},l.readAsDataURL(e)}else{var u=i.URL||i.webkitURL,p=u.createObjectURL(e);o?o.location=p:location.href=p,o=null,setTimeout(function(){u.revokeObjectURL(p)},4e4)}});i.saveAs=c.saveAs=c,e.exports=c})?n.apply(t,o):n)||(e.exports=a)},7131:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>me});var n=r(96540),o=r(97022),a=r(24179),i=r(32622),c=r(95093),s=r.n(c),l=r(2543),u=r.n(l),p=r(99227),m=r.n(p),f=r(6315);const d=function(e){return n.createElement("div",null,e.luggageNumber," x ",e.luggageLabel)};var y=r(64526),b=r(83386),v=r.n(b),h=r(4213),g=r.n(h),_=r(90890),w=r(6100);function E(e){return E="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},E(e)}function N(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,S(n.key),n)}}function O(e,t,r){return t=k(t),function(e,t){if(t&&("object"==E(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,T()?Reflect.construct(t,r||[],k(e).constructor):t.apply(e,r))}function T(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(T=function(){return!!e})()}function k(e){return k=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},k(e)}function P(e,t){return P=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},P(e,t)}function j(e,t,r){return(t=S(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function S(e){var t=function(e,t){if("object"!=E(e)||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=E(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==E(t)?t:t+""}const A=function(e){function t(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var r=arguments.length,n=new Array(r),o=0;o<r;o++)n[o]=arguments[o];return j(e=O(this,t,[].concat(n)),"getInvoice",function(){var t=e.props.tripData;_.A.setLabel("Preparing invoice"),_.A.activateQuerySpinner();var r=v()(t.bookingReference);w.A.getInvoice(t.bookingReference,r,function(e,r){_.A.deactivateQuerySpinner();var n=document.createElement("a");if(e||!r)n.href="/print_vat.php?ref=".concat(t.bookingReference),n.click();else if(window.navigator.userAgent.indexOf("MSIE")>0||navigator.userAgent.match(/Trident.*rv\:11\./)){var o=function(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:512,n=atob(e),o=[],a=0;a<n.length;a+=r){for(var i=n.slice(a,a+r),c=new Array(i.length),s=0;s<i.length;s++)c[s]=i.charCodeAt(s);var l=new Uint8Array(c);o.push(l)}return new Blob(o,{type:t})}(r,"data:application/pdf"),a=new Blob([o],{type:"application/pdf"});g().saveAs(a,"invoice.pdf")}else{var i="";i+='<object width="100%" height="100%" data="data:application/pdf;base64,',i+=r,i+='" type="application/pdf" class="internal">',i+='<embed src="data:application/pdf;base64,',i+=r,i+='" type="application/pdf" />',i+="</object>";var c=window.open("","_blank","titlebar=yes");c.document.title="invoice.pdf",c.document.write("<html><body>"),c.document.write(i),c.document.write("</body></html>")}})}),e}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&P(e,t)}(t,e),r=t,(o=[{key:"render",value:function(){var e=this.props,t=e.hasReturnOrSplitTrip,r=e.tripData,o=e.tripDate,a=e.isReturnTrip,i=e.isSplitTrip,c=e.vias,l=s().utc(r.cancellationDate),u=a||i?"Inbound: ":t?"Outbound: ":"",p=s().utc(o).format("ddd Do MMM, hh:mma");return n.createElement("div",null,!a&&n.createElement("div",{className:"row dark-blue trip-summary"},n.createElement("div",{className:"col-xs-12 col-md-6"},n.createElement("div",{className:"trip-summary__item"},n.createElement("div",{className:"trip-summary__item__label"},u),n.createElement("div",{className:"trip-summary__item__value"},p)),n.createElement("div",{className:"trip-summary__item"},n.createElement("div",{className:"trip-summary__item__label"},"Booking reference: "),n.createElement("div",{className:"trip-summary__item__value"},r.bookingReference)),n.createElement("div",{className:"col-xs-12 col-md-6"}," ")),n.createElement("div",{className:"col-xs-12 col-md-6"},!a&&n.createElement("div",{className:"trip-summary__item"},n.createElement("div",{className:"trip-summary__item__label"}),n.createElement("div",{className:"trip-summary__item__value"},"£",m()(r.paymentAmount).format("£0,0.00")," ",!a&&"(".concat(r.paymentType,")."))),n.createElement("div",{className:"trip-summary__item"},n.createElement("div",{className:"trip-summary__item__label"}),n.createElement("div",{className:"trip-summary__item__value"},n.createElement("a",{onClick:this.getInvoice,target:"_blank",style:{cursor:"pointer"}},"Print Invoice"))))),n.createElement("div",{className:"row dark-blue trip-summary trip-summary--second"},a?n.createElement("div",{className:"col-xs-12 col-md-6"},n.createElement("div",{className:"trip-summary__item"},n.createElement("div",{className:"trip-summary__item__value"},"Wait and return"))):n.createElement("div",{className:"col-xs-12 col-md-6"},n.createElement("div",{className:"trip-summary__item"},n.createElement("div",{className:"trip-summary__item__label"},"Cab Provider: "),n.createElement("div",{className:"trip-summary__item__value"},r.cabOperatorName)),n.createElement("div",{className:"trip-summary__item"},n.createElement("div",{className:"trip-summary__item__label"},"Phone: "),n.createElement("div",{className:"trip-summary__item__value"},r.cabOperatorPhoneNumber)),n.createElement("div",{className:"trip-summary__item"},n.createElement("div",{className:"trip-summary__item__label"},"Email: "),n.createElement("div",{className:"trip-summary__item__value"},"[email protected]")),n.createElement("div",{className:"trip-summary__item trip-summary__item--cancellation"},n.createElement("div",{className:"trip-summary__item__label"},"Latest cancellation time for full refund: "),n.createElement("div",{className:"trip-summary__item__value"}
1,s().utc(l).format("D MMM, hh:mma")))),n.createElement("div",{className:"col-xs-12 col-md-6 trip-summary__route"},n.createElement("div",j({className:"col-xs-1"},"className","trip-summary__route__travel"),n.createElement("img",{alt:"locations dots",src:"https://minicab-images2.s3-eu-west-1.amazonaws.com/summary/travel-route.webp"})),n.createElement("div",{className:"col-xs-11 trip-summary__route__vias"},n.createElement("div",{className:"trip-summary__route__from"},a?r.to:r.from),c&&c.map(function(e){return n.createElement("p",null,"Via ",e.no,": ",e.property)}),n.createElement("div",{className:"trip-summary__route__to"},a?r.from:r.to)))))}}])&&N(r.prototype,o),a&&N(r,a),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,o,a}(n.Component);var D=r(32566),R=r(65614),C=r(29465),M=r(64128),x=r(17067);function L(e){return L="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},L(e)}function B(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function I(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?B(Object(r),!0).forEach(function(t){W(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):B(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}function U(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,V(n.key),n)}}function F(e,t,r){return t=H(t),function(e,t){if(t&&("object"==L(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,G()?Reflect.construct(t,r||[],H(e).constructor):t.apply(e,r))}function G(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(G=function(){return!!e})()}function H(e){return H=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},H(e)}function q(e,t){return q=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},q(e,t)}function W(e,t,r){return(t=V(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function V(e){var t=function(e,t){if("object"!=L(e)||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=L(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==L(t)?t:t+""}var J="minicabit";function Y(){return f.A.getState()}const K=function(e){function t(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var r=arguments.length,n=new Array(r),i=0;i<r;i++)n[i]=arguments[i];return W(e=F(this,t,[].concat(n)),"state",I(I({},o.A.getBookingData()),{},{guestHasRegistered:!1,registerError:null,reCaptcha:""})),W(e,"registerGuestUser",function(t){t.preventDefault(),e.setState({password:t.target.password.value},function(){e.recaptcha.reset(),e.recaptcha.execute()})}),W(e,"onResolve",function(){e.setState({reCaptcha:e.recaptcha.getResponse()},function(){var t=e.state.password,r=e.state.confirmationData[0].passengerDetails,n={email:r.email,firstName:r.firstName,lastName:r.lastName,mobileNumber:r.phone,password:t,reCaptcha:e.state.reCaptcha,customerTitle:null,autoLogin:!1};R.A.register(function(t){if(t.action.actionType===C.A.AUTH_POST_REGISTER){var n=t.action.error;e.setState({guestHasRegistered:!n,registerError:n&&("email must be unique"==n.toLowerCase()?"An account already exists for this email":null)},function(){n||(window.clevertap.event.push("Guest sign up",{"Customer type":"Account Holder",Device:(0,M.A)()}),window.clevertap.profile.push({Site:{"Customer type":"Account Holder",Email:r.email,"MSG-email":!0,"MSG-push":!0,"MSG-sms":!0,"MSG-whatsapp":!0}}))})}}),D.A.register(n)})}),W(e,"logBookingGTM",function(){window.dataLayer&&void 0!==window.dataLayer&&e.state.confirmationData.forEach(function(t){window.dataLayer.push({event:"BookingTransaction",transaction:{transaction_id:t.bookingRef,transaction_total:e.state.totalPrice,transactional_promo_code:u().get(e.state,"promoCode.promoCode",""),transactional_currency:"GBP",source:""},transaction_id:t.bookingRef,transaction_total:e.state.totalPrice,transactional_promo_code:u().get(e.state,"promoCode.promoCode",""),transactional_currency:"GBP"}),window.dataLayer.push({ecommerce:null}),window.dataLayer.push({event:"purchase",ecommerce:{currency:"GBP",transaction_id:t.bookingRef,value:e.state.totalPrice,coupon:u().get(e.state,"promoCode.promoCode","")}}),window.dataLayer.push({event:"ec_formsubmit",enhanced_conversion_data:{email:e.state.confirmationData[0].passengerDetails.email,phone_number:e.state.confirmationData[0].passengerDetails.phone,first_name:e.state.confirmationData[0].passengerDetails.firstName,last_name:e.state.confirmationData[0].passengerDetails.lastName,street:"",city:"",region:"",postal_code:"",country:""}})})}),W(e,"editCancelRedirect",function(e,t,r){if(Y().loggedIn)a.Nc.push("/customer/bookings");else{var n=s()(r).utc().format("x"),o=s()(r).utc().format("kk:mm");a.Nc.push("/contactus?booking_ref=".concat(e,"&manage=true&email=").concat(t,"&date=").concat(n,"&time=").concat(o))}}),W(e,"isDesktop",function(){return"Desktop"===(0,M.lJ)(window.navigator.userAgent)}),e}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&q(e,t)}(t,e),r=t,c=[{key:"UNSAFE_componentWillMount",value:function(){var e=Y();e.user&&e.user.isBusiness&&this.setState({businessAcc:!0})}},{key:"componentDidMount",value:function(){this.logBookingGTM()}},{key:"render",value:function(){var e=this,t=this.state.confirmationData,r=this.state.quotes.tripInfo.vias,o=this.state.quotes.tripInfo.tripType,a=this.state.confirmationData[0],c=null,l=null,p=!1,f=!1;if(C.A.TRIP_TYPE_RETURN===o&&(f=!0),C.A.TRIP_TYPE_SPLIT===o){a=t[0],p=!0,l={passengerFirstName:(c=t[1]).passengerDetails.firstName,passengerLastName:c.passengerDetails.lastName,passengerEmailAddress:c.passengerDetails.email,passengerPhoneNumber:c.passengerDetails.phone,paymentType:c.paymentType,paymentAmount:c.price,bookingReference:c.bookingRef,cabOperatorName:c.cabOperator.name,cabOperatorPhoneNumber:c.cabOperator.phone,cabOperatorEmail:c.cabOperator.email,carType:c.tripDetails.carType,tripType:c.bookingType,outboundTrip
1DateTime:c.pickup,from:c.from,to:c.to,passengers:c.tripDetails.noOfPassengers,cancellationDate:c.latestEarlyCancellationTime};var b="";if(c.tripDetails.luggage&&!u().isEmpty(c.tripDetails.luggage))try{b=JSON.stringify(c.tripDetails.luggage)}catch(e){console.log("error",e)}l.luggage=b}var v={cardHolderName:"",billingAddress1:"",billingAddress2:"",cardLastFourDigits:"",cardType:""};"card"==a.paymentType&&!a.isPaypal&&u().has(this.state.paymentMethod,"newPaymentMethod.cardHolderName")&&u().has(this.state.paymentMethod,"newPaymentMethod.cardNumber")?(v.cardholderName=this.state.paymentMethod.newPaymentMethod.cardHolderName,v.cardLastFourDigits=this.state.paymentMethod.newPaymentMethod.cardNumber.substr(-4),v.cardType=this.state.paymentMethod.newPaymentMethod.cardType):"card"==a.paymentType&&!a.isPaypal&&u().has(this.state.paymentMethod,"cardholderName")&&u().has(this.state.paymentMethod,"billingAddress.streetAddress")&&u().has(this.state.paymentMethod,"last4")&&u().has(this.state.paymentMethod,"cardType")&&(v.cardholderName=this.state.paymentMethod.cardholderName,v.billingAddress1=this.state.paymentMethod.billingAddress.streetAddress,v.cardLastFourDigits=this.state.paymentMethod.last4,v.cardType=this.state.paymentMethod.cardType);var h={passengerFirstName:a.passengerDetails.firstName,passengerLastName:a.passengerDetails.lastName,passengerEmailAddress:a.passengerDetails.email,passengerPhoneNumber:a.passengerDetails.phone,cardholderName:v.cardholderName,billingAddress1:v.billingAddress1,billingAddress2:v.billingAddress2,cardLastFourDigits:v.cardLastFourDigits,cardType:v.cardType,isPaypal:a.isPaypal,paymentType:a.paymentType,paymentAmount:a.price,grossAmount:a.grossAmount,bookingReference:a.bookingRef,cabOperatorName:a.cabOperator.name,cabOperatorPhoneNumber:a.cabOperator.phone,cabOperatorEmail:a.cabOperator.email,carType:a.tripDetails.carType,tripType:a.bookingType,outboundTripDateTime:a.pickup,inboundTripDateTime:a.returnEta,from:a.from,to:a.to,passengers:a.tripDetails.noOfPassengers,additionalInfo:this.state.additionalInfo.additionalInfo,flightInfo:this.state.additionalInfo.flightNumber,cancellationDate:a.latestEarlyCancellationTime};if(b="",a.tripDetails.luggage&&!u().isEmpty(a.tripDetails.luggage))try{b=JSON.stringify(a.tripDetails.luggage)}catch(e){console.log("error",e)}h.luggage=b;var g=a.tripDetails.luggage,_=[];u().forOwn(g,function(e,t){_.push(n.createElement(d,{key:t,selectedLuggage:t,luggageNumber:e.count,luggageWeight:e.weight,luggageLabel:e.description}))}),_.length<1&&(_="none");var w=s().utc(h.outboundTripDateTime),E=null;if(f?E=s().utc(h.inboundTripDateTime):p&&(E=s().utc(l.outboundTripDateTime)),r){var N=[];u().each(r,function(e){N.push(n.createElement("p",{className:"fs18"},n.createElement("span",{className:"blue-color"},"Via ",e.no,": "),e.property))})}var O=function(){return this.state.businessAcc||"chauffeurit"==J?n.createElement("div",null):n.createElement(y.A,{firstName:h.passengerFirstName,lastName:h.passengerLastName,email:h.passengerEmailAddress,orderTotal:h.paymentAmount,orderNumber:h.bookingReference})}.bind(this)();return n.createElement("div",null,n.createElement("div",{className:"row confirmation-banner-wrapper"},n.createElement("div",{id:"confirmation-page-banner-1",className:"banner banner__half-widht"}),n.createElement("div",{id:"confirmation-page-banner-2",className:"banner banner__half-widht"})),n.createElement("div",{className:"row confirmation__header"},n.createElement("span",{className:"confirmation__header--title"},"Thank you, ".concat(h.passengerFirstName,". Your booking is now confirmed"),n.createElement("br",null),"Total price: £".concat(m()(h.grossAmount).format("£0,0.00"))),n.createElement("br",null),n.createElement("span",{className:"confirmation__header--subtitle"},"You will receive driver details before your pickup time from your cab provider"),O),(0,x.c)()&&!Y().loggedIn?n.createElement("div",{className:"row create-account"},!this.state.guestHasRegistered&&n.createElement("div",{className:"col-xs-12 create-account__title"},"Create a minicabit account to save your info for next time"),n.createElement("div",{className:"row"},this.state.guestHasRegistered?n.createElement("div",{className:"col-xs-12 col-md-6 create-account__registered"},n.createElement("div",{className:"create-account__registered__welcome"}
1,"Welcome to minicabit!"),n.createElement("div",{className:"create-account__registered__validate"},"Check your inbox to confirm your account")):n.createElement("form",{onSubmit:this.registerGuestUser,className:"col-xs-12 col-md-6 create-account__form"},n.createElement("input",{type:"password",name:"password",required:!0,pattern:".{6,}",title:"6 characters minimum",placeholder:"Enter a password of min. 6 characters",className:"form-control"}),this.state.registerError?n.createElement("div",{className:"hf-warning"},this.state.registerError):null,n.createElement("button",{type:"submit",className:"btn submit create-account__form__submit"},"Create account"),n.createElement("div",{className:"create-account__ts-and-cs"},"By creating an account, you agree to our"," ",n.createElement("a",{href:"/terms_conditions",target:"_blank"},"Terms & Conditions")),n.createElement(i.default,{ref:function(t){return e.recaptcha=t},sitekey:"6LfOoq8UAAAAAKpMHiRj0IvHKuxnBlSKLA-ro9SJ",onResolved:this.onResolve})),n.createElement("div",{className:"col-xs-12 col-md-6 create-account__reasons"},n.createElement("div",{className:"create-account__reasons__item"},n.createElement("div",{className:"create-account__reasons__item--manage"}),"Manage your bookings and receipts"),n.createElement("div",{className:"create-account__reasons__spacing"}),n.createElement("div",{className:"create-account__reasons__item"},n.createElement("div",{className:"create-account__reasons__item--offers"}),"Get special offers from minicabit")))):null,n.createElement(A,{tripData:h,tripDate:w,vias:r,hasReturnOrSplitTrip:f||p}),f?n.createElement(A,{tripData:h,isReturnTrip:!0,tripDate:E,vias:r}):null,p?n.createElement(A,{tripData:l,isSplitTrip:!0,tripDate:E,vias:r}):null,n.createElement("div",{className:"confirmation-button-container"},n.createElement("div",{className:"btn confirmation-button",onClick:this.props.bookAnotherTrip.bind(this,f||p)},f||p?"Book another trip":"Book a return trip")),n.createElement("div",{className:"border-edge row confirmation__waiting"},n.createElement("div",{className:"confirmation__waiting__item"},n.createElement("div",{className:"confirmation__waiting__item__icon confirmation__waiting__item__icon--clock"}),n.createElement("div",null,"Price includes driver waiting up to 15 minutes. ",n.createElement("br",null)," Any"," ",n.createElement("a",{href:"https://faq.minicabit.com/hc/en-us/articles/204276705--What-happens-if-I-am-late-or-am-unable-to-meet-the-driver-",target:"_blank"},"extra waiting time")," ","and (where relevant) car parking fees could incur extra charges, to be settled between you and the driver")),n.createElement("div",{className:"confirmation__waiting__item"},n.createElement("div",{className:"confirmation__waiting__item__icon confirmation__waiting__item__icon--info"}),n.createElement("div",null,"In the event you encounter any issues with your booking or have additional requirements except cancellation, please contact your cab provider"))),n.createElement("div",{className:"confirmation-button-container"},n.createElement("div",{onClick:function(){return e.editCancelRedirect(h.bookingReference,h.passengerEmailAddress,h.outboundTripDateTime)},className:"btn confirmation-button"},"Edit / cancel this booking")),n.createElement("div",{className:"full-trip-details__container"},n.createElement("div",{className:"full-trip-details border-edge"},n.createElement("div",{className:"border-bottom full-trip-details__header"},"Trip details"),n.createElement("div",{className:"full-trip-details__content"},n.createElement("div",{className:"row"},n.createElement("div",{className:"col-xs-12 col-md-6"},n.createElement("div",{className:"full-trip-details__detail"},n.createElement("div",{className:"full-trip-details__detail__label"},"Passenger name / Contact number"),n.createElement("div",{className:"full-trip-details__detail__value"},h.passengerFirstName," ",h.passengerLastName," /"," ",h.passengerPhoneNumber)),n.createElement("div",{className:"full-trip-details__detail"},n.createElement("div",{className:"full-trip-details__detail__label"},"Passengers / Vehicle"),n.createElement("div",{className:"full-trip-details__detail__value"},h.passengers," / ",h.carType)),h.additionalInfo&&n.createElement("div",{className:"full-trip-details__detail"},n.createElement("div",{className:"full-trip-details__detail__label"},"Additional information"),n.createElement("div",{className:"full-trip-details__detail__value"},h.additionalInfo))),n.createElement("div",{className:"col-xs-12 col-md-6"},_&&"none"!==_&&_.length>0&&n.createElement("div",{className:"full-trip-details__detail"},n.createElement("div",{className:"full-trip-details__detail__label"},"Luggage"),n.createElement("div",{className:"full-trip-details__detail__value"},_.map(function(e){return n.createElement("div",null,e)}))),h.flightInfo&&n.createElement("div",{className:"full-trip-details__detail"},n.createElement("div",{className:"full-trip-details__detail__label"},"Flight number"),n.createElement("div",{className:"full-trip-details__detail__value"},h.flightInfo))))))),n.createElement("div",{className:"row confirmation-banner-wrapper"},n.createElement("div",{id:"confirmation-page-banner-3",className:"banner banner__full-width"}
1)))}}],c&&U(r.prototype,c),l&&U(r,l),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,c,l}(n.Component);function z(e){return z="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},z(e)}function Q(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,re(n.key),n)}}function X(e,t,r){return t=$(t),function(e,t){if(t&&("object"==z(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,Z()?Reflect.construct(t,r||[],$(e).constructor):t.apply(e,r))}function Z(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(Z=function(){return!!e})()}function $(e){return $=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},$(e)}function ee(e,t){return ee=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},ee(e,t)}function te(e,t,r){return(t=re(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function re(e){var t=function(e,t){if("object"!=z(e)||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=z(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==z(t)?t:t+""}const ne=function(e){function t(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var r=arguments.length,n=new Array(r),i=0;i<r;i++)n[i]=arguments[i];return te(e=X(this,t,[].concat(n)),"state",{step:"confirmation",leaveToBookReturnTrip:!1}),te(e,"_bookAnotherTrip",function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0],r=o.A.getBookingParams();o.A.updateBookingParams(te(te({},t?"to":"from",r.to),t?"from":"to",r.from)),e.setState({leaveToBookReturnTrip:!0},function(){a.Nc.push("/")})}),e}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&ee(e,t)}(t,e),r=t,(i=[{key:"UNSAFE_componentWillMount",value:function(){var e=o.A.getBookingData().confirmationData;Array.isArray(e)?window.clevertap&&window.clevertap.notifications.push({titleText:"Would you like to receive Push Notifications?",bodyText:"We promise to only send you relevant content and give you updates on your transactions",okButtonText:"Sign me up!",rejectButtonText:"No thanks",okButtonColor:"#ba324e"}):a.Nc.replace("/payment")}},{key:"componentWillUnmount",value:function(){this.state.leaveToBookReturnTrip||o.A.resetBookingData()}},{key:"render",value:function(){return Array.isArray(o.A.getBookingData().confirmationData)?n.createElement("div",{className:"container-fluid",style:{background:"none"}},n.createElement("div",{className:"clear"}),n.createElement("div",{className:"container main confirmation"},n.createElement(K,{bookAnotherTrip:this._bookAnotherTrip}))):null}}])&&Q(r.prototype,i),c&&Q(r,c),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,i,c}(n.Component);function oe(e){return oe="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},oe(e)}function ae(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,pe(n.key),n)}}function ie(e,t,r){return t=se(t),function(e,t){if(t&&("object"==oe(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,ce()?Reflect.construct(t,r||[],se(e).constructor):t.apply(e,r))}function ce(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(ce=function(){return!!e})()}function se(e){return se=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},se(e)}function le(e,t){return le=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},le(e,t)}function ue(e,t,r){return(t=pe(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function pe(e){var t=function(e,t){if("object"!=oe(e)||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=oe(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==oe(t)?t:t+""}const me=function(e){function t(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var r=arguments.length,n=new Array(r),a=0;a<r;a++)n[a]=arguments[a];return ue(e=ie(this,t,[].concat(n)),"state",{cmsData:o.A.getBookingData().cmsData}),ue(e,"_onChange",function(){e.setState({cmsData:o.A.getBookingData().cmsData})}),e}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&le(e,t)}(t,e),r=t,(a=[{key:"UNSAFE_componentWillMount",value:function(){o.A.addChangeListener(this._onChange)}},{key:"componentWillUnmount",value:function(){o.A.removeChangeListener(this._onChange)}},{key:"render",value:function(){return n.createElement(ne,{location:this.props.location})}}])&&ae(r.prototype,a),i&&ae(r,i),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,a,i}(n.Component)},12550:(e,t,r)=>{var n=r(25814),o=r(60471);e.exports=function(e,t,r){var a=t&&r||0;"string"==typeof e&&(t="binary"===e?new Array(16):null,e=null);var i=(e=e||{}).random||(e.rng||n)();if(i[6]=15&i[6]|64,i[8]=63&i[8]|128,t)for(var c=0;c<16;++c)t[a+c]=i[c];return t||o(i)}},17067:(e,t,r)=>{"use strict";r.d(t,{c:()=>o});var n=r(64128);function o(){return"2"==n.Ri("guest-flow-variant")}},21755:(e,t,r)=>{"use strict";var n=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];
vendor: 1,111 bytes, line 1
1for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},o=function(){function e(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}return function(t,r,n){return r&&e(t.prototype,r),n&&e(t,n),t}}(),a=s(r(96540)),i=s(r(5556)),c=s(r(12550));function s(e){return e&&e.__esModule?e:{default:e}}var l=[],u=function(e){function t(){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),function(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}(this,(t.__proto__||Object.getPrototypeOf(t)).apply(this,arguments))}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}
1(t,e),o(t,[{key:"componentDidMount",value:function(){var e=this,t=this.props,r=t.sitekey,n=t.locale,o=t.badge,a=t.tabindex,i=t.onResolved,s=t.onError,u=t.onExpired,p=t.onLoaded;this.callbackName="GoogleRecaptchaResolved-"+(0,c.default)(),window[this.callbackName]=i;var m=function(){if(e.container){var t=document.createElement("div");e.container.appendChild(t);var n=window.grecaptcha.render(t,{sitekey:r,size:"invisible",badge:o,tabindex:a,callback:e.callbackName,"error-callback":s,"expired-callback":u});e.execute=function(){return window.grecaptcha.execute(n)},e.reset=function(){return window.grecaptcha.reset(n)},e.getResponse=function(){return window.grecaptcha.getResponse(n)},p()}};window.grecaptcha&&window.grecaptcha.render&&window.grecaptcha.execute&&window.grecaptcha.reset&&window.grecaptcha.getResponse?m():(l.push(m),document.querySelector("#recaptcha")||function(e){window.GoogleRecaptchaLoaded=function(){for(;l.length;)l.shift()()};var t=document.createElement("script");t.id="recaptcha",t.src="https://www.google.com/recaptcha/api.js?hl="+e+"&onload=GoogleRecaptchaLoaded&render=explicit",t.type="text/javascript",t.async=!0,t.defer=!0,t.onerror=function(e){throw e},document.body.appendChild(t)}(n))}},{key:"componentWillUnmount",value:function(){for(;this.container.firstChild;)this.container.removeChild(this.container.firstChild);this.reset&&this.reset(),delete window[this.callbackName]}},{key:"render",value:function(){var e=this,t=this.props.style;return a.default.createElement("div",n({ref:function(t){return e.container=t}},t&&{style:t}))}}]),t}(a.default.Component);u.propTypes={sitekey:i.default.string.isRequired,locale:i.default.string,badge:i.default.oneOf(["bottomright","bottomleft","inline"]),tabindex:i.default.number,onResolved:i.default.func,onError:i.default.func,onExpired:i.default.func,onLoaded:i.default.func,style:i.default.object},u.defaultProps={locale:"en",badge:"bottomright",tabindex:0,onResolved:function(){},onError:function(){},onExpired:function(){},onLoaded:function(){}},t.default=u},25814:e=>{var t="undefined"!=typeof crypto&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto)||"undefined"!=typeof msCrypto&&"function"==typeof window.msCrypto.getRandomValues&&msCrypto.getRandomValues.bind(msCrypto);if(t){var r=new Uint8Array(16);e.exports=function(){return t(r),r}}else{var n=new Array(16);e.exports=function(){for(var e,t=0;t<16;t++)3&t||(e=4294967296*Math.random()),n[t]=e>>>((3&t)<<3)&255;return n}}},29921:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n,o=function(){function e(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}return function(t,r,n){return r&&e(t.prototype,r),n&&e(t,n),t}}(),a=r(96540),i=(n=a)&&n.__esModule?n:{default:n},c=r(5556);var s=function(e){function t(e){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);var r=function(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e));return r.scriptLoaderId="id"+r.constructor.idCount++,r}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}
1(t,e),o(t,[{key:"componentDidMount",value:function(){var e=this.props,t=e.onError,r=e.onLoad,n=e.url;this.constructor.loadedScripts[n]?r():this.constructor.erroredScripts[n]?t():this.constructor.scriptObservers[n]?this.constructor.scriptObservers[n][this.scriptLoaderId]=this.props:(this.constructor.scriptObservers[n]=function(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}({},this.scriptLoaderId,this.props),this.createScript())}},{key:"componentWillUnmount",value:function(){var e=this.props.url,t=this.constructor.scriptObservers[e];t&&delete t[this.scriptLoaderId]}},{key:"createScript",value:function(){var e=this,t=this.props,r=t.onCreate,n=t.url,o=t.attributes,a=document.createElement("script");r(),o&&Object.keys(o).forEach(function(e){return a.setAttribute(e,o[e])}),a.src=n,a.hasAttribute("async")||(a.async=1);var i=function(t){var r=e.constructor.scriptObservers[n];Object.keys(r).forEach(function(o){t(r[o])&&delete e.constructor.scriptObservers[n][e.scriptLoaderId]})};a.onload=function(){e.constructor.loadedScripts[n]=!0,i(function(e){return e.onLoad(),!0})},a.onerror=function(){e.constructor.erroredScripts[n]=!0,i(function(e){return e.onError(),!0})},document.body.appendChild(a)}},{key:"render",value:function(){return null}}]),t}(i.default.Component);s.propTypes={attributes:c.PropTypes.object,onCreate:c.PropTypes.func,onError:c.PropTypes.func.isRequired,onLoad:c.PropTypes.func.isRequired,url:c.PropTypes.string.isRequired},s.defaultProps={attributes:{},onCreate:function(){},onError:function(){},onLoad:function(){}},s.scriptObservers={},s.loadedScripts={},s.erroredScripts={},s.idCount=0,t.default=s,e.exports=t.default},32622:(e,t,r)=>{e.exports=r(21755)},60471:e=>{for(var t=[],r=0;r<256;++r)t[r]=(r+256).toString(16).substr(1);e.exports=function(e,r){var n=r||0,o=t;return[o[e[n++]],o[e[n++]],o[e[n++]],o[e[n++]],"-",o[e[n++]],o[e[n++]],"-",o[e[n++]],o[e[n++]],"-",o[e[n++]],o[e[n++]],"-",o[e[n++]],o[e[n++]],o[e[n++]],o[e[n++]],o[e[n++]],o[e[n++]]].join("")}},64526:(e,t,r)=>{"use strict";r.d(t,{A:()=>y});var n=r(96540),o=r(29921),a=r.n(o),i=r(29465);function c(e){return c="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},c(e)}function s(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,d(n.key),n)}}function l(e,t,r){return t=p(t),function(e,t){if(t&&("object"==c(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,u()?Reflect.construct(t,r||[],p(e).constructor):t.apply(e,r))}function u(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(u=function(){return!!e})()}function p(e){return p=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},p(e)}function m(e,t){return m=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},m(e,t)}function f(e,t,r){return(t=d(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function d(e){var t=function(e,t){if("object"!=c(e)||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=c(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==c(t)?t:t+""}const y=function(e){function t(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var r=arguments.length,n=new Array(r),o=0;o<r;o++)n[o]=arguments[o];return f(e=l(this,t,[].concat(n)),"handleScriptCreate",function(){e.setState({scriptLoaded:!1})}),f(e,"handleScriptError",function(){e.setState({scriptError:!0})}),f(e,"handleScriptLoad",function(){e.setState({scriptLoaded:!0})}),e}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&m(e,t)}(t,e),r=t,(o=[{key:"componentDidMount",value:function(){if(!0===this.props.refered){var e=document.createElement("script"),t="https://".concat(i.A.MENTIONME,"/api/v2/refereefind/mmd5f8e542?implementation=link&situation=checkout&locale=en_GB");e.src=t,e.id="mention-me",e.async=!0,document.body.appendChild(e)}}},{key:"componentWillUnmount",value:function(){var e=document.getElementById("mention-me");
1if(e&&e.parentNode.removeChild(e),null!=window.MentionMeFiredTags&&""!=window.MentionMeFiredTags){var t="checkout",r="link";1==window.MentionMeFiredTags[r+t]&&delete window.MentionMeFiredTags[r+t]}}},{key:"render",value:function(){var e=this;if(!0===this.props.refered)return null;var t=e.props.firstName,r=e.props.lastName,o=e.props.email,c=e.props.orderTotal,s=e.props.orderNumber,l=(new Date).toJSON(),u="https://".concat(i.A.MENTIONME,"/api/v2/referreroffer/mmd5f8e542?implementation=popup&email=").concat(o,"&order_number=").concat(s,"&order_total=").concat(c,"&order_currency=GBP&situation=confirmationpage&surname=").concat(r,"&firstname=").concat(t,"&order_date=").concat(l);return n.createElement(a(),{url:u,onCreate:e.handleScriptCreate,onError:e.handleScriptError,onLoad:e.handleScriptLoad})}}])&&s(r.prototype,o),c&&s(r,c),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,o,c}(n.Component)}}]); 2//# sourceMappingURL=7131.ebd8f95e1c1a3432a8ae.js.map
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.