@mtgame/core 0.0.2 → 0.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/api/feedback-api.d.ts +9 -0
- package/api/file-api.d.ts +13 -0
- package/api/league-news-api.d.ts +13 -0
- package/api/public-api.d.ts +6 -0
- package/api/team-api.d.ts +66 -0
- package/api/team-event-api.d.ts +16 -0
- package/api/user-api.d.ts +51 -0
- package/bundles/mtgame-core.umd.js +1790 -538
- package/bundles/mtgame-core.umd.js.map +1 -1
- package/bundles/mtgame-core.umd.min.js +2 -2
- package/bundles/mtgame-core.umd.min.js.map +1 -1
- package/esm2015/api/feedback-api.js +32 -0
- package/esm2015/api/file-api.js +46 -0
- package/esm2015/api/league-news-api.js +59 -0
- package/esm2015/api/public-api.js +7 -1
- package/esm2015/api/team-api.js +394 -0
- package/esm2015/api/team-event-api.js +81 -0
- package/esm2015/api/user-api.js +284 -0
- package/esm2015/models/basketball-game-config.js +5 -4
- package/esm2015/models/feedback.js +32 -0
- package/esm2015/models/league-news.js +39 -0
- package/esm2015/models/public-api.js +7 -1
- package/esm2015/models/team-access.js +45 -0
- package/esm2015/models/team-permission.js +38 -0
- package/esm2015/models/tournament-event.js +11 -4
- package/esm2015/models/tournament.js +2 -1
- package/esm2015/models/user-access.js +25 -0
- package/esm2015/models/user-permission.js +38 -0
- package/esm2015/services/centrifugo.service.js +1 -2
- package/esm5/api/feedback-api.js +35 -0
- package/esm5/api/file-api.js +64 -0
- package/esm5/api/league-news-api.js +68 -0
- package/esm5/api/public-api.js +7 -1
- package/esm5/api/team-api.js +486 -0
- package/esm5/api/team-event-api.js +96 -0
- package/esm5/api/user-api.js +350 -0
- package/esm5/models/basketball-game-config.js +5 -4
- package/esm5/models/feedback.js +35 -0
- package/esm5/models/league-news.js +44 -0
- package/esm5/models/public-api.js +7 -1
- package/esm5/models/team-access.js +50 -0
- package/esm5/models/team-permission.js +43 -0
- package/esm5/models/tournament-event.js +11 -4
- package/esm5/models/tournament.js +2 -1
- package/esm5/models/user-access.js +30 -0
- package/esm5/models/user-permission.js +43 -0
- package/esm5/services/centrifugo.service.js +1 -2
- package/fesm2015/mtgame-core.js +1200 -191
- package/fesm2015/mtgame-core.js.map +1 -1
- package/fesm5/mtgame-core.js +1780 -540
- package/fesm5/mtgame-core.js.map +1 -1
- package/localization/overtime-types.d.ts +2 -2
- package/models/basketball-game-config.d.ts +4 -3
- package/models/feedback.d.ts +9 -0
- package/models/league-news.d.ts +16 -0
- package/models/public-api.d.ts +6 -0
- package/models/team-access.d.ts +27 -0
- package/models/team-permission.d.ts +15 -0
- package/models/tournament-event.d.ts +5 -2
- package/models/tournament.d.ts +1 -0
- package/models/user-access.d.ts +10 -0
- package/models/user-permission.d.ts +16 -0
- package/mtgame-core.metadata.json +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,394 @@
|
|
|
1
|
+
import { __awaiter, __decorate } from "tslib";
|
|
2
|
+
import { Injectable } from '@angular/core';
|
|
3
|
+
import { HttpClient, HttpParams, HttpResponse } from '@angular/common/http';
|
|
4
|
+
import { Team } from '../models/team';
|
|
5
|
+
import { map } from 'rxjs/operators';
|
|
6
|
+
import { TeamUser, TeamUserRole } from '../models/team-user';
|
|
7
|
+
import { User } from '../models/user';
|
|
8
|
+
import { TeamInvite } from '../models/team-invite';
|
|
9
|
+
import { TeamInviteExternal } from '../models/team-invite-external';
|
|
10
|
+
import { Poll } from '../models/poll';
|
|
11
|
+
import { VolleyballStatistic } from '../models/volleyball-statistic';
|
|
12
|
+
import { Game } from '../models/game';
|
|
13
|
+
import { TeamEvent } from '../models/team-event';
|
|
14
|
+
import { Tournament } from '../models/tournament';
|
|
15
|
+
import { TournamentTeam } from '../models/tournament-team';
|
|
16
|
+
import { TournamentInvite } from '../models/tournament-invite';
|
|
17
|
+
import { BasketballStatistic } from '../models/basketball-statistic';
|
|
18
|
+
import { TeamPermission } from '../models/team-permission';
|
|
19
|
+
import { TeamAccess } from '../models/team-access';
|
|
20
|
+
import { ConfigService } from '../services/config.service';
|
|
21
|
+
import * as i0 from "@angular/core";
|
|
22
|
+
import * as i1 from "@angular/common/http";
|
|
23
|
+
import * as i2 from "../services/config.service";
|
|
24
|
+
let TeamApi = class TeamApi {
|
|
25
|
+
constructor(httpClient, configService) {
|
|
26
|
+
this.httpClient = httpClient;
|
|
27
|
+
this.configService = configService;
|
|
28
|
+
}
|
|
29
|
+
search(query, sportId) {
|
|
30
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
31
|
+
let params = (new HttpParams()).set('search', query);
|
|
32
|
+
if (sportId) {
|
|
33
|
+
params = params.set('sport', sportId.toString());
|
|
34
|
+
}
|
|
35
|
+
return this.httpClient
|
|
36
|
+
.get(`${this.configService.get('apiUrl')}/api/v1/team/`, { params })
|
|
37
|
+
.pipe(map(data => Team.toFront(data)))
|
|
38
|
+
.toPromise();
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
create(team) {
|
|
42
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
43
|
+
return this.httpClient
|
|
44
|
+
.post(`${this.configService.get('apiUrl')}/api/v1/team/`, Team.toBack(team))
|
|
45
|
+
.pipe(map(data => Team.toFront(data)))
|
|
46
|
+
.toPromise();
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
getById(teamId) {
|
|
50
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
51
|
+
return this.httpClient
|
|
52
|
+
.get(`${this.configService.get('apiUrl')}/api/v1/team/${teamId}/`)
|
|
53
|
+
.pipe(map(data => Team.toFront(data)))
|
|
54
|
+
.toPromise();
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
getTeamAccess(teamId) {
|
|
58
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
59
|
+
return this.httpClient
|
|
60
|
+
.get(`${this.configService.get('apiUrl')}/api/v1/team/${teamId}/access/`)
|
|
61
|
+
.pipe(map(data => TeamAccess.toFront(data)))
|
|
62
|
+
.toPromise();
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
update(teamId, values) {
|
|
66
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
67
|
+
return this.httpClient
|
|
68
|
+
.patch(`${this.configService.get('apiUrl')}/api/v1/team/${teamId}/`, Team.toBack(values))
|
|
69
|
+
.pipe(map(data => Team.toFront(data)))
|
|
70
|
+
.toPromise();
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
delete(team) {
|
|
74
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
75
|
+
return this.httpClient
|
|
76
|
+
.delete(`${this.configService.get('apiUrl')}/api/v1/team/${team.id}/`)
|
|
77
|
+
.toPromise();
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
getPermission(teamId) {
|
|
81
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
82
|
+
return this.httpClient
|
|
83
|
+
.get(`${this.configService.get('apiUrl')}/api/v1/team/${teamId}/permission/`)
|
|
84
|
+
.pipe(map(data => TeamPermission.toFront(data)))
|
|
85
|
+
.toPromise();
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
updatePermission(teamId, permission) {
|
|
89
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
90
|
+
return this.httpClient
|
|
91
|
+
.patch(`${this.configService.get('apiUrl')}/api/v1/team/${teamId}/permission/`, TeamPermission.toBack(permission))
|
|
92
|
+
.pipe(map(data => TeamPermission.toFront(data)))
|
|
93
|
+
.toPromise();
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
getUsers(teamId, tournamentId) {
|
|
97
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
98
|
+
let params = new HttpParams();
|
|
99
|
+
if (tournamentId) {
|
|
100
|
+
params = params.set('tournament_id', tournamentId.toString());
|
|
101
|
+
}
|
|
102
|
+
return this.httpClient
|
|
103
|
+
.get(`${this.configService.get('apiUrl')}/api/v1/team/${teamId}/users/`, { params })
|
|
104
|
+
.pipe(map(data => TeamUser.toFront(data)))
|
|
105
|
+
.toPromise();
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
updateUserRole(teamId, teamUserId, role) {
|
|
109
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
110
|
+
return this.httpClient
|
|
111
|
+
.patch(`${this.configService.get('apiUrl')}/api/v1/team/${teamId}/users/${teamUserId}/role/`, { role: TeamUserRole[role] })
|
|
112
|
+
.pipe(map(data => TeamUser.toFront(data)))
|
|
113
|
+
.toPromise();
|
|
114
|
+
});
|
|
115
|
+
}
|
|
116
|
+
updateUserNumber(teamId, teamUserId, gameNumber) {
|
|
117
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
118
|
+
return this.httpClient
|
|
119
|
+
.patch(`${this.configService.get('apiUrl')}/api/v1/team/${teamId}/users/${teamUserId}/number/`, { number: gameNumber.toString() })
|
|
120
|
+
.pipe(map(data => TeamUser.toFront(data)))
|
|
121
|
+
.toPromise();
|
|
122
|
+
});
|
|
123
|
+
}
|
|
124
|
+
deleteUser(teamUser) {
|
|
125
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
126
|
+
return this.httpClient
|
|
127
|
+
.delete(`${this.configService.get('apiUrl')}/api/v1/team/${teamUser.teamId}/users/${teamUser.id}/`)
|
|
128
|
+
.toPromise();
|
|
129
|
+
});
|
|
130
|
+
}
|
|
131
|
+
changeOwner(teamId, user) {
|
|
132
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
133
|
+
return this.httpClient
|
|
134
|
+
.post(`${this.configService.get('apiUrl')}/api/v1/team/${teamId}/owner/`, { id: user.id })
|
|
135
|
+
.pipe(map(data => Team.toFront(data)))
|
|
136
|
+
.toPromise();
|
|
137
|
+
});
|
|
138
|
+
}
|
|
139
|
+
getInvites(teamId) {
|
|
140
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
141
|
+
return this.httpClient
|
|
142
|
+
.get(`${this.configService.get('apiUrl')}/api/v1/team/${teamId}/invites/`)
|
|
143
|
+
.pipe(map(data => TeamInvite.toFront(data)))
|
|
144
|
+
.toPromise();
|
|
145
|
+
});
|
|
146
|
+
}
|
|
147
|
+
sendInvite(teamId, user) {
|
|
148
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
149
|
+
return this.httpClient
|
|
150
|
+
.post(`${this.configService.get('apiUrl')}/api/v1/team/${teamId}/invites/`, { user })
|
|
151
|
+
.pipe(map(data => TeamInvite.toFront(data)))
|
|
152
|
+
.toPromise();
|
|
153
|
+
});
|
|
154
|
+
}
|
|
155
|
+
acceptInvite(invite) {
|
|
156
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
157
|
+
return this.httpClient
|
|
158
|
+
.post(`${this.configService.get('apiUrl')}/api/v1/team_invite/${invite.id}/accept/`, {})
|
|
159
|
+
.pipe(map(data => TeamInvite.toFront(data)))
|
|
160
|
+
.toPromise();
|
|
161
|
+
});
|
|
162
|
+
}
|
|
163
|
+
declineInvite(invite) {
|
|
164
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
165
|
+
return this.httpClient
|
|
166
|
+
.post(`${this.configService.get('apiUrl')}/api/v1/team_invite/${invite.id}/decline/`, {})
|
|
167
|
+
.pipe(map(data => TeamInvite.toFront(data)))
|
|
168
|
+
.toPromise();
|
|
169
|
+
});
|
|
170
|
+
}
|
|
171
|
+
resendInvite(invite) {
|
|
172
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
173
|
+
return this.httpClient
|
|
174
|
+
.post(`${this.configService.get('apiUrl')}/api/v1/team_invite/${invite.id}/resend/`, {})
|
|
175
|
+
.pipe(map(data => TeamInvite.toFront(data)))
|
|
176
|
+
.toPromise();
|
|
177
|
+
});
|
|
178
|
+
}
|
|
179
|
+
getInvitesExternal(teamId) {
|
|
180
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
181
|
+
return this.httpClient
|
|
182
|
+
.get(`${this.configService.get('apiUrl')}/api/v1/team/${teamId}/invites_external/`)
|
|
183
|
+
.pipe(map(data => TeamInviteExternal.toFront(data)))
|
|
184
|
+
.toPromise();
|
|
185
|
+
});
|
|
186
|
+
}
|
|
187
|
+
sendInviteExternal(teamId, invite) {
|
|
188
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
189
|
+
return this.httpClient
|
|
190
|
+
.post(`${this.configService.get('apiUrl')}/api/v1/team/${teamId}/invites_external/`, TeamInviteExternal.toBack(invite))
|
|
191
|
+
.pipe(map(data => TeamInviteExternal.toFront(data)))
|
|
192
|
+
.toPromise();
|
|
193
|
+
});
|
|
194
|
+
}
|
|
195
|
+
deleteInviteExternal(invite) {
|
|
196
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
197
|
+
return this.httpClient
|
|
198
|
+
.delete(`${this.configService.get('apiUrl')}/api/v1/invites_external/${invite.id}/`)
|
|
199
|
+
.toPromise();
|
|
200
|
+
});
|
|
201
|
+
}
|
|
202
|
+
resendInviteExternal(invite) {
|
|
203
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
204
|
+
return this.httpClient
|
|
205
|
+
.post(`${this.configService.get('apiUrl')}/api/v1/invites_external/${invite.id}/resend/`, {})
|
|
206
|
+
.pipe(map(data => TeamInviteExternal.toFront(data)))
|
|
207
|
+
.toPromise();
|
|
208
|
+
});
|
|
209
|
+
}
|
|
210
|
+
getPolls(teamId, archive = false) {
|
|
211
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
212
|
+
return this.httpClient
|
|
213
|
+
.get(`${this.configService.get('apiUrl')}/api/v1/team/${teamId}/polls/${archive ? '?archive=1' : ''}`)
|
|
214
|
+
.pipe(map(data => Poll.toFront(data)))
|
|
215
|
+
.toPromise();
|
|
216
|
+
});
|
|
217
|
+
}
|
|
218
|
+
createPoll(teamId, poll) {
|
|
219
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
220
|
+
return this.httpClient
|
|
221
|
+
.post(`${this.configService.get('apiUrl')}/api/v1/team/${teamId}/polls/`, Poll.toBack(poll))
|
|
222
|
+
.pipe(map(data => Poll.toFront(data)))
|
|
223
|
+
.toPromise();
|
|
224
|
+
});
|
|
225
|
+
}
|
|
226
|
+
getUsersStatistic(teamId) {
|
|
227
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
228
|
+
return this.httpClient
|
|
229
|
+
.get(`${this.configService.get('apiUrl')}/api/v1/team/${teamId}/statistics/`)
|
|
230
|
+
.pipe(map(data => BasketballStatistic.toFront(data)))
|
|
231
|
+
.toPromise();
|
|
232
|
+
});
|
|
233
|
+
}
|
|
234
|
+
getVolleyballStatistic(teamId) {
|
|
235
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
236
|
+
return this.httpClient
|
|
237
|
+
.get(`${this.configService.get('apiUrl')}/api/v1/team/${teamId}/volleyball_statistics/`)
|
|
238
|
+
.pipe(map(data => VolleyballStatistic.toFront(data)))
|
|
239
|
+
.toPromise();
|
|
240
|
+
});
|
|
241
|
+
}
|
|
242
|
+
joinTeam(teamId) {
|
|
243
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
244
|
+
return this.httpClient
|
|
245
|
+
.post(`${this.configService.get('apiUrl')}/api/v1/team/${teamId}/join/`, {})
|
|
246
|
+
.pipe(map(data => TeamInvite.toFront(data)))
|
|
247
|
+
.toPromise();
|
|
248
|
+
});
|
|
249
|
+
}
|
|
250
|
+
leaveTeam(teamId) {
|
|
251
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
252
|
+
return this.httpClient
|
|
253
|
+
.post(`${this.configService.get('apiUrl')}/api/v1/team/${teamId}/leave/`, {})
|
|
254
|
+
.toPromise();
|
|
255
|
+
});
|
|
256
|
+
}
|
|
257
|
+
getGames(teamId, archive = false) {
|
|
258
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
259
|
+
return this.httpClient
|
|
260
|
+
.get(`${this.configService.get('apiUrl')}/api/v1/team/${teamId}/games/${archive ? '?archive=1' : ''}`)
|
|
261
|
+
.pipe(map(data => Game.toFront(data)))
|
|
262
|
+
.toPromise();
|
|
263
|
+
});
|
|
264
|
+
}
|
|
265
|
+
createGame(teamId, game) {
|
|
266
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
267
|
+
return this.httpClient
|
|
268
|
+
.post(`${this.configService.get('apiUrl')}/api/v1/team/${teamId}/games/`, Game.toBack(game))
|
|
269
|
+
.pipe(map(data => Game.toFront(data)))
|
|
270
|
+
.toPromise();
|
|
271
|
+
});
|
|
272
|
+
}
|
|
273
|
+
getTeamEvents(teamId) {
|
|
274
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
275
|
+
return this.httpClient
|
|
276
|
+
.get(`${this.configService.get('apiUrl')}/api/v1/team/${teamId}/events/`)
|
|
277
|
+
.pipe(map(data => TeamEvent.toFront(data)))
|
|
278
|
+
.toPromise();
|
|
279
|
+
});
|
|
280
|
+
}
|
|
281
|
+
createTeamEvent(teamId, teamEvent) {
|
|
282
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
283
|
+
return this.httpClient
|
|
284
|
+
.post(`${this.configService.get('apiUrl')}/api/v1/team/${teamId}/events/`, TeamEvent.toBack(teamEvent))
|
|
285
|
+
.pipe(map(data => TeamEvent.toFront(data)))
|
|
286
|
+
.toPromise();
|
|
287
|
+
});
|
|
288
|
+
}
|
|
289
|
+
getTournaments(teamId) {
|
|
290
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
291
|
+
return this.httpClient
|
|
292
|
+
.get(`${this.configService.get('apiUrl')}/api/v1/team/${teamId}/tournaments/`)
|
|
293
|
+
.pipe(map(data => Tournament.toFront(data)))
|
|
294
|
+
.toPromise();
|
|
295
|
+
});
|
|
296
|
+
}
|
|
297
|
+
getTournamentTeams(teamId) {
|
|
298
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
299
|
+
return this.httpClient
|
|
300
|
+
.get(`${this.configService.get('apiUrl')}/api/v1/team/${teamId}/tournament_teams/`)
|
|
301
|
+
.pipe(map(data => TournamentTeam.toFront(data)))
|
|
302
|
+
.toPromise();
|
|
303
|
+
});
|
|
304
|
+
}
|
|
305
|
+
getTournamentInvites(teamId) {
|
|
306
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
307
|
+
return this.httpClient
|
|
308
|
+
.get(`${this.configService.get('apiUrl')}/api/v1/team/${teamId}/tournament_invites/`)
|
|
309
|
+
.pipe(map(data => TournamentInvite.toFront(data)))
|
|
310
|
+
.toPromise();
|
|
311
|
+
});
|
|
312
|
+
}
|
|
313
|
+
getTournamentGames(teamId, tournamentId, page, size) {
|
|
314
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
315
|
+
let params = new HttpParams().set('page', page.toString());
|
|
316
|
+
if (size) {
|
|
317
|
+
params = params.set('size', size.toString());
|
|
318
|
+
}
|
|
319
|
+
return this.httpClient
|
|
320
|
+
.get(`${this.configService.get('apiUrl')}/api/v1/team/${teamId}/tournaments/${tournamentId}/games/`, { params, observe: 'response' })
|
|
321
|
+
.pipe(map((response) => {
|
|
322
|
+
return {
|
|
323
|
+
total: +response.headers.get('X-Page-Count'),
|
|
324
|
+
data: Game.toFront(response.body)
|
|
325
|
+
};
|
|
326
|
+
}))
|
|
327
|
+
.toPromise();
|
|
328
|
+
});
|
|
329
|
+
}
|
|
330
|
+
acceptTournamentInvite(inviteId) {
|
|
331
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
332
|
+
return this.httpClient
|
|
333
|
+
.post(`${this.configService.get('apiUrl')}/api/v1/tournament_invite/${inviteId}/accept/`, {})
|
|
334
|
+
.pipe(map(data => TournamentInvite.toFront(data)))
|
|
335
|
+
.toPromise();
|
|
336
|
+
});
|
|
337
|
+
}
|
|
338
|
+
declineTournamentInvite(inviteId) {
|
|
339
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
340
|
+
return this.httpClient
|
|
341
|
+
.post(`${this.configService.get('apiUrl')}/api/v1/tournament_invite/${inviteId}/decline/`, {})
|
|
342
|
+
.pipe(map(data => TournamentInvite.toFront(data)))
|
|
343
|
+
.toPromise();
|
|
344
|
+
});
|
|
345
|
+
}
|
|
346
|
+
registerLazyUser(teamId, userData) {
|
|
347
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
348
|
+
return this.httpClient
|
|
349
|
+
.post(`${this.configService.get('apiUrl')}/api/v1/team/${teamId}/lazy_user/`, { user: User.toBack(userData) })
|
|
350
|
+
.pipe(map(data => TeamUser.toFront(data)))
|
|
351
|
+
.toPromise();
|
|
352
|
+
});
|
|
353
|
+
}
|
|
354
|
+
getLazyUser(teamUserId) {
|
|
355
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
356
|
+
return this.httpClient
|
|
357
|
+
.get(`${this.configService.get('apiUrl')}/api/v1/lazy_user/${teamUserId}/`)
|
|
358
|
+
.pipe(map(data => TeamUser.toFront(data)))
|
|
359
|
+
.toPromise();
|
|
360
|
+
});
|
|
361
|
+
}
|
|
362
|
+
updateLazyUser(teamUserId, userData) {
|
|
363
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
364
|
+
return this.httpClient
|
|
365
|
+
.patch(`${this.configService.get('apiUrl')}/api/v1/lazy_user/${teamUserId}/`, { user: User.toBack(userData) })
|
|
366
|
+
.pipe(map(data => TeamUser.toFront(data)))
|
|
367
|
+
.toPromise();
|
|
368
|
+
});
|
|
369
|
+
}
|
|
370
|
+
deleteLazyUser(teamUserId) {
|
|
371
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
372
|
+
return this.httpClient
|
|
373
|
+
.delete(`${this.configService.get('apiUrl')}/api/v1/lazy_user/${teamUserId}/`)
|
|
374
|
+
.toPromise();
|
|
375
|
+
});
|
|
376
|
+
}
|
|
377
|
+
resendLazyUserEmail(teamUserId) {
|
|
378
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
379
|
+
return this.httpClient
|
|
380
|
+
.post(`${this.configService.get('apiUrl')}/api/v1/lazy_user/${teamUserId}/resend_email/`, {})
|
|
381
|
+
.toPromise();
|
|
382
|
+
});
|
|
383
|
+
}
|
|
384
|
+
};
|
|
385
|
+
TeamApi.ctorParameters = () => [
|
|
386
|
+
{ type: HttpClient },
|
|
387
|
+
{ type: ConfigService }
|
|
388
|
+
];
|
|
389
|
+
TeamApi.ɵprov = i0.ɵɵdefineInjectable({ factory: function TeamApi_Factory() { return new TeamApi(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(i2.ConfigService)); }, token: TeamApi, providedIn: "root" });
|
|
390
|
+
TeamApi = __decorate([
|
|
391
|
+
Injectable({ providedIn: 'root' })
|
|
392
|
+
], TeamApi);
|
|
393
|
+
export { TeamApi };
|
|
394
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVhbS1hcGkuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AbXRnYW1lL2NvcmUvIiwic291cmNlcyI6WyJhcGkvdGVhbS1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDNUUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3RDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBQUUsUUFBUSxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzdELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN0QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDbkQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3RDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN0QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDakQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUUvRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNyRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDM0QsT0FBTyxF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QUMsQ0FBQztHQUNwQixPQUFPLENBNlRuQjtTQTdUWSxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cFBhcmFtcywgSHR0cFJlc3BvbnNlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgVGVhbSB9IGZyb20gJy4uL21vZGVscy90ZWFtJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFRlYW1Vc2VyLCBUZWFtVXNlclJvbGUgfSBmcm9tICcuLi9tb2RlbHMvdGVhbS11c2VyJztcbmltcG9ydCB7IFVzZXIgfSBmcm9tICcuLi9tb2RlbHMvdXNlcic7XG5pbXBvcnQgeyBUZWFtSW52aXRlIH0gZnJvbSAnLi4vbW9kZWxzL3RlYW0taW52aXRlJztcbmltcG9ydCB7IFRlYW1JbnZpdGVFeHRlcm5hbCB9IGZyb20gJy4uL21vZGVscy90ZWFtLWludml0ZS1leHRlcm5hbCc7XG5pbXBvcnQgeyBQb2xsIH0gZnJvbSAnLi4vbW9kZWxzL3BvbGwnO1xuaW1wb3J0IHsgVm9sbGV5YmFsbFN0YXRpc3RpYyB9IGZyb20gJy4uL21vZGVscy92b2xsZXliYWxsLXN0YXRpc3RpYyc7XG5pbXBvcnQgeyBHYW1lIH0gZnJvbSAnLi4vbW9kZWxzL2dhbWUnO1xuaW1wb3J0IHsgVGVhbUV2ZW50IH0gZnJvbSAnLi4vbW9kZWxzL3RlYW0tZXZlbnQnO1xuaW1wb3J0IHsgVG91cm5hbWVudCB9IGZyb20gJy4uL21vZGVscy90b3VybmFtZW50JztcbmltcG9ydCB7IFRvdXJuYW1lbnRUZWFtIH0gZnJvbSAnLi4vbW9kZWxzL3RvdXJuYW1lbnQtdGVhbSc7XG5pbXBvcnQgeyBUb3VybmFtZW50SW52aXRlIH0gZnJvbSAnLi4vbW9kZWxzL3RvdXJuYW1lbnQtaW52aXRlJztcbmltcG9ydCB7IFBhZ2luYXRlZFJlc3BvbnNlIH0gZnJvbSAnLi9wYWdpbmF0ZWQtcmVzcG9uc2UuaW50ZXJmYWNlJztcbmltcG9ydCB7IEJhc2tldGJhbGxTdGF0aXN0aWMgfSBmcm9tICcuLi9tb2RlbHMvYmFza2V0YmFsbC1zdGF0aXN0aWMnO1xuaW1wb3J0IHsgVGVhbVBlcm1pc3Npb24gfSBmcm9tICcuLi9tb2RlbHMvdGVhbS1wZXJtaXNzaW9uJztcbmltcG9ydCB7IFRlYW1BY2Nlc3MgfSBmcm9tICcuLi9tb2RlbHMvdGVhbS1hY2Nlc3MnO1xuaW1wb3J0IHsgQ29uZmlnU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2NvbmZpZy5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoe3Byb3ZpZGVkSW46ICdyb290J30pXG5leHBvcnQgY2xhc3MgVGVhbUFwaSB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgaHR0cENsaWVudDogSHR0cENsaWVudCxcbiAgICBwcml2YXRlIGNvbmZpZ1NlcnZpY2U6IENvbmZpZ1NlcnZpY2UsXG4gICkge31cblxuICBhc3luYyBzZWFyY2gocXVlcnk6IHN0cmluZywgc3BvcnRJZD86IG51bWJlcik6IFByb21pc2U8VGVhbVtdPiB7XG4gICAgbGV0IHBhcmFtcyA9IChuZXcgSHR0cFBhcmFtcygpKS5zZXQoJ3NlYXJjaCcsIHF1ZXJ5KTtcbiAgICBpZiAoc3BvcnRJZCkge1xuICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgnc3BvcnQnLCBzcG9ydElkLnRvU3RyaW5nKCkpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50XG4gICAgICAuZ2V0KGAke3RoaXMuY29uZmlnU2VydmljZS5nZXQoJ2FwaVVybCcpfS9hcGkvdjEvdGVhbS9gLCB7cGFyYW1zfSlcbiAgICAgIC5waXBlKG1hcChkYXRhID0+IFRlYW0udG9Gcm9udChkYXRhKSkpXG4gICAgICAudG9Qcm9taXNlKCk7XG4gIH1cblxuICBhc3luYyBjcmVhdGUodGVhbTogVGVhbSk6IFByb21pc2U8VGVhbT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRcbiAgICAgIC5wb3N0KGAke3RoaXMuY29uZmlnU2VydmljZS5nZXQoJ2FwaVVybCcpfS9hcGkvdjEvdGVhbS9gLCBUZWFtLnRvQmFjayh0ZWFtKSlcbiAgICAgIC5waXBlKG1hcChkYXRhID0+IFRlYW0udG9Gcm9udChkYXRhKSkpXG4gICAgICAudG9Qcm9taXNlKCk7XG4gIH1cblxuICBhc3luYyBnZXRCeUlkKHRlYW1JZDogbnVtYmVyKTogUHJvbWlzZTxUZWFtPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFxuICAgICAgLmdldChgJHt0aGlzLmNvbmZpZ1NlcnZpY2UuZ2V0KCdhcGlVcmwnKX0vYXBpL3YxL3RlYW0vJHt0ZWFtSWR9L2ApXG4gICAgICAucGlwZShtYXAoZGF0YSA9PiBUZWFtLnRvRnJvbnQoZGF0YSkpKVxuICAgICAgLnRvUHJvbWlzZSgpO1xuICB9XG5cbiAgYXN5bmMgZ2V0VGVhbUFjY2Vzcyh0ZWFtSWQ6IG51bWJlcik6IFByb21pc2U8VGVhbUFjY2Vzcz4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRcbiAgICAgIC5nZXQoYCR7dGhpcy5jb25maWdTZXJ2aWNlLmdldCgnYXBpVXJsJyl9L2FwaS92MS90ZWFtLyR7dGVhbUlkfS9hY2Nlc3MvYClcbiAgICAgIC5waXBlKG1hcChkYXRhID0+IFRlYW1BY2Nlc3MudG9Gcm9udChkYXRhKSkpXG4gICAgICAudG9Qcm9taXNlKCk7XG4gIH1cblxuICBhc3luYyB1cGRhdGUodGVhbUlkOiBudW1iZXIsIHZhbHVlczogYW55KTogUHJvbWlzZTxUZWFtPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFxuICAgICAgLnBhdGNoKGAke3RoaXMuY29uZmlnU2VydmljZS5nZXQoJ2FwaVVybCcpfS9hcGkvdjEvdGVhbS8ke3RlYW1JZH0vYCwgVGVhbS50b0JhY2sodmFsdWVzKSlcbiAgICAgIC5waXBlKG1hcChkYXRhID0+IFRlYW0udG9Gcm9udChkYXRhKSkpXG4gICAgICAudG9Qcm9taXNlKCk7XG4gIH1cblxuICBhc3luYyBkZWxldGUodGVhbTogVGVhbSk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFxuICAgICAgLmRlbGV0ZShgJHt0aGlzLmNvbmZpZ1NlcnZpY2UuZ2V0KCdhcGlVcmwnKX0vYXBpL3YxL3RlYW0vJHt0ZWFtLmlkfS9gKVxuICAgICAgLnRvUHJvbWlzZSgpO1xuICB9XG5cbiAgYXN5bmMgZ2V0UGVybWlzc2lvbih0ZWFtSWQ6IG51bWJlcik6IFByb21pc2U8VGVhbVBlcm1pc3Npb24+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50XG4gICAgICAuZ2V0KGAke3RoaXMuY29uZmlnU2VydmljZS5nZXQoJ2FwaVVybCcpfS9hcGkvdjEvdGVhbS8ke3RlYW1JZH0vcGVybWlzc2lvbi9gKVxuICAgICAgLnBpcGUobWFwKGRhdGEgPT4gVGVhbVBlcm1pc3Npb24udG9Gcm9udChkYXRhKSkpXG4gICAgICAudG9Qcm9taXNlKCk7XG4gIH1cblxuICBhc3luYyB1cGRhdGVQZXJtaXNzaW9uKHRlYW1JZDogbnVtYmVyLCBwZXJtaXNzaW9uOiBUZWFtUGVybWlzc2lvbik6IFByb21pc2U8VGVhbVBlcm1pc3Npb24+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50XG4gICAgICAucGF0Y2goYCR7dGhpcy5jb25maWdTZXJ2aWNlLmdldCgnYXBpVXJsJyl9L2FwaS92MS90ZWFtLyR7dGVhbUlkfS9wZXJtaXNzaW9uL2AsIFRlYW1QZXJtaXNzaW9uLnRvQmFjayhwZXJtaXNzaW9uKSlcbiAgICAgIC5waXBlKG1hcChkYXRhID0+IFRlYW1QZXJtaXNzaW9uLnRvRnJvbnQoZGF0YSkpKVxuICAgICAgLnRvUHJvbWlzZSgpO1xuICB9XG5cbiAgYXN5bmMgZ2V0VXNlcnModGVhbUlkOiBudW1iZXIsIHRvdXJuYW1lbnRJZD86IG51bWJlcik6IFByb21pc2U8VGVhbVVzZXJbXT4ge1xuICAgIGxldCBwYXJhbXMgPSBuZXcgSHR0cFBhcmFtcygpO1xuICAgIGlmICh0b3VybmFtZW50SWQpIHtcbiAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ3RvdXJuYW1lbnRfaWQnLCB0b3VybmFtZW50SWQudG9TdHJpbmcoKSk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRcbiAgICAgIC5nZXQoYCR7dGhpcy5jb25maWdTZXJ2aWNlLmdldCgnYXBpVXJsJyl9L2FwaS92MS90ZWFtLyR7dGVhbUlkfS91c2Vycy9gLCB7cGFyYW1zfSlcbiAgICAgIC5waXBlKG1hcChkYXRhID0+IFRlYW1Vc2VyLnRvRnJvbnQoZGF0YSkpKVxuICAgICAgLnRvUHJvbWlzZSgpO1xuICB9XG5cbiAgYXN5bmMgdXBkYXRlVXNlclJvbGUodGVhbUlkOiBudW1iZXIsIHRlYW1Vc2VySWQ6IG51bWJlciwgcm9sZTogVGVhbVVzZXJSb2xlKTogUHJvbWlzZTxUZWFtVXNlcj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRcbiAgICAgIC5wYXRjaChgJHt0aGlzLmNvbmZpZ1NlcnZpY2UuZ2V0KCdhcGlVcmwnKX0vYXBpL3YxL3RlYW0vJHt0ZWFtSWR9L3VzZXJzLyR7dGVhbVVzZXJJZH0vcm9sZS9gLCB7cm9sZTogVGVhbVVzZXJSb2xlW3JvbGVdfSlcbiAgICAgIC5waXBlKG1hcChkYXRhID0+IFRlYW1Vc2VyLnRvRnJvbnQoZGF0YSkpKVxuICAgICAgLnRvUHJvbWlzZSgpO1xuICB9XG5cbiAgYXN5bmMgdXBkYXRlVXNlck51bWJlcih0ZWFtSWQ6IG51bWJlciwgdGVhbVVzZXJJZDogbnVtYmVyLCBnYW1lTnVtYmVyOiBudW1iZXIpOiBQcm9taXNlPFRlYW1Vc2VyPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFxuICAgICAgLnBhdGNoKGAke3RoaXMuY29uZmlnU2VydmljZS5nZXQoJ2FwaVVybCcpfS9hcGkvdjEvdGVhbS8ke3RlYW1JZH0vdXNlcnMvJHt0ZWFtVXNlcklkfS9udW1iZXIvYCwge251bWJlcjogZ2FtZU51bWJlci50b1N0cmluZygpfSlcbiAgICAgIC5waXBlKG1hcChkYXRhID0+IFRlYW1Vc2VyLnRvRnJvbnQoZGF0YSkpKVxuICAgICAgLnRvUHJvbWlzZSgpO1xuICB9XG5cbiAgYXN5bmMgZGVsZXRlVXNlcih0ZWFtVXNlcjogVGVhbVVzZXIpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRcbiAgICAgIC5kZWxldGUoYCR7dGhpcy5jb25maWdTZXJ2aWNlLmdldCgnYXBpVXJsJyl9L2FwaS92MS90ZWFtLyR7dGVhbVVzZXIudGVhbUlkfS91c2Vycy8ke3RlYW1Vc2VyLmlkfS9gKVxuICAgICAgLnRvUHJvbWlzZSgpO1xuICB9XG5cbiAgYXN5bmMgY2hhbmdlT3duZXIodGVhbUlkOiBudW1iZXIsIHVzZXI6IFVzZXIpOiBQcm9taXNlPFRlYW0+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50XG4gICAgICAucG9zdChgJHt0aGlzLmNvbmZpZ1NlcnZpY2UuZ2V0KCdhcGlVcmwnKX0vYXBpL3YxL3RlYW0vJHt0ZWFtSWR9L293bmVyL2AsIHtpZDogdXNlci5pZH0pXG4gICAgICAucGlwZShtYXAoZGF0YSA9PiBUZWFtLnRvRnJvbnQoZGF0YSkpKVxuICAgICAgLnRvUHJvbWlzZSgpO1xuICB9XG5cbiAgYXN5bmMgZ2V0SW52aXRlcyh0ZWFtSWQ6IG51bWJlcik6IFByb21pc2U8VGVhbUludml0ZVtdPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFxuICAgICAgLmdldChgJHt0aGlzLmNvbmZpZ1NlcnZpY2UuZ2V0KCdhcGlVcmwnKX0vYXBpL3YxL3RlYW0vJHt0ZWFtSWR9L2ludml0ZXMvYClcbiAgICAgIC5waXBlKG1hcChkYXRhID0+IFRlYW1JbnZpdGUudG9Gcm9udChkYXRhKSkpXG4gICAgICAudG9Qcm9taXNlKCk7XG4gIH1cblxuICBhc3luYyBzZW5kSW52aXRlKHRlYW1JZDogbnVtYmVyLCB1c2VyOiBVc2VyKTogUHJvbWlzZTxUZWFtSW52aXRlPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFxuICAgICAgLnBvc3QoYCR7dGhpcy5jb25maWdTZXJ2aWNlLmdldCgnYXBpVXJsJyl9L2FwaS92MS90ZWFtLyR7dGVhbUlkfS9pbnZpdGVzL2AsIHt1c2VyfSlcbiAgICAgIC5waXBlKG1hcChkYXRhID0+IFRlYW1JbnZpdGUudG9Gcm9udChkYXRhKSkpXG4gICAgICAudG9Qcm9taXNlKCk7XG4gIH1cblxuICBhc3luYyBhY2NlcHRJbnZpdGUoaW52aXRlOiBUZWFtSW52aXRlKTogUHJvbWlzZTxUZWFtSW52aXRlPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFxuICAgICAgLnBvc3QoYCR7dGhpcy5jb25maWdTZXJ2aWNlLmdldCgnYXBpVXJsJyl9L2FwaS92MS90ZWFtX2ludml0ZS8ke2ludml0ZS5pZH0vYWNjZXB0L2AsIHt9KVxuICAgICAgLnBpcGUobWFwKGRhdGEgPT4gVGVhbUludml0ZS50b0Zyb250KGRhdGEpKSlcbiAgICAgIC50b1Byb21pc2UoKTtcbiAgfVxuXG4gIGFzeW5jIGRlY2xpbmVJbnZpdGUoaW52aXRlOiBUZWFtSW52aXRlKTogUHJvbWlzZTxUZWFtSW52aXRlPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFxuICAgICAgLnBvc3QoYCR7dGhpcy5jb25maWdTZXJ2aWNlLmdldCgnYXBpVXJsJyl9L2FwaS92MS90ZWFtX2ludml0ZS8ke2ludml0ZS5pZH0vZGVjbGluZS9gLCB7fSlcbiAgICAgIC5waXBlKG1hcChkYXRhID0+IFRlYW1JbnZpdGUudG9Gcm9udChkYXRhKSkpXG4gICAgICAudG9Qcm9taXNlKCk7XG4gIH1cblxuICBhc3luYyByZXNlbmRJbnZpdGUoaW52aXRlOiBUZWFtSW52aXRlKTogUHJvbWlzZTxUZWFtSW52aXRlPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFxuICAgICAgLnBvc3QoYCR7dGhpcy5jb25maWdTZXJ2aWNlLmdldCgnYXBpVXJsJyl9L2FwaS92MS90ZWFtX2ludml0ZS8ke2ludml0ZS5pZH0vcmVzZW5kL2AsIHt9KVxuICAgICAgLnBpcGUobWFwKGRhdGEgPT4gVGVhbUludml0ZS50b0Zyb250KGRhdGEpKSlcbiAgICAgIC50b1Byb21pc2UoKTtcbiAgfVxuXG4gIGFzeW5jIGdldEludml0ZXNFeHRlcm5hbCh0ZWFtSWQ6IG51bWJlcik6IFByb21pc2U8VGVhbUludml0ZUV4dGVybmFsW10+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50XG4gICAgICAuZ2V0KGAke3RoaXMuY29uZmlnU2VydmljZS5nZXQoJ2FwaVVybCcpfS9hcGkvdjEvdGVhbS8ke3RlYW1JZH0vaW52aXRlc19leHRlcm5hbC9gKVxuICAgICAgLnBpcGUobWFwKGRhdGEgPT4gVGVhbUludml0ZUV4dGVybmFsLnRvRnJvbnQoZGF0YSkpKVxuICAgICAgLnRvUHJvbWlzZSgpO1xuICB9XG5cbiAgYXN5bmMgc2VuZEludml0ZUV4dGVybmFsKHRlYW1JZDogbnVtYmVyLCBpbnZpdGU6IFRlYW1JbnZpdGVFeHRlcm5hbCk6IFByb21pc2U8VGVhbUludml0ZUV4dGVybmFsPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFxuICAgICAgLnBvc3QoYCR7dGhpcy5jb25maWdTZXJ2aWNlLmdldCgnYXBpVXJsJyl9L2FwaS92MS90ZWFtLyR7dGVhbUlkfS9pbnZpdGVzX2V4dGVybmFsL2AsIFRlYW1JbnZpdGVFeHRlcm5hbC50b0JhY2soaW52aXRlKSlcbiAgICAgIC5waXBlKG1hcChkYXRhID0+IFRlYW1JbnZpdGVFeHRlcm5hbC50b0Zyb250KGRhdGEpKSlcbiAgICAgIC50b1Byb21pc2UoKTtcbiAgfVxuXG4gIGFzeW5jIGRlbGV0ZUludml0ZUV4dGVybmFsKGludml0ZTogVGVhbUludml0ZUV4dGVybmFsKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50XG4gICAgICAuZGVsZXRlKGAke3RoaXMuY29uZmlnU2VydmljZS5nZXQoJ2FwaVVybCcpfS9hcGkvdjEvaW52aXRlc19leHRlcm5hbC8ke2ludml0ZS5pZH0vYClcbiAgICAgIC50b1Byb21pc2UoKTtcbiAgfVxuXG4gIGFzeW5jIHJlc2VuZEludml0ZUV4dGVybmFsKGludml0ZTogVGVhbUludml0ZUV4dGVybmFsKTogUHJvbWlzZTxUZWFtSW52aXRlRXh0ZXJuYWw+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50XG4gICAgICAucG9zdChgJHt0aGlzLmNvbmZpZ1NlcnZpY2UuZ2V0KCdhcGlVcmwnKX0vYXBpL3YxL2ludml0ZXNfZXh0ZXJuYWwvJHtpbnZpdGUuaWR9L3Jlc2VuZC9gLCB7fSlcbiAgICAgIC5waXBlKG1hcChkYXRhID0+IFRlYW1JbnZpdGVFeHRlcm5hbC50b0Zyb250KGRhdGEpKSlcbiAgICAgIC50b1Byb21pc2UoKTtcbiAgfVxuXG4gIGFzeW5jIGdldFBvbGxzKHRlYW1JZDogbnVtYmVyLCBhcmNoaXZlOiBib29sZWFuID0gZmFsc2UpOiBQcm9taXNlPFBvbGxbXT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRcbiAgICAgIC5nZXQoYCR7dGhpcy5jb25maWdTZXJ2aWNlLmdldCgnYXBpVXJsJyl9L2FwaS92MS90ZWFtLyR7dGVhbUlkfS9wb2xscy8ke2FyY2hpdmUgPyAnP2FyY2hpdmU9MScgOiAnJ31gKVxuICAgICAgLnBpcGUobWFwKGRhdGEgPT4gUG9sbC50b0Zyb250KGRhdGEpKSlcbiAgICAgIC50b1Byb21pc2UoKTtcbiAgfVxuXG4gIGFzeW5jIGNyZWF0ZVBvbGwodGVhbUlkOiBudW1iZXIsIHBvbGw6IFBvbGwpOiBQcm9taXNlPFBvbGw+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50XG4gICAgICAucG9zdChgJHt0aGlzLmNvbmZpZ1NlcnZpY2UuZ2V0KCdhcGlVcmwnKX0vYXBpL3YxL3RlYW0vJHt0ZWFtSWR9L3BvbGxzL2AsIFBvbGwudG9CYWNrKHBvbGwpKVxuICAgICAgLnBpcGUobWFwKGRhdGEgPT4gUG9sbC50b0Zyb250KGRhdGEpKSlcbiAgICAgIC50b1Byb21pc2UoKTtcbiAgfVxuXG4gIGFzeW5jIGdldFVzZXJzU3RhdGlzdGljKHRlYW1JZDogbnVtYmVyKTogUHJvbWlzZTxCYXNrZXRiYWxsU3RhdGlzdGljW10+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50XG4gICAgICAuZ2V0KGAke3RoaXMuY29uZmlnU2VydmljZS5nZXQoJ2FwaVVybCcpfS9hcGkvdjEvdGVhbS8ke3RlYW1JZH0vc3RhdGlzdGljcy9gKVxuICAgICAgLnBpcGUobWFwKGRhdGEgPT4gQmFza2V0YmFsbFN0YXRpc3RpYy50b0Zyb250KGRhdGEpKSlcbiAgICAgIC50b1Byb21pc2UoKTtcbiAgfVxuXG4gIGFzeW5jIGdldFZvbGxleWJhbGxTdGF0aXN0aWModGVhbUlkOiBudW1iZXIpOiBQcm9taXNlPFZvbGxleWJhbGxTdGF0aXN0aWNbXT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRcbiAgICAgIC5nZXQoYCR7dGhpcy5jb25maWdTZXJ2aWNlLmdldCgnYXBpVXJsJyl9L2FwaS92MS90ZWFtLyR7dGVhbUlkfS92b2xsZXliYWxsX3N0YXRpc3RpY3MvYClcbiAgICAgIC5waXBlKG1hcChkYXRhID0+IFZvbGxleWJhbGxTdGF0aXN0aWMudG9Gcm9udChkYXRhKSkpXG4gICAgICAudG9Qcm9taXNlKCk7XG4gIH1cblxuICBhc3luYyBqb2luVGVhbSh0ZWFtSWQ6IG51bWJlcik6IFByb21pc2U8VGVhbUludml0ZT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRcbiAgICAgIC5wb3N0KGAke3RoaXMuY29uZmlnU2VydmljZS5nZXQoJ2FwaVVybCcpfS9hcGkvdjEvdGVhbS8ke3RlYW1JZH0vam9pbi9gLCB7fSlcbiAgICAgIC5waXBlKG1hcChkYXRhID0+IFRlYW1JbnZpdGUudG9Gcm9udChkYXRhKSkpXG4gICAgICAudG9Qcm9taXNlKCk7XG4gIH1cblxuICBhc3luYyBsZWF2ZVRlYW0odGVhbUlkOiBudW1iZXIpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRcbiAgICAgIC5wb3N0KGAke3RoaXMuY29uZmlnU2VydmljZS5nZXQoJ2FwaVVybCcpfS9hcGkvdjEvdGVhbS8ke3RlYW1JZH0vbGVhdmUvYCwge30pXG4gICAgICAudG9Qcm9taXNlKCk7XG4gIH1cblxuICBhc3luYyBnZXRHYW1lcyh0ZWFtSWQ6IG51bWJlciwgYXJjaGl2ZSA9IGZhbHNlKTogUHJvbWlzZTxHYW1lW10+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50XG4gICAgICAuZ2V0KGAke3RoaXMuY29uZmlnU2VydmljZS5nZXQoJ2FwaVVybCcpfS9hcGkvdjEvdGVhbS8ke3RlYW1JZH0vZ2FtZXMvJHthcmNoaXZlID8gJz9hcmNoaXZlPTEnIDogJyd9YClcbiAgICAgIC5waXBlKG1hcChkYXRhID0+IEdhbWUudG9Gcm9udChkYXRhKSkpXG4gICAgICAudG9Qcm9taXNlKCk7XG4gIH1cblxuICBhc3luYyBjcmVhdGVHYW1lKHRlYW1JZDogbnVtYmVyLCBnYW1lOiBHYW1lKTogUHJvbWlzZTxHYW1lPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFxuICAgICAgLnBvc3QoYCR7dGhpcy5jb25maWdTZXJ2aWNlLmdldCgnYXBpVXJsJyl9L2FwaS92MS90ZWFtLyR7dGVhbUlkfS9nYW1lcy9gLCBHYW1lLnRvQmFjayhnYW1lKSlcbiAgICAgIC5waXBlKG1hcChkYXRhID0+IEdhbWUudG9Gcm9udChkYXRhKSkpXG4gICAgICAudG9Qcm9taXNlKCk7XG4gIH1cblxuICBhc3luYyBnZXRUZWFtRXZlbnRzKHRlYW1JZDogbnVtYmVyKTogUHJvbWlzZTxUZWFtRXZlbnRbXT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRcbiAgICAgIC5nZXQoYCR7dGhpcy5jb25maWdTZXJ2aWNlLmdldCgnYXBpVXJsJyl9L2FwaS92MS90ZWFtLyR7dGVhbUlkfS9ldmVudHMvYClcbiAgICAgIC5waXBlKG1hcChkYXRhID0+IFRlYW1FdmVudC50b0Zyb250KGRhdGEpKSlcbiAgICAgIC50b1Byb21pc2UoKTtcbiAgfVxuXG4gIGFzeW5jIGNyZWF0ZVRlYW1FdmVudCh0ZWFtSWQ6IG51bWJlciwgdGVhbUV2ZW50OiBUZWFtRXZlbnQpOiBQcm9taXNlPFRlYW1FdmVudD4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRcbiAgICAgIC5wb3N0KGAke3RoaXMuY29uZmlnU2VydmljZS5nZXQoJ2FwaVVybCcpfS9hcGkvdjEvdGVhbS8ke3RlYW1JZH0vZXZlbnRzL2AsIFRlYW1FdmVudC50b0JhY2sodGVhbUV2ZW50KSlcbiAgICAgIC5waXBlKG1hcChkYXRhID0+IFRlYW1FdmVudC50b0Zyb250KGRhdGEpKSlcbiAgICAgIC50b1Byb21pc2UoKTtcbiAgfVxuXG4gIGFzeW5jIGdldFRvdXJuYW1lbnRzKHRlYW1JZDogbnVtYmVyKTogUHJvbWlzZTxUb3VybmFtZW50W10+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50XG4gICAgICAuZ2V0KGAke3RoaXMuY29uZmlnU2VydmljZS5nZXQoJ2FwaVVybCcpfS9hcGkvdjEvdGVhbS8ke3RlYW1JZH0vdG91cm5hbWVudHMvYClcbiAgICAgIC5waXBlKG1hcChkYXRhID0+IFRvdXJuYW1lbnQudG9Gcm9udChkYXRhKSkpXG4gICAgICAudG9Qcm9taXNlKCk7XG4gIH1cblxuICBhc3luYyBnZXRUb3VybmFtZW50VGVhbXModGVhbUlkOiBudW1iZXIpOiBQcm9taXNlPFRvdXJuYW1lbnRUZWFtW10+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50XG4gICAgICAuZ2V0KGAke3RoaXMuY29uZmlnU2VydmljZS5nZXQoJ2FwaVVybCcpfS9hcGkvdjEvdGVhbS8ke3RlYW1JZH0vdG91cm5hbWVudF90ZWFtcy9gKVxuICAgICAgLnBpcGUobWFwKGRhdGEgPT4gVG91cm5hbWVudFRlYW0udG9Gcm9udChkYXRhKSkpXG4gICAgICAudG9Qcm9taXNlKCk7XG4gIH1cblxuICBhc3luYyBnZXRUb3VybmFtZW50SW52aXRlcyh0ZWFtSWQ6IG51bWJlcik6IFByb21pc2U8VG91cm5hbWVudEludml0ZVtdPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFxuICAgICAgLmdldChgJHt0aGlzLmNvbmZpZ1NlcnZpY2UuZ2V0KCdhcGlVcmwnKX0vYXBpL3YxL3RlYW0vJHt0ZWFtSWR9L3RvdXJuYW1lbnRfaW52aXRlcy9gKVxuICAgICAgLnBpcGUobWFwKGRhdGEgPT4gVG91cm5hbWVudEludml0ZS50b0Zyb250KGRhdGEpKSlcbiAgICAgIC50b1Byb21pc2UoKTtcbiAgfVxuXG4gIGFzeW5jIGdldFRvdXJuYW1lbnRHYW1lcyh0ZWFtSWQ6IG51bWJlciwgdG91cm5hbWVudElkOiBudW1iZXIsIHBhZ2U6IG51bWJlciwgc2l6ZT86IG51bWJlcik6IFByb21pc2U8UGFnaW5hdGVkUmVzcG9uc2U8R2FtZVtdPj4ge1xuICAgIGxldCBwYXJhbXMgPSBuZXcgSHR0cFBhcmFtcygpLnNldCgncGFnZScsIHBhZ2UudG9TdHJpbmcoKSk7XG4gICAgaWYgKHNpemUpIHtcbiAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ3NpemUnLCBzaXplLnRvU3RyaW5nKCkpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50XG4gICAgICAuZ2V0KGAke3RoaXMuY29uZmlnU2VydmljZS5nZXQoJ2FwaVVybCcpfS9hcGkvdjEvdGVhbS8ke3RlYW1JZH0vdG91cm5hbWVudHMvJHt0b3VybmFtZW50SWR9L2dhbWVzL2AsIHtwYXJhbXMsIG9ic2VydmU6ICdyZXNwb25zZSd9KVxuICAgICAgLnBpcGUobWFwKChyZXNwb25zZTogSHR0cFJlc3BvbnNlPGFueT4pID0+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICB0b3RhbDogK3Jlc3BvbnNlLmhlYWRlcnMuZ2V0KCdYLVBhZ2UtQ291bnQnKSxcbiAgICAgICAgICBkYXRhOiBHYW1lLnRvRnJvbnQocmVzcG9uc2UuYm9keSlcbiAgICAgICAgfTtcbiAgICAgIH0pKVxuICAgICAgLnRvUHJvbWlzZSgpO1xuICB9XG5cbiAgYXN5bmMgYWNjZXB0VG91cm5hbWVudEludml0ZShpbnZpdGVJZDogbnVtYmVyKTogUHJvbWlzZTxUb3VybmFtZW50SW52aXRlPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFxuICAgICAgLnBvc3QoYCR7dGhpcy5jb25maWdTZXJ2aWNlLmdldCgnYXBpVXJsJyl9L2FwaS92MS90b3VybmFtZW50X2ludml0ZS8ke2ludml0ZUlkfS9hY2NlcHQvYCwge30pXG4gICAgICAucGlwZShtYXAoZGF0YSA9PiBUb3VybmFtZW50SW52aXRlLnRvRnJvbnQoZGF0YSkpKVxuICAgICAgLnRvUHJvbWlzZSgpO1xuICB9XG5cbiAgYXN5bmMgZGVjbGluZVRvdXJuYW1lbnRJbnZpdGUoaW52aXRlSWQ6IG51bWJlcik6IFByb21pc2U8VG91cm5hbWVudEludml0ZT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRcbiAgICAgIC5wb3N0KGAke3RoaXMuY29uZmlnU2VydmljZS5nZXQoJ2FwaVVybCcpfS9hcGkvdjEvdG91cm5hbWVudF9pbnZpdGUvJHtpbnZpdGVJZH0vZGVjbGluZS9gLCB7fSlcbiAgICAgIC5waXBlKG1hcChkYXRhID0+IFRvdXJuYW1lbnRJbnZpdGUudG9Gcm9udChkYXRhKSkpXG4gICAgICAudG9Qcm9taXNlKCk7XG4gIH1cblxuICBhc3luYyByZWdpc3RlckxhenlVc2VyKHRlYW1JZDogbnVtYmVyLCB1c2VyRGF0YTogVXNlcik6IFByb21pc2U8VGVhbVVzZXI+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50XG4gICAgICAucG9zdChgJHt0aGlzLmNvbmZpZ1NlcnZpY2UuZ2V0KCdhcGlVcmwnKX0vYXBpL3YxL3RlYW0vJHt0ZWFtSWR9L2xhenlfdXNlci9gLCAge3VzZXI6IFVzZXIudG9CYWNrKHVzZXJEYXRhKX0pXG4gICAgICAucGlwZShtYXAoZGF0YSA9PiBUZWFtVXNlci50b0Zyb250KGRhdGEpKSlcbiAgICAgIC50b1Byb21pc2UoKTtcbiAgfVxuXG4gIGFzeW5jIGdldExhenlVc2VyKHRlYW1Vc2VySWQ6IG51bWJlcik6IFByb21pc2U8VGVhbVVzZXI+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50XG4gICAgICAuZ2V0KGAke3RoaXMuY29uZmlnU2VydmljZS5nZXQoJ2FwaVVybCcpfS9hcGkvdjEvbGF6eV91c2VyLyR7dGVhbVVzZXJJZH0vYClcbiAgICAgIC5waXBlKG1hcChkYXRhID0+IFRlYW1Vc2VyLnRvRnJvbnQoZGF0YSkpKVxuICAgICAgLnRvUHJvbWlzZSgpO1xuICB9XG5cbiAgYXN5bmMgdXBkYXRlTGF6eVVzZXIodGVhbVVzZXJJZDogbnVtYmVyLCB1c2VyRGF0YTogVXNlcik6IFByb21pc2U8VGVhbVVzZXI+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50XG4gICAgICAucGF0Y2goYCR7dGhpcy5jb25maWdTZXJ2aWNlLmdldCgnYXBpVXJsJyl9L2FwaS92MS9sYXp5X3VzZXIvJHt0ZWFtVXNlcklkfS9gLCB7dXNlcjogVXNlci50b0JhY2sodXNlckRhdGEpfSlcbiAgICAgIC5waXBlKG1hcChkYXRhID0+IFRlYW1Vc2VyLnRvRnJvbnQoZGF0YSkpKVxuICAgICAgLnRvUHJvbWlzZSgpO1xuICB9XG5cbiAgYXN5bmMgZGVsZXRlTGF6eVVzZXIodGVhbVVzZXJJZDogbnVtYmVyKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50XG4gICAgICAuZGVsZXRlKGAke3RoaXMuY29uZmlnU2VydmljZS5nZXQoJ2FwaVVybCcpfS9hcGkvdjEvbGF6eV91c2VyLyR7dGVhbVVzZXJJZH0vYClcbiAgICAgIC50b1Byb21pc2UoKTtcbiAgfVxuXG4gIGFzeW5jIHJlc2VuZExhenlVc2VyRW1haWwodGVhbVVzZXJJZDogbnVtYmVyKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50XG4gICAgICAucG9zdChgJHt0aGlzLmNvbmZpZ1NlcnZpY2UuZ2V0KCdhcGlVcmwnKX0vYXBpL3YxL2xhenlfdXNlci8ke3RlYW1Vc2VySWR9L3Jlc2VuZF9lbWFpbC9gLCB7fSlcbiAgICAgIC50b1Byb21pc2UoKTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { __awaiter, __decorate } from "tslib";
|
|
2
|
+
import { Injectable } from '@angular/core';
|
|
3
|
+
import { HttpClient } from '@angular/common/http';
|
|
4
|
+
import { map } from 'rxjs/operators';
|
|
5
|
+
import { TeamEvent } from '../models/team-event';
|
|
6
|
+
import { TeamEventInvite } from '../models/team-event-invite';
|
|
7
|
+
import { ConfigService } from '../services/config.service';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
import * as i1 from "@angular/common/http";
|
|
10
|
+
import * as i2 from "../services/config.service";
|
|
11
|
+
let TeamEventApi = class TeamEventApi {
|
|
12
|
+
constructor(httpClient, configService) {
|
|
13
|
+
this.httpClient = httpClient;
|
|
14
|
+
this.configService = configService;
|
|
15
|
+
}
|
|
16
|
+
getTeamEvent(teamEventId) {
|
|
17
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
18
|
+
return this.httpClient
|
|
19
|
+
.get(`${this.configService.get('apiUrl')}/api/v1/team_event/${teamEventId}/`)
|
|
20
|
+
.pipe(map(data => TeamEvent.toFront(data)))
|
|
21
|
+
.toPromise();
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
updateTeamEvent(teamEvent) {
|
|
25
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
26
|
+
return this.httpClient
|
|
27
|
+
.patch(`${this.configService.get('apiUrl')}/api/v1/team_event/${teamEvent.id}/`, TeamEvent.toBack(teamEvent))
|
|
28
|
+
.pipe(map(data => TeamEvent.toFront(data)))
|
|
29
|
+
.toPromise();
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
deleteTeamEvent(teamEventId) {
|
|
33
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
34
|
+
return this.httpClient
|
|
35
|
+
.delete(`${this.configService.get('apiUrl')}/api/v1/team_event/${teamEventId}/`)
|
|
36
|
+
.toPromise();
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
getTeamEventInvites(teamEventId) {
|
|
40
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
41
|
+
return this.httpClient
|
|
42
|
+
.get(`${this.configService.get('apiUrl')}/api/v1/team_event/${teamEventId}/invites/`)
|
|
43
|
+
.pipe(map(data => TeamEventInvite.toFront(data)))
|
|
44
|
+
.toPromise();
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
createTeamEventInvite(teamEventId, teamUserId) {
|
|
48
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
49
|
+
return this.httpClient
|
|
50
|
+
.post(`${this.configService.get('apiUrl')}/api/v1/team_event/${teamEventId}/invites/`, { team_user_id: teamUserId })
|
|
51
|
+
.pipe(map(data => TeamEventInvite.toFront(data)))
|
|
52
|
+
.toPromise();
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
acceptTeamEventInvite(teamEventInvite) {
|
|
56
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
57
|
+
return this.httpClient
|
|
58
|
+
.post(`${this.configService.get('apiUrl')}/api/v1/team_event_invite/${teamEventInvite.id}/accept/`, {})
|
|
59
|
+
.pipe(map(data => TeamEventInvite.toFront(data)))
|
|
60
|
+
.toPromise();
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
declineTeamEventInvite(teamEventInvite) {
|
|
64
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
65
|
+
return this.httpClient
|
|
66
|
+
.post(`${this.configService.get('apiUrl')}/api/v1/team_event_invite/${teamEventInvite.id}/decline/`, {})
|
|
67
|
+
.pipe(map(data => TeamEventInvite.toFront(data)))
|
|
68
|
+
.toPromise();
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
};
|
|
72
|
+
TeamEventApi.ctorParameters = () => [
|
|
73
|
+
{ type: HttpClient },
|
|
74
|
+
{ type: ConfigService }
|
|
75
|
+
];
|
|
76
|
+
TeamEventApi.ɵprov = i0.ɵɵdefineInjectable({ factory: function TeamEventApi_Factory() { return new TeamEventApi(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(i2.ConfigService)); }, token: TeamEventApi, providedIn: "root" });
|
|
77
|
+
TeamEventApi = __decorate([
|
|
78
|
+
Injectable({ providedIn: 'root' })
|
|
79
|
+
], TeamEventApi);
|
|
80
|
+
export { TeamEventApi };
|
|
81
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVhbS1ldmVudC1hcGkuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AbXRnYW1lL2NvcmUvIiwic291cmNlcyI6WyJhcGkvdGVhbS1ldmVudC1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDakQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzlELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7OztBQUczRCxJQUFhLFlBQVksR0FBekIsTUFBYSxZQUFZO0lBQ3ZCLFlBQ1UsVUFBc0IsRUFDdEIsYUFBNEI7UUFENUIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN0QixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtJQUNuQyxDQUFDO0lBRUUsWUFBWSxDQUFDLFdBQW1COztZQUNwQyxPQUFPLElBQUksQ0FBQyxVQUFVO2lCQUNuQixHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsc0JBQXNCLFdBQVcsR0FBRyxDQUFDO2lCQUM1RSxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO2lCQUMxQyxTQUFTLEVBQUUsQ0FBQztRQUNqQixDQUFDO0tBQUE7SUFFSyxlQUFlLENBQUMsU0FBb0I7O1lBQ3hDLE9BQU8sSUFBSSxDQUFDLFVBQVU7aUJBQ25CLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxzQkFBc0IsU0FBUyxDQUFDLEVBQUUsR0FBRyxFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7aUJBQzVHLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7aUJBQzFDLFNBQVMsRUFBRSxDQUFDO1FBQ2pCLENBQUM7S0FBQTtJQUVLLGVBQWUsQ0FBQyxXQUFtQjs7WUFDdkMsT0FBTyxJQUFJLENBQUMsVUFBVTtpQkFDbkIsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLHNCQUFzQixXQUFXLEdBQUcsQ0FBQztpQkFDL0UsU0FBUyxFQUFFLENBQUM7UUFDakIsQ0FBQztLQUFBO0lBRUssbUJBQW1CLENBQUMsV0FBbUI7O1lBQzNDLE9BQU8sSUFBSSxDQUFDLFVBQVU7aUJBQ25CLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxzQkFBc0IsV0FBVyxXQUFXLENBQUM7aUJBQ3BGLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7aUJBQ2hELFNBQVMsRUFBRSxDQUFDO1FBQ2pCLENBQUM7S0FBQTtJQUVLLHFCQUFxQixDQUFDLFdBQW1CLEVBQUUsVUFBa0I7O1lBQ2pFLE9BQU8sSUFBSSxDQUFDLFVBQVU7aUJBQ25CLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxzQkFBc0IsV0FBVyxXQUFXLEVBQUUsRUFBQyxZQUFZLEVBQUUsVUFBVSxFQUFDLENBQUM7aUJBQ2pILElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7aUJBQ2hELFNBQVMsRUFBRSxDQUFDO1FBQ2pCLENBQUM7S0FBQTtJQUVLLHFCQUFxQixDQUFDLGVBQWdDOztZQUMxRCxPQUFPLElBQUksQ0FBQyxVQUFVO2lCQUNuQixJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsNkJBQTZCLGVBQWUsQ0FBQyxFQUFFLFVBQVUsRUFBRSxFQUFFLENBQUM7aUJBQ3RHLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7aUJBQ2hELFNBQVMsRUFBRSxDQUFDO1FBQ2pCLENBQUM7S0FBQTtJQUVLLHNCQUFzQixDQUFDLGVBQWdDOztZQUMzRCxPQUFPLElBQUksQ0FBQyxVQUFVO2lCQUNuQixJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsNkJBQTZCLGVBQWUsQ0FBQyxFQUFFLFdBQVcsRUFBRSxFQUFFLENBQUM7aUJBQ3ZHLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7aUJBQ2hELFNBQVMsRUFBRSxDQUFDO1FBQ2pCLENBQUM7S0FBQTtDQUNGLENBQUE7O1lBbkR1QixVQUFVO1lBQ1AsYUFBYTs7O0FBSDNCLFlBQVk7SUFEeEIsVUFBVSxDQUFDLEVBQUMsVUFBVSxFQUFFLE1BQU0sRUFBQyxDQUFDO0dBQ3BCLFlBQVksQ0FxRHhCO1NBckRZLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgVGVhbUV2ZW50IH0gZnJvbSAnLi4vbW9kZWxzL3RlYW0tZXZlbnQnO1xuaW1wb3J0IHsgVGVhbUV2ZW50SW52aXRlIH0gZnJvbSAnLi4vbW9kZWxzL3RlYW0tZXZlbnQtaW52aXRlJztcbmltcG9ydCB7IENvbmZpZ1NlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9jb25maWcuc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKHtwcm92aWRlZEluOiAncm9vdCd9KVxuZXhwb3J0IGNsYXNzIFRlYW1FdmVudEFwaSB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgaHR0cENsaWVudDogSHR0cENsaWVudCxcbiAgICBwcml2YXRlIGNvbmZpZ1NlcnZpY2U6IENvbmZpZ1NlcnZpY2UsXG4gICkge31cblxuICBhc3luYyBnZXRUZWFtRXZlbnQodGVhbUV2ZW50SWQ6IG51bWJlcik6IFByb21pc2U8VGVhbUV2ZW50PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFxuICAgICAgLmdldChgJHt0aGlzLmNvbmZpZ1NlcnZpY2UuZ2V0KCdhcGlVcmwnKX0vYXBpL3YxL3RlYW1fZXZlbnQvJHt0ZWFtRXZlbnRJZH0vYClcbiAgICAgIC5waXBlKG1hcChkYXRhID0+IFRlYW1FdmVudC50b0Zyb250KGRhdGEpKSlcbiAgICAgIC50b1Byb21pc2UoKTtcbiAgfVxuXG4gIGFzeW5jIHVwZGF0ZVRlYW1FdmVudCh0ZWFtRXZlbnQ6IFRlYW1FdmVudCk6IFByb21pc2U8VGVhbUV2ZW50PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFxuICAgICAgLnBhdGNoKGAke3RoaXMuY29uZmlnU2VydmljZS5nZXQoJ2FwaVVybCcpfS9hcGkvdjEvdGVhbV9ldmVudC8ke3RlYW1FdmVudC5pZH0vYCwgVGVhbUV2ZW50LnRvQmFjayh0ZWFtRXZlbnQpKVxuICAgICAgLnBpcGUobWFwKGRhdGEgPT4gVGVhbUV2ZW50LnRvRnJvbnQoZGF0YSkpKVxuICAgICAgLnRvUHJvbWlzZSgpO1xuICB9XG5cbiAgYXN5bmMgZGVsZXRlVGVhbUV2ZW50KHRlYW1FdmVudElkOiBudW1iZXIpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRcbiAgICAgIC5kZWxldGUoYCR7dGhpcy5jb25maWdTZXJ2aWNlLmdldCgnYXBpVXJsJyl9L2FwaS92MS90ZWFtX2V2ZW50LyR7dGVhbUV2ZW50SWR9L2ApXG4gICAgICAudG9Qcm9taXNlKCk7XG4gIH1cblxuICBhc3luYyBnZXRUZWFtRXZlbnRJbnZpdGVzKHRlYW1FdmVudElkOiBudW1iZXIpOiBQcm9taXNlPFRlYW1FdmVudEludml0ZVtdPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFxuICAgICAgLmdldChgJHt0aGlzLmNvbmZpZ1NlcnZpY2UuZ2V0KCdhcGlVcmwnKX0vYXBpL3YxL3RlYW1fZXZlbnQvJHt0ZWFtRXZlbnRJZH0vaW52aXRlcy9gKVxuICAgICAgLnBpcGUobWFwKGRhdGEgPT4gVGVhbUV2ZW50SW52aXRlLnRvRnJvbnQoZGF0YSkpKVxuICAgICAgLnRvUHJvbWlzZSgpO1xuICB9XG5cbiAgYXN5bmMgY3JlYXRlVGVhbUV2ZW50SW52aXRlKHRlYW1FdmVudElkOiBudW1iZXIsIHRlYW1Vc2VySWQ6IG51bWJlcik6IFByb21pc2U8VGVhbUV2ZW50SW52aXRlPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFxuICAgICAgLnBvc3QoYCR7dGhpcy5jb25maWdTZXJ2aWNlLmdldCgnYXBpVXJsJyl9L2FwaS92MS90ZWFtX2V2ZW50LyR7dGVhbUV2ZW50SWR9L2ludml0ZXMvYCwge3RlYW1fdXNlcl9pZDogdGVhbVVzZXJJZH0pXG4gICAgICAucGlwZShtYXAoZGF0YSA9PiBUZWFtRXZlbnRJbnZpdGUudG9Gcm9udChkYXRhKSkpXG4gICAgICAudG9Qcm9taXNlKCk7XG4gIH1cblxuICBhc3luYyBhY2NlcHRUZWFtRXZlbnRJbnZpdGUodGVhbUV2ZW50SW52aXRlOiBUZWFtRXZlbnRJbnZpdGUpOiBQcm9taXNlPFRlYW1FdmVudEludml0ZT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRcbiAgICAgIC5wb3N0KGAke3RoaXMuY29uZmlnU2VydmljZS5nZXQoJ2FwaVVybCcpfS9hcGkvdjEvdGVhbV9ldmVudF9pbnZpdGUvJHt0ZWFtRXZlbnRJbnZpdGUuaWR9L2FjY2VwdC9gLCB7fSlcbiAgICAgIC5waXBlKG1hcChkYXRhID0+IFRlYW1FdmVudEludml0ZS50b0Zyb250KGRhdGEpKSlcbiAgICAgIC50b1Byb21pc2UoKTtcbiAgfVxuXG4gIGFzeW5jIGRlY2xpbmVUZWFtRXZlbnRJbnZpdGUodGVhbUV2ZW50SW52aXRlOiBUZWFtRXZlbnRJbnZpdGUpOiBQcm9taXNlPFRlYW1FdmVudEludml0ZT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRcbiAgICAgIC5wb3N0KGAke3RoaXMuY29uZmlnU2VydmljZS5nZXQoJ2FwaVVybCcpfS9hcGkvdjEvdGVhbV9ldmVudF9pbnZpdGUvJHt0ZWFtRXZlbnRJbnZpdGUuaWR9L2RlY2xpbmUvYCwge30pXG4gICAgICAucGlwZShtYXAoZGF0YSA9PiBUZWFtRXZlbnRJbnZpdGUudG9Gcm9udChkYXRhKSkpXG4gICAgICAudG9Qcm9taXNlKCk7XG4gIH1cbn1cbiJdfQ==
|