PageSourceSearch

https://alivecode.ca/3204.1ef23897f4cda8dc3f0d.js

js alivecode.ca collected 2026-10-08 06:44:28 UTC 65,000 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunkalivecode_frontend=self.webpackChunkalivecode_frontend||[]).push([[3204,4917],{18988(e,t,n){n.d(t,{mV:()=>a});var r=n(13600),o=function(e){return e[e.SUPER_USER=0]="SUPER_USER",e[e.ADMIN=1]="ADMIN",e[e.MOD=2]="MOD",e[e.STAFF=3]="STAFF",e[e.PROFESSOR=4]="PROFESSOR",e[e.STUDENT=5]="STUDENT",e}({}),a=(o.SUPER_USER,o.ADMIN,o.MOD,function(e,t,n,o){return o.roles||(o.roles=[]),o.options||(o.options={}),o.options.onlyThisRole||(o.options.onlyThisRole=!1),o.roles.length<=0||(o.options.onlyThisRole?o.roles.includes(t):o.roles.some(function(o){return e===n||t===r.oW.COURSE_CREATOR||(t===r.oW.PROFESSOR?o!==r.oW.COURSE_CREATOR:t===r.oW.TA||t===r.oW.TUTOR?o!==r.oW.COURSE_CREATOR&&o!==r.oW.PROFESSOR:t===r.oW.STUDENT||t===r.oW.PROFESSOR_INVITED?o!==r.oW.COURSE_CREATOR&&o!==r.oW.PROFESSOR&&o!==r.oW.TA&&o!==r.oW.TUTOR:void 0)}))})},29690(e,t,n){n.r(t),n.d(t,{default:()=>nn});var r=n(73620),o=n(45458),a=n(10467),s=n(80296),i=n(54756),c=n.n(i),l=n(96540),u=n(63710),d=n(83924),v=n(87105),m=n(14837),p=n(46666),f=n(64467),g=n(44653),b=n(73272),A=n(90855),h=n(92901),y=n(23029),x=(0,h.A)(function e(){(0,y.A)(this,e),(0,f.A)(this,"name",void 0),(0,f.A)(this,"description",void 0),(0,f.A)(this,"code",void 0),(0,f.A)(this,"subject",void 0),(0,f.A)(this,"access",void 0),(0,f.A)(this,"nbHours",void 0),(0,f.A)(this,"subTitle",void 0),(0,f.A)(this,"requirements",void 0),(0,f.A)(this,"skillsToLearn",void 0),(0,f.A)(this,"level",void 0)}),w=n(50675),N=n(49785),O=n(29016),S=n(56755),T=n(45066),C=n(67050),E=n(74848);function k(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function P(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?k(Object(n),!0).forEach(function(t){(0,f.A)(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):k(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}const D=function(e){var t=e.course,n=(0,l.useState)(!1),o=(0,s.A)(n,2),i=o[0],d=o[1],v=(0,l.useRef)(new Set),p=(0,l.useState)(),f=(0,s.A)(p,2),h=f[0],y=f[1],k=(0,C.A)(),D=k.uploadImage,j=k.updateCourse,I=(0,u.Bd)().t,_=(0,l.useState)(),R=(0,s.A)(_,2),U=(R[0],R[1]),M=(0,l.useRef)(null),F=(0,O.MW)(),B=(0,N.mN)({defaultValues:(0,l.useMemo)(function(){return(0,w.bj)(x,P(P({},null!=t?t:{}),{},{name:t.name,subTitle:t.subTitle,description:t.description}))},[t])}),L=B.register,Q=B.reset,q=B.getValues,K=B.setValue,Z=function(e,t){return L(e,P(P({},t),{},{onChange:function(n){var r;d(!0),v.current.add(e),null==t||null===(r=t.onChange)||void 0===r||r.call(t,n)}}))};(0,l.useEffect)(function(){t&&Q((0,w.bj)(x,P(P({},null!=t?t:{}),{},{name:t.name,subTitle:t.subTitle,description:t.description})))},[]),(0,S.A)(i);var z=(0,l.useCallback)((0,a.A)(c().mark(function e(){var n,r,o;return c().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(t){e.next=1;break}return e.abrupt("return");case 1:return(n=q()).level=n.level||null,r=n.imageFile,delete n.imageFile,y(!0),e.next=2,j(t.id,n);case 2:if(o=e.sent,e.prev=3,!r){e.next=5;break}return e.next=4,D(t.id,r);case 4:F.success(I("course.manager.saved"));case 5:e.next=7;break;case 6:e.prev=6,e.catch(3),F.error(I("course.manager.img_error"));case 7:Object.assign(t,o),d(!1),v.current.clear(),y(!1);case 8:case"end":return e.stop()}},e,null,[[3,6]])})),[h,t,q]);return(0,E.jsxs)(E.Fragment,{children:[(0,r.A)("div",{className:"sticky -top-4 z-10 rounded-t-lg border-b-2 border-gray-200 bg-bg p-4"},void 0,(0,r.A)("h1",{className:"inline font-montserrat text-xl font-bold"},void 0,I("course.manager.display.title")),!1===h&&!i&&(0,r.A)("label",{className:"pl-4"},void 0,I("course.manager.saved")),i&&(0,r.A)(m.$n,{variant:"primary",Icon:T.bgB,loading:h,onClick:z,type:"button",className:"ml-4"},void 0,I("course.manager.save"))),(0,r.A)("div",{className:"p-4"},void 0,(0,E.jsx)(m.InputGroup,P({label:I("course.manager.display.name.label"),maxLength:60,placeholder:I("course.manager.display.name.placeholder")},Z("name",{required:!0,maxLength:60}
1))),(0,E.jsx)(m.InputGroup,P(P({as:"select",label:I("course.manager.display.subject.label")},Z("subject",{required:!0})),{},{children:Object.entries(b.u0).map(function(e){var t=(0,s.A)(e,2),n=t[0],o=t[1];return(0,r.A)("option",{value:o},n,I("msg.subjects.".concat(n.toUpperCase())))})})),(0,E.jsx)(m.InputGroup,P({as:"textarea",label:I("course.manager.display.subTitle.label"),info:I("course.manager.display.subTitle.help"),infoPosition:"left",maxLength:200,placeholder:I("course.manager.display.subTitle.placeholder")},Z("subTitle",{required:!0,maxLength:200}))),(0,E.jsx)(m.InputGroup,P({as:"textarea",label:I("course.manager.display.desc.label"),maxLength:1e3,placeholder:I("course.manager.display.desc.placeholder")},Z("description",{required:!0,maxLength:1e3}))),(0,E.jsx)(m.InputGroup,P({type:"number",label:I("course.manager.display.nbHours.label")},Z("nbHours",{required:!0,max:1e4}))),(0,r.A)("div",{className:"mb-4"},void 0,(0,r.A)(m.lR,{info:I("course.manager.display.image.help"),infoPosition:"left"},void 0,I("course.manager.display.image.label")),(0,r.A)("div",{className:"flex flex-col items-center gap-12 tablet:flex-row"},void 0,(0,E.jsx)("img",{width:260,height:163,className:"h-[163px] w-[260px] bg-black object-cover",ref:M,src:t.imageSrc?t.image:g}),(0,r.A)(m.m,{acceptedFiles:".png,.jpeg,.jpg,.webp",onFileUpload:function(e){if(e[0]){var t=e[0];U(t),d(!0);var n=new FileReader;n.onload=function(e){if(!e.target||"string"!=typeof e.target.result)return U(void 0);M.current&&(M.current.src=e.target.result)},n.readAsDataURL(t),K("imageFile",t,{shouldDirty:!0})}}}))),(0,E.jsxs)(m.InputGroup,P(P({as:"select",label:I("course.manager.display.level.label")},Z("level",{required:!0})),{},{children:[Object.values(A.Xz).map(function(e){return(0,r.A)("option",{value:e},e,I("course.levels.".concat(e)))}),(0,r.A)("option",{value:""},void 0,I("course.levels.none"))]})))]})};var j=n(15605),I=n(35528),_=n(71083);const R=function(e){var t=e.course,n=(0,p.A)().routes,o=(0,u.Bd)().t,s=(0,O.MW)(),i=(0,v.Zp)(),l=function(){var e=(0,a.A)(c().mark(function e(){var r,a;return c().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=1,I.A.db.courses.delete({id:t.id});case 1:s.success(o("course.manager.danger.delete.success")),i(n.auth.dashboard.path+"/studio"),e.next=3;break;case 2:e.prev=2,a=e.catch(0),_.A.isAxiosError(a)&&403===(null===(r=a.response)||void 0===r?void 0:r.status)?s.error(o("course.manager.danger.delete.403")):s.error(o("error.unknown"));case 3:case"end":return e.stop()}},e,null,[[0,2]])}));return function(){return e.apply(this,arguments)}}();return(0,r.A)(m.mw,{handleDelete:l,deleteCheck:t.name,label:o("course.manager.danger.delete.label"),help:o("course.manager.danger.delete.help"),deleteCheckHelp:o("course.manager.danger.delete.check"),deleteButtonLabel:o("course.manager.danger.delete.button")})};var U=n(80980),M=n(83719),F=n(13600),B=n(18988),L=n(9421),Q=n(48033),q=n(50856),K=n(18355),Z=n(94154);const z=function(e){var t=e.course,n=(0,u.Bd)().t;return(0,E.jsxs)(E.Fragment,{children:[(0,r.A)(m.ZT,{variant:"primary",className:"mb-4"},void 0,(0,r.A)(m.DZ,{size:"h2",className:"mb-2"},void 0,n("course.manager.config.help")),n("course.manager.config.help_content").split("\n").map(function(e,t){return(0,r.A)("p",{className:"pb-2"},t,e)})),(0,r.A)(Z.A,{level:"course",id:t.id})]})};var Y=n(13364),W=n(63064),G=n(30126),V=n(45483),H=n(95093),$=n.n(H);const J=function(e){var t,n,o=e.session,i=e.onClick,d=e.manage,v=(0,u.Bd)().t,p=(0,G.A)(),f=p.startSession,g=p.endSession,b=(0,l.useState)(!1),A=(0,s.A)(b,2),h=(A[0],A[1]),y=(0,l.useState)(!1),x=(0,s.A)(y,2),w=x[0],N=x[1],O=$()(o.endTime).diff($()())/1e3,S=O>0,T=(t=o.startTime,n=o.endTime,t.getFullYear()===n.getFullYear()&&t.getMonth()===n.getMonth()&&t.getDate()===n.getDate()),C=function(){var e=(0,a.A)(c().mark(function e(){return c().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return h(!0),e.next=1,f(o.courseId,o.id);case 1:null==d||d.onStartSession(o.id),h(!1);case 2:case"end":return e.stop()}},e)}));return function(){return e.apply(this,arguments)}}(),E=function(){var e=(0,a.A)(c().mark(function e(){return c().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return h(!0),e.next=1,g(o.courseId,o.id);case 1:null==d||d.onEndSession(o.id),h(!1);case 2:case"end":return e.stop()}},e)}));return function(){return e.apply(this,arguments)}}();return(0,r.A)("div",{className:"mb-2 cursor-pointer rounded-lg border border-primary-200 p-2 transition-all duration-200 hover:border-primary-500 hover:bg-primary-50 hover:text-primary-500",onClick:function(){return i(o.id)}},void 0,o.getName(),(0,r.A)("div",{className:"flex flex-wrap items-center gap-x-0.5 gap-y-0.5 text-xs text-gray-500"},void 0,(0,r.A)("span",{className:"font-medium tabular-nums"},void 0,(0,V.Yq)(o.startTime,v,{explicitMidnightNoon:!0})," ","—"," ",T?(0,V.Yq)(o.endTime,v,{hideDate:!0,numerical:!0,explicitMidnightNoon:!0}):(0,V.Yq)(o.endTime,v,{explicitMidnightNoon:!0})),"(",(0,V.a3)($()(o.endTime).diff(o.startTime)/1e3,v),")"),o.isEnded&&(0,r.A)("p",{className:"mt-1 text-xs text-error-500"},void 0,v("course.sessions.creator.general.ended",{date:(0,V.Yq)(o.endedAt,v)})),d&&!o.isEnded&&(0,r.A)("div",{className:"mt-2 flex gap-2"},void 0,o.isNeverStarted&&(0,r.A)(m.$n,{variant:"primary",onClick:function(e){e.stopPropagation(),C()},size:"sm"},void 0,v("course.sessions.start")),o.isOngoing&&(0,r.A)(m.$n,{variant:"danger",onClick:function(e){e.stopPropagation(),N(!0)},size:"sm"},void 0,v("course.sessions.end"))),(0,r.A)("div",{onClick:function(e){return e.stopPropagation()}},void 0,(0,r.A)(m.Ol,{irreversibleText:!0,open:w,setOpen:N,onConfirm:E},void 0,S?v("course.sessions.end_confirm_early",{time:(0,V.a3)(O,v)}):v("course.sessions.end_confirm"))))};var X=n(77832),ee=n(12632),te=n(86822),ne=n(18055),re=n(25810),oe=n(6519),ae=function(e){return/"text":\s*"[^"]/.test(JSON.stringify(null!=e?e:null))},se="course.sessions.wizard.steps.schedule",ie="course.sessions.creator.config";const ce=function(e){var t=e.startTime,n=e.endTime,o=e.disabled,a=e.onChange,s=(0,u.Bd)(void 0,{keyPrefix:se}).t,i=(0,u.Bd)().t;return(0,r.A)(m.DY,{tlKey:"".concat(se,".range")},void 0,(0,r.A)(m.Ws,{startDate:t,endDate:n,startLabel:i("".concat(ie,".general.startTime.title")),endLabel:i("".concat(ie,".general.endTime.title")),validate:function(e,t){return e&&t?t.isAfter(e)?[!0,void 0]:[!1,s("too_short")]:[!0,void 0]},onChange:function(e,t){return e&&t&&a({startTime:e.toDate(),endTime:t.toDate()})},disabled:o}))}
1,le=function(e){var t=e.isAllowed,n=e.onChange,o=e.disabled,a=(0,u.Bd)(void 0,{keyPrefix:"course.sessions.wizard.steps.restrictions"}).t,s=(0,u.Bd)().t;return(0,r.A)("div",{},void 0,(0,r.A)("div",{className:(0,q.QP)("flex flex-wrap justify-center gap-4",o&&"pointer-events-none opacity-60")},void 0,oe.Op.map(function(e){return(0,r.A)(m.Du,{Icon:e.Icon,header:s("".concat((0,oe.jv)(e),".title")),value:t(e),onChange:function(t){return!o&&n(e,t)}},e.key)})),(0,r.A)(m.ZZ,{className:"mt-4 block text-center text-sm"},void 0,a("tools_legend")))};var ue,de,ve,me,pe,fe,ge,be;function Ae(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function he(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Ae(Object(n),!0).forEach(function(t){(0,f.A)(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Ae(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}var ye="course.sessions.wizard",xe="course.sessions.creator.config",we="w-full min-h-[22rem] animate-timeline-step",Ne=function(){var e=$
1()().add(1,"hour").startOf("hour").toDate();return{name:"",startTime:e,endTime:$()(e).add(60,"minutes").toDate(),lockdown:!0,tools:{notebook:!1,codeExecution:!1,privateMessaging:!1}}},Oe=function(e){var t=e.tlKey,n=(0,u.Bd)().t;return(0,r.A)("div",{className:"mb-6 text-center"},void 0,(0,r.A)(m.DZ,{size:"h4"},void 0,n("".concat(t,".header"))),(0,r.A)(m.ZZ,{className:"text-sm"},void 0,n("".concat(t,".help"))))},Se=function(e){var t=e.label,n=e.children;return(0,r.A)("div",{className:"flex flex-wrap items-baseline gap-2"},void 0,(0,r.A)("span",{className:"w-32 flex-none text-gray-700"},void 0,t),(0,r.A)("span",{className:"font-medium"},void 0,n))};const Te=function(e){var t=e.courseId,n=e.onCancel,i=e.onCreated,d=(0,u.Bd)(void 0,{keyPrefix:ye}).t,v=(0,u.Bd)().t,p=(0,G.A)().createSession,g=(0,te.A)().updatePlatformSettings,b=(0,W.jE)(),A=(0,O.MW)(),h=(0,ne.A)(Ne),y=(0,s.A)(h,3),x=y[0],w=y[2],N=(0,l.useState)(!1),S=(0,s.A)(N,2),C=S[0],k=S[1],P=(0,l.useState)(!1),D=(0,s.A)(P,2),j=D[0],I=D[1],_=(0,l.useState)(!1),R=(0,s.A)(_,2),U=R[0],M=R[1],F=(0,l.useRef)(null);(0,l.useEffect)(function(){var e=setTimeout(function(){var e;return null===(e=F.current)||void 0===e?void 0:e.focus({preventScroll:!0})},200);return function(){return clearTimeout(e)}},[]);var B=$()(x.endTime).diff(x.startTime,"minutes"),L=x.name.trim().length>0,Q=B>0,Z=L&&Q&&!U,z=oe.Op.filter(function(e){return x.tools[e.key]}),Y=function(e){k(!0),w(e)},H=function(){var e=(0,a.A)(c().mark(function e(){var n,r;return c().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(Z){e.next=1;break}return e.abrupt("return",!1);case 1:return M(!0),e.next=2,p(t,{name:x.name.trim(),startTime:x.startTime,endTime:x.endTime,sharedNotes:x.sharedNotes,privateNotes:x.privateNotes,sessionSettings:{lockdown:x.lockdown}});case 2:if(n=e.sent){e.next=3;break}return M(!1),e.abrupt("return",!1);case 3:if(r=Object.fromEntries(oe.Op.filter(function(e){return!x.tools[e.key]}).map(function(e){return[re.p[e.setting],{value:!1}]})),!(Object.keys(r).length>0)){e.next=4;break}return e.next=4,g("session",[t,n.id.toString()],r);case 4:return b.setQueryData(["courseSessions",t],function(e){return[].concat((0,o.A)(e||[]),[n])}),A.success(d("success")),i(n),e.abrupt("return",!0);case 5:case"end":return e.stop()}},e)}));return function(){return e.apply(this,arguments)}}();return(0,r.A)("div",{className:"flex flex-col items-center"},void 0,(0,r.A)("div",{className:"w-full"},void 0,(0,r.A)(m.$n,{variant:"danger",onClick:function(){if(C)return I(!0);n()},iconPosition:"left",Icon:T.Pdx},"back-button-exam-creator",v("msg.back"))),(0,r.A)(m.Kf.Modal,{isModal:!1,align:"center",topProgressBar:!0,submitText:d("submit"),submitButtonVariant:"primary",onSubmit:H},void 0,(0,r.A)(m.Kf.Page,{className:we,title:d("steps.identity.title"),canGoNext:L,progressPercentage:L?100:0},"identity",ue||(ue=(0,r.A)(Oe,{tlKey:"".concat(ye,".steps.identity")})),(0,E.jsx)(m.ZQ,{ref:F,name:"examName",size:"lg",maxLength:60,placeholder:v("".concat(xe,".general.name.placeholder")),value:x.name,onChange:function(e){return Y({name:e.target.value})}})),(0,r.A)(m.Kf.Page,{className:we,title:d("steps.schedule.title"),canGoNext:Q},"schedule",de||(de=(0,r.A)(Oe,{tlKey:"".concat(ye,".steps.schedule")})),(0,r.A)(ce,{startTime:x.startTime,endTime:x.endTime,onChange:function(e){return Y(e)}})),(0,r.A)(m.Kf.Page,{className:we,title:d("steps.restrictions.title")},"restrictions",ve||(ve=(0,r.A)(Oe,{tlKey:"".concat(ye,".steps.restrictions")})),(0,r.A)(m.DY,{tlKey:"".concat(xe,".lockdown.lockdown")},void 0,(0,r.A)(m.dO,{value:x.lockdown,onToggle:function(e){return Y({lockdown:e})}})),(0,r.A)(m.ZT,{variant:x.lockdown?"primary":"warning",className:"mb-6 mt-2"},void 0,x.lockdown?d("steps.restrictions.lockdown_on"):d("steps.restrictions.lockdown_off")),me||(me=(0,r.A)(m.DY,{tlKey:"".concat(ye,".steps.restrictions.tools"),variant:"header",className:"mb-4"})),(0,r.A)(le,{isAllowed:function(e){return x.tools[e.key]},onChange:function(e,t){return Y({tools:he(he({},x.tools),{},(0,f.A)({},e.key,t))})}})),(0,r.A)(m.Kf.Page,{className:we,title:d("steps.notes.title")},"notes",pe||(pe=(0,r.A)(Oe,{tlKey:"".concat(ye,".steps.notes")})),fe||(fe=(0,r.A)(m.DY,{tlKey:"".concat(xe,".general.sharedNotes"),variant:"header",className:"mb-2"})),(0,r.A)(ee.A,{placeholder:v("".concat(xe,".general.sharedNotes.placeholder")),value:x.sharedNotes,onChange:function(e){return Y({sharedNotes:e})}}),ge||(ge=(0,r.A)(m.DY,{tlKey:"".concat(xe,".general.privateNotes"),variant:"header",className:"mb-2 mt-6"})),(0,r.A)(ee.A,{placeholder:v("".concat(xe,".general.privateNotes.placeholder")),value:x.privateNotes,onChange:function(e){return Y({privateNotes:e})}})),(0,r.A)(m.Kf.Page,{className:we,title:d("steps.review.title"),canGoNext:Z},"review",be||(be=(0,r.A)(Oe,{tlKey:"".concat(ye,".steps.review")})),(0,r.A)("div",{className:(0,q.QP)("flex flex-col gap-2 p-4 text-left",(0,K.vQ)())},void 0,(0,r.A)(Se,{label:d("review.name")},void 0,x.name.trim()),(0,r.A)(Se,{label:d("review.schedule")},void 0,(0,V.Yq)(x.startTime,v,{explicitMidnightNoon:!0})," ","(",(0,V.a3)(60*B,v),")"),(0,r.A)(Se,{label:d("review.lockdown")},void 0,x.lockdown?d("review.on"):d("review.off")),(0,r.A)(Se,{label:d("review.tools")},void 0,z.length>0?z.map(function(e){return v("".concat((0,oe.jv)(e),".title"))}).join(", "):d("review.no_tools")),(0,r.A)(Se,{label:d("review.sharedNotes")},void 0,ae(x.sharedNotes)?d("review.notes_written"):d("review.notes_empty"))),(0,r.A)(m.ZZ,{className:"mt-4 block text-center text-sm"},void 0,d("steps.review.manual_start")))),(0,r.A)(m.Ol,{open:j,setOpen:I,onConfirm:n},void 0,d("cancel_confirm")))};
1var Ce=n(92985),Ee=n(76761),ke=n(43865);function Pe(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function De(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Pe(Object(n),!0).forEach(function(t){(0,f.A)(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Pe(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}var je=n(55124),Ie=n(32928),_e=n(26374),Re=n(16856);const Ue=function(e){var t,n,o,i=e.session,d=e.switchToTab,v=e.onDeleted,p=(0,u.Bd)(void 0,{keyPrefix:"course.sessions.editor"}).t,f=(0,u.Bd)().t,g=(0,G.A)(),b=g.startSession,A=g.endSession,h=g.deleteSession,y=(0,W.jE)(),x=(0,l.useState)(!1),w=(0,s.A)(x,2),N=w[0],O=w[1],S=(0,l.useState)(!1),C=(0,s.A)(S,2),k=C[0],P=C[1],D=(0,l.useState)(!1),j=(0,s.A)(D,2),I=j[0],_=j[1],R=$()(i.startTime).isSame(i.endTime,"day"),U=$()(i.endTime).diff(i.startTime)/1e3,M=$()(i.endTime).diff($()())/1e3,F=M>0,B=function(){return y.invalidateQueries(["courseSessions",i.courseId])},L=(0,_e.n)({mutationFn:(t=(0,a.A)(c().mark(function e(){return c().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return O(!0),e.next=1,b(i.courseId,i.id);case 1:return e.next=2,B();case 2:O(!1);case 3:case"end":return e.stop()}},e)})),function(){return t.apply(this,arguments)})}),Q=L.mutate,q=(0,_e.n)({mutationFn:(n=(0,a.A)(c().mark(function e(){return c().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return O(!0),e.next=1,A(i.courseId,i.id);case 1:return e.next=2,B();case 2:O(!1);case 3:case"end":return e.stop()}},e)})),function(){return n.apply(this,arguments)})}),K=q.mutate,Z=(0,_e.n)({mutationFn:(o=(0,a.A)(c().mark(function e(){var t;return c().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return O(!0),e.next=1,h(i.courseId,i.id);case 1:return t=e.sent,e.next=2,B();case 2:O(!1),t&&v();case 3:case"end":return e.stop()}},e)})),function(){return o.apply(this,arguments)})}),z=Z.mutate;return(0,r.A)("div",{},void 0,(0,r.A)("div",{className:"flex flex-wrap items-center gap-x-1 text-sm text-gray-600"},void 0,(0,r.A)("span",{className:"font-medium tabular-nums"},void 0,(0,V.Yq)(i.startTime,f,{explicitMidnightNoon:!0})," ","—"," ",R?(0,V.Yq)(i.endTime,f,{hideDate:!0,numerical:!0,explicitMidnightNoon:!0}):(0,V.Yq)(i.endTime,f,{explicitMidnightNoon:!0})),"(",(0,V.a3)(U,f),")"),i.isEnded&&(0,r.A)("p",{className:"mt-1 text-sm text-error-500"},void 0,f("course.sessions.creator.general.ended",{date:(0,V.Yq)(i.endedAt,f)})),(0,r.A)(Re.A,{session:i,className:"mt-6"}),(0,r.A)(m.DZ,{size:"h5",className:"mb-2 mt-6"},void 0,p("shared_note.title")),ae(i.sharedNotes)?(0,r.A)(ee.A,{value:i.sharedNotes,readOnly:!0,noToolbar:!0}):(0,r.A)("div",{className:"flex flex-wrap items-center gap-2"},void 0,(0,r.A)(m.ZZ,{},void 0,p("shared_note.empty")),(0,r.A)(m.$n,{variant:"secondary",size:"sm",onClick:function(){return d("instructions")}},void 0,p("shared_note.write"))),(0,r.A)("div",{className:"mt-6 flex flex-wrap gap-2"},void 0,i.isNeverStarted&&(0,E.jsxs)(E.Fragment,{children:[(0,r.A)(m.$n,{variant:"secondary",onClick:function(){return d("schedule")},Icon:T.w0J},void 0,p("actions.configure")),(0,r.A)(m.$n,{variant:"primary",onClick:function(){return Q()},loading:N},void 0,p("actions.start"))]}),i.isOngoing&&(0,r.A)(m.$n,{variant:"danger",onClick:function(){return _(!0)},loading:N},void 0,p("actions.end")),(0,r.A)(m.$n,{variant:"danger",onClick:function(){return P(!0)},loading:N,disabled:!i.isNeverStarted,popup:i.isNeverStarted?void 0:p("actions.cant_delete"),Icon:T.Tqh},void 0,p("actions.delete"))),(0,r.A)(m.Ol,{irreversibleText:!0,open:I,setOpen:_,onConfirm:function(){return K()}},void 0,F?f("course.sessions.end_confirm_early",{time:(0,V.a3)(M,f)}):f("course.sessions.end_confirm")),(0,r.A)(m.Ol,{irreversibleText:!0,open:k,setOpen:P,onConfirm:function(){return z()}},void 0,p("actions.delete_confirm")))};var Me,Fe,Be,Le,Qe=n(5480),qe=n(80238),Ke=function(e){return e.CHEATING_SUSPECTED="CHEATING_SUSPECTED",e}({}),Ze=function(e){return e.BLUR_TIME="BLUR_TIME",e.MULTIPLE_IP_CHANGE="MULTIPLE_IP_CHANGE",e.MULTIPLE_DEVICE_CHANGE="MULTIPLE_DEVICE_CHANGE",e.OTHER="OTHER",e}({});function ze(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}var Ye=function(e,t){var n,r=function(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];
1if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return ze(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?ze(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,s=!0,i=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return s=e.done,e},e:function(e){i=!0,a=e},f:function(){try{s||null==n.return||n.return()}finally{if(i)throw a}}}}(t);try{for(r.s();!(n=r.n()).done;){var o=n.value,a=null==e?void 0:e[o];if(null!=a&&""!==a)return a}}catch(e){r.e(e)}finally{r.f()}},We=["firstConnectedAt","lastConnectedAt"],Ge=["disconnectedAt","lastDisconnectedAt"],Ve=["totalConnectedTimeMs","durationMs"],He=["lastDisconnectedAt","lastConnectedAt","updatedAt"],$e=["ip","ipAddress"],Je=function(e){var t=e.connection,n=(0,u.Bd)().t,o=t;console.log(t.firstConnectedAt);var a=Ye(o,We),s=Ye(o,Ge),i=Number(Ye(o,Ve)),c=!0===o.isConnected,l=function(e){return(0,V.Yq)(e,n,{numerical:!0,showSeconds:!0})};return(0,r.A)("li",{className:(0,q.QP)("flex items-center gap-2 rounded px-1.5 py-1.5 text-xs",c&&"bg-success-50 font-medium")},void 0,(0,r.A)("span",{"aria-hidden":"true",className:(0,q.QP)("h-1.5 w-1.5 shrink-0 rounded-full",c?"bg-success-500 motion-safe:animate-pulse":"bg-gray-300")}),a?(0,E.jsxs)(E.Fragment,{children:[(0,r.A)("span",{className:"min-w-0 flex-1 truncate tabular-nums text-gray-700"},void 0,l(a)," → ",c?(0,r.A)("span",{className:"text-success-500"},void 0,n("course.rt.dashboard.device.now")):s?l(s):"—"),Number.isFinite(i)&&i>0&&(0,r.A)("span",{className:"shrink-0 tabular-nums text-gray-400"},void 0,(0,V.a3)(i/1e3,n))]}):(0,r.A)("span",{className:"min-w-0 flex-1 truncate tabular-nums text-gray-700"},void 0,n("course.rt.dashboard.device.never_connected")))};const Xe=function(e){var t,n=e.device,o=(0,u.Bd)().t,a=(0,l.useMemo)(function(){return(0,K._D)(n.device)},[n.device]),s=(0,K.ZI)(a),i=(0,K.yq)(s),c=n,d=null!==(t=n.connections)&&void 0!==t?t:[],v=!!n.isConnected,p=Ye(c,He),f=Ye(c,$e),g=Number(Ye(c,["totalConnectedTimeMs"]))||d.reduce(function(e,t){return e+(Number(Ye(t,Ve))||0)},0),b=[!v&&p?"".concat(o("course.rt.dashboard.device.last_seen")," ").concat((0,V._D)(p)):null,g>0?o("course.rt.dashboard.device.time_online",{time:(0,V.a3)(g/1e3,o)}):null,f?"IP ".concat(String(f)):null].filter(Boolean);return(0,r.A)("div",{className:(0,q.QP)("relative overflow-hidden rounded-lg border p-3 transition-colors",v?"border-success-500/40 bg-success-50 shadow-sm":"border-gray-200 bg-bg")},void 0,v&&(Me||(Me=(0,r.A)("span",{"aria-hidden":"true",className:"absolute inset-y-0 left-0 w-1 bg-success-500"}))),(0,r.A)("div",{className:"flex items-center gap-3"},void 0,(0,r.A)("div",{className:"relative shrink-0"},void 0,(0,r.A)("div",{className:(0,q.QP)("flex h-9 w-9 items-center justify-center rounded-full",v?"bg-success-500 text-white":"bg-gray-100 text-gray-400")},void 0,(0,r.A)(i,{className:"h-5 w-5"})),v&&(Fe||(Fe=(0,r.A)("span",{className:"absolute -right-0.5 -top-0.5 flex h-3 w-3"},void 0,(0,r.A)("span",{className:"absolute inline-flex h-full w-full rounded-full bg-success-500 opacity-75 motion-safe:animate-ping"}),(0,r.A)("span",{className:"relative inline-flex h-3 w-3 rounded-full border-2 border-white bg-success-500"}))))),(0,r.A)("div",{className:"min-w-0 flex-1"},void 0,(0,r.A)(m.DZ,{size:"h3",className:"truncate"},void 0,(0,K.AV)(n.device,o)," -"," ",(0,K.tn)(n.device)),(0,r.A)("p",{className:"mt-0.5 truncate text-xs text-gray-500"},void 0,(0,K.aC)(n.device,o))),(0,r.A)("span",{className:(0,q.QP)("flex shrink-0 items-center gap-1.5 rounded-full px-2 py-0.5 text-xs font-medium",v?"bg-success-500 text-white":"bg-gray-100 text-gray-500")},void 0,(0,r.A)("span",{"aria-hidden":"true",className:(0,q.QP)("h-1.5 w-1.5 rounded-full",v?"bg-white motion-safe:animate-pulse":"bg-gray-400")}),o(v?"course.rt.dashboard.student.connected":"course.rt.dashboard.student.disconnected"))),b.length>0&&(0,r.A)("p",{className:"mt-2 text-xs tabular-nums text-gray-500"},void 0,b.join(" · ")),d.length>0&&(0,r.A)("details",{open:v,className:(0,q.QP)("group mt-3 border-t pt-2",v?"border-success-500/20":"border-gray-100")},void 0,(0,r.A)("summary",{className:"flex cursor-pointer list-none items-center gap-1 text-xs font-medium text-gray-600 hover:text-gray-900"},void 0,Be||(Be=(0,r.A)(T.klJ,{className:"h-3 w-3 transition-transform group-open:rotate-90"})),o("course.rt.dashboard.device.connections",{count:d.length})),(0,r.A)("ul",{className:"mt-1 max-h-48 divide-y divide-gray-100 overflow-auto"},void 0,d.map(function(e){return(0,r.A)(Je,{connection:e},e.connectionId)}))),(0,r.A)("details",{className:"group mt-2"},void 0,(0,r.A)("summary",{className:"flex cursor-pointer list-none items-center gap-1 text-xs text-gray-400 hover:text-gray-600"},void 0,Le||(Le=(0,r.A)(T.klJ,{className:"h-3 w-3 transition-transform group-open:rotate-90"})),o("course.rt.dashboard.device.technical")),(0,r.A)("pre",{className:"mt-1 max-h-48 overflow-auto whitespace-pre-wrap break-words rounded bg-gray-50 p-2 text-[11px] text-gray-700"},void 0,JSON.stringify(n,null,2))))};var et,tt,nt,rt=n(80379);function ot(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}var at=[rt._.USER_CONNECT_COURSE,rt._.USER_DISCONNECT_COURSE,rt._.USER_FOCUS_GAINED,rt._.USER_FOCUS_LOST,rt._.USER_COPY,rt._.USER_PASTE,rt._.USER_CUT],st=function(e){var t,n,a=e.events,i=(0,u.Bd)().t,c=(0,l.useState)(at),d=(0,s.A)(c,2),v=d[0],p=d[1],f=(0,l.useRef)(null),g=(0,l.useRef)(null),b=(0,W.jE)(),A=null===(t=null===(n=f.current)||void 0===n?void 0:n.getState())||void 0===t||t,h=(0,l.useMemo)(function(){return a.filter(function(e){return v.includes(e.type)})},[a,v]);return(0,l.useEffect)(function(){g.current&&A&&g.current.scrollTo({top:g.current.scrollHeight,behavior:"smooth"})},[h,A]),(0,E.jsx)(m.Rt,{containerId:"student-events",header:i("course.rt.dashboard.student.events.header"),className:"mb-4",containerClassName:"p-0",ref:f,children:(0,E.jsxs)("div",{className:"challenge-scroll relative max-h-96 overflow-y-auto",ref:g,children:[(0,r.A)("div",{className:"sticky top-0 z-10 mb-2 flex flex-wrap items-center gap-1 border-b border-gray-200 bg-bg px-0 py-2"},void 0,(0,r.A)(m.$n,{variant:"primary",size:"sm",onClick:function(){return b.invalidateQueries(["sessionUserData"])},Icon:T.wAq}),at.map(function(e){return(0,r.A)(m.vu,{selected:v.includes(e),size:"sm",name:i("course.rt.dashboard.student.events.type.".concat(e)),onChange:function(t){p(t?[].concat((0,o.A)(v),[e]):v.filter(function(t){return t!==e}))}},e)})),(0,r.A)(lt,{events:h})]})})},it=(0,f.A)((0,f.A)((0,f.A)((0,f.A)((0,f.A)((0,f.A)((0,f.A)({},rt._.USER_CONNECT_COURSE,{dot:"bg-green-500",text:"text-green-700",bg:"bg-green-50",Icon:T.SjK,getTnData:function(){return{}}}),rt._.USER_DISCONNECT_COURSE,{dot:"bg-red-500",text:"text-red-700",bg:"bg-red-50",Icon:T.vFQ,getTnData:function(){return{}}}),rt._.USER_FOCUS_GAINED,{dot:"bg-blue-500",text:"text-blue-700",bg:"bg-blue-50",Icon:T.w9L,getTnData:function(){return{}}}
1),rt._.USER_FOCUS_LOST,{dot:"bg-amber-500",text:"text-amber-700",bg:"bg-amber-50",Icon:T.hYQ,getTnData:function(){return{}}}),rt._.USER_COPY,{dot:"bg-purple-500",text:"text-purple-700",bg:"bg-purple-50",Icon:T.scL,getTnData:function(e){return{params:{count:String(e.content).length}}},getDetails:function(e){return(0,r.A)("pre",{className:"font-mono whitespace-pre-wrap break-words rounded bg-gray-50 p-2 text-xs text-gray-700"},void 0,e.content)}}),rt._.USER_PASTE,{dot:"bg-orange-500",text:"text-orange-700",bg:"bg-orange-50",Icon:T.scL,getTnData:function(e){return{params:{count:String(e.content).length}}},getDetails:function(e){return(0,r.A)("pre",{className:"font-mono whitespace-pre-wrap break-words rounded bg-gray-50 p-2 text-xs text-gray-700"},void 0,e.content)}}),rt._.USER_CUT,{dot:"bg-pink-500",text:"text-pink-700",bg:"bg-pink-50",Icon:T.Cwo,getTnData:function(e){return{params:{count:String(e.content).length}}},getDetails:function(e){return(0,r.A)("pre",{className:"font-mono whitespace-pre-wrap break-words rounded bg-gray-50 p-2 text-xs text-gray-700"},void 0,e.content)}}),ct={dot:"bg-gray-400",text:"text-gray-700",bg:"bg-gray-50",Icon:T.uL4,getTnData:function(){return{}}},lt=function(e){var t=e.events,n=(0,u.Bd)().t,o=(0,l.useState)(null),a=(0,s.A)(o,2),i=a[0],c=a[1];return 0===t.length?(0,r.A)("p",{className:"py-8 text-center text-sm text-gray-500"},void 0,n("course.rt.dashboard.student.events.empty")):(0,r.A)("ol",{className:"relative"},void 0,tt||(tt=(0,r.A)("span",{"aria-hidden":!0,className:"absolute bottom-4 left-[22px] top-4 w-px bg-gray-200"})),t.map(function(e,t){var o,a,s,l=null!==(o=it[e.type])&&void 0!==o?o:ct,u=null!==(a=e.device?(0,K._D)(e.device.device):null)&&void 0!==a?a:void 0,d=(0,K.ZI)(u),v=(0,K.yq)(d),m="function"==typeof l.getDetails,p=i===t;return(0,r.A)("li",{className:"relative"},t,(0,r.A)("div",{role:m?"button":void 0,tabIndex:m?0:void 0,"aria-expanded":m?p:void 0,onClick:function(){m&&c(p?null:t)},onKeyDown:function(e){m&&("Enter"!==e.key&&" "!==e.key||(e.preventDefault(),c(p?null:t)))},className:"group flex items-center gap-2 rounded-md px-2 py-1.5 transition-colors hover:bg-primary-50 ".concat(m?"cursor-pointer":"")},void 0,(0,r.A)("span",{className:"relative flex h-7 w-7 shrink-0 items-center justify-center rounded-full ".concat(l.bg," ").concat(l.text)},void 0,(0,r.A)("svg",{viewBox:"0 0 24 24",className:"h-3.5 w-3.5",fill:"none",stroke:"currentColor",strokeWidth:2},void 0,(0,r.A)(l.Icon,{className:"text-2xl"}))),m&&(0,r.A)("span",{className:"flex h-5 w-5 shrink-0 items-center justify-center rounded-full bg-gray-50 text-gray-500 transition-all group-hover:bg-primary-500 group-hover:text-bg ".concat(p?"rotate-180 bg-gray-300":"")},void 0,nt||(nt=(0,r.A)(T.ciu,{className:"h-3.5 w-3.5 stroke-[3]"}))),(0,r.A)("span",{className:"text-sm font-medium ".concat(l.text)},void 0,n("course.rt.dashboard.student.events.type_desc.".concat(e.type),e.type,null===(s=l.getTnData(e.data))||void 0===s?void 0:s.params)),u&&(0,r.A)("span",{className:"ml-auto hidden truncate rounded bg-gray-100 px-1.5 py-0.5 text-xs text-gray-600 sm:inline"},void 0,(0,r.A)(v,{className:"mr-1 inline h-3 w-3"}),(0,K.AV)(u,n)," -"," ",(0,K.tn)(u)),(0,r.A)("time",{className:"font-mono shrink-0 text-xs tabular-nums text-gray-500 ".concat(u?"":"ml-auto"),title:(0,V.Yq)(e.loggedAt,n,{showSeconds:!0})},void 0,(0,V.Yq)(e.loggedAt,n,{numerical:!0,hideDate:!0}))),m&&p&&(0,r.A)("div",{className:"ml-10 mr-2 mt-1 rounded-md border border-gray-200 bg-bg p-2"},void 0,l.getDetails(e.data)))}))};const ut=function(e){var t=e.user,n=e.devices,o=e.session,a=e.courseId,s=e.open,i=e.setOpen,c=(0,u.Bd)().t,d=(0,G.A)().getSessionUserData,v=(0,L.I)({queryKey:["sessionUserData",t.id],queryFn:function(){return d(a,o.id,t.id)},enabled:s&&n.length>0}),p=v.data,f=v.isLoading,g=(0,l.useMemo)(function(){if(!p)return{connections:{},devices:{},events:[]};var e=n.reduce(function(e,t){if(!t.connections)return e;var n,r=function(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return ot(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?ot(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,s=!0,i=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return s=e.done,e},e:function(e){i=!0,a=e}
1,f:function(){try{s||null==n.return||n.return()}finally{if(i)throw a}}}}(t.connections);try{for(r.s();!(n=r.n()).done;){var o=n.value;e[o.connectionId]=o}}catch(e){r.e(e)}finally{r.f()}return e},{}),t=n.reduce(function(e,t){return e[t.id]=t,e},{}),r=p.events.map(function(n){var r,o,a;return n.connection=null!==(r=e[n.connectionId])&&void 0!==r?r:null,n.device=null!==(o=t[null===(a=n.connection)||void 0===a?void 0:a.deviceId])&&void 0!==o?o:null,n});return{connections:e,devices:t,events:r}},[p]),b=(g.connections,g.devices),A=g.events;return(0,r.A)(m.aF,{open:s,setOpen:i,title:"".concat(c("course.rt.dashboard.student.devices")," ").concat(t.getDisplayName()),size:"lg",hideFooter:!0,closeCross:!0},void 0,f?et||(et=(0,r.A)(m.xx,{relative:!0})):(0,r.A)(st,{events:A}),(0,r.A)("div",{className:"space-y-3"},void 0,0===Object.values(b).length?(0,r.A)("p",{className:"py-8 text-center text-sm text-gray-500"},void 0,c("course.rt.dashboard.student.noDevices")):Object.values(b).map(function(e){return(0,r.A)(Xe,{device:e},e.id)})))};var dt,vt,mt,pt,ft,gt;function bt(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}var At=(0,f.A)({},Ke.CHEATING_SUSPECTED,"Cheating suspected"),ht=(0,f.A)((0,f.A)((0,f.A)((0,f.A)({},Ze.BLUR_TIME,"time away from window"),Ze.MULTIPLE_IP_CHANGE,"multiple IP changes"),Ze.MULTIPLE_DEVICE_CHANGE,"multiple device changes"),Ze.OTHER,"other activity"),yt=function(e){return e.toLowerCase().replace(/_/g," ")},xt=function(e){var t,n,r=null!==(t=At[e.type])&&void 0!==t?t:yt(e.type);if(!e.suspicionReason)return r;var o=null!==(n=ht[e.suspicionReason])&&void 0!==n?n:yt(e.suspicionReason);return"".concat(r," · ").concat(o)},wt=function(e,t){var n,r=function(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return bt(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?bt(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,s=!0,i=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return s=e.done,e},e:function(e){i=!0,a=e},f:function(){try{s||null==n.return||n.return()}finally{if(i)throw a}}}}(t);try{for(r.s();!(n=r.n()).done;){var o=n.value,a=null==e?void 0:e[o];if(null!=a&&""!==a)return a}}catch(e){r.e(e)}finally{r.f()}},Nt=function(e){var t=e.label,n=e.value;return(0,r.A)("div",{className:"flex justify-between gap-3"},void 0,(0,r.A)("dt",{className:"shrink-0 text-gray-400"},void 0,t),(0,r.A)("dd",{className:"min-w-0 truncate text-right font-medium tabular-nums text-gray-100"},void 0,n))},Ot=function(e){var t,n,o,a=e.device,s=(0,u.Bd)().t,i=(0,l.useMemo)(function(){return(0,K._D)(a.device)},[a.device]),c=(0,K.yq)((0,K.ZI)(i)),d=!!a.isConnected,v=(0,K.AV)(a.device,s),m=(0,K.tn)(a.device),p="".concat(v," - ").concat(m),f=a,g=null!==(t=null===(n=a.connections)||void 0===n?void 0:n.length)&&void 0!==t?t:0,b=wt(f,["ip","ipAddress"]),A=function(e){if(null==e||""===e)return null;var t=new Date(e);return Number.isNaN(t.getTime())?null:t}(wt(f,["lastDisconnectedAt","lastConnectedAt","updatedAt"])),h=Number(wt(f,["totalConnectedTimeMs"]))||(null!==(o=a.connections)&&void 0!==o?o:[]).reduce(function(e,t){return e+(Number(wt(t,["totalConnectedTimeMs","durationMs"]))||0)},0);return(0,r.A)("span",{className:"group/device relative"},void 0,(0,r.A)("span",{role:"img","aria-label":p,className:(0,q.QP)("flex h-5 w-5 items-center justify-center rounded-full transition-shadow group-hover/device:ring-2 group-hover/device:ring-primary-300",d?"bg-success-50 text-success-600 ring-1 ring-success-500/40":"bg-gray-100 text-gray-400")},void 0,(0,r.A)(c,{className:"h-3 w-3"})),(0,r.A)("span",{role:"tooltip",className:"pointer-events-none invisible absolute left-0 top-full z-50 mt-1.5 w-
156 rounded-lg bg-gray-900 p-2.5 text-[11px] leading-snug text-gray-100 opacity-0 shadow-lg transition-opacity group-hover/device:visible group-hover/device:opacity-100"},void 0,(0,r.A)("span",{className:"mb-1.5 flex items-center gap-2"},void 0,(0,r.A)(c,{className:"h-4 w-4 shrink-0 text-gray-300"}),(0,r.A)("span",{className:"min-w-0 flex-1"},void 0,(0,r.A)("span",{className:"block truncate text-xs font-semibold"},void 0,p),(0,r.A)("span",{className:"block truncate text-gray-400"},void 0,(0,K.aC)(a.device,s)))),(0,r.A)("dl",{className:"flex flex-col gap-1 border-t border-gray-700 pt-1.5"},void 0,(0,r.A)(Nt,{label:s("course.rt.dashboard.device.status","Status"),value:s(d?"course.rt.dashboard.student.connected":"course.rt.dashboard.student.disconnected")}),!d&&A&&(0,r.A)(Nt,{label:s("course.rt.dashboard.device.last_seen"),value:(0,V._D)(A)}),h>0&&(0,r.A)(Nt,{label:s("course.rt.dashboard.device.time_online_label","Time online"),value:(0,V.a3)(h/1e3,s)}),g>0&&(0,r.A)(Nt,{label:s("course.rt.dashboard.device.connections_label","Connections"),value:String(g)}),void 0!==b&&(0,r.A)(Nt,{label:"IP",value:String(b)}))))},St=function(e){var t=e.devices,n=(0,l.useMemo)(function(){return(0,o.A)(t).sort(function(e,t){return Number(!!t.isConnected)-Number(!!e.isConnected)})},[t]);if(0===n.length)return null;var a=n.slice(0,5),s=n.length-a.length;return(0,r.A)("div",{className:"mt-1 flex flex-wrap items-center gap-1"},void 0,a.map(function(e,t){var n;return(0,r.A)(Ot,{device:e},"".concat(String(null!==(n=e.id)&&void 0!==n?n:""),"-").concat(t))}),s>0&&(0,r.A)("span",{className:"text-[11px] font-medium text-gray-400"},void 0,"+",s))},Tt=function(e){var t=e.icon,n=e.label,o=e.value,a=e.subValue,s=e.tone,i=void 0===s?"default":s;return(0,r.A)("div",{className:"flex items-start gap-2"},void 0,(0,r.A)(t,{className:(0,q.QP)("mt-0.5 h-4 w-4 shrink-0","positive"===i&&"text-success-500","warning"===i&&"text-warning-500","default"===i&&"text-gray-400")}),(0,r.A)("div",{className:"flex flex-col leading-tight"},void 0,(0,r.A)("span",{className:"text-[10px] font-medium uppercase tracking-wide text-gray-400"},void 0,n),(0,r.A)("span",{className:"text-sm font-semibold tabular-nums text-gray-800"},void 0,o),a&&(0,r.A)("span",{className:"text-[11px] tabular-nums text-gray-400"},void 0,a)))};const Ct=function(e){var t,n,o,a,i,c,d,v,m,p,f,g,b,A,h,y,x,w,N,O,S,C,k=e.user,P=e.sessionData,D=e.session,j=e.onPinChange,I=e.isPinned,_=(0,u.Bd)().t,R=(0,l.useState)(!1),U=(0,s.A)(R,2),M=U[0],F=U[1],B=!(null==P||!P.isConnected||D.isEnded),L=!(null==P||!P.isFocused||D.isEnded),Q=null!==(t=null==P?void 0:P.flags)&&void 0!==t?t:[],Z=Q.length>0,z=null!==(n=null==P?void 0:P.devices)&&void 0!==n?n:[],Y=((null!==(o=null==P?void 0:P.totalConnectedTimeMs)&&void 0!==o?o:0)+(B?Date.now()-(null!==(a=null==P||null===(i=P.lastConnectedAt)||void 0===i?void 0:i.getTime())&&void 0!==a?a:Date.now()):0))/1e3,W=((null!==(c=null==P?void 0:P.totalDisconnectedTimeMs)&&void 0!==c?c:0)+(B||D.isEnded?0:Date.now()-(null!==(d=null==P||null===(v=P.lastDisconnectedAt)||void 0===v?void 0:v.getTime())&&void 0!==d?d:Date.now())))/1e3,G=((null!==(m=null==P?void 0:P.totalFocusTimeMs)&&void 0!==m?m:0)+(L?Date.now()-(null!==(p=null==P||null===(f=P.lastFocusedAt)||void 0===f?void 0:f.getTime())&&void 0!==p?p:Date.now()):0))/1e3,H=((null!==(g=null==P?void 0:P.totalBlurTimeMs)&&void 0!==g?g:0)+(L||D.isEnded?0:Date.now()-(null!==(b=null==P||null===(A=P.lastBlurredAt)||void 0===A?void 0:A.getTime())&&void 0!==b?b:Date.now())))/1e3,$=0===(C=(S=null!=(N=G)?N:0)+(null!=(O=H)?O:0))?null:Math.round(S/C*100);return(0,E.jsxs)(E.Fragment,{children:[(0,r.A)("div",{role:"button",tabIndex:0,onClick:function(){return F(!0)},onKeyDown:function(e){"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),F(!0))},"aria-label":"View devices for ".concat(k.getDisplayName()),className:(0,q.QP)((0,K.vQ)(),"relative flex w-full cursor-pointer flex-col gap-3 bg-bg p-3 transition-colors hover:border-primary-300 focus:outline-none focus:ring-2 focus:ring-primary-300",Z?"border-red-300 ring-1 ring-red-100":"border-gray-200")},void 0,(0,r.A)("button",{className:(0,q.QP)("absolute right-2 top-2 flex h-5 w-5 items-center justify-center rounded-full transition-colors",I?"bg-primary-500 text-white hover:bg-primary-600":"bg-gray-100 text-gray-400 hover:bg-gray-200"),onClick:function(e){e.stopPropagation(),j(!I)},onKeyDown:function(e){"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),e.stopPropagation(),j(!I))},role:"button",tabIndex:0,"aria-label":_(I?"course.rt.dashboard.student.unpin":"course.rt.dashboard.student.pin")},void 0,dt||(dt=(0,r.A)(T.qfQ,{className:"h-3 w-3"}))),(0,r.A)("div",{className:"flex items-start gap-2.5"},void 0,(0,r.A)("div",{className:"relative shrink-0"},void 0,(0,r.A)("img",{src:k.avatar,width:32,height:32,className:"rounded-full"}),(0,r.A)("span",{className:(0,q.QP)("absolute -bottom-0.5 -right-0.5 h-3 w-3 rounded-full border-2 border-white",B?"bg-success-500":"bg-gray-300")},void 0,B&&(vt||(vt=(0,r.A)("span",{className:"absolute inset-0 rounded-full bg-success-400 opacity-75"}))))),(0,r.A)("div",{className:"min-w-0 flex-1"},void 0,(0,r.A)("div",{className:"flex items-center justify-between gap-2"},void 0,(0,r.A)("span",{className:"truncate text-sm font-semibold text-gray-900"},void 0,(null==k?void 0:k.getDisplayName())||_("course.rt.dashboard.student.unknown")),Z&&(0,r.A)("span",{className:"flex shrink-0 items-center gap-1 rounded-full bg-red-100 px-1.5 py-0.5 text-[11px] font-semibold text-red-600",title:Q.map(xt).join(", ")},void 0,mt||(mt=(0,r.A)(T.bHz,{className:"h-3 w-3"})),Q.length)),(0,r.A)(St,{devices:z}),(0,r.A)("div",{className:"mt-1 flex flex-wrap items-center gap-x-1.5 gap-y-0.5 text-[11px]"},void 0,(0,r.A)("span",{className:B?"text-success-600":"text-gray-400"},void 0,_(B?"course.rt.dashboard.student.connected":"course.rt.dashboard.student.disconnected")),pt||(pt=(0,r.A)("span",{"aria-hidden":"true",className:"text-gray-300"},void 0,"·")),(0,r.A)("span",{className:L?"text-success-600":"text-warning-600"},void 0,_(L?"course.rt.dashboard.student.focused":"course.rt.dashboard.student.blurred"))))),(0,r.A)("div",{},void 0,(0,r.A)("div",{className:"flex h-1.5 w-full overflow-hidden rounded-full bg-gray-100"},void 0,null===$?ft||(ft=(0,r.A)("div",{className:"h-full w-full bg-gray-100"})):(0,E.jsxs)(E.Fragment,{children:[(0,r.A)("div",{className:"h-full bg-success-500",style:{width:"".concat($,"%")}}),(0,r.A)("div",{className:"h-full bg-warning-400",style:{width:"".concat(100-$,"%")}})]})),(0,r.A)("div",{className:"mt-1 flex justify-between text-[10px] text-gray-400"},void 0,(0,r.A)("span",{},void 0,_("course.rt.dashboard.student.focus_ratio")),(0,r.A)("span",{className:"font-medium tabular-nums"},void 0,null===$?"—":"".concat($,"%")))),(0,r.A)("div",{className:"grid grid-cols-2 gap-x-3 gap-y-2.5 border-t border-gray-100 pt-2.5"},void 0,(0,r.A)(Tt,{icon:T.uTZ,label:_("course.rt.dashboard.student.connected_time"),value:(0,V.a3)(Y,_),tone:"positive"}),(0,r.A)(Tt,{icon:T.tPs,label:_("course.rt.dashboard.student.disconnected_time"),value:(0,V.a3)(W,_)}),(0,r.A)(Tt,{icon:T.w9L,label:_("course.rt.dashboard.student.focused_time"),value:(0,V.a3)(G,_),tone:"positive"}),(0,r.A)(Tt,{icon:T.hYQ,label:_("course.rt.dashboard.student.blurred_time"),value:(0,V.a3)(H,_),tone:"warning"}),(0,r.A)(Tt,{icon:T.scL,label:_("course.rt.dashboard.student.copy"),value:"".concat(null!==(h=null==P?void 0:P.totalCopyEvents)&&void 0!==h?h:0," ").concat(_("course.rt.dashboard.student.times")),subValue:"".concat(null!==(y=null==P?void 0:P.quantityCopy)&&void 0!==y?y:0," ").concat(_("course.rt.dashboard.student.chars"))}),(0,r.A)(Tt,{icon:T.lP0,label:_("course.rt.dashboard.student.paste"),value:"".concat(null!==(x=null==P?void 0:P.totalPasteEvents)&&void 0!==x?x:0," ").concat(_("course.rt.dashboard.student.times")),subValue:"".concat(null!==(w=null==P?void 0:P.quantityPaste)&&void 0!==w?w:0," ").concat(_("course.rt.dashboard.student.chars"))})),Z&&(0,r.A)("div",{className:"flex flex-wrap gap-1 border-t border-red-100 pt-2"},void 0,Q.map(function(e){return(0,r.A)("span",{className:"flex items-center gap-1 rounded-full bg-red-50 px-2 py-0.5 text-[11px] font-medium text-red-600"},e.id,gt||(gt=(0,r.A)(T.fQM,{className:"h-3 w-3"})),xt(e))}))),(0,r.A)(ut,{user:k,devices:z,open:M,setOpen:F,session:D,courseId:D.courseId})]})};var Et;function kt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Pt(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};
1t%2?kt(Object(n),!0).forEach(function(t){(0,f.A)(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):kt(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}var Dt=[2,3,4,5];const jt=function(e){var t=e.session,n=e.members,a=e.sessionData,i=e.connectedCourseUsers,c=e.isLoading,d=(0,u.Bd)().t,v=(0,Qe.Mj)("cours.rt.dashboard",{gridSize:3,pinnedUsers:[]}),p=(0,s.A)(v,2),f=p[0],g=p[1],b=(0,qe.C)(),A=(0,l.useMemo)(function(){return(0,o.A)(n||[]).sort(function(e,t){var n,r,o=null===(n=f.pinnedUsers)||void 0===n?void 0:n.includes(e.user.id),a=null===(r=f.pinnedUsers)||void 0===r?void 0:r.includes(t.user.id);return o&&!a?-1:!o&&a?1:e.user.getDisplayName().localeCompare(t.user.getDisplayName())})},[n,f.pinnedUsers]);return(0,l.useEffect)(function(){var e=setInterval(function(){b()},1e3);return function(){return clearInterval(e)}},[]),c?Et||(Et=(0,r.A)(m.xx,{relative:!0})):!n||n.length<=0?(0,r.A)(m.ZZ,{},void 0,d("course.rt.dashboard.empty")):(0,E.jsxs)(E.Fragment,{children:[(0,r.A)("div",{className:"mb-2 flex flex-wrap gap-2"},void 0,Dt.map(function(e){return(0,r.A)(m.vu,{name:d("course.rt.dashboard.grid",{size:e}),onChange:function(){return g(Pt(Pt({},f),{},{gridSize:e}))},selected:f.gridSize===e},e)})),(0,r.A)("div",{className:"grid",style:{gridTemplateColumns:"repeat(".concat(f.gridSize,", 1fr)"),gap:"1rem"}},void 0,A.map(function(e){var n,s,c,l=null==i||null===(n=i[e.user.id])||void 0===n?void 0:n.sessionData,u=null==a||null===(s=a.userData)||void 0===s?void 0:s.find(function(t){return t.userId===e.user.id}),d=l||u||null;return(0,r.A)(Ct,{user:e.user,sessionData:d,session:t,onPinChange:function(t){g(function(n){var r,a,s=t?[].concat((0,o.A)(null!==(r=n.pinnedUsers)&&void 0!==r?r:[]),[e.user.id]):null===(a=n.pinnedUsers)||void 0===a?void 0:a.filter(function(t){return t!==e.user.id});return Pt(Pt({},n),{},{pinnedUsers:s})})},isPinned:!(null===(c=f.pinnedUsers)||void 0===c||!c.includes(e.user.id))},e.user.id)}))]})},It=function(e){var t=e.session,n=(0,u.Bd)(void 0,{keyPrefix:"course.sessions.editor.control_center"}).t,o=(0,C.A)().getMembers,a=(0,G.A)().getSessionData,s=(0,L.I)({queryKey:["course",t.courseId,"members"],queryFn:function(){return o(t.courseId,{})}}),i=s.isLoading,c=s.data,l=(0,L.I)({queryKey:["course",t.courseId,"session",t.id],queryFn:function(){return a(t.courseId,t.id)},refetchInterval:!!t.isOngoing&&5e3}).data;return(0,r.A)("div",{},void 0,t.isEnded&&(0,r.A)(m.ZT,{variant:"warning",className:"mb-4"},void 0,n("ended")),(0,r.A)(m.ZZ,{className:"mb-4 block text-sm"},void 0,n("help")),(0,r.A)(jt,{session:t,members:c,sessionData:l,isLoading:i}))};var _t="course.sessions.creator.config";const Rt=function(e){var t,n=e.session,o=e.cantEditReason,a=e.onChange,s=(0,u.Bd)().t,i=null!==o;return(0,r.A)("div",{},void 0,"started"===o&&(0,r.A)(m.ZT,{variant:"danger",className:"mb-4"},void 0,s("".concat(_t,".cantEdit.started"))),(0,r.A)(m.DY,{tlKey:"".concat(_t,".general.name"),className:"mb-4"},void 0,(0,r.A)(m.ZQ,{name:"examName",maxLength:60,placeholder:s("".concat(_t,".general.name.placeholder")),value:null!==(t=n.name)&&void 0!==t?t:"",onChange:function(e){return a({name:e.target.value})},disabled:i})),(0,r.A)(ce,{startTime:n.startTime,endTime:n.endTime,disabled:i,onChange:function(e){return a(e)}}))};var Ut,Mt="course.sessions.wizard.steps.restrictions",Ft="course.sessions.creator.config";const Bt=function(e){var t,n=e.session,o=e.examSettings,a=e.cantEditReason,s=e.onCh
1ange,i=e.onChangeSetting,c=(0,u.Bd)(void 0,{keyPrefix:"course.sessions.editor"}).t,l=(0,u.Bd)().t,d=null!==a,v=!(null===(t=n.sessionSettings)||void 0===t||!t.lockdown);return(0,r.A)("div",{},void 0,"started"===a&&(0,r.A)(m.ZT,{variant:"danger",className:"mb-4"},void 0,l("".concat(Ft,".cantEdit.started"))),(0,r.A)(m.DY,{tlKey:"".concat(Ft,".lockdown.lockdown")},void 0,(0,r.A)(m.dO,{value:v,onToggle:function(e){return s({sessionSettings:{lockdown:e}})},disabled:d})),(0,r.A)(m.ZT,{variant:v?"primary":"warning",className:"mb-6 mt-2"},void 0,l("".concat(Mt,v?".lockdown_on":".lockdown_off"))),Ut||(Ut=(0,r.A)(m.DY,{tlKey:"".concat(Mt,".tools"),variant:"header",className:"mb-4"})),(0,r.A)(le,{isAllowed:function(e){return(0,oe.wX)(e,o)},onChange:function(e,t){return i(e.setting,t)},disabled:d}),(0,r.A)(m.Rt,{header:c("advanced"),className:"mt-6"},void 0,(0,r.A)(Z.A,{level:"session",id:[n.courseId,n.id.toString()],hideProperties:["toolsNotebook","toolsCodeExecution","toolsPrivateMessaging","experimentsExams"],disabled:d})))};var Lt,Qt,qt="course.sessions.creator.config";const Kt=function(e){var t=e.session,n=e.cantEditReason,o=e.onChange,a=(0,u.Bd)().t,s=null!==n;return(0,r.A)("div",{},void 0,"started"===n&&(0,r.A)(m.ZT,{variant:"danger",className:"mb-4"},void 0,a("".concat(qt,".cantEdit.started"))),Lt||(Lt=(0,r.A)(m.DY,{tlKey:"".concat(qt,".general.sharedNotes"),variant:"header",className:"mb-2"})),(0,r.A)(ee.A,{placeholder:a("".concat(qt,".general.sharedNotes.placeholder")),value:t.sharedNotes,onChange:function(e){return o({sharedNotes:e})},readOnly:s}),Qt||(Qt=(0,r.A)(m.DY,{tlKey:"".concat(qt,".general.privateNotes"),variant:"header",className:"mb-2 mt-6"})),(0,r.A)(ee.A,{placeholder:a("".concat(qt,".general.privateNotes.placeholder")),value:t.privateNotes,onChange:function(e){return o({privateNotes:e})},readOnly:s}))};function Zt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function zt(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Zt(Object(n),!0).forEach(function(t){(0,f.A)(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Zt(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}var Yt="course.sessions.editor";const Wt=function(e){var t,n=e.session,o=e.onClose,i=(0,u.Bd)(void 0,{keyPrefix:Yt}).t,d=(0,u.Bd)().t,p=(0,W.jE)(),g=(0,te.A)().updatePlatformSettings,A=function(e){var t,n=(0,G.A)().updateSession,r=(0,W.jE)(),o=(0,l.useState)(b.av.DONE),i=(0,s.A)(o,2),u=i[0],d=i[1],v=(0,l.useRef)(),m=function(t){return r.setQueryData(["courseSessions",e.courseId],function(e){return(e||[]).map(function(e){return e.id===t.id?t:e})})},p=(0,Ee.A)({onChange:function(t){v.current=e,m((0,w.bj)(ke.W,De(De(De({},e),t),{},{sessionSettings:De(De({},e.sessionSettings),t.sessionSettings)}))),d(b.av.SAVING)},onUpdate:(t=(0,a.A)(c().mark(function t(r){var o;return c().wrap(function(t){for(;;)switch(t.prev=t.next){case 0:if(r&&0!==Object.keys(r).length){t.next=1;break}return t.abrupt("return");case 1:return t.next=2,n(e.courseId,e.id,r);case 2:if(o=t.sent){t.next=3;break}return v.current&&m(v.current),d(b.av.ERROR),t.abrupt("return");case 3:m(o),d(b.av.SAVED);case 4:case"end":return t.stop()}},t)})),function(e){return t.apply(this,arguments)}),wait:1e3,accumulateChanges:"deep",clearChangesOnUpdate:!0},{});return{saveStatus:u,updateSession:(0,s.A)(p,2)[1]}}(n),h=A.saveStatus,y=A.updateSession,x=[n.courseId,n.id.toString()],N=(0,je._d)("session",x).data,O=(0,v.ok)(),S=(0,s.A)(O,2),C=S[0],k=S[1],P=(0,Ce.A)("c
1ourseExamEditorTab","overview",{updateOnChange:!0}),D=P.get,j=P.set,I=null!==(t=C.get("examTab"))&&void 0!==t?t:D(),_=function(e){j(e),C.set("examTab",e),k(C,{replace:!0})},R=n.startedAt?"started":null,U=function(){var e=(0,a.A)(c().mark(function e(t,n){var r,o;return c().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return r=re.p[t],o=r.split(".")[0],p.setQueryData((0,je.KS)("session",x),function(e){var t,a=null==e||null===(t=e[o])||void 0===t?void 0:t[r];return e&&a?zt(zt({},e),{},(0,f.A)({},o,zt(zt({},e[o]),{},(0,f.A)({},r,zt(zt({},a),{},{effectiveValue:n,current:zt(zt({},a.current),{},{value:n})}))))):e}),e.next=1,g("session",x,(0,f.A)({},r,{value:n}));case 1:(0,je.iR)(p,"session",x),(0,Y.c)(p);case 2:case"end":return e.stop()}},e)}));return function(t,n){return e.apply(this,arguments)}}(),M={overview:{visible:!0,Icon:T.fZB,Component:Ue},controlCenter:{visible:!n.isNeverStarted,Icon:T.oUp,Component:It},schedule:{visible:!0,Icon:T.BS_,Component:Rt},restrictions:{visible:!0,Icon:T.OQ4,Component:Bt},instructions:{visible:!0,Icon:T.WG5,Component:Kt}},F=M[I],B=null!=F&&F.visible?F:M.overview,L=n.isOngoing?"ongoing":n.isEnded?"ended":"planned",Q=n.isOngoing?"success":n.isEnded?"warning":"primary",q={session:n,examSettings:N,cantEditReason:R,onChange:function(e){return y(e)},onChangeSetting:U,switchToTab:_,onDeleted:o};return(0,r.A)("div",{},void 0,(0,r.A)(m.$n,{variant:"danger",onClick:o,iconPosition:"left",Icon:T.Pdx},"back-button-exam-editor",d("msg.back")),(0,r.A)("div",{className:"mb-4 mt-4 flex flex-wrap items-center gap-4"},void 0,(0,r.A)(m.DZ,{size:"h3"},void 0,n.getName()),(0,r.A)(m.Ex,{variant:Q},void 0,i("status.".concat(L))),(0,r.A)(Ie.A,{saveStatus:h,className:"w-fit"})),(0,r.A)(m.fu,{tabs:M,selectedTab:I,onTabSelected:function(e){return _(e)},tnKey:"".concat(Yt,".tabs")},void 0,(0,E.jsx)(B.Component,zt({},q))))};var Gt,Vt;function Ht(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function $t(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Ht(Object(n),!0).forEach(function(t){(0,f.A)(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Ht(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}var Jt=function(e){var t=e.header,n=e.sessions,o=e.cardProps;return n.length<=0?Vt||(Vt=(0,E.jsx)(E.Fragment,{})):(0,E.jsxs)(E.Fragment,{children:[(0,r.A)(m.DZ,{size:"h4",className:"mb-2 mt-4"},void 0,t),(0,r.A)("div",{},void 0,n.map(function(e){return(0,E.jsx)(J,$t($t({},o),{},{session:e}),e.id)}))]})};const Xt=function(e){var t,n=e.courseId,o=(0,G.A)().getSessions,i=(0,v.ok)("sessionId"),d=(0,s.A)(i,2),p=d[0],f=d[1],g=(0,u.Bd)(void 0,{keyPrefix:"course.sessions"}).t,b=(0,u.Bd)().t,A=(0,W.jE)(),h=p.get("sessionId"),y="true"===p.get("newExam"),x=(0,L.I)({queryKey:["courseSessions",n],queryFn:(t=(0,a.A)(c().mark(function e(){return c().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=1,o(n);case 1:return e.abrupt("return",e.sent);case 2:case"end":return e.stop()}},e)})),function(){return t.apply(this,arguments)})}),w=x.data,N=x.isLoading,O=(0,l.useMemo)(function(){return null==w?void 0:w.reduce(function(e,t){return t.isEnded&&e.ended.push(t),t.isOngoing&&e.ongoing.push(t),t.isNeverStarted&&e.planned.push(t),e},{ended:[],planned:[],ongoing:[]})},[w]),S=(0,l.useMemo)(function(){if(w&&h)return w.find(function(e){return e.id===parseInt(h)})},[w,h]),T=function(e){p.delete("newExam"),p.set("sessionId",e.toString()),f(p)},C=function(){var e=(0,a.A)(c().mark(function e(t){return c().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:A.invalidateQueries(["courseSessions",n]);case 1:case"end":return e.stop()}},e)}));return function(t){return e.apply(this,arguments)}}(),E=function(){var e=(0,a.A)(c().mark(function e(t){return c().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:A.invalidateQueries(["courseSessions",n]);case 1:case"end":return e.stop()}},e)}));return function(t){return e.apply(this,arguments)}}
1(),k={onClick:T,manage:{onStartSession:C,onEndSession:E}};return N?Gt||(Gt=(0,r.A)(m.xx,{relative:!0})):w&&O?(0,r.A)("div",{className:"mt-2 grid w-full grid-cols-1 overflow-hidden"},void 0,(0,r.A)(X.e,{show:!y&&!S,enterFrom:"opacity-0 -translate-x-full",enterTo:"opacity-100 translate-x-0",enter:"transition duration-200 ease-in-out",leaveFrom:"opacity-100 translate-x-0",leaveTo:"opacity-0 -translate-x-full",leave:"transition duration-200 ease-in-out"},void 0,(0,r.A)("div",{className:"col-start-1 row-start-1"},void 0,(0,r.A)(m.$n,{onClick:function(){p.set("newExam","true"),f(p)}},void 0,g("new")),(0,r.A)(Jt,{header:g("ongoing"),sessions:null==O?void 0:O.ongoing,cardProps:k}),(0,r.A)(Jt,{header:g("planned"),sessions:null==O?void 0:O.planned,cardProps:k}),(0,r.A)(Jt,{header:g("ended"),sessions:null==O?void 0:O.ended,cardProps:k}))),(0,r.A)(X.e,{show:y&&!S,enterFrom:"opacity-0 translate-x-full",enterTo:"opacity-100 translate-x-0",enter:"transition duration-200 ease-in-out",leaveFrom:"opacity-100 translate-x-0",leaveTo:"opacity-0 translate-x-full",leave:"transition duration-200 ease-in-out"},void 0,(0,r.A)("div",{className:(0,q.QP)("col-start-1 row-start-1 h-fit p-4",(0,K.vQ)(),"bg-gray-100")},void 0,(0,r.A)(Te,{courseId:n,onCancel:function(){p.delete("newExam"),f(p)},onCreated:function(e){return T(e.id)}}))),(0,r.A)(X.e,{show:!!S,enterFrom:"opacity-0 translate-x-full",enterTo:"opacity-100 translate-x-0",enter:"transition duration-200 ease-in-out",leaveFrom:"opacity-100 translate-x-0",leaveTo:"opacity-0 translate-x-full",leave:"transition duration-200 ease-in-out"},void 0,(0,r.A)("div",{className:(0,q.QP)("col-start-1 row-start-1 h-fit p-4",(0,K.vQ)(),"bg-gray-100")},void 0,S&&(0,r.A)(Wt,{session:S,onClose:function(){p.delete("sessionId"),p.delete("examTab"),f(p)}})))):(0,r.A)("span",{className:"text-error-500"},void 0,b("error.unknown"))};var en,tn;const nn=function(){var e,t=(0,d.A)(),n=(0,v.Zp)(),i=(0,p.A)().routes,f=(0,v.g)().id,g=(0,C.A)().getCourse,b=(0,u.Bd)().t,A=(0,l.useState)(!0),h=(0,s.A)(A,2),y=h[0],x=h[1],w=(0,v.zy)().state,N=(0,l.useState)((null==w?void 0:w.highlightModulesTab)||!1),O=(0,s.A)(N,2),S=O[0],k=O[1],P=(0,Y.k)({courseId:f}),I=(0,L.I)({queryKey:["course/manager",f],refetchOnMount:!1,refetchOnWindowFocus:!0,structuralSharing:function(e,t){if(!e)return t;var n=(0,s.A)(e,1)[0],r=(0,s.A)(t,1)[0];return r&&n?(n.id,r.id,t):t},queryFn:(e=(0,a.A)(c().mark(function e(t){var r,o,a,i,l,u;return c().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(r=t.queryKey,(o=(0,s.A)(r,2))[0],a=o[1]){e.next=1;break}return e.abrupt("return",[null,null]);case 1:return e.next=2,g(a);case 2:if(i=e.sent){e.next=3;break}return e.abrupt("return",[null,null]);case 3:if(l=i.course,u=i.member,(0,B.mV)(u.userId,u.role,l.creatorId,{roles:[F.oW.TA]})){e.next=4;break}return n("/"),e.abrupt("return",[null,null]);case 4:return e.abrupt("return",[l,u]);case 5:case"end":return e.stop()}},e)})),function(t){return e.apply(this,arguments)})}),_=I.data,Z=I.isLoading,W=(I.refetch,(0,l.useMemo)(function(){return null!=_?_:[null,null]},[_])),G=(0,s.A)(W,2),V=G[0],H=G[1],$=(0,j.A)([{id:"display",component:D,customHeader:!0,Icon:T.J2d},{id:"modules",component:Q.A,desc:!0,Icon:T.keA,popover:S?b("course.manager.modules.popover"):void 0},{id:"members",component:M.A,Icon:T.QbR},{id:"config",component:z,Icon:T.w0J,badge:"NEW"}].concat((0,o.A)(null!=P&&P.experimentsExams&&V?[{id:"exams",component:function(){return(0,r.A)(Xt,{courseId:V.id})},Icon:T.KHb,badge:"NEW"}]:[]),[{id:"danger",component:R,Icon:T.Tqh}]),i.auth.manage_course.path.replace(":id",null!=f?f:""),{onChangeTab:function(e){return"modules"===e.id&&x(!1)}}),J=$.tab,X=$.tabs,ee=$.setTab,te=function(e){return!(!V||!H)&&(0,B.mV)(H.userId,H.role,V.creatorId,e)};return(0,l.useEffect)(function(){V&&t.setNavbarSettings({title:(0,r.A)("div",{},void 0,(0,r.A)("div",{},void 0,V.name),(0,r.A)("div",{className:"font-content text-sm"},void 0,(0,r.A)(m.N_,{to:i.auth.course.path.replace(":courseId",V.id)},void 0,en||(en=(0,r.A)(T.Pdx,{}))," ",b("course.manager.back")))),burger:y,onBurgerClick:function(){return x(function(e){return!e})}})},[V,b,y]),Z||!V?tn||(tn=(0,r.A)(m.xx,{})):(0,r.A)("div",{className:"challenge-scroll relative flex h-full w-full gap-4 overflow-auto px-4 pt-4 font-article text-lg"},void 0,(0,r.A)("aside",{className:(0,q.QP)("sticky top-0 z-20 h-fit flex-shrink-0 rounded-lg p-2 transition-all duration-200",y?"w-52":"w-12",(0,K.vQ)())},void 0,X.map(function(e){return(0,r.A)(U.A,{tab:e,onClick:function(){"modules"===e.id&&k(!1),ee(e)},active:J.id===e.id,translationPrefix:"course.manager",badge:e.badge,Icon:e.Icon,collapsed:!y,popover:e.popover},e.id)})),(0,r.A)("main",{className:(0,q.QP)("relative h-fit max-w-[90vw] flex-grow rounded-lg",(0,K.vQ)())},void 0,J.customHeader?(0,r.A)(J.component,{course:V,checkCoursePermissions:te}):(0,E.jsxs)(E.Fragment,{children:[(0,r.A)("h1",{className:"border-b-2 border-gray-200 p-4 font-montserrat text-xl font-bold"},void 0,b("course.manager.".concat(J.id,".title"))),"display"===J.id?(0,r.A)("form",{className:"p-4"},void 0,(0,r.A)(J.component,{course:V,checkCoursePermissions:te})):(0,r.A)("div",{className:"p-4"},void 0,(0,r.A)(J.component,{course:V,checkCoursePermissions:te}))]})))}}
1,56755(e,t,n){n.d(t,{A:()=>a});var r=n(96540),o=n(63710);const a=function(e){var t=(0,o.Bd)().t;return(0,r.useEffect)(function(){var n=function(n){if(e){n.preventDefault();var r=t("msg.unsaved_changes");return n.returnValue=r,r}};return window.addEventListener("beforeunload",n),function(){window.removeEventListener("beforeunload",n)}},[e]),null}},62543(e,t,n){n.d(t,{A:()=>a});var r=n(80296),o=n(96540);const a=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{intervalTime:1e3},n=(0,o.useState)(),a=(0,r.A)(n,2),s=a[0],i=a[1],c=(0,o.useRef)(!1),l=function(){var n;if(e&&!c.current){var r;if(e.getTime()-(new Date).getTime()<=(null!==(n=t.endAtMillis)&&void 0!==n?n:0))return c.current=!0,null===(r=t.onCountdownEnd)||void 0===r||r.call(t),void i(0);i(e.getTime()-(new Date).getTime())}};return(0,o.useEffect)(function(){c.current=!1,l();var e=setInterval(l,t.intervalTime);return function(){return clearInterval(e)}},[e]),s}}}]);

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.