@social.dev/server-sdk 0.0.1-alpha.34 → 0.0.1-alpha.36

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 (50) hide show
  1. package/dist/chat/chat.module.js +2 -0
  2. package/dist/chat/chat.module.js.map +1 -1
  3. package/dist/chat/chat.service.d.ts +3 -1
  4. package/dist/chat/chat.service.js +31 -10
  5. package/dist/chat/chat.service.js.map +1 -1
  6. package/dist/chat/dto/responses.dto.d.ts +4 -0
  7. package/dist/chat/dto/responses.dto.js +25 -1
  8. package/dist/chat/dto/responses.dto.js.map +1 -1
  9. package/dist/chat/entities/conversation-member.entity.js +1 -1
  10. package/dist/chat/entities/conversation-member.entity.js.map +1 -1
  11. package/dist/chat/entities/conversation.entity.d.ts +1 -0
  12. package/dist/chat/entities/conversation.entity.js +8 -1
  13. package/dist/chat/entities/conversation.entity.js.map +1 -1
  14. package/dist/chat/entities/message.entity.js.map +1 -1
  15. package/dist/common/decorators/api-paginated-response.d.ts +1 -1
  16. package/dist/common/decorators/api-paginated-response.js +2 -2
  17. package/dist/common/decorators/api-paginated-response.js.map +1 -1
  18. package/dist/notification/notification.module.js +3 -13
  19. package/dist/notification/notification.module.js.map +1 -1
  20. package/dist/notification/push-notification.module.d.ts +2 -0
  21. package/dist/notification/push-notification.module.js +27 -0
  22. package/dist/notification/push-notification.module.js.map +1 -0
  23. package/dist/tsconfig.build.tsbuildinfo +1 -1
  24. package/dist/user/avatar/avatar.controller.d.ts +10 -0
  25. package/dist/user/avatar/avatar.controller.js +89 -0
  26. package/dist/user/avatar/avatar.controller.js.map +1 -0
  27. package/dist/user/avatar/avatar.service.d.ts +12 -0
  28. package/dist/user/avatar/avatar.service.js +57 -0
  29. package/dist/user/avatar/avatar.service.js.map +1 -0
  30. package/dist/user/dto/update-profile.dto.d.ts +3 -0
  31. package/dist/user/dto/update-profile.dto.js +26 -0
  32. package/dist/user/dto/update-profile.dto.js.map +1 -0
  33. package/dist/user/dto/user-response.dto.d.ts +4 -0
  34. package/dist/user/dto/user-response.dto.js +29 -1
  35. package/dist/user/dto/user-response.dto.js.map +1 -1
  36. package/dist/user/entities/user.entity.d.ts +2 -0
  37. package/dist/user/entities/user.entity.js +9 -1
  38. package/dist/user/entities/user.entity.js.map +1 -1
  39. package/dist/user/user.controller.d.ts +2 -0
  40. package/dist/user/user.controller.js +27 -0
  41. package/dist/user/user.controller.js.map +1 -1
  42. package/dist/user/user.module.js +6 -2
  43. package/dist/user/user.module.js.map +1 -1
  44. package/dist/user/user.service.d.ts +2 -2
  45. package/dist/user/user.service.js +3 -2
  46. package/dist/user/user.service.js.map +1 -1
  47. package/package.json +2 -2
  48. package/dist/user/dto/update-user.dto.d.ts +0 -5
  49. package/dist/user/dto/update-user.dto.js +0 -13
  50. package/dist/user/dto/update-user.dto.js.map +0 -1
@@ -15,6 +15,7 @@ const conversation_entity_1 = require("./entities/conversation.entity");
15
15
  const message_entity_1 = require("./entities/message.entity");
16
16
  const conversation_member_entity_1 = require("./entities/conversation-member.entity");
17
17
  const hook_module_1 = require("../core/hook/hook.module");
18
+ const push_notification_module_1 = require("../notification/push-notification.module");
18
19
  let ChatModule = class ChatModule {
19
20
  };
20
21
  exports.ChatModule = ChatModule;
@@ -27,6 +28,7 @@ exports.ChatModule = ChatModule = __decorate([
27
28
  message_entity_1.ChatMessage,
28
29
  ]),
29
30
  hook_module_1.HookModule,
31
+ push_notification_module_1.PushNotificationModule,
30
32
  ],
31
33
  controllers: [chat_controller_1.ChatController],
32
34
  providers: [chat_service_1.ChatService],
@@ -1 +1 @@
1
- {"version":3,"file":"chat.module.js","sourceRoot":"","sources":["../../src/chat/chat.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,uDAAmD;AACnD,iDAA6C;AAC7C,6CAAgD;AAChD,wEAAkE;AAClE,8DAAwD;AACxD,sFAA+E;AAE/E,0DAAqD;AAe9C,IAAM,UAAU,GAAhB,MAAM,UAAU;CAAG,CAAA;AAAb,gCAAU;qBAAV,UAAU;IAbtB,IAAA,eAAM,EAAC;QACN,OAAO,EAAE;YACP,uBAAa,CAAC,UAAU,CAAC;gBACvB,sCAAgB;gBAChB,mDAAsB;gBACtB,4BAAW;aACZ,CAAC;YACF,wBAAU;SACX;QACD,WAAW,EAAE,CAAC,gCAAc,CAAC;QAC7B,SAAS,EAAE,CAAC,0BAAW,CAAC;QACxB,OAAO,EAAE,CAAC,0BAAW,CAAC;KACvB,CAAC;GACW,UAAU,CAAG"}
1
+ {"version":3,"file":"chat.module.js","sourceRoot":"","sources":["../../src/chat/chat.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,uDAAmD;AACnD,iDAA6C;AAC7C,6CAAgD;AAChD,wEAAkE;AAClE,8DAAwD;AACxD,sFAA+E;AAC/E,0DAAqD;AACrD,uFAAiF;AAgB1E,IAAM,UAAU,GAAhB,MAAM,UAAU;CAAG,CAAA;AAAb,gCAAU;qBAAV,UAAU;IAdtB,IAAA,eAAM,EAAC;QACN,OAAO,EAAE;YACP,uBAAa,CAAC,UAAU,CAAC;gBACvB,sCAAgB;gBAChB,mDAAsB;gBACtB,4BAAW;aACZ,CAAC;YACF,wBAAU;YACV,iDAAsB;SACvB;QACD,WAAW,EAAE,CAAC,gCAAc,CAAC;QAC7B,SAAS,EAAE,CAAC,0BAAW,CAAC;QACxB,OAAO,EAAE,CAAC,0BAAW,CAAC;KACvB,CAAC;GACW,UAAU,CAAG"}
@@ -4,13 +4,15 @@ import { ChatMessage } from './entities/message.entity';
4
4
  import { CreateConversationDto } from './dto/create-conversation.dto';
5
5
  import { ChatConversationMember } from './entities/conversation-member.entity';
6
6
  import { HookService } from '~/core/hook/hook.service';
7
+ import { PushNotificationService } from '~/notification/push-notification.service';
7
8
  export declare class ChatService {
8
9
  private conversationRepositoy;
9
10
  private memberRepositoy;
10
11
  private messageRepositoy;
11
12
  private dataSource;
12
13
  private hookService;
13
- constructor(conversationRepositoy: Repository<ChatConversation>, memberRepositoy: Repository<ChatConversationMember>, messageRepositoy: Repository<ChatMessage>, dataSource: DataSource, hookService: HookService);
14
+ private pushService;
15
+ constructor(conversationRepositoy: Repository<ChatConversation>, memberRepositoy: Repository<ChatConversationMember>, messageRepositoy: Repository<ChatMessage>, dataSource: DataSource, hookService: HookService, pushService: PushNotificationService);
14
16
  private findExistingOneOnOneConversation;
15
17
  createConversation(dto: CreateConversationDto): Promise<ChatConversation>;
16
18
  getConversation(id: number): Promise<ChatConversation | null>;
@@ -23,18 +23,21 @@ const context_1 = require("../core/context/context");
23
23
  const user_entity_1 = require("../user/entities/user.entity");
24
24
  const hook_service_1 = require("../core/hook/hook.service");
25
25
  const conversation_type_enum_1 = require("./enums/conversation-type.enum");
26
+ const push_notification_service_1 = require("../notification/push-notification.service");
26
27
  let ChatService = class ChatService {
27
28
  conversationRepositoy;
28
29
  memberRepositoy;
29
30
  messageRepositoy;
30
31
  dataSource;
31
32
  hookService;
32
- constructor(conversationRepositoy, memberRepositoy, messageRepositoy, dataSource, hookService) {
33
+ pushService;
34
+ constructor(conversationRepositoy, memberRepositoy, messageRepositoy, dataSource, hookService, pushService) {
33
35
  this.conversationRepositoy = conversationRepositoy;
34
36
  this.memberRepositoy = memberRepositoy;
35
37
  this.messageRepositoy = messageRepositoy;
36
38
  this.dataSource = dataSource;
37
39
  this.hookService = hookService;
40
+ this.pushService = pushService;
38
41
  }
39
42
  async findExistingOneOnOneConversation(otherUserId) {
40
43
  const currentUserId = context_1.Context.getUser()?.id;
@@ -80,7 +83,9 @@ let ChatService = class ChatService {
80
83
  });
81
84
  }
82
85
  async getConversation(id) {
83
- return this.buildConversationQuery().andWhere('id = :id', { id }).getOne();
86
+ return this.buildConversationQuery()
87
+ .andWhere('c.id = :id', { id })
88
+ .getOne();
84
89
  }
85
90
  async listConversations({ limit = 100, offset = 0, }) {
86
91
  const query = await this.buildConversationQuery().skip(offset).limit(limit);
@@ -100,6 +105,17 @@ let ChatService = class ChatService {
100
105
  });
101
106
  message = await this.messageRepositoy.save(message);
102
107
  this.hookService.emit('MESSAGE_SEND', { message });
108
+ const [members] = await this.listMembers({ conversationId });
109
+ for (let member of members) {
110
+ if (member.userId === message.sender.id) {
111
+ continue;
112
+ }
113
+ const tokens = await this.pushService.getTokensByUser(member.userId);
114
+ this.pushService.sendPush({
115
+ title: message.sender.name,
116
+ body: text,
117
+ }, tokens);
118
+ }
103
119
  return message;
104
120
  }
105
121
  async listMessages({ conversationId, limit = 100, offset = 0, }) {
@@ -112,17 +128,21 @@ let ChatService = class ChatService {
112
128
  });
113
129
  }
114
130
  buildConversationQuery() {
131
+ const userId = context_1.Context.getUser()?.id;
115
132
  return (this.conversationRepositoy
116
133
  .createQueryBuilder('c')
117
- .innerJoinAndMapOne('c.members', (subquery) => subquery.select().from(conversation_member_entity_1.ChatConversationMember, 'membership'), 'membership', 'membership.userId = :userId and membership.conversationId = c.id', { userId: context_1.Context.getUser()?.id }, conversation_member_entity_1.ChatConversationMember)
134
+ .innerJoin(conversation_member_entity_1.ChatConversationMember, 'membership', 'membership.userId = :userId AND membership.conversationId = c.id', { userId })
135
+ .leftJoinAndSelect('c.members', 'members', 'members.userId != :userId', {
136
+ userId,
137
+ })
138
+ .leftJoinAndSelect('members.user', 'memberUser')
139
+ .orderBy('members.createdAt', 'ASC')
118
140
  .addSelect((subquery) => subquery
119
141
  .select("COALESCE(string_agg(user.name,','), 'Unknown')")
120
- .from(conversation_member_entity_1.ChatConversationMember, 'membership')
121
- .innerJoin(user_entity_1.User, 'user', 'user.id = membership.userId')
122
- .where('membership.conversationId = c.id')
123
- .andWhere('membership.userId != :userId', {
124
- userId: context_1.Context.getUser()?.id,
125
- })
142
+ .from(conversation_member_entity_1.ChatConversationMember, 'membership_name')
143
+ .innerJoin(user_entity_1.User, 'user', 'user.id = membership_name.userId')
144
+ .where('membership_name.conversationId = c.id')
145
+ .andWhere('membership_name.userId != :userId', { userId })
126
146
  .limit(1), 'c_name'));
127
147
  }
128
148
  };
@@ -136,6 +156,7 @@ exports.ChatService = ChatService = __decorate([
136
156
  typeorm_2.Repository,
137
157
  typeorm_2.Repository,
138
158
  typeorm_2.DataSource,
139
- hook_service_1.HookService])
159
+ hook_service_1.HookService,
160
+ push_notification_service_1.PushNotificationService])
140
161
  ], ChatService);
141
162
  //# sourceMappingURL=chat.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chat.service.js","sourceRoot":"","sources":["../../src/chat/chat.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat.service.js","sourceRoot":"","sources":["../../src/chat/chat.service.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,14 @@
1
1
  import { ChatConversation } from '../entities/conversation.entity';
2
2
  import { ChatMessage } from '../entities/message.entity';
3
3
  import { UserResponseDto } from '~/user/dto/user-response.dto';
4
+ import { ConversationType } from '../enums/conversation-type.enum';
4
5
  export declare class ChatConversationResponseDto {
5
6
  id: ChatConversation['id'];
6
7
  name: string;
7
8
  membersCount: number;
9
+ type: ConversationType;
10
+ members: UserResponseDto[];
11
+ latestMessage: string;
8
12
  }
9
13
  export declare class ChatMessageResponseDto {
10
14
  id: ChatMessage['id'];
@@ -13,12 +13,18 @@ exports.ChatMessageResponseDto = exports.ChatConversationResponseDto = void 0;
13
13
  const openapi = require("@nestjs/swagger");
14
14
  const class_transformer_1 = require("class-transformer");
15
15
  const user_response_dto_1 = require("../../user/dto/user-response.dto");
16
+ const conversation_member_entity_1 = require("../entities/conversation-member.entity");
17
+ const conversation_type_enum_1 = require("../enums/conversation-type.enum");
18
+ const swagger_1 = require("@nestjs/swagger");
16
19
  class ChatConversationResponseDto {
17
20
  id;
18
21
  name;
19
22
  membersCount;
23
+ type;
24
+ members;
25
+ latestMessage;
20
26
  static _OPENAPI_METADATA_FACTORY() {
21
- return { id: { required: true, type: () => Number }, name: { required: true, type: () => String }, membersCount: { required: true, type: () => Number } };
27
+ return { id: { required: true, type: () => Number }, name: { required: true, type: () => String }, membersCount: { required: true, type: () => Number }, type: { required: true, type: () => String, enum: require("../enums/conversation-type.enum").ConversationType }, members: { required: true, type: () => [require("../../user/dto/user-response.dto").UserResponseDto] }, latestMessage: { required: true, type: () => String } };
22
28
  }
23
29
  }
24
30
  exports.ChatConversationResponseDto = ChatConversationResponseDto;
@@ -34,6 +40,24 @@ __decorate([
34
40
  (0, class_transformer_1.Expose)(),
35
41
  __metadata("design:type", Number)
36
42
  ], ChatConversationResponseDto.prototype, "membersCount", void 0);
43
+ __decorate([
44
+ (0, class_transformer_1.Expose)(),
45
+ (0, swagger_1.ApiProperty)({ enum: conversation_type_enum_1.ConversationType }),
46
+ __metadata("design:type", String)
47
+ ], ChatConversationResponseDto.prototype, "type", void 0);
48
+ __decorate([
49
+ (0, class_transformer_1.Expose)(),
50
+ (0, class_transformer_1.Transform)(({ value }) => value.map((i) => {
51
+ return i instanceof conversation_member_entity_1.ChatConversationMember
52
+ ? (0, class_transformer_1.plainToInstance)(user_response_dto_1.UserResponseDto, i.user)
53
+ : i;
54
+ })),
55
+ __metadata("design:type", Array)
56
+ ], ChatConversationResponseDto.prototype, "members", void 0);
57
+ __decorate([
58
+ (0, class_transformer_1.Expose)(),
59
+ __metadata("design:type", String)
60
+ ], ChatConversationResponseDto.prototype, "latestMessage", void 0);
37
61
  class ChatMessageResponseDto {
38
62
  id;
39
63
  text;
@@ -1 +1 @@
1
- {"version":3,"file":"responses.dto.js","sourceRoot":"","sources":["../../../src/chat/dto/responses.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,yDAAiD;AAGjD,wEAA+D;AAE/D,MAAa,2BAA2B;IAEtC,EAAE,CAAyB;IAG3B,IAAI,CAAS;IAGb,YAAY,CAAS;;;;CACtB;AATD,kEASC;AAPC;IADC,IAAA,0BAAM,GAAE;;uDACkB;AAG3B;IADC,IAAA,0BAAM,GAAE;;yDACI;AAGb;IADC,IAAA,0BAAM,GAAE;;iEACY;AAGvB,MAAa,sBAAsB;IAEjC,EAAE,CAAoB;IAGtB,IAAI,CAAsB;IAI1B,MAAM,CAAkB;IAGxB,SAAS,CAAO;;;;CACjB;AAbD,wDAaC;AAXC;IADC,IAAA,0BAAM,GAAE;;kDACa;AAGtB;IADC,IAAA,0BAAM,GAAE;;oDACiB;AAI1B;IAFC,IAAA,0BAAM,GAAE;IACR,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,mCAAe,CAAC;8BACpB,mCAAe;sDAAC;AAGxB;IADC,IAAA,0BAAM,GAAE;8BACE,IAAI;yDAAC"}
1
+ {"version":3,"file":"responses.dto.js","sourceRoot":"","sources":["../../../src/chat/dto/responses.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,yDAA6E;AAG7E,wEAA+D;AAC/D,uFAAgF;AAChF,4EAAmE;AACnE,6CAA8C;AAE9C,MAAa,2BAA2B;IAEtC,EAAE,CAAyB;IAG3B,IAAI,CAAS;IAGb,YAAY,CAAS;IAIrB,IAAI,CAAmB;IAUvB,OAAO,CAAoB;IAG3B,aAAa,CAAS;;;;CACvB;AA1BD,kEA0BC;AAxBC;IADC,IAAA,0BAAM,GAAE;;uDACkB;AAG3B;IADC,IAAA,0BAAM,GAAE;;yDACI;AAGb;IADC,IAAA,0BAAM,GAAE;;iEACY;AAIrB;IAFC,IAAA,0BAAM,GAAE;IACR,IAAA,qBAAW,EAAC,EAAE,IAAI,EAAE,yCAAgB,EAAE,CAAC;;yDACjB;AAUvB;IARC,IAAA,0BAAM,GAAE;IACR,IAAA,6BAAS,EAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CACvB,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACd,OAAO,CAAC,YAAY,mDAAsB;YACxC,CAAC,CAAC,IAAA,mCAAe,EAAC,mCAAe,EAAE,CAAC,CAAC,IAAI,CAAC;YAC1C,CAAC,CAAC,CAAC,CAAC;IACR,CAAC,CAAC,CACH;;4DAC0B;AAG3B;IADC,IAAA,0BAAM,GAAE;;kEACa;AAGxB,MAAa,sBAAsB;IAEjC,EAAE,CAAoB;IAGtB,IAAI,CAAsB;IAI1B,MAAM,CAAkB;IAGxB,SAAS,CAAO;;;;CACjB;AAbD,wDAaC;AAXC;IADC,IAAA,0BAAM,GAAE;;kDACa;AAGtB;IADC,IAAA,0BAAM,GAAE;;oDACiB;AAI1B;IAFC,IAAA,0BAAM,GAAE;IACR,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,mCAAe,CAAC;8BACpB,mCAAe;sDAAC;AAGxB;IADC,IAAA,0BAAM,GAAE;8BACE,IAAI;yDAAC"}
@@ -42,7 +42,7 @@ __decorate([
42
42
  __metadata("design:type", Object)
43
43
  ], ChatConversationMember.prototype, "userId", void 0);
44
44
  __decorate([
45
- (0, typeorm_1.ManyToOne)(() => user_entity_1.User, (user) => user.communities, {
45
+ (0, typeorm_1.ManyToOne)(() => user_entity_1.User, (user) => user.chats, {
46
46
  eager: true,
47
47
  cascade: true,
48
48
  }),
@@ -1 +1 @@
1
- {"version":3,"file":"conversation-member.entity.js","sourceRoot":"","sources":["../../../src/chat/entities/conversation-member.entity.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,qCAMiB;AACjB,iEAAmD;AACnD,+DAAyD;AAGlD,IAAM,sBAAsB,GAA5B,MAAM,sBAAsB;IAKxB,cAAc,CAAyB;IAUhD,YAAY,CAAmB;IAMtB,MAAM,CAAa;IAU5B,IAAI,CAAO;IAGX,SAAS,CAAO;;;;CACjB,CAAA;AAnCY,wDAAsB;AAKxB;IADR,IAAA,uBAAa,GAAE;;8DACgC;AAUhD;IALC,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,sCAAgB,EAAE,CAAC,YAAY,EAAE,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE;QACzE,KAAK,EAAE,IAAI;QACX,OAAO,EAAE,IAAI;KACd,CAAC;IACD,IAAA,oBAAU,EAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC;8BACzB,sCAAgB;4DAAC;AAMtB;IADR,IAAA,uBAAa,GAAE;;sDACY;AAU5B;IALC,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,kBAAI,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE;QACjD,KAAK,EAAE,IAAI;QACX,OAAO,EAAE,IAAI;KACd,CAAC;IACD,IAAA,oBAAU,EAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;8BACzB,kBAAI;oDAAC;AAGX;IADC,IAAA,0BAAgB,GAAE;8BACR,IAAI;yDAAC;iCAlCL,sBAAsB;IADlC,IAAA,gBAAM,GAAE;GACI,sBAAsB,CAmClC"}
1
+ {"version":3,"file":"conversation-member.entity.js","sourceRoot":"","sources":["../../../src/chat/entities/conversation-member.entity.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,qCAMiB;AACjB,iEAAmD;AACnD,+DAAyD;AAGlD,IAAM,sBAAsB,GAA5B,MAAM,sBAAsB;IAKxB,cAAc,CAAyB;IAUhD,YAAY,CAAmB;IAMtB,MAAM,CAAa;IAU5B,IAAI,CAAO;IAGX,SAAS,CAAO;;;;CACjB,CAAA;AAnCY,wDAAsB;AAKxB;IADR,IAAA,uBAAa,GAAE;;8DACgC;AAUhD;IALC,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,sCAAgB,EAAE,CAAC,YAAY,EAAE,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE;QACzE,KAAK,EAAE,IAAI;QACX,OAAO,EAAE,IAAI;KACd,CAAC;IACD,IAAA,oBAAU,EAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC;8BACzB,sCAAgB;4DAAC;AAMtB;IADR,IAAA,uBAAa,GAAE;;sDACY;AAU5B;IALC,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,kBAAI,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE;QAC3C,KAAK,EAAE,IAAI;QACX,OAAO,EAAE,IAAI;KACd,CAAC;IACD,IAAA,oBAAU,EAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;8BACzB,kBAAI;oDAAC;AAGX;IADC,IAAA,0BAAgB,GAAE;8BACR,IAAI;yDAAC;iCAlCL,sBAAsB;IADlC,IAAA,gBAAM,GAAE;GACI,sBAAsB,CAmClC"}
@@ -5,5 +5,6 @@ export declare class ChatConversation {
5
5
  type: ConversationType;
6
6
  name: string;
7
7
  members: ChatConversationMember[];
8
+ latestMessage: string;
8
9
  createdAt: Date;
9
10
  }
@@ -19,9 +19,10 @@ let ChatConversation = class ChatConversation {
19
19
  type;
20
20
  name;
21
21
  members;
22
+ latestMessage;
22
23
  createdAt;
23
24
  static _OPENAPI_METADATA_FACTORY() {
24
- return { id: { required: true, type: () => Number }, type: { required: true, type: () => String, enum: require("../enums/conversation-type.enum").ConversationType }, name: { required: true, type: () => String }, members: { required: true, type: () => [require("./conversation-member.entity").ChatConversationMember] }, createdAt: { required: true, type: () => Date } };
25
+ return { id: { required: true, type: () => Number }, type: { required: true, type: () => String, enum: require("../enums/conversation-type.enum").ConversationType }, name: { required: true, type: () => String }, members: { required: true, type: () => [require("./conversation-member.entity").ChatConversationMember] }, latestMessage: { required: true, type: () => String }, createdAt: { required: true, type: () => Date } };
25
26
  }
26
27
  };
27
28
  exports.ChatConversation = ChatConversation;
@@ -46,6 +47,12 @@ __decorate([
46
47
  (0, typeorm_1.JoinTable)(),
47
48
  __metadata("design:type", Array)
48
49
  ], ChatConversation.prototype, "members", void 0);
50
+ __decorate([
51
+ (0, typeorm_1.VirtualColumn)({
52
+ query: (alias) => `SELECT text FROM "chat_message" WHERE "conversationId" = ${alias}.id ORDER BY "createdAt" DESC LIMIT 1`,
53
+ }),
54
+ __metadata("design:type", String)
55
+ ], ChatConversation.prototype, "latestMessage", void 0);
49
56
  __decorate([
50
57
  (0, typeorm_1.CreateDateColumn)(),
51
58
  __metadata("design:type", Date)
@@ -1 +1 @@
1
- {"version":3,"file":"conversation.entity.js","sourceRoot":"","sources":["../../../src/chat/entities/conversation.entity.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,qCAQiB;AACjB,4EAAmE;AACnE,6EAAsE;AAG/D,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;IAE3B,EAAE,CAAS;IAOX,IAAI,CAAmB;IAGvB,IAAI,CAAS;IAIb,OAAO,CAA2B;IAGlC,SAAS,CAAO;;;;CACjB,CAAA;AApBY,4CAAgB;AAE3B;IADC,IAAA,gCAAsB,GAAE;;4CACd;AAOX;IALC,IAAA,gBAAM,EAAC;QACN,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,yCAAgB;QACtB,OAAO,EAAE,yCAAgB,CAAC,QAAQ;KACnC,CAAC;;8CACqB;AAGvB;IADC,IAAA,gBAAM,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;8CACd;AAIb;IAFC,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,mDAAsB,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC;IACxE,IAAA,mBAAS,GAAE;;iDACsB;AAGlC;IADC,IAAA,0BAAgB,GAAE;8BACR,IAAI;mDAAC;2BAnBL,gBAAgB;IAD5B,IAAA,gBAAM,GAAE;GACI,gBAAgB,CAoB5B"}
1
+ {"version":3,"file":"conversation.entity.js","sourceRoot":"","sources":["../../../src/chat/entities/conversation.entity.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,qCASiB;AACjB,4EAAmE;AACnE,6EAAsE;AAG/D,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;IAE3B,EAAE,CAAS;IAOX,IAAI,CAAmB;IAGvB,IAAI,CAAS;IAIb,OAAO,CAA2B;IAMlC,aAAa,CAAS;IAGtB,SAAS,CAAO;;;;CACjB,CAAA;AA1BY,4CAAgB;AAE3B;IADC,IAAA,gCAAsB,GAAE;;4CACd;AAOX;IALC,IAAA,gBAAM,EAAC;QACN,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,yCAAgB;QACtB,OAAO,EAAE,yCAAgB,CAAC,QAAQ;KACnC,CAAC;;8CACqB;AAGvB;IADC,IAAA,gBAAM,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;8CACd;AAIb;IAFC,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,mDAAsB,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC;IACxE,IAAA,mBAAS,GAAE;;iDACsB;AAMlC;IAJC,IAAA,uBAAa,EAAC;QACb,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CACf,4DAA4D,KAAK,uCAAuC;KAC3G,CAAC;;uDACoB;AAGtB;IADC,IAAA,0BAAgB,GAAE;8BACR,IAAI;mDAAC;2BAzBL,gBAAgB;IAD5B,IAAA,gBAAM,GAAE;GACI,gBAAgB,CA0B5B"}
@@ -1 +1 @@
1
- {"version":3,"file":"message.entity.js","sourceRoot":"","sources":["../../../src/chat/entities/message.entity.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,qCAQiB;AACjB,iEAAmD;AACnD,+DAAyD;AAGlD,IAAM,WAAW,GAAjB,MAAM,WAAW;IAKtB,EAAE,CAAS;IAMX,YAAY,CAAmB;IAM/B,MAAM,CAAO;IAMb,IAAI,CAAS;IAMb,SAAS,CAAO;;;;CACjB,CAAA;AA9BY,kCAAW;AAKtB;IADC,IAAA,gCAAsB,GAAE;;uCACd;AAMX;IADC,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,sCAAgB,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;8BAC7C,sCAAgB;iDAAC;AAM/B;IADC,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,kBAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;8BAChD,kBAAI;2CAAC;AAMb;IADC,IAAA,gBAAM,GAAE;;yCACI;AAMb;IADC,IAAA,0BAAgB,GAAE;8BACR,IAAI;8CAAC;sBA7BL,WAAW;IADvB,IAAA,gBAAM,GAAE;GACI,WAAW,CA8BvB"}
1
+ {"version":3,"file":"message.entity.js","sourceRoot":"","sources":["../../../src/chat/entities/message.entity.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,qCAMiB;AACjB,iEAAmD;AACnD,+DAAyD;AAGlD,IAAM,WAAW,GAAjB,MAAM,WAAW;IAKtB,EAAE,CAAS;IAMX,YAAY,CAAmB;IAM/B,MAAM,CAAO;IAMb,IAAI,CAAS;IAMb,SAAS,CAAO;;;;CACjB,CAAA;AA9BY,kCAAW;AAKtB;IADC,IAAA,gCAAsB,GAAE;;uCACd;AAMX;IADC,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,sCAAgB,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;8BAC7C,sCAAgB;iDAAC;AAM/B;IADC,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,kBAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;8BAChD,kBAAI;2CAAC;AAMb;IADC,IAAA,gBAAM,GAAE;;yCACI;AAMb;IADC,IAAA,0BAAgB,GAAE;8BACR,IAAI;8CAAC;sBA7BL,WAAW;IADvB,IAAA,gBAAM,GAAE;GACI,WAAW,CA8BvB"}
@@ -1,2 +1,2 @@
1
1
  import { Type } from '@nestjs/common';
2
- export declare const ApiPaginatedResponse: <TDto extends Type<any>>(dto: TDto) => <TFunction extends Function, Y>(target: TFunction | object, propertyKey?: string | symbol, descriptor?: TypedPropertyDescriptor<Y>) => void;
2
+ export declare const ApiPaginatedResponse: <TDto extends Type<unknown>>(dto: TDto) => <TFunction extends Function, Y>(target: TFunction | object, propertyKey?: string | symbol, descriptor?: TypedPropertyDescriptor<Y>) => void;
@@ -5,11 +5,11 @@ const common_1 = require("@nestjs/common");
5
5
  const swagger_1 = require("@nestjs/swagger");
6
6
  const paginated_response_dto_1 = require("../dto/paginated-response.dto");
7
7
  const ApiPaginatedResponse = (dto) => {
8
- return (0, common_1.applyDecorators)((0, swagger_1.ApiExtraModels)(paginated_response_dto_1.PaginatedResponseDto), (0, swagger_1.ApiOkResponse)({
8
+ return (0, common_1.applyDecorators)((0, swagger_1.ApiExtraModels)(paginated_response_dto_1.PaginatedResponseDto, dto), (0, swagger_1.ApiOkResponse)({
9
9
  description: 'Successfully received paginated list of ' + dto.name,
10
10
  schema: {
11
11
  allOf: [
12
- { $ref: (0, swagger_1.getSchemaPath)((paginated_response_dto_1.PaginatedResponseDto)) },
12
+ { $ref: (0, swagger_1.getSchemaPath)(paginated_response_dto_1.PaginatedResponseDto) },
13
13
  {
14
14
  properties: {
15
15
  result: {
@@ -1 +1 @@
1
- {"version":3,"file":"api-paginated-response.js","sourceRoot":"","sources":["../../../src/common/decorators/api-paginated-response.ts"],"names":[],"mappings":";;;AAAA,2CAAuD;AACvD,6CAA+E;AAC/E,0EAAqE;AAE9D,MAAM,oBAAoB,GAAG,CAAyB,GAAS,EAAE,EAAE;IACxE,OAAO,IAAA,wBAAe,EACpB,IAAA,wBAAc,EAAC,6CAAoB,CAAC,EACpC,IAAA,uBAAa,EAAC;QACZ,WAAW,EAAE,0CAA0C,GAAG,GAAG,CAAC,IAAI;QAClE,MAAM,EAAE;YACN,KAAK,EAAE;gBACL,EAAE,IAAI,EAAE,IAAA,uBAAa,EAAC,CAAA,6CAA0B,CAAA,CAAC,EAAE;gBACnD;oBACE,UAAU,EAAE;wBACV,MAAM,EAAE;4BACN,IAAI,EAAE,OAAO;4BACb,KAAK,EAAE,EAAE,IAAI,EAAE,IAAA,uBAAa,EAAC,GAAG,CAAC,EAAE;yBACpC;qBACF;iBACF;aACF;SACF;KACF,CAAC,CACH,CAAC;AACJ,CAAC,CAAC;AApBW,QAAA,oBAAoB,wBAoB/B"}
1
+ {"version":3,"file":"api-paginated-response.js","sourceRoot":"","sources":["../../../src/common/decorators/api-paginated-response.ts"],"names":[],"mappings":";;;AAAA,2CAAuD;AACvD,6CAA+E;AAC/E,0EAAqE;AAE9D,MAAM,oBAAoB,GAAG,CAA6B,GAAS,EAAE,EAAE;IAC5E,OAAO,IAAA,wBAAe,EACpB,IAAA,wBAAc,EAAC,6CAAoB,EAAE,GAAG,CAAC,EACzC,IAAA,uBAAa,EAAC;QACZ,WAAW,EAAE,0CAA0C,GAAG,GAAG,CAAC,IAAI;QAClE,MAAM,EAAE;YACN,KAAK,EAAE;gBACL,EAAE,IAAI,EAAE,IAAA,uBAAa,EAAC,6CAAoB,CAAC,EAAE;gBAC7C;oBACE,UAAU,EAAE;wBACV,MAAM,EAAE;4BACN,IAAI,EAAE,OAAO;4BACb,KAAK,EAAE,EAAE,IAAI,EAAE,IAAA,uBAAa,EAAC,GAAG,CAAC,EAAE;yBACpC;qBACF;iBACF;aACF;SACF;KACF,CAAC,CACH,CAAC;AACJ,CAAC,CAAC;AApBW,QAAA,oBAAoB,wBAoB/B"}
@@ -8,27 +8,17 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.NotificationModule = void 0;
10
10
  const common_1 = require("@nestjs/common");
11
- const typeorm_1 = require("@nestjs/typeorm");
12
- const push_token_entity_1 = require("./entities/push-token.entity");
13
- const push_notification_controller_1 = require("./push-notification.controller");
14
- const push_notification_service_1 = require("./push-notification.service");
15
- const axios_1 = require("@nestjs/axios");
16
11
  const hook_listener_service_1 = require("./hook-listener.service");
17
12
  const hook_module_1 = require("../core/hook/hook.module");
18
13
  const community_module_1 = require("../community/community.module");
14
+ const push_notification_module_1 = require("./push-notification.module");
19
15
  let NotificationModule = class NotificationModule {
20
16
  };
21
17
  exports.NotificationModule = NotificationModule;
22
18
  exports.NotificationModule = NotificationModule = __decorate([
23
19
  (0, common_1.Module)({
24
- imports: [
25
- typeorm_1.TypeOrmModule.forFeature([push_token_entity_1.PushNotificationToken]),
26
- axios_1.HttpModule,
27
- hook_module_1.HookModule,
28
- community_module_1.CommunityModule,
29
- ],
30
- controllers: [push_notification_controller_1.PushNotificationController],
31
- providers: [push_notification_service_1.PushNotificationService, hook_listener_service_1.NotificationHookListener],
20
+ imports: [push_notification_module_1.PushNotificationModule, hook_module_1.HookModule, community_module_1.CommunityModule],
21
+ providers: [hook_listener_service_1.NotificationHookListener],
32
22
  })
33
23
  ], NotificationModule);
34
24
  //# sourceMappingURL=notification.module.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"notification.module.js","sourceRoot":"","sources":["../../src/notification/notification.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,6CAAgD;AAChD,oEAAqE;AACrE,iFAA4E;AAC5E,2EAAsE;AACtE,yCAA2C;AAC3C,mEAAmE;AACnE,0DAAqD;AACrD,oEAA+D;AAYxD,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;CAAG,CAAA;AAArB,gDAAkB;6BAAlB,kBAAkB;IAV9B,IAAA,eAAM,EAAC;QACN,OAAO,EAAE;YACP,uBAAa,CAAC,UAAU,CAAC,CAAC,yCAAqB,CAAC,CAAC;YACjD,kBAAU;YACV,wBAAU;YACV,kCAAe;SAChB;QACD,WAAW,EAAE,CAAC,yDAA0B,CAAC;QACzC,SAAS,EAAE,CAAC,mDAAuB,EAAE,gDAAwB,CAAC;KAC/D,CAAC;GACW,kBAAkB,CAAG"}
1
+ {"version":3,"file":"notification.module.js","sourceRoot":"","sources":["../../src/notification/notification.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,mEAAmE;AACnE,0DAAqD;AACrD,oEAA+D;AAC/D,yEAAoE;AAM7D,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;CAAG,CAAA;AAArB,gDAAkB;6BAAlB,kBAAkB;IAJ9B,IAAA,eAAM,EAAC;QACN,OAAO,EAAE,CAAC,iDAAsB,EAAE,wBAAU,EAAE,kCAAe,CAAC;QAC9D,SAAS,EAAE,CAAC,gDAAwB,CAAC;KACtC,CAAC;GACW,kBAAkB,CAAG"}
@@ -0,0 +1,2 @@
1
+ export declare class PushNotificationModule {
2
+ }
@@ -0,0 +1,27 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.PushNotificationModule = void 0;
10
+ const common_1 = require("@nestjs/common");
11
+ const typeorm_1 = require("@nestjs/typeorm");
12
+ const push_token_entity_1 = require("./entities/push-token.entity");
13
+ const push_notification_controller_1 = require("./push-notification.controller");
14
+ const push_notification_service_1 = require("./push-notification.service");
15
+ const axios_1 = require("@nestjs/axios");
16
+ let PushNotificationModule = class PushNotificationModule {
17
+ };
18
+ exports.PushNotificationModule = PushNotificationModule;
19
+ exports.PushNotificationModule = PushNotificationModule = __decorate([
20
+ (0, common_1.Module)({
21
+ imports: [typeorm_1.TypeOrmModule.forFeature([push_token_entity_1.PushNotificationToken]), axios_1.HttpModule],
22
+ controllers: [push_notification_controller_1.PushNotificationController],
23
+ providers: [push_notification_service_1.PushNotificationService],
24
+ exports: [push_notification_service_1.PushNotificationService],
25
+ })
26
+ ], PushNotificationModule);
27
+ //# sourceMappingURL=push-notification.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"push-notification.module.js","sourceRoot":"","sources":["../../src/notification/push-notification.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,6CAAgD;AAChD,oEAAqE;AACrE,iFAA4E;AAC5E,2EAAsE;AACtE,yCAA2C;AAWpC,IAAM,sBAAsB,GAA5B,MAAM,sBAAsB;CAAG,CAAA;AAAzB,wDAAsB;iCAAtB,sBAAsB;IANlC,IAAA,eAAM,EAAC;QACN,OAAO,EAAE,CAAC,uBAAa,CAAC,UAAU,CAAC,CAAC,yCAAqB,CAAC,CAAC,EAAE,kBAAU,CAAC;QACxE,WAAW,EAAE,CAAC,yDAA0B,CAAC;QACzC,SAAS,EAAE,CAAC,mDAAuB,CAAC;QACpC,OAAO,EAAE,CAAC,mDAAuB,CAAC;KACnC,CAAC;GACW,sBAAsB,CAAG"}