{"version":3,"file":"PageStructuredData.Ce4CF2Ww.mjs","names":["__esmMin","init_jsx_runtime","c","useLocaleInfo","addPropertyControls","init_framer_BL70qLPA","ControlType","RenderTarget","routerPath","url","WEBSITE_ID","homeLabel","pageLocale","canvasBadgeStyle","init_AnnySchema","SOFTWARE_ID","clean","useRouter","toJson","crumbLabel","title","s","PageStructuredData","router","locale","activeLocale","base","props","slug","path","pageUrl","isHome","name","hub","parents","KNOWN_PARENTS","part","label","p","crumbs","image","graph","i","init_PageStructuredData"],"sources":["https:/framerusercontent.com/modules/sr8CtUK9kicciJD0Jygj/GpU6yzCRCqvKhbL4Nfi5/PageStructuredData.js"],"sourcesContent":["// WebPage + BreadcrumbList JSON-LD for one page. The URL follows the active\n// locale; name and description are props so they translate with the page.\n// FAQPage comes from the FAQ components; the page is about the #webapp software node.\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget,useLocaleInfo}from\"framer\";import{canvasBadgeStyle,clean,homeLabel,pageLocale,routerPath,SOFTWARE_ID,toJson,url,useRouter,WEBSITE_ID}from\"https://framerusercontent.com/modules/FTMNCnfWEiVgLb2dp3xR/daTFLKeu7xxXGgIF3H8B/AnnySchema.js\";const KNOWN_PARENTS={// One hub for every /solutions/* page, static use cases and Industries CMS alike.\n\"/solutions\":{de:\"L\\xf6sungen\",en:\"Solutions\",fr:\"Solutions\"},\"/pricing\":{de:\"Preise\",en:\"Pricing\",fr:\"Tarifs\"},\"/blog\":{de:\"Blog\",en:\"Blog\",fr:\"Blog\"}};// \"Buchungsseite | anny – Intuitiv\" → \"Buchungsseite\"; a breadcrumb wants the short name.\nfunction crumbLabel(title){const head=title.split(/\\s+[|–—]\\s+|\\s+-\\s+/).map(s=>s.trim()).filter(s=>s&&s.toLowerCase()!==\"anny\");return head[0]||title;}/**\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight fixed\n * @framerIntrinsicWidth 1\n * @framerIntrinsicHeight 1\n */export default function PageStructuredData(props){const{activeLocale}=useLocaleInfo();const router=useRouter();const locale=pageLocale(activeLocale);// A slug (CMS) is appended to path; without either, the current route's path is used.\nconst base=clean(props.path)||routerPath(router)||\"/\";const slug=clean(props.slug);const path=slug?`${base.replace(/\\/+$/,\"\")}/${slug}`:base;const pageUrl=url(locale,path);const isHome=path===\"/\";const name=clean(props.name);// Without explicit parents, a page below a known hub (e.g. /solutions/raumbuchung)\n// gets that hub as its middle crumb, so all solution pages share one trail.\nconst hub=\"/\"+(path.split(\"/\")[1]||\"\");const parentsRaw=clean(props.parents)||(KNOWN_PARENTS[hub]&&path!==hub?hub:\"\");const parents=parentsRaw.split(\";\").map(part=>part.trim()).filter(Boolean).map(part=>{const[label,p]=part.includes(\"=\")?part.split(\"=\").map(s=>s.trim()):[\"\",part];return{name:label||KNOWN_PARENTS[p]?.[locale.lang]||\"\",item:url(locale,p)};}).filter(p=>p.name);const crumbs=isHome?[]:[{name:homeLabel(locale.lang),item:url(locale,\"/\")},...parents,{name:clean(props.label)||KNOWN_PARENTS[path]?.[locale.lang]||crumbLabel(name),item:pageUrl}];if(RenderTarget.current()===RenderTarget.canvas){return /*#__PURE__*/_jsx(\"div\",{style:canvasBadgeStyle,children:`Structured data: WebPage ${path}`});}const image=props.image?.src?props.image.src.split(\"?\")[0]:undefined;const graph=[{\"@type\":\"WebPage\",\"@id\":`${pageUrl}#webpage`,url:pageUrl,name,description:clean(props.description),inLanguage:locale.inLanguage,isPartOf:{\"@id\":WEBSITE_ID},about:{\"@id\":SOFTWARE_ID},breadcrumb:crumbs.length>1?{\"@id\":`${pageUrl}#breadcrumbs`}:undefined,primaryImageOfPage:image?{\"@type\":\"ImageObject\",url:image}:undefined}];if(crumbs.length>1&&name){graph.push({\"@type\":\"BreadcrumbList\",\"@id\":`${pageUrl}#breadcrumbs`,itemListElement:crumbs.map((c,i)=>({\"@type\":\"ListItem\",position:i+1,name:c.name,item:c.item}))});}return /*#__PURE__*/_jsx(\"div\",{\"aria-hidden\":\"true\",style:{position:\"relative\",width:0,height:0,overflow:\"hidden\"},children:/*#__PURE__*/_jsx(\"script\",{type:\"application/ld+json\",dangerouslySetInnerHTML:{__html:toJson(graph)}})});}addPropertyControls(PageStructuredData,{name:{type:ControlType.String,title:\"Name\",defaultValue:\"\"},label:{type:ControlType.String,title:\"Label\",description:\"Short breadcrumb name; defaults to Name up to its first | or –\",defaultValue:\"\"},description:{type:ControlType.String,title:\"Description\",defaultValue:\"\",displayTextArea:true},path:{type:ControlType.String,title:\"Path\",description:\"Leave empty to use the page's own URL\",defaultValue:\"\"},slug:{type:ControlType.String,title:\"Slug\",description:\"CMS pages: bind the slug field\",defaultValue:\"\"},parents:{type:ControlType.String,title:\"Parents\",description:\"Breadcrumb between home and this page, e.g. /solutions or Label=/path; …\",defaultValue:\"\"},image:{type:ControlType.ResponsiveImage,title:\"Image\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"PageStructuredData\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutHeight\":\"fixed\",\"framerIntrinsicWidth\":\"1\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"fixed\",\"framerIntrinsicHeight\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./PageStructuredData.map"],"mappings":"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"}