@messenger-box/platform-server 10.0.3-alpha.6 → 10.0.3-alpha.62

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 (144) hide show
  1. package/lib/containers/containers.js +3 -1
  2. package/lib/containers/containers.js.map +1 -1
  3. package/lib/containers/context-services-from-container.d.ts +2 -2
  4. package/lib/containers/context-services-from-container.js +2 -1
  5. package/lib/containers/context-services-from-container.js.map +1 -1
  6. package/lib/graphql/resolvers/channel-member.d.ts +3 -3
  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 -3
  10. package/lib/graphql/resolvers/channel.js +275 -53
  11. package/lib/graphql/resolvers/channel.js.map +1 -1
  12. package/lib/graphql/resolvers/extended-token-account.d.ts +3 -32
  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 -31
  16. package/lib/graphql/resolvers/post-thread.d.ts +2 -3
  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 +697 -234
  21. package/lib/graphql/resolvers/post.js.map +1 -1
  22. package/lib/graphql/resolvers/reaction.d.ts +3 -3
  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 +331 -38
  28. package/lib/graphql/schema/channel.graphql.js +1 -1
  29. package/lib/graphql/schema/post-thread.graphql +166 -21
  30. package/lib/graphql/schema/post-thread.graphql.js +1 -1
  31. package/lib/graphql/schema/post.graphql +280 -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 -2
  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 +178 -33
  71. package/lib/services/channel-service.js +735 -276
  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/messenger-notification-service.d.ts +106 -13
  77. package/lib/services/messenger-notification-service.js +824 -442
  78. package/lib/services/messenger-notification-service.js.map +1 -1
  79. package/lib/services/post-service.d.ts +172 -16
  80. package/lib/services/post-service.js +580 -113
  81. package/lib/services/post-service.js.map +1 -1
  82. package/lib/services/post-thread-service.d.ts +114 -5
  83. package/lib/services/post-thread-service.js +400 -13
  84. package/lib/services/post-thread-service.js.map +1 -1
  85. package/lib/services/proxy-services/channel-microservice.d.ts +5 -3
  86. package/lib/services/proxy-services/channel-microservice.js +19 -10
  87. package/lib/services/proxy-services/channel-microservice.js.map +1 -1
  88. package/lib/services/proxy-services/messenger-notification-microservice.d.ts +128 -8
  89. package/lib/services/proxy-services/messenger-notification-microservice.js +324 -29
  90. package/lib/services/proxy-services/messenger-notification-microservice.js.map +1 -1
  91. package/lib/services/proxy-services/post-microservice.d.ts +186 -12
  92. package/lib/services/proxy-services/post-microservice.js +543 -54
  93. package/lib/services/proxy-services/post-microservice.js.map +1 -1
  94. package/lib/services/proxy-services/post-thread-microservice.d.ts +134 -3
  95. package/lib/services/proxy-services/post-thread-microservice.js +388 -6
  96. package/lib/services/proxy-services/post-thread-microservice.js.map +1 -1
  97. package/lib/services/proxy-services/reaction-microservice.d.ts +161 -3
  98. package/lib/services/proxy-services/reaction-microservice.js +474 -2
  99. package/lib/services/proxy-services/reaction-microservice.js.map +1 -1
  100. package/lib/services/reaction-service.d.ts +124 -4
  101. package/lib/services/reaction-service.js +415 -3
  102. package/lib/services/reaction-service.js.map +1 -1
  103. package/lib/store/models/account-token-store.d.ts +1 -1
  104. package/lib/store/models/account-token-store.js.map +1 -1
  105. package/lib/store/models/channel.d.ts +2 -3
  106. package/lib/store/models/channel.js +180 -71
  107. package/lib/store/models/channel.js.map +1 -1
  108. package/lib/store/models/post-thread.d.ts +3 -3
  109. package/lib/store/models/post-thread.js +96 -14
  110. package/lib/store/models/post-thread.js.map +1 -1
  111. package/lib/store/models/post.d.ts +2 -3
  112. package/lib/store/models/post.js +143 -23
  113. package/lib/store/models/post.js.map +1 -1
  114. package/lib/store/models/reaction.d.ts +2 -3
  115. package/lib/store/models/reaction.js +67 -8
  116. package/lib/store/models/reaction.js.map +1 -1
  117. package/lib/store/repositories/__tests__/__fixtures__/team-repository.d.ts +3 -3
  118. package/lib/store/repositories/channel-repository.d.ts +6 -6
  119. package/lib/store/repositories/channel-repository.js +5 -2
  120. package/lib/store/repositories/channel-repository.js.map +1 -1
  121. package/lib/store/repositories/post-repository.d.ts +6 -6
  122. package/lib/store/repositories/post-repository.js +5 -2
  123. package/lib/store/repositories/post-repository.js.map +1 -1
  124. package/lib/store/repositories/post-thread-repository.d.ts +6 -6
  125. package/lib/store/repositories/post-thread-repository.js +5 -2
  126. package/lib/store/repositories/post-thread-repository.js.map +1 -1
  127. package/lib/store/repositories/reaction-repository.d.ts +6 -6
  128. package/lib/store/repositories/reaction-repository.js +5 -2
  129. package/lib/store/repositories/reaction-repository.js.map +1 -1
  130. package/lib/templates/constants/SERVER_TYPES.ts.template +0 -3
  131. package/lib/templates/repositories/ChannelRepository.ts.template +3 -3
  132. package/lib/templates/repositories/PostRepository.ts.template +3 -3
  133. package/lib/templates/repositories/PostThreadRepository.ts.template +3 -3
  134. package/lib/templates/repositories/ReactionRepository.ts.template +3 -4
  135. package/lib/templates/services/ChannelService.ts.template +278 -39
  136. package/lib/templates/services/ExtendedTokenAccountService.ts.template +107 -3
  137. package/lib/templates/services/MessengerNotificationService.ts.template +94 -19
  138. package/lib/templates/services/PostService.ts.template +184 -20
  139. package/lib/templates/services/PostThreadService.ts.template +151 -6
  140. package/lib/templates/services/ReactionService.ts.template +129 -3
  141. package/package.json +4 -4
  142. package/lib/interfaces/context.d.ts +0 -14
  143. package/lib/store/models/common-options.js +0 -20
  144. package/lib/store/models/common-options.js.map +0 -1
@@ -1,4 +1,4 @@
1
- import {ContainerModule}from'inversify';import {TaggedType}from'@common-stack/core';import {ChannelService}from'../services/channel-service.js';import {PostService}from'../services/post-service.js';import {PostThreadService}from'../services/post-thread-service.js';import {ReactionService}from'../services/reaction-service.js';import {MessengerNotificationService}from'../services/messenger-notification-service.js';import {ExtendedTokenAccountService}from'../services/extended-token-account-service.js';import {SERVER_TYPES}from'common';import {ChannelRepository}from'../store/repositories/channel-repository.js';import {PostRepository}from'../store/repositories/post-repository.js';import {PostThreadRepository}from'../store/repositories/post-thread-repository.js';import {ReactionRepository}from'../store/repositories/reaction-repository.js';import {MessageNotificationTemplateMigration}from'../migrations/message-notification-template-migration.js';import'../migrations/mail-template-migration.js';import {ChannelProxyService}from'../services/proxy-services/channel-microservice.js';import {PostThreadMicroservice}from'../services/proxy-services/post-thread-microservice.js';import {PostProxyService}from'../services/proxy-services/post-microservice.js';import {ReactionMicroservice}from'../services/proxy-services/reaction-microservice.js';import {MessengerNotificationMicroservice}from'../services/proxy-services/messenger-notification-microservice.js';/**
1
+ import {ContainerModule}from'inversify';import {TaggedType}from'@common-stack/core';import {ChannelService}from'../services/channel-service.js';import {PostService}from'../services/post-service.js';import {PostThreadService}from'../services/post-thread-service.js';import {ReactionService}from'../services/reaction-service.js';import {MessengerNotificationService}from'../services/messenger-notification-service.js';import {ExtendedTokenAccountService}from'../services/extended-token-account-service.js';import {SERVER_TYPES}from'common/server';import {ChannelRepository}from'../store/repositories/channel-repository.js';import {PostRepository}from'../store/repositories/post-repository.js';import {PostThreadRepository}from'../store/repositories/post-thread-repository.js';import {ReactionRepository}from'../store/repositories/reaction-repository.js';import {MessageNotificationTemplateMigration}from'../migrations/message-notification-template-migration.js';import'../migrations/mail-template-migration.js';import {AddPostsConfigurationsMigration}from'../migrations/dbMigrations/AddPostsConfigurationsMigration.js';import {ChannelProxyService}from'../services/proxy-services/channel-microservice.js';import {PostThreadMicroservice}from'../services/proxy-services/post-thread-microservice.js';import {PostProxyService}from'../services/proxy-services/post-microservice.js';import {ReactionMicroservice}from'../services/proxy-services/reaction-microservice.js';import {MessengerNotificationMicroservice}from'../services/proxy-services/messenger-notification-microservice.js';/**
2
2
  * Local services and exposed microservices to serve remote connections.
3
3
  * Operates within in the Gateway.
4
4
  *
@@ -6,6 +6,8 @@ import {ContainerModule}from'inversify';import {TaggedType}from'@common-stack/co
6
6
  */
7
7
  const proxyServiceContainerModule = settings => new ContainerModule(bind => {
8
8
  bind('MongodbMigration').to(MessageNotificationTemplateMigration).whenTargetNamed(MessageNotificationTemplateMigration.name);
9
+ // add Db migrations
10
+ bind('MongodbMigration').to(AddPostsConfigurationsMigration).whenTargetNamed(AddPostsConfigurationsMigration.name);
9
11
  bind(SERVER_TYPES.ExtendedTokenAccountService).to(ExtendedTokenAccountService).inSingletonScope().whenTargetIsDefault();
10
12
  bind(SERVER_TYPES.ChannelService).to(ChannelProxyService).inSingletonScope().whenTargetNamed(TaggedType.MICROSERVICE);
11
13
  bind(SERVER_TYPES.PostService).to(PostProxyService).inSingletonScope().whenTargetNamed(TaggedType.MICROSERVICE);
@@ -1 +1 @@
1
- {"version":3,"file":"containers.js","sources":["../../src/containers/containers.ts"],"sourcesContent":[null],"names":[],"mappings":"m7CAgCA;;;;;AAKG;AACI,MAAM,2BAA2B,GAA6C,QAAS,IAAI,mBAC3E,CAAA,IAAE;MACb,CAAA,oBAAmB,EAAC,CAAA,oCAAA,CAAA,CAAA,eAAA,CAAA,oCAAA,CAAA,IAAA,CAAA;gDACoB,CAAC,EAAA,CAAA,2BAAA,CAAA,CAAA,gBAAA,EAAA,CAAA,mBAAA,EAAA;AACxC,EAAA,IAAA,CAAA,YAAA,CAAA,cAAgB,CAAA,CAAA,EAAA,CAAA,mBAAA,CAAA,CAAA,gBAA2C,EAAA,CAAA,eAAA,CAAA,UAAA,CAAA,YAAA,CAAA;AAChE,EAAA,IAAA,CAAA,YAAK,CAAA,WAAa,CAAA,CAAA,EAAA,CAAA,gBAA4B,CAAA,CAAA,gBAAA,EAAA,CAAA,eAAA,CAAA,UAAA,CAAA,YAAA,CAAA;uCACX,EAAC,CAAA,sBAAA,CAAA,CAAA,gBAAA,EAAA,CAAA,eAAA,CAAA,UAAA,CAAA,YAAA,CAAA;AAC/B,EAAA,IAAA,CAAA,YAAA,CAAA,eAAkB,CAAA,CAAA,EAAA,CAAA,oBAAA,CAAA,CAAA,gBAAA,EAAA,CAAA,eAAA,CAAA,UAAA,CAAA,YAAA,CAAA;AAClB,EAAA,IAAA,CAAA,YAAA,CAAA,4BAAsB,CAAA,CAAA,EAAA,CAAA,iCAAA,CAAA,CAAA,gBAAA,EAAA,CAAA,eAAA,CAAA,UAAA,CAAA,YAAA,CAAA;AAE3B,CAAA;;AAEK;AACA;AAEL;;AAEK;AACA,MAAA,sBAA0B,GAAC,QAAA,IAAc,IAAA,eAAA,CAAA,IAAA,IAAA;AAC9C,EAAA,IAAA,CAAA,YAAyB,CAAA,2BAA+B,CAAA,CAAA,EAAA,CAAA,2BAAA,CAAA,CAAA,gBAAA,EAAA,CAAA,mBAAA,EAAA;qCACzB,CAAA,CAAA,EAAA,CAAA,iBAAA,CAAA,CAAA,gBAAA,EAAA,CAAA,mBAAA,EAAA;AAC1B,EAAA,IAAA,CAAA,YAAA,CAAA,cAAkB,CAAA,CAAA,EAAA,CAAA,cAAA,CAAA,CAAA,gBAAA,EAAA,CAAA,mBAAA,EAAA;AAClB,EAAA,IAAA,CAAA,YAAA,CAAA,oBAA2B,CAAA,CAAA,EAAA,CAAA,oBAAc,CAAA,CAAA,gBAAA,EAAA,CAAA,mBAAA,EAAA;AAE9C,EAAA,IAAA,CAAA,YAAuB,CAAA,kBAA6B,CAAA,CAAA,EAAA,CAAA,kBAAA,CAAA,CAAA,gBAAA,EAAA,CAAA,mBAAA,EAAA;kCACvB,CAAA,CAAA,EAAA,CAAA,cAAA,CAAA,CAAA,gBAAA,EAAA,CAAA,mBAAA,EAAA;AACxB,EAAA,IAAA,CAAA,YAAA,CAAA,WAAkB,CAAA,CAAA,EAAA,CAAA,WAAA,CAAA,CAAA,gBAAA,EAAA,CAAA,mBAAA,EAAA;AAClB,EAAA,IAAA,CAAA,YAAA,CAAA,iBAA2B,CAAA,CAAA,EAAA,CAAA,iBAAc,CAAA,CAAA,gBAAA,EAAA,CAAA,mBAAA,EAAA;AAE9C,EAAA,IAAA,CAAA,YAAoC,CAAA,eAAa,CAAA,CAAA,EAAA,CAAA,eAA6B,CAAA,CAAA,gBAAA,EAAA,CAAA,mBAAA,EAAA;gDACpC,CAAA,CAAA,EAAA,CAAA,4BAAA,CAAA,CAAA,gBAAA,EAAA,CAAA,mBAAA,EAAA;AACrC,CAAA"}
1
+ {"version":3,"file":"containers.js","sources":["../../src/containers/containers.ts"],"sourcesContent":[null],"names":[],"mappings":"siDAgCA;;;;;AAKG;AACI,MAAM,2BAA2B,GAA6C,QAAS,IAAI,mBAC3E,CAAA,IAAE;MACb,CAAA,oBAAmB,EAAC,CAAA,oCAAA,CAAA,CAAA,eAAA,CAAA,oCAAA,CAAA,IAAA,CAAA;;AAEnB,EAAA,IAAA,CAAA,kBAAgB,CAAA,CAAA,EAAA,CAAA,+BAAoC,CAAC,CAAA,eAAM,CAAA,+BAAA,CAAA,IAAA,CAAA;MAC5C,CAAA,YAAA,CAAA,2BAAA,CAAA,CAAA,EAAA,CAAA,2BAAA,CAAA,CAAA,gBAAA,EAAA,CAAA,mBAAA,EAAA;MAChB,CAAA,2BAAoB,CAAA,CAAA,EAAA,CAAA,mBAAA,CAAA,CAAA,gBAAA,EAAA,CAAA,eAAA,CAAA,UAAA,CAAA,YAAA,CAAA;oDACgB,CAAA,CAAA,gBAAA,EAAA,CAAA,eAAA,CAAA,UAAA,CAAA,YAAA,CAAA;AACnC,EAAA,IAAA,CAAA,YAAA,CAAA,iBAAgB,CAAA,CAAA,EAAA,CAAA,sBAAsC,CAAA,CAAA,gBAAA,EAAA,CAAA,eAAA,CAAA,UAAA,CAAA,YAAA,CAAA;AAC3D,EAAA,IAAA,CAAA,YAAK,CAAA,eAAa,CAAA,CAAA,EAAA,CAAA,oBAA4B,CAAA,CAAA,gBAAA,EAAA,CAAA,eAAA,CAAA,UAAA,CAAA,YAAA,CAAA;gDACV,CAAA,CAAA,EAAA,CAAA,iCAAA,CAAA,CAAA,gBAAA,EAAA,CAAA,eAAA,CAAA,UAAA,CAAA,YAAA,CAAA;AAC/B,CAAA;AACA;AAEL;;AAEK;AACA;AAEL;AACQ,4BAAwB,GAAA,QAAA,IAAA,IAAA,eAAA,CAAA,IAAA,IAAA;AAC3B,EAAA,IAAA,CAAA,YAAA,CAAA,2BAAkB,CAAA,CAAA,EAAA,CAAA,2BAAA,CAAA,CAAA,gBAAA,EAAA,CAAA,mBAAA,EAAA;AAClB,EAAA,IAAA,CAAA,YAAA,CAAA,iBAA2B,CAAA,CAAA,EAAA,CAAA,iBAAc,CAAA,CAAA,gBAAA,EAAA,CAAA,mBAAA,EAAA;AAC9C,EAAA,IAAA,CAAA,YAAyB,CAAA,cAAa,CAAA,CAAA,EAAA,CAAiB,cAAC,CAAA,CAAA,gBAAA,EAAA,CAAA,mBAAA,EAAA;wCAClB,CAAA,CAAA,EAAA,CAAA,oBAAA,CAAA,CAAA,gBAAA,EAAA,CAAA,mBAAA,EAAA;AACjC,EAAA,IAAA,CAAA,YAAA,CAAA,kBAAkB,CAAA,CAAA,EAAA,CAAA,kBAAA,CAAA,CAAA,gBAAA,EAAA,CAAA,mBAAA,EAAA;AAClB,EAAA,IAAA,CAAA,YAAA,CAAA,cAAgB,CAAU,CAAC,EAAA,CAAA,cAAc,CAAA,CAAA,gBAAA,EAAA,CAAA,mBAAA,EAAA;AAE9C,EAAA,IAAA,CAAA,YAAuB,CAAA,WAAa,CAAA,CAAA,EAAA,CAAA,WAAgB,CAAA,CAAA,gBAAA,EAAA,CAAA,mBAAA,EAAA;qCAChB,CAAA,CAAA,EAAA,CAAA,iBAAA,CAAA,CAAA,gBAAA,EAAA,CAAA,mBAAA,EAAA;AAC/B,EAAA,IAAA,CAAA,YAAA,CAAA,eAAkB,CAAA,CAAA,EAAA,CAAA,eAAA,CAAA,CAAA,gBAAA,EAAA,CAAA,mBAAA,EAAA;AAClB,EAAA,IAAA,CAAA,YAAA,CAAA,4BAAuC,CAAC,CAAC,EAAA,CAAA,4BAAA,CAAA,CAAA,gBAAA,EAAA,CAAA,mBAAA,EAAA;AAE9C,CAAA"}
@@ -1,3 +1,3 @@
1
1
  import { interfaces } from 'inversify';
2
- import { IServices } from '../interfaces';
3
- export declare const contextServicesFromContainer: (container: interfaces.Container) => IServices;
2
+ import { ServerContext } from 'common/server';
3
+ export declare const contextServicesFromContainer: (container: interfaces.Container) => Partial<ServerContext>;
@@ -1,4 +1,5 @@
1
- import {TaggedType}from'@common-stack/core';import {SERVER_TYPES}from'common';const contextServicesFromContainer = container => {
1
+ import {TaggedType}from'@common-stack/core';import {SERVER_TYPES}from'common/server';// import { ExtendedTokenAccountService } from '../services';
2
+ const contextServicesFromContainer = container => {
2
3
  const services = {
3
4
  extendedTokenAccountService: container.get(SERVER_TYPES.ExtendedTokenAccountService),
4
5
  pubsub: container.get('PubSub'),
@@ -1 +1 @@
1
- {"version":3,"file":"context-services-from-container.js","sources":["../../src/containers/context-services-from-container.ts"],"sourcesContent":[null],"names":[],"mappings":"8EAca,MAAA,4BAA4B,GAAG,SAAC,IAA8C;AACvF,EAAA,MAAA,WAAiB;+BACc,EAAA,aAAW,CAAC,YACvB,CAAA;AAEhB,IAAA,MAAA,EAAA,SAAiB,CAAA,GAAA,CAAC;AAClB,IAAA,cAAA,EAAA,SAAgB,CAAA,QAAU,CAAA,YAA0B,CAAA,cAAa,EAAA,UAAgB,CAAA,YAAW,CAAA;AAC5F,IAAA,WAAA,EAAA,SAAa,CAAA,QAAU,CAAA,YAAuB,CAAA,WAAa,EAAA,UAAa,CAAA,YAAW,CAAA;AACnF,IAAA,iBAAA,EAAA,SAAmB,CAAA,QAAU,CAAA,YACzB,CAAA,iBAAa,EAAA,UACb,CAAA,YAAW,CAAA;AAEf,IAAA,eAAA,EAAA,SAAiB,CAAA,QAAU,CAAA,YAA2B,CAAA,eAAa,EAAA,UAAiB,CAAA,YAAW,CAAA;AAC/F,IAAA,4BAAA,EAAA,SAA8B,CAAA,QAAU,CAAA,YACpC,CAAA,4BAAa,EAAA,UACb,CAAA,YAAW;;AAGnB,EAAA,OAAA;AACJ"}
1
+ {"version":3,"file":"context-services-from-container.js","sources":["../../src/containers/context-services-from-container.ts"],"sourcesContent":[null],"names":[],"mappings":"qFAaA;AAEa,MAAA,4BAA4B,GAAG,SAAC,IAA2D;AACpG,EAAA,MAAA,WAAiB;+BACc,EAAA,aAAW,CAAC,YACvB,CAAA;AAEhB,IAAA,MAAA,EAAA,SAAiB,CAAA,GAAA,CAAC;AAClB,IAAA,cAAA,EAAA,SAAgB,CAAA,QAAU,CAAA,YAA0B,CAAA,cAAa,EAAA,UAAgB,CAAA,YAAW,CAAA;AAC5F,IAAA,WAAA,EAAA,SAAa,CAAA,QAAU,CAAA,YAAuB,CAAA,WAAa,EAAA,UAAa,CAAA,YAAW,CAAA;AACnF,IAAA,iBAAA,EAAA,SAAmB,CAAA,QAAU,CAAA,YACzB,CAAA,iBAAa,EAAA,UACb,CAAA,YAAW,CAAA;AAEf,IAAA,eAAA,EAAA,SAAiB,CAAA,QAAU,CAAA,YAA2B,CAAA,eAAa,EAAA,UAAiB,CAAA,YAAW,CAAA;AAC/F,IAAA,4BAAA,EAAA,SAA8B,CAAA,QAAU,CAAA,YACpC,CAAA,4BAAa,EAAA,UACb,CAAA,YAAW;;AAGnB,EAAA,OAAA;AACJ"}
@@ -1,3 +1,3 @@
1
- import { IResolvers } from 'common';
2
- import { IContext } from '../../interfaces';
3
- export declare const channelMemberResolvers: () => IResolvers<IContext>;
1
+ import { IResolverOptions } from '@common-stack/server-core';
2
+ import { IResolvers } from 'common/server';
3
+ export declare const channelMemberResolvers: (options: IResolverOptions) => IResolvers;
@@ -1,16 +1,41 @@
1
- const channelMemberResolvers = () => ({
1
+ const channelMemberResolvers = options => ({
2
2
  Channel: {
3
3
  creator(src, args, {
4
- accountService
4
+ accountService,
5
+ accountUserDataLoader
5
6
  }) {
6
- return accountService.findAccountById(src.creator.toString());
7
+ options.logger.trace('(Channel.creator) src.creator [%s]', src.creator);
8
+ // Check if creator exists and is not null/undefined before calling service
9
+ if (!src.creator || src.creator === null || src.creator === undefined) {
10
+ return null;
11
+ }
12
+ return accountUserDataLoader.load(src.creator.toString());
7
13
  }
8
14
  },
9
15
  ChannelMember: {
16
+ id(src) {
17
+ // Handle both virtual 'id' and MongoDB '_id' fields
18
+ const memberId = src.id || src._id;
19
+ if (!memberId) {
20
+ // If neither exists, generate an id based on user and other properties
21
+ // This ensures we always have a unique identifier
22
+ if (src.user) {
23
+ return `${src.user.toString()}-${src.createdAt || Date.now()}`;
24
+ }
25
+ throw new Error('ChannelMember id is required but not provided');
26
+ }
27
+ return memberId.toString();
28
+ },
10
29
  user(src, args, {
11
- accountService
30
+ accountService,
31
+ accountUserDataLoader
12
32
  }) {
13
- return accountService.findAccountById(src.user.toString());
33
+ options.logger.trace('(ChannelMember.user) src.user [%s]', src.user);
34
+ // Check if user exists and is not null/undefined before calling service
35
+ if (!src.user || src.user === null || src.user === undefined) {
36
+ return null;
37
+ }
38
+ return accountUserDataLoader.load(src.user.toString());
14
39
  }
15
40
  },
16
41
  Query: {},
@@ -1 +1 @@
1
- {"version":3,"file":"channel-member.js","sources":["../../../src/graphql/resolvers/channel-member.ts"],"sourcesContent":[null],"names":[],"mappings":"AAGa,MAAA,sBAAsB,GAAG,OAA6B;AAC/D,EAAA,OAAA,EAAO;AACH,IAAA,OAAA,CAAA,GAAO,EAAI,IAAE;;;AAGhB,MAAA,OAAA,cAAA,CAAA,eAAA,CAAA,GAAA,CAAA,OAAA,CAAA,QAAA,EAAA,CAAA;AACD;AACI,GAAA;eACW,EAAA;QACX,CAAC,GAAA,EAAA,IAAA,EAAA;AACJ,MAAA;AACD,KAAA,EAAA;AACA,MAAA,qBAAY,CAAA,eAAA,CAAA,GAAA,CAAA,IAAA,CAAA,QAAA,EAAA,CAAA;AACf;;;;"}
1
+ {"version":3,"file":"channel-member.js","sources":["../../../src/graphql/resolvers/channel-member.ts"],"sourcesContent":[null],"names":[],"mappings":"MAIa,sBAAsB,GAAG,OAA0B,KAAgB;AAC5E,EAAA,OAAA,EAAO;WACI,CAAA,GAAA,MAAM,EAAA;oBACD;;AAGR,KAAA,EAAA;AACI,MAAA,OAAA,CAAA,MAAA,CAAA,MAAW,oCAAC,EAAA,GAAA,CAAA,OAAA,CAAA;;cAGT,CAAA,OAAA,IAAA,GAAA,CAAA,OAAA,KAAsB,IAAK,IAAI,GAAA,CAAA,OAAQ,KAAQ,SAAwC,EAAA;QAClG,OAAC,IAAA;AACJ;AACD,MAAA,OAAA,qBAAe,CAAA,IAAA,CAAA,GAAA,CAAA,OAAA,CAAA,QAAA,EAAA,CAAA;AACX;;eAEU,EAAA;YACN;;oBAEsD,GAAA,GAAA,CAAA,EAAA,IAAA,GAAA,CAAA,GAAA;AAClD,MAAA,IAAA,CAAA,QAAA,EAAO;AACH;;AAEJ,QAAA,IAAA,GAAA,CAAA,IAAA,EAAM;iBACT,CAAA,EAAA,GAAA,CAAA,IAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA,GAAA,CAAA,SAAA,IAAA,IAAA,CAAA,GAAA,EAAA,CAAA,CAAA;AACD;QACJ,MAAC,IAAA,KAAA,CAAA,+CAAA,CAAA;;aAEU,QAAO,CAAA,QAAM,EAAA;;AAGpB,IAAA,IAAA,CAAA,GAAA,EAAA,IAAQ,EAAA;AACJ,MAAA,cAAA;;;aAIP,CAAA,MAAA,CAAA,KAAA,CAAA,oCAAA,EAAA,GAAA,CAAA,IAAA,CAAA;AACJ;AACD,MAAA,KAAO,GAAE,CAAA,IAAA,IAAA,GAAA,CAAA,IAAA,KAAA,IAAA,IAAA,GAAA,CAAA,IAAA,KAAA,SAAA,EAAA;AACT,QAAA,OAAY,IAAA;AACf;;;;;;"}
@@ -1,3 +1,3 @@
1
- import { IResolvers } from 'common';
2
- import { IContext } from '../../interfaces';
3
- export declare const channelResolvers: () => IResolvers<IContext>;
1
+ import { IResolverOptions } from '@common-stack/server-core';
2
+ import { IResolvers } from 'common/server';
3
+ export declare const channelResolvers: (options: IResolverOptions) => IResolvers;
@@ -1,9 +1,24 @@
1
- import {RoomType}from'common';const channelResolvers = () => ({
1
+ import {RoomType}from'common/server';const channelResolvers = options => ({
2
2
  Channel: {
3
3
  creator(src, args, {
4
4
  accountService
5
5
  }) {
6
+ options.logger.trace('(Channel.creator) src.creator [%s]', src.creator);
7
+ // Check if creator exists and is not null/undefined before calling service
8
+ if (!src.creator || src.creator === null || src.creator === undefined) {
9
+ return null;
10
+ }
6
11
  return accountService.findAccountById(src.creator.toString());
12
+ },
13
+ lastMessage(src, args, {
14
+ postService
15
+ }) {
16
+ options.logger.trace('(Channel.lastMessage) src.id [%s]', src.id);
17
+ // Check if src.id exists before calling service
18
+ if (!src.id || src.id === null || src.id === undefined) {
19
+ return null;
20
+ }
21
+ return postService.getLastMessage(src.id);
7
22
  }
8
23
  },
9
24
  Query: {
@@ -13,27 +28,47 @@ import {RoomType}from'common';const channelResolvers = () => ({
13
28
  channelService,
14
29
  userContext
15
30
  }) {
31
+ options.logger.trace('(Query.channelByName) name [%s]', name);
32
+ if (!name) {
33
+ options.logger.warn('Missing channel name');
34
+ return null;
35
+ }
16
36
  return channelService.getByName(name);
17
- // return channelService.getByName(userContext.teamId, name) as Promise<IChannel>;
37
+ // return channelService.getByName(userContext.teamId, name) as unknown as Promise<IChannel>;
18
38
  },
19
39
  channels(src, _, {
20
40
  channelService,
21
41
  userContext
22
42
  }) {
43
+ options.logger.trace('(Query.channels) userContext [%j]', {
44
+ accountId: userContext.accountId,
45
+ teamId: userContext.teamId,
46
+ orgId: userContext.orgId
47
+ });
23
48
  const {
24
49
  accountId,
25
50
  teamId,
26
51
  orgId
27
52
  } = userContext;
53
+ if (!accountId || !teamId) {
54
+ options.logger.warn('Missing required user context');
55
+ return [];
56
+ }
28
57
  return channelService.getChannels(teamId, accountId, false, new Date().getTime(), orgId);
29
58
  },
30
- channelsByUser(src, args, {
59
+ async channelsByUser(src, args, {
31
60
  channelService,
32
61
  userContext
33
62
  }) {
63
+ options.logger.trace('(Query.channelsByUser) args [%j]', args);
34
64
  const {
35
65
  accountId
36
66
  } = userContext;
67
+ console.log('accountId', accountId);
68
+ if (!accountId) {
69
+ options.logger.warn('Missing accountId in user context');
70
+ return [];
71
+ }
37
72
  const {
38
73
  criteria,
39
74
  role,
@@ -41,25 +76,113 @@ import {RoomType}from'common';const channelResolvers = () => ({
41
76
  } = args || {
42
77
  criteria: {}
43
78
  };
44
- return channelService.getAll({
45
- ...rest,
46
- criteria: {
47
- ...criteria,
48
- members: criteria?.members ?? {
49
- $elemMatch: {
50
- user: accountId,
51
- ...(role ? {
52
- roles: role
53
- } : {})
79
+ console.log('criteria', criteria);
80
+ console.log('role', role);
81
+ try {
82
+ // Check if Service type is included in the query
83
+ const includesService = criteria?.type === RoomType.Service || Array.isArray(criteria?.type) && criteria.type.includes(RoomType.Service) || criteria?.type?.$in && criteria.type.$in.includes(RoomType.Service);
84
+ if (includesService) {
85
+ // If Service type is included, fetch SERVICE and non-SERVICE channels separately
86
+ const {
87
+ type,
88
+ ...restCriteria
89
+ } = criteria;
90
+ // Build non-service types from original query
91
+ let nonServiceTypes;
92
+ if (Array.isArray(type)) {
93
+ nonServiceTypes = type.filter(t => t !== RoomType.Service);
94
+ } else if (type?.$in) {
95
+ nonServiceTypes = type.$in.filter(t => t !== RoomType.Service);
96
+ } else {
97
+ // Single type that's not Service (shouldn't happen in this branch but for safety)
98
+ nonServiceTypes = type !== RoomType.Service ? [type] : [];
99
+ }
100
+ // Fetch SERVICE channels separately (no orgName restriction)
101
+ const serviceChannels = await channelService.getAll({
102
+ ...rest,
103
+ criteria: {
104
+ type: RoomType.Service
54
105
  }
106
+ });
107
+ // Fetch non-SERVICE channels separately (with orgName and member restrictions)
108
+ let otherChannels = [];
109
+ if (nonServiceTypes.length > 0) {
110
+ otherChannels = await channelService.getAll({
111
+ ...rest,
112
+ criteria: {
113
+ ...restCriteria,
114
+ type: nonServiceTypes.length === 1 ? nonServiceTypes[0] : {
115
+ $in: nonServiceTypes
116
+ },
117
+ members: criteria?.members ?? {
118
+ $elemMatch: {
119
+ user: accountId,
120
+ ...(role ? {
121
+ roles: role
122
+ } : {})
123
+ }
124
+ }
125
+ }
126
+ });
127
+ }
128
+ // Sort each group separately
129
+ const sortedServiceChannels = serviceChannels.sort((a, b) => (a.title || '').localeCompare(b.title || ''));
130
+ const sortedOtherChannels = otherChannels.sort((a, b) => {
131
+ const aTime = a.updatedAt ? new Date(a.updatedAt).getTime() : 0;
132
+ const bTime = b.updatedAt ? new Date(b.updatedAt).getTime() : 0;
133
+ return bTime - aTime;
134
+ });
135
+ options.logger.trace('SERVICE channels count: %d', sortedServiceChannels.length);
136
+ options.logger.trace('Other channels count: %d', sortedOtherChannels.length);
137
+ if (sortedServiceChannels.length > 0) {
138
+ options.logger.trace('First SERVICE channel: %s', sortedServiceChannels[0].title);
55
139
  }
140
+ // GUARANTEE: SERVICE channels first, then others
141
+ const finalResult = [...sortedServiceChannels, ...sortedOtherChannels];
142
+ options.logger.trace('Final result order: %j', finalResult.map(ch => `${ch.type}: ${ch.title}`));
143
+ return finalResult;
144
+ } else {
145
+ // No Service type - apply member filter to all channels
146
+ const querycriteria = {
147
+ ...criteria,
148
+ members: criteria?.members ?? {
149
+ $elemMatch: {
150
+ user: accountId,
151
+ ...(role ? {
152
+ roles: role
153
+ } : {})
154
+ }
155
+ }
156
+ };
157
+ const results = await channelService.getAll({
158
+ ...rest,
159
+ criteria: querycriteria
160
+ });
161
+ // Sort results to put SERVICE channels first
162
+ return results.sort((a, b) => {
163
+ // SERVICE channels always come first
164
+ if (a.type === RoomType.Service && b.type !== RoomType.Service) return -1;
165
+ if (a.type !== RoomType.Service && b.type === RoomType.Service) return 1;
166
+ // If both are SERVICE channels, sort by title/name
167
+ if (a.type === RoomType.Service && b.type === RoomType.Service) {
168
+ return (a.title || '').localeCompare(b.title || '');
169
+ }
170
+ // For non-SERVICE channels, sort by updatedAt (most recent first)
171
+ const aTime = a.updatedAt ? new Date(a.updatedAt).getTime() : 0;
172
+ const bTime = b.updatedAt ? new Date(b.updatedAt).getTime() : 0;
173
+ return bTime - aTime;
174
+ });
56
175
  }
57
- });
176
+ } catch (error) {
177
+ options.logger.error('Error in channelsByUser: %o', error);
178
+ return [];
179
+ }
58
180
  },
59
181
  supportServiceChannels(src, args, {
60
182
  channelService,
61
183
  userContext
62
184
  }) {
185
+ options.logger.trace('(Query.supportServiceChannels) args [%j]', args);
63
186
  const {
64
187
  accountId
65
188
  } = userContext;
@@ -70,12 +193,17 @@ import {RoomType}from'common';const channelResolvers = () => ({
70
193
  } = args || {
71
194
  criteria: {}
72
195
  };
73
- return channelService.getAll({
74
- ...rest,
75
- criteria: {
76
- ...criteria
77
- }
78
- });
196
+ try {
197
+ return channelService.getAll({
198
+ ...rest,
199
+ criteria: {
200
+ ...criteria
201
+ }
202
+ });
203
+ } catch (error) {
204
+ options.logger.error('Error in supportServiceChannels: %o', error);
205
+ return [];
206
+ }
79
207
  },
80
208
  directChannel(src, {
81
209
  id
@@ -83,6 +211,15 @@ import {RoomType}from'common';const channelResolvers = () => ({
83
211
  channelService,
84
212
  userContext
85
213
  }) {
214
+ options.logger.trace('(Query.directChannel) id [%s]', id);
215
+ if (!id) {
216
+ options.logger.warn('Missing channel id');
217
+ return null;
218
+ }
219
+ if (!userContext.accountId) {
220
+ options.logger.warn('Missing accountId in user context');
221
+ return null;
222
+ }
86
223
  return channelService.get({
87
224
  criteria: {
88
225
  id,
@@ -97,6 +234,11 @@ import {RoomType}from'common';const channelResolvers = () => ({
97
234
  channelService,
98
235
  userContext
99
236
  }) {
237
+ options.logger.trace('(Query.viewChannelDetail) id [%s]', id);
238
+ if (!id) {
239
+ options.logger.warn('Missing channel id');
240
+ return null;
241
+ }
100
242
  return channelService.get(id);
101
243
  }
102
244
  },
@@ -110,27 +252,49 @@ import {RoomType}from'common';const channelResolvers = () => ({
110
252
  channelService,
111
253
  userContext
112
254
  }) {
113
- const {
114
- accountId,
115
- teamId,
116
- orgId
117
- } = userContext;
118
- const formatedName = name[0].toUpperCase() + name.slice(1).toLowerCase();
119
- const title = formatedName?.replace(/-/g, ' ') ?? '';
120
- // const channelDetail = await channelService.getByName(userContext.teamId, title);
121
- const channelDetail = await channelService.getByName(title);
122
- if (channelDetail) return;
123
- const channel = channelService.saveChannel({
124
- type: type || RoomType.Channel,
125
- orgName: orgId,
126
- creator: accountId,
127
- title: title,
128
- displayName: name?.toLowerCase(),
129
- topic: name?.toLowerCase(),
130
- team: team || teamId,
131
- description
255
+ options.logger.trace('(Mutation.createChannel) args [%j]', {
256
+ name,
257
+ description,
258
+ type,
259
+ team
132
260
  });
133
- return channel;
261
+ try {
262
+ if (!name) {
263
+ options.logger.warn('Missing channel name');
264
+ throw new Error('Channel name is required');
265
+ }
266
+ if (!userContext.accountId) {
267
+ options.logger.warn('Missing accountId in user context');
268
+ throw new Error('User not authenticated');
269
+ }
270
+ const {
271
+ accountId,
272
+ teamId,
273
+ orgId
274
+ } = userContext;
275
+ const formatedName = name[0].toUpperCase() + name.slice(1).toLowerCase();
276
+ const title = formatedName?.replace(/-/g, ' ') ?? '';
277
+ // const channelDetail = await channelService.getByName(userContext.teamId, title);
278
+ const channelDetail = await channelService.getByName(title);
279
+ if (channelDetail) {
280
+ options.logger.warn('Channel already exists with name: %s', title);
281
+ return null;
282
+ }
283
+ const channel = channelService.saveChannel({
284
+ type: type || RoomType.Channel,
285
+ orgName: orgId,
286
+ creator: accountId,
287
+ title: title,
288
+ displayName: name?.toLowerCase(),
289
+ topic: name?.toLowerCase(),
290
+ team: team || teamId,
291
+ description
292
+ });
293
+ return channel;
294
+ } catch (error) {
295
+ options.logger.error('Error creating channel: %o', error);
296
+ throw error;
297
+ }
134
298
  },
135
299
  addMemberToChannel(src, {
136
300
  channelId,
@@ -139,6 +303,11 @@ import {RoomType}from'common';const channelResolvers = () => ({
139
303
  channelService,
140
304
  userContext
141
305
  }) {
306
+ options.logger.trace('(Mutation.addMemberToChannel) channelId [%s], memberId [%s]', channelId, memberId);
307
+ if (!channelId || !memberId) {
308
+ options.logger.warn('Missing channelId or memberId');
309
+ throw new Error('Channel ID and Member ID are required');
310
+ }
142
311
  return channelService.addMemberToChannel(channelId, memberId);
143
312
  },
144
313
  saveMembersToChannel(src, {
@@ -148,6 +317,11 @@ import {RoomType}from'common';const channelResolvers = () => ({
148
317
  channelService,
149
318
  userContext
150
319
  }) {
320
+ options.logger.trace('(Mutation.saveMembersToChannel) channelId [%s], membersIds [%j]', channelId, membersIds);
321
+ if (!channelId || !membersIds) {
322
+ options.logger.warn('Missing channelId or membersIds');
323
+ throw new Error('Channel ID and Members IDs are required');
324
+ }
151
325
  return channelService.saveMembersToChannel({
152
326
  membersIds,
153
327
  channelId
@@ -161,23 +335,42 @@ import {RoomType}from'common';const channelResolvers = () => ({
161
335
  channelService,
162
336
  userContext
163
337
  }) {
164
- const {
165
- accountId,
166
- orgId
167
- } = userContext;
168
- return channelService.createDirectChannel({
169
- sender: accountId,
170
- receiver: receiver,
171
- displayName,
172
- orgName: orgId,
173
- channelOptions
174
- });
338
+ options.logger.trace('(Mutation.createDirectChannel) receiver [%s], displayName [%s]', receiver, displayName);
339
+ try {
340
+ if (!receiver || !displayName) {
341
+ options.logger.warn('Missing receiver or displayName');
342
+ throw new Error('Receiver and display name are required');
343
+ }
344
+ if (!userContext.accountId || !userContext.orgId) {
345
+ options.logger.warn('Missing user context');
346
+ throw new Error('User context required');
347
+ }
348
+ const {
349
+ accountId,
350
+ orgId
351
+ } = userContext;
352
+ return channelService.createDirectChannel({
353
+ sender: accountId,
354
+ receiver: receiver,
355
+ displayName,
356
+ orgName: orgId,
357
+ channelOptions
358
+ });
359
+ } catch (error) {
360
+ options.logger.error('Error creating direct channel: %o', error);
361
+ throw error;
362
+ }
175
363
  },
176
364
  hideChannel(src, {
177
365
  id
178
366
  }, {
179
367
  channelService
180
368
  }) {
369
+ options.logger.trace('(Mutation.hideChannel) id [%s]', id);
370
+ if (!id) {
371
+ options.logger.warn('Missing channel id');
372
+ throw new Error('Channel ID is required');
373
+ }
181
374
  return channelService.hideChannel(id);
182
375
  },
183
376
  leaveChannel(src, {
@@ -185,6 +378,11 @@ import {RoomType}from'common';const channelResolvers = () => ({
185
378
  }, {
186
379
  channelService
187
380
  }) {
381
+ options.logger.trace('(Mutation.leaveChannel) id [%s]', id);
382
+ if (!id) {
383
+ options.logger.warn('Missing channel id');
384
+ throw new Error('Channel ID is required');
385
+ }
188
386
  return channelService.leaveChannel(id);
189
387
  },
190
388
  deleteChannel(src, {
@@ -192,6 +390,11 @@ import {RoomType}from'common';const channelResolvers = () => ({
192
390
  }, {
193
391
  channelService
194
392
  }) {
393
+ options.logger.trace('(Mutation.deleteChannel) id [%s]', id);
394
+ if (!id) {
395
+ options.logger.warn('Missing channel id');
396
+ throw new Error('Channel ID is required');
397
+ }
195
398
  return channelService.deleteChannel(id);
196
399
  },
197
400
  viewChannel(src, {
@@ -200,6 +403,15 @@ import {RoomType}from'common';const channelResolvers = () => ({
200
403
  userContext,
201
404
  channelService
202
405
  }) {
406
+ options.logger.trace('(Mutation.viewChannel) id [%s], accountId [%s]', id, userContext.accountId);
407
+ if (!id) {
408
+ options.logger.warn('Missing channel id');
409
+ throw new Error('Channel ID is required');
410
+ }
411
+ if (!userContext.accountId) {
412
+ options.logger.warn('Missing accountId in user context');
413
+ throw new Error('User context required');
414
+ }
203
415
  return channelService.viewChannel(id, userContext.accountId);
204
416
  },
205
417
  async sendNotificationOfUnreadMessages(src, {
@@ -208,8 +420,18 @@ import {RoomType}from'common';const channelResolvers = () => ({
208
420
  }, {
209
421
  messengerNotificationService
210
422
  }) {
211
- await messengerNotificationService.sendNotificationOfUnreadMessages(unit, value);
212
- return true;
423
+ options.logger.trace('(Mutation.sendNotificationOfUnreadMessages) unit [%s], value [%s]', unit, value);
424
+ try {
425
+ if (!unit || value === undefined || value === null) {
426
+ options.logger.warn('Missing unit or value');
427
+ throw new Error('Unit and value are required');
428
+ }
429
+ await messengerNotificationService.sendNotificationOfUnreadMessages(unit, value);
430
+ return true;
431
+ } catch (error) {
432
+ options.logger.error('Error sending notification: %o', error);
433
+ return false;
434
+ }
213
435
  }
214
436
  }
215
437
  });export{channelResolvers};//# sourceMappingURL=channel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"channel.js","sources":["../../../src/graphql/resolvers/channel.ts"],"sourcesContent":[null],"names":[],"mappings":"8BAGa,MAAA,gBAAgB,GAAG,OAA6B;AACzD,EAAA,OAAA,EAAO;AACH,IAAA,OAAA,CAAA,GAAO,EAAI,IAAE;;;AAGhB,MAAA,OAAA,cAAA,CAAA,eAAA,CAAA,GAAA,CAAA,OAAA,CAAA,QAAA,EAAA,CAAA;AACD;;AAEQ,EAAA,KAAA,EAAA;iBACkF,CAAA,GAAA,EAAA;;;oBAG1E;AACR,MAAA;;aAIU,cAAM,CAAA,SAAQ,CAAA,IAAA,CAAA;AACxB;AACA,KAAA;YACA,CAAO,GAAA,EAAA,CAAA,EAAA;AACH,MAAA,cAAgB;AAChB,MAAA;AACI,KAAA,EAAA;AACA,MAAA,MAAA;AACI,QAAA,SAAA;AACI,QAAA,MAAA;AACA,QAAA;AACH,OAAA,GAAA,WAAA;AACJ,MAAA,OAAA,cAAA,CAAA,WAAA,CAAA,MAAA,EAAA,SAAA,EAAA,KAAA,EAAA,IAAA,IAAA,EAAA,CAAA,OAAA,EAAA,EAAA,KAAA,CAAA;AACJ,KAAA;AACJ,IAAA,cAAyB,CAAA,GAAA,EAAA,IAAA,EAAA;oBAC7B;;AAEG,KAAA,EAAA;AACA,MAAA,MAAA;;AAEI,OAAA,GAAA,WAAgB;AAChB,MAAA,MAAA;AACI,QAAA,QAAA;AACH,QAAA,IAAA;AACJ,QAAA,GAAA;UACJ,IAAA,IAAA;QACD,QAAa,EAAA;;AAEL,MAAA,OAAA,cAAU,CAAA,MAAA,CAAA;;;qBAGF;AACP,UAAA,OAAA,EAAA,QAAA,EAAA,OAAA,IAAA;AACJ,YAAA,UAAuB,EAAA;cAC3B,IAAA,EAAA,SAAA;cACgB,IAAA,IAAA,GAAA;AACb,gBAAA;eACH,GAAA,EAAA;AACJ;AACD;AACI;;AAEI,KAAA;AACA,IAAA,sBAAc,CAAY,GAAA,EAAA,IAAA,EAAA;oBACyD;;AAEnF,KAAA,EAAA;;AACA,QAAA;AACI,OAAA,GAAA,WAAM;AACN,MAAA,MAAA;AACA,QAAA,QAAA;AACA,QAAA,IAAA;AACA,QAAA,GAAA;AACA,OAAA,GAAA,IAAA,IAAA;gBACA,EAAI;;AAEP,MAAA,OAAA,cAAE,CAAA,MAAA,CAAA;AACH,QAAA,GAAA,IAAA;QACJ,QAAC,EAAA;AAED,UAAA,GAAA;;QAEA;AAEA,KAAA;iBACW,CAAA,GAAA,EAAA;;AAGX,KAAA,EAAA;AACI,MAAA,cAAQ;;AAEJ,KAAA,EAAA;AACA,MAAA,OAAA,cAAyB,CAAA,GAAA,CAAA;gBACzB,EAAW;AACX,UAAA,EAAA;gBACA,WAAc,CAAA,SAAA;AACjB,UAAA,IAAsB,EAAC,QAAA,CAAA;;QAE5B;AACI,KAAA;qBACH,CAAA,GAAA,EAAA;;AAEG,KAAA,EAAA;oBACH;;AAEG,KAAA,EAAA;aACH,cAAA,CAAA,GAAA,CAAA,EAAA,CAAA;;;UAGA,EAAA;AACD,IAAA,MAAA,aAAM,CAAA,GAAA,EAAA;;AAKF,MAAA,WAAA;UACH;AACJ,MAAA;AACJ,KAAE,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"channel.js","sources":["../../../src/graphql/resolvers/channel.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -1,32 +1,3 @@
1
- import { IUserAccount } from 'common';
2
- export declare const resolver: () => {
3
- Query: {
4
- getDeviceToken(src: IUserAccount, args: any, { extendedTokenAccountService, userContext, accountService }: {
5
- extendedTokenAccountService: any;
6
- userContext: any;
7
- accountService: any;
8
- }): Promise<any>;
9
- getAccountByAuth0Id(_: any, { auth0Id }: {
10
- auth0Id: any;
11
- }, { extendedTokenAccountService, userContext, accountService }: {
12
- extendedTokenAccountService: any;
13
- userContext: any;
14
- accountService: any;
15
- }): Promise<any>;
16
- };
17
- Mutation: {
18
- setDeviceToken(_: any, { deviceToken }: {
19
- deviceToken: any;
20
- }, { extendedTokenAccountService, userContext, accountService }: {
21
- extendedTokenAccountService: any;
22
- userContext: any;
23
- accountService: any;
24
- }): Promise<any>;
25
- removeDeviceToken(_: any, { deviceToken }: {
26
- deviceToken: any;
27
- }, { extendedTokenAccountService, userContext }: {
28
- extendedTokenAccountService: any;
29
- userContext: any;
30
- }): any;
31
- };
32
- };
1
+ import { IResolverOptions } from '@common-stack/server-core';
2
+ import { IResolvers } from 'common/server';
3
+ export declare const resolver: (options: IResolverOptions) => IResolvers;