1(this["webpackJsonpclassplus-web-react"]=this["webpackJsonpclassplus-web-react"]||[]).push([[121],{2233:function(e,t,a){e.exports=a.p+"static/media/backArrow.78dc6665.svg"},2234:function(e,t,a){e.exports={font16:"peerManagement_font16__1ys1k",listContainer:"peerManagement_listContainer__1TsqE",lcHeader:"peerManagement_lcHeader__1q9PY",lcButtons:"peerManagement_lcButtons__2TeD6",searchTransparent:"peerManagement_searchTransparent__31Ss0",font14:"peerManagement_font14__31jEq",textLink:"peerManagement_textLink__3BDHC",lcContent:"peerManagement_lcContent__2qfSW",studentCard:"peerManagement_studentCard__1oSyZ",StudentInfo:"peerManagement_StudentInfo__u7qd8",pLeft1:"peerManagement_pLeft1__Wxiw5",emptyMsg:"peerManagement_emptyMsg__1k40J",clContainer:"peerManagement_clContainer__20fyU",infoText:"peerManagement_infoText__3FAzt",ChallengeWonLost:"peerManagement_ChallengeWonLost__1wK_Y",ChallengeText:"peerManagement_ChallengeText__1WGsf",ValueAndCoin:"peerManagement_ValueAndCoin__1iB14",pageTitle:"peerManagement_pageTitle__aK8w8",flexrow:"peerManagement_flexrow__1Ulj_",rowItem:"peerManagement_rowItem__3whEJ",ChallengeWon:"peerManagement_ChallengeWon__2YcFC",ChallengeSubject:"peerManagement_ChallengeSubject__3fDb_",ChallengePoints:"peerManagement_ChallengePoints__13AqQ",Scoreboard:"peerManagement_Scoreboard__Y8Ojr",ScoreboardHeader:"peerManagement_ScoreboardHeader__10LfP",ScoreboardHeadSub:"peerManagement_ScoreboardHeadSub__1ktka",ScoreboardRankDiv:"peerManagement_ScoreboardRankDiv__1H6SS",ScoreboardRank:"peerManagement_ScoreboardRank__YwnS6",RankColumn3:"peerManagement_RankColumn3__1-XHz",RankColumn4:"peerManagement_RankColumn4__3EVPZ",RankColumn1:"peerManagement_RankColumn1__3ktzC",RankColumn2:"peerManagement_RankColumn2__14by8",ScoreboardRankMain:"peerManagement_ScoreboardRankMain__2T3Kg",WinPoints:"peerManagement_WinPoints__1A1Rf",WinPointsPara:"peerManagement_WinPointsPara__3hVkM",howPara:"peerManagement_howPara__2nnFL",pointer:"peerManagement_pointer__2vAX8",loaderContainer:"peerManagement_loaderContainer__19nIR",coinImage:"peerManagement_coinImage__3a7j-",selectBtn:"peerManagement_selectBtn__3_E33"}},2645:function(e,t,a){e.exports=a.p+"static/media/pointsIcon.7903e5e5.svg"},3445:function(e,t,a){"use strict";a.r(t);var n=a(1),s=a.n(n),l=a(2233),i=a.n(l),r=a(225),o=a(2796),c=a(2234),d=a.n(c),h=a(47),g=a(2645),m=a.n(g),p=a(456),u=a(1023),C=a.n(u),f=a(2646),_=a(151),v=a(140),M=a(79);a(3291);var T=a(67),S=a(38);var b=e=>{const{isAttempted:t,onAttemptTestClick:a,attempTestLoading:n,singleTestData:l,conditionActive:i,as:r,title:o,onClick:c}=e,d=o||(t?"Reattempt Test":"Attempt Test");return s.a.createElement("div",null,1==i?r?s.a.createElement(r,{onClick:e=>{Object(T.a)(S.pd),a(e),c&&c()},loading:n}):s.a.createElement(h.b,Object.assign({size:"small",onClick:e=>{Object(T.a)(S.pd),a(e)},loading:n},t?{basic:!0,color:"blue"}:{primary:!0}),d):s.a.createElement(h.v,{content:"This test will be available in the future",trigger:s.a.createElement(h.b,{primary:!0,size:"small",content:"Attempt Test",style:{opacity:"0.1",cursor:"default"}})}))};class E extends s.a.Component{constructor(e){super(e),this.getMsgData=e=>{let t=e.data;"TEST_LISTING_SCREEN"==t&&this.alertTestShow(),"REPORT_TO_TEST_LISTING_SCREEN"==t&&this.postMessageEvent()},this.attemptTestClose=()=>{this.setState({showTestIframe:!1})},this.postMessageEvent=()=>{this.alertTestClose(),this.attemptTestClose(),this.props.fetchTests()},this.alertTestShow=()=>{this.setState({submitAlertMessage:!0})},this.alertTestClose=()=>{this.setState({submitAlertMessage:!1})},this.attemptTest=e=>{this.setState({showTestIframe:!0,url:e})},this.alertTestIframe=e=>{if(e)return s.a.createElement(h.u,{size:"tiny",open:this.state.submitAlertMessage},s.a.createElement(h.u.Content,null,s.a.createElement("div",{style:{"text-align":"center"}},"Are you sure you want to exit?",s.a.createElement("div",{style:{marginTop:"1.5rem"}},s.a.createElement(h.b,{color:"blue",onClick:this.postMessageEvent,loading:this.state.modalLoader},"Ok"),s.a.createElement(h.b,{onClick:this.alertTestClose,style:{marginLeft:"1rem"}},"Cancel")))))},this.testIframe=(e,t)=>
1e?s.a.createElement(h.u,{className:"testIframe",open:this.state.showTestIframe,style:{margin:"0px !important",width:"100%",height:"100vh",padding:"0",overflow:"hidden"}},s.a.createElement(h.u.Content,{style:{width:"100vw",height:"100vh",padding:"0",overflow:"hidden"}},"practice"!==t?s.a.createElement(h.n,{size:"large",className:"float-right",name:"close",style:{cursor:"pointer",position:"absolute","background-color":"white",right:"0.5rem",top:"0.5rem"},onClick:this.alertTestShow}):s.a.createElement(s.a.Fragment,null),s.a.createElement("iframe",{src:e,ref:this.testRef,frameBorder:"0",allowFullScreen:!0,height:"100vh",width:"100%",className:"testIframe--test",id:"practice"!==t?"TEST_ATTEMPT_IFRAME":"DPT_TEST_ATTEMPT_IFRAME"}))):"",this.state={url:"",showTestIframe:!1,submitAlertMessage:!1,modalLoader:!1},this.onAttemptTestClick=this.onAttemptTestClick.bind(this),this.testRef=s.a.createRef(),window.addEventListener("message",this.getMsgData)}componentWillUnmount(){window.removeEventListener("message",this.getMsgData)}onAttemptTestClick(e){Object(T.a)(S.pd),e&&e.stopPropagation();const{batchTestId:t}=this.props.singleTestData;this.props.setFetchingTestUrlStatus({status:!0,batchTestId:t}),this.props.setAttemptTestUrl(),this.props.makeApiCall(`students/tests/${t}/appear`,"GET",void 0,e=>{this.props.setFetchingTestUrlStatus({status:!1,batchTestId:null}),this.props.setSelectedTest(0),this.props.setAttemptTestUrl(e.data.URL),this.attemptTest(e.data.URL)},()=>this.props.setFetchingTestUrlStatus({status:!1,batchTestId:null}))}render(){const{batchTestId:e,type:t}=this.props.singleTestData;return s.a.createElement(s.a.Fragment,null,this.testIframe(this.state.url,t),this.alertTestIframe(this.state.url),s.a.createElement(b,{singleTestData:this.props.singleTestData,onAttemptTestClick:this.onAttemptTestClick,attempTestLoading:this.props.batchTestId==e&&this.props.fetchingTestUrlStatus,isAttempted:this.props.isAttempted,conditionActive:this.props.conditionActive,title:this.props.title,as:this.props.render}))}}var A=Object(o.a)(Object(v.connect)((function(e){return{fetchingTestUrlStatus:Object(r.get)(e,"tests.fetchingTestUrlStatus",!1),batchTestId:Object(r.get)(e,"tests.batchTestId",null)}}),{setAttemptTestUrl:function(e){return{type:M.n,url:e}},setFetchingTestUrlStatus:function(e){let{fetchingTestUrlStatus:t,batchTestId:a}=e;return{type:M.g,fetchingTestUrlStatus:t,batchTestId:a}},setSelectedTest:function(e,t){return{type:M.o,selectedTestIndex:e,testId:t}},makeApiCall:_.b})(E)),y=a(5),k=a(80),I=a(2249),L=a(2780);function P(e){let{name:t,imageUrl:a,checked:n,onCheck:l,userId:i,challenged:r}=e;const{t:o}=Object(I.a)();return s.a.createElement("div",{className:d.a.studentCard},s.a.createElement("div",{className:d.a.StudentInfo},s.a.createElement(p.a,{user:{name:t,imageUrl:a||!1}}),s.a.createElement("p",{className:d.a.pLeft1},t)),r?s.a.createElement("p",{className:d.a.infoText},o("containers.BatchManagement.PeerManagement.ChallengeList.challenged","CHALLENGED")):s.a.createElement(h.d,{checked:n,onChange:()=>{l(!n,i)},className:d.a.font14}))}class w extends s.a.Component{constructor(e){super(e),this.onBackHandler=()=>{let{batchCode:e,batchId:t,history:a}=this.props;a.replace(`/batches/${t}/${e}/tests`)},this.onSearchInputChange=e=>{this.setState({search:e.target.value,offset:0,loading:!0,isAllSelected:0,selectedStudents:{}},()=>{let{search:e}=this.state;this.debouncedChallengersList()})},this.getChallengedListFilter=()=>{let{friends:e,challenged:t,isAllSelected:a,selectedStudents:n}=this.state,s={friends:{},challenged:{}};if(a){let a=[...t.students,...e.students];s.friends={total:0,students:[]},s.challenged={total:e.total,students:a.slice(0,8)}}else{let a={students:[...t.students],total:t.total};s.friends.total=e.total,s.friends.students=e.students.map(e=>{let t={...e};return n[t.studentId]&&(t.alreadyChallenged=1,a.students.length<9&&a.students.push({...t}),a.total=a.total+1),t}),s.challenged=a}return s.selectedStudents={},s},this.challengersList=async e=>{let{batchId:t}=this.props,{testId:a}=this.props.match.params,{limit:n,offset:s,search:l,friends:i,isAllSelected:r}=this.state,o="batchId="+t;l&&l.length>0&&(o+="&search="+l),o+=`&limit=${n}&offset=${s}`,this.props.makeApiCall(`/v3/challenge/friends/${a}?${o}`,"GET",void 0,t=>{let{data:a}=t,{challenged:l,enableSelectAll:r,...o}=a,{students:c}=null===a||void 0===a?void 0:a.friends,d=[...i.students];d=s?[...d,...c]:c;let h={...a,isAllSelected:r,friends:JSON.parse(JSON.stringify({...null===a||void 0===a?void 0:a.friends,students:d})),offset:s+n,loading:!1};if(r){let e={};d.forEach(t=>{t.alreadyChallenged||(e[t.studentId]=!0)}),h.selectedStudents=e}this.setState(h,()=>{e&&e()})},e=>{this.setState({loading:!1})},!1,{})},this.debouncedChallengersList=Object(r.debounce)(this.challengersList,600),this.challengeFriends=async()=>{let{isAllSelected:e,selectedStudents:t,testDetails:a,challenged:n,friends:s}=this.state;const{t:l}=this.props;let{testId:i}=this.props.match.params,r=(null===a||void 0===a?void 0:a.length)>0?a[0]:{},o={isAllSelected:e,selectedStudents:Object.keys(t).map(e=>e),unselectedStudents:[]};if(o.selectedStudents.length>
10)this.props.makeApiCall("/v3/challenge/"+i,"POST",o,e=>{var t;let{data:a}=e;if(0===r.hasTestStarted&&0===r.isAttempted)return y.toastr.success(l("containers.BatchManagement.PeerManagement.ChallengeList.success","SUCCESS"),l("containers.BatchManagement.PeerManagement.ChallengeList.ChallengeSuccessWait","You have challenged your friends successfully. Wait for test to start")),void this.props.history.goBack();y.toastr.success(l("containers.BatchManagement.PeerManagement.ChallengeList.success","SUCCESS"),l("containers.BatchManagement.PeerManagement.ChallengeList.challengeSuccess","You have challenged your friends successfully."));let n=this.getChallengedListFilter();"function"===typeof(null===(t=this.attemptBtnRef)||void 0===t?void 0:t.handleClick)&&0==(null===r||void 0===r?void 0:r.isAttempted)?this.setState({CTAPayload:{payload:o,challenged:!0},submitting:!1,loading:!1,offset:0,selectedStudents:[],...n},()=>{this.attemptBtnRef.handleClick()}):this.setState({CTAPayload:{payload:o,challenged:!0},submitting:!1,loading:!1,offset:0,selectedStudents:[],...n})},e=>{console.err(e)},!1,{});else{var c;if(0===n.total)return void y.toastr.error(l("containers.BatchManagement.PeerManagement.ChallengeList.selectAtleastOne","Select atleast one friend to Challenge"));"function"===typeof(null===(c=this.attemptBtnRef)||void 0===c?void 0:c.handleClick)&&0==(null===r||void 0===r?void 0:r.isAttempted)&&this.setState({CTAPayload:{payload:{},challenged:!0}},()=>{this.attemptBtnRef.handleClick()})}},this.onHandleCheck=(e,t)=>{let{friends:a}=this.state,n={...this.state.selectedStudents};e?n[t]=!0:delete n[t];let s=0;a.students.forEach(e=>{e.alreadyChallenged||s++});let l=Object.keys(n).length===s?1:0;this.setState({selectedStudents:n,isAllSelected:l})},this.toggleSelectAll=()=>{let{friends:e,isAllSelected:t}=this.state;t=t?0:1;let{students:a}=e,n={};if(t&&Array.isArray(a)){let e={};a.forEach(t=>{t.alreadyChallenged||(e[t.studentId]=!0)}),n.selectedStudents=e}else n.selectedStudents={};n.isAllSelected=t,this.setState(n)},this.toggleModalHandler=()=>{this.setState({showModal:!this.state.showModal});try{if(!this.state.showModal){var e,t,a;let{batchId:n,persistedData:s}=this.props,{testId:l}=this.props.match.params;Object(k.c)(S.uf,{screen:"challenge friends screen",batchId:n,testId:l,userId:null===s||void 0===s||null===(e=s.user)||void 0===e||null===(t=e.id)||void 0===t?void 0:t.toString(),studentId:null===s||void 0===s||null===(a=s.studentId)||void 0===a?void 0:a.toString()})}}catch(n){console.error("CleverTap event error")}},this.attemptTestHandler=()=>{var e,t,a;let{challenged:n,payload:s}=this.state.CTAPayload||{},{batchId:l}=this.props,{testId:i}=this.props.match.params,{testDetails:r}=this.state,o=(null===r||void 0===r?void 0:r.length)>0?r[0]:{},{persistedData:c}=this.props;Object(k.c)(null!==o&&void 0!==o&&o.hasTestStarted?n?o.isAttempted?"Challenge now click":S.sf:S.vf:S.tf,{batchId:l,testId:i,userId:null===c||void 0===c||null===(e=c.user)||void 0===e||null===(t=e.id)||void 0===t?void 0:t.toString(),studentId:null===c||void 0===c||null===(a=c.studentId)||void 0===a?void 0:a.toString(),...s}),this.setState({CTAPayload:{}})},this.checkAllChallenged=()=>{const{friends:e}=this.state;let t=!0;return 0!==e.students.length&&(e.students.forEach(e=>{if(!e.alreadyChallenged)return t=!1,t}),t)},this.state={showModal:!1,search:"",challenged:{students:[],total:0},loading:!0,friends:{students:[],total:0},canWinCard:{},limit:10,offset:0,studentList:[],selectedStudents:{},isAllSelected:0},this.attemptBtnRef=null}componentDidMount(){this.challengersList()}render(){var e,t;let{challenged:a,friends:n,selectedStudents:l,search:r,isAllSelected:o,canWinCard:c,showModal:g,testDetails:p,loading:u}=this.state;const{t:_}=this.props;let v=(null===p||void 0===p?void 0:p.length)>0?p[0]:{},M=this.checkAllChallenged(),{testId:T}=this.props.match.params,{numberOfAttempts:S,isAttempted:b}=v;return b&&(b=parseInt(b)),S&&(S=parseInt(S)),s.a.createElement("div",{className:d.a.clContainer,style:{marginTop:"0px",marginLeft:"16px",maxHeight:M?"40vh":"48vh"}},s.a.createElement("div",{className:d.a.ScoreboardHeader},s.a.createElement("img",{src:i.a,alt:"backArrow",onClick:this.onBackHandler,className:d.a.pointer}),s.a.createElement("p",null,_("containers.BatchManagement.PeerManagement.ChallengeList.challengeFriendsTitle","Challenge Friends"))),a&&!M&&!r&&Boolean(v.hasTestStarted)&&a.total>0&&s.a.createElement("div",{className:"infoMsg",style:{marginTop:"16px"}},_("containers.BatchManagement.PeerManagement.ChallengeList.youAreCompeting1","You are competing with")," ",a.total," ",_("containers.BatchManagement.PeerManagement.ChallengeList.youAreCompeting2","friends in this test")),0===v.hasTestStarted&&!M&&!r&&s.a.createElement("div",{className:"infoMsg",style:{marginTop:"16px"}},_("containers.BatchManagement.PeerManagement.ChallengeList.thisIsUpcoming1","This is an upcoming test")," ",0==n.total?"":", "+_("containers.BatchManagement.PeerManagement.ChallengeList.challengeAttemptLater","challenge your friends now and attempt test later")),a.total>0&&s.a.createElement("p",{className:d.a.font16,style:{marginTop:"16px"}},M?_("containers.BatchManagement.PeerManagement.ChallengeList.yayChallenged","Yay! You challenged Everyone"):_("containers.BatchManagement.PeerManagement.ChallengeList.challengeMoreFriends","Challenge More Friends!")),s.a.createElement("div",{className:d.a.listContainer,style:{padding:0,marginTop:"16px"}},s.a.createElement("div",{className:d.a.lcHeader,style:{borderBottom:"1px solid #e5e5e5"}},s.a.createElement("span",{className:d.a.font16,style:{width:"100px"}},_("containers.BatchManagement.PeerManagement.ChallengeList.friends","Friends"),"(",n&&n.total||0,")"),s.a.createElement(h.p,{icon:"search",iconPosition:"left",placeholder:_("containers.BatchManagement.PeerManagement.ChallengeList.searchPlaceholder","Search"),transparent:!0,onChange:this.onSearchInputChange,value:r,className:d.a.searchTransparent}),s.a.createElement("div",{className:d.a.selectBtn},!M&&(null===n||void 0===n?void 0:n.total)>0&&!r&&s.a.createElement("a",{className:`${d.a.textLink} ${d.a.font14} `,href:null,onClick:this.toggleSelectAll},o?_("containers.BatchManagement.PeerManagement.ChallengeList.unselectAll","Unselect All"):_("containers.BatchManagement.PeerManagement.ChallengeList.selectAll","Select All")))),u&&s.a.createElement(h.r,{active:!0,content:_("containers.BatchManagement.PeerManagement.ChallengeList.loading","Loading")}),!u&&0===(null===n||void 0===n||null===(e=n.students)||void 0===e?void 0:e.length)&&s.a.createElement("div",{className:d.a.lcContent,style:{height:"23em"}},s.a.createElement("div",{className:d.a.emptyMsg,style:{height:"100%"}},r?_("containers.BatchManagement.PeerManagement.ChallengeList.searchResultNotFound","Search result not found"):M?_("containers.BatchManagement.PeerManagement.ChallengeList.yayChallenged","Yay! You challenged everyone"):_("containers.BatchManagement.PeerManagement.ChallengeList.thereAreNoStudents","There are no other students in the batch to challenge."))),!u&&(null===n||void 0===n||null===(t=n.students)||void 0===t?void 0:t.length)>0&&s.a.createElement(C.a,{dataLength:n.students.length,next:this.challengersList,hasMore:n.total>n.students.length,height:"48vh",loader:s.a.createElement(h.r,{active:!0,content:_("containers.BatchManagement.PeerManagement.ChallengeList.loading2","Loading...")})},n.students.map((e,t)=>s.a.createElement(P,{name:e.name,checked:l[e.studentId],imageUrl:e.imageUrl,challenged:e.alreadyChallenged,onCheck:this.onHandleCheck,userId:e.studentId,key:e.studentId})))),!u&&s.a.createElement("div",{className:d.a.lcHeader},c?s.a.createElement("span",{className:d.a.font14},s.a.createElement(h.o,{src:m.a,inline:!0})," ",null===c||void 0===c?void 0:c.text," ",s.a.createElement("a",{className:""+d.a.textLink,href:null,onClick:this.toggleModalHandler}," ",_("containers.BatchManagement.PeerManagement.ChallengeList.how","How"),"?")):s.a.createElement("div",null),s.a.createElement("div",{className:d.a.lcButtons},Boolean(null===v||void 0===v?void 0:v.hasTestStarted)&&s.a.createElement(A,{render:e=>{let{onClick:t,...a}=e;return s.a.createElement(h.b,Object.assign({ref:e=>{this.attemptBtnRef=e},style:{visibility:0==S||M?"hidden":"visible",cursor:"pointer"},basic:!0,content:_("containers.BatchManagement.PeerManagement.ChallengeList.skipAttempt","Skip & Attempt"),onClick:e=>{t&&t(e),this.attemptTestHandler()}},a))},conditionActive:v.hasTestStarted,singleTestData:{batchTestId:T},fetchTests:this.onBackHandler}),!(1===v.isAttempted&&0===n.total)&&s.a.createElement(h.b,{color:0===(null===v||void 0===v?void 0:v.hasTestStarted)&&M&&0!=S?"#E5E5E5":"blue",disabled:0===(null===v||void 0===v?void 0:v.hasTestStarted)&&(M||0==n.total),style:{marginLeft:"10px"},onClick:this.challengeFriends,content:0==(null===v||void 0===v?void 0:v.hasTestStarted)&&0==a.total&&0==b?_("containers.BatchManagement.PeerManagement.ChallengeList.createChallenge","Create Challenge"):1!==(null===v||void 0===v?void 0:v.hasTestStarted)||0!==b||M?1===(null===v||void 0===v?void 0:v.hasTestStarted)&&0===b&&M?_("containers.BatchManagement.PeerManagement.ChallengeList.attemptTestButton","Attempt Test"):0===(null===v||void 0===v?void 0:v.hasTestStarted)&&M?_("containers.BatchManagement.PeerManagement.ChallengeList.waitForChallenge","Wait for challenge to start"):1===b||0==(null===v||void 0===v?void 0:v.hasTestStarted)&&0===b&&!M?_("containers.BatchManagement.PeerManagement.ChallengeList.challengeNow","Challenge Now"):void 0:_("containers.BatchManagement.PeerManagement.ChallengeList.challenge&Attempt","Challenge and Attempt Test")}))),s.a.createElement(f.a,{open:g,onClose:this.toggleModalHandler,canWinCard:c}))}}t.default=Object(o.a)(Object(v.connect)(e=>({persistedData:null===e||void 0===e?void 0:e.persistedData}),{makeApiCall:_.b})(Object(L.a)()(w)))}}]);
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.