PageSourceSearch

https://wattrackv2.web.app/assets/BMChecklistPage-CGRrF3CH.js

js wattrackv2.web.app collected 2026-10-03 08:21:32 UTC 33,602 bytes, 3 lines download raw bytes

1import{m as c,p as e,bI as Me,bN as Ke}from"./vendor-mq93TrXA.js";import{M as Ce}from"./MobileFilterSheet-B0vJrrio.js";import{M as Te}from"./MainLayout-BMMNpCPi.js";import{u as Se,a1 as ge,p as De,q as Be,s as Ae,E as Re}from"./DataContext-BhM46Acw.js";import{S as ce}from"./SearchableDropdown-BiHAayBT.js";import{V as Ie}from"./VoiceToTextButton-CWTNE1eM.js";import"./AuthenticatedAppShell-K8Es5Q7-.js";import"./pdf-DnYcS9Bc.js";import"./NotificationContext-QtK2Kt0U.js";import"./bireyselHedefRepository-hTKiC7Py.js";import"./SupportSurveyContext-5QgTjXse.js";import"./auditLogger-CW1SMtQ7.js";import"./index-CFUjeldQ.js";import"./firebase-CIE5gVYo.js";import"./hesapStatusu-BogwU7bf.js";import"./firebase.config-6nbkXHPx.js";import"./userRoleMapping-D2vPCZcP.js";import"./useVeriTalebi-DR7IKQcZ.js";import"./useWatAiExecutiveSettings-CQXOqt-r.js";import"./icons-x970t0xX.js";import"./useSurukleKapat-Qg6ZCag1.js";import"./hareket-CEqY_BnN.js";import"./ProfileDropdown-kYytHXOO.js";import"./NotificationCenter-DDBgePiz.js";import"./material-ChPpXBZf.js";const ye=["OCAK",t("ŞUBAT"),"MART",t("NİSAN"),"MAYIS",t("HAZİRAN"),"TEMMUZ",t("AĞUSTOS"),t("EYLÜL"),t("EKİM"),"KASIM","ARALIK"],Pe=(n,a)=>ye.indexOf(n.toLocaleUpperCase("tr-TR"))-ye.indexOf(a.toLocaleUpperCase("tr-TR")),H=n=>{if(n==null)return NaN;const a=String(n).trim();return a===""||a.toLowerCase()==="#yok"?NaN:parseFloat(a.replace(/%/g,"").replace(/,/g,"."))},Oe=(n,a)=>{const p=[...n].sort((l,x)=>l-x);return p.length===0?a.map(()=>0):a.map(l=>{const x=(p.length-1)*(l/100),S=Math.floor(x),g=x-S;return p[S+1]!==void 0?p[S]+g*(p[S+1]-p[S]):p[S]})},Le=n=>{if(!Array.isArray(n))return"";const a=String(n[3]??"").trim(),p=String(n[4]??"").trim(),l=x=>/[A-ZÇĞİIÖŞÜ]/i.test(x);return l(a)?a:l(p)?p:a||p},de=n=>(n||"").replace(/\u0130/g,"I").replace(/\u0131/g,"i").replace(/\u011E/g,"G").replace(/\u011F/g,"g").replace(/\u015E/g,"S").replace(/\u015F/g,"s").replace(/\u00DC/g,"U").replace(/\u00FC/g,"u").replace(/\u00D6/g,"O").replace(/\u00F6/g,"o").replace(/\u00C7/g,"C").replace(/\u00E7/g,"c").trim().toUpperCase(),xe=n=>de(n).replace(/[^A-Z\s]/g," ").replace(/\s+/g," ").trim(),Ee=(n,a)=>{if(n===a||n.length>=4&&a.length>=4&&(n.includes(a)||a.includes(n)))return!0;if(Math.abs(n.length-a.length)>1)return!1;if(n.length===a.length){let y=0;for(let z=0;z<n.length;z+=1)if(n[z]!==a[z]&&(y+=1),y>1)return!1;return n.length>=5&&y<=1}const l=n.length<a.length?n:a,x=n.length<a.length?a:n;if(l.length<5)return!1;let S=0,g=0,v=0;for(;S<l.length&&g<x.length;){if(l[S]===x[g]){S+=1,g+=1;continue}if(v+=1,v>1)return!1;g+=1}return!0},ie=n=>{const a=String(n||"").match(/\b(\d{3,})\b/);return a?a[1]:""},me=(n,a)=>{const p=de(n||""),l=de(a||"");if(!p||!l)return!1;if(p===l)return!0;const x=ie(n||""),S=ie(a||"");if(x&&S&&x===S)return!0;const g=xe(n||""),v=xe(a||"");if(!g||!v)return!1;if(g===v)return!0;const y=g.length<=v.length?g:v,z=g.length<=v.length?v:g;if(y.length>=6&&z.includes(y))return!0;const o=L=>L.split(" ").map(R=>R.trim()).filter(R=>R.length>=2),j=o(g),N=o(v);if(j.length===0||N.length===0)return!1;const T=j.length<=N.length?j:N,_=j.length<=N.length?N:j,O=T.filter(L=>_.some(R=>Ee(L,R))).length;return T.length>=2?O>=2:O===1&&T[0].length>=4},Fe=(n,a,p)=>[...(Re[n]||[]).flatMap(g=>p[g]||[])].sort(()=>.5-Math.random()).slice(0,a),ve=[{name:"Satış Büyüme Puan",index:10},{name:"YTD Satış Büyümesi Puan",index:11},{name:"SOP Puan",index:12},{name:"YTD Sop Puan",index:13},{name:"CR Puan",index:14},{name:"YTD CR Puan",index:15},{name:"IPB Puan",index:16},{name:"YTD IPB Puan",index:17},{name:"GOBE Puan",index:18},{name:"YTD Gobe Puan",index:19},{name:"Şirket Odak Puan",index:20},{name:"O+O Puan",index:21},{name:"Son Sayım Puan",index:22},{name:"Kısmi Sayım Puan",index:23},{name:"YTD Kısmi Sayım Puan",index:24},{name:"İç Denetim Puan",index:25},{name:"Stop Loss 12 Puan",index:26},{name:"CLS Puan",index:27},{name:"Turnover Puan",index:28},{name:"YTD Turnover Puan",index:29},{name:"Kasa Müşteri Memnuniyeti Puan",index:30},{name:"Eğitim Tamamlama Puan",index:31}],We=ve.map(n=>n.index),Ye={10:[t("aktif kampanyalar"),t("ana odak konularımızı biliyor"),t("show&tell görselleri"),t("insert görselleri ve planlar"),t("tamamlayıcı ürün öneriyor"),"totebox, koli"],11:[t("kpi, yarışma sonuçları"),"L3M",t("yeni O+O uzmanı"),t("ana odak konularımızı biliyor"),t("show&tell görselleri"),t("plan uygulamaları güncel")],12:[t("operasyonel standartları"),t("depo temiz ve düzenli"),t("stok düzeltmeleri usulüne"),t("SKT kontrolü düzenli"),"transferde eksik/fazla",t("vardiya formu")],13:[t("promosyon fazlası"),t("hasarlı ürünler"),t("SKT kontrolü düzenli"),t("sensormatic alarm kontrolü"),t("kamera kayıtlarından 2 farklı gün"),t("kişisel verilerin")],14:["CR hedefi",t("tamamlayıcı ürün öneriyor"),t("tüm mağaza hedefini biliyor"),t("aktif kampanyalar"),"totebox, koli",t("mağaza satış ve KPI hedefleri")],15:["L3M",t("mağaza satış ve KPI hedefleri"),"bonus bag","CR hedefi",t("show&tell görselleri"),t("tamamlayıcı ürün öneriyor")],16:[t("tamamlayıcı ürün öneriyor"),t("aktif kampanyalar"),t("ana odak konularımızı biliyor"),t("insert görselleri ve planlar"),t("yeni O+O uzmanı"),t("show&tell görselleri")],17:["L3M",t("yeni O+O uzmanı"),t("ana odak konularımızı biliyor"),t("kpi, yarışma sonuçları"),"bonus bag",t("insert görselleri ve planlar")],18:[t("insert görselleri ve planlar"),t("show&tell görselleri"),t("projesi doğru uygulanmış"),"L3M",t("plan uygulamaları güncel"),"totebox, koli"],19:[t("insert görselleri ve planlar"),t("show&tell görselleri"),t("promosyon fazlası"),"bulunmuyorsa TZ",t("ana odak konularımızı biliyor"),t("mağaza satış ve KPI hedefleri")],20:[t("kpi, yarışma sonuçları"),t("aktif kampanyalar"),t("yeni O+O uzmanı"),t("ana odak konularımızı biliyor"),t("insert görselleri ve planlar"),t("show&tell görselleri")],21:[t("yeni O+O uzmanı"),t("açık siparişler"),"bulunmuyorsa TZ",t("show&tell görselleri"),t("insert görselleri ve planlar"),"bonus bag"],22:[t("hasarlı ürünler"),"transferde eksik/fazla",t("depo temiz ve düzenli"),t("SKT kontrolü düzenli"),t("stok düzeltmeleri usulüne"),t("operasyonel standartları")],23:[t("depo temiz ve düzenli"),t("SKT kontrolü düzenli"),t("hasarlı ürünler"),t("kasa sayım"),t("stok düzeltmeleri usulüne"),"devir limiti"],24:[t("hasarlı ürünler"),t("SKT kontrolü düzenli"),t("promosyon fazlası"),t("sensormatic alarm kontrolü"),"transferde eksik/fazla",t("vardiya formu")],25:[t("haftalık fiş listesi"),t("kamera bulunduğuna dair"),t("sahte para kontrol cihazı"),t("sensormatic alarm kontrolü"),t("ana kasa sayımı"),t("kişisel verilerin")],26:[t("kamera bulunduğuna dair"),t("hırsız alarm sistemi"),t("sensormatic alarm kontrolü"),t("kasiyer değişiminde kasa devr
1i"),"transferde eksik/fazla",t("hasarlı ürünler")],27:["CLS notu","ekip motivasyonu",t("birkaç ekip arkadaşı"),t("teşekkür adeti"),t("müşteriye"),t("aktif kampanyalar")],28:["ekip motivasyonu",t("birkaç ekip arkadaşı"),"L3M",t("vardiya formu"),t("mağaza satış ve KPI hedefleri"),"CLS notu"],29:["ekip motivasyonu","CLS notu",t("vardiya formu"),t("yönetici giriş çıkışlarını"),t("teşekkür adeti"),t("ana odak konularımızı biliyor")],30:[t("kasiyer değişiminde kasa devri"),t("kasa sayım formu"),t("sahte para kontrol cihazı"),t("ani kasa sayımı"),t("aktif kampanyalar"),"CR hedefi"],31:[t("ana odak konularımızı biliyor"),"L3M",t("aktif kampanyalar"),t("show&tell görselleri"),t("yeni O+O uzmanı"),t("kişisel verilerin")]},$e={planogram:"Planogram",musteri:t("Satış ve Müşteri"),guvenlik:t("Güvenlik ve Nakit Güvenliği"),ik:t("Personel ve İK"),isg:t("Stok ve İSG"),satis:t("Satış ve Müşteri"),visualMerch:"Visual Merch",magazaOrtami:t("Mağaza Ortamı"),stok:t("Stok ve İSG"),personel:t("Personel ve İK")},ue=n=>(n||"").replace(/\s*0\/\d+\s*(\((?:Kaynak|Source):[^)]*\))\s*$/i," $1").replace(/\s*0\/\d+\s*$/i,"").trim(),fe=n=>(n||"").replace(/\s*\((?:Kaynak|Source):[^)]*Başlık:[^)]*\)\s*$/i,"").trim(),he=n=>fe(ue(n)).toLocaleLowerCase("tr-TR").replace(/\s+/g," ").trim(),ze=n=>{const a=fe(ue(n)).match(/^\[(ROS[^\]]+|WT-TR-OPS-G-002)\]/i);return a?a[1].trim():t("WATTRACK BM Checklist")},je=n=>he(n).replace(/\((?:kaynak|source):[^)]*\)/gi,"").trim(),Ge=n=>{const a=new Map;return Object.values(n||{}).forEach(p=>{(p||[]).forEach(l=>{const x=je(l);x&&(a.has(x)||a.set(x,l))})}),Array.from(a.entries()).map(([p,l])=>({normalized:p,question:l}))},_e=(n,a)=>{const p=je(a);if(!p)return null;const l=n.find(g=>g.normalized===p||g.normalized.includes(p)||p.includes(g.normalized));if(l)return l.question;const x=p.split(" ").filter(g=>g.length>=3);if(x.length===0)return null;let S=null;return n.forEach(g=>{const v=x.reduce((y,z)=>y+(g.normalized.includes(z)?1:0),0);v<=0||(!S||v>S.score)&&(S={score:v,question:g.question})}),(S==null?void 0:S.question)||null},ke=(n,a,p)=>{const l=Fe(n==null?void 0:n.category,a,p),x=Array.isArray(n==null?void 0:n.worstKpiIndices)?n.worstKpiIndices:[];if(!x.length)return l;const S=Ge(p),g=new Set,v=x.map(o=>{const N=(Ye[o]||[]).map(T=>_e(S,T)).filter(T=>!!T);return Array.from(new Set(N))}),y=[];let z=0;for(;y.length<a;){let o=!1;if(v.forEach(j=>{const N=j[z];!N||g.has(N)||y.length>=a||(g.add(N),y.push(N),o=!0)}),!o)break;z+=1}return y.length<a&&l.forEach(o=>{y.length>=a||g.has(o)||(g.add(o),y.push(o))}),y.slice(0,a)},Qe=(n,a,p)=>{if(!n)return"";const l=ue(n);if(/\((?:Kaynak|Source):[^)]*Başlık:[^)]*\)\s*$/i.test(l))return l;const x=he(l),S=fe(l);let g=a[x];if(!g&&x.length>=18){const v=p.find(y=>y.key.includes(x)||x.includes(y.key));v&&(g=v.meta)}return g||(g={source:ze(S),heading:t("BM Checklist")}),`${S} (Kaynak: ${g.source}, Başlık: ${g.heading})`},qe=n=>{const{store:a,fileId:p,bmName:l,onSubmitSuccess:x}=n,{checklistData:S,saveChecklistData:g,checklistQuestions:v,currentUser:y}=Se(),z=c.useMemo(()=>{const m={},s=[];return Object.entries(v||{}).forEach(([b,k])=>{const r=$e[b]||b;(k||[]).forEach(d=>{const u=he(d);if(!u)return;const h={source:ze(d),heading:r};m[u]=h,s.push({key:u,meta:h})})}),{byKey:m,list:s}},[v]),o=c.useMemo(()=>{var k;const m=S[p],s=m?Object.keys(m).find(r=>me(r,l)):void 0,b=s?(k=m[s])==null?void 0:k[a.name]:void 0;return Array.isArray(b)?b[0]:b},[S,p,l,a.name]),[j,N]=c.useState(()=>{const m=o==null?void 0:o.data,s=m?Object.keys(m).filter(Boolean):[];return s.length>0?s:ke(a,10,v)}),T=c.useRef(""),_=c.useMemo(()=>[p,l,a.name].join("::"),[p,l,a.name]);c.useEffect(()=>{const m=o==null?void 0:o.data,s=m?Object.keys(m).filter(Boolean):[],b=T.current!==_;b&&(T.current=_),N(k=>s.length>0?k.length===s.length&&k.every((d,u)=>d===s[u])?k:s:b?ke(a,10,v):k)},[_,o,a.category,a.worstKpiIndices,v]);const O=!!(o!=null&&o.savedAt),L=c.useMemo(()=>o!=null&&o.savedAt?new Date(o.savedAt).toLocaleString("tr-TR",{day:"numeric",month:"long",year:"numeric",hour:"2-digit",minute:"2-digit"}):null,[o]),R=c.useMemo(()=>{const m=(o==null?void 0:o.data)||{},s={};
1return j.forEach(b=>{s[b]=m[b]||{rating:0,comment:""}}),s},[o,j]),[I,U]=c.useState(R),w=c.useMemo(()=>j.filter(m=>{const s=I[m];return Number.isFinite(Number(s==null?void 0:s.rating))&&Number(s==null?void 0:s.rating)>0&&typeof(s==null?void 0:s.comment)=="string"&&s.comment.trim()!==""}).length,[I,j]),A=j.length,Z=(o==null?void 0:o.nonCompletionReason)||"",re=Z.startsWith(t("Diğer")),E=re?t("Diğer"):Z,X=re&&Z.includes(":")&&Z.split(": ")[1]||"",[M,q]=c.useState(E),[F,V]=c.useState(X),[J,W]=c.useState(""),[Y,D]=c.useState(O?"Kaydedildi":""),ee=c.useRef(""),B=c.useRef(!1),P=c.useMemo(()=>[p,l,a.name,j.join("|")].join("::"),[p,l,a.name,j]),C=c.useMemo(()=>(y==null?void 0:y.id)||(y==null?void 0:y.email)||l||"anonymous",[y==null?void 0:y.id,y==null?void 0:y.email,l]);c.useEffect(()=>{const m=ee.current!==P,s=!B.current&&!!o;if(!m&&!s)return;ee.current=P,m&&(B.current=!1),U(R);const b=(o==null?void 0:o.nonCompletionReason)||"",k=b.startsWith(t("Diğer"));q(k?t("Diğer"):b),V(k&&b.includes(":")&&b.split(": ")[1]||""),D(O?"Kaydedildi":"")},[P,R,O,o]);const Q=(m,s,b)=>{B.current=!0,U(k=>({...k,[m]:{...k[m],[s]:b}})),D("Kaydedilmedi")},se=c.useCallback((m,s)=>{const b=s.trim();b&&(B.current=!0,U(k=>{var u;const r=(((u=k[m])==null?void 0:u.comment)||"").trim(),d=r?`${r} ${b}`:b;return{...k,[m]:{...k[m],comment:d}}}),D("Kaydedilmedi"))},[]),te=async m=>{const s=m==="Submitted";if(s&&W(""),s&&M==="Diğer"&&!F.trim()){s&&W(t('Lütfen "Diğer" seçeneği için açıklama giriniz.')),D("Kaydedilmedi");return}const b=M==="Diğer"?F.trim()?`Diğer: ${F.trim()}`:t("Diğer"):M||void 0;if(s&&!b&&!j.every(r=>{const d=I[r],u=Number((d==null?void 0:d.rating)??0),h=Number.isFinite(u)&&u>0,i=typeof(d==null?void 0:d.comment)=="string"&&d.comment.trim()!=="";return h&&i})){s&&W(t("Lütfen tüm sorular için puanlama yapın ve yorum ekleyin. Veya tamamlanamama nedeni belirtin.")),D("Kaydedilmedi");return}D("Kaydediliyor...");try{await g(p,l,a.name,I,b,void 0,m),D("Kaydedildi"),s&&(x==null||x(a.name))}catch(k){console.error("BM checklist kaydı başarısız:",k),D("Kaydedilmedi"),s&&W(t("Kayıt başarısız oldu, lütfen tekrar deneyin."))}};c.useEffect(()=>{if(!B.current||Y==="Kaydedildi"||Y==="Kaydediliyor...")return;const m=setTimeout(()=>{te("Draft")},2e3);return()=>clearTimeout(m)},[p,l,a.name,I,M,F,Y,g]);const le=A>0?Math.round(w/A*100):0,$=w===A&&A>0,ne=O&&L?(()=>{const m=!!(o!=null&&o.nonCompletionReason),s=(o==null?void 0:o.status)==="Draft",b=m?"#fff7ed":s?"#fefce8":"#f0fdf4",k=m?"#c2410c":s?"#92400e":"#15803d",r=m?"warning":s?"edit_note":"check_circle",d=m?`Mazeret: ${o.nonCompletionReason}`:s?`Taslak · ${L}`:`Kaydedildi · ${L}`;return e.jsxs("span",{style:{display:"inline-flex",alignItems:"center",gap:4,background:b,color:k,borderRadius:99,padding:"2px 8px",fontSize:"0.7rem",fontWeight:600},children:[e.jsx("span",{className:"material-symbols-outlined",style:{fontSize:13},children:r}),d]})})():null;if(n.onClose||n.isPage){const m=n.onClose;return e.jsx("div",{style:n.isPage?{display:"flex",flexDirection:"column",minHeight:"100%"}:{position:"fixed",inset:0,zIndex:1200,background:"rgba(0,0,0,0.45)",display:"flex",flexDirection:"column",overflowY:"auto"},children:e.jsxs("div",{style:n.isPage?{flex:1,display:"flex",flexDirection:"column"}:{background:"#fff",minHeight:"100%",display:"flex",flexDirection:"column",maxWidth:680,width:"100%",margin:"0 auto"},children:[e.jsxs("div",{style:{position:"sticky",top:0,zIndex:10,background:"rgba(255,255,255,0.95)",backdropFilter:"blur(10px)",borderBottom:"1px solid var(--border-color)",padding:"12px 16px",display:"flex",alignItems:"center",gap:12},children:[m&&e.jsx("button",{onClick:m,style:{width:36,height:36,border:"none",borderRadius:"50%",background:"var(--bg-color, #f1f5f9)",cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",color:"var(--text-color)",flexShrink:0},"aria-label":"Geri",children:e.jsx("span",{className:"material-symbols-outlined",style:{fontSize:20},children:"arrow_back"})}),e.jsxs("div",{style:{flex:1,minWidth:0},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,flexWrap:"wrap"},children:[e.jsx("span",{style:{fontWeight:700,fontSize:"1rem",color:"var(--text-color)"},children:a.name}),e.jsx("span",{className:`category-tag ${a.category==="Kırmızı Alarm Mağaza"?"kirmizi-alarm":a.category==="En Yüksek Büyüme"?"yuksek-buyume":a.category==="Düşük IRR Gerçekleşme"?"dusuk-irr":a.category==="LMS Mağaza"?"lms":""}`,children:a.category})]}),A>0&&e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,marginTop:4},children:[e.jsx("div",{style:{height:4,background:"#e5e7eb",borderRadius:99,overflow:"hidden",
1width:80,flexShrink:0},children:e.jsx("div",{style:{height:"100%",width:`${le}%`,background:$?"#16a34a":"#0ea5e9",borderRadius:99,transition:"width 0.3s ease"}})}),e.jsxs("span",{style:{fontSize:"0.7rem",fontWeight:600,color:$?"#16a34a":"var(--text-secondary)",whiteSpace:"nowrap"},children:[w,"/",A," ",t("soru")]}),ne]})]})]}),e.jsxs("div",{style:{padding:"16px",flex:1},children:[!M&&e.jsxs("div",{className:"mandatory-notice",children:[e.jsx("span",{className:"material-symbols-outlined",children:"info"}),e.jsx("span",{children:t("Tüm soruların yanıtlanması ve yorum yapılması zorunludur.")})]}),e.jsxs("div",{className:"checklist-exception-section",style:{marginBottom:"1.5rem",padding:"1rem",background:"#f9fafb",borderRadius:"8px",border:"1px solid #e5e7eb"},children:[e.jsx("label",{style:{display:"block",marginBottom:"0.5rem",fontWeight:500,color:"#374151"},children:"Tamamlanamama Nedeni (Opsiyonel)"}),e.jsxs("select",{value:M,onChange:s=>{B.current=!0,q(s.target.value),D("Kaydedilmedi")},className:"form-control",style:{width:"100%",maxWidth:"300px"},children:[e.jsx("option",{value:"",children:t("Seçiniz...")}),e.jsx("option",{value:"Yıllık İzin",children:t("Yıllık İzin")}),e.jsx("option",{value:"Raporlu",children:"Raporlu"}),e.jsx("option",{value:"Ziyaret Yapılmadı",children:t("Ziyaret Yapılmadı")}),e.jsx("option",{value:"Diğer",children:t("Diğer")})]}),M==="Diğer"&&e.jsx("div",{style:{marginTop:"0.5rem"},children:e.jsx("input",{type:"text",placeholder:t("Lütfen mazeret açıklamasını giriniz..."),value:F,onChange:s=>{B.current=!0,V(s.target.value),D("Kaydedilmedi")},className:"form-control",style:{width:"100%",padding:"0.5rem"}})}),M&&e.jsxs("p",{style:{marginTop:"0.5rem",fontSize:"0.85rem",color:"#B91C1C"},children:[e.jsx("span",{className:"material-symbols-outlined",style:{verticalAlign:"middle",fontSize:"1rem",marginRight:"4px"},children:"info"}),t("Mazeret seçildiğinde soru cevaplama zorunluluğu kalkar.")]})]}),!M&&j.map((s,b)=>{var i;const k=I[s],r=Number((k==null?void 0:k.rating)??0),d=Number.isFinite(r)&&r>0,u=typeof(k==null?void 0:k.comment)=="string"&&k.comment.trim()!=="",h=d&&u;return e.jsxs("div",{style:{background:h?"#f0fdf4":"#f8fafc",border:`1.5px solid ${h?"#86efac":"#e2e8f0"}`,borderRadius:12,padding:"1rem 1.1rem",marginBottom:"0.75rem",transition:"border-color 0.2s, background 0.2s"},children:[e.jsxs("div",{style:{display:"flex",gap:"0.6rem",alignItems:"flex-start",marginBottom:"0.75rem"},children:[e.jsx("span",{style:{flexShrink:0,width:26,height:26,borderRadius:"50%",background:h?"#16a34a":"#e2e8f0",color:h?"white":"#64748b",display:"flex",alignItems:"center",justifyContent:"center",fontSize:"0.72rem",fontWeight:700},children:h?e.jsx("span",{className:"material-symbols-outlined",style:{fontSize:14},children:"check"}):b+1}),e.jsx("p",{style:{margin:0,fontSize:"0.9rem",color:"#1e293b",lineHeight:1.5,fontWeight:500},children:Qe(s,z.byKey,z.list)})]}),e.jsxs("div",{className:"checklist-controls",style:{paddingLeft:"2rem"},children:[e.jsxs("div",{className:"rating-group",children:[e.jsx("label",{className:"rating-label",children:t("Puanınız:")}),e.jsx("div",{className:"rating-buttons",style:{display:"flex",gap:"0.4rem"},children:[1,2,3,4,5].map(f=>{var K;return e.jsx("button",{className:`btn-rating score-${f} ${((K=I[s])==null?void 0:K.rating)===f?"selected":""}`,onClick:()=>Q(s,"rating",f),type:"button",children:f},f)})}),e.jsxs("div",{className:"rating-labels-row",children:[e.jsx("span",{children:t("Kötü")}),e.jsx("span",{children:t("İyi")})]})]}),e.jsxs("div",{className:"comment-section",style:{position:"relative"},children:[e.jsx("textarea",{className:"comment-textarea",placeholder:t("Yorumunuzu buraya yazın..."),value:((i=I[s])==null?void 0:i.comment)||"",onChange:f=>Q(s,"comment",f.target.value),rows:3,style:{paddingRight:"56px",paddingBottom:"52px",boxSizing:"border-box",display:"block"}}),e.jsx("div",{style:{position:"absolute",bottom:"8px",right:"8px",zIndex:1},children:e.jsx(Ie,{sessionId:`${P}:${b}:${s}`,rolloutKey:C,onTranscript:f=>se(s,f)})})]})]})]},b)}),M&&e.jsx("div",{style:{padding:"1rem",textAlign:"center",color:"#6B7280",fontStyle:"italic"},children:t("Mazeret bildirildiği için sorular gizlendi.")}),J&&e.jsx("p",{className:"error-message",style:{marginTop:"1rem"},children:J}),e.jsxs("div",{className:"checklist-actions bm-checklist-actions",style:{display:"flex",gap:"1rem",alignItems:"center",justifyContent:"flex-end",marginTop:"1.5rem",paddingBottom:"2rem"},children:[Y&&e.jsx("span",{className:"save-status",style:{marginRight:"auto"},children:Y}),e.jsxs("button",{type:"button",onClick:()=>void te("Submitted"),className:"slick-btn btn-submit-checklist bm-checklist-action-btn",disabled:Y==="Kaydediliyor...",children:[e.jsx("span",{className:"material-symbols-outlined",children:"send"}),t("Gönder")]})]})]})]})})}const oe=(o==null?void 0:o.status)==="Draft";return!!(o!=null&&o.nonCompletionReason)?t("Düzenle"):O&&!oe&&t("Görüntüle"),e.jsx("div",{className:"card checklist-store-card",style:{cursor:"pointer",transition:"box-shadow 0.15s, transform 0.1s"},onClick:n.onOpen,onMouseEnter:m=>{m.currentTarget.style.boxShadow="0 4px 16px rgba(13,148,136,0.15)",m.currentTarget.style.transform="translateY(-1px)"},onMouseLeave:m=>{m.currentTarget.style.boxShadow="",m.currentTarget.style.transform=""},role:"button",tabIndex:0,onKeyDown:m=>{var s;(m.key==="Enter"||m.key===" ")&&((s=n.onOpen)==null||s.call(n))},"aria-label":`${a.name} checklist aç`,children:e.jsxs("div",{className:"checklist-store-card-header",style:{cursor:"pointer"},children:[e.jsxs("div",{style:{flex:1,minWidth:0},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"0.5rem",flexWrap:"wrap"},children:[e.jsx("h3",{style:{margin:0},children:a.name}),e.jsx("span",{className:`category-tag ${a.category==="Kırmızı Alarm Mağaza"?"kirmizi-alarm":a.category==="En Yüksek Büyüme"?"yuksek-buyume":a.category==="Düşük IRR Gerçekleşme"?"dusuk-irr":a.category==="LMS Mağaza"?"lms":""}`,children:a.category})]}),e.jsxs("div",{style:{marginTop:"0.45rem",display:"flex",alignItems:"center",gap:"0.6rem",flexWrap:"wrap"},children:[A>0&&e.jsxs(e.Fragment,{children:[e.jsx("div",{style:{height:5,background:"#e5e7eb",borderRadius:99,overflow:"hidden",
1width:100,flexShrink:0},children:e.jsx("div",{style:{height:"100%",width:`${le}%`,background:$?"#16a34a":"#0ea5e9",borderRadius:99,transition:"width 0.3s ease"}})}),e.jsxs("span",{style:{fontSize:"0.72rem",fontWeight:600,color:$?"#16a34a":"#64748b",whiteSpace:"nowrap"},children:[w,"/",A," ",t("soru")]})]}),ne]})]}),e.jsx("span",{className:"material-symbols-outlined",style:{fontSize:20,color:"var(--text-secondary)",flexShrink:0},children:"chevron_right"})]})})},be="https://i.imgur.com/Iww0q7t.gif",kt=()=>{var k;const{uploadedFileHistory:n,loading:a,fileHistoryLoaded:p,currentUser:l,currentUserBMFullName:x}=Se(),S=Me(),g=Ke(),[v,y]=c.useState(!1),[z,o]=c.useState(()=>window.innerWidth<=768),j=c.useRef(null),[N,T]=c.useState("idle"),[_,O]=c.useState(""),[L,R]=c.useState(null),I=c.useRef(null),U=c.useCallback(r=>{I.current&&clearTimeout(I.current),R(r),I.current=setTimeout(()=>R(null),4e3)},[]),[w,A]=c.useState(((k=S.state)==null?void 0:k.bmName)||"all"),{monthOptions:Z,weekOptions:re}=c.useMemo(()=>{if(!n)return{monthOptions:[],weekOptions:[]};const r=new Set,d=new Set;return n.forEach(u=>{u.month&&r.add(u.month),u.week&&d.add(u.week)}),{monthOptions:["all",...Array.from(r).sort(Pe)],weekOptions:["all",...Array.from(d).sort((u,h)=>{const i=ge(h)-ge(u);return i!==0?i:String(h).localeCompare(String(u),"tr")})]}},[n]),[E,X]=c.useState("all"),[M,q]=c.useState("all"),[F,V]=c.useState("all"),[J,W]=c.useState("all"),[Y,D]=c.useState("all");c.useEffect(()=>{const r=()=>o(window.innerWidth<=768);return window.addEventListener("resize",r),()=>window.removeEventListener("resize",r)},[]),c.useEffect(()=>{v&&(V(E),W(M),D(w))},[v]),c.useEffect(()=>{W("all")},[F]),c.useEffect(()=>{const r=new Image;r.src=be},[]);const ee=c.useRef(!1);c.useEffect(()=>{if(!ee.current&&n&&n.length>0){const r=De(n);r&&r.week&&(q(r.week),ee.current=!0)}},[n]),c.useEffect(()=>{const r=d=>{var h,i;if(!((i=(h=d.target).closest)!=null&&i.call(h,t(".dropdown-portal-content")))&&j.current&&!j.current.contains(d.target)){const f=document.querySelector(".btn-filter");f&&!f.contains(d.target)&&y(!1)}};return document.addEventListener("pointerdown",r),()=>{document.removeEventListener("pointerdown",r)}},[]);const B=c.useMemo(()=>{if(!n||n.length===0)return null;const r=[...n].sort(Be),d=r.filter(i=>Ae(i)),u=d.length>0?d:r;return(E!=="all"||M!=="all")&&u.find(i=>(E==="all"||i.month===E)&&(M==="all"||i.week===M))||u[0]},[n,E,M]);c.useEffect(()=>{T("idle")},[w,B]);const P=(B==null?void 0:B.bodyData)||[],C=c.useMemo(()=>{if(!Array.isArray(P))return[];let r="",d="";return P.map(u=>{if(!Array.isArray(u))return u;const h=[...u],i=String(h[0]||"").trim(),f=String(h[1]||"").trim();return i?r=i:r&&(h[0]=r),f?d=f:d&&(h[1]=d),h})},[P]),Q=c.useMemo(()=>P&&P.length>0?P[0].length-1:-1,[P]),se=c.useMemo(()=>{if(!C||C.length===0||Q<0)return{};const r={},d=[...We,Q],u=[10,11,14,15];return d.forEach(h=>{let i=C.map(f=>H(f[h])).filter(f=>!isNaN(f));if(u.includes(h)&&(i=i.filter(f=>f!==0)),i.length>0){const f=Oe(i,[20,40,60,80]);r[h]={type:"quintile",thresholds:{p20:f[0],p40:f[1],p60:f[2],p80:f[3]}}}}),r},[C,Q]),te=c.useCallback((r,d)=>{if([6,7,8,9].includes(d))return"";const u=H(r);if(isNaN(u))return"";if([20,21,25,26,30,31].includes(d))return u>0?"color-positive":u<0?"color-negative":"";if([10,11,14,15].includes(d)&&u===0)return"";const h=se[d];if((h==null?void 0:h.type)==="quintile"){const{p20:i,p40:f,p60:K,p80:G}=h.thresholds;return u<=i?"color-quintile-1":u<=f?"color-quintile-2":u<=K?"color-quintile-3":u<=G?"color-quintile-4":"color-quintile-5"}return""},[se]),{bmbsOptions:le}=c.useMemo(()=>{if(!C||C.length===0)return{bmbsOptions:[]};const r=new Set;
1return C.forEach(d=>{d&&d[1]&&r.add(d[1])}),{bmbsOptions:["all",...Array.from(r).sort()]}},[C]);c.useEffect(()=>{(l==null?void 0:l.role)==="Bölge Müdürü"&&x&&w!==x&&A(x)},[l,x,w]);const $=c.useMemo(()=>{if(!C)return[];if(w==="all")return C.filter(Boolean);const r=C.filter(h=>h&&me(String(h[1]||""),w)),d=new Set,u=ie(w);return u&&d.add(u),r.forEach(h=>{const i=ie(String((h==null?void 0:h[1])||""));i&&d.add(i)}),d.size===0?r:C.filter(h=>{if(!h)return!1;if(me(String(h[1]||""),w))return!0;const i=ie(String(h[1]||""));return!!i&&d.has(i)})},[C,w]),ne=c.useMemo(()=>{if(w==="all"||!$||$.length===0)return[];const r=i=>{const f={"color-quintile-1":1,"color-quintile-2":2,"color-quintile-3":3,"color-quintile-4":4,"color-quintile-5":5},K=[10,11,14,15];return ve.map(G=>{const ae=H(i[G.index]);if(K.includes(G.index)&&ae===0||isNaN(ae))return null;const we=te(ae,G.index),Ne=f[we]||100;return{name:G.name,index:G.index,score:Ne}}).filter(Boolean).sort((G,ae)=>G.score-ae.score).slice(0,5)},d=$.map(i=>({name:Le(i),totalPoints:H(i[Q]),isTopGrowthStore:H(i[6])===1,lms:H(i[7]),irr:H(i[8]),row:i})).filter(i=>i.name),u=new Map;d.filter(i=>!isNaN(i.totalPoints)).sort((i,f)=>i.totalPoints-f.totalPoints).slice(0,2).forEach(i=>{const f=r(i.row);u.set(i.name,{category:t("Kırmızı Alarm Mağaza"),row:i.row,worstKpis:f.map(K=>K.name),worstKpiIndices:f.map(K=>K.index)})});const h=d.find(i=>i.isTopGrowthStore);if(h){const i=r(h.row);u.set(h.name,{category:t("En Yüksek Büyüme"),row:h.row,worstKpis:i.map(f=>f.name),worstKpiIndices:i.map(f=>f.index)})}return d.filter(i=>!isNaN(i.irr)).sort((i,f)=>i.irr-f.irr).slice(0,2).forEach(i=>{if(!u.has(i.name)){const f=r(i.row);u.set(i.name,{category:t("Düşük IRR Gerçekleşme"),row:i.row,worstKpis:f.map(K=>K.name),worstKpiIndices:f.map(K=>K.index)})}}),d.filter(i=>i.lms===-1).forEach(i=>{if(!u.has(i.name)){const f=r(i.row);u.set(i.name,{category:t("LMS Mağaza"),row:i.row,worstKpis:f.map(K=>K.name),worstKpiIndices:f.map(K=>K.index)})}}),Array.from(u.entries()).map(([i,f])=>({name:i,...f}))},[$,w,Q,te]),oe=()=>{X("all"),q("all"),(l==null?void 0:l.role)!=="Bölge Müdürü"&&A("all"),V("all"),W("all"),D("all"),y(!1)},pe=()=>{X(F),q(J),A(Y),y(!1)},m=c.useMemo(()=>[{key:"month",value:E,label:"Ay",setter:X},{key:"week",value:M,label:"Hafta",setter:q},{key:"bmbs",value:w,label:"BM/BS",setter:A}].filter(r=>r.value!=="all"),[E,M,w]),s=()=>{T("analyzing"),O(t("Analiz Ediliyor...")),setTimeout(()=>{O(t("Şu an kritik mağazalarınız için soru setleri hazırlıyorum..."))},4e3),setTimeout(()=>{T("complete")},8e3)},b=()=>a||!p?e.jsx("p",{children:t("Yükleniyor...")}):w==="all"?e.jsxs("div",{className:"placeholder-card",children:[e.jsx("span",{className:"material-symbols-outlined placeholder-icon",children:"person_search"}),e.jsx("h2",{className:"page-title",style:{fontSize:"1.75rem",marginBottom:"1rem"},children:t("Bölge Müdürü Seçin")}),e.jsx("p",{className:"placeholder-text",style:{maxWidth:"50ch"},children:t("Checklist'i görüntülenecek mağazaları görmek için lütfen yukarıdaki filtreden bir BM/BS seçin.")})]}):N==="idle"?e.jsxs("div",{className:"start-analysis-container",style:z?{border:"none",padding:"0.5rem 0.75rem",height:"calc(100svh - var(--bottom-nav-height, 60px) - 168px)",minHeight:"unset",justifyContent:"space-evenly",gap:0,overflow:"hidden"}:void 0,children:[e.jsx("img",{src:"/robot-sm.png",alt:"AI Robot",draggable:!1,style:{width:z?120:200,marginBottom:z?0:"0.5rem",filter:"drop-shadow(0 4px 16px rgba(0,0,0,0.18))",userSelect:"none",pointerEvents:"none",flexShrink:0}}),e.jsxs("div",{style:z?{display:"flex",flexDirection:"column",gap:"0.4rem"}:void 0,children:[e.jsx("h2",{style:z?{fontSize:"1.2rem",margin:0}:void 0,children:t("Kritik Mağazaları Analiz Edin")}),e.jsx("p",{style:z?{fontSize:"0.83rem",margin:0,color:"var(--text-color-light)"}:void 0,children:t(`Yapay zeka destekli analiz aracımız, seçtiğiniz bölge müdürünün en çok odaklanması gereken\r
2                            "Kırmızı Alarm", "Yüksek Büyüme Potansiyelli" ve diğer kritik kategorilerdeki mağazalarını belirler.\r
3                            Analizi başlatarak bu mağazalar için özel olarak hazırlanmış checklist soru setlerini oluşturun.`)})]}),e.jsxs("button",{onClick:s,className:"btn btn-primary btn-gradient",style:z?{width:"100%",padding:"0.875rem",fontSize:"1rem",flexShrink:0}:void 0,children:[e.jsx("span",{className:"material-symbols-outlined",children:"auto_awesome"}),t("Yapay Zeka İle Analiz Et")]})]}):N==="analyzing"?e.jsxs("div",{className:"analysis-in-progress-container",children:[e.jsx("img",{src:be,alt:"AI Analysis Animation",className:"analysis-gif"}),e.jsx("p",{className:"analysis-message",children:_},_)]}):N==="complete"?ne.length===0?e.jsxs("div",{className:"placeholder-card",children:[e.jsx("span",{className:"material-symbols-outlined placeholder-icon",children:"playlist_add_check"}),e.jsx("h2",{className:"page-title",style:{fontSize:"1.75rem",marginBottom:"1rem"},children:t("Aksiyon Gereken Mağaza Bulunamadı")}),e.jsx("p",{className:"placeholder-text",style:{maxWidth:"50ch"},children:t("Seçilen Bölge Müdürü için bu dönemde özel aksiyon gerektiren bir mağaza bulunmamaktadır.")})]}):e.jsx("div",{children:ne.map(r=>e.jsx(qe,{store:r,fileId:B.id,bmName:w,onSubmitSuccess:U,onOpen:()=>g("/bm-checklist/form",{state:{store:r,fileId:B.id,bmName:w}})},r.name))}):null;return e.jsxs(Te,{children:[L&&e.jsxs("div",{style:{position:"fixed",bottom:80,left:"50%",transform:"translateX(-50%)",zIndex:9999,background:"#16a34a",color:"white",borderRadius:14,padding:"0.85rem 1.4rem",display:"flex",alignItems:"center",gap:"0.6rem",boxShadow:"0 8px 30px rgba(0,0,0,0.18)",minWidth:280,maxWidth:"90vw",animation:"fadeInUp 0.3s ease"},children:[e.jsx("span",{className:"material-symbols-outlined",style:{fontSize:22},children:"check_circle"}),e.jsxs("div",{children:[e.jsx("div",{style:{fontWeight:700,fontSize:"0.95rem"},children:t("Checklist gönderildi")}),e.jsx("div",{style:{fontSize:"0.78rem",opacity:.88},children:L})]})]}),e.jsxs("div",{className:"content-container",children:[e.jsxs("div",{className:"page-header",children:[e.jsx("h1",{className:"page-title",children:t("BM Checklist")}
3),e.jsxs("div",{className:"header-controls",ref:j,children:[e.jsxs("div",{className:"filter-actions",children:[e.jsx("div",{className:"active-filters",children:m.map(r=>e.jsxs("div",{className:"filter-pill",children:[e.jsxs("span",{children:[r.label,": ",e.jsx("strong",{children:r.value})]}),e.jsx("button",{onClick:()=>r.setter("all"),className:"remove-pill",disabled:(l==null?void 0:l.role)==="Bölge Müdürü"&&r.key==="bmbs",children:e.jsx("span",{className:"material-symbols-outlined",children:"close"})})]},r.key))}),e.jsxs("button",{className:"btn btn-secondary btn-filter",onClick:()=>y(!v),children:[e.jsx("span",{className:"material-symbols-outlined",children:"filter_list"}),"Filtrele",m.length>0&&e.jsx("span",{className:"filter-count-badge",children:m.length})]})]}),e.jsx(Ce,{isOpen:v,onClose:()=>y(!1),isMobile:z,children:e.jsxs("div",{className:z?void 0:"filter-panel",children:[e.jsxs("div",{className:"filter-panel-header",children:[e.jsx("h3",{children:t("Filtre Seçenekleri")}),e.jsx("button",{className:"btn-link",onClick:oe,children:"Temizle"})]}),e.jsxs("div",{className:"filter-panel-body single-col-last",children:[e.jsx(ce,{label:"Ay",options:Z,value:F,onChange:V}),e.jsx(ce,{label:"Hafta",options:re,value:J,onChange:W}),e.jsx(ce,{label:"BM/BS",options:le,value:Y,onChange:D,disabled:(l==null?void 0:l.role)==="Bölge Müdürü"})]}),e.jsx("div",{className:"filter-panel-footer",children:e.jsx("button",{className:"btn btn-primary",onClick:pe,children:"Uygula"})})]})})]})]}),e.jsx("div",{style:{maxWidth:820,margin:"0 auto",padding:"0 0.25rem",overflow:N==="idle"&&z?"hidden":void 0},children:b()})]})]})};export{qe as ChecklistForStore,kt as default};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.