jp.db.schemas 2.1.13 → 2.1.14

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 (96) hide show
  1. package/dist/models/activity-log-user-login.interface copy.d.ts +11 -0
  2. package/dist/models/activity-log-user-login.interface copy.d.ts.map +1 -0
  3. package/dist/models/activity-log-user-login.interface copy.js +3 -0
  4. package/dist/models/activity-log-user-login.interface copy.js.map +1 -0
  5. package/dist/repositories/premium.repository.d.ts +1 -1
  6. package/dist/repositories/premium.repository.d.ts.map +1 -1
  7. package/dist/repositories/premium.repository.js +2 -5
  8. package/dist/repositories/premium.repository.js.map +1 -1
  9. package/dist/repositories/purchase.repository.d.ts +1 -1
  10. package/dist/repositories/purchase.repository.js +1 -1
  11. package/dist/repositories/rule.repository.d.ts +1 -1
  12. package/dist/repositories/rule.repository.d.ts.map +1 -1
  13. package/dist/repositories/rule.repository.js +2 -5
  14. package/dist/repositories/rule.repository.js.map +1 -1
  15. package/dist/repositories/welcome.repository.d.ts +1 -1
  16. package/dist/repositories/welcome.repository.d.ts.map +1 -1
  17. package/dist/repositories/welcome.repository.js +2 -5
  18. package/dist/repositories/welcome.repository.js.map +1 -1
  19. package/package.json +31 -31
  20. package/readme.md +3 -3
  21. package/src/index.ts +251 -251
  22. package/src/models/activity-log-user-login.interface copy.ts +10 -0
  23. package/src/models/activity-log-user-login.interface.ts +9 -9
  24. package/src/models/activity-log.enum.ts +7 -7
  25. package/src/models/currency.enum.ts +4 -4
  26. package/src/models/rating-add-bulk-item.interface.ts +6 -6
  27. package/src/models/rating-monthly-result.interface.ts +10 -10
  28. package/src/models/tournament-participant.interface.ts +5 -5
  29. package/src/models/tournament-status.enum.ts +6 -6
  30. package/src/models/tournament-template.enum.ts +3 -3
  31. package/src/models/tournament-winner.interface.ts +7 -7
  32. package/src/repositories/achievement.repository.ts +18 -18
  33. package/src/repositories/activity-log.repository.ts +110 -110
  34. package/src/repositories/admin.repository.ts +23 -23
  35. package/src/repositories/article.repository.ts +33 -33
  36. package/src/repositories/balance-history.repository.ts +15 -15
  37. package/src/repositories/banners.repository.ts +54 -54
  38. package/src/repositories/complains.repository.ts +30 -30
  39. package/src/repositories/daily-bonus.repository.ts +25 -25
  40. package/src/repositories/friend.repository.ts +19 -19
  41. package/src/repositories/game-result.repository.ts +15 -15
  42. package/src/repositories/game-statistic.repository.ts +21 -21
  43. package/src/repositories/index.ts +57 -57
  44. package/src/repositories/menu.repository.ts +21 -21
  45. package/src/repositories/notification.repository.ts +54 -54
  46. package/src/repositories/premium.repository.ts +17 -19
  47. package/src/repositories/products.repository.ts +29 -29
  48. package/src/repositories/purchase.repository.ts +95 -95
  49. package/src/repositories/rating.repository.ts +83 -83
  50. package/src/repositories/rooms.repository.ts +17 -17
  51. package/src/repositories/rule.repository.ts +17 -19
  52. package/src/repositories/scheduled-tournaments.repository.ts +30 -30
  53. package/src/repositories/servers.repository.ts +18 -18
  54. package/src/repositories/setting.repository.ts +19 -19
  55. package/src/repositories/simple-rooms.repository.ts +17 -17
  56. package/src/repositories/tournament-many-tables-rooms.repository.ts +132 -132
  57. package/src/repositories/tournament-one-table-rooms.repository.ts +106 -106
  58. package/src/repositories/users.repository.ts +151 -151
  59. package/src/repositories/welcome.repository.ts +17 -19
  60. package/src/schemas/achievement.schema.ts +40 -40
  61. package/src/schemas/activity_log.schema.ts +37 -37
  62. package/src/schemas/admin.schema.ts +22 -22
  63. package/src/schemas/article.schema.ts +37 -37
  64. package/src/schemas/balance_history.schema.ts +37 -37
  65. package/src/schemas/banner.schema.ts +40 -40
  66. package/src/schemas/channel_message.schema.ts +31 -31
  67. package/src/schemas/complain.schema.ts +46 -46
  68. package/src/schemas/daily_bonus.schema.ts +56 -56
  69. package/src/schemas/feature.schema.ts +28 -28
  70. package/src/schemas/friend.schema.ts +50 -50
  71. package/src/schemas/game_result.schema.ts +68 -68
  72. package/src/schemas/game_statistic.schema.ts +40 -40
  73. package/src/schemas/menu.schema.ts +40 -40
  74. package/src/schemas/notification.schema.ts +61 -61
  75. package/src/schemas/premium.schema.ts +45 -45
  76. package/src/schemas/product.schema.ts +123 -123
  77. package/src/schemas/purchase.schema.ts +58 -58
  78. package/src/schemas/purchase_channel.schema.ts +31 -31
  79. package/src/schemas/rating.schema.ts +37 -37
  80. package/src/schemas/rooms.schema.ts +63 -63
  81. package/src/schemas/rule.schema.ts +45 -45
  82. package/src/schemas/scheduled_tournament.schema.ts +93 -93
  83. package/src/schemas/server.schema.ts +22 -22
  84. package/src/schemas/setting.schema.ts +55 -55
  85. package/src/schemas/simple_rooms.schema.ts +46 -46
  86. package/src/schemas/tournament_many_tables_rooms.schema.ts +84 -84
  87. package/src/schemas/tournament_one_table_rooms.schema.ts +81 -81
  88. package/src/schemas/user.fb.schema.ts +33 -33
  89. package/src/schemas/user.google.schema.ts +24 -24
  90. package/src/schemas/user.ok.schema.ts +52 -52
  91. package/src/schemas/user.schema.ts +182 -182
  92. package/src/schemas/user.tg.schema.ts +30 -30
  93. package/src/schemas/user.vk.schema.ts +70 -70
  94. package/src/schemas/user.ya.schema.ts +24 -24
  95. package/src/schemas/welcome.schema.ts +45 -45
  96. package/src/utils.ts +3 -3
@@ -1,182 +1,182 @@
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
- // objects
155
-
156
- // @Prop({ default: {} })
157
- // lastLogin: ILastLogin;
158
- //
159
- // @Prop({ default: {} })
160
- // gameStatistics: IGameStatistics;
161
-
162
- // @Prop({ type: Array<Purchase>, default: [] })
163
- // purchases: Array<Purchase>;
164
-
165
- @Prop({ default: [] })
166
- friends: Array<IUserFriend>;
167
-
168
-
169
- @Prop({ default: [] })
170
- achievements: Array<string>;
171
-
172
-
173
- hasAchievement(achievementCode: string): boolean {
174
- return this.achievements.some((item) => item === achievementCode);
175
- }
176
-
177
- hasNoAchievement(achievementCode: string): boolean {
178
- return !this.hasAchievement(achievementCode);
179
- }
180
- }
181
-
182
- 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
+ // objects
155
+
156
+ // @Prop({ default: {} })
157
+ // lastLogin: ILastLogin;
158
+ //
159
+ // @Prop({ default: {} })
160
+ // gameStatistics: IGameStatistics;
161
+
162
+ // @Prop({ type: Array<Purchase>, default: [] })
163
+ // purchases: Array<Purchase>;
164
+
165
+ @Prop({ default: [] })
166
+ friends: Array<IUserFriend>;
167
+
168
+
169
+ @Prop({ default: [] })
170
+ achievements: Array<string>;
171
+
172
+
173
+ hasAchievement(achievementCode: string): boolean {
174
+ return this.achievements.some((item) => item === achievementCode);
175
+ }
176
+
177
+ hasNoAchievement(achievementCode: string): boolean {
178
+ return !this.hasAchievement(achievementCode);
179
+ }
180
+ }
181
+
182
+ 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);
@@ -1,70 +1,70 @@
1
- import { Prop, Schema, SchemaFactory } from '@nestjs/mongoose';
2
- import { HydratedDocument } from 'mongoose';
3
-
4
- export type VKUserCityDocument = HydratedDocument<VKUserCity>;
5
-
6
- @Schema()
7
- export class VKUserCity {
8
- @Prop()
9
- id: number;
10
-
11
- @Prop()
12
- title: string;
13
- }
14
-
15
- export const VKUserCitySchema = SchemaFactory.createForClass(VKUserCity);
16
-
17
- export type VKUserDocument = HydratedDocument<VKUser>;
18
-
19
- @Schema()
20
- export class VKUser {
21
- @Prop()
22
- id: number;
23
-
24
- @Prop()
25
- first_name: string;
26
-
27
- @Prop()
28
- last_name: string;
29
-
30
- @Prop()
31
- sex: number;
32
-
33
- @Prop()
34
- bdate: string;
35
-
36
- @Prop()
37
- city: VKUserCity;
38
-
39
- @Prop()
40
- country: VKUserCity;
41
-
42
- @Prop()
43
- photo_100: string;
44
-
45
- @Prop()
46
- photo_200: string;
47
-
48
- @Prop()
49
- photo_max_orig: string;
50
-
51
- @Prop()
52
- timezone: number;
53
-
54
- @Prop()
55
- is_closed: boolean;
56
-
57
- @Prop()
58
- can_access_closed: boolean;
59
-
60
- @Prop()
61
- can_invite_to_chats: boolean;
62
-
63
- @Prop()
64
- is_app_ios: boolean;
65
-
66
- @Prop()
67
- is_vk_user_id?: boolean;
68
- }
69
-
70
- export const VKUserSchema = SchemaFactory.createForClass(VKUser);
1
+ import { Prop, Schema, SchemaFactory } from '@nestjs/mongoose';
2
+ import { HydratedDocument } from 'mongoose';
3
+
4
+ export type VKUserCityDocument = HydratedDocument<VKUserCity>;
5
+
6
+ @Schema()
7
+ export class VKUserCity {
8
+ @Prop()
9
+ id: number;
10
+
11
+ @Prop()
12
+ title: string;
13
+ }
14
+
15
+ export const VKUserCitySchema = SchemaFactory.createForClass(VKUserCity);
16
+
17
+ export type VKUserDocument = HydratedDocument<VKUser>;
18
+
19
+ @Schema()
20
+ export class VKUser {
21
+ @Prop()
22
+ id: number;
23
+
24
+ @Prop()
25
+ first_name: string;
26
+
27
+ @Prop()
28
+ last_name: string;
29
+
30
+ @Prop()
31
+ sex: number;
32
+
33
+ @Prop()
34
+ bdate: string;
35
+
36
+ @Prop()
37
+ city: VKUserCity;
38
+
39
+ @Prop()
40
+ country: VKUserCity;
41
+
42
+ @Prop()
43
+ photo_100: string;
44
+
45
+ @Prop()
46
+ photo_200: string;
47
+
48
+ @Prop()
49
+ photo_max_orig: string;
50
+
51
+ @Prop()
52
+ timezone: number;
53
+
54
+ @Prop()
55
+ is_closed: boolean;
56
+
57
+ @Prop()
58
+ can_access_closed: boolean;
59
+
60
+ @Prop()
61
+ can_invite_to_chats: boolean;
62
+
63
+ @Prop()
64
+ is_app_ios: boolean;
65
+
66
+ @Prop()
67
+ is_vk_user_id?: boolean;
68
+ }
69
+
70
+ export const VKUserSchema = SchemaFactory.createForClass(VKUser);
@@ -1,24 +1,24 @@
1
- import { Prop, Schema, SchemaFactory } from '@nestjs/mongoose';
2
- import { HydratedDocument } from 'mongoose';
3
-
4
- export type YAUserDocument = HydratedDocument<YAUser>;
5
-
6
- @Schema()
7
- export class YAUser {
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
- isGuest: boolean;
22
- }
23
-
24
- export const YAUserSchema = SchemaFactory.createForClass(YAUser);
1
+ import { Prop, Schema, SchemaFactory } from '@nestjs/mongoose';
2
+ import { HydratedDocument } from 'mongoose';
3
+
4
+ export type YAUserDocument = HydratedDocument<YAUser>;
5
+
6
+ @Schema()
7
+ export class YAUser {
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
+ isGuest: boolean;
22
+ }
23
+
24
+ export const YAUserSchema = SchemaFactory.createForClass(YAUser);