1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[38229],{38229:(e,s,a)=>{a.d(s,{A:()=>o});var t=a(95155),n=a(12115),i=a(10297),r=a(70425),l=a(50921);function o(e){var s;let{shopId:a,t:o}=e,[d,u]=(0,n.useState)(null),[p,f]=(0,n.useState)(null),[g,x]=(0,n.useState)(new Set),[b,w]=(0,n.useState)(null),[k,v]=(0,n.useState)(null),[N,j]=(0,n.useState)(null),y=(0,n.useCallback)(async()=>{try{let e=await (0,r.CK)("/api/owner/seo/schema/status?shopId=".concat(a));e.ok&&u(await e.json())}catch(e){e instanceof r.AM||console.error("schema/status failed",e)}},[a]);(0,n.useEffect)(()=>{y()},[y]);let S=async()=>{w("extract"),v(null);try{let e=await (0,r.CK)("/api/owner/seo/schema/faq/extract?shopId=".concat(a),{method:"POST"});if(429===e.status)return void v("rate_limited");if(!e.ok)return void v("extract_failed");let s=await e.json();f(s.candidates);let t=new Set;for(let e of s.candidates)e.pairs.forEach((s,a)=>t.add((0,l.RC)(e.lang,a)));x(t),0===s.candidates.length&&v("no_faq_found")}catch(e){e instanceof r.AM||v("extract_failed")}finally{w(null)}},A=async e=>{let s=(0,l.HB)(e,g);if(0!==s.length){w("accept:".concat(e.lang)),v(null);try{if(!(await (0,r.CK)("/api/owner/seo/schema/faq/accept?shopId=".concat(a),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({lang:e.lang,pairs:s})})).ok)return void v("accept_failed");f(s=>(null!=s?s:[]).filter(s=>s.lang!==e.lang)),await y()}catch(e){e instanceof r.AM||v("accept_failed")}finally{w(null)}}},_=async()=>{w("generate"),v(null),j(null);try{let e=await (0,r.CK)("/api/owner/seo/schema/faq/generate?shopId=".concat(a),{method:"POST"});if(429===e.status)return void v("rate_limited");if(!e.ok)return void v("generate_failed");let s=await e.json();j(s.results),0===s.results.length&&v("generate_failed")}catch(e){e instanceof r.AM||v("generate_failed")}finally{w(null)}},q=async()=>{if(confirm(o("owner.seo.schema.faq.confirmDelete","FAQ-Schema wirklich entfernen?"))){w("delete");try{await (0,r.CK)("/api/owner/seo/schema/faq?shopId=".concat(a),{method:"DELETE"}),await y()}catch(e){e instanceof r.AM||console.error("schema/faq delete failed",e)}finally{w(null)}}};if(!(null==d?void 0:d.applicable))return null;let F=(0,l.oY)(d);return(0,t.jsxs)("div",{className:"rounded-xl border border-slate-200 bg-white p-5 shadow-sm",children:[(0,t.jsxs)("h4",{className:"text-sm font-semibold text-slate-900",children:[(0,t.jsx)(i.A,{className:"bi bi-magic me-1 text-indigo-600","aria-hidden":"true"}),o("owner.seo.schema.title","Von Shopyai automatisch bereitgestellt")]}),(0,t.jsx)("p",{className:"mt-1 text-xs text-slate-500",children:o("owner.seo.schema.subtitle","Diese Schema.org-Bloecke liefert deine Seite ohne dass du etwas tun musst.")}),(0,l.ps)(d).length>0&&(0,t.jsx)("ul",{className:"mt-3 space-y-1.5",children:(0,l.ps)(d).map(e=>(0,t.jsxs)("li",{className:"flex items-start gap-2 rounded-lg border border-amber-200 bg-amber-50 px-3 py-2 text-xs text-amber-800",children:[(0,t.jsx)(i.A,{className:"bi bi-exclamation-triangle-fill mt-0.5","aria-hidden":"true"}),(0,t.jsxs)("span",{className:"min-w-0",children:[m[e]?o(...m[e]):e," ",(0,t.jsx)("a",{href:(0,l.WP)(e),className:"font-semibold text-amber-900 underline",children:o("owner.seo.schema.warn.fix","Korrigieren")})]})]},e))}),(0,t.jsxs)("ul",{className:"mt-3 space-y-3 text-sm",children:[(0,t.jsx)(c,{label:"Organization",hint:o("owner.seo.schema.org.hint","Name, Logo & Verweise aus deinem Profil"),children:(0,l.J0)(d).map(e=>(0,t.jsx)(h,{fact:e,t:o},e.key))}),(0,t.jsxs)("li",{className:"flex items-start gap-2",children:[(0,t.jsx)(i.A,{className:"bi bi-check-circle-fill mt-0.5 text-emerald-500","aria-hidden":"true"}),(0,t.jsxs)("div",{className:"min-w-0",children:[(0,t.jsx)("span",{className:"font-medium text-slate-800",children:"WebSite"})," ",(0,t.jsx)("span",{className:"text-xs text-slate-500",children:o("owner.seo.schema.site.hint","Basis fuer Marken-/KI-Erkennung")})," ",(0,t.jsx)("a",{href:l.U3.name,className:"text-xs text-indigo-600 hover:underline",children:o("owner.seo.schema.edit","Bearbeiten")})]})]}
1),(0,t.jsx)(c,{label:d.businessType||"LocalBusiness",headerOk:"active"===d.localBusiness,hint:"disabled"===d.localBusiness?o("owner.seo.schema.lb.disabled","Noch nicht aktiviert."):"missing_facts"===d.localBusiness?o("owner.seo.schema.lb.missing","Pflege Stadt oder Telefon, dann erscheint dein Business-Schema automatisch."):o("owner.seo.schema.lb.active","Aus deinem Profil"),children:"disabled"!==d.localBusiness&&(0,l.d)(d).map(e=>(0,t.jsx)(h,{fact:e,t:o},e.key))})]}),(0,t.jsxs)("div",{className:"mt-4 border-t border-slate-100 pt-4",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("h5",{className:"text-sm font-semibold text-slate-900",children:o("owner.seo.schema.faq.title","FAQ-Schema (KI-Sichtbarkeit)")}),(0,t.jsx)("p",{className:"text-xs text-slate-500",children:o("owner.seo.schema.faq.subtitle","Wir erkennen die Fragen & Antworten deiner Seite und machen sie fuer KI-Suchen (AI Overviews, ChatGPT, Perplexity) maschinenlesbar â du bestaetigst mit einem Klick.")})]}),"disabled"!==F&&(0,t.jsxs)("div",{className:"flex shrink-0 items-center gap-2",children:[(0,t.jsxs)("button",{type:"button",onClick:S,disabled:null!==b,className:"inline-flex items-center gap-1 rounded-lg bg-indigo-600 px-3 py-1.5 text-xs font-semibold text-white shadow-sm hover:bg-indigo-700 disabled:opacity-50",children:[(0,t.jsx)(i.A,{className:"bi ".concat("extract"===b?"bi-hourglass-split animate-spin":"bi-search"),"aria-hidden":"true"}),"none"===F?o("owner.seo.schema.faq.detect","FAQs erkennen"):o("owner.seo.schema.faq.redetect","Neu erkennen")]}),(null==(s=d.faq)?void 0:s.generateEnabled)&&(0,t.jsxs)("button",{type:"button",onClick:_,disabled:null!==b,className:"inline-flex items-center gap-1 rounded-lg border border-indigo-200 bg-white px-3 py-1.5 text-xs font-semibold text-indigo-700 shadow-sm hover:bg-indigo-50 disabled:opacity-50",children:[(0,t.jsx)(i.A,{className:"bi ".concat("generate"===b?"bi-hourglass-split animate-spin":"bi-stars"),"aria-hidden":"true"}),o("owner.seo.schema.faq.generate","FAQ-Sektion generieren")]}),("active"===F||"stale"===F)&&(0,t.jsx)("button",{type:"button",onClick:q,disabled:null!==b,className:"inline-flex items-center gap-1 rounded-lg border border-rose-200 bg-white px-3 py-1.5 text-xs font-semibold text-rose-600 shadow-sm hover:bg-rose-50 disabled:opacity-50",children:o("owner.seo.schema.faq.remove","Entfernen")})]})]}),"disabled"===F&&(0,t.jsx)("p",{className:"mt-2 text-xs text-slate-400",children:o("owner.seo.schema.faq.disabled","Noch nicht aktiviert.")}),"stale"===F&&(0,t.jsxs)("div",{className:"mt-2 rounded-lg border border-amber-200 bg-amber-50 px-3 py-2 text-xs text-amber-800",children:[(0,t.jsx)(i.A,{className:"bi bi-exclamation-triangle-fill me-1","aria-hidden":"true"}),o("owner.seo.schema.faq.stale","Deine Seite hat sich geaendert â das FAQ-Schema ist pausiert, bis du es neu bestaetigst.")]}),("active"===F||"stale"===F)&&d.faq&&(0,t.jsx)("ul",{className:"mt-2 space-y-1 text-xs text-slate-600",children:d.faq.langs.map(e=>(0,t.jsxs)("li",{children:[(0,t.jsx)(i.A,{className:"bi me-1 ".concat(e.stale?"bi-pause-circle text-amber-500":"bi-check-circle-fill text-emerald-500"),"aria-hidden":"true"}),"[",e.lang,"] ",e.count," ",o("owner.seo.schema.faq.pairs","Fragen aktiv")]},e.lang))}),k&&(0,t.jsx)("div",{className:"mt-2 rounded-lg border border-amber-200 bg-amber-50 px-3 py-2 text-xs text-amber-800",children:"no_faq_found"===k?o("owner.seo.schema.faq.noneFound","Keine FAQ-Inhalte auf deiner Seite gefunden. Fuege einen Fragen-&-Antworten-Abschnitt hinzu und versuche es erneut."):"rate_limited"===k?o("owner.seo.schema.faq.rateLimited","Zu viele Versuche â bitte kurz warten."):"generate_failed"===k?o("owner.seo.schema.faq.generateFailed","Es konnte keine FAQ-Sektion erstellt werden. Bitte spaeter erneut versuchen."):o("owner.seo.schema.faq.failed","Aktion fehlgeschlagen. Bitte erneut versuchen.")}),N&&(()=>{let e=(0,l.WQ)(N);return(0,t.jsxs)("div",{className:"mt-2 space-y-1.5",children:[e.updated.length>0&&(0,t.jsxs)("div",{className:"rounded-lg border border-emerald-200 bg-emerald-50 px-3 py-2 text-xs text-emerald-800",children:[(0,t.jsx)(i.A,{className:"bi bi-check-circle-fill me-1","aria-hidden":"true"}),o("owner.seo.schema.faq.generated","FAQ-Sektion in den Entwurf geschrieben")," ","[",e.updated.join(", "),"] â"," ",o("owner.seo.schema.faq.generatedReviewHint",'pruefe sie im Editor und veroeffentliche dann. Danach âFAQs erkennen" klicken, um das Schema zu aktivieren.')," ",(0,t.jsx)("a",{href:"/owner/raw-landing",className:"font-semibold underline",children:o("owner.seo.schema.faq.generatedReviewLink","Zum Editor")})]}),e.skipped.length>0&&(0,t.jsxs)("div",{className:"rounded-lg border border-slate-200 bg-slate-50 px-3 py-2 text-xs text-slate-600",children:["[",e.skipped.join(", "),"]"," ",o("owner.seo.schema.faq.generateSkippedDynamic","JavaScript-Seite â die FAQ-Sektion kann hier nicht automatisch eingefuegt werden.")]}),e.failed.length>0&&(0,t.jsxs)("div",{className:"rounded-lg border border-amber-200 bg-amber-50 px-3 py-2 text-xs text-amber-800",children:["[",e.failed.join(", "),"]"," ",o("owner.seo.schema.faq.generateParti
1alFailed","fuer diese Sprachen hat es nicht geklappt â bitte erneut versuchen.")]})]})})(),p&&p.length>0&&(0,t.jsx)("div",{className:"mt-3 space-y-3",children:p.map(e=>(0,t.jsxs)("div",{className:"rounded-lg border border-indigo-100 bg-indigo-50/50 p-3",children:[(0,t.jsxs)("div",{className:"mb-2 flex items-center justify-between",children:[(0,t.jsxs)("span",{className:"text-xs font-semibold text-slate-700",children:[o("owner.seo.schema.faq.foundIn","Gefunden auf deiner Seite")," [",e.lang,"]"]}),(0,t.jsxs)("button",{type:"button",onClick:()=>A(e),disabled:null!==b||0===(0,l.HB)(e,g).length,className:"inline-flex items-center gap-1 rounded-lg bg-emerald-600 px-3 py-1 text-xs font-semibold text-white shadow-sm hover:bg-emerald-700 disabled:opacity-50",children:[(0,t.jsx)(i.A,{className:"bi ".concat(b==="accept:".concat(e.lang)?"bi-hourglass-split animate-spin":"bi-check-lg"),"aria-hidden":"true"}),o("owner.seo.schema.faq.activate","Aktivieren")," (",(0,l.HB)(e,g).length,")"]})]}),(0,t.jsx)("ul",{className:"space-y-1.5",children:e.pairs.map((s,a)=>{let n=(0,l.RC)(e.lang,a);return(0,t.jsxs)("li",{className:"flex items-start gap-2 text-xs",children:[(0,t.jsx)("input",{type:"checkbox",checked:g.has(n),onChange:e=>{x(s=>{let a=new Set(s);return e.target.checked?a.add(n):a.delete(n),a})},className:"mt-0.5"}),(0,t.jsxs)("span",{className:"min-w-0",children:[(0,t.jsx)("span",{className:"font-medium text-slate-800",children:s.question}),(0,t.jsx)("br",{}),(0,t.jsx)("span",{className:"text-slate-500",children:s.answer})]})]},n)})})]},e.lang))})]})]})}function c(e){let{label:s,hint:a,headerOk:n=!0,children:r}=e;return(0,t.jsxs)("li",{children:[(0,t.jsxs)("div",{className:"flex items-start gap-2",children:[(0,t.jsx)(i.A,{className:"bi mt-0.5 ".concat(n?"bi-check-circle-fill text-emerald-500":"bi-dash-circle text-slate-400"),"aria-hidden":"true"}),(0,t.jsxs)("div",{className:"min-w-0",children:[(0,t.jsx)("span",{className:"font-medium text-slate-800",children:s})," ",(0,t.jsx)("span",{className:"text-xs text-slate-500",children:a})]})]}),r&&(0,t.jsx)("ul",{className:"ms-6 mt-1.5 space-y-1",children:r})]})}let d={name:["owner.seo.schema.fact.name","Name"],logo:["owner.seo.schema.fact.logo","Logo"],links:["owner.seo.schema.fact.links","Verweise (sameAs)"],legalName:["owner.seo.schema.fact.legalName","Offizieller Name (Impressum)"],photo:["owner.seo.schema.fact.photo","Foto (Portrait / Gesch\xe4ft)"],topics:["owner.seo.schema.fact.topics","Themen (knowsAbout)"],address:["owner.seo.schema.fact.address","Adresse"],phone:["owner.seo.schema.fact.phone","Telefon"],openingHours:["owner.seo.schema.fact.openingHours","\xd6ffnungszeiten"],email:["owner.seo.schema.fact.email","\xd6ffentliche E-Mail"],priceRange:["owner.seo.schema.fact.priceRange","Preisspanne"],areaServed:["owner.seo.schema.fact.areaServed","Einzugsgebiet"],geo:["owner.seo.schema.fact.geo","Koordinaten (Karte)"]},m={name_placeholder:["owner.seo.schema.warn.namePlaceholder",'Dein Eintrag hei\xdft noch âWebsite" â hinterlege den offiziellen Namen aus dem Impressum, sonst serviert dein Schema einen Platzhalter.'],street_contains_postal_code:["owner.seo.schema.warn.streetHasPostal","Die Stra\xdfe enth\xe4lt die PLZ â sie steht schon im eigenen Feld und w\xfcrde in der Adresse doppelt erscheinen."],street_contains_city:["owner.seo.schema.warn.streetHasCity","Die Stra\xdfe enth\xe4lt den Ort â er steht schon im eigenen Feld und w\xfcrde in der Adresse doppelt erscheinen."],street_abbreviated:["owner.seo.schema.warn.streetAbbrev",'Die Stra\xdfe ist abgek\xfcrzt (ââ¦str.") â ausgeschrieben (ââ¦stra\xdfe") bleibt sie konsistent mit deinem Google-Business-Profil (NAP).'],street_lowercase:["owner.seo.schema.warn.streetLowercase","Die Stra\xdfe beginnt kleingeschrieben â mit Gro\xdfbuchstaben bleibt die Adresse konsistent mit deinem Google-Business-Profil (NAP)."]};function h(e){let{fact:s,t:a}=e,[n,r]=d[s.key];return(0,t.jsxs)("li",{className:"flex items-center gap-1.5 text-xs",children:[(0,t.jsx)(i.A,{className:"bi ".concat(s.present?"bi-check-circle-fill text-emerald-500":"bi-plus-circle text-amber-500"),"aria-hidden":"true"}),(0,t.jsx)("span",{className:s.present?"text-slate-600":"text-amber-700",children:a(n,r)}),(0,t.jsx)("a",{href:s.href,className:"ms-auto shrink-0 text-indigo-600 hover:underline",children:s.present?a("owner.seo.schema.edit","Bearbeiten"):a("owner.seo.schema.add","Hinzufuegen")})]})}},50921:(e,s,a)=>{a.d(s,{HB:()=>u,J0:()=>r,RC:()=>h,U3:()=>i,WP:()=>c,WQ:()=>p,d:()=>l,oY:()=>m,ps:()=>d});let t="/owner/settings?tab=general",n="/owner/settings?tab=address",i={name:"".concat(t,"#section-name"),logo:"".concat(t,"#section-logo"),links:"".concat(t,"#section-brand"),legalName:"".concat(t,"#section-legal-name"),photo:"".concat(t,"#section-business-photo"),topics:"".concat(t,"#section-topics"),address:"".concat(n,"#section-address"),phone:"".concat(n,"#section-contact"),openingHours:"".concat(n,"#section-opening-hours"),email:"".concat(n,"#section-public-email"),priceRange:"".concat(n,"#section-price-range"),areaServed:"".concat(n,"#section-area-served"),geo:"".concat(n,"#section-map")};function r(e){let s=null==e?void 0:e.orgFacts;return[{key:"name",present:!0,href:i.name},{key:"legalName",present:!!(null==s?void 0:s.legalName),href:i.legalName},{key:"logo",present:!!(null==s?void 0:s.logo),href:i.logo},{key:"photo",present:!!(null==s?void 0:s.photo),href:i.photo},{key:"links",present:!!(null==s?void 0:s.links),href:i.links},{key:"topics",present:!!(null==s?void 0:s.topics),href:i.topics}]}function l(e){let s=null==e?void 0:e.localBusinessFacts;return[{key:"address",present:!!(null==s?void 0:s.address),href:i.address},{key:"phone",present:!!(null==s?void 0:s.phone),href:i.phone},{key:"email",present:!!(null==s?void 0:s.email),href:i.email},{key:"openingHours",present:!!(null==s?void 0:s.openingHours),href:i.openingHours},{key:"priceRange",present:!!(null==s?void 0:s.priceRange),href:i.priceRange},{key:"areaServed",present:!!(null==s?void 0:s.areaServed),href:i.areaServed},{key:"geo",present:!!(null==s?void 0:s.geo),href:i.geo}]}let o=["name_placeholder","street_contains_postal_code","street_contains_city","street_abbreviated","street_lowercase"];function c(e){return"name_placeholder"===e?i.legalName:i.address}function d(e){var s;let a=null!=(s=null==e?void 0:e.warnings)?s:[];return o.filter(e=>a.includes(e))}function m(e){var s,a;if(!(null==e||null==(s=e.faq)?void 0:s.enabled))return"disabled";let t=null!=(a=e.faq.langs)?a:[];return 0===t.length?"none":t.some(e=>e.stale)?"stale":"active"}function h(e,s){return"".concat(e,":").concat(s)}function u(e,s){return e.pairs.filter((a,t)=>s.has(h(e.lang,t)))}function p(e){let s={updated:[],skipped:[],failed:[]};for(let a of null!=e?e:[])(null==a?void 0:a.lang)&&(a.updated?s.updated.push(a.lang):"skipped_dynamic"===a.status?s.skipped.push(a.lang):s.failed.push(a.lang));return s}}}]);
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.