PageSourceSearch

https://roar.education/assets/ProgressReport-DkNtZVwN.js

js roar.education collected 2026-09-28 09:38:33 UTC 14,156 bytes, 2 lines download raw bytes

1import{d as ne,s as le,o as ve,bF as ye,l as de,w as he,S as X,e as Se,h as Te,i as xe,g as be}from"./index-HmgwubOw.js";import{h as _e,u as Ae}from"./useAdministrationsQuery-DXvXiKI-.js";import{a4 as Pe,a3 as L,U as P,Q as b,ac as Ie,a9 as De,u as l,l as C,V as E,y as F,F as M,a2 as Ee,P as q,Y as V,r as w,e as J,j as Re,$ as ke,O as j}from"./tanstack-BuE7OpQV.js";import"./lodash-BxsARtUA.js";import{u as we,a as Oe,R as Ne,g as Ce}from"./ReportHeader-3przT2ha.js";import{u as Le}from"./useDistrictSchoolsQuery--9ZLY-Aq.js";import{u as $e}from"./useTasksDictionaryQuery-BtNZzgjG.js";import{s as Z,b as ee,g as Fe}from"./plotting-CAkhz-rb.js";import{S as Ve}from"./orgTypes-D1Tk9MA4.js";import{b as te,_ as se,a as Ue}from"./RoarDataTable-BJv7Rb61.js";import{P as G,s as re}from"./completionStatus-DWBm6L1b.js";import{l as qe,m as N}from"./firekit-DmdkEPY9.js";import{t as U}from"./reports-GIhMAX5m.js";import"./sentry-CYO7dHw2.js";import"./useFamiliesQuery-CPL4Ojse.js";import"./assignments-CUPZwg5o.js";import"./find-CaGwutx_.js";import"./groupBy-B6meMME1.js";import"./_baseEach-DMRN0qVq.js";import"./uniq-C6Yc7FeD.js";import"./index-C78wIlDn.js";import"./index-D81auZQy.js";import"./index-CNxDTBGV.js";import"./orgs-DHsn2MnM.js";import"./useTasksQuery-CNnm9wrO.js";import"./tasks-BlLNIGrX.js";import"./index-ezxKorcX.js";import"./index-BU5NGlAJ.js";import"./index-ChPZIrTd.js";import"./index-COA6yLlz.js";import"./index-DCS1PZMx.js";import"./index-jyn2HCXX.js";import"./index-BPUEvB0O.js";import"./index-DupnZpD9.js";import"./index-DE9lF9aN.js";import"./index-CEVVeswO.js";import"./index-DpsTCdm1.js";import"./index-BCzVsn89.js";import"./index-DD_oVdbu.js";import"./index-nEfO_SFH.js";import"./index-DUAoq_eV.js";import"./index-DVLHuE0S.js";import"./forEach-DyqQpepD.js";import"./_arrayEach-DVlopui1.js";import"./toUpper-DgrhQGlk.js";import"./startCase-C44fsGRj.js";import"./lowerCase-BPOiiq7z.js";import"./utils-COmCBZmj.js";import"./roam-DIm4uuSo.js";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},r=new e.Error().stack;r&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[r]="aa1e0a73-116c-428b-92d8-f98597b06160",e._sentryDebugIdIdentifier="sentry-dbid-aa1e0a73-116c-428b-92d8-f98597b06160")}catch{}})();const Qe=(e,r,p,g=null,i=!1,s=void 0)=>{const n=ne(),{roarfirekit:t}=le(n),d=[()=>_e(e),()=>{var c;return(c=t.value)==null?void 0:c.getAssignmentStats}],{isQueryEnabled:x,options:a}=ve(d,s);return Pe({queryKey:[ye,e,r,p,g,i],queryFn:async()=>{const c={administrationIds:L(e)},f=L(r),u=L(p);if(f&&!u)throw new Error("orgType is required when orgId is provided");f&&u&&(c.orgId=f,c.orgType=u);const S=L(g);S&&(c.taskIds=S);const y=L(i);y&&(c.fetchAllTaskIds=y);const{data:v}=await t.value.getAssignmentStats(c);return L(e).map(_=>v[_])},enabled:x,...a})},Ge={__name:"ProgressLegend",setup(e){return(r,p)=>(b(),P("div",{class:"flex mx-5 flex-column align-items-center",style:De({"--color-completed":l(G).COMPLETED,"--color-started":l(G).STARTED,"--color-assigned":l(G).ASSIGNED})},[...p[0]||(p[0]=[Ie('<div class="flex flex-wrap gap-3 px-2 py-1 rounded justify-content-around align-items-center" data-v-033d3996><div class="flex flex-row gap-2 text-sm font-light align-items-center" data-v-033d3996><div class="legend-circle legend-circle--completed" data-v-033d3996></div><div data-v-033d3996>Completed</div></div><div class="flex flex-row gap-2 text-sm font-light align-items-center" data-v-033d3996><div class="legend-circle legend-circle--started" data-v-033d3996></div><div data-v-033d3996>Started</div></div><div class="flex flex-row gap-2 text-sm font-light align-items-center" data-v-033d3996><div class="legend-circle legend-circle--assigned" data-v-033d3996></div><div data-v-033d3996>Assigned</div></div></div><div class="mt-1 text-xs font-light text-gray-500 uppercase" data-v-033d3996>Legend</div>',2)])],4))}},Me=de(Ge,[["__scopeId","data-v-033d3996"]]),je={class:"flex flex-wrap gap-3 p-5 bg-gray-100 rounded flex-column align-items-around"},Be={class:"chart-grid"},Ye={key:0,class:"chart-label text-lg font-bold text-gray-600"},ze={class:"whitespace-nowrap"},He={key:0,class:"text-sm font-light uppercase label-secondary"},Ke={key:1,class:"chart-label whitespace-nowrap text-lg font-bold text-gray-600"},We={class:"chart-label text-xl font-bold text-gray-600"},Xe={class:"text-sm font-light label-secondary"},Je={__name:"ProgressStatsOverview",props:{adminStats:{type:Object,required:!0},administrationData:{type:Object,required:!0},tasksDictionary:{type:Object,required:!0}},setup(e){const r=e,p=C(()=>{var s,n,t;return(((s=r.adminStats)==null?void 0:s.assigned)||0)+(((n=r.adminStats)==null?void 0:n.started)||0)+(((t=r.adminStats)==null?void 0:t.completed)||0)}),g=s=>{var n,t;return((t=(n=r.adminStats)==null?void 0:n.byTask)==null?void 0:t[s])||{assigned:0,started:0,
1completed:0}},i=()=>{var s,n,t;return{assigned:((s=r.adminStats)==null?void 0:s.assigned)||0,started:((n=r.adminStats)==null?void 0:n.started)||0,completed:((t=r.adminStats)==null?void 0:t.completed)||0}};return(s,n)=>(b(),P("div",je,[E("div",Be,[n[1]||(n[1]=E("div",{class:"chart-section-header"},"Progress by Assessment",-1)),(b(!0),P(M,null,Ee(e.administrationData.assessments,({taskId:t})=>{var d,x;return b(),P(M,{key:t},[e.tasksDictionary[t]?(b(),P("div",Ye,[E("span",ze,V(((d=e.tasksDictionary[t])==null?void 0:d.technicalName)??t),1),e.tasksDictionary[t].name?(b(),P("span",He," ("+V((x=e.tasksDictionary[t])==null?void 0:x.publicName)+") ",1)):q("",!0)])):(b(),P("div",Ke,V(t),1)),F(l(re),{type:"bar",data:l(ee)(g(t)),options:l(Z)(g(t)),class:"h-2rem chart-item"},null,8,["data","options"])],64)}),128)),n[2]||(n[2]=E("div",{class:"chart-section-header mt-2"},"Total Assignment Progress",-1)),E("div",We,[n[0]||(n[0]=E("span",{class:"whitespace-nowrap"},"Total",-1)),E("span",Xe," ("+V(p.value)+" total assignments) ",1)]),F(l(re),{type:"bar",data:l(ee)(i()),options:l(Z)(i()),class:"h-3rem chart-item"},null,8,["data","options"])]),F(l(Me))]))}},Ze=de(Je,[["__scopeId","data-v-95f505e1"]]),ae=[{name:"Progress Report",constant:!0},{name:"Score Report",constant:!1}],oe=["swr","sre","pa"],k={OPTIONAL:{value:"optional",icon:"pi pi-question",severity:"info",tag:"Optional"},COMPLETED:{value:"completed",icon:"pi pi-check",severity:"success",tag:"Completed"},STARTED:{value:"started",icon:"pi pi-spinner-dotted",severity:"warning",tag:"Started"},ASSIGNED:{value:"assigned",icon:"pi pi-book",severity:"danger",tag:"Assigned"}},ie=[{order:"1",field:"user.grade"},{order:"1",field:"user.lastName"}],et={order:"1",field:"user.schoolName"},tt=10;function st(e,r,p,g,i,s,n){return{progressReportColumns:C(()=>{var S,y,v,_,I;if(n.value||r.value===void 0)return[];const d=[],{userCan:x}=he(),a=(S=e.value)!=null&&S.dateClosed?new Date((y=e.value)==null?void 0:y.dateClosed)>new Date:!1;if(x(qe.Permissions.Tasks.LAUNCH)&&a&&d.push({header:"Launch Student",launcher:!0,routeName:"LaunchHome",routeTooltip:"Launch Student Assessment",routeIcon:"pi pi-arrow-right border-none text-primary hover:text-white",sort:!1,pinned:!0}),r.value.find(o=>{var m;return(m=o.user)==null?void 0:m.username})&&d.push({field:"user.username",header:"Username",dataType:"text",pinned:!0,sort:!0,filter:!0}),r.value.find(o=>{var m;return(m=o.user)==null?void 0:m.email})&&d.push({field:"user.email",header:"Email",dataType:"text",pinned:!0,sort:!0,filter:!0}),r.value.find(o=>{var m,A;return(A=(m=o.user)==null?void 0:m.name)==null?void 0:A.first})&&d.push({field:"user.firstName",header:"First Name",dataType:"text",sort:!0,filter:!0}),r.value.find(o=>{var m,A;return(A=(m=o.user)==null?void 0:m.name)==null?void 0:A.last})&&d.push({field:"user.lastName",header:"Last Name",dataType:"text",sort:!0,filter:!0}),d.push({field:"user.grade",header:"Grade",dataType:"text",sort:!0,filter:!0}),s==="district"){const o=(v=g.value)==null?void 0:v.reduce((m,A)=>(m[A.id]=A.name,m),{});d.push({field:"user.schoolName",header:"School",dataType:"text",sort:!0,filter:!1,useMultiSelect:!0,multiSelectOptions:g.value.map(m=>m.name),multiSelectPlaceholder:"Filter by School",schoolsMap:o})}i.isUserSuperAdmin&&d.push({field:"user.assessmentPid",header:"PID",dataType:"text",sort:!1});const c=(_=e.value.assessments)==null?void 0:_.map(o=>o.taskId),f=c==null?void 0:c.sort((o,m)=>Object.keys(U).includes(o)&&Object.keys(U).includes(m)?U[o].order-U[m].order:-1),u=[];for(const o of oe)f.includes(o)&&u.push(o);for(const o of f)oe.includes(o)||u.push(o);for(const o of u)d.push({field:`progress.${o}.value`,filterField:`progress.${o}.tags`,header:((I=p.value[o])==null?void 0:I.publicName)??o,dataType:"progress",tag:!0,severityField:`progress.${o}.severity`,iconField:`progress.${o}.icon`,sort:!0});return d})}}function rt(e,r){return{computedProgressData:C(()=>{var i,s,n,t,d;if(!e.value)return[];const g=[];for(const{assignment:x,user:a}of e.value){const c=String((i=x.userData)==null?void 0:i.grade);let f="";const u=(s=a==null?void 0:a.schools)==null?void 0:s.current[0];u&&(f=r.value[u]);const S={user:{username:a.username,email:a.email,userId:a.userId,firstName:(n=a.name)==null?void 0:n.first,lastName:(t=a.name)==null?void 0:t.last,grade:c,assessmentPid:a.assessmentPid,schoolName:f}
1,routeParams:{userId:a.userId},launchTooltip:`View assessment portal for ${((d=a.name)==null?void 0:d.first)??a.username??"user"}`},y={};for(const v of x.assessments){let _="";const I=v.taskId;v!=null&&v.optional?(y[I]={...k.OPTIONAL},_+=` ${k.OPTIONAL.tag} `):(v==null?void 0:v.completedOn)!==void 0?(y[I]={...k.COMPLETED},_+=` ${k.COMPLETED.tag} `):(v==null?void 0:v.startedOn)!==void 0?(y[I]={...k.STARTED},_+=` ${k.STARTED.tag} `):(y[I]={...k.ASSIGNED},_+=` ${k.ASSIGNED.tag} `),y[I].tags=_,S.progress=y}g.push(S)}return g})}}function at(e,r,p,g,i,s,n){const t=(a,c)=>{var u;let f={Username:N(a,"username"),Email:N(a,"email"),First:N(a,"firstName"),Last:N(a,"lastName"),Grade:N(a,"grade")};s.isUserSuperAdmin&&(f.PID=N(a,"assessmentPid")),n==="district"&&(f.School=N(a,"schoolName"));for(const S in c)f[((u=r.value[S])==null?void 0:u.publicName)??S]=c[S].value;return f};return{exportSelected:a=>{const c=te(a,({user:f,progress:u})=>t(f,u));X(c,"roar-progress-selected.csv")},exportAll:()=>{const a=te(e.value,({user:f,progress:u})=>t(f,u)),c=`roar-progress-${se(i.value)}-${se(g.value.name)}.csv`;X(a,c)}}}function ot(e){const r=w([]),p=w([]),g=w(e.value);return J(e,s=>{g.value=s}),J([r,p],([s,n])=>{if(s.length>0||n.length>0){let t=e.value;s.length>0&&(t=t.filter(d=>s.includes(d.user.schoolName))),n.length>0&&(t=t.filter(d=>n.includes(d.user.grade))),g.value=t}else g.value=e.value}),{filterSchools:r,filterGrades:p,filteredTableData:g,resetFilters:()=>{r.value=[],p.value=[]}}}const it={class:"container main"},nt={class:"main-body"},lt={key:0,class:"my-4 flex flex-column align-items-center justify-content-center w-full"},dt={key:0},ut={__name:"ProgressReport",props:{administrationId:{type:String,required:!0},orgType:{type:String,required:!0},orgId:{type:String,required:!0}},setup(e){const r=Se(),p=ne(),{roarfirekit:g}=le(p),i=e,s=w(!1),n=w(ae[0]),t=w(tt),d=w(i.orgType==="district"?[et,...ie]:[...ie]),{data:x,isLoading:a}=$e({enabled:s}),{data:c}=Te({enabled:s}),{isSuperAdmin:f}=xe(c),{data:u}=Ae([i.administrationId],{enabled:s,select:h=>h[0]}),{data:S}=Qe([i.administrationId],i.orgId,i.orgType,null,!0,{enabled:s,select:h=>h[0]}),{data:y}=Le(i.orgId,{enabled:i.orgType===Ve.DISTRICTS&&s}),{data:v}=we(i.orgType,[i.orgId],{enabled:s,select:h=>h[0]}),{isLoading:_,isFetching:I,data:o}=Oe(i.administrationId,i.orgType,i.orgId,{enabled:s}),m=C(()=>_.value||a.value),A=C(()=>u.value?Fe(u.value,f.value):""),ue=C(()=>y.value?y.value.reduce((h,T)=>(h[T.id]=T.name,h),{}):{}),{computedProgressData:B}=rt(o,ue),{progressReportColumns:Y}=st(u,o,x,y,p,i.orgType,a),{exportSelected:ce,exportAll:pe}=at(B,x,u,v,A,p,i.orgType),{filteredTableData:z,resetFilters:me}=ot(B),ge=()=>{const{administrationId:h,orgType:T,orgId:D}=i;r.push({path:Ce(be.SCORE_REPORT,{administrationId:h,orgType:T,orgId:D})})},fe=C(()=>{var T,D,R;return(T=u.value)!=null&&T.assessments?Object.fromEntries((R=(D=u.value)==null?void 0:D.assessments)==null?void 0:R.map(O=>{var $;return[O.taskId,(($=O==null?void 0:O.params)==null?void 0:$.scoringVersion)??null]})):{}});let Q;const H=w(!1),K=()=>{H.value=!0,Q&&Q(),H.value=!1,s.value=!0};return Q=p.$subscribe(async(h,T)=>{var D,R;(R=(D=T.roarfirekit).restConfig)!=null&&R.call(D)&&K()}),Re(async()=>{var h,T;(T=(h=g.value).restConfig)!=null&&T.call(h)&&K()}),(h,T)=>{var R,O,$,W;const D=ke("AppSpinner");return b(),P("main",it,[E("section",nt,[m.value?(b(),P("div",lt,[F(D,{class:"my-4"}),T[0]||(T[0]=E("div",{class:"text-sm font-light text-gray-600 uppercase"},"Loading Progress Report",-1))])):(b(),P(M,{key:1},[F(Ne,{"org-type":i.orgType,"org-name":(R=l(v))==null?void 0:R.name,"administration-name":A.value,"report-type":"Progress","report-view":n.value,"report-views":l(ae),onViewChange:ge},null,8,["org-type","org-name","administration-name","report-view","report-views"]),(O=l(o))!=null&&O.length?(b(),P("div",dt,[l(S)?(b(),j(l(Ze),{key:0,"admin-stats":l(S),"administration-data":l(u),"tasks-dictionary":l(x)},null,8,["admin-stats","administration-data","tasks-dictionary"])):q("",!0),(($=l(Y))==null?void 0:$.length)??!1?(b(),j(l(Ue),{key:1,data:l(z),columns:l(Y),"total-records":(W=l(z))==null?void 0:W.length,loading:l(_)||l(I),"task-scoring-versions":fe.value,"page-limit":t.value,"allow-export-pdf":!1,"reset-filters":l(me),"lazy-pre-sorting":d.value,onExportSelected:l(ce),onExportAll:l(pe)},null,8,["data","columns","total-records","loading","task-scoring-versions","page-limit","reset-filters","lazy-pre-sorting","onExportSelected","onExportAll"])):q("",!0)])):q("",!0)],64))])])}}},is={__name:"ProgressReport",props:{administrationId:{type:String,required:!0},orgType:{type:String,required:!0},orgId:{type:String,required:!0}},setup(e){return(r,p)=>(b(),j(l(ut),{"administration-id":e.administrationId,"org-type":e.orgType,"org-id":e.orgId},null,8,["administration-id","org-type","org-id"]))}};export{is as default};
2//# sourceMappingURL=ProgressReport-DkNtZVwN.js.map

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.