const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/Panel-BIQwFCZk.js","assets/VeliOnayBekliyor-BYRq6nyX.js","assets/hesap-D1V5WB0x.css"])))=>i.map(i=>d[i]);
import{t,af as le,ag as Le,ah as Aa,ai as Ri,aj as Bn,r as u,j as e,L as _,ak as Ne,al as Fi,am as I,an as Li,ao as ft,ap as He,aq as Tt,ar as me,as as ea,N as Ii,a1 as Ca,at as ha,au as Rn,av as Et,a as B,p as ze,aw as oa,ax as yt,ay as $i,az as pa,m as Ge,B as Ra,aA as Fn,a6 as ca,aB as Ki,aC as Wa,aD as Di,aE as Oi,z as pe,aF as Pa,b as ma,aa as Mi,aG as an,aH as qi,X as Hi,a0 as tn,J as ta,a5 as Gi,aI as Vi,l as tt,$ as Za,aJ as Yi,aK as W,aL as ra,aM as Ui,aN as Wi,aO as Zi,I as Fa,R as ka,aP as Ct,aQ as Ln,H as In,aR as Ta,aS as Qi,aT as Ji,aU as Xi,aV as es,aW as nn,aX as as,aY as $n,aZ as Kn,a_ as Dn,a$ as ts,b0 as ns,b1 as Pt,b2 as is,b3 as Qa,b4 as ss,b5 as On,W as rs,b6 as ls,b7 as Mn,b8 as os,b9 as qn,ba as sn,bb as rn,bc as ln,bd as on,be as cs,bf as ds,bg as us,bh as ms,bi as hs,bj as Ga,bk as xt,bl as ps,bm as bt,bn as ks,bo as ht,bp as Va,bq as Hn,br as gs,bs as cn,bt as Na,bu as fs,bv as ys,bw as xs,bx as bs,by as js,bz as vs,bA as Ns,bB as zs,bC as Ss,bD as ws,bE as _s,h as As,A as Ts,bF as Es,bG as Cs,bH as Ps,bI as Bs,bJ as Rs,f as Fs,a2 as Ls,a3 as oe,a4 as Je,bK as Is,a9 as $s,a8 as Ks,ab as Ds,ac as Os,ad as Ms}from"./VeliOnayBekliyor-BYRq6nyX.js";const qs={};function Bt(a,n){const i=typeof a.metadata?.render_note=="string"?a.metadata.render_note.trim():"",r=l=>({src:l,example:!!i,source:"",credit:"",label:i&&le(i)}),s=n&&a.metadata?.variant_images?.[n];if(typeof s=="string"&&s)return r(s);if(a.thumbnail)return r(a.thumbnail);const o=typeof window<"u"&&["dev.probotstudio.com","dev-lms.probotstudio.com","dev-pay.probotstudio.com","dev-fast.probotstudio.com","staging.probotstudio.com"].includes(window.location.hostname)?qs[a.handle]:void 0;return o?{...o,label:o.label??t("Örnek görsel"),example:!0}:{src:null,example:!1,source:"",credit:"",label:""}}function Ba({p:a}){const n=Bt(a),i=Le(a),r=He(),s=Aa(a)[0]?.sku??"",o=Ri(a),l=Bn(a),[c,d]=u.useState(!1);return e.jsxs(_,{className:"pcard",to:`/urun/${a.handle}`,children:[e.jsx("div",{className:"pcard-media",children:n.src&&!c?e.jsx("img",{src:n.src,alt:n.example?t("{title}: örnek görsel",{title:Ne(a.title)}):Ne(a.title),loading:"lazy",onError:()=>d(!0)}):e.jsx("span",{className:"pcard-ic",children:a.metadata?.icon??"📦"})}),e.jsxs("div",{className:"pcard-body",children:[typeof a.metadata?.marka_ad=="string"&&e.jsx("span",{className:"pcard-marka",children:a.metadata.marka_ad}),e.jsx("h3",{children:Fi(a)}),l&&e.jsx("span",{className:`ftcRozet${l.uyumlu?" ok":""}`,children:l.etiket}),n.example&&!c&&e.jsx("small",{className:"muted",children:n.label}),e.jsx("span",{className:"mono sku",children:s}),!r&&i!=null&&e.jsxs("span",{className:"pprice",children:[I(i),Li(a)?t(" ve üzeri"):""]}),o&&e.jsx("span",{className:"stokYok small",children:ft(a)})]})]})}function Gn(a){const n=u.useRef(null);return u.useEffect(()=>{const i=n.current,r=i?.querySelector(".on, .ic");if(!i||!r||i.scrollWidth<=i.clientWidth)return;const s=r.getBoundingClientRect().left-i.getBoundingClientRect().left+i.scrollLeft;i.scrollLeft=Math.max(0,s-16)},[a]),n}function Vn({ozet:a,aktif:n,yol:i=(s,o)=>s?ea(s,o):"/urunler",onSec:r}){const s=Gn(`${n.yer}/${n.alt}/${a?1:0}`),o=c=>e.jsx("span",{children:c??""}),l=(c,d=!1)=>c?"on":d?"ic":void 0;return e.jsxs("ul",{className:"katAgaci",ref:s,children:[e.jsx("li",{children:e.jsx(_,{to:"/",className:l(n.yer==="vitrin"),children:t("Vitrin")})}),e.jsx("li",{children:e.jsxs(_,{className:l(n.yer==="tum"),to:i("",""),onClick:r,children:[t("Tüm ürünler")," ",o(a?.tum)]})}),e.jsx("li",{children:e.jsxs(_,{className:l(n.yer==="kitler"),to:i("kitler",""),onClick:r,children:[t("Kitler")," ",o(a?.kitler)]})}),Tt.map(c=>{const d=a?.aileler[c];if(a&&!d?.n&&n.yer!==c)return null;const m=n.yer===c;return[e.jsx("li",{className:"aileSatir",children:e.jsxs(_,{className:l(m&&!n.alt,m),to:i(c,""),onClick:r,children:[d?me(d.short):c==="mekanik"?t("Mekanik"):t("Elektronik")," ",o(d?.n)]})},c),...(d?.altlar??[]).map(f=>e.jsx("li",{className:"altSatir",children:e.jsxs(_,{className:l(m&&n.alt===f.key),to:i(c,f.key),onClick:r,children:[me(f.short)," ",o(f.n)]})},`${c}/${f.key}`))]})]})}const Yn="https://probotstudio.com",Un="/shop",jt="/assets/og-kart.jpg",Hs="/shop/favicon.svg";function nt(a){return/^https?:\/\//i.test(a)?a:`${Yn}${a.startsWith("/")?a:`${Un}/${a}`}`}function da(a="/"){const n=a.startsWith("/")?a:`/${a}`;return nt(`${Un}${n}`)}function vt(a,n=150){const i=(a??"").replace(/\s+/g," ").trim();return i.length<=n?i:`${i.slice(0,n-1).trimEnd()}…`}function Gs(){return{"@context":"https://schema.org","@type":"Organization",name:"Probot Studio",url:Yn,logo:nt(Hs)}}function he({title:a,description:n,path:i="/",image:r=jt,type:s="website",noindex:o=!1,jsonLd:l}){const c=da(i),d=nt(r||jt),m=l?Array.isArray(l)?l:[l]:[];return u.useEffect(()=>{document.querySelectorAll("title[data-statik]").forEach(f=>f.remove())},[]),e.jsxs(Ii,{prioritizeSeoTags:!0,children:[e.jsx("title",{children:a}),e.jsx("meta",{name:"description",content:n}),o&&e.jsx("meta",{name:"robots",content:"noindex,nofollow"}),e.jsx("link",{rel:"canonical",href:c}),e.jsx("meta",{property:"og:site_name",content:"Probot Studio"}),e.jsx("meta",{property:"og:title",content:a}),e.jsx("meta",{property:"og:description",content:n}),e.jsx("meta",{property:"og:type",content:s}),e.jsx("meta",{property:"og:url",content:c}),e.jsx("meta",{property:"og:image",content:d}),e.jsx("meta",{name:"twitter:card",content:"summary_large_image"}),e.jsx("meta",{name:"twitter:title",content:a}),e.jsx("meta",{name:"twitter:description",content:n}),e.jsx("meta",{name:"twitter:image",content:d}),m.map((f,g)=>e.jsx("script",{type:"application/ld+json",children:JSON.stringify(f)},g))]})}function it(){return Ca()===void 0?null:e.jsx("p",{className:"muted small",children:t("Yalnız Türkiye içine satış ve gönderim yapıyoruz; fiyatlar Türk lirası ve KDV dahil.")})}const Vs=12;function Ys(){const[a,n]=u.useState(null),[i,r]=u.useState(!1),s=e.jsx(he,{title:t("Mağaza - Probot Studio | Robotik kitler ve parçalar"),description:t("Probot Studio mağazasında robotik kitleri, plastik parçaları, elektronik ve mekanik ürünleri keşfet."),path:"/",jsonLd:Gs()});if(u.useEffect(()=>{ha().then(n).catch(()=>r(!0))},[]),i)return e.jsxs(e.Fragment,{children:[s,e.jsx("section",{className:"vtHero",children:e.jsx("div",{className:"vtIn",children:e.jsxs("div",{children:[e.jsx("h1",{children:t("Mağaza şu an uyanıyor…")}),e.jsx("p",{children:t("Birazdan tekrar dene.")})]})})})]});const o=a??[],l=o.filter(k=>k.metadata?.kind==="kit").sort((k,h)=>+!!h.metadata?.hero-+!!k.metadata?.hero||(Le(k)??0)-(Le(h)??0)),c=Rn(o),d=k=>o.filter(h=>yt(h)===k).sort((h,v)=>+(v.handle==="hex-mil")-+(h.handle==="hex-mil")),m=Tt.map(k=>({key:k,tanim:Et[k],ozet:c.aileler[k],items:d(k)})).filter(k=>k.items.length),f=(k,h)=>o.filter(v=>yt(v)===k&&$i(v)===h),g=k=>k.map(h=>Bt(h).src).find(Boolean)??void 0,x=e.jsx("svg",{viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:e.jsx("path",{d:"M5 12h14M13 6l6 6-6 6",stroke:"currentColor",strokeWidth:"2.4",strokeLinecap:"round",strokeLinejoin:"round"})});return e.jsxs("div",{className:"allWrap",children:[s,e.jsxs("aside",{className:"allSide vtSide",children:[e.jsx("p",{className:"sideLabel",children:t("Kategoriler")}),e.jsx(Vn,{ozet:a===null?null:c,aktif:{yer:"vitrin",alt:""}})]}),e.jsxs("div",{className:"allMain",children:[e.jsx("section",{className:"vtHero",children:e.jsxs("div",{className:"vtIn",children:[e.jsxs("div",{children:[e.jsx("span",{className:"vtTag",children:t("FTC · BIOBUZZ 2026-27 · Ön talep açık")}),e.jsx("h1",{children:B("Sezona {hl} ile başla.",{hl:e.jsx("span",{className:"hl",children:"Starter Bot"})})}),e.jsx("p",{children:t("FTC 2026-27 BIOBUZZ için başlangıç robotu. 4 motorla çalışır, Expansion Hub gerekmez. Motorlar ve elektronik dahil değildir. Türkiye'de üretiliyor.")}),e.jsx(it,{}),e.jsxs("div",{className:"vtRow",children:[e.jsx(_,{className:"vbtn p",to:"/urun/ftc-biobuzz-starter-bot",children:B("Starter Bot'u incele {arrow}",{arrow:x})}),e.jsx(_,{className:"vbtn l",to:"/urunler",children:t("Tüm parçalar")})]})]}),e.jsxs(_,{className:"vtFeat",to:"/urun/ftc-biobuzz-starter-bot",children:[e.jsx("span",{className:"sbBadge",children:t("Ön talep açık")}),e.jsx("img",{src:"/shop/urunler/starter-bot/sb-izo-on.webp",alt:"Starter Bot"}),e.jsxs("span",{className:"vtFeatCap",children:[e.jsxs("span",{className:"vtFeatT",children:[e.jsx("b",{children:"Starter Bot"}),e.jsx("small",{children:"FTC BIOBUZZ 2026-27"})]}),e.jsx("span",{children:B("İncele {arrow}",{arrow:x})})]})]})]})}),e.jsxs("div",{className:"vtBody",children:[a===null&&e.jsx("p",{className:"muted",children:t("Katalog yükleniyor…")}),m.length>0&&e.jsxs("section",{className:"vtSec",children:[e.jsxs("div",{className:"vtHead",children:[e.jsx("h2",{children:t("Kategoriler")}),e.jsx(_,{className:"coll-more",to:"/urunler",children:t("Tüm ürünler ({n}) →",{n:o.length})})]}),e.jsx("div",{className:"vtAileler",children:m.map(k=>e.jsxs("div",{className:"vtAile",children:[e.jsxs("div",{className:"vtAileHead",children:[e.jsxs("h3",{children:[e.jsx(_,{to:ea(k.key),children:me(k.tanim.short)})," ",e.jsx("span",{children:ze("{n} ürün",k.ozet.n)})]}),e.jsx(_,{className:"coll-more",to:ea(k.key),children:t("Tümünü gör →")})]}),e.jsx("div",{className:"vtCats vtAileAlt",children:k.ozet.altlar.map(h=>{const v=g(f(k.key,h.key));return e.jsxs(_,{className:"vtCat",to:ea(k.key,h.key),children:[e.jsx("span",{className:"vtCatIm",children:v&&e.jsx("img",{src:v,alt:"",loading:"lazy"})}),e.jsx("b",{children:me(h.short)}),e.jsx("span",{children:ze("{n} ürün",h.n)})]},h.key)})})]},k.key))})]}),l.length>1&&e.jsxs("section",{className:"vtSec",children:[e.jsxs("div",{className:"vtHead",children:[e.jsx("h2",{children:t("Kitler ve şasiler")}),e.jsx(_,{className:"coll-more",to:oa("kitler"),children:t("Tümünü gör ({n}) →",{n:l.length})})]}),e.jsx("div",{className:"parts vtParts",children:l.map(k=>e.jsx(Ba,{p:k},k.id))})]}),m.map(k=>e.jsxs("section",{className:"vtSec",children:[e.jsxs("div",{className:"vtHead",children:[e.jsxs("div",{children:[e.jsx("h2",{children:me(k.tanim.title)}),e.jsx("p",{children:me(k.tanim.desc)})]}),e.jsx(_,{className:"coll-more",to:ea(k.key),children:t("Tümünü gör ({n}) →",{n:k.items.length})})]}),e.jsx("div",{className:"parts vtParts",children:k.items.slice(0,Vs).map(h=>e.jsx(Ba,{p:h},h.id))})]},k.key))]})]})]})}const dn=[{key:"onerilen",get label(){return t("Önerilen")}},{key:"fiyat-artan",get label(){return t("Fiyat ↑")}},{key:"fiyat-azalan",get label(){return t("Fiyat ↓")}},{key:"en-yeni",get label(){return t("En yeni")}}],Nt=a=>a.toLocaleLowerCase("tr").replaceAll("ı","i").replaceAll("ş","s").replaceAll("ğ","g").replaceAll("ü","u").replaceAll("ö","o").replaceAll("ç","c"),Us={disli:["gear"],gear:["disli"],teker:["wheel","teker"],tekerlek:["wheel","teker"],wheel:["teker"],kasnak:["pulley","kasnak"],pulley:["kasnak"],kayis:["htd","belt"],mil:["shaft","axle","hex"],aks:["axle","shaft"],shaft:["mil"],gobek:["hub"],hub:["hub","gobek"],bilezik:["collar"],collar:["bilezik"],vida:["screw","civata","bolt"],civata:["bolt","screw","vida"],somun:["nut"],nut:["somun"],rulman:["bearing","rulman"],bearing:["rulman"],insert:["insert","helezon"],motor:["motor","rs775"],surucu:["driver","bts"],driver:["surucu"],servo:["servo","mg995"],pil:["battery","pil","3s"],batarya:["battery","pil","3s"],sarj:["charge","sarj","usb"],sensor:["sensor","imu","mpu"],regulator:["regulator","mp1584"],kablo:["cable","jumper","kablo"],adaptor:["adapter","adaptor"],plaka:["plate","plaka"],profil:["profile","profil"]},Ws=a=>{const n=Nt(a).trim();if(!n)return[];const i=n.split(/\s+/).filter(Boolean),r=new Set([n,...i]);for(const s of[n,...i])for(const o of Us[s]??[])r.add(Nt(o));return[...r]},un=a=>{if(!a.trim())return null;const n=Number(a);return Number.isFinite(n)&&n>=0?n:null},mn=a=>{const n=a.created_at,i=n?Date.parse(n):NaN;return Number.isFinite(i)?i:0};function ua(a,n){const i=new URLSearchParams(n);i.delete("k"),i.delete("alt");const r=i.toString();return(a?oa(a):"/urunler")+(r?`?${r}`:"")}function za(a,n,i){if(a!=="elektronik")return ua(a==="mekanik"&&i?i:a,n);const[r,s=""]=ua(a,n).split("?"),o=new URLSearchParams(s);i&&o.set("alt",i);const l=o.toString();return r+(l?`?${l}`:"")}function hn(){const{kategori:a}=pa(),[n]=Ge(),{pathname:i}=Ra(),r=n.get("k");if(a!==void 0){if(!Fn(a))return e.jsx(ca,{to:ua("",n),replace:!0});const s=Ki(a,n.get("alt")??"");return s?e.jsx(ca,{to:ua(s.slice(10),n),replace:!0}):e.jsx(pn,{k:a})}return r&&i.endsWith("/urunler")?e.jsx(ca,{to:ua(Wa(r)?r:"",n),replace:!0}):e.jsx(pn,{k:""})}function pn({k:a}){const n=He(),[i,r]=u.useState(null),[s,o]=u.useState(!1),[l,c]=Ge(),d=l.get("q")??"",m=l.get("sirala")??"onerilen",f=n?dn.filter(N=>N.key!=="fiyat-artan"&&N.key!=="fiyat-azalan"):dn,g=f.some(N=>N.key===m)?m:"onerilen",x=l.get("min")??"",k=l.get("max")??"",h=n?null:un(x),v=n?null:un(k),z=!n&&l.get("fiyat")==="belli",j=a==="elektronik"?l.get("alt")??"":"",b=u.useMemo(()=>a?Fn(a,j):null,[a,j]),C=b?.alt??"";u.useEffect(()=>{ha().then(r).catch(()=>r([]))},[]);const S=i??[],L=u.useMemo(()=>Rn(S,b),[S,b]),K=u.useMemo(()=>{let N=S;if(d){const R=Ws(d);N=N.filter(D=>{const Y=Di(D).map(Nt);return R.some(Q=>Y.some(re=>re.includes(Q)))})}return b&&(N=N.filter(R=>Oi(R,b))),N},[S,d,b]),G=b&&b.aile!=="kitler"?L.aileler[b.aile]:null,O=G?.altlar??[],se=O.find(N=>N.key===C)?.title??"",ae=Gn(`${a}/${C}/${O.length}`),te=u.useMemo(()=>{let N=K;return z&&(N=N.filter(R=>Le(R)!==null)),h!==null&&(N=N.filter(R=>{const D=Le(R);return D!==null&&D>=h})),v!==null&&(N=N.filter(R=>{const D=Le(R);return D!==null&&D<=v})),N},[K,z,h,v]),ne=u.useMemo(()=>{const N=new Map(S.map((D,Y)=>[D.id,Y])),R=te.every(D=>D.metadata?.group==="hub-mil");return[...te].sort((D,Y)=>{if(g==="onerilen"&&R){const Q=+(Y.handle==="hex-mil")-+(D.handle==="hex-mil");if(Q)return Q}if(g==="fiyat-artan"||g==="fiyat-azalan"){const Q=Le(D),re=Le(Y);return Q===null&&re===null?(N.get(D.id)??0)-(N.get(Y.id)??0):Q===null?1:re===null?-1:g==="fiyat-artan"?Q-re:re-Q}if(g==="en-yeni"){const Q=mn(Y)-mn(D);if(Q!==0)return Q}return(N.get(D.id)??0)-(N.get(Y.id)??0)})},[S,te,g]),M=u.useRef("");u.useEffect(()=>{i===null||!d||M.current!==d&&(M.current=d,pe("arama_yapildi",{q:d,sonuc_sayisi:ne.length}))},[d,i,ne]);const X=a?Wa(a):null,F=a==="kitler"?null:X,V=b?[{title:b.aile==="kitler"?"Kitler":Et[b.aile].short,to:za(b.aile,new URLSearchParams,"")},...C?[{title:se||F?.title||C,to:""}]:[]]:[],ue=X?oa(a):"/urunler",ge=d?t('"{q}" araması - Probot Studio',{q:d}):a==="kitler"?t("Kitler - Probot Studio"):F?`${me(F.title)} - Probot Studio`:t("Tüm ürünler - Probot Studio"),Te=d?t('Probot Studio mağazasında "{q}" arama sonuçları.',{q:d}):a==="kitler"?t("Probot Studio robotik kitlerini incele; yerli üretim, Türkçe destek ve modüler parçalar."):F?me(F.desc):t("Probot Studio mağazasında robotik kitler, plastik parçalar, elektronik ve mekanik ürünler."),J=b&&!d?{"@context":"https://schema.org","@type":"BreadcrumbList",itemListElement:[{name:"Mağaza",path:"/"},...V.filter((N,R)=>R===0||b.aile==="mekanik").map((N,R)=>({name:N.title,path:R===0?za(b.aile,new URLSearchParams,""):ue}))].map((N,R)=>({"@type":"ListItem",position:R+1,name:N.name,item:da(N.path)}))}:void 0,U=g!=="onerilen"||!n&&(x!==""||k!==""||z),ie=(N,R,D="")=>{const Y=new URLSearchParams(l);R&&R!==D?Y.set(N,R):Y.delete(N),c(Y,{replace:!0})},Re=()=>{const N=new URLSearchParams(l);for(const R of["sirala","min","max","fiyat","malzeme"])N.delete(R);c(N,{replace:!0})},be=(()=>{const N=new URLSearchParams(l);for(const R of["sirala","min","max","fiyat","malzeme"])N.delete(R);return ua(a,N)})();return e.jsxs("div",{className:"allWrap",children:[e.jsxs("button",{type:"button",className:`filterToggle${s?" on":""}`,"aria-expanded":s,onClick:()=>o(N=>!N),children:[e.jsxs("span",{children:[t("⚙️ Kategoriler ve filtreler"),U||a?" ·":""]}),e.jsx("span",{"aria-hidden":!0,children:s?"▲":"▼"})]}),e.jsx(he,{title:ge,description:Te,path:ue,jsonLd:J}),e.jsxs("aside",{className:`allSide${s?" open":""}`,children:[e.jsx("p",{className:"sideLabel",children:t("Kategoriler")}),e.jsx(Vn,{ozet:i===null?null:L,aktif:{yer:b?b.aile:"tum",alt:C},yol:(N,R)=>za(N,l,R),onSec:()=>o(!1)}),!n&&e.jsxs("div",{className:"filterBlock",children:[e.jsx("p",{className:"sideLabel",children:t("Filtreler")}),e.jsxs("label",{children:[e.jsx("span",{children:t("Fiyat aralığı")}),e.jsxs("div",{className:"priceInputs",children:[e.jsx("input",{inputMode:"numeric",name:"min",placeholder:t("Min"),value:x,onChange:N=>ie("min",N.currentTarget.value)}),e.jsx("input",{inputMode:"numeric",name:"max",placeholder:t("Max"),value:k,onChange:N=>ie("max",N.currentTarget.value)})]})]}),e.jsxs("label",{className:"checkLine",children:[e.jsx("input",{type:"checkbox",checked:z,onChange:N=>ie("fiyat",N.currentTarget.checked?"belli":"")}),e.jsx("span",{children:t("Fiyatı belli olanlar")})]}),U&&e.jsx("button",{className:"filterClear",type:"button",onClick:Re,children:t("Filtreleri temizle")})]})]}),e.jsxs("div",{className:"allMain",children:[e.jsxs("div",{className:"allHead",children:[e.jsxs("div",{children:[V.length>0&&e.jsxs("nav",{className:"crumbs katCrumbs","aria-label":t("Konum"),children:[e.jsx(_,{to:"/",children:t("Mağaza")}),V.map((N,R)=>e.jsxs("span",{className:"katCrumb",children:[e.jsx("span",{"aria-hidden":!0,children:"›"}),N.to&&R<V.length-1?e.jsx(_,{to:N.to,children:me(N.title)}):e.jsx("b",{children:me(N.title)})]},R))]}),e.jsxs("div",{className:"allTitleRow",children:[e.jsx("h1",{children:a==="kitler"?t("Kitler"):me(se||F?.title||"")||t("Tüm ürünler")}),e.jsx("span",{className:"catCount",children:ze("{n} ürün",ne.length)})]}),e.jsx(it,{}),U&&e.jsx("p",{className:"muted small",children:ze("{n} ürün içinden filtrelendi.",K.length)}),G&&(O.length>1||C)&&e.jsxs("nav",{className:"altGruplar","aria-label":t("Alt gruplar"),ref:ae,children:[e.jsxs(_,{className:`altChip${C?"":" on"}`,to:za(G.key,l,""),children:[t("Tümü")," ",e.jsx("span",{children:G.n})]}),O.map(N=>e.jsxs(_,{className:`altChip${C===N.key?" on":""}`,to:za(G.key,l,N.key),children:[me(N.short)," ",e.jsx("span",{children:N.n})]},N.key))]}),!d&&X?.intro&&e.jsxs("div",{className:"katGiris",children:[X.intro.map((N,R)=>e.jsx("p",{children:me(N)},R)),X.ilgili&&X.ilgili.length>0&&e.jsxs("p",{className:"katIlgili",children:[t("İlgili kategoriler:")," ",X.ilgili.map((N,R)=>e.jsxs("span",{children:[R>0&&", ",e.jsx(_,{to:oa(N),children:me(Wa(N)?.title??N)})]},N))]})]}),d&&e.jsx("p",{className:"muted",children:B('"{q}" için sonuçlar - {link}',{q:d,link:e.jsx(_,{to:a?oa(a):"/urunler",children:t("aramayı temizle")})})})]}),e.jsxs("label",{className:"sortBox",children:[e.jsx("span",{children:t("Sırala")}),e.jsx("select",{value:g,onChange:N=>ie("sirala",N.currentTarget.value,"onerilen"),children:f.map(N=>e.jsx("option",{value:N.key,children:N.label},N.key))})]})]}),i===null?e.jsx("p",{className:"muted",children:t("Yükleniyor…")}):ne.length===0?e.jsxs("div",{className:"noRes",children:[e.jsx("p",{children:d?B('{q} için sonuç yok. Farklı yaz - ör. "dişli", "motor", "PRB-3D".',{q:e.jsxs("b",{children:['"',d,'"']})}):t("Bu filtrelere uygun ürün yok.")}),e.jsxs("div",{className:"row",children:[U&&e.jsx(_,{className:"btn g",to:be,children:t("Filtreleri temizle")}),e.jsx(_,{className:"btn g",to:"/urunler",children:t("Tüm ürünlere dön")})]})]}):e.jsx("div",{className:"parts",children:ne.map(N=>e.jsx(Ba,{p:N},N.id))})]})]})}function Zs(a){return[a.name??a.street,a.district,a.city??a.county,a.state].filter(Boolean).join(", ")}function Wn({onPick:a,defaultValue:n=""}){const[i,r]=u.useState(n),[s,o]=u.useState([]),[l,c]=u.useState(!1),d=u.useRef(void 0),m=u.useRef(null);u.useEffect(()=>{const x=k=>{m.current?.contains(k.target)||c(!1)};return document.addEventListener("mousedown",x),()=>document.removeEventListener("mousedown",x)},[]);function f(x){if(r(x),clearTimeout(d.current),x.trim().length<3){o([]),c(!1);return}d.current=setTimeout(async()=>{try{const k=await fetch(`/geo/api/?q=${encodeURIComponent(x+" Türkiye")}&limit=6`);if(!k.ok)return;const v=(await k.json()).features.filter(z=>(z.properties.country??"").toLowerCase().includes("t"));o(v.slice(0,6)),c(v.length>0)}catch{}},350)}function g(x){const k=x.properties,h=[k.street??k.name,k.housenumber].filter(Boolean).join(" No:"),v=[k.district,h].filter(Boolean).join(", "),z={address_1:v,city:k.city??k.county??"",province:k.state??"",postal_code:k.postcode??""};r(v),c(!1),a(z)}return e.jsxs("div",{className:"acBox",ref:m,children:[e.jsx("input",{name:"address_1","aria-label":t("Açık adres"),placeholder:t("Açık adres - yazdıkça öneri çıkar (mahalle, sokak, no)"),required:!0,autoComplete:"off",value:i,onChange:x=>f(x.target.value),onFocus:()=>s.length&&c(!0)}),l&&e.jsxs("ul",{className:"acList ph-sensitive",role:"listbox",children:[s.map((x,k)=>e.jsx("li",{children:e.jsx("button",{type:"button",onClick:()=>g(x),children:Zs(x.properties)})},k)),e.jsx("li",{className:"acSrc",children:t("Öneriler: OpenStreetMap")})]})]})}function Zn({t:a,tutar:n}){const[i,r]=u.useState(""),s=Pa(new Date(a.son_odeme),{dateStyle:"long",timeStyle:"short"});function o(l,c){navigator.clipboard?.writeText(c).then(()=>r(l),()=>r(""))}return e.jsxs("div",{className:"havaleKutu","data-testid":"havale-talimat",children:[a.deneme&&e.jsx("p",{className:"formErr",role:"note",children:t("DENEME ortamı: bu IBAN gerçek değil, para gönderme.")}),e.jsxs("dl",{children:[e.jsxs("div",{children:[e.jsx("dt",{children:t("Tutar")}),e.jsx("dd",{children:e.jsx("b",{children:I(n)})})]}),e.jsxs("div",{children:[e.jsx("dt",{children:t("IBAN")}),e.jsxs("dd",{children:[e.jsx("span",{className:"mono","data-testid":"havale-iban",children:a.iban})," ",e.jsx("button",{type:"button",className:"linkBtn",onClick:()=>o("iban",a.iban.replace(/\s+/g,"")),children:i==="iban"?t("Kopyalandı"):t("Kopyala")})]})]}),e.jsxs("div",{children:[e.jsx("dt",{children:t("Alıcı")}),e.jsx("dd",{children:a.alici})]}),a.banka&&e.jsxs("div",{children:[e.jsx("dt",{children:t("Banka")}),e.jsx("dd",{children:a.banka})]}),e.jsxs("div",{children:[e.jsx("dt",{children:ma("bank-reference","Açıklama")}),e.jsxs("dd",{children:[e.jsx("b",{className:"mono","data-testid":"havale-aciklama",children:a.aciklama})," ",e.jsx("button",{type:"button",className:"linkBtn",onClick:()=>o("aciklama",a.aciklama),children:i==="aciklama"?t("Kopyalandı"):t("Kopyala")})]})]}),e.jsxs("div",{children:[e.jsx("dt",{children:t("Son ödeme")}),e.jsx("dd",{children:s})]})]}),e.jsx("p",{className:"muted small",children:ze("Açıklamaya yalnız sipariş numarasını yaz; ödemeni bununla eşleştiriyoruz. Tutarın tamamı tek seferde gelmeli. {n} gün içinde ödeme gelmezse sipariş iptal edilir ve ürünler stoğa döner.",a.iptal_gun)})]})}function qe({goster:a,onGosterDegis:n,dugme:i=!0,className:r,...s}){const[o,l]=u.useState(!1),c=a??o,d=()=>{n?n(!c):l(!c)};return e.jsxs("div",{className:"sifreAlani"+(i?" dugmeli":"")+(r?" "+r:""),children:[e.jsx("input",{...s,type:c?"text":"password",autoCapitalize:"none",autoCorrect:"off",spellCheck:!1}),i&&e.jsx("button",{type:"button",className:"sifreGoster","aria-label":c?t("Şifreyi gizle"):t("Şifreyi göster"),"aria-pressed":c,onClick:d,children:c?t("Gizle"):t("Göster")})]})}function Qs(a){if(!/^[1-9][0-9]{10}$/.test(a))return!1;const n=a.split("").map(Number),i=n[0]+n[2]+n[4]+n[6]+n[8],r=n[1]+n[3]+n[5]+n[7];return((i*7-r)%10+10)%10!==n[9]?!1:n.slice(0,10).reduce((s,o)=>s+o,0)%10===n[10]}function Js(a){if(!/^[0-9]{10}$/.test(a))return!1;const n=a.split("").map(Number);let i=0;for(let r=0;r<9;r++){const s=(n[r]+9-r)%10;let o=s*2**(9-r)%9;s!==0&&o===0&&(o=9),i+=o}return(10-i%10)%10===n[9]}const Xe=(a,n=200)=>String(a??"").replace(/\s+/g," ").trim().slice(0,n);function kn(a){const n=a??{};if(n.tur==="kurumsal"){const i=Xe(n.unvan),r=Xe(n.vkn,20).replace(/\D/g,""),s=Xe(n.vergi_dairesi,80);return i.length<2?{hata:"Şirket unvanını yaz."}:Js(r)?s.length<2?{hata:"Vergi dairesini yaz."}:{fatura:{tur:"kurumsal",unvan:i,vkn:r,vergi_dairesi:s}}:{hata:"Vergi kimlik numarası 10 haneli ve geçerli olmalı."}}if(n.tur==="bireysel"){const i=Xe(n.ad_soyad,120),r=Xe(n.tckn,20).replace(/\D/g,"");return i.length<3?{hata:"Fatura için ad soyad yaz."}:r&&!Qs(r)?{hata:"T.C. kimlik numarası geçerli görünmüyor."}:{fatura:{tur:"bireysel",ad_soyad:i,...r?{tckn:r}:{}}}}return{hata:"Fatura türünü seç (bireysel ya da kurumsal)."}}function Xs(a){return[a?.first_name,a?.last_name].map(n=>Xe(n,60)).filter(Boolean).join(" ")}function Ja(a,n){const i=a??{};return i.tur==="bireysel"?kn({...i,ad_soyad:Xe(n,120)||i.ad_soyad}):kn(i)}function Qn(a,n){const i=Xs(a),r=a?.metadata?.fatura;if(r){const{fatura:s}=Ja(r,i);if(s)return s}return n?Ja(n,i).fatura??null:i?{tur:"bireysel",ad_soyad:i}:null}function Jn(a){const n=a.find(i=>i.is_default_billing)??a.find(i=>i.is_default_shipping)??null;return n&&!n.metadata?.fatura?n:null}function er(a){return`••••${a.slice(-3)}`}function ar(){return{tur:"bireysel",tckn:"",unvan:"",vkn:"",vergi_dairesi:""}}function Xn(a){return a.tur==="kurumsal"?{tur:"kurumsal",unvan:a.unvan,vkn:a.vkn,vergi_dairesi:a.vergi_dairesi}:{tur:"bireysel",tckn:a.tckn}}function ei(a){const n=ar();return a?a.tur==="kurumsal"?{...n,tur:"kurumsal",unvan:a.unvan,vkn:a.vkn,vergi_dairesi:a.vergi_dairesi}:{...n,tckn:a.tckn??""}:n}function ai({value:a,onChange:n}){const i=r=>s=>n({...a,[r]:s.target.value});return e.jsxs("fieldset",{className:"faturaForm",children:[e.jsx("legend",{children:t("Fatura türü")}),e.jsxs("div",{className:"faturaTur",role:"radiogroup","aria-label":t("Fatura türü"),children:[e.jsxs("label",{className:a.tur==="bireysel"?"on":"",children:[e.jsx("input",{type:"radio",name:"fatura_tur",checked:a.tur==="bireysel",onChange:()=>n({...a,tur:"bireysel"})}),t("Bireysel")]}),e.jsxs("label",{className:a.tur==="kurumsal"?"on":"",children:[e.jsx("input",{type:"radio",name:"fatura_tur",checked:a.tur==="kurumsal",onChange:()=>n({...a,tur:"kurumsal"})}),t("Kurumsal")]})]}),a.tur==="bireysel"?e.jsxs(e.Fragment,{children:[e.jsx("input",{"aria-label":t("T.C. kimlik no (isteğe bağlı)"),placeholder:t("T.C. kimlik no (isteğe bağlı)"),inputMode:"numeric",maxLength:11,value:a.tckn,onChange:i("tckn")}),e.jsx("p",{className:"muted small",children:t("Fatura bu adresteki ad soyadla kesilir.")})]}):e.jsxs(e.Fragment,{children:[e.jsx("input",{"aria-label":t("Şirket unvanı"),placeholder:t("Şirket unvanı"),value:a.unvan,onChange:i("unvan")}),e.jsxs("div",{className:"frow",children:[e.jsx("input",{"aria-label":t("Vergi kimlik no"),placeholder:t("Vergi kimlik no (10 hane)"),inputMode:"numeric",maxLength:10,value:a.vkn,onChange:i("vkn")}),e.jsx("input",{"aria-label":t("Vergi dairesi"),placeholder:t("Vergi dairesi"),value:a.vergi_dairesi,onChange:i("vergi_dairesi")})]})]})]})}function Ya({fatura:a,adGoster:n=!1}){return a?a.tur==="kurumsal"?e.jsx("span",{className:"faturaOzet",children:B("Kurumsal · {unvan} · VKN {vkn} · {vergi_dairesi} VD",{unvan:e.jsx("strong",{children:a.unvan})},{vkn:a.vkn,vergi_dairesi:a.vergi_dairesi})}):e.jsxs("span",{className:"faturaOzet",children:[n?t("Bireysel · {ad_soyad}",{ad_soyad:a.ad_soyad}):t("Bireysel"),a.tckn?t(" · TCKN {tckn}",{tckn:er(a.tckn)}):""]}):null}const ti={get siparisler(){return t("Siparişlerim")},get adresler(){return t("Adreslerim")},get favoriler(){return t("Favorilerim")},get takip(){return t("Takip listem")},get profil(){return t("Profil ve güvenlik")}},lo={get siparisler(){return t("Siparişler")},get adresler(){return t("Adresler")},get favoriler(){return t("Favoriler")},get takip(){return t("Takip listem")},get profil(){return t("Profil ve güvenlik")}},oo=a=>`/hesap/${a}`;function gn(a){return!a||a==="bilgiler"||a==="epostalar"?"profil":a==="haberver"?"takip":a==="fatura"?"adresler":Object.hasOwn(ti,a)?a:"profil"}function tr(a,n){const i=n.startsWith("?")?n:n?`?${n}`:"",r=new URLSearchParams(i).has("kod");switch(a){case"egitimlerim":return`/egitim/benim/${i}`;case"sinifim":return`${r?"/egitim/katil/":"/egitim/sinifim/"}${i}`;case"siniflarim":return`/egitim/ogretmen/siniflar/${i}`;case"etkinlestir":return`/egitim/etkinlestir/${i}`;default:return null}}const nr=u.lazy(()=>Mi(()=>import("./Panel-BIQwFCZk.js"),__vite__mapDeps([0,1,2]))),ir={get pending(){return t("Hazırlanıyor")},get completed(){return t("Tamamlandı")},get draft(){return t("Taslak")},get canceled(){return ma("order","İptal")},get archived(){return t("Arşivlendi")},get requires_action(){return t("İşlem bekliyor")}},sr={get cayma(){return t("Cayma hakkı (fikrimi değiştirdim)")},get hasarli(){return t("Ürün hasarlı geldi")},get eksik(){return t("Eksik parça")},get yanlis(){return t("Yanlış ürün geldi")},get diger(){return t("Diğer")}};function rr({user:a}){const[n,i]=u.useState("loading"),[r,s]=u.useState(""),[o,l]=u.useState(""),[c,d]=u.useState(!1),[m,f]=u.useState(!1),[g,x]=u.useState("");u.useEffect(()=>{let h=!0;return(async()=>{try{const v=await fetch("/api/auth/bulten/token",{credentials:"include"});if(!v.ok){h&&i("hidden");return}const z=await v.json();if(!z?.token||!z?.email){h&&i("hidden");return}const j=await fetch(`/blog/api/bulten/durum?email=${encodeURIComponent(z.email)}`,{headers:{"X-Bulten-Token":z.token}});if(!j.ok){h&&i("hidden");return}const b=await j.json();if(!h)return;s(z.token),l(z.email),d(!!b.abone),i("ready")}catch{h&&i("hidden")}})(),()=>{h=!1}},[a.email]);async function k(h){f(!0),x("");try{const v=await fetch("/blog/api/bulten/ayar",{method:"POST",headers:{"Content-Type":"application/json","X-Bulten-Token":r},body:JSON.stringify({email:o,abone:h})});if(!v.ok)throw new Error;const z=await v.json();d(!!z.abone)}catch{x(t("Şu an kaydedilemedi, tekrar dene."))}finally{f(!1)}}return n!=="ready"||Ct(o)?null:e.jsxs("section",{className:"bultenSec",children:[e.jsx("h2",{children:t("Bülten")}),e.jsx("p",{className:"muted small",children:t("Yeni robotlar, eğitim içerikleri ve duyurular. Ayda birkaç e-posta; istediğin an çıkabilirsin.")}),e.jsxs("label",{className:"check",children:[e.jsx("input",{type:"checkbox",checked:c,disabled:m,onChange:h=>k(h.target.checked)}),e.jsx("span",{children:t("{email} adresine bülten gönderilsin",{email:o})})]}),g&&e.jsx("p",{className:"formErr",role:"alert",children:g})]})}function lr({user:a,ek:n}){const i=Fa(),{data:r,error:s,refresh:o}=ka(a.id,()=>Ta(a.email)),[l,c]=u.useState(""),[d,m]=u.useState(!1),[f,g]=u.useState(!1),[x,k]=u.useState(!1),[h,v]=u.useState(""),[z,j]=u.useState(!1),[b,C]=u.useState(!1),[S,L]=u.useState(""),[K,G]=u.useState(!1),[O,se]=u.useState(!1),[ae,te]=u.useState("");u.useEffect(()=>{if(!K)return;const F=window.setTimeout(()=>G(!1),5e3);return()=>window.clearTimeout(F)},[K]);async function ne(F){if(F.preventDefault(),te(""),!K){G(!0);return}se(!0);try{const V=await Xi(S);if(!V.ok){te(W(V.error)),G(!1);return}i("/")}catch{te(t("Hesap silinemedi. Bağlantını kontrol edip tekrar dene.")),G(!1)}finally{se(!1)}}async function M(F){F.preventDefault(),g(!0),c(""),m(!1);const V=new FormData(F.currentTarget);try{await Qi(a.email,{first_name:String(V.get("first_name")??""),last_name:String(V.get("last_name")??""),phone:String(V.get("phone")??"")}),m(!0)}catch{c(t("Bilgiler kaydedilemedi. Tekrar dene."))}finally{g(!1)}}async function X(F){F.preventDefault();const V=F.currentTarget,ue=new FormData(V),ge=String(ue.get("currentPassword")??""),Te=String(ue.get("newPassword")??""),J=String(ue.get("newPassword2")??"");if(v(""),C(!1),Te!==J){v(t("Yeni şifreler aynı değil."));return}k(!0);try{const U=await Ji(ge,Te);if(!U.ok){v(W(ra(U.code,t("Mevcut şifre hatalı ya da yeni şifre kabul edilmedi."))));return}V.reset(),C(!0)}catch{v(t("Şifre değiştirilemedi. Bağlantını kontrol edip tekrar dene."))}finally{k(!1)}}return e.jsxs(e.Fragment,{children:[s?e.jsx(ta,{retry:o}):r?e.jsxs("form",{className:"authForm",onSubmit:M,children:[e.jsxs("div",{className:"frow",children:[e.jsx("input",{name:"first_name","aria-label":t("Ad"),placeholder:t("Ad"),defaultValue:r.first_name??""}),e.jsx("input",{name:"last_name","aria-label":t("Soyad"),placeholder:t("Soyad"),defaultValue:r.last_name??""})]}),Ct(r.email)?e.jsx("input",{value:a.username??"","aria-label":t("Kullanıcı adı (değiştirilemez)"),disabled:!0}):e.jsx("input",{value:r.email,"aria-label":t("E-posta (değiştirilemez)"),disabled:!0}),e.jsx("input",{name:"phone",type:"tel","aria-label":t("Telefon"),placeholder:t("Telefon (kargo için) - 05xx xxx xx xx"),defaultValue:r.phone??""}),l&&e.jsx("p",{className:"formErr",role:"alert",children:l}),e.jsx("button",{className:"btn p",disabled:f,children:d?t("Kaydedildi ✓"):t("Bilgileri kaydet")})]}):e.jsx("p",{className:"muted",children:t("Yükleniyor…")}),e.jsxs("form",{className:"authForm passForm",onSubmit:X,children:[e.jsx("h2",{children:t("Şifre değiştir")}),e.jsx(qe,{name:"currentPassword","aria-label":t("Mevcut şifre"),placeholder:t("Mevcut şifre"),autoComplete:"current-password",required:!0,minLength:8}),e.jsxs("div",{className:"frow",children:[e.jsx(qe,{name:"newPassword","aria-label":t("Yeni şifre"),placeholder:t("Yeni şifre"),autoComplete:"new-password",required:!0,minLength:8,goster:z,onGosterDegis:j}),e.jsx(qe,{name:"newPassword2","aria-label":t("Yeni şifre tekrar"),placeholder:t("Yeni şifre tekrar"),autoComplete:"new-password",required:!0,minLength:8,goster:z,dugme:!1})]}),h&&e.jsx("p",{className:"formErr",children:h}),b&&e.jsx("p",{className:"formOk",children:t("Şifren değişti ✓ Diğer oturumların kapatıldı.")}),e.jsx("button",{className:"btn g",disabled:x,children:x?"…":t("Şifreyi değiştir")})]}),e.jsx(rr,{user:a}),n,e.jsxs("section",{className:"dangerZone",children:[e.jsx("h2",{children:t("Hesabı sil")}),e.jsx("p",{className:"muted small",children:t("Hesabın, e-posta adreslerin ve oturumların kalıcı silinir. Sipariş kayıtları yasal saklama süresi boyunca anonim şekilde saklanır.")}),e.jsxs("form",{className:"authForm",onSubmit:ne,children:[e.jsx(qe,{name:"delPassword","aria-label":t("Hesap silme için şifre"),placeholder:t("Şifreni gir"),autoComplete:"current-password",required:!0,minLength:8,value:S,onChange:F=>L(F.target.value)}),ae&&e.jsx("p",{className:"formErr",children:ae}),e.jsx("button",{className:"btn g danger",disabled:O,children:O?"…":K?t("Emin misin? Tekrar tıkla"):t("Hesabımı kalıcı sil")})]})]})]})}function fn({ilk:a,ilkAdres:n=!1,ilkFatura:i,busy:r,onSubmit:s,onCancel:o}){const[l,c]=u.useState({city:a?.city??"",province:a?.province??"",postal_code:a?.postal_code??""}),[d,m]=u.useState(()=>ei(a?.metadata?.fatura??i)),[f,g]=u.useState("");function x(k){k.preventDefault();const h=new FormData(k.currentTarget);if(!Pt(String(h.get("phone")??""))){g(t("Telefon numarasını 05xx xxx xx xx biçiminde yaz; kargo firması teslimatta bu numarayı arar."));return}if(!l.city.trim()||!l.province.trim()){g(t("İl ve ilçeyi yaz ya da adres aramasından seç."));return}const v=`${h.get("first_name")??""} ${h.get("last_name")??""}`,{fatura:z,hata:j}=Ja(Xn(d),v);if(!z){g(j?W(j):t("Fatura bilgisini kontrol et."));return}g(""),s({is_default_shipping:h.get("is_default_shipping")==="on",is_default_billing:h.get("is_default_billing")==="on",address_name:String(h.get("address_name")??"").trim(),first_name:String(h.get("first_name")??""),last_name:String(h.get("last_name")??""),address_1:String(h.get("address_1")??""),city:l.city.trim(),province:l.province.trim(),postal_code:l.postal_code.trim(),phone:String(h.get("phone")??""),metadata:{fatura:z}})}return e.jsxs("form",{className:"authForm",onSubmit:x,children:[f&&e.jsx("p",{className:"formErr",role:"alert",children:f}),e.jsx("input",{name:"address_name","aria-label":t("Adres başlığı"),placeholder:t("Adres başlığı (Ev, Atölye…)"),defaultValue:a?.address_name??""}),e.jsxs("div",{className:"frow",children:[e.jsx("input",{name:"first_name","aria-label":t("Ad"),placeholder:t("Ad"),required:!0,defaultValue:a?.first_name??""}),e.jsx("input",{name:"last_name","aria-label":t("Soyad"),placeholder:t("Soyad"),required:!0,defaultValue:a?.last_name??""})]}),e.jsx(Wn,{onPick:k=>c({city:k.city,province:k.province,postal_code:k.postal_code}),defaultValue:a?.address_1??""}),e.jsxs("div",{className:"frow",children:[e.jsx("input",{name:"city","aria-label":t("İlçe"),placeholder:t("İlçe"),required:!0,value:l.city,onChange:k=>c(h=>({...h,city:k.target.value}))}),e.jsx("input",{name:"province","aria-label":t("İl"),placeholder:t("İl"),required:!0,value:l.province,onChange:k=>c(h=>({...h,province:k.target.value}))})]}),e.jsxs("div",{className:"frow",children:[e.jsx("input",{name:"postal_code","aria-label":t("Posta kodu"),placeholder:t("Posta kodu"),value:l.postal_code,onChange:k=>c(h=>({...h,postal_code:k.target.value}))}),e.jsx("input",{name:"phone",type:"tel","aria-label":t("Telefon"),placeholder:t("Telefon - 05xx xxx xx xx"),required:!0,defaultValue:a?.phone??""})]}),e.jsx(ai,{value:d,onChange:m}),e.jsxs("label",{className:"check checkLine",children:[e.jsx("input",{type:"checkbox",name:"is_default_shipping",defaultChecked:a?!!a.is_default_shipping:n}),e.jsx("span",{children:t("Varsayılan teslimat adresim")})]}),e.jsxs("label",{className:"check checkLine",children:[e.jsx("input",{type:"checkbox",name:"is_default_billing",defaultChecked:a?!!a.is_default_billing:n}),e.jsx("span",{children:t("Varsayılan fatura adresim")})]}),e.jsxs("div",{className:"row",children:[e.jsx("button",{className:"btn p",disabled:r,children:a?t("Değişikliği kaydet"):t("Adresi kaydet")}),e.jsx("button",{type:"button",className:"btn g",onClick:o,children:t("Vazgeç")})]})]})}function or({user:a}){const{data:n,error:i,refresh:r}=ka(a.id,async()=>{const[b,C]=await Promise.all([Ta(a.email),Dn(a.email).catch(()=>null)]);return{me:b,eski:C}}),s=n?.me,[o,l]=u.useState(""),[c,d]=u.useState(!1),[m,f]=u.useState(!1),[g,x]=u.useState(null);async function k(b){d(!0),l("");try{await b(),await r()}catch(C){l(C instanceof Error&&C.message?W(C.message):t("İşlem tamamlanamadı. Bilgilerini kontrol edip tekrar dene."))}finally{d(!1)}}if(i)return e.jsx(ta,{retry:r});if(!s)return e.jsx("p",{className:"muted",children:t("Yükleniyor…")});const h=s.addresses??[],v=h.find(b=>b.id===g)??null,z=n?.eski??null,j=z?Jn(h):null;return e.jsxs("div",{children:[o&&e.jsx("p",{className:"formErr",role:"alert",children:o}),h.length===0&&!m&&e.jsx("p",{className:"muted",children:t("Kayıtlı adresin yok. Kargo için bir teslimat adresi ekle.")}),e.jsx("ul",{className:"addrList",children:h.map(b=>e.jsxs("li",{children:[e.jsxs("div",{children:[e.jsxs("b",{children:[b.address_name||t("Adres"),b.is_default_shipping&&e.jsx("span",{className:"adrRozet",children:t("Varsayılan teslimat")}),b.is_default_billing&&e.jsx("span",{className:"adrRozet",children:t("Varsayılan fatura")})]}),e.jsxs("span",{children:[b.first_name," ",b.last_name," · ",b.address_1,", ",b.city,"/",b.province," ",b.postal_code,b.phone?` · ${b.phone}`:""]}),e.jsx("span",{className:"adrFatura","data-testid":"adres-fatura",children:B("Fatura: {summary}",{summary:e.jsx(Ya,{fatura:Qn(b,j?.id===b.id?z:null)})})}),j?.id===b.id&&e.jsx("span",{className:"adrFatura muted small",children:B("Hesabındaki fatura bilgisi. {button}",{button:e.jsx("button",{type:"button",className:"linkBtn",disabled:c,onClick:()=>k(()=>Qa(a.email,b.id,{metadata:{fatura:z}})),children:t("Bu adrese kaydet")})})})]}),e.jsxs("span",{className:"addrActs",children:[e.jsx("button",{type:"button",className:"linkBtn",disabled:c,onClick:()=>{f(!1),x(b.id)},children:t("Düzenle")}),e.jsx("button",{className:"cartRm","aria-label":t("Adresi sil"),disabled:c,onClick:()=>{window.confirm(t("Bu adres silinsin mi?"))&&k(()=>ss(a.email,b.id))},children:"✕"})]})]},b.id))}),v?e.jsx(fn,{ilk:v,ilkFatura:j?.id===v.id?z:null,busy:c,onCancel:()=>x(null),onSubmit:b=>k(async()=>{await Qa(a.email,v.id,b),x(null)})},v.id):m?e.jsx(fn,{busy:c,ilkAdres:h.length===0,ilkFatura:h.length===0?z:null,onCancel:()=>f(!1),onSubmit:b=>k(async()=>{await On(a.email,b),f(!1)})}):e.jsx("button",{className:"btn g",onClick:()=>f(!0),children:t("+ Yeni adres ekle")})]})}function cr({user:a}){const{data:n,error:i,refresh:r}=ka(a.id,es),[s,o]=u.useState(""),[l,c]=u.useState(""),[d,m]=u.useState(!1);async function f(k){k.preventDefault();const h=k.currentTarget,v=String(new FormData(h).get("email")??"").trim();if(v){m(!0),c(""),o("");try{await nn(v),await r(),h.reset(),o(t("Doğrulama maili gönderildi - gelen kutusunu kontrol et."))}catch(z){c(z instanceof Error?W(z.message):t("İşlem şu an tamamlanamadı"))}finally{m(!1)}}}async function g(k){m(!0),c(""),o("");try{await nn(k),await r(),o(t("Doğrulama maili gönderildi - gelen kutusunu kontrol et."))}catch(h){c(h instanceof Error?W(h.message):t("İşlem şu an tamamlanamadı"))}finally{m(!1)}}async function x(k){m(!0),c(""),o("");try{await as(k),await r()}catch(h){c(h instanceof Error?W(h.message):t("İşlem şu an tamamlanamadı"))}finally{m(!1)}}return i?e.jsx(ta,{retry:r}):n===null?e.jsx("p",{className:"muted",children:t("Yükleniyor…")}):e.jsxs("div",{children:[e.jsx("p",{className:"muted small",children:t("Doğrulanmış adreslerinin herhangi biriyle giriş yapabilirsin.")}),e.jsxs("ul",{className:"addrList",children:[e.jsxs("li",{children:[e.jsx("div",{children:Ct(a.email)?e.jsxs(e.Fragment,{children:[e.jsx("b",{children:a.username}),e.jsx("span",{children:t("Kullanıcı adı (hesap sınıf koduyla açıldı, e-postası yok)")})]}):e.jsxs(e.Fragment,{children:[e.jsx("b",{children:a.email}),e.jsx("span",{children:t("Birincil e-posta")})]})}),e.jsx("span",{className:"chip",children:t("birincil")})]}),n.map(k=>{const h=!!k.verified_at;return e.jsxs("li",{children:[e.jsxs("div",{children:[e.jsx("b",{children:k.email}),e.jsx("span",{className:`emailStatus ${h?"ok":"wait"}`,children:h?t("✓ doğrulandı"):t("doğrulama bekliyor")})]}),!h&&e.jsx("button",{className:"linkBtn",type:"button",onClick:()=>g(k.email),disabled:d,children:t("maili yeniden gönder")}),e.jsx("button",{className:"cartRm",type:"button","aria-label":t("E-postayı sil"),onClick:()=>x(k.id),disabled:d,children:"✕"})]},k.id)})]}),e.jsxs("form",{className:"authForm",onSubmit:f,children:[e.jsxs("div",{className:"frow",children:[e.jsx("input",{name:"email",type:"email","aria-label":t("Ek e-posta"),placeholder:t("Ek e-posta"),required:!0}),e.jsx("button",{className:"btn g",disabled:d,children:t("+ E-posta ekle")})]}),s&&e.jsx("p",{className:"formOk",role:"status",children:s}),l&&e.jsx("p",{className:"formErr",role:"alert",children:l})]})]})}function dr({user:a,o:n,onDone:i}){const[r,s]=u.useState(""),[o,l]=u.useState(""),[c,d]=u.useState(()=>Object.fromEntries(n.items.map(h=>[h.id,h.quantity]))),[m,f]=u.useState(""),[g,x]=u.useState(!1);async function k(h){h.preventDefault(),f(""),x(!0);try{await is(a.email,n.id,{sebep:r,aciklama:o,kalemler:Object.entries(c).filter(([,v])=>v>0).map(([v,z])=>({id:v,adet:z}))}),i()}catch(v){f(v instanceof Error?W(v.message):t("Gönderilemedi. Tekrar dene."))}finally{x(!1)}}return e.jsxs("form",{className:"authForm iadeForm",onSubmit:k,children:[e.jsx("b",{children:t("İade talebi")}),m&&e.jsx("p",{className:"formErr",role:"alert",children:m}),e.jsxs("select",{"aria-label":t("İade sebebi"),required:!0,value:r,onChange:h=>s(h.target.value),children:[e.jsx("option",{value:"",children:t("Sebep seç")}),ns.map(([h,v])=>e.jsx("option",{value:h,children:sr[h]??v},h))]}),e.jsx("ul",{className:"iadeKalem",children:n.items.map(h=>e.jsxs("li",{children:[e.jsx("span",{children:h.title}),e.jsx("select",{"aria-label":t("{title} iade adedi",{title:h.title}),value:c[h.id]??0,onChange:v=>d(z=>({...z,[h.id]:Number(v.target.value)})),children:Array.from({length:h.quantity+1},(v,z)=>e.jsx("option",{value:z,children:ze("{n} adet",z)},z))})]},h.id))}),e.jsx("textarea",{"aria-label":t("Açıklama"),placeholder:t("Kısaca ne olduğunu yaz (hasar, eksik parça...)"),rows:3,maxLength:1e3,value:o,onChange:h=>l(h.target.value)}),e.jsx("p",{className:"muted small",children:t("Talebini inceleyip e-postayla dönüş yaparız; iade kargosu bilgisini o mesajda paylaşırız.")}),e.jsxs("div",{className:"row",children:[e.jsx("button",{className:"btn p",disabled:g,children:g?t("Gönderiliyor…"):t("Talebi gönder")}),e.jsx("button",{type:"button",className:"btn g",onClick:i,children:t("Vazgeç")})]})]})}function ur({user:a}){const{data:n,error:i,refresh:r}=ka(a.id,()=>ts(a.email)),[s,o]=u.useState(null),[l,c]=u.useState(null);return i?e.jsx(ta,{retry:r}):n===null?e.jsx("p",{className:"muted",children:t("Yükleniyor…")}):n.length===0?e.jsx("p",{className:"muted",children:t("Henüz siparişin yok.")}):e.jsx("ul",{className:"orderCards",children:n.map(d=>{const m=d.id,f=d.items,g=d.shipping_address,x=!!(g&&(g.address_1||g.city)),k=s===m,h=d.takip[0],v=h?.gonderiler.find(S=>S.takip_no),z=d.odeme.havale,j=d.status==="canceled"?ma("order","İptal"):z?t("Ödeme bekleniyor"):h?W(h.durum_metni):ir[d.status]??d.status,b=d.fatura,C=d.billing_address;return e.jsxs("li",{className:k?"on":"",children:[e.jsxs("button",{type:"button",className:"ordHead","aria-expanded":k,onClick:()=>o(k?null:m),children:[e.jsxs("span",{className:"mono",children:["#",String(d.display_id)]}),e.jsx("span",{className:"ordStatus",children:j}),e.jsx("span",{className:"muted small",children:Pa(new Date(String(d.created_at)),{year:"numeric",month:"numeric",day:"numeric"})}),e.jsx("b",{children:I(Number(d.total??0))}),e.jsx("span",{className:"ordCaret","aria-hidden":!0,children:k?"▲":"▼"})]}),!k&&e.jsx("div",{className:"ordItems",children:f.map(S=>e.jsxs("span",{children:[S.title," × ",S.quantity]},S.id))}),v&&e.jsx("div",{className:"ordTrack",children:B("Kargo takip no: {trackingNo}",{trackingNo:v.takip_url?e.jsx("a",{href:v.takip_url,target:"_blank",rel:"noopener",children:v.takip_no}):e.jsx("span",{className:"mono",children:v.takip_no})})}),d.iade_talebi&&e.jsxs("div",{className:"ordTrack",children:[B("İade talebi: {status}",{status:e.jsx("b",{children:W(d.iade_talebi.durum_metni)})}),d.iade_talebi.not?e.jsxs("span",{className:"muted small",children:[" · ",d.iade_talebi.not]}):null]}),k&&e.jsxs("div",{className:"ordDetail",children:[e.jsx("ul",{className:"ordLines",children:f.map(S=>{const L=Number(S.unit_price??0),K=Number(S.quantity??0);return e.jsxs("li",{children:[e.jsxs("span",{className:"ordLineName",children:[S.title,S.variant_title?e.jsxs("span",{className:"muted small",children:[" ",S.variant_title]}):null," ",e.jsxs("span",{className:"muted",children:["× ",K]})]}),e.jsx("span",{className:"ordLineUnit muted small",children:t("{price} / adet",{price:I(L)})}),e.jsx("span",{className:"ordLineTotal",children:I(L*K)})]},S.id)})}),e.jsxs("dl",{className:"ordFacts",children:[typeof d.ara_toplam=="number"&&e.jsxs("div",{children:[e.jsx("dt",{children:t("Ürünler")}),e.jsx("dd",{children:I(d.ara_toplam)})]}),e.jsxs("div",{children:[e.jsx("dt",{children:t("Kargo ücreti")}),e.jsx("dd",{children:d.shipping_total?I(d.shipping_total):t("Ücretsiz")})]}),d.kart_farki?e.jsxs("div",{children:[e.jsxs("dt",{children:[t("Kart ödeme farkı"),d.kart_farki_orani?` (${In(d.kart_farki_orani,{style:"percent",maximumFractionDigits:2})})`:""]}),e.jsx("dd",{children:I(d.kart_farki)})]}):null,e.jsxs("div",{children:[e.jsx("dt",{children:t("Toplam")}),e.jsx("dd",{children:e.jsx("b",{children:I(Number(d.total??0))})})]}),d.odeme.yontem_metni&&e.jsxs("div",{children:[e.jsx("dt",{children:t("Ödeme yöntemi")}),e.jsx("dd",{children:W(d.odeme.yontem_metni)})]}),e.jsxs("div",{children:[e.jsx("dt",{children:t("Ödeme")}),e.jsx("dd",{children:W(d.odeme.metin)})]}),d.kargo&&e.jsxs("div",{children:[e.jsx("dt",{children:t("Kargo")}),e.jsx("dd",{children:d.kargo})]}),b&&e.jsxs("div",{children:[e.jsx("dt",{children:t("Fatura")}),e.jsx("dd",{className:"ph-sensitive",children:b.tur==="kurumsal"?t("{unvan} · VKN {vkn} · {vergi_dairesi} VD",{unvan:b.unvan,vkn:b.vkn,vergi_dairesi:b.vergi_dairesi}):b.ad_soyad})]})]}),z&&e.jsx(Zn,{t:z,tutar:Number(d.total??0)}),v&&v.gecmis.length>0&&e.jsx("ol",{className:"takipGecmis",children:[...v.gecmis].reverse().map((S,L)=>e.jsxs("li",{children:[e.jsx("b",{children:W(S.metin)}),e.jsxs("span",{className:"muted small",children:[[S.konum,S.aciklama].filter(Boolean).join(" · "),S.zaman?` · ${Pa(new Date(S.zaman),{year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric"})}`:""]})]},L))}),C&&C.address_1&&C.address_1!==g?.address_1&&e.jsxs("div",{className:"ordAddr",children:[e.jsx("b",{children:t("Fatura adresi")}),e.jsxs("span",{className:"ph-sensitive",children:[[C.first_name,C.last_name].filter(Boolean).join(" ")," · ",[C.address_1,C.city,C.province].filter(Boolean).join(", ")]})]}),x&&e.jsxs("div",{className:"ordAddr",children:[e.jsx("b",{children:t("Teslimat adresi")}),e.jsxs("span",{children:[[g.first_name,g.last_name].filter(Boolean).join(" "),g.phone?` · ${g.phone}`:""]}),e.jsx("span",{children:[g.address_1,g.city,g.province,g.postal_code].filter(Boolean).join(", ")})]}),!d.iade_talebi&&d.status!=="canceled"&&(l===m?e.jsx(dr,{user:a,o:d,onDone:()=>{c(null),r()}}):e.jsx("button",{type:"button",className:"linkBtn",onClick:()=>c(m),children:t("İade talebi oluştur")}))]})]},m)})})}function mr({user:a}){const{data:n,error:i,refresh:r}=ka(a.id,async()=>{const[s,o]=await Promise.all([Kn(a.email),ha()]);return o.filter(l=>s.includes(l.id))});return i?e.jsx(ta,{retry:r}):n===null?e.jsx("p",{className:"muted",children:t("Yükleniyor…")}):n.length===0?e.jsx("p",{className:"muted",children:B("Henüz favorin yok - ürün sayfalarındaki ♡ ile eklersin. {link}.",{link:e.jsx(_,{to:"/urunler",children:t("Ürünlere göz at")})})}):e.jsx("div",{className:"parts",children:n.map(s=>e.jsx(Ba,{p:s},s.id))})}function hr({user:a}){const[n,i]=u.useState(!1),[r,s]=u.useState(""),{data:o,error:l,refresh:c}=ka(a.id,async()=>{const[d,m]=await Promise.all([$n(a.email),ha()]);return d.map(f=>({alertId:f.id,product:m.find(g=>g.id===f.product_id)})).filter(f=>f.product)});return l?e.jsx(ta,{retry:c}):o===null?e.jsx("p",{className:"muted",children:t("Yükleniyor…")}):o.length===0?e.jsx("p",{className:"muted",children:He()?t("Takip listen boş. Ürün duyuruları açıldığında buradan takip edebilirsin."):B(`Takip listen boş. "Fiyat yakında" olan ürünlerde {button}'e bas; satış açılınca e-posta atarız.`,{button:e.jsx("b",{children:t("Gelince haber ver")})})}):e.jsxs(e.Fragment,{children:[r&&e.jsx("p",{className:"formErr",role:"alert",children:r}),e.jsx("ul",{className:"addrList",children:o.map(({alertId:d,product:m})=>e.jsxs("li",{children:[e.jsxs("div",{children:[e.jsx("b",{children:e.jsx(_,{to:`/urun/${m.handle}`,children:Ne(m.title)})}),e.jsx("span",{className:"mono small",children:m.variants?.[0]?.sku})]}),e.jsx("button",{className:"cartRm","aria-label":t("Listeden çıkar"),disabled:n,onClick:async()=>{i(!0),s("");try{await Ln(a.email,m.id),await c()}catch{s(t("Takip listesi güncellenemedi. Tekrar dene."))}finally{i(!1)}},children:"✕"})]},d))})]})}let yn=!1;function ni(){const[a]=Ge(),{bolum:n}=pa(),i=an(a.get("returnTo")),r=i??(n?an(`${location.pathname}${location.search}`):null),s=i&&qi(i)!==void 0?i.slice(Hi(i).length):"",o=s.startsWith("/etkinlestir"),l=s.startsWith("/katil"),[c,d]=u.useState(""),[m,f]=u.useState(!1),g=u.useRef(0),x=u.useRef(!1),k=()=>{!i||x.current||(x.current=!0,location.assign(i))},[h,v]=u.useState(null),[z,j]=u.useState(!1),[b,C]=u.useState(()=>a.get("kayit")==="1"?"kayit":"giris"),[S,L]=u.useState(!1),[K,G]=u.useState(o?"ogretmen":l?"ogrenci":""),[O,se]=u.useState(""),[ae,te]=u.useState(!1),[ne,M]=u.useState(()=>a.has("error")?t("Doğrulama bağlantısı geçersiz veya süresi dolmuş. Giriş yapmayı dene; doğrulama e-postasını yeniden gönderebilirsin."):a.get("alias")==="invalid"?t("Ek e-posta bağlantısı geçersiz veya süresi dolmuş. E-posta adreslerim bölümünden yeniden gönder."):""),[X,F]=u.useState(()=>a.get("yenilendi")==="1"?t("Şifren yenilendi. Yeni şifrenle giriş yapabilirsin."):a.get("verified")==="1"&&!a.has("error")?t("E-postan doğrulandı. Giriş yapabilirsin."):a.get("alias")==="ok"?t("Ek e-postan doğrulandı."):""),V=e.jsx(he,{title:h?t("{section} - Hesap - Probot Studio",{section:ti[gn(n)]}):t("Hesap - Probot Studio"),description:t("Probot Studio hesabına giriş yap, adreslerini, siparişlerini, favorilerini ve takip listeni yönet."),path:"/hesap",noindex:!0});async function ue(J=!0){const U=++g.current;J&&j(!1),f(!1);try{const ie=await Za();U===g.current&&(v(ie?.user??null),ie?.user&&k())}catch{U===g.current&&f(!0)}finally{U===g.current&&j(!0)}}u.useEffect(()=>{a.get("verified")==="1"&&!a.has("error")&&!yn&&(yn=!0,pe("hesap_eposta_dogrulandi",{yontem:"eposta"}))},[]),u.useEffect(()=>{ue();const J=()=>{ue(!1)},U=()=>{document.visibilityState==="visible"&&J()};return window.addEventListener(tn,J),window.addEventListener("focus",J),document.addEventListener("visibilitychange",U),()=>{g.current++,window.removeEventListener(tn,J),window.removeEventListener("focus",J),document.removeEventListener("visibilitychange",U)}},[]);async function ge(){te(!0),M(""),F("");try{const J=await Yi(c,r??void 0);J.ok?F(t("Doğrulama e-postası istendi. Gelen kutunu ve spam klasörünü kontrol et.")):M(W(ra(J.code,t("Doğrulama e-postası gönderilemedi. Biraz bekleyip tekrar dene."))))}catch{M(t("Bağlantı kurulamadı. Tekrar dene."))}finally{te(!1)}}async function Te(J){J.preventDefault(),te(!0),M(""),F("");const U=new FormData(J.currentTarget),ie=String(U.get("email")??"").trim();try{if(b==="sifre"){const Q=await Ui(ie);Q.ok?F(t("Bu e-posta kayıtlıysa sıfırlama bağlantısı gönderildi.")):M(W(ra(Q.code,t("İstek gönderilemedi - tekrar dene."))));return}const Re=String(U.get("password")??"");if(b==="kayit"&&Re!==String(U.get("password2")??"")){M(t("Şifreler aynı değil."));return}const be=U.get("hesapTuru")!=="ogretmen",N=be&&U.get("resitDegil")==="evet",R=String(U.get("veliEposta")??"").trim();if(b==="kayit"&&N&&R.toLowerCase()===ie.toLowerCase()){M(W(ra("VELI_EPOSTA_AYNI","")));return}const D=b==="kayit"?await Wi(String(U.get("name")??""),ie,Re,r??void 0,be?"ogrenci":"ogretmen",{resitDegil:N,...N?{veliEposta:R}:{}}):await Zi(ie,Re);if(!D.ok){D.code==="EMAIL_NOT_VERIFIED"&&d(ie),M(W(ra(D.code,b==="kayit"?t("Kayıt olmadı - bilgileri kontrol et."):t("Giriş olmadı - e-posta, kullanıcı adı ya da şifre hatalı olabilir."))));return}if(b==="kayit"){pe("hesap_kayit_olusturuldu",{yontem:"eposta",resit_degil:N}),d(ie),F(N?t("Hesabın oluşturuldu. Devam etmek için e-postandaki doğrulama bağlantısını aç. E-postanı doğruladığında veline ({veliEposta}) bir onay e-postası göndereceğiz; o onaylayana kadar ders fotoğrafı yükleyemez ve asistanı kullanamazsın.",{veliEposta:R}):t("Hesabın oluşturuldu. Devam etmek için e-postandaki doğrulama bağlantısını aç."));return}const Y=await Za();v(Y?.user??null),Y?.user&&k()}catch{M(t("Bağlantı kurulamadı. Bilgilerini kontrol edip tekrar dene."))}finally{te(!1)}}return z?m&&!h?e.jsxs(e.Fragment,{children:[V,e.jsx("section",{className:"account",children:e.jsx(ta,{retry:ue})})]}):h?e.jsxs(e.Fragment,{children:[V,e.jsx(u.Suspense,{fallback:e.jsx("section",{className:"account",children:e.jsx("p",{className:"muted",children:t("Yükleniyor…")})}),children:e.jsx(nr,{user:h,bolum:gn(n),cikis:async()=>{M("");try{await Vi(),v(null)}catch{M(t("Çıkış yapılamadı. Oturumun açık olabilir; tekrar dene."))}},mesaj:e.jsxs(e.Fragment,{children:[m&&e.jsxs("p",{className:"hp-uyari",role:"status",children:[t("Oturum bilgin yenilenemedi; bağlantını kontrol et.")," ",e.jsx("button",{type:"button",className:"hp-metin-dugme",onClick:()=>{ue(!1)},children:t("Tekrar dene")})]}),ne&&e.jsx("p",{className:"formErr",role:"alert",children:ne}),X&&e.jsx("p",{className:"formOk",role:"status",children:X}),e.jsx(Gi,{user:h})]}),slotlar:{siparisler:e.jsx(ur,{user:h}),adresler:e.jsx(or,{user:h}),favoriler:e.jsx(mr,{user:h}),takip:e.jsx(hr,{user:h}),epostalar:e.jsx(cr,{user:h}),bilgiler:J=>e.jsx(lr,{user:h,ek:J})}})})]}):c?e.jsxs(e.Fragment,{children:[V,e.jsxs("section",{className:"account",children:[e.jsx("h1",{children:t("E-postanı doğrula")}),e.jsx("p",{children:B("{email} adresindeki doğrulama bağlantısını aç. Gelen kutunu ve spam klasörünü kontrol et.",{email:e.jsx("b",{children:c})})}),X&&e.jsx("p",{className:"formOk",role:"status",children:X}),ne&&e.jsx("p",{className:"formErr",role:"alert",children:ne}),e.jsxs("div",{className:"row",children:[e.jsx("button",{className:"btn p",disabled:ae,onClick:ge,children:t("Doğrulama e-postasını yeniden gönder")}),e.jsx("button",{className:"btn g",disabled:ae,onClick:()=>{d(""),C("giris"),F(""),M("")},children:t("Doğruladım, giriş yap")}),e.jsx("button",{className:"linkBtn",disabled:ae,onClick:()=>{d(""),C("kayit"),F(t("Adresi düzelterek yeniden kayıt olabilirsin.")),M("")},children:t("Adresi düzelt")})]})]})]}):e.jsxs(e.Fragment,{children:[V,e.jsxs("section",{className:"account",children:[e.jsx("h1",{children:B("Probot {hl}",{hl:e.jsx("span",{className:"hl",children:t("Hesabın")})})}),e.jsx("p",{className:"muted",children:t("Tek hesap; mağaza, Builder ve Blocks'ta geçerli.")}),o&&e.jsx("p",{className:"formOk",role:"note",children:t("Kit kodunu etkinleştirmek için önce giriş yap ya da öğretmen / mentör hesabı oluştur. Kodun kaybolmaz; girişten sonra buradan devam edersin.")}),l&&e.jsx("p",{className:"formOk",role:"note",children:t("Sınıfa katılmak için önce giriş yap ya da öğrenci hesabı oluştur. Sınıf kodun kaybolmaz; girişten sonra katılma sayfasına dönersin.")}),e.jsxs("div",{className:"authTabs",children:[e.jsx("button",{className:b==="giris"?"on":"",onClick:()=>{C("giris"),M(""),F("")},children:t("Giriş")}),e.jsx("button",{className:b==="kayit"?"on":"",onClick:()=>{C("kayit"),M(""),F("")},children:t("Kayıt ol")})]}),e.jsxs("form",{className:"authForm",onSubmit:Te,children:[b==="kayit"&&e.jsx("input",{name:"name","aria-label":t("Ad Soyad"),placeholder:t("Ad Soyad"),required:!0,minLength:2,maxLength:80}),b==="kayit"&&e.jsxs("fieldset",{className:"hesapTuru",style:{border:0,padding:0,margin:0,display:"flex",flexWrap:"wrap",gap:"6px 16px",alignItems:"center"},children:[e.jsx("legend",{style:{padding:0,marginBottom:4,fontSize:13,fontWeight:700},children:t("Hesap türü")}),e.jsxs("label",{className:"check",style:{alignItems:"center"},children:[e.jsx("input",{type:"radio",name:"hesapTuru",value:"ogrenci",required:!0,checked:K==="ogrenci",onChange:()=>G("ogrenci")})," ",e.jsx("span",{children:t("Öğrenci")})]}),e.jsxs("label",{className:"check",style:{alignItems:"center"},children:[e.jsx("input",{type:"radio",name:"hesapTuru",value:"ogretmen",required:!0,checked:K==="ogretmen",onChange:()=>G("ogretmen")})," ",e.jsx("span",{children:t("Öğretmen / mentör")})]})]}),b==="kayit"&&K==="ogrenci"&&e.jsxs("fieldset",{className:"hesapTuru",style:{border:0,padding:0,margin:0,display:"flex",flexWrap:"wrap",gap:"6px 16px",alignItems:"center"},children:[e.jsx("legend",{style:{padding:0,marginBottom:4,fontSize:13,fontWeight:700},children:t("18 yaşından küçük müsün?")}),e.jsxs("label",{className:"check",style:{alignItems:"center"},children:[e.jsx("input",{type:"radio",name:"resitDegil",value:"hayir",required:!0,checked:O==="hayir",onChange:()=>se("hayir")})," ",e.jsx("span",{children:t("Hayır, 18 yaşından büyüğüm")})]}),e.jsxs("label",{className:"check",style:{alignItems:"center"},children:[e.jsx("input",{type:"radio",name:"resitDegil",value:"evet",required:!0,checked:O==="evet",onChange:()=>se("evet")})," ",e.jsx("span",{children:t("Evet, 18 yaşından küçüğüm")})]})]}),b==="kayit"&&K==="ogrenci"&&O==="evet"&&e.jsxs(e.Fragment,{children:[e.jsx("input",{name:"veliEposta",type:"email","aria-label":t("Veli e-postası"),placeholder:t("Veli e-postası (anne, baba ya da vasi)"),required:!0}),e.jsx("p",{className:"muted small",style:{margin:0},children:t("E-postanı doğruladığında veline bir onay bağlantısı göndereceğiz. Onaylayana kadar hesabınla eğitimleri okuyabilir ve sınıfına katılabilirsin ama ders fotoğrafı yükleyemez ve eğitim asistanını kullanamazsın.")})]}),b==="giris"?e.jsx("input",{name:"email",type:"text","aria-label":t("E-posta ya da kullanıcı adı"),placeholder:t("E-posta ya da kullanıcı adı"),autoComplete:"username",autoCapitalize:"none",spellCheck:!1,required:!0}):e.jsx("input",{name:"email",type:"email","aria-label":t("E-posta"),placeholder:t("E-posta"),required:!0}),b!=="sifre"&&e.jsx(qe,{name:"password","aria-label":t("Şifre"),placeholder:t("Şifre (en az 8 karakter)"),required:!0,minLength:8,autoComplete:b==="kayit"?"new-password":"current-password",goster:S,onGosterDegis:L}),b==="kayit"&&e.jsx(qe,{name:"password2","aria-label":t("Şifre (tekrar)"),placeholder:t("Şifre (tekrar)"),required:!0,minLength:8,autoComplete:"new-password",goster:S,dugme:!1}),b==="kayit"&&e.jsxs("label",{className:"check",children:[e.jsx("input",{type:"checkbox",required:!0}),e.jsxs("span",{children:[B("{membership}'ni okudum, kabul ediyorum; {privacy}'ni okudum.",{membership:e.jsx(_,{to:"/yasal/uyelik-sozlesmesi",target:"_blank",rel:"noopener",children:t("Üyelik Sözleşmesi")}),privacy:e.jsx(_,{to:"/yasal/aydinlatma-metni",target:"_blank",rel:"noopener",children:t("Aydınlatma Metni")})}),K==="ogretmen"&&t(" 18 yaşından büyük olduğumu beyan ederim.")]})]}),ne&&e.jsx("p",{className:"formErr",role:"alert",children:ne}),X&&e.jsx("p",{className:"formOk",role:"status",children:X}),e.jsx("button",{className:"btn p",disabled:ae,children:ae?"…":b==="kayit"?t("Hesap oluştur"):b==="sifre"?t("Sıfırlama bağlantısı gönder"):t("Giriş yap →")}),b==="giris"&&e.jsx("button",{type:"button",className:"linkBtn",onClick:()=>{C("sifre"),M(""),F("")},children:t("Şifreni mi unuttun?")}),b==="giris"&&e.jsx("p",{style:{margin:0,fontSize:13.5},children:B("Öğretmeninden sınıf kodu mu aldın? {link}",{link:e.jsx("a",{href:l&&i?i:tt("/egitim/katil/"),children:t("Sınıf kodum var")})})}),b==="giris"&&e.jsx("p",{style:{margin:0,fontSize:13.5},children:B("Hesabın yok mu? {button}",{button:e.jsx("button",{type:"button",className:"linkBtn",style:{display:"inline",padding:0},onClick:()=>{C("kayit"),M(""),F("")},children:t("Hesap oluştur")})})}),b==="kayit"&&e.jsx("p",{style:{margin:0,fontSize:13.5},children:B("Zaten hesabın var mı? {button}",{button:e.jsx("button",{type:"button",className:"linkBtn",style:{display:"inline",padding:0},onClick:()=>{C("giris"),M(""),F("")},children:t("Giriş yap")})})}),b==="sifre"&&e.jsx("p",{className:"muted small",style:{margin:0},children:t("Hesabını sınıf koduyla, e-postasız açtıysan şifreni öğretmenin yeniler; ondan yeni bir geçici şifre iste.")}),b==="sifre"&&e.jsx("button",{type:"button",className:"linkBtn",onClick:()=>{C("giris"),M(""),F("")},children:t("← Girişe dön")}),e.jsx("p",{className:"muted small",children:t("Google ile giriş çok yakında.")})]})]})]}):e.jsxs(e.Fragment,{children:[V,e.jsx("section",{className:"account",children:e.jsx("p",{className:"muted",children:t("Yükleniyor…")})})]})}function la(a){const n=a?.pack_size;return typeof n=="number"&&Number.isSafeInteger(n)&&n>1?n:1}function pr(a,n){const i=la(n);return i>1?`${a} paket (${a*i} adet)`:`${a} adet`}const kr=rs;function Me(a){return typeof a=="string"?a.trim():""}function gr(a){return a?[a.first_name,a.last_name].map(Me).filter(Boolean).join(" "):""}function fr(a){return a?[a.address_1,a.city,a.province,a.postal_code].map(Me).filter(Boolean).join(", "):""}function yr(a){return(a.items??[]).reduce((n,i)=>n+i.unit_price*i.quantity,0)}function xr(a,n={}){const i=He(),r=n.shippingAddress??a.shipping_address,s=Me(n.name)||gr(r),o=Me(n.address)||fr(r),l=Me(n.phone)||Me(r?.phone),c=a.item_total??a.subtotal??yr(a),d=a.total??c,m=(a.items??[]).some(g=>!g.unit_price);return`Probot Studio - Sipariş

`+(a.items??[]).map(g=>{const x=g.product_title??g.title,k=Me(g.variant_title),h=k&&k!=="Standart"?`${x} (${k})`:x,v=Me(g.variant_sku),z=v?` [${v}]`:"",j=pr(g.quantity,g.product?.metadata);return i||!g.unit_price?`- ${h}${z} x ${j}
`:`- ${h}${z} x ${j} = ${I(g.unit_price*g.quantity)}
`}).join("")+(i?"":`
Genel toplam: ${I(d)}${m?" (fiyatı yazılmayan ürünler hariç)":""}
`)+`
Ad Soyad: ${s}
Teslimat adresim: ${o}
Telefon: ${l}

`+(i?"(Fiyat, ödeme ve teslimat detaylarını burada netleştirelim.)":"(Siparişini onaylayınca ödeme ve teslimat detaylarını burada netleştiririz.)")}function br(a,n){return`https://wa.me/${kr}?text=${encodeURIComponent(xr(a,n))}`}function jr(a,n){const i=br(a,n),r=window.open(i,"_blank");r?r.opener=null:window.location.assign(i)}const vr=!1;function Nr(){const a=He(),[n,i]=Ge(),[r,s]=u.useState(void 0),[o,l]=u.useState(""),[c,d]=u.useState(""),[m,f]=u.useState(!1),[g,x]=u.useState(!1),k=e.jsx(he,{title:t("Sepet - Probot Studio"),description:a?t("Probot Studio mağaza sepetindeki ürünleri görüntüle."):t("Probot Studio mağaza sepetindeki ürünleri ve toplam tutarı görüntüle."),path:"/sepet",noindex:!0}),h=()=>qn().then(j=>{s(j),d("")}).catch(()=>d(t("Sepete ulaşılamadı. Mevcut sepetin korunuyor."))),v=async j=>{if(!m){f(!0);try{await j(),await h()}catch{d(t("Sepet güncellenemedi. Tekrar dene."))}finally{f(!1)}}};if(u.useEffect(()=>{const j=n.get("cart");j?ls(j).then(C=>{s(C);const S=new URLSearchParams(n);S.delete("cart"),i(S,{replace:!0})}).catch(()=>d(t("Sepet bağlantısı açılamadı. Mevcut sepetin korunuyor."))):h();const b=()=>h();return window.addEventListener("cart:updated",b),()=>window.removeEventListener("cart:updated",b)},[]),c&&(!r||!r.items?.length))return e.jsxs(e.Fragment,{children:[k,e.jsxs("section",{className:"account",children:[e.jsx("h1",{children:t("Sepetin")}),e.jsx("p",{role:"alert",children:c}),e.jsx("button",{className:"btn p",onClick:()=>window.dispatchEvent(new CustomEvent("cart:updated")),children:t("Tekrar dene")})]})]});if(r===void 0)return e.jsxs(e.Fragment,{children:[k,e.jsx("section",{className:"account",children:e.jsx("p",{className:"muted",children:t("Sepet yükleniyor…")})})]});const z=r?.items??[];return!r||z.length===0?e.jsxs(e.Fragment,{children:[k,e.jsxs("section",{className:"account",children:[e.jsx("h1",{children:B("Sepetin {hl}",{hl:e.jsx("span",{className:"hl",children:t("şimdilik boş")})})}),e.jsx("p",{className:"muted",children:t("Kitlere ve parçalara göz at - beğendiklerini şimdiden sepetine koy.")}),e.jsx("div",{className:"row",children:e.jsx(_,{to:"/",className:"btn p",children:t("Mağazaya git →")})})]})]}):e.jsxs(e.Fragment,{children:[k,e.jsxs("section",{className:"cartPage",children:[e.jsx("h1",{children:t("Sepetin")}),c&&e.jsxs("p",{role:"alert",children:[c," ",e.jsx("button",{className:"linkBtn",onClick:()=>window.dispatchEvent(new CustomEvent("cart:updated")),children:t("Tekrar dene")})]}),e.jsx("ul",{className:"cartList",children:z.map(j=>e.jsxs("li",{children:[j.thumbnail?e.jsx("img",{src:j.thumbnail,alt:""}):e.jsx("span",{className:"cart-ic",children:"📦"}),e.jsxs("div",{className:"cartInfo",children:[e.jsx("b",{children:Ne(j.product_title??j.title)}),j.variant_title&&j.variant_title!=="Standart"&&e.jsx("span",{className:"muted small",children:Mn(j.variant_title)}),!a&&(j.unit_price?e.jsx("span",{className:"muted small",children:la(j.product?.metadata)>1?t("{price} / paket",{price:I(j.unit_price)}):t("{price} / adet",{price:I(j.unit_price)})}):e.jsx("span",{className:"muted small",children:t("Fiyatı mesajda netleşir")})),la(j.product?.metadata)>1&&e.jsx("span",{className:"muted small packSummary",children:ze("{n} paket ({total} adet)",j.quantity,{total:j.quantity*la(j.product?.metadata)})})]}),e.jsxs("div",{className:"qty sm","aria-label":la(j.product?.metadata)>1?t("Paket adedi"):t("Adet"),children:[e.jsx("button",{type:"button","aria-label":t("Adedi azalt"),disabled:m,onClick:()=>{v(()=>j.quantity<=1?sn(j.id):rn(j.id,j.quantity-1))},children:"−"}),e.jsx("span",{className:"qval",children:j.quantity}),e.jsx("button",{type:"button","aria-label":t("Adedi artır"),disabled:m,onClick:()=>{v(()=>rn(j.id,j.quantity+1))},children:"+"})]}),!a&&!!j.unit_price&&e.jsx("span",{className:"cartLineTotal",children:I(j.unit_price*j.quantity)}),e.jsx("button",{className:"cartRm",disabled:m,onClick:()=>{v(()=>sn(j.id))},"aria-label":t("Kaldır"),children:"✕"})]},j.id))}),vr,(r.promotions??[]).map(j=>e.jsxs("p",{className:"couponOk",children:["🎟️ ",B("{code} uygulandı",{code:e.jsx("b",{children:j.code})}),r.discount_total?t(" - indirim {amount}",{amount:I(r.discount_total)}):"",e.jsx("button",{className:"linkBtn",onClick:()=>os(j.code),children:t("kaldır")})]},j.code)),e.jsxs("div",{className:"cartFoot",children:[e.jsx("span",{children:a?e.jsx("span",{className:"muted",children:t("Fiyatlar WhatsApp'ta netleşiyor")}):e.jsxs(e.Fragment,{children:[r.discount_total?e.jsxs(e.Fragment,{children:[e.jsx("s",{className:"muted",children:I(r.total+r.discount_total)})," "]}):null,B("Toplam {total}",{total:e.jsx("b",{children:I(r.total)})})]})}),e.jsxs("div",{className:"cartAksiyon",children:[!a&&e.jsx(_,{to:"/odeme",className:"btn p",onClick:()=>pe("odeme_baslatildi",{tutar:r.total,yontem:"kart"}),children:t("Kartla öde")}),e.jsx("button",{type:"button",className:a?"btn p":"btn g",onClick:()=>{pe("whatsapp_siparis_tiklandi",{cart_id:r.id,kalem_sayisi:z.length,adet_toplam:z.reduce((j,b)=>j+(b.quantity??0),0)}),pe("odeme_baslatildi",{tutar:a?null:r.total,yontem:"whatsapp"}),jr(r)},children:t("🟢 WhatsApp ile sipariş ver")})]})]}),a?e.jsx("p",{className:"muted small",children:t("Butona bastığınızda sepetiniz WhatsApp mesajı olarak hazırlanır, sipariş işlemi oradan devam eder.")}):e.jsx("p",{className:"muted small",children:t("Kartla ödemede teslimat ve kargo seçiminden sonra güvenli ödeme yaparsın. İstersen sepetini WhatsApp mesajı olarak gönderip siparişini oradan da verebilirsin.")}),e.jsx(it,{})]})]})}function zr({step:a}){const n=[t("Teslimat"),t("Kargo"),t("Onay ve Sipariş")];return e.jsx("ol",{className:"coSteps","aria-label":t("Ödeme adımları"),children:n.map((i,r)=>{const s=r+1,o=s<a?"done":s===a?"on":"";return e.jsxs("li",{className:o,children:[e.jsx("span",{className:"coStepNo",children:s<a?"✓":s}),e.jsx("span",{className:"coStepLabel",children:i})]},i)})})}function Sa(a){return[a.first_name,a.last_name].filter(Boolean).join(" ")}function Ma(a){return[a.address_1,a.city,a.province,a.postal_code].filter(Boolean).join(", ")}function qa({guest:a,onSubmit:n,submitLabel:i,onCancel:r,kayit:s,ilk:o,ilkEmail:l,faturaAlani:c,ilkFatura:d}){const[m,f]=u.useState({city:o?.city??"",province:o?.province??"",postal_code:o?.postal_code??""}),[g,x]=u.useState(!0),[k,h]=u.useState(s?.varsayilan??!1),[v,z]=u.useState(()=>ei(o?.metadata?.fatura??d)),[j,b]=u.useState("");function C(S){S.preventDefault();const L=new FormData(S.currentTarget),K=String(L.get("phone")??"").trim();if(!Pt(K)){b(t("Telefonu 05xx xxx xx xx biçiminde yaz; kargo firması teslimatta bu numarayı arar."));return}if(!m.city.trim()||!m.province.trim()){b(t("İl ve ilçe gerekli. Adres önerisinden seçersen otomatik dolar."));return}let G=null;if(c){const O=Ja(Xn(v),`${L.get("first_name")??""} ${L.get("last_name")??""}`);if(!O.fatura){b(O.hata===void 0?t("Fatura bilgisini kontrol et."):W(O.hata));return}G=O.fatura}b(""),n(a?String(L.get("email")??"").trim():null,{first_name:String(L.get("first_name")??"").trim(),last_name:String(L.get("last_name")??"").trim(),address_1:String(L.get("address_1")??"").trim(),city:m.city.trim(),province:m.province.trim(),postal_code:m.postal_code.trim(),phone:K},s?{kaydet:g,ad:String(L.get("address_name")??"").trim(),varsayilan:g&&k}:null,G)}return e.jsxs("form",{className:"authForm",onSubmit:C,children:[j&&e.jsx("p",{className:"formErr",role:"alert",children:j}),a&&e.jsxs(e.Fragment,{children:[e.jsx("input",{name:"email",type:"email","aria-label":t("E-posta"),placeholder:t("E-posta (sipariş onayı buraya gelir)"),required:!0,defaultValue:l??""}),e.jsx("p",{className:"muted small kvkkNote",children:B("E-postan yalnızca sipariş onayı, kargo bildirimi ve faturan için kullanılır; pazarlama için kullanılmaz. {link}.",{link:e.jsx(_,{to:"/yasal/aydinlatma-metni",target:"_blank",rel:"noopener",children:t("KVKK Aydınlatma Metni")})})})]}),e.jsxs("div",{className:"frow",children:[e.jsx("input",{name:"first_name","aria-label":t("Ad"),placeholder:t("Ad"),required:!0,defaultValue:o?.first_name??""}),e.jsx("input",{name:"last_name","aria-label":t("Soyad"),placeholder:t("Soyad"),required:!0,defaultValue:o?.last_name??""})]}),e.jsx(Wn,{onPick:S=>f({city:S.city,province:S.province,postal_code:S.postal_code}),defaultValue:o?.address_1??""}),e.jsxs("div",{className:"frow",children:[e.jsx("input",{name:"city","aria-label":t("İlçe"),placeholder:t("İlçe"),required:!0,value:m.city,onChange:S=>f(L=>({...L,city:S.target.value}))}),e.jsx("input",{name:"province","aria-label":t("İl"),placeholder:t("İl"),required:!0,value:m.province,onChange:S=>f(L=>({...L,province:S.target.value}))})]}),e.jsxs("div",{className:"frow",children:[e.jsx("input",{name:"postal_code","aria-label":t("Posta kodu"),placeholder:t("Posta kodu"),value:m.postal_code,onChange:S=>f(L=>({...L,postal_code:S.target.value}))}),e.jsx("input",{name:"phone",type:"tel","aria-label":t("Telefon"),placeholder:t("Telefon - 05xx xxx xx xx"),required:!0,defaultValue:o?.phone??""})]}),c&&e.jsx(ai,{value:v,onChange:z}),s&&e.jsxs("div",{className:"adresKayit",children:[e.jsxs("label",{className:"check checkLine",children:[e.jsx("input",{type:"checkbox",name:"kaydet",checked:g,onChange:S=>x(S.target.checked)}),e.jsx("span",{children:t("Bu adresi hesabıma kaydet")})]}),g&&e.jsxs(e.Fragment,{children:[e.jsx("input",{name:"address_name","aria-label":t("Adres başlığı"),placeholder:t("Adres başlığı (ör. Ev, Okul, İş)"),maxLength:40}),e.jsxs("label",{className:"check checkLine",children:[e.jsx("input",{type:"checkbox",name:"varsayilan",checked:k,onChange:S=>h(S.target.checked)}),e.jsx("span",{children:s.varsayilanMetni})]})]})]}),e.jsxs("div",{className:"row",children:[e.jsx("button",{className:"btn p",children:i}),r&&e.jsx("button",{type:"button",className:"btn g",onClick:r,children:t("Vazgeç")})]})]})}function Sr(a){return a==="Kargo"?t("Kargo"):a==="Kargo (sabit ücret)"?t("Kargo (sabit ücret)"):a}function wr(){const a=Fa(),n=He(),[i,r]=u.useState(!1),[s,o]=u.useState(null),[l,c]=u.useState(void 0),[d,m]=u.useState(1),[f,g]=u.useState(""),[x,k]=u.useState(!1),[h,v]=u.useState([]),[z,j]=u.useState(null),[b,C]=u.useState(!1),[S,L]=u.useState(!0),[K,G]=u.useState(!1),[O,se]=u.useState(null),[ae,te]=u.useState(null),[ne,M]=u.useState(!1),[X,F]=u.useState(null),[V,ue]=u.useState(null),[ge,Te]=u.useState(null),[J,U]=u.useState(null),[ie,Re]=u.useState(null),[be,N]=u.useState(null),[R,D]=u.useState(!1),[Y,Q]=u.useState(!1),[re,Ie]=u.useState(null),[Ee,Ve]=u.useState("kart"),ee=s?.email;u.useEffect(()=>{if(n)return;let y=!0;return(async()=>{const T=(await Za())?.user??null;if(!y)return;o(T),r(!0);const A=await ln(T?.email);if(y){if(c(A),!A||!(A.items??[]).length){a("/sepet",{replace:!0});return}if(T){try{const $=await Ta(T.email);y&&Ye($.addresses??[],!0)}catch{}try{const $=await Dn(T.email);y&&$&&ue($)}catch{}}}})(),()=>{y=!1}},[n]);function Ye(y,E){if(v(y),!E)return;const T=y.find($=>$.is_default_shipping)??y[0],A=y.find($=>$.is_default_billing);T&&j(T.id),A&&te(A.id),T&&A&&A.id!==T.id&&!on(A,T)&&L(!1)}async function lt(){const y=await ln(ee);return c(y),y}function $e(y){const E=V?Jn(h):null;return Qn(y,E?.id===y.id?V:null)}function Ue(y,E){return{...E?{metadata:{fatura:E}}:{},first_name:y.first_name??"",last_name:y.last_name??"",address_1:y.address_1??"",city:y.city??"",province:y.province??"",postal_code:y.postal_code??"",phone:y.phone??"",country_code:"tr"}}async function Ht(y){if(!ee||!y.length)return;let E=h;for(const A of y){const $=E.find(xe=>on(xe,A.adres)),ve={...A.teslimat?{is_default_shipping:!0}:{},...A.fatura?{is_default_billing:!0}:{},...A.adres.metadata?.fatura?{metadata:{fatura:A.adres.metadata.fatura}}:{}};if($){Object.keys(ve).length&&await Qa(ee,$.id,ve);continue}await On(ee,{address_name:A.ad||null,first_name:A.adres.first_name??null,last_name:A.adres.last_name??null,address_1:A.adres.address_1??null,city:A.adres.city??null,province:A.adres.province??null,postal_code:A.adres.postal_code??null,phone:A.adres.phone??null,...ve}),E=[...E,{id:"",...A.adres}]}const T=await Ta(ee);Ye(T.addresses??[],!1)}async function Ia(y,E,T,A=[],$=null){const ve=T.metadata?.fatura??null;if(!ve){g(t("Fatura bilgisi eksik. Fatura adresini düzenle."));return}g(""),k(!0);try{await cs({email:y||ee,shipping_address:E,billing_address:T},ee),await Ht(A).catch(()=>g(t("Adres siparişe eklendi ama hesabına kaydedilemedi; Hesabım > Adreslerim bölümünden ekleyebilirsin.")));const xe=await lt(),Ka=await ds(ee);Re(Ka),N(xe?.shipping_methods?.[0]?.shipping_option_id??Ka[0]?.id??null),se(null),Te(ve),U($),m(2)}catch(xe){g(xe instanceof Error?W(xe.message):t("Adres kaydedilemedi - tekrar dene."))}finally{k(!1)}}function ia(y,E,T,A,$=null){if(S){const ve=T&&(T.teslimat||!h.some(xe=>xe.is_default_billing))?{...T,fatura:!0}:T;Ia(y,E,{...E,...A?{metadata:{fatura:A}}:{}},ve?[ve]:[],$)}else se({email:y,ship:E,kayit:T})}function ga(y,E,T){return E?.kaydet?{adres:y,ad:E.ad,teslimat:T==="teslimat"&&E.varsayilan,fatura:T==="fatura"&&E.varsayilan}:null}function ot(y){y.preventDefault();const E=h.find(A=>A.id===z);if(!E){g(t("Bir adres seç ya da yeni adres ekle."));return}const T=Ue(E);if(!Pt(T.phone)){g(t("Seçtiğin adreste geçerli bir telefon yok. Hesabım > Adreslerim bölümünden telefonu ekle ya da yeni adres gir."));return}ia(ee??null,T,K&&!E.is_default_shipping?{adres:T,ad:"",teslimat:!0,fatura:!1}:null,$e(E),E.id)}function $a(y){if(y.preventDefault(),!O)return;const E=h.find(T=>T.id===ae);if(!E){g(t("Bir fatura adresi seç ya da yeni adres ekle."));return}Ia(O.email,O.ship,Ue(E,$e(E)),O.kayit?[O.kayit]:[],E.id)}async function P(y,E,T){if(ee){g(""),k(!0);try{await Qa(ee,y,{...E,...T?{metadata:{fatura:T}}:{}});const A=await Ta(ee);Ye(A.addresses??[],!1),F(null)}catch(A){g(A instanceof Error?W(A.message):t("Adres güncellenemedi - tekrar dene."))}finally{k(!1)}}}function We(){m(1),se(null),s&&J&&F(J)}async function Se(){if(!be){g(t("Bir kargo yöntemi seç."));return}g(""),k(!0);try{const y=await us(be,ee);c(y),Ie(null);const E=await ms(ee);Ie(E),E.kart.acik?Ve("kart"):E.havale.acik&&Ve("havale"),m(3)}catch(y){g(y instanceof Error?W(y.message):t("Kargo yöntemi eklenemedi - tekrar dene."))}finally{k(!1)}}async function fe(){if(n||!(R&&Y)||!l||!(l.items??[]).length)return;const y=ge;if(!y){g(t("Fatura bilgisi eksik. Fatura adresini düzenle."));return}g(""),k(!0);const E=(l.items??[]).map(T=>({id:T.id,title:T.product_title??T.title,quantity:T.quantity,unit_price:T.unit_price}));try{if(Ee==="havale"){const A=await hs(y,ee);try{localStorage.setItem(Ga,JSON.stringify({id:A.order_id,display_id:A.display_id,email:l.email??ee,total:A.tutar,kargo:ce,items:E,havale:A.havale}))}catch{}xt(),pe("satin_alindi",{siparis_no:A.display_id,tutar:A.tutar,yontem:"havale"}),a("/odeme/sonuc?durum=havale",{replace:!0});return}const T=await ps(y,ee);if(T.durum==="yonlendir"){try{localStorage.setItem(bt,JSON.stringify({cart_id:l.id,total:T.tutar,kart_farki:T.kart_farki,kargo:ce,items:E}))}catch{}pe("odeme_sayfasina_gidildi",{tutar:T.tutar}),window.location.assign(T.url);return}xt(),a("/hesap",{replace:!0})}catch(T){g(T instanceof Error?W(T.message):t("Ödeme başlatılamadı. Birazdan tekrar dene.")),k(!1)}}const we=e.jsx(he,{title:t("Sipariş - Probot Studio"),description:t("Probot Studio siparişini güvenle tamamla."),path:"/odeme",noindex:!0});if(n)return e.jsxs(e.Fragment,{children:[we,e.jsxs("section",{className:"account",children:[e.jsx("h1",{children:t("Çok yakında")}),e.jsx("button",{type:"button",className:"btn p",disabled:!0,children:t("Çok yakında")}),e.jsx("div",{className:"row",children:e.jsx(_,{to:"/",className:"btn g",children:t("Mağazaya dön")})})]})]});if(!i||l===void 0)return e.jsxs(e.Fragment,{children:[we,e.jsx("section",{className:"account",children:e.jsx("p",{className:"muted",children:t("Yükleniyor…")})})]});const Ze=l?.items??[],ce=l?.shipping_total??0,Qe=l?.item_total??l?.subtotal??0,Ce=l?.discount_total??0,je=re?.kart.acik?re.kart:null,fa=je?Ca()===void 0?je.oran_metni:In(je.oran,{style:"percent",maximumFractionDigits:2}):"",ye=re?.havale.acik?re.havale:null,Pe=Ee==="kart"&&je?je.fark:0,_e=Ee==="kart"?je?.toplam??null:ye?.toplam??null,ya=!!re&&!je&&!ye,de=X&&h.find(y=>y.id===X)||null,xa=y=>e.jsx("button",{type:"button",className:"linkBtn adrDuzenle",disabled:x,onClick:()=>F(y.id),children:t("Düzenle")});return e.jsxs(e.Fragment,{children:[we,e.jsxs("section",{className:"checkout",children:[e.jsx("h1",{children:t("Sipariş")}),e.jsx(zr,{step:d}),f&&e.jsx("p",{className:"formErr",role:"alert",children:f}),d===1&&de&&e.jsxs("div",{className:"coCard",children:[e.jsx("h2",{children:t("Adresi düzenle")}),e.jsx(qa,{guest:!1,ilk:de,faturaAlani:!0,ilkFatura:$e(de),submitLabel:x?"…":t("Değişikliği kaydet"),onCancel:()=>F(null),onSubmit:(y,E,T,A)=>P(de.id,E,A)},de.id)]}),d===1&&!O&&!de&&e.jsxs("div",{className:"coCard",children:[e.jsx("h2",{children:t("Teslimat bilgileri")}),s?h.length&&!b?e.jsxs("form",{onSubmit:ot,children:[e.jsx("p",{className:"muted small",children:B("Merhaba {name} - kayıtlı adreslerinden seç:",{name:e.jsx("span",{className:"ph-sensitive",children:s.name||s.email})})}),e.jsx("ul",{className:"addrPick",children:h.map(y=>e.jsxs("li",{children:[e.jsxs("label",{className:z===y.id?"on":"",children:[e.jsx("input",{type:"radio",name:"addr",checked:z===y.id,onChange:()=>j(y.id)}),e.jsxs("span",{className:"ph-sensitive",children:[e.jsxs("b",{children:[y.address_name||Sa(y)||t("Adres"),y.is_default_shipping&&e.jsx("span",{className:"adrRozet",children:t("Varsayılan")})]}),e.jsxs("span",{className:"muted small",children:[Sa(y),y.phone?` · ${y.phone}`:""," · ",Ma(y)]}),S&&e.jsx("span",{className:"small adrFatura",children:B("Fatura: {summary}",{summary:e.jsx(Ya,{fatura:$e(y)})})})]})]}),xa(y)]},y.id))}),z&&!h.find(y=>y.id===z)?.is_default_shipping&&e.jsxs("label",{className:"check checkLine",children:[e.jsx("input",{type:"checkbox",checked:K,onChange:y=>G(y.target.checked)}),e.jsx("span",{children:t("Bu adresi varsayılan teslimat adresim yap")})]}),e.jsxs("label",{className:"check checkLine billingChk",children:[e.jsx("input",{type:"checkbox",checked:S,onChange:y=>L(y.target.checked)}),e.jsx("span",{children:t("Fatura adresim teslimat adresimle aynı")})]}),e.jsxs("div",{className:"row",children:[e.jsx("button",{className:"btn p",disabled:x||!z,children:x?"…":S?t("Devam et →"):t("Fatura adresi →")}),e.jsx("button",{type:"button",className:"btn g",onClick:()=>C(!0),children:t("+ Yeni adres")})]})]}):e.jsxs(e.Fragment,{children:[e.jsxs("label",{className:"check checkLine billingChk",children:[e.jsx("input",{type:"checkbox",checked:S,onChange:y=>L(y.target.checked)}),e.jsx("span",{children:t("Fatura adresim teslimat adresimle aynı")})]}),e.jsx(qa,{guest:!1,faturaAlani:S,ilkFatura:h.length?null:V,submitLabel:x?"…":S?t("Devam et →"):t("Fatura adresi →"),onCancel:h.length?()=>C(!1):void 0,kayit:{varsayilanMetni:t("Varsayılan teslimat adresim olsun"),varsayilan:!h.some(y=>y.is_default_shipping)},onSubmit:(y,E,T,A)=>{const $=Ue(E);ia(ee??null,$,ga(Ue(E,A),T,"teslimat"),A)}})]}):e.jsxs(e.Fragment,{children:[e.jsx("p",{className:"muted small",children:B("Üye olmadan devam ediyorsun. Zaten hesabın varsa {link} - adreslerin hazır gelir.",{link:e.jsx(_,{to:"/hesap",children:t("giriş yap")})})}),e.jsxs("label",{className:"check checkLine billingChk",children:[e.jsx("input",{type:"checkbox",checked:S,onChange:y=>L(y.target.checked)}),e.jsx("span",{children:t("Fatura adresim teslimat adresimle aynı")})]}),e.jsx(qa,{guest:!0,faturaAlani:S,ilk:l?.shipping_address,ilkEmail:l?.email,ilkFatura:S?ge:null,submitLabel:x?"…":S?t("Devam et →"):t("Fatura adresi →"),onSubmit:(y,E,T,A)=>ia(y,Ue(E),null,A)})]})]}),d===1&&O&&!de&&e.jsxs("div",{className:"coCard",children:[e.jsx("h2",{children:t("Fatura adresi")}),s&&h.length>0&&!ne?e.jsxs("form",{onSubmit:$a,children:[e.jsx("p",{className:"muted small",children:t("Faturanın düzenleneceği adresi seç:")}),e.jsx("ul",{className:"addrPick",children:h.map(y=>e.jsxs("li",{children:[e.jsxs("label",{className:ae===y.id?"on":"",children:[e.jsx("input",{type:"radio",name:"bill",checked:ae===y.id,onChange:()=>te(y.id)}),e.jsxs("span",{className:"ph-sensitive",children:[e.jsxs("b",{children:[y.address_name||Sa(y)||t("Adres"),y.is_default_billing&&e.jsx("span",{className:"adrRozet",children:t("Varsayılan fatura")})]}),e.jsxs("span",{className:"muted small",children:[Sa(y)," · ",Ma(y)]}),e.jsx("span",{className:"small adrFatura",children:B("Fatura: {summary}",{summary:e.jsx(Ya,{fatura:$e(y)})})})]})]}),xa(y)]},y.id))}),e.jsxs("div",{className:"row",children:[e.jsx("button",{className:"btn p",disabled:x||!ae,children:x?"…":t("Devam et →")}),e.jsx("button",{type:"button",className:"btn g",onClick:()=>M(!0),children:t("+ Yeni fatura adresi")}),e.jsx("button",{type:"button",className:"btn g",onClick:()=>se(null),children:t("← Teslimat")})]})]}):e.jsxs(e.Fragment,{children:[e.jsx("p",{className:"muted small",children:t("Teslimat adresinden farklı fatura adresini gir.")}),e.jsx(qa,{guest:!1,faturaAlani:!0,ilk:s?null:l?.billing_address,ilkFatura:s?h.length?null:V:ge,submitLabel:x?"…":t("Devam et →"),onCancel:()=>h.length&&ne?M(!1):se(null),kayit:s?{varsayilanMetni:t("Varsayılan fatura adresim olsun"),varsayilan:!h.some(y=>y.is_default_billing)}:void 0,onSubmit:(y,E,T,A)=>{const $=Ue(E,A),ve=[O.kayit,ga($,T,"fatura")].filter(xe=>!!xe);Ia(O.email,O.ship,$,ve)}})]})]}),d===2&&e.jsxs("div",{className:"coCard",children:[e.jsx("h2",{children:t("Kargo yöntemi")}),ie===null?e.jsx("p",{className:"muted",children:t("Kargo seçenekleri yükleniyor…")}):ie.length===0?e.jsx("p",{className:"formErr",children:t("Bu adres için kargo seçeneği bulunamadı. destek@probotstudio.com")}):e.jsx("ul",{className:"shipList",children:ie.map(y=>e.jsx("li",{children:e.jsxs("label",{className:be===y.id?"on":"",children:[e.jsx("input",{type:"radio",name:"ship",checked:be===y.id,onChange:()=>N(y.id)}),e.jsx("span",{className:"shipName",children:Sr(y.name)}),e.jsx("span",{className:"shipAmt",children:y.amount>0?I(y.amount):t("Ücretsiz")})]})},y.id))}),e.jsxs("div",{className:"row",children:[e.jsx("button",{className:"btn p",disabled:x||!be,onClick:Se,children:x?"…":t("Devam et →")}),e.jsx("button",{type:"button",className:"btn g",onClick:()=>m(1),children:t("← Adres")})]})]}),d===3&&e.jsxs("div",{className:"coCard",children:[e.jsx("h2",{children:t("Sipariş özeti")}),e.jsx("ul",{className:"coSummary",children:Ze.map(y=>e.jsxs("li",{children:[e.jsxs("span",{className:"coSumName",children:[Ne(y.product_title??y.title)," ",e.jsxs("span",{className:"muted",children:["× ",y.quantity]})]}),e.jsx("span",{className:"coSumAmt",children:I(y.unit_price*y.quantity)})]},y.id))}),e.jsxs("dl",{className:"coTotals",children:[e.jsxs("div",{children:[e.jsx("dt",{children:t("Ara toplam")}),e.jsx("dd",{children:I(Qe)})]}),Ce>0&&e.jsxs("div",{className:"coDisc",children:[e.jsx("dt",{children:t("İndirim")}),e.jsxs("dd",{children:["-",I(Ce)]})]}),e.jsxs("div",{children:[e.jsx("dt",{children:t("Kargo")}),e.jsx("dd",{children:ce>0?I(ce):t("Ücretsiz")})]}),Pe>0&&je&&e.jsxs("div",{"data-testid":"kart-farki-satiri",children:[e.jsx("dt",{children:t("Kart ödeme farkı ({rate})",{rate:fa})}),e.jsx("dd",{children:I(Pe)})]}),e.jsxs("div",{className:"coGrand",children:[e.jsx("dt",{children:t("Genel toplam")}),e.jsx("dd",{"data-testid":"genel-toplam",children:_e===null?"…":I(_e)})]})]}),l?.shipping_address&&e.jsxs("div",{className:"coAddrBox",children:[e.jsx("b",{children:t("Teslimat")}),e.jsxs("span",{className:"muted small ph-sensitive",children:[Sa(l.shipping_address),l.shipping_address.phone?` · ${l.shipping_address.phone}`:""]}),e.jsx("span",{className:"muted small ph-sensitive",children:Ma(l.shipping_address)}),e.jsx("button",{type:"button",className:"linkBtn",onClick:()=>m(1),children:t("Adresi değiştir")})]}),e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"coAddrBox","data-testid":"fatura-ozet",children:[e.jsx("b",{children:t("Fatura")}),e.jsx("span",{className:"small ph-sensitive",children:ge?e.jsx(Ya,{fatura:ge,adGoster:!0}):t("Fatura bilgisi eksik.")}),l?.billing_address&&e.jsx("span",{className:"muted small ph-sensitive",children:Ma(l.billing_address)}),e.jsx("button",{type:"button",className:"linkBtn",onClick:We,children:t("Fatura bilgisini düzenle")})]}),e.jsxs("div",{className:"coPay",children:[e.jsx("b",{children:t("Ödeme yöntemi")}),re?ya?e.jsx("p",{className:"formErr",children:t("Şu an çevrimiçi ödeme alamıyoruz. destek@probotstudio.com")}):e.jsxs("ul",{className:"shipList odemeYontem",children:[je&&e.jsx("li",{children:e.jsxs("label",{className:Ee==="kart"?"on":"",children:[e.jsx("input",{type:"radio",name:"yontem",value:"kart",checked:Ee==="kart",onChange:()=>Ve("kart")}),e.jsxs("span",{className:"shipName",children:[t("Kredi ya da banka kartı"),e.jsx("span",{className:"muted small",children:t("Tek çekim. Kartla ödemede ödeme kuruluşunun işlem bedeli olarak {rate} kart ödeme farkı ({fee}) eklenir. Kart bilgilerini Paratika'nın güvenli ödeme sayfasında girersin; kart bilgin bize ulaşmaz.",{rate:fa,fee:I(je.fark)})})]}),e.jsx("span",{className:"shipAmt",children:I(je.toplam)})]})}),ye&&e.jsx("li",{children:e.jsxs("label",{className:Ee==="havale"?"on":"",children:[e.jsx("input",{type:"radio",name:"yontem",value:"havale",checked:Ee==="havale",onChange:()=>Ve("havale")}),e.jsxs("span",{className:"shipName",children:[t("Havale / EFT"),e.jsx("span",{className:"muted small",children:ze("Ek ücret yok. Siparişin hemen oluşur; IBAN ve açıklama bir sonraki sayfada ve e-postanda. {n} gün içinde ödeme gelmezse sipariş iptal edilir. Ödeme hesabımıza geçince siparişini hazırlamaya başlarız.",ye.iptal_gun)})]}),e.jsx("span",{className:"shipAmt",children:I(ye.toplam)})]})})]}):e.jsx("p",{className:"muted small",children:t("Ödeme seçenekleri yükleniyor…")})]})]}),e.jsxs("div",{className:"coConsent",children:[e.jsxs("label",{className:"check",children:[e.jsx("input",{type:"checkbox",checked:R,onChange:y=>D(y.target.checked)}),e.jsx("span",{children:B("{link}'ni okudum ve onaylıyorum.",{link:e.jsx(_,{to:"/yasal/mesafeli-satis-sozlesmesi",target:"_blank",rel:"noopener",children:t("Mesafeli Satış Sözleşmesi")})})})]}),e.jsxs("label",{className:"check",children:[e.jsx("input",{type:"checkbox",checked:Y,onChange:y=>Q(y.target.checked)}),e.jsx("span",{children:B("{link}'nu okudum ve onaylıyorum.",{link:e.jsx(_,{to:"/yasal/on-bilgilendirme-formu",target:"_blank",rel:"noopener",children:t("Ön Bilgilendirme Formu")})})})]})]}),e.jsxs("div",{className:"row",children:[e.jsx("button",{className:"btn p coPayBtn",disabled:x||!(R&&Y)||_e===null||ya,onClick:fe,title:R&&Y?"":t("Sözleşmeleri onayla"),"data-testid":"odeme-tusu",children:Ee==="havale"?x?t("Sipariş oluşturuluyor…"):t("Siparişi tamamla {amount}",{amount:_e===null?"":I(_e)}):x?t("Ödeme sayfası açılıyor…"):t("Kartla öde {amount}",{amount:_e===null?"":I(_e)})}),e.jsx("button",{type:"button",className:"btn g",onClick:()=>m(2),children:t("← Kargo")})]})]})]})]})}const _r=45e3;function pt(a){try{const n=localStorage.getItem(a);return n?JSON.parse(n):null}catch{return null}}function xn({o:a,toplamEtiketi:n}){const i=a.items??[];return e.jsxs(e.Fragment,{children:[i.length>0&&e.jsxs("ul",{className:"coSummary orderSummary",children:[i.map(r=>e.jsxs("li",{children:[e.jsxs("span",{className:"coSumName",children:[Ne(r.title)," ",e.jsxs("span",{className:"muted",children:["× ",r.quantity]})]}),typeof r.unit_price=="number"&&e.jsx("span",{className:"coSumAmt",children:I(r.unit_price*r.quantity)})]},r.id)),typeof a.kargo=="number"&&e.jsxs("li",{children:[e.jsx("span",{className:"coSumName",children:t("Kargo")}),e.jsx("span",{className:"coSumAmt",children:a.kargo>0?I(a.kargo):t("Ücretsiz")})]}),typeof a.kart_farki=="number"&&a.kart_farki>0&&e.jsxs("li",{children:[e.jsx("span",{className:"coSumName",children:t("Kart ödeme farkı")}),e.jsx("span",{className:"coSumAmt",children:I(a.kart_farki)})]})]}),typeof a.total=="number"&&e.jsxs("p",{className:"coGrandLine","data-testid":"sonuc-tutar",children:[n," ",e.jsx("b",{children:I(a.total)})]})]})}function Ar(){const a=He(),[n]=Ge(),[i,r]=u.useState({s:"checking"}),s=u.useRef(!1),o=e.jsx(he,{title:t("Sipariş sonucu - Probot Studio"),description:t("Ödeme sonucu ve sipariş özeti."),path:"/odeme/sonuc",noindex:!0});if(u.useEffect(()=>{if(a||s.current)return;s.current=!0;let c=!0;const d=(m,f)=>{localStorage.setItem(Ga,JSON.stringify(m)),(!f||ht()===f)&&xt(),localStorage.removeItem(bt),pe("satin_alindi",{siparis_no:m.display_id,tutar:m.total}),r({s:"ok",order:m})};return(async()=>{const m=n.get("ref")??"",f=n.get("durum");if(f==="hata"){const x=n.get("mesaj");r({s:"fail",message:t("Ödeme onaylanmadı{reason}. Kartından para çekilmedi; sepetin duruyor, tekrar deneyebilirsin.",{reason:x?` (${x})`:""})});return}if(f==="havale"){const x=pt(Ga);x?.havale?r({s:"havale",order:x}):r({s:"fail",message:t("Sipariş bilgisi bu cihazda bulunamadı. Siparişin oluştuysa ödeme bilgileri Siparişlerim bölümünde ve e-postanda.")});return}if(/^payses_[A-Za-z0-9]+$/.test(m)){const x=pt(bt)??{},k=Date.now()+_r;for(;c&&Date.now()<k;){try{const h=await ks(m);if(h.durum==="tamamlandi"){d({id:h.order_id,display_id:h.display_id??0,total:typeof h.tutar=="number"?h.tutar:x.total,kart_farki:x.kart_farki,kargo:x.kargo,items:x.items},h.cart_id);return}if(h.durum==="hata"){r({s:"fail",message:t("Ödemen bankadan onay almadı. Sepetin duruyor; dilersen tekrar dene.")});return}if(h.durum==="yok")break}catch{}await new Promise(h=>setTimeout(h,2e3))}c&&r({s:"pending"});return}const g=pt(Ga);if(g&&!ht()){r(g.havale?{s:"havale",order:g}:{s:"ok",order:g});return}r({s:"fail",message:t("Ödeme oturumu bulunamadı. Siparişin oluştuysa Siparişlerim bölümünde görürsün; oluşmadıysa sepetin korunur.")})})(),()=>{c=!1}},[n,a]),a)return e.jsxs(e.Fragment,{children:[o,e.jsxs("section",{className:"account",children:[e.jsx("h1",{children:t("Çok yakında")}),e.jsx(_,{to:"/",className:"btn g",children:t("Mağazaya dön")})]})]});if(i.s==="checking")return e.jsxs(e.Fragment,{children:[o,e.jsxs("section",{className:"account",children:[e.jsx("h1",{children:t("Ödeme kontrol ediliyor…")}),e.jsx("p",{className:"muted",children:t("Bankadan dönüşün doğrulanıyor, lütfen bekle. Bu sayfayı kapatma.")})]})]});if(i.s==="pending")return e.jsxs(e.Fragment,{children:[o,e.jsxs("section",{className:"account","data-testid":"sonuc-bekliyor",children:[e.jsx("h1",{children:t("Ödemen işleniyor")}),e.jsx("p",{className:"muted",children:t("Bankadan onay henüz gelmedi. Ödemen onaylandıysa siparişin birkaç dakika içinde oluşur ve onay e-postası gelir; Hesabım'daki Siparişlerim bölümünde de görünür. Tekrar ödeme yapma.")}),e.jsxs("div",{className:"row",children:[e.jsx(_,{to:"/hesap",className:"btn p",children:t("Siparişlerim")}),e.jsx(_,{to:"/sepet",className:"btn g",children:t("Sepete dön")})]})]})]});if(i.s==="fail"){const c=!!ht();return e.jsxs(e.Fragment,{children:[o,e.jsxs("section",{className:"account","data-testid":"sonuc-hata",children:[e.jsx("h1",{children:B("Ödeme {hl}",{hl:e.jsx("span",{className:"hl",children:t("tamamlanamadı")})})}),e.jsx("p",{className:"muted",children:i.message}),e.jsx("p",{className:"muted small",children:t("Kartından çekim yapıldıysa ve sipariş görünmüyorsa endişelenme: onaylanan ödeme birkaç dakika içinde siparişe dönüşür, siparişe dönüşmeyen tutar iade edilir. Sorun için destek@probotstudio.com.")}),e.jsxs("div",{className:"row",children:[c&&e.jsx(_,{to:"/odeme",className:"btn p","data-testid":"tekrar-dene",children:t("Tekrar dene →")}),e.jsx(_,{to:"/sepet",className:c?"btn g":"btn p",children:t("Sepete dön")}),e.jsx(_,{to:"/hesap",className:"btn g",children:t("Siparişlerim")})]})]})]})}const l=i.order;return i.s==="havale"&&l.havale?e.jsxs(e.Fragment,{children:[o,e.jsxs("section",{className:"account","data-testid":"sonuc-havale",children:[e.jsx("h1",{children:B("Siparişin {hl}",{hl:e.jsx("span",{className:"hl",children:t("ödeme bekliyor")})})}),e.jsx("p",{className:"muted",children:B("Sipariş numaran {orderNo}. Aşağıdaki hesaba havale ya da EFT yapınca siparişini hazırlamaya başlarız. Bu bilgiler e-postana da gönderildi ve Hesabım'daki Siparişlerim bölümünde duruyor.",{orderNo:e.jsxs("b",{className:"mono",children:["#",l.display_id]})})}),e.jsx(Zn,{t:l.havale,tutar:l.total??0}),e.jsx(xn,{o:l,toplamEtiketi:t("Ödenecek tutar")}),e.jsx("p",{className:"muted small",children:t("Ödemen hesabımıza geçince onay e-postası gelir; ardından siparişini atölyede hazırlayıp kargoya veririz.")}),e.jsxs("div",{className:"row",children:[e.jsx(_,{to:"/hesap",className:"btn p",children:t("Siparişlerim →")}),e.jsx(_,{to:"/urunler",className:"btn g",children:t("Alışverişe devam")})]})]})]}):e.jsxs(e.Fragment,{children:[o,e.jsxs("section",{className:"account","data-testid":"sonuc-ok",children:[e.jsx("h1",{children:B("Siparişin {hl}",{hl:e.jsx("span",{className:"hl",children:t("alındı")})})}),e.jsx("p",{className:"muted",children:l.email?B("Teşekkürler! Sipariş numaran {orderNo}. Onay e-postası {email} adresine gönderildi.",{orderNo:e.jsxs("b",{className:"mono",children:["#",l.display_id]}),email:e.jsx("b",{children:l.email})}):B("Teşekkürler! Sipariş numaran {orderNo}. Onay e-postası gönderildi.",{orderNo:e.jsxs("b",{className:"mono",children:["#",l.display_id]})})}),e.jsx(xn,{o:l,toplamEtiketi:t("Ödenen tutar")}),e.jsx("p",{className:"muted small",children:t("Siparişini atölyede hazırlayıp kargoya verince e-posta ile takip numarası göndereceğiz.")}),e.jsxs("div",{className:"row",children:[e.jsx(_,{to:"/hesap",className:"btn p",children:t("Siparişlerim →")}),e.jsx(_,{to:"/takip",className:"btn g",children:t("Kargo takibi")}),e.jsx(_,{to:"/urunler",className:"btn g",children:t("Alışverişe devam")})]})]})]})}const Tr=new Set(["altigen-gobek-7mm","altigen-mil","baglanti-aparati","civata","disli","ftc-biobuzz-starter-bot","ftc-motor-adaptor","kaucuk-tahrik-teker-100","kayis","mil-bilezigi","omni-sase","omni-teker-100","rulman","somun","structure"]),Er=/\((PRB-[A-Z0-9][A-Z0-9\-/.]*)\)/;function Cr(a,n){const i=Er.exec(a),r=i?n[i[1]]:void 0;if(!i||!r)return a;const s=a.slice(0,i.index).trimEnd(),o=a.slice(i.index);return s?e.jsxs(e.Fragment,{children:[e.jsx(_,{to:`/urun/${r}?sku=${encodeURIComponent(i[1])}`,children:s})," ",o]}):a}function Pr(a){const n=[];for(const i of a.split(`
`)){const r=i.trim();if(!r){n[n.length-1]?.kind==="para"&&n.push({kind:"para",lines:[]});continue}const s=/^\*\*(.+)\*\*$/.exec(r);if(s){n.push({kind:"head",text:s[1].trim()});continue}if(r.startsWith("!! ")){n.push({kind:"uyari",text:r.slice(3).trim()});continue}if(r.startsWith("- ")||r.startsWith("• ")){const l=r.replace(/^(-|•)\s*/,""),c=n[n.length-1];c?.kind==="list"?c.items.push(l):n.push({kind:"list",items:[l]});continue}const o=n[n.length-1];o?.kind==="para"?o.lines.push(r):n.push({kind:"para",lines:[r]})}return n.filter(i=>i.kind==="para"?i.lines.length>0:!0)}function ii({note:a,skuHandles:n}){const i=Pr(a);return e.jsx(e.Fragment,{children:i.map((r,s)=>e.jsxs(u.Fragment,{children:[r.kind==="head"&&e.jsx("p",{className:"notHead",children:r.text}),r.kind==="uyari"&&e.jsx("p",{className:"notUyari",children:r.text}),r.kind==="list"&&e.jsx("ul",{className:"notListe muted small",children:r.items.map((o,l)=>e.jsx("li",{children:Cr(o,n)},l))}),r.kind==="para"&&e.jsx("p",{className:"muted small",children:r.lines.join(" ")})]},s))})}function Br({urun:a,secili:n,degisti:i,fiyatGizli:r,skuHandles:s}){const o=Aa(a)[0];if(!o)return null;const l=Va(o),c=Hn(o),m=(Array.isArray(a.metadata?.variant_notes)?a.metadata.variant_notes:[]).find(g=>g?.title===o.title)?.note??null,f=le(a.title);return e.jsxs("div",{className:`urunEklenti${l?" yok":""}`,children:[e.jsxs("label",{className:"urunEklenti-sec",children:[e.jsx("input",{type:"checkbox",checked:n&&!l,disabled:l,onChange:g=>i(g.target.checked)}),e.jsxs("span",{className:"urunEklenti-ad",children:[e.jsx("b",{children:t("{ad} ekle",{ad:f})}),l?e.jsx("span",{className:"urunEklenti-durum",children:t("Stokta yok")}):null]}),!r&&c!==null&&e.jsxs("span",{className:"urunEklenti-fiyat",children:["+",I(c)]})]}),a.description&&e.jsx("p",{className:"muted small",children:le(a.description)}),m&&e.jsxs("details",{className:"urunEklenti-icerik",children:[e.jsx("summary",{children:t("Paketin içeriği")}),e.jsx("div",{className:"variantNote",children:e.jsx(ii,{note:le(m),skuHandles:s})})]})]})}const Rr=[{egitim:"starter-bot",ad:"Probot Starter Bot Eğitimi",yol:"/egitim/starter-bot/",kit:"ftc-biobuzz-starter-bot",kitAd:"Starter Bot kiti"}],Fr={egitimler:Rr},Rt=a=>Fr.egitimler.find(n=>n.kit===a);let bn=null;function Lr(a){return bn??=fetch("/egitim/urun-dersleri.json",{credentials:"same-origin"}).then(n=>n.ok?n.json():{urunler:{}}).then(n=>n.urunler??{}).catch(()=>({})),bn.then(n=>n[a]??[])}function Ir({handle:a}){const[n,i]=u.useState([]);if(u.useEffect(()=>{let s=!0;return i([]),Rt(a)||Lr(a).then(o=>{s&&i(o)}),()=>{s=!1}},[a]),!n.length)return null;const r=[...new Set(n.map(s=>s.egitim).filter(Boolean))];return e.jsxs("div",{className:"pdp-dok pdp-egitimde",children:[e.jsxs("h2",{children:[t("Eğitimde"),r.length===1&&e.jsxs("span",{children:[" · ",r[0]]})]}),e.jsx("ul",{children:n.map(s=>e.jsx("li",{children:e.jsx("a",{href:s.yol,children:s.baslik})},s.yol))})]})}function $r({handle:a}){const n=Rt(a);return n?e.jsxs("div",{className:"pdp-learn",children:[e.jsx("h2",{children:t("Bu kitle gelen eğitim")}),e.jsx("p",{children:B("{kurs}'nde bu robotu görev görev toplayıp Blocks ya da OnBot Java ile programlıyorsun. Türkçe ve ücretsiz.",{kurs:e.jsx("a",{href:n.yol,children:n.ad})})}),e.jsx("a",{className:"btn g",href:n.yol,children:t("Eğitime git →")}),e.jsx("p",{className:"muted small",children:B("Öğretmen ya da mentörsen kit kutusundaki karttaki kodu {link} sayfasında gir. Sınıfın açılır, öğrencilerine katılım kodunu verirsin.",{link:e.jsx("a",{href:tt("/egitim/etkinlestir/"),children:t("Kit etkinleştir")})})})]}):null}const Kr=new Set(["ftc-biobuzz-starter-bot"]),Dr={get siyah(){return t("Siyah")},get gri(){return t("Gri")},get beyaz(){return t("Beyaz")},get mavi(){return t("Mavi")},get mor(){return t("Mor")},get koyu_yesil(){return t("Koyu yeşil")},get parlak_yesil(){return t("Parlak yeşil")},get kirmizi(){return t("Kırmızı")},get turuncu(){return t("Turuncu")}};function jn({n:a}){return e.jsxs("span",{className:"stars",children:["★".repeat(Math.round(a)),"☆".repeat(5-Math.round(a))]})}const vn="https://schema.org/NewCondition",Or="Probot kullanıcısı";function Mr(a,n){const i=n.kit_status==="on-talep";return a?.manage_inventory?(a.inventory_quantity??0)>0?"https://schema.org/InStock":a.allow_backorder?"https://schema.org/BackOrder":"https://schema.org/OutOfStock":i?"https://schema.org/PreOrder":void 0}const qr=1e4;function Hr(a,n){return{"@type":"OfferShippingDetails",shippingDestination:{"@type":"DefinedRegion",addressCountry:"TR"},shippingRate:{"@type":"MonetaryAmount",value:a>=qr?0:200,currency:"TRY"},...n?{}:{deliveryTime:{"@type":"ShippingDeliveryTime",handlingTime:{"@type":"QuantitativeValue",minValue:1,maxValue:2,unitCode:"DAY"}}}}}const Gr={"@type":"MerchantReturnPolicy",applicableCountry:"TR",returnPolicyCategory:"https://schema.org/MerchantReturnFiniteReturnWindow",merchantReturnDays:14,returnMethod:"https://schema.org/ReturnByMail",merchantReturnLink:da("/yasal/teslimat-iade"),returnFees:"https://schema.org/FreeReturn"};function Vr(){const{handle:a=""}=pa(),[n]=Ge(),i=n.get("sku")??"",r=He(),[s,o]=u.useState(void 0),[l,c]=u.useState(null),[d,m]=u.useState(!1),[f,g]=u.useState(null),[x,k]=u.useState([]),[h,v]=u.useState(!1),[z,j]=u.useState(null),[b,C]=u.useState(!1),[S,L]=u.useState(1),[K,G]=u.useState(0),[O,se]=u.useState(""),ae=u.useRef(null),te=u.useRef(null);u.useEffect(()=>(ae.current=null,se(""),C(!1),()=>{te.current!==null&&clearTimeout(te.current)}),[a,K,S]);const[ne,M]=u.useState(!1),[X,F]=u.useState(!1),[V,ue]=u.useState(""),[ge,Te]=u.useState(""),[J,U]=u.useState(!1),[ie,Re]=u.useState(!1),[be,N]=u.useState(""),[R,D]=u.useState(""),[Y,Q]=u.useState(null),[re,Ie]=u.useState(!1),[Ee,Ve]=u.useState(!1),[ee,Ye]=u.useState(!1),[lt,$e]=u.useState(0),[Ue,Ht]=u.useState(null),[Ia,ia]=u.useState(!1);u.useEffect(()=>{},[]);const[ga,ot]=u.useState({});if(u.useEffect(()=>{Ye(!1),$e(0),ia(!1)},[K]),u.useEffect(()=>{let p=!0;return ha().then(w=>{if(!p)return;const Z={};for(const Ae of w)for(const Be of Ae.variants??[])Be.sku&&(Z[Be.sku]=Ae.handle);ot(Z)}).catch(()=>null),()=>{p=!1}},[]),u.useEffect(()=>{o(void 0),c(null),m(!1),v(!1),g(null),k([]),D(""),Q(null),Re(!1),N(""),ue(""),Te(""),G(0),Ye(!1),$e(0),gs(a).then(p=>{if(o(p),p){if(i){const w=Aa(p).findIndex(Z=>Z.sku===i);w>0&&G(w)}pe("urun_goruntulendi",{product_id:p.id,handle:p.handle,grup:cn(p),fiyat:r?null:Le(p)}),Na(p.id).then(g).catch(()=>null),fs(p.handle).then(w=>c(w[0]??null)).catch(()=>null),ys(p,Wa(cn(p)??"")?.ilgili??[]).then(k).catch(()=>k([]))}Za().then(async w=>{const Z=w?.user??null;j(Z),Z&&p&&(Kn(Z.email).then(Ae=>M(Ae.includes(p.id))).catch(()=>null),$n(Z.email).then(Ae=>F(Ae.some(Be=>Be.product_id===p.id))).catch(()=>null))}).catch(()=>{j(null),v(!0)})})},[a,r,i]),u.useEffect(()=>{!z||!s||Na(s.id,z.email).then(g).catch(()=>null)},[z,s?.id]),s===void 0)return e.jsxs(e.Fragment,{children:[e.jsx(he,{title:t("Ürün - Probot Studio"),description:t("Probot Studio mağazasında robotik kit ve parçaları incele."),path:`/urun/${a}`}),e.jsx("section",{className:"account",children:e.jsx("p",{className:"muted",children:t("Yükleniyor…")})})]});if(s===null)return e.jsxs(e.Fragment,{children:[e.jsx(he,{title:t("Ürün bulunamadı - Probot Studio"),description:t("Aradığın ürün Probot Studio mağazasında bulunamadı."),path:`/urun/${a}`,noindex:!0}),e.jsxs("section",{className:"account",children:[e.jsx("h1",{children:t("Ürün bulunamadı")}),e.jsx(_,{className:"btn g",to:"/",children:t("Mağazaya dön")})]})]});const $a=xs(s);if($a)return e.jsx(ca,{to:`/urun/${$a}`,replace:!0});const P=s.metadata??{},We=la(P),Se=Aa(s),fe=Se[Math.min(K,Math.max(Se.length-1,0))],we=Hn(fe),Ze=we!==null||Le(s)!==null,ce=Va(fe),Qe=(s.options??[]).length>1?s.options:[],Ce=(p,w)=>p?.options?.find(Z=>Z.option_id===w)?.value??"";function je(p,w){const Z=Se.filter(Be=>Ce(Be,p)===w),Ae=Z.find(Be=>Qe.every(sa=>sa.id===p||Ce(Be,sa.id)===Ce(fe,sa.id)))??Z[0];Ae&&fa(Se.indexOf(Ae),p)}function fa(p,w){const Z=Se[p];!Z||p===K||(G(p),pe("varyant_secildi",{product_id:s.id,variant_id:Z.id,sku:Z.sku??null,option_id:w}))}const ye=fe?.sku??"",Pe=Bt(s,ye),_e=p=>Array.isArray(p)?p.filter(w=>typeof w=="string"&&!!w):[],ya=P.variant_drawings&&typeof P.variant_drawings=="object"?_e(P.variant_drawings[ye]):[],de=ya.length?ya:_e(P.drawings),xa=p=>p.replace(/\.pdf$/i,".png"),y=P.variant_guides&&typeof P.variant_guides=="object"?P.variant_guides[ye]:void 0,E=typeof y=="string"&&y?y:"",T=P.variant_gallery&&typeof P.variant_gallery=="object"?_e(P.variant_gallery[ye]):[],A=T.length?T:_e(P.gallery),$=Math.min(lt,A.length+de.length),ve=null,xe=p=>{ia(!1),$e(p)},Ka=de.length>0||!!E,ct=fe?.id,Gt=(Array.isArray(P.variant_notes)?P.variant_notes:[]).find(p=>p.title===fe?.title)?.note??null,Ke=P.kind==="kit",Da=Kr.has(a??""),dt=Da&&Array.isArray(P.about)?P.about.filter(p=>typeof p=="string"):[],ba=Da&&Array.isArray(P.faq)?P.faq.filter(p=>typeof p?.q=="string"&&typeof p?.a=="string"):[],Vt=Array.isArray(P.specs)?P.specs.filter(p=>typeof p?.k=="string"&&typeof p?.v=="string"):[],Yt=P.kit_status==="basvuru",vi=s.categories?.[0]?.name,Oa=typeof P.marka_ad=="string"&&P.marka_ad?P.marka_ad:null,ja=Bn(s),Ut=typeof P.kaynak_url=="string"&&/^https:\/\//.test(P.kaynak_url)?P.kaynak_url:null,Ni=typeof P.aciklama_tam=="string"&&P.aciklama_tam.trim()?P.aciklama_tam:s.description??"",zi=vt(s.description||`${s.title} Probot Studio mağazasında.`),Si=vt(s.description?le(s.description):t("{title} Probot Studio mağazasında.",{title:Ne(s.title)})),Wt=`/urun/${s.handle}`,Zt=s.thumbnail||jt,wi=nt(Zt),_i=Tr.has(s.handle)?`/shop/og/${s.handle}.jpg`:Zt,Qt=da(Wt),va=bs(s)??[{title:vi||"Tüm ürünler",yol:"/urunler"}],Ai=va[va.length-1].title,Jt={"@context":"https://schema.org","@type":"Product",name:s.title,description:zi,image:[wi],sku:ye||void 0,mpn:Oa?void 0:ye||void 0,itemCondition:vn,brand:{"@type":"Brand",name:Oa||"Probot Studio"},category:Ai,offers:!r&&we?{"@type":"Offer",price:we,priceCurrency:"TRY",url:Qt,sku:ye||void 0,itemCondition:vn,availability:Mr(fe,P),hasMerchantReturnPolicy:Gr,shippingDetails:Hr(we,Ke),seller:{"@type":"Organization",name:"Probot Studio"}}:void 0,aggregateRating:f&&f.count>0&&f.average?{"@type":"AggregateRating",ratingValue:f.average,reviewCount:f.count}:void 0},Xt=ba.length?{"@context":"https://schema.org","@type":"FAQPage",mainEntity:ba.map(p=>({"@type":"Question",name:p.q,acceptedAnswer:{"@type":"Answer",text:p.a}}))}:null,en={"@context":"https://schema.org","@type":"BreadcrumbList",itemListElement:[{"@type":"ListItem",position:1,name:"Mağaza",item:da("/")},...va.map((p,w)=>({"@type":"ListItem",position:w+2,name:p.title,item:da(p.yol)})),{"@type":"ListItem",position:va.length+2,name:s.title,item:Qt}]},ut=f?.reviews.find(p=>p.is_mine)??null;async function Ti(){if(!(!ct||ce)){Ve(!0);try{se(""),ae.current??=crypto.randomUUID();const p=d&&l?Aa(l)[0]:null,w=p&&!Va(p)?p:null;await vs([{variant_id:ct,quantity:S},...w?[{variant_id:w.id,quantity:S}]:[]],ae.current),ae.current=null,pe("sepete_eklendi",{product_id:s.id,variant_id:ct,sku:fe?.sku??null,adet:S,tutar:!r&&we!==null?we*S:null,...w?{eklenti_sku:w.sku??null}:{}}),C(!0),te.current!==null&&clearTimeout(te.current),te.current=setTimeout(()=>C(!1),2500)}catch(p){p?.status===400&&fe?.manage_inventory&&!fe.allow_backorder?(ae.current=null,se(S>1?t("Bu seçenekten stokta istediğin kadar yok. Adedi azaltıp tekrar dene."):t("Bu seçenek stokta kalmadı, sepete eklenemedi."))):se(t("Sepete ekleme tamamlanamadı. Mevcut sepetin korunuyor; tekrar dene."))}finally{Ve(!1)}}}const mt=p=>Math.max(1,Math.min(99,Math.round(p)||1));async function Ei(p){p.preventDefault(),N(""),U(!0);try{await Ns(s.id,V.trim(),ge),Re(!0),pe("stok_alarmi_kuruldu",{product_id:s.id,misafir:!0})}catch{N(t("Kaydedilemedi - e-postanı kontrol edip tekrar dene."))}finally{U(!1)}}async function Ci(p){if(p.preventDefault(),!z)return;const w=new FormData(p.currentTarget);D(""),Ie(!0);try{await zs(s.id,z.email,Number(w.get("rating")),String(w.get("content")));const Z=await Na(s.id,z.email);g(Z),p.target.reset()}catch(Z){D(kt(Z,t("Yorum gönderilemedi - tekrar dene.")))}finally{Ie(!1)}}async function Pi(p){if(p.preventDefault(),!(!z||!Y)){D(""),Ie(!0);try{await Ss(s.id,z.email,Y.rating,Y.content),g(await Na(s.id,z.email)),Q(null)}catch(w){D(kt(w,t("Yorum güncellenemedi - tekrar dene.")))}finally{Ie(!1)}}}async function Bi(){if(z){D(""),Ie(!0);try{await ws(s.id,z.email),g(await Na(s.id,z.email)),Q(null)}catch(p){D(kt(p,t("Yorum silinemedi - tekrar dene.")))}finally{Ie(!1)}}}return e.jsxs(e.Fragment,{children:[e.jsx(he,{title:`${s.title} - Probot Studio`,description:Si,path:Wt,image:_i,type:"product",jsonLd:Xt?[Jt,en,Xt]:[Jt,en]}),e.jsxs("nav",{className:"crumbs",children:[e.jsx(_,{to:"/",children:t("Mağaza")})," ",e.jsx("span",{children:"›"})," ",va.map(p=>e.jsxs("span",{className:"katCrumb",children:[e.jsx(_,{to:p.yol,children:me(p.title)})," ",e.jsx("span",{children:"›"})]},p.yol))," ",e.jsx("b",{children:Ne(s.title)})]}),e.jsxs("section",{className:"pdp",children:[e.jsxs("div",{className:"pdp-media",children:[$>A.length?e.jsxs(e.Fragment,{children:[e.jsx("img",{className:"cizimGorsel",src:xa(de[$-A.length-1]),alt:t("{title} teknik çizim",{title:Ne(s.title)})}),e.jsx("small",{className:"muted",children:de.length>1?t("Teknik çizim {n}",{n:$-A.length}):t("Teknik çizim")})]}):$>0?e.jsx("img",{src:A[$-1],alt:t("{title}, görsel {n}",{title:Ne(s.title),n:$+1})}):Pe.src&&!ee?e.jsx("img",{src:Pe.src,alt:Pe.example?t("{title}: {label}",{title:Ne(s.title),label:Pe.label}):Ne(s.title),onError:()=>Ye(!0)}):e.jsx("div",{className:"pdp-ic",children:P.icon??"📦"}),$===0&&Pe.example&&!ee&&e.jsx("small",{className:"muted",children:Pe.label}),(de.length>0||A.length>0||!1)&&e.jsxs("div",{className:"pdp-thumbs",children:[e.jsx("button",{type:"button",className:`pdp-thumb${$===0?" on":""}`,"aria-label":t("Ürün görseli"),"aria-pressed":$===0,onClick:()=>xe(0),children:Pe.src&&!ee?e.jsx("img",{src:Pe.src,alt:""}):e.jsx("span",{className:"pdp-thumbIc",children:P.icon??"📦"})}),A.map((p,w)=>e.jsx("button",{type:"button",className:`pdp-thumb${$===w+1?" on":""}`,"aria-label":t("Ürün görseli {n}",{n:w+2}),"aria-pressed":$===w+1,onClick:()=>xe(w+1),children:e.jsx("img",{src:p,alt:"",loading:"lazy"})},p)),de.map((p,w)=>e.jsx("button",{type:"button",className:`pdp-thumb${$===A.length+w+1?" on":""}`,"aria-label":de.length>1?t("Teknik çizim {n}",{n:w+1}):t("Teknik çizim"),"aria-pressed":$===A.length+w+1,onClick:()=>xe(A.length+w+1),children:e.jsx("img",{src:xa(p),alt:""})},p)),ve]})]}),e.jsxs("div",{className:"pdp-info",children:[e.jsxs("div",{className:"pdp-topRow",children:[e.jsx("span",{className:"mono sku",children:ye}),e.jsx("button",{className:`favBtn${ne?" on":""}`,"aria-label":ne?t("Favorilerden çıkar"):t("Favorilere ekle"),disabled:h,title:h?t("Hesap bilgisi alınamadı"):z?"":t("Favorilemek için giriş yap"),onClick:async()=>{if(!z)return;const p=await js(z.email,s.id);M(p),p&&pe("favori_eklendi",{product_id:s.id})},children:ne?"🧡":"♡"})]}),Oa&&e.jsx("p",{className:"pdp-marka",children:Oa}),e.jsx("h1",{children:Ne(s.title)}),ja&&e.jsxs("p",{className:"pdp-ftc",children:[e.jsx("span",{className:`ftcRozet${ja.uyumlu?" ok":""}`,children:ja.etiket}),ja.neden&&e.jsx("span",{className:"muted small",children:le(ja.neden)})]}),(!r&&Ze||ce)&&e.jsxs("div",{className:"pdp-priceRow",children:[!r&&Ze&&(we!=null?e.jsx("p",{className:"pdp-price",children:I(we)}):e.jsx("p",{className:"pdp-price tbd",children:t("Bu seçeneğin fiyatı sipariş mesajında netleşir")})),ce&&e.jsx("span",{className:"stokYok",role:"status",children:ft(s)})]}),!r&&Ze&&e.jsx(it,{}),h&&e.jsxs("p",{className:"muted small",role:"status",children:[t("Hesap bilgisi alınamadı.")," ",e.jsx(_,{to:"/hesap",children:t("Hesap sayfasından tekrar dene.")})]}),f&&f.count>0&&e.jsxs("p",{className:"rating-line",children:[e.jsx(jn,{n:f.average??0})," ",f.average," · ",ze("{n} yorum",f.count)]}),e.jsx("div",{className:"pdp-desc",children:le(Ni).split(/\n{2,}/).filter(Boolean).map((p,w)=>p.startsWith("• ")?e.jsx("ul",{className:"muted",children:p.split(`
`).map((Z,Ae)=>e.jsx("li",{children:Z.replace(/^\u2022\s*/,"")},Ae))},w):e.jsx("p",{className:"muted",children:p},w))}),Ka&&e.jsxs("div",{className:"pdp-dok",children:[e.jsx("h2",{children:t("Dokümanlar")}),e.jsxs("ul",{children:[de.map((p,w)=>e.jsx("li",{children:e.jsx("a",{href:p,download:!0,target:"_blank",rel:"noopener",children:de.length>1?t("Teknik çizim {n} (PDF)",{n:w+1}):t("Teknik çizim (PDF)")})},p)),E&&e.jsx("li",{children:e.jsx("a",{href:E,download:!0,target:"_blank",rel:"noopener",children:t("Montaj kılavuzu (PDF)")})})]})]}),e.jsx(Ir,{handle:s.handle}),e.jsx("div",{className:"chips",children:(P.print_color||P.renk)&&e.jsxs("span",{className:"chip",children:["🎨 ",Dr[P.print_color||P.renk]??(P.print_color||P.renk)]})}),typeof P.metal_note=="string"&&P.metal_note&&e.jsx("p",{className:"metal-note",children:le(P.metal_note)}),Qe.map(p=>e.jsxs("div",{className:"variantPick",children:[e.jsx("label",{htmlFor:`pdp-option-${p.id}`,children:le(p.title)}),e.jsx("select",{id:`pdp-option-${p.id}`,value:Ce(fe,p.id),onChange:w=>je(p.id,w.target.value),children:[...new Set(Se.map(w=>Ce(w,p.id)))].map(w=>{const Z=Qe.slice(0,Qe.indexOf(p));return Se.some(Be=>Ce(Be,p.id)===w&&Z.every(sa=>Ce(Be,sa.id)===Ce(fe,sa.id)))?e.jsx("option",{value:w,children:le(w)},w):null})})]},p.id)),Qe.length===0&&(Se.length>1||a==="rulman"&&Se.length===1)&&e.jsxs("div",{className:"variantPick",children:[e.jsx("label",{htmlFor:"pdp-variant",children:typeof P.option_label=="string"?le(P.option_label):t("Seçenek")}),e.jsx("select",{id:"pdp-variant",value:K,onChange:p=>fa(Number(p.target.value),null),children:Se.map((p,w)=>e.jsxs("option",{value:w,children:[(p.title!=null?Mn(p.title):p.sku)??t("Seçenek {n}",{n:w+1}),Va(p)?P.kaynak==="elektronik"?t(" (çok yakında)"):t(" (stokta yok)"):""]},p.id))})]}),Gt&&e.jsx("div",{className:"variantNote",children:e.jsx(ii,{note:le(Gt),skuHandles:ga})}),l&&!Yt&&(r||Ze)&&e.jsx(Br,{urun:l,secili:d,degisti:m,fiyatGizli:r,skuHandles:ga}),Yt?e.jsx("a",{className:"btn g",href:`mailto:destek@probotstudio.com?subject=${encodeURIComponent(s.title+" başvurusu")}`,children:t("Başvuruyla → destek@probotstudio.com")}):r||Ze?e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"row buyRow",children:[e.jsxs("div",{className:"qty","aria-label":We>1?t("Paket adedi"):t("Adet"),children:[e.jsx("button",{type:"button","aria-label":t("Adedi azalt"),onClick:()=>L(p=>mt(p-1)),disabled:ce||S<=1,children:"−"}),e.jsx("input",{inputMode:"numeric",value:S,onChange:p=>L(mt(Number(p.target.value))),"aria-label":We>1?t("Paket adedi"):t("Adet"),disabled:ce}),e.jsx("button",{type:"button","aria-label":t("Adedi artır"),onClick:()=>L(p=>mt(p+1)),disabled:ce,children:"+"})]}),e.jsx("button",{className:`btn p${ce?" stokYokBtn":""}`,onClick:Ti,disabled:Ee||ce,"aria-disabled":Ee||ce,children:ce?ft(s):b?t("Sepete eklendi ✓"):We>1?ze("{n} paket sepete ekle",S):S>1?t("{n} adet sepete ekle",{n:S}):t("Sepete ekle")}),e.jsx(_,{className:"btn g",to:"/sepet",children:t("Sepete git")})]}),We>1&&e.jsx("p",{className:"muted small packSummary",children:ze("{n} paket = {total} adet",S,{total:S*We})}),ce&&e.jsx("p",{className:"muted small stokNot",children:P.kaynak==="elektronik"?t("Bu ürün çok yakında satışa açılacak. Fiyat bilgi için gösteriliyor."):t("Bu seçenek şu an stokta yok, sepete eklenemiyor. Fiyat bilgi için gösteriliyor.")}),!ce&&e.jsx("p",{className:"muted small kargoSuresi",children:Ke?t("Kitlerde ve toplu siparişlerde kargoya veriliş süresini sipariş onayında bildiririz."):t("1-2 iş günü içinde kargoya verilir.")}),O&&e.jsx("p",{className:"formErr",role:"alert",children:O}),!1]}):e.jsx("div",{className:"notifyBox",children:z?e.jsxs(e.Fragment,{children:[e.jsx("button",{className:`btn ${X?"g":"p"}`,onClick:async()=>{const p=await Ln(z.email,s.id);F(p),p&&pe("stok_alarmi_kuruldu",{product_id:s.id})},children:X?t("🔕 Takipten çıkar"):t("🔔 Gelince haber ver")}),X&&e.jsx("p",{className:"formOk",children:t("Takip listende - satış açılınca e-posta atacağız.")})]}):ie?e.jsx("p",{className:"formOk",children:t("Fiyat/stok gelince haber vereceğiz ✓")}):e.jsxs("form",{className:"waitlist",onSubmit:Ei,children:[e.jsx("p",{className:"muted small",children:t("Bu parçanın satış fiyatı belirleniyor. E-postanı bırak, gelince ilk sen öğren.")}),e.jsx("input",{type:"email",inputMode:"email",autoComplete:"email",value:V,onChange:p=>ue(p.target.value),placeholder:t("e-posta adresin"),"aria-label":t("E-posta adresi"),required:!0}),e.jsx("p",{className:"muted xsmall kvkk",children:t("Bu e-posta yalnızca ürün duyuruları için kullanılır; üçüncü kişilerle paylaşılmaz. Dilediğin zaman çıkabilirsin (KVKK kapsamında talebinle silinir).")}),e.jsxs("select",{value:ge,onChange:p=>Te(p.target.value),"aria-label":t("Kimsiniz? (opsiyonel)"),children:[e.jsx("option",{value:"",children:t("Kimsiniz? (opsiyonel)")}),e.jsx("option",{value:"Veli",children:t("Veli")}),e.jsx("option",{value:"Öğretmen-Okul",children:t("Öğretmen / Okul")}),e.jsx("option",{value:"Öğrenci",children:t("Öğrenci")}),e.jsx("option",{value:"Meraklı",children:t("Meraklı")})]}),be&&e.jsx("p",{className:"formErr",children:be}),e.jsx("button",{className:"btn p",disabled:J,children:t("🔔 Gelince haber ver")}),e.jsx("p",{className:"muted xsmall",children:B("Hesabın varsa {link} - takip listen profilinde dursun.",{link:e.jsx(_,{to:"/hesap",children:t("giriş yap")})})})]})}),Vt.length>0&&e.jsxs("div",{className:"pdp-specs",children:[e.jsx("h2",{children:t("Özellikler")}),e.jsx("dl",{children:Vt.map(p=>e.jsxs("div",{children:[e.jsx("dt",{children:le(p.k)}),e.jsx("dd",{children:le(p.v)})]},p.k))})]}),Ut&&e.jsxs("p",{className:"pdp-kaynak",children:[e.jsx("a",{href:Ut,target:"_blank",rel:"noopener",children:t("Açık donanım kaynağı")}),P.marka==="boardoza"&&e.jsxs("span",{className:"muted",children:[" ",t("Kart tasarımı Boardoza, CC-BY-SA 4.0.")]})]}),Da&&Ke&&Array.isArray(P.features)&&e.jsxs("div",{className:"features",children:[e.jsx("h2",{children:t("Öne çıkanlar")}),e.jsx("ul",{children:P.features.map(p=>e.jsx("li",{children:le(p)},p))}),P.in_the_box_note&&e.jsx("p",{className:"muted small",children:le(P.in_the_box_note)})]})]})]}),Da&&(dt.length>0||ba.length>0||Ke)&&e.jsxs("section",{className:`pdp-detay${Ke?"":" tek"}`,children:[e.jsxs("div",{className:"pdp-detayAna",children:[dt.length>0&&e.jsxs("div",{className:"pdp-about",children:[e.jsx("h2",{children:Ke?t("Bu kit ne işe yarıyor?"):t("Bu parça ne işe yarıyor?")}),dt.map(p=>e.jsx("p",{children:le(p)},p.slice(0,40)))]}),ba.length>0&&e.jsxs("div",{className:"pdp-faq",children:[e.jsx("h2",{children:t("Sık sorulanlar")}),e.jsx("dl",{children:ba.map(p=>e.jsxs("div",{className:"faqItem",children:[e.jsx("dt",{children:le(p.q)}),e.jsx("dd",{children:le(p.a)})]},p.q))}),e.jsx("p",{className:"muted small",children:t("Sorun listede yoksa sepet sayfasındaki WhatsApp butonundan yazabilirsin.")})]})]}),Ke&&e.jsx("aside",{className:"pdp-detayYan",children:e.jsxs("div",{className:"pdp-detayYanIc",children:[e.jsx($r,{handle:s.handle}),!Rt(s.handle)&&e.jsxs("div",{className:"pdp-learn",children:[e.jsx("h2",{children:t("Kurulumu ve kodu nereden öğreneceksin?")}),e.jsx("p",{children:t("Robotun kurulumunu ve ilk kodunu Eğitim bölümünde adım adım anlatıyoruz. Tamamı Türkçe ve ücretsiz, önceden robotik bilgisi gerekmiyor. Yeni kaynaklar yazıldıkça oraya ekleniyor.")}),e.jsx("a",{className:"btn g",href:tt("/egitim/"),children:t("Eğitim bölümüne git →")}),e.jsx("p",{className:"muted small",children:t("Okul ya da takım adına çalışıyorsan kurulum ve kaynaklar için bize yazabilirsin.")})]}),r&&e.jsxs("div",{className:"pdp-howto",children:[e.jsx("h2",{children:t("Sipariş nasıl ilerliyor?")}),e.jsxs("ol",{children:[e.jsx("li",{children:t("Seçeneği ve adedi seç, sepete ekle.")}),e.jsx("li",{children:t("Sepet sayfasındaki WhatsApp butonuyla listeni bize gönder.")}),e.jsx("li",{children:t("Fiyat, teslim süresi ve kargoyu mesajda netleştirip onayınla üretime alıyoruz.")})]}),e.jsx("p",{className:"muted small",children:t("Okul, kulüp veya takım adına toplu alım yapıyorsan aynı kanaldan yaz. Fatura ve teklif sürecini oradan yürütüyoruz.")})]})]})})]}),x.length>0&&e.jsxs("section",{className:"relatedSec","aria-labelledby":"similar-products-title",children:[e.jsxs("div",{className:"relatedHead",children:[e.jsx("h2",{id:"similar-products-title",children:Ke?t("İlgili ürünler"):t("İlgili parçalar")}),Ke&&e.jsx(_,{className:"coll-more",to:"/urunler",children:t("Parçaları tek tek de alabilirsin →")})]}),e.jsx("div",{className:"parts",children:x.map(p=>e.jsx(Ba,{p},p.id))})]}),e.jsxs("section",{className:"revSec",children:[e.jsxs("h2",{children:[t("Yorumlar")," ",f?`(${f.count})`:""]}),f&&f.reviews.length>0?e.jsx("ul",{className:"revList",children:f.reviews.map(p=>e.jsxs("li",{children:[e.jsxs("div",{className:"revHead",children:[e.jsx("b",{children:p.display_name===Or?W(p.display_name):p.display_name})," ",e.jsx(jn,{n:p.rating}),p.verified&&e.jsx("span",{className:"chip",children:t("✓ onaylı alıcı")}),e.jsx("span",{className:"muted small",children:Pa(new Date(p.created_at))})]}),e.jsx("p",{children:p.content})]},p.id))}):e.jsx("p",{className:"muted",children:t("Henüz yorum yok - ilk yorumu sen yaz.")}),z&&ut?Y?e.jsxs("form",{className:"revForm",onSubmit:Pi,children:[e.jsx("div",{className:"row",children:e.jsx("select",{value:Y.rating,onChange:p=>Q(w=>w&&{...w,rating:Number(p.target.value)}),children:[5,4,3,2,1].map(p=>e.jsxs("option",{value:p,children:["★".repeat(p)," (",p,")"]},p))})}),e.jsx("textarea",{value:Y.content,onChange:p=>Q(w=>w&&{...w,content:p.target.value}),required:!0,minLength:3,rows:3}),R&&e.jsx("p",{className:"formErr",children:R}),e.jsxs("div",{className:"row",children:[e.jsx("button",{className:"btn g",disabled:re,children:t("Kaydet")}),e.jsx("button",{className:"btn g",type:"button",onClick:()=>Q(null),disabled:re,children:t("Vazgeç")})]})]}):e.jsxs("div",{className:"revForm",children:[e.jsx("p",{className:"muted small",children:t("Bu ürün için yorumun var.")}),R&&e.jsx("p",{className:"formErr",children:R}),e.jsxs("div",{className:"row",children:[e.jsx("button",{className:"btn g",type:"button",onClick:()=>Q({rating:ut.rating,content:ut.content}),disabled:re,children:t("Yorumunu düzenle")}),e.jsx("button",{className:"btn g",type:"button",onClick:Bi,disabled:re,children:t("Sil")})]})]}):z?e.jsxs("form",{className:"revForm",onSubmit:Ci,children:[e.jsx("div",{className:"row",children:e.jsx("select",{name:"rating",defaultValue:"5",children:[5,4,3,2,1].map(p=>e.jsxs("option",{value:p,children:["★".repeat(p)," (",p,")"]},p))})}),e.jsx("textarea",{name:"content",placeholder:t("Deneyimini yaz…"),required:!0,minLength:3,rows:3}),R&&e.jsx("p",{className:"formErr",children:R}),e.jsx("button",{className:"btn g",disabled:re,children:t("Yorumu gönder")})]}):e.jsx("p",{className:"muted small",children:B("Yorum yazmak için {link}.",{link:e.jsx(_,{to:"/hesap",children:t("giriş yap")})})})]})]})}function kt(a,n){const r=(a instanceof Error?a.message:"").match(/\{.*\}$/);if(r)try{const s=JSON.parse(r[0]).message;return s?W(s):n}catch{return n}return n}function si(a){if(!(typeof window>"u"))try{const n=new URL(window.location.href);if(!n.searchParams.has(a))return;n.searchParams.delete(a),window.history.replaceState(window.history.state,"",`${n.pathname}${n.search}${n.hash}`)}catch{}}function Yr(){const[a]=Ge(),[n]=u.useState(()=>a.get("token")??"");u.useEffect(()=>{si("token")},[]);const[i,r]=u.useState(""),[s,o]=u.useState(!1),[l,c]=u.useState(!1),d=Fa(),m=e.jsx(he,{title:t("Şifre yenileme - Probot Studio"),description:t("Probot Studio hesabın için yeni şifre belirle."),path:"/hesap/sifre-yenile",noindex:!0});if(!n)return e.jsxs(e.Fragment,{children:[m,e.jsxs("section",{className:"account",children:[e.jsx("h1",{children:t("Bağlantı eksik")}),e.jsx("p",{className:"muted",children:B("Şifre sıfırlama bağlantısı geçersiz görünüyor. {link} yeni bir istek gönderebilirsin.",{link:e.jsx(_,{to:"/hesap",children:t("Hesap sayfasından")})})})]})]});async function f(g){g.preventDefault(),o(!0),r("");const x=new FormData(g.currentTarget),k=String(x.get("p1")??""),h=String(x.get("p2")??"");if(k!==h){r(t("Şifreler aynı değil.")),o(!1);return}try{const v=await _s(k,n);if(!v.ok){r(W(ra(v.code,t("Şifre güncellenemedi - bağlantının süresi dolmuş olabilir."))));return}d("/hesap?yenilendi=1")}catch{r(t("Bağlantı kurulamadı. Şifren güncellenemedi; tekrar dene."))}finally{o(!1)}}return e.jsxs(e.Fragment,{children:[m,e.jsxs("section",{className:"account",children:[e.jsx("h1",{children:B("Yeni {hl}",{hl:e.jsx("span",{className:"hl",children:t("şifre belirle")})})}),e.jsxs("form",{className:"authForm",onSubmit:f,children:[e.jsx(qe,{name:"p1","aria-label":t("Yeni şifre"),placeholder:t("Yeni şifre (en az 8 karakter)"),autoComplete:"new-password",required:!0,minLength:8,goster:l,onGosterDegis:c}),e.jsx(qe,{name:"p2","aria-label":t("Yeni şifre (tekrar)"),placeholder:t("Yeni şifre (tekrar)"),autoComplete:"new-password",required:!0,minLength:8,goster:l,dugme:!1}),i&&e.jsx("p",{className:"formErr",role:"alert",children:i}),e.jsx("button",{className:"btn p",disabled:s,children:s?"…":t("Şifreyi güncelle")})]})]})]})}function Ur(){const[a]=Ge(),[n]=u.useState(()=>a.get("t")??"");u.useEffect(()=>{si("t")},[]);const[i,r]=u.useState("bekliyor"),[s,o]=u.useState(null),[l,c]=u.useState(""),d=u.useRef(null);u.useEffect(()=>{l&&d.current?.focus()},[l]);async function m(){r("gonderiliyor"),c("");try{const g=await As.veliOnayDogrula(n);o({ogrenci:g.ogrenci,zaten:g.zaten}),r("tamam")}catch(g){c(g instanceof Ts?W(g.message):t("Onay şu an kaydedilemedi. İnternet bağlantınızı kontrol edip tekrar deneyin.")),r("hata")}}const f=e.jsx(he,{title:t("Veli onayı - Probot Studio"),description:t("Çocuğunuzun Probot Studio hesabı için veli onayı."),path:"/hesap/veli-onay",noindex:!0});return n?e.jsxs(e.Fragment,{children:[f,e.jsxs("section",{className:"account veliOnay",children:[e.jsx("h1",{children:B("Veli {hl}",{hl:e.jsx("span",{className:"hl",children:t("onayı")})})}),i==="tamam"&&s?e.jsxs(e.Fragment,{children:[e.jsx("p",{className:"formOk",role:"status",children:s.zaten?t("{ogrenci} için onayınız zaten kayıtlı. Teşekkürler.",{ogrenci:s.ogrenci||ma("guardian","Öğrenci")}):t("Teşekkürler. {ogrenci} için onayınız kaydedildi; hesap artık ders fotoğrafı yükleyebilir ve eğitim asistanını kullanabilir.",{ogrenci:s.ogrenci||ma("guardian","Öğrenci")})}),e.jsx("p",{className:"muted small",children:t("Onayınızı geri almak ya da verilerle ilgili bir talep için kvkk@probotstudio.com adresine yazabilirsiniz. Onay geri alınınca ders fotoğrafı yükleme ve eğitim asistanı yeniden kapanır ve yüklenmiş bütün ders fotoğrafları silinir. Asistanın tuttuğu notlar ve son mesajlar asistan sunucusunda kalır: çocuğunuz bunları asistan panelinden silebilir, siz de silinmesini aynı adresten isteyebilirsiniz; aksi hâlde en geç 180 gün içinde kendiliğinden silinir. Sınıf üyeliği ve eğitim hizmeti onaydan bağımsız olduğu için sürer.")})]}):e.jsxs(e.Fragment,{children:[e.jsx("p",{className:"muted",children:t("Çocuğunuz Probot Studio'da 18 yaşından küçük olduğunu belirterek bir hesap açtı ve veli olarak sizi gösterdi.")}),e.jsx("h2",{children:t("Onayınızdan bağımsız: eğitim hizmeti")}),e.jsx("p",{className:"muted",children:t("Aşağıdakiler eğitim hizmetinin parçasıdır ve onay vermeseniz de işlenir:")}),e.jsxs("ul",{className:"veliListe",children:[e.jsxs("li",{children:[e.jsx("b",{children:t("Dersler ve ilerleme.")})," ",t('Hangi dersleri açıp okuduğu ve ne zaman çalıştığı, "Dersi bitirdik" kayıtları (işaretlediği Kontrol maddeleri ve "takıldığımız yer" notu).')]}),e.jsxs("li",{children:[e.jsx("b",{children:t("Sınıf.")})," ",t("Öğretmeninin verdiği katılım koduyla bir sınıfa katılabilir ya da öğretmeni onu e-posta adresiyle sınıfa ekleyebilir. Sınıftan istediği zaman ayrılabilir.")]}),e.jsxs("li",{children:[e.jsx("b",{children:t("Sınıftaki kayıtlar.")})," ",t("Ödev teslimleri (yazdıkları, blok programları, Builder projeleri) ve öğretmenin bunlara yazdığı geri bildirim, yoklama, canlı derste hangi sayfada olduğu, derslerdeki etkinlik ve challenge'larda neleri denediği ve tamamladığı, öğretmenin verdiği ekip etiketi.")]})]}),e.jsx("p",{className:"muted small",children:t("Bunları katıldığı sınıfın öğretmenleri (sınıfı açan ve ortak öğretmenler) görür; sınıfa atanmış eğitimlerde sınıfa katılmadan önce yapılanlar da buna dahildir. Öğretmen sınıfa atamadığı eğitimlerde ne okunduğunu görmez. Öğretmen ekranlarında e-posta adresi gösterilmez; hesapta ad yoksa yalnız gizlenmiş hâli görünür.")}),e.jsx("h2",{children:t("Onayınızla açılanlar")}),e.jsxs("ul",{className:"veliListe",children:[e.jsxs("li",{children:[e.jsx("b",{children:t("İsteğe bağlı ders fotoğrafı.")})," ",t("Ders sonunda robotunun fotoğrafını yükleyebilir. Sınıfın öğretmenleri görür; sınıftan ayrılınca ya da çıkarılınca silinir, çocuğunuz da istediği zaman silebilir.")]}),e.jsxs("li",{children:[e.jsx("b",{children:t("Yapay zekâ eğitim asistanı.")})," ",t("Asistana yazdığı sorular ve aldığı cevaplar, cevabı üretmek için yurt dışındaki model sağlayıcısına (OpenRouter üzerinden DeepSeek) iletilir. Asistan notları yalnız çocuğunuzun hesabında tutulur ve silinebilir.")]})]}),e.jsx("p",{className:"muted small",children:B("Onay vermezseniz yalnız bu iki özellik kapalı kalır; eğitim hizmeti aynen sürer. Ayrıntılı bilgi, saklama süreleri ve haklarınız için {link}.",{link:e.jsx(_,{to:"/yasal/aydinlatma-metni",target:"_blank",rel:"noopener",children:t("Aydınlatma Metni")})})}),l&&e.jsx("p",{ref:d,tabIndex:-1,className:"formErr",role:"alert",children:l}),e.jsx("div",{className:"row",children:e.jsx("button",{type:"button",className:"btn p",disabled:i==="gonderiliyor",onClick:()=>{m()},children:i==="gonderiliyor"?t("Onaylanıyor…"):t("Okudum, onaylıyorum")})})]})]})]}):e.jsxs(e.Fragment,{children:[f,e.jsxs("section",{className:"account",children:[e.jsx("h1",{children:B("Veli {hl}",{hl:e.jsx("span",{className:"hl",children:t("onayı")})})}),e.jsx("p",{className:"muted",children:t("Bu sayfa, çocuğunuzun Probot Studio hesabı için size gönderilen e-postadaki bağlantıyla açılır. Bağlantı eksikse e-postadaki düğmeyi kullanın; e-posta gelmediyse çocuğunuz hesap sayfasından yeniden gönderebilir.")})]})]})}const Wr="pk_a44f3f48fdaf252739a6d2a0edc8d818159ff5c1c1bc7b9838ffa6e3541f5d94",Nn=[["siparis","🧾",()=>t("Sipariş alındı")],["hazirlandi","📦",()=>t("Atölyede hazırlandı")],["kargoda","🚚",()=>t("Kargoya verildi")],["teslim","🏠",()=>ma("shipping","Teslim edildi")]],Zr=a=>a?Pa(new Date(a),{dateStyle:"medium",timeStyle:"short"}):null;function zn(){const{no:a=""}=pa(),[n,i]=u.useState(null),r=Fa(),s=e.jsx(he,{title:t("Kargo takibi - Probot Studio"),description:t("Probot Studio siparişin için kargo takip durumunu sorgula."),path:a?`/takip/${encodeURIComponent(a)}`:"/takip",noindex:!0});if(u.useEffect(()=>{a&&(i(null),fetch(`/store/track/${encodeURIComponent(a)}`,{headers:{"x-publishable-api-key":Wr}}).then(l=>l.ok?l.json():"yok").then(l=>i(l)).catch(()=>i("yok")))},[a]),!a){const l=c=>{c.preventDefault();const d=String(new FormData(c.currentTarget).get("no")??"").trim();d&&r(`/takip/${encodeURIComponent(d)}`)};return e.jsxs(e.Fragment,{children:[s,e.jsxs("section",{className:"account",children:[e.jsx("h1",{children:B("Kargo {hl}",{hl:e.jsx("span",{className:"hl",children:t("takibi")})})}),e.jsx("p",{className:"muted",children:t("Sipariş onay e-postandaki takip numarasını gir.")}),e.jsxs("form",{className:"couponRow",onSubmit:l,children:[e.jsx("input",{name:"no",placeholder:t("Takip no (örn. TR-2026-…)"),"aria-label":t("Takip numarası"),autoFocus:!0}),e.jsx("button",{className:"btn p",children:t("Sorgula")})]}),e.jsx("p",{className:"muted small",children:B("Siparişlerini hesabından da izleyebilirsin: {link}",{link:e.jsxs(_,{to:"/hesap",children:[t("Hesabım")," → ",t("Siparişlerim")]})})})]})]})}if(n===null)return e.jsxs(e.Fragment,{children:[s,e.jsx("section",{className:"account",children:e.jsx("p",{className:"muted",children:t("Sorgulanıyor…")})})]});if(n==="yok")return e.jsxs(e.Fragment,{children:[s,e.jsxs("section",{className:"account",children:[e.jsx("h1",{children:t("Gönderi bulunamadı")}),e.jsx("p",{className:"muted",children:B("{no} numarasıyla kayıtlı gönderi yok. Numara e-postandaki bağlantıyla aynı mı kontrol et; sorun sürerse destek@probotstudio.com'a yaz.",{no:e.jsx("span",{className:"mono",children:a})})}),e.jsx(_,{className:"btn g",to:"/",children:t("Mağazaya dön")})]})]});const o=n.status==="teslim"?3:n.status==="yolda"?2:1;return e.jsxs(e.Fragment,{children:[s,e.jsxs("section",{className:"trackPage",children:[e.jsx("h1",{children:B("Kargo {hl}",{hl:e.jsx("span",{className:"hl",children:t("takibi")})})}),e.jsxs("p",{className:"muted",children:[B("Takip no: {number}",{number:e.jsx("span",{className:"mono",children:n.tracking_number})}),n.order_display_id?B(" · Sipariş {order}",{order:e.jsxs("span",{className:"mono",children:["#",n.order_display_id]})}):null]}),n.status==="iptal"?e.jsx("p",{className:"formErr",children:t("Bu gönderi iptal edilmiş. Detay için destek@probotstudio.com")}):e.jsx("ol",{className:"trackSteps",children:Nn.map(([l,c,d],m)=>{const f=Zr(n.timeline[l]),g=m<=o&&(m===0||!!n.timeline[l]),x=g&&(m===o||m<o&&!n.timeline[Nn[m+1]?.[0]]);return e.jsxs("li",{className:g?"done":"","data-active":x||void 0,children:[e.jsx("span",{className:"tIc",children:c}),e.jsxs("div",{children:[e.jsx("b",{children:d()}),e.jsx("span",{className:"muted small",children:f??(g?"-":t("bekleniyor"))})]})]},l)})}),e.jsx("p",{className:"muted small",children:t("Durum bilgisi kargo firmasından geldikçe güncellenir. Sorular için destek@probotstudio.com")})]})]})}const Qr="pk_a44f3f48fdaf252739a6d2a0edc8d818159ff5c1c1bc7b9838ffa6e3541f5d94";function Jr(){const[a,n]=u.useState(!1),[i,r]=u.useState(!1),[s,o]=u.useState("");async function l(c){if(c.preventDefault(),a)return;o("");const d=new FormData(c.currentTarget),m={name:String(d.get("name")??"").trim(),email:String(d.get("email")??"").trim(),message:String(d.get("message")??"").trim()};n(!0);try{const f=await fetch("/store/contact",{method:"POST",headers:{"Content-Type":"application/json","x-publishable-api-key":Qr},body:JSON.stringify(m)}),g=await f.json().catch(()=>({}));f.ok&&g?.ok?r(!0):o(g?.message?W(g.message):t("Mesaj gönderilemedi - az sonra tekrar dene."))}catch{o(t("Bağlantı kurulamadı - az sonra tekrar dene."))}finally{n(!1)}}return e.jsxs(e.Fragment,{children:[e.jsx(he,{title:t("İletişim - Probot Studio"),description:t("Probot Studio'ya soru, öneri ve destek için ulaş."),path:"/iletisim"}),e.jsxs("section",{className:"account",children:[e.jsx("h1",{children:B("İleti{hl}",{hl:e.jsx("span",{className:"hl",children:t("şim")})})}),e.jsx("p",{className:"muted",children:t("Soru/öneri için formu doldur ya da doğrudan destek@probotstudio.com'a yaz.")}),i?e.jsx("p",{className:"formOk",children:t("Mesajın ulaştı - en geç 1 iş günü içinde döneriz.")}):e.jsxs("form",{className:"contactForm",onSubmit:l,children:[e.jsx("input",{name:"name",type:"text",placeholder:t("Adın"),"aria-label":t("Adın"),required:!0,maxLength:80}),e.jsx("input",{name:"email",type:"email",placeholder:t("E-posta adresin"),"aria-label":t("E-posta"),required:!0}),e.jsx("textarea",{name:"message",placeholder:t("Mesajın…"),"aria-label":t("Mesajın"),required:!0,rows:5,minLength:10,maxLength:2e3}),s&&e.jsx("p",{className:"formErr",children:s}),e.jsx("button",{className:"btn p",disabled:a,children:a?t("Gönderiliyor…"):t("Gönder")})]}),e.jsx("p",{className:"muted small",children:t("Doğrudan e-posta: destek@probotstudio.com · Türkçe destek 🇹🇷")})]})]})}const Xr=`# Yasal Metinler - Kullanım Haritası

Storefront'ta render edilir (\`/shop/yasal/...\`). **Yayına girmeden Tuna son okuma yapmalı.**

| Dosya | Nerede gösterilir | Ne zaman onay alınır |
|---|---|---|
| \`aydinlatma-metni.md\` | Footer + kayıt formu linki + veli onay sayfası (\`/shop/hesap/veli-onay\`) | Kayıtta "okudum" (rıza değil, bilgilendirme). **Bölüm 7 TASLAK** (2026-10-01: reşit olmayan öğrenci, veli onayı, ders fotoğrafı, AI asistanı/yurt dışı aktarım, saklama) — hukuki inceleme bekliyor |
| \`cerez-politikasi.md\` | Çerez banner'ı "Detay" linki | Banner'da Kabul/Reddet (eşit buton) |
| \`uyelik-sozlesmesi.md\` | Kayıt formu | Kayıtta onay kutusu |
| \`mesafeli-satis-sozlesmesi.md\` | Checkout | Ödeme öncesi onay kutusu (zorunlu) |
| \`on-bilgilendirme-formu.md\` | Checkout (sözleşme öncesi) | Ödeme öncesi onay kutusu (zorunlu) |
| \`acik-riza-pazarlama.md\` | Kayıt/checkout opsiyonel kutu | AYRI, önceden İŞARETSİZ kutu + İYS kaydı |
| \`teslimat-iade.md\` | Footer (müşteri-yüzlü özet) | - |

## Satıcı bilgileri (2026-07-03, Tuna verdi - DOLDURULDU)

- Unvan: **Tuna Gül** (şahıs işletmesi - MERSİS/ticaret sicil alanları bu yüzden metinlerden çıkarıldı)
- Adres: Topçular Mah. Cengaver Sk. No:22 D:1, 34055 Eyüpsultan / İstanbul
- VKN: 4140655727 (BayrampaÅŸa VD)
- Eksik kalanlar (gelirse metinlere eklenir): telefon, KEP adresi
- İletişim e-postaları şimdilik: destek@probotstudio.com, kvkk@probotstudio.com (server-mail'e açtırılacak)

## Hukuki dayanaklar

KVKK 6698 (+ 2024 yurt dışı aktarım rejimi) · 6502 Tüketici Kanunu · Mesafeli Sözleşmeler
Yönetmeliği · 6563 E-Ticaret Kanunu (İYS) · KVKK Çerez Rehberi (2022).
⚠️ İlk kampanya e-postasından önce İYS kaydı zorunlu. Yurt dışı aktarımlar (Meta, PostHog,
Google/Apple login) için standart sözleşme + 5 iş günü Kurum bildirimi değerlendirilecek.
`,el=`# Ticari Elektronik İleti ve Pazarlama Açık Rıza Metni

*(Kayıt/checkout'ta AYRI ve önceden işaretsiz bir onay kutusuyla sunulur. Onay vermemeniz
alışverişinizi hiçbir şekilde etkilemez.)*

Tuna Gül tarafından;

1. **Ticari elektronik ileti:** Kampanya, yeni ürün, yarışma ve duyuruların tarafıma
   **e-posta** ile gönderilmesine, bu amaçla iletişim bilgilerimin işlenmesine ve onayımın
   İleti Yönetim Sistemi'ne (İYS) kaydedilmesine,
2. **Pazarlama amaçlı işleme ve yurt dışı aktarım:** Alışveriş ve site kullanım verilerimin
   pazarlama analizi ve reklam ölçümü amacıyla işlenmesine; bu kapsamda analitik hizmeti
   PostHog'a (AB) ve reklam ölçümleme hizmeti Meta Platforms'a (AB/ABD) KVKK m.9'daki
   güvenceler çerçevesinde aktarılmasına,

**açık rıza veriyorum.**

Rızanızı dilediğiniz an geri alabilirsiniz: e-postalardaki "listeden çık" bağlantısı,
hesap ayarları veya kvkk@probotstudio.com. Geri alma, önceki işlemenin hukuka uygunluğunu
etkilemez.
`,al=`# Kişisel Verilerin Korunması Aydınlatma Metni

**Son güncelleme:** 2026-10-07 · **Veri Sorumlusu:** Tuna Gül (Topçular Mah. Cengaver Sk. No:22 D:1, 34055 Eyüpsultan / İstanbul)

Bu metin, 6698 sayılı Kişisel Verilerin Korunması Kanunu ("KVKK") m.10 uyarınca,
probotstudio.com ve alt hizmetlerinde ("Probot") işlenen kişisel verileriniz hakkında sizi
bilgilendirmek için hazırlanmıştır.

## 1. Hangi verileri iÅŸliyoruz?

| Kategori | Örnekler | Kaynak |
|---|---|---|
| Kimlik | ad, soyad | üyelik/sipariş formu |
| İletişim | e-posta, telefon, teslimat adresi | üyelik/sipariş formu |
| Müşteri işlem | sipariş geçmişi, sepet, iade kayıtları | mağaza kullanımı |
| İşlem güvenliği | IP, oturum kayıtları, log | otomatik |
| Kullanım istatistiği (oturumla sınırlı, kimliksiz) | görüntülenen sayfa, tıklama, fare hareketi, oturum görselleştirmesi (sayfa yazıları görünür, yazdıklarınız ile hesap sayfaları ve kişisel bilgiler kayda alınmaz); IP ve dil bilgisi sunucu günlüğünde | otomatik |
| Pazarlama (rızaya bağlı) | site içi davranış, çerez verileri | çerez/analitik araçları |

**Ödeme verileriniz (kart bilgileri) tarafımızca saklanmaz**; ödeme, BDDK lisanslı ödeme
kuruluşu Paratika (Asseco) güvenli ödeme sayfasında gerçekleşir.

## 2. Neden ve hangi hukuki sebeple?

- **Siparişin kurulması ve ifası** (üyelik, teslimat, fatura, iade): KVKK m.5/2-c -
  sözleşmenin kurulması/ifası için gereklilik.
- **Yasal yükümlülükler** (fatura saklama, tüketici mevzuatı, İYS): m.5/2-ç.
- **Meşru menfaat** (dolandırıcılık önleme, hizmet güvenliği, oturumla sınırlı kimliksiz kullanım
  istatistiği ve oturum görselleştirmesi): m.5/2-f. Bu ölçüm kalıcı kayıt yazmaz (yalnız
  sekme kapanınca silinen oturum deposu), ziyaretler arası bağlantısızdır, kimliğinizle
  eşleştirilmez; görselleştirme kayıtları en fazla 30 gün saklanır.
- **Pazarlama ve çerezli ayrıntılı analitik** (kampanya e-postası, reklam ölçümleme, oturum
  kaydı ve ziyaretler arası davranış analitiği): m.5/1 - **açık rızanız** ile. Rıza vermezseniz mağazayı aynı şekilde kullanmaya devam edersiniz.

## 3. Kimlere aktarıyoruz?

- **Kargo:** teslimat için ad, adres, telefon - Geliver altyapısı üzerinden anlaşmalı taşıyıcıya
  (Yurtiçi, Aras, MNG, PTT vb.).
- **Ödeme:** işlem tutarı ve doğrulama bilgileri - Paratika'ya.
- **Yurt dışına:** anonim kullanım istatistiği ve (rızanızla) ayrıntılı analitik için PostHog (AB/Frankfurt), reklam ölçümü
  için Meta Platforms (AB/ABD), Google/Apple ile giriş kullanırsanız ilgili sağlayıcıya.
  Yurt dışı aktarımlar KVKK m.9 kapsamındaki güvencelerle yapılır.

## 4. Ne kadar saklıyoruz?

Üyelik verileri üyelik süresince ve sonrasında yasal zamanaşımı süreleri boyunca (genel kural
10 yıl, fatura/ticari kayıtlar ilgili mevzuat süresi); sunucu erişim günlükleri (IP, tarayıcı/dil bilgisi) en fazla 14 gün, işlem güvenliği log kayıtları 2 yıl; rızaya dayalı
pazarlama verileri rıza geri alınana kadar saklanır, süre sonunda silinir veya anonimleştirilir.

## 5. Haklarınız (KVKK m.11)

Verilerinize erişme, düzeltme, silme/yok etme, işlemeye itiraz, aktarıldığı üçüncü kişileri
öğrenme, otomatik sistem sonuçlarına itiraz ve zararın giderilmesini talep etme hakkına sahipsiniz.

**Başvuru:** kvkk@probotstudio.com adresine e-posta ile veya Topçular Mah. Cengaver Sk. No:22 D:1, 34055 Eyüpsultan / İstanbul adresine yazılı
olarak başvurabilirsiniz. Başvurular en geç 30 gün içinde ücretsiz sonuçlandırılır.

## 6. Çocukların verileri

Probot hesapları **veliler/18 yaş üstü kullanıcılar** içindir. Ürünler 8+ yaş kullanıcılara
yönelik olsa da üyelik, sipariş ve iletişim süreçleri veli hesabı üzerinden yürür; çocuklara
ait kimlik verisi talep etmiyoruz. Tek istisna eğitim platformudur: 18 yaşından küçük olduğunu
belirten bir kullanıcı da hesap açabilir; bu hesaplarda veri işleyen özellikler veli onayına
bağlıdır ve Bölüm 7'de (TASLAK) anlatılır.

## 7. Eğitim platformu, reşit olmayan öğrenciler ve yapay zekâ asistanı (TASLAK)

> **TASLAK – hukuki inceleme bekliyor.** Bu bölüm, okul pilotu öncesinde eğitim platformunun (LMS)
> işlediği verileri açıklamak için eklenmiştir; metin hukuk danışmanı tarafından onaylanmadan
> nihai değildir. Bölüm 6'daki genel kural saklıdır; aşağıdakiler eğitim platformunu kullanan
> hesaplar için, 18 yaş altı kurallar ise seçilen hesap türünden (öğrenci ya da öğretmen/mentör)
> bağımsız olarak 18 yaşından küçük olduğunu belirten **tüm** hesaplar için geçerlidir.

### 7.1 18 yaş altı kullanıcılar

Hesap açarken (hesap türü ne olursa olsun) "18 yaşından küçük müsün?" sorusuna verilen cevap ve, cevap "evet" ise,
**velinin e-posta adresi** işlenir. 18 yaşından küçük kullanıcının hesabının velinin bilgisiyle ve
tercihen velinin e-posta adresiyle açılması beklenir. Kullanıcı kendi e-posta adresini doğruladıktan
sonra veliye tek kullanımlık ve 7 gün geçerli bir onay bağlantısı gönderilir; bağlantıya tıklayan veli
neyin iÅŸleneceÄŸini okuyup onaylar.

Sınıf üyeliği veli onayına bağlı değildir: öğretmen öğrenciyi e-posta adresiyle sınıfına ekleyebilir
ya da öğrenci katılım koduyla katılabilir; sunucu tarafında sınıf için yaş ya da veli onayı kapısı
yoktur. Öğrenci istediği zaman sınıftan ayrılabilir, öğretmen de öğrenciyi sınıftan çıkarabilir;
ayrılma ve çıkarma kaydı silinmez, işaretlenir. Veli onayı gelene kadar hesap **ders fotoğrafı
yükleyemez ve yapay zekâ asistanını kullanamaz**. Bu kısıtlar sunucu tarafında uygulanır. Veli onayı KVKK m.5/1 kapsamındaki açık rızadır; veli, kvkk@probotstudio.com adresine
yazarak onayı geri alabilir. Bu durumda hesap onay öncesi hâline döner: kullanıcı katıldığı
sınıflardan çıkarılır ve bu sınıflardaki ders fotoğrafları silinir. Onayı doğrulamak için velinin e-posta adresi ve onay
zamanı saklanır; bağlantının kendisi saklanmaz (yalnız özeti).

### 7.2 Sınıf, ders ilerlemesi ve ders sonu kayıtları

Öğrenci bir sınıfa katılım koduyla katıldığında ya da öğretmen onu e-posta adresiyle sınıfa
eklediğinde sınıfın öğretmenleri (sınıfı açan öğretmen ve eklediği ortak öğretmenler) şunları görür: öğrencinin görünen
adı (ad yoksa gizlenmiş e-posta adresi; e-postanın kendisi gösterilmez), sınıfa atanan eğitimlerde
hangi dersleri açtığı ve okuduğu, "Dersi bitirdik" işaretleri, isteğe bağlı "takıldığımız yer" notu
ve ekip etiketi. Öğretmen başka eğitimlerde ne okunduğunu görmez. Öğrenci sınıftan ayrılınca ya da
çıkarılınca öğretmen bu kayıtları artık göremez. Hukuki sebep: eğitim hizmetinin sunulması
(m.5/2-c).

### 7.3 Ders fotoğrafları

Öğrenci ders sonunda isteğe bağlı olarak robotunun fotoğrafını yükleyebilir. Fotoğraf yalnız
sınıfın öğretmenleri (ve teknik gereklilikle yöneticiler) tarafından görülür; sunucuda rastgele adla
saklanır, dışarı aktarılmaz. Fotoğraf, öğrenci sildiğinde, yeni fotoğraf yüklediğinde, sınıftan
ayrıldığında ya da çıkarıldığında ve hesap silindiğinde **silinir**. Fotoğrafta kişilerin yer
almamasını öneririz.

### 7.4 Yapay zekâ eğitim asistanı (yurt dışına aktarım)

Eğitim asistanına yazılan sorular, seçili ders metni ve asistanın cevapları, cevabı üretmek için
**yurt dışındaki model sağlayıcısına** (OpenRouter altyapısı üzerinden DeepSeek modelleri)
iletilir; bu, KVKK m.9 kapsamında yurt dışına aktarımdır ve reşit olmayan öğrenciler için veli
onayıyla, yetişkinler için hizmetin kullanımına ilişkin açık rızayla yapılır. Hesap adı ve hesap türü
(öğrenci/öğretmen) asistanın cevabını uyarlamak için istemle birlikte gönderilir; e-posta adresi
gönderilmez. Asistanın kullanıcı hakkında aldığı kısa notlar ve son 40 mesaj yalnız kullanıcının
kendi hesap dosyasında tutulur; kullanıcı bunları asistan panelinden **kalıcı olarak silebilir**.
Kullanım günlüğünde soru ve cevap metni tutulmaz; yalnız sayfa, uzunluk ve süre gibi istatistik
alanları ve kimliğe geri döndürülemeyen anahtarlı bir özet bulunur.

### 7.5 Saklama süreleri (bu bölüm için)

- Ders ilerlemesi, ders sonu kayıtları ve sınıf üyeliği: hesap süresince; hesap silinince silinir.
- Ders fotoğrafları: 7.3'teki olaylardan ilkine kadar.
- Asistan notları ve konuşma geçmişi: kullanıcı silene kadar ya da hesaba 180 gün girilmezse
  kendiliğinden; hesap silinince en geç 180 gün içinde.
- Asistan kullanım günlüğü (metinsiz): 180 gün.
- Veli onay kaydı (veli e-postası, onay zamanı): hesap süresince; hesap silinince silinir.
`,tl=`# Çerez Politikası

**Son güncelleme:** 2026-10-03 · Tuna Gül

probotstudio.com'da çerezleri KVKK ve Kişisel Verileri Koruma Kurumu'nun Çerez Uygulamaları
Rehberi'ne uygun kullanırız. Zorunlu çerezler dışındaki hiçbir çerez, siz onay vermeden
yazılmaz. Tercihinizi dilediğiniz an sayfa altındaki "Çerez Tercihleri" bağlantısından
değiştirebilir, verdiğiniz onayı geri çekebilirsiniz.

## Oturumla sınırlı, kimliksiz ölçüm (kalıcı çerez yazılmaz)

Siteyi iyileştirmek için **oturumla sınırlı, kimliksiz kullanım verisi** toplarız:
görüntülenen sayfa, tıklama, sayfada kalış, fare hareketi (ısı haritası) ve **oturum
görselleştirmesi**. Görselleştirmede sayfa yerleşimi, sayfadaki yazılar ve hareketler
görünür. Forma yazdığınız her şey cihazınızdan çıkmadan maskelenir. Hesap sayfaları ile ad,
e-posta, adres, telefon ve sipariş bilgileri kayda alınmaz. Bu ölçüm kalıcı çerez veya kalıcı kayıt yazmaz; yalnız tarayıcı oturumu
süresince yaşayan geçici oturum deposu (sessionStorage) kullanılır, sekme kapanınca
silinir ve sizi **ziyaretler arasında takip etmez**, kimliğinizle eşleştirilmez.
Görselleştirme kayıtları en fazla 30 gün saklanır. Veriler PostHog (AB/Frankfurt)
üzerinde işlenir; hukuki dayanak KVKK m.5/2(f) meşru menfaattir. Ayrıca sunucu erişim
kayıtlarında (IP adresi, tarayıcı ve dil bilgisi, istenen sayfa) güvenlik ve hata
ayıklama amacıyla en fazla 14 gün saklanan günlükler tutulur.

## Kullandığımız çerezler

### 1. Kesinlikle gerekli (rıza gerektirmez)
| Çerez | Amaç | Süre |
|---|---|---|
| oturum çerezi (\`better-auth.session_token\`) | hesap girişinizi sürdürmek | 7 gün |
| sepet/oturum kimlikleri | sepetinizi hatırlamak, ödeme akışı | oturum/30 gün |
| çerez tercihi | onay seçiminizi hatırlamak | 6 ay |

### 2. Ayrıntılı analitik (onayınızla)
Çerez bandında **Kabul et** derseniz ölçüm, çerezli ayrıntılı ölçüme yükselir: kalıcı
kimlik, yukarıdaki kuralla aynı oturum kaydı (yazdıklarınız maskeli, hesap sayfaları ve
kişisel bilgiler kayıt dışı) ve aşağıdaki araçlar
(bandta **Sadece zorunlu** seçeneği eşit biçimde sunulur):
| Araç | Amaç | Veri gittiği yer |
|---|---|---|
| PostHog | ziyaretler arası kullanım analizi, oturum kaydı (yazdıklarınız maskeli, hesap sayfaları kayıt dışı), ısı haritası, deneme (A/B) ölçümü | AB (Frankfurt) |
| Google Analytics | toplu trafik istatistiği (IP anonimleştirilmiş) | Google (yurt dışı) |

### 3. Pazarlama (onayınızla)
| Araç | Amaç | Veri gittiği yer |
|---|---|---|
| Meta Pixel + Conversions API | reklam ölçümü, yeniden pazarlama | Meta (yurt dışı) |

**Sadece zorunlu** der ya da "Çerez Tercihleri"nden onayınızı geri çekerseniz yalnız
yukarıdaki oturumla sınırlı, kimliksiz ölçüm çalışır; çerezli analitik ve pazarlama
araçları yüklenmez. Alışveriş deneyiminiz etkilenmez.

## Tarayıcıdan yönetim

Tarayıcı ayarlarından tüm çerezleri silebilir/engelleyebilirsiniz; zorunlu çerezler engellenirse
giriş ve sepet işlevleri çalışmayabilir.

Sorular için: kvkk@probotstudio.com
`,nl=`# Mesafeli Satış Sözleşmesi

**Son güncelleme:** 2026-10-07

## 1. Taraflar

**SATICI:** Tuna Gül · Topçular Mah. Cengaver Sk. No:22 D:1, 34055 Eyüpsultan / İstanbul · VKN: 4140655727 (Bayrampaşa VD) ·
E-posta: destek@probotstudio.com

**ALICI:** Sipariş formunda bilgileri yer alan tüketici.

## 2. Konu
İşbu sözleşme, ALICI'nın probotstudio.com üzerinden elektronik ortamda siparişini verdiği,
özellikleri ve satış fiyatı sipariş sayfasında ve ön bilgilendirme formunda belirtilen ürünün
satışı ve teslimi ile ilgili olarak 6502 sayılı Tüketicinin Korunması Hakkında Kanun ve
Mesafeli Sözleşmeler Yönetmeliği hükümleri gereğince tarafların hak ve yükümlülüklerini düzenler.

## 3. Ürün, fiyat ve ödeme
1. Ürünün cinsi, adedi, satış bedeli (KDV dahil) ve kargo ücreti sipariş özetinde gösterilir.
2. Ödeme, ALICI'nın seçimine göre Paratika güvenli ödeme sayfası üzerinden kredi/banka kartı
   ile tek çekim olarak ya da havale/EFT ile alınır; taksit uygulanmaz. SATICI kart bilgilerini
   görmez ve saklamaz.
3. Kartla ödemede, ödeme kuruluşunun işlem bedelini karşılamak üzere ürün ve kargo toplamına
   kart ödeme farkı eklenir (güncel oran %4,49). Farkın oranı ve tutarı ödeme adımında, ödeme
   yapılmadan önce sipariş özetinde ayrı satır olarak gösterilir ve ALICI ödenecek toplamı görerek
   onaylar. Havale/EFT ile ödemede bu fark alınmaz.
4. Havale/EFT seçildiğinde sipariş ödeme bekler durumda oluşturulur; IBAN, alıcı adı, açıklamaya
   yazılacak sipariş numarası ve son ödeme tarihi sipariş sonrasında gösterilir ve e-posta ile
   gönderilir. Ödeme son ödeme tarihine kadar SATICI hesabına geçmezse sipariş iptal edilir.
5. Fiyatlar sipariş anında geçerli fiyatlardır; sipariş onayından sonra değişiklik ALICI'yı etkilemez.

## 4. Teslimat
1. Ürün, sipariş onayını takiben stok durumuna göre en geç **30 gün** içinde, anlaşmalı kargo
   firması (Yurtiçi, Aras, MNG, PTT vb.) aracılığıyla ALICI'nın bildirdiği adrese teslim edilir.
   Öngörülen kargoya veriliş süresi ürün sayfasında ayrıca belirtilir (el yapımı/parti üretimi
   ürünlerde üretim süresi uygulanabilir).
2. Kargo ücreti sipariş özetinde gösterilir; kampanya belirtilmedikçe ALICI'ya aittir.
3. Teslimde hasarlı/eksik paket için tutanak tutturularak destek@probotstudio.com'a bildirilmelidir.

## 5. Cayma hakkı
1. ALICI, ürünü teslim aldığı tarihten itibaren **14 (on dört) gün** içinde hiçbir gerekçe
   göstermeksizin cayma hakkına sahiptir. Cayma bildirimi destek@probotstudio.com adresine
   veya yazılı olarak yapılabilir.
2. Cayma halinde ürün, faturası ve tüm parçaları eksiksiz olacak şekilde 10 gün içinde iade
   edilir. İade kargo süreci SATICI'nın anlaşmalı taşıyıcısı üzerinden yürütülür; iade
   yönergesi cayma bildirimine yanıt olarak paylaşılır.
3. Cayma hakkının kullanımından itibaren 14 gün içinde ödemeler (kargo ve kart ödeme farkı
   dahil) ödeme yöntemine iade edilir. Havale/EFT ile yapılan ödemeler ALICI'nın bildirdiği
   IBAN'a iade edilir.
4. **İstisnalar (Yönetmelik m.15):** ALICI'nın istekleri doğrultusunda kişiselleştirilen
   ürünler; ambalajı açıldıktan sonra iadesi sağlık/hijyen açısından uygun olmayanlar; ve
   niteliği itibarıyla iade edilemeyecek ürünler için cayma hakkı kullanılamaz. Elektronik
   bileşenlerde lehimlenmiş/monte edilmiş, kullanım izi taşıyan parçalar ayıp incelemesi saklı
   kalmak üzere iade kapsamı dışında değerlendirilebilir.

## 6. Ayıplı mal
Ayıplı çıkması halinde ALICI, 6502 sayılı Kanun m.11'deki seçimlik haklarına (onarım, değişim,
bedel iadesi, indirim) sahiptir. Türkçe kurulum dokümanları ve destek kanalı
(destek@probotstudio.com) sağlanır.

## 7. Mücbir sebep
Tarafların kontrolü dışındaki hallerde (doğal afet, salgın, tedarik krizi vb.) yükümlülükler
askıya alınır; 30 günü aşan gecikmede taraflar sözleşmeyi feshedebilir, ödemeler iade edilir.

## 8. Uyuşmazlık
Uyuşmazlıklarda ALICI'nın yerleşim yerindeki Tüketici Hakem Heyetleri (parasal sınırlar
dahilinde) ve Tüketici Mahkemeleri yetkilidir.

## 9. Yürürlük
ALICI, sipariş onayı öncesinde ön bilgilendirme formunu ve işbu sözleşmeyi okuyup elektronik
ortamda onayladığını kabul eder. Sözleşme, sipariş onayı ile kurulur; bir örneği ALICI'nın
e-posta adresine gönderilir.
`,il=`# Ön Bilgilendirme Formu

Mesafeli Sözleşmeler Yönetmeliği m.5 uyarınca, siparişinizi onaylamadan önce aşağıdaki
bilgileri okuyunuz.

## Satıcı
Tuna Gül · Topçular Mah. Cengaver Sk. No:22 D:1, 34055 Eyüpsultan / İstanbul · VKN: 4140655727 ·
E-posta: destek@probotstudio.com

## Ürün ve fiyat
Siparişinize konu ürünlerin temel nitelikleri, adedi, tüm vergiler dahil toplam satış fiyatı ve
kargo ücreti **sipariş özeti sayfasında** gösterilmektedir; bu bilgiler işbu formun ayrılmaz
parçasıdır.

## Ödeme ve teslimat
- Ödeme yöntemleri: kredi/banka kartı (Paratika güvenli ödeme sayfası üzerinden, tek çekim;
  taksit uygulanmaz) ya da havale/EFT. Kart bilgileriniz satıcıda tutulmaz.
- Kart ödeme farkı: kartla ödemede, ödeme kuruluşunun işlem bedelini karşılamak üzere ürün ve
  kargo toplamına kart ödeme farkı eklenir (güncel oran %4,49). Farkın oranı ve tutarı ödeme
  adımında, ödeme yapılmadan önce sipariş özetinde ayrı satır olarak gösterilir. Havale/EFT ile
  ödemede bu fark alınmaz.
- Havale/EFT: siparişiniz ödeme bekler durumda oluşturulur. IBAN, alıcı adı, açıklamaya
  yazılacak sipariş numarası ve son ödeme tarihi sipariş sonrasında gösterilir ve e-posta ile
  gönderilir. Ödeme son ödeme tarihine kadar hesabımıza geçmezse sipariş iptal edilir. Sipariş,
  ödeme hesabımıza geçtikten sonra hazırlanır.
- Teslimat: Anlaşmalı kargo ile sipariş özetinde belirtilen adrese; azami 30 gün içinde.
  Parti üretimi ürünlerde tahmini kargoya veriliş tarihi ürün sayfasında belirtilir.
- Kargo bedeli: sipariş özetinde gösterilir.

## Cayma hakkı
Teslimden itibaren **14 gün** içinde gerekçesiz cayma hakkınız vardır. Cayma bildiriminizi
destek@probotstudio.com'a iletebilirsiniz. İade süreci ve istisnalar için
[Mesafeli Satış Sözleşmesi](/shop/yasal/mesafeli-satis-sozlesmesi) m.5'e bakınız. Kişiselleştirilmiş
ürünlerde cayma hakkı bulunmaz.

## Şikâyet ve uyuşmazlık
Öncelikle destek@probotstudio.com'a başvurabilirsiniz. Ayrıca yerleşim yerinizdeki Tüketici
Hakem Heyeti ve Tüketici Mahkemelerine başvuru hakkınız saklıdır.

*Bu formu onaylamakla, sipariş verdiğiniz ürünler için ödeme yükümlülüğü altına girdiğinizi
bildiğinizi kabul etmiş olursunuz ("sipariş = ödeme yükümlülüğü").*
`,sl=`# Teslimat ve İade

## Teslimat
- Siparişler anlaşmalı kargo firmalarıyla (Yurtiçi, Aras, MNG, PTT vb.) gönderilir; kargo
  ücreti sepette, ödeme öncesinde net olarak gösterilir.
- 10.000 TL ve üzeri siparişlerde kargo ücretsiz.
- Kitlerimiz parti üretimidir: tahmini kargoya veriliş süresi her ürün sayfasında yazar.
  Kargoya verildiğinde takip bağlantısı e-postana gelir.
- Paket hasarlı geldiyse kargo görevlisine tutanak tutturup destek@probotstudio.com'a yaz.

## İade (14 gün cayma hakkı)
1. Ürünü teslim aldıktan sonra **14 gün** içinde gerekçe göstermeden iade edebilirsin.
2. destek@probotstudio.com'a sipariş numaranla yaz; iade kargo kodunu gönderelim.
3. Ürünü faturası ve tüm parçalarıyla paketle; kod ile ücretsiz iade kargosuna ver.
4. Ürün bize ulaştıktan sonra bedel 14 gün içinde ödeme yöntemine iade edilir.

**İade kapsamı dışında:** kişiselleştirilmiş ürünler; lehimlenmiş/monte edilip kullanım izi
oluşmuş elektronik parçalar (ayıplı ürün hakların saklıdır - ayıplı üründe onarım/değişim/iade
her zaman geçerli).

Okul ve şirket gibi kurumsal (faturalı) alımlarda cayma hakkı uygulanmaz, iade yapılmaz; ayıplı üründe haklar saklıdır.

Sorun mu var? Önce yaz: **destek@probotstudio.com** - Türkçe destek, gerçek insan.
`,rl=`# Üyelik Sözleşmesi

**Son güncelleme:** 2026-07-03

## 1. Taraflar
İşbu sözleşme, Tuna Gül (Topçular Mah. Cengaver Sk. No:22 D:1, 34055 Eyüpsultan / İstanbul, "Probot") ile probotstudio.com üzerinde
hesap oluşturan kullanıcı ("Üye") arasında, üyeliğin oluşturulmasıyla kurulmuş sayılır.

## 2. Konu
Sözleşme; Üye'nin Probot hesabı ("Probot Hesabı") ile mağaza, Builder, Blocks ve dokümantasyon
dahil Probot hizmetlerinden yararlanma koşullarını düzenler. **Tek hesap tüm Probot ürünlerinde
geçerlidir.**

## 3. Üyelik koşulları
1. Üyelik 18 yaş ve üzeri gerçek kişilere açıktır. Ürünler 8+ yaş kullanıcıya yönelik olsa da
   hesap, sipariş ve iletişim veli/reşit kullanıcı üzerinden yürütülür.
2. Üye, kayıt bilgilerinin doğru ve güncel olduğunu taahhüt eder.
3. Hesap ve şifre güvenliği Üye'nin sorumluluğundadır; şifre üçüncü kişilerle paylaşılmaz.
   Yetkisiz kullanım şüphesinde destek@probotstudio.com'a bildirim yapılır.
4. Google veya Apple ile giriş kullanıldığında ilgili sağlayıcının koşulları ayrıca geçerlidir.

## 4. Kullanım kuralları
Hizmetin kötüye kullanımı (güvenlik ihlali denemesi, otomatik veri toplama, üçüncü kişi
haklarının ihlali, hukuka aykırı içerik) yasaktır. İhlal halinde Probot üyeliği askıya alabilir
veya feshedebilir.

## 5. KiÅŸisel veriler
Kişisel verilerin işlenmesine ilişkin ayrıntılar [Aydınlatma Metni](/shop/yasal/aydinlatma-metni)'nde yer
alır. Pazarlama iletileri yalnızca ayrıca ve özgürce verilen açık rıza ile gönderilir.

## 6. Fikri mülkiyet
Probot yazılımları, görselleri, doküman ve markaları Probot'a aittir; üyelik bunlar üzerinde
lisans dışında bir hak doğurmaz. Açık kaynak bileşenler kendi lisanslarına tabidir.

## 7. DeÄŸiÅŸiklik ve fesih
1. Üye dilediği an hesabını kapatabilir (destek@probotstudio.com veya hesap ayarları).
2. Probot, sözleşmede makul değişiklikleri siteden duyurarak yapabilir; esaslı değişiklikler
   e-posta ile bildirilir.
3. Fesih, doğmuş hak ve borçları etkilemez; yasal saklama süreleri saklıdır.

## 8. Uyuşmazlık
Türk hukuku uygulanır. Tüketici işlemlerinde Üye'nin yerleşim yeri Tüketici Hakem Heyetleri ve
Tüketici Mahkemeleri görevlidir.
`;function Ft(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var na=Ft();function ri(a){na=a}var Ea={exec:()=>null};function q(a,n=""){let i=typeof a=="string"?a:a.source;const r={replace:(s,o)=>{let l=typeof o=="string"?o:o.source;return l=l.replace(ke.caret,"$1"),i=i.replace(s,l),r},getRegex:()=>new RegExp(i,n)};return r}var ke={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceTabs:/^\t+/,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] /,listReplaceTask:/^\[[ xX]\] +/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,unescapeTest:/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:a=>new RegExp(`^( {0,3}${a})((?:[	 ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:a=>new RegExp(`^ {0,${Math.min(3,a-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ 	][^\\n]*)?(?:\\n|$))`),hrRegex:a=>new RegExp(`^ {0,${Math.min(3,a-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:a=>new RegExp(`^ {0,${Math.min(3,a-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:a=>new RegExp(`^ {0,${Math.min(3,a-1)}}#`),htmlBeginRegex:a=>new RegExp(`^ {0,${Math.min(3,a-1)}}<(?:[a-z].*>|!--)`,"i")},ll=/^(?:[ \t]*(?:\n|$))+/,ol=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,cl=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,La=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,dl=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,Lt=/(?:[*+-]|\d{1,9}[.)])/,li=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,oi=q(li).replace(/bull/g,Lt).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),ul=q(li).replace(/bull/g,Lt).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),It=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,ml=/^[^\n]+/,$t=/(?!\s*\])(?:\\.|[^\[\]\\])+/,hl=q(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",$t).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),pl=q(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,Lt).getRegex(),st="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",Kt=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,kl=q("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ 	]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ 	]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ 	]*)+\\n|$))","i").replace("comment",Kt).replace("tag",st).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),ci=q(It).replace("hr",La).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",st).getRegex(),gl=q(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",ci).getRegex(),Dt={blockquote:gl,code:ol,def:hl,fences:cl,heading:dl,hr:La,html:kl,lheading:oi,list:pl,newline:ll,paragraph:ci,table:Ea,text:ml},Sn=q("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",La).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3}	)[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",st).getRegex(),fl={...Dt,lheading:ul,table:Sn,paragraph:q(It).replace("hr",La).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",Sn).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",st).getRegex()},yl={...Dt,html:q(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",Kt).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:Ea,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:q(It).replace("hr",La).replace("heading",` *#{1,6} *[^
]`).replace("lheading",oi).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},xl=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,bl=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,di=/^( {2,}|\\)\n(?!\s*$)/,jl=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,rt=/[\p{P}\p{S}]/u,Ot=/[\s\p{P}\p{S}]/u,ui=/[^\s\p{P}\p{S}]/u,vl=q(/^((?![*_])punctSpace)/,"u").replace(/punctSpace/g,Ot).getRegex(),mi=/(?!~)[\p{P}\p{S}]/u,Nl=/(?!~)[\s\p{P}\p{S}]/u,zl=/(?:[^\s\p{P}\p{S}]|~)/u,Sl=/\[[^[\]]*?\]\((?:\\.|[^\\\(\)]|\((?:\\.|[^\\\(\)])*\))*\)|`[^`]*?`|<[^<>]*?>/g,hi=/^(?:\*+(?:((?!\*)punct)|[^\s*]))|^_+(?:((?!_)punct)|([^\s_]))/,wl=q(hi,"u").replace(/punct/g,rt).getRegex(),_l=q(hi,"u").replace(/punct/g,mi).getRegex(),pi="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",Al=q(pi,"gu").replace(/notPunctSpace/g,ui).replace(/punctSpace/g,Ot).replace(/punct/g,rt).getRegex(),Tl=q(pi,"gu").replace(/notPunctSpace/g,zl).replace(/punctSpace/g,Nl).replace(/punct/g,mi).getRegex(),El=q("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,ui).replace(/punctSpace/g,Ot).replace(/punct/g,rt).getRegex(),Cl=q(/\\(punct)/,"gu").replace(/punct/g,rt).getRegex(),Pl=q(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),Bl=q(Kt).replace("(?:-->|$)","-->").getRegex(),Rl=q("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment",Bl).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),Xa=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,Fl=q(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]*(?:\n[ \t]*)?)(title))?\s*\)/).replace("label",Xa).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),ki=q(/^!?\[(label)\]\[(ref)\]/).replace("label",Xa).replace("ref",$t).getRegex(),gi=q(/^!?\[(ref)\](?:\[\])?/).replace("ref",$t).getRegex(),Ll=q("reflink|nolink(?!\\()","g").replace("reflink",ki).replace("nolink",gi).getRegex(),Mt={_backpedal:Ea,anyPunctuation:Cl,autolink:Pl,blockSkip:Sl,br:di,code:bl,del:Ea,emStrongLDelim:wl,emStrongRDelimAst:Al,emStrongRDelimUnd:El,escape:xl,link:Fl,nolink:gi,punctuation:vl,reflink:ki,reflinkSearch:Ll,tag:Rl,text:jl,url:Ea},Il={...Mt,link:q(/^!?\[(label)\]\((.*?)\)/).replace("label",Xa).getRegex(),reflink:q(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",Xa).getRegex()},zt={...Mt,emStrongRDelimAst:Tl,emStrongLDelim:_l,url:q(/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,"i").replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\.|[^\\])*?(?:\\.|[^\s~\\]))\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|https?:\/\/|ftp:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/},$l={...zt,br:q(di).replace("{2,}","*").getRegex(),text:q(zt.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()},Ha={normal:Dt,gfm:fl,pedantic:yl},wa={normal:Mt,gfm:zt,breaks:$l,pedantic:Il},Kl={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},wn=a=>Kl[a];function Fe(a,n){if(n){if(ke.escapeTest.test(a))return a.replace(ke.escapeReplace,wn)}else if(ke.escapeTestNoEncode.test(a))return a.replace(ke.escapeReplaceNoEncode,wn);return a}function _n(a){try{a=encodeURI(a).replace(ke.percentDecode,"%")}catch{return null}return a}function An(a,n){const i=a.replace(ke.findPipe,(o,l,c)=>{let d=!1,m=l;for(;--m>=0&&c[m]==="\\";)d=!d;return d?"|":" |"}),r=i.split(ke.splitPipe);let s=0;if(r[0].trim()||r.shift(),r.length>0&&!r.at(-1)?.trim()&&r.pop(),n)if(r.length>n)r.splice(n);else for(;r.length<n;)r.push("");for(;s<r.length;s++)r[s]=r[s].trim().replace(ke.slashPipe,"|");return r}function _a(a,n,i){const r=a.length;if(r===0)return"";let s=0;for(;s<r&&a.charAt(r-s-1)===n;)s++;return a.slice(0,r-s)}function Dl(a,n){if(a.indexOf(n[1])===-1)return-1;let i=0;for(let r=0;r<a.length;r++)if(a[r]==="\\")r++;else if(a[r]===n[0])i++;else if(a[r]===n[1]&&(i--,i<0))return r;return i>0?-2:-1}function Tn(a,n,i,r,s){const o=n.href,l=n.title||null,c=a[1].replace(s.other.outputLinkReplace,"$1");r.state.inLink=!0;const d={type:a[0].charAt(0)==="!"?"image":"link",raw:i,href:o,title:l,text:c,tokens:r.inlineTokens(c)};return r.state.inLink=!1,d}function Ol(a,n,i){const r=a.match(i.other.indentCodeCompensation);if(r===null)return n;const s=r[1];return n.split(`
`).map(o=>{const l=o.match(i.other.beginningSpace);if(l===null)return o;const[c]=l;return c.length>=s.length?o.slice(s.length):o}).join(`
`)}var et=class{options;rules;lexer;constructor(a){this.options=a||na}space(a){const n=this.rules.block.newline.exec(a);if(n&&n[0].length>0)return{type:"space",raw:n[0]}}code(a){const n=this.rules.block.code.exec(a);if(n){const i=n[0].replace(this.rules.other.codeRemoveIndent,"");return{type:"code",raw:n[0],codeBlockStyle:"indented",text:this.options.pedantic?i:_a(i,`
`)}}}fences(a){const n=this.rules.block.fences.exec(a);if(n){const i=n[0],r=Ol(i,n[3]||"",this.rules);return{type:"code",raw:i,lang:n[2]?n[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):n[2],text:r}}}heading(a){const n=this.rules.block.heading.exec(a);if(n){let i=n[2].trim();if(this.rules.other.endingHash.test(i)){const r=_a(i,"#");(this.options.pedantic||!r||this.rules.other.endingSpaceChar.test(r))&&(i=r.trim())}return{type:"heading",raw:n[0],depth:n[1].length,text:i,tokens:this.lexer.inline(i)}}}hr(a){const n=this.rules.block.hr.exec(a);if(n)return{type:"hr",raw:_a(n[0],`
`)}}blockquote(a){const n=this.rules.block.blockquote.exec(a);if(n){let i=_a(n[0],`
`).split(`
`),r="",s="";const o=[];for(;i.length>0;){let l=!1;const c=[];let d;for(d=0;d<i.length;d++)if(this.rules.other.blockquoteStart.test(i[d]))c.push(i[d]),l=!0;else if(!l)c.push(i[d]);else break;i=i.slice(d);const m=c.join(`
`),f=m.replace(this.rules.other.blockquoteSetextReplace,`
    $1`).replace(this.rules.other.blockquoteSetextReplace2,"");r=r?`${r}
${m}`:m,s=s?`${s}
${f}`:f;const g=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTokens(f,o,!0),this.lexer.state.top=g,i.length===0)break;const x=o.at(-1);if(x?.type==="code")break;if(x?.type==="blockquote"){const k=x,h=k.raw+`
`+i.join(`
`),v=this.blockquote(h);o[o.length-1]=v,r=r.substring(0,r.length-k.raw.length)+v.raw,s=s.substring(0,s.length-k.text.length)+v.text;break}else if(x?.type==="list"){const k=x,h=k.raw+`
`+i.join(`
`),v=this.list(h);o[o.length-1]=v,r=r.substring(0,r.length-x.raw.length)+v.raw,s=s.substring(0,s.length-k.raw.length)+v.raw,i=h.substring(o.at(-1).raw.length).split(`
`);continue}}return{type:"blockquote",raw:r,tokens:o,text:s}}}list(a){let n=this.rules.block.list.exec(a);if(n){let i=n[1].trim();const r=i.length>1,s={type:"list",raw:"",ordered:r,start:r?+i.slice(0,-1):"",loose:!1,items:[]};i=r?`\\d{1,9}\\${i.slice(-1)}`:`\\${i}`,this.options.pedantic&&(i=r?i:"[*+-]");const o=this.rules.other.listItemRegex(i);let l=!1;for(;a;){let d=!1,m="",f="";if(!(n=o.exec(a))||this.rules.block.hr.test(a))break;m=n[0],a=a.substring(m.length);let g=n[2].split(`
`,1)[0].replace(this.rules.other.listReplaceTabs,j=>" ".repeat(3*j.length)),x=a.split(`
`,1)[0],k=!g.trim(),h=0;if(this.options.pedantic?(h=2,f=g.trimStart()):k?h=n[1].length+1:(h=n[2].search(this.rules.other.nonSpaceChar),h=h>4?1:h,f=g.slice(h),h+=n[1].length),k&&this.rules.other.blankLine.test(x)&&(m+=x+`
`,a=a.substring(x.length+1),d=!0),!d){const j=this.rules.other.nextBulletRegex(h),b=this.rules.other.hrRegex(h),C=this.rules.other.fencesBeginRegex(h),S=this.rules.other.headingBeginRegex(h),L=this.rules.other.htmlBeginRegex(h);for(;a;){const K=a.split(`
`,1)[0];let G;if(x=K,this.options.pedantic?(x=x.replace(this.rules.other.listReplaceNesting,"  "),G=x):G=x.replace(this.rules.other.tabCharGlobal,"    "),C.test(x)||S.test(x)||L.test(x)||j.test(x)||b.test(x))break;if(G.search(this.rules.other.nonSpaceChar)>=h||!x.trim())f+=`
`+G.slice(h);else{if(k||g.replace(this.rules.other.tabCharGlobal,"    ").search(this.rules.other.nonSpaceChar)>=4||C.test(g)||S.test(g)||b.test(g))break;f+=`
`+x}!k&&!x.trim()&&(k=!0),m+=K+`
`,a=a.substring(K.length+1),g=G.slice(h)}}s.loose||(l?s.loose=!0:this.rules.other.doubleBlankLine.test(m)&&(l=!0));let v=null,z;this.options.gfm&&(v=this.rules.other.listIsTask.exec(f),v&&(z=v[0]!=="[ ] ",f=f.replace(this.rules.other.listReplaceTask,""))),s.items.push({type:"list_item",raw:m,task:!!v,checked:z,loose:!1,text:f,tokens:[]}),s.raw+=m}const c=s.items.at(-1);if(c)c.raw=c.raw.trimEnd(),c.text=c.text.trimEnd();else return;s.raw=s.raw.trimEnd();for(let d=0;d<s.items.length;d++)if(this.lexer.state.top=!1,s.items[d].tokens=this.lexer.blockTokens(s.items[d].text,[]),!s.loose){const m=s.items[d].tokens.filter(g=>g.type==="space"),f=m.length>0&&m.some(g=>this.rules.other.anyLine.test(g.raw));s.loose=f}if(s.loose)for(let d=0;d<s.items.length;d++)s.items[d].loose=!0;return s}}html(a){const n=this.rules.block.html.exec(a);if(n)return{type:"html",block:!0,raw:n[0],pre:n[1]==="pre"||n[1]==="script"||n[1]==="style",text:n[0]}}def(a){const n=this.rules.block.def.exec(a);if(n){const i=n[1].toLowerCase().replace(this.rules.other.multipleSpaceGlobal," "),r=n[2]?n[2].replace(this.rules.other.hrefBrackets,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",s=n[3]?n[3].substring(1,n[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):n[3];return{type:"def",tag:i,raw:n[0],href:r,title:s}}}table(a){const n=this.rules.block.table.exec(a);if(!n||!this.rules.other.tableDelimiter.test(n[2]))return;const i=An(n[1]),r=n[2].replace(this.rules.other.tableAlignChars,"").split("|"),s=n[3]?.trim()?n[3].replace(this.rules.other.tableRowBlankLine,"").split(`
`):[],o={type:"table",raw:n[0],header:[],align:[],rows:[]};if(i.length===r.length){for(const l of r)this.rules.other.tableAlignRight.test(l)?o.align.push("right"):this.rules.other.tableAlignCenter.test(l)?o.align.push("center"):this.rules.other.tableAlignLeft.test(l)?o.align.push("left"):o.align.push(null);for(let l=0;l<i.length;l++)o.header.push({text:i[l],tokens:this.lexer.inline(i[l]),header:!0,align:o.align[l]});for(const l of s)o.rows.push(An(l,o.header.length).map((c,d)=>({text:c,tokens:this.lexer.inline(c),header:!1,align:o.align[d]})));return o}}lheading(a){const n=this.rules.block.lheading.exec(a);if(n)return{type:"heading",raw:n[0],depth:n[2].charAt(0)==="="?1:2,text:n[1],tokens:this.lexer.inline(n[1])}}paragraph(a){const n=this.rules.block.paragraph.exec(a);if(n){const i=n[1].charAt(n[1].length-1)===`
`?n[1].slice(0,-1):n[1];return{type:"paragraph",raw:n[0],text:i,tokens:this.lexer.inline(i)}}}text(a){const n=this.rules.block.text.exec(a);if(n)return{type:"text",raw:n[0],text:n[0],tokens:this.lexer.inline(n[0])}}escape(a){const n=this.rules.inline.escape.exec(a);if(n)return{type:"escape",raw:n[0],text:n[1]}}tag(a){const n=this.rules.inline.tag.exec(a);if(n)return!this.lexer.state.inLink&&this.rules.other.startATag.test(n[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&this.rules.other.endATag.test(n[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&this.rules.other.startPreScriptTag.test(n[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&this.rules.other.endPreScriptTag.test(n[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:n[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:n[0]}}link(a){const n=this.rules.inline.link.exec(a);if(n){const i=n[2].trim();if(!this.options.pedantic&&this.rules.other.startAngleBracket.test(i)){if(!this.rules.other.endAngleBracket.test(i))return;const o=_a(i.slice(0,-1),"\\");if((i.length-o.length)%2===0)return}else{const o=Dl(n[2],"()");if(o===-2)return;if(o>-1){const c=(n[0].indexOf("!")===0?5:4)+n[1].length+o;n[2]=n[2].substring(0,o),n[0]=n[0].substring(0,c).trim(),n[3]=""}}let r=n[2],s="";if(this.options.pedantic){const o=this.rules.other.pedanticHrefTitle.exec(r);o&&(r=o[1],s=o[3])}else s=n[3]?n[3].slice(1,-1):"";return r=r.trim(),this.rules.other.startAngleBracket.test(r)&&(this.options.pedantic&&!this.rules.other.endAngleBracket.test(i)?r=r.slice(1):r=r.slice(1,-1)),Tn(n,{href:r&&r.replace(this.rules.inline.anyPunctuation,"$1"),title:s&&s.replace(this.rules.inline.anyPunctuation,"$1")},n[0],this.lexer,this.rules)}}reflink(a,n){let i;if((i=this.rules.inline.reflink.exec(a))||(i=this.rules.inline.nolink.exec(a))){const r=(i[2]||i[1]).replace(this.rules.other.multipleSpaceGlobal," "),s=n[r.toLowerCase()];if(!s){const o=i[0].charAt(0);return{type:"text",raw:o,text:o}}return Tn(i,s,i[0],this.lexer,this.rules)}}emStrong(a,n,i=""){let r=this.rules.inline.emStrongLDelim.exec(a);if(!r||r[3]&&i.match(this.rules.other.unicodeAlphaNumeric))return;if(!(r[1]||r[2]||"")||!i||this.rules.inline.punctuation.exec(i)){const o=[...r[0]].length-1;let l,c,d=o,m=0;const f=r[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(f.lastIndex=0,n=n.slice(-1*a.length+o);(r=f.exec(n))!=null;){if(l=r[1]||r[2]||r[3]||r[4]||r[5]||r[6],!l)continue;if(c=[...l].length,r[3]||r[4]){d+=c;continue}else if((r[5]||r[6])&&o%3&&!((o+c)%3)){m+=c;continue}if(d-=c,d>0)continue;c=Math.min(c,c+d+m);const g=[...r[0]][0].length,x=a.slice(0,o+r.index+g+c);if(Math.min(o,c)%2){const h=x.slice(1,-1);return{type:"em",raw:x,text:h,tokens:this.lexer.inlineTokens(h)}}const k=x.slice(2,-2);return{type:"strong",raw:x,text:k,tokens:this.lexer.inlineTokens(k)}}}}codespan(a){const n=this.rules.inline.code.exec(a);if(n){let i=n[2].replace(this.rules.other.newLineCharGlobal," ");const r=this.rules.other.nonSpaceChar.test(i),s=this.rules.other.startingSpaceChar.test(i)&&this.rules.other.endingSpaceChar.test(i);return r&&s&&(i=i.substring(1,i.length-1)),{type:"codespan",raw:n[0],text:i}}}br(a){const n=this.rules.inline.br.exec(a);if(n)return{type:"br",raw:n[0]}}del(a){const n=this.rules.inline.del.exec(a);if(n)return{type:"del",raw:n[0],text:n[2],tokens:this.lexer.inlineTokens(n[2])}}autolink(a){const n=this.rules.inline.autolink.exec(a);if(n){let i,r;return n[2]==="@"?(i=n[1],r="mailto:"+i):(i=n[1],r=i),{type:"link",raw:n[0],text:i,href:r,tokens:[{type:"text",raw:i,text:i}]}}}url(a){let n;if(n=this.rules.inline.url.exec(a)){let i,r;if(n[2]==="@")i=n[0],r="mailto:"+i;else{let s;do s=n[0],n[0]=this.rules.inline._backpedal.exec(n[0])?.[0]??"";while(s!==n[0]);i=n[0],n[1]==="www."?r="http://"+n[0]:r=n[0]}return{type:"link",raw:n[0],text:i,href:r,tokens:[{type:"text",raw:i,text:i}]}}}inlineText(a){const n=this.rules.inline.text.exec(a);if(n){const i=this.lexer.state.inRawBlock;return{type:"text",raw:n[0],text:n[0],escaped:i}}}},De=class St{tokens;options;state;tokenizer;inlineQueue;constructor(n){this.tokens=[],this.tokens.links=Object.create(null),this.options=n||na,this.options.tokenizer=this.options.tokenizer||new et,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};const i={other:ke,block:Ha.normal,inline:wa.normal};this.options.pedantic?(i.block=Ha.pedantic,i.inline=wa.pedantic):this.options.gfm&&(i.block=Ha.gfm,this.options.breaks?i.inline=wa.breaks:i.inline=wa.gfm),this.tokenizer.rules=i}static get rules(){return{block:Ha,inline:wa}}static lex(n,i){return new St(i).lex(n)}static lexInline(n,i){return new St(i).inlineTokens(n)}lex(n){n=n.replace(ke.carriageReturn,`
`),this.blockTokens(n,this.tokens);for(let i=0;i<this.inlineQueue.length;i++){const r=this.inlineQueue[i];this.inlineTokens(r.src,r.tokens)}return this.inlineQueue=[],this.tokens}blockTokens(n,i=[],r=!1){for(this.options.pedantic&&(n=n.replace(ke.tabCharGlobal,"    ").replace(ke.spaceLine,""));n;){let s;if(this.options.extensions?.block?.some(l=>(s=l.call({lexer:this},n,i))?(n=n.substring(s.raw.length),i.push(s),!0):!1))continue;if(s=this.tokenizer.space(n)){n=n.substring(s.raw.length);const l=i.at(-1);s.raw.length===1&&l!==void 0?l.raw+=`
`:i.push(s);continue}if(s=this.tokenizer.code(n)){n=n.substring(s.raw.length);const l=i.at(-1);l?.type==="paragraph"||l?.type==="text"?(l.raw+=`
`+s.raw,l.text+=`
`+s.text,this.inlineQueue.at(-1).src=l.text):i.push(s);continue}if(s=this.tokenizer.fences(n)){n=n.substring(s.raw.length),i.push(s);continue}if(s=this.tokenizer.heading(n)){n=n.substring(s.raw.length),i.push(s);continue}if(s=this.tokenizer.hr(n)){n=n.substring(s.raw.length),i.push(s);continue}if(s=this.tokenizer.blockquote(n)){n=n.substring(s.raw.length),i.push(s);continue}if(s=this.tokenizer.list(n)){n=n.substring(s.raw.length),i.push(s);continue}if(s=this.tokenizer.html(n)){n=n.substring(s.raw.length),i.push(s);continue}if(s=this.tokenizer.def(n)){n=n.substring(s.raw.length);const l=i.at(-1);l?.type==="paragraph"||l?.type==="text"?(l.raw+=`
`+s.raw,l.text+=`
`+s.raw,this.inlineQueue.at(-1).src=l.text):this.tokens.links[s.tag]||(this.tokens.links[s.tag]={href:s.href,title:s.title});continue}if(s=this.tokenizer.table(n)){n=n.substring(s.raw.length),i.push(s);continue}if(s=this.tokenizer.lheading(n)){n=n.substring(s.raw.length),i.push(s);continue}let o=n;if(this.options.extensions?.startBlock){let l=1/0;const c=n.slice(1);let d;this.options.extensions.startBlock.forEach(m=>{d=m.call({lexer:this},c),typeof d=="number"&&d>=0&&(l=Math.min(l,d))}),l<1/0&&l>=0&&(o=n.substring(0,l+1))}if(this.state.top&&(s=this.tokenizer.paragraph(o))){const l=i.at(-1);r&&l?.type==="paragraph"?(l.raw+=`
`+s.raw,l.text+=`
`+s.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=l.text):i.push(s),r=o.length!==n.length,n=n.substring(s.raw.length);continue}if(s=this.tokenizer.text(n)){n=n.substring(s.raw.length);const l=i.at(-1);l?.type==="text"?(l.raw+=`
`+s.raw,l.text+=`
`+s.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=l.text):i.push(s);continue}if(n){const l="Infinite loop on byte: "+n.charCodeAt(0);if(this.options.silent){console.error(l);break}else throw new Error(l)}}return this.state.top=!0,i}inline(n,i=[]){return this.inlineQueue.push({src:n,tokens:i}),i}inlineTokens(n,i=[]){let r=n,s=null;if(this.tokens.links){const c=Object.keys(this.tokens.links);if(c.length>0)for(;(s=this.tokenizer.rules.inline.reflinkSearch.exec(r))!=null;)c.includes(s[0].slice(s[0].lastIndexOf("[")+1,-1))&&(r=r.slice(0,s.index)+"["+"a".repeat(s[0].length-2)+"]"+r.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(s=this.tokenizer.rules.inline.anyPunctuation.exec(r))!=null;)r=r.slice(0,s.index)+"++"+r.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;(s=this.tokenizer.rules.inline.blockSkip.exec(r))!=null;)r=r.slice(0,s.index)+"["+"a".repeat(s[0].length-2)+"]"+r.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);let o=!1,l="";for(;n;){o||(l=""),o=!1;let c;if(this.options.extensions?.inline?.some(m=>(c=m.call({lexer:this},n,i))?(n=n.substring(c.raw.length),i.push(c),!0):!1))continue;if(c=this.tokenizer.escape(n)){n=n.substring(c.raw.length),i.push(c);continue}if(c=this.tokenizer.tag(n)){n=n.substring(c.raw.length),i.push(c);continue}if(c=this.tokenizer.link(n)){n=n.substring(c.raw.length),i.push(c);continue}if(c=this.tokenizer.reflink(n,this.tokens.links)){n=n.substring(c.raw.length);const m=i.at(-1);c.type==="text"&&m?.type==="text"?(m.raw+=c.raw,m.text+=c.text):i.push(c);continue}if(c=this.tokenizer.emStrong(n,r,l)){n=n.substring(c.raw.length),i.push(c);continue}if(c=this.tokenizer.codespan(n)){n=n.substring(c.raw.length),i.push(c);continue}if(c=this.tokenizer.br(n)){n=n.substring(c.raw.length),i.push(c);continue}if(c=this.tokenizer.del(n)){n=n.substring(c.raw.length),i.push(c);continue}if(c=this.tokenizer.autolink(n)){n=n.substring(c.raw.length),i.push(c);continue}if(!this.state.inLink&&(c=this.tokenizer.url(n))){n=n.substring(c.raw.length),i.push(c);continue}let d=n;if(this.options.extensions?.startInline){let m=1/0;const f=n.slice(1);let g;this.options.extensions.startInline.forEach(x=>{g=x.call({lexer:this},f),typeof g=="number"&&g>=0&&(m=Math.min(m,g))}),m<1/0&&m>=0&&(d=n.substring(0,m+1))}if(c=this.tokenizer.inlineText(d)){n=n.substring(c.raw.length),c.raw.slice(-1)!=="_"&&(l=c.raw.slice(-1)),o=!0;const m=i.at(-1);m?.type==="text"?(m.raw+=c.raw,m.text+=c.text):i.push(c);continue}if(n){const m="Infinite loop on byte: "+n.charCodeAt(0);if(this.options.silent){console.error(m);break}else throw new Error(m)}}return i}},at=class{options;parser;constructor(a){this.options=a||na}space(a){return""}code({text:a,lang:n,escaped:i}){const r=(n||"").match(ke.notSpaceStart)?.[0],s=a.replace(ke.endingNewline,"")+`
`;return r?'<pre><code class="language-'+Fe(r)+'">'+(i?s:Fe(s,!0))+`</code></pre>
`:"<pre><code>"+(i?s:Fe(s,!0))+`</code></pre>
`}blockquote({tokens:a}){return`<blockquote>
${this.parser.parse(a)}</blockquote>
`}html({text:a}){return a}heading({tokens:a,depth:n}){return`<h${n}>${this.parser.parseInline(a)}</h${n}>
`}hr(a){return`<hr>
`}list(a){const n=a.ordered,i=a.start;let r="";for(let l=0;l<a.items.length;l++){const c=a.items[l];r+=this.listitem(c)}const s=n?"ol":"ul",o=n&&i!==1?' start="'+i+'"':"";return"<"+s+o+`>
`+r+"</"+s+`>
`}listitem(a){let n="";if(a.task){const i=this.checkbox({checked:!!a.checked});a.loose?a.tokens[0]?.type==="paragraph"?(a.tokens[0].text=i+" "+a.tokens[0].text,a.tokens[0].tokens&&a.tokens[0].tokens.length>0&&a.tokens[0].tokens[0].type==="text"&&(a.tokens[0].tokens[0].text=i+" "+Fe(a.tokens[0].tokens[0].text),a.tokens[0].tokens[0].escaped=!0)):a.tokens.unshift({type:"text",raw:i+" ",text:i+" ",escaped:!0}):n+=i+" "}return n+=this.parser.parse(a.tokens,!!a.loose),`<li>${n}</li>
`}checkbox({checked:a}){return"<input "+(a?'checked="" ':"")+'disabled="" type="checkbox">'}paragraph({tokens:a}){return`<p>${this.parser.parseInline(a)}</p>
`}table(a){let n="",i="";for(let s=0;s<a.header.length;s++)i+=this.tablecell(a.header[s]);n+=this.tablerow({text:i});let r="";for(let s=0;s<a.rows.length;s++){const o=a.rows[s];i="";for(let l=0;l<o.length;l++)i+=this.tablecell(o[l]);r+=this.tablerow({text:i})}return r&&(r=`<tbody>${r}</tbody>`),`<table>
<thead>
`+n+`</thead>
`+r+`</table>
`}tablerow({text:a}){return`<tr>
${a}</tr>
`}tablecell(a){const n=this.parser.parseInline(a.tokens),i=a.header?"th":"td";return(a.align?`<${i} align="${a.align}">`:`<${i}>`)+n+`</${i}>
`}strong({tokens:a}){return`<strong>${this.parser.parseInline(a)}</strong>`}em({tokens:a}){return`<em>${this.parser.parseInline(a)}</em>`}codespan({text:a}){return`<code>${Fe(a,!0)}</code>`}br(a){return"<br>"}del({tokens:a}){return`<del>${this.parser.parseInline(a)}</del>`}link({href:a,title:n,tokens:i}){const r=this.parser.parseInline(i),s=_n(a);if(s===null)return r;a=s;let o='<a href="'+a+'"';return n&&(o+=' title="'+Fe(n)+'"'),o+=">"+r+"</a>",o}image({href:a,title:n,text:i,tokens:r}){r&&(i=this.parser.parseInline(r,this.parser.textRenderer));const s=_n(a);if(s===null)return Fe(i);a=s;let o=`<img src="${a}" alt="${i}"`;return n&&(o+=` title="${Fe(n)}"`),o+=">",o}text(a){return"tokens"in a&&a.tokens?this.parser.parseInline(a.tokens):"escaped"in a&&a.escaped?a.text:Fe(a.text)}},qt=class{strong({text:a}){return a}em({text:a}){return a}codespan({text:a}){return a}del({text:a}){return a}html({text:a}){return a}text({text:a}){return a}link({text:a}){return""+a}image({text:a}){return""+a}br(){return""}},Oe=class wt{options;renderer;textRenderer;constructor(n){this.options=n||na,this.options.renderer=this.options.renderer||new at,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new qt}static parse(n,i){return new wt(i).parse(n)}static parseInline(n,i){return new wt(i).parseInline(n)}parse(n,i=!0){let r="";for(let s=0;s<n.length;s++){const o=n[s];if(this.options.extensions?.renderers?.[o.type]){const c=o,d=this.options.extensions.renderers[c.type].call({parser:this},c);if(d!==!1||!["space","hr","heading","code","table","blockquote","list","html","paragraph","text"].includes(c.type)){r+=d||"";continue}}const l=o;switch(l.type){case"space":{r+=this.renderer.space(l);continue}case"hr":{r+=this.renderer.hr(l);continue}case"heading":{r+=this.renderer.heading(l);continue}case"code":{r+=this.renderer.code(l);continue}case"table":{r+=this.renderer.table(l);continue}case"blockquote":{r+=this.renderer.blockquote(l);continue}case"list":{r+=this.renderer.list(l);continue}case"html":{r+=this.renderer.html(l);continue}case"paragraph":{r+=this.renderer.paragraph(l);continue}case"text":{let c=l,d=this.renderer.text(c);for(;s+1<n.length&&n[s+1].type==="text";)c=n[++s],d+=`
`+this.renderer.text(c);i?r+=this.renderer.paragraph({type:"paragraph",raw:d,text:d,tokens:[{type:"text",raw:d,text:d,escaped:!0}]}):r+=d;continue}default:{const c='Token with "'+l.type+'" type was not found.';if(this.options.silent)return console.error(c),"";throw new Error(c)}}}return r}parseInline(n,i=this.renderer){let r="";for(let s=0;s<n.length;s++){const o=n[s];if(this.options.extensions?.renderers?.[o.type]){const c=this.options.extensions.renderers[o.type].call({parser:this},o);if(c!==!1||!["escape","html","link","image","strong","em","codespan","br","del","text"].includes(o.type)){r+=c||"";continue}}const l=o;switch(l.type){case"escape":{r+=i.text(l);break}case"html":{r+=i.html(l);break}case"link":{r+=i.link(l);break}case"image":{r+=i.image(l);break}case"strong":{r+=i.strong(l);break}case"em":{r+=i.em(l);break}case"codespan":{r+=i.codespan(l);break}case"br":{r+=i.br(l);break}case"del":{r+=i.del(l);break}case"text":{r+=i.text(l);break}default:{const c='Token with "'+l.type+'" type was not found.';if(this.options.silent)return console.error(c),"";throw new Error(c)}}}return r}},Ua=class{options;block;constructor(a){this.options=a||na}static passThroughHooks=new Set(["preprocess","postprocess","processAllTokens"]);preprocess(a){return a}postprocess(a){return a}processAllTokens(a){return a}provideLexer(){return this.block?De.lex:De.lexInline}provideParser(){return this.block?Oe.parse:Oe.parseInline}},Ml=class{defaults=Ft();options=this.setOptions;parse=this.parseMarkdown(!0);parseInline=this.parseMarkdown(!1);Parser=Oe;Renderer=at;TextRenderer=qt;Lexer=De;Tokenizer=et;Hooks=Ua;constructor(...a){this.use(...a)}walkTokens(a,n){let i=[];for(const r of a)switch(i=i.concat(n.call(this,r)),r.type){case"table":{const s=r;for(const o of s.header)i=i.concat(this.walkTokens(o.tokens,n));for(const o of s.rows)for(const l of o)i=i.concat(this.walkTokens(l.tokens,n));break}case"list":{const s=r;i=i.concat(this.walkTokens(s.items,n));break}default:{const s=r;this.defaults.extensions?.childTokens?.[s.type]?this.defaults.extensions.childTokens[s.type].forEach(o=>{const l=s[o].flat(1/0);i=i.concat(this.walkTokens(l,n))}):s.tokens&&(i=i.concat(this.walkTokens(s.tokens,n)))}}return i}use(...a){const n=this.defaults.extensions||{renderers:{},childTokens:{}};return a.forEach(i=>{const r={...i};if(r.async=this.defaults.async||r.async||!1,i.extensions&&(i.extensions.forEach(s=>{if(!s.name)throw new Error("extension name required");if("renderer"in s){const o=n.renderers[s.name];o?n.renderers[s.name]=function(...l){let c=s.renderer.apply(this,l);return c===!1&&(c=o.apply(this,l)),c}:n.renderers[s.name]=s.renderer}if("tokenizer"in s){if(!s.level||s.level!=="block"&&s.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");const o=n[s.level];o?o.unshift(s.tokenizer):n[s.level]=[s.tokenizer],s.start&&(s.level==="block"?n.startBlock?n.startBlock.push(s.start):n.startBlock=[s.start]:s.level==="inline"&&(n.startInline?n.startInline.push(s.start):n.startInline=[s.start]))}"childTokens"in s&&s.childTokens&&(n.childTokens[s.name]=s.childTokens)}),r.extensions=n),i.renderer){const s=this.defaults.renderer||new at(this.defaults);for(const o in i.renderer){if(!(o in s))throw new Error(`renderer '${o}' does not exist`);if(["options","parser"].includes(o))continue;const l=o,c=i.renderer[l],d=s[l];s[l]=(...m)=>{let f=c.apply(s,m);return f===!1&&(f=d.apply(s,m)),f||""}}r.renderer=s}if(i.tokenizer){const s=this.defaults.tokenizer||new et(this.defaults);for(const o in i.tokenizer){if(!(o in s))throw new Error(`tokenizer '${o}' does not exist`);if(["options","rules","lexer"].includes(o))continue;const l=o,c=i.tokenizer[l],d=s[l];s[l]=(...m)=>{let f=c.apply(s,m);return f===!1&&(f=d.apply(s,m)),f}}r.tokenizer=s}if(i.hooks){const s=this.defaults.hooks||new Ua;for(const o in i.hooks){if(!(o in s))throw new Error(`hook '${o}' does not exist`);if(["options","block"].includes(o))continue;const l=o,c=i.hooks[l],d=s[l];Ua.passThroughHooks.has(o)?s[l]=m=>{if(this.defaults.async)return Promise.resolve(c.call(s,m)).then(g=>d.call(s,g));const f=c.call(s,m);return d.call(s,f)}:s[l]=(...m)=>{let f=c.apply(s,m);return f===!1&&(f=d.apply(s,m)),f}}r.hooks=s}if(i.walkTokens){const s=this.defaults.walkTokens,o=i.walkTokens;r.walkTokens=function(l){let c=[];return c.push(o.call(this,l)),s&&(c=c.concat(s.call(this,l))),c}}this.defaults={...this.defaults,...r}}),this}setOptions(a){return this.defaults={...this.defaults,...a},this}lexer(a,n){return De.lex(a,n??this.defaults)}parser(a,n){return Oe.parse(a,n??this.defaults)}parseMarkdown(a){return(i,r)=>{const s={...r},o={...this.defaults,...s},l=this.onError(!!o.silent,!!o.async);if(this.defaults.async===!0&&s.async===!1)return l(new Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof i>"u"||i===null)return l(new Error("marked(): input parameter is undefined or null"));if(typeof i!="string")return l(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(i)+", string expected"));o.hooks&&(o.hooks.options=o,o.hooks.block=a);const c=o.hooks?o.hooks.provideLexer():a?De.lex:De.lexInline,d=o.hooks?o.hooks.provideParser():a?Oe.parse:Oe.parseInline;if(o.async)return Promise.resolve(o.hooks?o.hooks.preprocess(i):i).then(m=>c(m,o)).then(m=>o.hooks?o.hooks.processAllTokens(m):m).then(m=>o.walkTokens?Promise.all(this.walkTokens(m,o.walkTokens)).then(()=>m):m).then(m=>d(m,o)).then(m=>o.hooks?o.hooks.postprocess(m):m).catch(l);try{o.hooks&&(i=o.hooks.preprocess(i));let m=c(i,o);o.hooks&&(m=o.hooks.processAllTokens(m)),o.walkTokens&&this.walkTokens(m,o.walkTokens);let f=d(m,o);return o.hooks&&(f=o.hooks.postprocess(f)),f}catch(m){return l(m)}}}onError(a,n){return i=>{if(i.message+=`
Please report this to https://github.com/markedjs/marked.`,a){const r="<p>An error occurred:</p><pre>"+Fe(i.message+"",!0)+"</pre>";return n?Promise.resolve(r):r}if(n)return Promise.reject(i);throw i}}},aa=new Ml;function H(a,n){return aa.parse(a,n)}H.options=H.setOptions=function(a){return aa.setOptions(a),H.defaults=aa.defaults,ri(H.defaults),H};H.getDefaults=Ft;H.defaults=na;H.use=function(...a){return aa.use(...a),H.defaults=aa.defaults,ri(H.defaults),H};H.walkTokens=function(a,n){return aa.walkTokens(a,n)};H.parseInline=aa.parseInline;H.Parser=Oe;H.parser=Oe.parse;H.Renderer=at;H.TextRenderer=qt;H.Lexer=De;H.lexer=De.lex;H.Tokenizer=et;H.Hooks=Ua;H.parse=H;H.options;H.setOptions;H.use;H.walkTokens;H.parseInline;Oe.parse;De.lex;const fi={},En={},_t=new Map,Cn=new Map,At=a=>a!==void 0&&Object.prototype.hasOwnProperty.call(fi,a);function ql(a){let n=Cn.get(a);if(!n){const i=At(a)?fi[a]:void 0;n=(i?i().then(r=>r.default):Promise.resolve(En)).catch(r=>(console.error(`legal texts: the ${a} texts did not load, showing the Turkish ones`,r),En)).then(r=>(_t.set(a,r),r)),Cn.set(a,n)}return n}function Hl(a){const n=At(a)&&!_t.has(a),[,i]=u.useState(0);return u.useEffect(()=>{if(!n||a===void 0)return;let r=!0;return ql(a).then(()=>{r&&i(s=>s+1)}),()=>{r=!1}},[n,a]),At(a)?_t.get(a):null}function Gl(a,n){return a&&Object.prototype.hasOwnProperty.call(a,n)?a[n]:void 0}const Vl=Object.assign({"../../../../data/legal/README.md":Xr,"../../../../data/legal/acik-riza-pazarlama.md":el,"../../../../data/legal/aydinlatma-metni.md":al,"../../../../data/legal/cerez-politikasi.md":tl,"../../../../data/legal/mesafeli-satis-sozlesmesi.md":nl,"../../../../data/legal/on-bilgilendirme-formu.md":il,"../../../../data/legal/teslimat-iade.md":sl,"../../../../data/legal/uyelik-sozlesmesi.md":rl}),yi=a=>a.replace(/\.md$/,"");function Yl(a){const n=yi(a),i=Object.entries(Vl).find(([r])=>r.endsWith(`/${n}.md`));return i?i[1]:null}function Ul(a){return a.match(/^#\s+(.+)$/m)?.[1]?.trim()||t("Yasal metin")}function Wl(){const{slug:a=""}=pa(),n=Ca(),i=Hl(n),r=Yl(a);if(!r)return e.jsxs(e.Fragment,{children:[e.jsx(he,{title:t("Yasal metin bulunamadı - Probot Studio"),description:t("Aradığın Probot Studio yasal metni bulunamadı."),path:`/yasal/${a}`,noindex:!0}),e.jsxs("section",{className:"legal",children:[e.jsx("h1",{children:t("Sayfa bulunamadı")}),e.jsx("p",{children:t("Aradığın yasal metin burada yok. Tüm metinlerin bağlantıları sayfa altındaki footer'da listelenir.")}),e.jsx("p",{children:e.jsx(_,{to:"/",children:t("← Vitrine dön")})})]})]});const s=Gl(i,yi(a)),o=s??r,l=Ul(o);return e.jsxs(e.Fragment,{children:[e.jsx(he,{title:t("{title} - Probot Studio",{title:l}),description:vt(t("{title}. Probot Studio mağaza yasal metni.",{title:l})),path:`/yasal/${a}`}),i===void 0?e.jsx("section",{className:"legal"}):e.jsxs(e.Fragment,{children:[n&&s===void 0&&e.jsx("p",{className:"muted small",children:t("Bu metnin yalnız Türkçesi var.")}),e.jsx("section",{className:"legal",lang:s===void 0?n&&"tr":void 0,dangerouslySetInnerHTML:{__html:H.parse(o)}})]})]})}const xi="probot-consent";function bi(){try{if(new URLSearchParams(window.location.search).get("iz")==="dost"&&localStorage.setItem("probot-iz-dost","1"),localStorage.getItem("probot-iz-dost")==="1")return"granted"}catch{}const a=localStorage.getItem(xi);return a==="granted"||a==="denied"?a:null}function Zl(a){localStorage.setItem(xi,a),a==="granted"?ji():(Bs(),Rs())}let Pn=!1;function ji(){if(bi()!=="granted"){Es();return}Pn||(Pn=!0,Cs(),Ps())}function Ql(){const[a,n]=u.useState(bi()===null);if(u.useEffect(()=>{const r=()=>n(!0);return window.addEventListener("cookie:reopen",r),()=>window.removeEventListener("cookie:reopen",r)},[]),u.useEffect(()=>(document.body.classList.toggle("cookiebar-open",a),()=>document.body.classList.remove("cookiebar-open")),[a]),!a)return null;const i=r=>{Zl(r),n(!1)};return e.jsxs("div",{className:"cookie",role:"dialog","aria-label":t("Çerez tercihi"),children:[e.jsx("p",{children:B("Siteyi iyileştirmek için oturumla sınırlı, kimliksiz kullanım verisi topluyoruz, yazdıkların kayda girmez. İzin verirsen çerezlerle ayrıntılı ölçüm yaparız. {detay}",{detay:e.jsx(_,{to:"/yasal/cerez-politikasi",children:t("Detay")})})}),e.jsxs("div",{className:"cookie-row",children:[e.jsx("button",{className:"btn c",onClick:()=>i("granted"),children:t("Kabul et")}),e.jsx("button",{className:"btn c",onClick:()=>i("denied"),children:t("Sadece zorunlu")})]})]})}function Jl(){const[a,n]=u.useState(null),[i,r]=u.useState(!1);u.useEffect(()=>{let l=!0;const c=()=>qn().then(d=>{l&&(n(d),r(!1))}).catch(()=>{l&&r(!0)});return c(),window.addEventListener("cart:updated",c),()=>{l=!1,window.removeEventListener("cart:updated",c)}},[]);const s=a?.items??[],o=s.reduce((l,c)=>l+c.quantity,0);return{cart:a,items:s,count:o,total:a?.total??0,error:i}}function Xl({items:a,count:n,total:i,error:r,onGo:s}){const[o,l]=u.useState(!1),[c,d]=u.useState(!1),[m,f]=u.useState(null),g=u.useRef(null),x=u.useRef(void 0);u.useEffect(()=>{const j=document.querySelector("probot-header");if(!j)return;const b=()=>l(j.hasAttribute("scrolled"));b();const C=new MutationObserver(b);return C.observe(j,{attributes:!0,attributeFilter:["scrolled"]}),()=>C.disconnect()},[]);const k=()=>{const j=g.current?.getBoundingClientRect();if(!j)return;const b=document.querySelector("probot-header")?.getBoundingClientRect(),C=Math.max(j.bottom,b?b.bottom:0)+12;f({top:C,right:Math.max(16,window.innerWidth-j.right-8)})},h=()=>{window.clearTimeout(x.current),k(),d(!0)},v=()=>{window.clearTimeout(x.current),x.current=window.setTimeout(()=>d(!1),160)};u.useEffect(()=>{if(!c)return;const j=()=>k();return window.addEventListener("scroll",j,{passive:!0}),window.addEventListener("resize",j),()=>{window.removeEventListener("scroll",j),window.removeEventListener("resize",j)}},[c]);const z=e.jsxs("div",{className:`miniCartPop${c?" open":""}`,style:m?{top:m.top,right:m.right}:void 0,role:"region","aria-label":t("Sepet özeti"),onMouseEnter:h,onMouseLeave:v,children:[r&&e.jsx("p",{role:"status",children:t("Sepet güncellenemedi. Tekrar denemek için sepete git.")}),a.length===0&&!r?e.jsx("p",{className:"mcEmpty",children:t("Sepetin şimdilik boş.")}):e.jsxs(e.Fragment,{children:[e.jsx("ul",{className:"mcList",children:a.map(j=>e.jsxs("li",{children:[j.thumbnail?e.jsx("img",{src:j.thumbnail,alt:""}):e.jsx("span",{className:"mcIc",children:"📦"}),e.jsx("span",{className:"mcName",children:j.product_title??j.title}),e.jsxs("span",{className:"mcQty",children:[j.quantity,"×"]}),e.jsx("span",{className:"mcPrice",children:I(j.unit_price*j.quantity)})]},j.id))}),e.jsxs("div",{className:"mcFoot",children:[e.jsx("span",{children:t("Ara toplam")}),e.jsx("b",{children:I(i)})]})]}),e.jsx("a",{className:"btn g mcGo",href:"/shop/sepet",onClick:j=>{j.preventDefault(),s("/sepet")},children:t("Sepete git →")})]});return e.jsxs("div",{className:`miniCart${o?" onIsland":""}`,slot:"actions",onMouseEnter:h,onMouseLeave:v,onFocus:h,onBlur:v,children:[e.jsxs("a",{ref:g,className:"miniCartLink",href:"/shop/sepet","aria-label":r?t("Sepet güncellenemedi"):n>0?ze("Sepet - {n} ürün",n):t("Sepet"),title:t("Sepet"),onClick:j=>{j.preventDefault(),d(!1),s("/sepet")},children:[e.jsx("svg",{viewBox:"0 0 24 24",width:"20",height:"20",fill:"currentColor","aria-hidden":"true",children:e.jsx("path",{d:"M7 18c-1.1 0-1.99.9-1.99 2S5.9 22 7 22s2-.9 2-2-.9-2-2-2zM1 2v2h2l3.6 7.59-1.35 2.45C4.52 15.37 5.48 17 7 17h12v-2H7l1.1-2h7.45c.75 0 1.41-.41 1.75-1.03L21.7 4H5.21l-.94-2H1zm16 16c-1.1 0-1.99.9-1.99 2s.89 2 1.99 2 2-.9 2-2-.9-2-2-2z"})}),n>0&&e.jsx("span",{className:"cartBadge",children:n})]}),Fs.createPortal(z,document.body)]})}function eo(){const{bolum:a}=pa(),{search:n,hash:i}=Ra(),r=tr(a,n),s=r&&tt(r);return u.useEffect(()=>{s&&location.replace(s+i)},[s,i]),s?e.jsx("section",{className:"account",children:e.jsx("p",{className:"muted",children:t("Eğitim alanına yönlendiriliyor…")})}):e.jsx(ni,{})}function ao(){const[a,n]=u.useState([]);u.useEffect(()=>{ha().then(c=>n(Tt.filter(d=>c.some(m=>yt(m)===d)))).catch(()=>n([]))},[]);const i=[{to:"/",label:t("Vitrin")},{to:"/urunler",label:t("Tüm ürünler")},{to:oa("kitler"),label:t("Kitler")},...a.map(c=>({to:ea(c),label:me(Et[c].short)}))],{pathname:r}=Ra(),s=r.match(/^\/kategori\/([^/]+)/)?.[1],o=s?Is(decodeURIComponent(s)):null,l=o?ea(o):r;return e.jsx("div",{className:"catbar",slot:"subbar",role:"navigation","aria-label":t("Mağaza kategorileri"),children:i.map(c=>e.jsx(_,{to:c.to,className:l===c.to?"on":"",children:c.label},c.to))})}function to(){const a=Ra();return e.jsxs(e.Fragment,{children:[e.jsx(he,{title:t("Sayfa bulunamadı - Probot Studio"),description:t("Aradığın Probot Studio mağaza sayfası taşınmış ya da kaldırılmış olabilir."),path:a.pathname,noindex:!0}),e.jsxs("section",{className:"account",children:[e.jsx("h1",{children:B("Sayfa {hl}",{hl:e.jsx("span",{className:"hl",children:t("bulunamadı")})})}),e.jsx("p",{className:"muted",children:t("Aradığın adres taşınmış ya da hiç olmamış olabilir.")}),e.jsxs("div",{className:"row",children:[e.jsx(_,{to:"/",className:"btn p",children:t("Vitrine dön →")}),e.jsx(_,{to:"/urunler",className:"btn g",children:t("Tüm ürünler")})]})]})]})}function no(){try{const a=localStorage.getItem("probot-oturum");return a==="1"||a==="0"?a:""}catch{return""}}const gt=no();function io(){const a=Ra(),n=Fa(),{items:i,count:r,total:s,error:o}=Jl();u.useEffect(()=>{ji()},[]),u.useEffect(()=>{typeof window>"u"||(window.probotConsent={...window.probotConsent||{},open:()=>window.dispatchEvent(new CustomEvent("cookie:reopen"))})},[]),u.useEffect(()=>{if(window.matchMedia("(prefers-reduced-motion: reduce)").matches)return;const m=[...document.querySelectorAll(".deco .sh")];let f=0;const g=()=>{f=0;const k=window.scrollY;for(const h of m)h.style.translate="0 "+(-k*parseFloat(h.dataset.p||".25")).toFixed(1)+"px"},x=()=>{f||(f=requestAnimationFrame(g))};return g(),window.addEventListener("scroll",x,{passive:!0}),()=>{window.removeEventListener("scroll",x),cancelAnimationFrame(f)}},[]),u.useEffect(()=>{window.scrollTo(0,0)},[a.pathname,a.search]);const l=a.pathname==="/hesap"||a.pathname.startsWith("/hesap/");u.useEffect(()=>{document.querySelector('probot-header a[data-key="shop"]')?.toggleAttribute("data-active",!l)},[l]);function c(m){m.preventDefault();const f=String(new FormData(m.currentTarget).get("q")??"").trim();n(f?`/urunler?q=${encodeURIComponent(f)}`:"/urunler")}const d=m=>f=>{f.preventDefault(),n(m)};return e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"deco",children:[e.jsx("span",{className:"sh s1","data-p":".30"}),e.jsx("span",{className:"sh s3","data-p":".22"}),e.jsx("span",{className:"sh s4","data-p":".18"})]}),e.jsxs("probot-header",{home:"/",variant:"thin",subbar:l?void 0:"",wide:"","actions-sep":"",active:l?void 0:"shop",lang:Ca(),children:[e.jsx(Xl,{items:i,count:r,total:s,error:o,onGo:m=>n(m)}),e.jsx("a",{slot:"actions",href:"/shop/hesap",className:"cta",onClick:d("/hesap"),...l?{"data-active":"","aria-current":"page"}:{},...gt?{}:{"data-hesap-bekliyor":"","aria-label":t("Hesap")},children:gt==="1"?t("Hesabım"):gt==="0"?t("Giriş yap"):" "}),!l&&e.jsx(ao,{}),!l&&e.jsxs("form",{slot:"subbar",className:"searchBox",onSubmit:c,role:"search",children:[e.jsx("input",{name:"q",type:"search",placeholder:t("Parça ara: dişli, C-profil, PRB-…"),"aria-label":t("Ürün ara"),defaultValue:new URLSearchParams(a.search).get("q")??""},a.search),e.jsx("button",{"aria-label":t("Ara"),children:e.jsx("svg",{viewBox:"0 0 24 24","aria-hidden":"true",children:e.jsx("path",{fill:"currentColor",d:"M15.5 14h-.79l-.28-.27a6.5 6.5 0 1 0-.7.7l.27.28v.79l5 4.99L20.49 19zm-6 0A4.5 4.5 0 1 1 14 9.5 4.5 4.5 0 0 1 9.5 14z"})})})]})]}),e.jsx("div",{className:"wrap",children:e.jsxs(Ls,{children:[e.jsx(oe,{path:"/",element:e.jsx(Ys,{})}),e.jsx(oe,{path:"/urunler",element:e.jsx(hn,{})}),e.jsx(oe,{path:"/kategori/:kategori",element:e.jsx(hn,{})}),e.jsx(oe,{path:"/starter-bot",element:e.jsx(ca,{to:"/urun/ftc-biobuzz-starter-bot",replace:!0})}),e.jsx(oe,{path:"/urun/starter-bot",element:e.jsx(ca,{to:"/urun/ftc-biobuzz-starter-bot",replace:!0})}),e.jsx(oe,{path:"/urun/:handle",element:e.jsx(Vr,{})}),e.jsx(oe,{path:"/hesap",element:e.jsx(Je,{children:e.jsx(ni,{})})}),e.jsx(oe,{path:"/hesap/sifre-yenile",element:e.jsx(Je,{children:e.jsx(Yr,{})})}),e.jsx(oe,{path:"/hesap/veli-onay",element:e.jsx(Je,{children:e.jsx(Ur,{})})}),e.jsx(oe,{path:"/hesap/:bolum",element:e.jsx(Je,{children:e.jsx(eo,{})})}),e.jsx(oe,{path:"/sepet",element:e.jsx(Nr,{})}),e.jsx(oe,{path:"/odeme",element:e.jsx(wr,{})}),e.jsx(oe,{path:"/odeme/sonuc",element:e.jsx(Je,{children:e.jsx(Ar,{})})}),e.jsx(oe,{path:"/takip",element:e.jsx(Je,{children:e.jsx(zn,{})})}),e.jsx(oe,{path:"/takip/:no",element:e.jsx(Je,{children:e.jsx(zn,{})})}),e.jsx(oe,{path:"/iletisim",element:e.jsx(Jr,{})}),e.jsx(oe,{path:"/yasal/:slug",element:e.jsx(Wl,{})}),e.jsx(oe,{path:"*",element:e.jsx(to,{})})]})}),e.jsx("probot-footer",{lang:Ca()}),r>0&&e.jsxs(_,{to:"/sepet",className:"cartFabM","aria-label":ze("Sepet - {n} ürün",r),children:[e.jsx("span",{className:"cartFabIc","aria-hidden":!0,children:"🛒"}),e.jsx("span",{className:"cartBadge",children:r})]}),e.jsx(Ql,{})]})}if(!document.querySelector("script[data-probot-brand]")){const a=document.createElement("script");a.src="/brand/header.js?v=7",a.defer=!0,a.setAttribute("data-probot-brand","1"),document.head.appendChild(a)}$s().then(()=>Ks.createRoot(document.getElementById("root")).render(e.jsx(Ds.StrictMode,{children:e.jsx(Os,{children:e.jsx(Ms,{basename:"/shop/",children:e.jsx(io,{})})})})));export{ti as E,lo as M,oo as b};