@mtgame/core 0.1.6 → 0.1.7

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.
@@ -139,13 +139,13 @@ function listField(modelClass) {
139
139
  if (!Array.isArray(value)) {
140
140
  return [];
141
141
  }
142
- return modelClass.toFront(value);
142
+ return value.map(function (item) { return modelClass.toFront(item); });
143
143
  },
144
144
  toBack: function (value) {
145
145
  if (!Array.isArray(value)) {
146
146
  return [];
147
147
  }
148
- return modelClass.toBack(value);
148
+ return value.map(function (item) { return modelClass.toBack(item); });
149
149
  }
150
150
  };
151
151
  }
@@ -1564,6 +1564,121 @@ var HandballGameConfig = /** @class */ (function (_super) {
1564
1564
  return HandballGameConfig;
1565
1565
  }(BaseModel));
1566
1566
 
1567
+ function generateArray(length) {
1568
+ if (length <= 0) {
1569
+ return [];
1570
+ }
1571
+ return Array.apply(null, Array(length)).map(function (_, i) { return i + 1; });
1572
+ }
1573
+ function getArrayChunks(array, length) {
1574
+ var chunks = [];
1575
+ var chunkLength = Math.ceil(array.length / length);
1576
+ if (chunkLength === 0) {
1577
+ return [array];
1578
+ }
1579
+ for (var i = 0; i < chunkLength; i++) {
1580
+ chunks.push(array.slice(i * length, (i + 1) * length));
1581
+ }
1582
+ return chunks;
1583
+ }
1584
+
1585
+ var PlayoffTypes;
1586
+ (function (PlayoffTypes) {
1587
+ PlayoffTypes["double_elimination"] = "double_elimination";
1588
+ PlayoffTypes["elimination"] = "elimination";
1589
+ })(PlayoffTypes || (PlayoffTypes = {}));
1590
+ var PlayoffSettings = /** @class */ (function (_super) {
1591
+ __extends(PlayoffSettings, _super);
1592
+ function PlayoffSettings() {
1593
+ return _super !== null && _super.apply(this, arguments) || this;
1594
+ }
1595
+ PlayoffSettings.toFront = function (data) { };
1596
+ PlayoffSettings.toBack = function (data) { };
1597
+ __decorate([
1598
+ ToFrontHook
1599
+ ], PlayoffSettings, "toFront", null);
1600
+ __decorate([
1601
+ ToBackHook
1602
+ ], PlayoffSettings, "toBack", null);
1603
+ PlayoffSettings = __decorate([
1604
+ ModelInstance({
1605
+ mappingFields: {
1606
+ rounds: 'rounds',
1607
+ final_rounds: 'finalRounds',
1608
+ third_place_rounds: 'thirdPlaceRounds',
1609
+ teams_count: 'teamsCount',
1610
+ type: 'type',
1611
+ min_player_games_count: 'minPlayerGamesCount',
1612
+ min_player_time: 'minPlayerTime',
1613
+ },
1614
+ relation: {
1615
+ type: enumField(PlayoffTypes)
1616
+ }
1617
+ })
1618
+ ], PlayoffSettings);
1619
+ return PlayoffSettings;
1620
+ }(BaseModel));
1621
+ var Playoff = /** @class */ (function (_super) {
1622
+ __extends(Playoff, _super);
1623
+ function Playoff() {
1624
+ var _this = _super !== null && _super.apply(this, arguments) || this;
1625
+ _this.stages = [];
1626
+ return _this;
1627
+ }
1628
+ Playoff.toFront = function (data) { };
1629
+ Playoff.toBack = function (data) { };
1630
+ Object.defineProperty(Playoff.prototype, "stagesCount", {
1631
+ get: function () {
1632
+ return Math.log(this.settings.teamsCount) / Math.log(2);
1633
+ },
1634
+ enumerable: true,
1635
+ configurable: true
1636
+ });
1637
+ Playoff.prototype.getPlayoffStages = function () {
1638
+ var _this = this;
1639
+ if (this.stages.length === 0 && this.settings.teamsCount) {
1640
+ var stagesCount = Math.log(this.settings.teamsCount) / Math.log(2);
1641
+ this.stages = generateArray(stagesCount).map(function (stage) {
1642
+ var playoffStage = _this.settings.teamsCount / Math.pow(2, stage);
1643
+ var title = '';
1644
+ if (playoffStage === 1) {
1645
+ title = 'Финал';
1646
+ }
1647
+ else {
1648
+ title = "1 / " + playoffStage;
1649
+ }
1650
+ return {
1651
+ value: stage,
1652
+ title: title
1653
+ };
1654
+ });
1655
+ }
1656
+ return this.stages;
1657
+ };
1658
+ __decorate([
1659
+ ToFrontHook
1660
+ ], Playoff, "toFront", null);
1661
+ __decorate([
1662
+ ToBackHook
1663
+ ], Playoff, "toBack", null);
1664
+ Playoff = __decorate([
1665
+ ModelInstance({
1666
+ mappingFields: {
1667
+ id: 'id',
1668
+ name: 'name',
1669
+ settings: 'settings',
1670
+ tournament_id: 'tournamentId',
1671
+ tournament_stage_id: 'tournamentStageId',
1672
+ is_official: 'isOfficial'
1673
+ },
1674
+ relation: {
1675
+ settings: PlayoffSettings
1676
+ }
1677
+ })
1678
+ ], Playoff);
1679
+ return Playoff;
1680
+ }(BaseModel));
1681
+
1567
1682
  var GameStatuses;
1568
1683
  (function (GameStatuses) {
1569
1684
  GameStatuses[GameStatuses["open"] = 1] = "open";
@@ -1675,6 +1790,7 @@ var Game = /** @class */ (function (_super) {
1675
1790
  playoff_stage: 'playoffStage',
1676
1791
  tournament_stage_id: 'tournamentStageId',
1677
1792
  tournament_playoff_id: 'tournamentPlayoffId',
1793
+ tournament_playoff: 'tournamentPlayoff',
1678
1794
  tournament_court: 'tournamentCourt',
1679
1795
  media_count: 'mediaCount',
1680
1796
  media_live_count: 'mediaLiveCount',
@@ -1692,6 +1808,7 @@ var Game = /** @class */ (function (_super) {
1692
1808
  hockeyGameConfig: HockeyGameConfig,
1693
1809
  footballGameConfig: FootballGameConfig,
1694
1810
  handballGameConfig: HandballGameConfig,
1811
+ tournamentPlayoff: Playoff,
1695
1812
  tournamentCourt: LeagueCourt,
1696
1813
  media: listField(MediaItem),
1697
1814
  tournament: Tournament,
@@ -2486,6 +2603,40 @@ var GameUser = /** @class */ (function (_super) {
2486
2603
  return GameUser;
2487
2604
  }(BaseModel));
2488
2605
 
2606
+ var GameUserLimitationTypes;
2607
+ (function (GameUserLimitationTypes) {
2608
+ GameUserLimitationTypes["min_user_games_count"] = "min_user_games_count";
2609
+ GameUserLimitationTypes["min_user_time"] = "min_user_time";
2610
+ })(GameUserLimitationTypes || (GameUserLimitationTypes = {}));
2611
+ var GameUserLimitations = /** @class */ (function (_super) {
2612
+ __extends(GameUserLimitations, _super);
2613
+ function GameUserLimitations() {
2614
+ return _super !== null && _super.apply(this, arguments) || this;
2615
+ }
2616
+ GameUserLimitations.toFront = function (data) {
2617
+ };
2618
+ GameUserLimitations.toBack = function (data) {
2619
+ };
2620
+ __decorate([
2621
+ ToFrontHook
2622
+ ], GameUserLimitations, "toFront", null);
2623
+ __decorate([
2624
+ ToBackHook
2625
+ ], GameUserLimitations, "toBack", null);
2626
+ GameUserLimitations = __decorate([
2627
+ ModelInstance({
2628
+ mappingFields: {
2629
+ tournament_team_user_id: 'tournamentTeamUserId',
2630
+ limitations: 'limitations'
2631
+ },
2632
+ relation: {
2633
+ limitations: listField(enumField(GameUserLimitationTypes))
2634
+ }
2635
+ })
2636
+ ], GameUserLimitations);
2637
+ return GameUserLimitations;
2638
+ }(BaseModel));
2639
+
2489
2640
  var GameBaseApi = /** @class */ (function () {
2490
2641
  function GameBaseApi(httpClient, configService) {
2491
2642
  this.httpClient = httpClient;
@@ -2505,6 +2656,13 @@ var GameBaseApi = /** @class */ (function () {
2505
2656
  });
2506
2657
  });
2507
2658
  };
2659
+ GameBaseApi.prototype.getUsersLimitation = function (gameId) {
2660
+ return __awaiter(this, void 0, void 0, function () {
2661
+ return __generator(this, function (_a) {
2662
+ return [2 /*return*/, this.httpClient.get(this.configService.get('apiUrl') + "/api/v1/tournament_game/" + gameId + "/users_limitation/").pipe(map(function (result) { return GameUserLimitations.toFront(result); })).toPromise()];
2663
+ });
2664
+ });
2665
+ };
2508
2666
  GameBaseApi.ctorParameters = function () { return [
2509
2667
  { type: HttpClient },
2510
2668
  { type: ConfigService }
@@ -4255,119 +4413,6 @@ var TournamentStage = /** @class */ (function (_super) {
4255
4413
  return TournamentStage;
4256
4414
  }(BaseModel));
4257
4415
 
4258
- function generateArray(length) {
4259
- if (length <= 0) {
4260
- return [];
4261
- }
4262
- return Array.apply(null, Array(length)).map(function (_, i) { return i + 1; });
4263
- }
4264
- function getArrayChunks(array, length) {
4265
- var chunks = [];
4266
- var chunkLength = Math.ceil(array.length / length);
4267
- if (chunkLength === 0) {
4268
- return [array];
4269
- }
4270
- for (var i = 0; i < chunkLength; i++) {
4271
- chunks.push(array.slice(i * length, (i + 1) * length));
4272
- }
4273
- return chunks;
4274
- }
4275
-
4276
- var PlayoffTypes;
4277
- (function (PlayoffTypes) {
4278
- PlayoffTypes["double_elimination"] = "double_elimination";
4279
- PlayoffTypes["elimination"] = "elimination";
4280
- })(PlayoffTypes || (PlayoffTypes = {}));
4281
- var PlayoffSettings = /** @class */ (function (_super) {
4282
- __extends(PlayoffSettings, _super);
4283
- function PlayoffSettings() {
4284
- return _super !== null && _super.apply(this, arguments) || this;
4285
- }
4286
- PlayoffSettings.toFront = function (data) { };
4287
- PlayoffSettings.toBack = function (data) { };
4288
- __decorate([
4289
- ToFrontHook
4290
- ], PlayoffSettings, "toFront", null);
4291
- __decorate([
4292
- ToBackHook
4293
- ], PlayoffSettings, "toBack", null);
4294
- PlayoffSettings = __decorate([
4295
- ModelInstance({
4296
- mappingFields: {
4297
- rounds: 'rounds',
4298
- final_rounds: 'finalRounds',
4299
- third_place_rounds: 'thirdPlaceRounds',
4300
- teams_count: 'teamsCount',
4301
- type: 'type',
4302
- },
4303
- relation: {
4304
- type: enumField(PlayoffTypes)
4305
- }
4306
- })
4307
- ], PlayoffSettings);
4308
- return PlayoffSettings;
4309
- }(BaseModel));
4310
- var Playoff = /** @class */ (function (_super) {
4311
- __extends(Playoff, _super);
4312
- function Playoff() {
4313
- var _this = _super !== null && _super.apply(this, arguments) || this;
4314
- _this.stages = [];
4315
- return _this;
4316
- }
4317
- Playoff.toFront = function (data) { };
4318
- Playoff.toBack = function (data) { };
4319
- Object.defineProperty(Playoff.prototype, "stagesCount", {
4320
- get: function () {
4321
- return Math.log(this.settings.teamsCount) / Math.log(2);
4322
- },
4323
- enumerable: true,
4324
- configurable: true
4325
- });
4326
- Playoff.prototype.getPlayoffStages = function () {
4327
- var _this = this;
4328
- if (this.stages.length === 0 && this.settings.teamsCount) {
4329
- var stagesCount = Math.log(this.settings.teamsCount) / Math.log(2);
4330
- this.stages = generateArray(stagesCount).map(function (stage) {
4331
- var playoffStage = _this.settings.teamsCount / Math.pow(2, stage);
4332
- var title = '';
4333
- if (playoffStage === 1) {
4334
- title = 'Финал';
4335
- }
4336
- else {
4337
- title = "1 / " + playoffStage;
4338
- }
4339
- return {
4340
- value: stage,
4341
- title: title
4342
- };
4343
- });
4344
- }
4345
- return this.stages;
4346
- };
4347
- __decorate([
4348
- ToFrontHook
4349
- ], Playoff, "toFront", null);
4350
- __decorate([
4351
- ToBackHook
4352
- ], Playoff, "toBack", null);
4353
- Playoff = __decorate([
4354
- ModelInstance({
4355
- mappingFields: {
4356
- id: 'id',
4357
- name: 'name',
4358
- settings: 'settings',
4359
- tournament_id: 'tournamentId',
4360
- tournament_stage_id: 'tournamentStageId',
4361
- is_official: 'isOfficial'
4362
- },
4363
- relation: {
4364
- settings: PlayoffSettings
4365
- }
4366
- })
4367
- ], Playoff);
4368
- return Playoff;
4369
- }(BaseModel));
4370
-
4371
4416
  var VolleyballStatistic = /** @class */ (function (_super) {
4372
4417
  __extends(VolleyballStatistic, _super);
4373
4418
  function VolleyballStatistic() {
@@ -8284,6 +8329,12 @@ var VolleyballGameLogTypeLocalization = (_a$8 = {},
8284
8329
  _a$8[VolleyballGameLogType.yellow_card] = 'Предупреждение',
8285
8330
  _a$8);
8286
8331
 
8332
+ var _a$9;
8333
+ var GameUserLimitationTypeLocalization = (_a$9 = {},
8334
+ _a$9[GameUserLimitationTypes.min_user_games_count] = 'Минимальное количество матчей для допуска до плей-офф',
8335
+ _a$9[GameUserLimitationTypes.min_user_time] = 'Минимальное количество минут для допуска до плей-офф',
8336
+ _a$9);
8337
+
8287
8338
  var LeaguePlaylist = /** @class */ (function (_super) {
8288
8339
  __extends(LeaguePlaylist, _super);
8289
8340
  function LeaguePlaylist() {
@@ -8733,5 +8784,5 @@ var HttpCookieInterceptor = /** @class */ (function () {
8733
8784
  * Generated bundle index. Do not edit.
8734
8785
  */
8735
8786
 
8736
- export { BannerLocation, BaseModel, BaseService, BasketballGameApi, BasketballGameConfig, BasketballGameLog, BasketballGameLogTypeLocalization, BasketballGameLogTypes, BasketballGameStatistic, BasketballGameTeamStatistic, BasketballProfile, BasketballStatistic, BasketballStatisticTypes, CONFIG_DATA, CentrifugoService, City, ConfigService, DateField, DateTimeField, FAULT_LOG_TYPES, Feedback, FeedbackApi, File, FileApi, FileEngine, FootballGameApi, FootballGameConfig, FootballGameLog, FootballGameLogTypeLocalization, FootballGameLogTypes, FootballGameStatistic, FootballGameTeamStatistic, FootballProfile, FootballStatistic, FootballWorkFoot, FootballWorkFootLocalization, Game, GameBaseApi, GameBasketballPosition, GameBasketballPositionLocalization, GameBasketballPositionShortLocalization, GameFootballPosition, GameFootballPositionLocalization, GameHandballPosition, GameHandballPositionLocalization, GameHockeyPosition, GameHockeyPositionLocalization, GameInvite, GameInviteStatus, GameResultTypes, GameStatuses, GameTimeTypes, GameTimelineStageItem, GameTimelineStages, GameUser, GameVolleyballPosition, GameVolleyballPositionLocalization, GameVolleyballPositionShortLocalization, GameVolleyballPositionShortRuLocalization, HandballGameApi, HandballGameConfig, HandballGameLog, HandballGameLogTypeLocalization, HandballGameLogTypes, HandballGameStatistic, HandballGameTeamStatistic, HandballProfile, HandballStatistic, HockeyAdvantageTypes, HockeyGameApi, HockeyGameConfig, HockeyGameLog, HockeyGameLogTypeLocalization, HockeyGameLogTypes, HockeyGameStatistic, HockeyGameTeamStatistic, HockeyPenaltyTypes, HockeyProfile, HockeyStatistic, HockeyWorkHand, HttpCookieInterceptor, League, LeagueApi, LeagueBanner, LeagueCourt, LeagueDocument, LeagueNews, LeagueNewsApi, LeagueNewsType, LeaguePartner, LeaguePlayer, LeaguePlaylist, LocalStorageEngine, MODEL_MAPPING_FIELDS_KEY, MODEL_RELATION_KEY, MODEL_TO_BACK_KEY, MODEL_TO_FRONT_KEY, MediaApi, MediaItem, ModelInstance, Notification, NotificationAllowTypes, NotificationApi, NotificationBaseApi, NotificationServiceEnum, NotificationSettings, NotificationType, OrgNotificationApi, Organization, OvertimeTypeLocalization, OvertimeTypes, Playoff, PlayoffSettings, PlayoffTypes, Poll, PollAnswer, PollStatuses, PollVariant, PublicTeamApi, PublicUserApi, ReferenceApi, SCORE_LOG_TYPES, Sport, SportTypes, StorageEngine, StorageEngineField, Store, Team, TeamAccess, TeamApi, TeamEvent, TeamEventApi, TeamEventInvite, TeamEventInviteStatuses, TeamEventTypeLocalization, TeamEventTypes, TeamInvite, TeamInviteExternal, TeamPermission, TeamPermissionTypes, TeamUser, TeamUserRole, TeamUserRoleLocalization, ToBackHook, ToFrontHook, Tournament, TournamentApi, TournamentDisqualification, TournamentEvent, TournamentEventTypes, TournamentGender, TournamentGroup, TournamentInvite, TournamentJoinApi, TournamentJoinData, TournamentJoinTeam, TournamentNews, TournamentSeason, TournamentSeasonApi, TournamentSeasonStatuses, TournamentSettings, TournamentStage, TournamentStageApi, TournamentStageStatuses, TournamentStageTeam, TournamentStatuses, TournamentTeam, TournamentTeamUser, TournamentTeamUserInvite, TournamentTeamWinner, TournamentTypes, UntilDestroy, User, UserAccess, UserApi, UserGender, UserPermission, UserPermissionTypes, UserProfile, VolleyballGameApi, VolleyballGameConfig, VolleyballGameLog, VolleyballGameLogType, VolleyballGameLogTypeLocalization, VolleyballGameStatistic, VolleyballGameTeamStatistic, VolleyballGameTypes, VolleyballProfile, VolleyballStatistic, VolleyballStatisticTypes, VolleyballWorkHand, VolleyballWorkHandLocalization, WorkHand, WorkHandLocalization, addItemInArray, changeFavicons, componentDestroyed, deleteItemFromArray, enumField, fileSizeValidator, generateArray, getArrayChunks, getCookie, getEnumOptions, getIconsData, handleError, isTouchDevice, listField, markFormGroupTouched, minLengthArrayValidator, patchItemInArray, penaltyTypeField, updateItemInArray, updateItemsInArray, validateDate, validateEmail, validatePhone, validateUrl };
8787
+ export { BannerLocation, BaseModel, BaseService, BasketballGameApi, BasketballGameConfig, BasketballGameLog, BasketballGameLogTypeLocalization, BasketballGameLogTypes, BasketballGameStatistic, BasketballGameTeamStatistic, BasketballProfile, BasketballStatistic, BasketballStatisticTypes, CONFIG_DATA, CentrifugoService, City, ConfigService, DateField, DateTimeField, FAULT_LOG_TYPES, Feedback, FeedbackApi, File, FileApi, FileEngine, FootballGameApi, FootballGameConfig, FootballGameLog, FootballGameLogTypeLocalization, FootballGameLogTypes, FootballGameStatistic, FootballGameTeamStatistic, FootballProfile, FootballStatistic, FootballWorkFoot, FootballWorkFootLocalization, Game, GameBaseApi, GameBasketballPosition, GameBasketballPositionLocalization, GameBasketballPositionShortLocalization, GameFootballPosition, GameFootballPositionLocalization, GameHandballPosition, GameHandballPositionLocalization, GameHockeyPosition, GameHockeyPositionLocalization, GameInvite, GameInviteStatus, GameResultTypes, GameStatuses, GameTimeTypes, GameTimelineStageItem, GameTimelineStages, GameUser, GameUserLimitationTypeLocalization, GameUserLimitationTypes, GameUserLimitations, GameVolleyballPosition, GameVolleyballPositionLocalization, GameVolleyballPositionShortLocalization, GameVolleyballPositionShortRuLocalization, HandballGameApi, HandballGameConfig, HandballGameLog, HandballGameLogTypeLocalization, HandballGameLogTypes, HandballGameStatistic, HandballGameTeamStatistic, HandballProfile, HandballStatistic, HockeyAdvantageTypes, HockeyGameApi, HockeyGameConfig, HockeyGameLog, HockeyGameLogTypeLocalization, HockeyGameLogTypes, HockeyGameStatistic, HockeyGameTeamStatistic, HockeyPenaltyTypes, HockeyProfile, HockeyStatistic, HockeyWorkHand, HttpCookieInterceptor, League, LeagueApi, LeagueBanner, LeagueCourt, LeagueDocument, LeagueNews, LeagueNewsApi, LeagueNewsType, LeaguePartner, LeaguePlayer, LeaguePlaylist, LocalStorageEngine, MODEL_MAPPING_FIELDS_KEY, MODEL_RELATION_KEY, MODEL_TO_BACK_KEY, MODEL_TO_FRONT_KEY, MediaApi, MediaItem, ModelInstance, Notification, NotificationAllowTypes, NotificationApi, NotificationBaseApi, NotificationServiceEnum, NotificationSettings, NotificationType, OrgNotificationApi, Organization, OvertimeTypeLocalization, OvertimeTypes, Playoff, PlayoffSettings, PlayoffTypes, Poll, PollAnswer, PollStatuses, PollVariant, PublicTeamApi, PublicUserApi, ReferenceApi, SCORE_LOG_TYPES, Sport, SportTypes, StorageEngine, StorageEngineField, Store, Team, TeamAccess, TeamApi, TeamEvent, TeamEventApi, TeamEventInvite, TeamEventInviteStatuses, TeamEventTypeLocalization, TeamEventTypes, TeamInvite, TeamInviteExternal, TeamPermission, TeamPermissionTypes, TeamUser, TeamUserRole, TeamUserRoleLocalization, ToBackHook, ToFrontHook, Tournament, TournamentApi, TournamentDisqualification, TournamentEvent, TournamentEventTypes, TournamentGender, TournamentGroup, TournamentInvite, TournamentJoinApi, TournamentJoinData, TournamentJoinTeam, TournamentNews, TournamentSeason, TournamentSeasonApi, TournamentSeasonStatuses, TournamentSettings, TournamentStage, TournamentStageApi, TournamentStageStatuses, TournamentStageTeam, TournamentStatuses, TournamentTeam, TournamentTeamUser, TournamentTeamUserInvite, TournamentTeamWinner, TournamentTypes, UntilDestroy, User, UserAccess, UserApi, UserGender, UserPermission, UserPermissionTypes, UserProfile, VolleyballGameApi, VolleyballGameConfig, VolleyballGameLog, VolleyballGameLogType, VolleyballGameLogTypeLocalization, VolleyballGameStatistic, VolleyballGameTeamStatistic, VolleyballGameTypes, VolleyballProfile, VolleyballStatistic, VolleyballStatisticTypes, VolleyballWorkHand, VolleyballWorkHandLocalization, WorkHand, WorkHandLocalization, addItemInArray, changeFavicons, componentDestroyed, deleteItemFromArray, enumField, fileSizeValidator, generateArray, getArrayChunks, getCookie, getEnumOptions, getIconsData, handleError, isTouchDevice, listField, markFormGroupTouched, minLengthArrayValidator, patchItemInArray, penaltyTypeField, updateItemInArray, updateItemsInArray, validateDate, validateEmail, validatePhone, validateUrl };
8737
8788
  //# sourceMappingURL=mtgame-core.js.map