PageSourceSearch

https://nyanza.ai/assets/Health-Duhjq8us.js

js nyanza.ai collected 2026-10-02 01:12:33 UTC 7,347 bytes, 1 lines download raw bytes

1import{f as C,r as v,j as e,L as w}from"./react-TITiJaTY.js";import{a as M,S as $,U as H,l as F,T as R,e as S,bv as A,g as P,bs as L}from"./App-Dli7sJFM.js";import{u as E}from"./memory-BnxUEnat.js";import{u as T,c as z}from"./pay-DYfPM9uF.js";import{u as B,c as D,r as I,L as k}from"./careerHealth-CIkys9uk.js";import{I as N}from"./shared-lite-BOZiOCY1.js";import{A as G}from"./AppHeader-Bv7bfOUu.js";import{S as O}from"./SectionTabs-DD1NeLsB.js";import{P as q}from"./PageHow-C48AC2is.js";import{m as g}from"./motion-DheP8iPc.js";import"./index-D0VpW5-F.js";import"./podcastDeviceState-B0NlAIS7.js";import"./llm-CdWZ4qgd.js";function U({score:t,tone:r}){const h=2*Math.PI*78,[c,p]=v.useState(0);return v.useEffect(()=>{var m;if((m=window.matchMedia)==null?void 0:m.call(window,"(prefers-reduced-motion: reduce)").matches){p(t);return}let i,n;const f=x=>{n==null&&(n=x);const j=Math.min(1,(x-n)/900);p(Math.round((1-(1-j)**3)*t)),j<1&&(i=requestAnimationFrame(f))};return i=requestAnimationFrame(f),()=>cancelAnimationFrame(i)},[t]),e.jsxs("div",{className:"hs-ring",role:"img","aria-label":`Career Health score: ${t} out of 100`,style:{"--tone":r},children:[e.jsxs("svg",{viewBox:"0 0 180 180",width:"180",height:"180","aria-hidden":"true",children:[e.jsx("circle",{cx:"90",cy:"90",r:78,className:"hs-ring-track"}),e.jsx(g.circle,{cx:"90",cy:"90",r:78,className:"hs-ring-fill",strokeDasharray:h,strokeDashoffset:h,animate:{strokeDashoffset:h*(1-t/100)},transition:{duration:1,ease:[.22,1,.36,1]},transform:"rotate(-90 90 90)"})]}),e.jsxs("div",{className:"hs-ring-num",children:[e.jsx("strong",{children:c}),e.jsx("span",{children:"/100"})]})]})}function W({points:t}){const r=t.slice(-14),l=r.map(o=>o.score),h=l.length?Math.min(...l):0,c=l.length?Math.max(...l):0;if(!(r.length>=3&&c>h))return e.jsxs("div",{className:"hs-trend hs-trend-building",children:[e.jsx("span",{className:"hs-trend-rail","aria-hidden":"true",children:e.jsx("i",{})}),e.jsx("span",{className:"hs-trend-note",children:r.length<2?"Tracking weekly - your trend builds here.":"Tracking weekly - steady so far."})]});const u=240,i=44,n=5,f=c-h,m=o=>n+o*(u-n*2)/(r.length-1),x=o=>i-n-(o-h)/f*(i-n*2),j=r.map((o,s)=>`${s?"L":"M"}${m(s).toFixed(1)},${x(o.score).toFixed(1)}`).join(" "),d=r[r.length-1].score-r[0].score,y=d>0?"up":d<0?"down":"flat";return e.jsxs("div",{className:"hs-trend",children:[e.jsxs("svg",{viewBox:`0 0 ${u} ${i}`,preserveAspectRatio:"none",className:"hs-trend-svg",children:[e.jsx("path",{d:`${j} L${m(r.length-1).toFixed(1)},${i} L${m(0).toFixed(1)},${i} Z`,className:"hs-trend-fill"}),e.jsx("path",{d:j,className:"hs-trend-line"}),r.map((o,s)=>e.jsx("circle",{cx:m(s).toFixed(1),cy:x(o.score).toFixed(1),r:"2.2",className:"hs-trend-dot"},s))]}),e.jsx("span",{className:`hs-trend-delta ${y}`,children:d>0?`▲ ${d} pts`:d<0?`▼ ${Math.abs(d)} pts`:"steady"})]})}function ie({embedded:t=!1}){const r=C(),{profile:l,completeness:h}=M(),c=$(),p=H(),u=F(),i=E(),n=R(),f=B(),m=S(),x=T(),j=v.useMemo(()=>A({profile:l,model:i.model,reflections:n.items,gaps:u.items,achievements:p,activity:c}),[l,i.model,n.items,u.items,p,c]),d=v.useMemo(()=>P(m.items),[m.items]),y=v.useMemo(()=>z({market:x.current,profile:l}),[x.current,l]),o=v.useMemo(()=>L(n.items,c.interviews).length,[n.items,c.interviews]),s=v.useMemo(()=>D({completeness:h,activity:c,achievements:p,gaps:u.items,reflectionsCount:o,coverage:j.coverage,network:d,comp:y}),[h,c,p,u.items,o,j.coverage,d,y]);v.useEffect(()=>{I(s.overall)},[s.overall]);const b=e.jsxs(e.Fragment,{children:[!t&&e.jsxs(g.div,{initial:{opacity:0,y:16},animate:{opacity:1,y:0},transition:{duration:.5},children:[e.jsx("span",{className:"eyebrow",children:"Career Health"}),e.jsxs("h1",{className:"hs-title",children:["Your ",e.jsx("span",{className:"gradient-text",children:"career credit score"}),"."]}),e.jsx("p",{className:"hs-sub",children:"One number for how strong your career position is right now - built from everything your persona knows. Check it weekly; move it with one action at a time."}),e.jsx(q,{steps:["Nothing to fill in - the score is computed from your real activity across Nyanza.","Each factor shows the single fastest way to raise it.","Check back weekly - the trend matters more than the number."]})]}),e.jsxs("div",{className:"hs-hero card",style:{"--tone":s.band.tone},children:[e.jsx(U,{score:s.overall,tone:s.band.tone}),e.jsxs("div",{className:"hs-hero-body",children:[e.jsx("span",{className:"hs-band",children:s.band.label}),e.jsx("p",{className:"hs-hero-line",children:"A weighted read of seven signals from your own Career Persona - not a hiring, interview, or job-security prediction, and not a measure anyone else will see."}),e.jsx(W,{points:f.points||[]}),!t&&s.movers[0]&&e.jsxs("button",{type:"button",className:"btn btn-primary hs-hero-cta",onClick:()=>r(s.movers[0].to),children:["Improve ",s.movers[0].label]})]})]}),e.jsxs("div",{className:"hs-grid",children:[e.jsxs(g.div,{className:"card hs-breakdown",initial:{opacity:0,y:12}
1,animate:{opacity:1,y:0},transition:{duration:.45,delay:.1},children:[e.jsx("h3",{className:"hs-h3",children:"Breakdown"}),s.subs.map(a=>e.jsxs("div",{className:"hs-bar-row",children:[e.jsx("span",{className:"hs-bar-name",children:a.label}),e.jsx("div",{className:"hs-bar-track",role:"progressbar","aria-label":a.label,"aria-valuemin":"0","aria-valuemax":"100","aria-valuenow":a.score,children:e.jsx(g.div,{className:"hs-bar-fill",initial:{scaleX:0},animate:{scaleX:a.score/100},transition:{duration:.8,ease:[.22,1,.36,1]},style:{background:X(a.score)}})}),e.jsx("span",{className:"hs-bar-score",children:a.score})]},a.key)),k.length>0&&e.jsx("div",{className:"hs-locked",children:k.map(a=>e.jsxs("div",{className:"hs-lock-row",children:[e.jsxs("span",{className:"hs-lock-name",children:[e.jsx(N,{name:"x",size:12})," ",a.label]}),e.jsx("span",{className:"hs-lock-needs",children:a.needs})]},a.key))})]}),e.jsxs(g.div,{className:"card hs-movers",initial:{opacity:0,y:12},animate:{opacity:1,y:0},transition:{duration:.45,delay:.15},children:[e.jsxs("h3",{className:"hs-h3",children:[e.jsx(N,{name:"up",size:15})," What would move it"]}),e.jsx("p",{className:"hs-movers-sub",children:"Your three lowest levers - the fastest points."}),e.jsx("ul",{className:"hs-mover-list",children:s.movers.map(a=>e.jsx("li",{children:e.jsxs("button",{type:"button",className:"hs-mover",onClick:()=>r(a.to),children:[e.jsxs("div",{className:"hs-mover-top",children:[e.jsx("span",{className:"hs-mover-name",children:a.label}),e.jsx("span",{className:"hs-mover-score",children:a.score})]}),e.jsx("span",{className:"hs-mover-hint",children:a.hint}),e.jsxs("span",{className:"hs-mover-go",children:["Go ",e.jsx(N,{name:"arrowRight",size:13})]})]})},a.key))})]})]}),t?e.jsx("p",{className:"hs-foot",children:e.jsx(w,{to:"/app/health",children:"Open the full Career Health page →"})}):e.jsxs("p",{className:"hs-foot",children:["Computed from your Career Persona - every interview, plan, application, and reflection nudges it. ",e.jsx(w,{to:"/app/persona",children:"See the graph behind it →"})]})]});return t?e.jsx("div",{className:"hs-embed",children:b}):e.jsxs("div",{className:"hs",children:[e.jsx(G,{}),e.jsxs("main",{className:"hs-main",children:[e.jsx(O,{}),b]})]})}function X(t){return t>=70?"var(--good)":t>=45?"var(--amber)":"var(--coral)"}export{ie 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.