PageSourceSearch

https://talentplay.ai/assets/admin_.people._userId-DFjtqGH6.js

js talentplay.ai collected 2026-10-05 15:00:42 UTC 7,636 bytes, 1 lines download raw bytes

1import{cE as x,r as l,s as f,j as e,L as g}from"./index-Bt-9XfGi.js";import{A as h}from"./hub-shell-CGA8Rjtu.js";import{g as b}from"./people-explorer.functions-DLE5Gwh1.js";import{E as j}from"./editorial-cv-html-Bt1mkd1R.js";import"./app-shell-D6QDXpSt.js";import"./consent-terms-0B9tOKqJ.js";import"./globesearch-wordmark-CjTSibHC.js";import"./globesearch-logo-D1NeHpOV.js";import"./journey-type-CRabtEtb.js";import"./journey-job-profile-action-CJ0bMSez.js";import"./journey-locale-BHooRqWN.js";import"./editorial-dialog-cO5tgwRP.js";import"./job-profile-CF6tzQSM.js";import"./auth-report-CY7kxpwf.js";import"./mail-BbvDasW-.js";import"./arrow-right-BcvdRDlI.js";import"./sparkles-DY6mAI04.js";import"./library-CnBm30Cd.js";import"./user-plus-Ceh_hwIM.js";import"./building-2-BV3qL_BL.js";import"./file-text-CjJxiv2J.js";import"./design-options-B2RIGVMY.js";import"./manuscript-model-Ol7tAV_s.js";import"./manuscript-pagination-Dj5hG7Rq.js";import"./diff-summary-Bg1NrZH2.js";import"./useServerFn-CbMOYqJq.js";import"./ai-thinking-CgK_QTc6.js";import"./use-min-visible-sTRbpMb7.js";import"./confirm-dialog-BPiM5OlX.js";import"./pencil-DYmQ9o0u.js";function te(){const{userId:r}=x.useParams(),[t,a]=l.useState(null),[i,s]=l.useState(null),[n,m]=l.useState("timeline");return l.useEffect(()=>{let o=!1;return(async()=>{try{const{data:c}=await f.auth.getSession(),p=c.session?.access_token;if(!p)return;const u=await b({data:{accessToken:p,userId:r}});o||a(u)}catch(c){o||s(c instanceof Error?c.message:"Failed to load")}})(),()=>{o=!0}},[r]),e.jsxs(h,{title:"Candidate detail",subtitle:"Activity, usage and profile for one candidate.",children:[e.jsx(g,{to:"/admin/people",className:"text-[11px] uppercase tracking-[0.2em] text-foreground/40 hover:text-foreground/80",children:"← People Explorer"}),i&&e.jsx("div",{className:"mt-8 rounded-[var(--control-r)] border border-foreground
1/10 bg-background/50 px-6 py-6 text-[13px] text-foreground/70",children:i}),!t&&!i&&e.jsx("p",{className:"mt-10 text-[13px] text-foreground/50",children:"Loading candidate."}),t&&e.jsxs(e.Fragment,{children:[e.jsxs("header",{className:"mt-6 mb-8 flex items-start gap-5",children:[t.profile.photo_url?e.jsx("img",{src:t.profile.photo_url,alt:"",className:"h-16 w-16 rounded-[var(--control-r)] object-cover ring-1 ring-foreground/10"}):e.jsx("div",{className:"h-16 w-16 rounded-[var(--control-r)] bg-foreground/[0.06] ring-1 ring-foreground/10"}),e.jsxs("div",{className:"flex-1",children:[e.jsx("h1",{className:"font-serif text-[30px] tracking-tight text-foreground",children:t.profile.display_name||t.profile.email||"Unnamed"}),e.jsx("p",{className:"mt-1 text-[13px] text-foreground/60",children:t.profile.email}),e.jsxs("div",{className:"mt-3 flex flex-wrap gap-x-6 gap-y-1 text-[11px] text-foreground/55",children:[t.profile.title&&e.jsx("span",{children:t.profile.title}),t.profile.location&&e.jsx("span",{children:t.profile.location}),t.profile.phone&&e.jsx("span",{children:t.profile.phone}),t.profile.linkedin_url&&e.jsx("a",{href:t.profile.linkedin_url,target:"_blank",rel:"noreferrer",className:"underline decoration-foreground/20 hover:decoration-foreground/60",children:"LinkedIn"}),e.jsxs("span",{children:["Joined ",d(t.profile.created_at)]}),e.jsxs("span",{children:["Last sign in"," ",t.profile.last_sign_in_at?d(t.profile.last_sign_in_at):"never"]})]})]})]}),e.jsx(v,{usage:t.usage}),e.jsx("div",{className:"mt-10 flex gap-6 border-b border-foreground
1/10 text-[11px] uppercase tracking-[0.2em]",children:["timeline","profile","usage"].map(o=>e.jsx("button",{onClick:()=>m(o),className:`pb-3 transition-colors ${n===o?"border-b border-foreground text-foreground":"text-foreground/45 hover:text-foreground/70"}`,children:o==="timeline"?"Activity timeline":o==="profile"?"Profile":"Usage detail"},o))}),e.jsxs("div",{className:"mt-8",children:[n==="timeline"&&e.jsx(N,{events:t.timeline}),n==="profile"&&e.jsx(_,{detail:t}),n==="usage"&&e.jsx(y,{usage:t.usage})]})]})]})}function v({usage:r}){const t=[{label:"Logins",value:r.logins},{label:"Master edits",value:r.master_cv_edits},{label:"Opportunities",value:r.opportunities_created},{label:"Target CVs",value:r.target_cvs_generated},{label:"Interview preps",value:r.interview_preps},{label:"Downloads",value:r.downloads}];return e.jsx("section",{className:"grid grid-cols-2 gap-x-6 gap-y-4 border-y border-foreground/10 py-5 sm:grid-cols-3 lg:grid-cols-6",children:t.map(a=>e.jsxs("div",{children:[e.jsx("p",{className:"text-[10px] uppercase tracking-[0.2em] text-foreground/40",children:a.label}),e.jsx("p",{className:"mt-1 font-serif text-[24px] tabular-nums text-foreground",children:a.value})]},a.label))})}function N({events:r}){const t=l.useMemo(()=>{const a=new Map;for(const i of r){const s=i.at.slice(0,10),n=a.get(s)??[];n.push(i),a.set(s,n)}return[...a.entries()]},[r]);return r.length===0?e.jsx("p",{className:"text-[13px] text-foreground/50",children:"No recorded activity yet."}):e.jsx("div",{className:"space-y-10",children:t.map(([a,i])=>e.jsxs("section",{children:[e.jsx("h3",{className:"mb-3 text-[10px] uppercase tracking-[0.2em] text-foreground/40",children:w(a)}
1),e.jsx("ol",{className:"space-y-3 border-l border-foreground/10 pl-5",children:i.map(s=>e.jsxs("li",{className:"relative",children:[e.jsx("span",{className:"absolute -left-[23px] top-2 h-1.5 w-1.5 rounded-[var(--control-r)] bg-foreground/40"}),e.jsxs("div",{className:"flex items-baseline justify-between gap-4",children:[e.jsx("p",{className:"text-[13px] text-foreground/85",children:s.label}),e.jsx("span",{className:"shrink-0 text-[11px] tabular-nums text-foreground/45",children:k(s.at)})]}),(s.description||s.pursuit_label)&&e.jsxs("p",{className:"mt-0.5 text-[11px] text-foreground/55",children:[s.description,s.description&&s.pursuit_label?" · ":"",s.pursuit_label&&e.jsx("span",{className:"",children:s.pursuit_label})]})]},s.id))})]},a))})}function _({detail:r}){return r.career_graph?e.jsx("div",{className:"flex justify-center",children:e.jsx("div",{className:"artifact-zone pointer-events-none select-text",children:e.jsx(j,{data:r.career_graph,accent:"#1a1a1a",editable:!1})})}):e.jsx("p",{className:"text-[13px] text-foreground/50",children:"No Master CV yet."})}function y({usage:r}){const t=[{label:"Total logins",value:r.logins},{label:"Last login",value:r.last_login_at?d(r.last_login_at):"Never"},{label:"Master CV edits",value:r.master_cv_edits},{label:"Opportunities created",value:r.opportunities_created},{label:"Target CVs generated",value:r.target_cvs_generated},{label:"Interview preparations",value:r.interview_preps},{label:"Downloads / exports",value:r.downloads},{label:"AI interactions",value:r.ai_interactions}];return e.jsx("dl",{className:"grid grid-cols-1 gap-x-10 gap-y-4 sm:grid-cols-2",children:t.map(a=>e.jsxs("div",{className:"flex items-baseline justify-between border-b border-foreground
1/10 pb-3",children:[e.jsx("dt",{className:"text-[11px] uppercase tracking-[0.2em] text-foreground/40",children:a.label}),e.jsx("dd",{className:"font-serif text-[15px] tabular-nums text-foreground",children:a.value})]},a.label))})}function d(r){try{return new Date(r).toLocaleDateString("en-GB",{year:"numeric",month:"short",day:"numeric"})}catch{return r}}function w(r){try{const t=new Date(r+"T00:00:00"),a=new Date;a.setHours(0,0,0,0);const i=Math.round((a.getTime()-t.getTime())/864e5);return i===0?"Today":i===1?"Yesterday":t.toLocaleDateString("en-GB",{weekday:"short",year:"numeric",month:"short",day:"numeric"})}catch{return r}}function k(r){try{return new Date(r).toLocaleTimeString("en-GB",{hour:"2-digit",minute:"2-digit"})}catch{return r}}export{te as component};

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.