@amityco/ts-sdk 6.4.6-bdc04db.0 → 6.4.6-be7e4df.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (101) hide show
  1. package/dist/@types/core/events.d.ts +4 -4
  2. package/dist/@types/core/events.d.ts.map +1 -1
  3. package/dist/@types/core/model.d.ts +3 -1
  4. package/dist/@types/core/model.d.ts.map +1 -1
  5. package/dist/@types/core/payload.d.ts +1 -1
  6. package/dist/@types/core/payload.d.ts.map +1 -1
  7. package/dist/@types/domains/post.d.ts +1 -1
  8. package/dist/@types/domains/post.d.ts.map +1 -1
  9. package/dist/@types/domains/reaction.d.ts +4 -5
  10. package/dist/@types/domains/reaction.d.ts.map +1 -1
  11. package/dist/client/observers/getTotalUnreadCount.d.ts.map +1 -1
  12. package/dist/client/utils/markerSyncEngine.d.ts.map +1 -1
  13. package/dist/commentRepository/observers/getComment.d.ts +2 -2
  14. package/dist/communityRepository/api/getCommunity.d.ts +4 -4
  15. package/dist/communityRepository/api/getRecommendedCommunities.d.ts +4 -4
  16. package/dist/communityRepository/api/getTopTrendingCommunities.d.ts +5 -2
  17. package/dist/communityRepository/api/getTopTrendingCommunities.d.ts.map +1 -1
  18. package/dist/communityRepository/api/getTrendingCommunities.d.ts +32 -0
  19. package/dist/communityRepository/api/getTrendingCommunities.d.ts.map +1 -0
  20. package/dist/communityRepository/api/index.d.ts +0 -1
  21. package/dist/communityRepository/api/index.d.ts.map +1 -1
  22. package/dist/communityRepository/api/test/getTrendingCommunities.test.d.ts +2 -0
  23. package/dist/communityRepository/api/test/getTrendingCommunities.test.d.ts.map +1 -0
  24. package/dist/communityRepository/observers/getCommunities.d.ts +2 -2
  25. package/dist/communityRepository/observers/getCommunity.d.ts +2 -2
  26. package/dist/communityRepository/observers/getRecommendedCommunities.d.ts +20 -0
  27. package/dist/communityRepository/observers/getRecommendedCommunities.d.ts.map +1 -0
  28. package/dist/communityRepository/observers/getTrendingCommunities.d.ts +20 -0
  29. package/dist/communityRepository/observers/getTrendingCommunities.d.ts.map +1 -0
  30. package/dist/communityRepository/observers/index.d.ts +2 -0
  31. package/dist/communityRepository/observers/index.d.ts.map +1 -1
  32. package/dist/communityRepository/utils/communityQueryFilter.d.ts +2 -0
  33. package/dist/communityRepository/utils/communityQueryFilter.d.ts.map +1 -0
  34. package/dist/core/model/idResolvers.d.ts.map +1 -1
  35. package/dist/core/model/identifyModel.d.ts.map +1 -1
  36. package/dist/index.cjs.js +371 -166
  37. package/dist/index.esm.js +371 -166
  38. package/dist/index.umd.js +4 -4
  39. package/dist/pollRepository/api/index.d.ts +0 -1
  40. package/dist/pollRepository/api/index.d.ts.map +1 -1
  41. package/dist/pollRepository/observers/getPoll.d.ts +21 -0
  42. package/dist/pollRepository/observers/getPoll.d.ts.map +1 -0
  43. package/dist/pollRepository/observers/index.d.ts +1 -0
  44. package/dist/pollRepository/observers/index.d.ts.map +1 -1
  45. package/dist/postRepository/observers/getPost.d.ts +2 -2
  46. package/dist/reactionRepository/api/addReaction.d.ts +2 -2
  47. package/dist/reactionRepository/api/addReaction.d.ts.map +1 -1
  48. package/dist/reactionRepository/api/queryReactions.d.ts +2 -2
  49. package/dist/reactionRepository/api/queryReactions.d.ts.map +1 -1
  50. package/dist/reactionRepository/api/queryReactor.d.ts +19 -0
  51. package/dist/reactionRepository/api/queryReactor.d.ts.map +1 -0
  52. package/dist/reactionRepository/api/removeReaction.d.ts +2 -2
  53. package/dist/reactionRepository/api/removeReaction.d.ts.map +1 -1
  54. package/dist/reactionRepository/observers/getReactions.d.ts +3 -3
  55. package/dist/reactionRepository/observers/getReactions.d.ts.map +1 -1
  56. package/dist/utils/tests/dummy/reaction.d.ts +1 -1
  57. package/dist/utils/tests/dummy/reaction.d.ts.map +1 -1
  58. package/package.json +1 -1
  59. package/src/@types/core/events.ts +4 -4
  60. package/src/@types/core/model.ts +3 -1
  61. package/src/@types/core/payload.ts +1 -1
  62. package/src/@types/domains/post.ts +1 -1
  63. package/src/@types/domains/reaction.ts +8 -9
  64. package/src/categoryRepository/api/queryCategories.ts +1 -1
  65. package/src/client/observers/getTotalUnreadCount.ts +1 -7
  66. package/src/client/observers/tests/getTotalUnreadCount.test.ts +3 -10
  67. package/src/client/utils/markerSyncEngine.ts +13 -2
  68. package/src/commentRepository/events/onCommentReactionAdded.ts +1 -1
  69. package/src/commentRepository/events/onCommentReactionRemoved.ts +1 -1
  70. package/src/commentRepository/observers/getComment.ts +2 -2
  71. package/src/commentRepository/observers/tests/getComment.test.ts +1 -3
  72. package/src/communityRepository/api/getCommunity.ts +4 -4
  73. package/src/communityRepository/api/getRecommendedCommunities.ts +4 -4
  74. package/src/communityRepository/api/getTopTrendingCommunities.ts +5 -2
  75. package/src/communityRepository/api/getTrendingCommunities.ts +97 -0
  76. package/src/communityRepository/api/index.ts +1 -1
  77. package/src/communityRepository/api/test/getTrendingCommunities.test.ts +102 -0
  78. package/src/communityRepository/observers/getCommunities.ts +2 -2
  79. package/src/communityRepository/observers/getCommunity.ts +2 -2
  80. package/src/communityRepository/observers/getRecommendedCommunities.ts +133 -0
  81. package/src/communityRepository/observers/getTrendingCommunities.ts +133 -0
  82. package/src/communityRepository/observers/index.ts +2 -0
  83. package/src/communityRepository/utils/communityQueryFilter.ts +55 -0
  84. package/src/core/model/idResolvers.ts +2 -1
  85. package/src/core/model/identifyModel.ts +5 -4
  86. package/src/pollRepository/api/index.ts +0 -2
  87. package/src/pollRepository/observers/getPoll.ts +33 -0
  88. package/src/pollRepository/observers/index.ts +1 -0
  89. package/src/pollRepository/observers/observePoll.ts +2 -2
  90. package/src/postRepository/events/tests/onPostReactionAdded.test.ts +6 -5
  91. package/src/postRepository/events/tests/onPostReactionRemoved.test.ts +5 -4
  92. package/src/postRepository/observers/getPost.ts +2 -2
  93. package/src/postRepository/observers/getPosts.ts +1 -1
  94. package/src/postRepository/observers/tests/getPost.test.ts +1 -3
  95. package/src/postRepository/observers/tests/getPosts.test.ts +1 -5
  96. package/src/reactionRepository/api/addReaction.ts +2 -2
  97. package/src/reactionRepository/api/queryReactions.ts +2 -2
  98. package/src/reactionRepository/api/queryReactor.ts +31 -0
  99. package/src/reactionRepository/api/removeReaction.ts +2 -2
  100. package/src/reactionRepository/observers/getReactions.ts +6 -8
  101. package/src/utils/tests/dummy/reaction.ts +6 -10
@@ -201,7 +201,7 @@ describe('getPosts', () => {
201
201
  const reactionEvents: [
202
202
  string,
203
203
  keyof Amity.Events,
204
- Amity.PostPayload & { reactor: Amity.Reaction },
204
+ Amity.PostPayload & { reactor: Amity.Reactor },
205
205
  ][] = [
206
206
  [
207
207
  'it should update post in collection onReactionAdded',
@@ -210,8 +210,6 @@ describe('getPosts', () => {
210
210
  ...emptyPostPayload,
211
211
  posts: [{ ...post11, reactionsCount: 1 }],
212
212
  reactor: {
213
- referenceId: post11.postId,
214
- referenceType: 'post',
215
213
  reactionId: 'test-reaction-id',
216
214
  reactionName: 'like',
217
215
  userId: 'test',
@@ -226,8 +224,6 @@ describe('getPosts', () => {
226
224
  ...emptyPostPayload,
227
225
  posts: [{ ...post11, reactionsCount: 0 }],
228
226
  reactor: {
229
- referenceId: post11.postId,
230
- referenceType: 'post',
231
227
  reactionId: 'test-reaction-id',
232
228
  reactionName: 'like',
233
229
  userId: 'test',
@@ -27,7 +27,7 @@ import { dispatchReactable } from '../utils';
27
27
  export const addReaction = async (
28
28
  referenceType: Amity.Reaction['referenceType'],
29
29
  referenceId: Amity.Reaction['referenceId'],
30
- reactionName: Amity.Reaction['reactionName'],
30
+ reactionName: Amity.Reactor['reactionName'],
31
31
  ): Promise<boolean> => {
32
32
  const client = getActiveClient();
33
33
  client.log('reaction/createReaction', {
@@ -76,7 +76,7 @@ export const addReaction = async (
76
76
  addReaction.optimistically = (
77
77
  referenceType: Amity.ReactableType,
78
78
  referenceId: Amity.Reaction['referenceId'],
79
- reactionName: Amity.Reaction['reactionName'],
79
+ reactionName: Amity.Reactor['reactionName'],
80
80
  ): boolean | undefined => {
81
81
  const client = getActiveClient();
82
82
  client.log('reaction/createReaction.optimistically', {
@@ -12,7 +12,7 @@ import { ingestInCache } from '~/cache/api/ingestInCache';
12
12
  * })
13
13
  * ```
14
14
  *
15
- * Queries a paginable list of {@link Amity.ReactionQuery} objects
15
+ * Queries a paginable list of {@link Amity.Reaction} objects
16
16
  *
17
17
  * @param query The query parameters
18
18
  * @returns A page of {@link Amity.Reaction} objects
@@ -22,7 +22,7 @@ import { ingestInCache } from '~/cache/api/ingestInCache';
22
22
  * */
23
23
  export const queryReactions = async (
24
24
  query: Amity.QueryReactions,
25
- ): Promise<Amity.Paged<Amity.ReactionQuery, Amity.Page<string>>> => {
25
+ ): Promise<Amity.Paged<Amity.Reaction, Amity.Page<string>>> => {
26
26
  const client = getActiveClient();
27
27
  client.log('reaction/queryReactions', query);
28
28
 
@@ -0,0 +1,31 @@
1
+ import { getActiveClient } from '~/client/api/activeClient';
2
+
3
+ import { queryReactions } from './queryReactions';
4
+
5
+ /**
6
+ * ```js
7
+ * import { queryReactor } from '@amityco/ts-sdk'
8
+ * const { data: reactions, prevPage, nextPage } = await queryReactor({
9
+ * referenceId: 'postId',
10
+ * referenceType: 'post',
11
+ * })
12
+ * ```
13
+ *
14
+ * Queries a paginable list of {@link Amity.Reactor} objects
15
+ *
16
+ * @param query The query parameters
17
+ * @returns A page of {@link Amity.Reactor} objects
18
+ *
19
+ * @reaction Reaction API
20
+ * @async
21
+ * */
22
+ export const queryReactor = async (
23
+ query: Amity.QueryReactions,
24
+ ): Promise<Amity.Paged<Amity.Reactor, Amity.Page<string>>> => {
25
+ const client = getActiveClient();
26
+ client.log('reaction/queryReactor', query);
27
+
28
+ const { data, ...response } = await queryReactions(query);
29
+
30
+ return { ...response, data: data[0].reactors };
31
+ };
@@ -28,7 +28,7 @@ import { dispatchReactable } from '../utils';
28
28
  export const removeReaction = async (
29
29
  referenceType: Amity.Reaction['referenceType'],
30
30
  referenceId: Amity.Reaction['referenceId'],
31
- reactionName: Amity.Reaction['reactionName'],
31
+ reactionName: Amity.Reactor['reactionName'],
32
32
  ): Promise<boolean> => {
33
33
  const client = getActiveClient();
34
34
  client.log('reaction/removeReaction', {
@@ -79,7 +79,7 @@ export const removeReaction = async (
79
79
  removeReaction.optimistically = (
80
80
  referenceType: Amity.ReactableType,
81
81
  referenceId: Amity.Reaction['referenceId'],
82
- reactionName: Amity.Reaction['reactionName'],
82
+ reactionName: Amity.Reactor['reactionName'],
83
83
  ): boolean | undefined => {
84
84
  const client = getActiveClient();
85
85
  client.log('reaction/removeReaction.optimistically', {
@@ -10,7 +10,7 @@ import {
10
10
  } from '~/utils/constants';
11
11
 
12
12
  import { onReactorAdded, onReactorRemoved } from '../events';
13
- import { queryReactions } from '../api/queryReactions';
13
+ import { queryReactor } from '../api/queryReactor';
14
14
 
15
15
  /* begin_public_function
16
16
  id: reaction.query
@@ -26,11 +26,11 @@ import { queryReactions } from '../api/queryReactions';
26
26
  * }, response => merge(reactions, response.data))
27
27
  * ```
28
28
  *
29
- * Observe all mutations on a list of {@link Amity.Reaction} for a given target object
29
+ * Observe all mutations on a list of {@link Amity.Reactor} for a given target object
30
30
  *
31
- * @param params.referenceType the type of the target
32
- * @param params.referenceId the ID of the target
31
+ * @param params for querying reactions
33
32
  * @param callback the function to call when new data are available
33
+ * @param config the live collection configuration
34
34
  * @returns An {@link Amity.Unsubscriber} function to run when willing to stop observing the messages
35
35
  *
36
36
  * @category Reactions Live Collection
@@ -98,7 +98,7 @@ export const getReactions = (
98
98
 
99
99
  if (!initial && reactions.length > 0 && !collection?.params?.page) return;
100
100
 
101
- const query = createQuery(queryReactions, {
101
+ const query = createQuery(queryReactor, {
102
102
  ...queryParams,
103
103
  page: (!initial ? collection?.params.page : undefined) ?? { limit },
104
104
  });
@@ -114,9 +114,7 @@ export const getReactions = (
114
114
  };
115
115
 
116
116
  if (result) {
117
- data.data = [
118
- ...new Set([...reactions, ...result[0].reactors.map(getResolver('reaction'))]),
119
- ];
117
+ data.data = [...new Set([...reactions, ...result.map(getResolver('reactor'))])];
120
118
  }
121
119
 
122
120
  pushToCache(cacheKey, data);
@@ -1,22 +1,18 @@
1
1
  import { post11, user11 } from '.';
2
2
 
3
- export const reaction11: Amity.Reaction = {
4
- reactionName: 'reaction11',
5
- reactionId: 'reaction11',
6
- referenceId: post11.postId,
7
- referenceType: 'post',
8
- userId: user11.userId,
9
- createdAt: '',
10
- };
11
-
12
3
  export const reactor11: Amity.Reactor = {
13
4
  reactionName: 'reaction11',
14
5
  reactionId: 'reaction11',
15
6
  userId: user11.userId,
16
7
  createdAt: '',
17
8
  };
9
+ export const reaction11: Amity.Reaction = {
10
+ referenceId: post11.postId,
11
+ referenceType: 'post',
12
+ reactors: [reactor11],
13
+ };
18
14
 
19
15
  export const reactionPayload: Amity.ReactionPayload = {
20
- reactions: [{ ...reaction11, reactors: [reactor11] }],
16
+ reactions: [reaction11],
21
17
  users: [user11],
22
18
  };