jp.ms.common.modules 1.0.41 → 1.0.42

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 (189) hide show
  1. package/dist/modules/anti-freeze-system/anti-freeze-system.module.d.ts +3 -1
  2. package/dist/modules/anti-freeze-system/anti-freeze-system.module.js +8 -4
  3. package/dist/modules/anti-freeze-system/anti-freeze-system.module.js.map +1 -1
  4. package/dist/modules/anti-freeze-system/anti-freeze-system.service.d.ts +6 -2
  5. package/dist/modules/anti-freeze-system/anti-freeze-system.service.js +37 -10
  6. package/dist/modules/anti-freeze-system/anti-freeze-system.service.js.map +1 -1
  7. package/dist/modules/base-achievements/base-achievements.module.js +2 -2
  8. package/dist/modules/base-achievements/base-achievements.module.js.map +1 -1
  9. package/dist/modules/confirmation-message-manager/confirmation-message-manager.constants.d.ts +1 -0
  10. package/dist/modules/confirmation-message-manager/confirmation-message-manager.constants.js +5 -0
  11. package/dist/modules/confirmation-message-manager/confirmation-message-manager.constants.js.map +1 -0
  12. package/dist/modules/confirmation-message-manager/confirmation-message-manager.interfaces.d.ts +13 -0
  13. package/dist/modules/confirmation-message-manager/confirmation-message-manager.interfaces.js +3 -0
  14. package/dist/modules/confirmation-message-manager/confirmation-message-manager.interfaces.js.map +1 -0
  15. package/dist/modules/confirmation-message-manager/confirmation-message-manager.module.d.ts +15 -0
  16. package/dist/modules/confirmation-message-manager/confirmation-message-manager.module.js +77 -0
  17. package/dist/modules/confirmation-message-manager/confirmation-message-manager.module.js.map +1 -0
  18. package/dist/modules/confirmation-message-manager/confirmation-message-manager.service.d.ts +19 -0
  19. package/dist/modules/confirmation-message-manager/confirmation-message-manager.service.js +83 -0
  20. package/dist/modules/confirmation-message-manager/confirmation-message-manager.service.js.map +1 -0
  21. package/dist/modules/event-bus/events-bus.module.js +3 -0
  22. package/dist/modules/event-bus/events-bus.module.js.map +1 -1
  23. package/dist/modules/event-bus/events-bus.player-ws-message.subscribe.service.d.ts +10 -0
  24. package/dist/modules/event-bus/events-bus.player-ws-message.subscribe.service.js +26 -0
  25. package/dist/modules/event-bus/events-bus.player-ws-message.subscribe.service.js.map +1 -0
  26. package/dist/modules/event-bus/index.d.ts +1 -0
  27. package/dist/modules/event-bus/index.js +3 -1
  28. package/dist/modules/event-bus/index.js.map +1 -1
  29. package/dist/modules/events/events.gateway.d.ts +6 -1
  30. package/dist/modules/events/events.gateway.js +15 -3
  31. package/dist/modules/events/events.gateway.js.map +1 -1
  32. package/dist/modules/index.d.ts +1 -0
  33. package/dist/modules/index.js +3 -1
  34. package/dist/modules/index.js.map +1 -1
  35. package/dist/modules/main/main.module.js +1 -1
  36. package/dist/modules/main/main.module.js.map +1 -1
  37. package/dist/modules/many-tables-tournament/many-tables-tournament.module.js +1 -1
  38. package/dist/modules/many-tables-tournament/many-tables-tournament.module.js.map +1 -1
  39. package/dist/modules/one-table-tournament/one-table-tournament.module.js +1 -1
  40. package/dist/modules/one-table-tournament/one-table-tournament.module.js.map +1 -1
  41. package/dist/tsconfig.tsbuildinfo +1 -1
  42. package/package.json +57 -57
  43. package/src/dto/app-screen/app-screen-app-bar.dto.ts +36 -36
  44. package/src/dto/app-screen/app-screen-dialog.dto.ts +64 -64
  45. package/src/dto/app-screen/app-screen-field-list-item.dto.ts +42 -42
  46. package/src/dto/app-screen/app-screen-field.dto.ts +59 -59
  47. package/src/dto/app-screen/app-screen-section-button.dto.ts +60 -60
  48. package/src/dto/app-screen/app-screen-section-buttons.dto.ts +14 -14
  49. package/src/dto/app-screen/app-screen-section-image.dto.ts +33 -33
  50. package/src/dto/app-screen/app-screen-section-list-item.dto.ts +105 -105
  51. package/src/dto/app-screen/app-screen-section-req.dto.ts +33 -33
  52. package/src/dto/app-screen/app-screen-section.dto.ts +76 -76
  53. package/src/dto/app-screen/app-screen.dto.ts +50 -50
  54. package/src/dto/app-screen/base-app-screen.dto.ts +16 -16
  55. package/src/dto/app-screen/index.ts +10 -10
  56. package/src/dto/app-table/bids-panel-item.dto.ts +33 -33
  57. package/src/dto/app-table/bids-panel.dto.ts +32 -32
  58. package/src/dto/app-table/card.dto.ts +54 -54
  59. package/src/dto/app-table/cards-deck.dto.ts +22 -22
  60. package/src/dto/app-table/cards-pair-slots-item.dto.ts +45 -45
  61. package/src/dto/app-table/cards-pair-slots.dto.ts +13 -13
  62. package/src/dto/app-table/cards-panel.dto.ts +48 -48
  63. package/src/dto/app-table/cards-player.dto.ts +14 -14
  64. package/src/dto/app-table/cards-slots-item.dto.ts +40 -40
  65. package/src/dto/app-table/cards-slots.dto.ts +13 -13
  66. package/src/dto/app-table/index.ts +15 -15
  67. package/src/dto/app-table/moves-panel-button.dto.ts +24 -24
  68. package/src/dto/app-table/moves-panel.dto.ts +23 -23
  69. package/src/dto/app-table/player.dto.ts +69 -69
  70. package/src/dto/app-table/summary-item.dto.ts +51 -51
  71. package/src/dto/app-table/summary.dto.ts +13 -13
  72. package/src/dto/common/find-free-table.dto.ts +3 -3
  73. package/src/dto/common/index.ts +2 -2
  74. package/src/dto/common/join-tournament.dto.ts +33 -33
  75. package/src/dto/common/log.dto.ts +9 -9
  76. package/src/dto/common/many-tables-tournament-create.dto.ts +125 -125
  77. package/src/dto/common/many-tables-tournament-update.dto.ts +3 -3
  78. package/src/dto/common/player-check-state.dto.ts +33 -33
  79. package/src/dto/common/player-connected.dto.ts +58 -58
  80. package/src/dto/games/fool/fool-player.dto.ts +3 -3
  81. package/src/dto/games/fool/fool-table.dto.ts +81 -81
  82. package/src/dto/games/index.ts +2 -2
  83. package/src/dto/games/poker/poker-player.dto.ts +3 -3
  84. package/src/dto/games/poker/poker-table.dto.ts +81 -81
  85. package/src/dto/index.ts +4 -4
  86. package/src/exception/error-code.enum.ts +4 -4
  87. package/src/exception/global-exception-filter.ts +53 -53
  88. package/src/exception/http-exception-wth-snackbar.ts +27 -27
  89. package/src/exception/index.ts +4 -4
  90. package/src/exception/not-enough-money-for-purchase.exception.ts +14 -14
  91. package/src/exception/not-found-free-room-for-fast-game.exception.ts +14 -14
  92. package/src/index.ts +4 -4
  93. package/src/modules/anti-freeze-system/anti-freeze-system.constants.ts +1 -1
  94. package/src/modules/anti-freeze-system/anti-freeze-system.interfaces.ts +20 -20
  95. package/src/modules/anti-freeze-system/anti-freeze-system.module.ts +59 -55
  96. package/src/modules/anti-freeze-system/anti-freeze-system.service.ts +136 -105
  97. package/src/modules/anti-freeze-system/index.ts +1 -1
  98. package/src/modules/base-achievements/base-achievements.module.ts +324 -322
  99. package/src/modules/base-achievements/index.ts +1 -1
  100. package/src/modules/confirmation-message-manager/confirmation-message-manager.constants.ts +3 -0
  101. package/src/modules/confirmation-message-manager/confirmation-message-manager.interfaces.ts +20 -0
  102. package/src/modules/confirmation-message-manager/confirmation-message-manager.module.ts +77 -0
  103. package/src/modules/confirmation-message-manager/confirmation-message-manager.service.ts +91 -0
  104. package/src/modules/event-bus/events-bus.app.subscribe.service.ts +20 -20
  105. package/src/modules/event-bus/events-bus.main-tables.subscribe.service.ts +34 -34
  106. package/src/modules/event-bus/events-bus.many-tables-tournament.subscribe.service.ts +6 -6
  107. package/src/modules/event-bus/events-bus.module.ts +26 -23
  108. package/src/modules/event-bus/events-bus.one-table-tournament.subscribe.service.ts +6 -6
  109. package/src/modules/event-bus/events-bus.player-ws-message.subscribe.service.ts +30 -0
  110. package/src/modules/event-bus/events-bus.tournament.subscribe.service.ts +18 -18
  111. package/src/modules/event-bus/index.ts +6 -5
  112. package/src/modules/events/events.constants.ts +1 -1
  113. package/src/modules/events/events.gateway.ts +82 -70
  114. package/src/modules/events/events.interfaces.ts +17 -17
  115. package/src/modules/events/events.module.ts +32 -32
  116. package/src/modules/events/index.ts +1 -1
  117. package/src/modules/index.ts +28 -27
  118. package/src/modules/logger/index.ts +2 -2
  119. package/src/modules/logger/jp-logger.module.ts +10 -10
  120. package/src/modules/logger/jp-logger.service.ts +38 -38
  121. package/src/modules/main/index.ts +1 -1
  122. package/src/modules/main/main-tables-list-screen.view.ts +275 -275
  123. package/src/modules/main/main.constants.ts +1 -1
  124. package/src/modules/main/main.controller.ts +72 -72
  125. package/src/modules/main/main.interfaces.ts +17 -17
  126. package/src/modules/main/main.module.ts +73 -73
  127. package/src/modules/main/main.service.ts +183 -183
  128. package/src/modules/many-tables-tournament/index.ts +1 -1
  129. package/src/modules/many-tables-tournament/many-tables-tournament-status-screen.view.ts +143 -143
  130. package/src/modules/many-tables-tournament/many-tables-tournament-tables-list-screen.view.ts +63 -63
  131. package/src/modules/many-tables-tournament/many-tables-tournament.constants.ts +3 -3
  132. package/src/modules/many-tables-tournament/many-tables-tournament.controller.ts +151 -151
  133. package/src/modules/many-tables-tournament/many-tables-tournament.interfaces.ts +20 -20
  134. package/src/modules/many-tables-tournament/many-tables-tournament.module.ts +81 -80
  135. package/src/modules/many-tables-tournament/many-tables-tournament.service.ts +208 -208
  136. package/src/modules/many-tables-tournament-rooms-manager/index.ts +2 -2
  137. package/src/modules/many-tables-tournament-rooms-manager/many-tables-tournament-rooms-manager.constants.ts +3 -3
  138. package/src/modules/many-tables-tournament-rooms-manager/many-tables-tournament-rooms-manager.interfaces.ts +37 -37
  139. package/src/modules/many-tables-tournament-rooms-manager/many-tables-tournament-rooms-manager.module.ts +84 -84
  140. package/src/modules/many-tables-tournament-rooms-manager/many-tables-tournament-rooms-manager.service.ts +331 -331
  141. package/src/modules/menu/index.ts +1 -1
  142. package/src/modules/menu/menu-screen.view.ts +71 -71
  143. package/src/modules/menu/menu.constants.ts +1 -1
  144. package/src/modules/menu/menu.controller.ts +16 -16
  145. package/src/modules/menu/menu.interfaces.ts +17 -17
  146. package/src/modules/menu/menu.module.ts +39 -39
  147. package/src/modules/menu/menu.service.ts +39 -39
  148. package/src/modules/one-table-tournament/index.ts +1 -1
  149. package/src/modules/one-table-tournament/one-table-tournament-status-screen.view.ts +166 -166
  150. package/src/modules/one-table-tournament/one-table-tournament.constants.ts +3 -3
  151. package/src/modules/one-table-tournament/one-table-tournament.controller.ts +104 -104
  152. package/src/modules/one-table-tournament/one-table-tournament.interfaces.ts +20 -20
  153. package/src/modules/one-table-tournament/one-table-tournament.module.ts +80 -76
  154. package/src/modules/one-table-tournament/one-table-tournament.service.ts +146 -146
  155. package/src/modules/one-table-tournament-rooms-manager/index.ts +2 -2
  156. package/src/modules/one-table-tournament-rooms-manager/one-table-tournament-rooms-manager.constants.ts +3 -3
  157. package/src/modules/one-table-tournament-rooms-manager/one-table-tournament-rooms-manager.interfaces.ts +31 -31
  158. package/src/modules/one-table-tournament-rooms-manager/one-table-tournament-rooms-manager.module.ts +66 -66
  159. package/src/modules/one-table-tournament-rooms-manager/one-table-tournament-rooms-manager.service.ts +220 -220
  160. package/src/modules/players-manager/index.ts +2 -2
  161. package/src/modules/players-manager/players-manager.module.ts +9 -9
  162. package/src/modules/players-manager/players-manager.service.ts +27 -27
  163. package/src/modules/simple-rooms/index.ts +1 -1
  164. package/src/modules/simple-rooms/simple-rooms.constants.ts +1 -1
  165. package/src/modules/simple-rooms/simple-rooms.controller.ts +63 -63
  166. package/src/modules/simple-rooms/simple-rooms.interfaces.ts +20 -20
  167. package/src/modules/simple-rooms/simple-rooms.module.ts +39 -39
  168. package/src/modules/simple-rooms/simple-rooms.service.ts +95 -95
  169. package/src/modules/simple-rooms-manager/index.ts +2 -2
  170. package/src/modules/simple-rooms-manager/simple-rooms-manager.constants.ts +3 -3
  171. package/src/modules/simple-rooms-manager/simple-rooms-manager.interfaces.ts +26 -26
  172. package/src/modules/simple-rooms-manager/simple-rooms-manager.module.ts +60 -60
  173. package/src/modules/simple-rooms-manager/simple-rooms-manager.service.ts +190 -190
  174. package/src/modules/support/dump.service.ts +11 -11
  175. package/src/modules/support/index.ts +1 -1
  176. package/src/modules/support/metric.service.ts +41 -41
  177. package/src/modules/support/support.constants.ts +1 -1
  178. package/src/modules/support/support.controller.ts +79 -79
  179. package/src/modules/support/support.interfaces.ts +16 -16
  180. package/src/modules/support/support.module.ts +35 -35
  181. package/src/modules/support/support.service.ts +27 -27
  182. package/src/utils/date.ts +7 -7
  183. package/src/utils/game-table-result.ts +129 -129
  184. package/src/views/index.ts +5 -5
  185. package/src/views/many-tables-tournament-conifrm-exit-dialog.view.ts +37 -37
  186. package/src/views/one-table-tournament-conifrm-exit-dialog.view.ts +37 -37
  187. package/src/views/simple-room-conifrm-exit-dialog.view.ts +37 -37
  188. package/src/views/table-summary.view.ts +104 -104
  189. package/src/views/tournament-buy-ticket-dialog.view.ts +34 -34
@@ -1,166 +1,166 @@
1
- import {
2
- AppScreenIconEnum,
3
- AppScreenIdEnum,
4
- IAppScreen,
5
- UniversalScreenView,
6
- ILocaleService,
7
- StandardScreenComponent,
8
- StatusAppBarComponent,
9
- StatusHeaderSectionComponent,
10
- CardListSectionComponent,
11
- ArrowBackButtonComponent,
12
- IconImageComponent,
13
- PrimaryButtonButtonsComponent,
14
- TextButtonComponent,
15
- MiniCardSectionListItemComponent,
16
- UrlImageComponent,
17
- } from 'jp.common.models';
18
- import { formatChips } from 'jp.common.utils';
19
- import { OneTableTournamentRoom, TournamentMaster } from 'jp.ms.common.engine';
20
-
21
- export class OneTableTournamentStatusScreenView extends UniversalScreenView {
22
- private readonly tournament: OneTableTournamentRoom;
23
- private readonly playerId: string;
24
-
25
- constructor(
26
- localeService: ILocaleService,
27
- lang: string,
28
- tournament: OneTableTournamentRoom,
29
- playerId: string,
30
- ) {
31
- super(localeService, lang);
32
- this.tournament = tournament;
33
- this.playerId = playerId;
34
- }
35
-
36
- build(): IAppScreen {
37
- return new StandardScreenComponent(AppScreenIdEnum.ROOMS)
38
- .addAppBar(
39
- new StatusAppBarComponent(
40
- this.tournament.getTitle(this.lang),
41
- new ArrowBackButtonComponent(
42
- this.localeService.t('common.button.back', { lang: this.lang }),
43
- ),
44
- ),
45
- )
46
- .addSection(this.getStatusHeader())
47
- .addSection(new CardListSectionComponent('id1', this.getPlayersList()));
48
- }
49
-
50
- private getPlayersList(): Array<MiniCardSectionListItemComponent> {
51
- if (this.tournament.getRoomMaster<TournamentMaster>().isFinish()) {
52
- return this.tournament.getWinners().map(
53
- (item) =>
54
- new MiniCardSectionListItemComponent(
55
- item.playerId,
56
- item.playerName,
57
- this.localeService.t(
58
- 'common.tournaments.status.screen.finish.description',
59
- {
60
- lang: this.lang,
61
- args: {
62
- RANK: item.rank.toString(),
63
- PRIZE: formatChips(item.profit, this.lang, true),
64
- },
65
- },
66
- ),
67
- new UrlImageComponent(item.playerAvatarUrl),
68
- true,
69
- true,
70
- '',
71
- ),
72
- );
73
- }
74
-
75
- return this.tournament
76
- .getParticipants()
77
- .map(
78
- (item) =>
79
- new MiniCardSectionListItemComponent(
80
- item.playerId,
81
- item.playerName,
82
- '',
83
- new UrlImageComponent(item.playerAvatarUrl),
84
- true,
85
- true,
86
- '',
87
- ),
88
- );
89
- }
90
-
91
- private getStatusHeader(): StatusHeaderSectionComponent {
92
- const foundPlayer = this.tournament.getParticipant(this.playerId);
93
-
94
- return new StatusHeaderSectionComponent(
95
- 'status',
96
- this.getStatusDescription(),
97
- new IconImageComponent(this.getStatusIcon()),
98
- !foundPlayer &&
99
- this.tournament.getRoomMaster<TournamentMaster>().isWaiting()
100
- ? new PrimaryButtonButtonsComponent(
101
- new TextButtonComponent(
102
- this.localeService.t(
103
- 'common.tournaments.screen.button.join.tournament',
104
- { lang: this.lang },
105
- ),
106
- ),
107
- )
108
- : undefined,
109
- );
110
- }
111
-
112
- private getStatusIcon(): string {
113
- if (this.tournament.getRoomMaster<TournamentMaster>().isCancelled()) {
114
- return AppScreenIconEnum.INFO;
115
- } else if (this.tournament.getRoomMaster<TournamentMaster>().isFinish()) {
116
- return AppScreenIconEnum.EMOJI_EVENTS;
117
- } else if (this.tournament.getRoomMaster<TournamentMaster>().isWaiting()) {
118
- return AppScreenIconEnum.HOURGLASS_EMPTY;
119
- }
120
-
121
- return '';
122
- }
123
-
124
- private getStatusDescription(): string {
125
- if (this.tournament.getRoomMaster<TournamentMaster>().isCancelled()) {
126
- return this.localeService.t('common.tournaments.status.4', {
127
- lang: this.lang,
128
- });
129
- } else if (this.tournament.getRoomMaster<TournamentMaster>().isFinish()) {
130
- return this.localeService.t('common.tournaments.status.3', {
131
- lang: this.lang,
132
- });
133
- } else if (this.tournament.getRoomMaster<TournamentMaster>().isWaiting()) {
134
- return this.getStatusDescriptionWaiting();
135
- }
136
-
137
- return '';
138
- }
139
-
140
- private getStatusDescriptionWaiting(): string {
141
- const players = this.tournament.getParticipants().length;
142
- const maxPlayers = this.tournament.getTableSize();
143
-
144
- if (players === 0) {
145
- return this.localeService.t(
146
- 'common.room.screen.seat.and.go.waiting.for.the.players',
147
- {
148
- lang: this.lang,
149
- args: {
150
- MAX_PLAYERS: this.tournament.getTableSize().toString(),
151
- },
152
- },
153
- );
154
- }
155
-
156
- return this.localeService.t(
157
- 'common.room.screen.seat.and.go.more.waiting.for.the.players',
158
- {
159
- lang: this.lang,
160
- args: {
161
- PLAYERS: (maxPlayers - players).toString(),
162
- },
163
- },
164
- );
165
- }
166
- }
1
+ import {
2
+ AppScreenIconEnum,
3
+ AppScreenIdEnum,
4
+ IAppScreen,
5
+ UniversalScreenView,
6
+ ILocaleService,
7
+ StandardScreenComponent,
8
+ StatusAppBarComponent,
9
+ StatusHeaderSectionComponent,
10
+ CardListSectionComponent,
11
+ ArrowBackButtonComponent,
12
+ IconImageComponent,
13
+ PrimaryButtonButtonsComponent,
14
+ TextButtonComponent,
15
+ MiniCardSectionListItemComponent,
16
+ UrlImageComponent,
17
+ } from 'jp.common.models';
18
+ import { formatChips } from 'jp.common.utils';
19
+ import { OneTableTournamentRoom, TournamentMaster } from 'jp.ms.common.engine';
20
+
21
+ export class OneTableTournamentStatusScreenView extends UniversalScreenView {
22
+ private readonly tournament: OneTableTournamentRoom;
23
+ private readonly playerId: string;
24
+
25
+ constructor(
26
+ localeService: ILocaleService,
27
+ lang: string,
28
+ tournament: OneTableTournamentRoom,
29
+ playerId: string,
30
+ ) {
31
+ super(localeService, lang);
32
+ this.tournament = tournament;
33
+ this.playerId = playerId;
34
+ }
35
+
36
+ build(): IAppScreen {
37
+ return new StandardScreenComponent(AppScreenIdEnum.ROOMS)
38
+ .addAppBar(
39
+ new StatusAppBarComponent(
40
+ this.tournament.getTitle(this.lang),
41
+ new ArrowBackButtonComponent(
42
+ this.localeService.t('common.button.back', { lang: this.lang }),
43
+ ),
44
+ ),
45
+ )
46
+ .addSection(this.getStatusHeader())
47
+ .addSection(new CardListSectionComponent('id1', this.getPlayersList()));
48
+ }
49
+
50
+ private getPlayersList(): Array<MiniCardSectionListItemComponent> {
51
+ if (this.tournament.getRoomMaster<TournamentMaster>().isFinish()) {
52
+ return this.tournament.getWinners().map(
53
+ (item) =>
54
+ new MiniCardSectionListItemComponent(
55
+ item.playerId,
56
+ item.playerName,
57
+ this.localeService.t(
58
+ 'common.tournaments.status.screen.finish.description',
59
+ {
60
+ lang: this.lang,
61
+ args: {
62
+ RANK: item.rank.toString(),
63
+ PRIZE: formatChips(item.profit, this.lang, true),
64
+ },
65
+ },
66
+ ),
67
+ new UrlImageComponent(item.playerAvatarUrl),
68
+ true,
69
+ true,
70
+ '',
71
+ ),
72
+ );
73
+ }
74
+
75
+ return this.tournament
76
+ .getParticipants()
77
+ .map(
78
+ (item) =>
79
+ new MiniCardSectionListItemComponent(
80
+ item.playerId,
81
+ item.playerName,
82
+ '',
83
+ new UrlImageComponent(item.playerAvatarUrl),
84
+ true,
85
+ true,
86
+ '',
87
+ ),
88
+ );
89
+ }
90
+
91
+ private getStatusHeader(): StatusHeaderSectionComponent {
92
+ const foundPlayer = this.tournament.getParticipant(this.playerId);
93
+
94
+ return new StatusHeaderSectionComponent(
95
+ 'status',
96
+ this.getStatusDescription(),
97
+ new IconImageComponent(this.getStatusIcon()),
98
+ !foundPlayer &&
99
+ this.tournament.getRoomMaster<TournamentMaster>().isWaiting()
100
+ ? new PrimaryButtonButtonsComponent(
101
+ new TextButtonComponent(
102
+ this.localeService.t(
103
+ 'common.tournaments.screen.button.join.tournament',
104
+ { lang: this.lang },
105
+ ),
106
+ ),
107
+ )
108
+ : undefined,
109
+ );
110
+ }
111
+
112
+ private getStatusIcon(): string {
113
+ if (this.tournament.getRoomMaster<TournamentMaster>().isCancelled()) {
114
+ return AppScreenIconEnum.INFO;
115
+ } else if (this.tournament.getRoomMaster<TournamentMaster>().isFinish()) {
116
+ return AppScreenIconEnum.EMOJI_EVENTS;
117
+ } else if (this.tournament.getRoomMaster<TournamentMaster>().isWaiting()) {
118
+ return AppScreenIconEnum.HOURGLASS_EMPTY;
119
+ }
120
+
121
+ return '';
122
+ }
123
+
124
+ private getStatusDescription(): string {
125
+ if (this.tournament.getRoomMaster<TournamentMaster>().isCancelled()) {
126
+ return this.localeService.t('common.tournaments.status.4', {
127
+ lang: this.lang,
128
+ });
129
+ } else if (this.tournament.getRoomMaster<TournamentMaster>().isFinish()) {
130
+ return this.localeService.t('common.tournaments.status.3', {
131
+ lang: this.lang,
132
+ });
133
+ } else if (this.tournament.getRoomMaster<TournamentMaster>().isWaiting()) {
134
+ return this.getStatusDescriptionWaiting();
135
+ }
136
+
137
+ return '';
138
+ }
139
+
140
+ private getStatusDescriptionWaiting(): string {
141
+ const players = this.tournament.getParticipants().length;
142
+ const maxPlayers = this.tournament.getTableSize();
143
+
144
+ if (players === 0) {
145
+ return this.localeService.t(
146
+ 'common.room.screen.seat.and.go.waiting.for.the.players',
147
+ {
148
+ lang: this.lang,
149
+ args: {
150
+ MAX_PLAYERS: this.tournament.getTableSize().toString(),
151
+ },
152
+ },
153
+ );
154
+ }
155
+
156
+ return this.localeService.t(
157
+ 'common.room.screen.seat.and.go.more.waiting.for.the.players',
158
+ {
159
+ lang: this.lang,
160
+ args: {
161
+ PLAYERS: (maxPlayers - players).toString(),
162
+ },
163
+ },
164
+ );
165
+ }
166
+ }
@@ -1,3 +1,3 @@
1
- export const ONE_TABLE_TOURNAMENT_OPTIONS = Symbol(
2
- 'ONE_TABLE_TOURNAMENT_OPTIONS',
3
- );
1
+ export const ONE_TABLE_TOURNAMENT_OPTIONS = Symbol(
2
+ 'ONE_TABLE_TOURNAMENT_OPTIONS',
3
+ );
@@ -1,104 +1,104 @@
1
- import {
2
- Body,
3
- Controller,
4
- Get,
5
- Param,
6
- Post,
7
- Headers,
8
- HttpStatus,
9
- HttpCode,
10
- } from '@nestjs/common';
11
- import {
12
- IAppHeaders,
13
- IBaseAppScreen,
14
- IBaseMoveData,
15
- IAppTableState,
16
- } from 'jp.common.models';
17
-
18
- import { OneTableTournamentService } from './one-table-tournament.service';
19
-
20
- @Controller('tournament/one_table')
21
- export class OneTableTournamentController {
22
- constructor(private readonly tournamentService: OneTableTournamentService) {}
23
-
24
- @Get('status/:tournamentId')
25
- getStatusScreen(
26
- @Param('tournamentId') tournamentId: string,
27
- @Headers() headers: IAppHeaders,
28
- ): IBaseAppScreen {
29
- return this.tournamentService.getStatusScreen(
30
- tournamentId,
31
- headers.client_language,
32
- headers.client_auth_token,
33
- );
34
- }
35
-
36
- @Get('status/subscribe/:tournamentId')
37
- subscribeOnStatusScreen(
38
- @Param('tournamentId') tournamentId: string,
39
- @Headers() headers: IAppHeaders,
40
- ): void {
41
- return this.tournamentService.subscribeOnStatusScreen(
42
- tournamentId,
43
- headers.client_auth_token,
44
- );
45
- }
46
-
47
- @Get('status/unsubscribe/:tournamentId')
48
- unsubscribeFromStatusScreen(
49
- @Param('tournamentId') tournamentId: string,
50
- @Headers() headers: IAppHeaders,
51
- ): void {
52
- return this.tournamentService.unsubscribeFromStatusScreen(
53
- tournamentId,
54
- headers.client_auth_token,
55
- );
56
- }
57
-
58
- @Post('table/watch/:tableId')
59
- @HttpCode(HttpStatus.OK)
60
- watchTheTable(
61
- @Param('tableId') tableId: string,
62
- @Headers() headers: IAppHeaders,
63
- ): IAppTableState {
64
- return this.tournamentService.watchTheTable(
65
- tableId,
66
- headers.client_auth_token,
67
- );
68
- }
69
-
70
- @Post('table/move/:tableId')
71
- @HttpCode(HttpStatus.OK)
72
- moveOnTheTable(
73
- @Param('tableId') tableId: string,
74
- @Body() baseMoveData: IBaseMoveData,
75
- @Headers() headers: IAppHeaders,
76
- ): IAppTableState {
77
- return this.tournamentService.moveOnTheTable(
78
- tableId,
79
- headers.client_auth_token,
80
- baseMoveData,
81
- );
82
- }
83
-
84
- @Post('join/:tournamentId')
85
- @HttpCode(HttpStatus.OK)
86
- joinTournament(
87
- @Param('tournamentId') tournamentId: string,
88
- @Headers() headers: IAppHeaders,
89
- ): IBaseAppScreen {
90
- return this.tournamentService.joinTournament(tournamentId, headers);
91
- }
92
-
93
- @Post('leave/:tournamentId')
94
- @HttpCode(HttpStatus.OK)
95
- leaveTournament(
96
- @Param('tournamentId') tournamentId: string,
97
- @Headers() headers: IAppHeaders,
98
- ): void {
99
- return this.tournamentService.leaveTournament(
100
- tournamentId,
101
- headers.client_auth_token,
102
- );
103
- }
104
- }
1
+ import {
2
+ Body,
3
+ Controller,
4
+ Get,
5
+ Param,
6
+ Post,
7
+ Headers,
8
+ HttpStatus,
9
+ HttpCode,
10
+ } from '@nestjs/common';
11
+ import {
12
+ IAppHeaders,
13
+ IBaseAppScreen,
14
+ IBaseMoveData,
15
+ IAppTableState,
16
+ } from 'jp.common.models';
17
+
18
+ import { OneTableTournamentService } from './one-table-tournament.service';
19
+
20
+ @Controller('tournament/one_table')
21
+ export class OneTableTournamentController {
22
+ constructor(private readonly tournamentService: OneTableTournamentService) {}
23
+
24
+ @Get('status/:tournamentId')
25
+ getStatusScreen(
26
+ @Param('tournamentId') tournamentId: string,
27
+ @Headers() headers: IAppHeaders,
28
+ ): IBaseAppScreen {
29
+ return this.tournamentService.getStatusScreen(
30
+ tournamentId,
31
+ headers.client_language,
32
+ headers.client_auth_token,
33
+ );
34
+ }
35
+
36
+ @Get('status/subscribe/:tournamentId')
37
+ subscribeOnStatusScreen(
38
+ @Param('tournamentId') tournamentId: string,
39
+ @Headers() headers: IAppHeaders,
40
+ ): void {
41
+ return this.tournamentService.subscribeOnStatusScreen(
42
+ tournamentId,
43
+ headers.client_auth_token,
44
+ );
45
+ }
46
+
47
+ @Get('status/unsubscribe/:tournamentId')
48
+ unsubscribeFromStatusScreen(
49
+ @Param('tournamentId') tournamentId: string,
50
+ @Headers() headers: IAppHeaders,
51
+ ): void {
52
+ return this.tournamentService.unsubscribeFromStatusScreen(
53
+ tournamentId,
54
+ headers.client_auth_token,
55
+ );
56
+ }
57
+
58
+ @Post('table/watch/:tableId')
59
+ @HttpCode(HttpStatus.OK)
60
+ watchTheTable(
61
+ @Param('tableId') tableId: string,
62
+ @Headers() headers: IAppHeaders,
63
+ ): IAppTableState {
64
+ return this.tournamentService.watchTheTable(
65
+ tableId,
66
+ headers.client_auth_token,
67
+ );
68
+ }
69
+
70
+ @Post('table/move/:tableId')
71
+ @HttpCode(HttpStatus.OK)
72
+ moveOnTheTable(
73
+ @Param('tableId') tableId: string,
74
+ @Body() baseMoveData: IBaseMoveData,
75
+ @Headers() headers: IAppHeaders,
76
+ ): IAppTableState {
77
+ return this.tournamentService.moveOnTheTable(
78
+ tableId,
79
+ headers.client_auth_token,
80
+ baseMoveData,
81
+ );
82
+ }
83
+
84
+ @Post('join/:tournamentId')
85
+ @HttpCode(HttpStatus.OK)
86
+ joinTournament(
87
+ @Param('tournamentId') tournamentId: string,
88
+ @Headers() headers: IAppHeaders,
89
+ ): IBaseAppScreen {
90
+ return this.tournamentService.joinTournament(tournamentId, headers);
91
+ }
92
+
93
+ @Post('leave/:tournamentId')
94
+ @HttpCode(HttpStatus.OK)
95
+ leaveTournament(
96
+ @Param('tournamentId') tournamentId: string,
97
+ @Headers() headers: IAppHeaders,
98
+ ): void {
99
+ return this.tournamentService.leaveTournament(
100
+ tournamentId,
101
+ headers.client_auth_token,
102
+ );
103
+ }
104
+ }
@@ -1,20 +1,20 @@
1
- import { ModuleMetadata } from '@nestjs/common';
2
- import { I18nService } from 'nestjs-i18n';
3
- import { Type } from '@nestjs/common/interfaces/type.interface';
4
- import { DynamicModule } from '@nestjs/common/interfaces/modules/dynamic-module.interface';
5
- import { ForwardReference } from '@nestjs/common/interfaces/modules/forward-reference.interface';
6
-
7
- export interface OneTableTournamentModuleOptions extends Pick<
8
- ModuleMetadata,
9
- 'imports'
10
- > {
11
- imports?: Array<
12
- Type<any> | DynamicModule | Promise<DynamicModule> | ForwardReference
13
- >;
14
- inject?: any[];
15
- useFactory?: (...args: any[]) => Promise<any> | any;
16
- }
17
-
18
- export interface OneTableTournamentFactoryOptions {
19
- i18n: I18nService;
20
- }
1
+ import { ModuleMetadata } from '@nestjs/common';
2
+ import { I18nService } from 'nestjs-i18n';
3
+ import { Type } from '@nestjs/common/interfaces/type.interface';
4
+ import { DynamicModule } from '@nestjs/common/interfaces/modules/dynamic-module.interface';
5
+ import { ForwardReference } from '@nestjs/common/interfaces/modules/forward-reference.interface';
6
+
7
+ export interface OneTableTournamentModuleOptions extends Pick<
8
+ ModuleMetadata,
9
+ 'imports'
10
+ > {
11
+ imports?: Array<
12
+ Type<any> | DynamicModule | Promise<DynamicModule> | ForwardReference
13
+ >;
14
+ inject?: any[];
15
+ useFactory?: (...args: any[]) => Promise<any> | any;
16
+ }
17
+
18
+ export interface OneTableTournamentFactoryOptions {
19
+ i18n: I18nService;
20
+ }