jp.db.schemas 1.0.18 → 1.0.20

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 (71) hide show
  1. package/dist/index.d.ts +6 -2
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +16 -1
  4. package/dist/index.js.map +1 -1
  5. package/dist/repositories/admin.repository.d.ts +9 -0
  6. package/dist/repositories/admin.repository.d.ts.map +1 -0
  7. package/dist/repositories/admin.repository.js +41 -0
  8. package/dist/repositories/admin.repository.js.map +1 -0
  9. package/dist/repositories/article.repository.d.ts +10 -0
  10. package/dist/repositories/article.repository.d.ts.map +1 -0
  11. package/dist/repositories/article.repository.js +50 -0
  12. package/dist/repositories/article.repository.js.map +1 -0
  13. package/dist/repositories/banners.repository.d.ts +15 -0
  14. package/dist/repositories/banners.repository.d.ts.map +1 -0
  15. package/dist/repositories/banners.repository.js +60 -0
  16. package/dist/repositories/banners.repository.js.map +1 -0
  17. package/dist/repositories/complains.repository.d.ts +11 -0
  18. package/dist/repositories/complains.repository.d.ts.map +1 -0
  19. package/dist/repositories/complains.repository.js +44 -0
  20. package/dist/repositories/complains.repository.js.map +1 -0
  21. package/dist/repositories/index.d.ts +12 -0
  22. package/dist/repositories/index.d.ts.map +1 -0
  23. package/dist/repositories/index.js +24 -0
  24. package/dist/repositories/index.js.map +1 -0
  25. package/dist/repositories/menu.repository.d.ts +8 -0
  26. package/dist/repositories/menu.repository.d.ts.map +1 -0
  27. package/dist/repositories/menu.repository.js +39 -0
  28. package/dist/repositories/menu.repository.js.map +1 -0
  29. package/dist/repositories/notification.repository.d.ts +15 -0
  30. package/dist/repositories/notification.repository.d.ts.map +1 -0
  31. package/dist/repositories/notification.repository.js +60 -0
  32. package/dist/repositories/notification.repository.js.map +1 -0
  33. package/dist/repositories/products.repository.d.ts +9 -0
  34. package/dist/repositories/products.repository.d.ts.map +1 -0
  35. package/dist/repositories/products.repository.js +46 -0
  36. package/dist/repositories/products.repository.js.map +1 -0
  37. package/dist/repositories/scheduled-tournaments.repository.d.ts +11 -0
  38. package/dist/repositories/scheduled-tournaments.repository.d.ts.map +1 -0
  39. package/dist/repositories/scheduled-tournaments.repository.js +44 -0
  40. package/dist/repositories/scheduled-tournaments.repository.js.map +1 -0
  41. package/dist/repositories/servers.repository.d.ts +8 -0
  42. package/dist/repositories/servers.repository.d.ts.map +1 -0
  43. package/dist/repositories/servers.repository.js +36 -0
  44. package/dist/repositories/servers.repository.js.map +1 -0
  45. package/dist/repositories/users.repository.d.ts +15 -0
  46. package/dist/repositories/users.repository.d.ts.map +1 -0
  47. package/dist/repositories/users.repository.js +70 -0
  48. package/dist/repositories/users.repository.js.map +1 -0
  49. package/dist/schemas/menu.schema.d.ts +23 -0
  50. package/dist/schemas/menu.schema.d.ts.map +1 -0
  51. package/dist/schemas/menu.schema.js +61 -0
  52. package/dist/schemas/menu.schema.js.map +1 -0
  53. package/dist/utils.d.ts +2 -0
  54. package/dist/utils.d.ts.map +1 -0
  55. package/dist/utils.js +7 -0
  56. package/dist/utils.js.map +1 -0
  57. package/package.json +1 -1
  58. package/src/index.ts +31 -0
  59. package/src/repositories/admin.repository.ts +23 -0
  60. package/src/repositories/article.repository.ts +33 -0
  61. package/src/repositories/banners.repository.ts +54 -0
  62. package/src/repositories/complains.repository.ts +30 -0
  63. package/src/repositories/index.ts +23 -0
  64. package/src/repositories/menu.repository.ts +21 -0
  65. package/src/repositories/notification.repository.ts +54 -0
  66. package/src/repositories/products.repository.ts +29 -0
  67. package/src/repositories/scheduled-tournaments.repository.ts +30 -0
  68. package/src/repositories/servers.repository.ts +18 -0
  69. package/src/repositories/users.repository.ts +69 -0
  70. package/src/schemas/menu.schema.ts +40 -0
  71. package/src/utils.ts +3 -0
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.ProductsRepository = void 0;
16
+ const common_1 = require("@nestjs/common");
17
+ const mongoose_1 = require("@nestjs/mongoose");
18
+ const mongoose_2 = require("mongoose");
19
+ const __1 = require("../");
20
+ const utils_1 = require("../utils");
21
+ let ProductsRepository = class ProductsRepository {
22
+ constructor(productModel) {
23
+ this.productModel = productModel;
24
+ }
25
+ async findByProductId(productId) {
26
+ return this.productModel
27
+ .findOne({ productId })
28
+ .exec();
29
+ }
30
+ async findProducts(parentId, channel) {
31
+ return this.productModel
32
+ .find({
33
+ parentId,
34
+ active: true,
35
+ channels: (0, utils_1.getChannelRegExpFilter)(channel),
36
+ })
37
+ .exec();
38
+ }
39
+ };
40
+ exports.ProductsRepository = ProductsRepository;
41
+ exports.ProductsRepository = ProductsRepository = __decorate([
42
+ (0, common_1.Injectable)(),
43
+ __param(0, (0, mongoose_1.InjectModel)(__1.Product.name)),
44
+ __metadata("design:paramtypes", [mongoose_2.Model])
45
+ ], ProductsRepository);
46
+ //# sourceMappingURL=products.repository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"products.repository.js","sourceRoot":"","sources":["../../src/repositories/products.repository.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAA4C;AAC5C,+CAA+C;AAC/C,uCAAiC;AAEjC,2BAA+C;AAC/C,oCAAkD;AAG3C,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;IAC3B,YAAgD,YAAoC;QAApC,iBAAY,GAAZ,YAAY,CAAwB;IACpF,CAAC;IAED,KAAK,CAAC,eAAe,CAAE,SAAiB;QACpC,OAAO,IAAI,CAAC,YAAY;aACnB,OAAO,CAAC,EAAE,SAAS,EAAE,CAAC;aACtB,IAAI,EAAE,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,YAAY,CAAE,QAAuB,EAAE,OAAe;QACxD,OAAO,IAAI,CAAC,YAAY;aACnB,IAAI,CAAC;YACF,QAAQ;YACR,MAAM,EAAE,IAAI;YACZ,QAAQ,EAAE,IAAA,8BAAsB,EAAC,OAAO,CAAC;SAC5C,CAAC;aACD,IAAI,EAAE,CAAC;IAChB,CAAC;CACJ,CAAA;AAnBY,gDAAkB;6BAAlB,kBAAkB;IAD9B,IAAA,mBAAU,GAAE;IAEK,WAAA,IAAA,sBAAW,EAAC,WAAO,CAAC,IAAI,CAAC,CAAA;qCAAuB,gBAAK;GAD1D,kBAAkB,CAmB9B"}
@@ -0,0 +1,11 @@
1
+ import { Model } from 'mongoose';
2
+ import { ScheduledTournament, ScheduledTournamentDocument } from '../';
3
+ export declare class ScheduledTournamentsRepository {
4
+ private scheduledTournamentModel;
5
+ constructor(scheduledTournamentModel: Model<ScheduledTournamentDocument>);
6
+ findAndCount(limit: number, skip: number): Promise<{
7
+ items: Array<ScheduledTournament>;
8
+ total: number;
9
+ }>;
10
+ }
11
+ //# sourceMappingURL=scheduled-tournaments.repository.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scheduled-tournaments.repository.d.ts","sourceRoot":"","sources":["../../src/repositories/scheduled-tournaments.repository.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC,OAAO,EAAE,mBAAmB,EAAE,2BAA2B,EAAE,MAAM,KAAK,CAAC;AAEvE,qBACa,8BAA8B;IACW,OAAO,CAAC,wBAAwB;gBAAxB,wBAAwB,EAAE,KAAK,CAAC,2BAA2B,CAAC;IAGlH,YAAY,CAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;QACxD,KAAK,EAAE,KAAK,CAAC,mBAAmB,CAAC,CAAC;QAClC,KAAK,EAAE,MAAM,CAAA;KACd,CAAC;CAeH"}
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.ScheduledTournamentsRepository = void 0;
16
+ const common_1 = require("@nestjs/common");
17
+ const mongoose_1 = require("@nestjs/mongoose");
18
+ const mongoose_2 = require("mongoose");
19
+ const __1 = require("../");
20
+ let ScheduledTournamentsRepository = class ScheduledTournamentsRepository {
21
+ constructor(scheduledTournamentModel) {
22
+ this.scheduledTournamentModel = scheduledTournamentModel;
23
+ }
24
+ async findAndCount(limit, skip) {
25
+ const items = await this.scheduledTournamentModel
26
+ .find({ category: 'global' })
27
+ .sort({ date: -1 })
28
+ .limit(limit)
29
+ .skip(skip)
30
+ .exec();
31
+ const total = await this.scheduledTournamentModel
32
+ .find({ category: 'global' })
33
+ .countDocuments()
34
+ .exec();
35
+ return { items, total };
36
+ }
37
+ };
38
+ exports.ScheduledTournamentsRepository = ScheduledTournamentsRepository;
39
+ exports.ScheduledTournamentsRepository = ScheduledTournamentsRepository = __decorate([
40
+ (0, common_1.Injectable)(),
41
+ __param(0, (0, mongoose_1.InjectModel)(__1.ScheduledTournament.name)),
42
+ __metadata("design:paramtypes", [mongoose_2.Model])
43
+ ], ScheduledTournamentsRepository);
44
+ //# sourceMappingURL=scheduled-tournaments.repository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scheduled-tournaments.repository.js","sourceRoot":"","sources":["../../src/repositories/scheduled-tournaments.repository.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAA4C;AAC5C,+CAA+C;AAC/C,uCAAiC;AAEjC,2BAAuE;AAGhE,IAAM,8BAA8B,GAApC,MAAM,8BAA8B;IACzC,YAA4D,wBAA4D;QAA5D,6BAAwB,GAAxB,wBAAwB,CAAoC;IACxH,CAAC;IAED,KAAK,CAAC,YAAY,CAAE,KAAa,EAAE,IAAY;QAI7C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,wBAAwB;aAC9C,IAAI,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAC,CAAC;aAC3B,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;aAClB,KAAK,CAAC,KAAK,CAAC;aACZ,IAAI,CAAC,IAAI,CAAC;aACV,IAAI,EAAE,CAAC;QAEV,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,wBAAwB;aAC9C,IAAI,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAC,CAAC;aAC3B,cAAc,EAAE;aAChB,IAAI,EAAE,CAAC;QAEV,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;IAC1B,CAAC;CACF,CAAA;AAtBY,wEAA8B;yCAA9B,8BAA8B;IAD1C,IAAA,mBAAU,GAAE;IAEG,WAAA,IAAA,sBAAW,EAAC,uBAAmB,CAAC,IAAI,CAAC,CAAA;qCAAmC,gBAAK;GADhF,8BAA8B,CAsB1C"}
@@ -0,0 +1,8 @@
1
+ import { Model } from 'mongoose';
2
+ import { Server, ServerDocument } from '../';
3
+ export declare class ServersRepository {
4
+ private serverModel;
5
+ constructor(serverModel: Model<ServerDocument>);
6
+ findServerByName(name: string): Promise<Server | null>;
7
+ }
8
+ //# sourceMappingURL=servers.repository.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"servers.repository.d.ts","sourceRoot":"","sources":["../../src/repositories/servers.repository.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAE7C,qBACa,iBAAiB;IACa,OAAO,CAAC,WAAW;gBAAX,WAAW,EAAE,KAAK,CAAC,cAAc,CAAC;IAG3E,gBAAgB,CAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;CAKhE"}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.ServersRepository = void 0;
16
+ const common_1 = require("@nestjs/common");
17
+ const mongoose_1 = require("@nestjs/mongoose");
18
+ const mongoose_2 = require("mongoose");
19
+ const __1 = require("../");
20
+ let ServersRepository = class ServersRepository {
21
+ constructor(serverModel) {
22
+ this.serverModel = serverModel;
23
+ }
24
+ async findServerByName(name) {
25
+ return this.serverModel
26
+ .findOne({ name })
27
+ .exec();
28
+ }
29
+ };
30
+ exports.ServersRepository = ServersRepository;
31
+ exports.ServersRepository = ServersRepository = __decorate([
32
+ (0, common_1.Injectable)(),
33
+ __param(0, (0, mongoose_1.InjectModel)(__1.Server.name)),
34
+ __metadata("design:paramtypes", [mongoose_2.Model])
35
+ ], ServersRepository);
36
+ //# sourceMappingURL=servers.repository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"servers.repository.js","sourceRoot":"","sources":["../../src/repositories/servers.repository.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAA4C;AAC5C,+CAA+C;AAC/C,uCAAiC;AAEjC,2BAA6C;AAGtC,IAAM,iBAAiB,GAAvB,MAAM,iBAAiB;IAC1B,YAA+C,WAAkC;QAAlC,gBAAW,GAAX,WAAW,CAAuB;IACjF,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAE,IAAY;QAChC,OAAO,IAAI,CAAC,WAAW;aAClB,OAAO,CAAC,EAAC,IAAI,EAAC,CAAC;aACf,IAAI,EAAE,CAAC;IAChB,CAAC;CACJ,CAAA;AATY,8CAAiB;4BAAjB,iBAAiB;IAD7B,IAAA,mBAAU,GAAE;IAEK,WAAA,IAAA,sBAAW,EAAC,UAAM,CAAC,IAAI,CAAC,CAAA;qCAAsB,gBAAK;GADxD,iBAAiB,CAS7B"}
@@ -0,0 +1,15 @@
1
+ import { Model } from 'mongoose';
2
+ import { User, UserDocument } from '../';
3
+ export declare class UsersRepository {
4
+ private userModel;
5
+ constructor(userModel: Model<UserDocument>);
6
+ findById(id: string): Promise<User | null>;
7
+ findByVKId(vkId: number): Promise<User | null>;
8
+ findAndCount(userName: string, limit: number, skip: number): Promise<{
9
+ items: Array<User>;
10
+ total: number;
11
+ }>;
12
+ createUser(user: User): Promise<User>;
13
+ updateUser(userId: string, user: Partial<User>, balanceAdding?: number): Promise<UserDocument | null>;
14
+ }
15
+ //# sourceMappingURL=users.repository.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"users.repository.d.ts","sourceRoot":"","sources":["../../src/repositories/users.repository.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,KAAK,CAAC;AAWzC,qBACa,eAAe;IACa,OAAO,CAAC,SAAS;gBAAT,SAAS,EAAE,KAAK,CAAC,YAAY,CAAC;IAGrE,QAAQ,CAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;IAM3C,UAAU,CAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;IAM/C,YAAY,CAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;QACxE,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QACnB,KAAK,EAAE,MAAM,CAAA;KAChB,CAAC;IAeI,UAAU,CAAE,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAItC,UAAU,CAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;CAc/G"}
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.UsersRepository = void 0;
16
+ const common_1 = require("@nestjs/common");
17
+ const mongoose_1 = require("@nestjs/mongoose");
18
+ const mongoose_2 = require("mongoose");
19
+ const __1 = require("../");
20
+ function getFullNameFilter(userName) {
21
+ const regexpName = {
22
+ '$regex': userName,
23
+ '$options': 'i',
24
+ };
25
+ return userName ? { $or: [{ fullName: regexpName }, { fullNameAlias: regexpName }] } : {};
26
+ }
27
+ let UsersRepository = class UsersRepository {
28
+ constructor(userModel) {
29
+ this.userModel = userModel;
30
+ }
31
+ async findById(id) {
32
+ return this.userModel
33
+ .findById(id)
34
+ .exec();
35
+ }
36
+ async findByVKId(vkId) {
37
+ return this.userModel
38
+ .findOne({ 'vkUser.id': vkId })
39
+ .exec();
40
+ }
41
+ async findAndCount(userName, limit, skip) {
42
+ const items = await this.userModel
43
+ .find(getFullNameFilter(userName))
44
+ .limit(limit)
45
+ .skip(skip)
46
+ .exec();
47
+ const total = await this.userModel
48
+ .find(getFullNameFilter(userName))
49
+ .countDocuments()
50
+ .exec();
51
+ return { items, total };
52
+ }
53
+ async createUser(user) {
54
+ return this.userModel.create(user);
55
+ }
56
+ async updateUser(userId, user, balanceAdding) {
57
+ delete user.balance;
58
+ return this.userModel.findByIdAndUpdate(userId, {
59
+ $set: Object.assign({}, user),
60
+ $inc: { balance: balanceAdding !== null && balanceAdding !== void 0 ? balanceAdding : 0 }
61
+ }, { new: true }).exec();
62
+ }
63
+ };
64
+ exports.UsersRepository = UsersRepository;
65
+ exports.UsersRepository = UsersRepository = __decorate([
66
+ (0, common_1.Injectable)(),
67
+ __param(0, (0, mongoose_1.InjectModel)(__1.User.name)),
68
+ __metadata("design:paramtypes", [mongoose_2.Model])
69
+ ], UsersRepository);
70
+ //# sourceMappingURL=users.repository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"users.repository.js","sourceRoot":"","sources":["../../src/repositories/users.repository.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAA4C;AAC5C,+CAA+C;AAC/C,uCAAiC;AAEjC,2BAAyC;AAEzC,SAAS,iBAAiB,CAAE,QAAgB;IACxC,MAAM,UAAU,GAAG;QACf,QAAQ,EAAE,QAAQ;QAClB,UAAU,EAAE,GAAG;KAClB,CAAC;IAEF,OAAO,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE,aAAa,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC9F,CAAC;AAGM,IAAM,eAAe,GAArB,MAAM,eAAe;IACxB,YAA6C,SAA8B;QAA9B,cAAS,GAAT,SAAS,CAAqB;IAC3E,CAAC;IAED,KAAK,CAAC,QAAQ,CAAE,EAAU;QACtB,OAAO,IAAI,CAAC,SAAS;aAChB,QAAQ,CAAC,EAAE,CAAC;aACZ,IAAI,EAAE,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,UAAU,CAAE,IAAY;QAC1B,OAAO,IAAI,CAAC,SAAS;aAChB,OAAO,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;aAC9B,IAAI,EAAE,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,YAAY,CAAE,QAAgB,EAAE,KAAa,EAAE,IAAY;QAI7D,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,SAAS;aAC7B,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;aACjC,KAAK,CAAC,KAAK,CAAC;aACZ,IAAI,CAAC,IAAI,CAAC;aACV,IAAI,EAAE,CAAC;QAEZ,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,SAAS;aAC7B,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;aACjC,cAAc,EAAE;aAChB,IAAI,EAAE,CAAC;QAEZ,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,UAAU,CAAE,IAAU;QACxB,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACvC,CAAC;IAED,KAAK,CAAC,UAAU,CAAE,MAAc,EAAE,IAAmB,EAAE,aAAsB;QACzE,OAAO,IAAI,CAAC,OAAO,CAAC;QAEpB,OAAO,IAAI,CAAC,SAAS,CAAC,iBAAiB,CACnC,MAAM,EACN;YACI,IAAI,oBACG,IAAI,CACV;YACD,IAAI,EAAE,EAAE,OAAO,EAAE,aAAa,aAAb,aAAa,cAAb,aAAa,GAAI,CAAC,EAAE;SACxC,EACD,EAAE,GAAG,EAAE,IAAI,EAAE,CAChB,CAAC,IAAI,EAAE,CAAC;IACb,CAAC;CACJ,CAAA;AApDY,0CAAe;0BAAf,eAAe;IAD3B,IAAA,mBAAU,GAAE;IAEK,WAAA,IAAA,sBAAW,EAAC,QAAI,CAAC,IAAI,CAAC,CAAA;qCAAoB,gBAAK;GADpD,eAAe,CAoD3B"}
@@ -0,0 +1,23 @@
1
+ import { Document, HydratedDocument } from 'mongoose';
2
+ export type MenuDocument = HydratedDocument<Menu>;
3
+ export declare class Menu {
4
+ readonly menuId: string;
5
+ code: string;
6
+ title: string;
7
+ titleEn: string;
8
+ icon: string;
9
+ url: string;
10
+ position: number;
11
+ game: string;
12
+ channel: string;
13
+ }
14
+ export declare const MenuSchema: import("mongoose").Schema<Menu, import("mongoose").Model<Menu, any, any, any, Document<unknown, any, Menu, any> & Menu & {
15
+ _id: import("mongoose").Types.ObjectId;
16
+ } & {
17
+ __v: number;
18
+ }, any>, {}, {}, {}, {}, import("mongoose").DefaultSchemaOptions, Menu, Document<unknown, {}, import("mongoose").FlatRecord<Menu>, {}> & import("mongoose").FlatRecord<Menu> & {
19
+ _id: import("mongoose").Types.ObjectId;
20
+ } & {
21
+ __v: number;
22
+ }>;
23
+ //# sourceMappingURL=menu.schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"menu.schema.d.ts","sourceRoot":"","sources":["../../src/schemas/menu.schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAEtD,MAAM,MAAM,YAAY,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;AAElD,qBACa,IAAI;IAMb,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAGxB,IAAI,EAAE,MAAM,CAAC;IAGb,KAAK,EAAE,MAAM,CAAC;IAGd,OAAO,EAAE,MAAM,CAAC;IAGhB,IAAI,EAAE,MAAM,CAAC;IAGb,GAAG,EAAE,MAAM,CAAC;IAGZ,QAAQ,EAAE,MAAM,CAAC;IAGjB,IAAI,EAAE,MAAM,CAAC;IAGb,OAAO,EAAE,MAAM,CAAC;CACnB;AAED,eAAO,MAAM,UAAU;;;;;;;;EAAqC,CAAC"}
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.MenuSchema = exports.Menu = void 0;
13
+ const mongoose_1 = require("@nestjs/mongoose");
14
+ let Menu = class Menu {
15
+ };
16
+ exports.Menu = Menu;
17
+ __decorate([
18
+ (0, mongoose_1.Virtual)({
19
+ get: function () {
20
+ return this.id;
21
+ },
22
+ }),
23
+ __metadata("design:type", String)
24
+ ], Menu.prototype, "menuId", void 0);
25
+ __decorate([
26
+ (0, mongoose_1.Prop)(),
27
+ __metadata("design:type", String)
28
+ ], Menu.prototype, "code", void 0);
29
+ __decorate([
30
+ (0, mongoose_1.Prop)(),
31
+ __metadata("design:type", String)
32
+ ], Menu.prototype, "title", void 0);
33
+ __decorate([
34
+ (0, mongoose_1.Prop)(),
35
+ __metadata("design:type", String)
36
+ ], Menu.prototype, "titleEn", void 0);
37
+ __decorate([
38
+ (0, mongoose_1.Prop)(),
39
+ __metadata("design:type", String)
40
+ ], Menu.prototype, "icon", void 0);
41
+ __decorate([
42
+ (0, mongoose_1.Prop)(),
43
+ __metadata("design:type", String)
44
+ ], Menu.prototype, "url", void 0);
45
+ __decorate([
46
+ (0, mongoose_1.Prop)(),
47
+ __metadata("design:type", Number)
48
+ ], Menu.prototype, "position", void 0);
49
+ __decorate([
50
+ (0, mongoose_1.Prop)(),
51
+ __metadata("design:type", String)
52
+ ], Menu.prototype, "game", void 0);
53
+ __decorate([
54
+ (0, mongoose_1.Prop)(),
55
+ __metadata("design:type", String)
56
+ ], Menu.prototype, "channel", void 0);
57
+ exports.Menu = Menu = __decorate([
58
+ (0, mongoose_1.Schema)()
59
+ ], Menu);
60
+ exports.MenuSchema = mongoose_1.SchemaFactory.createForClass(Menu);
61
+ //# sourceMappingURL=menu.schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"menu.schema.js","sourceRoot":"","sources":["../../src/schemas/menu.schema.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+CAAwE;AAMjE,IAAM,IAAI,GAAV,MAAM,IAAI;CA+BhB,CAAA;AA/BY,oBAAI;AAMJ;IALR,IAAA,kBAAO,EAAC;QACL,GAAG,EAAE;YACD,OAAO,IAAI,CAAC,EAAE,CAAC;QACnB,CAAC;KACJ,CAAC;;oCACsB;AAGxB;IADC,IAAA,eAAI,GAAE;;kCACM;AAGb;IADC,IAAA,eAAI,GAAE;;mCACO;AAGd;IADC,IAAA,eAAI,GAAE;;qCACS;AAGhB;IADC,IAAA,eAAI,GAAE;;kCACM;AAGb;IADC,IAAA,eAAI,GAAE;;iCACK;AAGZ;IADC,IAAA,eAAI,GAAE;;sCACU;AAGjB;IADC,IAAA,eAAI,GAAE;;kCACM;AAGb;IADC,IAAA,eAAI,GAAE;;qCACS;eA9BP,IAAI;IADhB,IAAA,iBAAM,GAAE;GACI,IAAI,CA+BhB;AAEY,QAAA,UAAU,GAAG,wBAAa,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function getChannelRegExpFilter(channel: string): RegExp;
2
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,UAErD"}
package/dist/utils.js ADDED
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getChannelRegExpFilter = getChannelRegExpFilter;
4
+ function getChannelRegExpFilter(channel) {
5
+ return new RegExp(`ALL|${channel}`, 'i');
6
+ }
7
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";;AAAA,wDAEC;AAFD,SAAgB,sBAAsB,CAAC,OAAe;IAClD,OAAO,IAAI,MAAM,CAAC,OAAO,OAAO,EAAE,EAAE,GAAG,CAAC,CAAC;AAC7C,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jp.db.schemas",
3
- "version": "1.0.18",
3
+ "version": "1.0.20",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
package/src/index.ts CHANGED
@@ -44,6 +44,21 @@ import { Rating, RatingSchema } from './schemas/rating.schema';
44
44
  import type { RatingDocument } from './schemas/rating.schema';
45
45
  import { Setting, SettingSchema } from './schemas/setting.schema';
46
46
  import type { SettingDocument } from './schemas/setting.schema';
47
+ import { Menu, MenuSchema } from './schemas/menu.schema';
48
+ import type { MenuDocument } from './schemas/menu.schema';
49
+
50
+ import {
51
+ AdminRepository,
52
+ ArticleRepository,
53
+ BannersRepository,
54
+ ComplainsRepository,
55
+ NotificationRepository,
56
+ ProductsRepository,
57
+ ScheduledTournamentsRepository,
58
+ ServersRepository,
59
+ UsersRepository,
60
+ MenuRepository,
61
+ } from './repositories'
47
62
 
48
63
  export type {
49
64
  UserDocument,
@@ -69,6 +84,7 @@ export type {
69
84
  PurchaseChannelDocument,
70
85
  RatingDocument,
71
86
  SettingDocument,
87
+ MenuDocument,
72
88
  }
73
89
 
74
90
  export {
@@ -118,4 +134,19 @@ export {
118
134
  RatingSchema,
119
135
  Setting,
120
136
  SettingSchema,
137
+ Menu,
138
+ MenuSchema,
139
+ }
140
+
141
+ export {
142
+ AdminRepository,
143
+ ArticleRepository,
144
+ BannersRepository,
145
+ ComplainsRepository,
146
+ NotificationRepository,
147
+ ProductsRepository,
148
+ ScheduledTournamentsRepository,
149
+ ServersRepository,
150
+ UsersRepository,
151
+ MenuRepository,
121
152
  }
@@ -0,0 +1,23 @@
1
+ import { Injectable } from '@nestjs/common';
2
+ import { InjectModel } from '@nestjs/mongoose';
3
+ import { Model } from 'mongoose';
4
+
5
+ import { Admin, AdminDocument } from '../';
6
+
7
+ @Injectable()
8
+ export class AdminRepository {
9
+ constructor (@InjectModel(Admin.name) private adminModel: Model<AdminDocument>) {
10
+ }
11
+
12
+ async findById (id: string): Promise<Admin | null> {
13
+ return this.adminModel
14
+ .findOne({ _id: id })
15
+ .exec();
16
+ }
17
+
18
+ async findByLogin (login: string): Promise<Admin | null> {
19
+ return this.adminModel
20
+ .findOne({ login })
21
+ .exec();
22
+ }
23
+ }
@@ -0,0 +1,33 @@
1
+ import { Injectable } from '@nestjs/common';
2
+ import { InjectModel } from '@nestjs/mongoose';
3
+ import { Model } from 'mongoose';
4
+
5
+ import { Article, ArticleDocument } from '../';
6
+
7
+ @Injectable()
8
+ export class ArticleRepository {
9
+ constructor (@InjectModel(Article.name) private articleModel: Model<ArticleDocument>) {
10
+ }
11
+
12
+ async findAllArticles (): Promise<Array<Article>> {
13
+ return this.articleModel
14
+ .find()
15
+ .sort({ createDate: -1 })
16
+ .exec();
17
+ }
18
+
19
+ async findLastArticle (): Promise<Article | null> {
20
+ return await this.articleModel
21
+ .findOne()
22
+ .sort({ createDate: -1 })
23
+ .exec();
24
+ }
25
+
26
+ async findTop3Articles (): Promise<Array<Article>> {
27
+ return this.articleModel
28
+ .find()
29
+ .sort({ createDate: -1 })
30
+ .limit(3)
31
+ .exec();
32
+ }
33
+ }
@@ -0,0 +1,54 @@
1
+ import { Injectable } from '@nestjs/common';
2
+ import { InjectModel } from '@nestjs/mongoose';
3
+ import { Model } from 'mongoose';
4
+
5
+ import { Banner, BannerDocument } from '../';
6
+
7
+ @Injectable()
8
+ export class BannersRepository {
9
+ constructor (@InjectModel(Banner.name) private bannerModel: Model<BannerDocument>) {
10
+ }
11
+
12
+ async findById (id: string): Promise<Banner | null> {
13
+ return this.bannerModel
14
+ .findById(id)
15
+ .exec();
16
+ }
17
+
18
+ async findAndCount (limit: number, skip: number): Promise<{
19
+ items: Array<Banner>,
20
+ total: number
21
+ }> {
22
+ const items = await this.bannerModel
23
+ .find()
24
+ .sort({ createDate: -1 })
25
+ .limit(limit)
26
+ .skip(skip)
27
+ .exec();
28
+
29
+ const total = await this.bannerModel
30
+ .find()
31
+ .countDocuments()
32
+ .exec();
33
+
34
+ return { items, total };
35
+ }
36
+
37
+ public async createBanner (banner: Banner): Promise<Banner> {
38
+ return this.bannerModel.create(banner);
39
+ }
40
+
41
+ async updateBanner (bannerId: string, banner: Partial<Banner>): Promise<void> {
42
+ await this.bannerModel.findByIdAndUpdate(
43
+ bannerId,
44
+ {
45
+ $set: {
46
+ ...banner,
47
+ },
48
+ }).exec();
49
+ }
50
+
51
+ public async removeBanner (bannerId: string): Promise<void> {
52
+ await this.bannerModel.findByIdAndDelete(bannerId);
53
+ }
54
+ }
@@ -0,0 +1,30 @@
1
+ import { Injectable } from '@nestjs/common';
2
+ import { InjectModel } from '@nestjs/mongoose';
3
+ import { Model } from 'mongoose';
4
+
5
+ import { Complain, ComplainDocument } from '../';
6
+
7
+ @Injectable()
8
+ export class ComplainsRepository {
9
+ constructor (@InjectModel(Complain.name) private complainModel: Model<ComplainDocument>) {
10
+ }
11
+
12
+ async findAndCount (limit: number, skip: number): Promise<{
13
+ items: Array<Complain>,
14
+ total: number
15
+ }> {
16
+ const items = await this.complainModel
17
+ .find()
18
+ .sort({ createDate: -1 })
19
+ .limit(limit)
20
+ .skip(skip)
21
+ .exec();
22
+
23
+ const total = await this.complainModel
24
+ .find()
25
+ .countDocuments()
26
+ .exec();
27
+
28
+ return { items, total };
29
+ }
30
+ }
@@ -0,0 +1,23 @@
1
+ import { AdminRepository } from './admin.repository';
2
+ import { ArticleRepository } from './article.repository';
3
+ import { BannersRepository } from './banners.repository';
4
+ import { ComplainsRepository } from './complains.repository';
5
+ import { NotificationRepository } from './notification.repository';
6
+ import { ProductsRepository } from './products.repository';
7
+ import { ScheduledTournamentsRepository } from './scheduled-tournaments.repository';
8
+ import { ServersRepository } from './servers.repository';
9
+ import { UsersRepository } from './users.repository';
10
+ import { MenuRepository } from './menu.repository';
11
+
12
+ export {
13
+ AdminRepository,
14
+ ArticleRepository,
15
+ BannersRepository,
16
+ ComplainsRepository,
17
+ NotificationRepository,
18
+ ProductsRepository,
19
+ ScheduledTournamentsRepository,
20
+ ServersRepository,
21
+ UsersRepository,
22
+ MenuRepository,
23
+ }
@@ -0,0 +1,21 @@
1
+ import { Injectable } from '@nestjs/common';
2
+ import { InjectModel } from '@nestjs/mongoose';
3
+ import { Model } from 'mongoose';
4
+
5
+ import { Menu, MenuDocument } from '../';
6
+ import { getChannelRegExpFilter } from '../utils';
7
+
8
+ @Injectable()
9
+ export class MenuRepository {
10
+ constructor (@InjectModel(Menu.name) private menuModel: Model<MenuDocument>) {
11
+ }
12
+
13
+ async findMenus (channel: string, game: string): Promise<Array<Menu> | null> {
14
+ return this.menuModel
15
+ .find({
16
+ channels: getChannelRegExpFilter(channel),
17
+ })
18
+ .exec();
19
+ }
20
+ }
21
+