jp.db.schemas 2.0.27 → 2.1.0

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 (86) hide show
  1. package/dist/index.d.ts +6 -4
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +5 -1
  4. package/dist/index.js.map +1 -1
  5. package/dist/models/activity-log.enum.d.ts +5 -0
  6. package/dist/models/activity-log.enum.d.ts.map +1 -0
  7. package/dist/models/activity-log.enum.js +9 -0
  8. package/dist/models/activity-log.enum.js.map +1 -0
  9. package/dist/repositories/activity-log.repository.d.ts +11 -0
  10. package/dist/repositories/activity-log.repository.d.ts.map +1 -0
  11. package/dist/repositories/activity-log.repository.js +93 -0
  12. package/dist/repositories/activity-log.repository.js.map +1 -0
  13. package/dist/repositories/index.d.ts +2 -1
  14. package/dist/repositories/index.d.ts.map +1 -1
  15. package/dist/repositories/index.js +3 -1
  16. package/dist/repositories/index.js.map +1 -1
  17. package/dist/schemas/activity_log.schema.d.ts +105 -0
  18. package/dist/schemas/activity_log.schema.d.ts.map +1 -0
  19. package/dist/schemas/activity_log.schema.js +57 -0
  20. package/dist/schemas/activity_log.schema.js.map +1 -0
  21. package/package.json +31 -30
  22. package/readme.md +3 -3
  23. package/src/index.ts +226 -219
  24. package/src/models/activity-log.enum.ts +4 -0
  25. package/src/models/tournament-participant.interface.ts +5 -5
  26. package/src/models/tournament-status.enum.ts +6 -6
  27. package/src/models/tournament-template.enum.ts +3 -3
  28. package/src/models/tournament-winner.interface.ts +7 -7
  29. package/src/repositories/activity-log.repository.ts +93 -0
  30. package/src/repositories/admin.repository.ts +23 -23
  31. package/src/repositories/article.repository.ts +33 -33
  32. package/src/repositories/balance-history.repository.ts +15 -15
  33. package/src/repositories/banners.repository.ts +54 -54
  34. package/src/repositories/complains.repository.ts +30 -30
  35. package/src/repositories/daily-bonus.repository.ts +19 -19
  36. package/src/repositories/game-result.repository.ts +15 -15
  37. package/src/repositories/index.ts +47 -45
  38. package/src/repositories/menu.repository.ts +21 -21
  39. package/src/repositories/notification.repository.ts +54 -54
  40. package/src/repositories/premium.repository.ts +19 -19
  41. package/src/repositories/products.repository.ts +29 -29
  42. package/src/repositories/rooms.repository.ts +17 -17
  43. package/src/repositories/rule.repository.ts +19 -19
  44. package/src/repositories/scheduled-tournaments.repository.ts +30 -30
  45. package/src/repositories/servers.repository.ts +18 -18
  46. package/src/repositories/setting.repository.ts +19 -19
  47. package/src/repositories/simple-rooms.repository.ts +17 -17
  48. package/src/repositories/tournament-many-tables-rooms.repository.ts +132 -132
  49. package/src/repositories/tournament-one-table-rooms.repository.ts +106 -106
  50. package/src/repositories/users.repository.ts +124 -124
  51. package/src/repositories/welcome.repository.ts +19 -19
  52. package/src/schemas/achievement.schema.ts +40 -40
  53. package/src/schemas/activity_log.schema.ts +37 -0
  54. package/src/schemas/admin.schema.ts +22 -22
  55. package/src/schemas/article.schema.ts +37 -37
  56. package/src/schemas/balance_history.schema.ts +37 -37
  57. package/src/schemas/banner.schema.ts +40 -40
  58. package/src/schemas/channel_message.schema.ts +31 -31
  59. package/src/schemas/complain.schema.ts +46 -46
  60. package/src/schemas/daily_bonus.schema.ts +56 -56
  61. package/src/schemas/feature.schema.ts +28 -28
  62. package/src/schemas/game_result.schema.ts +68 -68
  63. package/src/schemas/menu.schema.ts +40 -40
  64. package/src/schemas/notification.schema.ts +61 -61
  65. package/src/schemas/premium.schema.ts +45 -45
  66. package/src/schemas/product.schema.ts +123 -123
  67. package/src/schemas/purchase.schema.ts +64 -64
  68. package/src/schemas/purchase_channel.schema.ts +31 -31
  69. package/src/schemas/rating.schema.ts +46 -46
  70. package/src/schemas/rooms.schema.ts +63 -63
  71. package/src/schemas/rule.schema.ts +45 -45
  72. package/src/schemas/scheduled_tournament.schema.ts +93 -93
  73. package/src/schemas/server.schema.ts +22 -22
  74. package/src/schemas/setting.schema.ts +55 -55
  75. package/src/schemas/simple_rooms.schema.ts +46 -46
  76. package/src/schemas/tournament_many_tables_rooms.schema.ts +84 -84
  77. package/src/schemas/tournament_one_table_rooms.schema.ts +81 -81
  78. package/src/schemas/user.fb.schema.ts +33 -33
  79. package/src/schemas/user.google.schema.ts +24 -24
  80. package/src/schemas/user.ok.schema.ts +52 -52
  81. package/src/schemas/user.schema.ts +184 -184
  82. package/src/schemas/user.tg.schema.ts +30 -30
  83. package/src/schemas/user.vk.schema.ts +70 -70
  84. package/src/schemas/user.ya.schema.ts +24 -24
  85. package/src/schemas/welcome.schema.ts +45 -45
  86. package/src/utils.ts +3 -3
@@ -1,24 +1,24 @@
1
- import { Prop, Schema, SchemaFactory } from '@nestjs/mongoose';
2
- import { HydratedDocument } from 'mongoose';
3
-
4
- export type GoogleUserDocument = HydratedDocument<GoogleUser>;
5
-
6
- @Schema()
7
- export class GoogleUser {
8
- @Prop()
9
- userId: string;
10
-
11
- @Prop()
12
- fullName: string;
13
-
14
- @Prop()
15
- language: string;
16
-
17
- @Prop()
18
- avatarUrl: string;
19
-
20
- @Prop()
21
- email: string;
22
- }
23
-
24
- export const GoogleUserSchema = SchemaFactory.createForClass(GoogleUser);
1
+ import { Prop, Schema, SchemaFactory } from '@nestjs/mongoose';
2
+ import { HydratedDocument } from 'mongoose';
3
+
4
+ export type GoogleUserDocument = HydratedDocument<GoogleUser>;
5
+
6
+ @Schema()
7
+ export class GoogleUser {
8
+ @Prop()
9
+ userId: string;
10
+
11
+ @Prop()
12
+ fullName: string;
13
+
14
+ @Prop()
15
+ language: string;
16
+
17
+ @Prop()
18
+ avatarUrl: string;
19
+
20
+ @Prop()
21
+ email: string;
22
+ }
23
+
24
+ export const GoogleUserSchema = SchemaFactory.createForClass(GoogleUser);
@@ -1,52 +1,52 @@
1
- import { Prop, Schema, SchemaFactory } from '@nestjs/mongoose';
2
- import { HydratedDocument } from 'mongoose';
3
-
4
- export type OKUserLocationDocument = HydratedDocument<OKUserLocation>;
5
-
6
- @Schema()
7
- export class OKUserLocation {
8
- @Prop()
9
- city: String;
10
-
11
- @Prop()
12
- country: String;
13
-
14
- @Prop()
15
- countryCode: String;
16
-
17
- @Prop()
18
- countryName: String;
19
- }
20
-
21
- export const OKUserLocationSchema = SchemaFactory.createForClass(OKUserLocation);
22
-
23
- export type OKUserDocument = HydratedDocument<OKUser>;
24
-
25
- @Schema()
26
- export class OKUser {
27
- @Prop()
28
- uid: string;
29
-
30
- @Prop()
31
- birthday: string;
32
-
33
- @Prop()
34
- birthdaySet: boolean;
35
-
36
- @Prop()
37
- age: number;
38
-
39
- @Prop()
40
- first_name: string;
41
-
42
- @Prop()
43
- last_name: string;
44
-
45
- @Prop()
46
- location: OKUserLocation;
47
-
48
- @Prop()
49
- pic128x128: string;
50
- }
51
-
52
- export const OKUserSchema = SchemaFactory.createForClass(OKUser);
1
+ import { Prop, Schema, SchemaFactory } from '@nestjs/mongoose';
2
+ import { HydratedDocument } from 'mongoose';
3
+
4
+ export type OKUserLocationDocument = HydratedDocument<OKUserLocation>;
5
+
6
+ @Schema()
7
+ export class OKUserLocation {
8
+ @Prop()
9
+ city: String;
10
+
11
+ @Prop()
12
+ country: String;
13
+
14
+ @Prop()
15
+ countryCode: String;
16
+
17
+ @Prop()
18
+ countryName: String;
19
+ }
20
+
21
+ export const OKUserLocationSchema = SchemaFactory.createForClass(OKUserLocation);
22
+
23
+ export type OKUserDocument = HydratedDocument<OKUser>;
24
+
25
+ @Schema()
26
+ export class OKUser {
27
+ @Prop()
28
+ uid: string;
29
+
30
+ @Prop()
31
+ birthday: string;
32
+
33
+ @Prop()
34
+ birthdaySet: boolean;
35
+
36
+ @Prop()
37
+ age: number;
38
+
39
+ @Prop()
40
+ first_name: string;
41
+
42
+ @Prop()
43
+ last_name: string;
44
+
45
+ @Prop()
46
+ location: OKUserLocation;
47
+
48
+ @Prop()
49
+ pic128x128: string;
50
+ }
51
+
52
+ export const OKUserSchema = SchemaFactory.createForClass(OKUser);
@@ -1,184 +1,184 @@
1
- import { Prop, Schema, SchemaFactory, Virtual } from '@nestjs/mongoose';
2
- import { Document, HydratedDocument } from 'mongoose';
3
-
4
- import { VKUser } from './user.vk.schema';
5
- import { Purchase } from './purchase.schema';
6
- import { OKUser } from './user.ok.schema';
7
- import { YAUser } from './user.ya.schema';
8
- import { TGUser } from './user.tg.schema';
9
- import { GoogleUser } from './user.google.schema';
10
- import { FBUser } from './user.fb.schema';
11
-
12
- export type UserDocument = HydratedDocument<User>;
13
-
14
- export type IUserWinnerRating = {
15
- month: string;
16
- rank: number;
17
- profit: number;
18
- }
19
-
20
- export type IUserFriend = {
21
- userIdWhoAdded: string
22
- addedUserId: string;
23
- friendId: string;
24
- confirmed: boolean;
25
- channelId: string;
26
- lastVisitChannel?: Date;
27
- };
28
-
29
- export type ILastLogin = {
30
- lastLoginClientVersion: string;
31
- lastLoginClientChannel: string;
32
- lastLoginClientDevice: string;
33
- lastLoginClientOS: string;
34
- lastLoginClientBrowser: string;
35
- lastLoginClientDeviceWidth: number;
36
- lastLoginClientDeviceHeight: number;
37
- lastLoginClientIsMobile: boolean;
38
- }
39
-
40
- export type IGameStatistics = {
41
- gamesPlayed: number;
42
- gamesWon: number;
43
- gamesTheBestSet: number;
44
- gamesMaxProfit: number;
45
- earnProfitCount: number;
46
- winSharksCount: number;
47
- fastTournamentsWonCount: number;
48
- allInWinCount: number;
49
- watchedAdvRewardCount: number;
50
- textedMessagesCount: number;
51
- sentReactionsCount: number;
52
- setTwoPairCount: number;
53
- setThreeOfAKind: number;
54
- setStraightCount: number;
55
- setFlushCount: number;
56
- setFullHouseCount: number;
57
- setFourOfAKindCount: number;
58
- setStraightFlushCount: number;
59
- }
60
-
61
- @Schema()
62
- export class User {
63
- @Virtual({
64
- get: function (this: Document) {
65
- return this._id.toString();
66
- },
67
- })
68
- readonly userId: string;
69
-
70
- @Prop({ required: true })
71
- fullName: string;
72
-
73
- @Prop({ required: true })
74
- balance: number;
75
-
76
- @Prop({ required: true })
77
- avatarUrl: string;
78
-
79
- @Prop({ required: true })
80
- premiumExpired: Date;
81
-
82
- // settings
83
-
84
- @Prop({ default: '' })
85
- fullNameAlias: string;
86
-
87
- @Prop({ default: '' })
88
- avatarAliasUrl: string;
89
-
90
- @Prop({ default: 'theme__light' })
91
- theme: string;
92
-
93
- @Prop({ default: 'language__ru' })
94
- language: string;
95
-
96
- @Prop({ default: 'avatar_frame__default' })
97
- avatarFrame: string;
98
-
99
- @Prop({ default: 'card_skin__default' })
100
- cardSkin: string;
101
-
102
- @Prop({ default: 'game_sounds__on' })
103
- gameSounds: string;
104
-
105
- @Prop({ default: 'bg_pattern__default' })
106
- bgPattern: string;
107
-
108
- @Prop({ default: 'room_table__on' })
109
- roomTable: string;
110
-
111
- @Prop({ default: 'color_schema__default' })
112
- colorSchema: string;
113
-
114
- // users
115
-
116
- @Prop({ type: VKUser })
117
- vkUser?: VKUser;
118
-
119
- @Prop({ type: OKUser })
120
- okUser?: OKUser;
121
-
122
- @Prop({ type: YAUser })
123
- yaUser?: YAUser;
124
-
125
- @Prop({ type: GoogleUser })
126
- googleUser?: GoogleUser;
127
-
128
- @Prop({ type: FBUser })
129
- fbUser?: FBUser;
130
-
131
- @Prop({ type: TGUser })
132
- tgUser?: TGUser;
133
-
134
- // other
135
-
136
- @Prop({ default: 0 })
137
- experience: number;
138
-
139
- @Prop({ default: 1 })
140
- level: number;
141
-
142
- @Prop({ default: 1 })
143
- everydayEnterCount: number;
144
-
145
- @Prop({ default: new Date() })
146
- lastEnter: Date;
147
-
148
- @Prop({ default: false })
149
- isBannedInChat: boolean;
150
-
151
- @Prop({ default: new Date() })
152
- registerDate: Date;
153
-
154
- @Prop({ default: 0 })
155
- watchedPremiumExpiredScreenCounter: number;
156
-
157
- @Prop()
158
- lastRewardAdvView?: Date;
159
-
160
- // objects
161
-
162
- // @Prop({ default: {} })
163
- // lastLogin: ILastLogin;
164
- //
165
- // @Prop({ default: {} })
166
- // gameStatistics: IGameStatistics;
167
-
168
- @Prop({ type: Array<Purchase>, default: [] })
169
- purchases: Array<Purchase>;
170
-
171
- @Prop({ default: [] })
172
- friends: Array<IUserFriend>;
173
-
174
- @Prop({ default: [] })
175
- winnerRatings: Array<IUserWinnerRating>;
176
-
177
- @Prop({ default: [] })
178
- achievements: Array<string>;
179
-
180
- @Prop({ default: [] })
181
- bannedUsers: Array<string>;
182
- }
183
-
184
- export const UserSchema = SchemaFactory.createForClass(User);
1
+ import { Prop, Schema, SchemaFactory, Virtual } from '@nestjs/mongoose';
2
+ import { Document, HydratedDocument } from 'mongoose';
3
+
4
+ import { VKUser } from './user.vk.schema';
5
+ import { Purchase } from './purchase.schema';
6
+ import { OKUser } from './user.ok.schema';
7
+ import { YAUser } from './user.ya.schema';
8
+ import { TGUser } from './user.tg.schema';
9
+ import { GoogleUser } from './user.google.schema';
10
+ import { FBUser } from './user.fb.schema';
11
+
12
+ export type UserDocument = HydratedDocument<User>;
13
+
14
+ export type IUserWinnerRating = {
15
+ month: string;
16
+ rank: number;
17
+ profit: number;
18
+ }
19
+
20
+ export type IUserFriend = {
21
+ userIdWhoAdded: string
22
+ addedUserId: string;
23
+ friendId: string;
24
+ confirmed: boolean;
25
+ channelId: string;
26
+ lastVisitChannel?: Date;
27
+ };
28
+
29
+ export type ILastLogin = {
30
+ lastLoginClientVersion: string;
31
+ lastLoginClientChannel: string;
32
+ lastLoginClientDevice: string;
33
+ lastLoginClientOS: string;
34
+ lastLoginClientBrowser: string;
35
+ lastLoginClientDeviceWidth: number;
36
+ lastLoginClientDeviceHeight: number;
37
+ lastLoginClientIsMobile: boolean;
38
+ }
39
+
40
+ export type IGameStatistics = {
41
+ gamesPlayed: number;
42
+ gamesWon: number;
43
+ gamesTheBestSet: number;
44
+ gamesMaxProfit: number;
45
+ earnProfitCount: number;
46
+ winSharksCount: number;
47
+ fastTournamentsWonCount: number;
48
+ allInWinCount: number;
49
+ watchedAdvRewardCount: number;
50
+ textedMessagesCount: number;
51
+ sentReactionsCount: number;
52
+ setTwoPairCount: number;
53
+ setThreeOfAKind: number;
54
+ setStraightCount: number;
55
+ setFlushCount: number;
56
+ setFullHouseCount: number;
57
+ setFourOfAKindCount: number;
58
+ setStraightFlushCount: number;
59
+ }
60
+
61
+ @Schema()
62
+ export class User {
63
+ @Virtual({
64
+ get: function (this: Document) {
65
+ return this._id.toString();
66
+ },
67
+ })
68
+ readonly userId: string;
69
+
70
+ @Prop({ required: true })
71
+ fullName: string;
72
+
73
+ @Prop({ required: true })
74
+ balance: number;
75
+
76
+ @Prop({ required: true })
77
+ avatarUrl: string;
78
+
79
+ @Prop({ required: true })
80
+ premiumExpired: Date;
81
+
82
+ // settings
83
+
84
+ @Prop({ default: '' })
85
+ fullNameAlias: string;
86
+
87
+ @Prop({ default: '' })
88
+ avatarAliasUrl: string;
89
+
90
+ @Prop({ default: 'theme__light' })
91
+ theme: string;
92
+
93
+ @Prop({ default: 'language__ru' })
94
+ language: string;
95
+
96
+ @Prop({ default: 'avatar_frame__default' })
97
+ avatarFrame: string;
98
+
99
+ @Prop({ default: 'card_skin__default' })
100
+ cardSkin: string;
101
+
102
+ @Prop({ default: 'game_sounds__on' })
103
+ gameSounds: string;
104
+
105
+ @Prop({ default: 'bg_pattern__default' })
106
+ bgPattern: string;
107
+
108
+ @Prop({ default: 'room_table__on' })
109
+ roomTable: string;
110
+
111
+ @Prop({ default: 'color_schema__default' })
112
+ colorSchema: string;
113
+
114
+ // users
115
+
116
+ @Prop({ type: VKUser })
117
+ vkUser?: VKUser;
118
+
119
+ @Prop({ type: OKUser })
120
+ okUser?: OKUser;
121
+
122
+ @Prop({ type: YAUser })
123
+ yaUser?: YAUser;
124
+
125
+ @Prop({ type: GoogleUser })
126
+ googleUser?: GoogleUser;
127
+
128
+ @Prop({ type: FBUser })
129
+ fbUser?: FBUser;
130
+
131
+ @Prop({ type: TGUser })
132
+ tgUser?: TGUser;
133
+
134
+ // other
135
+
136
+ @Prop({ default: 0 })
137
+ experience: number;
138
+
139
+ @Prop({ default: 1 })
140
+ level: number;
141
+
142
+ @Prop({ default: 1 })
143
+ everydayEnterCount: number;
144
+
145
+ @Prop({ default: new Date() })
146
+ lastEnter: Date;
147
+
148
+ @Prop({ default: false })
149
+ isBannedInChat: boolean;
150
+
151
+ @Prop({ default: new Date() })
152
+ registerDate: Date;
153
+
154
+ @Prop({ default: 0 })
155
+ watchedPremiumExpiredScreenCounter: number;
156
+
157
+ @Prop()
158
+ lastRewardAdvView?: Date;
159
+
160
+ // objects
161
+
162
+ // @Prop({ default: {} })
163
+ // lastLogin: ILastLogin;
164
+ //
165
+ // @Prop({ default: {} })
166
+ // gameStatistics: IGameStatistics;
167
+
168
+ @Prop({ type: Array<Purchase>, default: [] })
169
+ purchases: Array<Purchase>;
170
+
171
+ @Prop({ default: [] })
172
+ friends: Array<IUserFriend>;
173
+
174
+ @Prop({ default: [] })
175
+ winnerRatings: Array<IUserWinnerRating>;
176
+
177
+ @Prop({ default: [] })
178
+ achievements: Array<string>;
179
+
180
+ @Prop({ default: [] })
181
+ bannedUsers: Array<string>;
182
+ }
183
+
184
+ export const UserSchema = SchemaFactory.createForClass(User);
@@ -1,30 +1,30 @@
1
- import { Prop, Schema, SchemaFactory } from '@nestjs/mongoose';
2
- import { HydratedDocument } from 'mongoose';
3
-
4
- export type TGUserDocument = HydratedDocument<TGUser>;
5
-
6
- @Schema()
7
- export class TGUser {
8
- @Prop()
9
- id: number;
10
-
11
- @Prop()
12
- firstName: string;
13
-
14
- @Prop()
15
- lastName?: string;
16
-
17
- @Prop()
18
- username?: string;
19
-
20
- @Prop()
21
- languageCode?: string;
22
-
23
- @Prop()
24
- photoUrl?: string;
25
-
26
- @Prop()
27
- allowsWriteToPm?: boolean;
28
- }
29
-
30
- export const TGUserSchema = SchemaFactory.createForClass(TGUser);
1
+ import { Prop, Schema, SchemaFactory } from '@nestjs/mongoose';
2
+ import { HydratedDocument } from 'mongoose';
3
+
4
+ export type TGUserDocument = HydratedDocument<TGUser>;
5
+
6
+ @Schema()
7
+ export class TGUser {
8
+ @Prop()
9
+ id: number;
10
+
11
+ @Prop()
12
+ firstName: string;
13
+
14
+ @Prop()
15
+ lastName?: string;
16
+
17
+ @Prop()
18
+ username?: string;
19
+
20
+ @Prop()
21
+ languageCode?: string;
22
+
23
+ @Prop()
24
+ photoUrl?: string;
25
+
26
+ @Prop()
27
+ allowsWriteToPm?: boolean;
28
+ }
29
+
30
+ export const TGUserSchema = SchemaFactory.createForClass(TGUser);