@lyxa.ai/marketing 1.0.49 → 1.0.51

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 (241) hide show
  1. package/dist/lib/index.d.ts +265 -21
  2. package/dist/lib/index.d.ts.map +1 -1
  3. package/dist/lib/modules/tournament/config/config.repository.d.ts +3 -0
  4. package/dist/lib/modules/tournament/config/config.repository.d.ts.map +1 -1
  5. package/dist/lib/modules/tournament/config/config.repository.js +3 -0
  6. package/dist/lib/modules/tournament/config/config.repository.js.map +1 -1
  7. package/dist/lib/modules/tournament/config/config.router.d.ts +10 -10
  8. package/dist/lib/modules/tournament/config/config.validation.d.ts +37 -36
  9. package/dist/lib/modules/tournament/config/config.validation.d.ts.map +1 -1
  10. package/dist/lib/modules/tournament/config/config.validation.js +4 -3
  11. package/dist/lib/modules/tournament/config/config.validation.js.map +1 -1
  12. package/dist/lib/modules/tournament/match/events/evaluate-predictions.consumer.d.ts.map +1 -1
  13. package/dist/lib/modules/tournament/match/events/evaluate-predictions.consumer.js +9 -1
  14. package/dist/lib/modules/tournament/match/events/evaluate-predictions.consumer.js.map +1 -1
  15. package/dist/lib/modules/tournament/match/match.builder.d.ts.map +1 -1
  16. package/dist/lib/modules/tournament/match/match.builder.js +2 -1
  17. package/dist/lib/modules/tournament/match/match.builder.js.map +1 -1
  18. package/dist/lib/modules/tournament/match/match.repository.d.ts +2 -0
  19. package/dist/lib/modules/tournament/match/match.repository.d.ts.map +1 -1
  20. package/dist/lib/modules/tournament/match/match.repository.js +10 -0
  21. package/dist/lib/modules/tournament/match/match.repository.js.map +1 -1
  22. package/dist/lib/modules/tournament/match/match.router.d.ts +16 -4
  23. package/dist/lib/modules/tournament/match/match.router.d.ts.map +1 -1
  24. package/dist/lib/modules/tournament/match/match.service.d.ts +0 -1
  25. package/dist/lib/modules/tournament/match/match.service.d.ts.map +1 -1
  26. package/dist/lib/modules/tournament/match/match.service.js +3 -9
  27. package/dist/lib/modules/tournament/match/match.service.js.map +1 -1
  28. package/dist/lib/modules/tournament/match/match.validation.d.ts +50 -0
  29. package/dist/lib/modules/tournament/match/match.validation.d.ts.map +1 -1
  30. package/dist/lib/modules/tournament/match/match.validation.js +1 -0
  31. package/dist/lib/modules/tournament/match/match.validation.js.map +1 -1
  32. package/dist/lib/modules/tournament/notification/jobs/notification.producer.d.ts +2 -5
  33. package/dist/lib/modules/tournament/notification/jobs/notification.producer.d.ts.map +1 -1
  34. package/dist/lib/modules/tournament/notification/jobs/notification.producer.js +1 -6
  35. package/dist/lib/modules/tournament/notification/jobs/notification.producer.js.map +1 -1
  36. package/dist/lib/modules/tournament/notification/jobs/notification.worker.d.ts +2 -0
  37. package/dist/lib/modules/tournament/notification/jobs/notification.worker.d.ts.map +1 -1
  38. package/dist/lib/modules/tournament/notification/jobs/notification.worker.js +15 -9
  39. package/dist/lib/modules/tournament/notification/jobs/notification.worker.js.map +1 -1
  40. package/dist/lib/modules/tournament/notification/notification-template.repository.d.ts +8 -0
  41. package/dist/lib/modules/tournament/notification/notification-template.repository.d.ts.map +1 -0
  42. package/dist/lib/modules/tournament/notification/notification-template.repository.js +60 -0
  43. package/dist/lib/modules/tournament/notification/notification-template.repository.js.map +1 -0
  44. package/dist/lib/modules/tournament/notification/notification.config.d.ts +10 -0
  45. package/dist/lib/modules/tournament/notification/notification.config.d.ts.map +1 -0
  46. package/dist/lib/modules/tournament/notification/notification.config.js +15 -0
  47. package/dist/lib/modules/tournament/notification/notification.config.js.map +1 -0
  48. package/dist/lib/modules/tournament/notification/notification.schedule.config.d.ts +10 -0
  49. package/dist/lib/modules/tournament/notification/notification.schedule.config.d.ts.map +1 -0
  50. package/dist/lib/modules/tournament/notification/notification.schedule.config.js +15 -0
  51. package/dist/lib/modules/tournament/notification/notification.schedule.config.js.map +1 -0
  52. package/dist/lib/modules/tournament/notification/notification.scheduler.service.d.ts +4 -4
  53. package/dist/lib/modules/tournament/notification/notification.scheduler.service.d.ts.map +1 -1
  54. package/dist/lib/modules/tournament/notification/notification.scheduler.service.js +15 -28
  55. package/dist/lib/modules/tournament/notification/notification.scheduler.service.js.map +1 -1
  56. package/dist/lib/modules/tournament/notification/notification.service.d.ts +5 -4
  57. package/dist/lib/modules/tournament/notification/notification.service.d.ts.map +1 -1
  58. package/dist/lib/modules/tournament/notification/notification.service.js +33 -28
  59. package/dist/lib/modules/tournament/notification/notification.service.js.map +1 -1
  60. package/dist/lib/modules/tournament/participant/participant.repository.d.ts +3 -0
  61. package/dist/lib/modules/tournament/participant/participant.repository.d.ts.map +1 -1
  62. package/dist/lib/modules/tournament/participant/participant.repository.js +14 -0
  63. package/dist/lib/modules/tournament/participant/participant.repository.js.map +1 -1
  64. package/dist/lib/modules/tournament/participant/participant.router.d.ts +27 -4
  65. package/dist/lib/modules/tournament/participant/participant.router.d.ts.map +1 -1
  66. package/dist/lib/modules/tournament/participant/participant.router.js +7 -0
  67. package/dist/lib/modules/tournament/participant/participant.router.js.map +1 -1
  68. package/dist/lib/modules/tournament/participant/participant.service.d.ts +2 -2
  69. package/dist/lib/modules/tournament/participant/participant.service.d.ts.map +1 -1
  70. package/dist/lib/modules/tournament/participant/participant.service.js +20 -6
  71. package/dist/lib/modules/tournament/participant/participant.service.js.map +1 -1
  72. package/dist/lib/modules/tournament/participant/participant.validation.d.ts +144 -36
  73. package/dist/lib/modules/tournament/participant/participant.validation.d.ts.map +1 -1
  74. package/dist/lib/modules/tournament/participant/participant.validation.js +10 -3
  75. package/dist/lib/modules/tournament/participant/participant.validation.js.map +1 -1
  76. package/dist/lib/modules/tournament/prediction/prediction.builder.d.ts.map +1 -1
  77. package/dist/lib/modules/tournament/prediction/prediction.builder.js +3 -2
  78. package/dist/lib/modules/tournament/prediction/prediction.builder.js.map +1 -1
  79. package/dist/lib/modules/tournament/prediction/prediction.service.d.ts +1 -0
  80. package/dist/lib/modules/tournament/prediction/prediction.service.d.ts.map +1 -1
  81. package/dist/lib/modules/tournament/prediction/prediction.service.js +12 -1
  82. package/dist/lib/modules/tournament/prediction/prediction.service.js.map +1 -1
  83. package/dist/lib/modules/tournament/reward/reward.builder.d.ts.map +1 -1
  84. package/dist/lib/modules/tournament/reward/reward.builder.js +2 -1
  85. package/dist/lib/modules/tournament/reward/reward.builder.js.map +1 -1
  86. package/dist/lib/modules/tournament/reward/reward.repository.d.ts +8 -0
  87. package/dist/lib/modules/tournament/reward/reward.repository.d.ts.map +1 -0
  88. package/dist/lib/modules/tournament/reward/reward.repository.js +66 -0
  89. package/dist/lib/modules/tournament/reward/reward.repository.js.map +1 -0
  90. package/dist/lib/modules/tournament/schedule/schedule.router.d.ts +27 -0
  91. package/dist/lib/modules/tournament/schedule/schedule.router.d.ts.map +1 -0
  92. package/dist/lib/modules/tournament/schedule/schedule.router.js +17 -0
  93. package/dist/lib/modules/tournament/schedule/schedule.router.js.map +1 -0
  94. package/dist/lib/modules/tournament/schedule/schedule.service.d.ts +10 -0
  95. package/dist/lib/modules/tournament/schedule/schedule.service.d.ts.map +1 -0
  96. package/dist/lib/modules/tournament/schedule/schedule.service.js +87 -0
  97. package/dist/lib/modules/tournament/schedule/schedule.service.js.map +1 -0
  98. package/dist/lib/modules/tournament/score/score.repository.d.ts +8 -1
  99. package/dist/lib/modules/tournament/score/score.repository.d.ts.map +1 -1
  100. package/dist/lib/modules/tournament/score/score.repository.js +12 -2
  101. package/dist/lib/modules/tournament/score/score.repository.js.map +1 -1
  102. package/dist/lib/modules/tournament/score/score.router.d.ts +98 -0
  103. package/dist/lib/modules/tournament/score/score.router.d.ts.map +1 -0
  104. package/dist/lib/modules/tournament/score/score.router.js +20 -0
  105. package/dist/lib/modules/tournament/score/score.router.js.map +1 -0
  106. package/dist/lib/modules/tournament/score/score.service.d.ts +7 -0
  107. package/dist/lib/modules/tournament/score/score.service.d.ts.map +1 -1
  108. package/dist/lib/modules/tournament/score/score.service.js +49 -0
  109. package/dist/lib/modules/tournament/score/score.service.js.map +1 -1
  110. package/dist/lib/modules/tournament/score/score.validation.d.ts +375 -0
  111. package/dist/lib/modules/tournament/score/score.validation.d.ts.map +1 -0
  112. package/dist/lib/modules/tournament/score/score.validation.js +19 -0
  113. package/dist/lib/modules/tournament/score/score.validation.js.map +1 -0
  114. package/dist/lib/modules/tournament/statistics/statistics.builder.d.ts +10 -0
  115. package/dist/lib/modules/tournament/statistics/statistics.builder.d.ts.map +1 -0
  116. package/dist/lib/modules/tournament/statistics/statistics.builder.js +53 -0
  117. package/dist/lib/modules/tournament/statistics/statistics.builder.js.map +1 -0
  118. package/dist/lib/modules/tournament/statistics/statistics.router.d.ts +80 -0
  119. package/dist/lib/modules/tournament/statistics/statistics.router.d.ts.map +1 -0
  120. package/dist/lib/modules/tournament/statistics/statistics.router.js +21 -0
  121. package/dist/lib/modules/tournament/statistics/statistics.router.js.map +1 -0
  122. package/dist/lib/modules/tournament/statistics/statistics.service.d.ts +11 -0
  123. package/dist/lib/modules/tournament/statistics/statistics.service.d.ts.map +1 -0
  124. package/dist/lib/modules/tournament/statistics/statistics.service.js +80 -0
  125. package/dist/lib/modules/tournament/statistics/statistics.service.js.map +1 -0
  126. package/dist/lib/modules/tournament/statistics/statistics.validation.d.ts +404 -0
  127. package/dist/lib/modules/tournament/statistics/statistics.validation.d.ts.map +1 -0
  128. package/dist/lib/modules/tournament/statistics/statistics.validation.js +36 -0
  129. package/dist/lib/modules/tournament/statistics/statistics.validation.js.map +1 -0
  130. package/dist/lib/modules/tournament/team/team.router.d.ts +9 -3
  131. package/dist/lib/modules/tournament/team/team.router.d.ts.map +1 -1
  132. package/dist/lib/modules/tournament/team/team.service.d.ts +1 -0
  133. package/dist/lib/modules/tournament/team/team.service.d.ts.map +1 -1
  134. package/dist/lib/modules/tournament/team/team.service.js +23 -16
  135. package/dist/lib/modules/tournament/team/team.service.js.map +1 -1
  136. package/dist/lib/modules/tournament/team/team.validation.d.ts +54 -4
  137. package/dist/lib/modules/tournament/team/team.validation.d.ts.map +1 -1
  138. package/dist/lib/modules/tournament/team/team.validation.js +4 -2
  139. package/dist/lib/modules/tournament/team/team.validation.js.map +1 -1
  140. package/dist/lib/modules/tournament/tournament.router.d.ts +370 -125
  141. package/dist/lib/modules/tournament/tournament.router.d.ts.map +1 -1
  142. package/dist/lib/modules/tournament/tournament.router.js +13 -2
  143. package/dist/lib/modules/tournament/tournament.router.js.map +1 -1
  144. package/dist/lib/modules/tournament/tournament.service.d.ts +3 -1
  145. package/dist/lib/modules/tournament/tournament.service.d.ts.map +1 -1
  146. package/dist/lib/modules/tournament/tournament.service.js +17 -2
  147. package/dist/lib/modules/tournament/tournament.service.js.map +1 -1
  148. package/dist/lib/modules/tournament/tournament.types.d.ts +14 -0
  149. package/dist/lib/modules/tournament/tournament.types.d.ts.map +1 -0
  150. package/dist/lib/modules/tournament/tournament.types.js +20 -0
  151. package/dist/lib/modules/tournament/tournament.types.js.map +1 -0
  152. package/dist/lib/modules/tournament/tournament.utils.d.ts +2 -0
  153. package/dist/lib/modules/tournament/tournament.utils.d.ts.map +1 -0
  154. package/dist/lib/modules/tournament/tournament.utils.js +6 -0
  155. package/dist/lib/modules/tournament/tournament.utils.js.map +1 -0
  156. package/dist/lib/modules/tournament/tournament.validation.d.ts +15 -0
  157. package/dist/lib/modules/tournament/tournament.validation.d.ts.map +1 -1
  158. package/dist/lib/modules/tournament/tournament.validation.js +4 -1
  159. package/dist/lib/modules/tournament/tournament.validation.js.map +1 -1
  160. package/dist/types/index.d.ts +265 -21
  161. package/dist/types/index.d.ts.map +1 -1
  162. package/dist/types/modules/tournament/config/config.repository.d.ts +3 -0
  163. package/dist/types/modules/tournament/config/config.repository.d.ts.map +1 -1
  164. package/dist/types/modules/tournament/config/config.router.d.ts +10 -10
  165. package/dist/types/modules/tournament/config/config.validation.d.ts +37 -36
  166. package/dist/types/modules/tournament/config/config.validation.d.ts.map +1 -1
  167. package/dist/types/modules/tournament/match/events/evaluate-predictions.consumer.d.ts.map +1 -1
  168. package/dist/types/modules/tournament/match/match.builder.d.ts.map +1 -1
  169. package/dist/types/modules/tournament/match/match.repository.d.ts +2 -0
  170. package/dist/types/modules/tournament/match/match.repository.d.ts.map +1 -1
  171. package/dist/types/modules/tournament/match/match.router.d.ts +16 -4
  172. package/dist/types/modules/tournament/match/match.router.d.ts.map +1 -1
  173. package/dist/types/modules/tournament/match/match.service.d.ts +0 -1
  174. package/dist/types/modules/tournament/match/match.service.d.ts.map +1 -1
  175. package/dist/types/modules/tournament/match/match.validation.d.ts +50 -0
  176. package/dist/types/modules/tournament/match/match.validation.d.ts.map +1 -1
  177. package/dist/types/modules/tournament/notification/jobs/notification.producer.d.ts +2 -5
  178. package/dist/types/modules/tournament/notification/jobs/notification.producer.d.ts.map +1 -1
  179. package/dist/types/modules/tournament/notification/jobs/notification.worker.d.ts +2 -0
  180. package/dist/types/modules/tournament/notification/jobs/notification.worker.d.ts.map +1 -1
  181. package/dist/types/modules/tournament/notification/notification-template.repository.d.ts +8 -0
  182. package/dist/types/modules/tournament/notification/notification-template.repository.d.ts.map +1 -0
  183. package/dist/types/modules/tournament/notification/notification.config.d.ts +10 -0
  184. package/dist/types/modules/tournament/notification/notification.config.d.ts.map +1 -0
  185. package/dist/types/modules/tournament/notification/notification.schedule.config.d.ts +10 -0
  186. package/dist/types/modules/tournament/notification/notification.schedule.config.d.ts.map +1 -0
  187. package/dist/types/modules/tournament/notification/notification.scheduler.service.d.ts +4 -4
  188. package/dist/types/modules/tournament/notification/notification.scheduler.service.d.ts.map +1 -1
  189. package/dist/types/modules/tournament/notification/notification.service.d.ts +5 -4
  190. package/dist/types/modules/tournament/notification/notification.service.d.ts.map +1 -1
  191. package/dist/types/modules/tournament/participant/participant.repository.d.ts +3 -0
  192. package/dist/types/modules/tournament/participant/participant.repository.d.ts.map +1 -1
  193. package/dist/types/modules/tournament/participant/participant.router.d.ts +27 -4
  194. package/dist/types/modules/tournament/participant/participant.router.d.ts.map +1 -1
  195. package/dist/types/modules/tournament/participant/participant.service.d.ts +2 -2
  196. package/dist/types/modules/tournament/participant/participant.service.d.ts.map +1 -1
  197. package/dist/types/modules/tournament/participant/participant.validation.d.ts +144 -36
  198. package/dist/types/modules/tournament/participant/participant.validation.d.ts.map +1 -1
  199. package/dist/types/modules/tournament/prediction/prediction.builder.d.ts.map +1 -1
  200. package/dist/types/modules/tournament/prediction/prediction.service.d.ts +1 -0
  201. package/dist/types/modules/tournament/prediction/prediction.service.d.ts.map +1 -1
  202. package/dist/types/modules/tournament/reward/reward.builder.d.ts.map +1 -1
  203. package/dist/types/modules/tournament/reward/reward.repository.d.ts +8 -0
  204. package/dist/types/modules/tournament/reward/reward.repository.d.ts.map +1 -0
  205. package/dist/types/modules/tournament/schedule/schedule.router.d.ts +27 -0
  206. package/dist/types/modules/tournament/schedule/schedule.router.d.ts.map +1 -0
  207. package/dist/types/modules/tournament/schedule/schedule.service.d.ts +10 -0
  208. package/dist/types/modules/tournament/schedule/schedule.service.d.ts.map +1 -0
  209. package/dist/types/modules/tournament/score/score.repository.d.ts +8 -1
  210. package/dist/types/modules/tournament/score/score.repository.d.ts.map +1 -1
  211. package/dist/types/modules/tournament/score/score.router.d.ts +98 -0
  212. package/dist/types/modules/tournament/score/score.router.d.ts.map +1 -0
  213. package/dist/types/modules/tournament/score/score.service.d.ts +7 -0
  214. package/dist/types/modules/tournament/score/score.service.d.ts.map +1 -1
  215. package/dist/types/modules/tournament/score/score.validation.d.ts +375 -0
  216. package/dist/types/modules/tournament/score/score.validation.d.ts.map +1 -0
  217. package/dist/types/modules/tournament/statistics/statistics.builder.d.ts +10 -0
  218. package/dist/types/modules/tournament/statistics/statistics.builder.d.ts.map +1 -0
  219. package/dist/types/modules/tournament/statistics/statistics.router.d.ts +80 -0
  220. package/dist/types/modules/tournament/statistics/statistics.router.d.ts.map +1 -0
  221. package/dist/types/modules/tournament/statistics/statistics.service.d.ts +11 -0
  222. package/dist/types/modules/tournament/statistics/statistics.service.d.ts.map +1 -0
  223. package/dist/types/modules/tournament/statistics/statistics.validation.d.ts +404 -0
  224. package/dist/types/modules/tournament/statistics/statistics.validation.d.ts.map +1 -0
  225. package/dist/types/modules/tournament/team/team.router.d.ts +9 -3
  226. package/dist/types/modules/tournament/team/team.router.d.ts.map +1 -1
  227. package/dist/types/modules/tournament/team/team.service.d.ts +1 -0
  228. package/dist/types/modules/tournament/team/team.service.d.ts.map +1 -1
  229. package/dist/types/modules/tournament/team/team.validation.d.ts +54 -4
  230. package/dist/types/modules/tournament/team/team.validation.d.ts.map +1 -1
  231. package/dist/types/modules/tournament/tournament.router.d.ts +370 -125
  232. package/dist/types/modules/tournament/tournament.router.d.ts.map +1 -1
  233. package/dist/types/modules/tournament/tournament.service.d.ts +3 -1
  234. package/dist/types/modules/tournament/tournament.service.d.ts.map +1 -1
  235. package/dist/types/modules/tournament/tournament.types.d.ts +14 -0
  236. package/dist/types/modules/tournament/tournament.types.d.ts.map +1 -0
  237. package/dist/types/modules/tournament/tournament.utils.d.ts +2 -0
  238. package/dist/types/modules/tournament/tournament.utils.d.ts.map +1 -0
  239. package/dist/types/modules/tournament/tournament.validation.d.ts +15 -0
  240. package/dist/types/modules/tournament/tournament.validation.d.ts.map +1 -1
  241. package/package.json +2 -2
@@ -0,0 +1,80 @@
1
+ import { mongoose } from '@typegoose/typegoose';
2
+ export declare const statisticsRouter: import("@trpc/server").TRPCBuiltRouter<{
3
+ ctx: import("@lyxa.ai/core/dist/libraries/trpc/context").LyxaHTTPContext;
4
+ meta: object;
5
+ errorShape: {
6
+ message: string;
7
+ data: {
8
+ stack: undefined;
9
+ path: undefined;
10
+ code: import("@trpc/server").TRPC_ERROR_CODE_KEY;
11
+ httpStatus: number;
12
+ };
13
+ stack: undefined;
14
+ code: import("@trpc/server").TRPC_ERROR_CODE_NUMBER;
15
+ };
16
+ transformer: false;
17
+ }, import("@trpc/server").TRPCDecorateCreateRouterOptions<{
18
+ getActiveByUser: import("@trpc/server").TRPCQueryProcedure<{
19
+ input: {
20
+ userId: string | mongoose.Types.ObjectId;
21
+ };
22
+ output: {
23
+ message: string;
24
+ success: boolean;
25
+ data?: {
26
+ name: string;
27
+ joinedAt: Date | null;
28
+ stats: {
29
+ predictionsMade: number;
30
+ correctPredictions: number;
31
+ couponsWon: number;
32
+ };
33
+ matches: {
34
+ date: string | null;
35
+ coupon: string | null;
36
+ id: string;
37
+ result: "won" | "lost" | "pending" | null;
38
+ teams: string;
39
+ prediction: string | null;
40
+ realScore: string | null;
41
+ }[];
42
+ selectedTeam: {
43
+ name: string;
44
+ flag: string | null;
45
+ };
46
+ } | {
47
+ documents: ({
48
+ name: string;
49
+ joinedAt: Date | null;
50
+ stats: {
51
+ predictionsMade: number;
52
+ correctPredictions: number;
53
+ couponsWon: number;
54
+ };
55
+ matches: {
56
+ date: string | null;
57
+ coupon: string | null;
58
+ id: string;
59
+ result: "won" | "lost" | "pending" | null;
60
+ teams: string;
61
+ prediction: string | null;
62
+ realScore: string | null;
63
+ }[];
64
+ selectedTeam: {
65
+ name: string;
66
+ flag: string | null;
67
+ };
68
+ } | null)[];
69
+ metadata?: {
70
+ page: number;
71
+ size: number;
72
+ totalElements: number;
73
+ totalPages: number;
74
+ } | undefined;
75
+ } | null | undefined;
76
+ };
77
+ meta: object;
78
+ }>;
79
+ }>>;
80
+ //# sourceMappingURL=statistics.router.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"statistics.router.d.ts","sourceRoot":"/","sources":["modules/tournament/statistics/statistics.router.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAShD,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAU3B,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { mongoose } from '@typegoose/typegoose';
2
+ import { UserTournamentStatsOutputDTO } from './statistics.validation';
3
+ export declare class StatisticsService {
4
+ private participantRepository;
5
+ private configRepository;
6
+ private rewardRepository;
7
+ constructor();
8
+ getActiveByUser(userId: mongoose.Types.ObjectId): Promise<UserTournamentStatsOutputDTO | null>;
9
+ }
10
+ export declare const statisticsService: StatisticsService;
11
+ //# sourceMappingURL=statistics.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"statistics.service.d.ts","sourceRoot":"/","sources":["modules/tournament/statistics/statistics.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAKhD,OAAO,EAAE,4BAA4B,EAAE,MAAM,yBAAyB,CAAC;AAEvE,qBACa,iBAAiB;IAC1B,OAAO,CAAC,qBAAqB,CAAkC;IAC/D,OAAO,CAAC,gBAAgB,CAA6B;IACrD,OAAO,CAAC,gBAAgB,CAAmB;;IAQ9B,eAAe,CAAC,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAC,4BAA4B,GAAG,IAAI,CAAC;CAkB9G;AAED,eAAO,MAAM,iBAAiB,mBAAmC,CAAC"}
@@ -0,0 +1,404 @@
1
+ import { z } from 'zod';
2
+ import { DTO } from '@lyxa.ai/core/dist/utilities/validation/global-validation';
3
+ export declare const GetUserTournamentStatsSchema: z.ZodObject<{
4
+ userId: z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, import("mongoose").Types.ObjectId, string>, z.ZodType<import("mongoose").Types.ObjectId, z.ZodTypeDef, import("mongoose").Types.ObjectId>]>;
5
+ }, "strip", z.ZodTypeAny, {
6
+ userId: import("mongoose").Types.ObjectId;
7
+ }, {
8
+ userId: string | import("mongoose").Types.ObjectId;
9
+ }>;
10
+ export declare const UserTournamentMatchViewSchema: z.ZodObject<{
11
+ id: z.ZodString;
12
+ teams: z.ZodString;
13
+ date: z.ZodNullable<z.ZodString>;
14
+ prediction: z.ZodNullable<z.ZodString>;
15
+ realScore: z.ZodNullable<z.ZodString>;
16
+ result: z.ZodNullable<z.ZodEnum<["won", "lost", "pending"]>>;
17
+ coupon: z.ZodNullable<z.ZodString>;
18
+ }, "strip", z.ZodTypeAny, {
19
+ date: string | null;
20
+ coupon: string | null;
21
+ id: string;
22
+ result: "won" | "lost" | "pending" | null;
23
+ teams: string;
24
+ prediction: string | null;
25
+ realScore: string | null;
26
+ }, {
27
+ date: string | null;
28
+ coupon: string | null;
29
+ id: string;
30
+ result: "won" | "lost" | "pending" | null;
31
+ teams: string;
32
+ prediction: string | null;
33
+ realScore: string | null;
34
+ }>;
35
+ export declare const UserTournamentStatsSchema: z.ZodNullable<z.ZodObject<{
36
+ name: z.ZodString;
37
+ joinedAt: z.ZodNullable<z.ZodDate>;
38
+ selectedTeam: z.ZodObject<{
39
+ name: z.ZodString;
40
+ flag: z.ZodNullable<z.ZodString>;
41
+ }, "strip", z.ZodTypeAny, {
42
+ name: string;
43
+ flag: string | null;
44
+ }, {
45
+ name: string;
46
+ flag: string | null;
47
+ }>;
48
+ stats: z.ZodObject<{
49
+ predictionsMade: z.ZodNumber;
50
+ correctPredictions: z.ZodNumber;
51
+ couponsWon: z.ZodNumber;
52
+ }, "strip", z.ZodTypeAny, {
53
+ predictionsMade: number;
54
+ correctPredictions: number;
55
+ couponsWon: number;
56
+ }, {
57
+ predictionsMade: number;
58
+ correctPredictions: number;
59
+ couponsWon: number;
60
+ }>;
61
+ matches: z.ZodArray<z.ZodObject<{
62
+ id: z.ZodString;
63
+ teams: z.ZodString;
64
+ date: z.ZodNullable<z.ZodString>;
65
+ prediction: z.ZodNullable<z.ZodString>;
66
+ realScore: z.ZodNullable<z.ZodString>;
67
+ result: z.ZodNullable<z.ZodEnum<["won", "lost", "pending"]>>;
68
+ coupon: z.ZodNullable<z.ZodString>;
69
+ }, "strip", z.ZodTypeAny, {
70
+ date: string | null;
71
+ coupon: string | null;
72
+ id: string;
73
+ result: "won" | "lost" | "pending" | null;
74
+ teams: string;
75
+ prediction: string | null;
76
+ realScore: string | null;
77
+ }, {
78
+ date: string | null;
79
+ coupon: string | null;
80
+ id: string;
81
+ result: "won" | "lost" | "pending" | null;
82
+ teams: string;
83
+ prediction: string | null;
84
+ realScore: string | null;
85
+ }>, "many">;
86
+ }, "strip", z.ZodTypeAny, {
87
+ name: string;
88
+ joinedAt: Date | null;
89
+ stats: {
90
+ predictionsMade: number;
91
+ correctPredictions: number;
92
+ couponsWon: number;
93
+ };
94
+ matches: {
95
+ date: string | null;
96
+ coupon: string | null;
97
+ id: string;
98
+ result: "won" | "lost" | "pending" | null;
99
+ teams: string;
100
+ prediction: string | null;
101
+ realScore: string | null;
102
+ }[];
103
+ selectedTeam: {
104
+ name: string;
105
+ flag: string | null;
106
+ };
107
+ }, {
108
+ name: string;
109
+ joinedAt: Date | null;
110
+ stats: {
111
+ predictionsMade: number;
112
+ correctPredictions: number;
113
+ couponsWon: number;
114
+ };
115
+ matches: {
116
+ date: string | null;
117
+ coupon: string | null;
118
+ id: string;
119
+ result: "won" | "lost" | "pending" | null;
120
+ teams: string;
121
+ prediction: string | null;
122
+ realScore: string | null;
123
+ }[];
124
+ selectedTeam: {
125
+ name: string;
126
+ flag: string | null;
127
+ };
128
+ }>>;
129
+ export declare const UserTournamentStatsResponseSchema: z.ZodObject<{
130
+ success: z.ZodBoolean;
131
+ message: z.ZodString | z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>;
132
+ data: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
133
+ metadata: z.ZodOptional<z.ZodObject<{
134
+ page: z.ZodNumber;
135
+ size: z.ZodNumber;
136
+ totalElements: z.ZodNumber;
137
+ totalPages: z.ZodNumber;
138
+ }, "strip", z.ZodTypeAny, {
139
+ page: number;
140
+ size: number;
141
+ totalElements: number;
142
+ totalPages: number;
143
+ }, {
144
+ page: number;
145
+ size: number;
146
+ totalElements: number;
147
+ totalPages: number;
148
+ }>>;
149
+ documents: z.ZodArray<z.ZodType<{
150
+ name: string;
151
+ joinedAt: Date | null;
152
+ stats: {
153
+ predictionsMade: number;
154
+ correctPredictions: number;
155
+ couponsWon: number;
156
+ };
157
+ matches: {
158
+ date: string | null;
159
+ coupon: string | null;
160
+ id: string;
161
+ result: "won" | "lost" | "pending" | null;
162
+ teams: string;
163
+ prediction: string | null;
164
+ realScore: string | null;
165
+ }[];
166
+ selectedTeam: {
167
+ name: string;
168
+ flag: string | null;
169
+ };
170
+ } | null, z.ZodTypeDef, {
171
+ name: string;
172
+ joinedAt: Date | null;
173
+ stats: {
174
+ predictionsMade: number;
175
+ correctPredictions: number;
176
+ couponsWon: number;
177
+ };
178
+ matches: {
179
+ date: string | null;
180
+ coupon: string | null;
181
+ id: string;
182
+ result: "won" | "lost" | "pending" | null;
183
+ teams: string;
184
+ prediction: string | null;
185
+ realScore: string | null;
186
+ }[];
187
+ selectedTeam: {
188
+ name: string;
189
+ flag: string | null;
190
+ };
191
+ } | null>, "many">;
192
+ }, "strip", z.ZodTypeAny, {
193
+ documents: ({
194
+ name: string;
195
+ joinedAt: Date | null;
196
+ stats: {
197
+ predictionsMade: number;
198
+ correctPredictions: number;
199
+ couponsWon: number;
200
+ };
201
+ matches: {
202
+ date: string | null;
203
+ coupon: string | null;
204
+ id: string;
205
+ result: "won" | "lost" | "pending" | null;
206
+ teams: string;
207
+ prediction: string | null;
208
+ realScore: string | null;
209
+ }[];
210
+ selectedTeam: {
211
+ name: string;
212
+ flag: string | null;
213
+ };
214
+ } | null)[];
215
+ metadata?: {
216
+ page: number;
217
+ size: number;
218
+ totalElements: number;
219
+ totalPages: number;
220
+ } | undefined;
221
+ }, {
222
+ documents: ({
223
+ name: string;
224
+ joinedAt: Date | null;
225
+ stats: {
226
+ predictionsMade: number;
227
+ correctPredictions: number;
228
+ couponsWon: number;
229
+ };
230
+ matches: {
231
+ date: string | null;
232
+ coupon: string | null;
233
+ id: string;
234
+ result: "won" | "lost" | "pending" | null;
235
+ teams: string;
236
+ prediction: string | null;
237
+ realScore: string | null;
238
+ }[];
239
+ selectedTeam: {
240
+ name: string;
241
+ flag: string | null;
242
+ };
243
+ } | null)[];
244
+ metadata?: {
245
+ page: number;
246
+ size: number;
247
+ totalElements: number;
248
+ totalPages: number;
249
+ } | undefined;
250
+ }>, z.ZodType<{
251
+ name: string;
252
+ joinedAt: Date | null;
253
+ stats: {
254
+ predictionsMade: number;
255
+ correctPredictions: number;
256
+ couponsWon: number;
257
+ };
258
+ matches: {
259
+ date: string | null;
260
+ coupon: string | null;
261
+ id: string;
262
+ result: "won" | "lost" | "pending" | null;
263
+ teams: string;
264
+ prediction: string | null;
265
+ realScore: string | null;
266
+ }[];
267
+ selectedTeam: {
268
+ name: string;
269
+ flag: string | null;
270
+ };
271
+ } | null, z.ZodTypeDef, {
272
+ name: string;
273
+ joinedAt: Date | null;
274
+ stats: {
275
+ predictionsMade: number;
276
+ correctPredictions: number;
277
+ couponsWon: number;
278
+ };
279
+ matches: {
280
+ date: string | null;
281
+ coupon: string | null;
282
+ id: string;
283
+ result: "won" | "lost" | "pending" | null;
284
+ teams: string;
285
+ prediction: string | null;
286
+ realScore: string | null;
287
+ }[];
288
+ selectedTeam: {
289
+ name: string;
290
+ flag: string | null;
291
+ };
292
+ } | null>]>>;
293
+ }, "strip", z.ZodTypeAny, {
294
+ message: string;
295
+ success: boolean;
296
+ data?: {
297
+ name: string;
298
+ joinedAt: Date | null;
299
+ stats: {
300
+ predictionsMade: number;
301
+ correctPredictions: number;
302
+ couponsWon: number;
303
+ };
304
+ matches: {
305
+ date: string | null;
306
+ coupon: string | null;
307
+ id: string;
308
+ result: "won" | "lost" | "pending" | null;
309
+ teams: string;
310
+ prediction: string | null;
311
+ realScore: string | null;
312
+ }[];
313
+ selectedTeam: {
314
+ name: string;
315
+ flag: string | null;
316
+ };
317
+ } | {
318
+ documents: ({
319
+ name: string;
320
+ joinedAt: Date | null;
321
+ stats: {
322
+ predictionsMade: number;
323
+ correctPredictions: number;
324
+ couponsWon: number;
325
+ };
326
+ matches: {
327
+ date: string | null;
328
+ coupon: string | null;
329
+ id: string;
330
+ result: "won" | "lost" | "pending" | null;
331
+ teams: string;
332
+ prediction: string | null;
333
+ realScore: string | null;
334
+ }[];
335
+ selectedTeam: {
336
+ name: string;
337
+ flag: string | null;
338
+ };
339
+ } | null)[];
340
+ metadata?: {
341
+ page: number;
342
+ size: number;
343
+ totalElements: number;
344
+ totalPages: number;
345
+ } | undefined;
346
+ } | null | undefined;
347
+ }, {
348
+ message: string;
349
+ success: boolean;
350
+ data?: {
351
+ name: string;
352
+ joinedAt: Date | null;
353
+ stats: {
354
+ predictionsMade: number;
355
+ correctPredictions: number;
356
+ couponsWon: number;
357
+ };
358
+ matches: {
359
+ date: string | null;
360
+ coupon: string | null;
361
+ id: string;
362
+ result: "won" | "lost" | "pending" | null;
363
+ teams: string;
364
+ prediction: string | null;
365
+ realScore: string | null;
366
+ }[];
367
+ selectedTeam: {
368
+ name: string;
369
+ flag: string | null;
370
+ };
371
+ } | {
372
+ documents: ({
373
+ name: string;
374
+ joinedAt: Date | null;
375
+ stats: {
376
+ predictionsMade: number;
377
+ correctPredictions: number;
378
+ couponsWon: number;
379
+ };
380
+ matches: {
381
+ date: string | null;
382
+ coupon: string | null;
383
+ id: string;
384
+ result: "won" | "lost" | "pending" | null;
385
+ teams: string;
386
+ prediction: string | null;
387
+ realScore: string | null;
388
+ }[];
389
+ selectedTeam: {
390
+ name: string;
391
+ flag: string | null;
392
+ };
393
+ } | null)[];
394
+ metadata?: {
395
+ page: number;
396
+ size: number;
397
+ totalElements: number;
398
+ totalPages: number;
399
+ } | undefined;
400
+ } | null | undefined;
401
+ }>;
402
+ export type GetUserTournamentStatsInputDTO = DTO<typeof GetUserTournamentStatsSchema>;
403
+ export type UserTournamentStatsOutputDTO = DTO<typeof UserTournamentStatsSchema>;
404
+ //# sourceMappingURL=statistics.validation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"statistics.validation.d.ts","sourceRoot":"/","sources":["modules/tournament/statistics/statistics.validation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,GAAG,EAAiB,MAAM,2DAA2D,CAAC;AAG/F,eAAO,MAAM,4BAA4B;;;;;;EAEvC,CAAC;AAEH,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;EAQxC,CAAC;AAEH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAe1B,CAAC;AAEb,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAAkD,CAAC;AAEjG,MAAM,MAAM,8BAA8B,GAAG,GAAG,CAAC,OAAO,4BAA4B,CAAC,CAAC;AACtF,MAAM,MAAM,4BAA4B,GAAG,GAAG,CAAC,OAAO,yBAAyB,CAAC,CAAC"}
@@ -29,12 +29,12 @@ export declare const teamRouter: import("@trpc/server").TRPCBuiltRouter<{
29
29
  data?: {
30
30
  status: import("@lyxa.ai/core/dist/utilities/enum").Status;
31
31
  name: string;
32
- tag: string;
33
32
  _id?: string | mongoose.Types.ObjectId | undefined;
34
33
  createdAt?: Date | null | undefined;
35
34
  startDate?: Date | null | undefined;
36
35
  endDate?: Date | null | undefined;
37
36
  updatedAt?: Date | null | undefined;
37
+ tag?: import("../tournament.types").TournamentTag | undefined;
38
38
  reward?: {
39
39
  type: import("@lyxa.ai/core/dist/utilities/enum").TournamentRewardType.FREE_DELIVERY;
40
40
  } | {
@@ -47,12 +47,12 @@ export declare const teamRouter: import("@trpc/server").TRPCBuiltRouter<{
47
47
  documents: {
48
48
  status: import("@lyxa.ai/core/dist/utilities/enum").Status;
49
49
  name: string;
50
- tag: string;
51
50
  _id?: string | mongoose.Types.ObjectId | undefined;
52
51
  createdAt?: Date | null | undefined;
53
52
  startDate?: Date | null | undefined;
54
53
  endDate?: Date | null | undefined;
55
54
  updatedAt?: Date | null | undefined;
55
+ tag?: import("../tournament.types").TournamentTag | undefined;
56
56
  reward?: {
57
57
  type: import("@lyxa.ai/core/dist/utilities/enum").TournamentRewardType.FREE_DELIVERY;
58
58
  } | {
@@ -115,8 +115,8 @@ export declare const teamRouter: import("@trpc/server").TRPCBuiltRouter<{
115
115
  }>;
116
116
  getMatches: import("@trpc/server").TRPCQueryProcedure<{
117
117
  input: {
118
- filter: "completed" | "upcoming";
119
118
  tournamentId: string | mongoose.Types.ObjectId;
119
+ filter?: import("../tournament.types").MatchStatus | undefined;
120
120
  };
121
121
  output: {
122
122
  message: string;
@@ -130,16 +130,19 @@ export declare const teamRouter: import("@trpc/server").TRPCBuiltRouter<{
130
130
  team1: {
131
131
  name: string;
132
132
  teamId: string | mongoose.Types.ObjectId;
133
+ picture?: string | undefined;
133
134
  };
134
135
  team2: {
135
136
  name: string;
136
137
  teamId: string | mongoose.Types.ObjectId;
138
+ picture?: string | undefined;
137
139
  };
138
140
  score: {
139
141
  team1: number | null;
140
142
  team2: number | null;
141
143
  };
142
144
  stage: string;
145
+ matchStatus: import("../tournament.types").MatchStatus;
143
146
  prediction: {
144
147
  score: {
145
148
  team1: number | null;
@@ -165,16 +168,19 @@ export declare const teamRouter: import("@trpc/server").TRPCBuiltRouter<{
165
168
  team1: {
166
169
  name: string;
167
170
  teamId: string | mongoose.Types.ObjectId;
171
+ picture?: string | undefined;
168
172
  };
169
173
  team2: {
170
174
  name: string;
171
175
  teamId: string | mongoose.Types.ObjectId;
176
+ picture?: string | undefined;
172
177
  };
173
178
  score: {
174
179
  team1: number | null;
175
180
  team2: number | null;
176
181
  };
177
182
  stage: string;
183
+ matchStatus: import("../tournament.types").MatchStatus;
178
184
  prediction: {
179
185
  score: {
180
186
  team1: number | null;
@@ -1 +1 @@
1
- {"version":3,"file":"team.router.d.ts","sourceRoot":"/","sources":["modules/tournament/team/team.router.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAgBhD,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BrB,CAAC"}
1
+ {"version":3,"file":"team.router.d.ts","sourceRoot":"/","sources":["modules/tournament/team/team.router.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAgBhD,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BrB,CAAC"}
@@ -6,6 +6,7 @@ export declare class TeamService {
6
6
  private participantService;
7
7
  constructor();
8
8
  private filterMatchesByTeam;
9
+ private getMatchStatus;
9
10
  private applyStatusFilter;
10
11
  add(input: AddTournamentTeamsInputDTO): Promise<TournamentConfigOutputDTO>;
11
12
  getAll(tournamentId: mongoose.Types.ObjectId): Promise<TournamentWithTeamsOutputDTO>;
@@ -1 +1 @@
1
- {"version":3,"file":"team.service.d.ts","sourceRoot":"/","sources":["modules/tournament/team/team.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD,OAAO,EACH,0BAA0B,EAC1B,sBAAsB,EAEtB,8BAA8B,EAC9B,4BAA4B,EAC/B,MAAM,mBAAmB,CAAC;AAI3B,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AAGxE,qBACa,WAAW;IACpB,OAAO,CAAC,UAAU,CAA2B;IAC7C,OAAO,CAAC,kBAAkB,CAAqB;;IAO/C,OAAO,CAAC,mBAAmB;IAM3B,OAAO,CAAC,iBAAiB;IAoBZ,GAAG,CAAC,KAAK,EAAE,0BAA0B,GAAG,OAAO,CAAC,yBAAyB,CAAC;IAU1E,MAAM,CAAC,YAAY,EAAE,QAAQ,CAAC,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAC,4BAA4B,CAAC;IAcpF,UAAU,CAAC,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,EAAE,sBAAsB,GAAG,OAAO,CAAC,8BAA8B,CAAC;CAiCnI;AAED,eAAO,MAAM,WAAW,aAA6B,CAAC"}
1
+ {"version":3,"file":"team.service.d.ts","sourceRoot":"/","sources":["modules/tournament/team/team.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD,OAAO,EACH,0BAA0B,EAC1B,sBAAsB,EAEtB,8BAA8B,EAC9B,4BAA4B,EAC/B,MAAM,mBAAmB,CAAC;AAI3B,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AAKxE,qBACa,WAAW;IACpB,OAAO,CAAC,UAAU,CAA2B;IAC7C,OAAO,CAAC,kBAAkB,CAAqB;;IAO/C,OAAO,CAAC,mBAAmB;IAM3B,OAAO,CAAC,cAAc;IAMtB,OAAO,CAAC,iBAAiB;IAYZ,GAAG,CAAC,KAAK,EAAE,0BAA0B,GAAG,OAAO,CAAC,yBAAyB,CAAC;IAU1E,MAAM,CAAC,YAAY,EAAE,QAAQ,CAAC,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAC,4BAA4B,CAAC;IAcpF,UAAU,CAAC,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,EAAE,sBAAsB,GAAG,OAAO,CAAC,8BAA8B,CAAC;CAyCnI;AAED,eAAO,MAAM,WAAW,aAA6B,CAAC"}