jp.ms.common.modules 1.0.41 → 1.0.43

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 (234) hide show
  1. package/dist/dto/app-table/card.dto.d.ts +1 -0
  2. package/dist/dto/app-table/card.dto.js +11 -0
  3. package/dist/dto/app-table/card.dto.js.map +1 -1
  4. package/dist/dto/app-table/player.dto.d.ts +1 -0
  5. package/dist/dto/app-table/player.dto.js +11 -0
  6. package/dist/dto/app-table/player.dto.js.map +1 -1
  7. package/dist/dto/games/fool/fool-table.dto.d.ts +1 -0
  8. package/dist/dto/games/fool/fool-table.dto.js +10 -0
  9. package/dist/dto/games/fool/fool-table.dto.js.map +1 -1
  10. package/dist/modules/anti-freeze-system/anti-freeze-system.module.d.ts +3 -1
  11. package/dist/modules/anti-freeze-system/anti-freeze-system.module.js +8 -4
  12. package/dist/modules/anti-freeze-system/anti-freeze-system.module.js.map +1 -1
  13. package/dist/modules/anti-freeze-system/anti-freeze-system.service.d.ts +6 -2
  14. package/dist/modules/anti-freeze-system/anti-freeze-system.service.js +37 -10
  15. package/dist/modules/anti-freeze-system/anti-freeze-system.service.js.map +1 -1
  16. package/dist/modules/base-achievements/base-achievements.module.js +2 -2
  17. package/dist/modules/base-achievements/base-achievements.module.js.map +1 -1
  18. package/dist/modules/confirmation-message-manager/confirmation-message-manager.constants.d.ts +1 -0
  19. package/dist/modules/confirmation-message-manager/confirmation-message-manager.constants.js +5 -0
  20. package/dist/modules/confirmation-message-manager/confirmation-message-manager.constants.js.map +1 -0
  21. package/dist/modules/confirmation-message-manager/confirmation-message-manager.interfaces.d.ts +13 -0
  22. package/dist/modules/confirmation-message-manager/confirmation-message-manager.interfaces.js +3 -0
  23. package/dist/modules/confirmation-message-manager/confirmation-message-manager.interfaces.js.map +1 -0
  24. package/dist/modules/confirmation-message-manager/confirmation-message-manager.module.d.ts +15 -0
  25. package/dist/modules/confirmation-message-manager/confirmation-message-manager.module.js +77 -0
  26. package/dist/modules/confirmation-message-manager/confirmation-message-manager.module.js.map +1 -0
  27. package/dist/modules/confirmation-message-manager/confirmation-message-manager.service.d.ts +19 -0
  28. package/dist/modules/confirmation-message-manager/confirmation-message-manager.service.js +83 -0
  29. package/dist/modules/confirmation-message-manager/confirmation-message-manager.service.js.map +1 -0
  30. package/dist/modules/event-bus/events-bus.module.js +3 -0
  31. package/dist/modules/event-bus/events-bus.module.js.map +1 -1
  32. package/dist/modules/event-bus/events-bus.player-ws-message.subscribe.service.d.ts +10 -0
  33. package/dist/modules/event-bus/events-bus.player-ws-message.subscribe.service.js +26 -0
  34. package/dist/modules/event-bus/events-bus.player-ws-message.subscribe.service.js.map +1 -0
  35. package/dist/modules/event-bus/index.d.ts +1 -0
  36. package/dist/modules/event-bus/index.js +3 -1
  37. package/dist/modules/event-bus/index.js.map +1 -1
  38. package/dist/modules/events/events.gateway.d.ts +6 -1
  39. package/dist/modules/events/events.gateway.js +19 -5
  40. package/dist/modules/events/events.gateway.js.map +1 -1
  41. package/dist/modules/index.d.ts +1 -0
  42. package/dist/modules/index.js +3 -1
  43. package/dist/modules/index.js.map +1 -1
  44. package/dist/modules/main/main.controller.d.ts +0 -1
  45. package/dist/modules/main/main.controller.js +0 -12
  46. package/dist/modules/main/main.controller.js.map +1 -1
  47. package/dist/modules/main/main.module.js +1 -1
  48. package/dist/modules/main/main.module.js.map +1 -1
  49. package/dist/modules/main/main.service.d.ts +0 -1
  50. package/dist/modules/main/main.service.js +0 -13
  51. package/dist/modules/main/main.service.js.map +1 -1
  52. package/dist/modules/many-tables-tournament/many-tables-tournament.controller.d.ts +1 -0
  53. package/dist/modules/many-tables-tournament/many-tables-tournament.controller.js +12 -0
  54. package/dist/modules/many-tables-tournament/many-tables-tournament.controller.js.map +1 -1
  55. package/dist/modules/many-tables-tournament/many-tables-tournament.module.js +7 -2
  56. package/dist/modules/many-tables-tournament/many-tables-tournament.module.js.map +1 -1
  57. package/dist/modules/many-tables-tournament/many-tables-tournament.service.d.ts +4 -1
  58. package/dist/modules/many-tables-tournament/many-tables-tournament.service.js +18 -2
  59. package/dist/modules/many-tables-tournament/many-tables-tournament.service.js.map +1 -1
  60. package/dist/modules/many-tables-tournament-rooms-manager/many-tables-tournament-rooms-manager.module.js +2 -0
  61. package/dist/modules/many-tables-tournament-rooms-manager/many-tables-tournament-rooms-manager.module.js.map +1 -1
  62. package/dist/modules/many-tables-tournament-rooms-manager/many-tables-tournament-rooms-manager.service.d.ts +3 -2
  63. package/dist/modules/many-tables-tournament-rooms-manager/many-tables-tournament-rooms-manager.service.js +9 -6
  64. package/dist/modules/many-tables-tournament-rooms-manager/many-tables-tournament-rooms-manager.service.js.map +1 -1
  65. package/dist/modules/menu/menu-screen.view.d.ts +2 -1
  66. package/dist/modules/menu/menu-screen.view.js +9 -3
  67. package/dist/modules/menu/menu-screen.view.js.map +1 -1
  68. package/dist/modules/menu/menu.interfaces.d.ts +1 -0
  69. package/dist/modules/menu/menu.service.js +1 -1
  70. package/dist/modules/menu/menu.service.js.map +1 -1
  71. package/dist/modules/one-table-tournament/one-table-tournament.module.js +1 -1
  72. package/dist/modules/one-table-tournament/one-table-tournament.module.js.map +1 -1
  73. package/dist/modules/one-table-tournament-rooms-manager/one-table-tournament-rooms-manager.module.js +2 -0
  74. package/dist/modules/one-table-tournament-rooms-manager/one-table-tournament-rooms-manager.module.js.map +1 -1
  75. package/dist/modules/one-table-tournament-rooms-manager/one-table-tournament-rooms-manager.service.d.ts +3 -2
  76. package/dist/modules/one-table-tournament-rooms-manager/one-table-tournament-rooms-manager.service.js +9 -6
  77. package/dist/modules/one-table-tournament-rooms-manager/one-table-tournament-rooms-manager.service.js.map +1 -1
  78. package/dist/modules/simple-rooms-manager/simple-rooms-manager.module.js +2 -0
  79. package/dist/modules/simple-rooms-manager/simple-rooms-manager.module.js.map +1 -1
  80. package/dist/modules/simple-rooms-manager/simple-rooms-manager.service.d.ts +3 -2
  81. package/dist/modules/simple-rooms-manager/simple-rooms-manager.service.js +8 -5
  82. package/dist/modules/simple-rooms-manager/simple-rooms-manager.service.js.map +1 -1
  83. package/dist/tsconfig.tsbuildinfo +1 -1
  84. package/dist/utils/game-table-result.d.ts +4 -3
  85. package/dist/utils/game-table-result.js +54 -4
  86. package/dist/utils/game-table-result.js.map +1 -1
  87. package/package.json +57 -57
  88. package/src/dto/app-screen/app-screen-app-bar.dto.ts +36 -36
  89. package/src/dto/app-screen/app-screen-dialog.dto.ts +64 -64
  90. package/src/dto/app-screen/app-screen-field-list-item.dto.ts +42 -42
  91. package/src/dto/app-screen/app-screen-field.dto.ts +59 -59
  92. package/src/dto/app-screen/app-screen-section-button.dto.ts +60 -60
  93. package/src/dto/app-screen/app-screen-section-buttons.dto.ts +14 -14
  94. package/src/dto/app-screen/app-screen-section-image.dto.ts +33 -33
  95. package/src/dto/app-screen/app-screen-section-list-item.dto.ts +105 -105
  96. package/src/dto/app-screen/app-screen-section-req.dto.ts +33 -33
  97. package/src/dto/app-screen/app-screen-section.dto.ts +76 -76
  98. package/src/dto/app-screen/app-screen.dto.ts +50 -50
  99. package/src/dto/app-screen/base-app-screen.dto.ts +16 -16
  100. package/src/dto/app-screen/index.ts +10 -10
  101. package/src/dto/app-table/bids-panel-item.dto.ts +33 -33
  102. package/src/dto/app-table/bids-panel.dto.ts +32 -32
  103. package/src/dto/app-table/card.dto.ts +63 -54
  104. package/src/dto/app-table/cards-deck.dto.ts +22 -22
  105. package/src/dto/app-table/cards-pair-slots-item.dto.ts +45 -45
  106. package/src/dto/app-table/cards-pair-slots.dto.ts +13 -13
  107. package/src/dto/app-table/cards-panel.dto.ts +48 -48
  108. package/src/dto/app-table/cards-player.dto.ts +14 -14
  109. package/src/dto/app-table/cards-slots-item.dto.ts +40 -40
  110. package/src/dto/app-table/cards-slots.dto.ts +13 -13
  111. package/src/dto/app-table/index.ts +15 -15
  112. package/src/dto/app-table/moves-panel-button.dto.ts +24 -24
  113. package/src/dto/app-table/moves-panel.dto.ts +23 -23
  114. package/src/dto/app-table/player.dto.ts +78 -69
  115. package/src/dto/app-table/summary-item.dto.ts +51 -51
  116. package/src/dto/app-table/summary.dto.ts +13 -13
  117. package/src/dto/common/find-free-table.dto.ts +3 -3
  118. package/src/dto/common/index.ts +2 -2
  119. package/src/dto/common/join-tournament.dto.ts +33 -33
  120. package/src/dto/common/log.dto.ts +9 -9
  121. package/src/dto/common/many-tables-tournament-create.dto.ts +125 -125
  122. package/src/dto/common/many-tables-tournament-update.dto.ts +3 -3
  123. package/src/dto/common/player-check-state.dto.ts +33 -33
  124. package/src/dto/common/player-connected.dto.ts +58 -58
  125. package/src/dto/games/fool/fool-player.dto.ts +3 -3
  126. package/src/dto/games/fool/fool-table.dto.ts +89 -81
  127. package/src/dto/games/index.ts +2 -2
  128. package/src/dto/games/poker/poker-player.dto.ts +3 -3
  129. package/src/dto/games/poker/poker-table.dto.ts +81 -81
  130. package/src/dto/index.ts +4 -4
  131. package/src/exception/error-code.enum.ts +4 -4
  132. package/src/exception/global-exception-filter.ts +53 -53
  133. package/src/exception/http-exception-wth-snackbar.ts +27 -27
  134. package/src/exception/index.ts +4 -4
  135. package/src/exception/not-enough-money-for-purchase.exception.ts +14 -14
  136. package/src/exception/not-found-free-room-for-fast-game.exception.ts +14 -14
  137. package/src/index.ts +4 -4
  138. package/src/modules/anti-freeze-system/anti-freeze-system.constants.ts +1 -1
  139. package/src/modules/anti-freeze-system/anti-freeze-system.interfaces.ts +20 -20
  140. package/src/modules/anti-freeze-system/anti-freeze-system.module.ts +59 -55
  141. package/src/modules/anti-freeze-system/anti-freeze-system.service.ts +136 -105
  142. package/src/modules/anti-freeze-system/index.ts +1 -1
  143. package/src/modules/base-achievements/base-achievements.module.ts +324 -322
  144. package/src/modules/base-achievements/index.ts +1 -1
  145. package/src/modules/confirmation-message-manager/confirmation-message-manager.constants.ts +3 -0
  146. package/src/modules/confirmation-message-manager/confirmation-message-manager.interfaces.ts +20 -0
  147. package/src/modules/confirmation-message-manager/confirmation-message-manager.module.ts +77 -0
  148. package/src/modules/confirmation-message-manager/confirmation-message-manager.service.ts +91 -0
  149. package/src/modules/event-bus/events-bus.app.subscribe.service.ts +20 -20
  150. package/src/modules/event-bus/events-bus.main-tables.subscribe.service.ts +34 -34
  151. package/src/modules/event-bus/events-bus.many-tables-tournament.subscribe.service.ts +6 -6
  152. package/src/modules/event-bus/events-bus.module.ts +26 -23
  153. package/src/modules/event-bus/events-bus.one-table-tournament.subscribe.service.ts +6 -6
  154. package/src/modules/event-bus/events-bus.player-ws-message.subscribe.service.ts +30 -0
  155. package/src/modules/event-bus/events-bus.tournament.subscribe.service.ts +18 -18
  156. package/src/modules/event-bus/index.ts +6 -5
  157. package/src/modules/events/events.constants.ts +1 -1
  158. package/src/modules/events/events.gateway.ts +84 -70
  159. package/src/modules/events/events.interfaces.ts +17 -17
  160. package/src/modules/events/events.module.ts +32 -32
  161. package/src/modules/events/index.ts +1 -1
  162. package/src/modules/index.ts +28 -27
  163. package/src/modules/logger/index.ts +2 -2
  164. package/src/modules/logger/jp-logger.module.ts +10 -10
  165. package/src/modules/logger/jp-logger.service.ts +38 -38
  166. package/src/modules/main/index.ts +1 -1
  167. package/src/modules/main/main-tables-list-screen.view.ts +275 -275
  168. package/src/modules/main/main.constants.ts +1 -1
  169. package/src/modules/main/main.controller.ts +51 -72
  170. package/src/modules/main/main.interfaces.ts +17 -17
  171. package/src/modules/main/main.module.ts +73 -73
  172. package/src/modules/main/main.service.ts +154 -183
  173. package/src/modules/many-tables-tournament/index.ts +1 -1
  174. package/src/modules/many-tables-tournament/many-tables-tournament-status-screen.view.ts +143 -143
  175. package/src/modules/many-tables-tournament/many-tables-tournament-tables-list-screen.view.ts +63 -63
  176. package/src/modules/many-tables-tournament/many-tables-tournament.constants.ts +3 -3
  177. package/src/modules/many-tables-tournament/many-tables-tournament.controller.ts +164 -151
  178. package/src/modules/many-tables-tournament/many-tables-tournament.interfaces.ts +20 -20
  179. package/src/modules/many-tables-tournament/many-tables-tournament.module.ts +89 -80
  180. package/src/modules/many-tables-tournament/many-tables-tournament.service.ts +241 -208
  181. package/src/modules/many-tables-tournament-rooms-manager/index.ts +2 -2
  182. package/src/modules/many-tables-tournament-rooms-manager/many-tables-tournament-rooms-manager.constants.ts +3 -3
  183. package/src/modules/many-tables-tournament-rooms-manager/many-tables-tournament-rooms-manager.interfaces.ts +37 -37
  184. package/src/modules/many-tables-tournament-rooms-manager/many-tables-tournament-rooms-manager.module.ts +89 -84
  185. package/src/modules/many-tables-tournament-rooms-manager/many-tables-tournament-rooms-manager.service.ts +333 -331
  186. package/src/modules/menu/index.ts +1 -1
  187. package/src/modules/menu/menu-screen.view.ts +78 -71
  188. package/src/modules/menu/menu.constants.ts +1 -1
  189. package/src/modules/menu/menu.controller.ts +16 -16
  190. package/src/modules/menu/menu.interfaces.ts +18 -17
  191. package/src/modules/menu/menu.module.ts +39 -39
  192. package/src/modules/menu/menu.service.ts +40 -39
  193. package/src/modules/one-table-tournament/index.ts +1 -1
  194. package/src/modules/one-table-tournament/one-table-tournament-status-screen.view.ts +166 -166
  195. package/src/modules/one-table-tournament/one-table-tournament.constants.ts +3 -3
  196. package/src/modules/one-table-tournament/one-table-tournament.controller.ts +104 -104
  197. package/src/modules/one-table-tournament/one-table-tournament.interfaces.ts +20 -20
  198. package/src/modules/one-table-tournament/one-table-tournament.module.ts +80 -76
  199. package/src/modules/one-table-tournament/one-table-tournament.service.ts +146 -146
  200. package/src/modules/one-table-tournament-rooms-manager/index.ts +2 -2
  201. package/src/modules/one-table-tournament-rooms-manager/one-table-tournament-rooms-manager.constants.ts +3 -3
  202. package/src/modules/one-table-tournament-rooms-manager/one-table-tournament-rooms-manager.interfaces.ts +31 -31
  203. package/src/modules/one-table-tournament-rooms-manager/one-table-tournament-rooms-manager.module.ts +71 -66
  204. package/src/modules/one-table-tournament-rooms-manager/one-table-tournament-rooms-manager.service.ts +222 -220
  205. package/src/modules/players-manager/index.ts +2 -2
  206. package/src/modules/players-manager/players-manager.module.ts +9 -9
  207. package/src/modules/players-manager/players-manager.service.ts +27 -27
  208. package/src/modules/simple-rooms/index.ts +1 -1
  209. package/src/modules/simple-rooms/simple-rooms.constants.ts +1 -1
  210. package/src/modules/simple-rooms/simple-rooms.controller.ts +63 -63
  211. package/src/modules/simple-rooms/simple-rooms.interfaces.ts +20 -20
  212. package/src/modules/simple-rooms/simple-rooms.module.ts +39 -39
  213. package/src/modules/simple-rooms/simple-rooms.service.ts +95 -95
  214. package/src/modules/simple-rooms-manager/index.ts +2 -2
  215. package/src/modules/simple-rooms-manager/simple-rooms-manager.constants.ts +3 -3
  216. package/src/modules/simple-rooms-manager/simple-rooms-manager.interfaces.ts +26 -26
  217. package/src/modules/simple-rooms-manager/simple-rooms-manager.module.ts +65 -60
  218. package/src/modules/simple-rooms-manager/simple-rooms-manager.service.ts +192 -190
  219. package/src/modules/support/dump.service.ts +11 -11
  220. package/src/modules/support/index.ts +1 -1
  221. package/src/modules/support/metric.service.ts +41 -41
  222. package/src/modules/support/support.constants.ts +1 -1
  223. package/src/modules/support/support.controller.ts +79 -79
  224. package/src/modules/support/support.interfaces.ts +16 -16
  225. package/src/modules/support/support.module.ts +35 -35
  226. package/src/modules/support/support.service.ts +27 -27
  227. package/src/utils/date.ts +7 -7
  228. package/src/utils/game-table-result.ts +190 -129
  229. package/src/views/index.ts +5 -5
  230. package/src/views/many-tables-tournament-conifrm-exit-dialog.view.ts +37 -37
  231. package/src/views/one-table-tournament-conifrm-exit-dialog.view.ts +37 -37
  232. package/src/views/simple-room-conifrm-exit-dialog.view.ts +37 -37
  233. package/src/views/table-summary.view.ts +104 -104
  234. package/src/views/tournament-buy-ticket-dialog.view.ts +34 -34
@@ -1,143 +1,143 @@
1
- import dayjs from 'dayjs';
2
- import {
3
- AppScreenIconEnum,
4
- AppScreenIdEnum,
5
- IAppScreen,
6
- UniversalScreenView,
7
- ILocaleService,
8
- StandardScreenComponent,
9
- StatusAppBarComponent,
10
- StatusHeaderSectionComponent,
11
- CardListSectionComponent,
12
- ArrowBackButtonComponent,
13
- IconImageComponent,
14
- MiniCardSectionListItemComponent,
15
- UrlImageComponent,
16
- } from 'jp.common.models';
17
- import {
18
- formatChips,
19
- formatDate,
20
- formatTime,
21
- replacePattern,
22
- } from 'jp.common.utils';
23
- import {
24
- ManyTablesTournamentRoom,
25
- TournamentMaster,
26
- } from 'jp.ms.common.engine';
27
-
28
- export class ManyTablesTournamentStatusScreenView extends UniversalScreenView {
29
- private readonly tournament: ManyTablesTournamentRoom;
30
-
31
- constructor(
32
- localeService: ILocaleService,
33
- lang: string,
34
- tournament: ManyTablesTournamentRoom,
35
- ) {
36
- super(localeService, lang);
37
- this.tournament = tournament;
38
- }
39
-
40
- build(): IAppScreen {
41
- return new StandardScreenComponent(AppScreenIdEnum.ROOMS)
42
- .addAppBar(
43
- new StatusAppBarComponent(
44
- this.tournament.getTitle(this.lang),
45
- new ArrowBackButtonComponent(
46
- this.localeService.t('common.button.back', { lang: this.lang }),
47
- ),
48
- ),
49
- )
50
- .addSection(this.getStatusHeader())
51
- .addSection(new CardListSectionComponent('id1', this.getPlayersList()));
52
- }
53
-
54
- private getPlayersList(): Array<MiniCardSectionListItemComponent> {
55
- if (this.tournament.getRoomMaster<TournamentMaster>().isFinish()) {
56
- return this.tournament.getWinners().map(
57
- (item) =>
58
- new MiniCardSectionListItemComponent(
59
- item.playerId,
60
- item.playerName,
61
- this.localeService.t(
62
- 'common.tournaments.status.screen.finish.description',
63
- {
64
- lang: this.lang,
65
- args: {
66
- RANK: item.rank.toString(),
67
- PRIZE: formatChips(item.profit, this.lang, true),
68
- },
69
- },
70
- ),
71
- new UrlImageComponent(item.playerAvatarUrl),
72
- true,
73
- true,
74
- '',
75
- ),
76
- );
77
- }
78
-
79
- return this.tournament
80
- .getParticipants()
81
- .map(
82
- (item) =>
83
- new MiniCardSectionListItemComponent(
84
- item.playerId,
85
- item.playerName,
86
- '',
87
- new UrlImageComponent(item.playerAvatarUrl),
88
- true,
89
- true,
90
- '',
91
- ),
92
- );
93
- }
94
-
95
- private getStatusHeader(): StatusHeaderSectionComponent {
96
- return new StatusHeaderSectionComponent(
97
- 'status',
98
- this.getStatusDescription(),
99
- new IconImageComponent(this.getStatusIcon()),
100
- );
101
- }
102
-
103
- private getStatusIcon(): string {
104
- if (this.tournament.getRoomMaster<TournamentMaster>().isCancelled()) {
105
- return AppScreenIconEnum.INFO;
106
- } else if (this.tournament.getRoomMaster<TournamentMaster>().isFinish()) {
107
- return AppScreenIconEnum.EMOJI_EVENTS;
108
- } else if (this.tournament.getRoomMaster<TournamentMaster>().isWaiting()) {
109
- return AppScreenIconEnum.HOURGLASS_EMPTY;
110
- }
111
-
112
- return '';
113
- }
114
-
115
- private getStatusDescription(): string {
116
- if (this.tournament.getRoomMaster<TournamentMaster>().isCancelled()) {
117
- return this.localeService.t('common.tournaments.status.4', {
118
- lang: this.lang,
119
- });
120
- } else if (this.tournament.getRoomMaster<TournamentMaster>().isFinish()) {
121
- return this.localeService.t('common.tournaments.status.3', {
122
- lang: this.lang,
123
- });
124
- } else if (
125
- this.tournament.getRoomMaster<TournamentMaster>().isInProgress()
126
- ) {
127
- return this.localeService.t('common.tournaments.status.2', {
128
- lang: this.lang,
129
- });
130
- } else if (this.tournament.getRoomMaster<TournamentMaster>().isWaiting()) {
131
- return replacePattern(this.tournament.getSubtitle(this.lang), {
132
- DATE: dayjs(this.tournament.getScheduleDate()).isToday()
133
- ? this.localeService.t('common.tournaments.status.today', {
134
- lang: this.lang,
135
- })
136
- : formatDate(this.tournament.getScheduleDate() ?? ''),
137
- SCHEDULE_DATE: formatTime(this.tournament.getScheduleDate() ?? ''),
138
- });
139
- }
140
-
141
- return '';
142
- }
143
- }
1
+ import dayjs from 'dayjs';
2
+ import {
3
+ AppScreenIconEnum,
4
+ AppScreenIdEnum,
5
+ IAppScreen,
6
+ UniversalScreenView,
7
+ ILocaleService,
8
+ StandardScreenComponent,
9
+ StatusAppBarComponent,
10
+ StatusHeaderSectionComponent,
11
+ CardListSectionComponent,
12
+ ArrowBackButtonComponent,
13
+ IconImageComponent,
14
+ MiniCardSectionListItemComponent,
15
+ UrlImageComponent,
16
+ } from 'jp.common.models';
17
+ import {
18
+ formatChips,
19
+ formatDate,
20
+ formatTime,
21
+ replacePattern,
22
+ } from 'jp.common.utils';
23
+ import {
24
+ ManyTablesTournamentRoom,
25
+ TournamentMaster,
26
+ } from 'jp.ms.common.engine';
27
+
28
+ export class ManyTablesTournamentStatusScreenView extends UniversalScreenView {
29
+ private readonly tournament: ManyTablesTournamentRoom;
30
+
31
+ constructor(
32
+ localeService: ILocaleService,
33
+ lang: string,
34
+ tournament: ManyTablesTournamentRoom,
35
+ ) {
36
+ super(localeService, lang);
37
+ this.tournament = tournament;
38
+ }
39
+
40
+ build(): IAppScreen {
41
+ return new StandardScreenComponent(AppScreenIdEnum.ROOMS)
42
+ .addAppBar(
43
+ new StatusAppBarComponent(
44
+ this.tournament.getTitle(this.lang),
45
+ new ArrowBackButtonComponent(
46
+ this.localeService.t('common.button.back', { lang: this.lang }),
47
+ ),
48
+ ),
49
+ )
50
+ .addSection(this.getStatusHeader())
51
+ .addSection(new CardListSectionComponent('id1', this.getPlayersList()));
52
+ }
53
+
54
+ private getPlayersList(): Array<MiniCardSectionListItemComponent> {
55
+ if (this.tournament.getRoomMaster<TournamentMaster>().isFinish()) {
56
+ return this.tournament.getWinners().map(
57
+ (item) =>
58
+ new MiniCardSectionListItemComponent(
59
+ item.playerId,
60
+ item.playerName,
61
+ this.localeService.t(
62
+ 'common.tournaments.status.screen.finish.description',
63
+ {
64
+ lang: this.lang,
65
+ args: {
66
+ RANK: item.rank.toString(),
67
+ PRIZE: formatChips(item.profit, this.lang, true),
68
+ },
69
+ },
70
+ ),
71
+ new UrlImageComponent(item.playerAvatarUrl),
72
+ true,
73
+ true,
74
+ '',
75
+ ),
76
+ );
77
+ }
78
+
79
+ return this.tournament
80
+ .getParticipants()
81
+ .map(
82
+ (item) =>
83
+ new MiniCardSectionListItemComponent(
84
+ item.playerId,
85
+ item.playerName,
86
+ '',
87
+ new UrlImageComponent(item.playerAvatarUrl),
88
+ true,
89
+ true,
90
+ '',
91
+ ),
92
+ );
93
+ }
94
+
95
+ private getStatusHeader(): StatusHeaderSectionComponent {
96
+ return new StatusHeaderSectionComponent(
97
+ 'status',
98
+ this.getStatusDescription(),
99
+ new IconImageComponent(this.getStatusIcon()),
100
+ );
101
+ }
102
+
103
+ private getStatusIcon(): string {
104
+ if (this.tournament.getRoomMaster<TournamentMaster>().isCancelled()) {
105
+ return AppScreenIconEnum.INFO;
106
+ } else if (this.tournament.getRoomMaster<TournamentMaster>().isFinish()) {
107
+ return AppScreenIconEnum.EMOJI_EVENTS;
108
+ } else if (this.tournament.getRoomMaster<TournamentMaster>().isWaiting()) {
109
+ return AppScreenIconEnum.HOURGLASS_EMPTY;
110
+ }
111
+
112
+ return '';
113
+ }
114
+
115
+ private getStatusDescription(): string {
116
+ if (this.tournament.getRoomMaster<TournamentMaster>().isCancelled()) {
117
+ return this.localeService.t('common.tournaments.status.4', {
118
+ lang: this.lang,
119
+ });
120
+ } else if (this.tournament.getRoomMaster<TournamentMaster>().isFinish()) {
121
+ return this.localeService.t('common.tournaments.status.3', {
122
+ lang: this.lang,
123
+ });
124
+ } else if (
125
+ this.tournament.getRoomMaster<TournamentMaster>().isInProgress()
126
+ ) {
127
+ return this.localeService.t('common.tournaments.status.2', {
128
+ lang: this.lang,
129
+ });
130
+ } else if (this.tournament.getRoomMaster<TournamentMaster>().isWaiting()) {
131
+ return replacePattern(this.tournament.getSubtitle(this.lang), {
132
+ DATE: dayjs(this.tournament.getScheduleDate()).isToday()
133
+ ? this.localeService.t('common.tournaments.status.today', {
134
+ lang: this.lang,
135
+ })
136
+ : formatDate(this.tournament.getScheduleDate() ?? ''),
137
+ SCHEDULE_DATE: formatTime(this.tournament.getScheduleDate() ?? ''),
138
+ });
139
+ }
140
+
141
+ return '';
142
+ }
143
+ }
@@ -1,63 +1,63 @@
1
- import {
2
- AppScreenIdEnum,
3
- IAppScreen,
4
- UniversalScreenView,
5
- ILocaleService,
6
- StandardScreenComponent,
7
- AppScreenRouter,
8
- StandardAppBarComponent,
9
- ArrowBackButtonComponent,
10
- CardListSectionComponent,
11
- MiniCardSectionListItemComponent,
12
- UrlImageComponent,
13
- } from 'jp.common.models';
14
- import { ManyTablesTournamentRoom } from 'jp.ms.common.engine';
15
-
16
- export class ManyTablesTournamentTablesListScreenView extends UniversalScreenView {
17
- private readonly tournament: ManyTablesTournamentRoom;
18
-
19
- constructor(
20
- localeService: ILocaleService,
21
- lang: string,
22
- tournament: ManyTablesTournamentRoom,
23
- ) {
24
- super(localeService, lang);
25
- this.tournament = tournament;
26
- }
27
-
28
- build(): IAppScreen {
29
- return new StandardScreenComponent(AppScreenIdEnum.ROOMS)
30
- .addAppBar(
31
- new StandardAppBarComponent(
32
- this.localeService.t('common.rooms.screen.title', {
33
- lang: this.lang,
34
- }),
35
- new ArrowBackButtonComponent(
36
- this.localeService.t('common.button.back', { lang: this.lang }),
37
- ),
38
- ),
39
- )
40
- .addSection(
41
- new CardListSectionComponent(
42
- 'id1',
43
- this.tournament?.getTables().map(
44
- (table) =>
45
- new MiniCardSectionListItemComponent(
46
- table.getId(),
47
- table.getTitle(this.lang),
48
- this.localeService.t('common.tournaments.screen.table.title', {
49
- lang: this.lang,
50
- args: { NUMBER: table.getNumber().toString() },
51
- }),
52
- new UrlImageComponent(
53
- `${table.getPlayers().length}/${table.getTableSize()}`,
54
- ),
55
- true,
56
- true,
57
- AppScreenRouter.getManyTablesTournamentTablePath(table.getId()),
58
- ),
59
- ) ?? [],
60
- ),
61
- );
62
- }
63
- }
1
+ import {
2
+ AppScreenIdEnum,
3
+ IAppScreen,
4
+ UniversalScreenView,
5
+ ILocaleService,
6
+ StandardScreenComponent,
7
+ AppScreenRouter,
8
+ StandardAppBarComponent,
9
+ ArrowBackButtonComponent,
10
+ CardListSectionComponent,
11
+ MiniCardSectionListItemComponent,
12
+ UrlImageComponent,
13
+ } from 'jp.common.models';
14
+ import { ManyTablesTournamentRoom } from 'jp.ms.common.engine';
15
+
16
+ export class ManyTablesTournamentTablesListScreenView extends UniversalScreenView {
17
+ private readonly tournament: ManyTablesTournamentRoom;
18
+
19
+ constructor(
20
+ localeService: ILocaleService,
21
+ lang: string,
22
+ tournament: ManyTablesTournamentRoom,
23
+ ) {
24
+ super(localeService, lang);
25
+ this.tournament = tournament;
26
+ }
27
+
28
+ build(): IAppScreen {
29
+ return new StandardScreenComponent(AppScreenIdEnum.ROOMS)
30
+ .addAppBar(
31
+ new StandardAppBarComponent(
32
+ this.localeService.t('common.rooms.screen.title', {
33
+ lang: this.lang,
34
+ }),
35
+ new ArrowBackButtonComponent(
36
+ this.localeService.t('common.button.back', { lang: this.lang }),
37
+ ),
38
+ ),
39
+ )
40
+ .addSection(
41
+ new CardListSectionComponent(
42
+ 'id1',
43
+ this.tournament?.getTables().map(
44
+ (table) =>
45
+ new MiniCardSectionListItemComponent(
46
+ table.getId(),
47
+ table.getTitle(this.lang),
48
+ this.localeService.t('common.tournaments.screen.table.title', {
49
+ lang: this.lang,
50
+ args: { NUMBER: table.getNumber().toString() },
51
+ }),
52
+ new UrlImageComponent(
53
+ `${table.getPlayers().length}/${table.getTableSize()}`,
54
+ ),
55
+ true,
56
+ true,
57
+ AppScreenRouter.getManyTablesTournamentTablePath(table.getId()),
58
+ ),
59
+ ) ?? [],
60
+ ),
61
+ );
62
+ }
63
+ }
@@ -1,3 +1,3 @@
1
- export const MANY_TABLES_TOURNAMENT_OPTIONS = Symbol(
2
- 'MANY_TABLES_TOURNAMENT_OPTIONS',
3
- );
1
+ export const MANY_TABLES_TOURNAMENT_OPTIONS = Symbol(
2
+ 'MANY_TABLES_TOURNAMENT_OPTIONS',
3
+ );