1"use strict";(self.webpackChunkace=self.webpackChunkace||[]).push([[591],{92163(j,O,o){o.d(O,{m:()=>h});var c=o(42905),t=o(85240),r=o(12481),d=o(93683),v=o(79896),b=o(45706);const l=["modalContainer"],a=["closeButton"];function k(R,_){if(1&R&&(r.qex(0),r.nrm(1,"p",8),r.nI1(2,"station"),r.nI1(3,"async"),r.bVm()),2&R){const u=_.$implicit;r.R7$(),r.Y8G("innerHtml",r.bMT(3,3,r.bMT(2,1,u)),r.npT)}}let h=(()=>{class R{constructor(){this.title="title",this.description=["description"],this.cta="cta",this.description=this.description.map(g=>g.replace(/(?:(http(s)?:\/\/[^\s]+))/m,'<a class="external-link" href="$1" target="_blank">$1</a>'))}ngAfterViewInit(){setTimeout(()=>{document.getElementById("mdRowDetailsModalTitle").scrollIntoView(),this.modalContainer.nativeElement.focus()})}onButtonClicked(){this.handleCTAClick(this)}static{this.\u0275fac=function(g){return new(g||R)}}static{this.\u0275cmp=r.VBU({type:R,selectors:[["ace-modal-md-row-details"]],viewQuery:function(g,T){if(1&g&&(r.GBs(l,7),r.GBs(a,5)),2&g){let C;r.mGM(C=r.lsd())&&(T.modalContainer=C.first),r.mGM(C=r.lsd())&&(T.closeButton=C.first)}},inputs:{handleCTAClick:"handleCTAClick",title:"title",description:"description",cta:"cta"},standalone:!1,decls:10,vars:4,consts:[["modalContainer",""],["closeButton",""],["role","dialog","aria-modal","true","aria-labelledby","mdRowDetailsModalTitle","aria-details","mdRowDetailsModalDesc","cdkTrapFocus","",1,"modal","t-row",3,"keydown.escape","cdkTrapFocusAutoCapture"],["id","mdRowDetailsModalTitle","cdkFocusInitial","","tabindex","-1",1,"copy-title-2"],["id","mdRowDetailsModalDesc",1,"modal-content"],[4,"ngFor","ngForOf"],[1,"details-modal-close-container"],["appearance","editorial","size","primary","id","details-modal-close",3,"action"],[1,"modal-description","external-link",3,"innerHtml"]],template:function(g,T){if(1&g){const C=r.RV6();r.j41(0,"div",2,0),r.bIt("keydown.escape",function(){return t.eBV(C),t.Njj(T.onButtonClicked())}),r.j41(2,"span",3),r.EFF(3),r.k0s(),r.j41(4,"div",4),r.DNE(5,k,4,5,"ng-container",5),r.k0s(),r.j41(6,"div",6)(7,"ace-button",7,1),r.bIt("action",function(){return t.eBV(C),t.Njj(T.onButtonClicked())}),r.EFF(9),r.k0s()()()}2&g&&(r.Y8G("cdkTrapFocusAutoCapture",!0),r.R7$(3),r.JRh(T.title),r.R7$(2),r.Y8G("ngForOf",T.description),r.R7$(4),r.JRh(T.cta))},dependencies:[d.Sq,c.Q,v.kB,d.Jj,b.V],styles:['@import"https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap";@import"https://fonts.cdnfonts.com/css/source-sans-pro";@import"https://fonts.googleapis.com/css2?family=Fira+Sans:wght@400;700&display=swap";@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-ItalicWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-ItalicWEB.woff2) format("woff2");font-weight:400;font-style:italic}@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-RegularWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-RegularWEB.woff2) format("woff2");font-weight:400;font-style:normal}@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-MediumItalicWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-MediumItalicWEB.woff2) format("woff2");font-weight:500;font-style:italic}@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-MediumWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-MediumWEB.woff2) format("woff2");font-weight:500;font-style:normal}@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-BoldItalicWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-BoldItalicWEB.woff2) format("woff2");font-weight:700;font-style:italic}@font-face{font-family:font-title;src:url(/assets/fonts/RailAlphabet3Web-Bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}[_nghost-%COMP%]{position:absolute;top:0;right:0;left:0;display:block;width:100%;overflow:scroll;word-wrap:break-word}@media(min-width:766px){[_nghost-%COMP%]{position:absolute;top:50%;left:50%;overflow:hidden;transform:translate(-50%) translateY(-50%)}}.modal[_ngcontent-%COMP%]{max-width:500px;height:100vh;margin:auto;padding:1rem;background-color:#fff;border-top:5px solid #6c4399}@media(min-width:766px){.modal[_ngcontent-%COMP%]{width:500px;height:auto;border:1px solid #e2dbe9;border-radius:1.25rem}}.modal-description[_ngcontent-%COMP%]{display:block}.modal-content[_ngcontent-%COMP%]{height:83vh;height:auto;overflow-y:auto}@media(min-width:766px){.modal-content[_ngcontent-%COMP%]{max-height:83vh;height:auto;overflow-y:auto}}.platform-xc[_nghost-%COMP%] .modal[_ngcontent-%COMP%], .platform-xc [_nghost-%COMP%] .modal[_ngcontent-%COMP%]{border:none}.platform-xc[_nghost-%COMP%] .details-modal-close-container[_ngcontent-%COMP%], .platform-xc [_nghost-%COMP%] .details-modal-close-container[_ngcontent-%COMP%]{display:flex;justify-content:center;align-items:center}']})}}return R})()},37460(j,O,o){o.d(O,{j:()=>r});
1var c=o(12481);const t=["*"];let r=(()=>{class d{constructor(){this.isMobileFullscreen=!0}static{this.\u0275fac=function(l){return new(l||d)}}static{this.\u0275cmp=c.VBU({type:d,selectors:[["ace-popup-wrapper"]],inputs:{isMobileFullscreen:"isMobileFullscreen"},standalone:!1,ngContentSelectors:t,decls:2,vars:2,consts:[[1,"popup"]],template:function(l,a){1&l&&(c.NAR(),c.j41(0,"div",0),c.SdG(1),c.k0s()),2&l&&c.AVh("popup-suppress-mobile-fullscreen",!a.isMobileFullscreen)},styles:['@import"https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap";@import"https://fonts.cdnfonts.com/css/source-sans-pro";@import"https://fonts.googleapis.com/css2?family=Fira+Sans:wght@400;700&display=swap";@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-ItalicWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-ItalicWEB.woff2) format("woff2");font-weight:400;font-style:italic}@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-RegularWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-RegularWEB.woff2) format("woff2");font-weight:400;font-style:normal}@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-MediumItalicWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-MediumItalicWEB.woff2) format("woff2");font-weight:500;font-style:italic}@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-MediumWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-MediumWEB.woff2) format("woff2");font-weight:500;font-style:normal}@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-BoldItalicWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-BoldItalicWEB.woff2) format("woff2");font-weight:700;font-style:italic}@font-face{font-family:font-title;src:url(/assets/fonts/RailAlphabet3Web-Bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}[_nghost-%COMP%] .popup[_ngcontent-%COMP%]{position:absolute;inset:0;display:block;background-color:#fff;border-radius:10px;border:2px solid #6c4399}@media(min-width:766px){[_nghost-%COMP%] .popup[_ngcontent-%COMP%]{position:relative}}[_nghost-%COMP%] .popup-suppress-mobile-fullscreen[_ngcontent-%COMP%]{position:relative}']})}}return d})()},64020(j,O,o){o.d(O,{I:()=>d});var c=o(75797),t=o(42868),r=o(85240);let d=(()=>{class v{constructor(l){this._searchService=l,this._promotions$=new c.t(null),this._searchService.searchResults$?.subscribe(a=>{a.promotions&&(this._promotions=a.promotions,this._promotions$.next(this._promotions))})}getPromotionById(l){for(const a of this._promotions)if(a.id===l)return a;return null}get promotions$(){return this._promotions$}get promotions(){return this._promotions}static{this.\u0275fac=function(a){return new(a||v)(r.KVO(t.S))}}static{this.\u0275prov=r.jDH({token:v,factory:v.\u0275fac,providedIn:"root"})}}return v})()},23972(j,O,o){o.d(O,{k:()=>r});var c=o(75797),t=o(85240);let r=(()=>{class d{constructor(){this.studentPromoInput$=new c.t(null)}setStudentPromo(b){this.studentPromoInput$.next(b)}getStudentPromo(){return this.studentPromoInput$.asObservable()}getStudentPromoValue(){return this.studentPromoInput$.getValue()}static{this.\u0275fac=function(l){return new(l||d)}}static{this.\u0275prov=t.jDH({token:d,factory:d.\u0275fac,providedIn:"root"})}}return d})()},62920(j,O,o){o.d(O,{q:()=>v});var c=o(75797),t=o(70271),r=o(85240),d=o(63855);let v=(()=>{class b{constructor(a){this._http=a,this._ticket_information$=new c.t([]),this.ticketInfoPath="/assets/json/ticket-information.json",this._ticketInfoUrl="//"+location.host+this.ticketInfoPath,this._http.get(this._ticketInfoUrl).pipe((0,t.T)(h=>h.data))?.subscribe(h=>{this._ticket_information$.next(h)})}reduceGroup(a){let k;return this._ticket_information$?.subscribe(h=>{k=h.filter(_=>_.name===a)[0].data}),k}static{this.\u0275fac=function(k){return new(k||b)(r.KVO(d.Qq))}}static{this.\u0275prov=r.jDH({token:b,factory:b.\u0275fac,providedIn:"root"})}}return b})()},18708(j,O,o){o.d(O,{R:()=>t});var c=o(85240);let t=(()=>
1{class r{constructor(){this.totumToken=null}setToken(v){this.totumToken=v}getToken(){return this.totumToken}hasToken(){return!!this.totumToken}clearToken(){this.totumToken=null}static{this.\u0275fac=function(b){return new(b||r)}}static{this.\u0275prov=c.jDH({token:r,factory:r.\u0275fac,providedIn:"root"})}}return r})()},83877(j,O,o){o.d(O,{k:()=>g});var c=o(24398),t=o(43942),r=o(1642),d=o(77744),v=o(9270),b=o(20478),l=o(77878),a=o(12481),k=o(93683);function h(T,C){1&T&&(a.j41(0,"span",8),a.EFF(1,"Completed: "),a.k0s())}function R(T,C){1&T&&(a.j41(0,"span",8),a.EFF(1,"Current: "),a.k0s())}function _(T,C){if(1&T&&(a.j41(0,"li",4)(1,"div",5),a.DNE(2,h,2,0,"span",6)(3,R,2,0,"span",6),a.j41(4,"span",7),a.EFF(5),a.k0s(),a.j41(6,"span",8),a.EFF(7),a.k0s()(),a.j41(8,"div",9)(9,"span",10),a.EFF(10),a.k0s()()()),2&T){const w=C.$implicit,$=C.index,X=a.XpG(2);a.AVh("booking-steps-step-current",$===X.currentStepIndex)("booking-steps-step-completed",$<X.currentStepIndex),a.R7$(2),a.Y8G("ngIf",w.isCompletedSegment),a.R7$(),a.Y8G("ngIf",w.isCurrent),a.R7$(2),a.JRh(w),a.R7$(2),a.Lme(" (step ",$+1," of ",X.steps.length,")"),a.R7$(2),a.AVh("booking-steps-counter-filled",$<=X.currentStepIndex)("booking-steps-counter-current",$===X.currentStepIndex),a.R7$(),a.SpI(" ",$+1," ")}}function u(T,C){if(1&T&&(a.j41(0,"div",1)(1,"ul",2),a.DNE(2,_,11,14,"li",3),a.k0s()()),2&T){const w=a.XpG();a.R7$(2),a.Y8G("ngForOf",w.steps)}}class g extends b.D{constructor(){super(),this.isSeasons=!1,this.steps=[d.Z.SEARCH,d.Z.DELIVERY_STANDARD,d.Z.REVIEW,d.Z.SUMMARY],this.currentStepIndex=0}ngOnInit(){this.isSeasons&&this.addSubscription(this.photocard$?.subscribe(C=>{this.steps[1]=C?d.Z.DELIVERY_PHOTOCARD:d.Z.DELIVERY_SEASON,this.updateCurrentStepIndex()}))}ngOnChanges(C){null!=C?.currentStep?.currentValue&&this.updateCurrentStepIndex()}updateCurrentStepIndex(){this.currentStepIndex=this.steps.findIndex(C=>C===this.currentStep)}static{this.\u0275fac=function(w){return new(w||g)}}static{this.\u0275cmp=a.VBU({type:g,selectors:[["ace-booking-steps"]],inputs:{isSeasons:"isSeasons",currentStep:"currentStep"},standalone:!1,features:[a.Vt3,a.OA$],decls:2,vars:3,consts:[["class","container",4,"ngIf"],[1,"container"],[1,"steps-container"],["class","booking-steps",3,"booking-steps-step-current","booking-steps-step-completed",4,"ngFor","ngForOf"],[1,"booking-steps"],[1,"booking-steps-step"],["class","sr-only",4,"ngIf"],[1,"booking-steps-label"],[1,"sr-only"],["aria-hidden","true",1,"booking-steps-counters"],[1,"booking-steps-counter"]],template:function(w,$){1&w&&(a.DNE(0,u,3,1,"div",0),a.nI1(1,"async")),2&w&&a.Y8G("ngIf",!a.bMT(1,1,$.isMobile$))},dependencies:[k.Sq,k.bT,k.Jj],styles:['@import"https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap";@import"https://fonts.cdnfonts.com/css/source-sans-pro";@import"https://fonts.googleapis.com/css2?family=Fira+Sans:wght@400;700&display=swap";@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-ItalicWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-ItalicWEB.woff2) format("woff2");font-weight:400;font-style:italic}@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-RegularWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-RegularWEB.woff2) format("woff2");font-weight:400;font-style:normal}@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-MediumItalicWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-MediumItalicWEB.woff2) format("woff2");font-weight:500;font-style:italic}@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-MediumWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-MediumWEB.woff2) format("woff2");font-weight:500;font-style:normal}@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-BoldItalicWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-BoldItalicWEB.woff2) format("woff2");font-weight:700;font-style:italic}@font-face{font-family:font-title;src:url(/assets/fonts/RailAlphabet3Web-Bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}[_nghost-%COMP%] .steps-container[_ngcontent-%COMP%]{padding-bottom:40px}[_nghost-%COMP%] .booking-steps[_ngcontent-%COMP%]{position:relative;display:inline-block;width:25%;margin:0;padding:0;text-align:center}[_nghost-%COMP%] .booking-steps[_ngcontent-%COMP%]:before{position:absolute;right:92px;bottom:-10px;display:block;width:100%;height:1px;background-color:#dfdfdf;content:""}@media(min-width:991px){[_nghost-%COMP%] .booking-steps[_ngcontent-%COMP%]:before{right:118px}}@media(min-width:1200px){[_nghost-%COMP%] .booking-steps[_ngcontent-%COMP%]:before{right:143px}}[_nghost-%COMP%] .booking-steps[_ngcontent-%COMP%]:first-of-type:before{display:none}[_nghost-%COMP%] .booking-steps-step[_ngcontent-%COMP%]{height:50px;margin:0;font-weight:400;font-size:16px;line-height:50px}[_nghost-%COMP%] .booking-steps-step-current[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{font-weight:700}[_nghost-%COMP%] .booking-steps-step-completed[_ngcontent-%COMP%]:before, [_nghost-%COMP%] .booking-steps-step-current[_ngcontent-%COMP%]:before{position:absolute;right:92px;bottom:-10px;display:block;width:100%;height:2px;background-color:#e2dbe9;content:""}@media(min-width:991px){[_nghost-%COMP%] .booking-steps-step-completed[_ngcontent-%COMP%]:before, [_nghost-%COMP%] .booking-steps-step-current[_ngcontent-%COMP%]:before{right:118px}}@media(min-width:1200px){[_nghost-%COMP%] .booking-steps-step-completed[_ngcontent-%COMP%]:before, [_nghost-%COMP%] .booking-steps-step-current[_ngcontent-%COMP%]:before{right:143px}}[_nghost-%COMP%] .booking-steps-step-completed[_ngcontent-%COMP%]:first-of-type:before, [_nghost-%COMP%] .booking-steps-step-current[_ngcontent-%COMP%]:first-of-type:before{display:none}[_nghost-%COMP%] .booking-steps-label[_ngcontent-%COMP%]{margin:0;color:#27334a;font-weight:400;font-size:18.5px;font-family:"Rail Alphabet 2 TEXT",sans-serif;line-height:2.8rem}[_nghost-%COMP%] .booking-steps-counters[_ngcontent-%COMP%]{position:absolute;right:0;left:0;z-index:1;font-size:14px}[_nghost-%COMP%] .booking-steps-counter[_ngcontent-%COMP%]{position:relative;padding:.3rem .65rem;background-color:#dfdfdf;border-radius:1rem}[_nghost-%COMP%] .booking-steps-counter-current[_ngcontent-%COMP%]{font-weight:700;background-color:#e2dbe9}[_nghost-%COMP%] .booking-steps-counter-filled[_ngcontent-%COMP%]{background-color:#e2dbe9;color:#27334a}']})}}(0,c.Cg)([(0,r.l6)(v.M.photocard),(0,c.Sn)("design:type",t.c)],g.prototype,"photocard$",void 0),(0,c.Cg)([(0,r.l6)(l.p.isMobile),(0,c.Sn)("design:type",t.c)],g.prototype,"isMobile$",void 0)},72501(j,O,o){o.d(O,{k:()=>h});var c=o(24398),t=o(1642),r=o(11360),d=o(43942),v=o(43696),b=o(85240),l=o(12481),a=o(93683);function k(R,_){if(1&R&&(l.j41(0,"section",1)(1,"h2",2),l.EFF(2," Refund information "),l.k0s(),l.j41(3,"span",3),b.qSk(),l.j41(4,"svg",4)(5,"g",5),l.nrm(6,"path",6),l.k0s(),l.j41(7,"defs")(8,"clipPath",7),l.nrm(9,"rect",8),l.k0s()()()(),b.joV(),l.j41(10,"p",9)(11,"span"),l.EFF(12),l.k0s(),l.j41(13,"a",10),l.EFF(14),l.k0s(),l.j41(15,"span"),l.EFF(16),l.k0s()()()),2&R){const u=_.ngIf,g=l.XpG();l.xc7("background-color",u.bgColorCode)("color",u.colorCode),l.R7$(10),l.xc7("color",u.colorCode),l.R7$(2),l.JRh(g.beforeText),l.R7$(),l.xc7("color",u.underlinedTextColorCode),l.jOp("aria-label",l.VkB("",g.linkText," (opens in a new tab)")),l.Y8G("href",g.infoLink,l.B4B),l.R7$(),l.SpI(" ",g.linkText," "),l.R7$(2),l.JRh(g.afterText)}}class h{constructor(_,u,g){this.ConfigState=_,this.store=u,this.configService=g,this.beforeText="",this.afterText="",this.linkText=""}ngOnInit(){this.isRefundBannerEnabled$=this.configService.hasFeature("isRefundBannerEnabled"),this.refundBannerData$.subscribe(_=>{if(!_)return;const u=_.info,g=_.underlinedText,T=u.indexOf(g);this.beforeText=u.substring(0,T),this.linkText=g,this.afterText=u.substring(T+g.length),this.infoLink=_.infoLink||"javascript:void(0)"})}static{this.\u0275fac=function(u){return new(u||h)(l.rXU(r.o),l.rXU(t.
1il),l.rXU(v.w))}}static{this.\u0275cmp=l.VBU({type:h,selectors:[["ace-refund-banner"]],standalone:!1,decls:3,vars:5,consts:[["class","container refund-banner-wrapper","aria-labelledby","refund-banner-heading",3,"background-color","color",4,"ngIf"],["aria-labelledby","refund-banner-heading",1,"container","refund-banner-wrapper"],["id","refund-banner-heading",1,"sr-only"],["aria-hidden","true",1,"refund-icon"],["width","20","height","20","viewBox","0 0 20 20","focusable","false","aria-hidden","true"],["clip-path","url(#clip0_179_877)"],["d","M14.325 0.1825C14.2079 0.0656638 14.0492 3.51487e-05 13.8838 0L6.11625 0C5.95081 3.51487e-05 5.79213 0.0656638 5.675 0.1825L0.1825 5.675C0.0656638 5.79213 3.51487e-05 5.95081 0 6.11625L0 13.8838C3.51487e-05 14.0492 0.0656638 14.2079 0.1825 14.325L5.675 19.8175C5.79213 19.9343 5.95081 20 6.11625 20H13.8838C14.0492 20 14.2079 19.9343 14.325 19.8175L19.8175 14.325C19.9343 14.2079 20 14.0492 20 13.8838V6.11625C20 5.95081 19.9343 5.79213 19.8175 5.675L14.325 0.1825ZM10 5C10.6687 5 11.1925 5.5775 11.125 6.24375L10.6875 10.6275C10.6728 10.7997 10.594 10.9601 10.4667 11.077C10.3394 11.1939 10.1728 11.2588 10 11.2588C9.82716 11.2588 9.66061 11.1939 9.53331 11.077C9.406 10.9601 9.3272 10.7997 9.3125 10.6275L8.875 6.24375C8.85929 6.08654 8.87668 5.92779 8.92606 5.77771C8.97543 5.62763 9.0557 5.48956 9.16168 5.37239C9.26766 5.25522 9.39701 5.16155 9.5414 5.09741C9.68579 5.03327 9.84201 5.00009 10 5ZM10.0025 12.5C10.334 12.5 10.652 12.6317 10.8864 12.8661C11.1208 13.1005 11.2525 13.4185 11.2525 13.75C11.2525 14.0815 11.12
108 14.3995 10.8864 14.6339C10.652 14.8683 10.334 15 10.0025 15C9.67098 15 9.35304 14.8683 9.11862 14.6339C8.8842 14.3995 8.7525 14.0815 8.7525 13.75C8.7525 13.4185 8.8842 13.1005 9.11862 12.8661C9.35304 12.6317 9.67098 12.5 10.0025 12.5Z","fill","currentColor"],["id","clip0_179_877"],["width","20","height","20","fill","white"],[1,"refund-text"],["target","_blank","rel","noopener noreferrer",1,"refund-link",3,"href","aria-label"]],template:function(u,g){1&u&&(l.DNE(0,k,17,14,"section",0),l.nI1(1,"async"),l.nI1(2,"async")),2&u&&l.Y8G("ngIf",l.bMT(1,1,g.isRefundBannerEnabled$)&&l.bMT(2,3,g.refundBannerData$))},dependencies:[a.bT,a.Jj],styles:['@import"https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap";@import"https://fonts.cdnfonts.com/css/source-sans-pro";@import"https://fonts.googleapis.com/css2?family=Fira+Sans:wght@400;700&display=swap";@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-ItalicWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-ItalicWEB.woff2) format("woff2");font-weight:400;font-style:italic}@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-RegularWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-RegularWEB.woff2) format("woff2");font-weight:400;font-style:normal}@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-MediumItalicWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-MediumItalicWEB.woff2) format("woff2");font-weight:500;font-style:italic}@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-MediumWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-MediumWEB.woff2) format("woff2");font-weight:500;font-style:normal}@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-BoldItalicWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-BoldItalicWEB.woff2) format("woff2");font-weight:700;font-style:italic}@font-face{font-family:font-title;src:url(/assets/fonts/RailAlphabet3Web-Bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-ItalicWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-ItalicWEB.woff2) format("woff2");font-weight:400;font-style:italic}@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-RegularWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-RegularWEB.woff2) format("woff2");font-weight:400;font-style:normal}@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-MediumItalicWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-MediumItalicWEB.woff2) format("woff2");font-weight:500;font-style:italic}@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-MediumWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-MediumWEB.woff2) format("woff2");font-weight:500;font-style:normal}@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-BoldItalicWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-BoldItalicWEB.woff2) format("woff2");font-weight:700;font-style:italic}@font-face{font-family:font-title;src:url(/assets/fonts/RailAlphabet3Web-Bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}.refund-banner-wrapper[_ngcontent-%COMP%]{padding:12px 20px;margin:24px auto 10px;font-size:18.5px;font-weight:700;min-height:58px;display:flex;justify-content:center;align-items:center;gap:4px;position:relative;max-width:950px}.refund-banner-wrapper[_ngcontent-%COMP%] p.refund-text[_ngcontent-%COMP%]{font-size:18.5px;font-weight:700;margin:0}.refund-banner-wrapper[_ngcontent-%COMP%] p.refund-text[_ngcontent-%COMP%] a.refund-link[_ngcontent-%COMP%]{text-decoration:underline;font-weight:700;font-size:18.5px;cursor:pointer;display:inline-block;margin:0;font-style:normal}.refund-banner-wrapper[_ngcontent-%COMP%] .refund-icon[_ngcontent-%COMP%]{position:absolute;
1left:30px;top:calc(50% - 10px);height:20px}@media(max-width:768px){.refund-banner-wrapper[_ngcontent-%COMP%]{margin:20px 10px 0;justify-content:flex-start;gap:10px;font-size:14.14px;padding:10px 18px}.refund-banner-wrapper[_ngcontent-%COMP%] p.refund-text[_ngcontent-%COMP%]{font-size:14.14px}.refund-banner-wrapper[_ngcontent-%COMP%] p.refund-text[_ngcontent-%COMP%] a.refund-link[_ngcontent-%COMP%]{font-size:14.4px;font-weight:700;font-style:normal!important}.refund-banner-wrapper[_ngcontent-%COMP%] .refund-icon[_ngcontent-%COMP%]{position:static}}@media(max-width:768px){.order-review[_nghost-%COMP%] .refund-banner-wrapper[_ngcontent-%COMP%], .order-review [_nghost-%COMP%] .refund-banner-wrapper[_ngcontent-%COMP%]{margin:20px 0 0}}']})}}(0,c.Cg)([(0,t.l6)(r.o.refundBanner),(0,c.Sn)("design:type",d.c)],h.prototype,"refundBannerData$",void 0)},67685(j,O,o){o.d(O,{g:()=>B});var c=o(24398),t=o(12481),r=o(84006),d=o(1642),v=o(56042),b=o(19999),l=o(59452),a=o(43942),k=o(51567),h=o(70271),R=o(63037),_=o(36647),u=o(64334),g=o(33900),T=o(52048),C=o(7599),w=o(64020),$=o(60247),X=o(42868),N=o(36770),J=o(77744),K=o(3689),Z=o(20478),q=o(41854),ot=o(51128),p=o(68496),L=o(81226),H=o(34798),tt=o(77878),I=o(79264),F=o(58310);var W=o(84806),Q=o(73171),st=o(73960),ht=o(43696),mt=o(58624),vt=o(11041),M=o(85240),yt=o(3255),lt=o(45684),bt=o(18103),S=o(93683),Tt=o(79896),ct=o(42905),Ct=o(92163),_t=(o(32771),o(22197),o(11360)),Pt=o(94616),kt=o(62920),Et=o(37961),ft=o(72031),pt=o(65678),dt=o(45706);function Ot(i,n){1&i&&(M.qSk(),t.j41(0,"svg",10),t.nrm(1,"use",11),t.k0s())}function Mt(i,n){1&i&&(M.qSk(),t.j41(0,"svg",12),t.nrm(1,"use",13),t.k0s())}function wt(i,n){if(1&i&&(t.j41(0,"span"),t.EFF(1),t.nI1(2,"station"),t.nI1(3,"async"),t.k0s()),2&i){const e=t.XpG(3);t.R7$(),t.SpI("(",t.bMT(3,4,t.i5U(2,1,e.leg.originTravelPoint.code,"crsCode")),")")}}function Rt(i,n){if(1&i&&(t.j41(0,"span"),t.EFF(1),t.nI1(2,"station"),t.nI1(3,"async"),t.k0s()),2&i){const e=t.XpG(3);t.R7$(),t.SpI("(",t.bMT(3,4,t.i5U(2,1,e.leg.destinationTravelPoint.code,"crsCode")),")")}}function xt(i,n){if(1&i&&(t.j41(0,"div",29)(1,"p"),t.EFF(2),t.nI1(3,"station"),t.nI1(4,"async"),t.DNE(5,wt,4,6,"span",26),t.nI1(6,"station"),t.nI1(7,"async"),t.EFF(8),t.nI1(9,"station"),t.nI1(10,"async"),t.DNE(11,Rt,4,6,"span",26),t.nI1(12,"station"),t.nI1(13,"async"),t.k0s()()),2&i){const e=t.XpG(2);t.R7$(2),t.SpI(" ",t.bMT(4,6,t.bMT(3,4,e.leg.originTravelPoint.code))," "),t.R7$(3),t.Y8G("ngIf",t.bMT(7,11,t.i5U(6,8,e.leg.originTravelPoint.code,"crsCode"))),t.R7$(3),t.SpI(" to ",t.bMT(10,15,t.bMT(9,13,e.leg.destinationTravelPoint.code))," "),t.R7$(3),t.Y8G("ngIf",t.bMT(13,20,t.i5U(12,17,e.leg.destinationTravelPoint.code,"crsCode")))}}function It(i,n){1&i&&t.eu8(0)}
1function St(i,n){if(1&i&&(t.qex(0),t.nrm(1,"span",35),t.nI1(2,"currency"),t.nI1(3,"currency"),t.j41(4,"span",36),t.EFF(5),t.nI1(6,"currency"),t.k0s(),t.j41(7,"span",37),t.EFF(8),t.nI1(9,"currency"),t.k0s(),t.nrm(10,"ace-promo-badge",38),t.bVm()),2&i){const e=t.XpG(4);t.R7$(),t.BMQ("aria-label","Ticket discounted to "+t.ii3(2,6,e.journeyPrice,"GBP","symbol","1.2-2")+" from "+t.ii3(3,11,e.price.totalPrice.value,"GBP","symbol","1.2-2")),t.R7$(4),t.SpI(" ",t.brH(6,16,e.price.totalPrice.value,"GBP","symbol")," "),t.R7$(3),t.SpI(" ",t.brH(9,20,e.journeyPrice,"GBP","symbol")," "),t.R7$(2),t.Y8G("value",e.price.totalPrice.promotion.value)("percentValue",e.price.totalPrice.promotion.percentValue)("currency",e.price.totalPrice.currency)}}function Bt(i,n){if(1&i&&(t.j41(0,"span",41),t.EFF(1),t.nI1(2,"currency"),t.k0s()),2&i){const e=t.XpG(5);t.R7$(),t.JRh(t.brH(2,1,e.undiscountedTotalPrice,"GBP","symbol"))}}function At(i,n){if(1&i&&(t.qex(0),t.DNE(1,Bt,3,5,"span",39),t.nI1(2,"async"),t.j41(3,"span",40),t.EFF(4),t.nI1(5,"currency"),t.k0s(),t.bVm()),2&i){const e=t.XpG(4);t.R7$(),t.Y8G("ngIf",t.bMT(2,2,e.showUndiscountedPrice$)),t.R7$(3),t.JRh(t.brH(5,4,e.journeyPrice,"GBP","symbol"))}}function $t(i,n){if(1&i&&t.DNE(0,St,11,24,"ng-container",26)(1,At,6,8,"ng-container",26),2&i){const e=t.XpG(3);t.Y8G("ngIf",e.price.totalPrice.promotion),t.R7$(),t.Y8G("ngIf",!e.price.totalPrice.promotion)}}function Dt(i,n){1&i&&(t.j41(0,"span",42),t.EFF(1),t.nI1(2,"currency"),t.k0s()),2&i&&(t.R7$(),t.JRh(t.brH(2,1,0,"GBP","symbol")))}function Ft(i,n){if(1&i&&(t.j41(0,"div",30)(1,"div",31)(2,"span",32),t.EFF(3),t.k0s()(),t.j41(4,"div",33),t.DNE(5,It,1,0,"ng-container",34)(6,$t,2,2,"ng-template",null,0,t.C5r)(8,Dt,3,5,"ng-template",null,1,t.C5r),t.k0s()()),2&i){const e=t.sdS(7),s=t.sdS(9),f=t.XpG(2);t.R7$(3),t.SpI("",f.getTicketType(null==f.price?null:f.price.serviceClass)," ticket"),t.R7$(2),t.Y8G("ngIf",!f.price.isSingleFare&&f.isReturn)("ngIfThen",s)("ngIfElse",e)}}function jt(i,n){if(1&i&&(t.qex(0),t.EFF(1),t.nI1(2,"pluralise"),t.bVm()),2&i){const e=t.XpG(3);t.R7$(),t.JRh(t.i5U(2,1,e.passengers.adults,"adult"))}}function Xt(i,n){1&i&&(t.qex(0),t.EFF(1,", "),t.bVm())}function Wt(i,n){if(1&i&&(t.qex(0),t.EFF(1),t.nI1(2,"pluralise"),t.bVm()),2&i){const e=t.XpG(3);t.R7$(),t.JRh(t.i5U(2,1,e.passengers.children,"child"))}}function Gt(i,n){if(1&i&&(t.j41(0,"div",43),t.DNE(1,jt,3,4,"ng-container",26)(2,Xt,2,0,"ng-container",26)(3,Wt,3,4,"ng-container",26),t.k0s()),2&i){const e=t.XpG(2);t.R7$(),t.Y8G("ngIf",e.passengers.adults>0),t.R7$(),t.Y8G("ngIf",e.passengers.adults>0&&e.passengers.children>0),t.R7$(),t.Y8G("ngIf",e.passengers.children>0)}}function Lt(i,n){if(1&i){const e=t.RV6();t.j41(0,"div",44)(1,"ace-button",45),t.bIt("action",function(f){M.eBV(e);const m=t.XpG(2);return M.Njj(m.onTicketRulesClicked(null==m.price?null:m.price.ticketRulesHTML,f))}),t.j41(2,"span",7),t.EFF(3),t.k0s(),t.j41(4,"span",46),t.EFF(5,"More details about this fare"),t.k0s()()()}if(2&i){const e=t.XpG(2);t.R7$(3),t.SpI(" ",e.directionLabel?"More details about this "+e.directionLabel+" fare":"More details about this fare"," ")}}
1function Ut(i,n){if(1&i&&(t.j41(0,"div",49),M.qSk(),t.j41(1,"svg",50),t.nrm(2,"use",51),t.k0s(),M.joV(),t.j41(3,"p",52),t.EFF(4),t.nI1(5,"railcardDiscount"),t.nI1(6,"async"),t.k0s()()),2&i){const e=n.$implicit;t.R7$(4),t.SpI("",t.bMT(6,3,t.bMT(5,1,e))," applied")}}function Nt(i,n){1&i&&(t.j41(0,"p",53),t.EFF(1," In some cases Railcards are not applied because conditions have not been met, or a discount has already been added. We will always show you the cheapest ticket based on your search criteria, but this may mean that not all Railcards are applied. "),t.k0s())}function Yt(i,n){if(1&i&&(t.qex(0),t.DNE(1,Ut,7,5,"div",47)(2,Nt,2,0,"p",48),t.bVm()),2&i){const e=t.XpG(2);t.R7$(),t.Y8G("ngForOf",e.appliedRailcardDiscount),t.R7$(),t.Y8G("ngIf",null==e.price?null:e.price.hasRailcard)}}function Vt(i,n){1&i&&(t.j41(0,"div",54),M.qSk(),t.j41(1,"svg",55),t.nrm(2,"use",56),t.k0s(),M.joV(),t.j41(3,"p",57),t.EFF(4,"Groupsave discount applied"),t.k0s()())}function Jt(i,n){if(1&i&&(t.j41(0,"div",58),M.qSk(),t.j41(1,"svg",59),t.nrm(2,"use",60),t.k0s(),M.joV(),t.j41(3,"div",61)(4,"p"),t.EFF(5,"NUS promo applied"),t.k0s(),t.j41(6,"p"),t.EFF(7),t.nI1(8,"async"),t.k0s()()()),2&i){const e=t.XpG(2);t.R7$(7),t.JRh(t.bMT(8,1,e.nusCardNumber$))}}function zt(i,n){if(1&i&&(t.j41(0,"div",14)(1,"div",15),t.DNE(2,xt,14,22,"div",16),t.j41(3,"div",17)(4,"span",18),t.EFF(5),t.nI1(6,"date"),t.nI1(7,"date"),t.k0s(),t.j41(8,"p",19)(9,"span",20),t.EFF(10),t.k0s(),t.j41(11,"span",21),t.EFF(12),t.nI1(13,"pluralise"),t.k0s()()()(),t.j41(14,"div",15),t.DNE(15,Ft,10,4,"div",22)(16,Gt,4,3,"div",23)(17,Lt,6,1,"div",24),t.j41(18,"div",25),t.DNE(19,Yt,3,2,"ng-container",26)(20,Vt,5,0,"div",27)(21,Jt,9,3,"div",28),t.nI1(22,"async"),t.k0s()()()),2&i){const e=t.XpG();t.R7$(2),t.Y8G("ngIf",!e.limitedInfo),t.R7$(3),t.Lme("on ",t.i5U(6,11,e.leg.departureDateMoment,"EEE d MMM, H:mm")," - ",t.i5U(7,14,e.leg.arrivalDateMoment,"EEE d MMM, H:mm")),t.R7$(5),t.JRh(e.leg.complexDuration.label),t.R7$(2),t.SpI(" ",t.i5U(13,17,e.leg.changes,"change")),t.R7$(3),t.Y8G("ngIf",e.price),t.R7$(),t.Y8G("ngIf",e.passengers),t.R7$(),t.Y8G("ngIf",e.price),t.R7$(2),t.Y8G("ngIf",e.appliedRailcardDiscount.length),t.R7$(),t.Y8G("ngIf",null==e.price?null:e.price.hasGroupsave),t.R7$(),t.Y8G("ngIf",e.hasNUS(e.price)&&!t.bMT(22,20,e.isMobile$))}}function Kt(i,n){1&i&&(t.j41(0,"div",62)(1,"div",63),t.EFF(2,"You have selected Open Return and can return within one month"),t.k0s()())}class V extends Z.D{constructor(n,e,s,f){super(),this.modalService=n,this.promotionsService=e,this.tocTicketInformationService=s,this.railcardService=f,this.undiscountedTotalPrice=0,this.addSubscription(this.config$?.subscribe(m=>this.currency=m.defaultCurrency?m.defaultCurrency:"GBP"))}ngOnInit(){this.initializeUndiscountedAndTotalPrice()}ngOnChanges(n){this.initializeUndiscountedAndTotalPrice()}initializeUndiscountedAndTotalPrice(){this.undiscountedTotalPrice=(0,st.jt)(this.price),this.showUndiscountedPrice$=this.railcardService.isRailDiscountEnabled().pipe((0,h.T)(n=>n&&this.undiscountedTotalPrice>this.journeyPrice))}get isOutgoing(){return this.direction===N.O.OUT}get isReturn(){return this.direction===N.O.RTN}get journeyPrice(){return this.price?this.price.totalPrice.promotion?this.price.totalPrice.promotion.promotionPrice:this.price.totalPrice.value:0}get directionLabel(){return this.direction===N.O.OUT?"Outbound":this.direction===N.O.RTN?"Return":"Unknown"}getTicketType(n){return"THIRD"===n?"Standard Class":"First Class"}onTicketRulesClicked(n,e){const s=event.currentTarget,f=[...this.price.ticketRulesHTML],m=this.price.ticketableFares.all[0],E=this.price.legSolutions[0],G=m.fareClass;m&&m.fareTicketRules.filter(U=>"REFUND_ALLOWED"===U.type&&"CONFIRMED"===U.applicableOrderStatus&&"TICKET"===U.priceType).length||(f.push('<p class="penalty-info" data-elid="penelty-info">This ticket is non refundable.</p>'),f.filter((U,P)=>{'<p class="penalty-info">Ticket is refundable</p>'===U&&f.splice(P,1)}));const{fareOriginTerminals:A,fareDestinationTerminals:Y}=this.price;let D="<p>Fare Validity</p>";D+=A.length>0?`<p>You can travel from the following stations: ${A.join(", ")}</p>`:"",D+=Y.length>0?`<p>You can travel to the following stations: ${Y.join(", ")}</p>`:"";const et=E?E.originTravelPoint?E.originTravelPoint.code:void 0:this.price.fareOrigin,nt=E?E.destinationTravelPoint?E.destinationTravelPoint.code:void 0:this.price.fareDestination;D+=et?`<p>This ticket is valid from ${et}</p>`:"",D+=nt?`<p>This ticket is valid to ${nt}</p>`:"",m.outwardFareExpirationDate&&(D+=m.outwardFareExpirationDate?`<p>Outward - Valid until ${m.outwardFareExpirationDate}</p>`:""),m.returnFareExpirationDate&&(D+=m.returnFareExpirationDate?`<p>Return - Valid until ${m.returnFareExpirationDate}</p>`:""),D+=this.tocTicketInformationService.reduceGroup(G).join(""),f.push(D),this.modalService.create(Ct.m,{title:"Fare Details",description:f,cta:"Close",handleCTAClick:U=>{U.destroy(),s.focus()}})}hasNUS(n){return!(!n||!n.totalPrice.promotion)&&L.u.isPromotionOfNUSType(this.promotionsService.promotions,n.totalPrice.promotion)}get appliedRailcardDiscount(){return this.price&&this.price.appliedRailcardDiscount?this.price.appliedRailcardDiscount:[]}static{this.\u0275fac=function(e){return new(e||V)(t.rXU(lt.B),t.rXU(w.I),t.rXU(kt.q),t.rXU(Pt.i))}}static{this.\u0275cmp=t.VBU({type:V,selectors:[["ace-journey-leg"]],inputs:{direction:"direction",leg:"leg",price:"price",passengers:"passengers",isOpenReturn:"isOpenReturn",basketOpen:"basketOpen",limitedInfo:"limitedInfo"},standalone:!1,features:[t.Vt3,t.OA$],decls:11,vars:8,consts:[["outgoingPrice",""],["returnPrice",""],[1,"leg"],["data-elid","ticket-leg-direction-header",1,"leg-direction"],["viewBox","0 0 24 24","role","img","aria-label","Outbound journey","focusable","false",4,"ngIf"],["viewBox","0 0 24 24","role","img","aria-label","Return journey","focusable","false",4,"ngIf"],[1,"copy-body-2"],[1,"sr-only"],["class","leg-block",4,"ngIf"],["class","leg-direction",4,"ngIf"],["viewBox","0 0 24 24","role","img","aria-label","Outbound journey","focusable","false"],[0,"xlink","href","#arrow-right-full"],["viewBox","0 0 24 24","role","img","aria-label","Return journey","focusable","false"],[0,"xlink","href","#arrow-left-full"],[1,"leg-block"],[1,"leg-block-content"],["class","leg-stations","data-elid","ticket-stations",4,"ngIf"],[1,"leg-duration"],["data-elid","ticket-journey-date"],[1,"leg-changes"],["data-elid","ticket-duration-time"],["data-elid","ticket-journey-changes"],["class","leg-fare",4,"ngIf"],["class","leg-passengers","data-elid","ticket-leg-passengers",4,"ngIf"],["class","leg-rules more-details",4,"ngIf"],[1,"leg-railcard"],[4,"ngIf"],["class","leg-groupsave",4,"ngIf"],["class","leg-nus",4,"ngIf"],["data-elid","ticket-stations",1,"leg-stations"],[1,"leg-fare"],[1,"leg-fare-class"],["data-elid","ticket-leg-fare-class"],[1,"leg-fare-price","text-right"],[4,"ngIf","ngIfThe
1n","ngIfElse"],[1,"leg-fare-announcement","sr-only"],["aria-hidden","true","data-elid","ticket-leg-initial-price",1,"strikethrough","strikethrough-grey"],["aria-hidden","true","data-elid","ticket-leg-discounted-price"],[3,"value","percentValue","currency"],["class","undiscounted-price",4,"ngIf"],["data-elid","ticket-leg-price"],[1,"undiscounted-price"],["data-elid","ticket-leg-price-return"],["data-elid","ticket-leg-passengers",1,"leg-passengers"],[1,"leg-rules","more-details"],["appearance","link","underLined","true","data-elid","ticket-fare-details-link",3,"action"],["aria-hidden","true"],["class","leg-railcard-railcard-discount",4,"ngFor","ngForOf"],["class","leg-railcard-railcard-copy","data-elid","ticket-railcard-long-copy",4,"ngIf"],[1,"leg-railcard-railcard-discount"],["viewBox","0 0 24 24","data-elid","ticket-railcard-icon"],[0,"xlink","href","#railcard"],["data-elid","ticket-railcard-short-copy"],["data-elid","ticket-railcard-long-copy",1,"leg-railcard-railcard-copy"],[1,"leg-groupsave"],["viewBox","0 0 24 24","data-elid","ticket-groupsave-icon"],[0,"xlink","href","#groupsave"],["data-elid","ticket-groupsave-copy"],[1,"leg-nus"],["viewBox","-1.5 0 20 5","data-elid","ticket-totum-icon"],[0,"xlink","href","#nus"],["data-elid","ticket-nus-copy",1,"leg-nus-text"],[1,"leg-direction"],["data-elid","ticket-open-return-msg",1,"leg-block-content-center"]],template:function(e,s){1&e&&(t.j41(0,"div",2)(1,"div",3),t.DNE(2,Ot,2,0,"svg",4)(3,Mt,2,0,"svg",5),t.j41(4,"span",6),t.EFF(5),t.k0s(),t.j41(6,"h3",7),t.EFF(7),t.k0s()(),t.EFF(8," F "),t.DNE(9,zt,23,22,"div",8)(10,Kt,3,0,"div",9),t.k0s()),2&e&&(t.AVh("leg-promotion",s.basketOpen&&s.price&&!!s.price.totalPrice.promotion),t.R7$(2),t.Y8G("ngIf",s.isOutgoing),t.R7$(),t.Y8G("ngIf",s.isReturn),t.R7$(2),t.JRh(s.directionLabel),t.R7$(2),t.SpI(" ","Outbound"===s.directionLabel?"Outbound journey details":"Return journey details"," "),t.R7$(2),t.Y8G("ngIf",!s.isOpenReturn),t.R7$(),t.Y8G("ngIf",s.isOpenReturn))},dependencies:[S.Sq,S.bT,ct.Q,Et._,S.Jj,S.oe,S.vh,ft.u,pt.W,dt.V],styles:['@import"https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap";@import"https://fonts.cdnfonts.com/css/source-sans-pro";@import"https://fonts.googleapis.com/css2?family=Fira+Sans:wght@400;700&display=swap";@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-ItalicWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-ItalicWEB.woff2) format("woff2");font-weight:400;font-style:italic}@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-RegularWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-RegularWEB.woff2) format("woff2");font-weight:400;font-style:normal}@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-MediumItalicWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-MediumItalicWEB.woff2) format("woff2");font-weight:500;font-style:italic}@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-MediumWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-MediumWEB.woff2) format("woff2");font-weight:500;font-style:normal}@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-BoldItalicWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-BoldItalicWEB.woff2) format("woff2");font-weight:700;font-style:italic}@font-face{font-family:font-title;src:url(/assets/fonts/RailAlphabet3Web-Bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}[_nghost-%COMP%]{display:block}.isReturn[_ngcontent-%COMP%]{margin:-3px 0 3px;transform:rotate(180deg)}.leg[_ngcontent-%COMP%]{min-height:12.5rem;margin:20px 0;padding:20px;background-color:#e2dbe940;border-radius:10px}.leg-promotion[_ngcontent-%COMP%]{animation:5s slowFade .5s}.leg-direction[_ngcontent-%COMP%]{display:flex;align-items:center;margin-bottom:10px}.leg-direction[_ngcontent-%COMP%] svg[_ngcontent-%COMP%]{height:24px}.leg-stations[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{font-weight:900}@media screen and (max-width:768px){.platform-xc[_nghost-%COMP%] .leg-stations[_ngcontent-%COMP%] p[_ngcontent-%COMP%], .platform-xc [_nghost-%COMP%] .leg-stations[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{font-weight:700}}.leg-fare[_ngcontent-%COMP%]{display:flex;flex-direction:row;width:100%}.leg-fare-class[_ngcontent-%COMP%] span[_ngcontent-%COMP%], .leg-fare-price[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{display:block;font-weight:700}.leg-fare-class[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:last-of-type, .leg-fare-price[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:last-of-type{margin-bottom:10px;font-weight:400;line-height:20px}.leg-fare-class[_ngcontent-%COMP%] .undiscounted-price[_ngcontent-%COMP%], .leg-fare-price[_ngcontent-%COMP%] .undiscounted-price[_ngcontent-%COMP%]{color:#27334a80;font-size:16px;text-decoration:line-through;margin-right:5px}.leg-fare-class[_ngcontent-%COMP%]{margin-right:20px;line-height:20px}@media(min-width:766px){.leg-fare-class[_ngcontent-%COMP%]{flex:1}}.leg-fare-class[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:first-of-type{margin-bottom:8px}.leg-fare-price[_ngcontent-%COMP%]{flex:1;font-weight:700}.leg-fare-price[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{display:inline-flex;font-size:20px}.leg-fare-price[_ngcontent-%COMP%] span.strikethrough-grey[_ngcontent-%COMP%]{font-size:14px}.leg-fare-price[_ngcontent-%COMP%] ace-promo-badge[_ngcontent-%COMP%]{align-items:flex-end;justify-content:flex-end}.leg-block[_ngcontent-%COMP%]{display:flex;flex-direction:column;width:100%}@media(min-width:991px){.leg-block[_ngcontent-%COMP%]{flex-direction:row}}.leg-block-content[_ngcontent-%COMP%]{flex:1;line-height:24px}.leg-block-content-center[_ngcontent-%COMP%]{position:absolute;top:50%;left:50%;text-align:center;transform:translate(-50%,-50%)}.leg-block-content[_ngcontent-%COMP%]:last-of-type{order:1;padding:20px 0 0;border-top:1px solid #c6b8d4}@media screen and (max-width:768px){.platform-xc[_nghost-%COMP%] .leg-block-content[_ngcontent-%COMP%]:last-of-type, .platform-xc [_nghost-%COMP%] .leg-block-content[_ngcontent-%COMP%]:last-of-type{border-top-color:#2a183d;margin-top:10px}}@media(min-width:991px){.leg-block-content[_ngcontent-%COMP%]:last-of-type{padding:0 0 0 20px;border-top:0;border-left:1px solid #c6b8d4}.col.col-12[_ngcontent-%COMP%] .leg-block-content[_ngcontent-%COMP%]:last-of-type{max-width:100%}}@media(min-width:1200px){.leg-block-content[_ngcontent-%COMP%]:last-of-type{max-width:100%}}.leg-railcard-railcard-discount[_ngcontent-%COMP%]{display:flex;margin:10px 0 0}.leg-railcard-railcard-discount[_ngcontent-%COMP%] svg[_ngcontent-%COMP%]{height:24px}.leg-railcard-railcard-copy[_ngcontent-%COMP%]{font-size:14px}.leg-groupsave[_ngcontent-%COMP%]{display:flex;align-items:center}.leg-groupsave[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin-bottom:0;font-size:14px}.leg-groupsave[_ngcontent-%COMP%] svg[_ngcontent-%COMP%]{height:24px}.leg-nus[_ngcontent-%COMP%]{display:flex;align-items:center}.leg[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin-bottom:0;font-size:14px}.leg[_ngcontent-%COMP%] svg[_ngcontent-%COMP%]{height:24px;margin-right:.75rem}span.undiscounted-price[_ngcontent-%COMP%]{font-family:"Rail Alphabet 2 TEXT";font-weight:400;font-size:20px;line-height:20px;letter-spacing:0%;text-align:right;text-decoration:line-through;color:#48484acc}.platform-xc[_nghost-%COMP%] .leg-rules.more-details[_ngcontent-%COMP%] ace-button button, .platform-xc [_nghost-%COMP%] .leg-rules.more-details[_ngcontent-%COMP%] ace-button button{color:#fff}']})}}(0,c.Cg)([(0,d.l6)(_t.o.aceConfig),(0,c.Sn)("design:type",a.c)],V.prototype,"config$",void 0),(0,c.Cg)([(0,d.l6)(p.d.nusCardNumber),(0,c.Sn)("design:type",a.c)],V.prototype,"nusCardNumber$",void 0),(0,c.Cg)([(0,d.l6)(tt.p.isMobile),(0,c.Sn)("design:type",a.c)],V.prototype,"isMobile$",void 0),o(76655);var Ht=o(15076),Qt=o(86214);
1function Zt(i,n){if(1&i&&(t.j41(0,"div",11),M.qSk(),t.j41(1,"svg",12)(2,"title"),t.EFF(3,"railcard"),t.k0s(),t.nrm(4,"use",13),t.k0s(),t.EFF(5),t.nI1(6,"railcardDiscount"),t.nI1(7,"async"),t.k0s()),2&i){const e=n.$implicit;t.R7$(5),t.SpI(" ",t.bMT(7,3,t.bMT(6,1,e))," applied ")}}function qt(i,n){if(1&i&&(t.qex(0),t.DNE(1,Zt,8,5,"div",9),t.j41(2,"p",10),t.EFF(3," In some cases Railcards are not applied because conditions have not been met, or a discount has already been added. We will always show you the cheapest ticket based on your search criteria, but this may mean that not all Railcards are applied. "),t.k0s(),t.bVm()),2&i){const e=t.XpG();t.R7$(),t.Y8G("ngForOf",e.appliedRailcardDiscount)}}let te=(()=>{class i{get appliedRailcardDiscount(){return(this.price&&this.price.ticketableFares?[].concat(...this.price.ticketableFares.map(s=>s.fareQualifiers.map(f=>f.program))):null)??[]}static{this.\u0275fac=function(s){return new(s||i)}}static{this.\u0275cmp=t.VBU({type:i,selectors:[["ace-season-ticket"]],inputs:{price:"price"},standalone:!1,decls:23,vars:30,consts:[[1,"ticket"],[1,"ticket-info"],[1,"ticket-info-title"],["data-elid","basket-stations",1,"ticket-info-stations"],[1,"ticket-info-date"],[4,"ngIf"],[1,"ticket-type"],[1,"ticket-type-class"],[1,"ticket-type-price"],["class","discounts",4,"ngFor","ngForOf"],[1,"discounts-railcard-copy"],[1,"discounts"],["viewBox","0 0 24 24","role","img"],[0,"xlink","href","#railcard"]],template:function(s,f){1&s&&(t.j41(0,"div",0)(1,"div",1)(2,"h4",2),t.EFF(3),t.k0s(),t.j41(4,"div",3),t.EFF(5),t.nI1(6,"station"),t.nI1(7,"async"),t.nI1(8,"station"),t.nI1(9,"async"),t.k0s(),t.j41(10,"div",4),t.EFF(11),t.nI1(12,"moment"),t.nI1(13,"moment"),t.k0s(),t.DNE(14,qt,4,1,"ng-container",5),t.k0s(),t.j41(15,"div",6)(16,"div",7),t.EFF(17),t.nI1(18,"fareClass"),t.nI1(19,"async"),t.k0s(),t.j41(20,"div",8),t.EFF(21),t.nI1(22,"currency"),t.k0s()()()),2&s&&(t.R7$(3),t.JRh(f.price.fareDisplayName),t.R7$(2),t.Lme("",t.bMT(7,10,t.bMT(6,8,f.price.fareOrigin))," to ",t.bMT(9,14,t.bMT(8,12,f.price.fareDestination))),t.R7$(6),t.Lme("",t.i5U(12,16,f.price.fareStartDate,"ddd DD MMM YYYY")," - ",t.i5U(13,19,f.price.fareExpirationDate,"ddd DD MMM YYYY")),t.R7$(3),t.Y8G("ngIf",f.appliedRailcardDiscount.length),t.R7$(3),t.JRh(t.bMT(19,24,t.bMT(18,22,f.price.cabinClass))),t.R7$(4),t.JRh(t.brH(22,26,f.price.totalPrice.value,"GBP","symbol")))},dependencies:[S.Sq,S.bT,S.Jj,S.oe,Ht.b,Qt.x,pt.W,dt.V],styles:['@import"https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap";@import"https://fonts.cdnfonts.com/css/source-sans-pro";@import"https://fonts.googleapis.com/css2?family=Fira+Sans:wght@400;700&display=swap";@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-ItalicWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-ItalicWEB.woff2) format("woff2");font-weight:400;font-style:italic}@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-RegularWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-RegularWEB.woff2) format("woff2");font-weight:400;font-style:normal}@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-MediumItalicWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-MediumItalicWEB.woff2) format("woff2");font-weight:500;font-style:italic}@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-MediumWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-MediumWEB.woff2) format("woff2");font-weight:500;font-style:normal}@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-BoldItalicWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-BoldItalicWEB.woff2) format("woff2");font-weight:700;font-style:italic}@font-face{font-family:font-title;src:url(/assets/fonts/RailAlphabet3Web-Bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}[_nghost-%COMP%]{display:block;margin:20px 0;padding:20px;background-color:#f4f1f7;border-radius:10px}[_nghost-%COMP%] .ticket[_ngcontent-%COMP%]{position:relative;display:flex}[_nghost-%COMP%] .ticket-info[_ngcontent-%COMP%]{position:relative;flex:1;padding:15px 15px 20px}[_nghost-%COMP%] .ticket-info-title[_ngcontent-%COMP%]{font-weight:700;font-size:1.1em}[_nghost-%COMP%] .ticket-info-stations[_ngcontent-%COMP%]{margin:10px 0 13px;font-weight:700}[_nghost-%COMP%] .ticket-info-date[_ngcontent-%COMP%]{margin:8px 0}[_nghost-%COMP%] .ticket-info[_ngcontent-%COMP%]:before{position:absolute;right:-1px;display:block;height:70%;margin-top:0;border-left:2px solid #e2dbe9;content:""}[_nghost-%COMP%] .ticket-type[_ngcontent-%COMP%]{position:relative;display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;text-align:center;transition:all ease-in-out .3s}[_nghost-%COMP%] .ticket-type[_ngcontent-%COMP%] svg[_ngcontent-%COMP%]{position:absolute;top:28px}[_nghost-%COMP%] .ticket-type-active[_ngcontent-%COMP%]{color:#fff;background-color:#6c4399}[_nghost-%COMP%] .discounts[_ngcontent-%COMP%]{display:flex;align-items:center}[_nghost-%COMP%] .discounts[_ngcontent-%COMP%] svg[_ngcontent-%COMP%]{width:25px;height:25px;margin-right:5px}']})}}return i})();var ee=o(18089),ne=o(9778),ie=o(54259);const oe=(i,n)=>({"col-6":i,"col-12":n});function se(i,n){1&i&&(M.qSk(),t.j41(0,"svg",26),t.nrm(1,"use",27),t.k0s())}function ae(i,n){1&i&&(M.qSk(),t.j41(0,"svg",26),t.nrm(1,"use",28),t.k0s())}
1function re(i,n){if(1&i){const e=t.RV6();t.j41(0,"button",24,1),t.nI1(2,"async"),t.nI1(3,"async"),t.bIt("click",function(){M.eBV(e);const f=t.XpG();return M.Njj(f.togglePreview())}),t.DNE(4,se,2,0,"svg",25),t.nI1(5,"async"),t.DNE(6,ae,2,0,"svg",25),t.nI1(7,"async"),t.k0s()}if(2&i){const e=t.XpG();t.BMQ("aria-expanded",t.bMT(2,4,e.ticketPreviewService.isExpanded$))("aria-label",t.bMT(3,6,e.ticketPreviewService.isExpanded$)?"Hide ticket preview":"Show ticket preview"),t.R7$(4),t.Y8G("ngIf",!t.bMT(5,8,e.ticketPreviewService.isExpanded$)),t.R7$(2),t.Y8G("ngIf",t.bMT(7,10,e.ticketPreviewService.isExpanded$))}}function le(i,n){if(1&i&&(t.qex(0),t.EFF(1),t.nI1(2,"async"),t.nI1(3,"pluralise"),t.bVm()),2&i){const e=t.XpG(2);t.R7$(),t.JRh(t.i5U(3,3,t.bMT(2,1,e.passengers$).adults,"adult"))}}function ce(i,n){1&i&&(t.qex(0),t.EFF(1,", "),t.bVm())}function fe(i,n){if(1&i&&(t.qex(0),t.EFF(1),t.nI1(2,"async"),t.nI1(3,"pluralise"),t.bVm()),2&i){const e=t.XpG(2);t.R7$(),t.JRh(t.i5U(3,3,t.bMT(2,1,e.passengers$).children,"child"))}}function pe(i,n){if(1&i&&(t.j41(0,"span",29),t.qex(1),t.EFF(2,"Prices for "),t.bVm(),t.DNE(3,le,4,6,"ng-container",20),t.nI1(4,"async"),t.DNE(5,ce,2,0,"ng-container",20),t.nI1(6,"async"),t.nI1(7,"async"),t.DNE(8,fe,4,6,"ng-container",20),t.nI1(9,"async"),t.k0s()),2&i){const e=t.XpG();t.R7$(3),t.Y8G("ngIf",t.bMT(4,3,e.passengers$).adults>0),t.R7$(2),t.Y8G("ngIf",t.bMT(6,5,e.passengers$).adults>0&&t.bMT(7,7,e.passengers$).children>0),t.R7$(3),t.Y8G("ngIf",t.bMT(9,9,e.passengers$).children>0)}}function de(i,n){1&i&&(t.j41(0,"span",30),t.EFF(1,"Railcard applied"),t.k0s())}function ue(i,n){1&i&&(t.j41(0,"span",31),t.EFF(1,"Total to pay:"),t.k0s())}function ge(i,n){1&i&&(t.j41(0,"span",34),t.EFF(1,"Total refund:"),t.k0s())}function he(i,n){1&i&&(t.j41(0,"span",34),t.EFF(1,"Total to pay:"),t.k0s())}function me(i,n){1&i&&(t.j41(0,"span",34),t.EFF(1,"Total to pay:"),t.k0s())}function ve(i,n){if(1&i&&(t.j41(0,"span",35),t.EFF(1),t.nI1(2,"currency"),t.k0s()),2&i){const e=t.XpG(2);t.R7$(),t.SpI(" ",t.brH(2,1,null==e.journeySelectionSummaryrefund||null==e.journeySelectionSummaryrefund.finalRefundableFare?null:e.journeySelectionSummaryrefund.finalRefundableFare.value,"GBP","symbol")," ")}}function ye(i,n){if(1&i&&(t.j41(0,"span",35),t.EFF(1),t.nI1(2,"currency"),t.k0s()),2&i){const e=t.XpG(2);t.R7$(),t.SpI(" ",t.brH(2,1,-1*(null==e.journeySelectionSummaryrefund||null==e.journeySelectionSummaryrefund.finalRefundableFare?null:e.journeySelectionSummaryrefund.finalRefundableFare.value),"GBP","symbol")," ")}}function be(i,n){1&i&&(t.j41(0,"span",35),t.EFF(1),t.nI1(2,"currency"),t.k0s()),2&i&&(t.R7$(),t.SpI(" ",t.brH(2,1,0,"GBP","symbol")," "))}function Te(i,n){if(1&i&&(t.qex(0),t.DNE(1,ge,2,0,"span",32)(2,he,2,0,"span",32)(3,me,2,0,"span",32)(4,ve,3,5,"span",33)(5,ye,3,5,"span",33)(6,be,3,5,"span",33),t.bVm()),2&i){const e=t.XpG();t.R7$(),t.Y8G("ngIf",e.userGetRefund&&!e.userNeedTopay),t.R7$(),t.Y8G("ngIf",!e.userGetRefund&&e.userNeedTopay),t.R7$(),t.Y8G("ngIf",!e.userGetRefund&&!e.userNeedTopay),t.R7$(),t.Y8G("ngIf",e.userGetRefund&&!e.userNeedTopay),t.R7$(),t.Y8G("ngIf",!e.userGetRefund&&e.userNeedTopay),t.R7$(),t.Y8G("ngIf",!e.userGetRefund&&!e.userNeedTopay)}}function Ce(i,n){if(1&i&&(t.qex(0),t.j41(1,"span",35),t.EFF(2),t.nI1(3,"currency"),t.k0s(),t.bVm()),2&i){const e=t.XpG(2);t.R7$(2),t.SpI(" ",t.brH(3,1,e.totalPrice,"GBP","symbol")," ")}}function _e(i,n){if(1&i&&(t.j41(0,"span",37),t.EFF(1),t.nI1(2,"currency"),t.k0s()),2&i){const e=t.XpG(3);t.R7$(),t.SpI(" ",t.brH(2,1,e.totalPrice,"GBP","symbol")," ")}}function Pe(i,n){if(1&i&&(t.DNE(0,_e,3,5,"span",36),t.j41(1,"span",35),t.EFF(2),t.nI1(3,"currency"),t.k0s()),2&i){const e=t.XpG(2);t.Y8G("ngIf",!e.isAmendOrder),t.R7$(2),t.JRh(t.brH(3,2,e.promoPrice,"GBP","symbol"))}}function ke(i,n){if(1&i&&t.DNE(0,Ce,4,5,"ng-container",13)(1,Pe,4,6,"ng-template",null,2,t.C5r),2&i){const e=t.sdS(2),s=t.XpG();t.Y8G("ngIf",s.promoPrice===s.totalPrice)("ngIfElse",e)}}function Ee(i,n){if(1&i){const e=t.RV6();t.j41(0,"ace-button",38),t.bIt("action",function(){M.eBV(e);const f=t.XpG();return M.Njj(f.continueQuickBuy())}),t.EFF(1," Quick buy "),t.k0s()}2&i&&(t.Y8G("dark",!0),t.BMQ("aria-label","continue to buy a ticket, go straight to the Review and Pay page"))}function Oe(i,n){1&i&&t.nrm(0,"ace-tooltip",39)}
1function Me(i,n){if(1&i&&(t.j41(0,"div",42),M.qSk(),t.j41(1,"svg",43),t.nrm(2,"use",44),t.k0s(),M.joV(),t.j41(3,"div",45)(4,"p"),t.EFF(5,"NUS promo applied"),t.k0s(),t.j41(6,"p"),t.EFF(7),t.nI1(8,"async"),t.k0s()()()),2&i){const e=t.XpG(2);t.R7$(7),t.JRh(t.bMT(8,1,e.nusCardNumber$))}}function we(i,n){if(1&i&&(t.j41(0,"div",40),t.DNE(1,Me,9,3,"div",41),t.nI1(2,"async"),t.k0s()),2&i){const e=t.XpG();t.R7$(),t.Y8G("ngIf",t.bMT(2,1,e.isNusDiscount$))}}function Re(i,n){if(1&i&&(t.j41(0,"div",49),t.nrm(1,"ace-journey-leg",50),t.nI1(2,"async"),t.nI1(3,"async"),t.nI1(4,"async"),t.nI1(5,"async"),t.k0s()),2&i){const e=t.XpG(2);t.R7$(),t.Y8G("direction",e.Direction.RTN)("leg",t.bMT(2,6,e.returnSelectedLegSolution$))("price",t.bMT(3,8,e.returnJourneyLegPrice$))("passengers",t.bMT(4,10,e.passengers$))("isOpenReturn",t.bMT(5,12,e.isOpenReturn$))("basketOpen",e.showDetails)}}function xe(i,n){if(1&i&&(t.j41(0,"div")(1,"div",46),t.nI1(2,"async"),t.nI1(3,"async"),t.nrm(4,"ace-journey-leg",47),t.nI1(5,"async"),t.nI1(6,"async"),t.nI1(7,"async"),t.k0s(),t.DNE(8,Re,6,14,"div",48),t.nI1(9,"async"),t.k0s()),2&i){const e=t.XpG();t.R7$(),t.Y8G("ngClass",t.l_i(19,oe,t.bMT(2,7,e.returnSelectedLegSolution$),!t.bMT(3,9,e.returnSelectedLegSolution$))),t.R7$(3),t.Y8G("direction",e.Direction.OUT)("leg",t.bMT(5,11,e.outgoingSelectedLegSolution$))("price",t.bMT(6,13,e.outgoingSelectedPrice$))("passengers",t.bMT(7,15,e.passengers$))("basketOpen",e.showDetails),t.R7$(4),t.Y8G("ngIf",t.bMT(9,17,e.returnSelectedLegSolution$))}}function Ie(i,n){if(1&i&&(t.j41(0,"div",18),t.nrm(1,"ace-season-ticket",51),t.nI1(2,"async"),t.k0s()),2&i){const e=t.XpG();t.R7$(),t.Y8G("price",t.bMT(2,1,e.seasonPrice$))}}function Se(i,n){if(1&i&&(t.j41(0,"div",52)(1,"span",53),t.EFF(2),t.k0s(),t.j41(3,"span",54),t.EFF(4),t.nI1(5,"aceFee"),t.nI1(6,"uppercase"),t.k0s()()),2&i){const e=t.XpG();t.R7$(2),t.SpI("Delivery: ",null==e.ticketingOption||null==e.ticketingOption.fulfillmentInformation||null==e.ticketingOption.fulfillmentInformation.ticketOption?null:e.ticketingOption.fulfillmentInformation.ticketOption.title),t.R7$(2),t.JRh(t.bMT(6,5,t.i5U(5,2,null==e.ticketingOption||null==e.ticketingOption.fulfillmentInformation||null==e.ticketingOption.fulfillmentInformation.ticketOption?null:e.ticketingOption.fulfillmentInformation.ticketOption.fee,"symbol")))}}class B extends Z.D{constructor(n,e,s,f,m,E,G,z,A,Y,D,et,nt,at,U){super(),this.store=n,this.search=e,this.router=s,this.actRoute=f,this.ticketPreviewService=m,this.basketService=E,this.selectionContext=G,this.promotionsService=z,this.logger=A,this.modalService=Y,this.travelCardService=D,this.analyticsService=et,this.searchService=nt,this.configService=at,this.toastService=U,this.clickContinue=new t.bkB,this.isPricesEmpty=!1,this.searchParams$=new v.m,this.totalPrice=0,this.promoPrice=0,this.currency="GBP",this.quickBuyEnabled=!1,this.seatsExtras=!1,this.isAmendOrder=!1,this.hasRailcardApplied=!1,this.userGetRefund=!1,this.userNeedTopay=!1,this.ticketPreviewAnnouncement="",this.logger.loggerContext="TicketPreviewComponent",this.booking$=this.basketService.booking$.asObservable(),this.searchResult$=this.search.searchResults$.asObservable().pipe((0,k.p)(P=>!P.isEmpty)),this.selection$=this.selectionContext.selection$.asObservable(),this.isSelectionAvailable$=this.selection$.pipe((0,h.T)(P=>P.isPartial()||P.isComplete())),this.isSelectionComplete$=this.selectionContext.selectionComplete$,this.seasonPrice$=this.selectionContext.seasonsPrice$,this.prices$=this.selectionContext.prices$,this.isOpenReturn$=this.selectionContext.selection$.asObservable().pipe((0,h.T)(P=>P.isOpenReturn)),this.deliverySelection$=this.selectionContext.deliverySelection$.pipe((0,R.Z)(null)),this.passengers$=this.selection$.pipe((0,k.p)(P=>P&&!!P.searchResults),(0,h.T)(P=>{this.outgoingTime=P.searchResults.outgoingResults?.representativeDateTime,this.returnTime=P.searchResults.hasReturnResults?P.searchResults.returnResults?.representativeDateTime:null;const it=P.searchResults.passengers;let ut=[],gt=[];return it&&it.length>0&&(ut=it.filter(rt=>rt.isAdult),gt=it.filter(rt=>rt.isChild)),{adults:ut.length,children:gt.length}})),this.addSubscription(this.router.events.pipe((0,k.p)(P=>P instanceof r.wF)).subscribe(P=>{this.quickBuyEnabled=P.url.indexOf("search")>-1,this.seatsExtras=P.url.indexOf("seats")>-1||P.url.indexOf("season")>-1})),this.addSubscription(this.isJourneyAmendable$.subscribe(P=>{this.isJourneyAmendableFlag=P}))}get isNusDiscount$(){return(0,b.z)([this.outgoingSelectedPrice$,this.returnSelectedPrice$]).pipe((0,h.T)(([n,e])=>{let s=!1;return n&&n.totalPrice.promotion&&(s=L.u.isPromotionOfNUSType(this.promotionsService.promotions,n.totalPrice.promotion)),e&&e.totalPrice.promotion&&(s=s||L.u.isPromotionOfNUSType(this.promotionsService.promotions,e.totalPrice.promotion)),s}))}get returnJourneyLegPrice$(){return this.outgoingSelectedPrice$.pipe((0,k.p)(n=>null!=n),(0,_.n)(n=>n.isSingleFare?this.returnSelectedPrice$:(0,l.of)(n)))}ngOnInit(){this.searchParams$=this.search.searchCriteria$,this.outgoingSelectedLegSolution$=this.selectionContext.outgoingLegSolutionSelection$,this.outgoingSelectedPrice$=this.selectionContext.outgoingPriceSelection$,this.returnSelectedLegSolution$=this.selectionContext.returnLegSolutionSelection$,this.returnSelectedPrice$=this.selectionContext.returnPriceSelection$,this.Direction=N.O,this.prepareUpdateSelection(),this.addSubscription(this.currentAmendingBooking$.subscribe(n=>this.currentAmendingBooking=n)),this.addSubscription(this.currentAmendingOrder$.subscribe(n=>this.currentAmendingOrder=n)),this.addSubscription(this.isJourneyAmendable$.subscribe(n=>this.isJourneyAmendableFlag=n)),this.addSubscription(this.journeyAmendDirection$.subscribe(n=>{this.amendingJourneyDirection=n===N.O.OUT?"OUT":"RTN"})),this.addSubscription(this.isCancelRebookAvailable$.subscribe(n=>{this.isCancelRebookAvailableFlag=n})),this.addSubscription(this.flowStep$.subscribe(n=>{this.flowStepName=n})),this.addSubscription(this.journeySelectionSummary$.subscribe(n=>{this.journeySelectionSummaryrefund=n;const e=Number(this.journeySelectionSummaryrefund?.finalRefundableFare?.value??0);this.userGetRefund=e>0,this.userNeedTopay=e<0})),this.isSelectionAvailable$=(0,b.z)([this.basketService.isBasketRefreshing$,this.search.isSearchInProgress$]).pipe((0,h.T)(([n,e])=>!n&&!e)),this.addSubscription(this.travelCardService.travelCardSelected$.subscribe(n=>{n&&(this.isTravelcardSelected=n)})),this.addSubscription(this.travelCardService.selectedTravelCards$.subscribe(n=>{n&&(this.selectedTravelCards=n)})),this.addSubscription(this.travelCardService.plusBusSelection$.subscribe(n=>{n&&(this.selectedPlusBusCards=n)})),this.addSubscription(this.configService.hasFeature(mt.X.IS_SPECIAL_PROMO_CODE_ENABLED).subscribe(n=>{this.isSpecialPromoCodeEnabled=n}))}removeBookingOrder(n){this.booking.hasMultipleOrders()?this.addSubscription(this.basketService.removeBookingOrder(this.booking.bookingID,n.order.orderID).subscribe({next:e=>{this.booking=e,this.totalPrice+=e.bookingTotal.value,this.promoPrice+=e.bookingTotal.value,n.prompt.cancelPrompt()},error:e=>{this.logger.error(e,"removeBookingOrder"),n.prompt.cancelPrompt()}})):this.addSubscription(this.basketService.removeBooking(this.booking).subscribe({next:e=>{this.booking=e,this.totalPrice+=e.bookingTotal.value,this.promoPrice+=e.bookingTotal.value,n.prompt.cancelPrompt()},error:e=>{this.logger.error(e,"removeBooking"),n.prompt.cancelPrompt()}}))}getNavigationUrl(){const n=this.router.routerState.snapshot.url;return 0===n.indexOf("/search")?"/booking/seats-and-extras":0===n.indexOf("/booking/seats-and-extras")||0===n.indexOf("/season/season-delivery")?"/booking/summary":0===n.indexOf("/season")?"/season/season-delivery":"/booking/seats-and-extras"}get isTravelCardOptionSelected(){return!!this.isTravelcardSelected&&(-1!==this.isTravelcardSelected.outboundSelectedOptionIndex||-1!==this.isTravelcardSelected.inboundSelectedOptionIndex)}handleTravelCard(){if(this.selectedTravelCards&&this.selectedTravelCards.outBound){const n={travelDate:this.outgoingTime?.format("YYYY-MM-DD"),adult:this.selectedTravelCards.outBound?.adult?.quantity??0,child:this.selectedTravelCards.outBound?.child?.quantity??0,description:this.selectedTravelCards.outBound.description};this.analyticsService.travelCardAnalytics(n,"outbound")}if(this.selectedTravelCards&&this.selectedTravelCards.inBound){const n={travelDate:this.returnTime?.format("YYYY-MM-DD"),adult:this.selectedTravelCards.inBound?.adult?.quantity??0,child:this.selectedTravelCards.inBound?.child?.quantity??0,description:this.selectedTravelCards.inBound.description};this.analyticsService.travelCardAnalytics(n,"return")}this.travelCardService.selectedTravelCards(null),this.travelCardService.showDeliveryPopup(!1),this.travelCardService.isAnyTravelCardSelected({outboundSelectedOptionIndex:-1,inboundSelectedOptionIndex:-1})}handlePlusBus(){if(this.selectedPlusBusCards&&this.selectedPlusBusCards.outbound.length>0){const n={travelDate:this.outgoingTime?.format("YYYY-MM-DD"),adult:this.selectedPlusBusCards?.outbound?.at(0)?.adult?.quantity??0,child:this.selectedPlusBusCards?.outbound?.at(0)?.child?.quantity??0,description:this.selectedPlusBusCards?.outbound?.at(0)?.description};this.analyticsService.plusBusAnalytics(n,"outbound")}if(this.selectedPlusBusCards&&this.selectedPlusBusCards.return.length>0){const n={travelDate:this.outgoingTime?.format("YYYY-MM-DD"),adult:this.selectedPlusBusCards?.return?.at(0)?.adult?.quantity??0,child:this.selectedPlusBusCards?.return?.at(0)?.child?.quantity??0,description:this.selectedPlusBusCards?.return?.at(0)?.description};this.analyticsService.plusBusAnalytics(n,"return")}this.travelCardService.isPlusBusOptionSelected=!1,this.travelCardService.triggerPlusBusDeliveryPopup(!1)}showPromoCodeRestrictionPopup(n=!0){this.modalService.create(T.c,{description:[Q.u.NO_PROMO_CODE
1],confirm:e=>{e.destroy(),n?this.quickBuyHelper():this.continueHelper()},cancel:e=>{e.destroy()}})}continueHelper(){const n=this.getNavigationUrl();if(this.clickContinue.emit(),this.isPricesEmpty)this.toastService.create({msg:"No results found for the selected filter. Please choose another filter to view available tickets.",timeout:5e3,theme:"error",icon:"error"});else if(this.selectionContext.isAmend())this.router.navigate([n],{queryParamsHandling:"preserve"});else{if(!this.selectionContext.isAmend()&&!this.isSelectionComplete$.getValue())return;"/booking/summary"===n&&(this.isTravelCardOptionSelected||this.travelCardService.isPlusBusOptionSelected)?this.isTravelCardOptionSelected&&!this.travelCardService.isPlusBusOptionSelected?this.isTvmSelected()?(this.handleTravelCard(),this.handleRouteChange(n)):(this.travelCardService.warningDescription="Travelcards can only be purchased with Ticket Vending Machine. Do you want to change your delivery method to Ticket Vending Machine?",this.travelCardService.warningTitle="Switch Delivery Method to Ticket Vending Machine?",this.travelCardService.showDeliveryPopup(!0)):!this.isTravelCardOptionSelected&&this.travelCardService.isPlusBusOptionSelected?this.isTvmSelected()?(this.handlePlusBus(),this.handleRouteChange(n)):(this.travelCardService.warningDescription="Plusbus can only be purchased with Ticket Vending Machine. Please select Ticket Vending Machine to proceed.\xa0",this.travelCardService.warningTitle="Switch Delivery Method",this.travelCardService.triggerPlusBusDeliveryPopup(!0)):this.isTravelCardOptionSelected&&this.travelCardService.isPlusBusOptionSelected&&(this.isTvmSelected()?(this.handleTravelCard(),this.handlePlusBus(),this.handleRouteChange(n)):(this.travelCardService.warningDescription="To purchase Travelcard and PlusBus together, do you want to switch to Ticket Vending Machine?",this.travelCardService.warningTitle="Switch Delivery Method to Ticket Vending Machine?",this.travelCardService.triggerPlusBusDeliveryPopup(!0))):this.handleRouteChange(n)}}isTvmSelected(){return"Collect at Ticket Vending Machine"===this.ticketDeliveryOption||"TVM"===this.ticketingOption?.fulfillmentInformation?.ticketOption?.code}continue(){this.isSpecialPromoCodeEnabled&&this.currentParams&&(0,st.fg)(this.currentParams.origin,this.currentParams.destination)?this.showPromoCodeRestrictionPopup(!1):this.continueHelper()}quickBuyHelper(){this.clickContinue.emit(),this.isSelectionComplete$.getValue()&&(this.basketService.isQuickBuy$.next(!0),this.selectionContext.deliverySelection$.next(null),this.handleRouteChange("/booking/summary"))}continueQuickBuy(){this.isSpecialPromoCodeEnabled&&this.currentParams&&(0,st.fg)(this.currentParams.origin,this.currentParams.destination)?this.showPromoCodeRestrictionPopup():this.quickBuyHelper()}navigate(n){this.addSubscription(this.selectionContext.getParamsForCurrentSelection().pipe((0,u.s)(1)).subscribe(e=>{this.router.navigate([n],{queryParams:e})}))}navigateWithSelectionCheck(n){this.addSubscription(this.selection$.pipe((0,u.s)(1),(0,_.n)(e=>this.basketService.isSelectionAlreadyInTheBasket(e))).subscribe(e=>{e?this.modalService.create(T.c,{description:["It looks like you already have a similar item in your basket. Do you want to add it again?"],confirm:s=>{s.destroy(),this.navigate(n)},cancel:s=>{s.destroy()}}):this.navigate(n)}))}handleRouteChange(n){"/booking/summary"===n?this.navigateWithSelectionCheck(n):this.navigate(n)}prepareUpdateSelection(){this.addSubscription((0,b.z)([this.selection$.pipe((0,k.p)(n=>n.state!==K.T.NONE)),this.booking$,this.selectionContext.isPhotocardValid$]).pipe((0,g.Q)(this.destroy$)).subscribe(([n,e,s])=>{if(this.selectionContext.isAmend()){if(!n||!n.order)return;const E=this.params;if(E&&n.order.orderID!==E)return}const f=n&&n.seasonPrice&&n.seasonPrice.ticketableFares;var E;this.hasRailcardApplied=null!=(E=null!=f?f:n&&n.prices)&&E.some(G=>G.hasRailcard),this.validateSelection(n,s),this.calculateTotalPrice({prices:n.prices,seasonPrice:n.seasonPrice,booking:e,ticketingOption:n.ticketingOption,order:n.order,travelCards:n.travelCards,plusBus:n.plusBus})}))}validateSelection(n,e){const s=this.store.selectSnapshot(A=>ot.c.order(A.order)),f=this.store.selectSnapshot(A=>q.k.flowStep(A.navigation));this.isAmendOrder=n.state===K.T.AMEND;const m=n&&n.ticketingOption,E=m&&m.isValid(n.getPassengerSelection()),G=f===J.z[J.z.SEATS_AND_EXTRAS],z=f===J.z[J.z.SEASON_DELIVERY];if(this.isAmendOrder&&this.isSelectionComplete$.next(!0),this.seatsExtras&&n.ticketingOption&&(this.ticketingOption=n.ticketingOption,this.isSelectionComplete$.next(E)),G&&this.isSelectionComplete$.next(E),z&&this.isSelectionComplete$.next(E&&e),s&&"SCT"===s.code&&s.passengerDeliveryOptions){const A=s.passengerDeliveryOptions;null!=A[1]&&null!=E&&this.isSelectionComplete$.next((G?[E]:[A[1].dataStore.isValid,E,e]).every(Boolean))}}calculateTotalPrice(n){if(this.totalPrice=0,this.promoPrice=0,n.prices&&(this.totalPrice=n.prices.map(e=>e.totalPrice.value).reduce((e,s)=>e+s,0),this.promoPrice=n.prices.map(e=>e.totalPrice.promotion?e.totalPrice.promotion.promotionPrice:e.totalPrice.value).reduce((e,s)=>e+s,0)),n.order&&(this.totalPrice+=n.order.totalPrice.value),n.seasonPrice&&(this.totalPrice+=n.seasonPrice.totalPrice.value,this.promoPrice=this.totalPrice),this.isAmendOrder){const e=n.order.orderID;this.promoPrice=n.order.totalPrice.value,n.booking.financials&&(this.promoPrice=n.booking.financials.prices.filter(s=>s.priceDescription.indexOf(e)>-1).filter(s=>"Ticket_Delivery_Fee_Assessment"!==s.type).filter(s=>
1"Ticket_Delivery_Fee_Reversal"!==s.type).filter(s=>"Misc_Fee_Assessment"!==s.type).map(s=>s.amount.value).reduce((s,f)=>Number(s)+Number(f)))}if(n.ticketingOption&&(this.totalPrice+=n?.ticketingOption?.fulfillmentInformation?.ticketOption?.fee?.value,this.promoPrice+=n?.ticketingOption?.fulfillmentInformation?.ticketOption?.fee?.value),this.isAmendOrder&&!n.ticketingOption&&(this.totalPrice+=n?.order?.fulfillmentInformation?.selectedTicketingOption?.fee?.value,this.promoPrice+=n?.order?.fulfillmentInformation?.selectedTicketingOption?.fee?.value),n.travelCards&&"standard-journey-search"!==this.page){const e=Array.isArray(n.travelCards.out)?n.travelCards.out:n.travelCards.out?[n.travelCards.out]:[],s=Array.isArray(n.travelCards.return)?n.travelCards.return:n.travelCards.return?[n.travelCards.return]:[];(e.length>0||s.length>0)&&([...e,...s].forEach(f=>{const m=this.travelCardPrice(f);this.promoPrice+=m}),this.totalPrice=this.promoPrice)}if(this.includePlusBusPriceIntoTotal(n.plusBus),this.isJourneyAmendableFlag&&!this.isCancelRebookAvailableFlag)this.exchangeSummarySelection$.subscribe(e=>{e&&e?.exchangeSummary&&e.exchangeSummary.exchangeOptions&&(this.promoPrice=e?.exchangeSummary?.exchangeOptions[0]?.total?.value,this.currency=e?.exchangeSummary?.exchangeOptions[0]?.total?.currency,this.totalPrice=this.promoPrice)});else if(!this.isJourneyAmendableFlag&&this.isCancelRebookAvailableFlag){const e=this.totalPrice;this.currency=n.booking.bookingTotal.currency;const s={currency:this.currency,value:e},f=this.journeySelectionSummaryrefund?.totalRefund?.value,m=this.journeySelectionSummaryrefund?.totalPenalty?.value,E=parseFloat((f-m).toFixed(2)),G={currency:this.currency,value:parseFloat((E-e).toFixed(2))};this.store.dispatch(new W.GP({currentTicketPrice:s,finalRefundableFare:G,originalTicket:{origin:"RTN"===this.amendingJourneyDirection?this.currentAmendingOrder?.destinationTravelPoint:this.currentAmendingOrder?.originTravelPoint,destination:"RTN"===this.amendingJourneyDirection?this.currentAmendingOrder?.originTravelPoint:this.currentAmendingOrder?.destinationTravelPoint},ticketDeliveryOption:{value:n?.ticketingOption?n.ticketingOption?.fulfillmentInformation?.ticketOption?.fee?.value:0,currency:this.currency,code:n?.ticketingOption?n.ticketingOption?.fulfillmentInformation?.ticketOption?.code:"",title:n?.ticketingOption?n.ticketingOption?.fulfillmentInformation?.ticketOption.title:""}})),this.cancelAndRebookTotalPrice()}else this.currency=n.booking.bookingTotal.currency}includePlusBusPriceIntoTotal(n){"standard-journey-search"!==this.page&&([...n?.outbound??[],...n?.return??[]].filter(f=>f?.selected).forEach(f=>{const m=this.travelCardPrice(f);this.promoPrice+=m}),this.totalPrice=this.promoPrice)}travelCardPrice(n){return+(Number(n?.adult?.quantity??0)*Number(n?.adult?.price?.value??0)+Number(n?.child?.quantity??0)*Number(n?.child?.price?.value??0)).toFixed(2)}cancelAndRebookTotalPrice(){this.promoPrice=this.journeySelectionSummaryrefund?.currentTicketPrice?.value??0,this.totalPrice=this.promoPrice}togglePreview(){this.ticketPreviewService.toggle();const n=this.ticketPreviewService?.getToggleValue();this.ticketPreviewAnnouncement=n?"Ticket preview opened":"Ticket preview closed",setTimeout(()=>{this.ticketPreviewAnnouncement=n?"Ticket preview opened":"Ticket preview closed"},0),n||document.getElementById("openTicketpreviewBtn")?.querySelector("button")?.focus()}static{this.\u0275fac=function(e){return new(e||B)(t.rXU(d.il),t.rXU(X.S),t.rXU(r.Ix),t.rXU(r.nX),t.rXU(yt.q),t.rXU(C.S),t.rXU($.j),t.rXU(w.I),t.rXU(H.g),t.rXU(lt.B),t.rXU(bt.A),t.rXU(F.p),t.rXU(X.S),t.rXU(ht.w),t.rXU(vt.q))}}static{this.\u0275cmp=t.VBU({type:B,selectors:[["ace-ticket-preview"]],inputs:{page:"page",params:"params",bikeFormData:"bikeFormData",ticketDeliveryOption:"ticketDeliveryOption",currentParams:"currentParams",isPricesEmpty:"isPricesEmpty"},outputs:{clickContinue:"clickContinue"},standalone:!1,features:[t.Vt3],decls:39,vars:49,consts:[["normalTicketPreviewTotal",""],["ticketPreview",""],["totalPromo",""],["data-elid","ticket-preview",1,"ticket",3,"cdkTrapFocus","cdkTrapFocusAutoCapture"],["type","button","id","ticketPreview","name","ticketPreview","class","ticket-arrow","aria-controls","ticketPreviewPanel",3,"click",4,"ngIf"],[1,"ticket-summary"],[1,"container"],[1,"ticket-summary-passengers"],["data-elid","ticket-passengers-details",4,"ngIf"],["data-elid","ticket-railcard-status",4,"ngIf"],[1,"ticket-summary-actions"],[1,"ticket-summary-total"],["class","ticket-summary-total-label",4,"ngIf"],[4,"ngIf","ngIfElse"],["class","quick-buy","appearance","commercial","size","secondary","data-elid","ticket-preview-quick-buy-button",3,"dark","action",4,"ngIf"],["tooltipId","tooltip-continue","title","Complete selection","desc","When you are happy with your selection click 'Continue' to proceed.","delay","3000","arrow","up",4,"ngIf"],["appearance","commercial","buttonType","submit","size","primary","data-elid","ticket-preview-continue-button",1,"continue",3,"action","disabled"],["id","ticketPreviewPanel",1,"ticket-wrap"],[1,"row"],["class","discounts-info",4,"ngIf"],[4,"ngIf"],["class","row",4,"ngIf"],["class","ticket-extras",4,"ngIf"],["aria-live","polite","aria-atomic","true",1,"sr-only"],["type","button","id","ticketPreview","name","ticketPreview","aria-controls","ticketPreviewPanel",1,"ticket-arrow",3,"click"],["aria-hidden","true","viewBox","0 0 24 24",4,"ngIf"],["aria-hidden","true","viewBox","0 0 24 24"],[0,"xlink","href","#arrow-up"],[0,"xlink","href","#arrow-down"],["data-elid","ticket-passengers-details"],["data-elid","ticket-railcard-status"],[1,"ticket-summary-total-label"],["data-elid","order-total-price",4,"ngIf"],["class","ticket-summary-total-value","data-elid","ticket-total-price",4,"ngIf"],["data-elid","order-total-price"],["data-elid","ticket-total-price",1,"ticket-summary-total-value"],["class","ticket-summary-total-value--promo strikethrough strikethrough--promo","data-elid","ticket-total-promo-price",4,"ngIf"],["data-elid","ticket-total-promo-price",1,"ticket-summary-total-value--promo","strikethrough","strikethrough--promo"],["appearance","commercial","size","secondary","data-elid","ticket-preview-quick-buy-button",1,"quick-buy",3,"action","dark"],["tooltipId","tooltip-continue","title","Complete selection","desc","When you are happy with your selection click 'Continue' to proceed.","delay","3000","arrow","up"],[1,"discounts-info"],["class","discounts-info-nus",4,"ngIf"],[1,"discounts-info-nus"],["viewBox","-1.5 0 20 5"],[0,"xlink","href","#nus"],["data-elid","ticket-nus-discount-copy",1,"discounts-info-nus-text"],[1,"col",3,"ngClass"],["data-elid","ticket-outward-leg",3,"direction","leg","price","passengers","basketOpen"],["class","col col-6",4,"ngIf"],[1,"col","col-6"],["data-elid","ticket-return-leg",3,"direction","leg","price","passengers","isOpenReturn","basketOpen"],["data-elid","ticket-season-price",3,"price"],[1,"ticket-extras"],["data-elid","icket-delivery-option"],["data-elid","ticket-delivery-fee"]],template:function(e,s){if(1&e){const f=t.RV6();t.j41(0,"div",3),t.nI1(1,"async"),t.nI1(2,"async"),t.nI1(3,"async"),t.nI1(4,"async"),t.DNE(5,re,8,12,"button",4),t.j41(6,"div",5)(7,"div",6)(8,"div",7),t.DNE(9,pe,10,11,"span",8),t.nI1(10,"async"),t.DNE(11,de,2,0,"span",9),t.k0s(),t.j41(12,"div",10)(13,"div",11),t.DNE(14,ue,2,0,"span",12)(15,Te,7,6,"ng-container",13)(16,ke,3,2,"ng-template",null,0,t.C5r),t.k0s(),t.DNE(18,Ee,2,2,"ace-button",14),t.j41(19,"span"),t.DNE(20,Oe,1,0,"ace-tooltip",15),t.nI1(21,"async"),t.j41(22,"ace-button",16),t.nI1(23,"async"),t.nI1(24,"selectionDescription"),t.bIt("action",function(){return M.eBV(f),M.Njj(s.continue())}),t.EFF(25," Continue "),t.k0s()()()()(),t.j41(26,"div",17),t.nI1(27,"async"),t.j41(28,"div",6)(29,"div",18),t.DNE(30,we,3,3,"div",19),t.nI1(31,"async"),t.DNE(32,xe,10,22,"div",20),t.nI1(33,"async"),t.k0s(),t.DNE(34,Ie,3,3,"div",21),t.nI1(35,"async"),t.DNE(36,Se,7,7,"div",22),t.k0s()()(),t.j41(37,"div",23),t.EFF(38),t.k0s()}if(2&e){const f=t.sdS(17);t.AVh("ticket-visible",t.bMT(1,25,s.isSelectionAvailable$))("ticket-expanded",t.bMT(2,27,s.ticketPreviewService.isExpanded$)),t.Y8G("cdkTrapFocus",!0===t.bMT(3,29,s.ticketPreviewService.isExpanded$))("cdkTrapFocusAutoCapture",!0===t.bMT(4,31,s.ticketPreviewService.isExpanded$)),t.R7$(5),t.Y8G("ngIf",!s.isAmendOrder),t.R7$(4),t.Y8G("ngIf",t.bMT(10,33,s.passengers$)),t.R7$(2),t.Y8G("ngIf",s.hasRailcardApplied),t.R7$(2),t.AVh("hidden",(s.isJourneyAmendableFlag||s.isCancelRebookAvailableFlag)&&"SEARCH"===s.flowStepName),t.R7$(),t.Y8G("ngIf",!s.isCancelRebookAvailableFlag),t.R7$(),t.Y8G("ngIf",!s.isJourneyAmendableFlag&&s.isCancelRebookAvailableFlag)("ngIfElse",f),t.R7$(3),t.Y8G("ngIf",s.quickBuyEnabled),t.R7$(2),t.Y8G("ngIf",t.bMT(21,35,"standard-journey-search"===s.page&&s.isSelectionAvailable$)),t.R7$(2),t.Y8G("disabled",!1===s.bikeFormData),t.BMQ("aria-label",t.bMT(24,39,t.bMT(23,37,s.selection$))),t.R7$(4),t.AVh("hidden",!t.bMT(27,41,s.ticketPreviewService.isExpanded$)),t.R7$(4),t.Y8G("ngIf",t.bMT(31,43,s.isMobile$)),t.R7$(2),t.Y8G("ngIf",t.bMT(33,45,s.outgoingSelectedLegSolution$)),t.R7$(2),t.Y8G("ngIf",t.bMT(35,47,s.seasonPrice$)),t.R7$(2),t.Y8G("ngIf",s.ticketingOption),t.R7$(2),t.SpI(" ",s.ticketPreviewAnnouncement,"\n")}},dependencies:[S.YU,S.bT,Tt.kB,ct.Q,V,te,ee.b,S.Jj,S.Pc,S.oe,ne.y,ft.u,ie.L],styles:['@import"https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap";@import"https://fonts.cdnfonts.com/css/source-sans-pro";@import"https://fonts.googleapis.com/css2?family=Fira+Sans:wght@400;700&display=swap";@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-ItalicWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-ItalicWEB.woff2) format("woff2");font-weight:400;font-style:italic}@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-RegularWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-RegularWEB.woff2) format("woff2");font-weight:400;font-style:normal}@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-MediumItalicWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-MediumItalicWEB.woff2) format("woff2");font-weight:500;font-style:italic}@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-MediumWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-MediumWEB.woff2) format("woff2");font-weight:500;font-style:normal}@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-BoldItalicWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-BoldItalicWEB.woff2) format("woff2");font-weight:700;font-style:italic}@font-face{font-family:font-title;src:url(/assets/fonts/RailAlphabet3Web-Bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}[_nghost-%COMP%]{display:block;overflow:visible}.ticket[_ngcontent-%COMP%]{position:fixed;right:0;bottom:0;left:0;z-index:10;width:100%;height:100%;max-height:0;transition:.25s ease-in-out}@media(min-width:766px){.ticket[_ngcontent-%COMP%]{height:auto}}.ticket-extras[_ngcontent-%COMP%]{display:flex;flex-flow:row nowrap;justify-content:space-between;padding-top:8px;border-top:1px solid #c6b8d4;font-style:normal}.ticket-extras[_ngcontent-%COMP%]:last-child{padding-bottom:8px}.ticket-warning[_ngcontent-%COMP%]{position:relative;top:100px;z-index:2;text-align:center}.ticket-wrap[_ngcontent-%COMP%]{position:absolute;inset:0;height:100%;margin-top:72px;padding-bottom:72px;overflow-y:scroll;color:#27334a;background:#fff;transform:translateZ(0);transition:transform .2s cubic-bezier(0,.085,.025,.985);-webkit-overflow-scrolling:touch}@media(min-width:766px){.ticket-wrap[_ngcontent-%COMP%]{position:relative;height:auto;margin:0;padding:0}}.ticket.ticket-visible[_ngcontent-%COMP%]{max-height:72px}.ticket.ticket-visible.ticket-expanded[_ngcontent-%COMP%]{height:100%;max-height:100%}@media(min-width:766px){.ticket.ticket-visible.ticket-expanded[_ngcontent-%COMP%]{height:auto}}.ticket.ticket-visible.ticket-expanded[_ngcontent-%COMP%] .ticket-arrow[_ngcontent-%COMP%]{top:0}@media(min-width:766px){.ticket.ticket-visible.ticket-expanded[_ngcontent-%COMP%] .ticket-arrow[_ngcontent-%COMP%]{top:-20px}}.ticket.ticket-visible[_ngcontent-%COMP%] .ticket-arrow[_ngcontent-%COMP%]{top:-20px}.ticket[_ngcontent-%COMP%] hr[_ngcontent-%COMP%]{margin:0;border-bottom:#c6b8d4}.ticket[_ngcontent-%COMP%] .ticket-arrow[_ngcontent-%COMP%]{position:absolute;top:0;left:45%;z-index:100;display:flex;align-items:center;justify-content:center;width:40px;height:40px;margin:0;padding:0;background-color:#fff;border-radius:100px;box-shadow:0 0 1px #27334a;border:1px solid rgba(255,255,255,0);cursor:pointer;transition:.25s ease-in-out}.ticket[_ngcontent-%COMP%] .ticket-arrow[_ngcontent-%COMP%]:focus{outline:#e41f40 2px auto;outline-offset:2px}@media(min-width:766px){.ticket[_ngcontent-%COMP%] .ticket-arrow[_ngcontent-%COMP%]{left:48.5%}}.ticket[_ngcontent-%COMP%] .ticket-arrow[_ngcontent-%COMP%] svg[_ngcontent-%COMP%]{height:24px;color:#6c4399}.ticket-summary[_ngcontent-%COMP%]{height:72px;color:#fff;font-size:16px;background-color:#2a183d;font-style:normal}@media(min-width:766px){.ticket-summary[_ngcontent-%COMP%]{border-top:8px solid #6c4399}}.ticket-summary[_ngcontent-%COMP%] .container[_ngcontent-%COMP%]{display:flex;flex-flow:row nowrap;justify-content:space-between}.ticket-summary-passengers[_ngcontent-%COMP%]{display:none;padding:22px 0}@media(min-width:991px){.ticket-summary-passengers[_ngcontent-%COMP%]{display:inline-flex}}.ticket-summary-passengers[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:last-of-type{margin-left:3rem}.ticket-summary-total[_ngcontent-%COMP%]{margin-right:1.5rem;padding:6px 0}.ticket-summary-total-value[_ngcontent-%COMP%]{font-weight:700;font-size:24px;font-style:normal}.ticket-summary-actions[_ngcontent-%COMP%]{display:flex;flex-flow:row nowrap;justify-content:space-between;width:100%;padding:11px 0}@media(min-width:991px){.ticket-summary-actions[_ngcontent-%COMP%]{width:auto}}.ticket-summary-actions[_ngcontent-%COMP%] .quick-buy[_ngcontent-%COMP%]{display:none;margin-right:.5rem}@media(min-width:991px){.ticket-summary-actions[_ngcontent-%COMP%] .quick-buy[_ngcontent-%COMP%]{display:inline-flex}}.discounts-info[_ngcontent-%COMP%]{display:flex;flex:0 1 100%;flex-direction:column;margin-top:20px;padding:0 10px}.discounts-info-nus[_ngcontent-%COMP%]{display:flex;flex-direction:row;align-items:center}.discounts-info-nus[_ngcontent-%COMP%] svg[_ngcontent-%COMP%]{width:80px;height:40px;margin-right:.75rem}.discounts-info-nus-text[_ngcontent-%COMP%]{display:flex;flex-direction:column}.discounts-info-nus-text[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin-bottom:0}.hidden[_ngcontent-%COMP%]{display:none}']})}}(0,c.Cg)([(0,d.l6)(tt.p.isMobile),(0,c.Sn)("design:type",a.c)],B.prototype,"isMobile$",void 0),(0,c.Cg)([(0,d.l6)(p.d.nusCardNumber),(0,c.Sn)("design:type",a.c)],B.prototype,"nusCardNumber$",void 0),(0,c.Cg)([(0,d.l6)(I.q.isJourneyAmendable),(0,c.Sn)("design:type",a.c)],B.prototype,"isJourneyAmendable$",void 0),(0,c.Cg)([(0,d.l6)(I.q.isCancelRebookAvailable),(0,c.Sn)("design:type",a.c)],B.prototype,"isCancelRebookAvailable$",void 0),(0,c.Cg)([(0,d.l6)(I.q.isjourneySelectionSummary),(0,c.Sn)("design:type",a.c)],B.prototype,"journeySelectionSummary$",void 0),(0,c.Cg)([(0,d.l6)(I.q.currentAmendOrder),(0,c.Sn)("design:type",a.c)],B.prototype,"currentAmendingOrder$",void 0),(0,c.Cg)([(0,d.l6)(I.q.journeyAmendDirection),(0,c.Sn)("design:type",a.c)],B.prototype,"journeyAmendDirection$",void 0),(0,c.Cg)([(0,d.l6)(I.q.exchangeSummaryOption),(0,c.Sn)("design:type",a.c)],B.prototype,"exchangeSummarySelection$",void 0),(0,c.Cg)([(0,d.l6)(q.k.flowStep),(0,c.Sn)("design:type",a.c)],B.prototype,"flowStep$",void 0),(0,c.Cg)([(0,d.l6)(I.q.currentAmendBooking),(0,c.Sn)("design:type",a.c)],B.prototype,"currentAmendingBooking$",void 0)},18089(j,O,o){o.d(O,{b:()=>I});var c=o(24398),t=o(1642),r=o(43942),d=o(42868),v=o(81351);
1const b=(0,v.hZ)("mouseOverAnimation",[(0,v.kY)(":enter",[(0,v.iF)({opacity:0}),(0,v.i0)(300,(0,v.iF)({opacity:1}))]),(0,v.kY)(":leave",[(0,v.i0)(300,(0,v.iF)({opacity:0}))])]);var l=o(20478),a=o(77878),k=o(47886),h=o(71704),R=o(19999),_=o(18473),u=o(23513),g=o(64334),T=o(50819),C=o(91687),w=o(54318),X=o(87378),N=o(1365),J=o(82645);function K(F,x){return x?y=>(0,u.x)(x.pipe((0,g.s)(1),function $(){return(0,T.N)((F,x)=>{F.subscribe((0,C._)(x,w.l))})}()),y.pipe(K(F))):(0,N.Z)((y,W)=>(0,J.Tg)(F(y,W)).pipe((0,g.s)(1),(0,X.u)(y)))}var Z=o(74581),ot=o(41854),p=o(12481),L=o(85240),H=o(93683);function tt(F,x){if(1&F){const y=p.RV6();p.j41(0,"div",1)(1,"div",2)(2,"div",3),L.qSk(),p.j41(3,"svg",4)(4,"title"),p.EFF(5,"info"),p.k0s(),p.nrm(6,"use",5),p.k0s()(),L.joV(),p.j41(7,"div",6)(8,"span",7),p.EFF(9),p.k0s(),p.j41(10,"span",8),p.EFF(11),p.k0s()(),p.j41(12,"button",9),p.bIt("click",function(){L.eBV(y);const Q=p.XpG();return L.Njj(Q.onClose())}),L.qSk(),p.j41(13,"svg",4)(14,"title"),p.EFF(15,"close"),p.k0s(),p.nrm(16,"use",10),p.k0s()()()()}if(2&F){const y=p.XpG();p.Y8G("@mouseOverAnimation",void 0)("ngClass",y.arrow),p.R7$(),p.Y8G("ngClass",y.arrow),p.R7$(6),p.BMQ("id",y.tooltipId),p.R7$(2),p.JRh(y.title),p.R7$(2),p.JRh(y.desc),p.R7$(),p.BMQ("aria-describedby",y.tooltipId)}}class I extends l.D{constructor(x,y){super(),this.store=x,this.search=y,this.visible=!1}ngOnInit(){this.addSubscription((0,R.z)([this.tooltipsDisabled$,this.tooltips$]).pipe(function q(F,x=_.E){const y=(0,Z.O)(F,x);return K(()=>y)}(this.delay)).subscribe(([x,y])=>{const W=y.find(Q=>Q.id===this.tooltipId);this.visible=!1===x&&W?.enabled}))}onClose(){this.store.dispatch(new k.S({id:this.tooltipId,enabled:!1})),this.visible=!1}static{this.\u0275fac=function(y){return new(y||I)(p.rXU(t.il),p.rXU(d.S))}}static{this.\u0275cmp=p.VBU({type:I,selectors:[["ace-tooltip"]],inputs:{tooltipId:"tooltipId",title:"title",desc:"desc",delay:"delay",arrow:"arrow"},standalone:!1,features:[p.Vt3],decls:3,vars:5,consts:[["class","tooltip-wrapper",3,"ngClass",4,"ngIf"],[1,"tooltip-wrapper",3,"ngClass"],[1,"tooltip",3,"ngClass"],[1,"tooltip-icon"],["viewBox","0 0 24 24","aria-hidden","true"],[0,"xlink","href","#info"],[1,"tooltip-content"],[1,"tooltip-title"],[1,"tooltip-desc"],["title","Close","aria-label","Close","data-elid","cancel-button",1,"close-button",3,"click"],[0,"xlink","href","#close"]],template:function(y,W){1&y&&(p.DNE(0,tt,17,7,"div",0),p.nI1(1,"async"),p.nI1(2,"async")),2&y&&p.Y8G("ngIf",!p.bMT(1,1,W.isMobile$)&&!p.bMT(2,3,W.search.isSearchInProgress$)&&W.visible)},dependencies:[H.YU,H.bT,H.Jj],styles:['@import"https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap";@import"https://fonts.cdnfonts.com/css/source-sans-pro";@import"https://fonts.googleapis.com/css2?family=Fira+Sans:wght@400;700&display=swap";@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-ItalicWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-ItalicWEB.woff2) format("woff2");font-weight:400;font-style:italic}@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-RegularWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-RegularWEB.woff2) format("woff2");font-weight:400;font-style:normal}@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-MediumItalicWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-MediumItalicWEB.woff2) format("woff2");font-weight:500;font-style:italic}@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-MediumWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-MediumWEB.woff2) format("woff2");font-weight:500;font-style:normal}@font-face{font-family:"Rail Alphabet 2 TEXT";src:url(/assets/fonts/RailAlphabet2TEXT-BoldItalicWEB.woff) format("woff"),url(/assets/fonts/RailAlphabet2TEXT-BoldItalicWEB.woff2) format("woff2");font-weight:700;font-style:italic}@font-face{font-family:font-title;src:url(/assets/fonts/RailAlphabet3Web-Bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}.tooltip-wrapper[_ngcontent-%COMP%]{position:relative;display:flex}.tooltip-wrapper.up[_ngcontent-%COMP%], .tooltip-wrapper.down[_ngcontent-%COMP%]{justify-content:center}.tooltip-wrapper[_ngcontent-%COMP%]:focus{outline:none}.tooltip[_ngcontent-%COMP%]{position:absolute;display:flex;justify-content:center;min-width:260px;max-width:300px;color:#fff;font-size:14px;background-color:#6c4399;border:1px solid #000;border-radius:10px;box-shadow:0 0 5px #00000045}.tooltip-icon[_ngcontent-%COMP%]{flex:2%;margin:10px}.tooltip-icon[_ngcontent-%COMP%] svg[_ngcontent-%COMP%]{width:30px;height:30px}.tooltip-content[_ngcontent-%COMP%]{flex:96%;margin-top:10px;margin-bottom:10px;white-space:pre-wrap;text-align:left}.tooltip-title[_ngcontent-%COMP%]{margin-bottom:1em;font-weight:700}.tooltip-title[_ngcontent-%COMP%], .tooltip-desc[_ngcontent-%COMP%]{display:inline-flex}.tooltip[_ngcontent-%COMP%]:before{position:absolute;border-color:transparent #6c4399 transparent transparent;border-style:solid;border-width:15px;content:""}.tooltip.up[_ngcontent-%COMP%]{bottom:40px}.tooltip.down[_ngcontent-%COMP%]{top:60px}.tooltip.up[_ngcontent-%COMP%]:before{bottom:-30px;transform:rotate(-90deg)}.tooltip.down[_ngcontent-%COMP%]:before{top:-30px;transform:rotate(90deg)}.tooltip.left[_ngcontent-%COMP%]:before{top:35px;right:-30px;transform:rotate(180deg)}.tooltip.right[_ngcontent-%COMP%]:before{top:35px;left:-30px}.close-button[_ngcontent-%COMP%]{display:flex;flex:2%;height:20px;margin:10px;color:#fff;background:none;cursor:pointer;-webkit-appearance:none;appearance:none}.close-button[_ngcontent-%COMP%]:focus{outline:#e41f40 2px auto}.close-button[_ngcontent-%COMP%] svg[_ngcontent-%COMP%]{width:18px;height:18px}'],data:{animation:[b]}})}}
1(0,c.Cg)([(0,t.l6)(a.p.isMobile),(0,c.Sn)("design:type",r.c)],I.prototype,"isMobile$",void 0),(0,c.Cg)([(0,t.l6)(ot.k.flowStep),(0,c.Sn)("design:type",r.c)],I.prototype,"flowStep$",void 0),(0,c.Cg)([(0,t.l6)(h.z.tooltipsDisabled),(0,c.Sn)("design:type",r.c)],I.prototype,"tooltipsDisabled$",void 0),(0,c.Cg)([(0,t.l6)(h.z.tooltips),(0,c.Sn)("design:type",r.c)],I.prototype,"tooltips$",void 0)},65678(j,O,o){o.d(O,{W:()=>h});var c=o(24398),t=o(1642),r=o(43942),d=o(53081),v=o(51567),b=o(70271),l=o(1365),a=o(48320),k=o(12481);class h{transform(_){return this.railcards$.pipe((0,l.Z)(u=>(0,d.H)(u)),(0,v.p)(u=>u.code===_),(0,b.T)(u=>u.name))}static{this.\u0275fac=function(u){return new(u||h)}}static{this.\u0275pipe=k.EJ8({name:"railcardDiscount",type:h,pure:!0,standalone:!1})}}(0,c.Cg)([(0,t.l6)(a.t.railcards),(0,c.Sn)("design:type",r.c)],h.prototype,"railcards$",void 0)}}]);
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.