PageSourceSearch

https://portal.brisaakademi.com.tr/assets/bgtglj5u.js

js brisaakademi.com.tr collected 2026-10-02 01:12:46 UTC 9,410 bytes, 1 lines download raw bytes

1import{m as d,k as v}from"./BSYLsQ-1.js";import{kf as E,ke as $,kj as j,k6 as F,ey as x,d0 as z,dE as K,k7 as se,k1 as O,fB as w,hs as de,bQ as le,e8 as ue,fX as ce,ew as me}from"./C1VBpTXZ.js";import{u as W}from"./B40vA0qN.js";import{D as pe}from"./CnBOezS_.js";import{C as ye}from"./QWdKJGoJ.js";import{D as T}from"./DjTmhRL5.js";import{G}from"./jNE8QrUl.js";import"./DlPWDibz.js";import"./DjlRatrT.js";import"./SFk0Fnst.js";import"./BY0R6b8G.js";import"./BDV7tMia.js";import"./CVcd3GKi.js";import"./BK884DBU.js";import"./CrIbqNMQ.js";import"./Cvvv2JMI.js";import"./DbSJdHCo.js";import"./CAn6CeTS.js";const fe=({open:o,onClose:C,onSubmit:f,isLoading:a})=>{const{t:r}=E("IzinTipi"),{t:s}=E("Shared"),{showError:D}=$(),{data:i}=j(),{data:p,isLoading:h}=F({queryKey:["languages"],queryFn:()=>z.getAll(),staleTime:x.STATIC_DATA}),{data:u,isLoading:A}=F({queryKey:["members-selectbox",i==null?void 0:i.company_Id],queryFn:()=>K.getAllBasicForSelectbox({companyId:i==null?void 0:i.company_Id,isActive:!0}),enabled:!!(i!=null&&i.company_Id),staleTime:x.STATIC_DATA}),g=(p==null?void 0:p.data)??[],I=d.useMemo(()=>{const n=u==null?void 0:u.data;return n?(Array.isArray(n)?n:n.items??[]).map(b=>{const L=b.surname??"",M=b.userCode??"";return{label:`${b.name}${L?` ${L}`:""}${M?` (${M})`:""}`.trim(),value:b.id}}):[]},[u==null?void 0:u.data]),l=d.useMemo(()=>({fields:[{type:"select",name:"languageId",label:r("Dil"),placeholder:s("Select"),required:!0,options:g.filter(n=>n.name).map(n=>({label:n.name,value:n.id})),loading:h},{type:"text",name:"name",label:r("Name"),placeholder:r("EnterName"),required:!0},{type:"select",name:"reserveSupervisorId",label:r("ReserveSupervisor"),placeholder:r("SelectReserveSupervisor"),required:!0,options:I,loading:A},{type:"checkbox",name:"isDeductFromAnnualLeave",label:r("DeductFromAnnualLeave"),required:!1}],modal:{title:r("Create"),description:r("CreateDescription"),confirmText:s(a?"Saving":"Save"),cancelText:r("Cancel")}}),[r,s,a,g,h,I,A]),S=n=>{if(!a)try{const c={name:String(n.name)||"",isDeductFromAnnualLeave:!!n.isDeductFromAnnualLeave,reserveSupervisorId:Number(n.reserveSupervisorId)||void 0,languageId:Number(n.languageId)||0,isActive:!0};f(c)}catch(c){console.error("Form submission error:",c),D(c,"UnknownError")}},y=d.useMemo(()=>({}),[]);return v.jsx(G,{schema:l,onSubmit:S,open:o,onClose:C,isLoading:a,initialValues:y})},ve=({onClose:o,onSubmit:C,isLoading:f,item:a})=>{const{t:r}=E("IzinTipi"),{t:s}=E("Shared"),{showError:D}=$(),{data:i}=j(),{data:p,isLoading:h}=F({queryKey:["members-selectbox",i==null?void 0:i.company_Id],queryFn:()=>K.getAllBasicForSelectbox({companyId:i==null?void 0:i.company_Id,isActive:!0}),enabled:!!(i!=null&&i.company_Id),staleTime:x.STATIC_DATA}),u=d.useMemo(()=>{const l=p==null?void 0:p.data;return l?(Array.isArray(l)?l:l.items??[]).map(y=>{const n=y.surname??"",c=y.userCode??"";return{label:`${y.name}${n?` ${n}`:""}${c?` (${c})`:""}`.trim(),value:y.id}}):[]},[p==null?void 0:p.data]),A=d.useMemo(()=>a?{name:(a==null?void 0:a.name)||"",reserveSupervisorId:(a==null?void 0:a.reserveSupervisorId)||void 0,isDeductFromAnnualLeave:(a==null?void 0:a.isDeductFromAnnualLeave)||!1}:{},[a]),g=d.useMemo(()=>({fields:[{type:"text",name:"name",label:r("Name"),placeholder:r("EnterName"),required:!0},{type:"select",name:"reserveSupervisorId",label:r("ReserveSupervisor"),placeholder:r("SelectReserveSupervisor"),required:!0,options:u,loading:h},{type:"checkbox",name:"isDeductFromAnnualLeave",label:r("DeductFromAnnualLeave"),required:!1}],modal:{title:r("Update"),description:r("EditDescription"),confirmText:s(f?"Saving":"Save"),cancelText:r("Cancel")}}),[r,s,f,u,h]),I=l=>{if(!f)try{const S={name:String(l.name)||"",isDeductFromAnnualLeave:!!l.isDeductFromAnnualLeave,reserveSupervisorId:Number(l.reserveSupervisorId)||void 0,languageId:Number(a==null?void 0:a.languageId)||0,isActive:!!(a!=null&&a.isActive)};C(S)}catch(S){console.error("Form submission error:",S),D(S,"UnknownError")}};return a?v.jsx(G,{schema:g,onSubmit:I,open:!0,onClose:o,initialValues:A,isLoading:f},`edit-${a.id}`):null};function ke(){const{t:o}=E("IzinTipi"),{t:C}=E("Shared"),{showSuccess:f,showError:a}=$(),r=se(),{data:s}
1=j(),[D,i]=d.useState({open:!1,item:null}),[p,h]=d.useState(!1),[u,A]=d.useState({open:!1,item:null}),[g,I]=d.useState(null),{data:l,isPending:S,error:y}=F({queryKey:["dayOffTypes"],queryFn:()=>T.getAll(),retry:2,retryDelay:1e3}),{data:n}=F({queryKey:["languages"],queryFn:()=>z.getAll(),staleTime:x.STATIC_DATA}),{data:c}=F({queryKey:["members-selectbox",s==null?void 0:s.company_Id],queryFn:()=>K.getAllBasicForSelectbox({companyId:s==null?void 0:s.company_Id,isActive:!0}),enabled:!!(s!=null&&s.company_Id),staleTime:x.STATIC_DATA}),b=d.useMemo(()=>(l==null?void 0:l.data)??[],[l==null?void 0:l.data]),L=d.useMemo(()=>{const e=(n==null?void 0:n.data)??[],t=new Map;return e.forEach(m=>{m.id&&m.name&&t.set(m.id,m.name)}),t},[n==null?void 0:n.data]),M=d.useMemo(()=>{const e=c==null?void 0:c.data;return e?Array.isArray(e)?e:e.items??[]:[]},[c==null?void 0:c.data]),P=d.useMemo(()=>{const e=new Map;return M.forEach(t=>{if(t.id&&t.name){const m=t.surname??"";e.set(t.id,`${t.name}${m?` ${m}`:""}`)}}),e},[M]),{data:q,isLoading:Y}=F({queryKey:["dayOffTypes-detail",g],queryFn:()=>T.getById(g),enabled:!!g,staleTime:x.NO_CACHE,gcTime:me.NO_CACHE});d.useEffect(()=>{y&&a(y,"DataLoadError")},[y,a]),d.useEffect(()=>{q!=null&&q.data&&g&&(A({open:!0,item:q.data}),I(null))},[q,g]);const N=O({mutationFn:e=>T.delete(e),onSuccess:()=>{r.invalidateQueries({queryKey:["dayOffTypes"]}),f("delete")},onError:e=>{console.error("Delete error:",e),a(e)}}),B=O({mutationFn:e=>T.create(e),onSuccess:()=>{r.invalidateQueries({queryKey:["dayOffTypes"]}),h(!1),f("save")},onError:e=>{console.error("Create error:",e),a(e)}}),Q=O({mutationFn:({id:e,data:t})=>T.update(e,t),onSuccess:()=>{r.invalidateQueries({queryKey:["dayOffTypes"]}),A({open:!1,item:null}),f("update")},onError:e=>{console.error("Update error:",e),a(e)}}),H=O({mutationFn:({id:e,propertyName:t,propertyValue:m})=>T.patch(e,t,m),onSuccess:()=>{r.invalidateQueries({queryKey:["dayOffTypes"]}),f("changes")},onError:e=>{console.error("Patch error:",e),a(e),r.invalidateQueries({queryKey:["dayOffTypes"]})}}),_=W({queryKey:["dayOffTypes"],mutationFn:(e,t)=>T.patch(e,"IsActive",t),toggleField:"isActive",showSuccessToast:!0}),k=W({queryKey:["dayOffTypes"],mutationFn:(e,t)=>T.patch(e,"IsDeductFromAnnualLeave",t),toggleField:"isDeductFromAnnualLeave",showSuccessToast:!0}),V=d.useMemo(()=>b.map(e=>{let t=e.reserveSupervisorName||"";if(!t&&e.reserveSupervisorId){const m=Number(e.reserveSupervisorId);t=P.get(m)??`ID: ${m}`}return{...e,languageName:L.get(e.languageId)||"N/A",reserveSupervisorDisplay:t}}),[b,L,P]),X=d.useMemo(()=>[{field:"name",headerName:o("Type"),filterType:"string",editable:!0,editType:"text"},{field:"languageName",headerName:o("Dil"),filterType:"select",minWidth:90,maxWidth:140},{field:"isDeductFromAnnualLeave",headerName:o("DeductFromAnnualLeave"),filterType:"boolean",booleanFilterLabels:{trueLabel:o("Yes"),falseLabel:o("No")},minWidth:150,maxWidth:190,customCellRenderer:e=>{const t=e.data;return t?v.jsx(w,{checked:!!e.value,onCheckedChange:()=>{t.id&&k.toggle(t.id,!t.isDeductFromAnnualLeave)},size:"sm",disabled:k.isPending}):null}},{field:"reserveSupervisorDisplay",headerName:o("ReserveSupervisor"),filterType:"select",minWidth:160,valueFormatter:e=>e.value?String(e.value):"-"},{field:"isActive",headerName:o("Status"),filterType:"boolean",customCellRenderer:e=>{const t=e.data;return t?v.jsx(w,{checked:!!e.value,onCheckedChange:()=>{t.id&&_.toggle(t.id,!t.isActive)},size:"sm",disabled:_.isPending}):null}},{field:"insertedDate",headerName:o("InsertedDate"),filterType:"date",minWidth:110,maxWidth:130,valueFormatter:e=>e.value?de(String(e.value)):"-"}],[o,_,k]),J=e=>{e.id&&I(e.id)},Z=e=>{N.isPending||i({open:!0,item:e})},R=()=>{var e;(e=D.item)!=null&&e.id&&(N.mutate(D.item.id),i({open:!1,item:null}))},U=()=>{i({open:!1,item:null})},ee=()=>{h(!0)},te=e=>{B.mutate(e)},ae=e=>{var t;(t=u.item)!=null&&t.id&&Q.mutate({id:u.item.id,data:e})},re=(e,t,m,ie)=>{if(m===ie||!e.id)return;const oe=t.charAt(0).toUpperCase()+t.slice(1);H.mutate({id:e.id,propertyName:oe,propertyValue:m})},ne=e=>[{label:C("Edit"),icon:ue,onClick:()=>J(e),variant:"default",primary:!0,iconOnly:!0},{label:N.isPending?o("Deleting"):o("Delete"),icon:ce,onClick:()=>Z(e),variant:"destructive",primary:!0,iconOnly:!0}];return y?v.jsx("div",{className:"flex items-center justify-center h-96",children:v.jsxs("div",{className:"text-red-500",children:[o("Error"),": ",y.message]})}):v.jsxs(le,{children:[v.jsx(ye,{data:V,columns:X,getRowId:e=>e.id??0,title:o("DayOffTypes"),description:o("Description"),isPending:S,loading:Y,variant:"table",defaultSort:{field:"insertedDate",direction:"desc"},onAddClick:ee,onCellEdit:re,actions:ne,layout:{titleField:"name",metaFields:[],statusField:"isActive",hide
1StatusLabel:!0,titleMinWidth:180},texts:{addButtonLabel:C("Add"),itemLabel:o("ItemLabel")}}),v.jsx(pe,{open:D.open,onOpenChange:e=>!e&&U(),onConfirm:R,onCancel:U,isLoading:N.isPending}),v.jsx(fe,{open:p,onClose:()=>h(!1),onSubmit:te,isLoading:B.isPending}),u.open&&u.item&&v.jsx(ve,{onClose:()=>A({open:!1,item:null}),onSubmit:ae,isLoading:Q.isPending,item:u.item},u.item.id)]})}export{fe as CreateDayOffTypes,ke as DayOffTypesPage,T as DayOffTypesService,ve as EditDayOffTypes};

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.