@@ -16,6 +16,7 @@ import {Contest} from "./types/contests/contest";
1616import { Score } from "./types/levels/score" ;
1717import { LevelRelations } from './types/levels/level-relations' ;
1818import { Asset } from './types/asset' ;
19+ import { LevelUpdateRequest } from './types/levels/level-update-request' ;
1920
2021export const defaultPageSize : number = 40 ;
2122
@@ -55,6 +56,18 @@ export class ClientService extends ApiImplementation {
5556 getLevelById ( id : number ) {
5657 return this . http . get < Level > ( `/levels/id/${ id } ` ) ;
5758 }
59+
60+ updateLevelById ( id : number , data : LevelUpdateRequest , isCurator : boolean ) {
61+ return this . http . patch < Level > ( `${ isCurator ? '/admin' : '' } /levels/id/${ id } ` , data ) ;
62+ }
63+
64+ updateLevelIconById ( id : number , hash : string , isCurator : boolean ) {
65+ return this . http . patch < Level > ( `${ isCurator ? '/admin' : '' } /levels/id/${ id } ` , { iconHash : hash } ) ;
66+ }
67+
68+ deleteLevelById ( id : number , isModerator : boolean ) {
69+ return this . http . delete < Level > ( `${ isModerator ? '/admin' : '' } /levels/id/${ id } ` ) ;
70+ }
5871
5972 getScoresForLevel ( id : number , scoreType : number , skip : number , count : number = defaultPageSize , params : Params | null = null ) {
6073 return this . http . get < ListWithData < Score > > ( `/scores/${ id } /${ scoreType } ` , { params : this . setPageQuery ( params , skip , count ) } ) ;
@@ -135,6 +148,14 @@ export class ClientService extends ApiImplementation {
135148 return this . http . post < Response > ( `/levels/id/${ id } /setAsOverride` , null ) ;
136149 }
137150
151+ teamPickLevel ( id : number ) {
152+ return this . http . post < Response > ( `/admin/levels/id/${ id } /teamPick` , null ) ;
153+ }
154+
155+ unTeamPickLevel ( id : number ) {
156+ return this . http . post < Response > ( `/admin/levels/id/${ id } /removeTeamPick` , null ) ;
157+ }
158+
138159 uploadAsset ( hash : string , data : ArrayBuffer ) {
139160 return this . http . post < Asset > ( `/assets/${ hash } ` , data ) ;
140161 }
0 commit comments