@mtgame/core 0.2.26 → 2.0.0

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.
Files changed (522) hide show
  1. package/api/basketball-game-api.d.ts +3 -0
  2. package/api/feedback-api.d.ts +5 -2
  3. package/api/file-api.d.ts +3 -0
  4. package/api/football-game-api.d.ts +3 -0
  5. package/api/game-base-api.d.ts +3 -0
  6. package/api/handball-game-api.d.ts +3 -0
  7. package/api/hockey-game-api.d.ts +3 -0
  8. package/api/league-api.d.ts +3 -0
  9. package/api/league-news-api.d.ts +3 -0
  10. package/api/league-player-api.d.ts +3 -0
  11. package/api/media-api.d.ts +5 -2
  12. package/api/notification-api.d.ts +3 -0
  13. package/api/notification-base-api.d.ts +3 -0
  14. package/api/org-notification-api.d.ts +3 -0
  15. package/api/public-team-api.d.ts +3 -2
  16. package/api/public-user-api.d.ts +3 -0
  17. package/api/reference-api.d.ts +3 -0
  18. package/api/rugby-game-api.d.ts +3 -0
  19. package/api/team-api.d.ts +4 -1
  20. package/api/team-event-api.d.ts +3 -0
  21. package/api/tournament-api.d.ts +3 -2
  22. package/api/tournament-join-api.d.ts +3 -0
  23. package/api/tournament-round-api.d.ts +3 -0
  24. package/api/tournament-season-api.d.ts +3 -0
  25. package/api/tournament-stage-api.d.ts +3 -0
  26. package/api/user-api.d.ts +5 -2
  27. package/api/volleyball-game-api.d.ts +3 -1
  28. package/api/waterpolo-game-api.d.ts +3 -0
  29. package/esm2020/api/basketball-game-api.mjs +44 -0
  30. package/esm2020/api/feedback-api.mjs +29 -0
  31. package/esm2020/api/file-api.mjs +41 -0
  32. package/esm2020/api/football-game-api.mjs +49 -0
  33. package/esm2020/api/game-base-api.mjs +40 -0
  34. package/esm2020/api/handball-game-api.mjs +49 -0
  35. package/esm2020/api/hockey-game-api.mjs +49 -0
  36. package/esm2020/api/league-api.mjs +119 -0
  37. package/esm2020/api/league-news-api.mjs +57 -0
  38. package/esm2020/api/league-player-api.mjs +31 -0
  39. package/esm2020/api/media-api.mjs +124 -0
  40. package/esm2020/api/notification-api.mjs +16 -0
  41. package/esm2020/api/notification-base-api.mjs +62 -0
  42. package/esm2020/api/org-notification-api.mjs +16 -0
  43. package/{esm2015/api/paginated-response.interface.js → esm2020/api/paginated-response.interface.mjs} +0 -0
  44. package/{esm2015/api/public-api.js → esm2020/api/public-api.mjs} +0 -0
  45. package/esm2020/api/public-team-api.mjs +28 -0
  46. package/esm2020/api/public-user-api.mjs +38 -0
  47. package/esm2020/api/reference-api.mjs +30 -0
  48. package/esm2020/api/rugby-game-api.mjs +47 -0
  49. package/esm2020/api/team-api.mjs +302 -0
  50. package/esm2020/api/team-event-api.mjs +61 -0
  51. package/esm2020/api/tournament-api.mjs +391 -0
  52. package/esm2020/api/tournament-join-api.mjs +55 -0
  53. package/esm2020/api/tournament-round-api.mjs +57 -0
  54. package/esm2020/api/tournament-season-api.mjs +92 -0
  55. package/esm2020/api/tournament-stage-api.mjs +48 -0
  56. package/esm2020/api/user-api.mjs +219 -0
  57. package/esm2020/api/volleyball-game-api.mjs +49 -0
  58. package/esm2020/api/waterpolo-game-api.mjs +49 -0
  59. package/esm2020/http-cookie.interceptor.mjs +38 -0
  60. package/{esm2015/localization/basketball-game-log-types.js → esm2020/localization/basketball-game-log-types.mjs} +0 -0
  61. package/{esm2015/localization/basketball-game-sub-log-types.js → esm2020/localization/basketball-game-sub-log-types.mjs} +2 -5
  62. package/{esm2015/localization/football-game-log-types.js → esm2020/localization/football-game-log-types.mjs} +0 -0
  63. package/{esm2015/localization/handball-game-log-types.js → esm2020/localization/handball-game-log-types.mjs} +0 -0
  64. package/{esm2015/localization/hockey-game-log-types.js → esm2020/localization/hockey-game-log-types.mjs} +2 -5
  65. package/esm2020/localization/hockey-penalty-types.mjs +50 -0
  66. package/{esm2015/localization/organization-statuses.js → esm2020/localization/organization-statuses.mjs} +0 -0
  67. package/{esm2015/localization/overtime-types.js → esm2020/localization/overtime-types.mjs} +0 -0
  68. package/{esm2015/localization/public-api.js → esm2020/localization/public-api.mjs} +0 -0
  69. package/{esm2015/localization/rugby-foul-game-stage.js → esm2020/localization/rugby-foul-game-stage.mjs} +0 -0
  70. package/{esm2015/localization/rugby-foul-sanction.js → esm2020/localization/rugby-foul-sanction.mjs} +0 -0
  71. package/{esm2015/localization/rugby-game-log-types.js → esm2020/localization/rugby-game-log-types.mjs} +0 -0
  72. package/{esm2015/localization/team-event-type.js → esm2020/localization/team-event-type.mjs} +0 -0
  73. package/{esm2015/localization/team-user-role.js → esm2020/localization/team-user-role.mjs} +0 -0
  74. package/{esm2015/localization/user-profile.js → esm2020/localization/user-profile.mjs} +0 -0
  75. package/{esm2015/localization/volleyball-game-log-types.js → esm2020/localization/volleyball-game-log-types.mjs} +0 -0
  76. package/{esm2015/localization/waterpolo-game-log-types.js → esm2020/localization/waterpolo-game-log-types.mjs} +3 -3
  77. package/esm2020/models/achievement.mjs +18 -0
  78. package/esm2020/models/base-statistic.mjs +4 -0
  79. package/esm2020/models/basketball-game-config.mjs +18 -0
  80. package/esm2020/models/basketball-game-log.mjs +158 -0
  81. package/esm2020/models/basketball-game-statistic.mjs +47 -0
  82. package/esm2020/models/basketball-game-team-statistic.mjs +15 -0
  83. package/esm2020/models/basketball-profile.mjs +27 -0
  84. package/esm2020/models/basketball-statistic.mjs +62 -0
  85. package/esm2020/models/city.mjs +9 -0
  86. package/esm2020/models/feedback.mjs +14 -0
  87. package/esm2020/models/file.mjs +31 -0
  88. package/esm2020/models/football-game-config.mjs +22 -0
  89. package/esm2020/models/football-game-log.mjs +83 -0
  90. package/esm2020/models/football-game-statistic.mjs +93 -0
  91. package/esm2020/models/football-game-team-statistic.mjs +15 -0
  92. package/esm2020/models/football-profile.mjs +27 -0
  93. package/esm2020/models/football-statistic.mjs +76 -0
  94. package/esm2020/models/game-bill.mjs +30 -0
  95. package/esm2020/models/game-config-base.mjs +4 -0
  96. package/esm2020/models/game-invite.mjs +22 -0
  97. package/esm2020/models/game-log-base.mjs +4 -0
  98. package/esm2020/models/game-statistic-base.mjs +7 -0
  99. package/{esm2015/models/game-team-statistic-base.js → esm2020/models/game-team-statistic-base.mjs} +0 -0
  100. package/esm2020/models/game-timeline-stages.mjs +19 -0
  101. package/esm2020/models/game-user-disqualification.mjs +14 -0
  102. package/esm2020/models/game-user-limitation.mjs +19 -0
  103. package/esm2020/models/game-user.mjs +20 -0
  104. package/esm2020/models/game.mjs +188 -0
  105. package/esm2020/models/handball-game-config.mjs +16 -0
  106. package/esm2020/models/handball-game-log.mjs +71 -0
  107. package/esm2020/models/handball-game-statistic.mjs +67 -0
  108. package/esm2020/models/handball-game-team-statistic.mjs +15 -0
  109. package/esm2020/models/handball-profile.mjs +23 -0
  110. package/esm2020/models/handball-statistic.mjs +37 -0
  111. package/esm2020/models/hockey-game-config.mjs +25 -0
  112. package/esm2020/models/hockey-game-log.mjs +102 -0
  113. package/esm2020/models/hockey-game-statistic.mjs +101 -0
  114. package/esm2020/models/hockey-game-team-statistic.mjs +15 -0
  115. package/esm2020/models/hockey-penalty-types.mjs +6 -0
  116. package/esm2020/models/hockey-profile.mjs +25 -0
  117. package/esm2020/models/hockey-statistic.mjs +49 -0
  118. package/esm2020/models/league-banner.mjs +21 -0
  119. package/esm2020/models/league-court.mjs +9 -0
  120. package/esm2020/models/league-document.mjs +14 -0
  121. package/esm2020/models/league-news.mjs +25 -0
  122. package/esm2020/models/league-partner.mjs +14 -0
  123. package/esm2020/models/league-player.mjs +81 -0
  124. package/esm2020/models/league-playlist.mjs +14 -0
  125. package/esm2020/models/league-user.mjs +38 -0
  126. package/esm2020/models/league.mjs +38 -0
  127. package/esm2020/models/media-item.mjs +20 -0
  128. package/esm2020/models/notification-settings.mjs +20 -0
  129. package/esm2020/models/notification.mjs +105 -0
  130. package/esm2020/models/organization-bill.mjs +31 -0
  131. package/esm2020/models/organization-statistic.mjs +9 -0
  132. package/esm2020/models/organization-tariff.mjs +16 -0
  133. package/esm2020/models/organization.mjs +21 -0
  134. package/esm2020/models/playoff.mjs +56 -0
  135. package/esm2020/models/poll.mjs +83 -0
  136. package/esm2020/models/public-api.mjs +110 -0
  137. package/esm2020/models/rugby-foul-type.mjs +39 -0
  138. package/esm2020/models/rugby-game-config.mjs +23 -0
  139. package/esm2020/models/rugby-game-log.mjs +120 -0
  140. package/esm2020/models/rugby-game-statistic.mjs +29 -0
  141. package/esm2020/models/rugby-game-team-statistic.mjs +15 -0
  142. package/esm2020/models/rugby-profile.mjs +22 -0
  143. package/esm2020/models/rugby-statistic.mjs +37 -0
  144. package/esm2020/models/season-tournament.mjs +9 -0
  145. package/esm2020/models/sport.mjs +96 -0
  146. package/esm2020/models/team-access.mjs +14 -0
  147. package/esm2020/models/team-achievement.mjs +18 -0
  148. package/esm2020/models/team-event-invite.mjs +18 -0
  149. package/{esm2015/models/team-event-type.js → esm2020/models/team-event-type.mjs} +0 -0
  150. package/esm2020/models/team-event.mjs +27 -0
  151. package/esm2020/models/team-invite-external.mjs +9 -0
  152. package/esm2020/models/team-invite.mjs +18 -0
  153. package/esm2020/models/team-permission.mjs +23 -0
  154. package/esm2020/models/team-user.mjs +30 -0
  155. package/esm2020/models/team.mjs +46 -0
  156. package/esm2020/models/teams-and-users.mjs +20 -0
  157. package/esm2020/models/tournament-disqualification.mjs +14 -0
  158. package/esm2020/models/tournament-division.mjs +14 -0
  159. package/esm2020/models/tournament-event.mjs +28 -0
  160. package/esm2020/models/tournament-group.mjs +9 -0
  161. package/esm2020/models/tournament-invite.mjs +21 -0
  162. package/esm2020/models/tournament-join-team.mjs +27 -0
  163. package/esm2020/models/tournament-join1x1-data.mjs +15 -0
  164. package/esm2020/models/tournament-news.mjs +17 -0
  165. package/esm2020/models/tournament-round-team.mjs +40 -0
  166. package/esm2020/models/tournament-round.mjs +22 -0
  167. package/esm2020/models/tournament-season.mjs +25 -0
  168. package/esm2020/models/tournament-stage-team.mjs +22 -0
  169. package/esm2020/models/tournament-stage.mjs +20 -0
  170. package/esm2020/models/tournament-team-user-invite.mjs +14 -0
  171. package/esm2020/models/tournament-team-user.mjs +20 -0
  172. package/esm2020/models/tournament-team.mjs +28 -0
  173. package/esm2020/models/tournament.mjs +153 -0
  174. package/esm2020/models/user-access.mjs +9 -0
  175. package/esm2020/models/user-permission.mjs +23 -0
  176. package/esm2020/models/user-profile.mjs +9 -0
  177. package/esm2020/models/user.mjs +55 -0
  178. package/esm2020/models/util.mjs +143 -0
  179. package/esm2020/models/volleyball-game-config.mjs +27 -0
  180. package/esm2020/models/volleyball-game-log.mjs +124 -0
  181. package/esm2020/models/volleyball-game-statistic.mjs +34 -0
  182. package/esm2020/models/volleyball-game-team-statistic.mjs +15 -0
  183. package/esm2020/models/volleyball-profile.mjs +27 -0
  184. package/esm2020/models/volleyball-statistic.mjs +44 -0
  185. package/esm2020/models/waterpolo-game-config.mjs +25 -0
  186. package/esm2020/models/waterpolo-game-log.mjs +142 -0
  187. package/esm2020/models/waterpolo-game-statistic.mjs +472 -0
  188. package/esm2020/models/waterpolo-game-team-statistic.mjs +15 -0
  189. package/esm2020/models/waterpolo-profile.mjs +26 -0
  190. package/esm2020/models/waterpolo-statistic.mjs +57 -0
  191. package/{esm2015/mtgame-core.js → esm2020/mtgame-core.mjs} +0 -0
  192. package/{esm2015/public-api.js → esm2020/public-api.mjs} +2 -1
  193. package/esm2020/services/base.controller.mjs +19 -0
  194. package/esm2020/services/base.service.mjs +18 -0
  195. package/esm2020/services/centrifugo.service.mjs +105 -0
  196. package/esm2020/services/config.service.mjs +44 -0
  197. package/{esm2015/services/public-api.js → esm2020/services/public-api.mjs} +2 -1
  198. package/esm2020/storage/local-storage-engine.mjs +18 -0
  199. package/esm2020/storage/new.mjs +46 -0
  200. package/esm2020/storage/old-local-storage-engine.mjs +18 -0
  201. package/esm2020/storage/old-storage-engine.mjs +49 -0
  202. package/esm2020/storage/public-api.mjs +7 -0
  203. package/esm2020/storage/storage-engine.mjs +47 -0
  204. package/{esm2015/storage/store.js → esm2020/storage/store.mjs} +1 -1
  205. package/{esm2015/utils/array.js → esm2020/utils/array.mjs} +0 -0
  206. package/esm2020/utils/component-destroyed.mjs +27 -0
  207. package/{esm2015/utils/cookie.js → esm2020/utils/cookie.mjs} +0 -0
  208. package/esm2020/utils/data.mjs +164 -0
  209. package/{esm2015/utils/date.js → esm2020/utils/date.mjs} +0 -0
  210. package/{esm2015/utils/device.js → esm2020/utils/device.mjs} +0 -0
  211. package/{esm2015/utils/enum.js → esm2020/utils/enum.mjs} +0 -0
  212. package/{esm2015/utils/errors.js → esm2020/utils/errors.mjs} +2 -4
  213. package/{esm2015/utils/favicon.js → esm2020/utils/favicon.mjs} +0 -0
  214. package/{esm2015/utils/form.js → esm2020/utils/form.mjs} +0 -0
  215. package/{esm2015/utils/public-api.js → esm2020/utils/public-api.mjs} +0 -0
  216. package/{esm2015/utils/validators.js → esm2020/utils/validators.mjs} +0 -0
  217. package/esm2020/websocket/game.websocket.mjs +61 -0
  218. package/esm2020/websocket/public-api.mjs +2 -0
  219. package/fesm2015/{mtgame-core.js → mtgame-core.mjs} +1665 -4848
  220. package/fesm2015/mtgame-core.mjs.map +1 -0
  221. package/fesm2020/mtgame-core.mjs +7270 -0
  222. package/fesm2020/mtgame-core.mjs.map +1 -0
  223. package/http-cookie.interceptor.d.ts +3 -0
  224. package/localization/basketball-game-sub-log-types.d.ts +0 -3
  225. package/localization/football-game-log-types.d.ts +29 -29
  226. package/localization/hockey-game-log-types.d.ts +0 -3
  227. package/localization/hockey-penalty-types.d.ts +2 -5
  228. package/models/achievement.d.ts +0 -2
  229. package/models/base-statistic.d.ts +2 -1
  230. package/models/basketball-game-config.d.ts +2 -4
  231. package/models/basketball-game-log.d.ts +2 -9
  232. package/models/basketball-game-statistic.d.ts +1 -4
  233. package/models/basketball-game-team-statistic.d.ts +0 -2
  234. package/models/basketball-profile.d.ts +0 -2
  235. package/models/basketball-statistic.d.ts +1 -4
  236. package/models/city.d.ts +0 -2
  237. package/models/feedback.d.ts +2 -3
  238. package/models/file.d.ts +2 -3
  239. package/models/football-game-config.d.ts +2 -4
  240. package/models/football-game-log.d.ts +30 -33
  241. package/models/football-game-statistic.d.ts +1 -4
  242. package/models/football-game-team-statistic.d.ts +0 -2
  243. package/models/football-profile.d.ts +0 -2
  244. package/models/football-statistic.d.ts +1 -4
  245. package/models/game-bill.d.ts +0 -2
  246. package/models/game-config-base.d.ts +3 -0
  247. package/models/game-invite.d.ts +0 -2
  248. package/models/game-log-base.d.ts +3 -2
  249. package/models/game-statistic-base.d.ts +3 -1
  250. package/models/game-timeline-stages.d.ts +1 -5
  251. package/models/game-user-disqualification.d.ts +0 -2
  252. package/models/game-user-limitation.d.ts +0 -4
  253. package/models/game-user.d.ts +0 -2
  254. package/models/game.d.ts +10 -21
  255. package/models/handball-game-config.d.ts +2 -4
  256. package/models/handball-game-log.d.ts +1 -4
  257. package/models/handball-game-statistic.d.ts +1 -4
  258. package/models/handball-game-team-statistic.d.ts +0 -2
  259. package/models/handball-profile.d.ts +0 -2
  260. package/models/handball-statistic.d.ts +1 -4
  261. package/models/hockey-game-config.d.ts +2 -4
  262. package/models/hockey-game-log.d.ts +4 -15
  263. package/models/hockey-game-statistic.d.ts +1 -18
  264. package/models/hockey-game-team-statistic.d.ts +0 -2
  265. package/models/hockey-penalty-types.d.ts +7 -0
  266. package/models/hockey-profile.d.ts +0 -2
  267. package/models/hockey-statistic.d.ts +1 -18
  268. package/models/league-banner.d.ts +0 -2
  269. package/models/league-court.d.ts +0 -2
  270. package/models/league-document.d.ts +0 -2
  271. package/models/league-news.d.ts +0 -2
  272. package/models/league-partner.d.ts +0 -2
  273. package/models/league-player.d.ts +2 -13
  274. package/models/league-playlist.d.ts +0 -2
  275. package/models/league-user.d.ts +0 -2
  276. package/models/league.d.ts +1 -6
  277. package/models/media-item.d.ts +0 -2
  278. package/models/notification-settings.d.ts +0 -2
  279. package/models/notification.d.ts +0 -2
  280. package/models/organization-bill.d.ts +0 -2
  281. package/models/organization-statistic.d.ts +0 -2
  282. package/models/organization-tariff.d.ts +0 -2
  283. package/models/organization.d.ts +0 -2
  284. package/models/playoff.d.ts +0 -4
  285. package/models/poll.d.ts +0 -6
  286. package/models/public-api.d.ts +0 -6
  287. package/models/rugby-foul-type.d.ts +0 -2
  288. package/models/rugby-game-config.d.ts +2 -4
  289. package/models/rugby-game-log.d.ts +1 -4
  290. package/models/rugby-game-statistic.d.ts +7 -10
  291. package/models/rugby-game-team-statistic.d.ts +0 -2
  292. package/models/rugby-profile.d.ts +0 -2
  293. package/models/rugby-statistic.d.ts +1 -4
  294. package/models/season-tournament.d.ts +0 -2
  295. package/models/sport.d.ts +0 -2
  296. package/models/team-access.d.ts +0 -2
  297. package/models/team-achievement.d.ts +0 -2
  298. package/models/team-event-invite.d.ts +2 -3
  299. package/models/team-event.d.ts +0 -2
  300. package/models/team-invite-external.d.ts +0 -2
  301. package/models/team-invite.d.ts +0 -2
  302. package/models/team-permission.d.ts +0 -2
  303. package/models/team-user.d.ts +0 -2
  304. package/models/team.d.ts +0 -2
  305. package/models/teams-and-users.d.ts +0 -2
  306. package/models/tournament-disqualification.d.ts +0 -2
  307. package/models/tournament-division.d.ts +0 -2
  308. package/models/tournament-event.d.ts +0 -2
  309. package/models/tournament-group.d.ts +0 -2
  310. package/models/tournament-invite.d.ts +0 -2
  311. package/models/tournament-join-team.d.ts +0 -4
  312. package/models/tournament-join1x1-data.d.ts +0 -2
  313. package/models/tournament-news.d.ts +0 -2
  314. package/models/tournament-round-team.d.ts +4 -14
  315. package/models/tournament-round.d.ts +0 -2
  316. package/models/tournament-season.d.ts +0 -2
  317. package/models/tournament-stage-team.d.ts +0 -2
  318. package/models/tournament-stage.d.ts +0 -2
  319. package/models/tournament-team-user-invite.d.ts +0 -2
  320. package/models/tournament-team-user.d.ts +0 -5
  321. package/models/tournament-team.d.ts +0 -16
  322. package/models/tournament.d.ts +5 -21
  323. package/models/user-access.d.ts +0 -2
  324. package/models/user-permission.d.ts +0 -2
  325. package/models/user-profile.d.ts +2 -3
  326. package/models/user.d.ts +2 -6
  327. package/models/util.d.ts +22 -46
  328. package/models/volleyball-game-config.d.ts +2 -4
  329. package/models/volleyball-game-log.d.ts +1 -4
  330. package/models/volleyball-game-statistic.d.ts +1 -4
  331. package/models/volleyball-game-team-statistic.d.ts +0 -2
  332. package/models/volleyball-profile.d.ts +0 -2
  333. package/models/volleyball-statistic.d.ts +1 -4
  334. package/models/waterpolo-game-config.d.ts +2 -4
  335. package/models/waterpolo-game-log.d.ts +1 -4
  336. package/models/waterpolo-game-statistic.d.ts +1 -4
  337. package/models/waterpolo-game-team-statistic.d.ts +0 -2
  338. package/models/waterpolo-profile.d.ts +0 -2
  339. package/models/waterpolo-statistic.d.ts +1 -4
  340. package/mtgame-core.d.ts +1 -0
  341. package/package.json +23 -10
  342. package/public-api.d.ts +1 -0
  343. package/services/base.controller.d.ts +12 -0
  344. package/services/base.service.d.ts +3 -0
  345. package/services/centrifugo.service.d.ts +6 -4
  346. package/services/config.service.d.ts +3 -0
  347. package/services/public-api.d.ts +1 -0
  348. package/storage/local-storage-engine.d.ts +2 -2
  349. package/storage/new.d.ts +17 -0
  350. package/storage/old-local-storage-engine.d.ts +6 -0
  351. package/storage/old-storage-engine.d.ts +24 -0
  352. package/storage/public-api.d.ts +5 -2
  353. package/storage/storage-engine.d.ts +25 -18
  354. package/storage/store.d.ts +3 -3
  355. package/utils/component-destroyed.d.ts +1 -1
  356. package/utils/data.d.ts +36 -6
  357. package/websocket/game.websocket.d.ts +24 -0
  358. package/websocket/public-api.d.ts +1 -0
  359. package/bundles/mtgame-core.umd.js +0 -14010
  360. package/bundles/mtgame-core.umd.js.map +0 -1
  361. package/esm2015/api/basketball-game-api.js +0 -61
  362. package/esm2015/api/feedback-api.js +0 -38
  363. package/esm2015/api/file-api.js +0 -49
  364. package/esm2015/api/football-game-api.js +0 -65
  365. package/esm2015/api/game-base-api.js +0 -54
  366. package/esm2015/api/handball-game-api.js +0 -65
  367. package/esm2015/api/hockey-game-api.js +0 -65
  368. package/esm2015/api/league-api.js +0 -151
  369. package/esm2015/api/league-news-api.js +0 -71
  370. package/esm2015/api/league-player-api.js +0 -34
  371. package/esm2015/api/media-api.js +0 -131
  372. package/esm2015/api/notification-api.js +0 -16
  373. package/esm2015/api/notification-base-api.js +0 -82
  374. package/esm2015/api/org-notification-api.js +0 -16
  375. package/esm2015/api/public-team-api.js +0 -41
  376. package/esm2015/api/public-user-api.js +0 -41
  377. package/esm2015/api/reference-api.js +0 -39
  378. package/esm2015/api/rugby-game-api.js +0 -63
  379. package/esm2015/api/team-api.js +0 -393
  380. package/esm2015/api/team-event-api.js +0 -80
  381. package/esm2015/api/tournament-api.js +0 -471
  382. package/esm2015/api/tournament-join-api.js +0 -72
  383. package/esm2015/api/tournament-round-api.js +0 -71
  384. package/esm2015/api/tournament-season-api.js +0 -112
  385. package/esm2015/api/tournament-stage-api.js +0 -63
  386. package/esm2015/api/user-api.js +0 -283
  387. package/esm2015/api/volleyball-game-api.js +0 -73
  388. package/esm2015/api/waterpolo-game-api.js +0 -65
  389. package/esm2015/http-cookie.interceptor.js +0 -37
  390. package/esm2015/localization/hockey-penalty-types.js +0 -50
  391. package/esm2015/models/achievement.js +0 -33
  392. package/esm2015/models/base-statistic.js +0 -2
  393. package/esm2015/models/basketball-game-config.js +0 -41
  394. package/esm2015/models/basketball-game-log.js +0 -192
  395. package/esm2015/models/basketball-game-statistic.js +0 -81
  396. package/esm2015/models/basketball-game-team-statistic.js +0 -27
  397. package/esm2015/models/basketball-profile.js +0 -43
  398. package/esm2015/models/basketball-statistic.js +0 -114
  399. package/esm2015/models/city.js +0 -22
  400. package/esm2015/models/feedback.js +0 -34
  401. package/esm2015/models/file.js +0 -54
  402. package/esm2015/models/football-game-config.js +0 -44
  403. package/esm2015/models/football-game-log.js +0 -104
  404. package/esm2015/models/football-game-statistic.js +0 -137
  405. package/esm2015/models/football-game-team-statistic.js +0 -27
  406. package/esm2015/models/football-profile.js +0 -43
  407. package/esm2015/models/football-statistic.js +0 -150
  408. package/esm2015/models/game-bill.js +0 -47
  409. package/esm2015/models/game-invite.js +0 -37
  410. package/esm2015/models/game-log-base.js +0 -2
  411. package/esm2015/models/game-statistic-base.js +0 -2
  412. package/esm2015/models/game-timeline-stages.js +0 -53
  413. package/esm2015/models/game-user-disqualification.js +0 -28
  414. package/esm2015/models/game-user-limitation.js +0 -51
  415. package/esm2015/models/game-user.js +0 -37
  416. package/esm2015/models/game.js +0 -281
  417. package/esm2015/models/handball-game-config.js +0 -34
  418. package/esm2015/models/handball-game-log.js +0 -92
  419. package/esm2015/models/handball-game-statistic.js +0 -101
  420. package/esm2015/models/handball-game-team-statistic.js +0 -27
  421. package/esm2015/models/handball-profile.js +0 -39
  422. package/esm2015/models/handball-statistic.js +0 -95
  423. package/esm2015/models/hockey-game-config.js +0 -48
  424. package/esm2015/models/hockey-game-log.js +0 -128
  425. package/esm2015/models/hockey-game-statistic.js +0 -159
  426. package/esm2015/models/hockey-game-team-statistic.js +0 -27
  427. package/esm2015/models/hockey-profile.js +0 -41
  428. package/esm2015/models/hockey-statistic.js +0 -143
  429. package/esm2015/models/league-banner.js +0 -39
  430. package/esm2015/models/league-court.js +0 -25
  431. package/esm2015/models/league-document.js +0 -26
  432. package/esm2015/models/league-field-base-value.js +0 -4
  433. package/esm2015/models/league-field-base.js +0 -25
  434. package/esm2015/models/league-news.js +0 -50
  435. package/esm2015/models/league-partner.js +0 -29
  436. package/esm2015/models/league-player-field-value.js +0 -32
  437. package/esm2015/models/league-player-field.js +0 -30
  438. package/esm2015/models/league-player.js +0 -116
  439. package/esm2015/models/league-playlist.js +0 -28
  440. package/esm2015/models/league-team-field.js +0 -30
  441. package/esm2015/models/league-user.js +0 -52
  442. package/esm2015/models/league.js +0 -71
  443. package/esm2015/models/media-item.js +0 -41
  444. package/esm2015/models/notification-settings.js +0 -35
  445. package/esm2015/models/notification.js +0 -134
  446. package/esm2015/models/organization-bill.js +0 -50
  447. package/esm2015/models/organization-statistic.js +0 -26
  448. package/esm2015/models/organization-tariff.js +0 -30
  449. package/esm2015/models/organization.js +0 -40
  450. package/esm2015/models/playoff.js +0 -91
  451. package/esm2015/models/poll.js +0 -132
  452. package/esm2015/models/public-api.js +0 -116
  453. package/esm2015/models/rugby-foul-type.js +0 -53
  454. package/esm2015/models/rugby-game-config.js +0 -42
  455. package/esm2015/models/rugby-game-log.js +0 -144
  456. package/esm2015/models/rugby-game-statistic.js +0 -89
  457. package/esm2015/models/rugby-game-team-statistic.js +0 -27
  458. package/esm2015/models/rugby-profile.js +0 -37
  459. package/esm2015/models/rugby-statistic.js +0 -123
  460. package/esm2015/models/season-tournament.js +0 -22
  461. package/esm2015/models/sport.js +0 -115
  462. package/esm2015/models/team-access.js +0 -45
  463. package/esm2015/models/team-achievement.js +0 -34
  464. package/esm2015/models/team-event-invite.js +0 -32
  465. package/esm2015/models/team-event.js +0 -45
  466. package/esm2015/models/team-invite-external.js +0 -25
  467. package/esm2015/models/team-invite.js +0 -41
  468. package/esm2015/models/team-permission.js +0 -38
  469. package/esm2015/models/team-user.js +0 -48
  470. package/esm2015/models/team.js +0 -71
  471. package/esm2015/models/teams-and-users.js +0 -32
  472. package/esm2015/models/tournament-disqualification.js +0 -30
  473. package/esm2015/models/tournament-division.js +0 -27
  474. package/esm2015/models/tournament-event.js +0 -45
  475. package/esm2015/models/tournament-group.js +0 -26
  476. package/esm2015/models/tournament-invite.js +0 -39
  477. package/esm2015/models/tournament-join-team.js +0 -55
  478. package/esm2015/models/tournament-join1x1-data.js +0 -32
  479. package/esm2015/models/tournament-news.js +0 -33
  480. package/esm2015/models/tournament-round-team.js +0 -95
  481. package/esm2015/models/tournament-round.js +0 -36
  482. package/esm2015/models/tournament-season.js +0 -45
  483. package/esm2015/models/tournament-stage-team.js +0 -47
  484. package/esm2015/models/tournament-stage.js +0 -35
  485. package/esm2015/models/tournament-team-field-value.js +0 -32
  486. package/esm2015/models/tournament-team-user-invite.js +0 -29
  487. package/esm2015/models/tournament-team-user.js +0 -39
  488. package/esm2015/models/tournament-team.js +0 -103
  489. package/esm2015/models/tournament.js +0 -266
  490. package/esm2015/models/user-access.js +0 -25
  491. package/esm2015/models/user-permission.js +0 -38
  492. package/esm2015/models/user-profile.js +0 -24
  493. package/esm2015/models/user.js +0 -91
  494. package/esm2015/models/util.js +0 -237
  495. package/esm2015/models/volleyball-game-config.js +0 -44
  496. package/esm2015/models/volleyball-game-log.js +0 -145
  497. package/esm2015/models/volleyball-game-statistic.js +0 -64
  498. package/esm2015/models/volleyball-game-team-statistic.js +0 -27
  499. package/esm2015/models/volleyball-profile.js +0 -43
  500. package/esm2015/models/volleyball-statistic.js +0 -92
  501. package/esm2015/models/waterpolo-game-config.js +0 -45
  502. package/esm2015/models/waterpolo-game-log.js +0 -167
  503. package/esm2015/models/waterpolo-game-statistic.js +0 -641
  504. package/esm2015/models/waterpolo-game-team-statistic.js +0 -27
  505. package/esm2015/models/waterpolo-profile.js +0 -42
  506. package/esm2015/models/waterpolo-statistic.js +0 -336
  507. package/esm2015/services/base.service.js +0 -16
  508. package/esm2015/services/centrifugo.service.js +0 -123
  509. package/esm2015/services/config.service.js +0 -37
  510. package/esm2015/storage/local-storage-engine.js +0 -18
  511. package/esm2015/storage/public-api.js +0 -4
  512. package/esm2015/storage/storage-engine.js +0 -61
  513. package/esm2015/utils/component-destroyed.js +0 -26
  514. package/esm2015/utils/data.js +0 -75
  515. package/fesm2015/mtgame-core.js.map +0 -1
  516. package/models/league-field-base-value.d.ts +0 -7
  517. package/models/league-field-base.d.ts +0 -24
  518. package/models/league-player-field-value.d.ts +0 -8
  519. package/models/league-player-field.d.ts +0 -5
  520. package/models/league-team-field.d.ts +0 -5
  521. package/models/tournament-team-field-value.d.ts +0 -8
  522. package/mtgame-core.metadata.json +0 -1
@@ -1,393 +0,0 @@
1
- import { __awaiter } from "tslib";
2
- import { Injectable } from '@angular/core';
3
- import { HttpClient, HttpParams } 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
- export 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.ɵprov = i0.ɵɵdefineInjectable({ factory: function TeamApi_Factory() { return new TeamApi(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(i2.ConfigService)); }, token: TeamApi, providedIn: "root" });
386
- TeamApi.decorators = [
387
- { type: Injectable, args: [{ providedIn: 'root' },] }
388
- ];
389
- TeamApi.ctorParameters = () => [
390
- { type: HttpClient },
391
- { type: ConfigService }
392
- ];
393
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVhbS1hcGkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NyYy9hcGkvdGVhbS1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQWdCLE1BQU0sc0JBQXNCLENBQUM7QUFDNUUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3RDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBQUUsUUFBUSxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzdELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN0QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDbkQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3RDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN0QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDakQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUUvRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNyRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDM0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ25ELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7OztBQUczRCxNQUFNLE9BQU8sT0FBTztJQUNsQixZQUNVLFVBQXNCLEVBQ3RCLGFBQTRCO1FBRDVCLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDdEIsa0JBQWEsR0FBYixhQUFhLENBQWU7SUFDbkMsQ0FBQztJQUVFLE1BQU0sQ0FBQyxLQUFhLEVBQUUsT0FBZ0I7O1lBQzFDLElBQUksTUFBTSxHQUFHLENBQUMsSUFBSSxVQUFVLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDckQsSUFBSSxPQUFPLEVBQUU7Z0JBQ1gsTUFBTSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO2FBQ2xEO1lBQ0QsT0FBTyxJQUFJLENBQUMsVUFBVTtpQkFDbkIsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLGVBQWUsRUFBRSxFQUFDLE1BQU0sRUFBQyxDQUFDO2lCQUNqRSxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO2lCQUNyQyxTQUFTLEVBQUUsQ0FBQztRQUNqQixDQUFDO0tBQUE7SUFFSyxNQUFNLENBQUMsSUFBVTs7WUFDckIsT0FBTyxJQUFJLENBQUMsVUFBVTtpQkFDbkIsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLGVBQWUsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO2lCQUMzRSxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO2lCQUNyQyxTQUFTLEVBQUUsQ0FBQztRQUNqQixDQUFDO0tBQUE7SUFFSyxPQUFPLENBQUMsTUFBYzs7WUFDMUIsT0FBTyxJQUFJLENBQUMsVUFBVTtpQkFDbkIsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLGdCQUFnQixNQUFNLEdBQUcsQ0FBQztpQkFDakUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztpQkFDckMsU0FBUyxFQUFFLENBQUM7UUFDakIsQ0FBQztLQUFBO0lBRUssYUFBYSxDQUFDLE1BQWM7O1lBQ2hDLE9BQU8sSUFBSSxDQUFDLFVBQVU7aUJBQ25CLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsTUFBTSxVQUFVLENBQUM7aUJBQ3hFLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7aUJBQzNDLFNBQVMsRUFBRSxDQUFDO1FBQ2pCLENBQUM7S0FBQTtJQUVLLE1BQU0sQ0FBQyxNQUFjLEVBQUUsTUFBVzs7WUFDdEMsT0FBTyxJQUFJLENBQUMsVUFBVTtpQkFDbkIsS0FBSyxDQUFDLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLGdCQUFnQixNQUFNLEdBQUcsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2lCQUN4RixJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO2lCQUNyQyxTQUFTLEVBQUUsQ0FBQztRQUNqQixDQUFDO0tBQUE7SUFFSyxNQUFNLENBQUMsSUFBVTs7WUFDckIsT0FBTyxJQUFJLENBQUMsVUFBVTtpQkFDbkIsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLGdCQUFnQixJQUFJLENBQUMsRUFBRSxHQUFHLENBQUM7aUJBQ3JFLFNBQVMsRUFBRSxDQUFDO1FBQ2pCLENBQUM7S0FBQTtJQUVLLGFBQWEsQ0FBQyxNQUFjOztZQUNoQyxPQUFPLElBQUksQ0FBQyxVQUFVO2lCQUNuQixHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLE1BQU0sY0FBYyxDQUFDO2lCQUM1RSxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO2lCQUMvQyxTQUFTLEVBQUUsQ0FBQztRQUNqQixDQUFDO0tBQUE7SUFFSyxnQkFBZ0IsQ0FBQyxNQUFjLEVBQUUsVUFBMEI7O1lBQy9ELE9BQU8sSUFBSSxDQUFDLFVBQVU7aUJBQ25CLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsTUFBTSxjQUFjLEVBQUUsY0FBYyxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztpQkFDakgsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztpQkFDL0MsU0FBUyxFQUFFLENBQUM7UUFDakIsQ0FBQztLQUFBO0lBRUssUUFBUSxDQUFDLE1BQWMsRUFBRSxZQUFxQjs7WUFDbEQsSUFBSSxNQUFNLEdBQUcsSUFBSSxVQUFVLEVBQUUsQ0FBQztZQUM5QixJQUFJLFlBQVksRUFBRTtnQkFDaEIsTUFBTSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsZUFBZSxFQUFFLFlBQVksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO2FBQy9EO1lBQ0QsT0FBTyxJQUFJLENBQUMsVUFBVTtpQkFDbkIsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLGdCQUFnQixNQUFNLFNBQVMsRUFBRSxFQUFDLE1BQU0sRUFBQyxDQUFDO2lCQUNqRixJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO2lCQUN6QyxTQUFTLEVBQUUsQ0FBQztRQUNqQixDQUFDO0tBQUE7SUFFSyxjQUFjLENBQUMsTUFBYyxFQUFFLFVBQWtCLEVBQUUsSUFBa0I7O1lBQ3pFLE9BQU8sSUFBSSxDQUFDLFVBQVU7aUJBQ25CLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsTUFBTSxVQUFVLFVBQVUsUUFBUSxFQUFFLEVBQUMsSUFBSSxFQUFFLFlBQVksQ0FBQyxJQUFJLENBQUMsRUFBQyxDQUFDO2lCQUN4SCxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO2lCQUN6QyxTQUFTLEVBQUUsQ0FBQztRQUNqQixDQUFDO0tBQUE7SUFFSyxnQkFBZ0IsQ0FBQyxNQUFjLEVBQUUsVUFBa0IsRUFBRSxVQUFrQjs7WUFDM0UsT0FBTyxJQUFJLENBQUMsVUFBVTtpQkFDbkIsS0FBSyxDQUFDLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLGdCQUFnQixNQUFNLFVBQVUsVUFBVSxVQUFVLEVBQUUsRUFBQyxNQUFNLEVBQUUsVUFBVSxDQUFDLFFBQVEsRUFBRSxFQUFDLENBQUM7aUJBQy9ILElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7aUJBQ3pDLFNBQVMsRUFBRSxDQUFDO1FBQ2pCLENBQUM7S0FBQTtJQUVLLFVBQVUsQ0FBQyxRQUFrQjs7WUFDakMsT0FBTyxJQUFJLENBQUMsVUFBVTtpQkFDbkIsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLGdCQUFnQixRQUFRLENBQUMsTUFBTSxVQUFVLFFBQVEsQ0FBQyxFQUFFLEdBQUcsQ0FBQztpQkFDbEcsU0FBUyxFQUFFLENBQUM7UUFDakIsQ0FBQztLQUFBO0lBRUssV0FBVyxDQUFDLE1BQWMsRUFBRSxJQUFVOztZQUMxQyxPQUFPLElBQUksQ0FBQyxVQUFVO2lCQUNuQixJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLE1BQU0sU0FBUyxFQUFFLEVBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxFQUFFLEVBQUMsQ0FBQztpQkFDdkYsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztpQkFDckMsU0FBUyxFQUFFLENBQUM7UUFDakIsQ0FBQztLQUFBO0lBRUssVUFBVSxDQUFDLE1BQWM7O1lBQzdCLE9BQU8sSUFBSSxDQUFDLFVBQVU7aUJBQ25CLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsTUFBTSxXQUFXLENBQUM7aUJBQ3pFLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7aUJBQzNDLFNBQVMsRUFBRSxDQUFDO1FBQ2pCLENBQUM7S0FBQTtJQUVLLFVBQVUsQ0FBQyxNQUFjLEVBQUUsSUFBVTs7WUFDekMsT0FBTyxJQUFJLENBQUMsVUFBVTtpQkFDbkIsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLGdCQUFnQixNQUFNLFdBQVcsRUFBRSxFQUFDLElBQUksRUFBQyxDQUFDO2lCQUNsRixJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO2lCQUMzQyxTQUFTLEVBQUUsQ0FBQztRQUNqQixDQUFDO0tBQUE7SUFFSyxZQUFZLENBQUMsTUFBa0I7O1lBQ25DLE9BQU8sSUFBSSxDQUFDLFVBQVU7aUJBQ25CLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyx1QkFBdUIsTUFBTSxDQUFDLEVBQUUsVUFBVSxFQUFFLEVBQUUsQ0FBQztpQkFDdkYsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztpQkFDM0MsU0FBUyxFQUFFLENBQUM7UUFDakIsQ0FBQztLQUFBO0lBRUssYUFBYSxDQUFDLE1BQWtCOztZQUNwQyxPQUFPLElBQUksQ0FBQyxVQUFVO2lCQUNuQixJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsdUJBQXVCLE1BQU0sQ0FBQyxFQUFFLFdBQVcsRUFBRSxFQUFFLENBQUM7aUJBQ3hGLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7aUJBQzNDLFNBQVMsRUFBRSxDQUFDO1FBQ2pCLENBQUM7S0FBQTtJQUVLLFlBQVksQ0FBQyxNQUFrQjs7WUFDbkMsT0FBTyxJQUFJLENBQUMsVUFBVTtpQkFDbkIsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLHVCQUF1QixNQUFNLENBQUMsRUFBRSxVQUFVLEVBQUUsRUFBRSxDQUFDO2lCQUN2RixJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO2lCQUMzQyxTQUFTLEVBQUUsQ0FBQztRQUNqQixDQUFDO0tBQUE7SUFFSyxrQkFBa0IsQ0FBQyxNQUFjOztZQUNyQyxPQUFPLElBQUksQ0FBQyxVQUFVO2lCQUNuQixHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLE1BQU0sb0JBQW9CLENBQUM7aUJBQ2xGLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztpQkFDbkQsU0FBUyxFQUFFLENBQUM7UUFDakIsQ0FBQztLQUFBO0lBRUssa0JBQWtCLENBQUMsTUFBYyxFQUFFLE1BQTBCOztZQUNqRSxPQUFPLElBQUksQ0FBQyxVQUFVO2lCQUNuQixJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLE1BQU0sb0JBQW9CLEVBQUUsa0JBQWtCLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2lCQUN0SCxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsa0JBQWtCLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7aUJBQ25ELFNBQVMsRUFBRSxDQUFDO1FBQ2pCLENBQUM7S0FBQTtJQUVLLG9CQUFvQixDQUFDLE1BQTBCOztZQUNuRCxPQUFPLElBQUksQ0FBQyxVQUFVO2lCQUNuQixNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsNEJBQTRCLE1BQU0sQ0FBQyxFQUFFLEdBQUcsQ0FBQztpQkFDbkYsU0FBUyxFQUFFLENBQUM7UUFDakIsQ0FBQztLQUFBO0lBRUssb0JBQW9CLENBQUMsTUFBMEI7O1lBQ25ELE9BQU8sSUFBSSxDQUFDLFVBQVU7aUJBQ25CLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyw0QkFBNEIsTUFBTSxDQUFDLEVBQUUsVUFBVSxFQUFFLEVBQUUsQ0FBQztpQkFDNUYsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO2lCQUNuRCxTQUFTLEVBQUUsQ0FBQztRQUNqQixDQUFDO0tBQUE7SUFFSyxRQUFRLENBQUMsTUFBYyxFQUFFLFVBQW1CLEtBQUs7O1lBQ3JELE9BQU8sSUFBSSxDQUFDLFVBQVU7aUJBQ25CLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsTUFBTSxVQUFVLE9BQU8sQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQztpQkFDckcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztpQkFDckMsU0FBUyxFQUFFLENBQUM7UUFDakIsQ0FBQztLQUFBO0lBRUssVUFBVSxDQUFDLE1BQWMsRUFBRSxJQUFVOztZQUN6QyxPQUFPLElBQUksQ0FBQyxVQUFVO2lCQUNuQixJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLE1BQU0sU0FBUyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7aUJBQzNGLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7aUJBQ3JDLFNBQVMsRUFBRSxDQUFDO1FBQ2pCLENBQUM7S0FBQTtJQUVLLGlCQUFpQixDQUFDLE1BQWM7O1lBQ3BDLE9BQU8sSUFBSSxDQUFDLFVBQVU7aUJBQ25CLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsTUFBTSxjQUFjLENBQUM7aUJBQzVFLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztpQkFDcEQsU0FBUyxFQUFFLENBQUM7UUFDakIsQ0FBQztLQUFBO0lBRUssc0JBQXNCLENBQUMsTUFBYzs7WUFDekMsT0FBTyxJQUFJLENBQUMsVUFBVTtpQkFDbkIsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLGdCQUFnQixNQUFNLHlCQUF5QixDQUFDO2lCQUN2RixJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsbUJBQW1CLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7aUJBQ3BELFNBQVMsRUFBRSxDQUFDO1FBQ2pCLENBQUM7S0FBQTtJQUVLLFFBQVEsQ0FBQyxNQUFjOztZQUMzQixPQUFPLElBQUksQ0FBQyxVQUFVO2lCQUNuQixJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLE1BQU0sUUFBUSxFQUFFLEVBQUUsQ0FBQztpQkFDM0UsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztpQkFDM0MsU0FBUyxFQUFFLENBQUM7UUFDakIsQ0FBQztLQUFBO0lBRUssU0FBUyxDQUFDLE1BQWM7O1lBQzVCLE9BQU8sSUFBSSxDQUFDLFVBQVU7aUJBQ25CLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsTUFBTSxTQUFTLEVBQUUsRUFBRSxDQUFDO2lCQUM1RSxTQUFTLEVBQUUsQ0FBQztRQUNqQixDQUFDO0tBQUE7SUFFSyxRQUFRLENBQUMsTUFBYyxFQUFFLE9BQU8sR0FBRyxLQUFLOztZQUM1QyxPQUFPLElBQUksQ0FBQyxVQUFVO2lCQUNuQixHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLE1BQU0sVUFBVSxPQUFPLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUM7aUJBQ3JHLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7aUJBQ3JDLFNBQVMsRUFBRSxDQUFDO1FBQ2pCLENBQUM7S0FBQTtJQUVLLFVBQVUsQ0FBQyxNQUFjLEVBQUUsSUFBVTs7WUFDekMsT0FBTyxJQUFJLENBQUMsVUFBVTtpQkFDbkIsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLGdCQUFnQixNQUFNLFNBQVMsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO2lCQUMzRixJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO2lCQUNyQyxTQUFTLEVBQUUsQ0FBQztRQUNqQixDQUFDO0tBQUE7SUFFSyxhQUFhLENBQUMsTUFBYzs7WUFDaEMsT0FBTyxJQUFJLENBQUMsVUFBVTtpQkFDbkIsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLGdCQUFnQixNQUFNLFVBQVUsQ0FBQztpQkFDeEUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztpQkFDMUMsU0FBUyxFQUFFLENBQUM7UUFDakIsQ0FBQztLQUFBO0lBRUssZUFBZSxDQUFDLE1BQWMsRUFBRSxTQUFvQjs7WUFDeEQsT0FBTyxJQUFJLENBQUMsVUFBVTtpQkFDbkIsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLGdCQUFnQixNQUFNLFVBQVUsRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO2lCQUN0RyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO2lCQUMxQyxTQUFTLEVBQUUsQ0FBQztRQUNqQixDQUFDO0tBQUE7SUFFSyxjQUFjLENBQUMsTUFBYzs7WUFDakMsT0FBTyxJQUFJLENBQUMsVUFBVTtpQkFDbkIsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLGdCQUFnQixNQUFNLGVBQWUsQ0FBQztpQkFDN0UsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztpQkFDM0MsU0FBUyxFQUFFLENBQUM7UUFDakIsQ0FBQztLQUFBO0lBRUssa0JBQWtCLENBQUMsTUFBYzs7WUFDckMsT0FBTyxJQUFJLENBQUMsVUFBVTtpQkFDbkIsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLGdCQUFnQixNQUFNLG9CQUFvQixDQUFDO2lCQUNsRixJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO2lCQUMvQyxTQUFTLEVBQUUsQ0FBQztRQUNqQixDQUFDO0tBQUE7SUFFSyxvQkFBb0IsQ0FBQyxNQUFjOztZQUN2QyxPQUFPLElBQUksQ0FBQyxVQUFVO2lCQUNuQixHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLE1BQU0sc0JBQXNCLENBQUM7aUJBQ3BGLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztpQkFDakQsU0FBUyxFQUFFLENBQUM7UUFDakIsQ0FBQztLQUFBO0lBRUssa0JBQWtCLENBQUMsTUFBYyxFQUFFLFlBQW9CLEVBQUUsSUFBWSxFQUFFLElBQWE7O1lBQ3hGLElBQUksTUFBTSxHQUFHLElBQUksVUFBVSxFQUFFLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztZQUMzRCxJQUFJLElBQUksRUFBRTtnQkFDUixNQUFNLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7YUFDOUM7WUFDRCxPQUFPLElBQUksQ0FBQyxVQUFVO2lCQUNuQixHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLE1BQU0sZ0JBQWdCLFlBQVksU0FBUyxFQUFFLEVBQUMsTUFBTSxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUMsQ0FBQztpQkFDbEksSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFFBQTJCLEVBQUUsRUFBRTtnQkFDeEMsT0FBTztvQkFDTCxLQUFLLEVBQUUsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUM7b0JBQzVDLElBQUksRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUM7aUJBQ2xDLENBQUM7WUFDSixDQUFDLENBQUMsQ0FBQztpQkFDRixTQUFTLEVBQUUsQ0FBQztRQUNqQixDQUFDO0tBQUE7SUFFSyxzQkFBc0IsQ0FBQyxRQUFnQjs7WUFDM0MsT0FBTyxJQUFJLENBQUMsVUFBVTtpQkFDbkIsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLDZCQUE2QixRQUFRLFVBQVUsRUFBRSxFQUFFLENBQUM7aUJBQzVGLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztpQkFDakQsU0FBUyxFQUFFLENBQUM7UUFDakIsQ0FBQztLQUFBO0lBRUssdUJBQXVCLENBQUMsUUFBZ0I7O1lBQzVDLE9BQU8sSUFBSSxDQUFDLFVBQVU7aUJBQ25CLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyw2QkFBNkIsUUFBUSxXQUFXLEVBQUUsRUFBRSxDQUFDO2lCQUM3RixJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7aUJBQ2pELFNBQVMsRUFBRSxDQUFDO1FBQ2pCLENBQUM7S0FBQTtJQUVLLGdCQUFnQixDQUFDLE1BQWMsRUFBRSxRQUFjOztZQUNuRCxPQUFPLElBQUksQ0FBQyxVQUFVO2lCQUNuQixJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLE1BQU0sYUFBYSxFQUFHLEVBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEVBQUMsQ0FBQztpQkFDNUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztpQkFDekMsU0FBUyxFQUFFLENBQUM7UUFDakIsQ0FBQztLQUFBO0lBRUssV0FBVyxDQUFDLFVBQWtCOztZQUNsQyxPQUFPLElBQUksQ0FBQyxVQUFVO2lCQUNuQixHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMscUJBQXFCLFVBQVUsR0FBRyxDQUFDO2lCQUMxRSxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO2lCQUN6QyxTQUFTLEVBQUUsQ0FBQztRQUNqQixDQUFDO0tBQUE7SUFFSyxjQUFjLENBQUMsVUFBa0IsRUFBRSxRQUFjOztZQUNyRCxPQUFPLElBQUksQ0FBQyxVQUFVO2lCQUNuQixLQUFLLENBQUMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMscUJBQXFCLFVBQVUsR0FBRyxFQUFFLEVBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEVBQUMsQ0FBQztpQkFDM0csSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztpQkFDekMsU0FBUyxFQUFFLENBQUM7UUFDakIsQ0FBQztLQUFBO0lBRUssY0FBYyxDQUFDLFVBQWtCOztZQUNyQyxPQUFPLElBQUksQ0FBQyxVQUFVO2lCQUNuQixNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMscUJBQXFCLFVBQVUsR0FBRyxDQUFDO2lCQUM3RSxTQUFTLEVBQUUsQ0FBQztRQUNqQixDQUFDO0tBQUE7SUFFSyxtQkFBbUIsQ0FBQyxVQUFrQjs7WUFDMUMsT0FBTyxJQUFJLENBQUMsVUFBVTtpQkFDbkIsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLHFCQUFxQixVQUFVLGdCQUFnQixFQUFFLEVBQUUsQ0FBQztpQkFDNUYsU0FBUyxFQUFFLENBQUM7UUFDakIsQ0FBQztLQUFBOzs7O1lBN1RGLFVBQVUsU0FBQyxFQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUM7OztZQXBCdkIsVUFBVTtZQWtCVixhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cFBhcmFtcywgSHR0cFJlc3BvbnNlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgVGVhbSB9IGZyb20gJy4uL21vZGVscy90ZWFtJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFRlYW1Vc2VyLCBUZWFtVXNlclJvbGUgfSBmcm9tICcuLi9tb2RlbHMvdGVhbS11c2VyJztcbmltcG9ydCB7IFVzZXIgfSBmcm9tICcuLi9tb2RlbHMvdXNlcic7XG5pbXBvcnQgeyBUZWFtSW52aXRlIH0gZnJvbSAnLi4vbW9kZWxzL3RlYW0taW52aXRlJztcbmltcG9ydCB7IFRlYW1JbnZpdGVFeHRlcm5hbCB9IGZyb20gJy4uL21vZGVscy90ZWFtLWludml0ZS1leHRlcm5hbCc7XG5pbXBvcnQgeyBQb2xsIH0gZnJvbSAnLi4vbW9kZWxzL3BvbGwnO1xuaW1wb3J0IHsgVm9sbGV5YmFsbFN0YXRpc3RpYyB9IGZyb20gJy4uL21vZGVscy92b2xsZXliYWxsLXN0YXRpc3RpYyc7XG5pbXBvcnQgeyBHYW1lIH0gZnJvbSAnLi4vbW9kZWxzL2dhbWUnO1xuaW1wb3J0IHsgVGVhbUV2ZW50IH0gZnJvbSAnLi4vbW9kZWxzL3RlYW0tZXZlbnQnO1xuaW1wb3J0IHsgVG91cm5hbWVudCB9IGZyb20gJy4uL21vZGVscy90b3VybmFtZW50JztcbmltcG9ydCB7IFRvdXJuYW1lbnRUZWFtIH0gZnJvbSAnLi4vbW9kZWxzL3RvdXJuYW1lbnQtdGVhbSc7XG5pbXBvcnQgeyBUb3VybmFtZW50SW52aXRlIH0gZnJvbSAnLi4vbW9kZWxzL3RvdXJuYW1lbnQtaW52aXRlJztcbmltcG9ydCB7IFBhZ2luYXRlZFJlc3BvbnNlIH0gZnJvbSAnLi9wYWdpbmF0ZWQtcmVzcG9uc2UuaW50ZXJmYWNlJztcbmltcG9ydCB7IEJhc2tldGJhbGxTdGF0aXN0aWMgfSBmcm9tICcuLi9tb2RlbHMvYmFza2V0YmFsbC1zdGF0aXN0aWMnO1xuaW1wb3J0IHsgVGVhbVBlcm1pc3Npb24gfSBmcm9tICcuLi9tb2RlbHMvdGVhbS1wZXJtaXNzaW9uJztcbmltcG9ydCB7IFRlYW1BY2Nlc3MgfSBmcm9tICcuLi9tb2RlbHMvdGVhbS1hY2Nlc3MnO1xuaW1wb3J0IHsgQ29uZmlnU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2NvbmZpZy5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoe3Byb3ZpZGVkSW46ICdyb290J30pXG5leHBvcnQgY2xhc3MgVGVhbUFwaSB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgaHR0cENsaWVudDogSHR0cENsaWVudCxcbiAgICBwcml2YXRlIGNvbmZpZ1NlcnZpY2U6IENvbmZpZ1NlcnZpY2UsXG4gICkge31cblxuICBhc3luYyBzZWFyY2gocXVlcnk6IHN0cmluZywgc3BvcnRJZD86IG51bWJlcik6IFByb21pc2U8VGVhbVtdPiB7XG4gICAgbGV0IHBhcmFtcyA9IChuZXcgSHR0cFBhcmFtcygpKS5zZXQoJ3NlYXJjaCcsIHF1ZXJ5KTtcbiAgICBpZiAoc3BvcnRJZCkge1xuICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgnc3BvcnQnLCBzcG9ydElkLnRvU3RyaW5nKCkpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50XG4gICAgICAuZ2V0KGAke3RoaXMuY29uZmlnU2VydmljZS5nZXQoJ2FwaVVybCcpfS9hcGkvdjEvdGVhbS9gLCB7cGFyYW1zfSlcbiAgICAgIC5waXBlKG1hcChkYXRhID0+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
@@ -1,80 +0,0 @@
1
- import { __awaiter } 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
- export 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.ɵprov = i0.ɵɵdefineInjectable({ factory: function TeamEventApi_Factory() { return new TeamEventApi(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(i2.ConfigService)); }, token: TeamEventApi, providedIn: "root" });
73
- TeamEventApi.decorators = [
74
- { type: Injectable, args: [{ providedIn: 'root' },] }
75
- ];
76
- TeamEventApi.ctorParameters = () => [
77
- { type: HttpClient },
78
- { type: ConfigService }
79
- ];
80
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVhbS1ldmVudC1hcGkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NyYy9hcGkvdGVhbS1ldmVudC1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDakQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzlELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7OztBQUczRCxNQUFNLE9BQU8sWUFBWTtJQUN2QixZQUNVLFVBQXNCLEVBQ3RCLGFBQTRCO1FBRDVCLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDdEIsa0JBQWEsR0FBYixhQUFhLENBQWU7SUFDbkMsQ0FBQztJQUVFLFlBQVksQ0FBQyxXQUFtQjs7WUFDcEMsT0FBTyxJQUFJLENBQUMsVUFBVTtpQkFDbkIsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLHNCQUFzQixXQUFXLEdBQUcsQ0FBQztpQkFDNUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztpQkFDMUMsU0FBUyxFQUFFLENBQUM7UUFDakIsQ0FBQztLQUFBO0lBRUssZUFBZSxDQUFDLFNBQW9COztZQUN4QyxPQUFPLElBQUksQ0FBQyxVQUFVO2lCQUNuQixLQUFLLENBQUMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsc0JBQXNCLFNBQVMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO2lCQUM1RyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO2lCQUMxQyxTQUFTLEVBQUUsQ0FBQztRQUNqQixDQUFDO0tBQUE7SUFFSyxlQUFlLENBQUMsV0FBbUI7O1lBQ3ZDLE9BQU8sSUFBSSxDQUFDLFVBQVU7aUJBQ25CLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxzQkFBc0IsV0FBVyxHQUFHLENBQUM7aUJBQy9FLFNBQVMsRUFBRSxDQUFDO1FBQ2pCLENBQUM7S0FBQTtJQUVLLG1CQUFtQixDQUFDLFdBQW1COztZQUMzQyxPQUFPLElBQUksQ0FBQyxVQUFVO2lCQUNuQixHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsc0JBQXNCLFdBQVcsV0FBVyxDQUFDO2lCQUNwRixJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO2lCQUNoRCxTQUFTLEVBQUUsQ0FBQztRQUNqQixDQUFDO0tBQUE7SUFFSyxxQkFBcUIsQ0FBQyxXQUFtQixFQUFFLFVBQWtCOztZQUNqRSxPQUFPLElBQUksQ0FBQyxVQUFVO2lCQUNuQixJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsc0JBQXNCLFdBQVcsV0FBVyxFQUFFLEVBQUMsWUFBWSxFQUFFLFVBQVUsRUFBQyxDQUFDO2lCQUNqSCxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO2lCQUNoRCxTQUFTLEVBQUUsQ0FBQztRQUNqQixDQUFDO0tBQUE7SUFFSyxxQkFBcUIsQ0FBQyxlQUFnQzs7WUFDMUQsT0FBTyxJQUFJLENBQUMsVUFBVTtpQkFDbkIsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLDZCQUE2QixlQUFlLENBQUMsRUFBRSxVQUFVLEVBQUUsRUFBRSxDQUFDO2lCQUN0RyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO2lCQUNoRCxTQUFTLEVBQUUsQ0FBQztRQUNqQixDQUFDO0tBQUE7SUFFSyxzQkFBc0IsQ0FBQyxlQUFnQzs7WUFDM0QsT0FBTyxJQUFJLENBQUMsVUFBVTtpQkFDbkIsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLDZCQUE2QixlQUFlLENBQUMsRUFBRSxXQUFXLEVBQUUsRUFBRSxDQUFDO2lCQUN2RyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO2lCQUNoRCxTQUFTLEVBQUUsQ0FBQztRQUNqQixDQUFDO0tBQUE7Ozs7WUFyREYsVUFBVSxTQUFDLEVBQUMsVUFBVSxFQUFFLE1BQU0sRUFBQzs7O1lBTnZCLFVBQVU7WUFJVixhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFRlYW1FdmVudCB9IGZyb20gJy4uL21vZGVscy90ZWFtLWV2ZW50JztcbmltcG9ydCB7IFRlYW1FdmVudEludml0ZSB9IGZyb20gJy4uL21vZGVscy90ZWFtLWV2ZW50LWludml0ZSc7XG5pbXBvcnQgeyBDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvY29uZmlnLnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSh7cHJvdmlkZWRJbjogJ3Jvb3QnfSlcbmV4cG9ydCBjbGFzcyBUZWFtRXZlbnRBcGkge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGh0dHBDbGllbnQ6IEh0dHBDbGllbnQsXG4gICAgcHJpdmF0ZSBjb25maWdTZXJ2aWNlOiBDb25maWdTZXJ2aWNlLFxuICApIHt9XG5cbiAgYXN5bmMgZ2V0VGVhbUV2ZW50KHRlYW1FdmVudElkOiBudW1iZXIpOiBQcm9taXNlPFRlYW1FdmVudD4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRcbiAgICAgIC5nZXQoYCR7dGhpcy5jb25maWdTZXJ2aWNlLmdldCgnYXBpVXJsJyl9L2FwaS92MS90ZWFtX2V2ZW50LyR7dGVhbUV2ZW50SWR9L2ApXG4gICAgICAucGlwZShtYXAoZGF0YSA9PiBUZWFtRXZlbnQudG9Gcm9udChkYXRhKSkpXG4gICAgICAudG9Qcm9taXNlKCk7XG4gIH1cblxuICBhc3luYyB1cGRhdGVUZWFtRXZlbnQodGVhbUV2ZW50OiBUZWFtRXZlbnQpOiBQcm9taXNlPFRlYW1FdmVudD4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRcbiAgICAgIC5wYXRjaChgJHt0aGlzLmNvbmZpZ1NlcnZpY2UuZ2V0KCdhcGlVcmwnKX0vYXBpL3YxL3RlYW1fZXZlbnQvJHt0ZWFtRXZlbnQuaWR9L2AsIFRlYW1FdmVudC50b0JhY2sodGVhbUV2ZW50KSlcbiAgICAgIC5waXBlKG1hcChkYXRhID0+IFRlYW1FdmVudC50b0Zyb250KGRhdGEpKSlcbiAgICAgIC50b1Byb21pc2UoKTtcbiAgfVxuXG4gIGFzeW5jIGRlbGV0ZVRlYW1FdmVudCh0ZWFtRXZlbnRJZDogbnVtYmVyKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50XG4gICAgICAuZGVsZXRlKGAke3RoaXMuY29uZmlnU2VydmljZS5nZXQoJ2FwaVVybCcpfS9hcGkvdjEvdGVhbV9ldmVudC8ke3RlYW1FdmVudElkfS9gKVxuICAgICAgLnRvUHJvbWlzZSgpO1xuICB9XG5cbiAgYXN5bmMgZ2V0VGVhbUV2ZW50SW52aXRlcyh0ZWFtRXZlbnRJZDogbnVtYmVyKTogUHJvbWlzZTxUZWFtRXZlbnRJbnZpdGVbXT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRcbiAgICAgIC5nZXQoYCR7dGhpcy5jb25maWdTZXJ2aWNlLmdldCgnYXBpVXJsJyl9L2FwaS92MS90ZWFtX2V2ZW50LyR7dGVhbUV2ZW50SWR9L2ludml0ZXMvYClcbiAgICAgIC5waXBlKG1hcChkYXRhID0+IFRlYW1FdmVudEludml0ZS50b0Zyb250KGRhdGEpKSlcbiAgICAgIC50b1Byb21pc2UoKTtcbiAgfVxuXG4gIGFzeW5jIGNyZWF0ZVRlYW1FdmVudEludml0ZSh0ZWFtRXZlbnRJZDogbnVtYmVyLCB0ZWFtVXNlcklkOiBudW1iZXIpOiBQcm9taXNlPFRlYW1FdmVudEludml0ZT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRcbiAgICAgIC5wb3N0KGAke3RoaXMuY29uZmlnU2VydmljZS5nZXQoJ2FwaVVybCcpfS9hcGkvdjEvdGVhbV9ldmVudC8ke3RlYW1FdmVudElkfS9pbnZpdGVzL2AsIHt0ZWFtX3VzZXJfaWQ6IHRlYW1Vc2VySWR9KVxuICAgICAgLnBpcGUobWFwKGRhdGEgPT4gVGVhbUV2ZW50SW52aXRlLnRvRnJvbnQoZGF0YSkpKVxuICAgICAgLnRvUHJvbWlzZSgpO1xuICB9XG5cbiAgYXN5bmMgYWNjZXB0VGVhbUV2ZW50SW52aXRlKHRlYW1FdmVudEludml0ZTogVGVhbUV2ZW50SW52aXRlKTogUHJvbWlzZTxUZWFtRXZlbnRJbnZpdGU+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50XG4gICAgICAucG9zdChgJHt0aGlzLmNvbmZpZ1NlcnZpY2UuZ2V0KCdhcGlVcmwnKX0vYXBpL3YxL3RlYW1fZXZlbnRfaW52aXRlLyR7dGVhbUV2ZW50SW52aXRlLmlkfS9hY2NlcHQvYCwge30pXG4gICAgICAucGlwZShtYXAoZGF0YSA9PiBUZWFtRXZlbnRJbnZpdGUudG9Gcm9udChkYXRhKSkpXG4gICAgICAudG9Qcm9taXNlKCk7XG4gIH1cblxuICBhc3luYyBkZWNsaW5lVGVhbUV2ZW50SW52aXRlKHRlYW1FdmVudEludml0ZTogVGVhbUV2ZW50SW52aXRlKTogUHJvbWlzZTxUZWFtRXZlbnRJbnZpdGU+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50XG4gICAgICAucG9zdChgJHt0aGlzLmNvbmZpZ1NlcnZpY2UuZ2V0KCdhcGlVcmwnKX0vYXBpL3YxL3RlYW1fZXZlbnRfaW52aXRlLyR7dGVhbUV2ZW50SW52aXRlLmlkfS9kZWNsaW5lL2AsIHt9KVxuICAgICAgLnBpcGUobWFwKGRhdGEgPT4gVGVhbUV2ZW50SW52aXRlLnRvRnJvbnQoZGF0YSkpKVxuICAgICAgLnRvUHJvbWlzZSgpO1xuICB9XG59XG4iXX0=