@messenger-box/platform-server 0.0.1-alpha.265 → 0.0.1-alpha.267

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.
@@ -0,0 +1,8 @@
1
+ import {cleanEnv,num,str}from'envalid';const config = cleanEnv(process.env,
2
+ /* start */
3
+ {
4
+ FILES_TTL: num({ default: 3600, desc: 'TTL for files cache in Seconds' }),
5
+ GRAPHQL_URL: str(),
6
+ MAIL_SEND_DEFAULT_EMAIL: str(),
7
+ APP_NAME: str(),
8
+ } /* end */);export{config};//# sourceMappingURL=env-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"env-config.js","sources":["../../src/config/env-config.ts"],"sourcesContent":[null],"names":[],"mappings":"6CAEa,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG;AAC1C;AACA;AACI,IAAA,SAAS,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,gCAAgC,EAAE,CAAC;IACzE,WAAW,EAAE,GAAG,EAAE;IAClB,uBAAuB,EAAE,GAAG,EAAE;IAC9B,QAAQ,EAAE,GAAG,EAAE;CAClB"}
@@ -1,4 +1,4 @@
1
- import {ContainerModule}from'inversify';import {ChannelService}from'../services/channel-service.js';import {PostService}from'../services/post-service.js';import'../constants/query.constants.js';import {TYPES}from'@messenger-box/core/lib/server';import {ChannelRepository}from'../store/repositories/channel-repository.js';import {PostRepository}from'../store/repositories/post-repository.js';import'../store/repositories/post-thread-repository.js';import'../store/repositories/reaction-repository.js';// import { MessageNotificationTemplateMigration } from '../migrations';
1
+ import {ContainerModule}from'inversify';import {ChannelService}from'../services/channel-service.js';import {PostService}from'../services/post-service.js';import'../services/post-thread-service.js';import'../services/reaction-service.js';import'../services/messenger-notification-service.js';import'../services/extended-token-account-service.js';import'../constants/query.constants.js';import {TYPES}from'@messenger-box/core/lib/server';import {ChannelRepository}from'../store/repositories/channel-repository.js';import {PostRepository}from'../store/repositories/post-repository.js';import'../store/repositories/post-thread-repository.js';import'../store/repositories/reaction-repository.js';// import { MessageNotificationTemplateMigration } from '../migrations';
2
2
  // import {
3
3
  // ChannelProxyService,
4
4
  // PostProxyService,
@@ -1 +1 @@
1
- {"version":3,"file":"containers.js","sources":["../../src/containers/containers.ts"],"sourcesContent":[null],"names":[],"mappings":"ofAuBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;;;;;AAKG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AAEA;;;;;AAKG;AACI,MAAM,sBAAsB,GAA6C,CAAC,QAAQ,KACrF,IAAI,eAAe,CAAC,CAAC,IAAqB,KAAI;;;;;AAK1C,IAAA,IAAI,CAAqB,KAAK,CAAC,iBAAiB,CAAC;SAC5C,EAAE,CAAC,iBAAiB,CAAC;AACrB,SAAA,gBAAgB,EAAE;AAClB,SAAA,mBAAmB,EAAE,CAAC;AAC3B,IAAA,IAAI,CAAkB,KAAK,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,gBAAgB,EAAE,CAAC,mBAAmB,EAAE,CAAC;;;;;;;;;AAYxG,IAAA,IAAI,CAAkB,KAAK,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,gBAAgB,EAAE,CAAC,mBAAmB,EAAE,CAAC;AAExG,IAAA,IAAI,CAAe,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,gBAAgB,EAAE,CAAC,mBAAmB,EAAE,CAAC;;;;;;;;;;AAYnG,CAAC"}
1
+ {"version":3,"file":"containers.js","sources":["../../src/containers/containers.ts"],"sourcesContent":[null],"names":[],"mappings":"mrBAuBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;;;;;AAKG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AAEA;;;;;AAKG;AACI,MAAM,sBAAsB,GAA6C,CAAC,QAAQ,KACrF,IAAI,eAAe,CAAC,CAAC,IAAqB,KAAI;;;;;AAK1C,IAAA,IAAI,CAAqB,KAAK,CAAC,iBAAiB,CAAC;SAC5C,EAAE,CAAC,iBAAiB,CAAC;AACrB,SAAA,gBAAgB,EAAE;AAClB,SAAA,mBAAmB,EAAE,CAAC;AAC3B,IAAA,IAAI,CAAkB,KAAK,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,gBAAgB,EAAE,CAAC,mBAAmB,EAAE,CAAC;;;;;;;;;AAYxG,IAAA,IAAI,CAAkB,KAAK,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,gBAAgB,EAAE,CAAC,mBAAmB,EAAE,CAAC;AAExG,IAAA,IAAI,CAAe,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,gBAAgB,EAAE,CAAC,mBAAmB,EAAE,CAAC;;;;;;;;;;AAYnG,CAAC"}
@@ -0,0 +1,44 @@
1
+ import {__decorate,__param}from'tslib';import {TYPES}from'@adminide-stack/account-api-core';import {injectable,inject}from'inversify';import {CommonType}from'@common-stack/core';let ExtendedTokenAccountService = class ExtendedTokenAccountService {
2
+ constructor(accountRepository, broker) {
3
+ this.accountRepository = accountRepository;
4
+ this.broker = broker;
5
+ }
6
+ /**
7
+ *
8
+ * @param deviceToken
9
+ * @param accountId
10
+ *
11
+ * tokens: [{
12
+ * type: 'MOBILE_DEVICE_PUSH',
13
+ * token: 'deviceName:xdfjdljfdljfllk',
14
+ * }]
15
+ */
16
+ async setDeviceToken(deviceToken, accountId) {
17
+ const userAccount = await this.accountRepository.get({ id: accountId });
18
+ const updatedTokens = userAccount.tokens || [];
19
+ updatedTokens.push();
20
+ const mobileToken = {
21
+ type: "EXPO_NOTIFICATION_TOKEN" /* ITokenTypesEnum.ExpoNotificationToken */,
22
+ token: deviceToken,
23
+ refreshedCount: 0,
24
+ usedCount: 0,
25
+ };
26
+ return this.accountRepository.update({ _id: accountId }, {
27
+ $push: {
28
+ tokens: mobileToken
29
+ }
30
+ });
31
+ }
32
+ async removeDeviceToken(deviceToken, accountId) {
33
+ return this.accountRepository.update({ _id: accountId }, {
34
+ $pull: {
35
+ tokens: Object.assign({}, deviceToken)
36
+ }
37
+ });
38
+ }
39
+ };
40
+ ExtendedTokenAccountService = __decorate([
41
+ injectable(),
42
+ __param(0, inject(TYPES.IAccountRepository)),
43
+ __param(1, inject(CommonType.MOLECULER_BROKER))
44
+ ], ExtendedTokenAccountService);export{ExtendedTokenAccountService};//# sourceMappingURL=extended-token-account-service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extended-token-account-service.js","sources":["../../src/services/extended-token-account-service.ts"],"sourcesContent":[null],"names":["AccountTypes"],"mappings":"kLAYa,IAAA,2BAA2B,GAAjC,MAAM,2BAA2B,CAAA;IACpC,WAEqB,CAAA,iBAAqC,EAErC,MAAqB,EAAA;QAFrB,IAAiB,CAAA,iBAAA,GAAjB,iBAAiB,CAAoB;QAErC,IAAM,CAAA,MAAA,GAAN,MAAM,CAAe;KACtC;AAEJ;;;;;;;;;AASG;AACH,IAAA,MAAM,cAAc,CAAC,WAAmB,EAAE,SAAiB,EAAA;AACvD,QAAA,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC;AACxE,QAAA,MAAM,aAAa,GAAG,WAAW,CAAC,MAAM,IAAI,EAAE,CAAC;QAC/C,aAAa,CAAC,IAAI,EAAE,CAAC;AACrB,QAAA,MAAM,WAAW,GAAG;AAChB,YAAA,IAAI,EAAE,yBAA4C;AAClD,YAAA,KAAK,EAAE,WAAW;AAClB,YAAA,cAAc,EAAE,CAAC;AACjB,YAAA,SAAS,EAAE,CAAC;SACf,CAAC;QACF,OAAO,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE;AACjD,YAAA,KAAK,EAAE;AACH,gBAAA,MAAM,EAAE,WAAW;AACrB,aAAA;AACT,SAAA,CAAC,CAAC;KACN;AAGD,IAAA,MAAM,iBAAiB,CAAC,WAAyB,EAAE,SAAiB,EAAA;QAChE,OAAO,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE;AACrD,YAAA,KAAK,EAAE;gBACH,MAAM,EAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAO,WAAW,CAAE;AAC7B,aAAA;AACJ,SAAA,CAAC,CAAA;KACL;EASJ;AAnDY,2BAA2B,GAAA,UAAA,CAAA;AADvC,IAAA,UAAU,EAAE;AAGJ,IAAA,OAAA,CAAA,CAAA,EAAA,MAAM,CAACA,KAAY,CAAC,kBAAkB,CAAC,CAAA;AAEvC,IAAA,OAAA,CAAA,CAAA,EAAA,MAAM,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAA;AAJ/B,CAAA,EAAA,2BAA2B,CAmDvC"}
@@ -1,2 +1,6 @@
1
1
  export * from './channel-service';
2
2
  export * from './post-service';
3
+ export * from './post-thread-service';
4
+ export * from './reaction-service';
5
+ export * from './messenger-notification-service';
6
+ export * from './extended-token-account-service';
@@ -0,0 +1,158 @@
1
+ import {__decorate,__param}from'tslib';import {omit}from'lodash';import sub from'date-fns/sub';import compareAsc from'date-fns/compareAsc';import {IMoleculerServiceName,ISmsServiceActions}from'@messenger-box/notification-api-core';import {injectable,inject}from'inversify';import {IMoleculerServiceName as IMoleculerServiceName$1,IAccountServiceAction}from'@adminide-stack/core';import {CommonType}from'@common-stack/core';import'../constants/query.constants.js';import {TYPES}from'@messenger-box/core/lib/server';import {config}from'../config/env-config.js';let MessengerNotificationService = class MessengerNotificationService {
2
+ constructor(channelRepository, postRepository, broker, logger) {
3
+ this.channelRepository = channelRepository;
4
+ this.postRepository = postRepository;
5
+ this.broker = broker;
6
+ this.logger = logger;
7
+ this.users = {};
8
+ this.userPreferences = {};
9
+ }
10
+ async getLatestMessageInAllChannels(unit, value) {
11
+ const today = new Date();
12
+ const lastDay = sub(today, { [unit]: value });
13
+ const channels = await this.channelRepository.model.aggregate([
14
+ {
15
+ $match: {
16
+ lastPostAt: { $gte: lastDay, $lte: today },
17
+ },
18
+ },
19
+ {
20
+ $project: {
21
+ _id: true,
22
+ lastPostAt: true,
23
+ creator: true,
24
+ members: {
25
+ $filter: {
26
+ input: '$members',
27
+ as: 'item',
28
+ cond: {
29
+ $and: [
30
+ {
31
+ $lte: ['$$item.lastViewedAt', '$lastPostAt'],
32
+ },
33
+ ],
34
+ },
35
+ },
36
+ },
37
+ },
38
+ },
39
+ ]);
40
+ const posts = await this.postRepository.getAll({
41
+ criteria: {
42
+ channel: { $in: channels.map(({ _id }) => _id) },
43
+ createdAt: { $in: channels.map(({ lastPostAt }) => lastPostAt) },
44
+ },
45
+ });
46
+ return channels.map((channel) => (Object.assign(Object.assign({}, channel), {
47
+ // eslint-disable-next-line no-underscore-dangle
48
+ post: posts.find((post) => post.channel.toString() === channel._id.toString()) })));
49
+ }
50
+ groupByMember(channels) {
51
+ return channels.reduce((acc, curr) => {
52
+ const members = this.findMembersWithUnreadMessage(curr);
53
+ const channelWithoutMembers = omit(curr, ['members']);
54
+ return members.reduce((memberAcc, memberCurr) => (Object.assign(Object.assign({}, acc), { [memberCurr.user.toString()]: Array.isArray(memberAcc[memberCurr.user.toString()])
55
+ ? [...memberAcc[memberCurr.user.toString()], channelWithoutMembers]
56
+ : [channelWithoutMembers] })), acc);
57
+ }, {});
58
+ }
59
+ findMembersWithUnreadMessage(channelMessage) {
60
+ return channelMessage.members.filter(({ lastViewedAt }) => compareAsc(channelMessage.lastPostAt, lastViewedAt), []);
61
+ }
62
+ async sendMail(user, channels) {
63
+ this.logger.debug('Outgoing request to SendMail', { user: this.users[user], channels });
64
+ const { notificationEmail, email, username } = this.users[user];
65
+ await this.broker.call(`${"MailService" /* IMailMoleculerServiceName.MailService */}.${"send" /* IMailServiceAction.send */}`, {
66
+ request: {
67
+ topic: 'Unread Messages Notification',
68
+ to: notificationEmail || email,
69
+ templateId: "MessageNotificationServiceId" /* IMailTemplateId.MessageNotificationServiceId */,
70
+ from: config.MAIL_SEND_DEFAULT_EMAIL,
71
+ subject: `You have Unread Messages in ${channels.length} chats`,
72
+ variables: {
73
+ text: `Hey ${username},\nYou have Unread Messages in ${channels.length} chats`,
74
+ user,
75
+ channel: channels,
76
+ },
77
+ },
78
+ });
79
+ }
80
+ async sendText(user, channels) {
81
+ this.logger.debug('Outgoing request to SendSMS', { user: this.users[user], channels });
82
+ // #Todo Get User Full Name and Phone Number
83
+ const { username, phoneNumber } = this.users[user];
84
+ const [number] = phoneNumber;
85
+ if (!number) {
86
+ this.logger.debug('Outgoing request to SendSMS Skipped, reason No phoneNumber found', {
87
+ user: this.users[user],
88
+ channels,
89
+ });
90
+ }
91
+ await this.broker.call(`${IMoleculerServiceName.SmsService}.${ISmsServiceActions.Send}`, {
92
+ to: number,
93
+ body: `Hey ${username},\nYou have Unread Messages in ${channels.length} chats`,
94
+ });
95
+ }
96
+ async sendPushNotifications(user, channels) {
97
+ // #Todo Dispatch Push notification once support is added
98
+ this.logger.debug('Outgoing request to SendPushNotification', { user: this.users[user], channels });
99
+ return Promise.resolve();
100
+ }
101
+ getGlobalNotificationSettings(user) {
102
+ // #Todo fetch from preferences
103
+ return Promise.resolve({
104
+ global: {
105
+ notification: {
106
+ offlineMessages: {
107
+ sms: true,
108
+ email: true,
109
+ browser: true,
110
+ },
111
+ },
112
+ },
113
+ });
114
+ }
115
+ async getUser(id) {
116
+ return this.broker.call(`${IMoleculerServiceName$1.AccountUser}.${IAccountServiceAction.FindAccountById}`, {
117
+ id,
118
+ });
119
+ }
120
+ async fetchUsersForMembers(users) {
121
+ return Promise.all(users
122
+ .filter((user) => !Object.keys(this.users).includes(user))
123
+ .map(async (user) => {
124
+ this.users[user] = await this.getUser(user);
125
+ this.userPreferences[user] = await this.getGlobalNotificationSettings(user);
126
+ }));
127
+ }
128
+ async sendNotificationToUser([user, channels]) {
129
+ var _a, _b, _c;
130
+ await this.fetchUsersForMembers([user, ...channels.map(({ post }) => post.editedBy.toString())]);
131
+ const { email, sms, browser } = ((_c = (_b = (_a = this.userPreferences[user]) === null || _a === void 0 ? void 0 : _a.global) === null || _b === void 0 ? void 0 : _b.notification) === null || _c === void 0 ? void 0 : _c.offlineMessages) || {};
132
+ const filteredChannels = channels.filter(({ post }) => user !== post.editedBy.toString());
133
+ if ((filteredChannels === null || filteredChannels === void 0 ? void 0 : filteredChannels.length) === 0) {
134
+ return;
135
+ }
136
+ if (email) {
137
+ await this.sendMail(user, filteredChannels);
138
+ }
139
+ if (sms) {
140
+ await this.sendText(user, filteredChannels);
141
+ }
142
+ if (browser) {
143
+ await this.sendPushNotifications(user, filteredChannels);
144
+ }
145
+ }
146
+ async sendNotificationOfUnreadMessages(unit, value) {
147
+ const channels = await this.getLatestMessageInAllChannels(unit, value);
148
+ const membersWithUnreadMessagesInChannels = this.groupByMember(channels);
149
+ await Promise.all(Object.entries(membersWithUnreadMessagesInChannels).map(this.sendNotificationToUser.bind(this)));
150
+ }
151
+ };
152
+ MessengerNotificationService = __decorate([
153
+ injectable(),
154
+ __param(0, inject(TYPES.ChannelRepository)),
155
+ __param(1, inject(TYPES.PostRepository)),
156
+ __param(2, inject(CommonType.MOLECULER_BROKER)),
157
+ __param(3, inject('Logger'))
158
+ ], MessengerNotificationService);export{MessengerNotificationService};//# sourceMappingURL=messenger-notification-service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messenger-notification-service.js","sources":["../../src/services/messenger-notification-service.ts"],"sourcesContent":[null],"names":["INotificationMoleculerServiceName","IMoleculerServiceName"],"mappings":"+iBA4Ba,IAAA,4BAA4B,GAAlC,MAAM,4BAA4B,CAAA;AAKrC,IAAA,WAAA,CAEqB,iBAAqC,EAErC,cAA+B,EAE/B,MAAqB,EAErB,MAAc,EAAA;QANd,IAAiB,CAAA,iBAAA,GAAjB,iBAAiB,CAAoB;QAErC,IAAc,CAAA,cAAA,GAAd,cAAc,CAAiB;QAE/B,IAAM,CAAA,MAAA,GAAN,MAAM,CAAe;QAErB,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;QAZnC,IAAK,CAAA,KAAA,GAAiC,EAAE,CAAC;QAEzC,IAAe,CAAA,eAAA,GAAuC,EAAE,CAAC;KAWrD;AAEI,IAAA,MAAM,6BAA6B,CACvC,IAAkC,EAClC,KAAa,EAAA;AAEb,QAAA,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC;AACzB,QAAA,MAAM,OAAO,GAAG,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,GAAG,KAAK,EAAE,CAAC,CAAC;QAC9C,MAAM,QAAQ,GAAG,MAAO,IAAI,CAAC,iBAAyB,CAAC,KAAK,CAAC,SAAS,CAAC;AACnE,YAAA;AACI,gBAAA,MAAM,EAAE;oBACJ,UAAU,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE;AAC7C,iBAAA;AACJ,aAAA;AACD,YAAA;AACI,gBAAA,QAAQ,EAAE;AACN,oBAAA,GAAG,EAAE,IAAI;AACT,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,OAAO,EAAE,IAAI;AACb,oBAAA,OAAO,EAAE;AACL,wBAAA,OAAO,EAAE;AACL,4BAAA,KAAK,EAAE,UAAU;AACjB,4BAAA,EAAE,EAAE,MAAM;AACV,4BAAA,IAAI,EAAE;AACF,gCAAA,IAAI,EAAE;AACF,oCAAA;AACI,wCAAA,IAAI,EAAE,CAAC,qBAAqB,EAAE,aAAa,CAAC;AAC/C,qCAAA;AACJ,iCAAA;AACJ,6BAAA;AACJ,yBAAA;AACJ,qBAAA;AACJ,iBAAA;AACJ,aAAA;AACJ,SAAA,CAAC,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC;AAC3C,YAAA,QAAQ,EAAE;AACN,gBAAA,OAAO,EAAE,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC,EAAE;AAChD,gBAAA,SAAS,EAAE,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,KAAK,UAAU,CAAC,EAAE;AACnE,aAAA;AACJ,SAAA,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,MAAK,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAC1B,OAAO,CAAA,EAAA;;YAEV,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,KAAK,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,EAChF,CAAA,CAAA,CAAC,CAAC;KACP;AAEO,IAAA,aAAa,CAAC,QAA4B,EAAA;QAC9C,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,KAAI;YACjC,MAAM,OAAO,GAAG,IAAI,CAAC,4BAA4B,CAAC,IAAI,CAAC,CAAC;YACxD,MAAM,qBAAqB,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;AACtD,YAAA,OAAO,OAAO,CAAC,MAAM,CACjB,CAAC,SAAS,EAAE,UAAU,MACf,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,GAAG,CACN,EAAA,EAAA,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;AAC9E,sBAAE,CAAC,GAAG,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,EAAE,qBAAqB,CAAC;sBACjE,CAAC,qBAAqB,CAAC,IAC/B,EACF,GAAG,CACN,CAAC;SACL,EAAE,EAAE,CAAC,CAAC;KACV;AAEO,IAAA,4BAA4B,CAAC,cAAgC,EAAA;QACjE,OAAO,cAAc,CAAC,OAAO,CAAC,MAAM,CAChC,CAAC,EAAE,YAAY,EAAE,KAAK,UAAU,CAAC,cAAc,CAAC,UAAU,EAAE,YAAY,CAAC,EACzE,EAAE,CACL,CAAC;KACL;AAEO,IAAA,MAAM,QAAQ,CAAC,IAAY,EAAE,QAA4B,EAAA;QAC7D,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,8BAA8B,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;AACxF,QAAA,MAAM,EAAE,iBAAiB,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAChE,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,EAAG,aAAqC,6CAAA,CAAA,EAAI,MAAuB,+BAAA,CAAE,EAAE;AAC1F,YAAA,OAAO,EAAE;AACL,gBAAA,KAAK,EAAE,8BAA8B;gBACrC,EAAE,EAAE,iBAAiB,IAAI,KAAK;AAC9B,gBAAA,UAAU,EAA8C,8BAAA;gBACxD,IAAI,EAAE,MAAM,CAAC,uBAAuB;AACpC,gBAAA,OAAO,EAAE,CAAA,4BAAA,EAA+B,QAAQ,CAAC,MAAM,CAAQ,MAAA,CAAA;AAC/D,gBAAA,SAAS,EAAE;AACP,oBAAA,IAAI,EAAE,CAAO,IAAA,EAAA,QAAQ,kCAAkC,QAAQ,CAAC,MAAM,CAAQ,MAAA,CAAA;oBAC9E,IAAI;AACJ,oBAAA,OAAO,EAAE,QAAQ;AACpB,iBAAA;AACJ,aAAA;AACJ,SAAA,CAAC,CAAC;KACN;AAEO,IAAA,MAAM,QAAQ,CAAC,IAAY,EAAE,QAA4B,EAAA;QAC7D,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,6BAA6B,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;;AAEvF,QAAA,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AACnD,QAAA,MAAM,CAAC,MAAM,CAAC,GAAG,WAAW,CAAC;QAC7B,IAAI,CAAC,MAAM,EAAE;AACT,YAAA,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,kEAAkE,EAAE;AAClF,gBAAA,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;gBACtB,QAAQ;AACX,aAAA,CAAC,CAAC;AACN,SAAA;AACD,QAAA,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,EAAGA,qBAAiC,CAAC,UAAU,CAAI,CAAA,EAAA,kBAAkB,CAAC,IAAI,EAAE,EAAE;AACjG,YAAA,EAAE,EAAE,MAAM;AACV,YAAA,IAAI,EAAE,CAAO,IAAA,EAAA,QAAQ,kCAAkC,QAAQ,CAAC,MAAM,CAAQ,MAAA,CAAA;AACjF,SAAA,CAAC,CAAC;KACN;AAEO,IAAA,MAAM,qBAAqB,CAAC,IAAY,EAAE,QAA4B,EAAA;;QAE1E,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,0CAA0C,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;AACpG,QAAA,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;KAC5B;AAEO,IAAA,6BAA6B,CAAC,IAAY,EAAA;;QAE9C,OAAO,OAAO,CAAC,OAAO,CAAC;AACnB,YAAA,MAAM,EAAE;AACJ,gBAAA,YAAY,EAAE;AACV,oBAAA,eAAe,EAAE;AACb,wBAAA,GAAG,EAAE,IAAI;AACT,wBAAA,KAAK,EAAE,IAAI;AACX,wBAAA,OAAO,EAAE,IAAI;AAChB,qBAAA;AACJ,iBAAA;AACJ,aAAA;AACJ,SAAA,CAAC,CAAC;KACN;IAEO,MAAM,OAAO,CAAC,EAAU,EAAA;AAC5B,QAAA,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CACnB,CAAA,EAAGC,uBAAqB,CAAC,WAAW,CAAI,CAAA,EAAA,qBAAqB,CAAC,eAAe,EAAE,EAC/E;YACI,EAAE;AACL,SAAA,CACJ,CAAC;KACL;IAEO,MAAM,oBAAoB,CAAC,KAAe,EAAA;AAC9C,QAAA,OAAO,OAAO,CAAC,GAAG,CACd,KAAK;aACA,MAAM,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AACzD,aAAA,GAAG,CAAC,OAAO,IAAI,KAAI;AAChB,YAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AAC5C,YAAA,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,MAAM,IAAI,CAAC,6BAA6B,CAAC,IAAI,CAAC,CAAC;SAC/E,CAAC,CACT,CAAC;KACL;AAEO,IAAA,MAAM,sBAAsB,CAAC,CAAC,IAAI,EAAE,QAAQ,CAA+B,EAAA;;AAC/E,QAAA,MAAM,IAAI,CAAC,oBAAoB,CAAC,CAAC,IAAI,EAAE,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC;QACjG,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,CAAA,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,MAAM,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,YAAY,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,eAAe,KAAI,EAAE,CAAC;QACxG,MAAM,gBAAgB,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,IAAI,KAAK,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC1F,IAAI,CAAA,gBAAgB,KAAA,IAAA,IAAhB,gBAAgB,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAhB,gBAAgB,CAAE,MAAM,MAAK,CAAC,EAAE;YAChC,OAAO;AACV,SAAA;AACD,QAAA,IAAI,KAAK,EAAE;YACP,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;AAC/C,SAAA;AACD,QAAA,IAAI,GAAG,EAAE;YACL,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;AAC/C,SAAA;AACD,QAAA,IAAI,OAAO,EAAE;YACT,MAAM,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;AAC5D,SAAA;KACJ;AAED,IAAA,MAAM,gCAAgC,CAAC,IAAkC,EAAE,KAAa,EAAA;QACpF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,6BAA6B,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACvE,MAAM,mCAAmC,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QACzE,MAAM,OAAO,CAAC,GAAG,CACb,MAAM,CAAC,OAAO,CAAC,mCAAmC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAClG,CAAC;KACL;EACJ;AA5LY,4BAA4B,GAAA,UAAA,CAAA;AADxC,IAAA,UAAU,EAAE;AAOJ,IAAA,OAAA,CAAA,CAAA,EAAA,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAA;AAE/B,IAAA,OAAA,CAAA,CAAA,EAAA,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,CAAA;AAE5B,IAAA,OAAA,CAAA,CAAA,EAAA,MAAM,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAA;AAEnC,IAAA,OAAA,CAAA,CAAA,EAAA,MAAM,CAAC,QAAQ,CAAC,CAAA;AAZZ,CAAA,EAAA,4BAA4B,CA4LxC"}
@@ -0,0 +1,10 @@
1
+ import {__decorate,__param}from'tslib';import {injectable,inject}from'inversify';import {BaseService}from'@common-stack/store-mongo';import'../constants/query.constants.js';import {TYPES}from'@messenger-box/core/lib/server';let PostThreadService = class PostThreadService extends BaseService {
2
+ constructor(repository) {
3
+ super(repository);
4
+ this.repository = repository;
5
+ }
6
+ };
7
+ PostThreadService = __decorate([
8
+ injectable(),
9
+ __param(0, inject(TYPES.PostThreadRepository))
10
+ ], PostThreadService);export{PostThreadService};//# sourceMappingURL=post-thread-service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"post-thread-service.js","sources":["../../src/services/post-thread-service.ts"],"sourcesContent":[null],"names":[],"mappings":"gOAOO,IAAM,iBAAiB,GAAvB,MAAM,iBAAkB,SAAQ,WAAwB,CAAA;AAC3D,IAAA,WAAA,CAEa,UAAiC,EAAA;QAE1C,KAAK,CAAC,UAAU,CAAC,CAAC;QAFT,IAAU,CAAA,UAAA,GAAV,UAAU,CAAuB;KAG7C;EACJ;AAPY,iBAAiB,GAAA,UAAA,CAAA;AAD7B,IAAA,UAAU,EAAE;AAGJ,IAAA,OAAA,CAAA,CAAA,EAAA,MAAM,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAA;AAF9B,CAAA,EAAA,iBAAiB,CAO7B"}
@@ -0,0 +1,10 @@
1
+ import {__decorate,__param}from'tslib';import {injectable,inject}from'inversify';import {BaseService}from'@common-stack/store-mongo';import'../constants/query.constants.js';import {TYPES}from'@messenger-box/core/lib/server';let ReactionService = class ReactionService extends BaseService {
2
+ constructor(reactionRepository) {
3
+ super(reactionRepository);
4
+ this.reactionRepository = reactionRepository;
5
+ }
6
+ };
7
+ ReactionService = __decorate([
8
+ injectable(),
9
+ __param(0, inject(TYPES.ReactionRepository))
10
+ ], ReactionService);export{ReactionService};//# sourceMappingURL=reaction-service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reaction-service.js","sources":["../../src/services/reaction-service.ts"],"sourcesContent":[null],"names":[],"mappings":"gOAOO,IAAM,eAAe,GAArB,MAAM,eACT,SAAQ,WAAsE,CAAA;AAG9E,IAAA,WAAA,CAEa,kBAAuC,EAAA;QAEhD,KAAK,CAAC,kBAA2B,CAAC,CAAC;QAF1B,IAAkB,CAAA,kBAAA,GAAlB,kBAAkB,CAAqB;KAGnD;EACJ;AAVY,eAAe,GAAA,UAAA,CAAA;AAD3B,IAAA,UAAU,EAAE;AAMJ,IAAA,OAAA,CAAA,CAAA,EAAA,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAA;AAL5B,CAAA,EAAA,eAAe,CAU3B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@messenger-box/platform-server",
3
- "version": "0.0.1-alpha.265",
3
+ "version": "0.0.1-alpha.267",
4
4
  "description": "Sample core for higher packages to depend on",
5
5
  "license": "ISC",
6
6
  "author": "CDMBase LLC",
@@ -49,5 +49,5 @@
49
49
  "typescript": {
50
50
  "definition": "lib/index.d.ts"
51
51
  },
52
- "gitHead": "c8bccf4a682601f12beea15438c05905f886d4d7"
52
+ "gitHead": "759a7cc2ad1ea7a5e114f3bb148cbdbd9b3df83c"
53
53
  }