1import{d as qe,e as He,f as ze,g as $e,h as Xe,i as Ye,j as Ke,k as Ze,l as Je,m as Qe,n as et,o as tt,p as it,q as ot,s as nt,t as at}from"./chunk-GPH4AH5Y.js";import{a as st,b as pt}from"./chunk-JZOPM3QZ.js";import"./chunk-H3TNIBMD.js";import"./chunk-XTDP6UOI.js";import"./chunk-5R7GV722.js";import"./chunk-IY2D47SW.js";import"./chunk-V2KGYVAW.js";import"./chunk-UJTSBFNT.js";import"./chunk-SYL67YTI.js";import{a as rt}from"./chunk-ZQLX4EOV.js";import{a as ge,b as be}from"./chunk-HLIML4N4.js";import"./chunk-TJOTDQLA.js";import"./chunk-MMTUULM3.js";import"./chunk-KPZWRXIV.js";import{a as P}from"./chunk-GCUHT3BO.js";import"./chunk-DW3DSYX4.js";import"./chunk-IJQ2CRSL.js";import{a as Te}from"./chunk-R3QMWRLK.js";import{a as Se}from"./chunk-RED6C2OH.js";import"./chunk-3WMEEXRB.js";import{a as We}from"./chunk-HEVIQJJM.js";import"./chunk-WJN7FNVB.js";import"./chunk-QNP2V3E3.js";import"./chunk-USECRODO.js";import"./chunk-SW4IGBMC.js";import"./chunk-JLHZOZ23.js";import"./chunk-T5NJQP36.js";import"./chunk-7Q7BZ2A4.js";import"./chunk-4AZNQ3DK.js";import"./chunk-ABBXLBL6.js";import"./chunk-6NJE4IPO.js";import{a as je}from"./chunk-6TJB6AAQ.js";import"./chunk-IZMYJAXH.js";import"./chunk-HLBTBLMB.js";import"./chunk-JGJGXX7J.js";import"./chunk-DIZEUDI4.js";import"./chunk-KTM6LW3N.js";import"./chunk-JSZP35VH.js";import"./chunk-DVPCUS35.js";import"./chunk-JOF2N2A4.js";import"./chunk-V337ISYH.js";import"./chunk-Q3IKGAZU.js";import"./chunk-JXKVOPHN.js";import"./chunk-EUEY2NCZ.js";import"./chunk-CJPLD6EO.js";import"./chunk-W4BO5QHV.js";import"./chunk-EO5PKPEG.js";import"./chunk-XTG2QKW3.js";import{a as C}from"./chunk-NZTDWNC2.js";import"./chunk-VRDXROJ7.js";import{c as Oe}from"./chunk-24QZRBAK.js";import{a as Ge,c as Pe,e as ce,f as ue}from"./chunk-FOEPKLLX.js";import{g as x,i as S,j as Be}from"./chunk-TXLECCWT.js";import"./chunk-OK5RV444.js";import"./chunk-37FDMDDG.js";import{E as Ue,J,L as j,c as B,e as h,g as W,h as V,j as Ve,l as we,o as U,x as G,y as O}from"./chunk-7JRSK7QJ.js";import{b as Z}from"./chunk-W7A2LXGN.js";import"./chunk-OS4A5VPY.js";import{f as E}from"./chunk-FQ3EYPSJ.js";import{d as w,e as b}from"./chunk-N4XGHN5K.js";import{a as q,g as v,h as xe}from"./chunk-LPGEMBOY.js";import{$ as Re,$b as o,$c as le,Ac as R,Bb as f,Dc as a,Fc as $,K as Me,Ld as Le,P as Ne,Tb as l,Vb as d,Vc as De,Wc as X,Xb as se,Xc as ye,Yb as pe,Zb as me,_b as g,ac as n,bc as p,bd as de,cc as T,dc as N,ec as Ae,fb as te,ha as H,ic as D,jc as ie,kb as s,la as z,lc as L,ma as c,oa as Ie,oc as u,pe as Y,r as re,tb as ae,te as K,ua as I,va as A,w as ee}from"./chunk-FKAK7BJG.js";import"./chunk-QBUHZOWM.js";var lt=(()=>{class t{constructor(e){this.http=e,this.baseurl=K.apiUrl}getUser(e){let i=this.baseurl+"users/"+e;return this.http.get(i).pipe(ee(r=>{if(r)return r}))}getUserForCreatePassword(e){let i=this.baseurl+"users/"+e+"/true";return this.http.get(i).pipe(ee(r=>{if(r)return r}))}static{this.\u0275fac=function(i){return new(i||t)(z(Y))}}static{this.\u0275prov=H({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})();function wt(t,m){t&1&&(o(0,"h2",1),p(1,"app-spinner"),a(2," Loading"),n())}function Pt(t,m){t&1&&(o(0,"div"),a(1,"Email is required"),n())}function Tt(t,m){if(t&1&&(o(0,"div",13),l(1,Pt,2,0,"div"),n()),t&2){let e=u(2);s(),d(e.f.email.errors.required?1:-1)}}function bt(t,m){t&1&&(o(0,"div"),a(1,"Password is required"),n())}function Et(t,m){t&1&&(o(0,"div"),a(1,"Password must be at least 8 characters"),n())}function kt(t,m){t&1&&(o(0,"div"),a(1," Password must contain 8 letters and at least one "),o(2,"strong"),a(3,"CaPiTal letter"),n(),a(4,", "),o(5,"strong"),a(6,"$p3c14l character"),n(),a(7," and "),o(8,"strong"),a(9,"1 number"),n()())}function Ft(t,m){if(t&1&&(o(0,"div",13),l(1,bt,2,0,"div"),l(2,Et,2,0,"div"),l(3,kt,10,0,"div"),n()),t&2){let e=u(2);s(),d(e.f.password.errors.required?1:-1),s(),d(e.f.password.errors.minlength?2:-1),s(),d(e.f.password.errors.weakPassword?3:-1)}}function Mt(t,m){t&1&&(o(0,"div"),a(1,"Confirm Password is required"),n())}function Nt(t,m){t&1&&(o(0,"div"),a(1,"Passwords must match"),n())}function Rt(t,m){if(t&1&&(o(0,"div",13),l(1,Mt,2,0,"div"),l(2,Nt,2,0,"div"),n()),t&2){let e=u(2);s(),d(e.f.confirmPassword.errors.required?1:-1),s(),d(e.f.confirmPassword.errors.mustMatch?2:-1)}}function It(t,m){if(t&1&&p(0,"password-strength-meter",19),t&2){let e=u(2);g("password",e.f.password.value)}}function At(t,m){if(t&1){let e=D();o(0,"div",2)(1,"div",3)(2,"h1"),a(3,"Create Password"),n(),o(4,"p"),a(5,"We have updated our platform for you."),n(),o(6,"p"),a(7,"For security reasons, you must create a new password."),n(),o(8,"div",4)(9,"div",5)(10,"form",6),L("ngSubmit",function(){I(e);let r=u();return A(r.createPassword())}),o(11,"div",7)(12,"div",8)(13,"div",9)(14,"label",10),a(15,"Email"),n(),p(16,"fa-icon",11)(17,"input",12),l(18,Tt,2,1,"div",13),n()(),o(19,"div",8)(20,"div",9)(21,"label",14),a(22,"New Password"),n(),p(23,"fa-icon",15)(24,"input",16),l(25,Ft,4,3,"div",13),n()(),o(26,"div",8)(27,"div",9)(28,"label",17),a(29,"Retype New Password"),n(),p(30,"fa-icon",15)(31,"input",18),l(32,Rt,3,2,"div",13),n()(),o(33,"div",8),l(34,It,1,1,"password-strength-meter",19),n()(),o(35,"button",20),a(36,"Create Password and Login"),n()()()(),p(37,"hr"),o(38,"p"),a(39,"For security, your password must be a minimum of 8 letters and contain at least:"),n(),o(40,"ul")(41,"li"),a(42,"1 lower case and 1 CAPITAL Letter"),n(),o(43,"li"),a(44,"1 number e.g. 1234567890"),n(),o(45,"li"),a(46,"1 special character e.g. `!@#$%^&*()_+-=[]\\;':\"|,.<>/?~"),n()()()()}if(t&2){let e=u();s(10),g("formGroup",e.createPasswordForm),s(7),R("is-invalid",e.submitted&&e.f.email.errors),s(),d(e.submitted&&e.f.email.errors?18:-1),s(6),R("is-invalid",e.submitted&&e.f.password.errors),s(),d(e.submitted&&e.f.password.errors?25:-1),s(6),R("is-invalid",e.submitted&&e.f.confirmPassword.errors),s(),d(e.submitted&&e.f.confirmPassword.errors?32:-1),s(2),d(e.f.password.value?34:-1)}}var dt=(()=>{class t{constructor(){this.submitted=!1,this.loading=!0,this.fb=c(J),this.route=c(x),this.supplierService=c(b),this.authService=c(Z),this.alertify=c(w),this.userService=c(lt),this.router=c(S)}get f(){return this.createPasswordForm.controls}ngOnInit(){this.authService.loggedIn()&&(this.authService.logout(),this.alertify.error("You were logged in - we have logged you out in order to complete this action.")),this.createPasswordForm=this.fb.group({email:["",[h.required,h.email]],password:["",[h.required,h.minLength(8),ue()]],confirmPassword:["",h.required]},{validator:ce("password","confirmPassword")}
1),this.userId=this.route.snapshot.paramMap.get("id"),this.userService.getUserForCreatePassword(this.userId).subscribe(e=>{e?(e.id.toLowerCase()!==this.userId.toLowerCase()&&this.router.navigate(["/"]),this.loading=!1):this.router.navigate(["/"])},e=>{this.router.navigate(["/"])})}createPassword(){if(this.submitted=!0,this.createPasswordForm.invalid)return;let e={userId:this.userId,email:this.f.email.value,password:this.f.password.value,supplierId:this.supplierService.currentSupplier.id};this.authService.createPassword(e).subscribe(i=>{this.alertify.success("logged in successfully")},i=>{this.alertify.error(i.error)},()=>{window.location.href=this.authService.getHomePageForUser()})}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=f({type:t,selectors:[["app-create-password"]],decls:4,vars:2,consts:[[1,"container"],[1,"text-center","mt-5","mb-5"],[1,"row","mt-5"],[1,"offset-sm-3","col-sm-6"],[1,"booking"],[1,"widget","search"],[3,"ngSubmit","formGroup"],[1,"row"],[1,"col-12"],[1,"form-group"],["for","email"],["icon","envelope"],["id","email","type","text","formControlName","email","placeholder","[email protected]",1,"form-control"],[1,"invalid-feedback"],["for","password"],["icon","key"],["id","password","type","password","formControlName","password",1,"form-control"],["for","confirm-password"],["id","confirm-password","type","password","formControlName","confirmPassword",1,"form-control"],[3,"password"],["type","submit",1,"btn","btn-primary"]],template:function(i,r){i&1&&(p(0,"app-nav"),o(1,"div",0),l(2,wt,3,0,"h2",1),l(3,At,47,11,"div",2),n()),i&2&&(s(2),d(r.loading?2:-1),s(),d(r.loading?-1:3))},dependencies:[j,U,B,W,V,O,G,C,P,E,ge],encapsulation:2})}}return t})();var ct=(()=>{class t{constructor(e){this.http=e,this.baseurl=K.apiUrl+"deeplink"}generatePostObject(e,i,r){let k="",F="",oe="",M="",Q="",Ce="",ve="",ne="",_e="";switch(r.url[0].path){case"flight-results":k=q.Flight;let[xt,St]=r.paramMap.get("airportCodesHyphenated").split("-");F=xt,oe=St,M=r.paramMap.get("fromDate"),Q=r.paramMap.get("toDate");break;case"hotel-results":k=q.Hotel,Ce=r.paramMap.get("searchLocationName"),M=r.paramMap.get("fromDate"),Q=r.paramMap.get("toDate");break;case"experience-results":k=q.Experience,Ce=r.paramMap.get("searchLocationName"),M=r.paramMap.get("fromDate"),ve=r.paramMap.get("CategoryId");break;case"experience-location-results":k=q.Experience,ne=r.paramMap.get("originName"),M=r.paramMap.get("fromDate"),ve=r.paramMap.get("CategoryId");break;case"transfer-results":k=q.Transfer,ne=r.paramMap.get("originName"),_e=r.paramMap.get("destinationName"),M=r.paramMap.get("fromDate"),Q=r.paramMap.get("toDate");break;case"car-hire-results":k=q.CarHire,ne=r.paramMap.get("pickUp"),_e=r.paramMap.get("dropOff"),M=r.paramMap.get("fromDate"),Q=r.paramMap.get("toDate");break;default:re("Wrong Product Type")}return{SupplierId:e,ProductId:k,AirPortCodeFrom:F,AirPortCodeTo:oe,FromDate:M,ToDate:Q,SearchLocationName:Ce,CategoryId:ve,OriginName:ne,DestinationName:_e,Adults:+r.paramMap.get("adults"),Children:+r.paramMap.get("children"),Infants:+r.paramMap.get("infants"),CurrencyPreferenceId:i,Referrer:r.paramMap.get("referrer")||"",Keywords:r.paramMap.get("keywords")||""}}createItinerary(e){return this.http.post(this.baseurl,e)}static{this.\u0275fac=function(i){return new(i||t)(z(Y))}}static{this.\u0275prov=H({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})();var y=(()=>{class t{constructor(){this.route=c(x),this.router=c(S),this.supplierService=c(b),this.deeplinkService=c(ct),this.alertifyService=c(w)}ngOnInit(){this.supplierService.getSupplier().subscribe(e=>{this.supplierService.currentSupplier=e;let i=this.deeplinkService.generatePostObject(this.supplierService.currentSupplier.id,this.supplierService.getCurrencyByName(this.route.snapshot.paramMap.get("currencyName")).id,this.route.snapshot);this.deeplinkService.createItinerary(i).subscribe(r=>{this.router.navigate(["search",r.id])})},e=>{this.alertifyService.error("Sorry, something went wrong, please refresh this page and try again. If this continues, please contact us. !")})}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=f({type:t,selectors:[["app-deeplink"]],decls:3,vars:0,consts:[[1,"pt-5","pb-5","text-center"]],template:function(i,r){i&1&&(o(0,"h2",0),p(1,"app-spinner"),a(2,` Redirecting you to your search results 2`),n())},dependencies:[C],encapsulation:2})}}return t})();function Dt(t,m){t&1&&(o(0,"h3",4),p(1,"app-spinner"),a(2," Loading"),n())}function Lt(t,m){if(t&1){let e=D();o(0,"div")(1,"h1"),a(2,"Forgot Password"),n(),o(3,"p"),a(4,"Please enter your email to continue."),n(),o(5,"div",6)(6,"div",7)(7,"form",8),L("ngSubmit",function(){I(e);let r=u();return A(r.forgotPassword())}),o(8,"div",9)(9,"div",10)(10,"div",11)(11,"label",12),a(12,"Email"),n(),p(13,"fa-icon",13)(14,"input",14),n()()(),o(15,"button",15),a(16,"Forgot Password"),n()()()()()}if(t&2){let e=u();s(7),g("formGroup",e.form),s(7),R("is-invalid",e.submitted&&e.form.invali
2d)}}function Bt(t,m){t&1&&(o(0,"h4",5),a(1," Password is reset successfully, please check your email for further instructions "),n())}var ut=(()=>{class t{constructor(){this.loading=!1,this.submitted=!1,this.success=!1,this.authService=c(Z),this.alertify=c(w),this.formBuilder=c(J)}ngOnInit(){this.authService.loggedIn()&&(window.location.href=this.authService.getHomePageForUser()),this.createForm()}createForm(){this.form=this.formBuilder.group({email:["",[h.required,h.pattern(Ge)]]})}forgotPassword(){this.submitted=!0,this.valid()&&(this.loading=!0,this.authService.forgotPassword(this.form.get("email").value).subscribe(e=>{this.submitted=!1,this.loading=!1,this.success=!0},e=>{this.alertify.error("Sorry, something went wrong, please refresh this page and try again. If this continues, please contact us. "),this.loading=!1}))}valid(){return this.form.get("email").errors?.required?(this.alertify.error("Please enter your email"),!1):this.form.get("email").errors?.email?(this.alertify.error("The email address should be valid"),!1):this.form.valid}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=f({type:t,selectors:[["app-forgot-password"]],decls:9,vars:3,consts:[[1,"container"],[1,"row","mt-5"],[1,"col-sm-3"],[1,"col-sm-6"],[1,"mt-5","mb-5","text-center"],[1,"alert","alert-success"],[1,"booking"],[1,"widget","search"],[3,"ngSubmit","formGroup"],[1,"row"],[1,"col-12"],[1,"form-group"],["for","email"],["icon","envelope"],["id","email","type","text","formControlName","email","required","","placeholder","[email protected]",1,"form-control"],["type","submit",1,"btn","btn-primary"]],template:function(i,r){i&1&&(p(0,"app-nav"),o(1,"div",0)(2,"div",1),p(3,"div",2),o(4,"div",3),l(5,Dt,3,0,"h3",4),l(6,Lt,17,3,"div"),l(7,Bt,2,0,"h4",5),n(),p(8,"div",2),n()()),i&2&&(s(5),d(r.loading?5:-1),s(),d(!r.loading&&!r.success?6:-1),s(),d(!r.loading&&r.success?7:-1))},dependencies:[j,U,B,W,V,Ue,O,G,P,C,E],encapsulation:2})}}return t})();var gt=(()=>{class t{constructor(){this.router=c(S),this.maintenanceMessage="";let i=this.router.currentNavigation()?.extras?.state?.maintenanceMessage;if(!i){this.router.navigate(["/"]);return}this.maintenanceMessage=i}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=f({type:t,selectors:[["app-maintenance-page"]],decls:4,vars:1,consts:[[1,"maintenance-page"],["icon","gear","size","4x","animation","spin"],[1,"description"]],template:function(i,r){i&1&&(o(0,"section",0),p(1,"fa-icon",1),o(2,"p",2),a(3),n()()),i&2&&(s(3),$(" ",r.maintenanceMessage," "))},dependencies:[E],styles:[".maintenance-page[_ngcontent-%COMP%]{height:calc(100vh - 50px);display:flex;align-items:center;justify-content:center;flex-direction:column}.description[_ngcontent-%COMP%]{max-width:700px;padding:20px;font-size:24px;text-align:center}"]})}}return t})();var ft=t=>({"is-invalid":t});function Wt(t,m){t&1&&(o(0,"h2",1),p(1,"app-spinner"),n())}function Vt(t,m){if(t&1){let e=D();o(0,"div",2),p(1,"div",3),o(2,"div",4)(3,"h1"),a(4,"My Bookings"),n(),o(5,"p"),a(6,"Please enter your last name and booking reference to continue."),n(),o(7,"div",5)(8,"div",6)(9,"form",7),L("ngSubmit",function(){I(e);let r=u();return A(r.onSubmit())}),o(10,"div",8)(11,"div",9)(12,"div",10)(13,"label",11),a(14,"Last Name"),n(),p(15,"input",12),n()(),o(16,"div",9)(17,"div",10)(18,"label",13),a(19,"Booking Reference"),n(),p(20,"input",14),n()()(),o(21,"button",15),a(22,"Submit"),n()()()()()()}if(t&2){let e=u();s(9),g("formGroup",e.theForm),s(6),g("ngClass",ye(3,ft,e.hasErrorAndTouched("lastName"))),s(5),g("ngClass",ye(5,ft,e.hasErrorAndTouched("bookingReference")))}}var ht=(()=>{class t{constructor(){this.theForm=new Ve({lastName:new we("",[h.required,h.pattern(Pe)]),bookingReference:new we("",[h.required,h.pattern(Pe)])}),this.loading=!1,this.router=c(S),this.itinerariesApi=c(Oe),this.supplierService=c(b),this.alertifyService=c(w)}ngOnInit(){this.checkAccess()}checkAccess(){let e=this.supplierService.currentSupplier?.settings;(!e||!e.showMyBookingsToPublic)&&(this.alertifyService.error("Access Denied"),this.router.navigate(["/"]))}onSubmit(){if(this.theForm.markAllAsTouched(),!this.theForm.valid)return;this.loading=!0;let{lastName:e,bookingReference:i}=this.theForm.value;this.itinerariesApi.getItineraryId({supplierId:this.supplierService.currentSupplier?.id,sname:e,bookingReference:i}).subscribe({next:r=>{this.router.navigate(["confirmation",r])},error:()=>{this.alertifyService.error("A booking has not been found with those details"),this.loading=!1}})}hasErrorAndTouched(e){return this.hasError(e)&&this.touched(e)}hasError(e){return!!this.theForm.get(e).errors}touched(e){return this.theForm.get(e).touched}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=f({type:t,selectors:[["app-my-bookings"]],decls:4,vars:2,consts:[[1,"container"],[1,"text-center","mt-5","mb-5"],[1,"row","mt-5"],[1,"col-sm-3"],[1,"col-sm-6"],[1,"booking"],[1,"widget","search","no-icons"],[3,"ngSubmit","formGroup"],[1,"row"],[1,"col-12"],[1,"form-group"],["for","last-name"],["id","last-name","type","text","formControlName","lastName",1,"form-control",3,"ngClass"],["for","booking-reference"],["id","booking-reference","type","text","formControlName","bookingReference",1,"form-control",3,"ngClass"],["type","submit",1,"btn","btn-primary"]],template:function(i,r){i&1&&(p(0,"app-nav"),o(1,"div",0),l(2,Wt,2,0,"h2",1),l(3,Vt,23,7,"div",2),n()),i&2&&(s(2),d(r.loading?2:-1),s(),d(r.loading?-1:3))},dependencies:[Le,j,U,B,W,V,O,G,P,C],encapsulation:2})}}return t})();var fe=(()=>{class t{constructor(){this.itineraryId="",this.route=c(x),this.router=c(S)}ngOnInit(){this.route.queryParamMap.subscribe(e=>{if(e.keys.forEach(i=>
2{i.toLowerCase()==="itineraryid"&&(this.itineraryId=e.get(i))}),!this.itineraryId){this.router.navigateByUrl("404");return}this.route.snapshot.url[0].path==="confirmation.aspx"?this.router.navigate(["confirmation",this.itineraryId]):this.router.navigate(["search",this.itineraryId])})}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=f({type:t,selectors:[["app-old-site-redirects"]],decls:3,vars:0,consts:[[1,"pt-5","pb-5","text-center"]],template:function(i,r){i&1&&(o(0,"h2",0),p(1,"app-spinner"),a(2,` Redirecting you to our new booking platform! 3`),n())},dependencies:[C],encapsulation:2})}}return t})();var ke=(()=>{class t{constructor(e){this.http=e,this.baseUrl=K.apiUrl+"itineraries/create/package-condensed"}createItineraryForPackageCondensed(e){return this.http.post(this.baseUrl,e)}static{this.\u0275fac=function(i){return new(i||t)(z(Y))}}static{this.\u0275prov=H({token:t,factory:t.\u0275fac})}}return t})();var Ct=(()=>{class t{constructor(){this.route=c(x),this.router=c(S),this.alertifyService=c(w),this.packageCondensedApi=c(ke)}ngOnInit(){this.route.queryParamMap.pipe(Ne(1),ee(e=>({supplierName:e.get("s"),packageName:e.get("p"),adults:Number(e.get("a")),adultsRes:Number(e.get("ar")),children:Number(e.get("c")),childrenRes:Number(e.get("cr")),infants:Number(e.get("i")),noRooms:Number(e.get("r")),fromDate:e.get("f")})),Re(e=>this.packageCondensedApi.createItineraryForPackageCondensed(e).pipe(Me(i=>this.handleError(i,e))))).subscribe({next:e=>{this.router.navigate(["search","packages",e.id])},error:()=>this.alertifyService.error("Package not found")})}handleError(e,i){return this.router.navigate(["search","packages"],{queryParams:{fromDate:i.fromDate,adults:i.adults,children:i.children,adultsRes:i.adultsRes,childrenRes:i.childrenRes,infants:i.infants,rooms:i.noRooms}}),re(e)}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=f({type:t,selectors:[["app-package-list-condensed"]],features:[De([ke])],decls:3,vars:0,consts:[[1,"pt-5","pb-5","text-center"]],template:function(i,r){i&1&&(o(0,"h2",0),p(1,"app-spinner"),a(2,` Redirecting you to your search results 4`),n())},dependencies:[C],encapsulation:2})}}return t})();var Ut=()=>["/"],vt=(()=>{class t{static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=f({type:t,selectors:[["app-page-not-found"]],decls:11,vars:2,consts:[[1,"container","text-center"],[1,"mt-5","text-center"],["icon","exclamation"],[1,"mt-3"],[1,"mb-5"],[1,"btn","btn-primary",3,"routerLink"]],template:function(i,r){i&1&&(p(0,"app-nav"),o(1,"div",0)(2,"h1",1),p(3,"fa-icon",2),n(),o(4,"h1",3),a(5,"That's a 404"),n(),o(6,"p",4),a(7,"The page doesn't exist"),n(),o(8,"p")(9,"a",5),a(10,"Home"),n()()()),i&2&&(s(9),g("routerLink",X(1,Ut)))},dependencies:[P,E,Be],encapsulation:2})}}return t})();function Gt(t,m){t&1&&(o(0,"h3",3),p(1,"app-spinner"),a(2," Loading"),n())}function Ot(t,m){t&1&&(o(0,"div"),a(1,"Password is required"),n())}function jt(t,m){t&1&&(o(0,"div"),a(1,"Password must be at least 8 characters"),n())}function qt(t,m){t&1&&(o(0,"div"),a(1," Password must contain 8 letters and at least one "),o(2,"strong"),a(3,"CaPiTal letter"),n(),a(4,", "),o(5,"strong"),a(6,"$p3c14l character"),n(),a(7," and "),o(8,"strong"),a(9,"1 number"),n()())}function Ht(t,m){if(t&1&&(o(0,"div",14),l(1,Ot,2,0,"div"),l(2,jt,2,0,"div"),l(3,qt,10,0,"div"),n()),t&2){let e=u(2);s(),d(e.f.password.errors.required?1:-1),s(),d(e.f.password.errors.minlength?2:-1),s(),d(e.f.password.errors.weakPassword?3:-1)}}function zt(t,m){t&1&&(o(0,"div"),a(1,"Confirm Password is required"),n())}function $t(t,m){t&1&&(o(0,"div"),a(1,"Passwords must match"),n())}function Xt(t,m){if(t&1&&(o(0,"div",14),l(1,zt,2,0,"div"),l(2,$t,2,0,"div"),n()),t&2){let e=u(2);s(),d(e.f.confirmPassword.errors.required?1:-1),s(),d(e.f.confirmPassword.errors.mustMatch?2:-1)}}function Yt(t,m){if(t&1&&p(0,"password-strength-meter",17),t&2){let e=u(2);g("password",e.f.password.value)}}function Kt(t,m){if(t&1){let e=D();o(0,"h1"),a(1,"Update Password"),n(),o(2,"p"),a(3,"Please enter your new password."),n(),o(4,"div",5)(5,"div",6)(6,"form",7),L("ngSubmit",function(){I(e);let r=u();return A(r.resetPassword())}),o(7,"div",8)(8,"div",9)(9,"div",10)(10,"label",11),a(11,"Password"),n(),p(12,"fa-icon",12)(13,"input",13),l(14,Ht,4,3,"div",14),n()(),o(15,"div",9)(16,"div",10)(17,"label",15),a(18,"Confirm Password"),n(),p(19,"fa-icon",12)(20,"input",16),l(21,Xt,3,2,"div",14),n()(),o(22,"div",9),l(23,Yt,1,1,"password-strength-meter",17),n()(),o(24,"button",18),a(25,"Change Password"),n()()()(),p(26,"hr"),o(27,"p"),a(28,"For security, your password must be a minimum of 8 letters and contain at least:"),n(),o(29,"ul")(30,"li"),a(31,"1 lower case and 1 CAPITAL Letter"),n(),o(32,"li"),a(33,"1 number e.g. 1234567890"),n(),o(34,"li"),a(35,"1 special character e.g. `!@#$%^&*()_+-=[]\\;':\"|,.<>/?~"),n()()}if(t&2){let e=u();s(6),g("formGroup",e.form),s(7),R("is-invalid",e.submitted&&e.f.password.errors),s(),d(e.submitted&&e.f.password.errors?14:-1),s(6),R("is-invalid",e.submitted&&e.f.confirmPassword.errors),s(),d(e.submitted&&e.f.confirmPassword.errors?21:-1),s(2),d(e.f.password.value?23:-1)}}function Zt(t,m){t&1&&(o(0,"h4",4),a(1," Your password has been successfully updated. "),n())}var _t=(()=>{class t{constructor(){this.loading=!1,this.submitted=!1,this.success=!1,this.route=c(x),this.authService=c(Z),this.alertify=c(w),this.formBuilder=c(J)}get f(){return this.form.controls}ngOnInit(){this.authService.loggedIn()&&(window.location.href=this.authService.getHomePageForUser()),this.token=this.route.
4snapshot.paramMap.get("token"),this.createForm()}createForm(){this.form=this.formBuilder.group({password:["",[h.required,h.minLength(8),ue()]],confirmPassword:["",h.required]},{validator:ce("password","confirmPassword")})}resetPassword(){this.submitted=!0,!this.form.invalid&&(this.loading=!0,this.authService.resetPassword(this.token,this.form.get("password").value).subscribe(e=>{this.submitted=!1,this.loading=!1,this.success=!0},e=>{this.alertify.error("Sorry, something went wrong, please refresh this page and try again. If this continues, please contact us. "),this.loading=!1}))}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=f({type:t,selectors:[["app-reset-password"]],decls:7,vars:3,consts:[[1,"container"],[1,"row","mt-5"],[1,"offset-sm-3","col-sm-6"],[1,"mt-5","mb-5","text-center"],[1,"alert","alert-success"],[1,"booking"],[1,"widget","search"],[3,"ngSubmit","formGroup"],[1,"row"],[1,"col-12"],[1,"form-group"],["for","password"],["icon","key"],["id","password","type","password","formControlName","password",1,"form-control"],[1,"invalid-feedback"],["for","confirm-password"],["id","confirm-password","type","password","formControlName","confirmPassword",1,"form-control"],[3,"password"],["type","submit",1,"btn","btn-primary"]],template:function(i,r){i&1&&(p(0,"app-nav"),o(1,"div",0)(2,"div",1)(3,"div",2),l(4,Gt,3,0,"h3",3),l(5,Kt,36,8),l(6,Zt,2,0,"h4",4),n()()()),i&2&&(s(4),d(r.loading?4:-1),s(),d(!r.loading&&!r.success?5:-1),s(),d(!r.loading&&r.success?6:-1))},dependencies:[j,U,B,W,V,O,G,P,C,E,ge],encapsulation:2})}}return t})();var Fe=()=>["linkOrder"];function Jt(t,m){if(t&1&&(T(0,"p")(1,"a",9),a(2),N()()),t&2){let e=m.$implicit,i=u();s(),ie("target",i.getTarget(e.url))("href",e.url,te),s(),$(" ",e.name," ")}}function Qt(t,m){if(t&1&&(T(0,"p")(1,"a",9),a(2),N()()),t&2){let e=m.$implicit,i=u();s(),ie("target",i.getTarget(e.url))("href",e.url,te),s(),$(" ",e.name," ")}}function ei(t,m){if(t&1&&(T(0,"p")(1,"a",9),a(2),N()()),t&2){let e=m.$implicit,i=u();s(),ie("target",i.getTarget(e.url))("href",e.url,te),s(),$(" ",e.name," ")}}var yt=(()=>{class t{constructor(){this.supplierService=c(b)}ngOnInit(){this.supplier=this.supplierService.currentSupplier,this.linksCol1=this.supplier.links.filter(e=>e.footerCol1),this.linksCol2=this.supplier.links.filter(e=>e.footerCol2),this.linksCol3=this.supplier.links.filter(e=>e.footerCol3)}getLogoUrl(e){return this.supplierService.getImageUrl(e,!0)}getTarget(e){return e.includes("http")?"_blank":""}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=f({type:t,selectors:[["app-site-footer"]],decls:25,vars:15,consts:[[1,"bg-white"],[1,"container"],[1,"row","pt-5","pb-5"],[1,"col","my-auto"],["height","60",1,"img-responsive",3,"src","title","alt"],[1,"col"],[1,"row","pt-3","pb-3"],[1,"col","text-right"],["target","_blank","rel","noopener noreferrer","href","https://easyota.com/"],[3,"target","href"]],template:function(i,r){i&1&&(T(0,"section",0)(1,"div",1)(2,"div",2)(3,"div",3),Ae(4,"img",4),N(),T(5,"div",5),pe(6,Jt,3,3,"p",null,se),le(8,"orderBy"),N(),T(9,"div",5),pe(10,Qt,3,3,"p",null,se),le(12,"orderBy"),N(),T(13,"div",5),pe(14,ei,3,3,"p",null,se),le(16,"orderBy"),N()()()(),T(17,"section")(18,"div",1)(19,"div",6)(20,"div",7)(21,"h6"),a(22,"Powered By: "),T(23,"a",8),a(24,"EasyOTA"),N()()()()()()),i&2&&(s(4),ie("src",r.getLogoUrl(r.supplier.cosmetics==null?null:r.supplier.cosmetics.logo),te)("title",r.supplier.name)("alt",r.supplier.name),s(2),me(de(8,3,r.linksCol1,X(12,Fe))),s(4),me(de(12,6,r.linksCol2,X(13,Fe))),s(4),me(de(16,9,r.linksCol3,X(14,Fe))))},dependencies:[je],styles:["p[_ngcontent-%COMP%]{font-size:14px}a[_ngcontent-%COMP%]{color:#000}"]})}}return t})();function ti(t,m){if(t&1&&p(0,"app-site-home",0),t&2){let e=u(2);g("page",e.page)("showWidget",e.getPageType(e.page.pageType)!==e.pageType.HomeNoWidget)}}function ii(t,m){if(t&1&&p(0,"app-site-home-safarisoko",1),t&2){let e=u(2);g("page",e.page)}}function oi(t,m){if(t&1&&p(0,"app-site-simple",0),t&2){let e=u(2);g("page",e.page)("showWidget",e.getPageType(e.page.pageType)!==e.pageType.SimpleNoWidget)}}function ni(t,m){if(t&1&&p(0,"app-site-contact",0),t&2){let e=u(2);g("page",e.page)("showWidget",e.getPageType(e.page.pageType)!==e.pageType.ContactNoWidget)}}function ri(t,m){if(t&1&&p(0,"app-site-alternating",0),t&2){let e=u(2);g("page",e.page)("showWidget",e.getPageType(e.page.pageType)!==e.pageType.AlternatingNoWidget)}}function ai(t,m){if(t&1&&p(0,"app-site-blog",0),t&2){let e=u(2);g("page",e.page)("showWidget",e.getPageType(e.page.pageType)!==e.pageType.BlogNoWidget)}}function si(t,m){if(t&1&&p(0,"app-site-blog-list",0),t&2){let e=u(2);g("page",e.page)("showWidget",e.getPageType(e.page.pageType)!==e.pageType.BlogListNoWidget)}}function pi(t,m){if(t&1&&p(0,"app-site-airlines",0),t&2){let e=u(2);g("page",e.page)("showWidget",e.getPageType(e.page.pageType)!==e.pageType.AirlinesNoWidget)}}function mi(t,m){if(t&1&&p(0,"app-site-airlines-list",0),t&2){let e=u(2);g("page",e.page)("showWidget",e.getPageType(e.page.pageType)!==e.pageType.AirlinesListNoWidget)}}function li(t,m){if(t&1&&p(0,"app-site-easyota-home",1),t&2){let e=u(2);g("page",e.page)}}function di(t,m){if(t&1&&p(0,"app-site-flight-routes",0),t&2){let e=u(2);g("page",e.page)("showWidget",!0)}}function ci(t,m){if(t&1&&p(0,"app-site-flight-routes-list",0),t&2){let e=u(2);g("page",e.page)("showWidget",!0)}}function ui(t,m){if(t&1&&p(0,"app-site-destinations",0),t&2){let e=u(2);g("page",e.page)("showWidget",!0)}}function gi(t,m){if(t&1&&p(0,"app-site-destinations-list",0),t&2){let e=u(2);g("page",e.page)("showWidget",!0)}}function fi(t,m){if(t&1&&(l(0,ti,1,2,"app-site-home",0),l(1,ii,1,1,"app-site-home-safarisoko",1),l(2,oi,1,2,"app-site-simple",0),l(3,ni,1,2,"app-site-contact",0),l(4,ri,1,2,"app-site-alternating",0),l(5,ai,1,2,"app-site-blog",0),l(6,si,1,2,"app-site-blog-list",0),l(7,pi,1,2,"app-site-airlines",0),l(8,mi,1,2,"app-site-airlines-list",0),l(9,li,1,1,"app-site-easyota-home",1),l(10,di,1,2,"app-site-flight-routes",0),l(11,ci,1,2,"app-site-flight-routes-list",0),l(12,ui,1,2,"app-site-destinations",0),l(13,gi,1,2,"app-site-destinations-list",0),p(14,"app-site-footer")),t&2){let e=u();d(e.getPageType(e.page.pageType)===e.pageType.Home||e.getPageType(e.page.pageType)===e.pageType.HomeNoWidget?0:-1),s(),d(e.getPageType(e.page.pageType)===e.pageType.SafariSokoHome?1:-1),s(),d(e.getPageType(e.page.pageType)===e.pageType.Simple||e.getPageType(e.page.pageType)===e.pageType.SimpleNoWidget?2:-1),s(),d(e.getPageType(e.page.pageType)===e.pageType.Contact||e.getPageType(e.page.pageType)===e.pageType.ContactNoWidget?3:-1),s(),d(e.getPageType(e.page.pageType)===e.pageType.Alternating||e.getPageType(e.page.pageType)===e.pageType.AlternatingNoWidget?4:-1),s(),d(e.getPageType(e.page.pageType)===e.pageType.Blog||e.getPageType(e.page.pageType)===e.pageType.BlogNoWidget?5:-1),s(),d(e.getPageType(e.page.pageType)===e.pageType.BlogList||e.getPageType(e.page.pageType)===e.pageType.BlogListNoWidget?6:-1),s(),d(e.getPageType(e.page.pageType)===e.pageType.Airlines||e.getPageType(e.page.pageType)===e.pageType.AirlinesNoWidget?7:-1),s(),d(e.getPageType(e.page.pageType)===e.pageType.AirlinesList||e.getPageType(e.page.pageType)===e.pageType.AirlinesListNoWidget?8:-1),s(),d(e.getPageType(e.page.pageType)===e.pageType.EasyOTAHome?9:-1),s(),d(e.getPageType(e.page.pageType)===e.pageType.Flights?10:-1),s(),d(e.getPageType(e.page.pageType)===e.pageType.FlightsList?11:-1),s(),d(e.getPageType(e.page.pageType)===e.pageType.De
4stinations?12:-1),s(),d(e.getPageType(e.page.pageType)===e.pageType.DestinationsList?13:-1)}}var he=(()=>{class t{constructor(e,i,r){this.route=e,this.supplierService=i,this.gtmService=r,this.loading=!0,this.pageItemArray=0,this.pageType=xe}ngOnInit(){this.route.data.subscribe(e=>{let i=this.route.snapshot.paramMap.get("pageRoute"),r=this.route.snapshot.paramMap.get("pageName");if(this.supplier=this.supplierService.currentSupplier,i==null&&r==null&&this.supplier?.settings?.redirectToExternalHome)window.location.href=this.supplier?.settings?.redirectToExternalHome;else{let k=(i??"")+"/"+(r??"");this.supplierService.getSupplierPage(encodeURIComponent(k)).subscribe(F=>{if(F==null){this.supplier.urlId.toLowerCase()==="tripindigo.com"?window.location.href="/":window.location.href="404";return}this.page=F,this.page=this.supplierService.checkPageItems(F),this.page.items=this.page.items.sort((oe,M)=>oe.order-M.order),F&&F.photos&&(this.heroImage='background-image: url("'+this.supplierService.getImageUrl(F.photos[0]?.photo.url)+'");'),this.loading=!1})}}),this.gtmService.addGtmToDom()}getPageType(e){return xe[e]}static{this.\u0275fac=function(i){return new(i||t)(ae(x),ae(b),ae(We))}}static{this.\u0275cmp=f({type:t,selectors:[["app-site-pages"]],decls:2,vars:1,consts:[[3,"page","showWidget"],[3,"page"]],template:function(i,r){i&1&&(p(0,"app-nav"),l(1,fi,15,14)),i&2&&(s(),d(r.loading?-1:1))},dependencies:[P,yt,Ye,Ke,ze,$e,Xe,qe,He,Ze,Je,Qe,et,tt,it,ot],encapsulation:2})}}return t})();var jn=[{path:"",component:he},{path:"",children:[{path:v.FlightResults,component:y},{path:v.FlightResults+"/:referrer",component:y},{path:v.HotelResults,component:y},{path:v.HotelResults+"/:referrer",component:y},{path:v.ExperienceResults,component:y},{path:v.ExperienceResults+"/:referrer",component:y},{path:v.ExperienceLocationResults,component:y},{path:v.ExperienceLocationResults+"/:referrer",component:y},{path:v.TransferResults,component:y},{path:v.TransferResults+"/:referrer",component:y},{path:v.CarHireResults,component:y},{path:v.CarHireResults+"/:referrer",component:y}]},{path:"",children:[{path:"search.aspx",component:fe},{path:"book.aspx",component:fe},{path:"confirmation.aspx",component:fe}]},{path:"maintenance",component:gt},{path:"pk",component:Ct},{path:"login",loadChildren:()=>import("./chunk-MI4FH4JH.js").then(t=>t.routes)},{path:"auth-callback",loadComponent:()=>import("./chunk-HEKRMZGM.js").then(t=>t.AuthCallbackComponent)},{path:"create-password/:id",providers:[be()],component:dt},{path:"forgot-password",component:ut},{path:"reset-password/:token",providers:[be()],component:_t},{path:"search",loadChildren:()=>import("./chunk-7DVCEIIA.js").then(t=>t.routes)},{path:"checkout",loadChildren:()=>import("./chunk-7DVCEIIA.js").then(t=>t.routes)},{path:"my-bookings",component:ht},{path:"confirmation",runGuardsAndResolvers:"always",loadChildren:()=>import("./chunk-LFCGQWDM.js").then(t=>t.routes)},{path:"account",runGuardsAndResolvers:"always",canActivate:[Te],loadChildren:()=>import("./chunk-WN6AI4BU.js").then(t=>t.routes)},{path:"supplier",runGuardsAndResolvers:"always",canActivate:[Te],providers:[rt,nt,at,pt(st()),Ie(()=>{Se("packages-styling","/assets/css/packages.css"),Se("admin-portal","/assets/css/admin-portal.css")})],loadChildren:()=>import("./chunk-AWABJIID.js").then(t=>t.routes)},{path:"wizard",loadChildren:()=>import("./chunk-CURU6Y4T.js").then(t=>t.routes)},{path:"404",component:vt},{path:":pageRoute",component:he},{path:":pageRoute/:pageName",component:he}];export{jn as routes};
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.