jp.db.schemas 2.1.15 → 2.2.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 (112) hide show
  1. package/dist/index.d.ts +6 -4
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +6 -1
  4. package/dist/index.js.map +1 -1
  5. package/dist/repositories/index.d.ts +2 -1
  6. package/dist/repositories/index.d.ts.map +1 -1
  7. package/dist/repositories/index.js +3 -1
  8. package/dist/repositories/index.js.map +1 -1
  9. package/dist/repositories/setting.repository.d.ts +1 -1
  10. package/dist/repositories/setting.repository.d.ts.map +1 -1
  11. package/dist/repositories/setting.repository.js +1 -1
  12. package/dist/repositories/setting.repository.js.map +1 -1
  13. package/dist/repositories/settings-options.repository.d.ts +8 -0
  14. package/dist/repositories/settings-options.repository.d.ts.map +1 -0
  15. package/dist/repositories/settings-options.repository.js +39 -0
  16. package/dist/repositories/settings-options.repository.js.map +1 -0
  17. package/dist/repositories/welcome.repository.d.ts +1 -1
  18. package/dist/repositories/welcome.repository.d.ts.map +1 -1
  19. package/dist/repositories/welcome.repository.js +2 -2
  20. package/dist/repositories/welcome.repository.js.map +1 -1
  21. package/dist/schemas/product.schema.d.ts +20 -0
  22. package/dist/schemas/product.schema.d.ts.map +1 -1
  23. package/dist/schemas/product.schema.js +8 -0
  24. package/dist/schemas/product.schema.js.map +1 -1
  25. package/dist/schemas/setting.schema.d.ts +10 -40
  26. package/dist/schemas/setting.schema.d.ts.map +1 -1
  27. package/dist/schemas/setting.schema.js +9 -21
  28. package/dist/schemas/setting.schema.js.map +1 -1
  29. package/dist/schemas/settings_option.schema.d.ts +105 -0
  30. package/dist/schemas/settings_option.schema.d.ts.map +1 -0
  31. package/dist/schemas/settings_option.schema.js +57 -0
  32. package/dist/schemas/settings_option.schema.js.map +1 -0
  33. package/package.json +31 -31
  34. package/readme.md +3 -3
  35. package/src/index.ts +257 -251
  36. package/src/models/activity-log-user-login.interface copy.ts +9 -9
  37. package/src/models/activity-log-user-login.interface.ts +9 -9
  38. package/src/models/activity-log.enum.ts +7 -7
  39. package/src/models/currency.enum.ts +4 -4
  40. package/src/models/rating-add-bulk-item.interface.ts +6 -6
  41. package/src/models/rating-monthly-result.interface.ts +10 -10
  42. package/src/models/tournament-participant.interface.ts +5 -5
  43. package/src/models/tournament-status.enum.ts +6 -6
  44. package/src/models/tournament-template.enum.ts +3 -3
  45. package/src/models/tournament-winner.interface.ts +7 -7
  46. package/src/repositories/achievement.repository.ts +18 -18
  47. package/src/repositories/activity-log.repository.ts +110 -110
  48. package/src/repositories/admin.repository.ts +23 -23
  49. package/src/repositories/article.repository.ts +33 -33
  50. package/src/repositories/balance-history.repository.ts +15 -15
  51. package/src/repositories/banners.repository.ts +54 -54
  52. package/src/repositories/complains.repository.ts +30 -30
  53. package/src/repositories/daily-bonus.repository.ts +25 -25
  54. package/src/repositories/friend.repository.ts +19 -19
  55. package/src/repositories/game-result.repository.ts +15 -15
  56. package/src/repositories/game-statistic.repository.ts +21 -21
  57. package/src/repositories/index.ts +59 -57
  58. package/src/repositories/menu.repository.ts +21 -21
  59. package/src/repositories/notification.repository.ts +54 -54
  60. package/src/repositories/premium.repository.ts +17 -17
  61. package/src/repositories/products.repository.ts +29 -29
  62. package/src/repositories/purchase.repository.ts +95 -95
  63. package/src/repositories/rating.repository.ts +83 -83
  64. package/src/repositories/rooms.repository.ts +17 -17
  65. package/src/repositories/rule.repository.ts +17 -17
  66. package/src/repositories/scheduled-tournaments.repository.ts +30 -30
  67. package/src/repositories/servers.repository.ts +18 -18
  68. package/src/repositories/setting.repository.ts +19 -19
  69. package/src/repositories/settings-options.repository.ts +20 -0
  70. package/src/repositories/simple-rooms.repository.ts +17 -17
  71. package/src/repositories/tournament-many-tables-rooms.repository.ts +132 -132
  72. package/src/repositories/tournament-one-table-rooms.repository.ts +106 -106
  73. package/src/repositories/users.repository.ts +151 -151
  74. package/src/repositories/welcome.repository.ts +17 -17
  75. package/src/schemas/achievement.schema.ts +40 -40
  76. package/src/schemas/activity_log.schema.ts +37 -37
  77. package/src/schemas/admin.schema.ts +22 -22
  78. package/src/schemas/article.schema.ts +37 -37
  79. package/src/schemas/balance_history.schema.ts +37 -37
  80. package/src/schemas/banner.schema.ts +40 -40
  81. package/src/schemas/channel_message.schema.ts +31 -31
  82. package/src/schemas/complain.schema.ts +46 -46
  83. package/src/schemas/daily_bonus.schema.ts +56 -56
  84. package/src/schemas/feature.schema.ts +28 -28
  85. package/src/schemas/friend.schema.ts +50 -50
  86. package/src/schemas/game_result.schema.ts +68 -68
  87. package/src/schemas/game_statistic.schema.ts +40 -40
  88. package/src/schemas/menu.schema.ts +40 -40
  89. package/src/schemas/notification.schema.ts +61 -61
  90. package/src/schemas/premium.schema.ts +45 -45
  91. package/src/schemas/product.schema.ts +129 -123
  92. package/src/schemas/purchase.schema.ts +58 -58
  93. package/src/schemas/purchase_channel.schema.ts +31 -31
  94. package/src/schemas/rating.schema.ts +37 -37
  95. package/src/schemas/rooms.schema.ts +63 -63
  96. package/src/schemas/rule.schema.ts +45 -45
  97. package/src/schemas/scheduled_tournament.schema.ts +93 -93
  98. package/src/schemas/server.schema.ts +22 -22
  99. package/src/schemas/setting.schema.ts +46 -55
  100. package/src/schemas/settings_option.schema.ts +37 -0
  101. package/src/schemas/simple_rooms.schema.ts +46 -46
  102. package/src/schemas/tournament_many_tables_rooms.schema.ts +84 -84
  103. package/src/schemas/tournament_one_table_rooms.schema.ts +81 -81
  104. package/src/schemas/user.fb.schema.ts +33 -33
  105. package/src/schemas/user.google.schema.ts +24 -24
  106. package/src/schemas/user.ok.schema.ts +52 -52
  107. package/src/schemas/user.schema.ts +182 -182
  108. package/src/schemas/user.tg.schema.ts +30 -30
  109. package/src/schemas/user.vk.schema.ts +70 -70
  110. package/src/schemas/user.ya.schema.ts +24 -24
  111. package/src/schemas/welcome.schema.ts +45 -45
  112. package/src/utils.ts +3 -3
@@ -1,20 +1,20 @@
1
- import { Injectable } from '@nestjs/common';
2
- import { InjectModel } from '@nestjs/mongoose';
3
- import { Model } from 'mongoose';
4
-
5
- import { Friend, FriendDocument } from '..';
6
- import { getChannelRegExpFilter } from '../utils';
7
-
8
- @Injectable()
9
- export class FriendRepository {
10
- constructor (@InjectModel(Friend.name) private friendModel: Model<FriendDocument>) {
11
- }
12
-
13
- async findFriend (channel: string, game: string): Promise<Array<Friend> | null> {
14
- return this.friendModel
15
- .find({
16
- channels: getChannelRegExpFilter(channel),
17
- })
18
- .exec();
19
- }
1
+ import { Injectable } from '@nestjs/common';
2
+ import { InjectModel } from '@nestjs/mongoose';
3
+ import { Model } from 'mongoose';
4
+
5
+ import { Friend, FriendDocument } from '..';
6
+ import { getChannelRegExpFilter } from '../utils';
7
+
8
+ @Injectable()
9
+ export class FriendRepository {
10
+ constructor (@InjectModel(Friend.name) private friendModel: Model<FriendDocument>) {
11
+ }
12
+
13
+ async findFriend (channel: string, game: string): Promise<Array<Friend> | null> {
14
+ return this.friendModel
15
+ .find({
16
+ channels: getChannelRegExpFilter(channel),
17
+ })
18
+ .exec();
19
+ }
20
20
  }
@@ -1,15 +1,15 @@
1
- import { Injectable } from '@nestjs/common';
2
- import { InjectModel } from '@nestjs/mongoose';
3
- import { Model } from 'mongoose';
4
-
5
- import { GameResult, GameResultDocument } from '../';
6
-
7
- @Injectable()
8
- export class GameResultRepository {
9
- constructor (@InjectModel(GameResult.name) private gameResultModel: Model<GameResultDocument>) {
10
- }
11
-
12
- public async createGameResult (gameResult: Partial<GameResult>): Promise<GameResult> {
13
- return this.gameResultModel.create(gameResult);
14
- }
15
- }
1
+ import { Injectable } from '@nestjs/common';
2
+ import { InjectModel } from '@nestjs/mongoose';
3
+ import { Model } from 'mongoose';
4
+
5
+ import { GameResult, GameResultDocument } from '../';
6
+
7
+ @Injectable()
8
+ export class GameResultRepository {
9
+ constructor (@InjectModel(GameResult.name) private gameResultModel: Model<GameResultDocument>) {
10
+ }
11
+
12
+ public async createGameResult (gameResult: Partial<GameResult>): Promise<GameResult> {
13
+ return this.gameResultModel.create(gameResult);
14
+ }
15
+ }
@@ -1,21 +1,21 @@
1
- import { Injectable } from '@nestjs/common';
2
- import { InjectModel } from '@nestjs/mongoose';
3
- import { Model } from 'mongoose';
4
-
5
- import { GameStatistic, GameStatisticDocument } from '..';
6
- import { getChannelRegExpFilter } from '../utils';
7
-
8
- @Injectable()
9
- export class GameStatisticRepository {
10
- constructor (@InjectModel(GameStatistic.name) private gameStatisticModel: Model<GameStatisticDocument>) {
11
- }
12
-
13
- async findGameStatistic (channel: string, game: string): Promise<Array<GameStatistic> | null> {
14
- return this.gameStatisticModel
15
- .find({
16
- channels: getChannelRegExpFilter(channel),
17
- })
18
- .exec();
19
- }
20
- }
21
-
1
+ import { Injectable } from '@nestjs/common';
2
+ import { InjectModel } from '@nestjs/mongoose';
3
+ import { Model } from 'mongoose';
4
+
5
+ import { GameStatistic, GameStatisticDocument } from '..';
6
+ import { getChannelRegExpFilter } from '../utils';
7
+
8
+ @Injectable()
9
+ export class GameStatisticRepository {
10
+ constructor (@InjectModel(GameStatistic.name) private gameStatisticModel: Model<GameStatisticDocument>) {
11
+ }
12
+
13
+ async findGameStatistic (channel: string, game: string): Promise<Array<GameStatistic> | null> {
14
+ return this.gameStatisticModel
15
+ .find({
16
+ channels: getChannelRegExpFilter(channel),
17
+ })
18
+ .exec();
19
+ }
20
+ }
21
+
@@ -1,57 +1,59 @@
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
- import { RuleRepository } from './rule.repository';
12
- import { RatingRepository } from './rating.repository';
13
- import { GameStatisticRepository } from './game-statistic.repository';
14
- import { FriendRepository } from './friend.repository';
15
- import { SettingRepository } from './setting.repository';
16
- import { PremiumRepository } from './premium.repository';
17
- import { WelcomeRepository } from './welcome.repository';
18
- import { DailyBonusRepository } from './daily-bonus.repository';
19
- import { RoomsRepository } from './rooms.repository';
20
- import { GameResultRepository } from './game-result.repository';
21
- import { BalanceHistoryRepository } from './balance-history.repository';
22
- import { SimpleRoomsRepository } from './simple-rooms.repository';
23
- import { TournamentOneTableRoomsRepository } from './tournament-one-table-rooms.repository';
24
- import { TournamentManyTablesRoomsRepository } from './tournament-many-tables-rooms.repository';
25
- import { ActivityLogRepository } from './activity-log.repository';
26
- import { AchievementRepository } from './achievement.repository';
27
- import { PurchaseRepository } from './purchase.repository';
28
-
29
- export {
30
- AdminRepository,
31
- ArticleRepository,
32
- BannersRepository,
33
- ComplainsRepository,
34
- NotificationRepository,
35
- ProductsRepository,
36
- ScheduledTournamentsRepository,
37
- ServersRepository,
38
- UsersRepository,
39
- MenuRepository,
40
- RatingRepository,
41
- GameStatisticRepository,
42
- RuleRepository,
43
- FriendRepository,
44
- SettingRepository,
45
- PremiumRepository,
46
- WelcomeRepository,
47
- DailyBonusRepository,
48
- RoomsRepository,
49
- GameResultRepository,
50
- BalanceHistoryRepository,
51
- SimpleRoomsRepository,
52
- TournamentOneTableRoomsRepository,
53
- TournamentManyTablesRoomsRepository,
54
- ActivityLogRepository,
55
- AchievementRepository,
56
- PurchaseRepository,
57
- }
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
+ import { RuleRepository } from './rule.repository';
12
+ import { RatingRepository } from './rating.repository';
13
+ import { GameStatisticRepository } from './game-statistic.repository';
14
+ import { FriendRepository } from './friend.repository';
15
+ import { SettingRepository } from './setting.repository';
16
+ import { PremiumRepository } from './premium.repository';
17
+ import { WelcomeRepository } from './welcome.repository';
18
+ import { DailyBonusRepository } from './daily-bonus.repository';
19
+ import { RoomsRepository } from './rooms.repository';
20
+ import { GameResultRepository } from './game-result.repository';
21
+ import { BalanceHistoryRepository } from './balance-history.repository';
22
+ import { SimpleRoomsRepository } from './simple-rooms.repository';
23
+ import { TournamentOneTableRoomsRepository } from './tournament-one-table-rooms.repository';
24
+ import { TournamentManyTablesRoomsRepository } from './tournament-many-tables-rooms.repository';
25
+ import { ActivityLogRepository } from './activity-log.repository';
26
+ import { AchievementRepository } from './achievement.repository';
27
+ import { PurchaseRepository } from './purchase.repository';
28
+ import { SettingsOptionsRepository } from './settings-options.repository';
29
+
30
+ export {
31
+ AdminRepository,
32
+ ArticleRepository,
33
+ BannersRepository,
34
+ ComplainsRepository,
35
+ NotificationRepository,
36
+ ProductsRepository,
37
+ ScheduledTournamentsRepository,
38
+ ServersRepository,
39
+ UsersRepository,
40
+ MenuRepository,
41
+ RatingRepository,
42
+ GameStatisticRepository,
43
+ RuleRepository,
44
+ FriendRepository,
45
+ SettingRepository,
46
+ PremiumRepository,
47
+ WelcomeRepository,
48
+ DailyBonusRepository,
49
+ RoomsRepository,
50
+ GameResultRepository,
51
+ BalanceHistoryRepository,
52
+ SimpleRoomsRepository,
53
+ TournamentOneTableRoomsRepository,
54
+ TournamentManyTablesRoomsRepository,
55
+ ActivityLogRepository,
56
+ AchievementRepository,
57
+ PurchaseRepository,
58
+ SettingsOptionsRepository,
59
+ }
@@ -1,21 +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
-
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
+
@@ -1,54 +1,54 @@
1
- import { Injectable } from '@nestjs/common';
2
- import { InjectModel } from '@nestjs/mongoose';
3
- import { Model } from 'mongoose';
4
-
5
- import { Notification, NotificationDocument } from '../';
6
-
7
- @Injectable()
8
- export class NotificationRepository {
9
- constructor (@InjectModel(Notification.name) private notificationModel: Model<NotificationDocument>) {
10
- }
11
-
12
- async findById (id: string): Promise<Notification | null> {
13
- return this.notificationModel
14
- .findById(id)
15
- .exec();
16
- }
17
-
18
- async findAndCount (limit: number, skip: number): Promise<{
19
- items: Array<Notification>,
20
- total: number
21
- }> {
22
- const items = await this.notificationModel
23
- .find()
24
- .sort({ createDate: -1 })
25
- .limit(limit)
26
- .skip(skip)
27
- .exec();
28
-
29
- const total = await this.notificationModel
30
- .find()
31
- .countDocuments()
32
- .exec();
33
-
34
- return { items, total };
35
- }
36
-
37
- public async crateNotification (notification: Notification): Promise<Notification> {
38
- return this.notificationModel.create(notification);
39
- }
40
-
41
- async updateNotification (notificationId: string, notification: Partial<Notification>): Promise<void> {
42
- await this.notificationModel.findByIdAndUpdate(
43
- notificationId,
44
- {
45
- $set: {
46
- ...notification,
47
- },
48
- }).exec();
49
- }
50
-
51
- public async removeNotification (notificationId: string): Promise<void> {
52
- await this.notificationModel.findByIdAndDelete(notificationId);
53
- }
54
- }
1
+ import { Injectable } from '@nestjs/common';
2
+ import { InjectModel } from '@nestjs/mongoose';
3
+ import { Model } from 'mongoose';
4
+
5
+ import { Notification, NotificationDocument } from '../';
6
+
7
+ @Injectable()
8
+ export class NotificationRepository {
9
+ constructor (@InjectModel(Notification.name) private notificationModel: Model<NotificationDocument>) {
10
+ }
11
+
12
+ async findById (id: string): Promise<Notification | null> {
13
+ return this.notificationModel
14
+ .findById(id)
15
+ .exec();
16
+ }
17
+
18
+ async findAndCount (limit: number, skip: number): Promise<{
19
+ items: Array<Notification>,
20
+ total: number
21
+ }> {
22
+ const items = await this.notificationModel
23
+ .find()
24
+ .sort({ createDate: -1 })
25
+ .limit(limit)
26
+ .skip(skip)
27
+ .exec();
28
+
29
+ const total = await this.notificationModel
30
+ .find()
31
+ .countDocuments()
32
+ .exec();
33
+
34
+ return { items, total };
35
+ }
36
+
37
+ public async crateNotification (notification: Notification): Promise<Notification> {
38
+ return this.notificationModel.create(notification);
39
+ }
40
+
41
+ async updateNotification (notificationId: string, notification: Partial<Notification>): Promise<void> {
42
+ await this.notificationModel.findByIdAndUpdate(
43
+ notificationId,
44
+ {
45
+ $set: {
46
+ ...notification,
47
+ },
48
+ }).exec();
49
+ }
50
+
51
+ public async removeNotification (notificationId: string): Promise<void> {
52
+ await this.notificationModel.findByIdAndDelete(notificationId);
53
+ }
54
+ }
@@ -1,18 +1,18 @@
1
- import { Injectable } from '@nestjs/common';
2
- import { InjectModel } from '@nestjs/mongoose';
3
- import { Model } from 'mongoose';
4
-
5
- import { Premium, PremiumDocument } from '..';
6
- import { getChannelRegExpFilter } from '../utils';
7
-
8
- @Injectable()
9
- export class PremiumRepository {
10
- constructor (@InjectModel(Premium.name) private premiumModel: Model<PremiumDocument>) {
11
- }
12
-
13
- async findPremium ( gameType: string ): Promise<Premium | null> {
14
- return this.premiumModel
15
- .findOne({ gameType })
16
- .exec();
17
- }
1
+ import { Injectable } from '@nestjs/common';
2
+ import { InjectModel } from '@nestjs/mongoose';
3
+ import { Model } from 'mongoose';
4
+
5
+ import { Premium, PremiumDocument } from '..';
6
+ import { getChannelRegExpFilter } from '../utils';
7
+
8
+ @Injectable()
9
+ export class PremiumRepository {
10
+ constructor (@InjectModel(Premium.name) private premiumModel: Model<PremiumDocument>) {
11
+ }
12
+
13
+ async findPremium ( gameType: string ): Promise<Premium | null> {
14
+ return this.premiumModel
15
+ .findOne({ gameType })
16
+ .exec();
17
+ }
18
18
  }
@@ -1,29 +1,29 @@
1
- import { Injectable } from '@nestjs/common';
2
- import { InjectModel } from '@nestjs/mongoose';
3
- import { Model } from 'mongoose';
4
-
5
- import { Product, ProductDocument } from '../';
6
- import { getChannelRegExpFilter } from '../utils';
7
-
8
- @Injectable()
9
- export class ProductsRepository {
10
- constructor (@InjectModel(Product.name) private productModel: Model<ProductDocument>) {
11
- }
12
-
13
- async findByProductId (productId: string): Promise<Product | null> {
14
- return this.productModel
15
- .findOne({ productId })
16
- .exec();
17
- }
18
-
19
- async findProducts (parentId: string | null, channel: string): Promise<Array<Product> | null> {
20
- return this.productModel
21
- .find({
22
- parentId,
23
- active: true,
24
- channels: getChannelRegExpFilter(channel),
25
- })
26
- .exec();
27
- }
28
- }
29
-
1
+ import { Injectable } from '@nestjs/common';
2
+ import { InjectModel } from '@nestjs/mongoose';
3
+ import { Model } from 'mongoose';
4
+
5
+ import { Product, ProductDocument } from '../';
6
+ import { getChannelRegExpFilter } from '../utils';
7
+
8
+ @Injectable()
9
+ export class ProductsRepository {
10
+ constructor (@InjectModel(Product.name) private productModel: Model<ProductDocument>) {
11
+ }
12
+
13
+ async findByProductId (productId: string): Promise<Product | null> {
14
+ return this.productModel
15
+ .findOne({ productId })
16
+ .exec();
17
+ }
18
+
19
+ async findProducts (parentId: string | null, channel: string): Promise<Array<Product> | null> {
20
+ return this.productModel
21
+ .find({
22
+ parentId,
23
+ active: true,
24
+ channels: getChannelRegExpFilter(channel),
25
+ })
26
+ .exec();
27
+ }
28
+ }
29
+