jp.ms.common.modules 1.0.18 → 1.0.21

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 (316) hide show
  1. package/dist/dto/app-screen/app-screen-dialog.dto.d.ts +10 -0
  2. package/dist/dto/app-screen/app-screen-dialog.dto.js +81 -0
  3. package/dist/dto/app-screen/app-screen-dialog.dto.js.map +1 -0
  4. package/dist/dto/app-screen/app-screen.dto.d.ts +3 -0
  5. package/dist/dto/app-screen/app-screen.dto.js +12 -0
  6. package/dist/dto/app-screen/app-screen.dto.js.map +1 -1
  7. package/dist/dto/common/join-tournament.dto.d.ts +5 -0
  8. package/dist/dto/common/join-tournament.dto.js +47 -0
  9. package/dist/dto/common/join-tournament.dto.js.map +1 -0
  10. package/dist/dto/common/many-tables-tournament-create.dto.d.ts +20 -0
  11. package/dist/dto/common/many-tables-tournament-create.dto.js +167 -0
  12. package/dist/dto/common/many-tables-tournament-create.dto.js.map +1 -0
  13. package/dist/dto/common/many-tables-tournament-update.dto.d.ts +3 -0
  14. package/dist/dto/common/many-tables-tournament-update.dto.js +8 -0
  15. package/dist/dto/common/many-tables-tournament-update.dto.js.map +1 -0
  16. package/dist/dto/common/player-check-state.dto.d.ts +2 -2
  17. package/dist/dto/common/player-check-state.dto.js.map +1 -1
  18. package/dist/modules/anti-freeze-system/anti-freeze-system.constants.d.ts +1 -0
  19. package/dist/modules/anti-freeze-system/anti-freeze-system.constants.js +5 -0
  20. package/dist/modules/anti-freeze-system/anti-freeze-system.constants.js.map +1 -0
  21. package/dist/modules/anti-freeze-system/anti-freeze-system.interfaces.d.ts +13 -0
  22. package/dist/modules/anti-freeze-system/anti-freeze-system.interfaces.js +3 -0
  23. package/dist/modules/anti-freeze-system/anti-freeze-system.interfaces.js.map +1 -0
  24. package/dist/modules/anti-freeze-system/anti-freeze-system.module.d.ts +13 -0
  25. package/dist/modules/anti-freeze-system/anti-freeze-system.module.js +65 -0
  26. package/dist/modules/anti-freeze-system/anti-freeze-system.module.js.map +1 -0
  27. package/dist/modules/anti-freeze-system/anti-freeze-system.service.d.ts +21 -0
  28. package/dist/modules/anti-freeze-system/anti-freeze-system.service.js +99 -0
  29. package/dist/modules/anti-freeze-system/anti-freeze-system.service.js.map +1 -0
  30. package/dist/modules/anti-freeze-system/index.d.ts +1 -0
  31. package/dist/modules/anti-freeze-system/index.js +6 -0
  32. package/dist/modules/anti-freeze-system/index.js.map +1 -0
  33. package/dist/modules/base-achievements/base-achievements.module.d.ts +15 -0
  34. package/dist/modules/base-achievements/base-achievements.module.js +138 -0
  35. package/dist/modules/base-achievements/base-achievements.module.js.map +1 -0
  36. package/dist/modules/base-achievements/index.d.ts +1 -0
  37. package/dist/modules/base-achievements/index.js +6 -0
  38. package/dist/modules/base-achievements/index.js.map +1 -0
  39. package/dist/modules/event-bus/events-bus.app.subscribe.service.d.ts +7 -0
  40. package/dist/modules/event-bus/events-bus.app.subscribe.service.js +32 -0
  41. package/dist/modules/event-bus/events-bus.app.subscribe.service.js.map +1 -0
  42. package/dist/modules/event-bus/events-bus.main-tables.subscribe.service.d.ts +11 -0
  43. package/dist/modules/event-bus/events-bus.main-tables.subscribe.service.js +43 -0
  44. package/dist/modules/event-bus/events-bus.main-tables.subscribe.service.js.map +1 -0
  45. package/dist/modules/event-bus/events-bus.many-tables-tournament.subscribe.service.d.ts +3 -0
  46. package/dist/modules/event-bus/events-bus.many-tables-tournament.subscribe.service.js +18 -0
  47. package/dist/modules/event-bus/events-bus.many-tables-tournament.subscribe.service.js.map +1 -0
  48. package/dist/modules/event-bus/events-bus.module.d.ts +2 -0
  49. package/dist/modules/event-bus/events-bus.module.js +35 -0
  50. package/dist/modules/event-bus/events-bus.module.js.map +1 -0
  51. package/dist/modules/event-bus/events-bus.one-table-tournament.subscribe.service.d.ts +3 -0
  52. package/dist/modules/event-bus/events-bus.one-table-tournament.subscribe.service.js +18 -0
  53. package/dist/modules/event-bus/events-bus.one-table-tournament.subscribe.service.js.map +1 -0
  54. package/dist/modules/event-bus/events-bus.tournament.subscribe.service.d.ts +7 -0
  55. package/dist/modules/event-bus/events-bus.tournament.subscribe.service.js +18 -0
  56. package/dist/modules/event-bus/events-bus.tournament.subscribe.service.js.map +1 -0
  57. package/dist/modules/event-bus/index.d.ts +5 -0
  58. package/dist/modules/event-bus/index.js +14 -0
  59. package/dist/modules/event-bus/index.js.map +1 -0
  60. package/dist/modules/events/events.module.js +2 -2
  61. package/dist/modules/events/events.module.js.map +1 -1
  62. package/dist/modules/events/index.d.ts +1 -0
  63. package/dist/modules/events/index.js +6 -0
  64. package/dist/modules/events/index.js.map +1 -0
  65. package/dist/modules/index.d.ts +15 -13
  66. package/dist/modules/index.js +37 -25
  67. package/dist/modules/index.js.map +1 -1
  68. package/dist/modules/logger/index.d.ts +2 -0
  69. package/dist/modules/logger/index.js +8 -0
  70. package/dist/modules/logger/index.js.map +1 -0
  71. package/dist/modules/main/index.d.ts +1 -0
  72. package/dist/modules/main/index.js +6 -0
  73. package/dist/modules/main/index.js.map +1 -0
  74. package/dist/modules/main/main-tables-list-screen.view.d.ts +9 -0
  75. package/dist/modules/main/main-tables-list-screen.view.js +38 -0
  76. package/dist/modules/main/main-tables-list-screen.view.js.map +1 -0
  77. package/dist/modules/main/main.constants.d.ts +1 -0
  78. package/dist/modules/main/main.constants.js +5 -0
  79. package/dist/modules/main/main.constants.js.map +1 -0
  80. package/dist/modules/main/main.controller.d.ts +12 -0
  81. package/dist/modules/main/main.controller.js +79 -0
  82. package/dist/modules/main/main.controller.js.map +1 -0
  83. package/dist/modules/{rooms/rooms.interfaces.d.ts → main/main.interfaces.d.ts} +2 -4
  84. package/dist/modules/{rooms/rooms.interfaces.js → main/main.interfaces.js} +1 -1
  85. package/dist/modules/main/main.interfaces.js.map +1 -0
  86. package/dist/modules/main/main.module.d.ts +12 -0
  87. package/dist/modules/main/main.module.js +69 -0
  88. package/dist/modules/main/main.module.js.map +1 -0
  89. package/dist/modules/main/main.service.d.ts +24 -0
  90. package/dist/modules/main/main.service.js +104 -0
  91. package/dist/modules/main/main.service.js.map +1 -0
  92. package/dist/modules/many-tables-tournament/index.d.ts +1 -0
  93. package/dist/modules/many-tables-tournament/index.js +6 -0
  94. package/dist/modules/many-tables-tournament/index.js.map +1 -0
  95. package/dist/modules/many-tables-tournament/many-tables-tournament-status-screen.view.d.ts +7 -0
  96. package/dist/modules/many-tables-tournament/many-tables-tournament-status-screen.view.js +19 -0
  97. package/dist/modules/many-tables-tournament/many-tables-tournament-status-screen.view.js.map +1 -0
  98. package/dist/modules/many-tables-tournament/many-tables-tournament-tables-list-screen.view.d.ts +7 -0
  99. package/dist/modules/many-tables-tournament/many-tables-tournament-tables-list-screen.view.js +18 -0
  100. package/dist/modules/many-tables-tournament/many-tables-tournament-tables-list-screen.view.js.map +1 -0
  101. package/dist/modules/many-tables-tournament/many-tables-tournament.constants.d.ts +1 -0
  102. package/dist/modules/many-tables-tournament/many-tables-tournament.constants.js +5 -0
  103. package/dist/modules/many-tables-tournament/many-tables-tournament.constants.js.map +1 -0
  104. package/dist/modules/many-tables-tournament/many-tables-tournament.controller.d.ts +21 -0
  105. package/dist/modules/many-tables-tournament/many-tables-tournament.controller.js +174 -0
  106. package/dist/modules/many-tables-tournament/many-tables-tournament.controller.js.map +1 -0
  107. package/dist/modules/many-tables-tournament/many-tables-tournament.interfaces.d.ts +13 -0
  108. package/dist/modules/many-tables-tournament/many-tables-tournament.interfaces.js +3 -0
  109. package/dist/modules/many-tables-tournament/many-tables-tournament.interfaces.js.map +1 -0
  110. package/dist/modules/many-tables-tournament/many-tables-tournament.module.d.ts +14 -0
  111. package/dist/modules/many-tables-tournament/many-tables-tournament.module.js +68 -0
  112. package/dist/modules/many-tables-tournament/many-tables-tournament.module.js.map +1 -0
  113. package/dist/modules/many-tables-tournament/many-tables-tournament.service.d.ts +26 -0
  114. package/dist/modules/many-tables-tournament/many-tables-tournament.service.js +140 -0
  115. package/dist/modules/many-tables-tournament/many-tables-tournament.service.js.map +1 -0
  116. package/dist/modules/menu/index.d.ts +1 -0
  117. package/dist/modules/menu/index.js +6 -0
  118. package/dist/modules/menu/index.js.map +1 -0
  119. package/dist/modules/menu/menu-screen.view.d.ts +7 -0
  120. package/dist/modules/menu/menu-screen.view.js +18 -0
  121. package/dist/modules/menu/menu-screen.view.js.map +1 -0
  122. package/dist/modules/menu/menu.service.d.ts +1 -1
  123. package/dist/modules/menu/menu.service.js +3 -5
  124. package/dist/modules/menu/menu.service.js.map +1 -1
  125. package/dist/modules/one-table-tournament/index.d.ts +1 -0
  126. package/dist/modules/one-table-tournament/index.js +6 -0
  127. package/dist/modules/one-table-tournament/index.js.map +1 -0
  128. package/dist/modules/one-table-tournament/one-table-tournament-status-screen.view.d.ts +7 -0
  129. package/dist/modules/one-table-tournament/one-table-tournament-status-screen.view.js +19 -0
  130. package/dist/modules/one-table-tournament/one-table-tournament-status-screen.view.js.map +1 -0
  131. package/dist/modules/one-table-tournament/one-table-tournament.constants.d.ts +1 -0
  132. package/dist/modules/one-table-tournament/one-table-tournament.constants.js +5 -0
  133. package/dist/modules/one-table-tournament/one-table-tournament.constants.js.map +1 -0
  134. package/dist/modules/one-table-tournament/one-table-tournament.controller.d.ts +14 -0
  135. package/dist/modules/one-table-tournament/one-table-tournament.controller.js +112 -0
  136. package/dist/modules/one-table-tournament/one-table-tournament.controller.js.map +1 -0
  137. package/dist/modules/one-table-tournament/one-table-tournament.interfaces.d.ts +13 -0
  138. package/dist/modules/one-table-tournament/one-table-tournament.interfaces.js +3 -0
  139. package/dist/modules/one-table-tournament/one-table-tournament.interfaces.js.map +1 -0
  140. package/dist/modules/one-table-tournament/one-table-tournament.module.d.ts +14 -0
  141. package/dist/modules/one-table-tournament/one-table-tournament.module.js +68 -0
  142. package/dist/modules/one-table-tournament/one-table-tournament.module.js.map +1 -0
  143. package/dist/modules/one-table-tournament/one-table-tournament.service.d.ts +19 -0
  144. package/dist/modules/one-table-tournament/one-table-tournament.service.js +110 -0
  145. package/dist/modules/one-table-tournament/one-table-tournament.service.js.map +1 -0
  146. package/dist/modules/players-manager/index.d.ts +2 -0
  147. package/dist/modules/players-manager/index.js +8 -0
  148. package/dist/modules/players-manager/index.js.map +1 -0
  149. package/dist/modules/simple-rooms/index.d.ts +1 -0
  150. package/dist/modules/simple-rooms/index.js +6 -0
  151. package/dist/modules/simple-rooms/index.js.map +1 -0
  152. package/dist/modules/simple-rooms/simple-rooms.constants.d.ts +1 -0
  153. package/dist/modules/simple-rooms/simple-rooms.constants.js +5 -0
  154. package/dist/modules/simple-rooms/simple-rooms.constants.js.map +1 -0
  155. package/dist/modules/simple-rooms/simple-rooms.controller.d.ts +11 -0
  156. package/dist/modules/{rooms/rooms.controller.js → simple-rooms/simple-rooms.controller.js} +14 -45
  157. package/dist/modules/simple-rooms/simple-rooms.controller.js.map +1 -0
  158. package/dist/modules/simple-rooms/simple-rooms.interfaces.d.ts +13 -0
  159. package/dist/modules/simple-rooms/simple-rooms.interfaces.js +3 -0
  160. package/dist/modules/simple-rooms/simple-rooms.interfaces.js.map +1 -0
  161. package/dist/modules/simple-rooms/simple-rooms.module.d.ts +6 -0
  162. package/dist/modules/{rooms/rooms.module.js → simple-rooms/simple-rooms.module.js} +15 -15
  163. package/dist/modules/simple-rooms/simple-rooms.module.js.map +1 -0
  164. package/dist/modules/{rooms/rooms.service.d.ts → simple-rooms/simple-rooms.service.d.ts} +5 -9
  165. package/dist/modules/{rooms/rooms.service.js → simple-rooms/simple-rooms.service.js} +12 -38
  166. package/dist/modules/simple-rooms/simple-rooms.service.js.map +1 -0
  167. package/dist/modules/simple-rooms-manager/index.d.ts +2 -0
  168. package/dist/modules/simple-rooms-manager/index.js +8 -0
  169. package/dist/modules/simple-rooms-manager/index.js.map +1 -0
  170. package/dist/modules/simple-rooms-manager/simple-rooms-manager.module.d.ts +2 -13
  171. package/dist/modules/simple-rooms-manager/simple-rooms-manager.module.js +5 -117
  172. package/dist/modules/simple-rooms-manager/simple-rooms-manager.module.js.map +1 -1
  173. package/dist/modules/simple-rooms-manager/simple-rooms-manager.service.d.ts +23 -2
  174. package/dist/modules/simple-rooms-manager/simple-rooms-manager.service.js +86 -2
  175. package/dist/modules/simple-rooms-manager/simple-rooms-manager.service.js.map +1 -1
  176. package/dist/modules/support/index.d.ts +1 -0
  177. package/dist/modules/support/index.js +6 -0
  178. package/dist/modules/support/index.js.map +1 -0
  179. package/dist/modules/support/support.controller.d.ts +1 -0
  180. package/dist/modules/support/support.controller.js +10 -0
  181. package/dist/modules/support/support.controller.js.map +1 -1
  182. package/dist/modules/support/support.service.d.ts +4 -1
  183. package/dist/modules/support/support.service.js +10 -2
  184. package/dist/modules/support/support.service.js.map +1 -1
  185. package/dist/modules/tournament-many-tables-rooms-manager/index.d.ts +2 -0
  186. package/dist/modules/tournament-many-tables-rooms-manager/index.js +8 -0
  187. package/dist/modules/tournament-many-tables-rooms-manager/index.js.map +1 -0
  188. package/dist/modules/tournament-many-tables-rooms-manager/tournament-many-tables-rooms-manager.constants.d.ts +1 -0
  189. package/dist/modules/tournament-many-tables-rooms-manager/tournament-many-tables-rooms-manager.constants.js +5 -0
  190. package/dist/modules/tournament-many-tables-rooms-manager/tournament-many-tables-rooms-manager.constants.js.map +1 -0
  191. package/dist/modules/tournament-many-tables-rooms-manager/tournament-many-tables-rooms-manager.interfaces.d.ts +18 -0
  192. package/dist/modules/tournament-many-tables-rooms-manager/tournament-many-tables-rooms-manager.interfaces.js +3 -0
  193. package/dist/modules/tournament-many-tables-rooms-manager/tournament-many-tables-rooms-manager.interfaces.js.map +1 -0
  194. package/dist/modules/tournament-many-tables-rooms-manager/tournament-many-tables-rooms-manager.module.d.ts +9 -0
  195. package/dist/modules/tournament-many-tables-rooms-manager/tournament-many-tables-rooms-manager.module.js +61 -0
  196. package/dist/modules/tournament-many-tables-rooms-manager/tournament-many-tables-rooms-manager.module.js.map +1 -0
  197. package/dist/modules/tournament-many-tables-rooms-manager/tournament-many-tables-rooms-manager.service.d.ts +41 -0
  198. package/dist/modules/tournament-many-tables-rooms-manager/tournament-many-tables-rooms-manager.service.js +186 -0
  199. package/dist/modules/tournament-many-tables-rooms-manager/tournament-many-tables-rooms-manager.service.js.map +1 -0
  200. package/dist/modules/tournament-one-table-rooms-manager/index.d.ts +2 -0
  201. package/dist/modules/tournament-one-table-rooms-manager/index.js +8 -0
  202. package/dist/modules/tournament-one-table-rooms-manager/index.js.map +1 -0
  203. package/dist/modules/tournament-one-table-rooms-manager/tournament-one-table-rooms-manager.constants.d.ts +1 -0
  204. package/dist/modules/tournament-one-table-rooms-manager/tournament-one-table-rooms-manager.constants.js +5 -0
  205. package/dist/modules/tournament-one-table-rooms-manager/tournament-one-table-rooms-manager.constants.js.map +1 -0
  206. package/dist/modules/tournament-one-table-rooms-manager/tournament-one-table-rooms-manager.interfaces.d.ts +18 -0
  207. package/dist/modules/tournament-one-table-rooms-manager/tournament-one-table-rooms-manager.interfaces.js +3 -0
  208. package/dist/modules/tournament-one-table-rooms-manager/tournament-one-table-rooms-manager.interfaces.js.map +1 -0
  209. package/dist/modules/tournament-one-table-rooms-manager/tournament-one-table-rooms-manager.module.d.ts +9 -0
  210. package/dist/modules/tournament-one-table-rooms-manager/tournament-one-table-rooms-manager.module.js +61 -0
  211. package/dist/modules/tournament-one-table-rooms-manager/tournament-one-table-rooms-manager.module.js.map +1 -0
  212. package/dist/modules/tournament-one-table-rooms-manager/tournament-one-table-rooms-manager.service.d.ts +33 -0
  213. package/dist/modules/tournament-one-table-rooms-manager/tournament-one-table-rooms-manager.service.js +155 -0
  214. package/dist/modules/tournament-one-table-rooms-manager/tournament-one-table-rooms-manager.service.js.map +1 -0
  215. package/dist/tsconfig.tsbuildinfo +1 -1
  216. package/dist/utils/date.d.ts +2 -0
  217. package/dist/utils/date.js +11 -0
  218. package/dist/utils/date.js.map +1 -0
  219. package/dist/utils/game-table-result.d.ts +39 -0
  220. package/dist/utils/game-table-result.js +90 -0
  221. package/dist/utils/game-table-result.js.map +1 -0
  222. package/dist/views/index.d.ts +1 -0
  223. package/dist/views/index.js +6 -0
  224. package/dist/views/index.js.map +1 -0
  225. package/dist/views/tournament-buy-ticket-dialog.view.d.ts +4 -0
  226. package/dist/views/tournament-buy-ticket-dialog.view.js +11 -0
  227. package/dist/views/tournament-buy-ticket-dialog.view.js.map +1 -0
  228. package/package.json +8 -5
  229. package/src/dto/app-screen/app-screen-dialog.dto.ts +57 -0
  230. package/src/dto/app-screen/app-screen.dto.ts +12 -1
  231. package/src/dto/common/join-tournament.dto.ts +30 -0
  232. package/src/dto/common/many-tables-tournament-create.dto.ts +123 -0
  233. package/src/dto/common/many-tables-tournament-update.dto.ts +3 -0
  234. package/src/dto/common/player-check-state.dto.ts +2 -2
  235. package/src/modules/anti-freeze-system/anti-freeze-system.constants.ts +1 -0
  236. package/src/modules/anti-freeze-system/anti-freeze-system.interfaces.ts +15 -0
  237. package/src/modules/anti-freeze-system/anti-freeze-system.module.ts +55 -0
  238. package/src/modules/anti-freeze-system/anti-freeze-system.service.ts +94 -0
  239. package/src/modules/anti-freeze-system/index.ts +1 -0
  240. package/src/modules/base-achievements/base-achievements.module.ts +163 -0
  241. package/src/modules/base-achievements/index.ts +1 -0
  242. package/src/modules/event-bus/events-bus.app.subscribe.service.ts +21 -0
  243. package/src/modules/event-bus/events-bus.main-tables.subscribe.service.ts +34 -0
  244. package/src/modules/event-bus/events-bus.many-tables-tournament.subscribe.service.ts +6 -0
  245. package/src/modules/event-bus/events-bus.module.ts +23 -0
  246. package/src/modules/event-bus/events-bus.one-table-tournament.subscribe.service.ts +6 -0
  247. package/src/modules/event-bus/events-bus.tournament.subscribe.service.ts +19 -0
  248. package/src/modules/event-bus/index.ts +5 -0
  249. package/src/modules/events/events.module.ts +1 -1
  250. package/src/modules/events/index.ts +1 -0
  251. package/src/modules/index.ts +20 -26
  252. package/src/modules/logger/index.ts +2 -0
  253. package/src/modules/main/index.ts +1 -0
  254. package/src/modules/main/main-tables-list-screen.view.ts +107 -0
  255. package/src/modules/main/main.constants.ts +1 -0
  256. package/src/modules/main/main.controller.ts +38 -0
  257. package/src/modules/{rooms/rooms.interfaces.ts → main/main.interfaces.ts} +2 -4
  258. package/src/modules/main/main.module.ts +56 -0
  259. package/src/modules/main/main.service.ts +95 -0
  260. package/src/modules/many-tables-tournament/index.ts +1 -0
  261. package/src/modules/many-tables-tournament/many-tables-tournament-status-screen.view.ts +59 -0
  262. package/src/modules/many-tables-tournament/many-tables-tournament-tables-list-screen.view.ts +53 -0
  263. package/src/modules/many-tables-tournament/many-tables-tournament.constants.ts +1 -0
  264. package/src/modules/many-tables-tournament/many-tables-tournament.controller.ts +121 -0
  265. package/src/modules/many-tables-tournament/many-tables-tournament.interfaces.ts +15 -0
  266. package/src/modules/many-tables-tournament/many-tables-tournament.module.ts +53 -0
  267. package/src/modules/many-tables-tournament/many-tables-tournament.service.ts +184 -0
  268. package/src/modules/menu/index.ts +1 -0
  269. package/src/modules/menu/menu-screen.view.ts +48 -0
  270. package/src/modules/menu/menu.service.ts +14 -32
  271. package/src/modules/one-table-tournament/index.ts +1 -0
  272. package/src/modules/one-table-tournament/one-table-tournament-status-screen.view.ts +64 -0
  273. package/src/modules/one-table-tournament/one-table-tournament.constants.ts +1 -0
  274. package/src/modules/one-table-tournament/one-table-tournament.controller.ts +74 -0
  275. package/src/modules/one-table-tournament/one-table-tournament.interfaces.ts +15 -0
  276. package/src/modules/one-table-tournament/one-table-tournament.module.ts +53 -0
  277. package/src/modules/one-table-tournament/one-table-tournament.service.ts +133 -0
  278. package/src/modules/players-manager/index.ts +2 -0
  279. package/src/modules/simple-rooms/index.ts +1 -0
  280. package/src/modules/simple-rooms/simple-rooms.constants.ts +1 -0
  281. package/src/modules/{rooms/rooms.controller.ts → simple-rooms/simple-rooms.controller.ts} +6 -25
  282. package/src/modules/simple-rooms/simple-rooms.interfaces.ts +15 -0
  283. package/src/modules/simple-rooms/simple-rooms.module.ts +36 -0
  284. package/src/modules/simple-rooms/simple-rooms.service.ts +90 -0
  285. package/src/modules/simple-rooms-manager/index.ts +2 -0
  286. package/src/modules/simple-rooms-manager/simple-rooms-manager.module.ts +11 -116
  287. package/src/modules/simple-rooms-manager/simple-rooms-manager.service.ts +121 -19
  288. package/src/modules/support/index.ts +1 -0
  289. package/src/modules/support/support.controller.ts +6 -0
  290. package/src/modules/support/support.service.ts +8 -0
  291. package/src/modules/tournament-many-tables-rooms-manager/index.ts +2 -0
  292. package/src/modules/tournament-many-tables-rooms-manager/tournament-many-tables-rooms-manager.constants.ts +1 -0
  293. package/src/modules/tournament-many-tables-rooms-manager/tournament-many-tables-rooms-manager.interfaces.ts +20 -0
  294. package/src/modules/tournament-many-tables-rooms-manager/tournament-many-tables-rooms-manager.module.ts +61 -0
  295. package/src/modules/tournament-many-tables-rooms-manager/tournament-many-tables-rooms-manager.service.ts +239 -0
  296. package/src/modules/tournament-one-table-rooms-manager/index.ts +2 -0
  297. package/src/modules/tournament-one-table-rooms-manager/tournament-one-table-rooms-manager.constants.ts +1 -0
  298. package/src/modules/tournament-one-table-rooms-manager/tournament-one-table-rooms-manager.interfaces.ts +20 -0
  299. package/src/modules/tournament-one-table-rooms-manager/tournament-one-table-rooms-manager.module.ts +59 -0
  300. package/src/modules/tournament-one-table-rooms-manager/tournament-one-table-rooms-manager.service.ts +178 -0
  301. package/src/utils/date.ts +7 -0
  302. package/src/utils/game-table-result.ts +110 -0
  303. package/src/views/index.ts +1 -0
  304. package/src/views/tournament-buy-ticket-dialog.view.ts +21 -0
  305. package/dist/modules/rooms/rooms.constants.d.ts +0 -1
  306. package/dist/modules/rooms/rooms.constants.js +0 -5
  307. package/dist/modules/rooms/rooms.constants.js.map +0 -1
  308. package/dist/modules/rooms/rooms.controller.d.ts +0 -15
  309. package/dist/modules/rooms/rooms.controller.js.map +0 -1
  310. package/dist/modules/rooms/rooms.interfaces.js.map +0 -1
  311. package/dist/modules/rooms/rooms.module.d.ts +0 -6
  312. package/dist/modules/rooms/rooms.module.js.map +0 -1
  313. package/dist/modules/rooms/rooms.service.js.map +0 -1
  314. package/src/modules/rooms/rooms.constants.ts +0 -1
  315. package/src/modules/rooms/rooms.module.ts +0 -36
  316. package/src/modules/rooms/rooms.service.ts +0 -150
@@ -0,0 +1,2 @@
1
+ export { TournamentOneTableRoomsManagerModule } from './tournament-one-table-rooms-manager.module';
2
+ export { TournamentOneTableRoomsManagerService } from './tournament-one-table-rooms-manager.service';
@@ -0,0 +1 @@
1
+ export const TOURNAMENT_ONE_TABLE_ROOMS_MANAGER_OPTIONS = Symbol('TOURNAMENT_ONE_TABLE_ROOMS_MANAGER_OPTIONS');
@@ -0,0 +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
+ import { TournamentRoomConfig, OneTableTournamentRoom, IPrizeTableData } from 'jp.ms.common.engine';
7
+ import { ConfigService } from '@nestjs/config';
8
+
9
+ export interface TournamentOneTableRoomsManagerOptions extends Pick<ModuleMetadata, 'imports'> {
10
+ imports?: Array<Type<any> | DynamicModule | Promise<DynamicModule> | ForwardReference>;
11
+ inject?: any[];
12
+ useFactory?: (...args: any[]) => Promise<any> | any;
13
+ }
14
+
15
+ export interface TournamentOneTableRoomsFactoryOptions {
16
+ i18n: I18nService;
17
+ configService: ConfigService;
18
+ tournamentPrizeTable: IPrizeTableData;
19
+ createTournamentRoom (room: TournamentRoomConfig): OneTableTournamentRoom;
20
+ }
@@ -0,0 +1,59 @@
1
+ import { DynamicModule, Global, Module, Provider } from '@nestjs/common';
2
+ import { MongooseModule } from '@nestjs/mongoose';
3
+ import {
4
+ TournamentOneTableRoom,
5
+ TournamentOneTableRoomSchema,
6
+ TournamentOneTableRoomsRepository,
7
+ User,
8
+ UserSchema,
9
+ UsersRepository,
10
+ GameResult,
11
+ GameResultSchema,
12
+ GameResultRepository,
13
+ } from 'jp.db.schemas';
14
+
15
+ import { TournamentOneTableRoomsManagerService } from './tournament-one-table-rooms-manager.service';
16
+ import { TournamentOneTableRoomsManagerOptions } from './tournament-one-table-rooms-manager.interfaces';
17
+ import { TOURNAMENT_ONE_TABLE_ROOMS_MANAGER_OPTIONS } from './tournament-one-table-rooms-manager.constants';
18
+
19
+ @Global()
20
+ @Module({
21
+ imports: [
22
+ MongooseModule.forFeature([{name: TournamentOneTableRoom.name, schema: TournamentOneTableRoomSchema}]),
23
+ MongooseModule.forFeature([{name: User.name, schema: UserSchema}]),
24
+ MongooseModule.forFeature([{name: GameResult.name, schema: GameResultSchema}]),
25
+ ],
26
+ providers: [
27
+ TournamentOneTableRoomsRepository,
28
+ UsersRepository,
29
+ TournamentOneTableRoomsManagerService,
30
+ GameResultRepository,
31
+ ],
32
+ exports: [TournamentOneTableRoomsManagerService],
33
+ })
34
+ export class TournamentOneTableRoomsManagerModule {
35
+ constructor (
36
+ private readonly managerService: TournamentOneTableRoomsManagerService,
37
+ ) {
38
+ }
39
+
40
+ static forRootAsync (options: TournamentOneTableRoomsManagerOptions): DynamicModule {
41
+ return {
42
+ module: TournamentOneTableRoomsManagerModule,
43
+ imports: options.imports ?? [],
44
+ providers: [
45
+ {
46
+ provide: TOURNAMENT_ONE_TABLE_ROOMS_MANAGER_OPTIONS,
47
+ useFactory: options.useFactory,
48
+ inject: options.inject || [],
49
+ } as Provider,
50
+ ],
51
+ };
52
+ }
53
+
54
+ async onModuleInit () {
55
+ await this.managerService.createMasterTournament();
56
+ await this.managerService.hydrateTournamentsFromDB();
57
+ }
58
+ }
59
+
@@ -0,0 +1,178 @@
1
+ import { Inject, Injectable } from '@nestjs/common';
2
+ import {
3
+ BaseGameEvent,
4
+ GameMaster,
5
+ NoStartStrategy,
6
+ OneTableTournamentRoom,
7
+ RoomUpdateStateEvent,
8
+ TournamentMaster,
9
+ TournamentRoomConfig,
10
+ } from 'jp.ms.common.engine';
11
+ import {
12
+ GameResultRepository,
13
+ TournamentOneTableRoomDocument,
14
+ TournamentOneTableRoomsRepository,
15
+ UsersRepository
16
+ } from 'jp.db.schemas';
17
+ import { InjectConnection } from '@nestjs/mongoose';
18
+ import { Connection } from 'mongoose';
19
+
20
+ import { JpLoggerService } from '../logger/jp-logger.service';
21
+ import { saveGameTablesResult, saveTournamentResult } from '../../utils/game-table-result';
22
+ import { EventsBusMainTablesSubscribeService, EventsBusOneTableTournamentSubscribeService } from '../event-bus';
23
+
24
+ import { TOURNAMENT_ONE_TABLE_ROOMS_MANAGER_OPTIONS } from './tournament-one-table-rooms-manager.constants';
25
+ import { TournamentOneTableRoomsFactoryOptions } from './tournament-one-table-rooms-manager.interfaces';
26
+
27
+ @Injectable()
28
+ export class TournamentOneTableRoomsManagerService {
29
+ private readonly rooms: Map<string, OneTableTournamentRoom>;
30
+
31
+ constructor(
32
+ private readonly tournamentRepository: TournamentOneTableRoomsRepository,
33
+ private readonly usersRepository: UsersRepository,
34
+ private readonly gameResultRepository: GameResultRepository,
35
+ private readonly eventsBusMainTablesSubscribeService: EventsBusMainTablesSubscribeService,
36
+ private readonly eventsBusOneTableTournamentSubscribeService: EventsBusOneTableTournamentSubscribeService,
37
+ @Inject(TOURNAMENT_ONE_TABLE_ROOMS_MANAGER_OPTIONS) private readonly options: TournamentOneTableRoomsFactoryOptions,
38
+ @InjectConnection() private readonly connection: Connection,
39
+ @Inject() private readonly logger: JpLoggerService,
40
+ ) {
41
+ this.rooms = new Map<string, OneTableTournamentRoom>();
42
+ }
43
+
44
+ get gameType() {
45
+ return this.options.configService.get<string>('GAME_TYPE') || '';
46
+ }
47
+
48
+ getRoomById(roomId: string): OneTableTournamentRoom | undefined {
49
+ return this.rooms.get(roomId);
50
+ }
51
+
52
+ getRoomByTableId(tableId: string): OneTableTournamentRoom | undefined {
53
+ const { roomId } = GameMaster.parseTableId(tableId);
54
+
55
+ return this.getRoomById(roomId);
56
+ }
57
+
58
+ getRooms(): Array<OneTableTournamentRoom> {
59
+ return Array.from(this.rooms.values());
60
+ }
61
+
62
+ getTables(): Array<GameMaster> {
63
+ return this.getRooms().reduce(
64
+ (result, currentValue) => {
65
+ return [...result, ...currentValue.getMasters()];
66
+ },
67
+ [] as Array<GameMaster>
68
+ );
69
+ }
70
+
71
+ addRoom(room: OneTableTournamentRoom) {
72
+ this.rooms.set(room.getId(), room);
73
+ }
74
+
75
+ async createMasterTournament() {
76
+ const waitingTournament = await this.tournamentRepository.findWaitingTournament(this.gameType);
77
+ if (!waitingTournament) {
78
+ await this.tournamentRepository.createTournamentFromMasterTemplate(this.gameType);
79
+ }
80
+ }
81
+
82
+ async hydrateTournamentsFromDB() {
83
+ const templates = await this.tournamentRepository.findTournaments(this.gameType);
84
+ templates.forEach((item) => {
85
+ this.addRoom(this.options.createTournamentRoom(
86
+ this.oneTableTournamentDocumentToTournamentRoom(item)
87
+ ));
88
+ });
89
+ }
90
+
91
+ private oneTableTournamentDocumentToTournamentRoom(tournamentDocument: TournamentOneTableRoomDocument): TournamentRoomConfig {
92
+ const restartGameTimeout = this.options.configService.get<number>('RESTART_GAME_TIMEOUT') || 0;
93
+ const playersTurnTimeout = this.options.configService.get<number>('PLAYERS_TURN_TIMEOUT') || 0;
94
+
95
+ return {
96
+ id: tournamentDocument.tournamentId,
97
+ gameType: tournamentDocument.gameType,
98
+ roomType: tournamentDocument.roomType,
99
+ rulesType: tournamentDocument.rulesType,
100
+ deckType: tournamentDocument.deckType,
101
+ tableSize: tournamentDocument.tableSize,
102
+ bet: tournamentDocument.bet,
103
+ ticketPrice: tournamentDocument.ticketPrice,
104
+ title: tournamentDocument.title,
105
+ subtitle: tournamentDocument.subtitle,
106
+ description: tournamentDocument.description,
107
+ turnTimeout: playersTurnTimeout,
108
+ restartTimeout: restartGameTimeout,
109
+ localeService: this.options.i18n,
110
+ startStrategy: new NoStartStrategy(),
111
+ onRoomEvent: this.handleRoomEvent,
112
+ onRoomTableGameFinished: this.handleRoomTableGameFinished,
113
+ onTournamentRoomStarted: this.handleTournamentRoomStarted,
114
+ onTournamentRoomFinished: this.handleTournamentRoomFinished,
115
+ onTournamentRoomCancelled: this.handleTournamentRoomCancelled,
116
+ onRoomStatusUpdated: this.handleRoomStatusUpdated,
117
+ tournamentPrizeTable: this.options.tournamentPrizeTable,
118
+ tournamentInitialStatus: tournamentDocument.status,
119
+ } as TournamentRoomConfig;
120
+ }
121
+
122
+ private handleRoomEvent = (event: BaseGameEvent) => {
123
+ this.logger.log(event.toLog());
124
+ };
125
+
126
+ private handleRoomTableGameFinished = async (master: GameMaster) => {
127
+ await saveGameTablesResult(
128
+ master,
129
+ this.connection,
130
+ this.gameResultRepository,
131
+ this.usersRepository,
132
+ false,
133
+ );
134
+ };
135
+
136
+ private handleTournamentRoomStarted = async (master: TournamentMaster) => {
137
+ const session = await this.connection.startSession();
138
+ session.startTransaction();
139
+
140
+ try {
141
+ await this.tournamentRepository.startTournament(
142
+ master.getTournamentId(),
143
+ master.getRoom().getParticipants(),
144
+ );
145
+ const newTournament = await this.tournamentRepository.createTournamentFromMasterTemplate(
146
+ master.getRoom().getGameType()
147
+ );
148
+ this.addRoom(this.options.createTournamentRoom(
149
+ this.oneTableTournamentDocumentToTournamentRoom(newTournament)
150
+ ));
151
+
152
+ await session.commitTransaction();
153
+ } catch (error) {
154
+ await session.abortTransaction();
155
+ throw error;
156
+ } finally {
157
+ await session.endSession();
158
+ }
159
+ }
160
+
161
+ private handleTournamentRoomCancelled = async (master: TournamentMaster) => {
162
+ await this.tournamentRepository.cancelTournament(master.getTournamentId());
163
+ }
164
+
165
+ private handleTournamentRoomFinished = async (master: TournamentMaster) => {
166
+ await saveTournamentResult(
167
+ master,
168
+ this.connection,
169
+ this.tournamentRepository,
170
+ this.usersRepository,
171
+ );
172
+ }
173
+
174
+ private handleRoomStatusUpdated = async (event: RoomUpdateStateEvent) => {
175
+ this.eventsBusMainTablesSubscribeService.pushNewRoomState(event);
176
+ this.eventsBusOneTableTournamentSubscribeService.pushNewRoomState(event);
177
+ }
178
+ }
@@ -0,0 +1,7 @@
1
+ export function getHours (timeStr: string) {
2
+ return parseInt(timeStr.substring(0, 2), 10);
3
+ }
4
+
5
+ export function getMinutes (timeStr: string) {
6
+ return parseInt(timeStr.substring(3, 5), 10);
7
+ }
@@ -0,0 +1,110 @@
1
+ import { GameMaster, TournamentMaster } from 'jp.ms.common.engine';
2
+ import {
3
+ GameResultRepository,
4
+ TournamentManyTablesRoomsRepository,
5
+ TournamentOneTableRoomsRepository,
6
+ UsersRepository
7
+ } from 'jp.db.schemas';
8
+ import { Connection } from 'mongoose';
9
+
10
+ export function getGameTableResults (master: GameMaster) {
11
+ return {
12
+ gameType: master.getRoom().getGameType(),
13
+ gameId: master.getGameRound()?.getId() ?? '',
14
+ roomId: master.getRoom().getId(),
15
+ date: new Date(),
16
+ pot: master.getGameRound()?.getPot() ?? 0,
17
+ players: master.getTable().getPlayers().map((item) => ({
18
+ userId: item.id,
19
+ fullName: item.fullName,
20
+ profit: item.profit,
21
+ figures: [],
22
+ })),
23
+ winners: master.getGameResultHelper().getWinners().map((item) => ({
24
+ userId: item.id,
25
+ fullName: item.fullName,
26
+ profit: item.profit,
27
+ figures: [],
28
+ })),
29
+ history: master.getGameRound()?.getHistory().map((item) => ({
30
+ userId: item.userId,
31
+ fullName: item.fullName,
32
+ date: item.date,
33
+ actionType: item.actionType,
34
+ state: item.state,
35
+ turnNumber: item.turnNumber,
36
+ moveAction: item.move?.action,
37
+ moveData: item.move ?? undefined,
38
+ figures: item.figures?.map((item) => ({
39
+ figureId: item.id,
40
+ type: item.type,
41
+ name: item.getName(),
42
+ })) ?? [],
43
+ })) ?? []
44
+ };
45
+ }
46
+
47
+ export async function saveGameTablesResult (
48
+ master: GameMaster,
49
+ connection: Connection,
50
+ gameResultRepository: GameResultRepository,
51
+ usersRepository: UsersRepository,
52
+ saveNewBalance: boolean,
53
+ ) {
54
+ const userGameResult = master.getTable().getPlayers().map((player) => {
55
+ return {
56
+ userId: player.id,
57
+ balanceAdding: saveNewBalance ? player.profit : 0,
58
+ experienceAdding: master.levelHelper.getNewExperienceAmount(player),
59
+ levelAdding: master.levelHelper.getNewLevelAdding(player.level, player.experience),
60
+ };
61
+ });
62
+
63
+ const session = await connection.startSession();
64
+ session.startTransaction();
65
+
66
+ try {
67
+ await gameResultRepository.createGameResult(getGameTableResults(master));
68
+ await usersRepository.saveGameResult(userGameResult);
69
+
70
+ await session.commitTransaction();
71
+ } catch (error) {
72
+ await session.abortTransaction();
73
+ throw error;
74
+ } finally {
75
+ await session.endSession();
76
+ }
77
+ }
78
+
79
+ export async function saveTournamentResult (
80
+ master: TournamentMaster,
81
+ connection: Connection,
82
+ tournamentRepository: TournamentManyTablesRoomsRepository | TournamentOneTableRoomsRepository,
83
+ usersRepository: UsersRepository,
84
+ ) {
85
+ const userTournamentResult = master.getTournamentResult().map((player) => {
86
+ return {
87
+ userId: player.playerId,
88
+ balanceAdding: player.profit,
89
+ experienceAdding: 0,
90
+ levelAdding: 0,
91
+ };
92
+ });
93
+
94
+ const session = await this.connection.startSession();
95
+ session.startTransaction();
96
+
97
+ try {
98
+ await usersRepository.saveGameResult(userTournamentResult);
99
+ await tournamentRepository.finishTournament(
100
+ master.getTournamentId(),
101
+ master.getTournamentResult(),
102
+ );
103
+ await session.commitTransaction();
104
+ } catch (error) {
105
+ await session.abortTransaction();
106
+ throw error;
107
+ } finally {
108
+ await session.endSession();
109
+ }
110
+ }
@@ -0,0 +1 @@
1
+ export { TournamentBuyTicketDialogView } from './tournament-buy-ticket-dialog.view';
@@ -0,0 +1,21 @@
1
+ import {
2
+ AppScreenSectionButton,
3
+ AppScreenSectionButtons,
4
+ UniversalScreenDialogView,
5
+ AppScreenDialog,
6
+ AppScreenDialogIdEnum,
7
+ } from "jp.common.models";
8
+
9
+ export class TournamentBuyTicketDialogView extends UniversalScreenDialogView {
10
+ build() {
11
+ return AppScreenDialog.CreateStandardDialog(
12
+ AppScreenDialogIdEnum.DIALOG_TOURNAMENT_BUY_TICKET,
13
+ this.localeService.t('common.rooms.screen.buyTicket.title', { lang: this.lang }),
14
+ this.localeService.t('common.rooms.screen.buyTicket.description', { lang: this.lang }),
15
+ AppScreenSectionButtons.CreateFullButtonSection(
16
+ AppScreenSectionButton.CreateTextButton('Ok'),
17
+ AppScreenSectionButton.CreateTextButton('Cancel'),
18
+ )
19
+ );
20
+ }
21
+ }
@@ -1 +0,0 @@
1
- export declare const ROOMS_OPTIONS: unique symbol;
@@ -1,5 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ROOMS_OPTIONS = void 0;
4
- exports.ROOMS_OPTIONS = Symbol('ROOMS_OPTIONS');
5
- //# sourceMappingURL=rooms.constants.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"rooms.constants.js","sourceRoot":"","sources":["../../../src/modules/rooms/rooms.constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,aAAa,GAAG,MAAM,CAAC,eAAe,CAAC,CAAC"}
@@ -1,15 +0,0 @@
1
- import { IAppHeaders, IBaseAppScreen, IBaseMoveData, IBaseTableGameState } from 'jp.common.models';
2
- import { PlayerCheckStateDto } from '../../dto';
3
- import { RoomsService } from './rooms.service';
4
- export declare class RoomsController {
5
- private readonly roomsService;
6
- constructor(roomsService: RoomsService);
7
- checkState(headers: IAppHeaders): PlayerCheckStateDto;
8
- getScreen(headers: IAppHeaders): Promise<IBaseAppScreen>;
9
- watchTheTable(tableId: string, headers: IAppHeaders): IBaseTableGameState;
10
- enterTheTable(tableId: string, headers: IAppHeaders): IBaseTableGameState;
11
- exitTheTable(tableId: string, headers: IAppHeaders): IBaseTableGameState;
12
- moveOnTheTable(tableId: string, baseMoveData: IBaseMoveData, headers: IAppHeaders): IBaseTableGameState;
13
- restartTable(tableId: string): boolean;
14
- techBreakOn(): boolean;
15
- }
@@ -1 +0,0 @@
1
- {"version":3,"file":"rooms.controller.js","sourceRoot":"","sources":["../../../src/modules/rooms/rooms.controller.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"rooms.interfaces.js","sourceRoot":"","sources":["../../../src/modules/rooms/rooms.interfaces.ts"],"names":[],"mappings":""}
@@ -1,6 +0,0 @@
1
- import { DynamicModule } from '@nestjs/common';
2
- import { RoomsModuleOptions } from './rooms.interfaces';
3
- export declare class RoomsModule {
4
- constructor();
5
- static forRootAsync(options: RoomsModuleOptions): DynamicModule;
6
- }
@@ -1 +0,0 @@
1
- {"version":3,"file":"rooms.module.js","sourceRoot":"","sources":["../../../src/modules/rooms/rooms.module.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,2CAAiE;AACjE,+CAAkD;AAClD,iDAAkE;AAElE,yDAAqD;AACrD,mDAA+C;AAC/C,uDAAkD;AAU3C,IAAM,WAAW,mBAAjB,MAAM,WAAW;IACpB;IAEA,CAAC;IAED,MAAM,CAAC,YAAY,CAAE,OAA2B;QAC5C,OAAO;YACH,MAAM,EAAE,aAAW;YACnB,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,EAAE;YAC9B,SAAS,EAAE;gBACP;oBACI,OAAO,EAAE,+BAAa;oBACtB,UAAU,EAAE,OAAO,CAAC,UAAU;oBAC9B,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,EAAE;iBACnB;aAChB;SACJ,CAAC;IACN,CAAC;CACJ,CAAA;AAlBY,kCAAW;sBAAX,WAAW;IAPvB,IAAA,eAAM,EAAC;QACJ,OAAO,EAAE;YACL,yBAAc,CAAC,UAAU,CAAC,CAAC,EAAE,IAAI,EAAE,oBAAI,CAAC,IAAI,EAAE,MAAM,EAAE,0BAAU,EAAE,CAAC,CAAC;SACvE;QACD,WAAW,EAAE,CAAC,kCAAe,CAAC;QAC9B,SAAS,EAAE,CAAC,4BAAY,EAAE,+BAAe,CAAC;KAC7C,CAAC;;GACW,WAAW,CAkBvB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"rooms.service.js","sourceRoot":"","sources":["../../../src/modules/rooms/rooms.service.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export const ROOMS_OPTIONS = Symbol('ROOMS_OPTIONS');
@@ -1,36 +0,0 @@
1
- import { DynamicModule, Module, Provider } from '@nestjs/common';
2
- import { MongooseModule } from '@nestjs/mongoose';
3
- import { Room, RoomSchema, RoomsRepository } from 'jp.db.schemas';
4
-
5
- import { RoomsController } from './rooms.controller';
6
- import { RoomsService } from './rooms.service';
7
- import { ROOMS_OPTIONS } from './rooms.constants';
8
- import { RoomsModuleOptions } from './rooms.interfaces';
9
-
10
- @Module({
11
- imports: [
12
- MongooseModule.forFeature([{ name: Room.name, schema: RoomSchema }]),
13
- ],
14
- controllers: [RoomsController],
15
- providers: [RoomsService, RoomsRepository],
16
- })
17
- export class RoomsModule {
18
- constructor () {
19
-
20
- }
21
-
22
- static forRootAsync (options: RoomsModuleOptions): DynamicModule {
23
- return {
24
- module: RoomsModule,
25
- imports: options.imports ?? [],
26
- providers: [
27
- {
28
- provide: ROOMS_OPTIONS,
29
- useFactory: options.useFactory,
30
- inject: options.inject || [],
31
- } as Provider,
32
- ],
33
- };
34
- }
35
- }
36
-
@@ -1,150 +0,0 @@
1
- import { Inject, Injectable, InternalServerErrorException } from '@nestjs/common';
2
- import {
3
- AppScreen,
4
- AppScreenAppBar,
5
- AppScreenIdEnum,
6
- AppScreenRoutesEnum,
7
- AppScreenSection,
8
- AppScreenSectionButton,
9
- AppScreenSectionImage,
10
- AppScreenSectionListItem,
11
- BaseAppScreen, IBaseMoveData,
12
- IBaseTableGameState,
13
- router,
14
- } from 'jp.common.models';
15
- import { replacePattern } from 'jp.common.utils';
16
-
17
- import { BaseAppScreenDto, PlayerCheckStateDto } from '../../dto';
18
- import { SimpleRoomsManagerService } from '../simple-rooms-manager/simple-rooms-manager.service';
19
- import { PlayersManagerService } from '../players-manager/players-manager.service';
20
-
21
- import { RoomsFactoryOptions } from './rooms.interfaces';
22
- import { ROOMS_OPTIONS } from './rooms.constants';
23
-
24
- @Injectable()
25
- export class RoomsService {
26
- constructor (
27
- private readonly simpleRoomsManager: SimpleRoomsManagerService,
28
- private readonly playersManager: PlayersManagerService,
29
- @Inject(ROOMS_OPTIONS) private readonly options: RoomsFactoryOptions,
30
- ) {
31
- }
32
-
33
- playerCheckState (clientAuthToken: string): PlayerCheckStateDto {
34
- const player = this.playersManager.getPlayerById(clientAuthToken);
35
- if (player && player.isPlayer() && player.tableId) {
36
- return PlayerCheckStateDto.fromEntities(router.getRoomPath(player.tableId), player.id);
37
- }
38
-
39
- return PlayerCheckStateDto.fromEntities(AppScreenRoutesEnum.MENU);
40
- }
41
-
42
- async getScreen (lang: string): Promise<BaseAppScreenDto> {
43
- const screen =
44
- AppScreen.CreateStandardScreen(AppScreenIdEnum.ROOMS)
45
- .addAppBar(
46
- AppScreenAppBar.CreateStandardAppBar(
47
- this.options.i18n.t('common.rooms.screen.title', { lang }),
48
- AppScreenSectionButton.CreateArrowBackButton(this.options.i18n.t('common.button.back', { lang })),
49
- ),
50
- )
51
- .addSection(
52
- AppScreenSection.CreateCardListSection(
53
- 'id1',
54
- this.simpleRoomsManager.getRooms().reduce<Array<AppScreenSectionListItem>>((result, room) => {
55
- const list =
56
- room.getTables().map((table) => AppScreenSectionListItem.CreateCardListItemMini(
57
- table.getId(),
58
- replacePattern(table.getTitle(lang), { NUMBER: table.getNumber().toString() }),
59
- replacePattern(table.getSubtitle(lang), {
60
- HALF_BET: table.getHalfBet().toString(),
61
- BET: table.getBet().toString()
62
- }),
63
- AppScreenSectionImage.CreateUrlImage(`${table.getPlayers().length}/${table.getTableSize()}`),
64
- true,
65
- router.getRoomPath(table.getId()),
66
- ));
67
-
68
- return [...result, ...list];
69
- }, []),
70
- ),
71
- );
72
-
73
- return new BaseAppScreenDto(new BaseAppScreen(screen));
74
- }
75
-
76
- watchTheTable (tableId: string, clientAuthToken: string): IBaseTableGameState {
77
- const player = this.playersManager.getPlayerById(clientAuthToken);
78
- const room = this.simpleRoomsManager.getRoomByTableId(tableId);
79
- const master = room?.getMasterById(tableId);
80
-
81
- if (player && room && master) {
82
- room.handleWatchTheTable(player, tableId);
83
-
84
- return master.createGameStateDto(player);
85
- }
86
-
87
- throw new InternalServerErrorException();
88
- }
89
-
90
- enterTheTable (tableId: string, clientAuthToken: string): IBaseTableGameState {
91
- const player = this.playersManager.getPlayerById(clientAuthToken);
92
- const room = this.simpleRoomsManager.getRoomByTableId(tableId);
93
- const master = room?.getMasterById(tableId);
94
-
95
- if (player && room && master) {
96
- room.handleEnterTheTable(player, tableId);
97
-
98
- return master.createGameStateDto(player);
99
- }
100
-
101
- throw new InternalServerErrorException();
102
- }
103
-
104
- exitTheTable (tableId: string, clientAuthToken: string): IBaseTableGameState {
105
- const player = this.playersManager.getPlayerById(clientAuthToken);
106
- const room = this.simpleRoomsManager.getRoomByTableId(tableId);
107
- const master = room?.getMasterById(tableId);
108
-
109
- if (player && room && master) {
110
- room.handleExitTheTable(player, tableId);
111
-
112
- return master.createGameStateDto(player);
113
- }
114
-
115
- throw new InternalServerErrorException();
116
- }
117
-
118
- moveOnTheTable (tableId: string, clientAuthToken: string, moveDto: IBaseMoveData): IBaseTableGameState {
119
- const player = this.playersManager.getPlayerById(clientAuthToken);
120
- const room = this.simpleRoomsManager.getRoomByTableId(tableId);
121
- const master = room?.getMasterById(tableId);
122
-
123
- if (player && room && master) {
124
- room.handleMoveOnTheTable(player, tableId, moveDto);
125
-
126
- return master.createGameStateDto(player);
127
- }
128
-
129
- throw new InternalServerErrorException();
130
- }
131
-
132
- restartTable (tableId: string): boolean {
133
- const room = this.simpleRoomsManager.getRoomByTableId(tableId);
134
- const master = room?.getMasterById(tableId);
135
-
136
- if (room && master) {
137
- room.handleRestartTable(tableId);
138
-
139
- return true;
140
- }
141
-
142
- throw new InternalServerErrorException();
143
- }
144
-
145
- techBreakOn (): boolean {
146
- this.simpleRoomsManager.getRooms().forEach((item) => item.handleTechBreakOn());
147
-
148
- return true;
149
- }
150
- }