PageSourceSearch

https://trains.fyi/_next/static/chunks/pages/countries-2ebbdbe046d7f922.js

js trains.fyi collected 2026-09-24 09:54:45 UTC 5,657 bytes, 1 lines download raw bytes

1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[6846],{871:(e,t,r)=>{(window.__NEXT_P=window.__NEXT_P||[]).push(["/countries",function(){return r(52007)}])},49915:(e,t,r)=>{"use strict";r.d(t,{A:()=>l});var a=r(37876),s=r(60570),i=r(48230),n=r.n(i);function l({pages:e}){return(0,a.jsx)("nav",{"aria-label":"Breadcrumb",className:"flex",children:(0,a.jsxs)("ol",{role:"list",className:"flex items-center space-x-4 pt-6",children:[(0,a.jsx)("li",{children:(0,a.jsx)("div",{children:(0,a.jsxs)(n(),{href:"/",className:"text-gray-400 hover:text-gray-500",children:[(0,a.jsx)(s.A,{"aria-hidden":"true",className:"h-5 w-5 flex-shrink-0"}),(0,a.jsx)("span",{className:"sr-only",children:"Home"})]})})}),e.map(e=>(0,a.jsx)("li",{children:(0,a.jsxs)("div",{className:"flex items-center",children:[(0,a.jsx)("svg",{fill:"currentColor",viewBox:"0 0 20 20","aria-hidden":"true",className:"h-5 w-5 flex-shrink-0 text-gray-300",children:(0,a.jsx)("path",{d:"M5.555 17.776l8-16 .894.448-8 16-.894-.448z"})}),(0,a.jsx)(n(),{href:e.href,"aria-current":e.current?"page":void 0,className:"ml-4 text-sm font-medium text-gray-500 hover:text-gray-700",children:e.name})]})},e.name))]})})}},52007:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>w});var a=r(37876),s=r(14232),i=r(49915),n=r(85392),l=r(74),c=r(490),o=r(48230),d=r.n(o),u=r(78240);let x={black:"#000000",blue:{400:"#60a5fa",500:"#3b82f6",600:"#2563eb",700:"#1d4ed8",800:"#1e40af"},red:{500:"#ef4444",600:"#dc2626",700:"#b91c1c",800:"#991b1b"},green:{600:"#16a34a",700:"#15803d"},yellow:{400:"#facc15",500:"#eab308",600:"#ca8a04",700:"#a16207"},orange:{600:"#ea580c"}},h=({country:e})=>{let{counts:t}=(0,u.a2)(),r=(0,s.useMemo)(()=>e.getNetworks(),[e]),i=(0,s.useMemo)(()=>r.reduce((e,r)=>e+(t[r.slug]??t[r.slug?.toLowerCase()]??0),0),[r,t]),n=((e,t="#1e40af")=>{if(!e)return t;if("bg-black"===e)return x.black;let r=e.match(/^bg-([a-z]+)-(\d+)$/);if(!r)return t;let[,a,s]=r;return x[a]?.[s]||t})(e.color);return(0,a.jsxs)(d(),{href:`/countries/${e.slug}
1/`,className:"flex items-center gap-4 rounded-lg bg-white p-4 shadow-md hover:shadow-lg focus-within:ring-2 focus-within:ring-indigo-500 focus-within:ring-offset-2",children:[(0,a.jsx)("div",{className:"flex h-12 w-12 flex-none items-center justify-center rounded-lg",style:{backgroundColor:n},children:(0,a.jsx)(c.A,{className:"h-7 w-7 text-white","aria-hidden":"true"})}),(0,a.jsxs)("div",{className:"min-w-0 flex-auto",children:[(0,a.jsx)("h3",{className:"truncate text-xl font-medium text-gray-900",children:e.name}),(0,a.jsxs)("p",{className:"mt-1 truncate text-sm text-gray-500",children:[r.length," network",1!==r.length?"s":""," \xb7 ",i," active train",1!==i?"s":""]})]})]})};var m=r(93408),g=r(72641),f=r(73865);function w(){let{t:e}=(0,f.B)(),t=g.i.getAllCountries(),r=[{name:e("footerCountries"),href:"/countries",current:!0}];return(0,s.useEffect)(()=>{window.gtag&&window.gtag("event","page_view",{page_title:"Countries with Train Tracking | trains.fyi",page_location:window.location.href,page_path:"/countries"})},[]),(0,a.jsxs)("div",{className:"flex flex-col min-h-screen bg-white",children:[(0,a.jsx)(m.A,{title:"Countries with Train Tracking",description:"Explore real-time train tracking across dozens of countries worldwide. View live train positions in the United States, Canada, Europe, Asia, and beyond.",canonical:"/countries/",keywords:"train tracking, worldwide train tracking, United States trains, Canada trains, Europe trains, real-time train map, live train positions"}),(0,a.jsx)(l.A,{}),(0,a.jsxs)("main",{className:"flex-grow mx-auto max-w-7xl px-4 sm:px-6 lg:px-8",children:[(0,a.jsx)("div",{className:"py-4",children:(0,a.jsx)(i.A,{pages:r})}),(0,a.jsxs)("div",{className:"my-8",children:[(0,a.jsx)("h1",{className:"text-5xl text-gray-900 font-bold mb-4",children:e("footerCountries")}),(0,a.jsx)("div",{className:"text-xl text-gray-500",children:e("countriesSubtitle")})]}),(0,a.jsx)("div",{className:"py-4",children:(0,a.jsx)("div",{className:"grid gap-6 sm:grid-cols-2 lg:grid-cols-3",children:t.map(e=>(0,a.jsx)(h,{country:e},e.slug))})}),(0,a.jsxs)("div",{className:"my-16",children:[(0,a.jsx)("h2",{className:"text-3xl font-bold text-gray-900 mb-6",children:e("countriesAboutH2")}),(0,a.jsxs)("div",{className:"space-y-4 text-lg text-gray-700",children:[(0,a.jsx)("p",{children:e("countriesAboutP1")}),(0,a.jsx)("p",{children:e("countriesAboutP2")}),(0,a.jsx)("p",{children:e("countriesAboutP3")})]})]})]}),(0,a.jsx)(n.A,{})]})}},60570:(e,t,r)=>{"use strict";r.d(t,{A:()=>s});var a=r(14232);let s=a.forwardRef(function({title:e,titleId:t,...r},s){return a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:s,"aria-labelledby":t},r),e?a.createElement("title",{id:t},e):null,a.createElement("path",{fillRule:"evenodd",d:"M9.293 2.293a1 1 0 0 1 1.414 0l7 7A1 1 0 0 1 17 11h-1v6a1 1 0 0 1-1 1h-2a1 1 0 0 1-1-1v-3a1 1 0 0 0-1-1H9a1 1 0 0 0-1 1v3a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1v-6H3a1 1 0 0 1-.707-1.707l7-7Z",clipRule:"evenodd"}))})},77808:(e,t,r)=>{"use strict";r.d(t,{A:()=>s});var a=r(14232);let s=a.forwardRef(function({title:e,titleId:t,...r},s){return a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:s,"aria-labelledby":t},r),e?a.createElement("title",{id:t},e):null,a.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M4.5 10.5 12 3m0 0 7.5 7.5M12 3v18"}))})}},e=>{e.O(0,[6701,3927,2325,3990,8447,5392,636,6593,8792],()=>e(e.s=871)),_N_E=e.O()}]);

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.