@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.
- package/dist/@types/core/events.d.ts +4 -4
- package/dist/@types/core/events.d.ts.map +1 -1
- package/dist/@types/core/model.d.ts +3 -1
- package/dist/@types/core/model.d.ts.map +1 -1
- package/dist/@types/core/payload.d.ts +1 -1
- package/dist/@types/core/payload.d.ts.map +1 -1
- package/dist/@types/domains/post.d.ts +1 -1
- package/dist/@types/domains/post.d.ts.map +1 -1
- package/dist/@types/domains/reaction.d.ts +4 -5
- package/dist/@types/domains/reaction.d.ts.map +1 -1
- package/dist/client/observers/getTotalUnreadCount.d.ts.map +1 -1
- package/dist/client/utils/markerSyncEngine.d.ts.map +1 -1
- package/dist/commentRepository/observers/getComment.d.ts +2 -2
- package/dist/communityRepository/api/getCommunity.d.ts +4 -4
- package/dist/communityRepository/api/getRecommendedCommunities.d.ts +4 -4
- package/dist/communityRepository/api/getTopTrendingCommunities.d.ts +5 -2
- package/dist/communityRepository/api/getTopTrendingCommunities.d.ts.map +1 -1
- package/dist/communityRepository/api/getTrendingCommunities.d.ts +32 -0
- package/dist/communityRepository/api/getTrendingCommunities.d.ts.map +1 -0
- package/dist/communityRepository/api/index.d.ts +0 -1
- package/dist/communityRepository/api/index.d.ts.map +1 -1
- package/dist/communityRepository/api/test/getTrendingCommunities.test.d.ts +2 -0
- package/dist/communityRepository/api/test/getTrendingCommunities.test.d.ts.map +1 -0
- package/dist/communityRepository/observers/getCommunities.d.ts +2 -2
- package/dist/communityRepository/observers/getCommunity.d.ts +2 -2
- package/dist/communityRepository/observers/getRecommendedCommunities.d.ts +20 -0
- package/dist/communityRepository/observers/getRecommendedCommunities.d.ts.map +1 -0
- package/dist/communityRepository/observers/getTrendingCommunities.d.ts +20 -0
- package/dist/communityRepository/observers/getTrendingCommunities.d.ts.map +1 -0
- package/dist/communityRepository/observers/index.d.ts +2 -0
- package/dist/communityRepository/observers/index.d.ts.map +1 -1
- package/dist/communityRepository/utils/communityQueryFilter.d.ts +2 -0
- package/dist/communityRepository/utils/communityQueryFilter.d.ts.map +1 -0
- package/dist/core/model/idResolvers.d.ts.map +1 -1
- package/dist/core/model/identifyModel.d.ts.map +1 -1
- package/dist/index.cjs.js +371 -166
- package/dist/index.esm.js +371 -166
- package/dist/index.umd.js +4 -4
- package/dist/pollRepository/api/index.d.ts +0 -1
- package/dist/pollRepository/api/index.d.ts.map +1 -1
- package/dist/pollRepository/observers/getPoll.d.ts +21 -0
- package/dist/pollRepository/observers/getPoll.d.ts.map +1 -0
- package/dist/pollRepository/observers/index.d.ts +1 -0
- package/dist/pollRepository/observers/index.d.ts.map +1 -1
- package/dist/postRepository/observers/getPost.d.ts +2 -2
- package/dist/reactionRepository/api/addReaction.d.ts +2 -2
- package/dist/reactionRepository/api/addReaction.d.ts.map +1 -1
- package/dist/reactionRepository/api/queryReactions.d.ts +2 -2
- package/dist/reactionRepository/api/queryReactions.d.ts.map +1 -1
- package/dist/reactionRepository/api/queryReactor.d.ts +19 -0
- package/dist/reactionRepository/api/queryReactor.d.ts.map +1 -0
- package/dist/reactionRepository/api/removeReaction.d.ts +2 -2
- package/dist/reactionRepository/api/removeReaction.d.ts.map +1 -1
- package/dist/reactionRepository/observers/getReactions.d.ts +3 -3
- package/dist/reactionRepository/observers/getReactions.d.ts.map +1 -1
- package/dist/utils/tests/dummy/reaction.d.ts +1 -1
- package/dist/utils/tests/dummy/reaction.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/@types/core/events.ts +4 -4
- package/src/@types/core/model.ts +3 -1
- package/src/@types/core/payload.ts +1 -1
- package/src/@types/domains/post.ts +1 -1
- package/src/@types/domains/reaction.ts +8 -9
- package/src/categoryRepository/api/queryCategories.ts +1 -1
- package/src/client/observers/getTotalUnreadCount.ts +1 -7
- package/src/client/observers/tests/getTotalUnreadCount.test.ts +3 -10
- package/src/client/utils/markerSyncEngine.ts +13 -2
- package/src/commentRepository/events/onCommentReactionAdded.ts +1 -1
- package/src/commentRepository/events/onCommentReactionRemoved.ts +1 -1
- package/src/commentRepository/observers/getComment.ts +2 -2
- package/src/commentRepository/observers/tests/getComment.test.ts +1 -3
- package/src/communityRepository/api/getCommunity.ts +4 -4
- package/src/communityRepository/api/getRecommendedCommunities.ts +4 -4
- package/src/communityRepository/api/getTopTrendingCommunities.ts +5 -2
- package/src/communityRepository/api/getTrendingCommunities.ts +97 -0
- package/src/communityRepository/api/index.ts +1 -1
- package/src/communityRepository/api/test/getTrendingCommunities.test.ts +102 -0
- package/src/communityRepository/observers/getCommunities.ts +2 -2
- package/src/communityRepository/observers/getCommunity.ts +2 -2
- package/src/communityRepository/observers/getRecommendedCommunities.ts +133 -0
- package/src/communityRepository/observers/getTrendingCommunities.ts +133 -0
- package/src/communityRepository/observers/index.ts +2 -0
- package/src/communityRepository/utils/communityQueryFilter.ts +55 -0
- package/src/core/model/idResolvers.ts +2 -1
- package/src/core/model/identifyModel.ts +5 -4
- package/src/pollRepository/api/index.ts +0 -2
- package/src/pollRepository/observers/getPoll.ts +33 -0
- package/src/pollRepository/observers/index.ts +1 -0
- package/src/pollRepository/observers/observePoll.ts +2 -2
- package/src/postRepository/events/tests/onPostReactionAdded.test.ts +6 -5
- package/src/postRepository/events/tests/onPostReactionRemoved.test.ts +5 -4
- package/src/postRepository/observers/getPost.ts +2 -2
- package/src/postRepository/observers/getPosts.ts +1 -1
- package/src/postRepository/observers/tests/getPost.test.ts +1 -3
- package/src/postRepository/observers/tests/getPosts.test.ts +1 -5
- package/src/reactionRepository/api/addReaction.ts +2 -2
- package/src/reactionRepository/api/queryReactions.ts +2 -2
- package/src/reactionRepository/api/queryReactor.ts +31 -0
- package/src/reactionRepository/api/removeReaction.ts +2 -2
- package/src/reactionRepository/observers/getReactions.ts +6 -8
- 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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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 {
|
|
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.
|
|
29
|
+
* Observe all mutations on a list of {@link Amity.Reactor} for a given target object
|
|
30
30
|
*
|
|
31
|
-
* @param params
|
|
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(
|
|
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: [
|
|
16
|
+
reactions: [reaction11],
|
|
21
17
|
users: [user11],
|
|
22
18
|
};
|