PageSourceSearch

https://schoolhouse.world/_next/static/chunks/pages/admin/certifications/dashboard-8f28d6f7b33ee576.js

js schoolhouse.world collected 2026-09-24 09:10:34 UTC 6,639 bytes, 50 lines download raw bytes

1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[652],{26190:(e,r,i)=>{"use strict";i.d(r,{A:()=>R});var t=i(18153),a=i(39955),s=i(76032),n=i(82736),d=i(86623),c=i(91921),l=i(59803),o=i(99407),u=i(63973),A=i(2665),h=i(55791),_=i(83734),p=i(43043),w=i(64435),v=i(52276),$=i(14232),m=i(46304),N=i(46860),D=i(82899);function R({weekStart:e,heading:r,summaryStats:i,reviewerTableHeading:f,reviewerColumnHeaders:S,reviewerRows:g,reviewerEmptyMessage:T}){let[Y,O]=(0,$.useState)(!1),I=null!=r?r:null!=e?`Week of ${e.toFormat("LLLL dd")}`:"";return(0,t.FD)(a.a,{children:[(0,t.FD)(s.B,{direction:"row",align:"center",spacing:"12px",cursor:"pointer",onClick:()=>O(!Y),children:[(0,t.Y)(D.A,{faIcon:Y?v.Jt$:v.XkK,size:"md"}),(0,t.Y)(n.D,{size:"xl",children:I})]}),(0,t.Y)(d.S,{in:Y,children:(0,t.FD)(s.B,{direction:"column",ml:"32px",mt:"12px",spacing:"16px",children:[(0,t.Y)(n.D,{size:"lg",children:"Summary Stats"}),(0,t.Y)(s.B,{direction:"column",pl:"16px",spacing:"12px",children:i.map(({label:e,value:r})=>(0,t.FD)(s.B,{direction:"row",children:[(0,t.Y)(a.a,{minW:"280px",children:(0,t.Y)(c.E,{fontWeight:"bold",children:e})}),(0,t.Y)(c.E,{children:r})]},e))}),(0,t.Y)(n.D,{size:"lg",children:f}),(0,t.Y)(l.s,{flexDir:"column",children:(0,t.FD)(o.X,{variant:"simple",children:[(0,t.Y)(u.d,{children:(0,t.FD)(A.Tr,{children:[(0,t.Y)(h.Th,{children:"Reviewer"}),S.map(e=>(0,t.Y)(h.Th,{children:e},e))]})}),0===g.length?(0,t.Y)(_.r,{children:T}):null,(0,t.Y)(p.N,{children:g.map(({userId:e,displayName:r,cells:i})=>(0,t.FD)(A.Tr,{children:[(0,t.Y)(w.Td,{children:(0,t.Y)(N.A,{href:(0,m.hTK)(`user/${e}`),children:r})}),i.map((e,r)=>(0,t.Y)(w.Td,{children:e},S[r]))]},e))})]})})]})})]})}},34722:(e,r,i)=>{"use strict";i.d(r,{A:()=>t});let t={...i(55720).Ay}},36866:(e,r,i)=>{"use strict";i.r(r),i.d(r,{__N_SSP:()=>D,default:()=>R});var t=i(18153),a=i(42720),s=i(82736),n=i(61110),d=i(76032),c=i(44824),l=i(76221),o=i(34722),u=i(54443),A=i(75292),h=i(78919),_=i(30778),p=i(59676),w=i(26190);function v({startDate:e,endDate:r}){let i=(0,u.I)(),a=(0,A.Jd)(),s=(0,h.Xs)`
2        ${l.A.ready_for_review_at} >= ${e.toISO()}
3          AND ${l.A.ready_for_review_at} < ${r.toISO()}
4    `,n=(0,h.Xs)`
5          (${l.A.approved_at} IS NOT NULL OR ${l.A.rejected_at} IS NOT NULL)
6            AND ${l.A.user_id} != ${l.A.reviewer_user_id}
7            AND ${l.A.reviewer_user_id} IS NOT NULL`,d=i`
8      EXTRACT(EPOCH FROM AVG(${l.A.getReviewTime()}))
9        ${l.A.where({},(0,h.Xs)`${s} AND ${n}`)}
10      `,c=i`COUNT(*)
11      ${l.A.where({},(0,h.Xs)`${s}
12          AND ${n}
13          AND ${l.A.getReviewTime()} > ${_.CQ} * INTERVAL '1 DAY'
14          `)}`,$=i`COUNT(*)
15      ${l.A.where({},(0,h.Xs)`${s}
16          AND ${n}
17          AND ${l.A.getReviewTime()} <= ${_.CQ} * INTERVAL '1 DAY'
18          `)}`,m=(0,h.Xs)`(
19        (
20          ${l.A.approved_at} >= ${e.toISO()}
21            AND ${l.A.approved_at} < ${r.toISO()}
22        ) OR (
23          ${l.A.approved_at} IS NULL
24            AND ${l.A.rejected_at} >= ${e.toISO()}
25            AND ${l.A.rejected_at} < ${r.toISO()}
26        )
27      )`,N=(0,h.Xs)`reviewer_user_id`,D=(0,h.Xs)`count_reviewed_certification_requests`,R=(0,h.Xs)`display_name`,f=(0,p.A)(a,"admin:certifications:all-stats:view"),S=i.many((0,h.Xs)`
28        FROM
29        (
30          WITH aggregated_certification_requests AS (
31            SELECT
32              ${l.A.reviewer_user_id} AS ${N},
33              COUNT(${l.A.id}) as ${D}
34            ${l.A.where({reviewerUserId:f?void 0:a.id,groupBy:[l.A.reviewer_user_id]},(0,h.Xs)`${n} AND ${m}`)}
35          )
36          SELECT
37            ${N},
38            ${D},
39            ${o.A.display_name} AS ${R}
40          FROM aggregated_certification_requests
41          JOIN ${o.A} ON ${o.A.id} = aggregated_certification_requests.reviewer_user_id
42          ORDER BY count_reviewed_certification_requests DESC
43        ) AS res
44      `).map(e=>({userId:e(N)??0,countReviewedCertificationRequests:e(D)??0,displayName:e(R)??""}));return(0,t.Y)(w.A,{weekStart:e,summaryStats:[{label:"Average Days to Review",value:(null!=d?d/86400:null)?.toFixed(2)},{label:`# Reviewed in Less Than ${_.CQ} Days`,value:$},{label:`# Reviewed in More Than ${_.CQ} Days`,value:c}],reviewerTableHeading:f?"Stats by Reviewer":"Your Stats",reviewerColumnHeaders:["# Reviewed Certification Requests"],reviewerRows:S.map(e=>({userId:e.userId,displayName:e.displayName,cells:[e.countReviewedCertificationRequests]})),reviewerEmptyMessage:"No certification requests have been reviewed."})}function $(){let e=Array.from({length:4}).map((e,r)=>r).map(e=>({startDate:c.c9.utc().minus({weeks:e}
44).startOf("week"),endDate:c.c9.utc().minus({weeks:e}).endOf("week")}));return(0,t.Y)(d.B,{direction:"column",spacing:"16px",children:e.map(({startDate:e,endDate:r})=>(0,t.Y)(v,{startDate:e,endDate:r},e.toISO()))})}var m=i(49783);let N=(0,n.A)(function(){return(0,t.Y)(m.A,{title:"Dashboard",children:(0,t.FD)(a.m,{children:[(0,t.Y)(s.D,{size:"2xl",as:"h1",mb:"24px",children:"Certification Review Dashboard"}),(0,t.Y)($,{})]})})},{userRoles:["admin:certifications"]});var D=!0;let R=N},55791:(e,r,i)=>{"use strict";i.d(r,{Th:()=>d});var t=i(37876),a=i(99407),s=i(11842),n=i(85696);let d=(0,s.R)(({isNumeric:e,...r},i)=>{let s=(0,a.k)();return(0,t.jsx)(n.B.th,{...r,ref:i,__css:s.th,"data-is-numeric":e})})},56780:(e,r,i)=>{(window.__NEXT_P=window.__NEXT_P||[]).push(["/admin/certifications/dashboard",function(){return i(36866)}])},61110:(e,r,i)=>{"use strict";i.d(r,{A:()=>a});var t=i(16425);function a(e,r){return null!=r.userRoles&&r.userRoles.forEach(e=>{if(!e.startsWith("admin:"))throw Error("Cannot expose admin page to non-admins!")}),(0,t.A)(e,{authScopes:r.authScopes,userRoles:r.userRoles,onboardingUsers:"disallowed"})}},63973:(e,r,i)=>{"use strict";i.d(r,{d:()=>d});var t=i(37876),a=i(99407),s=i(11842),n=i(85696);let d=(0,s.R)((e,r)=>{let i=(0,a.k)();return(0,t.jsx)(n.B.thead,{...e,ref:r,__css:i.thead})})},76221:(e,r,i)=>{"use strict";i.d(r,{A:()=>d});var t=i(78919),a=i(6869),s=i(13792);let n={...a.Ay,whereUnapprovedRecordings:()=>(0,t.Xs)`
45        ${n.where({reviewed:"unreviewed"})} AND
46        ${n.recording_approved_at} IS NULL
47    `,getReviews:()=>(0,t.Xs)`
48        ${s.A.where({certificationRequestId:n.id})}
49    `},d=n},83734:(e,r,i)=>{"use strict";i.d(r,{r:()=>d});var t=i(37876),a=i(99407),s=i(11842),n=i(85696);let d=(0,s.R)((e,r)=>{let{placement:i="bottom",...s}=e,d=(0,a.k)();return(0,t.jsx)(n.B.caption,{...s,ref:r,__css:{...d.caption,captionSide:i}})});d.displayName="TableCaption"}},e=>{e.O(0,[6425,636,6593,8792],()=>e(e.s=56780)),_N_E=e.O()}]);
50//# sourceMappingURL=dashboard-8f28d6f7b33ee576.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.