PageSourceSearch

https://mobcityvolleyball.com/team-course-list.component-UUMYYS3R.js

js mobcityvolleyball.com collected 2026-09-28 10:01:37 UTC 7,315 bytes, 1 lines download raw bytes

1import{a as A}from"./chunk-EYIGYTDK.js";import{b as y}from"./chunk-BADKSXLO.js";import{d as b}from"./chunk-M3TXUSHH.js";import"./chunk-SYLLCCVR.js";import"./chunk-Q7X7HAWH.js";import{a as k}from"./chunk-KACCYK47.js";import"./chunk-G3MFDCG4.js";import"./chunk-US2VIROG.js";import"./chunk-VZFBRXJX.js";import"./chunk-6GEU7SMD.js";import"./chunk-DCKVT4S2.js";import"./chunk-7NBNXOLG.js";import"./chunk-WZRD3PRJ.js";import"./chunk-PHYIE26O.js";import"./chunk-GIPXIGNW.js";import"./chunk-PACTVOE6.js";import{h as E}from"./chunk-2SNPQBYP.js";import"./chunk-HYMQBQXG.js";import"./chunk-4ROSITSK.js";import"./chunk-TY3NZZVL.js";import"./chunk-TMBGVCK3.js";import"./chunk-777MRG75.js";import"./chunk-3OIUX4OZ.js";import"./chunk-GP4FVJHT.js";import"./chunk-RO7UVPH2.js";import"./chunk-TPWBKR5T.js";import"./chunk-MAMG26DH.js";import"./chunk-HGRSCEIG.js";import"./chunk-TBBHCXBJ.js";import"./chunk-5PIHIAIC.js";import"./chunk-VGA6HNDO.js";import"./chunk-MI5TE6OK.js";import"./chunk-GAP2NSZX.js";import"./chunk-6I74GBYL.js";import"./chunk-VTMJG6SJ.js";import"./chunk-I226TH2W.js";import"./chunk-M5AD7MGW.js";import"./chunk-S43XRXZW.js";import"./chunk-LDLGO4W5.js";import"./chunk-E2KUFIHC.js";import"./chunk-GSH6XXBX.js";import"./chunk-U5WQGW6D.js";import"./chunk-SZ6IR7UI.js";import"./chunk-C3GJSBMK.js";import"./chunk-TPHRZANT.js";import"./chunk-RM6ZPKJS.js";import"./chunk-DZYANOEB.js";import"./chunk-BBLVROJE.js";import"./chunk-YKXK4PUE.js";import"./chunk-GPFKVCYC.js";import"./chunk-J3WIPPQT.js";import"./chunk-HDZZRM2M.js";import"./chunk-QQEPAJQ6.js";import"./chunk-REOLKVZA.js";import"./chunk-PVDG46DZ.js";import"./chunk-N4QG5V37.js";import"./chunk-3KD22LSU.js";import{c as N}from"./chunk-TEW5O3CC.js";import"./chunk-G27ECUAV.js";import"./chunk-SN5OJJ4C.js";import"./chunk-4WRARVBQ.js";import"./chunk-TGRBT4WK.js";import"./chunk-HKESKKTN.js";import"./chunk-ZVFXBONE.js";import"./chunk-MSHU3ECL.js";import"./chunk-N22ZR5WE.js";import"./chunk-B5GJ42QH.js";import"./chunk-IRO2TKYC.js";import"./chunk-73UVCWLJ.js";import"./chunk-N2RGN4YQ.js";import"./chunk-3QEDGTE5.js";import"./chunk-NVY6DZ65.js";import"./chunk-TY3RQCRX.js";import"./chunk-AACFS5HX.js";import"./chunk-PLJXQ3BT.js";import"./chunk-SHQFP5KR.js";import"./chunk-MHD32HZI.js";import"./chunk-55NYF5SW.js";import"./chunk-LVXN2QFC.js";import"./chunk-KKVI4FKS.js";import"./chunk-HVVEJDI5.js";import"./chunk-EPAP5PKE.js";import"./chunk-C7KJXFIB.js";import"./chunk-C666TAHH.js";import"./chunk-WCJSVNED.js";import"./chunk-ZODBMDVC.js";import"./chunk-ST3O4A2Y.js";import"./chunk-T5CHBPBL.js";import"./chunk-UCUZP7UP.js";import"./chunk-Y75ZLUWW.js";import"./chunk-VAND4FLG.js";import"./chunk-PG3N3OH3.js";import"./chunk-OH3XPIE7.js";import"./chunk-F52YO2KE.js";import"./chunk-WL2AKVEY.js";import"./chunk-VTC5CDGU.js";import"./chunk-4TCMQCZ6.js";import{H as $,X as S}from"./chunk-RZJZCBNV.js";import"./chunk-CGVZASLH.js";import"./chunk-KYKWM2QE.js";import"./chunk-TQE26OVK.js";import"./chunk-ZY52JLQ2.js";import"./chunk-WUHLWO3B.js";import{e as u}from"./chunk-E6N7HR7J.js";import{ua as M}from"./chunk-B2X2NDPJ.js";import"./chunk-FPPZ4BUR.js";import{$a as p,Ea as g,Ja as n,K as v,Tc as T,Td as w,Uc as _,Vc as I,fc as f,jd as F,qa as h,r as c,ra as l,w as C,y as m}from"./chunk-A2T27MTO.js";import"./chunk-DAZ3MHQI.js";import"./chunk-JQE4WEKA.js";import"./chunk-QHBN7R45.js";import"./chunk-WYFIINDB.js";import"./chunk-XFB3PWAV.js";var d=(()=>{let i=class i{constructor(){this.courseService=n(b),this.enrollmentService=n(y),this.teamsService=n(E),this.router=n(S),this.route=n($),this.dialog=n(N),this.statusFilter=p("all"),this.teamId$=this.route.parent?.parent?.parent?.paramMap.pipe(m(e=>e.get("id")??""),v(e=>!!e))??c(""),this.courses$=this.teamId$.pipe(l(e=>this.courseService.getAllTeamCourses$(e)),h([])),this.team$=this.teamId$.pipe(l(e=>this.teamsService.getTeamByTeamId$(e))),this.enrollmentCounts$=this.courses$.pipe(l(e=>this.loadEnrollmentCounts(e)),h({})),this.teamId=u(this.teamId$,{initialValue:""}),this.courses=u(this.courses$,{initialValue:[]}),this.teamName=u(this.team$.pipe(m(e=>e?.name??"")),{initialValue:""}),this.enrollmentCounts=u(this.enrollmentCounts$,{initialValue:{}}),this.loading=p(!1)}navigateToNewCourse(){this.navigateToCourse("new")}navigateToImportJson(){this.navigateToCourse("import-json")}navigateToEditCourse(e){this.navigateToCourse(e.id)}navigateToPreview(e){let s=this.teamId();s&&this.router.navigate(["/teams-v3",s,"courses",e.slug,"learn"])}async archiveCourse(e){let s=this.enrollmentCounts()[e.id]??0,t={title:"Archive Course",message:this.getArchiveMessage(e.title,s),confirmText:"ARCHIVE",itemName:e.title},o=this.dialog.open(k,{data:t,width:"400px"});await C(o.afterClosed())&&await this.courseService.updateCourseStatus(e.id,"archived")}setStatusFilter(e){this.statusFilter.set(e)}navigateBackToTeam(){let e=this.teamId();e&&this.router.navigate(["/teams-v3",e,"admin"])}navigateToCourse(e){let s=this.teamId();s&&this.router.navigate(["/teams-v3",s,"admin","courses",e])}getArchiveMessage(e,s){let t=s===1?"student":"students";return`${s>0?`This course has ${s} enrolled ${t} who can still complete it.`:"This course has no enrolled students."} New users will not be able to enroll. Type ARCHIVE to confirm.`}loadEnrollmentCounts(e){if(e.length===0)return c({});let s=e.map(t=>
1t.id);return this.enrollmentService.getEnrollmentsForCourses$(s).pipe(m(t=>{let o={};return t.forEach(r=>{o[r.courseId]=(o[r.courseId]??0)+1}),o}))}};i.\u0275fac=function(s){return new(s||i)},i.\u0275prov=g({token:i,factory:i.\u0275fac});let a=i;return a})();var X=(()=>{let i=class i{constructor(){this.service=n(d),this.courses=this.service.courses,this.loading=this.service.loading,this.statusFilter=this.service.statusFilter,this.teamName=this.service.teamName,this.teamId=this.service.teamId,this.enrollmentCounts=this.service.enrollmentCounts,this.onCreateManual=()=>this.service.navigateToNewCourse(),this.onCreateFromJson=()=>this.service.navigateToImportJson(),this.onPreviewCourse=e=>this.service.navigateToPreview(e),this.onEditCourse=e=>this.service.navigateToEditCourse(e),this.onArchiveCourse=e=>this.service.archiveCourse(e),this.onFilterChange=e=>this.service.setStatusFilter(e),this.onBackToTeam=()=>this.service.navigateBackToTeam()}};i.\u0275fac=function(s){return new(s||i)},i.\u0275cmp=f({type:i,selectors:[["app-team-course-list"]],features:[w([d])],decls:1,vars:7,consts:[[3,"createManual","createFromJson","previewCourse","editCourse","archiveCourse","filterChange","backToTeam","courses","loading","statusFilter","teamName","teamId","enrollmentCounts","showBackButton"]],template:function(s,t){s&1&&(_(0,"app-course-list-content",0),F("createManual",function(){return t.onCreateManual()})("createFromJson",function(){return t.onCreateFromJson()})("previewCourse",function(r){return t.onPreviewCourse(r)})("editCourse",function(r){return t.onEditCourse(r)})("archiveCourse",function(r){return t.onArchiveCourse(r)})("filterChange",function(r){return t.onFilterChange(r)})("backToTeam",function(){return t.onBackToTeam()}),I()),s&2&&T("courses",t.courses())("loading",t.loading())("statusFilter",t.statusFilter())("teamName",t.teamName())("teamId",t.teamId())("enrollmentCounts",t.enrollmentCounts())("showBackButton",!0)},dependencies:[M,A],encapsulation:2});let a=i;return a})();export{X as TeamCourseListComponent};

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.