1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[9620],{39620:function(e,s,l){"use strict";l.r(s),l.d(s,{default:function(){return L}});var n=l(57437),r=l(2265),t=l(54887),a=l(32489),i=l(17625),c=l(35398),d=l(75751);l(49396);let o=e=>null===e?"-":e.toFixed(1),h=e=>{if(null===e)return"-";let s=Math.round(10*e)/10;return Number.isInteger(s)?String(s):s.toFixed(1)};function x(e){let s=[];return e.grade&&s.push("".concat(e.grade,"íë
")),e.classNum&&s.push("".concat(e.classNum,"ë°")),e.number&&s.push("".concat(e.number,"ë²")),s.join(" ")}function u(e){let{delta:s}=e;return null===s.change||null===s.previous?(0,n.jsx)("p",{className:"gr-glance-note",children:"ë¹êµí ì§ì ìíì´ ìì§ ìì´ì"}):"same"===s.change?(0,n.jsxs)("p",{className:"gr-glance-note",children:["ì§ì ìí ",o(s.previous),"ë±ê¸ê³¼ ê°ìì"]}):(0,n.jsxs)("p",{className:"gr-glance-note",children:["ì§ì ìí ",o(s.previous),"ë±ê¸ë³´ë¤"," ","up"===s.change?(0,n.jsxs)("span",{className:"is-up",children:[o(s.diff)," ì¬ëì´ì â²"]}):(0,n.jsxs)("span",{className:"is-down",children:[o(s.diff)," ë´ë ¤ê°ì´ì â¼"]})]})}function m(e){let{strongest:s,weakest:l,noun:r}=e;return s&&l?(0,n.jsxs)("dl",{className:"gr-picks",children:[(0,n.jsxs)("div",{children:[(0,n.jsxs)("dt",{children:["ê°ì¥ ì¢ì ",r]}),(0,n.jsxs)("dd",{children:[s.subject," ",o(s.value)]})]}),(0,n.jsxs)("div",{children:[(0,n.jsxs)("dt",{children:["ê°ì¥ ìì¬ì´ ",r]}),(0,n.jsxs)("dd",{children:[l.subject," ",o(l.value)]})]})]}):null}function j(e){let{primary:s,secondary:l}=e;return(0,n.jsxs)("div",{className:"gr-radar-legend",children:[(0,n.jsxs)("p",{children:[(0,n.jsxs)("span",{children:[(0,n.jsx)("i",{className:"is-primary"}),s]}),l&&(0,n.jsxs)("span",{children:[(0,n.jsx)("i",{className:"is-secondary"}),l]})]}),(0,n.jsx)("p",{className:"gr-radar-hint",children:"ë°ê¹¥ìª½ì¼ìë¡ ì¢ì ë±ê¸"})]})}function g(e){var s;let{model:l,qrUrl:r}=e,{student:t,summary:a,radar:i,naesin:g,mock:p}=l,f=x(t),v=null==p?void 0:p.exams[p.exams.length-1];return(0,n.jsxs)("section",{className:"gr-sheet gr-page",children:[(0,n.jsxs)("header",{className:"gr-head",children:[(0,n.jsxs)("div",{children:[(0,n.jsxs)("p",{className:"gr-head-kicker",children:[(0,n.jsx)("b",{children:"ì±ì ë¶ì ìë£"}),l.issuedLabel," 기ì¤"]}),(0,n.jsxs)("h1",{className:"gr-head-name",children:[(0,n.jsx)("strong",{children:t.name}),f&&(0,n.jsx)("span",{children:f})]})]}),r&&(0,n.jsxs)("div",{className:"gr-qr",children:[(0,n.jsx)(c.t,{value:r,size:128,level:"M",fgColor:"#14171c",bgColor:"#ffffff"}),(0,n.jsx)("span",{children:"í´ëí°ì¼ë¡ ì±ì 보기"})]})]}),(0,n.jsxs)("div",{className:"gr-glance",children:[(0,n.jsxs)("div",{className:"gr-glance-item",children:[(0,n.jsxs)("div",{className:"gr-glance-figure",children:[(0,n.jsxs)("p",{className:"gr-glance-label",children:[(0,n.jsx)("b",{children:"ë´ì "}),"ì¢
í© íê· "]}),a.naesin?(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)("p",{className:"gr-glance-value",children:[(0,n.jsx)("strong",{children:o(a.naesin.overall)}),(0,n.jsx)("span",{children:"ë±ê¸"})]}),(0,n.jsxs)("p",{className:"gr-glance-note",children:[a.naesin.semesterCount,"ê° í기 íê· "]}),(0,n.jsxs)("p",{className:"gr-glance-note",children:["ìµê·¼ í기 ",o(a.naesin.latestValue),"ë±ê¸"]}),(0,n.jsx)(m,{strongest:a.naesin.strongest,weakest:a.naesin.weakest,noun:"êµê³¼"})]}):(0,n.jsx)("p",{className:"gr-glance-empty",children:"ë±ë¡ë ë´ì ì±ì ì´ ìì´ì"})]}),i.naesin&&(0,n.jsxs)("figure",{className:"gr-glance-radar",children:[(0,n.jsx)(d.Kf,{axes:i.naesin,maxGrade:l.naesinScale,label:"êµê³¼ë³ ë´ì ë±ê¸"}),(0,n.jsx)(j,{primary:"êµê³¼ë³ ì¢
í© íê· ",secondary:i.naesin.some(e=>null!==e.secondary)?"ìµê·¼ í기":null})]})]}),(0,n.jsxs)("div",{className:"gr-glance-item",children:[(0,n.jsxs)("div",{className:"gr-glance-figure",children:[(0,n.jsxs)("p",{className:"gr-glance-label",children:[(0,n.jsx)("b",{children:"모ìê³ ì¬"}),"ìµê·¼ íê· "]}),a.mock?(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)("p",{className:"gr-glance-value",children:[(0,n.jsx)("strong",{children:o(a.mock.value)}),(0,n.jsx)("span",{children:"ë±ê¸"})]}),(0,n.jsxs)("p",{className:"gr-glance-note",children:[a.mock.peri
1odLabel," 모ìê³ ì¬"]}),(0,n.jsx)(u,{delta:a.mock}),(0,n.jsx)(m,{strongest:a.mock.strongest,weakest:a.mock.weakest,noun:"과목"})]}):(0,n.jsx)("p",{className:"gr-glance-empty",children:"ë±ë¡ë 모ìê³ ì¬ ì±ì ì´ ìì´ì"})]}),i.mock&&(0,n.jsxs)("figure",{className:"gr-glance-radar",children:[(0,n.jsx)(d.Kf,{axes:i.mock,maxGrade:9,label:"ê³¼ëª©ë³ ëª¨ìê³ ì¬ ë±ê¸"}),(0,n.jsx)(j,{primary:"ìµê·¼ ìí",secondary:i.mock.some(e=>null!==e.secondary)?"ìµê·¼ ".concat(null!==(s=null==p?void 0:p.exams.length)&&void 0!==s?s:0,"í íê· "):null})]})]})]}),g&&(0,n.jsxs)("section",{className:"gr-section",children:[(0,n.jsxs)("div",{className:"gr-section-head",children:[(0,n.jsx)("h2",{children:"ë´ì "}),(0,n.jsx)("p",{children:"êµì´\xb7ìí\xb7ìì´\xb7ì¬í\xb7ê³¼í êµê³¼ ë±ê¸ íê· "})]}),(0,n.jsxs)("div",{className:"gr-section-body",children:[(0,n.jsx)(d.pQ,{title:"íê¸°ë³ íê· ë±ê¸",maxGrade:l.naesinScale,points:g.columns.map((e,s)=>({label:e.shortLabel,value:g.average[s]}))}),(0,n.jsxs)("table",{className:"gr-table",children:[(0,n.jsx)("colgroup",{children:(0,n.jsx)("col",{style:{width:"17mm"}})}),(0,n.jsx)("thead",{children:(0,n.jsxs)("tr",{children:[(0,n.jsx)("th",{className:"gr-col-lead",children:"êµê³¼"}),g.columns.map(e=>{let[s,l]=e.key.split("-");return(0,n.jsxs)("th",{children:[s,"íë
",l,"í기",e.midtermOnly&&(0,n.jsx)("small",{children:"ì¤ê°ê³ ì¬"})]},e.key)})]})}),(0,n.jsxs)("tbody",{children:[g.rows.map(e=>(0,n.jsxs)("tr",{children:[(0,n.jsx)("th",{scope:"row",children:e.subject}),e.values.map((e,s)=>(0,n.jsx)("td",{className:null===e?"is-empty":void 0,children:h(e)},g.columns[s].key))]},e.subject)),(0,n.jsxs)("tr",{className:"gr-row-avg",children:[(0,n.jsx)("th",{scope:"row",children:"íê· "}),g.average.map((e,s)=>(0,n.jsx)("td",{children:o(e)},g.columns[s].key))]})]})]})]})]}),p&&(0,n.jsxs)("section",{className:"gr-section",children:[(0,n.jsxs)("div",{className:"gr-section-head",children:[(0,n.jsx)("h2",{children:"모ìê³ ì¬"}),(0,n.jsx)("p",{children:"ê³¼ëª©ë³ ë±ê¸ \xb7 íê· ì êµì´\xb7ìí\xb7ìì´ì í구 íê· "})]}),(0,n.jsxs)("div",{className:"gr-section-body",children:[(0,n.jsx)(d.pQ,{title:"ìµê·¼ ".concat(p.exams.length,"í íê· ë±ê¸"),maxGrade:9,points:p.exams.map(e=>({label:e.shortLabel,value:e.average}))}),(0,n.jsxs)("table",{className:"gr-table gr-table--mock",children:[(0,n.jsx)("colgroup",{children:(0,n.jsx)("col",{style:{width:"21mm"}})}),(0,n.jsx)("thead",{children:(0,n.jsxs)("tr",{children:[(0,n.jsx)("th",{className:"gr-col-lead",children:"ìí"}),p.columns.map((e,s)=>{var l;return(0,n.jsxs)("th",{children:[e.label,(null==v?void 0:null===(l=v.cells[s])||void 0===l?void 0:l.detail)&&(0,n.jsx)("small",{children:v.cells[s].detail})]},e.key)}),(0,n.jsx)("th",{className:"gr-col-avg",children:"íê· "})]})}),(0,n.jsx)("tbody",{children:p.exams.map((e,s)=>(0,n.jsxs)("tr",{className:s===p.exams.length-1?"is-latest":void 0,children:[(0,n.jsx)("th",{scope:"row",children:e.label}),e.cells.map((e,s)=>{var l;return(0,n.jsx)("td",{className:(null==e?void 0:e.grade)==null?"is-empty":void 0,children:null!==(l=null==e?void 0:e.grade)&&void 0!==l?l:"-"},p.columns[s].key)}),(0,n.jsx)("td",{className:"gr-col-avg",children:o(e.average)})]},e.key))})]})]})]}),(0,n.jsxs)("footer",{className:"gr-foot",children:[(0,n.jsx)("span",{children:"íê· ë±ê¸ì êµê³¼ ë±ê¸ì ë¨ì íê· (ì¢
í© íê· ì í기 íê· ì íê· )ì´ë¼ íêµìì íì ì ë°ìí´ ê³ì°í ê°ê³¼ ë¤ë¥¼ ì ìì´ì."}),(0,n.jsx)("span",{children:"ê³¼ëª©ë³ ìì¸ ì±ì ì ë¤ì 쪽ì ì´ì´ì ¸ì"})]})]})}function p(e){let{position:s}=e;return(0,n.jsxs)("div",{className:"gr-position",children:[(0,n.jsx)(d.NX,{position:s}),(0,n.jsxs)("p",{children:[null!==s.ranksToUp&&null!==s.upGrade&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)("b",{children:[Math.max(s.ranksToUp,1),"ë±"]})," ì¤ë¥´ë©´ ",s.upGrade,"ë±ê¸",(0,n.jsx)("br",{})]}),null!==s.ranksToDown&&null!==s.downGrade&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)("b",{children:[Math.max(s.ranksToDown,1),"ë±"]})," ë´ë ¤ê°ë©´ ",s.downGrade,"ë±ê¸"]})]})]})}function f(e){let{result:s}=e;return(0,n.jsxs)("div",{className:"gr-final-result",children:[(0,n.jsx)("b",{children:s.label}),"same"===s.change&&(0,n.jsx)("span",{children:"ê°ìì"}),"up"===s.change&&(0,n.jsxs)("span",{className:"is-up",children:["â² ",s.diff,"ë±ê¸ ì¬ëì´ì"]}),"down"===s.change&&(0,n.jsxs)("span",{className:"is-down",children:["â¼ ",s.diff,"ë±ê¸ ë´ë ¤ê°ì´ì"]})]})}let v={none:"기ë§ê³ ì¬ ì ì¤ê°ê³ ì¬ ê²°ê³¼",some:"ì¼ë¶ 과목ì íê¸°ë§ ì±ì ì´ ë¤ì´ìì´ì",all:"íê¸°ë§ ì±ì ì¼ë¡ ë°ë 기ë¡"},b={none:"ë±ê¸ êµ¬ê° ìì ìì¹",some:"ë±ê¸ êµ¬ê° ìì ìì¹ \xb7 íê¸°ë§ ë±ê¸",all:"íê¸°ë§ ë±ê¸"};function y(e){let{model:s}=e,l=x(s.student);return(0,n.jsx)("div",{className:"gr-sheet gr-sheet--flow",children:(0,n.jsxs)("table",{className:"gr-flow",children:[(0,n.jsx)("thead",{children:(0,n.jsx)("tr",{children:(0,n.jsx)("td",{children:(0,n.jsxs)("div",{className:"gr-flow-head",children:[(0,n.jsxs)("span",{children:[(0,n.jsx)("b",{children:"ê³¼ëª©ë³ ìì¸ ì±ì "}),s.student.name,l&&" \xb7 ".concat(l)]}),(0,n.jsxs)("span",{children:[s.issuedLabel," 기ì¤"]})]})})})}),(0,n.jsx)("tfoot",{children:(0,n.jsx)("tr",{children:(0,n.jsx)("td",{children:(0,n.jsx)("div",{className:"gr-flow-foot"})})})}),(0,n.jsxs)("tbody",{children:[0===s.details.length&&(0,n.jsx)("tr",{children:(0,n.jsx)("td",{children:(0,n.jsx)("p",{className:"gr-detail-empty",children:"ë±ë¡ë ë´ì ì±ì ì´ ìì´ì."})})}),s.details.map(e=>{let s="midterm"===e.examType,l=s?"all"===e.superseded?"gr-table gr-table--detail gr-table--superseded":"gr-table gr-table--detail gr-table--midterm":"gr-table gr-table--detail";return(0,n.jsx)("tr",{children:(0,n.jsx)("td",{children:(0,n.jsxs)("div",{className:"gr-block",children:[(0,n.jsxs)("h3",{children:[e.title,s&&(0,n.jsx)("span",{children:v[e.superseded]})]}),(0,n.jsxs)("table",{className:l,children:[s?(0,n.jsxs)("colgroup",{children:[(0,n.jsx)("col",{style:{width:"38mm"}}),(0,n.jsx)("col",{style:{width:"18mm"}}),(0,n.jsx)("col",{style:{width:"11mm"}}),(0,n.jsx)("col",{style:{width:"13mm"}}),(0,n.jsx)("col",{style:{width:"13mm"}}),(0,n.jsx)("col",{})]}):(0,n.jsxs)("colgroup",{children:[(0,n.jsx)("col",{style:{width:"58mm"}}),(0,n.jsx)("col",{}),(0,n.jsx)("col",{}),(0,n.jsx)("col",{}),(0,n.jsx)("col",{}),(0,n.jsx)("col",{})]}),(0,n.jsx)("thead",{children:(0,n.jsxs)("tr",{children:[(0,n.jsx)("th",{className:"gr-col-lead",children:"과목"}),s?(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("th",{children:"ì êµ ìì°¨"}),(0,n.jsx)("th",{children:"ë±ê¸"}),(0,n.jsx)("th",{children:"ë°±ë¶ì"}),(0,n.jsx)("th",{children:"ìì ì"}),(0,n.jsx)("th",{className:"gr-col-lead",children:b[e.superseded]})]}):(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("th",{children:"íì "}),(0,n.jsx)("th",{children:"ë±ê¸"}),(0,n.jsx)("th",{children:"ìê°ì ì"}),(0,n.jsx)("th",{children:"ìì ì"}),(0,n.jsx)("th",{children:"ì±ì·¨ë"})]})]})}),(0,n.jsx)("tbody",{children:e.rows.map(e=>{var l,r,t,a,i;return(0,n.jsxs)("tr",{children:[(0,n.jsx)("th",{scope:"row",children:e.subject}),s?(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("td",{children:e.rank&&e.totalStudents?"".concat(e.rank," / ").concat(e.totalStudents):"-"}),(0,n.jsx)("td",{className:"is-grade",children:null!==(l=e.gradeLevel)&&void 0!==l?l:"-"}),(0,n.jsx)("td",{children:e.percentileLabel}),(0,n.jsx)("td",{children:e.scoreLabel}),(0,n.jsx)("td",{className:"gr-col-lead",children:e.finalResult?(0,n.jsx)(f,{result:e.finalResult}):e.position?(0,n.jsx)(p,{position:e.position}):"-"})]}):(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("td",{children:null!==(r=e.credits)&&void 0!==r?r:"-"}),(0,n.jsx)("td",{className:"is-grade",children:null!==(t=e.gradeLevel)&&void 0!==t?t:"-"}),(0,n.jsx)("td",{children:null!==(a=e.totalStudents)&&void 0!==a?a:"-"}),(0,n.jsx)("td",{children:e.scoreLabel}),(0,n.jsx)("td",{children:null!==(i=e.achievement)&&void 0!==i?i:"-"})]})]},e.id)})})]})]})})},e.key)})]})]})})}function N(e){let{model:s,qrUrl:l,variant:r}=e;return(0,n.jsxs)("div",{className:"preview"===r?"grade-report grade-report--preview":"grade-report",children:[(0,n.jsx)(g,{model:s,qrUrl:l}),(0,n.jsx)(y,{model:s})]})}let k=new Map;async function w(e){var s,l;let n=await fetch("/api/admin/grade-links");if(!n.ok)throw Error("grade-links ".concat(n.status));let r=(null!==(s=(await n.json()).links)&&void 0!==s?s:[]).filter(e=>e.isActive).sort((e,s)=>new Date(s.createdAt).getTime()-new Date(e.createdAt).getTime()).flatMap(e=>e.studentPins).find(s=>s.studentId===e);return null!==(l=null==r?void 0:r.token)&&void 0!==l?l:null}async function M(e,s){let l=await w(e);if(l)return l;let n=await fetch("/api/admin/grade-links",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({label:"".concat(s," (").concat(new Date().getFullYear(),")"),studentIds:[e]})});if(!n.ok)throw Error("grade-links create ".concat(n.status));return w(e)}function L(e){let{model:s,studentId:l,isGuest:c,onClose:d}=e,o=function(e){let{studentId:s,studentName:l,enabled:n}=e,[t,a]=(0,r.useState)({url:null,status:"idle"});return(0,r.useEffect)(()=>
1{if(!n||!s){a({url:null,status:"idle"});return}let e=!1;a({url:null,status:"loading"});let r=k.get(s);return r||(r=M(s,l),k.set(s,r),r.catch(()=>void 0).finally(()=>k.delete(s))),r.then(s=>{if(!e){if(!s){a({url:null,status:"error"});return}a({url:"".concat(window.location.origin,"/report/").concat(s),status:"ready"})}}).catch(()=>{e||a({url:null,status:"error"})}),()=>{e=!0}},[s,l,n]),t}({studentId:l,studentName:s.student.name,enabled:!c}),h=(0,r.useRef)(null),[x,u]=(0,r.useState)(.8),[m,j]=(0,r.useState)(!1);(0,r.useEffect)(()=>j(!0),[]),(0,r.useLayoutEffect)(()=>{let e=h.current;if(!e)return;let s=()=>u(Math.min(1,Math.max(.4,(e.clientWidth-64)/794)));s();let l=new ResizeObserver(s);return l.observe(e),()=>l.disconnect()},[]),(0,r.useEffect)(()=>{let e=e=>{"Escape"===e.key&&d()};return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[d]),(0,r.useEffect)(()=>{let e=document.title,s=()=>{e=document.title,document.title="",document.documentElement.classList.add("gr-printing")},l=()=>{document.title=e,document.documentElement.classList.remove("gr-printing")};return window.addEventListener("beforeprint",s),window.addEventListener("afterprint",l),()=>{window.removeEventListener("beforeprint",s),window.removeEventListener("afterprint",l),document.documentElement.classList.remove("gr-printing")}},[]);let g=(0,r.useCallback)(()=>window.print(),[]),p="loading"===o.status,f=c?"ëë¬ë³´ê¸° ì¤ìë í´ëí° ì±ì í QRì´ ë¹ ì ¸ì":p?"í´ëí° ì±ì í QRì ì¤ë¹íê³ ìì´ì":"error"===o.status?"QRì ë§ë¤ì§ ëª»í´ QR ìì´ ì¸ìë¼ì":"ì¤ë¥¸ìª½ ì QRë¡ íìì´ í´ëí°ìì ì±ì ì ë³¼ ì ìì´ì";return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("div",{className:"fixed inset-0 z-[130] flex flex-col bg-zinc-950/40 backdrop-blur-[2px]",role:"dialog","aria-modal":"true","aria-label":"ì±ì 리í¬í¸ 미리보기",children:(0,n.jsxs)("div",{className:"m-4 md:m-6 flex-1 min-h-0 flex flex-col rounded-2xl overflow-hidden bg-white dark:bg-[#18181b] border border-zinc-200 dark:border-white/10 shadow-2xl",children:[(0,n.jsxs)("div",{className:"flex items-center justify-between gap-4 px-5 h-14 border-b border-zinc-200 dark:border-white/10 shrink-0",children:[(0,n.jsxs)("div",{className:"min-w-0",children:[(0,n.jsx)("h2",{className:"text-sm font-semibold text-zinc-900 dark:text-zinc-100",children:"ì±ì 리í¬í¸ 미리보기"}),(0,n.jsx)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400 truncate",children:f})]}),(0,n.jsxs)("div",{className:"flex items-center gap-2 shrink-0",children:[(0,n.jsxs)("button",{type:"button",onClick:d,className:"h-9 px-3 rounded-lg text-sm font-medium text-zinc-600 dark:text-zinc-300 hover:bg-zinc-100 dark:hover:bg-white/5 transition-colors inline-flex items-center gap-1.5",children:[(0,n.jsx)(a.Z,{size:15}),"ë«ê¸°"]}),(0,n.jsxs)("button",{type:"button",onClick:g,disabled:p,className:"btn-primary-solid h-9 px-4 rounded-lg text-sm font-semibold inline-flex items-center gap-1.5 transition-colors",children:[(0,n.jsx)(i.Z,{size:15}),"ì¸ì"]})]})]}),(0,n.jsx)("div",{ref:h,className:"flex-1 min-h-0 overflow-auto custom-scrollbar bg-zinc-100 dark:bg-[#0f0f11]",children:(0,n.jsx)("div",{className:"py-8 flex justify-center",children:(0,n.jsx)("div",{style:{zoom:x},children:(0,n.jsx)(N,{model:s,qrUrl:o.url,variant:"preview"})})})})]})}),m&&(0,t.createPortal)((0,n.jsx)("div",{className:"grade-report-print",children:(0,n.jsx)(N,{model:s,qrUrl:o.url,variant:"print"})}),document.body)]})}},75751:function(e,s,l){"use strict";l.d(s,{Kf:function(){return o},NX:function(){return h},lh:function(){return c},pQ:function(){return d}});var n=l(57437);l(2265);let r="#14171c",t="#8a919b",a="#1f3a6e",i=e=>e.toFixed(1);function c(e,s){let l=e.length?Math.max(...e):s;return s<=5?l>s?Math.min(9,Math.ceil(l)):s:Math.min(s,Math.max(5,Math.ceil(l)+1))}function d(e){let{points:s,maxGrade:l,title:d}=e,o=c(s.map(e=>e.value).filter(e=>null!==e),l),h=e=>30+(1===s.length?95:190*e/(s.length-1)),x=e=>18+102*(Math.min(e,o)-1)/(o-1),u=o<=6?Array.from({length:o},(e,s)=>s+1):Array.from({length:o},(e,s)=>s+1).filter(e=>e%2==1||e===o),m=[],j=[];
1return s.forEach((e,s)=>{if(null===e.value){j.length>1&&m.push(j.join(" ")),j=[];return}j.push("".concat(h(s).toFixed(1),",").concat(x(e.value).toFixed(1)))}),j.length>1&&m.push(j.join(" ")),(0,n.jsxs)("figure",{style:{margin:0},children:[(0,n.jsx)("p",{className:"gr-chart-title",children:d}),(0,n.jsxs)("svg",{className:"gr-chart",viewBox:"0 0 ".concat(240," ").concat(140),role:"img","aria-label":d,children:[u.map(e=>(0,n.jsxs)("g",{children:[(0,n.jsx)("line",{x1:16,x2:234,y1:x(e),y2:x(e),stroke:1===e?"#dcdfe4":"#eceef1",strokeWidth:.8}),(0,n.jsx)("text",{x:11,y:x(e)+3,fontSize:8,fill:t,textAnchor:"end",children:e})]},e)),m.map((e,s)=>(0,n.jsx)("polyline",{points:e,fill:"none",stroke:a,strokeWidth:1.8,strokeLinejoin:"round",strokeLinecap:"round"},s)),s.map((e,l)=>(0,n.jsxs)("g",{children:[(0,n.jsx)("text",{x:h(l),y:135,fontSize:8,fill:"#4a505a",textAnchor:"middle",children:e.label}),null!==e.value&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("circle",{cx:h(l),cy:x(e.value),r:3.1,fill:l===s.length-1?a:"#ffffff",stroke:a,strokeWidth:1.5}),(0,n.jsx)("text",{x:h(l),y:x(e.value)-6.5,fontSize:8.5,fontWeight:650,fill:r,textAnchor:"middle",paintOrder:"stroke",stroke:"#ffffff",strokeWidth:3,children:i(e.value)})]})]},"".concat(e.label,"-").concat(l)))]})]})}function o(e){var s,l,r,t,a,d;let{axes:o,maxGrade:h,label:x,palette:u}=e,m=null!==(s=null==u?void 0:u.ink)&&void 0!==s?s:"#14171c",j=null!==(l=null==u?void 0:u.secondary)&&void 0!==l?l:"#4a505a",g=null!==(r=null==u?void 0:u.muted)&&void 0!==r?r:"#8a919b",p=null!==(t=null==u?void 0:u.rule)&&void 0!==t?t:"#dcdfe4",f=null!==(a=null==u?void 0:u.softRule)&&void 0!==a?a:"#eceef1",v=null!==(d=null==u?void 0:u.accent)&&void 0!==d?d:"#1f3a6e",b=c(o.flatMap(e=>[e.primary,e.secondary]).filter(e=>null!==e),h),y=e=>58*(.14+.86*(b-Math.min(Math.max(e,1),b))/(b-1)),N=e=>-Math.PI/2+2*Math.PI*e/o.length,k=(e,s)=>[125+s*Math.cos(N(e)),94+s*Math.sin(N(e))],w=e=>e.map((e,s)=>null===e?null:k(s,y(e))).filter(e=>null!==e),M=e=>e.map(e=>{let[s,l]=e;return"".concat(s.toFixed(1),",").concat(l.toFixed(1))}).join(" "),L=Array.from({length:b},(e,s)=>s+1).filter(e=>b<=6||e%2==1||e===b),z=w(o.map(e=>e.primary)),E=w(o.map(e=>e.secondary));return(0,n.jsxs)("svg",{className:"gr-radar",viewBox:"0 0 ".concat(250," ").concat(178),role:"img","aria-label":x,children:[L.map(e=>(0,n.jsx)("polygon",{points:M(o.map((s,l)=>k(l,y(e)))),fill:"none",stroke:1===e?p:f,strokeWidth:.8},e)),o.map((e,s)=>{let[l,r]=k(s,58);return(0,n.jsx)("line",{x1:125,y1:94,x2:l,y2:r,stroke:f,strokeWidth:.8},s)}),z.length>=3&&(0,n.jsx)("polygon",{points:M(z),fill:v,fillOpacity:.13,stroke:v,strokeWidth:1.8,strokeLinejoin:"round"}),E.length>=3&&(0,n.jsx)("polygon",{points:M(E),fill:"none",stroke:m,strokeWidth:1.1,strokeDasharray:"3.5 2.5",strokeLinejoin:"round"}),o.map((e,s)=>{if(null===e.primary)return null;let[l,r]=k(s,y(e.primary));return(0,n.jsx)("circle",{cx:l,cy:r,r:2.8,fill:v},"p".concat(s))}),o.map((e,s)=>{let[l,r]=k(s,68),t=Math.cos(N(s)),a=t>.3?"start":t<-.3?"end":"middle",c=-.9>Math.sin(N(s)),d=Math.sin(N(s))>.5,o=c?r-13:d?r+6:r-2;return(0,n.jsxs)("g",{children:[(0,n.jsx)("text",{x:l,y:o,fontSize:11,fill:j,textAnchor:a,children:e.label}),(0,n.jsx)("text",{x:l,y:o+13.5,fontSize:13,fontWeight:700,fill:null===e.primary?g:m,textAnchor:a,children:null===e.primary?"-":i(e.primary)})]},"l".concat(s))})]})}function h(e){let{position:s}=e,l=e=>120*e/100,i=Math.min(Math.max(120*s.studentPosition,1.5),118.5);return(0,n.jsxs)("svg",{viewBox:"0 0 ".concat(120," ").concat(27),"aria-hidden":"true",children:[s.segments.map(e=>{let i=e.grade===s.currentGrade;return(0,n.jsxs)("g",{children:[(0,n.jsx)("rect",{x:l(e.startPct)+.6,y:7,width:Math.max(l(e.endPct-e.startPct)-1.2,0),height:7,rx:1,fill:i?"#e6ebf3":"#f1f2f4",stroke:i?a:"none",strokeWidth:i?.8:0}),(0,n.jsxs)("text",{x:l((e.startPct+e.endPct)/2),y:26,fontSize:7.5,fill:i?r:t,fontWeight:i?700:400,textAnchor:"middle",children:[e.grade,"ë±ê¸"]})]},e.grade)}),(0,n.jsx)("line",{x1:i,x2:i,y1:5,y2:15.5,stroke:r,strokeWidth:1.4}),(0,n.jsx)("path",{d:"M ".concat(i-3.2," ").concat(.5," L ").concat(i+3.2," ").concat(.5," L ").concat(i," ").concat(5.2," Z"),fill:r})]})}},49396:function(){}}]);
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.