PageSourceSearch

https://careerdiary.io/assets/ExplorePathModal-BDurVeCz.js

js careerdiary.io collected 2026-09-24 15:05:14 UTC 10,718 bytes, 1 lines download raw bytes

1import{r as i,j as e}from"./animation-CddyXVCz.js";import{r as y}from"./index-PGJMoIYN.js";import{u as w,B as m,X as E,h as a,a4 as j,r as C,Y as $}from"./index-CGKNpi9E.js";import{e as A}from"./CareerGPSPage-ZODWO-mQ.js";import"./react-vendor-CbN3pvl2.js";import"./supabase-iKSPld20.js";import"./docgen-Bp8WKBAE.js";import"./query-DPqpbKNH.js";import"./ProGate-BWEPDFOZ.js";import"./Tooltip-c3l9LscW.js";const n={high:"bg-rose-100 text-rose-700 dark:bg-rose-900/30 dark:text-rose-300",medium:"bg-amber-100 text-amber-700 dark:bg-amber-900/30 dark:text-amber-300",low:"bg-emerald-100 text-emerald-700 dark:bg-emerald-900/30 dark:text-emerald-300"},S=()=>e.jsxs("div",{className:"space-y-4 animate-pulse",children:[e.jsxs(a,{className:"space-y-3",children:[e.jsx("div",{className:"h-4 w-40 rounded bg-slate-200 dark:bg-slate-700"}),e.jsx("div",{className:"h-4 w-full rounded bg-slate-200 dark:bg-slate-700"}),e.jsx("div",{className:"h-4 w-4/5 rounded bg-slate-200 dark:bg-slate-700"})]}),e.jsxs(a,{className:"space-y-3",children:[e.jsx("div",{className:"h-4 w-48 rounded bg-slate-200 dark:bg-slate-700"}),e.jsx("div",{className:"grid gap-3 md:grid-cols-2",children:Array.from({length:4}).map((d,l)=>e.jsxs("div",{className:"rounded-2xl border border-slate-200/70 p-4 dark:border-slate-700",children:[e.jsx("div",{className:"mb-3 h-4 w-28 rounded bg-slate-200 dark:bg-slate-700"}),e.jsx("div",{className:"mb-2 h-3 w-20 rounded bg-slate-200 dark:bg-slate-700"}),e.jsx("div",{className:"h-3 w-full rounded bg-slate-200 dark:bg-slate-700"})]},l))})]}),e.jsxs(a,{className:"space-y-4",children:[e.jsx("div",{className:"h-4 w-44 rounded bg-slate-200 dark:bg-slate-700"}),Array.from({length:3}).map((d,l)=>e.jsxs("div",{className:"rounded-2xl border border-slate-200/70 p-4 dark:border-slate-700",children:[e.jsx("div",{className:"mb-2 h-4 w-32 rounded bg-slate-200 dark:bg-slate-700"}),e.jsx("div",{className:"mb-2 h-3 w-full rounded bg-slate-200 dark:bg-slate-700"}),e.jsx("div",{className:"h-3 w-5/6 rounded bg-slate-200 dark:bg-slate-700"})]},l))]})]}),B=({isOpen:d,onClose:l,recommendation:c,profile:o})=>{const{toast:g}=w(),k=i.useRef(null),[N,h]=i.useState(!1),[b,p]=i.useState(null),[r,f]=i.useState(null),v=i.useMemo(()=>{var s,t;return`${((t=(s=o.experience)==null?void 0:s[0])==null?void 0:t.jobTitle)||"Current Role"} to ${c.title}`},[o.experience,c.title]),u=async()=>{h(!0),p(null);try{const s=await A(c,o);f(s)}catch(s){const t=s instanceof Error?s.message:"Failed to generate path";p(t),g.error("Career path unavailable",t)}finally{h(!1)}};return i.useEffect(()=>{d&&u()},[d,c.title]),i.useEffect(()=>{if(!d)return;const s=t=>{t.key==="Escape"&&l()};return document.addEventListener("keydown",s),document.body.style.overflow="hidden",()=>{document.removeEventListener("keydown",s),document.body.style.overflow="unset"}},[d,l]),!d||typeof document>"u"?null:y.createPortal(e.jsx("div",{className:"fixed inset-0 z-50 bg-black/50 px-4 py-6 sm:px-6",onClick:l,role:"dialog","aria-modal":"true","aria-labelledby":"explore-path-title",children:e.jsx("div",{className:"flex min-h-full items-center justify-center",children:e.jsxs("div",{ref:k,className:"w-full max-w-3xl max-h-[85vh] overflow-y-auto rounded-[28px] border border-slate-200 bg-white shadow-2xl dark:border-slate-700 dark:bg-slate-900 animate-in fade-in duration-300",onClick:s=>s.stopPropagation(),children:[e.jsxs("div",{className:"sticky top-0 z-10 flex items-start justify-between gap-4 border-b border-slate-200 bg-white/95 px-6 py-5 backdrop-blur dark:border-slate-700 dark:bg-slate-900/95",children:[e.jsxs("div",{children:[e.jsx("p",{className:"text-xs font-bold uppercase tracking-[0.2em] text-blue-600 dark:text-blue-300",children:"Explore Path"}),e.jsx("h2",{id:"explore-path-title",className:"mt-1 text-2xl font-bold text-slate-900 dark:text-slate-100",children:v}),e.jsxs("p",{className:"mt-1 text-sm text-slate-500 dark:text-slate-400",children:[c.overlap,"% match with ",c.missingSkills.length," core gaps to close."]})]}),e.jsx(m,{variant:"ghost",size:"sm",className:"h-auto rounded-full p-2",onClick:l,"aria-label":"Close explore path",children:e.jsx(E,{className:"h-5 w-5"})})]}),e.jsx("div",{className:"space-y-5 p-6",children:N?e.jsx(S,{}):b?e.jsxs(a,{className:"space-y-4 border border-rose-200 bg-rose-50/70 dark:border-rose-900/40 dark:bg-rose-950/20",children:[e.jsxs("div",{children:[e.jsx("h3",{className:"text-lg font-semibold text-rose-700 dark:text-rose-300",children:"We couldn't generate this path"}),e.jsx("p",{className:"mt-1 text-sm text-rose-600/90 dark:text-rose-200/80",children:b})]}),e.jsxs("div",{className:"flex gap-3",children:[e.jsx(m,{variant:"primary",onClick:()=>{u()},children:"Try Again"}),e.jsx(m,{variant:"outline",onClick:l,children:"Close"})]})]}):r?e.jsxs(e.Fragment,{children:[e.jsxs(a,{className:"space-y-3 border border-blue-100 bg-gradient-to-br from-blue-50 to-indigo-50 dark:border-blue-900/30 dark:from-blue-950/20 dark:to-indigo-950/20",children:[e.jsx("p",{className:"text-xs font-bold uppercase tracking-[0.2em] text-blue-600 dar
1k:text-blue-300",children:"Executive Summary"}),e.jsx("p",{className:"text-sm leading-7 text-slate-700 dark:text-slate-300",children:r.executiveSummary})]}),e.jsxs(a,{className:"space-y-4",children:[e.jsxs("div",{className:"flex items-center justify-between gap-3",children:[e.jsx("h3",{className:"text-lg font-bold text-slate-900 dark:text-slate-100",children:"Skill Gap Analysis"}),e.jsxs("p",{className:"text-sm text-slate-500 dark:text-slate-400",children:[r.skillGapAnalysis.length," focus areas"]})]}),e.jsx("div",{className:"grid gap-3 md:grid-cols-2",children:r.skillGapAnalysis.map(s=>e.jsxs("div",{className:"rounded-2xl border border-slate-200 bg-slate-50/70 p-4 dark:border-slate-700 dark:bg-slate-800/60",children:[e.jsxs("div",{className:"flex items-start justify-between gap-3",children:[e.jsxs("div",{children:[e.jsx("h4",{className:"font-semibold text-slate-900 dark:text-slate-100",children:s.skill}),e.jsxs("p",{className:"mt-1 text-xs text-slate-500 dark:text-slate-400",children:[s.currentLevel," now • target ",s.requiredLevel]})]}),e.jsx("span",{className:`rounded-full px-2.5 py-1 text-[11px] font-bold uppercase ${n[s.priority]||n.medium}`,children:s.priority})]}),s.resources.length>0&&e.jsx("div",{className:"mt-4 space-y-2",children:s.resources.map(t=>e.jsxs("div",{className:"flex items-center gap-2 text-xs text-slate-600 dark:text-slate-300",children:[e.jsx(j,{className:"h-3.5 w-3.5 text-blue-500"}),e.jsx("span",{children:t})]},t))})]},`${s.skill}-${s.requiredLevel}`))})]}),e.jsxs(a,{className:"space-y-4",children:[e.jsx("h3",{className:"text-lg font-bold text-slate-900 dark:text-slate-100",children:"Transition Timeline"}),e.jsx("div",{className:"space-y-4",children:r.timeline.map((s,t)=>e.jsxs("div",{className:"grid gap-4 md:grid-cols-[120px_1fr]",children:[e.jsxs("div",{className:"flex items-start gap-3 md:flex-col md:items-center",children:[e.jsx("div",{className:"flex h-10 w-10 items-center justify-center rounded-full bg-blue-600 text-sm font-bold text-white",children:t+1}),e.jsx("div",{className:"text-sm font-semibold text-blue-700 dark:text-blue-300",children:s.phase})]}),e.jsxs("div",{className:"rounded-2xl border border-slate-200 p-4 dark:border-slate-700",children:[e.jsx("h4",{className:"text-base font-semibold text-slate-900 dark:text-slate-100",children:s.title}),e.jsxs("div",{className:"mt-4 grid gap-4 md:grid-cols-2",children:[e.jsxs("div",{children:[e.jsx("p",{className:"text-xs font-bold uppercase tracking-[0.18em] text-slate-400",children:"Milestones"}),e.jsx("ul",{className:"mt-2 space-y-2",children:s.milestones.map(x=>e.jsxs("li",{className:"flex gap-2 text-sm text-slate-600 dark:text-slate-300",children:[e.jsx(C,{className:"mt-0.5 h-4 w-4 text-blue-500"}),e.jsx("span",{children:x})]},x))})]}),e.jsxs("div",{children:[e.jsx("p",{className:"text-xs font-bold uppercase tracking-[0.18em] text-slate-400",children:"Actions"}),e.jsx("ul",{className:"mt-2 space-y-2",children:s.actions.map(x=>e.jsxs("li",{className:"flex gap-2 text-sm text-slate-600 dark:text-slate-300",children:[e.jsx($,{className:"mt-0.5 h-4 w-4 text-indigo-500"}),e.jsx("span",{children:x})]},x))})]})]})]})]},s.phase))})]}),e.jsxs("div",{className:"grid gap-5 lg:grid-cols-2",children:[e.jsxs(a,{className:"space-y-4",children:[e.jsx("h3",{className:"text-lg font-bold text-slate-900 dark:text-slate-100",children:"Certifications"}),e.jsx("div",{className:"space-y-3",children:r.certifications.map(s=>e.jsxs("div",{className:"rounded-2xl border border-slate-200 p-4 dark:border-slate-700",children:[e.jsxs("div",{className:"flex items-start justify-between gap-3",children:[e.jsxs("div",{children:[e.jsx("h4",{className:"font-semibold text-slate-900 dark:text-slate-100",children:s.name}),e.jsx("p",{className:"text-sm text-slate-500 dark:text-slate-400",children:s.provider})]}),e.jsx("span",{className:"rounded-full bg-slate-100 px-2.5 py-1 text-xs font-semibold text-slate-600 dark:bg-slate-800 dark:text-slate-300",children:s.estimatedTime})]}),e.jsx("p",{className:"mt-3 text-sm text-slate-600 dark:text-slate-300",children:s.relevance}),s.url&&e.jsxs("a",{href:s.url,target:"_blank",rel:"noreferrer",className:"mt-3 inline-flex items-center gap-2 text-sm font-semibold text-blue-600 hover:text-blue-700 dark:text-blue-300 dark:hover:text-blue-200",children:[e.jsx(j,{className:"h-4 w-4"}),"Open resource"]})]},`${s.name}-${s.provider}`))})]}),e.jsxs(a,{className:"space-y-4",children:[e.jsx("h3",{className:"text-lg font-bold text-slate-900 dark:text-slate-100",children:"Action Items"}),e.jsx("div",{className:"space-y-3",children:r.actionItems.map(s=>e.jsxs("div",{className:"rounded-2xl border border-slate-200 p-4 dark:border-slate-700",children:[e.jsxs("div",{className:"flex items-start justify-between gap-3",children:[e.jsx("p",{className:"text-sm font-medium text-slate-800 dark:text-slate-200",children:s.action}),e.jsx("span",{className:`rounded-full px-2.5 py-1 text-[11px] font-bold uppercase ${n[s.priority]||n.medium}`,children:s.priority})]}),e.jsx("p",{className:"mt-2 text-xs font-semibold uppercase tracking-[0.18em] text-slate-400",children:s.timeframe})]},`${s.action}-${s.timeframe}`))})]})]}),e.jsxs(a,{className:"space-y-4",children:[e.jsx("h3",{className:"text-lg font-bold text-slate-900 dark:text-slate-100",children:"Networking Tips"}),e.jsx("ul",{className:"grid gap-3 md:grid-cols-2",children:r.networkingTips.map(s=>e.jsx("li",{className:"rounded-2xl border border-slate-200 bg-slate-50/70 p-4 text-sm text-slate-600 dar
1k:border-slate-700 dark:bg-slate-800/50 dark:text-slate-300",children:s},s))})]})]}):null})]})})}),document.body)};export{B as ExplorePathModal,B 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.