1import{t as B,d as F}from"./D_YsutZ5.js";import{g as H}from"./P_cU2zAF.js";import{I as $,bA as x,aM as G,bS as V,aB as W}from"./BzfDXNcU.js";const q={"@vocab":"https://schema.org/",schema:"https://schema.org/",odta:"https://odta.io/voc/"},K="https://schema.org";function Y(e){return{"@context":e.some(n=>JSON.stringify(n).includes('"odta:'))?q:K,"@graph":e}}const S=e=>`${e}/#organization`,w=e=>`${e}/#website`,J={"&":"&","<":"<",">":">",""":'"',"'":"'","'":"'"," ":" "};function X(e){return e.replace(/&#(\d+);/g,(t,n)=>String.fromCodePoint(Number(n))).replace(/&#x([0-9a-f]+);/gi,(t,n)=>String.fromCodePoint(parseInt(n,16))).replace(/&[a-z]+;/gi,t=>J[t.toLowerCase()]??t)}function m(e,t=500){if(!e)return null;const n=X(e.replace(/<[^>]+>/g," ")).replace(/\s+/g," ").trim();return n?n.length<=t?n:`${n.slice(0,t-1).trimEnd()}â¦`:null}const Q=new Set(["p","br","ul","ol","li","a","b","strong","i","em","h1","h2","h3","h4","h5","h6","div"]);function Z(e){return e&&e.replace(/<(script|style)[^>]*>[\s\S]*?<\/\1>/gi,"").replace(/<\/?([a-z0-9]+)[^>]*>/gi,(n,a)=>Q.has(String(a).toLowerCase())?n:"").replace(/\s+/g," ").trim()||null}function E(e){const t=e?.trim();return t?/^https?:\/\//i.test(t)?t:/^www\.|\.[a-z]{2,}(\/|$)/i.test(t)?`https://${t}`:null:null}function I(e,t){const n=parseFloat(String(e??"")),a=parseFloat(String(t??""));return Number.isNaN(n)||Number.isNaN(a)?null:{"@type":"GeoCoordinates",latitude:n,longitude:a}}function ee(e,t){if(!e?.length)return null;const a=(e.find(o=>o.is_primary&&o.oa_images_id?.url)??e.find(o=>o.oa_images_id?.url))?.oa_images_id?.url;return a?F(a,"1200x630c",t):null}function j(e,t,n){if(!e&&!t&&!n)return null;const a={"@type":"PostalAddress",addressCountry:"DE"};return e&&(a.streetAddress=e),t&&(a.postalCode=t),n&&(a.addressLocality=n),a}function p(e,t){return e?.length?e.find(n=>n?.languages_code?.code===t)??e[0]??null:null}function _(e){if(Array.isArray(e))return e.filter(t=>typeof t=="string");if(typeof e=="string")try{const t=JSON.parse(e);return Array.isArray(t)?t.filter(n=>typeof n=="string"):[]}catch{return[]}return[]}function te(e,t){const n=p(e,t);return n?m(n.object_text_beschreibung_sommer_html)??m(B(n)):null}const z=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],P=e=>`https://schema.org/${z[e]}`,O=e=>e?e.slice(0,5):null;function ne(e,t=!1){if(t)return[{"@type":"OpeningHoursSpecification",dayOfWeek:[0,1,2,3,4,5,6].map(P),opens:"00:00",closes:"23:59"}];if(!e?.length)return[];const n=[];for(const a of e){const o=O(a.from_time),s=O(a.to_time),i=z[a.weekday];!o||!s||!i||n.push({"@type":"OpeningHoursSpecification",dayOfWeek:P(a.weekday),opens:o,closes:s})}return n}function ae(e,t){if(!e?.length||!t)return[];const n=[];for(const a of e){const o=t(a);o&&n.push({"@type":"LocationFeatureSpecification",name:o,value:!0})}return n}function oe(e,t,n){const a=[];if(Array.isArray(e)&&a.push(...e.filter(Boolean)),Array.isArray(t)&&n)for(const s of t){const i=n(s);i&&a.push(i)}const o=[...new Set(a.map(s=>String(s).trim()).filter(Boolean))];return o.length?o.join(", "):null}const k={dd_marketing:{brand:"Visit Dresden Elbland",websiteName:"Visit Dresden Elbland",websiteAlternateName:"Dresden Elbland",logoPath:"/logos/logo-elbland-color.svg",orgDescription:"Die Dresden Marketing GmbH ist die offizielle Dachmarketing- und Tourismusorganisation der Landeshauptstadt Dresden. Sie vermarktet die Destination Dresden Elbland national und international.",email:"[email protected]",extraSameAs:["https://dmg.dresden.de/"],defaultLanguageCodes:["de-DE","en-GB","pl-PL","cs-CZ"]},dd_convention:{brand:"Dresden Convention Service",websiteName:"Dresden Convention",websiteAlternateName:"Dresden Convention Service",logoPath:"/logos/logo-dresden-color.svg",orgDescription:"Der Dresden Convention Service der Dresden Marketing GmbH vermarktet Dresden als Kongress-, Wissenschafts- und Wirtschaftsstandort und unter
1stützt bei der Planung von Tagungen, Kongressen, Events und Incentives in Dresden und der Region.",email:"[email protected]",extraSameAs:["https://dmg.dresden.de/"],defaultLanguageCodes:["de-DE","en-GB"]}};function M(e){return k[String(e??"")]??k.dd_marketing}function se(e,t){const a=[t?.facebook_url,t?.instagram_url,t?.youtube_url,t?.pinterest_url,t?.linkedin_url,t?.tiktok_url,...e.extraSameAs].map(o=>E(o)).filter(Boolean);return[...new Set(a)]}function ie(e){const{siteUrl:t}=e,n=M(e.environment),a={"@type":"Organization","@id":S(t),name:"Dresden Marketing GmbH",legalName:"Dresden Marketing GmbH",alternateName:n.brand,url:`${t}/`,logo:{"@type":"ImageObject",url:`${t}${n.logoPath}`},description:n.orgDescription,foundingDate:"2008",address:{"@type":"PostalAddress",streetAddress:"Messering 7",postalCode:"01067",addressLocality:"Dresden",addressRegion:"Sachsen",addressCountry:"DE"},contactPoint:[{"@type":"ContactPoint",contactType:"customer service",telephone:"+49-351-50173-0",faxNumber:"+49-351-50173-111",email:n.email,availableLanguage:["de","en"]}],vatID:"DE262988260",identifier:[{"@type":"PropertyValue",propertyID:"HRB",value:"HRB 27229 (Amtsgericht Dresden)"}],parentOrganization:{"@type":"GovernmentOrganization",name:"Landeshauptstadt Dresden",url:"https://www.dresden.de/"}},o=se(n,e.socials);return o.length&&(a.sameAs=o),a}function re(e){const{siteUrl:t}=e,n=M(e.environment),a=e.languageCodes?.length?e.languageCodes:n.defaultLanguageCodes;return{"@type":"WebSite","@id":w(t),url:`${t}/`,name:n.websiteName,alternateName:n.websiteAlternateName,inLanguage:a,publisher:{"@id":S(t)}}}function N(e){return{isPartOf:{"@id":w(e)},publisher:{"@id":S(e)}}}function Le(e,t){if(!e)return null;const{siteUrl:n,canonicalUrl:a,locale:o,labelFor:s}=t,r=p(e.stammdaten_translation,o)?.object_text_name||e.bezeichnung;if(!r)return null;const l={"@type":["TouristAttraction","odta:PointOfInterest"],"@id":`${a}#poi`,name:r,url:a,...N(n)},c=te(e.allgemein_texte_so_translation,o);c&&(l.description=c);const u=ee(e.images,n);u&&(l.image=[u]);const d=j(e.object_contact_strasse,e.satourn_plz,e.satourn_ort);d&&(l.address=d);const g=I(e.latitude,e.longitude);g&&(l.geo=g),e.object_contact_tel&&(l.telephone=e.object_contact_tel),e.object_contact_email&&(l.email=e.object_contact_email);const f=E(e.object_contact_webseite1);f&&(l.sameAs=[f]);const y=oe(e.kategorie,null,s);y&&(l.keywords=y);const b=ae(e.merkmal,s);b.length&&(l.amenityFeature=b);const h=ne(e.weekly_schedule,!!e.alwaysopen);return h.length&&(l.openingHoursSpecification=h),p(e.preis_translation,o)?.price_info&&(l.isAccessibleForFree=!1),l}function le(e,t){const n=parseFloat(String(e??""));return Number.isNaN(n)?null:{"@type":"QuantitativeValue",value:n,unitCode:t}}const ce=[["tagungshotel","Hotel"],["hotel garni","Hotel"],["hotel","Hotel"],["jugendherberge","Hostel"],["campingplatz","Campground"],["pension garni","BedAndBreakfast"],["pension","BedAndBreakfast"],["gasthof","BedAndBreakfast"],["privatvermieter","VacationRental"],["ferienwohnung","VacationRental"],["ferienhaus","VacationRental"],["ferienpark","VacationRental"],["appartement","VacationRental"],["berg-/skihütte","VacationRental"]],ue=new Set(["tagungskategorien"]);function de(e){const t=_(e.kategorie).map(s=>s.trim().toLowerCase()).filter(s=>s&&!ue.has(s));let n=null;for(const[s,i]of ce)if(t.some(r=>r.includes(s))){n=i;break}!n&&(Number(e.zimmeranzahl)>0||Number(e.bettenanzahl)>0)&&(n="LodgingBusiness");const a=Number(e.anzahl_tagungsraum)>0||!!e.tagungsraeume?.length,o=[n,a?"EventVenue":null].filter(Boolean);return o.length?o:["LocalBusiness"]}function ge(e){const t=[e.seating_stand_count,e.seating_row_count,e.seating_banquet_count,e.seating_parlament_count].map(n=>Number(n)).filter(n=>Number.isFinite(n)&&n>0);return t.length?Math.max(...t):null}function fe(e,t){if(!e?.length)return[];const n=[];for(const a of e){const o=p(a.translations,t)?.object_text_name||a.bezeichnung;if(!o)continue;const s={"@type":"MeetingRoom",name:o},i=ge(a);i&&(s.maximumAttendeeCapacity=i);const r=le(a.object_groesse,"MTK");r&&(s.floorSize=r),n.push(s)}return n}const me=["HYGIENE_","OBJECT_FIT_"],pe=new Set(["MICE","Ausstattung Gastgeber","Technische Ausstattung (Tagungsort)","AdaptivPragmatisch","LiberalIntellektuell","Soziooekologisch","Vital","Familie","Architektur","BesondereOrte","EventsFestivals","Museen","Staedtetrips","Wandern","Wasser","WissenswertesEntdecker","PassendeDach","TagungsortAuszeichnungISO"]),he=/^\d+_\d+$/;function _e(e,t){const n={amenities:[],payments:[],languages:[]};for(const a of e){if(pe.has(a)||me.some(s=>a.startsWith(s)))continue;const o=t?.(a);!o||he.test(o)||(a.startsWith("PRICE_PAYMENT_")?n.payments.push(o):a.startsWith("LANGUAGE_")?n.languages.push(o):n.amenities.push(o))}return n}function Ce(e,t){if(!e)return null;const{siteUrl:n,canonicalUrl:a,locale:o,labelFor:s}=t,i=p(e.stammdaten_translation,o),r=i?.object_text_name||e.betriebsname;if(!r)return null;const l=de(e),c={"@type":l.length===1?l[0]:l,"@id":`${a}#venue`,name:r,url:a,...N(n)},u=p(e.tagungsorttext_translation,o),d=m(i?.seo?.description)??m(u?.tagungsort_teaser)??m(u?.tagungsort_description)??m(i?.hero_text);d&&(c.description=d),t.imageUrl&&(c.image=[t.imageUrl]);const g=j(e.object_contact_strasse,e.satourn_plz,e.satourn_ort);g&&(c.address=g);const f=I(e.latitude,e.longitude);f&&(c.geo=f),e.object_contact_tel&&(c.telephone=e.object_contact_tel);const y=e.object_contact_email||e.object_contact_email_anfragen;y&&(c.email=y);const b=E(e.object_contact_webseite1);b&&(c.sameAs=[b]);const h=Number(e.zimmeranzahl);Number.isFinite(h)&&h>0&&(c.numberOfRooms=h);const A=Number(e.anzahl_tagungsraum_max_person);Number.isFinite(A)&&A>
10&&(c.maximumAttendeeCapacity=A);const{amenities:D,payments:L,languages:C}=_e(_(e.merkmal),s);D.length&&(c.amenityFeature=[...new Set(D)].map(U=>({"@type":"LocationFeatureSpecification",name:U,value:!0}))),L.length&&(c.paymentAccepted=[...new Set(L)].join(", ")),C.length&&(c.availableLanguage=[...new Set(C)]);const v=fe(e.tagungsraeume,o);return v.length&&(c.containsPlace=v),c}const T=110;function ve(e,t){if(!e)return null;const{siteUrl:n,canonicalUrl:a,locale:o}=t,s=p(e.translations,o)??e.translations?.[0]??null,i=s?.name;if(!i)return null;const r={"@type":"NewsArticle","@id":`${a}#article`,headline:String(i).length>T?`${String(i).slice(0,T-1).trimEnd()}â¦`:i,url:a,mainEntityOfPage:{"@type":"WebPage","@id":a},...N(n)};t.languagePrefix&&(r.inLanguage=t.languagePrefix);const l=m(s?.seo?.description);l&&(r.description=l),t.imageUrl&&(r.image=[t.imageUrl]),e.date&&(r.datePublished=e.date);const c=e.date_updated||e.date;c&&(r.dateModified=c),r.author=e.author?{"@type":"Person",name:e.author}:{"@id":S(n)};const u=(e.news_category??[]).map(d=>d?.dw_news_category_id?.name).filter(Boolean);return u.length&&(r.articleSection=[...new Set(u)]),r}const ye={messe:"ExhibitionEvent"};function be(e){for(const t of _(e)){const n=ye[t.trim().toLowerCase()];if(n)return n}return"BusinessEvent"}function Ae(e){const t=_(e).map(n=>n.trim().toLowerCase());return t.includes("hybrid")?"https://schema.org/MixedEventAttendanceMode":t.includes("live")?"https://schema.org/OfflineEventAttendanceMode":null}function Se(e,t){const{canonicalUrl:n,labelFor:a}=t,o=e?.name?.trim(),s=e?.beginn;if(!o||!s)return null;const i={"@type":be(e.art_der_veranstaltung),"@id":`${n}#kongress-${e.id}`,name:o,startDate:s,eventStatus:"https://schema.org/EventScheduled",location:{"@type":"Place",name:e.tagungsstaette||"Dresden",address:{"@type":"PostalAddress",addressRegion:"Sachsen",addressCountry:"DE"}}};e.ende&&(i.endDate=e.ende);const r=Ae(e.format);r&&(i.eventAttendanceMode=r);const l=E(e.website);l&&(i.url=l);const c=[e.veranstalter_national,e.veranstalter_international].map(f=>f?.trim()).filter(Boolean).join(" / ");c&&(i.organizer={"@type":"Organization",name:c});const u=[..._(e.branche_themen),..._(e.art_der_veranstaltung)].map(f=>
1a?.(f)??f).filter(Boolean),d=[...new Set(u.map(f=>String(f).trim()).filter(Boolean))];d.length&&(i.keywords=d.join(", "));const g=Number(e.teilnehmerzahl_geplant);return Number.isFinite(g)&&g>0&&(i.additionalProperty=[{"@type":"PropertyValue",name:"Teilnehmerzahl (geplant)",value:g}]),i}function Pe(e,t){if(!e?.length)return null;const n=[];for(const o of e){const s=Se(o,t);s&&n.push({"@type":"ListItem",position:n.length+1,item:s})}return n.length?{"@type":"ItemList","@id":`${t.canonicalUrl}#kongresse`,url:t.canonicalUrl,numberOfItems:n.length,itemListOrder:"https://schema.org/ItemListOrderAscending",...N(t.siteUrl),itemListElement:n}:null}function Ee(e,t){if(!e)return null;const n=H(e.pixxio);if(n)return n;const a=e.image?.id;return a?`${t.replace(/\/+$/,"")}/assets/${a}`:null}function Oe(e,t){if(!Array.isArray(e))return null;const n=[];for(const a of e){const o=a?.item??a;if(!(o?.type!=="dw_ce_faq"&&o?.__typename!=="dw_ce_faq"))for(const s of o.faq??[]){const i=s?.dw_faq_id,r=i?.translations?.[0]??null,l=m(r?.question,300),c=Z(r?.answer);if(!l||!c)continue;const u={"@type":"Answer",text:c},d=Ee(i?.answer_image,t.directusBaseUrl);if(d){const g={"@type":"ImageObject",url:d};i.answer_image.media_description&&(g.caption=i.answer_image.media_description),u.image=g}n.push({"@type":"Question",name:l,acceptedAnswer:u})}}return n.length?{"@type":"FAQPage","@id":`${t.canonicalUrl}#faq`,inLanguage:t.locale,isPartOf:{"@id":w(t.siteUrl)},mainEntity:n}:null}const R=Symbol("dw-jsonld-collector");function ke(e){const t=V(R,null);t&&(t.value=[...t.value,e])}function Te(e,t){const{public:{siteUrl:n,environment:a,builtLanguageCodes:o}}=$(),s=x([]);W(R,s),G(()=>{const i={siteUrl:n,environment:a,languageCodes:o,socials:t?.()??null},r=[...e?.()??[],...s.value.flatMap(u=>u())].filter(Boolean),l=[ie(i),re(i),...r];return{script:[{type:"application/ld+json",key:"schema-jsonld",innerHTML:JSON.stringify(Y(l)).replace(/</g,"\\u003c")}]}})}export{ke as a,Oe as f,Pe as k,ve as n,Le as p,Te as u,Ce as v};
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.