@messenger-box/platform-server 10.0.3-alpha.7 → 10.0.3-alpha.72

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 (149) hide show
  1. package/lib/containers/containers.js +4 -1
  2. package/lib/containers/containers.js.map +1 -1
  3. package/lib/containers/context-services-from-container.d.ts +1 -1
  4. package/lib/containers/context-services-from-container.js +1 -1
  5. package/lib/containers/context-services-from-container.js.map +1 -1
  6. package/lib/graphql/resolvers/channel-member.d.ts +3 -2
  7. package/lib/graphql/resolvers/channel-member.js +30 -5
  8. package/lib/graphql/resolvers/channel-member.js.map +1 -1
  9. package/lib/graphql/resolvers/channel.d.ts +3 -2
  10. package/lib/graphql/resolvers/channel.js +279 -53
  11. package/lib/graphql/resolvers/channel.js.map +1 -1
  12. package/lib/graphql/resolvers/extended-token-account.d.ts +3 -2
  13. package/lib/graphql/resolvers/extended-token-account.js +90 -23
  14. package/lib/graphql/resolvers/extended-token-account.js.map +1 -1
  15. package/lib/graphql/resolvers/index.d.ts +1 -1
  16. package/lib/graphql/resolvers/post-thread.d.ts +1 -1
  17. package/lib/graphql/resolvers/post-thread.js +294 -132
  18. package/lib/graphql/resolvers/post-thread.js.map +1 -1
  19. package/lib/graphql/resolvers/post.d.ts +2 -3
  20. package/lib/graphql/resolvers/post.js +696 -234
  21. package/lib/graphql/resolvers/post.js.map +1 -1
  22. package/lib/graphql/resolvers/reaction.d.ts +3 -2
  23. package/lib/graphql/resolvers/reaction.js +96 -14
  24. package/lib/graphql/resolvers/reaction.js.map +1 -1
  25. package/lib/graphql/schema/channel-member.graphql +110 -21
  26. package/lib/graphql/schema/channel-member.graphql.js +1 -1
  27. package/lib/graphql/schema/channel.graphql +337 -38
  28. package/lib/graphql/schema/channel.graphql.js +1 -1
  29. package/lib/graphql/schema/post-thread.graphql +167 -21
  30. package/lib/graphql/schema/post-thread.graphql.js +1 -1
  31. package/lib/graphql/schema/post.graphql +284 -40
  32. package/lib/graphql/schema/post.graphql.js +1 -1
  33. package/lib/graphql/schema/reaction.graphql +71 -13
  34. package/lib/graphql/schema/reaction.graphql.js +1 -1
  35. package/lib/graphql/schema/services.graphql +2 -0
  36. package/lib/graphql/schema/users.graphql +76 -13
  37. package/lib/graphql/schema/users.graphql.js +1 -1
  38. package/lib/index.js +1 -1
  39. package/lib/index.js.map +1 -1
  40. package/lib/interfaces/index.d.ts +0 -1
  41. package/lib/interfaces/services.d.ts +1 -1
  42. package/lib/migrations/dbMigrations/AddPostsConfigurationsMigration.d.ts +17 -0
  43. package/lib/migrations/dbMigrations/AddPostsConfigurationsMigration.js +44 -0
  44. package/lib/migrations/dbMigrations/AddPostsConfigurationsMigration.js.map +1 -0
  45. package/lib/migrations/dbMigrations/index.d.ts +1 -0
  46. package/lib/migrations/index.d.ts +1 -0
  47. package/lib/migrations/mail-template-migration.js +1 -1
  48. package/lib/migrations/message-notification-template-migration.d.ts +1 -1
  49. package/lib/migrations/message-notification-template-migration.js +1 -1
  50. package/lib/plugins/channel-moleculer-service.d.ts +21 -1
  51. package/lib/plugins/channel-moleculer-service.js +417 -115
  52. package/lib/plugins/channel-moleculer-service.js.map +1 -1
  53. package/lib/plugins/extended-token-account-moleculer-service.d.ts +25 -1
  54. package/lib/plugins/extended-token-account-moleculer-service.js +348 -22
  55. package/lib/plugins/extended-token-account-moleculer-service.js.map +1 -1
  56. package/lib/plugins/messenger-notification-moleculer-service.d.ts +27 -3
  57. package/lib/plugins/messenger-notification-moleculer-service.js +404 -58
  58. package/lib/plugins/messenger-notification-moleculer-service.js.map +1 -1
  59. package/lib/plugins/post-moleculer-service.d.ts +85 -21
  60. package/lib/plugins/post-moleculer-service.js +986 -256
  61. package/lib/plugins/post-moleculer-service.js.map +1 -1
  62. package/lib/plugins/post-thread-moleculer-service.d.ts +33 -1
  63. package/lib/plugins/post-thread-moleculer-service.js +326 -8
  64. package/lib/plugins/post-thread-moleculer-service.js.map +1 -1
  65. package/lib/plugins/reaction-moleculer-service.js +1 -1
  66. package/lib/plugins/reaction-moleculer-service.js.map +1 -1
  67. package/lib/preferences/settings/post-settings.d.ts +2 -0
  68. package/lib/preferences/settings/post-settings.js +47 -9
  69. package/lib/preferences/settings/post-settings.js.map +1 -1
  70. package/lib/services/channel-service.d.ts +179 -33
  71. package/lib/services/channel-service.js +821 -274
  72. package/lib/services/channel-service.js.map +1 -1
  73. package/lib/services/extended-token-account-service.d.ts +130 -14
  74. package/lib/services/extended-token-account-service.js +462 -52
  75. package/lib/services/extended-token-account-service.js.map +1 -1
  76. package/lib/services/index.d.ts +1 -0
  77. package/lib/services/messenger-notification-service.d.ts +106 -13
  78. package/lib/services/messenger-notification-service.js +824 -442
  79. package/lib/services/messenger-notification-service.js.map +1 -1
  80. package/lib/services/post-service.d.ts +182 -16
  81. package/lib/services/post-service.js +731 -115
  82. package/lib/services/post-service.js.map +1 -1
  83. package/lib/services/post-thread-service.d.ts +114 -5
  84. package/lib/services/post-thread-service.js +400 -13
  85. package/lib/services/post-thread-service.js.map +1 -1
  86. package/lib/services/proxy-services/channel-microservice.d.ts +5 -3
  87. package/lib/services/proxy-services/channel-microservice.js +19 -10
  88. package/lib/services/proxy-services/channel-microservice.js.map +1 -1
  89. package/lib/services/proxy-services/messenger-notification-microservice.d.ts +128 -8
  90. package/lib/services/proxy-services/messenger-notification-microservice.js +324 -29
  91. package/lib/services/proxy-services/messenger-notification-microservice.js.map +1 -1
  92. package/lib/services/proxy-services/post-microservice.d.ts +186 -12
  93. package/lib/services/proxy-services/post-microservice.js +543 -54
  94. package/lib/services/proxy-services/post-microservice.js.map +1 -1
  95. package/lib/services/proxy-services/post-thread-microservice.d.ts +134 -3
  96. package/lib/services/proxy-services/post-thread-microservice.js +388 -6
  97. package/lib/services/proxy-services/post-thread-microservice.js.map +1 -1
  98. package/lib/services/proxy-services/reaction-microservice.d.ts +161 -3
  99. package/lib/services/proxy-services/reaction-microservice.js +474 -2
  100. package/lib/services/proxy-services/reaction-microservice.js.map +1 -1
  101. package/lib/services/reaction-service.d.ts +124 -4
  102. package/lib/services/reaction-service.js +415 -3
  103. package/lib/services/reaction-service.js.map +1 -1
  104. package/lib/services/redis-cache-manager.d.ts +18 -0
  105. package/lib/services/redis-cache-manager.js +83 -0
  106. package/lib/services/redis-cache-manager.js.map +1 -0
  107. package/lib/store/models/account-token-store.d.ts +1 -1
  108. package/lib/store/models/account-token-store.js.map +1 -1
  109. package/lib/store/models/channel.d.ts +2 -3
  110. package/lib/store/models/channel.js +181 -72
  111. package/lib/store/models/channel.js.map +1 -1
  112. package/lib/store/models/post-thread.d.ts +3 -3
  113. package/lib/store/models/post-thread.js +96 -14
  114. package/lib/store/models/post-thread.js.map +1 -1
  115. package/lib/store/models/post.d.ts +2 -3
  116. package/lib/store/models/post.js +143 -23
  117. package/lib/store/models/post.js.map +1 -1
  118. package/lib/store/models/reaction.d.ts +2 -3
  119. package/lib/store/models/reaction.js +67 -8
  120. package/lib/store/models/reaction.js.map +1 -1
  121. package/lib/store/repositories/__tests__/__fixtures__/team-repository.d.ts +3 -3
  122. package/lib/store/repositories/channel-repository.d.ts +6 -6
  123. package/lib/store/repositories/channel-repository.js +5 -2
  124. package/lib/store/repositories/channel-repository.js.map +1 -1
  125. package/lib/store/repositories/post-repository.d.ts +6 -6
  126. package/lib/store/repositories/post-repository.js +5 -2
  127. package/lib/store/repositories/post-repository.js.map +1 -1
  128. package/lib/store/repositories/post-thread-repository.d.ts +6 -6
  129. package/lib/store/repositories/post-thread-repository.js +5 -2
  130. package/lib/store/repositories/post-thread-repository.js.map +1 -1
  131. package/lib/store/repositories/reaction-repository.d.ts +6 -6
  132. package/lib/store/repositories/reaction-repository.js +5 -2
  133. package/lib/store/repositories/reaction-repository.js.map +1 -1
  134. package/lib/templates/constants/SERVER_TYPES.ts.template +0 -3
  135. package/lib/templates/repositories/ChannelRepository.ts.template +3 -3
  136. package/lib/templates/repositories/PostRepository.ts.template +3 -3
  137. package/lib/templates/repositories/PostThreadRepository.ts.template +3 -3
  138. package/lib/templates/repositories/ReactionRepository.ts.template +3 -4
  139. package/lib/templates/services/ChannelService.ts.template +280 -39
  140. package/lib/templates/services/ExtendedTokenAccountService.ts.template +104 -9
  141. package/lib/templates/services/MessengerNotificationService.ts.template +94 -19
  142. package/lib/templates/services/PostService.ts.template +184 -20
  143. package/lib/templates/services/PostThreadService.ts.template +151 -6
  144. package/lib/templates/services/ReactionService.ts.template +129 -3
  145. package/lib/templates/services/RedisCacheManager.ts.template +22 -0
  146. package/package.json +6 -5
  147. package/lib/interfaces/context.d.ts +0 -14
  148. package/lib/store/models/common-options.js +0 -20
  149. package/lib/store/models/common-options.js.map +0 -1
@@ -1,128 +1,430 @@
1
- import {Service}from'moleculer';import {ApolloClientMixin}from'@adminide-stack/platform-server';import {MoleculerTopics,SERVER_TYPES,ChannelServiceCommands}from'common';import {BaseServiceMixin}from'@common-stack/store-mongo';import {config}from'../config/env-config.js';class ChannelMoleculerService extends Service {
1
+ import {Service}from'moleculer';import {ApolloClientMixin}from'@adminide-stack/platform-server';import {MoleculerTopics,SERVER_TYPES,ChannelServiceCommands}from'common/server';import {BaseServiceMixin}from'@common-stack/store-mongo';import {logger}from'@common-stack/server-core';import {config}from'../config/env-config.js';/**
2
+ * Channel Moleculer Service
3
+ *
4
+ * This service exposes channel management functionality through the Moleculer microservice framework,
5
+ * providing distributed access to channel operations across the messenger platform.
6
+ *
7
+ * Key capabilities:
8
+ * - Channel lifecycle management (creation, updates, deletion)
9
+ * - Member management (adding, removing, role assignment)
10
+ * - Direct and public channel handling
11
+ * - Message and post management within channels
12
+ * - Channel visibility and access control
13
+ * - Notification and unread message tracking
14
+ * - Team-based channel organization
15
+ * - Channel discovery and filtering
16
+ * - Event-driven architecture for channel changes
17
+ * - Comprehensive error handling and logging
18
+ * - Service integration through Apollo GraphQL
19
+ */
20
+ class ChannelMoleculerService extends Service {
2
21
  channelService;
22
+ container;
3
23
  constructor(broker, {
4
24
  container,
5
25
  ...settings
6
26
  }) {
7
27
  super(broker);
8
- const topic = MoleculerTopics.ChannelService;
9
- this.channelService = container.get(SERVER_TYPES.ChannelService);
10
- this.parseServiceSchema({
11
- name: topic,
12
- mixins: [ApolloClientMixin, BaseServiceMixin(this.channelService)],
13
- settings: {
14
- apolloClient: {
15
- serverUri: config.GRAPHQL_URL
16
- }
17
- },
18
- actions: {
19
- [ChannelServiceCommands.AddMemberToChannel]: {
20
- handler: async ctx => this.channelService.addMemberToChannel(ctx.params.channelId, ctx.params.memberId)
21
- },
22
- [ChannelServiceCommands.SaveMembersToChannel]: {
23
- handler: async ctx => this.channelService.saveMembersToChannel(ctx.params.data)
24
- },
25
- [ChannelServiceCommands.CreateDirectChannel]: {
26
- handler: async ctx => this.channelService.createDirectChannel(ctx.params.data)
27
- },
28
- [ChannelServiceCommands.DeleteChannel]: {
29
- handler: async ctx => this.channelService.deleteChannel(ctx.params.id)
30
- },
31
- [ChannelServiceCommands.HideChannel]: {
32
- handler: async ctx => this.channelService.hideChannel(ctx.params.id)
33
- },
34
- [ChannelServiceCommands.GetChannelCounts]: {
35
- handler: async ctx => this.channelService.getChannelCounts(ctx.params.teamId, ctx.params.userId)
36
- },
37
- [ChannelServiceCommands.GetByName]: {
38
- handler: async ctx => this.channelService.getByName(ctx.params.name)
39
- // this.channelService.getByName(ctx.params.teamId, ctx.params.name),
40
- },
41
- [ChannelServiceCommands.GetByNameIncludeDeleted]: {
42
- handler: async ctx => this.channelService.getByNameIncludeDeleted(ctx.params.teamId, ctx.params.name)
43
- },
44
- [ChannelServiceCommands.GetByNames]: {
45
- handler: async ctx => this.channelService.getByNames(ctx.params.teamId, ctx.params.names)
46
- },
47
- [ChannelServiceCommands.GetChannels]: {
48
- handler: async ctx => this.channelService.getChannels(ctx.params.teamId, ctx.params.userId, ctx.params.includeDeleted, ctx.params.lastDeleteAt, ctx.params.orgName)
49
- },
50
- [ChannelServiceCommands.GetChannelUnread]: {
51
- handler: async ctx => this.channelService.getChannelUnread(ctx.params.channelId, ctx.params.userId)
52
- },
53
- [ChannelServiceCommands.GetDeleted]: {
54
- handler: async ctx => this.channelService.getDeleted(ctx.params.teamId, ctx.params.offset, ctx.params.limit, ctx.params.userId)
55
- },
56
- [ChannelServiceCommands.GetDeletedByName]: {
57
- handler: async ctx => this.channelService.getDeletedByName(ctx.params.teamId, ctx.params.name)
58
- },
59
- [ChannelServiceCommands.SaveDirectChannel]: {
60
- handler: async ctx => this.channelService.saveDirectChannel(ctx.params.channel)
61
- },
62
- [ChannelServiceCommands.SaveChannel]: {
63
- handler: async ctx => this.channelService.saveChannel(ctx.params.data)
64
- },
65
- [ChannelServiceCommands.SavePublicChannel]: {
66
- handler: async ctx => this.channelService.savePublicChannel(ctx.params.data)
67
- },
68
- [ChannelServiceCommands.InvalidateChannelByName]: {
69
- handler: async ctx => this.channelService.invalidateChannelByName(ctx.params.teamId, ctx.params.name)
70
- },
71
- [ChannelServiceCommands.GetPinnedPosts]: {
72
- handler: async ctx => this.channelService.getPinnedPosts(ctx.params.channelId)
73
- },
74
- [ChannelServiceCommands.GetFromMaster]: {
75
- handler: async ctx => this.channelService.getFromMaster(ctx.params.id)
28
+ try {
29
+ this.container = container;
30
+ const topic = MoleculerTopics.ChannelService;
31
+ this.channelService = container.get(SERVER_TYPES.ChannelService);
32
+ logger.debug('Initializing Channel Moleculer Service', {
33
+ topic
34
+ });
35
+ this.parseServiceSchema({
36
+ name: topic,
37
+ mixins: [ApolloClientMixin, BaseServiceMixin(this.channelService)],
38
+ settings: {
39
+ apolloClient: {
40
+ serverUri: config.GRAPHQL_URL
41
+ }
76
42
  },
77
- [ChannelServiceCommands.Restore]: {
78
- handler: async ctx => this.channelService.restore(ctx.params.channelId, ctx.params.time)
79
- },
80
- [ChannelServiceCommands.PermanentDeleteByTeam]: {
81
- handler: async ctx => this.channelService.permanentDeleteByTeam(ctx.params.teamId)
82
- },
83
- [ChannelServiceCommands.PermanentDelete]: {
84
- handler: async ctx => this.channelService.permanentDelete(ctx.params.channelId)
85
- },
86
- [ChannelServiceCommands.PermanentDeleteMembersByChannel]: {
87
- handler: async ctx => this.channelService.permanentDeleteMembersByChannel(ctx.params.channelId)
88
- },
89
- [ChannelServiceCommands.GetPrivateChannelsForTeam]: {
90
- handler: async ctx => this.channelService.getPrivateChannelsForTeam(ctx.params.teamId, ctx.params.offset, ctx.params.limit)
91
- },
92
- [ChannelServiceCommands.GetPublicChannelsForTeam]: {
93
- handler: async ctx => this.channelService.getPublicChannelsForTeam(ctx.params.teamId, ctx.params.offset, ctx.params.limit)
94
- },
95
- [ChannelServiceCommands.GetPublicChannelsByIdsForTeam]: {
96
- handler: async ctx => this.channelService.getPublicChannelsByIdsForTeam(ctx.params.teamId, ctx.params.channelsIds)
97
- },
98
- [ChannelServiceCommands.GetTeamChannels]: {
99
- handler: async ctx => this.channelService.getTeamChannels(ctx.params.teamId)
100
- },
101
- [ChannelServiceCommands.SaveMultipleMembers]: {
102
- handler: async ctx => this.channelService.saveMultipleMembers(ctx.params.members)
103
- },
104
- [ChannelServiceCommands.LeaveChannel]: {
105
- handler: async ctx => this.channelService.leaveChannel(ctx.params.id)
106
- },
107
- [ChannelServiceCommands.IsMember]: {
108
- params: {
109
- id: 'string',
110
- user: 'string'
43
+ events: {
44
+ 'channel.created': {
45
+ handler: async ctx => {
46
+ try {
47
+ const {
48
+ event
49
+ } = ctx?.params || {};
50
+ logger.debug('Channel created event received', {
51
+ channelId: event?.channel?.id,
52
+ userId: event?.userId,
53
+ channelType: event?.channel?.type
54
+ });
55
+ // Emit to notification service for channel creation notifications
56
+ await ctx.emit('notification.channel.created', {
57
+ event: {
58
+ channel: event?.channel,
59
+ userId: event?.userId
60
+ }
61
+ });
62
+ // Update team channel statistics if applicable
63
+ if (event?.channel?.team) {
64
+ await ctx.emit('team.channel.added', {
65
+ event: {
66
+ teamId: event.channel.team,
67
+ channelId: event.channel.id
68
+ }
69
+ });
70
+ }
71
+ } catch (error) {
72
+ logger.error('Error handling channel created event: %o', error);
73
+ }
74
+ }
75
+ },
76
+ 'channel.member.added': {
77
+ handler: async ctx => {
78
+ try {
79
+ const {
80
+ event
81
+ } = ctx?.params || {};
82
+ logger.debug('Channel member added event received', {
83
+ channelId: event?.channelId,
84
+ memberId: event?.memberId,
85
+ invitedBy: event?.invitedBy
86
+ });
87
+ // Emit member notification events
88
+ await ctx.emit('notification.channel.member.added', {
89
+ event: {
90
+ channelId: event?.channelId,
91
+ memberId: event?.memberId,
92
+ invitedBy: event?.invitedBy
93
+ }
94
+ });
95
+ } catch (error) {
96
+ logger.error('Error handling channel member added event: %o', error);
97
+ }
98
+ }
111
99
  },
112
- handler: async ({
113
- params
114
- }) => this.channelService.isMember(params.id, params.user)
100
+ 'channel.deleted': {
101
+ handler: async ctx => {
102
+ try {
103
+ const {
104
+ event
105
+ } = ctx?.params || {};
106
+ logger.debug('Channel deleted event received', {
107
+ channelId: event?.channelId,
108
+ channelName: event?.channelName,
109
+ teamId: event?.teamId
110
+ });
111
+ // Clean up related data
112
+ await ctx.emit('cleanup.channel.deleted', {
113
+ event: {
114
+ channelId: event?.channelId,
115
+ teamId: event?.teamId
116
+ }
117
+ });
118
+ } catch (error) {
119
+ logger.error('Error handling channel deleted event: %o', error);
120
+ }
121
+ }
122
+ }
115
123
  },
116
- [ChannelServiceCommands.ViewChannel]: {
117
- params: {
118
- id: 'string',
119
- user: 'string'
124
+ actions: {
125
+ [ChannelServiceCommands.AddMemberToChannel]: {
126
+ params: {
127
+ channelId: 'string',
128
+ memberId: 'string'
129
+ },
130
+ handler: async ctx => {
131
+ try {
132
+ logger.debug('Adding member to channel', {
133
+ channelId: ctx.params.channelId,
134
+ memberId: ctx.params.memberId
135
+ });
136
+ if (!ctx.params.channelId || !ctx.params.memberId) {
137
+ throw new Error('Channel ID and Member ID are required');
138
+ }
139
+ const result = await this.channelService.addMemberToChannel(ctx.params.channelId, ctx.params.memberId);
140
+ if (result instanceof Error) {
141
+ logger.error('Failed to add member to channel: %s', result.message);
142
+ throw result;
143
+ }
144
+ logger.debug('Member added to channel successfully', {
145
+ channelId: ctx.params.channelId,
146
+ memberId: ctx.params.memberId
147
+ });
148
+ // Emit member added event
149
+ await ctx.emit('channel.member.added', {
150
+ event: {
151
+ channelId: ctx.params.channelId,
152
+ memberId: ctx.params.memberId
153
+ }
154
+ });
155
+ return result;
156
+ } catch (error) {
157
+ logger.error('Error in AddMemberToChannel action: %o', error);
158
+ throw error;
159
+ }
160
+ }
161
+ },
162
+ [ChannelServiceCommands.SaveMembersToChannel]: {
163
+ params: {
164
+ data: 'object'
165
+ },
166
+ handler: async ctx => {
167
+ try {
168
+ logger.debug('Saving members to channel', {
169
+ channelId: ctx.params.data?.channelId,
170
+ memberCount: ctx.params.data?.membersIds?.length || 0
171
+ });
172
+ if (!ctx.params.data) {
173
+ throw new Error('Member data is required');
174
+ }
175
+ const result = await this.channelService.saveMembersToChannel(ctx.params.data);
176
+ if (result instanceof Error) {
177
+ logger.error('Failed to save members to channel: %s', result.message);
178
+ throw result;
179
+ }
180
+ logger.debug('Members saved to channel successfully', {
181
+ channelId: ctx.params.data.channelId,
182
+ memberCount: ctx.params.data.membersIds?.length || 0
183
+ });
184
+ return result;
185
+ } catch (error) {
186
+ logger.error('Error in SaveMembersToChannel action: %o', error);
187
+ throw error;
188
+ }
189
+ }
190
+ },
191
+ [ChannelServiceCommands.CreateDirectChannel]: {
192
+ params: {
193
+ data: 'object'
194
+ },
195
+ handler: async ctx => {
196
+ try {
197
+ logger.debug('Creating direct channel', {
198
+ sender: ctx.params.data?.sender,
199
+ receiverCount: ctx.params.data?.receiver?.length || 0,
200
+ orgName: ctx.params.data?.orgName
201
+ });
202
+ if (!ctx.params.data) {
203
+ throw new Error('Direct channel data is required');
204
+ }
205
+ const result = await this.channelService.createDirectChannel(ctx.params.data);
206
+ if (result instanceof Error) {
207
+ logger.error('Failed to create direct channel: %s', result.message);
208
+ throw result;
209
+ }
210
+ logger.debug('Direct channel created successfully', {
211
+ channelId: result?.id,
212
+ sender: ctx.params.data.sender
213
+ });
214
+ // Emit channel created event
215
+ await ctx.emit('channel.created', {
216
+ event: {
217
+ channel: result,
218
+ userId: ctx.params.data.sender
219
+ }
220
+ });
221
+ return result;
222
+ } catch (error) {
223
+ logger.error('Error in CreateDirectChannel action: %o', error);
224
+ throw error;
225
+ }
226
+ }
227
+ },
228
+ [ChannelServiceCommands.DeleteChannel]: {
229
+ params: {
230
+ id: 'string'
231
+ },
232
+ handler: async ctx => {
233
+ try {
234
+ logger.debug('Deleting channel', {
235
+ channelId: ctx.params.id
236
+ });
237
+ if (!ctx.params.id) {
238
+ throw new Error('Channel ID is required');
239
+ }
240
+ const result = await this.channelService.deleteChannel(ctx.params.id);
241
+ if (result instanceof Error) {
242
+ logger.error('Failed to delete channel: %s', result.message);
243
+ throw result;
244
+ }
245
+ logger.debug('Channel deleted successfully', {
246
+ channelId: ctx.params.id
247
+ });
248
+ // Emit channel deleted event
249
+ await ctx.emit('channel.deleted', {
250
+ event: {
251
+ channelId: ctx.params.id
252
+ }
253
+ });
254
+ return result;
255
+ } catch (error) {
256
+ logger.error('Error in DeleteChannel action: %o', error);
257
+ throw error;
258
+ }
259
+ }
260
+ },
261
+ [ChannelServiceCommands.SaveChannel]: {
262
+ params: {
263
+ data: 'object'
264
+ },
265
+ handler: async ctx => {
266
+ try {
267
+ logger.debug('Saving channel', {
268
+ type: ctx.params.data?.type,
269
+ creator: ctx.params.data?.creator,
270
+ team: ctx.params.data?.team
271
+ });
272
+ if (!ctx.params.data) {
273
+ throw new Error('Channel data is required');
274
+ }
275
+ const result = await this.channelService.saveChannel(ctx.params.data);
276
+ if (result instanceof Error) {
277
+ logger.error('Failed to save channel: %s', result.message);
278
+ throw result;
279
+ }
280
+ logger.debug('Channel saved successfully', {
281
+ channelId: result?.id,
282
+ type: ctx.params.data.type
283
+ });
284
+ // Emit channel created event
285
+ await ctx.emit('channel.created', {
286
+ event: {
287
+ channel: result,
288
+ userId: ctx.params.data.creator
289
+ }
290
+ });
291
+ return result;
292
+ } catch (error) {
293
+ logger.error('Error in SaveChannel action: %o', error);
294
+ throw error;
295
+ }
296
+ }
297
+ },
298
+ [ChannelServiceCommands.GetChannels]: {
299
+ params: {
300
+ teamId: 'string',
301
+ userId: 'string',
302
+ includeDeleted: 'boolean',
303
+ lastDeleteAt: 'number',
304
+ orgName: 'string'
305
+ },
306
+ handler: async ctx => {
307
+ try {
308
+ logger.debug('Getting channels', {
309
+ teamId: ctx.params.teamId,
310
+ userId: ctx.params.userId,
311
+ includeDeleted: ctx.params.includeDeleted,
312
+ orgName: ctx.params.orgName
313
+ });
314
+ if (!ctx.params.teamId || !ctx.params.userId) {
315
+ throw new Error('Team ID and User ID are required');
316
+ }
317
+ const result = await this.channelService.getChannels(ctx.params.teamId, ctx.params.userId, ctx.params.includeDeleted, ctx.params.lastDeleteAt, ctx.params.orgName);
318
+ if (result instanceof Error) {
319
+ logger.error('Failed to get channels: %s', result.message);
320
+ throw result;
321
+ }
322
+ const channelCount = Array.isArray(result) ? result.length : 0;
323
+ logger.debug('Channels retrieved successfully', {
324
+ teamId: ctx.params.teamId,
325
+ count: channelCount
326
+ });
327
+ return result;
328
+ } catch (error) {
329
+ logger.error('Error in GetChannels action: %o', error);
330
+ throw error;
331
+ }
332
+ }
333
+ },
334
+ [ChannelServiceCommands.IsMember]: {
335
+ params: {
336
+ id: 'string',
337
+ user: 'string'
338
+ },
339
+ handler: async ctx => {
340
+ try {
341
+ logger.debug('Checking channel membership', {
342
+ channelId: ctx.params.id,
343
+ userId: ctx.params.user
344
+ });
345
+ if (!ctx.params.id || !ctx.params.user) {
346
+ throw new Error('Channel ID and User ID are required');
347
+ }
348
+ const result = await this.channelService.isMember(ctx.params.id, ctx.params.user);
349
+ logger.debug('Channel membership check completed', {
350
+ channelId: ctx.params.id,
351
+ userId: ctx.params.user,
352
+ isMember: result
353
+ });
354
+ return result;
355
+ } catch (error) {
356
+ logger.error('Error in IsMember action: %o', error);
357
+ throw error;
358
+ }
359
+ }
360
+ },
361
+ [ChannelServiceCommands.ViewChannel]: {
362
+ params: {
363
+ id: 'string',
364
+ user: 'string'
365
+ },
366
+ handler: async ctx => {
367
+ try {
368
+ logger.debug('Viewing channel', {
369
+ channelId: ctx.params.id,
370
+ userId: ctx.params.user
371
+ });
372
+ if (!ctx.params.id || !ctx.params.user) {
373
+ throw new Error('Channel ID and User ID are required');
374
+ }
375
+ const result = await this.channelService.viewChannel(ctx.params.id, ctx.params.user);
376
+ logger.debug('Channel viewed successfully', {
377
+ channelId: ctx.params.id,
378
+ userId: ctx.params.user,
379
+ success: result
380
+ });
381
+ // Emit channel viewed event
382
+ await ctx.emit('channel.viewed', {
383
+ event: {
384
+ channelId: ctx.params.id,
385
+ userId: ctx.params.user,
386
+ timestamp: new Date()
387
+ }
388
+ });
389
+ return result;
390
+ } catch (error) {
391
+ logger.error('Error in ViewChannel action: %o', error);
392
+ throw error;
393
+ }
394
+ }
120
395
  },
121
- handler: async ({
122
- params
123
- }) => this.channelService.viewChannel(params.id, params.user)
396
+ [ChannelServiceCommands.GetByName]: {
397
+ params: {
398
+ name: 'string'
399
+ },
400
+ handler: async ctx => {
401
+ try {
402
+ logger.debug('Getting channel by name', {
403
+ name: ctx.params.name
404
+ });
405
+ if (!ctx.params.name) {
406
+ throw new Error('Channel name is required');
407
+ }
408
+ const result = await this.channelService.getByName(ctx.params.name);
409
+ logger.debug('Channel retrieved by name', {
410
+ name: ctx.params.name,
411
+ found: !!result
412
+ });
413
+ return result;
414
+ } catch (error) {
415
+ logger.error('Error in GetByName action: %o', error);
416
+ throw error;
417
+ }
418
+ }
419
+ }
124
420
  }
125
- }
126
- });
421
+ });
422
+ logger.debug('Channel Moleculer Service initialized successfully', {
423
+ topic
424
+ });
425
+ } catch (error) {
426
+ logger.error('Error initializing Channel Moleculer Service: %o', error);
427
+ throw error;
428
+ }
127
429
  }
128
430
  }export{ChannelMoleculerService};//# sourceMappingURL=channel-moleculer-service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"channel-moleculer-service.js","sources":["../../src/plugins/channel-moleculer-service.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"channel-moleculer-service.js","sources":["../../src/plugins/channel-moleculer-service.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -1,8 +1,32 @@
1
1
  import { Service, ServiceBroker } from 'moleculer';
2
2
  import { Container } from 'inversify';
3
+ /**
4
+ * Extended Token Account Moleculer Service
5
+ *
6
+ * This Moleculer service provides a comprehensive microservice interface for device token
7
+ * management and account operations within the messenger platform. It orchestrates
8
+ * token lifecycle events, user session management, and device registration workflows
9
+ * through event-driven architecture.
10
+ *
11
+ * Key capabilities:
12
+ * - User session lifecycle management (login, logout, initialization)
13
+ * - Device token registration and cleanup
14
+ * - Expo notification token management
15
+ * - Auth0 integration and user lookup
16
+ * - Cross-service communication and event handling
17
+ * - Bulk token operations and cleanup
18
+ * - Error handling and recovery mechanisms
19
+ * - Performance monitoring and logging
20
+ *
21
+ * The service integrates with the account microservice through Moleculer broker
22
+ * and provides robust token management for mobile and web applications,
23
+ * ensuring reliable push notification delivery and user authentication flows.
24
+ */
3
25
  export declare class ExtendedTokenAccountMoleculerService extends Service {
4
26
  private readonly extendedTokenAccountService;
5
- constructor(broker: ServiceBroker, { container }: {
27
+ private container;
28
+ constructor(broker: ServiceBroker, { container, settings }: {
6
29
  container: Container;
30
+ settings?: any;
7
31
  });
8
32
  }