@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
@@ -0,0 +1,27 @@
1
+ import { Subject } from 'rxjs';
2
+ export function componentDestroyed(component) {
3
+ if (!component.__decoratorApplied) {
4
+ throw new Error('Use @UntilDestroy decorator in class');
5
+ }
6
+ if (!component.__componentDestroyed$) {
7
+ component.__componentDestroyed$ = new Subject();
8
+ }
9
+ return component.__componentDestroyed$;
10
+ }
11
+ export function UntilDestroy(cmpType) {
12
+ const original = cmpType.prototype.ngOnDestroy;
13
+ cmpType.prototype.__decoratorApplied = true;
14
+ cmpType.prototype.ngOnDestroy = function () {
15
+ console.log('UntilDestroy');
16
+ original.call(this);
17
+ if (this.__componentDestroyed$) {
18
+ this.__componentDestroyed$.next();
19
+ this.__componentDestroyed$.complete();
20
+ delete this.__componentDestroyed$;
21
+ }
22
+ };
23
+ }
24
+ function getDef(type) {
25
+ return type.ɵcmp || type.ɵdir;
26
+ }
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LWRlc3Ryb3llZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL3V0aWxzL2NvbXBvbmVudC1kZXN0cm95ZWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBTUEsT0FBTyxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQU8zQyxNQUFNLFVBQVUsa0JBQWtCLENBQUMsU0FBd0I7SUFDekQsSUFBSSxDQUFFLFNBQWlCLENBQUMsa0JBQWtCLEVBQUU7UUFDMUMsTUFBTSxJQUFJLEtBQUssQ0FBQyxzQ0FBc0MsQ0FBQyxDQUFDO0tBQ3pEO0lBRUQsSUFBSSxDQUFFLFNBQWlCLENBQUMscUJBQXFCLEVBQUU7UUFDNUMsU0FBaUIsQ0FBQyxxQkFBcUIsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDO0tBQzFEO0lBQ0QsT0FBUSxTQUFpQixDQUFDLHFCQUFxQixDQUFDO0FBQ2xELENBQUM7QUFFRCxNQUFNLFVBQVUsWUFBWSxDQUFDLE9BQVk7SUFDdkMsTUFBTSxRQUFRLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUM7SUFDL0MsT0FBTyxDQUFDLFNBQVMsQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUM7SUFDNUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxXQUFXLEdBQUc7UUFDOUIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUM1QixRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3BCLElBQUksSUFBSSxDQUFDLHFCQUFxQixFQUFFO1lBQzlCLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNsQyxJQUFJLENBQUMscUJBQXFCLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDdEMsT0FBTyxJQUFJLENBQUMscUJBQXFCLENBQUM7U0FDbkM7SUFDSCxDQUFDLENBQUM7QUFDSixDQUFDO0FBRUQsU0FBUyxNQUFNLENBQ2IsSUFBeUM7SUFFekMsT0FBUSxJQUF5QixDQUFDLElBQUksSUFBSyxJQUF5QixDQUFDLElBQUksQ0FBQztBQUM1RSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgybVDb21wb25lbnRUeXBlIGFzIENvbXBvbmVudFR5cGUsXG4gIMm1RGlyZWN0aXZlVHlwZSBhcyBEaXJlY3RpdmVUeXBlLFxuICDJtUNvbXBvbmVudERlZiBhcyBDb21wb25lbnREZWYsXG4gIMm1RGlyZWN0aXZlRGVmIGFzIERpcmVjdGl2ZURlZlxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcblxuZXhwb3J0IGludGVyZmFjZSBPbkRlc3Ryb3lMaWtlIHtcbiAgbmdPbkRlc3Ryb3koKTogdm9pZDtcbiAgW2tleTogc3RyaW5nXTogYW55O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY29tcG9uZW50RGVzdHJveWVkKGNvbXBvbmVudDogT25EZXN0cm95TGlrZSk6IE9ic2VydmFibGU8dm9pZD4ge1xuICBpZiAoIShjb21wb25lbnQgYXMgYW55KS5fX2RlY29yYXRvckFwcGxpZWQpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ1VzZSBAVW50aWxEZXN0cm95IGRlY29yYXRvciBpbiBjbGFzcycpO1xuICB9XG5cbiAgaWYgKCEoY29tcG9uZW50IGFzIGFueSkuX19jb21wb25lbnREZXN0cm95ZWQkKSB7XG4gICAgKGNvbXBvbmVudCBhcyBhbnkpLl9fY29tcG9uZW50RGVzdHJveWVkJCA9IG5ldyBTdWJqZWN0KCk7XG4gIH1cbiAgcmV0dXJuIChjb21wb25lbnQgYXMgYW55KS5fX2NvbXBvbmVudERlc3Ryb3llZCQ7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBVbnRpbERlc3Ryb3koY21wVHlwZTogYW55KSB7XG4gIGNvbnN0IG9yaWdpbmFsID0gY21wVHlwZS5wcm90b3R5cGUubmdPbkRlc3Ryb3k7XG4gIGNtcFR5cGUucHJvdG90eXBlLl9fZGVjb3JhdG9yQXBwbGllZCA9IHRydWU7XG4gIGNtcFR5cGUucHJvdG90eXBlLm5nT25EZXN0cm95ID0gZnVuY3Rpb24odGhpczogYW55KSB7XG4gICAgY29uc29sZS5sb2coJ1VudGlsRGVzdHJveScpO1xuICAgIG9yaWdpbmFsLmNhbGwodGhpcyk7XG4gICAgaWYgKHRoaXMuX19jb21wb25lbnREZXN0cm95ZWQkKSB7XG4gICAgICB0aGlzLl9fY29tcG9uZW50RGVzdHJveWVkJC5uZXh0KCk7XG4gICAgICB0aGlzLl9fY29tcG9uZW50RGVzdHJveWVkJC5jb21wbGV0ZSgpO1xuICAgICAgZGVsZXRlIHRoaXMuX19jb21wb25lbnREZXN0cm95ZWQkO1xuICAgIH1cbiAgfTtcbn1cblxuZnVuY3Rpb24gZ2V0RGVmPFQ+KFxuICB0eXBlOiBEaXJlY3RpdmVUeXBlPFQ+IHwgQ29tcG9uZW50VHlwZTxUPlxuKTogRGlyZWN0aXZlRGVmPFQ+IHwgQ29tcG9uZW50RGVmPFQ+IHwgdW5rbm93biB7XG4gIHJldHVybiAodHlwZSBhcyBDb21wb25lbnRUeXBlPFQ+KS7JtWNtcCB8fCAodHlwZSBhcyBEaXJlY3RpdmVUeXBlPFQ+KS7JtWRpcjtcbn1cbiJdfQ==
@@ -0,0 +1,164 @@
1
+ import { BaseModel } from '../models/util';
2
+ class BaseModelWithId extends BaseModel {
3
+ }
4
+ class BaseModelWithUpdatedAt extends BaseModelWithId {
5
+ }
6
+ export function updateItemInArray(data, item, force = false, checkFunction) {
7
+ const index = data.findIndex(v => checkFunction ? checkFunction(v) : v.id === item.id);
8
+ if (index < 0) {
9
+ return data;
10
+ }
11
+ const oldItem = data[index];
12
+ if (oldItem instanceof BaseModelWithUpdatedAt && item instanceof BaseModelWithUpdatedAt &&
13
+ !force && item.updatedAt && oldItem.updatedAt && oldItem.updatedAt > item.updatedAt) {
14
+ return data;
15
+ }
16
+ data[index] = item;
17
+ return data;
18
+ }
19
+ export function updateItemsInArray(data, items, force = false, checkFunction) {
20
+ items.forEach(item => {
21
+ data = updateItemInArray(data, item, force, checkFunction);
22
+ });
23
+ return data;
24
+ }
25
+ export function patchItemInArray(data, item, checkFunction) {
26
+ return data.map(v => {
27
+ if (checkFunction && isFunction(checkFunction)) {
28
+ if (!checkFunction(v)) {
29
+ return v;
30
+ }
31
+ }
32
+ else if (v.id !== item.id) {
33
+ return v;
34
+ }
35
+ return Object.assign(v, item);
36
+ });
37
+ }
38
+ export function addItemInArray(data, item, atEnd = false, checkFunction) {
39
+ if (data.find(i => isFunction(checkFunction) ? checkFunction(i) : i.id === item.id)) {
40
+ return data;
41
+ }
42
+ return atEnd
43
+ ? [...data, item]
44
+ : [item, ...data];
45
+ }
46
+ export function addItemsInArray(data, items, atEnd = false, checkFunction) {
47
+ (!atEnd
48
+ ? Object.assign([], items).reverse()
49
+ : items).forEach(item => {
50
+ data = addItemInArray(data, item, atEnd, checkFunction);
51
+ });
52
+ return data;
53
+ }
54
+ export function deleteItemFromArray(data, item) {
55
+ if (item instanceof BaseModelWithId) {
56
+ return data.filter(v => v.id !== item.id);
57
+ }
58
+ else {
59
+ return data.filter(i => !item(i));
60
+ }
61
+ }
62
+ function isFunction(functionToCheck) {
63
+ return functionToCheck && {}.toString.call(functionToCheck) === '[object Function]';
64
+ }
65
+ export const _ = {
66
+ insert: (data, item, atEnd = false, indexKey = null) => {
67
+ if (_.index(data, item, indexKey) > -1) {
68
+ return data;
69
+ }
70
+ if (atEnd) {
71
+ return [
72
+ ...data,
73
+ item,
74
+ ];
75
+ }
76
+ else {
77
+ return [
78
+ item,
79
+ ...data,
80
+ ];
81
+ }
82
+ },
83
+ update: (data, item, force = false, partial = false, indexKey = null) => {
84
+ const index = _.index(data, item, indexKey);
85
+ if (index < 0) {
86
+ return data;
87
+ }
88
+ const oldItem = data[index];
89
+ if (!force && item instanceof BaseModelWithUpdatedAt && oldItem instanceof BaseModelWithUpdatedAt &&
90
+ item.updatedAt && oldItem.updatedAt && oldItem.updatedAt > item.updatedAt) {
91
+ return data;
92
+ }
93
+ if (partial) {
94
+ data[index] = _.modify(oldItem, item);
95
+ }
96
+ else {
97
+ data[index] = item;
98
+ }
99
+ return [...data];
100
+ },
101
+ index: (data, item, indexKey = null) => {
102
+ if (!indexKey) {
103
+ indexKey = 'id';
104
+ }
105
+ return data.findIndex(v => v[indexKey] === item[indexKey]);
106
+ },
107
+ delete: (data, item, indexKey = null) => {
108
+ const index = _.index(data, item, indexKey);
109
+ if (index < 0) {
110
+ return data;
111
+ }
112
+ data.splice(index, 1);
113
+ return [...data];
114
+ },
115
+ deleteBy: (data, checkFunction) => {
116
+ data = data.filter(checkFunction);
117
+ return [...data];
118
+ },
119
+ includes: (data, item, indexKey = null) => {
120
+ return _.index(data, item, indexKey) > -1;
121
+ },
122
+ upsert: (data, item, atEnd = false, force = false, indexKey = null) => {
123
+ if (_.includes(data, item, indexKey)) {
124
+ return _.update(data, item, force, false, indexKey);
125
+ }
126
+ else {
127
+ return _.insert(data, item, atEnd, indexKey);
128
+ }
129
+ },
130
+ insertMany: (data, items, atEnd = false, indexKey = null) => {
131
+ if (!atEnd) {
132
+ data = Object.assign([], data).reverse();
133
+ }
134
+ for (const item of items) {
135
+ data = _.insert(data, item, atEnd, indexKey);
136
+ }
137
+ return [...data];
138
+ },
139
+ upsertMany: (data, items, atEnd = false, force = false, indexKey = null) => {
140
+ if (!atEnd) {
141
+ data = Object.assign([], data).reverse();
142
+ }
143
+ for (const item of items) {
144
+ data = _.upsert(data, item, atEnd, force, indexKey);
145
+ }
146
+ return [...data];
147
+ },
148
+ groupBy: (data, key) => {
149
+ return data.reduce((acc, item) => ({
150
+ ...acc,
151
+ [item[key].toString()]: item,
152
+ }), {});
153
+ },
154
+ flatten: (data) => {
155
+ return data.reduce((acc, items) => ([
156
+ ...acc,
157
+ ...items,
158
+ ]), []);
159
+ },
160
+ modify: (instance, data) => {
161
+ return Object.assign(Object.create(instance), instance, data);
162
+ }
163
+ };
164
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL3V0aWxzL2RhdGEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTNDLE1BQU0sZUFBZ0IsU0FBUSxTQUFTO0NBRXRDO0FBRUQsTUFBTSxzQkFBdUIsU0FBUSxlQUFlO0NBRW5EO0FBT0QsTUFBTSxVQUFVLGlCQUFpQixDQUMvQixJQUFTLEVBQ1QsSUFBTyxFQUNQLEtBQUssR0FBRyxLQUFLLEVBQ2IsYUFBb0M7SUFFcEMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUMvQixhQUFhLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUNwRCxDQUFDO0lBQ0YsSUFBSSxLQUFLLEdBQUcsQ0FBQyxFQUFFO1FBQ2IsT0FBTyxJQUFJLENBQUM7S0FDYjtJQUNELE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM1QixJQUFJLE9BQU8sWUFBWSxzQkFBc0IsSUFBSSxJQUFJLFlBQVksc0JBQXNCO1FBQ3JGLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxTQUFTLElBQUksT0FBTyxDQUFDLFNBQVMsSUFBSSxPQUFPLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxTQUFTLEVBQ25GO1FBQ0EsT0FBTyxJQUFJLENBQUM7S0FDYjtJQUNELElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxJQUFJLENBQUM7SUFDbkIsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDO0FBRUQsTUFBTSxVQUFVLGtCQUFrQixDQUNoQyxJQUFTLEVBQ1QsS0FBVSxFQUNWLFFBQWlCLEtBQUssRUFDdEIsYUFBb0M7SUFFcEMsS0FB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RUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1NBQ3JEO1FBQ0QsT0FBTyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUM7SUFDbkIsQ0FBQztJQUNELE9BQU8sRUFBRSxDQUFzQixJQUFTLEVBQUUsR0FBcUMsRUFBa0IsRUFBRTtRQUNqRyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ2pDLEdBQUcsR0FBRztZQUNOLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLEVBQUUsSUFBSTtTQUM3QixDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDVixDQUFDO0lBQ0QsT0FBTyxFQUFFLENBQXNCLElBQVcsRUFBTyxFQUFFO1FBQ2pELE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDbEMsR0FBRyxHQUFHO1lBQ04sR0FBRyxLQUFLO1NBQ1QsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ1YsQ0FBQztJQUNELE1BQU0sRUFBRSxDQUFzQixRQUFXLEVBQUUsSUFBMkMsRUFBRSxFQUFFO1FBQ3hGLE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNoRSxDQUFDO0NBQ0YsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VNb2RlbCB9IGZyb20gJy4uL21vZGVscy91dGlsJztcblxuY2xhc3MgQmFzZU1vZGVsV2l0aElkIGV4dGVuZHMgQmFzZU1vZGVsIHtcbiAgaWQ6IG51bWJlcjtcbn1cblxuY2xhc3MgQmFzZU1vZGVsV2l0aFVwZGF0ZWRBdCBleHRlbmRzIEJhc2VNb2RlbFdpdGhJZCB7XG4gIHVwZGF0ZWRBdDogRGF0ZTtcbn1cblxudHlwZSBNb2RlbCA9IEJhc2VNb2RlbFdpdGhJZCB8IEJhc2VNb2RlbFdpdGhVcGRhdGVkQXQ7XG50eXBlIGNoZWNrRnVuY3Rpb25UeXBlPFQ+ID0gKGl0ZW06IFQpID0+IGJvb2xlYW47XG50eXBlIE1hcHBlZE1vZGVsPFQ+ID0ge1trZXk6IHN0cmluZ106IFR9O1xudHlwZSBLZXlzTWF0Y2hpbmc8VCwgVj4gPSB7W0sgaW4ga2V5b2YgVF0tPzogVFtLXSBleHRlbmRzIFYgPyBLIDogbmV2ZXJ9W2tleW9mIFRdO1xuXG5leHBvcnQgZnVuY3Rpb24gdXBkYXRlSXRlbUluQXJyYXk8VCBleHRlbmRzIE1vZGVsPihcbiAgZGF0YTogVFtdLFxuICBpdGVtOiBULFxuICBmb3JjZSA9IGZhbHNlLFxuICBjaGVja0Z1bmN0aW9uPzogY2hlY2tGdW5jdGlvblR5cGU8VD5cbik6IFRbXSB7XG4gIGNvbnN0IGluZGV4ID0gZGF0YS5maW5kSW5kZXgodiA9PlxuICAgIGNoZWNrRnVuY3Rpb24gPyBjaGVja0Z1bmN0aW9uKHYpIDogdi5pZCA9PT0gaXRlbS5pZFxuICApO1xuICBpZiAoaW5kZXggPCAwKSB7XG4gICAgcmV0dXJuIGRhdGE7XG4gIH1cbiAgY29uc3Qgb2xkSXRlbSA9IGRhdGFbaW5kZXhdO1xuICBpZiAob2xkSXRlbSBpbnN0YW5jZW9mIEJhc2VNb2RlbFdpdGhVcGRhdGVkQXQgJiYgaXRlbSBpbnN0YW5jZW9mIEJhc2VNb2RlbFdpdGhVcGRhdGVkQXQgJiZcbiAgICAhZm9yY2UgJiYgaXRlbS51cGRhdGVkQXQgJiYgb2xkSXRlbS51cGRhdGVkQXQgJiYgb2xkSXRlbS51cGRhdGVkQXQgPiBpdGVtLnVwZGF0ZWRBdFxuICApIHtcbiAgICByZXR1cm4gZGF0YTtcbiAgfVxuICBkYXRhW2luZGV4XSA9IGl0ZW07XG4gIHJldHVybiBkYXRhO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdXBkYXRlSXRlbXNJbkFycmF5PFQgZXh0ZW5kcyBNb2RlbD4oXG4gIGRhdGE6IFRbXSxcbiAgaXRlbXM6IFRbXSxcbiAgZm9yY2U6IGJvb2xlYW4gPSBmYWxzZSxcbiAgY2hlY2tGdW5jdGlvbj86IGNoZWNrRnVuY3Rpb25UeXBlPFQ+XG4pOiBUW10ge1xuICBpdGVtcy5mb3JFYWNoKGl0ZW0gPT4ge1xuICAgIGRhdGEgPSB1cGRhdGVJdGVtSW5BcnJheShkYXRhLCBpdGVtLCBmb3JjZSwgY2hlY2tGdW5jdGlvbik7XG4gIH0pO1xuICByZXR1cm4gZGF0YTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHBhdGNoSXRlbUluQXJyYXk8VCBleHRlbmRzIE1vZGVsPihcbiAgZGF0YTogVFtdLFxuICBpdGVtOiBULFxuICBjaGVja0Z1bmN0aW9uPzogY2hlY2tGdW5jdGlvblR5cGU8VD5cbik6IFRbXSB7XG4gIHJldHVybiBkYXRhLm1hcCh2ID0+IHtcbiAgICBpZiAoY2hlY2tGdW5jdGlvbiAmJiBpc0Z1bmN0aW9uKGNoZWNrRnVuY3Rpb24pKSB7XG4gICAgICBpZiAoIWNoZWNrRnVuY3Rpb24odikpIHtcbiAgICAgICAgcmV0dXJuIHY7XG4gICAgICB9XG4gICAgfSBlbHNlIGlmICh2LmlkICE9PSBpdGVtLmlkKSB7XG4gICAgICByZXR1cm4gdjtcbiAgICB9XG4gICAgcmV0dXJuIE9iamVjdC5hc3NpZ24odiwgaXRlbSk7XG4gIH0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gYWRkSXRlbUluQXJyYXk8VCBleHRlbmRzIE1vZGVsPihcbiAgZGF0YTogVFtdLFxuICBpdGVtOiBULFxuICBhdEVuZDogYm9vbGVhbiA9IGZhbHNlLFxuICBjaGVja0Z1bmN0aW9uPzogY2hlY2tGdW5jdGlvblR5cGU8VD5cbik6IFRbXSB7XG4gIGlmIChkYXRhLmZpbmQoaSA9PiBpc0Z1bmN0aW9uKGNoZWNrRnVuY3Rpb24pID8gY2hlY2tGdW5jdGlvbihpKSA6IGkuaWQgPT09IGl0ZW0uaWQpKSB7XG4gICAgcmV0dXJuIGRhdGE7XG4gIH1cblxuICByZXR1cm4gYXRFbmRcbiAgICA/IFsuLi5kYXRhLCBpdGVtXVxuICAgIDogW2l0ZW0sIC4uLmRhdGFdO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gYWRkSXRlbXNJbkFycmF5PFQgZXh0ZW5kcyBNb2RlbD4oXG4gIGRhdGE6IFRbXSxcbiAgaXRlbXM6IFRbXSxcbiAgYXRFbmQ6IGJvb2xlYW4gPSBmYWxzZSxcbiAgY2hlY2tGdW5jdGlvbj86IChpdGVtOiBUKSA9PiBib29sZWFuXG4pOiBUW10ge1xuICAoIWF0RW5kXG4gICAgPyBPYmplY3QuYXNzaWduKFtdLCBpdGVtcykucmV2ZXJzZSgpXG4gICAgOiBpdGVtc1xuICApLmZvckVhY2goaXRlbSA9PiB7XG4gICAgZGF0YSA9IGFkZEl0ZW1JbkFycmF5KGRhdGEsIGl0ZW0sIGF0RW5kLCBjaGVja0Z1bmN0aW9uKTtcbiAgfSk7XG4gIHJldHVybiBkYXRhO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZGVsZXRlSXRlbUZyb21BcnJheTxUIGV4dGVuZHMgTW9kZWw+KFxuICBkYXRhOiBUW10sXG4gIGl0ZW06IFQgfCBjaGVja0Z1bmN0aW9uVHlwZTxUPlxuKTogVFtdIHtcbiAgaWYgKGl0ZW0gaW5zdGFuY2VvZiBCYXNlTW9kZWxXaXRoSWQpIHtcbiAgICByZXR1cm4gZGF0YS5maWx0ZXIodiA9PiB2LmlkICE9PSBpdGVtLmlkKTtcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gZGF0YS5maWx0ZXIoaSA9PiAhaXRlbShpKSk7XG4gIH1cbn1cblxuZnVuY3Rpb24gaXNGdW5jdGlvbihmdW5jdGlvblRvQ2hlY2spIHtcbiAgcmV0dXJuIGZ1bmN0aW9uVG9DaGVjayAmJiB7fS50b1N0cmluZy5jYWxsKGZ1bmN0aW9uVG9DaGVjaykgPT09ICdbb2JqZWN0IEZ1bmN0aW9uXSc7XG59XG5cbmV4cG9ydCBjb25zdCBfID0ge1xuICBpbnNlcnQ6IDxUIGV4dGVuZHMgTW9kZWw+KFxuICAgIGRhdGE6IFRbXSwgaXRlbTogVCwgYXRFbmQgPSBmYWxzZSxcbiAgICBpbmRleEtleTogS2V5c01hdGNoaW5nPFQsIHN0cmluZyB8IG51bWJlcj4gPSBudWxsLFxuICApID0+IHtcbiAgICBpZiAoXy5pbmRleChkYXRhLCBpdGVtLCBpbmRleEtleSkgPiAtMSkge1xuICAgICAgcmV0dXJuIGRhdGE7XG4gICAgfVxuICAgIGlmIChhdEVuZCkge1xuICAgICAgcmV0dXJuIFtcbiAgICAgICAgLi4uZGF0YSxcbiAgICAgICAgaXRlbSxcbiAgICAgIF07XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBbXG4gICAgICAgIGl0ZW0sXG4gICAgICAgIC4uLmRhdGEsXG4gICAgICBdO1xuICAgIH1cbiAgfSxcbiAgdXBkYXRlOiA8VCBleHRlbmRzIE1vZGVsPihcbiAgICBkYXRhOiBUW10sIGl0ZW06IFQsIGZvcmNlID0gZmFsc2UsIHBhcnRpYWwgPSBmYWxzZSxcbiAgICBpbmRleEtleTogS2V5c01hdGNoaW5nPFQsIHN0cmluZyB8IG51bWJlcj4gPSBudWxsXG4gICkgPT4ge1xuICAgIGNvbnN0IGluZGV4ID0gXy5pbmRleChkYXRhLCBpdGVtLCBpbmRleEtleSk7XG4gICAgaWYgKGluZGV4IDwgMCkge1xuICAgICAgcmV0dXJuIGRhdGE7XG4gICAgfVxuICAgIGNvbnN0IG9sZEl0ZW0gPSBkYXRhW2luZGV4XTtcbiAgICBpZiAoIWZvcmNlICYmIGl0ZW0gaW5zdGFuY2VvZiBCYXNlTW9kZWxXaXRoVXBkYXRlZEF0ICYmIG9sZEl0ZW0gaW5zdGFuY2VvZiBCYXNlTW9kZWxXaXRoVXBkYXRlZEF0ICYmXG4gICAgICBpdGVtLnVwZGF0ZWRBdCAmJiBvbGRJdGVtLnVwZGF0ZWRBdCAmJiBvbGRJdGVtLnVwZGF0ZWRBdCA+IGl0ZW0udXBkYXRlZEF0XG4gICAgKSB7XG4gICAgICByZXR1cm4gZGF0YTtcbiAgICB9XG4gICAgaWYgKHBhcnRpYWwpIHtcbiAgICAgIGRhdGFbaW5kZXhdID0gXy5tb2RpZnkob2xkSXRlbSwgaXRlbSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGRhdGFbaW5kZXhdID0gaXRlbTtcbiAgICB9XG4gICAgcmV0dXJuIFsuLi5kYXRhXTtcbiAgfSxcbiAgaW5kZXg6IDxUIGV4dGVuZHMgTW9kZWw+KFxuICAgIGRhdGE6IFRbXSwgaXRlbTogVCxcbiAgICBpbmRleEtleTogS2V5c01hdGNoaW5nPFQsIHN0cmluZyB8IG51bWJlcj4gPSBudWxsLFxuICApOiBudW1iZXIgPT4ge1xuICAgIGlmICghaW5kZXhLZXkpIHtcbiAgICAgIGluZGV4S2V5ID0gJ2lkJyBhcyBLZXlzTWF0Y2hpbmc8VCwgc3RyaW5nIHwgbnVtYmVyPjtcbiAgICB9XG4gICAgcmV0dXJuIGRhdGEuZmluZEluZGV4KHYgPT4gdltpbmRleEtleV0gPT09IGl0ZW1baW5kZXhLZXldKTtcbiAgfSxcbiAgZGVsZXRlOiA8VCBleHRlbmRzIE1vZGVsPihcbiAgICBkYXRhOiBUW10sIGl0ZW06IFQsXG4gICAgaW5kZXhLZXk6IEtleXNNYXRjaGluZzxULCBzdHJpbmcgfCBudW1iZXI+ID0gbnVsbCxcbiAgKTogVFtdID0+IHtcbiAgICBjb25zdCBpbmRleCA9IF8uaW5kZXgoZGF0YSwgaXRlbSwgaW5kZXhLZXkpO1xuICAgIGlmIChpbmRleCA8IDApIHtcbiAgICAgIHJldHVybiBkYXRhO1xuICAgIH1cbiAgICBkYXRhLnNwbGljZShpbmRleCwgMSk7XG4gICAgcmV0dXJuIFsuLi5kYXRhXTtcbiAgfSxcbiAgZGVsZXRlQnk6IDxUIGV4dGVuZHMgTW9kZWw+KGRhdGE6IFRbXSwgY2hlY2tGdW5jdGlvbjogY2hlY2tGdW5jdGlvblR5cGU8VD4pOiBUW10gPT4ge1xuICAgIGRhdGEgPSBkYXRhLmZpbHRlcihjaGVja0Z1bmN0aW9uKTtcbiAgICByZXR1cm4gWy4uLmRhdGFdO1xuICB9LFxuICBpbmNsdWRlczogPFQgZXh0ZW5kcyBNb2RlbD4oZGF0YTogVFtdLCBpdGVtOiBULCBpbmRleEtleTogS2V5c01hdGNoaW5nPFQsIHN0cmluZyB8IG51bWJlcj4gPSBudWxsLCk6IGJvb2xlYW4gPT4ge1xuICAgIHJldHVybiBfLmluZGV4KGRhdGEsIGl0ZW0sIGluZGV4S2V5KSA+IC0xO1xuICB9LFxuICB1cHNlcnQ6IDxUIGV4dGVuZHMgTW9kZWw+KFxuICAgIGRhdGE6IFRbXSwgaXRlbTogVCwgYXRFbmQgPSBmYWxzZSwgZm9yY2UgPSBmYWxzZSxcbiAgICBpbmRleEtleTogS2V5c01hdGNoaW5nPFQsIHN0cmluZyB8IG51bWJlcj4gPSBudWxsLFxuICApOiBUW10gPT4ge1xuICAgIGlmIChfLmluY2x1ZGVzKGRhdGEsIGl0ZW0sIGluZGV4S2V5KSkge1xuICAgICAgcmV0dXJuIF8udXBkYXRlKGRhdGEsIGl0ZW0sIGZvcmNlLCBmYWxzZSwgaW5kZXhLZXkpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gXy5pbnNlcnQoZGF0YSwgaXRlbSwgYXRFbmQsIGluZGV4S2V5KTtcbiAgICB9XG4gIH0sXG4gIGluc2VydE1hbnk6IDxUIGV4dGVuZHMgTW9kZWw+KFxuICAgIGRhdGE6IFRbXSwgaXRlbXM6IFRbXSwgYXRFbmQgPSBmYWxzZSxcbiAgICBpbmRleEtleTogS2V5c01hdGNoaW5nPFQsIHN0cmluZyB8IG51bWJlcj4gPSBudWxsLFxuICApOiBUW10gPT4ge1xuICAgIGlmICghYXRFbmQpIHtcbiAgICAgIGRhdGEgPSBPYmplY3QuYXNzaWduKFtdLCBkYXRhKS5yZXZlcnNlKCk7XG4gICAgfVxuICAgIGZvciAoY29uc3QgaXRlbSBvZiBpdGVtcykge1xuICAgICAgZGF0YSA9IF8uaW5zZXJ0KGRhdGEsIGl0ZW0sIGF0RW5kLCBpbmRleEtleSk7XG4gICAgfVxuICAgIHJldHVybiBbLi4uZGF0YV07XG4gIH0sXG4gIHVwc2VydE1hbnk6IDxUIGV4dGVuZHMgTW9kZWw+KFxuICAgIGRhdGE6IFRbXSwgaXRlbXM6IFRbXSwgYXRFbmQgPSBmYWxzZSwgZm9yY2UgPSBmYWxzZSxcbiAgICBpbmRleEtleTogS2V5c01hdGNoaW5nPFQsIHN0cmluZyB8IG51bWJlcj4gPSBudWxsLFxuICApOiBUW10gPT4ge1xuICAgIGlmICghYXRFbmQpIHtcbiAgICAgIGRhdGEgPSBPYmplY3QuYXNzaWduKFtdLCBkYXRhKS5yZXZlcnNlKCk7XG4gICAgfVxuICAgIGZvciAoY29uc3QgaXRlbSBvZiBpdGVtcykge1xuICAgICAgZGF0YSA9IF8udXBzZXJ0KGRhdGEsIGl0ZW0sIGF0RW5kLCBmb3JjZSwgaW5kZXhLZXkpO1xuICAgIH1cbiAgICByZXR1cm4gWy4uLmRhdGFdO1xuICB9LFxuICBncm91cEJ5OiA8VCBleHRlbmRzIEJhc2VNb2RlbD4oZGF0YTogVFtdLCBrZXk6IEtleXNNYXRjaGluZzxULCBzdHJpbmcgfCBudW1iZXI+KTogTWFwcGVkTW9kZWw8VD4gPT4ge1xuICAgIHJldHVybiBkYXRhLnJlZHVjZSgoYWNjLCBpdGVtKSA9PiAoe1xuICAgICAgLi4uYWNjLFxuICAgICAgW2l0ZW1ba2V5XS50b1N0cmluZygpXTogaXRlbSxcbiAgICB9KSwge30pO1xuICB9LFxuICBmbGF0dGVuOiA8VCBleHRlbmRzIEJhc2VNb2RlbD4oZGF0YTogVFtdW10pOiBUW10gPT4ge1xuICAgIHJldHVybiBkYXRhLnJlZHVjZSgoYWNjLCBpdGVtcykgPT4gKFtcbiAgICAgIC4uLmFjYyxcbiAgICAgIC4uLml0ZW1zLFxuICAgIF0pLCBbXSk7XG4gIH0sXG4gIG1vZGlmeTogPFQgZXh0ZW5kcyBCYXNlTW9kZWw+KGluc3RhbmNlOiBULCBkYXRhOiB7W1Byb3BlcnR5IGluIGtleW9mIFRdPzogVFtQcm9wZXJ0eV19KSA9PiB7XG4gICAgcmV0dXJuIE9iamVjdC5hc3NpZ24oT2JqZWN0LmNyZWF0ZShpbnN0YW5jZSksIGluc3RhbmNlLCBkYXRhKTtcbiAgfVxufVxuIl19
@@ -3,8 +3,6 @@ export function handleError(error, force = false, production = true) {
3
3
  if (!(error && (error.status === 0 || error.status === 404)) || (force && error.status !== 0)) {
4
4
  captureException(error);
5
5
  }
6
- if (!production) {
7
- console.error(error);
8
- }
6
+ console.error(error);
9
7
  }
10
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9zcmMvdXRpbHMvZXJyb3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRW5ELE1BQU0sVUFBVSxXQUFXLENBQUMsS0FBSyxFQUFFLEtBQUssR0FBRyxLQUFLLEVBQUUsVUFBVSxHQUFHLElBQUk7SUFDakUsSUFBSSxDQUFDLENBQUMsS0FBSyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDLElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDLEVBQUU7UUFDN0YsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLENBQUM7S0FDekI7SUFFRCxJQUFJLENBQUMsVUFBVSxFQUFFO1FBQ2YsT0FBTyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztLQUN0QjtBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjYXB0dXJlRXhjZXB0aW9uIH0gZnJvbSAnQHNlbnRyeS9hbmd1bGFyJztcblxuZXhwb3J0IGZ1bmN0aW9uIGhhbmRsZUVycm9yKGVycm9yLCBmb3JjZSA9IGZhbHNlLCBwcm9kdWN0aW9uID0gdHJ1ZSkge1xuICBpZiAoIShlcnJvciAmJiAoZXJyb3Iuc3RhdHVzID09PSAwIHx8IGVycm9yLnN0YXR1cyA9PT0gNDA0KSkgfHwgKGZvcmNlICYmIGVycm9yLnN0YXR1cyAhPT0gMCkpIHtcbiAgICBjYXB0dXJlRXhjZXB0aW9uKGVycm9yKTtcbiAgfVxuXG4gIGlmICghcHJvZHVjdGlvbikge1xuICAgIGNvbnNvbGUuZXJyb3IoZXJyb3IpO1xuICB9XG59XG4iXX0=
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9zcmMvdXRpbHMvZXJyb3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRW5ELE1BQU0sVUFBVSxXQUFXLENBQUMsS0FBSyxFQUFFLEtBQUssR0FBRyxLQUFLLEVBQUUsVUFBVSxHQUFHLElBQUk7SUFDakUsSUFBSSxDQUFDLENBQUMsS0FBSyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDLElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDLEVBQUU7UUFDN0YsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLENBQUM7S0FDekI7SUFFRCxPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQ3ZCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjYXB0dXJlRXhjZXB0aW9uIH0gZnJvbSAnQHNlbnRyeS9hbmd1bGFyJztcblxuZXhwb3J0IGZ1bmN0aW9uIGhhbmRsZUVycm9yKGVycm9yLCBmb3JjZSA9IGZhbHNlLCBwcm9kdWN0aW9uID0gdHJ1ZSkge1xuICBpZiAoIShlcnJvciAmJiAoZXJyb3Iuc3RhdHVzID09PSAwIHx8IGVycm9yLnN0YXR1cyA9PT0gNDA0KSkgfHwgKGZvcmNlICYmIGVycm9yLnN0YXR1cyAhPT0gMCkpIHtcbiAgICBjYXB0dXJlRXhjZXB0aW9uKGVycm9yKTtcbiAgfVxuXG4gIGNvbnNvbGUuZXJyb3IoZXJyb3IpO1xufVxuIl19
@@ -0,0 +1,61 @@
1
+ import { Game } from '../models/game';
2
+ import { GameInvite } from '../models/game-invite';
3
+ import { GameUser } from '../models/game-user';
4
+ import { filter, map } from 'rxjs/operators';
5
+ import { Injectable } from '@angular/core';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "../services/centrifugo.service";
8
+ var GameWebsocketEvents;
9
+ (function (GameWebsocketEvents) {
10
+ GameWebsocketEvents["GAME_UPDATED"] = "GAME_UPDATED";
11
+ GameWebsocketEvents["GAME_CLOSED"] = "GAME_CLOSED";
12
+ GameWebsocketEvents["GAME_ARCHIVED"] = "GAME_ARCHIVED";
13
+ GameWebsocketEvents["GAME_DELETED"] = "GAME_DELETED";
14
+ GameWebsocketEvents["GAME_SCORE_UPDATED"] = "GAME_SCORE_UPDATED";
15
+ GameWebsocketEvents["GAME_INVITE_SENT"] = "GAME_INVITE_SENT";
16
+ GameWebsocketEvents["GAME_INVITE_ACCEPTED"] = "GAME_INVITE_ACCEPTED";
17
+ GameWebsocketEvents["GAME_INVITE_DECLINED"] = "GAME_INVITE_DECLINED";
18
+ GameWebsocketEvents["GAME_USER_ADDED"] = "GAME_USER_ADDED";
19
+ GameWebsocketEvents["GAME_USER_DELETED"] = "GAME_USER_DELETED";
20
+ GameWebsocketEvents["GAME_STATISTIC_UPDATED"] = "GAME_STATISTIC_UPDATED";
21
+ })(GameWebsocketEvents || (GameWebsocketEvents = {}));
22
+ export class GameWebsocket {
23
+ constructor(centrifugoService) {
24
+ this.centrifugoService = centrifugoService;
25
+ this.subscriptions = {};
26
+ }
27
+ onGameUpdated$(gameId) {
28
+ return this.centrifugoService.listen(`game_${gameId}`).pipe(filter(item => item.action === GameWebsocketEvents.GAME_UPDATED), map(item => new Game(item.data)));
29
+ }
30
+ onGameClosed$(gameId) {
31
+ return this.centrifugoService.listen(`game_${gameId}`).pipe(filter(item => item.action === GameWebsocketEvents.GAME_CLOSED), map(item => new Game(item.data)));
32
+ }
33
+ onGameDeleted$(gameId) {
34
+ return this.centrifugoService.listen(`game_${gameId}`).pipe(filter(item => item.action === GameWebsocketEvents.GAME_DELETED), map(item => new Game(item.data)));
35
+ }
36
+ onGameScoreUpdated$(gameId) {
37
+ return this.centrifugoService.listen(`game_${gameId}`).pipe(filter(item => item.action === GameWebsocketEvents.GAME_SCORE_UPDATED), map(item => new Game(item.data)));
38
+ }
39
+ onGameInviteSent(gameId) {
40
+ return this.centrifugoService.listen(`game_${gameId}`).pipe(filter(item => item.action === GameWebsocketEvents.GAME_INVITE_SENT), map(item => new GameInvite(item.data)));
41
+ }
42
+ onGameInviteAccepted(gameId) {
43
+ return this.centrifugoService.listen(`game_${gameId}`).pipe(filter(item => item.action === GameWebsocketEvents.GAME_INVITE_ACCEPTED), map(item => new GameInvite(item.data)));
44
+ }
45
+ onGameInviteDeclined(gameId) {
46
+ return this.centrifugoService.listen(`game_${gameId}`).pipe(filter(item => item.action === GameWebsocketEvents.GAME_INVITE_DECLINED), map(item => new GameInvite(item.data)));
47
+ }
48
+ onGameUserAdded(gameId) {
49
+ return this.centrifugoService.listen(`game_${gameId}`).pipe(filter(item => item.action === GameWebsocketEvents.GAME_USER_ADDED), map(item => new GameUser(item.data)));
50
+ }
51
+ onGameUserDeleted(gameId) {
52
+ return this.centrifugoService.listen(`game_${gameId}`).pipe(filter(item => item.action === GameWebsocketEvents.GAME_USER_DELETED), map(item => new GameUser(item.data)));
53
+ }
54
+ }
55
+ GameWebsocket.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: GameWebsocket, deps: [{ token: i1.CentrifugoService }], target: i0.ɵɵFactoryTarget.Injectable });
56
+ GameWebsocket.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: GameWebsocket, providedIn: 'root' });
57
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: GameWebsocket, decorators: [{
58
+ type: Injectable,
59
+ args: [{ providedIn: 'root' }]
60
+ }], ctorParameters: function () { return [{ type: i1.CentrifugoService }]; } });
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2FtZS53ZWJzb2NrZXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NyYy93ZWJzb2NrZXQvZ2FtZS53ZWJzb2NrZXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3RDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFL0MsT0FBTyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU3QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFFM0MsSUFBSyxtQkFZSjtBQVpELFdBQUssbUJBQW1CO0lBQ3RCLG9EQUE2QixDQUFBO0lBQzdCLGtEQUEyQixDQUFBO0lBQzNCLHNEQUErQixDQUFBO0lBQy9CLG9EQUE2QixDQUFBO0lBQzdCLGdFQUF5QyxDQUFBO0lBQ3pDLDREQUFxQyxDQUFBO0lBQ3JDLG9FQUE2QyxDQUFBO0lBQzdDLG9FQUE2QyxDQUFBO0lBQzdDLDBEQUFtQyxDQUFBO0lBQ25DLDhEQUF1QyxDQUFBO0lBQ3ZDLHdFQUFpRCxDQUFBO0FBQ25ELENBQUMsRUFaSSxtQkFBbUIsS0FBbkIsbUJBQW1CLFFBWXZCO0FBUUQsTUFBTSxPQUFPLGFBQWE7SUFHeEIsWUFDWSxpQkFBb0M7UUFBcEMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUh0QyxrQkFBYSxHQUFrQyxFQUFFLENBQUM7SUFLNUQsQ0FBQztJQUVELGNBQWMsQ0FBQyxNQUFjO1FBQzNCLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sQ0FBaUIsUUFBUSxNQUFNLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FDekUsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE1B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QUFpQixDQUFDLE1BQU0sQ0FBaUIsUUFBUSxNQUFNLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FDekUsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sS0FBSyxtQkFBbUIsQ0FBQyxlQUFlLENBQUMsRUFDbkUsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQ3JDLENBQUM7SUFDSixDQUFDO0lBRUQsaUJBQWlCLENBQUMsTUFBYztRQUM5QixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLENBQWlCLFFBQVEsTUFBTSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQ3pFLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLEtBQUssbUJBQW1CLENBQUMsaUJBQWlCLENBQUMsRUFDckUsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQ3JDLENBQUM7SUFDSixDQUFDOzsyR0FyRVUsYUFBYTsrR0FBYixhQUFhLGNBREQsTUFBTTs0RkFDbEIsYUFBYTtrQkFEekIsVUFBVTttQkFBQyxFQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBHYW1lIH0gZnJvbSAnLi4vbW9kZWxzL2dhbWUnO1xuaW1wb3J0IHsgR2FtZUludml0ZSB9IGZyb20gJy4uL21vZGVscy9nYW1lLWludml0ZSc7XG5pbXBvcnQgeyBHYW1lVXNlciB9IGZyb20gJy4uL21vZGVscy9nYW1lLXVzZXInO1xuaW1wb3J0IHsgQ2VudHJpZnVnb1NlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9jZW50cmlmdWdvLnNlcnZpY2UnO1xuaW1wb3J0IHsgZmlsdGVyLCBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZW51bSBHYW1lV2Vic29ja2V0RXZlbnRzIHtcbiAgR0FNRV9VUERBVEVEID0gJ0dBTUVfVVBEQVRFRCcsXG4gIEdBTUVfQ0xPU0VEID0gJ0dBTUVfQ0xPU0VEJyxcbiAgR0FNRV9BUkNISVZFRCA9ICdHQU1FX0FSQ0hJVkVEJyxcbiAgR0FNRV9ERUxFVEVEID0gJ0dBTUVfREVMRVRFRCcsXG4gIEdBTUVfU0NPUkVfVVBEQVRFRCA9ICdHQU1FX1NDT1JFX1VQREFURUQnLFxuICBHQU1FX0lOVklURV9TRU5UID0gJ0dBTUVfSU5WSVRFX1NFTlQnLFxuICBHQU1FX0lOVklURV9BQ0NFUFRFRCA9ICdHQU1FX0lOVklURV9BQ0NFUFRFRCcsXG4gIEdBTUVfSU5WSVRFX0RFQ0xJTkVEID0gJ0dBTUVfSU5WSVRFX0RFQ0xJTkVEJyxcbiAgR0FNRV9VU0VSX0FEREVEID0gJ0dBTUVfVVNFUl9BRERFRCcsXG4gIEdBTUVfVVNFUl9ERUxFVEVEID0gJ0dBTUVfVVNFUl9ERUxFVEVEJyxcbiAgR0FNRV9TVEFUSVNUSUNfVVBEQVRFRCA9ICdHQU1FX1NUQVRJU1RJQ19VUERBVEVEJyxcbn1cblxuaW50ZXJmYWNlIFdlYnNvY2tldEV2ZW50IHtcbiAgYWN0aW9uOiBHYW1lV2Vic29ja2V0RXZlbnRzO1xuICBkYXRhOiB7W2tleTogc3RyaW5nXTogYW55fTtcbn1cblxuQEluamVjdGFibGUoe3Byb3ZpZGVkSW46ICdyb290J30pXG5leHBvcnQgY2xhc3MgR2FtZVdlYnNvY2tldCB7XG4gIHByb3RlY3RlZCBzdWJzY3JpcHRpb25zOiB7W2tleTogbnVtYmVyXTogU3Vic2NyaXB0aW9ufSA9IHt9O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBjZW50cmlmdWdvU2VydmljZTogQ2VudHJpZnVnb1NlcnZpY2UsXG4gICkge1xuICB9XG5cbiAgb25HYW1lVXBkYXRlZCQoZ2FtZUlkOiBudW1iZXIpOiBPYnNlcnZhYmxlPEdhbWU+IHtcbiAgICByZXR1cm4gdGhpcy5jZW50cmlmdWdvU2VydmljZS5saXN0ZW48V2Vic29ja2V0RXZlbnQ+KGBnYW1lXyR7Z2FtZUlkfWApLnBpcGUoXG4gICAgICBmaWx0ZXIoaXRlbSA9PiBpdGVtLmFjdGlvbiA9PT0gR2FtZVdlYnNvY2tldEV2ZW50cy5HQU1FX1VQREFURUQpLFxuICAgICAgbWFwKGl0ZW0gPT4gbmV3IEdhbWUoaXRlbS5kYXRhKSksXG4gICAgKTtcbiAgfVxuXG4gIG9uR2FtZUNsb3NlZCQoZ2FtZUlkOiBudW1iZXIpOiBPYnNlcnZhYmxlPEdhbWU+IHtcbiAgICByZXR1cm4gdGhpcy5jZW50cmlmdWdvU2VydmljZS5saXN0ZW48V2Vic29ja2V0RXZlbnQ+KGBnYW1lXyR7Z2FtZUlkfWApLnBpcGUoXG4gICAgICBmaWx0ZXIoaXRlbSA9PiBpdGVtLmFjdGlvbiA9PT0gR2FtZVdlYnNvY2tldEV2ZW50cy5HQU1FX0NMT1NFRCksXG4gICAgICBtYXAoaXRlbSA9PiBuZXcgR2FtZShpdGVtLmRhdGEpKSxcbiAgICApO1xuICB9XG5cbiAgb25HYW1lRGVsZXRlZCQoZ2FtZUlkOiBudW1iZXIpOiBPYnNlcnZhYmxlPEdhbWU+IHtcbiAgICByZXR1cm4gdGhpcy5jZW50cmlmdWdvU2VydmljZS5saXN0ZW48V2Vic29ja2V0RXZlbnQ+KGBnYW1lXyR7Z2FtZUlkfWApLnBpcGUoXG4gICAgICBmaWx0ZXIoaXRlbSA9PiBpdGVtLmFjdGlvbiA9PT0gR2FtZVdlYnNvY2tldEV2ZW50cy5HQU1FX0RFTEVURUQpLFxuICAgICAgbWFwKGl0ZW0gPT4gbmV3IEdhbWUoaXRlbS5kYXRhKSksXG4gICAgKTtcbiAgfVxuXG4gIG9uR2FtZVNjb3JlVXBkYXRlZCQoZ2FtZUlkOiBudW1iZXIpOiBPYnNlcnZhYmxlPEdhbWU+IHtcbiAgICByZXR1cm4gdGhpcy5jZW50cmlmdWdvU2VydmljZS5saXN0ZW48V2Vic29ja2V0RXZlbnQ+KGBnYW1lXyR7Z2FtZUlkfWApLnBpcGUoXG4gICAgICBmaWx0ZXIoaXRlbSA9PiBpdGVtLmFjdGlvbiA9PT0gR2FtZVdlYnNvY2tldEV2ZW50cy5HQU1FX1NDT1JFX1VQREFURUQpLFxuICAgICAgbWFwKGl0ZW0gPT4gbmV3IEdhbWUoaXRlbS5kYXRhKSksXG4gICAgKTtcbiAgfVxuXG4gIG9uR2FtZUludml0ZVNlbnQoZ2FtZUlkOiBudW1iZXIpOiBPYnNlcnZhYmxlPEdhbWVJbnZpdGU+IHtcbiAgICByZXR1cm4gdGhpcy5jZW50cmlmdWdvU2VydmljZS5saXN0ZW48V2Vic29ja2V0RXZlbnQ+KGBnYW1lXyR7Z2FtZUlkfWApLnBpcGUoXG4gICAgICBmaWx0ZXIoaXRlbSA9PiBpdGVtLmFjdGlvbiA9PT0gR2FtZVdlYnNvY2tldEV2ZW50cy5HQU1FX0lOVklURV9TRU5UKSxcbiAgICAgIG1hcChpdGVtID0+IG5ldyBHYW1lSW52aXRlKGl0ZW0uZGF0YSkpLFxuICAgICk7XG4gIH1cblxuICBvbkdhbWVJbnZpdGVBY2NlcHRlZChnYW1lSWQ6IG51bWJlcik6IE9ic2VydmFibGU8R2FtZUludml0ZT4ge1xuICAgIHJldHVybiB0aGlzLmNlbnRyaWZ1Z29TZXJ2aWNlLmxpc3RlbjxXZWJzb2NrZXRFdmVudD4oYGdhbWVfJHtnYW1lSWR9YCkucGlwZShcbiAgICAgIGZpbHRlcihpdGVtID0+IGl0ZW0uYWN0aW9uID09PSBHYW1lV2Vic29ja2V0RXZlbnRzLkdBTUVfSU5WSVRFX0FDQ0VQVEVEKSxcbiAgICAgIG1hcChpdGVtID0+IG5ldyBHYW1lSW52aXRlKGl0ZW0uZGF0YSkpLFxuICAgICk7XG4gIH1cblxuICBvbkdhbWVJbnZpdGVEZWNsaW5lZChnYW1lSWQ6IG51bWJlcik6IE9ic2VydmFibGU8R2FtZUludml0ZT4ge1xuICAgIHJldHVybiB0aGlzLmNlbnRyaWZ1Z29TZXJ2aWNlLmxpc3RlbjxXZWJzb2NrZXRFdmVudD4oYGdhbWVfJHtnYW1lSWR9YCkucGlwZShcbiAgICAgIGZpbHRlcihpdGVtID0+IGl0ZW0uYWN0aW9uID09PSBHYW1lV2Vic29ja2V0RXZlbnRzLkdBTUVfSU5WSVRFX0RFQ0xJTkVEKSxcbiAgICAgIG1hcChpdGVtID0+IG5ldyBHYW1lSW52aXRlKGl0ZW0uZGF0YSkpLFxuICAgICk7XG4gIH1cblxuICBvbkdhbWVVc2VyQWRkZWQoZ2FtZUlkOiBudW1iZXIpOiBPYnNlcnZhYmxlPEdhbWVVc2VyPiB7XG4gICAgcmV0dXJuIHRoaXMuY2VudHJpZnVnb1NlcnZpY2UubGlzdGVuPFdlYnNvY2tldEV2ZW50PihgZ2FtZV8ke2dhbWVJZH1gKS5waXBlKFxuICAgICAgZmlsdGVyKGl0ZW0gPT4gaXRlbS5hY3Rpb24gPT09IEdhbWVXZWJzb2NrZXRFdmVudHMuR0FNRV9VU0VSX0FEREVEKSxcbiAgICAgIG1hcChpdGVtID0+IG5ldyBHYW1lVXNlcihpdGVtLmRhdGEpKSxcbiAgICApO1xuICB9XG5cbiAgb25HYW1lVXNlckRlbGV0ZWQoZ2FtZUlkOiBudW1iZXIpOiBPYnNlcnZhYmxlPEdhbWVVc2VyPiB7XG4gICAgcmV0dXJuIHRoaXMuY2VudHJpZnVnb1NlcnZpY2UubGlzdGVuPFdlYnNvY2tldEV2ZW50PihgZ2FtZV8ke2dhbWVJZH1gKS5waXBlKFxuICAgICAgZmlsdGVyKGl0ZW0gPT4gaXRlbS5hY3Rpb24gPT09IEdhbWVXZWJzb2NrZXRFdmVudHMuR0FNRV9VU0VSX0RFTEVURUQpLFxuICAgICAgbWFwKGl0ZW0gPT4gbmV3IEdhbWVVc2VyKGl0ZW0uZGF0YSkpLFxuICAgICk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export * from './game.websocket';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL3dlYnNvY2tldC9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsa0JBQWtCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2dhbWUud2Vic29ja2V0JztcbiJdfQ==