jp.ms.common.modules 1.0.24 → 1.0.26
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.
- package/dist/adapter/base-table-game-state-adapter.d.ts +3 -1
- package/dist/adapter/base-table-game-state-adapter.js +11 -0
- package/dist/adapter/base-table-game-state-adapter.js.map +1 -1
- package/dist/adapter/card-table-game-state-adapter.d.ts +4 -2
- package/dist/adapter/card-table-game-state-adapter.js +15 -4
- package/dist/adapter/card-table-game-state-adapter.js.map +1 -1
- package/dist/config/cert.js +35 -2
- package/dist/config/cert.js.map +1 -1
- package/dist/config/cors.js +34 -1
- package/dist/config/cors.js.map +1 -1
- package/dist/dto/common/find-free-table.dto.d.ts +3 -0
- package/dist/dto/common/find-free-table.dto.js +8 -0
- package/dist/dto/common/find-free-table.dto.js.map +1 -0
- package/dist/dto/common/index.d.ts +1 -0
- package/dist/dto/common/index.js +3 -1
- package/dist/dto/common/index.js.map +1 -1
- package/dist/dto/table-game/base/base-table-game-state.dto.d.ts +3 -0
- package/dist/dto/table-game/base/base-table-game-state.dto.js +19 -0
- package/dist/dto/table-game/base/base-table-game-state.dto.js.map +1 -1
- package/dist/dto/table-game/cards/cards-panel.dto.d.ts +2 -1
- package/dist/dto/table-game/cards/cards-panel.dto.js +14 -3
- package/dist/dto/table-game/cards/cards-panel.dto.js.map +1 -1
- package/dist/modules/anti-freeze-system/anti-freeze-system.module.js +4 -1
- package/dist/modules/anti-freeze-system/anti-freeze-system.module.js.map +1 -1
- package/dist/modules/anti-freeze-system/anti-freeze-system.service.js +2 -2
- package/dist/modules/anti-freeze-system/anti-freeze-system.service.js.map +1 -1
- package/dist/modules/base-achievements/base-achievements.module.d.ts +1 -1
- package/dist/modules/base-achievements/base-achievements.module.js +12 -12
- package/dist/modules/base-achievements/base-achievements.module.js.map +1 -1
- package/dist/modules/event-bus/events-bus.main-tables.subscribe.service.d.ts +1 -1
- package/dist/modules/event-bus/events-bus.main-tables.subscribe.service.js.map +1 -1
- package/dist/modules/logger/jp-logger.service.js +34 -1
- package/dist/modules/logger/jp-logger.service.js.map +1 -1
- package/dist/modules/main/main-tables-list-screen.view.js +1 -1
- package/dist/modules/main/main-tables-list-screen.view.js.map +1 -1
- package/dist/modules/main/main.controller.d.ts +2 -2
- package/dist/modules/main/main.controller.js +4 -3
- package/dist/modules/main/main.controller.js.map +1 -1
- package/dist/modules/main/main.module.js +2 -2
- package/dist/modules/main/main.module.js.map +1 -1
- package/dist/modules/main/main.service.d.ts +2 -2
- package/dist/modules/main/main.service.js +11 -5
- package/dist/modules/main/main.service.js.map +1 -1
- package/dist/modules/many-tables-tournament/many-tables-tournament.module.js +1 -1
- package/dist/modules/many-tables-tournament/many-tables-tournament.module.js.map +1 -1
- package/dist/modules/many-tables-tournament/many-tables-tournament.service.js +1 -1
- package/dist/modules/many-tables-tournament/many-tables-tournament.service.js.map +1 -1
- package/dist/modules/menu/menu-screen.view.d.ts +5 -3
- package/dist/modules/menu/menu-screen.view.js +10 -2
- package/dist/modules/menu/menu-screen.view.js.map +1 -1
- package/dist/modules/menu/menu.module.js +2 -1
- package/dist/modules/menu/menu.module.js.map +1 -1
- package/dist/modules/menu/menu.service.d.ts +3 -2
- package/dist/modules/menu/menu.service.js +8 -4
- package/dist/modules/menu/menu.service.js.map +1 -1
- package/dist/modules/one-table-tournament/one-table-tournament-status-screen.view.d.ts +6 -1
- package/dist/modules/one-table-tournament/one-table-tournament-status-screen.view.js +52 -3
- package/dist/modules/one-table-tournament/one-table-tournament-status-screen.view.js.map +1 -1
- package/dist/modules/one-table-tournament/one-table-tournament.controller.d.ts +4 -5
- package/dist/modules/one-table-tournament/one-table-tournament.controller.js +8 -9
- package/dist/modules/one-table-tournament/one-table-tournament.controller.js.map +1 -1
- package/dist/modules/one-table-tournament/one-table-tournament.module.js +2 -2
- package/dist/modules/one-table-tournament/one-table-tournament.module.js.map +1 -1
- package/dist/modules/one-table-tournament/one-table-tournament.service.d.ts +6 -7
- package/dist/modules/one-table-tournament/one-table-tournament.service.js +10 -17
- package/dist/modules/one-table-tournament/one-table-tournament.service.js.map +1 -1
- package/dist/modules/simple-rooms-manager/simple-rooms-manager.service.d.ts +2 -1
- package/dist/modules/simple-rooms-manager/simple-rooms-manager.service.js +30 -5
- package/dist/modules/simple-rooms-manager/simple-rooms-manager.service.js.map +1 -1
- package/dist/modules/support/dump.service.js +4 -1
- package/dist/modules/support/dump.service.js.map +1 -1
- package/dist/modules/support/metric.service.js +34 -1
- package/dist/modules/support/metric.service.js.map +1 -1
- package/dist/modules/tournament-many-tables-rooms-manager/tournament-many-tables-rooms-manager.service.js +33 -10
- package/dist/modules/tournament-many-tables-rooms-manager/tournament-many-tables-rooms-manager.service.js.map +1 -1
- package/dist/modules/tournament-one-table-rooms-manager/tournament-one-table-rooms-manager.service.js +21 -5
- package/dist/modules/tournament-one-table-rooms-manager/tournament-one-table-rooms-manager.service.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/utils/game-table-result.d.ts +3 -2
- package/dist/utils/game-table-result.js +14 -1
- package/dist/utils/game-table-result.js.map +1 -1
- package/dist/views/index.d.ts +1 -0
- package/dist/views/index.js +3 -1
- package/dist/views/index.js.map +1 -1
- package/dist/views/simple-room-conifrm-exit-dialog.view.d.ts +4 -0
- package/dist/views/simple-room-conifrm-exit-dialog.view.js +11 -0
- package/dist/views/simple-room-conifrm-exit-dialog.view.js.map +1 -0
- package/dist/views/tournament-buy-ticket-dialog.view.d.ts +2 -2
- package/dist/views/tournament-buy-ticket-dialog.view.js +1 -1
- package/dist/views/tournament-buy-ticket-dialog.view.js.map +1 -1
- package/package.json +4 -4
- package/src/adapter/base-table-game-state-adapter.ts +23 -5
- package/src/adapter/card-table-game-state-adapter.ts +28 -4
- package/src/dto/common/find-free-table.dto.ts +3 -0
- package/src/dto/common/index.ts +1 -0
- package/src/dto/table-game/base/base-table-game-state.dto.ts +16 -0
- package/src/dto/table-game/cards/cards-panel.dto.ts +12 -3
- package/src/modules/anti-freeze-system/anti-freeze-system.service.ts +3 -3
- package/src/modules/base-achievements/base-achievements.module.ts +12 -10
- package/src/modules/event-bus/events-bus.main-tables.subscribe.service.ts +1 -1
- package/src/modules/main/main-tables-list-screen.view.ts +2 -2
- package/src/modules/main/main.controller.ts +4 -4
- package/src/modules/main/main.module.ts +5 -5
- package/src/modules/main/main.service.ts +20 -10
- package/src/modules/many-tables-tournament/many-tables-tournament.module.ts +1 -1
- package/src/modules/many-tables-tournament/many-tables-tournament.service.ts +2 -1
- package/src/modules/menu/menu-screen.view.ts +33 -11
- package/src/modules/menu/menu.module.ts +3 -2
- package/src/modules/menu/menu.service.ts +5 -2
- package/src/modules/one-table-tournament/one-table-tournament-status-screen.view.ts +76 -10
- package/src/modules/one-table-tournament/one-table-tournament.controller.ts +8 -8
- package/src/modules/one-table-tournament/one-table-tournament.module.ts +2 -2
- package/src/modules/one-table-tournament/one-table-tournament.service.ts +20 -28
- package/src/modules/simple-rooms-manager/simple-rooms-manager.service.ts +64 -14
- package/src/modules/tournament-many-tables-rooms-manager/tournament-many-tables-rooms-manager.service.ts +42 -17
- package/src/modules/tournament-one-table-rooms-manager/tournament-one-table-rooms-manager.service.ts +37 -15
- package/src/utils/game-table-result.ts +18 -3
- package/src/views/index.ts +2 -1
- package/src/views/simple-room-conifrm-exit-dialog.view.ts +21 -0
- package/src/views/tournament-buy-ticket-dialog.view.ts +11 -11
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { GameMaster, TournamentMaster } from 'jp.ms.common.engine';
|
|
2
|
-
import { GameResultRepository, TournamentManyTablesRoomsRepository, TournamentOneTableRoomsRepository, UsersRepository } from 'jp.db.schemas';
|
|
3
1
|
import { Connection } from 'mongoose';
|
|
2
|
+
import { BaseGameEvent, GameMaster, GameTournamentPlayerLeavedTheTournamentEvent, TournamentMaster } from 'jp.ms.common.engine';
|
|
3
|
+
import { GameResultRepository, TournamentManyTablesRoomsRepository, TournamentOneTableRoomsRepository, UsersRepository } from 'jp.db.schemas';
|
|
4
4
|
export declare function getGameTableResults(master: GameMaster): {
|
|
5
5
|
gameType: string;
|
|
6
6
|
gameId: string;
|
|
@@ -37,3 +37,4 @@ export declare function getGameTableResults(master: GameMaster): {
|
|
|
37
37
|
};
|
|
38
38
|
export declare function saveGameTablesResult(master: GameMaster, connection: Connection, gameResultRepository: GameResultRepository, usersRepository: UsersRepository, saveNewBalance: boolean): Promise<void>;
|
|
39
39
|
export declare function saveTournamentResult(master: TournamentMaster, connection: Connection, tournamentRepository: TournamentManyTablesRoomsRepository | TournamentOneTableRoomsRepository, usersRepository: UsersRepository): Promise<void>;
|
|
40
|
+
export declare function isUpdateTounrmanentRoomEvent(event: BaseGameEvent): GameTournamentPlayerLeavedTheTournamentEvent | null;
|
|
@@ -3,6 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.getGameTableResults = getGameTableResults;
|
|
4
4
|
exports.saveGameTablesResult = saveGameTablesResult;
|
|
5
5
|
exports.saveTournamentResult = saveTournamentResult;
|
|
6
|
+
exports.isUpdateTounrmanentRoomEvent = isUpdateTounrmanentRoomEvent;
|
|
7
|
+
const jp_ms_common_engine_1 = require("jp.ms.common.engine");
|
|
6
8
|
function getGameTableResults(master) {
|
|
7
9
|
return {
|
|
8
10
|
gameType: master.getRoom().getGameType(),
|
|
@@ -72,7 +74,7 @@ async function saveTournamentResult(master, connection, tournamentRepository, us
|
|
|
72
74
|
levelAdding: 0,
|
|
73
75
|
};
|
|
74
76
|
});
|
|
75
|
-
const session = await
|
|
77
|
+
const session = await connection.startSession();
|
|
76
78
|
session.startTransaction();
|
|
77
79
|
try {
|
|
78
80
|
await usersRepository.saveGameResult(userTournamentResult);
|
|
@@ -87,4 +89,15 @@ async function saveTournamentResult(master, connection, tournamentRepository, us
|
|
|
87
89
|
await session.endSession();
|
|
88
90
|
}
|
|
89
91
|
}
|
|
92
|
+
function isUpdateTounrmanentRoomEvent(event) {
|
|
93
|
+
if (event instanceof jp_ms_common_engine_1.GameTournamentPlayerJoinedTheTournamentEvent &&
|
|
94
|
+
event instanceof jp_ms_common_engine_1.GameTournamentPlayerLeavedTheTournamentEvent &&
|
|
95
|
+
event instanceof jp_ms_common_engine_1.GameTournamentCancelledEvent &&
|
|
96
|
+
event instanceof jp_ms_common_engine_1.GameTournamentWaitedEvent &&
|
|
97
|
+
event instanceof jp_ms_common_engine_1.GameTournamentStartedEvent &&
|
|
98
|
+
event instanceof jp_ms_common_engine_1.GameTournamentFinishedEvent) {
|
|
99
|
+
return event;
|
|
100
|
+
}
|
|
101
|
+
return null;
|
|
102
|
+
}
|
|
90
103
|
//# sourceMappingURL=game-table-result.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"game-table-result.js","sourceRoot":"","sources":["../../src/utils/game-table-result.ts"],"names":[],"mappings":";;AASA,kDAmCC;AAED,oDA8BC;AAED,oDA+BC;
|
|
1
|
+
{"version":3,"file":"game-table-result.js","sourceRoot":"","sources":["../../src/utils/game-table-result.ts"],"names":[],"mappings":"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"}
|
package/dist/views/index.d.ts
CHANGED
package/dist/views/index.js
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.TournamentBuyTicketDialogView = void 0;
|
|
3
|
+
exports.SimpleRoomConfirmExitDialogView = exports.TournamentBuyTicketDialogView = void 0;
|
|
4
4
|
var tournament_buy_ticket_dialog_view_1 = require("./tournament-buy-ticket-dialog.view");
|
|
5
5
|
Object.defineProperty(exports, "TournamentBuyTicketDialogView", { enumerable: true, get: function () { return tournament_buy_ticket_dialog_view_1.TournamentBuyTicketDialogView; } });
|
|
6
|
+
var simple_room_conifrm_exit_dialog_view_1 = require("./simple-room-conifrm-exit-dialog.view");
|
|
7
|
+
Object.defineProperty(exports, "SimpleRoomConfirmExitDialogView", { enumerable: true, get: function () { return simple_room_conifrm_exit_dialog_view_1.SimpleRoomConfirmExitDialogView; } });
|
|
6
8
|
//# sourceMappingURL=index.js.map
|
package/dist/views/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/views/index.ts"],"names":[],"mappings":";;;AAAA,yFAAoF;AAA3E,kJAAA,6BAA6B,OAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/views/index.ts"],"names":[],"mappings":";;;AAAA,yFAAoF;AAA3E,kJAAA,6BAA6B,OAAA;AACtC,+FAAyF;AAAhF,uJAAA,+BAA+B,OAAA"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SimpleRoomConfirmExitDialogView = void 0;
|
|
4
|
+
const jp_common_models_1 = require("jp.common.models");
|
|
5
|
+
class SimpleRoomConfirmExitDialogView extends jp_common_models_1.UniversalScreenDialogView {
|
|
6
|
+
build() {
|
|
7
|
+
return new jp_common_models_1.StandardDialogComponent(jp_common_models_1.AppScreenDialogIdEnum.DIALOG_SIMPLE_ROOM_CONFIRM_EXIT, this.localeService.t('common.room.screen.dialog.confirm.exit.game.title', { lang: this.lang }), this.localeService.t('common.room.screen.dialog.confirm.exit.game.message', { lang: this.lang }), new jp_common_models_1.FullButtonsButtonsComponent(new jp_common_models_1.TextButtonComponent(this.localeService.t('common.room.screen.dialog.confirm.exit.game.ok', { lang: this.lang })), new jp_common_models_1.TextButtonComponent(this.localeService.t('common.room.screen.dialog.confirm.exit.game.cancel', { lang: this.lang }))));
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
exports.SimpleRoomConfirmExitDialogView = SimpleRoomConfirmExitDialogView;
|
|
11
|
+
//# sourceMappingURL=simple-room-conifrm-exit-dialog.view.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"simple-room-conifrm-exit-dialog.view.js","sourceRoot":"","sources":["../../src/views/simple-room-conifrm-exit-dialog.view.ts"],"names":[],"mappings":";;;AAAA,uDAM0B;AAE1B,MAAa,+BAAgC,SAAQ,4CAAyB;IAC1E,KAAK;QACD,OAAO,IAAI,0CAAuB,CAC9B,wCAAqB,CAAC,+BAA+B,EACrD,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,mDAAmD,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,EAC9F,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,qDAAqD,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,EAChG,IAAI,8CAA2B,CAC3B,IAAI,sCAAmB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,gDAAgD,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,EACpH,IAAI,sCAAmB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,oDAAoD,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAC3H,CACJ,CAAC;IACN,CAAC;CACJ;AAZD,0EAYC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { UniversalScreenDialogView,
|
|
1
|
+
import { UniversalScreenDialogView, StandardDialogComponent } from "jp.common.models";
|
|
2
2
|
export declare class TournamentBuyTicketDialogView extends UniversalScreenDialogView {
|
|
3
|
-
build():
|
|
3
|
+
build(): StandardDialogComponent;
|
|
4
4
|
}
|
|
@@ -4,7 +4,7 @@ exports.TournamentBuyTicketDialogView = void 0;
|
|
|
4
4
|
const jp_common_models_1 = require("jp.common.models");
|
|
5
5
|
class TournamentBuyTicketDialogView extends jp_common_models_1.UniversalScreenDialogView {
|
|
6
6
|
build() {
|
|
7
|
-
return jp_common_models_1.
|
|
7
|
+
return new jp_common_models_1.StandardDialogComponent(jp_common_models_1.AppScreenDialogIdEnum.DIALOG_TOURNAMENT_BUY_TICKET, this.localeService.t('common.rooms.screen.buyTicket.title', { lang: this.lang }), this.localeService.t('common.rooms.screen.buyTicket.description', { lang: this.lang }), new jp_common_models_1.FullButtonsButtonsComponent(new jp_common_models_1.TextButtonComponent(this.localeService.t('common.rooms.screen.buyTicket.button.ok', { lang: this.lang })), new jp_common_models_1.TextButtonComponent(this.localeService.t('common.rooms.screen.buyTicket.button.cancel', { lang: this.lang }))));
|
|
8
8
|
}
|
|
9
9
|
}
|
|
10
10
|
exports.TournamentBuyTicketDialogView = TournamentBuyTicketDialogView;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tournament-buy-ticket-dialog.view.js","sourceRoot":"","sources":["../../src/views/tournament-buy-ticket-dialog.view.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"tournament-buy-ticket-dialog.view.js","sourceRoot":"","sources":["../../src/views/tournament-buy-ticket-dialog.view.ts"],"names":[],"mappings":";;;AAAA,uDAM0B;AAE1B,MAAa,6BAA8B,SAAQ,4CAAyB;IACxE,KAAK;QACD,OAAO,IAAI,0CAAuB,CAC9B,wCAAqB,CAAC,4BAA4B,EAClD,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,qCAAqC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,EAChF,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,2CAA2C,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,EACtF,IAAI,8CAA2B,CAC3B,IAAI,sCAAmB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,yCAAyC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,EAC7G,IAAI,sCAAmB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,6CAA6C,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CACpH,CACJ,CAAC;IACN,CAAC;CACJ;AAZD,sEAYC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "jp.ms.common.modules",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.26",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -13,10 +13,10 @@
|
|
|
13
13
|
"@nestjs/mongoose": "11.0.4",
|
|
14
14
|
"@nestjs/websockets": "11.1.9",
|
|
15
15
|
"dayjs": "1.11.18",
|
|
16
|
-
"jp.common.models": "1.1.
|
|
16
|
+
"jp.common.models": "1.1.12",
|
|
17
17
|
"jp.common.utils": "1.0.4",
|
|
18
|
-
"jp.db.schemas": "2.2.
|
|
19
|
-
"jp.ms.common.
|
|
18
|
+
"jp.db.schemas": "2.2.3",
|
|
19
|
+
"jp.ms.common.modules": "1.0.25",
|
|
20
20
|
"mongoose": "9.1.5",
|
|
21
21
|
"nestjs-i18n": "10.5.1",
|
|
22
22
|
"node-schedule": "2.1.1",
|
|
@@ -12,15 +12,18 @@ import {
|
|
|
12
12
|
BaseTableGameStateSummary,
|
|
13
13
|
BaseTableGameSummaryItem,
|
|
14
14
|
BaseTableGameStateMovesPanel,
|
|
15
|
+
IAppScreenDialog,
|
|
15
16
|
} from 'jp.common.models';
|
|
16
17
|
import { GameMaster, GamePlayer } from 'jp.ms.common.engine';
|
|
17
|
-
import { formatChips, getPropsFromObject } from 'jp.common.utils';
|
|
18
|
+
import { formatChips, getPropsFromObject, replacePattern } from 'jp.common.utils';
|
|
19
|
+
|
|
20
|
+
import { SimpleRoomConfirmExitDialogView } from '../views'
|
|
18
21
|
|
|
19
22
|
export abstract class BaseTableGameStateAdapter {
|
|
20
23
|
private readonly _master: GameMaster;
|
|
21
24
|
private readonly _currentPlayer: GamePlayer;
|
|
22
25
|
|
|
23
|
-
constructor
|
|
26
|
+
constructor(master: GameMaster, currentPlayer: GamePlayer) {
|
|
24
27
|
this._master = master;
|
|
25
28
|
this._currentPlayer = currentPlayer;
|
|
26
29
|
}
|
|
@@ -53,6 +56,10 @@ export abstract class BaseTableGameStateAdapter {
|
|
|
53
56
|
return this._master.getRoom().getId();
|
|
54
57
|
}
|
|
55
58
|
|
|
59
|
+
getTableTitle (): string {
|
|
60
|
+
return this._master.getTable().getTitleWithNumber(this.lang);
|
|
61
|
+
}
|
|
62
|
+
|
|
56
63
|
getTableId (): string {
|
|
57
64
|
return this._master.getTable().getId();
|
|
58
65
|
}
|
|
@@ -199,9 +206,9 @@ export abstract class BaseTableGameStateAdapter {
|
|
|
199
206
|
summary.list.push(BaseTableGameSummaryItem.newTitleMdItem(
|
|
200
207
|
'pot',
|
|
201
208
|
this.t('room.screen.summary.pot', {
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
209
|
+
lang: this.lang,
|
|
210
|
+
args: { POT: formatChips(this.getMaster()?.getGameRound()?.getPot() ?? 0, this.lang, true) },
|
|
211
|
+
},
|
|
205
212
|
),
|
|
206
213
|
));
|
|
207
214
|
|
|
@@ -237,6 +244,15 @@ export abstract class BaseTableGameStateAdapter {
|
|
|
237
244
|
return summary;
|
|
238
245
|
}
|
|
239
246
|
|
|
247
|
+
getConfirmExitDialog (): IAppScreenDialog | undefined {
|
|
248
|
+
if (this._currentPlayer.isPlayer()) {
|
|
249
|
+
return new SimpleRoomConfirmExitDialogView(
|
|
250
|
+
this._master.getRoom().getLocaleService(),
|
|
251
|
+
this.lang
|
|
252
|
+
).build();
|
|
253
|
+
}
|
|
254
|
+
}
|
|
255
|
+
|
|
240
256
|
getState (): IBaseTableGameState {
|
|
241
257
|
return {
|
|
242
258
|
roomId: this.getRoomId(),
|
|
@@ -249,6 +265,8 @@ export abstract class BaseTableGameStateAdapter {
|
|
|
249
265
|
summary: this.getSummary(),
|
|
250
266
|
movesPanel: this.getMovesPanel(),
|
|
251
267
|
extraButtons: this.getExtraButtons(),
|
|
268
|
+
tableTitle: this.getTableTitle(),
|
|
269
|
+
confirmExitDialog: this.getConfirmExitDialog(),
|
|
252
270
|
}
|
|
253
271
|
}
|
|
254
272
|
}
|
|
@@ -3,6 +3,8 @@ import {
|
|
|
3
3
|
ICardPlayerState,
|
|
4
4
|
CardsPanelState,
|
|
5
5
|
ICardsPanelState,
|
|
6
|
+
ICardPairSlotState,
|
|
7
|
+
CardPairSlotState,
|
|
6
8
|
} from 'jp.common.models';
|
|
7
9
|
import { CardsGameMaster, CardsPlayer } from 'jp.ms.common.engine';
|
|
8
10
|
|
|
@@ -28,8 +30,16 @@ export abstract class CardTableGameStateAdapter extends BaseTableGameStateAdapte
|
|
|
28
30
|
return false;
|
|
29
31
|
}
|
|
30
32
|
|
|
31
|
-
|
|
32
|
-
return
|
|
33
|
+
getCardsPanelEnableDragging (): boolean {
|
|
34
|
+
return this.getCurrentPlayer().isActivePlayer();
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
getCardsPanelDescription (): string {
|
|
38
|
+
if (this.getCurrentPlayer().isActivePlayer()) {
|
|
39
|
+
return this.t('room.screen.yours.player.turn.timeout', { lang: this.lang });
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
return '';
|
|
33
43
|
}
|
|
34
44
|
|
|
35
45
|
getCardsPanel (): ICardsPanelState {
|
|
@@ -37,17 +47,31 @@ export abstract class CardTableGameStateAdapter extends BaseTableGameStateAdapte
|
|
|
37
47
|
this.getCardsPanelIsOpen(),
|
|
38
48
|
this.getPlayerActions(),
|
|
39
49
|
this.getPlayerCards(),
|
|
40
|
-
this.
|
|
50
|
+
this.getCardsPanelEnableDragging(),
|
|
51
|
+
this.getCardsPanelDescription(),
|
|
41
52
|
);
|
|
42
53
|
}
|
|
43
54
|
|
|
55
|
+
getSlots (): Array<ICardPairSlotState> {
|
|
56
|
+
const slots = this.getMaster<CardsGameMaster>().getGameCardPairSlots().getSlots()
|
|
57
|
+
.map((item) => new CardPairSlotState(
|
|
58
|
+
item.id,
|
|
59
|
+
item.bottom,
|
|
60
|
+
item.top,
|
|
61
|
+
item.activated,
|
|
62
|
+
this.getCurrentPlayer().isActivePlayer() ? item.disabled : true,
|
|
63
|
+
));
|
|
64
|
+
|
|
65
|
+
return slots;
|
|
66
|
+
}
|
|
67
|
+
|
|
44
68
|
getState (): ICardTableGameState {
|
|
45
69
|
return {
|
|
46
70
|
...super.getState(),
|
|
47
71
|
players: this.getPlayers(),
|
|
48
72
|
baseCard: this.getMaster<CardsGameMaster>().getGameBaseCard(),
|
|
49
73
|
gameCards: this.getMaster<CardsGameMaster>().getGameCards(),
|
|
50
|
-
gameCardsPair: this.
|
|
74
|
+
gameCardsPair: this.getSlots(),
|
|
51
75
|
cardsPanel: this.getCardsPanel(),
|
|
52
76
|
};
|
|
53
77
|
}
|
package/src/dto/common/index.ts
CHANGED
|
@@ -3,6 +3,8 @@ import { IsNumber, IsString, ValidateNested } from 'class-validator';
|
|
|
3
3
|
import { IBaseTableGameState } from 'jp.common.models';
|
|
4
4
|
import { ApiProperty } from '@nestjs/swagger';
|
|
5
5
|
|
|
6
|
+
import { AppScreenDialogDto } from '../../app-screen/app-screen-dialog.dto';
|
|
7
|
+
|
|
6
8
|
import { BaseTableSummaryDto } from './base-table-summary.dto';
|
|
7
9
|
import { BaseTableMovesPanelDto } from './base-table-moves-panel.dto';
|
|
8
10
|
|
|
@@ -76,4 +78,18 @@ export class BaseTableGameStateDto implements IBaseTableGameState {
|
|
|
76
78
|
@Type(() => BaseTableMovesPanelDto)
|
|
77
79
|
@Expose()
|
|
78
80
|
movesPanel: BaseTableMovesPanelDto;
|
|
81
|
+
|
|
82
|
+
@ApiProperty({
|
|
83
|
+
description: 'Table title',
|
|
84
|
+
required: true,
|
|
85
|
+
type: String,
|
|
86
|
+
})
|
|
87
|
+
@Expose()
|
|
88
|
+
@IsString()
|
|
89
|
+
tableTitle: string;
|
|
90
|
+
|
|
91
|
+
@ValidateNested()
|
|
92
|
+
@Type(() => AppScreenDialogDto)
|
|
93
|
+
@Expose()
|
|
94
|
+
confirmExitDialog?: AppScreenDialogDto;
|
|
79
95
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Expose, Type } from 'class-transformer';
|
|
2
|
-
import { IsArray, IsBoolean, ValidateNested } from 'class-validator';
|
|
2
|
+
import { IsArray, IsBoolean, IsString, ValidateNested } from 'class-validator';
|
|
3
3
|
import { ICardsPanelState } from 'jp.common.models';
|
|
4
4
|
import { ApiProperty } from '@nestjs/swagger';
|
|
5
5
|
|
|
@@ -18,13 +18,13 @@ export class CardsPanelDto implements ICardsPanelState {
|
|
|
18
18
|
isOpen: boolean;
|
|
19
19
|
|
|
20
20
|
@ApiProperty({
|
|
21
|
-
description: '
|
|
21
|
+
description: 'enableDragging',
|
|
22
22
|
required: true,
|
|
23
23
|
type: Boolean,
|
|
24
24
|
})
|
|
25
25
|
@Expose()
|
|
26
26
|
@IsBoolean()
|
|
27
|
-
|
|
27
|
+
enableDragging: boolean;
|
|
28
28
|
|
|
29
29
|
@IsArray()
|
|
30
30
|
@ValidateNested({ each: true })
|
|
@@ -37,4 +37,13 @@ export class CardsPanelDto implements ICardsPanelState {
|
|
|
37
37
|
@Type(() => CardDto)
|
|
38
38
|
@Expose()
|
|
39
39
|
cards: Array<CardDto>;
|
|
40
|
+
|
|
41
|
+
@ApiProperty({
|
|
42
|
+
description: 'description',
|
|
43
|
+
required: true,
|
|
44
|
+
type: String,
|
|
45
|
+
})
|
|
46
|
+
@Expose()
|
|
47
|
+
@IsString()
|
|
48
|
+
description: string;
|
|
40
49
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Injectable } from '@nestjs/common';
|
|
2
|
-
import { GameRoom, ManyTablesTournamentRoom, OneTableTournamentRoom } from 'jp.ms.common.engine';
|
|
2
|
+
import { GameRoom, ManyTablesTournamentRoom, OneTableTournamentRoom, TournamentMaster } from 'jp.ms.common.engine';
|
|
3
3
|
|
|
4
4
|
import { SimpleRoomsManagerService } from '../simple-rooms-manager/simple-rooms-manager.service';
|
|
5
5
|
import { TournamentOneTableRoomsManagerService } from '../tournament-one-table-rooms-manager/tournament-one-table-rooms-manager.service';
|
|
@@ -79,10 +79,10 @@ export class AntiFreezeSystemService {
|
|
|
79
79
|
if (item.count === checkCount) {
|
|
80
80
|
if (item.room instanceof OneTableTournamentRoom) {
|
|
81
81
|
const room = this.oneTableRoomsManagerService.getRoomByTableId(item.tableId);
|
|
82
|
-
room?.
|
|
82
|
+
room?.getRoomMaster<TournamentMaster>().cancelTournament();
|
|
83
83
|
} else if (item.room instanceof ManyTablesTournamentRoom) {
|
|
84
84
|
const room = this.manyTablesRoomsManagerService.getRoomByTableId(item.tableId)
|
|
85
|
-
room?.
|
|
85
|
+
room?.getRoomMaster<TournamentMaster>().cancelTournament();
|
|
86
86
|
} else {
|
|
87
87
|
this.simpleRoomsManagerService.getRoomByTableId(item.tableId)?.restartTable(item.tableId);
|
|
88
88
|
}
|
|
@@ -84,6 +84,7 @@ export abstract class BaseAchievementsModule {
|
|
|
84
84
|
if (event instanceof UserGotNewLevelAppEvent) {
|
|
85
85
|
// TODO подумать куда перенести LEVEL UP
|
|
86
86
|
player.sendMessage(new SnackbarSendToPlayerWsEvent(
|
|
87
|
+
event.game,
|
|
87
88
|
AppScreenIconEnum.ARROW_UPWARD,
|
|
88
89
|
'level up',
|
|
89
90
|
'buttonText'
|
|
@@ -91,13 +92,13 @@ export abstract class BaseAchievementsModule {
|
|
|
91
92
|
|
|
92
93
|
if (this.userHasNoAchievement(usersAchievements, GotLevel3Achievement.code)) {
|
|
93
94
|
if (new GotLevel3Achievement(event.newLevel).userGotAchievement()) {
|
|
94
|
-
this.giveAchievement(allAchievements, GotLevel3Achievement.code, foundUser);
|
|
95
|
+
this.giveAchievement(allAchievements, GotLevel3Achievement.code, foundUser, event.game);
|
|
95
96
|
}
|
|
96
97
|
}
|
|
97
98
|
|
|
98
99
|
if (this.userHasNoAchievement(usersAchievements, GotLevel10Achievement.code)) {
|
|
99
100
|
if (new GotLevel10Achievement(event.newLevel).userGotAchievement()) {
|
|
100
|
-
this.giveAchievement(allAchievements, GotLevel10Achievement.code, foundUser);
|
|
101
|
+
this.giveAchievement(allAchievements, GotLevel10Achievement.code, foundUser, event.game);
|
|
101
102
|
}
|
|
102
103
|
}
|
|
103
104
|
|
|
@@ -107,7 +108,7 @@ export abstract class BaseAchievementsModule {
|
|
|
107
108
|
const playdGamesCount = await this.activityLogRepository.getUserPlayedGamesCount(userId);
|
|
108
109
|
|
|
109
110
|
if (new Playd10GamesAchievement(playdGamesCount).userGotAchievement()) {
|
|
110
|
-
this.giveAchievement(allAchievements, Playd10GamesAchievement.code, foundUser);
|
|
111
|
+
this.giveAchievement(allAchievements, Playd10GamesAchievement.code, foundUser, event.game);
|
|
111
112
|
}
|
|
112
113
|
}
|
|
113
114
|
} else if (event instanceof UserWonTheGameAppEvent) {
|
|
@@ -115,39 +116,39 @@ export abstract class BaseAchievementsModule {
|
|
|
115
116
|
const wonGamesCount = await this.activityLogRepository.getUserWonGamesCount(userId);
|
|
116
117
|
|
|
117
118
|
if (new Won3GamesAchievement(wonGamesCount).userGotAchievement()) {
|
|
118
|
-
this.giveAchievement(allAchievements, Won3GamesAchievement.code, foundUser);
|
|
119
|
+
this.giveAchievement(allAchievements, Won3GamesAchievement.code, foundUser, event.game);
|
|
119
120
|
}
|
|
120
121
|
}
|
|
121
122
|
|
|
122
123
|
if (this.userHasNoAchievement(usersAchievements, Won3ProfiAchievement.code)) {
|
|
123
124
|
const wonProfiCount = await this.activityLogRepository.getUserWonProfiCount(userId);
|
|
124
125
|
if (new Won3ProfiAchievement(wonProfiCount).userGotAchievement()) {
|
|
125
|
-
this.giveAchievement(allAchievements, Won3ProfiAchievement.code, foundUser);
|
|
126
|
+
this.giveAchievement(allAchievements, Won3ProfiAchievement.code, foundUser, event.game);
|
|
126
127
|
}
|
|
127
128
|
}
|
|
128
129
|
|
|
129
130
|
if (this.userHasNoAchievement(usersAchievements, EarnOneMillionAchievement.code)) {
|
|
130
131
|
if (new EarnOneMillionAchievement(foundUser.balance).userGotAchievement()) {
|
|
131
|
-
this.giveAchievement(allAchievements, EarnOneMillionAchievement.code, foundUser);
|
|
132
|
+
this.giveAchievement(allAchievements, EarnOneMillionAchievement.code, foundUser, event.game);
|
|
132
133
|
}
|
|
133
134
|
}
|
|
134
135
|
} else if (event instanceof UserWonOneTableTournamentAppEvent) {
|
|
135
136
|
if (this.userHasNoAchievement(usersAchievements, WonOneTableTournament3TimesAchievement.code)) {
|
|
136
137
|
const wonFastTournamentCount = await this.activityLogRepository.getUserWonOneTableTournamentCount(userId);
|
|
137
138
|
if (new WonOneTableTournament3TimesAchievement(wonFastTournamentCount).userGotAchievement()) {
|
|
138
|
-
this.giveAchievement(allAchievements, WonOneTableTournament3TimesAchievement.code, foundUser);
|
|
139
|
+
this.giveAchievement(allAchievements, WonOneTableTournament3TimesAchievement.code, foundUser, event.game);
|
|
139
140
|
}
|
|
140
141
|
}
|
|
141
142
|
} else if (event instanceof UserWonManyTablesTournamentAppEvent) {
|
|
142
143
|
if (this.userHasNoAchievement(usersAchievements, Take1PlaceOnManyTablesTournamentAchievement.code)) {
|
|
143
144
|
if (new Take1PlaceOnManyTablesTournamentAchievement(event.rank)) {
|
|
144
|
-
this.giveAchievement(allAchievements, Take1PlaceOnManyTablesTournamentAchievement.code, foundUser);
|
|
145
|
+
this.giveAchievement(allAchievements, Take1PlaceOnManyTablesTournamentAchievement.code, foundUser, event.game);
|
|
145
146
|
}
|
|
146
147
|
}
|
|
147
148
|
|
|
148
149
|
if (this.userHasNoAchievement(usersAchievements, Take2Or3PlaceOnManyTablesTournamentAchievement.code)) {
|
|
149
150
|
if (new Take2Or3PlaceOnManyTablesTournamentAchievement(event.rank)) {
|
|
150
|
-
this.giveAchievement(allAchievements, Take2Or3PlaceOnManyTablesTournamentAchievement.code, foundUser);
|
|
151
|
+
this.giveAchievement(allAchievements, Take2Or3PlaceOnManyTablesTournamentAchievement.code, foundUser, event.game);
|
|
151
152
|
}
|
|
152
153
|
}
|
|
153
154
|
}
|
|
@@ -158,7 +159,7 @@ export abstract class BaseAchievementsModule {
|
|
|
158
159
|
return !usersAchievements.find((item) => item.achievementCode === achievementCode);
|
|
159
160
|
}
|
|
160
161
|
|
|
161
|
-
protected async giveAchievement (allAchievements: Array<Achievement>, achievementCode: string, user: User) {
|
|
162
|
+
protected async giveAchievement (allAchievements: Array<Achievement>, achievementCode: string, user: User, game: string) {
|
|
162
163
|
const foundAchievement = allAchievements.find((item) => item.code === achievementCode);
|
|
163
164
|
const player = this.playersManager.getPlayerById(user.userId);
|
|
164
165
|
|
|
@@ -174,6 +175,7 @@ export abstract class BaseAchievementsModule {
|
|
|
174
175
|
);
|
|
175
176
|
|
|
176
177
|
player.sendMessage(new SnackbarSendToPlayerWsEvent(
|
|
178
|
+
game,
|
|
177
179
|
AppScreenIconEnum.EMOJI_EVENTS,
|
|
178
180
|
foundAchievement.title,
|
|
179
181
|
foundAchievement.description
|
|
@@ -28,7 +28,7 @@ export class EventsBusMainTablesSubscribeService {
|
|
|
28
28
|
this.roomStatesSubject.next(event);
|
|
29
29
|
}
|
|
30
30
|
|
|
31
|
-
subscribe(onHandleStatusRoomChange: () => void) {
|
|
31
|
+
subscribe(onHandleStatusRoomChange: (event: RoomUpdateStateEvent) => void) {
|
|
32
32
|
this.roomStatesSubject.subscribe(onHandleStatusRoomChange);
|
|
33
33
|
}
|
|
34
34
|
}
|
|
@@ -40,7 +40,7 @@ export class MainTablesListScreenView extends UniversalScreenView {
|
|
|
40
40
|
this.manyTablesTournamentRooms = manyTablesTournamentRooms;
|
|
41
41
|
}
|
|
42
42
|
|
|
43
|
-
build(): IAppScreen {
|
|
43
|
+
build (): IAppScreen {
|
|
44
44
|
const oneTableTournamentsCardList = this.oneTableTournamentRooms.map((room) =>
|
|
45
45
|
AppScreenSectionListItem.CreateCardListItemMini(
|
|
46
46
|
room.getId(),
|
|
@@ -67,7 +67,7 @@ export class MainTablesListScreenView extends UniversalScreenView {
|
|
|
67
67
|
const simpleRoomsTableCardList = this.simpleRooms.reduce<Array<AppScreenSectionListItem>>((result, room) => {
|
|
68
68
|
const list = room.getTables().map((table) => AppScreenSectionListItem.CreateCardListItemMini(
|
|
69
69
|
table.getId(),
|
|
70
|
-
|
|
70
|
+
table.getTitleWithNumber(this.lang),
|
|
71
71
|
replacePattern(table.getSubtitle(this.lang), {
|
|
72
72
|
HALF_BET: table.getHalfBet().toString(),
|
|
73
73
|
BET: table.getBet().toString()
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Controller, Get, Headers } from '@nestjs/common';
|
|
2
2
|
import { IAppHeaders, IBaseAppScreen } from 'jp.common.models';
|
|
3
3
|
|
|
4
|
-
import { PlayerCheckStateDto } from '../../dto';
|
|
4
|
+
import { PlayerCheckStateDto, FindFreeTableDto } from '../../dto';
|
|
5
5
|
|
|
6
6
|
import { MainService } from './main.service';
|
|
7
7
|
|
|
@@ -11,7 +11,7 @@ export class MainController {
|
|
|
11
11
|
private readonly mainService: MainService,
|
|
12
12
|
) { }
|
|
13
13
|
|
|
14
|
-
@Get('
|
|
14
|
+
@Get('player_check_state')
|
|
15
15
|
checkState(@Headers() headers: IAppHeaders): Promise<PlayerCheckStateDto> {
|
|
16
16
|
return this.mainService.playerCheckState(headers.client_auth_token, headers.client_game);
|
|
17
17
|
}
|
|
@@ -31,8 +31,8 @@ export class MainController {
|
|
|
31
31
|
return this.mainService.unsubscribeFromTablesScreen(headers.client_language);
|
|
32
32
|
}
|
|
33
33
|
|
|
34
|
-
@Get('
|
|
35
|
-
findFreeTable(@Headers() headers: IAppHeaders) {
|
|
34
|
+
@Get('find_free_table')
|
|
35
|
+
findFreeTable(@Headers() headers: IAppHeaders): FindFreeTableDto {
|
|
36
36
|
return this.mainService.findFreeTable(headers.client_auth_token);
|
|
37
37
|
}
|
|
38
38
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { DynamicModule, Module, Provider } from '@nestjs/common';
|
|
2
2
|
import { MongooseModule } from '@nestjs/mongoose';
|
|
3
|
-
import { GamePlayer, MainTablesUpdateListWsEvent } from 'jp.ms.common.engine';
|
|
3
|
+
import { GamePlayer, MainTablesUpdateListWsEvent, RoomUpdateStateEvent } from 'jp.ms.common.engine';
|
|
4
4
|
import { ActivityLog, ActivityLogRepository, ActivityLogSchema, User, UserSchema, UsersRepository } from 'jp.db.schemas';
|
|
5
5
|
|
|
6
6
|
import { EventsBusMainTablesSubscribeService } from '../event-bus';
|
|
@@ -28,7 +28,7 @@ export class MainModule {
|
|
|
28
28
|
private readonly mainService: MainService,
|
|
29
29
|
) { }
|
|
30
30
|
|
|
31
|
-
static forRootAsync(options: MainModuleOptions): DynamicModule {
|
|
31
|
+
static forRootAsync (options: MainModuleOptions): DynamicModule {
|
|
32
32
|
return {
|
|
33
33
|
module: MainModule,
|
|
34
34
|
imports: options.imports ?? [],
|
|
@@ -42,14 +42,14 @@ export class MainModule {
|
|
|
42
42
|
};
|
|
43
43
|
}
|
|
44
44
|
|
|
45
|
-
async onModuleInit() {
|
|
45
|
+
async onModuleInit () {
|
|
46
46
|
this.eventsBusMainTablesSubscribeService.subscribe(this.onHandleStatusRoomChange);
|
|
47
47
|
}
|
|
48
48
|
|
|
49
|
-
private onHandleStatusRoomChange = () => {
|
|
49
|
+
private onHandleStatusRoomChange = (event: RoomUpdateStateEvent) => {
|
|
50
50
|
this.eventsBusMainTablesSubscribeService.getTablesSubscribers().forEach((subscriber: GamePlayer) => {
|
|
51
51
|
const screen = this.mainService.getScreen(subscriber.language);
|
|
52
|
-
subscriber.sendMessage(new MainTablesUpdateListWsEvent(
|
|
52
|
+
subscriber.sendMessage(new MainTablesUpdateListWsEvent(event.game, screen));
|
|
53
53
|
});
|
|
54
54
|
}
|
|
55
55
|
}
|