PageSourceSearch

https://www.employee.sh/_next/static/chunks/3261-73b100facd2b9051.js?dpl=dpl_HNBgxL2tiG5Rb1sRWhscidf61V3y

js employee.sh collected 2026-10-02 01:08:54 UTC 12,784 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[3261],{5642:(e,n,t)=>{t.d(n,{$m:()=>o.$m,A9:()=>o.A9,Bw:()=>o.Bw,FN:()=>a,HE:()=>h,HM:()=>c,S:()=>o.S,W0:()=>d,X1:()=>r.X1,ZP:()=>u,k$:()=>o.k$,m:()=>o.m,qg:()=>E,qx:()=>o.qx,sE:()=>m});var o=t(1140),r=t(75963);t(56422);var i=t(29100);async function s(e){var n;let t=await e.json();if(!e.ok)throw Error(null!=(n=t.error)?n:"Request failed (".concat(e.status,")"));return t}async function a(){return s(await fetch("/api/integrations/naukri",{credentials:"include"}))}async function l(e){return s(await fetch("/api/integrations/naukri",{method:"PATCH",credentials:"include",headers:{"Content-Type":"application/json"},body:JSON.stringify({enabled:e})}))}async function c(e){var n,t,s,l;let c=null!=(n=null==e?void 0:e.maxMs)?n:6e4;if(!await (0,o.A9)(1e4))return(0,i.Uy)({mode:"extension_missing"}),{ok:!1,status:null,error:"EXTENSION_NOT_INSTALLED"};let d=await (0,r.X1)();if(!d.ok)return(0,i.Uy)({mode:"blocked",blockReason:"EXTENSION_NOT_PAIRED",message:d.error}),{ok:!1,status:null,error:d.error};let u=await (0,o.Ou)(c),h=null;try{h=await a()}catch(e){h=null}if(u.ok||(null==h?void 0:h.session.healthy))return{ok:!0,status:null!=h?h:await a()};if(await (0,o.RE)(Math.min(c,3e4),1e3))return{ok:!0,status:await a()};let E=0===(null!=(t=u.cookieCount)?t:0),y=null!=(l=null!=(s=u.error)?s:null==h?void 0:h.session.lastError)?l:E?"Log in to Resdex in Chrome, then sync again.":"Resdex session check failed.";return E?(0,i.Uy)({mode:"relogin",blockReason:"NOT_LOGGED_IN",message:y}):(0,i.Uy)({mode:"sync_failed",blockReason:"SYNC_FAILED",message:y}),{ok:!1,status:h,error:y,needsLogin:E}}async function d(){let e=await (0,r.X1)();if(!e.ok)throw Error(e.error);let n=await c();if(!n.ok&&n.error&&"EXTENSION_NOT_INSTALLED"!==n.error)throw Error(n.error);return l(!0)}async function u(){return l(!1)}function h(e){let n=(null==e?void 0:e.trim())||i.dT;(0,i.hf)(),(0,o.M0)("needs_resdex_search",n,{force:!0})}t(96305);let E="/settings/integrations/naukri/install?setup=1",y={advSearchParams:{ezKeywordsAny:[],srchType:"adv",ezKeywordsAll:[{key:"-1",value:"full stack developer",type:null,enriched:!1}],ezKeywordsExclude:[],boolKeywords:"full stack developer",booleanSearch:!0,resPerPage:5,allOrNewCV:"ALL"},miscellaneousInfo:{}};async function N(){var e,n,t;let r,i=Date.now(),s=await (0,o.Ut)({url:"https://resdex.naukri.com/cloudgateway-resdex/recruiter-js-profile-listing-services/v0/search/results/advSearch",method:"POST",headers:{accept:"application/json","content-type":"application/json",appid:"112",systemid:"naukriIndia",origin:"https://resdex.naukri.com",referer:"https://resdex.naukri.com/v3?activeTab=advSrch"},body:y});if(s.error&&!s.body)return{ok:!1,error:s.error,code:"EXTENSION_FETCH_FAILED"};if(401===s.status||/INVALID_SESSION/i.test(s.body))return{ok:!1,expired:!0,code:"SESSION_EXPIRED",status:s.status,error:"Naukri rejected the browser session — open Naukri, run Search candidates, then Sync now."};if(!s.ok){let n=s.error||s.body.slice(0,280)||"HTTP ".concat(s.status);try{let t=JSON.parse(s.body);(null==(e=t.validationErrors)?void 0:e.length)?n=t.validationErrors.map(e=>{var n,t;return"".concat(null!=(n=e.field)?n:"field",": ").concat(null!=(t=e.message)?t:"invalid")}).join("; "):t.message&&(n=t.message)}catch(e){}return{ok:!1,status:s.status,code:"EXTENSION_SEARCH_FAILED",error:n}}try{r=JSON.parse(s.body)}catch(e){return{ok:!1,error:"Extension returned a non-JSON Resdex response",code:"INVALID_RESPONSE"}}let a=Array.isArray(r.tuples)?r.tuples:[],l=a.slice(0,3).map(e=>{var n,t,o,r,i;return{name:e.jsUserName,currentRole:null!=(i=null==(t=e.employment)||null==(n=t.current)?void 0:n.designation)?i:null==(r=e.employment)||null==(o=r.previous)?void 0:o.designation,location:e.currentLocation}});return{ok:!0,source:"extension",query:"full stack developer",totalResumes:Number(null!=(n=r.totalResumes)?n:0),returned:a.length,sid:Number(null!=(t=r.sid)?t:0),elapsedMs:Date.now()-i,sample:l}}async function m(){return await (0,o.VC)(2500)?N():{ok:!1,code:"EXTENSION_MISSING",error:"Yeesh Chrome extension not detected. Install Yeesh AI Recruiter with the ZIP guide, open this page in Chrome, then retry."}}},29100:(e,n,t)=>{t.d(n,{DD:()=>h,GW:()=>
1_,S9:()=>i,Sn:()=>N,UA:()=>w,Uy:()=>u,Xh:()=>l,dT:()=>k,eu:()=>r,hd:()=>s,hf:()=>E,vF:()=>m,z:()=>y});var o=t(1140);let r="yeesh-resdex-session-required",i="yeesh-resdex-status",s="yeesh-resdex-recovery-debug",a=new Set(["extension_missing","extension_context_invalid"]);function l(e,n){window.dispatchEvent(new CustomEvent(s,{detail:{step:e,detail:n,at:Date.now()}}))}let c="",d=0;function u(e){var n,t,i;if(a.has(e.mode))return void window.dispatchEvent(new CustomEvent(r,{detail:e}));let s="".concat(e.mode,":").concat(null!=(n=e.blockReason)?n:"",":").concat(null!=(t=e.message)?t:""),l=Date.now();s===c&&l-d<4e3||(c=s,d=l,E(),(0,o.M0)(function(e){let{mode:n,blockReason:t}=e;return"connecting"===n?"syncing":"needs_resdex_search"===n?"needs_resdex_search":"relogin"===n||"session_expired"===n?"relogin":"sync_failed"===n||"SYNC_FAILED"===t?"sync_failed":"captcha_required"===n||"CAPTCHA_REQUIRED"===t?"captcha":"NOT_LOGGED_IN"===t||"LOGIN_TIMEOUT"===t?"relogin":"BOOTSTRAP_FAILED"===t?"needs_resdex_search":"attention"}(e),(null==(i=e.message)?void 0:i.trim())?e.message.trim():e.blockReason&&w[e.blockReason]?w[e.blockReason]:"connecting"===e.mode?"Syncing Resdex cookies…":"relogin"===e.mode||"session_expired"===e.mode?y:"needs_resdex_search"===e.mode?k:"Open the Yeesh extension to fix your Resdex session.",{force:!0}))}let h="yeesh-resdex-session-dismiss";function E(){window.dispatchEvent(new CustomEvent(h))}let y="Your Naukri Resdex session has expired. We opened Resdex login — sign in and we will sync automatically.",N="The Yeesh extension was reloaded — refresh this page to reconnect (Cmd/Ctrl+Shift+R).",m="Yeesh couldn't reach the Chrome extension on this tab. If it's already installed, refresh this page — or use the ZIP install guide, then refresh.",k="Your Resdex session is idle — open Naukri, run Search candidates, then tap Sync now in the Yeesh extension.";function _(e){return!!(null==e?void 0:e.trim())&&/session is idle|run a search|advsearch|bootstrap|stale.*session|needs_resdex/i.test(e)}let w={EXTENSION_MISSING:"Chrome extension not detected in this browser",EXTENSION_CONTEXT_INVALID:N,EXTENSION_NOT_PAIRED:"Extension installed but not paired — click Pair extension to connect",LOGIN_TIMEOUT:"Timed out waiting for Resdex login (complete login in the opened tab)",SYNC_FAILED:"Extension sync failed after login",BOOTSTRAP_FAILED:"Could not capture advSearch. In Resdex, add keywords and click Search candidates, then sync.",RESDEX_SETUP_REQUIRED:"Log in to Resdex in Chrome — the extension syncs cookies automatically.",NOT_LOGGED_IN:"No ACCESS cookie found — Resdex login required",CAPTCHA_REQUIRED:"Naukri flagged bot protection. Open Resdex, complete the captcha, then sync from the Yeesh extension."}},56422:(e,n,t)=>{t.d(n,{c:()=>a});var o=t(1140),r=t(75963),i=t(29100);let s=null;async function a(e){return s||(s=l(e).finally(()=>{s=null}))}async function l(e){var n,t,s,a,l;let c=null!=(n=null==e?void 0:e.maxMs)?n:12e4,d=Math.min(c,6e4);if((0,i.Xh)("start","Cookie sync recovery initiated"),!await (0,o.A9)(1e4))return(0,o.IL)()?((0,i.Xh)("blocked","EXTENSION_CONTEXT_INVALID"),(null==e?void 0:e.silent)||(0,i.Uy)({mode:"extension_context_invalid",blockReason:"EXTENSION_CONTEXT_INVALID",message:i.Sn,autoRecover:!1}),{ok:!1,blockReason:"EXTENSION_CONTEXT_INVALID",message:i.Sn}):((0,i.Xh)("blocked","EXTENSION_MISSING"),(null==e?void 0:e.silent)||(0,i.Uy)({mode:"extension_missing",blockReason:"EXTENSION_MISSING",autoRecover:!1}),{ok:!1,blockReason:"EXTENSION_MISSING",message:i.UA.EXTENSION_MISSING});(null==e?void 0:e.silent)?(0,i.Xh)("mode:connecting","Starting cookie sync"):(0,i.Uy)({mode:"connecting",autoRecover:!1}),(0,i.Xh)("pair_check","Checking extension pairing");let u=await (0,r.X1)();if(!u.ok)return(0,i.Xh)("blocked","EXTENSION_NOT_PAIRED: ".concat(u.error)),(null==e?void 0:e.silent)||(0,i.Uy)({mode:"blocked",blockReason:"EXTENSION_NOT_PAIRED",message:u.error,autoRecover:!1}),{ok:!1,blockReason:"EXTENSION_NOT_PAIRED",message:u.error};(0,i.Xh)("pair_ok","Extension paired with org"),(0,i.Xh)("sync_attempt","Grabbing Resdex cookies from browser");let h=await (0,o.Ou)(d);if(h.ok)return(0,i.Xh)("sync_ok","Extension reported healthy session"),{ok:!0};if(h.unauthorized){let n=null!=(t=h.error)?t:i.UA.EXTENSION_NOT_PAIRED;
1return(0,i.Xh)("blocked","EXTENSION_NOT_PAIRED: ".concat(n)),(null==e?void 0:e.silent)||(0,i.Uy)({mode:"blocked",blockReason:"EXTENSION_NOT_PAIRED",message:n,autoRecover:!1}),{ok:!1,blockReason:"EXTENSION_NOT_PAIRED",message:n}}if(await (0,o.RE)(Math.min(c,3e4),1e3))return(0,i.Xh)("healthy","Server session healthy after cookie sync"),{ok:!0};if(0===(null!=(s=h.cookieCount)?s:0)){let n=null!=(a=h.error)?a:i.UA.NOT_LOGGED_IN;return(0,i.Xh)("blocked","NOT_LOGGED_IN: ".concat(n)),(null==e?void 0:e.silent)||(0,i.Uy)({mode:"relogin",blockReason:"NOT_LOGGED_IN",message:n,autoRecover:!1}),{ok:!1,blockReason:"NOT_LOGGED_IN",message:n}}let E=null!=(l=h.error)?l:i.UA.SYNC_FAILED;return(0,i.Xh)("blocked","SYNC_FAILED: ".concat(E)),(null==e?void 0:e.silent)||((0,i.GW)(E)?(0,i.Uy)({mode:"needs_resdex_search",message:E,autoRecover:!1}):(0,i.Uy)({mode:"sync_failed",blockReason:"SYNC_FAILED",message:E,autoRecover:!1})),{ok:!1,blockReason:"SYNC_FAILED",message:E}}},75963:(e,n,t)=>{t.d(n,{X1:()=>a});var o=t(1140);async function r(e){var n;let t=await e.json();if(!e.ok)throw Error(null!=(n=t.error)?n:"Request failed (".concat(e.status,")"));return t}async function i(){let e=await fetch("/api/integrations/naukri/pair/session",{method:"POST",credentials:"include"});return{extensionToken:(await r(e)).extensionToken}}async function s(){let e=await (0,o.Bw)();if(null==e?void 0:e.paired)return!0;let n=await (0,o.o2)(1500);return!!(null==n?void 0:n.paired)}async function a(){if(await s())return{ok:!0};try{let{extensionToken:e}=await i(),n=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1e4;return new Promise(n=>{let t=e=>{if(e.source!==window||e.origin!==window.location.origin)return;let t=e.data;(null==t?void 0:t.type)==="YEEH_EXTENSION_CONFIGURED"&&(o(),n(!!t.ok))},o=()=>{window.clearTimeout(r),window.removeEventListener("message",t)};window.addEventListener("message",t);let r=window.setTimeout(()=>{o(),n(!1)},e)})}(1e4);if((0,o.qw)({apiBaseUrl:window.location.origin,extensionToken:e}),await n)return{ok:!0};for(let e=0;e<20;e++)if(await new Promise(e=>window.setTimeout(e,250)),await s())return{ok:!0};return{ok:!1,error:"Extension did not confirm pairing — reload the extension and hard-refresh this tab"}}catch(n){let e=n instanceof Error?n.message:"Pairing failed";if("Admin access required"===e)return{ok:!1,error:"Ask an org admin to open Integrations and pair the extension"};return{ok:!1,error:e}}}},96305:(e,n,t)=>{var o;t.d(n,{DU:()=>r,Wz:()=>s,rY:()=>i}),null==(o=t(95704).env.NEXT_PUBLIC_CHROME_WEB_STORE_URL)||o.trim();let r="/downloads/yeesh-resdex-sync.zip",i=[{src:"/chrome-extension/01-hero-meet-ai-recruiter.png",alt:"Yeesh AI Recruiter extension overview with shortlist and popup",title:"Meet Your AI Recruiter",body:"Automatically source, qualify and shortlist candidates without leaving your browser."},{src:"/chrome-extension/02-source-thousands.png",alt:"Yeesh sourcing candidate cards with TARA reasoning",title:"Source Thousands of Candidates",body:"AI continuously scans candidate databases and builds interview-ready shortlists.",footer:"Works with Naukri Resdex"},{src:"/chrome-extension/03-ai-explains-match.png",alt:"Candidate profile with match score and Screen action",title:"AI Explains Every Match",body:"Understand exactly why every candidate is recommended before scheduling an interview."},{src:"/chrome-extension/04-recruit-without-switching.png",alt:"Yeesh extension popup connected to Naukri Resdex",title:"Recruit Without Switching Tabs",body:"Monitor live sourcing, sync roles and open shortlisted candidates in one click."},{src:"/chrome-extension/05-search-to-shortlist.png",alt:"Yeesh dashboard shortlist with AI reasoning",title:"From Search to Shortlist—Automatically",body:"AI sourcing, ranking and screening in one hiring workflow."}],s=[{title:"Source thousands",body:"Keep Resdex in sync and let Yeesh scan at scale while you work."},{title:"Rank with AI",body:"Every profile gets a match score and a clear fit explanation."},{title:"Screen automatically",body:"TARA can place screening calls so you only review interview-ready talent."},{title:"Shortlist in Yeesh",body:"Live roles, funnel progress, and shortlists stay synced in one place."}]}}]);

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.