PageSourceSearch

https://cp.pt/js/TrainSearchDetail-5kZ6bA1L.js

js cp.pt collected 2026-10-01 09:14:34 UTC 7,583 bytes, 1 lines download raw bytes

1import{j as e}from"./forms-CQIHuKgG.js";import{u as i,r as a}from"./i18n-Da3IOi1c.js";import{T as t,E as s}from"./EcoDetails-BEM9MEE-.js";import{e as n,p as l,L as r}from"./index-CqACRIXY.js";import{d as o}from"./apiClientSlice-B_xgRUGS.js";import{f as d}from"./formatDate-DxyJv62d.js";import{W as c}from"./Wrapper-BbNKgFw1.js";import{A as u}from"./Avisos-DC1VBdra.js";import{u as m}from"./useSEO-D5w_OURl.js";import{a as h,b as j}from"./router-CeOKvF5U.js";import{a5 as p,C as v,p as x}from"./utils-CLBY9Uzt.js";import{C as _,R as g,a as y}from"./ui-C0dJowBQ.js";import"./Tooltip-PWTQ7b0Z.js";import"./query-CNvpHjp-.js";import"./redux-B_RFUBXH.js";import"./ArrowNext-gjpfC8VV.js";import"./contentUtils-C1fi4drN.js";const N=()=>{var N,f,S,b,D;const{t:E,i18n:k}=i(),C=h(),{id:M}=j(),O=d(new Date,"yyyy-MM-dd"),[$,L]=a.useState(!0),{data:T,isError:w,isLoading:A,status:P}=o({code:M,date:O},{pollingInterval:$?5e3:0,skipPollingIfUnfocused:!0}),B=null==T?void 0:T.trainStops[0].station.designation,I=null==T?void 0:T.trainStops[(null==T?void 0:T.trainStops.length)-1].station.designation,F=n({query:"(max-width: 768px)"}),[U,q]=a.useState(!F),R=(null==T?void 0:T.trainStops)??[],H="CANCELLED"===(null==T?void 0:T.status)||(null==(N=null==T?void 0:T.trainStops)?void 0:N.every(e=>null!=e.supression)),W=null==(f=null==T?void 0:T.trainStops)?void 0:f.some(e=>null!=e.supression),z=null==T?void 0:T.messages,K="pt"===k.language?l:p,V=(G=v(x(O),"pt"===k.language?"EEEE, d 'de' MMMM":"MMMM d, yyyy",{locale:K})).charAt(0).toUpperCase()+G.slice(1);var G;const J=a.useMemo(()=>{var e;let i=E("SEO.trainSearchDetail.dynamicData.titleDefault"),a=E("SEO.trainSearchDetail.dynamicData.descDefault"),t=`${B||""}, ${I||""}`;if(null==T?void 0:T.trainNumber){const s=T.trainNumber.toString(),n=(null==(e=null==T?void 0:T.serviceCode)?void 0:e.code)||"",l=n?`${n} ${s}`:s;i=E("SEO.trainSearchDetail.dynamicData.title",{trainInfo:l}),a=E("SEO.trainSearchDetail.dynamicData.desc",{trainInfo:l}),t=`${E("SEO.trainSearchDetail.dynamicData.keys",{trainInfo:l})}, ${l}, ${B||""}, ${I||""}`}return{title:i,description:a,keywords:t}},[null==T?void 0:T.trainNumber,null==(S=null==T?void 0:T.serviceCode)?void 0:S.code,B,I,E]),{SEOComponent:Q}=m({pageKey:"trainSearchDetail",dynamicData:J||void 0});a.useEffect(()=>{window.scrollTo(0,0)},[]),a.useEffect(()=>{["COMPLETED","CANCELLED"].includes((null==T?void 0:T.status)??"")&&L(!1)},[null==T?void 0:T.status]);const X=()=>{var i;return e.jsxs("div",{className:"train-detail-content-info",children:[(null==T?void 0:T.duration)&&e.jsxs("div",{className:"train-detail-content-info__train-detail-content",children:[e.jsx("p",{className:"train-detail-content-info__train-detail-content__title",children:E("thisTrip")}),(null==T?void 0:T.duration)&&e.jsxs("div",{className:"train-detail-content-info__train-detail-content__icon",children:[e.jsx("img",{alt:"",src:"/assets/images/clock.svg","aria-hidden":!0}),e.jsxs("p",{children:[(null==T?void 0:T.duration)+" "+E("timePlaceholder"),(null==T?void 0:T.delay)>0&&e.jsx("span",{children:` (+${null==T?void 0:T.delay} min)`})]})]}),(null==T?void 0:T.mobility)&&e.jsxs("div",{className:"train-detail-content-info__train-detail-content__icon",children:[e.jsx("img",{alt:"",src:"/assets/images/wheelchair-green.svg","aria-hidden":!0}),e.jsx("p",{children:E("mobilityPlaceholder")})]}),(null==T?void 0:T.bike)&&e.jsxs("div",{className:"train-detail-content-info__train-detail-content__icon",children:[e.jsx("img",{alt:"",src:"/assets/images/bike-green.svg","aria-hidden":!0}),e.jsx("p",{children:E("ModalTravelBicycle")})]}),(null==T?void 0:T.occupancy)&&T.occupancy>0&&!(null==(i=null==T?void 0:T.status)?void 0:i.toUpperCase().includes("COMPLETED"))&&e.jsxs("div",{className:"train-detail-content-info__train-detail-content__icon",children:[e.jsx("img",{alt:"",src:"/assets/images/capacity.svg","aria-hidden":!0}),e.jsx("p",{children:1===T.occupancy?E("OccupancyLow"):2===T.occupancy?E("OccupancyMedium"):E("OccupancyHigh")})]})]}),(null==T?void 0:T.ecology)&&e.jsx(s,{ecoDetail:null==T?void 0:T.ecology,totalDuration:null==T?void 0:T.duration})]})};return A?e.jsx(r,{}):("rejected"===P&&C(`/${k.language}/error/500`),w||0===(null==(b=null==T?void 0:T.trainStops)?void 0:b.length)?e.jsxs(e.Fragment,{children:[J&&e.jsx(Q,{}),e.jsx(_,{className:"no-results-container",children:e.jsx(g,{children:e.jsx(y,{children:e.jsxs("div",{className:"no-results",children:[e.jsx("img",{src:"/assets/images/no-items.svg",alt:"No items found illustration"}),e.jsx("h2",{children:E("NoItemResultsFound")}),e.jsx("span",{children:E("NoItemResultsFoundDescription")}),e.jsx("button",{onClick:()=>C(-1),children:E("BackPageButton")})]})})})})]}):e.jsxs(e.Fragment,{children:[J&&e.jsx(Q,{}),e.jsxs(_,{children:[e.jsx(g,{children:e.jsx(y,{children:e.jsx(u,{reduced:!0})})}),e.jsx(g,{children:e.jsx(y,{className:"banner_column",children:e.jsxs(c,{column:F?12:10,style:{paddingBottom:"32px"},children:[e.jsx("div",{className:"train-detail__header",children:e.jsxs("div",{className:"train-detail__header__result-detail",children:[e.jsx("button",{className:"train-detail__back-button",onClick:()=>{C(-1)},children:e.jsx("img",{src:"/assets/images/arrow-back-green.svg",alt:"Voltar",className:"search-results-page__back-button__icon"})}),e.jsxs("div",{className:"train-detail__header__result-detail-titles",children:[B&&I&&e.jsxs("h1",{className:"train-detail__route-title",children:[B," › ",I]}),e.jsx("div",{className:"train-detail__header__selected-date",children:e.jsx("span",{children:V})})]})]})}),e.jsx("hr",{className:"train-detail-content-hr"}),null==z?void 0:z.map(i=>(null==i?void 0:i.text)&&e.jsxs("div",{className:"train-detail-content-header",children:[e.jsx("img",{alt:"",className:"train-detail-content-header__icon",src:"/assets/images/alert.svg","aria-hidden":!0}),e.jsxs("div",{className:"train-detail-content-header__info",children:[e.jsx("p",{className:"train-detail-content-header__info__title",children:E("tripDetailAlert")}),e.jsx("p",{className:"train-detail-content-header__info__desc",dangerouslySetInnerHTML:{__html:(null==i?void 0:i.text)||""}})]})]})),e.jsxs("div",{className:"train-detail-container",children:[e.jsxs("div",{className:"train-detail-content",children:[e.jsxs("div",{className:"train-detail-content__content",children:[(null==T?void 0:T.trainNumber)&&e.jsxs("div",{children:[e.jsxs("div",{className:"train-detail-content__content__info",children:[e.jsx("img",{src:`/assets/images/${H?"comboio-suprimido":W?"comboio-parcialmente-suprimido":"train-grey"}.svg`,alt:"Train",className:"train-detail-content__content__info__icon"}),e.jsxs("span",{...H?{style:{color:"#A12222"}}:W&&{style:{color:"#F57733"}},children:[(null==(D=null==T?void 0:T.serviceCode)?void 0:D.code)+" "+(null==T?void 0:T.trainNumber.toString()),F&&(H?e.jsx("p",{className:"train-detail-blocked",children:" "+E("trainDetailBlocked")}):W&&e.jsx("p",{className:"train-detail-blocked partially-blocked",children:" "+E("trainDetailPartiallyBlocked")}))]})]}),!F&&(H?e.jsx("p",{className:"train-detail-blocked",children:E("trainDetailBlocked")}):W&&e.jsx("p",{className:"train-detail-blocked partially-blocked",children:" "+E("trainDetailPartiallyBlocked")}))]}),e.jsx(t,{delay:null==T?void 0:T.delay,trainStops:null==T?void 0:T.trainStops,tripStatus:null==T?void 0:T.status,lastStationCode:null==T?void 0:T.lastStationCode})]}),F&&!U&&R.length>1&&e.jsx("button",{className:"train-detail-content__see-more",onClick:()=>q(!0),children:E("btnPlaceholderSeeAllTrip")})]}),!F&&e.jsx(X,{})]}),F&&e.jsx(X,{})]})})})]})]}))};export{N as default};

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.