PageSourceSearch

https://www.echo.lu/build/p-3f46714b.js

js echo.lu collected 2026-09-24 21:36:58 UTC 4,261 bytes, 1 lines download raw bytes

1import{h as e}from"./p-e320094d.js";import{a as o,_ as i}from"./p-deb45614.js";import{s as l}from"./p-45e31690.js";import{i as r}from"./p-55b46c9a.js";import{f as n}from"./p-2919ce37.js";import{a as t}from"./p-1cd2d206.js";import{g as s}from"./p-49003442.js";const a=e=>{const o="number"==typeof e?e:parseFloat(String(null!=e?e:""));return Number.isFinite(o)?o:void 0},c=(e,o)=>{const i=(null==e?void 0:e.address)||e||{},l=a(i.latitude),r=a(i.longitude),n=void 0!==l&&void 0!==r?`${l},${r}`:[o,[i.number,i.street].filter(Boolean).join(" "),[i.postcode,i.town].filter(Boolean).join(" "),i.country||"Luxembourg"].filter(Boolean).join(", ");return"https://www.google.com/maps/dir/?api=1&destination="+encodeURIComponent(n)},p=e=>e?e.address?`${e.address.number||""} ${e.address.street||""} | ${e.address.postcode||""} ${e.address.town}`:`${e.number||""} ${e.street||""} | ${e.postcode||""} ${e.town}`:"",d={xxs:1,xs:2.25,sm:2.25,md:3,lg:5,xlg:6},u=(e,r,n,a)=>{var c,d;let u,m=i("prices.free"),f=0;return!e.isFree&&(null===(c=e.tickets)||void 0===c?void 0:c.length)>0&&(f=parseFloat(e.tickets[0].price),e.multiplePrice&&(0===f||Number.isNaN(f))?(f=0,m=i("prices.from",{price:f.toFixed(2)})):m=e.multiplePrice?i("prices.from",{price:f.toFixed(2)}):f.toFixed(2)+"€"),e.categoryId&&l["meta/categories"]&&l["meta/categories"][e.categoryId]&&(u=l["meta/categories"][e.categoryId].parent||e.categoryId),{imageUrl:s(e.image,n||"card",u||null),imageAlt:o(e.title)||i("experience.untitled"),location:`${o(e.venue)} ${Array.isArray(e.venueId)&&e.venueId.length>1?`(+${e.venueId.length-1})`:""}`||p(e.location),heading:o(e.title)||i("experience.untitled"),description:o(e.subtitle)||"",category:o(e.category),infoStyles:0===f&&(null===(d=e.tickets)||void 0===d?void 0:d.length)<2?"success":null,info:m,time:t(e.from,e.to,!0),link:r,experienceId:e.experienceId,ticketLogo:g(e)?a:null}},m=(e,o)=>{var l;const r=null===(l=e._rankingInfo)||void 0===l?void 0:l.geoDistance;return{heading:e.title,location:p(e.location),imageUrl:s(e.image,"thumb"),imageAlt:e.title||"",category:e.category||"",experiences:i("venue.experiences-num",{num:e.eventCount||0}),distance:null!=r?n(r):void 0,link:o}},f=(e,r,a,c,d)=>{var u,m,f,v,x;let $=i("prices.free"),y=0;const b=(null===(u=e.rawExperience.tickets)||void 0===u?void 0:u.length)>1;if(!e.isFree&&(null===(m=e.rawExperience.tickets)||void 0===m?void 0:m.length)>0){const o=e.rawExperience.tickets.map((e=>e.price));y=Math.min(...o),b&&(0===y||Number.isNaN(y))?(y=0,$=i("prices.from",{price:y.toFixed(2)})):$=b?i("prices.from",{price:y.toFixed(2)}):y.toFixed(2)+"€"}let h,k;e.rawExperience.categories[0]&&l["meta/categories"]&&l["meta/categories"][e.rawExperience.categories[0]]&&(h=l["meta/categories"][e.rawExperience.categories[0]],k=l["meta/categories"][e.rawExperience.categories[0]].parent||e.rawExperience.categories[0]);const S=`${o(e.rawVenues&&e.rawVenues[0].title)} ${(null===(f=e.rawVenues)||void 0===f?void 0:f.length)>1?`(+${e.rawVenues.length-1})`:""}`||p(e.location),j=null===(v=e._rankingInfo)||void 0===v?void 0:v.geoDistance;return{imageUrl:s(e.image,a||"card",k||null),imageAlt:o(e.rawExperience.title)||i("experience.untitled"),location:S,distance:null!=j?n(j):void 0,heading:o(e.rawExperience.title)||i("experience.untitled"),description:o(e.rawExperience.subtitle)||"",category:o(null==h?void 0:h.titles),infoStyles:0===y&&(null===(x=e.tickets)||void 0===x?void 0:x.length)<2?"success":null,info:$,time:t(e.from_timestamp,e.to_timestamp,!0,d),link:r,experienceId:e.rawExperience.id,ticketLogo:g(e.rawExperience)?c:null}},g=e=>!!r(e.purchaseLink)||!(!e.dates||!e.dates.find((e=>r(e.purchaseLink)))),v=({prefixSize:o="12px",prefixColor:l="#808080",prefixWeight:r="400",logoSize:n="16px",style:t={},nbsp:s=!0})=>e("p",{class:"luxembourticket-logo",style:t},e("span",{class:"prefix",style:{color:l,fontSize:o,fontWeight:r}},i("experience.luxembourgticket-logo-text"),s?e("span",null," "):" "),e("span",{class:"logo-first-part",style:{color:"#4D4D4D",fontWeight:"500",fontSize:n,fontFamily:"Arial, sans-serif"}},"luxembourg"),e("span",{class:"logo-second-part",style:{color:"#FF00CB",fontWeight:"700",fontSize:n,fontFamily:"Arial, sans-serif"}},"ticket"));export{v as L,u as a,c as b,d as c,p as d,m as e,f as g,g as i}

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.