jp.ms.common.modules 1.0.22 → 1.0.24
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/modules/base-achievements/base-achievements.module.d.ts +5 -3
- package/dist/modules/base-achievements/base-achievements.module.js +32 -23
- package/dist/modules/base-achievements/base-achievements.module.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +8 -8
- package/src/modules/base-achievements/base-achievements.module.ts +44 -24
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ActivityLogRepository, UsersRepository, AchievementRepository, Achievement } from 'jp.db.schemas';
|
|
1
|
+
import { ActivityLogRepository, User, UsersRepository, AchievementRepository, Achievement, UsersAchievement, UsersAchievementsRepository } from 'jp.db.schemas';
|
|
2
2
|
import { BaseAppEvent } from 'jp.ms.common.engine';
|
|
3
3
|
import { EventsBusAppSubscribeService } from '../event-bus/events-bus.app.subscribe.service';
|
|
4
4
|
import { PlayersManagerService } from '../players-manager';
|
|
@@ -8,8 +8,10 @@ export declare abstract class BaseAchievementsModule {
|
|
|
8
8
|
protected readonly usersRepository: UsersRepository;
|
|
9
9
|
protected readonly activityLogRepository: ActivityLogRepository;
|
|
10
10
|
protected readonly achievementRepository: AchievementRepository;
|
|
11
|
-
|
|
11
|
+
protected readonly usersAchievementRepository: UsersAchievementsRepository;
|
|
12
|
+
constructor(eventsBusAppSubscribeService: EventsBusAppSubscribeService, playersManager: PlayersManagerService, usersRepository: UsersRepository, activityLogRepository: ActivityLogRepository, achievementRepository: AchievementRepository, usersAchievementRepository: UsersAchievementsRepository);
|
|
12
13
|
onModuleInit(): Promise<void>;
|
|
13
14
|
protected onHandleAppEvent(event: BaseAppEvent): Promise<void>;
|
|
14
|
-
protected
|
|
15
|
+
protected userHasNoAchievement(usersAchievements: Array<UsersAchievement>, achievementCode: string): boolean;
|
|
16
|
+
protected giveAchievement(allAchievements: Array<Achievement>, achievementCode: string, user: User): Promise<void>;
|
|
15
17
|
}
|
|
@@ -23,12 +23,14 @@ let BaseAchievementsModule = class BaseAchievementsModule {
|
|
|
23
23
|
usersRepository;
|
|
24
24
|
activityLogRepository;
|
|
25
25
|
achievementRepository;
|
|
26
|
-
|
|
26
|
+
usersAchievementRepository;
|
|
27
|
+
constructor(eventsBusAppSubscribeService, playersManager, usersRepository, activityLogRepository, achievementRepository, usersAchievementRepository) {
|
|
27
28
|
this.eventsBusAppSubscribeService = eventsBusAppSubscribeService;
|
|
28
29
|
this.playersManager = playersManager;
|
|
29
30
|
this.usersRepository = usersRepository;
|
|
30
31
|
this.activityLogRepository = activityLogRepository;
|
|
31
32
|
this.achievementRepository = achievementRepository;
|
|
33
|
+
this.usersAchievementRepository = usersAchievementRepository;
|
|
32
34
|
}
|
|
33
35
|
async onModuleInit() {
|
|
34
36
|
this.eventsBusAppSubscribeService.subscribe(this.onHandleAppEvent);
|
|
@@ -39,76 +41,80 @@ let BaseAchievementsModule = class BaseAchievementsModule {
|
|
|
39
41
|
const player = this.playersManager.getPlayerById(userId);
|
|
40
42
|
const foundUser = await this.usersRepository.findById(userId);
|
|
41
43
|
const allAchievements = await this.achievementRepository.findAchievements();
|
|
44
|
+
const usersAchievements = await this.usersAchievementRepository.findAchivementsByUserId(userId);
|
|
42
45
|
if (!player || !foundUser) {
|
|
43
46
|
throw new common_1.InternalServerErrorException();
|
|
44
47
|
}
|
|
45
48
|
if (event instanceof jp_ms_common_engine_1.UserGotNewLevelAppEvent) {
|
|
46
49
|
player.sendMessage(new jp_ms_common_engine_1.SnackbarSendToPlayerWsEvent(jp_common_models_1.AppScreenIconEnum.ARROW_UPWARD, 'level up', 'buttonText'));
|
|
47
|
-
if (
|
|
50
|
+
if (this.userHasNoAchievement(usersAchievements, jp_ms_common_engine_1.GotLevel3Achievement.code)) {
|
|
48
51
|
if (new jp_ms_common_engine_1.GotLevel3Achievement(event.newLevel).userGotAchievement()) {
|
|
49
|
-
this.giveAchievement(allAchievements, jp_ms_common_engine_1.GotLevel3Achievement.code,
|
|
52
|
+
this.giveAchievement(allAchievements, jp_ms_common_engine_1.GotLevel3Achievement.code, foundUser);
|
|
50
53
|
}
|
|
51
54
|
}
|
|
52
|
-
if (
|
|
55
|
+
if (this.userHasNoAchievement(usersAchievements, jp_ms_common_engine_1.GotLevel10Achievement.code)) {
|
|
53
56
|
if (new jp_ms_common_engine_1.GotLevel10Achievement(event.newLevel).userGotAchievement()) {
|
|
54
|
-
this.giveAchievement(allAchievements, jp_ms_common_engine_1.GotLevel10Achievement.code,
|
|
57
|
+
this.giveAchievement(allAchievements, jp_ms_common_engine_1.GotLevel10Achievement.code, foundUser);
|
|
55
58
|
}
|
|
56
59
|
}
|
|
57
60
|
}
|
|
58
61
|
else if (event instanceof jp_ms_common_engine_1.UserPlayedTheGameAppEvent) {
|
|
59
|
-
if (
|
|
62
|
+
if (this.userHasNoAchievement(usersAchievements, jp_ms_common_engine_1.Playd10GamesAchievement.code)) {
|
|
60
63
|
const playdGamesCount = await this.activityLogRepository.getUserPlayedGamesCount(userId);
|
|
61
64
|
if (new jp_ms_common_engine_1.Playd10GamesAchievement(playdGamesCount).userGotAchievement()) {
|
|
62
|
-
this.giveAchievement(allAchievements, jp_ms_common_engine_1.Playd10GamesAchievement.code,
|
|
65
|
+
this.giveAchievement(allAchievements, jp_ms_common_engine_1.Playd10GamesAchievement.code, foundUser);
|
|
63
66
|
}
|
|
64
67
|
}
|
|
65
68
|
}
|
|
66
69
|
else if (event instanceof jp_ms_common_engine_1.UserWonTheGameAppEvent) {
|
|
67
|
-
if (
|
|
70
|
+
if (this.userHasNoAchievement(usersAchievements, jp_ms_common_engine_1.Won3GamesAchievement.code)) {
|
|
68
71
|
const wonGamesCount = await this.activityLogRepository.getUserWonGamesCount(userId);
|
|
69
72
|
if (new jp_ms_common_engine_1.Won3GamesAchievement(wonGamesCount).userGotAchievement()) {
|
|
70
|
-
this.giveAchievement(allAchievements, jp_ms_common_engine_1.Won3GamesAchievement.code,
|
|
73
|
+
this.giveAchievement(allAchievements, jp_ms_common_engine_1.Won3GamesAchievement.code, foundUser);
|
|
71
74
|
}
|
|
72
75
|
}
|
|
73
|
-
if (
|
|
76
|
+
if (this.userHasNoAchievement(usersAchievements, jp_ms_common_engine_1.Won3ProfiAchievement.code)) {
|
|
74
77
|
const wonProfiCount = await this.activityLogRepository.getUserWonProfiCount(userId);
|
|
75
78
|
if (new jp_ms_common_engine_1.Won3ProfiAchievement(wonProfiCount).userGotAchievement()) {
|
|
76
|
-
this.giveAchievement(allAchievements, jp_ms_common_engine_1.Won3ProfiAchievement.code,
|
|
79
|
+
this.giveAchievement(allAchievements, jp_ms_common_engine_1.Won3ProfiAchievement.code, foundUser);
|
|
77
80
|
}
|
|
78
81
|
}
|
|
79
|
-
if (
|
|
82
|
+
if (this.userHasNoAchievement(usersAchievements, jp_ms_common_engine_1.EarnOneMillionAchievement.code)) {
|
|
80
83
|
if (new jp_ms_common_engine_1.EarnOneMillionAchievement(foundUser.balance).userGotAchievement()) {
|
|
81
|
-
this.giveAchievement(allAchievements, jp_ms_common_engine_1.EarnOneMillionAchievement.code,
|
|
84
|
+
this.giveAchievement(allAchievements, jp_ms_common_engine_1.EarnOneMillionAchievement.code, foundUser);
|
|
82
85
|
}
|
|
83
86
|
}
|
|
84
87
|
}
|
|
85
88
|
else if (event instanceof jp_ms_common_engine_1.UserWonOneTableTournamentAppEvent) {
|
|
86
|
-
if (
|
|
89
|
+
if (this.userHasNoAchievement(usersAchievements, jp_ms_common_engine_1.WonOneTableTournament3TimesAchievement.code)) {
|
|
87
90
|
const wonFastTournamentCount = await this.activityLogRepository.getUserWonOneTableTournamentCount(userId);
|
|
88
91
|
if (new jp_ms_common_engine_1.WonOneTableTournament3TimesAchievement(wonFastTournamentCount).userGotAchievement()) {
|
|
89
|
-
this.giveAchievement(allAchievements, jp_ms_common_engine_1.WonOneTableTournament3TimesAchievement.code,
|
|
92
|
+
this.giveAchievement(allAchievements, jp_ms_common_engine_1.WonOneTableTournament3TimesAchievement.code, foundUser);
|
|
90
93
|
}
|
|
91
94
|
}
|
|
92
95
|
}
|
|
93
96
|
else if (event instanceof jp_ms_common_engine_1.UserWonManyTablesTournamentAppEvent) {
|
|
94
|
-
if (
|
|
97
|
+
if (this.userHasNoAchievement(usersAchievements, jp_ms_common_engine_1.Take1PlaceOnManyTablesTournamentAchievement.code)) {
|
|
95
98
|
if (new jp_ms_common_engine_1.Take1PlaceOnManyTablesTournamentAchievement(event.rank)) {
|
|
96
|
-
this.giveAchievement(allAchievements, jp_ms_common_engine_1.Take1PlaceOnManyTablesTournamentAchievement.code,
|
|
99
|
+
this.giveAchievement(allAchievements, jp_ms_common_engine_1.Take1PlaceOnManyTablesTournamentAchievement.code, foundUser);
|
|
97
100
|
}
|
|
98
101
|
}
|
|
99
|
-
if (
|
|
102
|
+
if (this.userHasNoAchievement(usersAchievements, jp_ms_common_engine_1.Take2Or3PlaceOnManyTablesTournamentAchievement.code)) {
|
|
100
103
|
if (new jp_ms_common_engine_1.Take2Or3PlaceOnManyTablesTournamentAchievement(event.rank)) {
|
|
101
|
-
this.giveAchievement(allAchievements, jp_ms_common_engine_1.Take2Or3PlaceOnManyTablesTournamentAchievement.code,
|
|
104
|
+
this.giveAchievement(allAchievements, jp_ms_common_engine_1.Take2Or3PlaceOnManyTablesTournamentAchievement.code, foundUser);
|
|
102
105
|
}
|
|
103
106
|
}
|
|
104
107
|
}
|
|
105
108
|
}
|
|
106
109
|
}
|
|
107
|
-
|
|
110
|
+
userHasNoAchievement(usersAchievements, achievementCode) {
|
|
111
|
+
return !usersAchievements.find((item) => item.achievementCode === achievementCode);
|
|
112
|
+
}
|
|
113
|
+
async giveAchievement(allAchievements, achievementCode, user) {
|
|
108
114
|
const foundAchievement = allAchievements.find((item) => item.code === achievementCode);
|
|
109
|
-
const player = this.playersManager.getPlayerById(userId);
|
|
115
|
+
const player = this.playersManager.getPlayerById(user.userId);
|
|
110
116
|
if (foundAchievement && player) {
|
|
111
|
-
await this.
|
|
117
|
+
await this.usersAchievementRepository.addUsersAchievement(user.userId, user.fullName, foundAchievement.achievementId, foundAchievement.title, foundAchievement.code, foundAchievement.prize, '');
|
|
112
118
|
player.sendMessage(new jp_ms_common_engine_1.SnackbarSendToPlayerWsEvent(jp_common_models_1.AppScreenIconEnum.EMOJI_EVENTS, foundAchievement.title, foundAchievement.description));
|
|
113
119
|
}
|
|
114
120
|
}
|
|
@@ -121,11 +127,13 @@ exports.BaseAchievementsModule = BaseAchievementsModule = __decorate([
|
|
|
121
127
|
mongoose_1.MongooseModule.forFeature([{ name: jp_db_schemas_1.User.name, schema: jp_db_schemas_1.UserSchema }]),
|
|
122
128
|
mongoose_1.MongooseModule.forFeature([{ name: jp_db_schemas_1.ActivityLog.name, schema: jp_db_schemas_1.ActivityLogSchema }]),
|
|
123
129
|
mongoose_1.MongooseModule.forFeature([{ name: jp_db_schemas_1.Achievement.name, schema: jp_db_schemas_1.AchievementSchema }]),
|
|
130
|
+
mongoose_1.MongooseModule.forFeature([{ name: jp_db_schemas_1.UsersAchievement.name, schema: jp_db_schemas_1.UsersAchievementSchema }]),
|
|
124
131
|
],
|
|
125
132
|
providers: [
|
|
126
133
|
jp_db_schemas_1.UsersRepository,
|
|
127
134
|
jp_db_schemas_1.ActivityLogRepository,
|
|
128
135
|
jp_db_schemas_1.AchievementRepository,
|
|
136
|
+
jp_db_schemas_1.UsersAchievementsRepository,
|
|
129
137
|
events_bus_app_subscribe_service_1.EventsBusAppSubscribeService,
|
|
130
138
|
],
|
|
131
139
|
}),
|
|
@@ -133,6 +141,7 @@ exports.BaseAchievementsModule = BaseAchievementsModule = __decorate([
|
|
|
133
141
|
players_manager_1.PlayersManagerService,
|
|
134
142
|
jp_db_schemas_1.UsersRepository,
|
|
135
143
|
jp_db_schemas_1.ActivityLogRepository,
|
|
136
|
-
jp_db_schemas_1.AchievementRepository
|
|
144
|
+
jp_db_schemas_1.AchievementRepository,
|
|
145
|
+
jp_db_schemas_1.UsersAchievementsRepository])
|
|
137
146
|
], BaseAchievementsModule);
|
|
138
147
|
//# sourceMappingURL=base-achievements.module.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-achievements.module.js","sourceRoot":"","sources":["../../../src/modules/base-achievements/base-achievements.module.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA8E;AAC9E,+CAAkD;AAClD,
|
|
1
|
+
{"version":3,"file":"base-achievements.module.js","sourceRoot":"","sources":["../../../src/modules/base-achievements/base-achievements.module.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA8E;AAC9E,+CAAkD;AAClD,iDAauB;AACvB,6DAiB6B;AAC7B,uDAAqD;AAErD,oGAA6F;AAC7F,wDAA2D;AAmBpD,IAAe,sBAAsB,GAArC,MAAe,sBAAsB;IAErB;IACA;IACA;IACA;IACA;IACA;IANrB,YACqB,4BAA0D,EAC1D,cAAqC,EACrC,eAAgC,EAChC,qBAA4C,EAC5C,qBAA4C,EAC5C,0BAAuD;QALvD,iCAA4B,GAA5B,4BAA4B,CAA8B;QAC1D,mBAAc,GAAd,cAAc,CAAuB;QACrC,oBAAe,GAAf,eAAe,CAAiB;QAChC,0BAAqB,GAArB,qBAAqB,CAAuB;QAC5C,0BAAqB,GAArB,qBAAqB,CAAuB;QAC5C,+BAA0B,GAA1B,0BAA0B,CAA6B;IAE5E,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,IAAI,CAAC,4BAA4B,CAAC,SAAS,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACrE,CAAC;IAES,KAAK,CAAC,gBAAgB,CAAE,KAAmB;QACnD,IAAI,KAAK,YAAY,sCAAgB,EAAE,CAAC;YACtC,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;YAC5B,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;YACzD,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YAC9D,MAAM,eAAe,GAAuB,MAAM,IAAI,CAAC,qBAAqB,CAAC,gBAAgB,EAAE,CAAC;YAChG,MAAM,iBAAiB,GAA4B,MAAM,IAAI,CAAC,0BAA0B,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC;YAEzH,IAAI,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;gBAC1B,MAAM,IAAI,qCAA4B,EAAE,CAAC;YAC3C,CAAC;YAED,IAAI,KAAK,YAAY,6CAAuB,EAAE,CAAC;gBAE7C,MAAM,CAAC,WAAW,CAAC,IAAI,iDAA2B,CAChD,oCAAiB,CAAC,YAAY,EAC9B,UAAU,EACV,YAAY,CACb,CAAC,CAAC;gBAEH,IAAI,IAAI,CAAC,oBAAoB,CAAC,iBAAiB,EAAE,0CAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC5E,IAAI,IAAI,0CAAoB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,kBAAkB,EAAE,EAAE,CAAC;wBAClE,IAAI,CAAC,eAAe,CAAC,eAAe,EAAE,0CAAoB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;oBAC9E,CAAC;gBACH,CAAC;gBAED,IAAI,IAAI,CAAC,oBAAoB,CAAC,iBAAiB,EAAE,2CAAqB,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC7E,IAAI,IAAI,2CAAqB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,kBAAkB,EAAE,EAAE,CAAC;wBACnE,IAAI,CAAC,eAAe,CAAC,eAAe,EAAE,2CAAqB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;oBAC/E,CAAC;gBACH,CAAC;YAEH,CAAC;iBAAM,IAAI,KAAK,YAAY,+CAAyB,EAAE,CAAC;gBAEtD,IAAI,IAAI,CAAC,oBAAoB,CAAC,iBAAiB,EAAE,6CAAuB,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC/E,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC;oBAEzF,IAAI,IAAI,6CAAuB,CAAC,eAAe,CAAC,CAAC,kBAAkB,EAAE,EAAE,CAAC;wBACtE,IAAI,CAAC,eAAe,CAAC,eAAe,EAAE,6CAAuB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;oBACjF,CAAC;gBACH,CAAC;YACH,CAAC;iBAAM,IAAI,KAAK,YAAY,4CAAsB,EAAE,CAAC;gBACnD,IAAI,IAAI,CAAC,oBAAoB,CAAC,iBAAiB,EAAE,0CAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC5E,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;oBAEpF,IAAI,IAAI,0CAAoB,CAAC,aAAa,CAAC,CAAC,kBAAkB,EAAE,EAAE,CAAC;wBACjE,IAAI,CAAC,eAAe,CAAC,eAAe,EAAE,0CAAoB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;oBAC9E,CAAC;gBACH,CAAC;gBAED,IAAI,IAAI,CAAC,oBAAoB,CAAC,iBAAiB,EAAE,0CAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC5E,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;oBACpF,IAAI,IAAI,0CAAoB,CAAC,aAAa,CAAC,CAAC,kBAAkB,EAAE,EAAE,CAAC;wBACjE,IAAI,CAAC,eAAe,CAAC,eAAe,EAAE,0CAAoB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;oBAC9E,CAAC;gBACH,CAAC;gBAED,IAAI,IAAI,CAAC,oBAAoB,CAAC,iBAAiB,EAAE,+CAAyB,CAAC,IAAI,CAAC,EAAE,CAAC;oBACjF,IAAI,IAAI,+CAAyB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,kBAAkB,EAAE,EAAE,CAAC;wBAC1E,IAAI,CAAC,eAAe,CAAC,eAAe,EAAE,+CAAyB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;oBACnF,CAAC;gBACH,CAAC;YACH,CAAC;iBAAM,IAAI,KAAK,YAAY,uDAAiC,EAAE,CAAC;gBAC9D,IAAI,IAAI,CAAC,oBAAoB,CAAC,iBAAiB,EAAE,4DAAsC,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC9F,MAAM,sBAAsB,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,iCAAiC,CAAC,MAAM,CAAC,CAAC;oBAC1G,IAAI,IAAI,4DAAsC,CAAC,sBAAsB,CAAC,CAAC,kBAAkB,EAAE,EAAE,CAAC;wBAC5F,IAAI,CAAC,eAAe,CAAC,eAAe,EAAE,4DAAsC,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;oBAChG,CAAC;gBACH,CAAC;YACH,CAAC;iBAAM,IAAI,KAAK,YAAY,yDAAmC,EAAE,CAAC;gBAChE,IAAI,IAAI,CAAC,oBAAoB,CAAC,iBAAiB,EAAE,iEAA2C,CAAC,IAAI,CAAC,EAAE,CAAC;oBACnG,IAAI,IAAI,iEAA2C,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;wBAChE,IAAI,CAAC,eAAe,CAAC,eAAe,EAAE,iEAA2C,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;oBACrG,CAAC;gBACH,CAAC;gBAED,IAAI,IAAI,CAAC,oBAAoB,CAAC,iBAAiB,EAAE,oEAA8C,CAAC,IAAI,CAAC,EAAE,CAAC;oBACtG,IAAI,IAAI,oEAA8C,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;wBACnE,IAAI,CAAC,eAAe,CAAC,eAAe,EAAE,oEAA8C,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;oBACxG,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAES,oBAAoB,CAAE,iBAA0C,EAAE,eAAuB;QACjG,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,eAAe,KAAK,eAAe,CAAC,CAAC;IACrF,CAAC;IAES,KAAK,CAAC,eAAe,CAAE,eAAmC,EAAE,eAAuB,EAAE,IAAU;QACvG,MAAM,gBAAgB,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,eAAe,CAAC,CAAC;QACvF,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAE9D,IAAI,gBAAgB,IAAI,MAAM,EAAE,CAAC;YAC/B,MAAM,IAAI,CAAC,0BAA0B,CAAC,mBAAmB,CACvD,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,QAAQ,EACb,gBAAgB,CAAC,aAAa,EAC9B,gBAAgB,CAAC,KAAK,EACtB,gBAAgB,CAAC,IAAI,EACrB,gBAAgB,CAAC,KAAK,EACtB,EAAE,CACH,CAAC;YAEF,MAAM,CAAC,WAAW,CAAC,IAAI,iDAA2B,CAChD,oCAAiB,CAAC,YAAY,EAC9B,gBAAgB,CAAC,KAAK,EACtB,gBAAgB,CAAC,WAAW,CAC7B,CAAC,CAAC;QACL,CAAC;IACH,CAAC;CACF,CAAA;AA9HqB,wDAAsB;iCAAtB,sBAAsB;IAhB3C,IAAA,eAAM,GAAE;IACR,IAAA,eAAM,EAAC;QACN,OAAO,EAAE;YACP,yBAAc,CAAC,UAAU,CAAC,CAAC,EAAE,IAAI,EAAE,oBAAI,CAAC,IAAI,EAAE,MAAM,EAAE,0BAAU,EAAE,CAAC,CAAC;YACpE,yBAAc,CAAC,UAAU,CAAC,CAAC,EAAE,IAAI,EAAE,2BAAW,CAAC,IAAI,EAAE,MAAM,EAAE,iCAAiB,EAAE,CAAC,CAAC;YAClF,yBAAc,CAAC,UAAU,CAAC,CAAC,EAAE,IAAI,EAAE,2BAAW,CAAC,IAAI,EAAE,MAAM,EAAE,iCAAiB,EAAE,CAAC,CAAC;YAClF,yBAAc,CAAC,UAAU,CAAC,CAAC,EAAE,IAAI,EAAE,gCAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,sCAAsB,EAAE,CAAC,CAAC;SAC7F;QACD,SAAS,EAAE;YACT,+BAAe;YACf,qCAAqB;YACrB,qCAAqB;YACrB,2CAA2B;YAC3B,+DAA4B;SAC7B;KACF,CAAC;qCAGmD,+DAA4B;QAC1C,uCAAqB;QACpB,+BAAe;QACT,qCAAqB;QACrB,qCAAqB;QAChB,2CAA2B;GAPxD,sBAAsB,CA8H3C"}
|