PageSourceSearch

https://portal.safeos.de/assets/ActionRequired-POFmFdOz.js

js safeos.de collected 2026-10-02 16:13:58 UTC 48,348 bytes, 1 lines download raw bytes

1import{h as Dt,_ as Le,q as la,M as d,f as y,r as se,c as A,w as C,P as oa,K as g,L as o,n as b,a1 as ve,a4 as k,a0 as u,F as qe,u as x,O as le,U as xt,ad as Ft,ac as Qt,a6 as it,ag as ia,v as ra,W as ua,$ as I,R as da,a2 as ca,a3 as ma,x as pa}from"./vue-datepicker-CpIdsRIT.js";import{q as Wt,a as fa,b as Gt,n as X,Z as Bt,g as ga,U as Et,K as qt,$ as rt,M as va,a0 as ya,u as ba,c as ha,aM as Aa,aw as Ot,V as Mt,L as wa,Q as ka,t as _a,aN as xa,_ as qa}from"./index-c2PABjuS.js";import{u as jt}from"./cockpitStore-DZbmc_9j.js";import{u as Kt,a as Na,_ as Da,b as $a,c as ut}from"./NoteTranslationComposable-CMavysnC.js";import{u as Yt}from"./filter-By8nmMDA.js";import{u as Zt}from"./LocalizedTextComposable-BT_MHYJB.js";import{u as Ca}from"./catalogStore-DWOHXgj6.js";import{u as Ia}from"./campaignStore-C9ZbJ0ye.js";import{_ as zt}from"./CardContainer.vue_vue_type_script_setup_true_lang-BKfUFWAw.js";import{E as Nt}from"./EmployeeContactCard-BkJPcAg4.js";import{_ as dt}from"./VuetifyDatePicker.vue_vue_type_script_setup_true_lang-B9W9tuUi.js";import{V as Ra}from"./VTextField-CzBtTN-C.js";import{_ as ge}from"./SelectInput.vue_vue_type_script_setup_true_lang-KMlV34Kr.js";import{_ as Sa}from"./Attachment.vue_vue_type_script_setup_true_lang-DSZxW_8W.js";import{r as je}from"./ResolveErrorCode-_CDAcugR.js";import{_ as Pt}from"./SwitchInput.vue_vue_type_script_setup_true_lang-Bq2xCGIm.js";import{u as Va}from"./RiskLevelComposable-CqksGDcP.js";import{V as Ta}from"./VDataTableServer-sfveKKYy.js";import{V as La}from"./VChip-zxhclFBY.js";import"./datefns-BAflKSlV.js";import"./VTextarea-CHzya4rg.js";import"./VSheet-Bi2ZFpX8.js";import"./VSelect-DnH6Hc5K.js";import"./VCheckboxBtn-CaDiUy2q.js";import"./VSwitch-DckCpHw1.js";import"./VDataTable-CzpP61RX.js";import"./VTable-CzfeRkJJ.js";const Ht=Dt({__name:"TextInput",props:{modelValue:{default:""},label:{default:""},placeholder:{default:""},clearable:{type:Boolean,default:!1},type:{default:"text"}},emits:["update:modelValue"],setup(oe,{emit:Ne}){const i=Ne;function L(q){i("update:modelValue",q)}return(q,W)=>(d(),Le(Ra,la({"model-value":q.modelValue,label:q.label,placeholder:q.placeholder,clearable:q.clearable,type:q.type,"hide-details":"",density:"comfortable",variant:"outlined","onUpdate:modelValue":L},q.$attrs),null,16,["model-value","label","placeholder","clearable","type"]))}}),Ua={class:"bg-white flex flex-col overflow-hidden h-full"},Fa={class:"px-6 py-5 flex items-start justify-between gap-3 shrink-0"},Qa={class:"flex-1 min-w-0"},Ba={class:"text-sm text-gray-500 mb-1"},Ea={class:"text-2xl font-bold text-gray-900 min-w-0"},Oa={class:"flex-1 overflow-y-auto px-6 pb-6"},Ma={class:"space-y-5"},za={class:"flex items-center gap-2 py-2 px-3 bg-gray-50 rounded-lg text-sm text-gray-500 min-w-0"},Pa={class:"truncate"},Ha=o("span",{class:"text-gray-300"},">",-1),Wa={key:0,class:"py-8 flex justify-center"},Ga={key:1,class:"space-y-5"},ja={class:"bg-gray-50 rounded-lg p-4"},Ka={class:"text-xs text-gray-500 mb-2"},Ya={class:"text-base font-medium text-gray-900 leading-snug"},Za={key:0,class:"space-y-3"},Ja={key:0,class:"bg-gray-50 rounded-lg p-4"},Xa={class:"text-xs text-gray-500 mb-2"},en={class:"text-sm text-gray-700 leading-relaxed"},tn={key:1,class:"bg-gray-50 rounded-lg p-4"},an={class:"text-xs text-gray-500 mb-2"},nn={class:"text-sm font-medium text-gray-900 mb-3"},sn={class:"text-xs text-gray-500 mb-2"},ln={class:"text-sm text-gray-700 leading-relaxed"},on={class:"grid grid-cols-2 lg:grid-cols-3 xl:grid-cols-5 gap-x-4 gap-y-3"},rn={class:"text-xs text-gray-500 mb-1.5"},un={class:"inline-block px-3 py-1 bg-gray-100 text-gray-800 text-sm font-semibold rounded"},dn={class:"text-xs text-gray-500 mb-1.5"},cn={class:"text-xs text-gray-500 mb-1.5"},mn={class:"text-xs text-gray-500 mb-1.5"},pn={class:"text-xs text-gray-500 mb-1.5"},fn=["disabled"],gn={key:2,class:"flex items-start gap-2 rounded-lg border border-red-200 bg-red-50 px-3 py-2.5"},vn={class:"text-sm text-red-800"},yn={key:0,class:"font-semibold"},bn={class:"border-t border-gray-200 pt-4"},hn={class:"flex items-center justify-between gap-2 mb-3"},An={class:"text-base font-semibold text-gray-900"},wn={class:"flex gap-2 mb-3"},kn=["placeholder"],_n=["disabled"],xn={class:"space-y-2"},qn={key:0,class:"px-3 py-2 flex items-center gap-2"},Nn={class:"text-sm font-medium"},Dn={class:"text-xs opacity-70 ml-auto text-right shrink-0"},$n={key:1,class:"p-3"},Cn={class:"text-sm text-gray-700 leading-relaxed whitespace-pre-line"},In={key:0,class:"text-xs text-gray-400 mt-1.5"},Rn={key:1,class:"text-sm text-gray-500 italic"},Sn={key:0,class:"mt-5 pt-4 border-t border-dashed border-gray-200"},Vn={class:"text-sm font-semibold text-gray-900"},Tn={class:"text-xs text-gray-500 mb-3"},Ln={class:"space-y-2"},Un={class:"text-sm text-amber-900 leading-relaxed whitespace-pre-line"},Fn={class:"text-xs text-amber-700 mt-1.5"},Qn={key:3,class:"border-t border-gray-200 pt-4"},Bn={class:"text-base font-semibold text-gray-900 mb-3"},En={class:"flex flex-wrap gap-2"},On={key:4,class:"border-t border-gray-200 pt-4"},Mn={class:"text-base font-semibold text-gray-900"},zn={class:"text-sm text-gray-500 mb-3"},Pn={key:5,class:"border-t border-gray-200 pt-4"},Hn={class:"text-base font-semibold text-gray-900 mb-3"},Wn={class:"text-sm mb-1"},Gn={class:"text-gray-500"},jn={key:1,class:"ml-1 text-gray-400"},Kn={key:0,class:"text-sm"},Yn={class:"text-gray-500"}
1,Zn={key:0,class:"ml-1 text-red-600"},Jn={class:"flex flex-col gap-2 mt-3 mb-3"},Xn={class:"relative"},es={value:null},ts=["value"],as=["disabled","placeholder"],ns={class:"flex gap-2"},ss=["disabled"],ls=["disabled"],os={key:2,class:"py-8 flex justify-center"},is=Dt({__name:"ActionRequiredDetails",props:{analysis:{type:Object,required:!0},userId:{type:String,required:!1,default:""},employeeName:{type:String,required:!1,default:""},evaluationDate:{type:[String,Date],required:!1,default:null},index:{type:Number,required:!1,default:0},questions:{type:Array},initialQuestionId:{type:String,required:!1,default:null},canViewActionRequiredDetails:{type:Boolean,required:!1,default:!1}},emits:["questions-count-changed","delegation-changed","close"],setup(oe,{emit:Ne}){const i=oe,L=Ne,q=jt(),W=Kt(),Ue=Wt(),R=Yt(),{notifyError:w,notifySuccess:Fe}=fa(),{t:N,locale:ee}=Gt(),{localText:De}=Zt(),{translating:ct,showTranslated:Ke,targetLanguage:ce,displayText:ye,toggle:G,reset:$e}=Na(),B=y(null),E=y(!1),ie=y(""),z=y(!1),Qe=se({}),O=y(!1),M=y(!1),P=y("remove"),H=y(null),U=y(null),S=y(""),V=y(!1),F=y(null),te=y(!1);function j(e){if(!e)return null;const s=e instanceof Date?e:new Date(e);return Number.isNaN(s.getTime())?null:s.toISOString()}function K(e){if(!e)return"";const s=e instanceof Date?e:new Date(e);return Number.isNaN(s.getTime())?"":s.toLocaleDateString(ee.value||"de-DE")}function re(e){if(!e)return!1;const s=e instanceof Date?e:new Date(e);return Number.isNaN(s.getTime())?!1:new Date(s.getFullYear(),s.getMonth(),s.getDate(),23,59,59,999).getTime()<Date.now()}const ue=A(()=>W.detailsByAnalysis?.[i.analysis.id]??null),ae=A(()=>ue.value?.dueDate??null),be=A(()=>!!f.value?.actionRequired&&re(ae.value)),Y=A(()=>!!f.value?.actionRequired&&re(f.value?.delegationDueDate)),T=e=>({id:e.id,name:`${e.firstName||""} ${e.lastName||""}`.trim()||e.id}),Ce=A(()=>(R.users||[]).filter(e=>!!e.id&&e.enabled!==!1).map(T).sort((e,s)=>e.name.localeCompare(s.name,ee.value||void 0))),Q=A(()=>{const e=f.value;if(!e)return null;if(e.delegatedTo)return e.delegatedTo;if(e.delegatedToUserId){const s=(R.users||[]).find(l=>l.id===e.delegatedToUserId);return s?T(s).name:e.delegatedToUserId}return null}),ne=A(()=>(Array.isArray(i.questions)?[...i.questions]:[]).sort((s,l)=>{const m=Number.isFinite(Number(s.order))?Number(s.order):0,c=Number.isFinite(Number(l.order))?Number(l.order):0;return m-c})),f=A(()=>B.value?ne.value.find(e=>e.id===B.value)??null:null),Be=A(()=>f.value?Xe(f.value):[]),he=A(()=>{const e=(i.employeeName||"").trim();return e.length?e:"—"}),Ie=A(()=>{const e=i.userId?.trim();if(e){const m=R.getUserById(e);if(m)return m}const s=(i.employeeName||"").trim();if(!s)return null;const l=de(s);return(R.users||[]).find(m=>{const c=de(`${m.firstName||""} ${m.lastName||""}`),_=de(`${m.lastName||""} ${m.firstName||""}`);return l===c||l===_})||null}),Re=A(()=>{const e=i.evaluationDate||i.questions?.[0]?.createdAt||null;if(!e)return"";const s=new Date(e);return Number.isNaN(s.getTime())?"":s.toLocaleDateString(ee.value||void 0,{weekday:"long",day:"2-digit",month:"2-digit",year:"numeric"})}),Ee=A(()=>{const e=i.questions?.[0]?.createdAt;return e?new Date(e).toLocaleTimeString(ee.value||void 0,{hour:"2-digit",minute:"2-digit"}):""}),Ye=A(()=>{const e=i.analysis?.lmraNumber;return e!=null&&`${e}`!=""?e:i.questions?.map(l=>l?.lmraNumber).find(l=>l!=null&&`${l}`!="")??null}),Ze=A(()=>{const e=i.analysis,s=typeof e?.sourceName=="string"&&e.sourceName.trim().length>0&&e.sourceName.trim()!==(typeof e?.sourceCatalogName=="string"?e.sourceCatalogName.trim():"")?e.sourceName:"",l=[e?.workAreaName,e?.workItemName,e?.workArea?.name,e?.workItem?.name,s,e?.source].find(c=>typeof c=="string"&&c.trim().length>0);if(l)return l.trim();const m=i.questions?.map(c=>{const _=(typeof c?.workItem?.name=="string"&&c.workItem.name.trim().length>0?c.workItem.name:"")||(typeof c?.workArea?.name=="string"&&c.workArea.name.trim().length>0?c.workArea.name:"");if(_)return _;const D=c?.workItemName??c?.workAreaName;
1if(typeof D=="string"&&D.trim().length>0)return D;const J=c?.sourceName,fe=c?.sourceCatalogName;return typeof J=="string"&&J.trim().length>0&&J.trim()!==(typeof fe=="string"?fe.trim():"")?J:""}).find(c=>typeof c=="string"&&c.trim().length>0);return m?m.trim():""}),Oe=A(()=>{const s=[Ee.value?`LMRA ${Ee.value}`:`LMRA #${i.index+1}`];return Ye.value&&s.push(`${N("App.Cockpit.numberShort")} ${Ye.value}`),Ze.value&&s.push(Ze.value),s.join(" • ")}),Je=A(()=>{const e=f.value?.id;return e?W.questionHistoryByAnalysis?.[i.analysis.id]?.[e]??[]:[]}),Me=A(()=>{const e=f.value;if(!e)return[];const s=(e.notes||[]).map((m,c)=>({id:m.id||`${e.id}-note-${c}`,kind:"note",note:m,createdAt:m.createdAt??m.updatedAt??null}));return[...Je.value.filter(m=>m.status==="set"||m.status==="removed").map((m,c)=>{const _=m.status==="set"?"set":"remove";return{id:`${m.id||e.id}-log-${c}`,kind:"log",action:_,text:N(_==="set"?"App.Cockpit.actionRequiredSet":"App.Cockpit.actionRequiredRemoved"),actor:m.actor??null,createdAt:m.createdAt}}),...s].sort((m,c)=>Se(c.createdAt)-Se(m.createdAt))}),ze=A(()=>{const e=f.value;return e?gt(e).sort((s,l)=>Se(l.createdAt)-Se(s.createdAt)):[]}),Pe=A(()=>[...Me.value.flatMap(e=>e.kind==="note"?[{key:e.id,text:e.note.note??""}]:[]),...ze.value.map(e=>({key:e.id,text:e.text??""}))].filter(e=>e.text.trim().length));C(f,()=>$e());function Ae(){if(!ne.value.length){B.value=null;return}const e=i.initialQuestionId&&ne.value.some(s=>s.id===i.initialQuestionId)?i.initialQuestionId:ne.value[0].id;e&&B.value!==e&&(B.value=e)}C(()=>i.analysis.id,()=>{B.value=null,ie.value="",E.value=!1,Ae(),W.fetchDetails(i.analysis.id).catch(()=>{})}),C(B,async()=>{ie.value="",E.value=!1,U.value=null,S.value="",F.value=f.value?.delegationDueDate??null,await me()}),C(ne,()=>{if(!B.value){Ae();return}ne.value.some(e=>e.id===B.value)||(B.value=null),Ae()}),C(()=>i.initialQuestionId,()=>{Ae()},{immediate:!0}),oa(async()=>{const[e,s]=await Promise.all([Ue.hasPermission("professional","can_set_action_required","staff").catch(()=>!1),Ue.hasPermission("professional","can_view_action_required","staff").catch(()=>!1)]);O.value=e||s||i.canViewActionRequiredDetails,R.users?.length||R.fetchUsers().catch(()=>{}),await me(),Ae(),W.fetchDetails(i.analysis.id).catch(()=>{})});function Se(e){if(!e)return 0;const s=new Date(e).getTime();return Number.isNaN(s)?0:s}function de(e){return e.replace(/\s+/g," ").trim().toLocaleLowerCase()}function mt(e){return De(e.data?.request)||"—"}function Xe(e){const s=e?.data||{},l=Array.isArray(s?.attachments)?s.attachments:[],m=Array.isArray(s?.onWrong?.attachments)?s.onWrong.attachments:[],c=Array.isArray(s?.onWrong?.onWrong?.attachments)?s.onWrong.onWrong.attachments:[];return[...l,...m,...c]}function et(e){return!!Z(e)||!!He(e)||!!We(e)}function Z(e){return De(e.data?.onWrong?.info)||""}function He(e){return De(e.data?.onWrong?.request)||""}function We(e){const s=e.data?.onWrong?.note;return typeof s=="string"&&s.trim().length?s.trim():De(e.data?.onWrong?.onWrong?.info)||""}function pt(e){const s=e.data?.expected;return s===!0||s===!1?s:null}function Ve(e){return e===!0?N("General.yes"):e===!1?N("General.no"):"—"}function ft(e){return e.response?"bg-blue-100 text-blue-800":"bg-gray-100 text-gray-800"}function tt(e){const s=[],l=e?.createdAt;if(l){const c=new Date(l);Number.isNaN(c.getTime())||s.push(c.toLocaleString(ee.value||void 0))}const m=e?.createdByName||e?.createdBy||e?.actor;return m&&s.push(String(m)),s.join(" • ")}function gt(e){const s=e?.data||{},l=[],m=(c,_,D)=>{const J=typeof c=="string"?c.trim():"";J.length&&l.push({id:`${e.id}-employee-${D}`,kind:"employee_note",text:J,source:_,createdAt:e.createdAt??null})};return m(s?.note,"root","root"),m(s?.onWrong?.note,"onWrong","onwrong"),m(s?.onWrong?.onWrong?.note,"followUp","followup"),l}function vt(e){return e?.createdById&&e.createdById===i.userId?"bg-blue-50 border-blue-300 shadow-sm":"bg-gray-50 border-gray-300 shadow-sm"}function yt(e){return e==="set"?"bg-red-50 border-red-300 text-red-800 shadow-sm":"bg-blue-50 border-blue-300 text-blue-800 shadow-sm"}function Ge(e){if(!e)return"";const s=new Date(e).getTime();
1return Number.isNaN(s)?"":new Date(s).toLocaleString(ee.value||void 0)}function bt(e){const s=[],l=Ge(e.createdAt??null);return l&&s.push(l),e.actor&&s.push(String(e.actor)),s.join(" • ")}function ht(e){const s=e.source==="root"?N("App.Cockpit.employeeNote"):e.source==="onWrong"?N("App.Cockpit.wrongAnswerNote"):N("App.Cockpit.followUpNote"),l=Ge(e.createdAt??null);return l?`${s} • ${l}`:s}function we(e){return!!Qe[e]}async function me(){const e=f.value;if(e)try{await W.fetchHistoryForAnalysis(i.analysis.id,{questionId:e.id})}catch{}}function at(e){O.value&&(we(e.id)||(H.value=e.id,P.value=e.actionRequired?"remove":"set",M.value=!0))}async function nt(e){const s=H.value;if(!s)return;const l=ne.value.find(c=>c.id===s);if(!l||we(s))return;const m=P.value==="remove";if(m===!!l.actionRequired){Qe[s]=!0;try{const{currentNote:c,notes:_}=await q.postCockpitAnalysisQuestionNote(i.analysis.id,s,e),D=c??null,J=Array.isArray(_)&&_.length?_:D?[D]:[];if(l.currentNote=D,l.notes=J,l.adminNote=D?.note??null,l.adminNoteDate=D?.createdAt??null,i.questions){const fe=i.analysis;fe&&(fe.countNotes=ut(i.questions))}m?(await q.deleteCockpitAnalysisQuestionActionRequired(i.analysis.id,s),l.actionRequired=!1):(await q.postCockpitAnalysisQuestionActionRequired(i.analysis.id,s),l.actionRequired=!0),M.value=!1,H.value=null,ke(),await q.fetchActionRequiredHistory(),await me()}catch(c){w(N(je(c,"General.error")))}finally{Qe[s]=!1}}}function ke(){i.questions&&(i.analysis.actionRequired=i.questions.some(l=>l.actionRequired));const e=i.questions?.length??0,s=i.questions?.filter(l=>l.actionRequired).length??0;L("questions-count-changed",{analysisId:i.analysis.id,total:e,actionRequired:s})}async function _e(){const e=f.value,s=ie.value.trim();if(!(!e||!s||z.value)){z.value=!0;try{const{currentNote:l,notes:m}=await q.postCockpitAnalysisQuestionNote(i.analysis.id,e.id,s),c=l??null,_=Array.isArray(m)&&m.length?m:c?[c]:[];if(e.currentNote=c,e.notes=_,e.adminNote=c?.note??null,e.adminNoteDate=c?.createdAt??null,i.questions){const D=i.analysis;D&&(D.countNotes=ut(i.questions))}ie.value=""}catch(l){w(N(je(l,"General.error")))}finally{z.value=!1}}}async function pe(){const e=f.value;if(!e||V.value)return;const s=U.value||null,l=S.value.trim()||null;if(!(!s&&!l)){V.value=!0;try{const m=s,c=s?Ce.value.find(D=>D.id===s)?.name||l||null:l,_=j(F.value);await W.postQuestionDelegation(i.analysis.id,e.id,{delegatedTo:c,delegatedToUserId:m,delegationDueDate:_}),e.delegatedTo=c,e.delegatedToUserId=m,e.delegationDueDate=_,L("delegation-changed",{analysisId:i.analysis.id,questionId:e.id,delegatedTo:c,delegatedToId:m,delegationDueDate:_}),U.value=null,S.value="",await me(),Fe(N("App.ActionRequired.delegateSuccess"))}catch(m){w(N(je(m,"General.error")))}finally{V.value=!1}}}async function xe(){const e=f.value;if(!(!e||V.value)){V.value=!0;try{await W.deleteQuestionDelegation(i.analysis.id,e.id),e.delegatedTo=null,e.delegatedToUserId=null,e.delegationDueDate=null,F.value=null,L("delegation-changed",{analysisId:i.analysis.id,questionId:e.id,delegatedTo:null,delegatedToId:null,delegationDueDate:null}),await me(),Fe(N("App.ActionRequired.removeDelegationSuccess"))}catch(s){w(N(je(s,"General.error")))}finally{V.value=!1}}}async function st(e){if(!te.value){te.value=!0;try{const s=j(e);await W.patchDetails(i.analysis.id,{dueDate:s}),Fe(N("App.ActionRequired.deadlineSaved"))}catch(s){w(N(je(s,"General.error")))}finally{te.value=!1}}}return(e,s)=>(d(),g("div",Ua,[o("div",Fa,[o("div",Qa,[o("p",Ba,[ve(u(e.$t("App.Cockpit.evaluation"))+" ",1),Re.value?(d(),g(qe,{key:0},[ve(u(Re.value),1)],64)):k("",!0)]),o("h2",Ea,[b(Nt,{"user-id":Ie.value?.id||oe.userId,name:he.value,"icon-size":20},null,8,["user-id","name"])])]),o("button",{class:"text-gray-400 hover:text-gray-600 shrink-0",type:"button",onClick:s[0]||(s[0]=l=>e.$emit("close"))},[b(X,{icon:x(Bt),size:"20"},null,8,["icon"])])]),o("div",Oa,[o("div",Ma,[o("div",za,[b(X,{icon:x(ga),size:"16",class:"text-gray-400 shrink-0"},null,8,["icon"]),o("span",Pa,[ve(" LMRAs "),Ha,ve(" "+u(Oe.value),1)])]),oe.questions?f.value?(d(),g("div",Ga,[o("div",ja,[o("p",Ka,u(e.$t("App.Cockpit.question")),1),o("p",Ya,u(mt(f.value)),1)]),et(f.value)?(d(),g(qe,{key:0},[o("button",{type:"button",class:"w-full px-4 py-2 bg-gray-100 hover:bg-gray-200 text-gray-700 rounded-lg text-sm font-medium transition-colors flex items-center justify-center",onClick:s[1]||(s[1]=l=>E.value=!E.value)}
1,[b(X,{icon:x(qt),size:"16",class:le(["mr-2 transition-transform",{"rotate-180":E.value}])},null,8,["icon","class"]),o("span",null,u(E.value?e.$t("App.Cockpit.hideAnswers"):e.$t("App.Cockpit.showAnswers")),1)]),E.value?(d(),g("div",Za,[Z(f.value)?(d(),g("div",Ja,[o("p",Xa,u(e.$t("App.Cockpit.automaticAnswer")),1),o("p",en,u(Z(f.value)),1)])):k("",!0),He(f.value)?(d(),g("div",tn,[o("p",an,u(e.$t("App.Cockpit.followUpQuestion")),1),o("p",nn,u(He(f.value)),1),We(f.value)?(d(),g(qe,{key:0},[o("p",sn,u(e.$t("App.Cockpit.answer")),1),o("p",ln,u(We(f.value)),1)],64)):k("",!0)])):k("",!0)])):k("",!0)],64)):k("",!0),o("div",on,[o("div",null,[o("p",rn,u(e.$t("App.Cockpit.expectedAnswer")),1),o("span",un,u(Ve(pt(f.value))),1)]),o("div",null,[o("p",dn,u(e.$t("App.Cockpit.answer")),1),o("span",{class:le(["inline-block px-3 py-1 text-sm font-semibold rounded",ft(f.value)])},u(Ve(f.value.response)),3)]),o("div",null,[o("p",cn,u(e.$t("App.Cockpit.evaluationResult")),1),o("span",{class:le(["inline-block px-3 py-1 text-sm font-semibold rounded",f.value.response?"bg-green-100 text-green-800":"bg-red-100 text-red-800"])},u(f.value.response?e.$t("App.Cockpit.correct"):e.$t("App.Cockpit.incorrect")),3)]),o("div",null,[o("p",mn,u(e.$t("App.Cockpit.actionRequired")),1),o("span",{class:le(["inline-block px-3 py-1 text-sm font-semibold rounded",f.value.actionRequired?"bg-red-100 text-red-800":"bg-gray-100 text-gray-800"])},u(f.value.actionRequired?e.$t("General.yes"):e.$t("General.no")),3)]),o("div",null,[o("p",pn,u(e.$t("App.Cockpit.workStop")||"Arbeitsstopp"),1),o("span",{class:le(["inline-block px-3 py-1 text-sm font-semibold rounded",f.value.workPermit?"bg-green-100 text-green-800":"bg-red-100 text-red-800"])},u(f.value.workPermit?e.$t("General.no"):e.$t("General.yes")),3)])]),O.value?(d(),g("button",{key:1,type:"button",class:"w-full px-4 py-2.5 bg-gray-100 hover:bg-gray-200 text-gray-900 rounded-lg text-sm font-medium transition-colors flex items-center justify-center focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2",disabled:we(f.value.id),onClick:s[2]||(s[2]=l=>at(f.value))},[b(X,{icon:f.value.actionRequired?x(Bt):x(rt),size:"16",class:"mr-2"},null,8,["icon"]),ve(" "+u(f.value.actionRequired?e.$t("App.Cockpit.removeActionRequired"):e.$t("App.Cockpit.setActionRequired")),1)],8,fn)):k("",!0),f.value.actionRequired&&(be.value||Y.value)?(d(),g("div",gn,[b(X,{icon:x(rt),size:"18",class:"text-red-600 shrink-0 mt-0.5"},null,8,["icon"]),o("div",vn,[Y.value?(d(),g("p",yn,u(e.$t("App.ActionRequired.overdueDelegationSince",{date:K(f.value.delegationDueDate)})),1)):k("",!0),be.value?(d(),g("p",{key:1,class:le(Y.value?"mt-0.5":"font-semibold")},u(e.$t("App.ActionRequired.overdueDeadlineSince",{date:K(ae.value)})),3)):k("",!0)])])):k("",!0),o("section",bn,[o("div",hn,[o("h3",An,u(e.$t("App.Cockpit.supervisorNotes")),1),Pe.value.length?(d(),Le(Da,{key:0,translating:x(ct),"show-translated":x(Ke),"target-language":x(ce),onToggle:s[3]||(s[3]=l=>x(G)(Pe.value))},null,8,["translating","show-translated","target-language"])):k("",!0)]),o("div",wn,[xt(o("input",{"onUpdate:modelValue":s[4]||(s[4]=l=>ie.value=l),type:"text",placeholder:e.$t("App.Cockpit.notePlaceholder"),class:"flex-1 min-w-0 px-3 py-2.5 border border-gray-300 ring-1 ring-gray-300 rounded-lg text-sm text-gray-700 bg-white appearance-none focus:ring-2 focus:ring-blue-500 focus:border-blue-500",onKeyup:Qt(_e,["enter"])},null,40,kn),[[Ft,ie.value]]),o("button",{type:"button",class:"shrink-0 px-4 py-2.5 bg-gray-100 hover:bg-gray-200 text-gray-900 rounded-lg text-sm font-medium transition-colors disabled:opacity-50",disabled:z.value||!ie.value.trim().length,onClick:_e},u(e.$t("App.Cockpit.add")),9,_n)]),o("div",xn,[Me.value.length?(d(!0),g(qe,{key:0},it(Me.value,l=>(d(),g("div",{key:l.id,class:le(["border rounded-lg",l.kind==="log"?yt(l.action):vt(l.note)])},[l.kind==="log"?(d(),g("div",qn,[b(X,{icon:l.action==="set"?x(rt):x(va),size:"16",class:"shrink-0"},null,8,["icon"]),o("span",Nn,u(l.text),1),o("span",Dn,u(bt(l)),1)])):(d(),g("div",$n,[o("p",Cn,u(x(ye)(l.id,l.note.note)),1),tt(l.note)?(d(),g("p",In,u(tt(l.note)),1)):k("",!0)]))],2))),128)):(d(),g("p",Rn,u(e.$t("App.Cockpit.noNotes")),1))]),ze.value.length?(d(),g("div",Sn,[o("p",Vn,u(e.$t("App.Cockpit.employeeNotes")),1),o("p",Tn,u(e.$t("App.Cockpit.employeeNotesHint")),1),o("div",Ln,[(d(!0),g(qe,null,it(ze.value,l=>(d(),g("div",{key:l.id,class:"border rounded-lg bg-amber-50 border-amber-300 shadow-sm p-3"}
1,[o("p",Un,u(x(ye)(l.id,l.text)),1),o("p",Fn,u(ht(l)),1)]))),128))])])):k("",!0)]),Be.value.length?(d(),g("div",Qn,[o("p",Bn,u(e.$t("App.Cockpit.imageAttachments")),1),o("div",En,[(d(!0),g(qe,null,it(Be.value,l=>(d(),Le(Sa,{key:l.id,attachment:l,class:"h-20 w-20 rounded"},null,8,["attachment"]))),128))])])):k("",!0),f.value.actionRequired?(d(),g("section",On,[o("h3",Mn,u(e.$t("App.ActionRequired.deadline")||"Frist"),1),o("p",zn,u(e.$t("App.ActionRequired.deadlineHint")),1),b(dt,{"model-value":ae.value,label:e.$t("App.ActionRequired.deadline")||"Frist",density:"compact","onUpdate:modelValue":st},null,8,["model-value","label"])])):k("",!0),f.value.actionRequired?(d(),g("section",Pn,[o("h3",Hn,u(e.$t("App.ActionRequired.delegation")||"Delegation"),1),o("p",Wn,[o("span",Gn,u(e.$t("App.ActionRequired.delegatedTo")||"Delegiert an")+":",1),Q.value?(d(),Le(Nt,{key:0,class:"ml-1 font-semibold text-gray-900","user-id":f.value.delegatedToUserId,name:Q.value},null,8,["user-id","name"])):(d(),g("span",jn,u(e.$t("App.ActionRequired.notDelegated")||"Nicht delegiert"),1))]),f.value.delegationDueDate?(d(),g("p",Kn,[o("span",Yn,u(e.$t("App.ActionRequired.delegationDeadline")||"Rückmeldefrist")+":",1),o("span",{class:le(["ml-1 font-semibold",Y.value?"text-red-700":"text-gray-900"])},u(K(f.value.delegationDueDate)),3),Y.value?(d(),g("span",Zn,"("+u(e.$t("App.ActionRequired.overdue"))+")",1)):k("",!0)])):k("",!0),o("div",Jn,[o("div",Xn,[xt(o("select",{"onUpdate:modelValue":s[5]||(s[5]=l=>U.value=l),class:"w-full pl-3 pr-9 py-2.5 border border-gray-300 ring-1 ring-gray-300 rounded-lg text-sm text-gray-700 bg-white appearance-none focus:ring-2 focus:ring-blue-500 focus:border-blue-500"},[o("option",es,u(e.$t("App.ActionRequired.delegateToUser")||"Nutzer auswählen"),1),(d(!0),g(qe,null,it(Ce.value,l=>(d(),g("option",{key:l.id,value:l.id},u(l.name),9,ts))),128))],512),[[ia,U.value]]),b(X,{icon:x(qt),size:"18",class:"pointer-events-none absolute right-3 top-1/2 -translate-y-1/2 text-gray-400"},null,8,["icon"])]),xt(o("input",{"onUpdate:modelValue":s[6]||(s[6]=l=>S.value=l),type:"text",disabled:!!U.value,placeholder:e.$t("App.ActionRequired.delegateToFreeText")||"Oder Name eingeben",class:"w-full px-3 py-2.5 border border-gray-300 ring-1 ring-gray-300 rounded-lg text-sm text-gray-700 bg-white appearance-none focus:ring-2 focus:ring-blue-500 focus:border-blue-500 disabled:opacity-50 disabled:bg-gray-100",onKeyup:Qt(pe,["enter"])},null,40,as),[[Ft,S.value]]),b(dt,{modelValue:F.value,"onUpdate:modelValue":s[7]||(s[7]=l=>F.value=l),label:e.$t("App.ActionRequired.delegationDeadline")||"Rückmeldefrist",density:"compact"},null,8,["modelValue","label"])]),o("div",ns,[o("button",{type:"button",class:"flex-1 px-4 py-2.5 bg-gray-100 hover:bg-gray-200 text-gray-900 rounded-lg text-sm font-medium transition-colors disabled:opacity-50",disabled:V.value||!U.value&&!S.value.trim().length,onClick:pe},u(e.$t("App.ActionRequired.delegate")||"Delegieren"),9,ss),f.value.delegatedTo||f.value.delegatedToUserId?(d(),g("button",{key:0,type:"button",class:"px-4 py-2.5 bg-white hover:bg-gray-100 text-gray-700 border border-gray-300 rounded-lg text-sm font-medium transition-colors disabled:opacity-50",disabled:V.value,onClick:xe},u(e.$t("App.ActionRequired.removeDelegation")||"Delegierung aufheben"),9,ls)):k("",!0)])])):k("",!0)])):(d(),g("div",os,[b(X,{icon:x(Et),class:"animate-spin text-gray-400"},null,8,["icon"])])):(d(),g("div",Wa,[b(X,{icon:x(Et),class:"animate-spin text-gray-400"},null,8,["icon"])]))])]),b($a,{modelValue:M.value,"onUpdate:modelValue":s[8]||(s[8]=l=>M.value=l),mode:P.value,loading:H.value?we(H.value):!1,onConfirm:nt},null,8,["modelValue","mode","loading"])]))}}),rs=oe=>(ca("data-v-ee0fb29f"),oe=oe(),ma(),oe),us={class:"action-required-main flex-1 min-w-0 flex flex-col gap-4"},ds={class:"flex mb-2 items-center gap-2"},cs={class:"text-sm uppercase"},ms={key:0,class:"flex flex-col md:flex-row flex-wrap gap-4 items-start md:items-end"},ps={class:"w-full md:w-44"},fs={class:"w-full md:w-44"},gs=rs(()=>o("div",{class:"grow"},null,-1)),vs={key:0,class:"flex justify-center py-3"},ys={key:1,class:"text-center py-2 text-xs text-gray-400"},bs={key:0},hs={key:1},As={key:0},ws={key:1},ks={key:0},_s={key:1},xs={key:0},qs={key:1},Ns={key:1},Ds={key:0,class:"action-required-detail shrink-0 bg-white border-l border-gray-200 overflow-hidden"},$s="safeos.actionRequired.notesVisible",Cs="safeos.actionRequired.historyVisible",Is="safeos.actionRequired.fullHistoryVisible",Rs=Dt({__name:"ActionRequired",setup(oe){const Ne=jt(),i=Kt(),L=Yt(),q=ya(),W=Wt(),Ue=ba(),R=ha(),{t:w,te:Fe,locale:N}=Gt();
1function ee(t,a){if(typeof window>"u")return a;try{const n=window.localStorage.getItem(t);if(n==="0")return!1;if(n==="1")return!0}catch{}return a}let De=ee($s,!0),ct=ee(Cs,!0),Ke=ee(Is,!1);const ce=y(!1),ye=y(!1),G=y([]),$e=y(!1),B=y(null);let E=null;const ie=R.query?.search||"",z=y(ie),Qe=(()=>{const t=R.query?.status?.toLowerCase();return t==="verified"?"closed":t==="not_verified"?"active":t==="active"||t==="in_progress"||t==="verification_open"||t==="closed"||t==="all"?t:"all"})(),O=y(Qe),M=y([]),P=y([]),H=y(void 0),U=y(void 0),S=y(null),V=y(null),F=y([]),te=y(null),j=y(R.query?.delegatedToMe==="1"),K=y(""),re=y(null),ue=y(!1),ae=y(!1),be=y([]),Y=y(null),T=y(null),Ce=y([]),Q=A(()=>{const t=T.value;return t&&G.value.find(a=>a.id===t)||null}),ne=A(()=>{const t=Q.value;if(!t)return null;const a=e[t.analysisId]||[],n=a.length?a.some(r=>!r.response):t.status==="active"||t.status==="in_progress"||t.status==="verification_open",p=a.length?a.some(r=>!!r.actionRequired):t.status!=="closed",h=a.length?ut(a):pe[t.analysisId]?.notesCount??0;return{id:t.analysisId,workPermit:!n,noteAvailable:h>0,countNotes:h,wrongResponse:n,actionRequired:p,lmraNumber:t.lmraNumber??void 0}}),f=se({});C(Y,async t=>{if(Ce.value=T.value?[T.value]:[],t)try{i.fetchDetails(t),await J(t)||await c(t)}catch{}}),C(Q,async t=>{if(t)try{await _(t.analysisId,t.id)}catch{}});const Be=y(null),he=y(null);let Ie=null;function Re(){he.value&&(he.value.classList.remove("manual-selected"),he.value=null)}function Ee(t){return t===null?null:(Be.value?.$el||document).querySelectorAll("tbody > tr.v-data-table__tr")?.[t]||null}function Ye(t,a){try{const n=a?.item?.raw?.id??a?.item?.id??a?.raw?.id??a?.internalItem?.value??a?.item?.value??null,p=a?.item?.raw?.analysisId??a?.item?.analysisId??a?.raw?.analysisId??null;n&&(T.value=String(n)),p&&(Y.value=String(p));const h=a?.index??null;let r=Ee(h);r||(r=t?.target?.closest("tr.v-data-table__tr")??null),r&&(Re(),r.classList.add("manual-selected"),he.value=r,Ie=h)}catch{}}function Ze(){Y.value=null,T.value=null,Re(),Ie=null}let Oe=null;function Je(){const t=R.query?.questionId||null;if(!t||Oe===t)return;const a=G.value.find(n=>n.id===t);a&&(Oe=t,T.value=a.id,Y.value=a.analysisId)}async function Me(t){const{analysisId:a}=t;Q.value?.analysisId===a&&await ot()}function ze(t){const a=G.value.find(n=>n.analysisId===t.analysisId&&n.id===t.questionId);if(a&&(a.delegatedToName=t.delegatedTo,a.delegatedToId=t.delegatedToId,t.delegationDueDate!==void 0)){a.delegationDueDate=t.delegationDueDate;const n=t.delegationDueDate||a.dueDate||null;a.overdue=!!n&&new Date(n).getTime()<Date.now()&&a.status!=="closed"}}function Pe(t){return t?t.id?String(t.id):t.item?.id?String(t.item.id):t.raw?.id?String(t.raw.id):t.value?String(t.value):t.internalItem?.value?String(t.internalItem.value):null:null}function Ae(t){const a=Pe(t);return a&&a===(T.value||"")?"row-selected":""}function Se(t){const a=Pe(t),n=a&&a===(T.value||""),h=!!(t?.item??t?.raw??t)?.overdue,r=[n?"row-selected":"",h?"row-overdue":""].filter(Boolean).join(" ");return{...r?{class:r}:{},"data-selected":n?"true":"false"}}function de(t){if(!t)return null;const a=(t.key||"").toString().trim(),n=(t.name||"").toString().trim();if(a){const p=`App.ActionRequired.categories.${a}`;if(Fe(p)){const h=w(p);if(h&&h.trim().length)return h}}return n.length?n:null}const mt=[{label:w("General.all")||"Alle",value:"all"},{label:w("General.open"),value:"active"},{label:w("App.ActionRequired.inProgress")||"In Bearbeitung",value:"in_progress"},{label:w("App.ActionRequired.verificationOpen")||"Verifizierung offen",value:"verification_open"},{label:w("App.Cockpit.completed"),value:"closed"}],Xe=Ca(),et=Ia(),Z=A(()=>q.showDeletedFilterElements),He=A(()=>(Xe.catalogs||[]).map(t=>({label:t.name,value:t.id}))),We=A(()=>(et.campaigns||[]).map(t=>({label:t.name,value:t.id}))),pt=A(()=>(i.categories||[]).sort((t,a)=>t.sortOrder-a.sortOrder).map(t=>({label:de(t)||t.name,value:t.id}))),Ve=A(()=>q.employeeSortBy),ft=A(()=>Aa((L.users||[]).slice(),Ve.value,N.value).map(t=>({id:t.id,name:Ot(t,Ve.value)}))),tt=A(()=>(L.workAreas||[]).map(t=>({id:t.id,name:t.name}))),gt=A(()=>(L.groups||[]).map(t=>({label:t.name,value:t.id}))),{options:vt,ensureLevels:yt}=Va();async function Ge(){await Promise.all([L.fetchUsers({includeArchived:Z.value}),L.fetchWorkAreas({includeArchived:Z.value}),L.fetchGroups(),Xe.fetchCatalogs({includeArchived:Z.value}),et.fetchCampaigns({includeArchived:Z.value}),yt().catch(()=>{})])}function bt(t){return i.detailsByAnalysis[t]}const ht=[{title:w("App.ActionRequired.number")||"HB-Nummer",key:"number",align:"start"},{title:w("App.ActionRequired.lmraNumberColumn")||"LMRA Nummer",key:"lmraNumber",align:"start"},{title:w("App.ActionRequired.lmraDate")||"LMRA Datum",key:"lmraDate",align:"start"},{title:w("App.ActionRequired.setAt"),key:"setAt",align:"start"},{title:w("App.User.UserList.workArea")||"Arbeitsort",key:"workAreaName",align:"start"},{title:w("App.ActionRequired.status"),key:"status",align:"start"},{title:w("App.ActionRequired.category"),key:"category",align:"start"},{title:w("App.ActionRequired.employee"),key:"employeeName",align:"start"},{title:w("App.ActionRequired.lastEditAt"),key:"lastEditAt",align:"start"},{title:w("App.ActionRequired.completedAt"),key:"completedAt",align:"start"},{title:w("App.ActionRequired.delegatedTo"),key:"delegatedToName",align:"start"},{title:w("App.ActionRequired.deadline")||"Frist",key:"deadline",align:"start",sortable:!1}],we=A(()=>{let t=G.value;S.value&&(t=t.filter(n=>n.categoryId===S.value));const a=(K.value||"").trim().toLowerCase();return a.length&&(t=t.filter(n=>(n.delegatedToName||"").toLowerCase().includes(a))),t});function me(t,a){return a==="setAt"||a==="completedAt"||a==="lastEditAt"||a==="lmraDate"?t[a]?new Date(t[a]).getTime():0:a==="employeeName"?(kt(t)||"").toLowerCase():a==="status"?{active:0,in_progress:1,verification_open:2,closed:3}[t.status]:(t[a]??"").toString().toLowerCase()}const at=A(()=>{if(!be.value?.length)return we.value;const t=[...we.value];return t.sort((a,n)=>{for(const p of be.value){const h=me(a,p.key),r=me(n,p.key);if(h<r)return p.order==="asc"?-1:1;if(h>r)return p.order==="asc"?1:-1}return 0}),t});function nt(t){return t.delegationDueDate||t.dueDate||null}function ke(t){try{const a=new Date(t);if(isNaN(a.getTime()))return t;const n=String(a.getDate()).padStart(2,"0"),p=String(a.getMonth()+1).padStart(2,"0"),h=a.getFullYear(),r=String(a.getHours()).padStart(2,"0"),v=String(a.getMinutes()).padStart(2,"0");return`${n}.${p}.${h} ${r}:${v}`}catch{return t}}function _e(t){if(!t)return;const a=t.getFullYear(),n=String(t.getMonth()+1).padStart(2,"0"),p=String(t.getDate()).padStart(2,"0");return`${a}-${n}-${p}`}const pe=se({}),xe=se({}),st=se({}),e=se({}),s=se({}),l=se({}),m=se({});se({});async function c(t){t in xe||(xe[t]=Ke);const n=(await i.fetchHistoryForAnalysis(t)||[]).filter(r=>!r.analysisQuestionId),p=new Set,h=[];for(const r of n){const v=`${r.status}_${r.createdAt}_${r.actor||""}`;p.has(v)||(p.add(v),h.push(r))}xe[t]?st[t]=h.sort((r,v)=>new Date(v.createdAt).getTime()-new Date(r.createdAt).getTime()):st[t]=void 0}async function _(t,a,n=!1){await i.fetchHistoryForAnalysis(t,{questionId:a,includeAnalysisWide:n})}function D(t){const a=e[t]||[],n=ut(a),p=a.reduce((h,r)=>h+aa(r).length,0);pe[t]={notesCount:n,attachmentsCount:p}}async function J(t){try{await $t();const a=await Ne.fetchCockpitAnalysisQuestions(t);await fe(t,a),e[t]=a,t in xe||(xe[t]=Ke);for(const n of a)n.id in m||(m[n.id]=""),n.id in l||(l[n.id]=!1),n.id in s||(s[n.id]=ct),n.id in f||(f[n.id]=De);D(t);for(const n of a)await _(t,n.id);return await c(t),!0}catch(a){console.error("[ActionRequired] loadAnalysisQuestions failed",{analysisId:t,error:a})}return!1}
1async function fe(t,a){const n=i.categories||[];for(const p of a||[]){const h=p.notes||[];for(const r of h)if(r&&!r.category&&r.categoryId){const v=n.find($=>$.id===r.categoryId);if(v){const $=de(v)||v.name;r.category={id:v.id,key:v.key,name:$}}}}}async function $t(){if(!Array.isArray(i.categories)||!i.categories.length)try{await i.fetchCategories()}catch{}}function Ct(){const t=i.categories||[];Object.keys(e).forEach(n=>{const p=e[n]||[];for(const h of p){const r=h.notes||[];for(const v of r)if(v&&!v.category&&v.categoryId){const $=t.find(Te=>Te.id===v.categoryId);if($){const Te=de($)||$.name;v.category={id:$.id,key:$.key,name:Te}}}}});const a=i.detailsByAnalysis||{};Object.keys(a).forEach(n=>{const p=a[n];if(p&&p.categoryId&&!p.category){const h=t.find(r=>r.id===p.categoryId);if(h){const r=de(h)||h.name;p.category={id:h.id,key:h.key,name:r}}}})}C(at,t=>{T.value&&!t.some(a=>a.id===T.value)&&(T.value=null,Y.value=null),pa(()=>{if(Re(),Ie!==null){const a=Ee(Ie);a&&(a.classList.add("manual-selected"),he.value=a)}})});const At=y(1),lt=y(25),It=A(()=>i.total),Rt=A(()=>G.value.length<(It.value||0));C(B,t=>{E?.disconnect(),E=null,t&&(E=new IntersectionObserver(a=>{a[0]?.isIntersecting&&Jt()},{rootMargin:"200px",threshold:0}),E.observe(t))}),ra(()=>{E?.disconnect()});function St(){const t=(w("General.open")||"Aktiv").toLowerCase(),a=(w("App.ActionRequired.inProgress")||"In Bearbeitung").toLowerCase(),n=(w("App.ActionRequired.verificationOpen")||"Verifizierung offen").toLowerCase(),p=(w("App.Cockpit.completed")||"Abgeschlossen").toLowerCase(),h=[];for(const r of i.list||[]){const v=(r.status||"").trim().toLowerCase();let $;v===n||v.includes("verifizierung offen")||v.includes("verification open")||v.includes("verification_open")?$="verification_open":v===p||v.includes("abgeschlossen")||v.includes("geschlossen")||v.includes("closed")||v.includes("completed")?$="closed":v===a||v.includes("bearbeitung")||v.includes("progress")?$="in_progress":v===t||v.includes("aktiv")||v.includes("active")?$="active":v.includes("verifiziert")||v.includes("verified")?$="closed":(v.includes("nicht verifiziert")||v.includes("not verified")||v.includes("not_verified")||v.includes("nicht_verifiziert"),$="active");const Te=r.questionId||null,na=bt(r.analysisId),sa=r.lmraNumber??na?.number??null;h.push({id:Te?String(Te):`${r.analysisId}-${r.number||r.dateSet||Math.random().toString(36).slice(2)}`,analysisId:r.analysisId,number:r.number||null,lmraDate:r.analysisCompletedAt||null,employeeId:r.employeeId||r.userId||null,employeeName:r.employee||null,status:$,setAt:r.dateSet||null,completedAt:r.closedAt||null,workAreaName:r.workAreaName||null,category:de(r.category)||r.category?.name||null,categoryId:r.category?.id||null,delegatedToId:null,delegatedToName:r.delegatedTo||null,lmraNumber:sa,lastEditAt:r.lastEditedAt||null,dueDate:r.dueDate??null,delegationDueDate:r.delegationDueDate??null,overdue:!!r.overdue})}return h}async function Jt(){if(!Rt.value||$e.value||ce.value)return;$e.value=!0;const t=At.value+1;try{await i.fetchList({page:t,pageSize:lt.value,status:O.value??"all",categoryId:S.value||void 0,delegatedTo:K.value||void 0,userId:re.value||void 0,onlyMySupervisions:ae.value&&!!ue.value,search:z.value||void 0,from:_e(H.value),to:_e(U.value),workAreaId:V.value||void 0,groupId:F.value?.length?F.value:void 0,delegatedToUserId:j.value?Ue.currentUserId??void 0:void 0,riskLevel:te.value||void 0,catalogId:M.value?.length?M.value:void 0,campaignId:P.value?.length?P.value:void 0,includeArchived:Z.value}),At.value=t,G.value=[...G.value,...St()],Vt().catch(()=>{}),Tt().catch(()=>{})}finally{$e.value=!1}}async function ot(){ce.value=!0,At.value=1;try{const t=O.value??"all",a=_e(H.value),n=_e(U.value);await i.fetchList({page:1,pageSize:lt.value,status:t,categoryId:S.value||void 0,delegatedTo:K.value||void 0,userId:re.value||void 0,onlyMySupervisions:ae.value&&!!ue.value,search:z.value||void 0,from:a,to:n,workAreaId:V.value||void 0,groupId:F.value?.length?F.value:void 0,delegatedToUserId:j.value?Ue.currentUserId??void 0:void 0,riskLevel:te.value||void 0,catalogId:M.value?.length?M.value:void 0,campaignId:P.value?.length?P.value:void 0,includeArchived:Z.value}),G.value=St(),Je(),Xt();for(const p of i.list)pe[p.analysisId]={notesCount:(typeof p.countNotes=="number"?p.countNotes:p.notesCount)??null,attachmentsCount:p.attachmentsCount??null};
1Vt().catch(()=>{}),Tt().catch(()=>{})}finally{ce.value=!1}}function Xt(){Object.keys(pe).forEach(t=>delete pe[t])}async function Vt(){const t=(i.list||[]).map(a=>a.analysisId);await $t();for(const a of t)try{if(!e[a]){const n=await Ne.fetchCockpitAnalysisQuestions(a);await fe(a,n),e[a]=n}D(a)}catch{}}async function Tt(){const t=i.list||[];for(const a of t)if(!!!a?.category)try{await i.fetchDetails(a.analysisId)}catch{}}ua(async()=>{ce.value=!0;try{try{const t=await W.getLicenseKey();ae.value=t==="enterprise"}catch{ae.value=!1}ae.value||(ue.value=!1);try{await Promise.all([i.fetchCategories(),q.fetchPrivacySettings(),q.fetchUserPreferences()]),await Ge()}catch{}await ot(),Ct()}finally{ce.value=!1}}),C(()=>R.query.status,t=>{const a=t?.toLowerCase();if(a==="verified"){O.value="closed";return}if(a==="not_verified"){O.value="active";return}(a==="active"||a==="in_progress"||a==="verification_open"||a==="closed"||a==="all")&&(O.value=a)}),C(()=>R.query.search,t=>{z.value=t||""});function ea(t,a=300){let n;return(...p)=>{clearTimeout(n),n=setTimeout(()=>t(...p),a)}}const wt=ea(ot,250);C([O,S,re,ue],()=>{wt()}),C([z,K,H,U],()=>{wt()}),C(Z,async()=>{try{await Ge()}catch{}ot()}),C([M,P,V,F,te,j],()=>{wt()}),C(()=>R.query.delegatedToMe,t=>{const a=t==="1";a!==j.value&&(j.value=a)}),C(()=>R.query.questionId,()=>{Oe=null,Je()}),C(()=>i.categories,t=>{Array.isArray(t)&&t.length&&Ct()});function ta(){z.value="",O.value="all",S.value=null,K.value="",re.value=null,ue.value=!1,M.value=[],P.value=[],H.value=void 0,U.value=void 0,V.value=null,F.value=[],te.value=null,j.value=!1}Zt();function aa(t){const a=t.data?.attachments||[],n=t.data?.onWrong?.attachments||[],p=t.data?.onWrong?.onWrong?.attachments||[];return[...a,...n,...p]}function Lt(t){return t.employeeId?t.employeeId:Ut(t.employeeName)?.id||null}function kt(t){const a=(t.employeeId?L.getUserById(t.employeeId):null)||Ut(t.employeeName);return a?Ot(a,Ve.value):t.employeeName||null}function Ut(t){const a=(t||"").trim();if(!a)return null;const n=_t(a);return(L.users||[]).find(p=>{const h=_t(`${p.firstName||""} ${p.lastName||""}`),r=_t(`${p.lastName||""} ${p.firstName||""}`);return n===h||n===r})||null}function _t(t){return t.replace(/\s+/g," ").trim().toLocaleLowerCase(N.value||void 0)}return(t,a)=>(d(),g("div",{class:le(["action-required-shell flex",{"panel-open":!!Q.value}])},[o("div",us,[b(zt,{class:"p-4 sticky top-0 z-20 bg-white shadow-sm","data-tour":"actionrequired-filters"},{default:I(()=>[o("div",ds,[o("span",cs,u(t.$t("App.ActionRequired.filters")||"Filter"),1),b(Mt,{variant:"text",density:"comfortable",size:"small",onClick:a[0]||(a[0]=n=>ye.value=!ye.value)},{default:I(()=>[b(X,{icon:ye.value?x(qt):x(wa)},null,8,["icon"])]),_:1})]),b(ka,null,{default:I(()=>[ye.value?k("",!0):(d(),g("div",ms,[b(Ht,{modelValue:z.value,"onUpdate:modelValue":a[1]||(a[1]=n=>z.value=n),label:t.$t("App.ActionRequired.search"),clearable:"",class:"w-full md:w-72"},null,8,["modelValue","label"]),b(ge,{modelValue:O.value,"onUpdate:modelValue":a[2]||(a[2]=n=>O.value=n),items:mt,"item-title":"label","item-value":"value",label:t.$t("App.ActionRequired.status"),clearable:"",class:"w-full md:w-56"},null,8,["modelValue","label"]),b(ge,{modelValue:M.value,"onUpdate:modelValue":a[3]||(a[3]=n=>M.value=n),items:He.value,"item-title":"label","item-value":"value",label:t.$t("App.ActionRequired.filterCatalog")||"Katalog",multiple:"",chips:"",clearable:"",class:"w-full md:w-56 action-required-filter-multi-select"},null,8,["modelValue","items","label"]),b(ge,{modelValue:P.value,"onUpdate:modelValue":a[4]||(a[4]=n=>P.value=n),items:We.value,"item-title":"label","item-value":"value",label:t.$t("App.ActionRequired.filterCampaign")||"Kampagne",multiple:"",chips:"",clearable:"",class:"w-full md:w-56 action-required-filter-multi-select"},null,8,["modelValue","items","label"]),o("div",ps,[b(dt,{modelValue:H.value,"onUpdate:modelValue":a[5]||(a[5]=n=>H.value=n),label:t.$t("General.from")},null,8,["modelValue","label"])]),o("div",fs,[b(dt,{modelValue:U.value,"onUpdate:modelValue":a[6]||(a[6]=n=>U.value=n),label:t.$t("General.to")},null,8,["modelValue","label"])]),b(ge,{modelValue:V.value,"onUpdate:modelValue":a[7]||(a[7]=n=>
1V.value=n),items:tt.value,"item-title":"name","item-value":"id",label:t.$t("App.User.UserList.workArea")||"Arbeitsort",clearable:"",class:"w-full md:w-56"},null,8,["modelValue","items","label"]),b(ge,{modelValue:F.value,"onUpdate:modelValue":a[8]||(a[8]=n=>F.value=n),items:gt.value,"item-title":"label","item-value":"value",label:t.$t("App.ActionRequired.filterGroup")||"Gruppen",multiple:"",chips:"",clearable:"",class:"w-full md:w-56 action-required-filter-multi-select"},null,8,["modelValue","items","label"]),b(ge,{modelValue:te.value,"onUpdate:modelValue":a[9]||(a[9]=n=>te.value=n),items:x(vt),"item-title":"label","item-value":"value",label:t.$t("App.ActionRequired.riskLevel"),clearable:"",class:"w-full md:w-56"},null,8,["modelValue","items","label"]),b(ge,{modelValue:S.value,"onUpdate:modelValue":a[10]||(a[10]=n=>S.value=n),items:pt.value,"item-title":"label","item-value":"value",label:t.$t("App.ActionRequired.category"),clearable:"",class:"w-full md:w-56"},null,8,["modelValue","items","label"]),b(Ht,{modelValue:K.value,"onUpdate:modelValue":a[11]||(a[11]=n=>K.value=n),label:t.$t("App.ActionRequired.delegatedTo"),clearable:"",class:"w-full md:w-56"},null,8,["modelValue","label"]),b(ge,{modelValue:re.value,"onUpdate:modelValue":a[12]||(a[12]=n=>re.value=n),items:ft.value,"item-title":"name","item-value":"id",label:t.$t("App.ActionRequired.employee"),clearable:"",class:"w-full md:w-56"},null,8,["modelValue","items","label"]),b(Pt,{modelValue:j.value,"onUpdate:modelValue":a[13]||(a[13]=n=>j.value=n),label:t.$t("App.ActionRequired.delegatedToMe"),class:"mt-0"},null,8,["modelValue","label"]),ae.value?(d(),Le(Pt,{key:0,modelValue:ue.value,"onUpdate:modelValue":a[14]||(a[14]=n=>ue.value=n),label:t.$t("App.ActionRequired.mySupervision"),class:"mt-0"},null,8,["modelValue","label"])):k("",!0),gs,b(Mt,{variant:"outlined",density:"default",size:"large",onClick:ta},{default:I(()=>[ve(u(t.$t("General.reset")??"Zurücksetzen"),1)]),_:1})]))]),_:1})]),_:1}),b(zt,{"data-tour":"actionrequired-list"},{default:I(()=>[b(Ta,{ref_key:"tableRef",ref:Be,headers:ht,items:at.value,"items-per-page":lt.value,"onUpdate:itemsPerPage":a[15]||(a[15]=n=>lt.value=n),"sort-by":be.value,"onUpdate:sortBy":a[16]||(a[16]=n=>be.value=n),"items-length":It.value,"item-value":"id",loading:ce.value,hover:!0,"item-class":Ae,"item-props":Se,selected:Ce.value,"onUpdate:selected":a[17]||(a[17]=n=>Ce.value=n),"select-strategy":"single","no-data-text":t.$t("App.ActionRequired.tableNoDataText"),class:"elevation-1","onClick:row":Ye,"hide-default-footer":""},{loader:I(()=>[b(xa,{indeterminate:"",color:"primary",height:"3"})]),bottom:I(()=>[o("div",{ref_key:"infiniteScrollSentinel",ref:B,class:"h-1"},null,512),$e.value?(d(),g("div",vs,[b(_a,{indeterminate:"",size:"24",color:"primary"})])):!Rt.value&&G.value.length>0?(d(),g("div",ys,u(t.$t("General.allLoaded")||"Alle Einträge geladen"),1)):k("",!0)]),"item.employeeName":I(({item:n})=>[b(Nt,{"user-id":Lt(n),name:kt(n)},null,8,["user-id","name"])]),"item.status":I(({item:n})=>[b(La,{color:n.status==="active"?"error":n.status==="in_progress"?"warning":n.status==="verification_open"?"info":"success",size:"small"},{default:I(()=>[ve(u(n.status==="active"?t.$t("General.open")||"Offen":n.status==="in_progress"?t.$t("App.ActionRequired.inProgress")||"In Bearbeitung":n.status==="verification_open"?t.$t("App.ActionRequired.verificationOpen")||"Verifizierung offen":t.$t("App.Cockpit.completed")||"Abgeschlossen"),1)]),_:2},1032,["color"])]),"item.lmraDate":I(({item:n})=>[n.lmraDate?(d(),g("span",bs,u(ke(n.lmraDate)),1)):(d(),g("span",hs,"—"))]),"item.setAt":I(({item:n})=>[n.setAt?(d(),g("span",As,u(ke(n.setAt)),1)):(d(),g("span",ws,"—"))]),"item.completedAt":I(({item:n})=>[n.completedAt?(d(),g("span",ks,u(ke(n.completedAt)),1)):(d(),g("span",_s,"—"))]),"item.lastEditAt":I(({item:n})=>[n.lastEditAt?(d(),g("span",xs,u(ke(n.lastEditAt)),1)):(d(),g("span",qs,"—"))]),"item.deadline":I(({item:n})=>[nt(n)?(d(),g("span",{key:0,class:le(["inline-flex items-center gap-1",n.overdue?"text-red-600 font-semibold":""])},[n.overdue?(d(),Le(X,{key:0,size:"16",icon:x(rt)},null,8,["icon"])):k("",!0),ve(" "+u(ke(nt(n))),1)],2)):(d(),g("span",Ns,"—"))]),_:1},8,["items","items-per-page","sort-by","items-length","loading","selected","no-data-text"])]),_:1})]),b(da,{name:"detail-side"},{default:I(()=>[ne.value?(d(),g("aside",Ds,[b(is,{analysis:ne.value,"user-id":Q.value&&Lt(Q.value)||"","employee-name":Q.value&&kt(Q.value)||"","evaluation-date":Q.value?.lmraDate||null,index:0,questions:Q.value?e[Q.value.analysisId]:void 0,"initial-question-id":T.value??void 0,"can-view-action-required-detail
1s":!0,onClose:Ze,onQuestionsCountChanged:Me,onDelegationChanged:ze},null,8,["analysis","user-id","employee-name","evaluation-date","questions","initial-question-id"])])):k("",!0)]),_:1})],2))}}),ll=qa(Rs,[["__scopeId","data-v-ee0fb29f"]]);export{ll 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.