1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[9112],{52537:function(e,t,a){Promise.resolve().then(a.bind(a,62e3))},62e3:function(e,t,a){"use strict";a.d(t,{default:function(){return b}});var r=a(57437),l=a(87138),n=a(2265),s=a(41818),i=a(65118),c=a(24485),o=e=>{let{label:t,options:a,selectedValue:l,handleChange:s}=e,[i,c]=(0,n.useState)(!1),o=e=>{s(Array.isArray(l)?l.includes(e)?l.filter(t=>t!==e):[...l,e]:e)};return(0,r.jsxs)("div",{className:"flex flex-col w-full",children:[(0,r.jsxs)("div",{className:"flex items-center cursor-pointer justify-between",onClick:()=>{c(!i)},children:[(0,r.jsx)("label",{className:"mb-0 text-lg font-semibold",children:t}),i?(0,r.jsx)("span",{className:"ml-2",children:"â¼"}):(0,r.jsx)("span",{className:"ml-2",children:"â¶"})]}),i?(0,r.jsx)("div",{children:a.length>0?a.map(e=>(0,r.jsxs)("label",{className:"flex items-center",children:[(0,r.jsx)("input",{type:Array.isArray(l)?"checkbox":"radio",value:e.value,checked:Array.isArray(l)?l.includes(e.value):l===e.value,onChange:()=>o(e.value),className:"mr-2"}),e.label]},e.value)):(0,r.jsx)("input",{type:"text",value:l,onChange:e=>s(e.target.value),className:"border p-1 mt-2"})}):null]})},d=e=>{let{handleSearch:t}=e,{isSuccess:a,data:l}=(0,i.a)({queryKey:["skills"],queryFn:c.Fe}),[s,d]=(0,n.useState)(""),[u,h]=(0,n.useState)([]),[f,m]=(0,n.useState)(""),[x,p]=(0,n.useState)(""),[g,y]=(0,n.useState)([]);return(0,n.useEffect)(()=>{(async()=>{try{let{data:e}=await (0,c.Fe)();y(e)}catch(e){console.error("Error fetching filter fields:",e)}})()},[]),(0,n.useEffect)(()=>{(""!==s.trim()||u.length>0||""!==f||""!==x)&&t({name:s,skills:u,experience:f,fullName:x})},[s,u,f,x,t]),(0,r.jsx)("div",{className:"m-2 w-[100%] md:w-[100%] gap-2 p-4 rounded-lg shadow-md hover:shadow-xl hover:z-100 md:flex-row items-start mx-auto",children:g.length>0&&g.map((e,t)=>(console.log("Options for field",e.filter_key,":",e.filter_options),(0,r.jsxs)("div",{className:"mb-4",children:[(0,r.jsx)(o,{label:e.filter_name,options:"skills"===e.filter_key?e.filter_options.map(e=>({label:e,value:e})):[],selectedValue:"name"===e.filter_key?s:"skills"===e.filter_key?u:"experience"===e.filter_key?f:"fullName"===e.filter_key?x:"",handleChange:t=>{"name"===e.filter_key?d(t):"skills"===e.filter_key?h(t):"experience"===e.filter_key?m(t):"fullName"===e.filter_key&&p(t)}}),t<g.length-1&&(0,r.jsx)("hr",{className:"border-t border-gray-300 my-1 mb-0"})]},e.filter_key)))})},u=a(16463),h=a(14063),f=e=>{let{totalPages:t,currentPage:a,onPageChange:l}=e,n=Array.from({length:t},(e,t)=>t+1);return(0,r.jsx)("div",{className:"flex justify-center space-x-2",children:n.map(e=>(0,r.jsx)("button",{onClick:()=>l(e),className:"px-3 py-1 ".concat(a===e?"bg-blue-500 text-white":"bg-gray-300"," rounded-md"),children:e},e))})},m=a(62051),x=a(26566),p=a(97659),g=a(1465),y=a(87255),v=a(49203),b=()=>{var e,t;let[a,o]=(0,n.useState)(1),[b,j]=(0,n.useState)(10),[w,k]=(0,n.useState)(""),N=(0,u.useRouter)(),S=(0,u.useSearchParams)(),[_,E]=(0,n.useState)([]),{isLoading:A,isError:C,isSuccess:T,data:F,error:z}=(0,i.a)({queryKey:["Allprofile",w],queryFn:()=>(0,c.p8)(w)});(0,n.useEffect)(()=>{(async()=>{try{let{data:e}=await (0,c.Fe)();E(e)}catch(e){console.error("Error fetching filter fields:",e)}})()},[]),(0,n.useEffect)(()=>{S&&k("?"+S.toString())},[S]),(0,n.useEffect)(()=>{N.push(w)},[w,N]);let I=e=>{k("?pageNo=".concat(a,"&pageSize=").concat(b,"&fullName=").concat(null==e?void 0:e.fullName,"&skills=").concat(JSON.stringify(null==e?void 0:e.skills),"&experience=").concat(null==e?void 0:e.experience))},{isOpen:L,onToggle:R}=(0,m.useDisclosure)();return(0,r.jsxs)("div",{className:"bg-gray-200 min-h-screen w-screen p-4 md:p-8 flex flex-col gap-2 md:flex-col",children:[(0,r.jsx)("div",{className:"text-2xl md:text-3xl font-bold text-center mb-6",children:"Candidate List"}),(0,r.jsxs)("div",{className:"flex flex-col md:flex-row gap-4",children:[(0,r.jsx)("div",{className:"hidden md:block md:w-1/5",children:(0,r.jsxs)(x.Box,{bg:"white",p:4,rounded:"lg",flexGrow:1,minH:["20vh","30vh"],children:[(0,r.jsx)("p",{className:"text-xl md:text-2xl font-bold mb-2",children:"Filters"}),(0,r.jsx)("hr",{className:"border-t border-gray-300 my-1 mb-2 md:mb-0"}),(0,r.jsx)(d,{handleSearch:I,filterFields:_})]})}),(0,r.jsx)("div",{className:"md:hidden mb-4",children:(0,r.jsx)(p.IconButton,{icon:L?(0,r.jsx)(g.Z,{}):(0,r.jsx)(y.Z,{}),"aria-label":"Toggle Filters",onClick:R})}),(0,r.jsx)("div",{className:"md:hidden ".concat(L?"block":"hidden"),children:(0,r.jsxs)(x.Box,{bg:"white",p:4,rounded:"lg",flexGrow:1,minH:["20vh","30vh"],children:[(0,r.jsx)("p",{className:"text-xl md:text-2xl font-bold mb-2",children:"Filters"}),(0,r.jsx)("hr",{className:"border-t border-gray-300 my-1 mb-2 md:mb-0"}),(0,r.jsx)(d,{handleSearch:I,filterFields:_})]})}),!1===A&&F?(0,r.jsx)("div",{className:"md:w-4/5 ml-auto",children:(0,r.jsxs)(r.Fragment,{children:[null==F?void 0:null===(t=F.data)||void 0===t?void 0:null===(e=t.map)||void 0===e?void 0:e.call(t,e=>(0,r.jsx)(l.default,{href:"/[username]",as:"/".concat(null==e?void 0:e.username),children:(0,r.jsxs)("div",{className:"bg-white w-full p-4 rounded-lg flex flex-row md:flex-row mx-auto mb-4",children:[(0,r.jsx)("div",{className:"flex items-center",children:(0,r.jsx)(s.Z,{className:"w-20 h-20 md:w-40 md:h-40 rounded-full text-gray-600"})}),(0,r.jsxs)("div",{className:"mb-2 flex flex-col justify-start items-start w-full h-full md:min-h-40",children:[(0,r.jsx)("div",{className:"text-2xl font-semibold m-2",children:e.fullName}),(0,r.jsxs)("div",{className:"text-md m-2",children:[(0,r.jsx)("p",{children:"Skills"}),(0,r.jsx)("div",{className:"list-disc pl-5 flex flex-row md:flex-row gap-3",children:null==e?void 0:e.skills.map((e,t)=>{var a;return(0,r.jsx)("li",{children:null==e?void 0:null===(a=e.skillId)||void 0===a?void 0:a.skill},t)})})]})]}),(0,r.jsxs)("div",{className:"flex items-center space-x-2",children:["published"===e.status&&(0,r.jsx)("div",{className:"w-4 h-4 bg-green-500 rounded-full"}),"unpublished"===e.status&&(0,r.jsx)("div",{className:"w-4 h-4 bg-orange-500 rounded-full"}),(0,r.jsx)(v.Badge,{borderRadius:"full",px:"2",colorScheme:"published"===e.status?"green":"orange",children:"published"===e.status?"Published":"Draft"})]})]})},null==e?void 0:e.username)),(0,r.jsx)(f,{totalPages:Math.ceil(F.totalCount/b),currentPage:a,onPageChange:e=>{o(e),k("?pageNo=".concat(e,"&pageSize=").concat(b))}})]})}):(0,r.jsx)("div",{className:"flex h-full mt-[30%] md:mt-[10%] w-screen pl-[47%] md:pl-[34%] md:items-center",children:(0,r.jsx)(h.lbL,{className:"animate-spin text-4xl text-gray-500"})})]})]})}},58357:function(e,t,a){"use strict";a.d(t,{CT:function(){return r},bz:function(){return n},nL:function(){return l}});let r=(a(20357).env.NEXT_PUBLIC_CLOUD_API_URL||"https://excelrs-cloud-new-1069037816864.asia-south1.run.app").replace(/\/+$/,""),l="https://powr-api.lawazia.tech";function n(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",t=String(e||"").replace(/^\/+/,"");return t?"".concat(l,"/").concat(t):l}},28388:function(e,t,a){"use strict";a.d(t,{oD:function(){return l}});var r=a(20357);let l=120;r.env.STATIC_PROFILE_PARAM_LIMIT},24485:function(e,t,a){"use strict";a.d(t,{Q_:function(){return y},Ax:function(){return b},p8:function(){return f},XQ:function(){return g},RF:function(){return h},qm:function(){return p},Fe:function(){return v},qr:function(){return x}});
1var r=a(65399),l=a(2265),n=a(58357),s=(a(28388),a(38472));let i=()=>{try{let{useAuthStore:e}=a(96450);return e.getState().token}catch(t){var e;return console.warn("Store not available, falling back to localStorage"),null===(e=localStorage)||void 0===e?void 0:e.getItem("accessToken")}return""},c=s.Z.create({baseURL:"/api"});async function o(e){let t="".concat(n.CT,"/profiles/by-username/").concat(encodeURIComponent(e)),a=await fetch(t,{method:"GET",headers:{"Content-Type":"application/json"}});if(404===a.status)return null;if(!a.ok){let e=await a.text();throw Error("Error fetching candidate: ".concat(a.statusText," - ").concat(e))}return a.json()}async function d(e,t){let a="".concat(n.CT,"/profiles/by-username/").concat(encodeURIComponent(e)),r=await fetch(a,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer ".concat(t)}});if(404===r.status)return null;if(!r.ok){let e=await r.text();throw Error("Error fetching candidate: ".concat(r.statusText," - ").concat(e))}return r.json()}c.interceptors.request.use(e=>{let t=i();return t&&(e.headers.Authorization="Bearer ".concat(t)),e}),s.Z.create({baseURL:"/api"}).interceptors.request.use(e=>{let t=i();return t&&(e.headers.Authorization="Bearer ".concat(t)),e}),(0,l.cache)(o);let u=(0,l.cache)(d),h=async(e,t)=>{let a=null!=t?t:"";if(!a){let t=await o(e);if(null===t)throw Error("Error fetching candidate: Not Found");return t}let r=await u(e,a);if(null===r)throw Error("Error fetching candidate: Not Found");return r},f=async e=>{try{let t=new URLSearchParams;e.skills&&t.set("skills",JSON.stringify(e.skills)),e.pageNo&&t.set("pageNo",e.pageNo.toString()),e.pageSize&&t.set("pageSize",e.pageSize.toString());let a="/candidate/getAll?".concat(t.toString()),{data:r}=await c.get(a);return console.log("Fetched data:",r),r}catch(e){throw e}},m=e=>{var t;let a=null===(t=e.response)||void 0===t?void 0:t.data;throw Error((null==a?void 0:a.message)||"An unexpected error occurred")},x=async e=>{try{return(await c.post("/api/candidate/feedback",e)).data}catch(e){m(e)}},p=async e=>{let t=await fetch("/api/candidate/".concat(e));if(!t.ok)throw Error("Error fetching candidate feedback: ".concat(t.statusText));return t.json()},g=async()=>{let e=await fetch("/api/candidate/skills");if(!e.ok)throw Error("Error fetching candidate skills: ".concat(e.statusText));return e.json()},y=async e=>{try{return(await c.post("/api/candidate",e)).data}catch(e){m(e)}},v=async()=>{try{return(await c.get("/api/filter/".concat(r.h))).data}catch(e){m(e)}},b=async(e,t)=>{try{let a=await fetch("".concat(n.CT,"/users/admins"),{method:"GET",headers:{Authorization:"Bearer ".concat(t),"Content-Type":"application/json"}});if(a.ok){let t=await a.json();return(Array.isArray(t.admins)?t.admins:[]).some(t=>t._id===e)}return!1}catch(e){return!1}}},96450:function(e,t,a){"use strict";a.r(t),a.d(t,{useAuthStore:function(){return n}});var r=a(10903),l=a(89291);let n=(0,r.U)()((0,l.tJ)((e,t)=>({user:null,token:null,refreshToken:null,isHydrated:!1,setAuthData:function(t,a){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;e({user:t,token:a,refreshToken:r,isHydrated:!0})},clearAuthData:()=>{let a=t();if(null!==a.user||null!==a.token||null!==a.refreshToken){e({user:null,token:null,refreshToken:null,isHydrated:!0});try{localStorage.removeItem("auth-store")}catch(e){console.warn("Failed to clear localStorage:",e)}}}}),{name:"auth-store",storage:(0,l.FL)(()=>localStorage),skipHydration:!0,onRehydrateStorage:()=>e=>{e&&(e.isHydrated=!0)}}));try{n.persist.rehydrate()}catch(e){console.warn("Failed to rehydrate auth store:",e)}}},function(e){e.O(0,[2420,231,251,8472,9617,1336,4080,6692,134,2971,7023,1744],function(){return e(e.s=52537)}),_N_E=e.O()}]);
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.