@amityco/ts-sdk 7.8.6-f64070a.0 → 7.8.7-2982cd9c.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/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/pollRepository/api/index.d.ts +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/pollRepository/api/index.d.ts.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/pollRepository/api/index.js +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/pollRepository/api/index.js.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/pollRepository/api/tests/updateVote.test.d.ts +2 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/pollRepository/api/tests/updateVote.test.d.ts.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/pollRepository/api/tests/updateVote.test.js +32 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/pollRepository/api/tests/updateVote.test.js.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/pollRepository/api/updateVote.d.ts +17 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/pollRepository/api/updateVote.d.ts.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/pollRepository/api/updateVote.js +37 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/pollRepository/api/updateVote.js.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/userRepository/observers/searchUserByDisplayName/SearchUserPaginationController.js +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/userRepository/observers/searchUserByDisplayName/SearchUserPaginationController.js.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/tsconfig.tsbuildinfo +1 -1
- package/dist/index.cjs.js +38 -3
- package/dist/index.esm.js +38 -3
- package/dist/index.umd.js +2 -2
- package/dist/pollRepository/api/index.d.ts +1 -0
- package/dist/pollRepository/api/index.d.ts.map +1 -1
- package/dist/pollRepository/api/tests/updateVote.test.d.ts +2 -0
- package/dist/pollRepository/api/tests/updateVote.test.d.ts.map +1 -0
- package/dist/pollRepository/api/updateVote.d.ts +17 -0
- package/dist/pollRepository/api/updateVote.d.ts.map +1 -0
- package/package.json +1 -1
- package/src/pollRepository/api/index.ts +1 -0
- package/src/pollRepository/api/tests/updateVote.test.ts +41 -0
- package/src/pollRepository/api/updateVote.ts +48 -0
- package/src/userRepository/observers/searchUserByDisplayName/SearchUserPaginationController.ts +1 -1
- package/tsconfig.tsbuildinfo +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/pollRepository/api/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAE7B,cAAc,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/pollRepository/api/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAE7B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"updateVote.test.d.ts","sourceRoot":"","sources":["../../../../src/pollRepository/api/tests/updateVote.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ```js
|
|
3
|
+
* import { updateVote } from '@amityco/ts-sdk'
|
|
4
|
+
* const updatedVote = await updateVote(pollId, [answerId1, answerId2])
|
|
5
|
+
* ```
|
|
6
|
+
*
|
|
7
|
+
* Votes for an {@link Amity.Poll}
|
|
8
|
+
*
|
|
9
|
+
* @param pollId The ID of the {@link Amity.Poll} to vote
|
|
10
|
+
* @param answerIds The IDs of the {@link Amity.Poll} answers to vote {@link Amity.Poll}
|
|
11
|
+
* @returns the updated {@link Amity.Poll} object
|
|
12
|
+
*
|
|
13
|
+
* @category Poll API
|
|
14
|
+
* @async
|
|
15
|
+
*/
|
|
16
|
+
export declare const updateVote: (pollId: Amity.Poll['pollId'], answerIds: string[]) => Promise<Amity.Cached<Amity.Poll>>;
|
|
17
|
+
//# sourceMappingURL=updateVote.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"updateVote.d.ts","sourceRoot":"","sources":["../../../src/pollRepository/api/updateVote.ts"],"names":[],"mappings":"AAQA;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,UAAU,WACb,MAAM,IAAI,CAAC,QAAQ,CAAC,aACjB,MAAM,EAAE,KAClB,QAAQ,MAAM,MAAM,CAAC,MAAM,IAAI,CAAC,CAoBlC,CAAC"}
|
package/package.json
CHANGED
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { client, pause, poll11 } from '~/utils/tests';
|
|
2
|
+
import { ASCError } from '~/core/errors';
|
|
3
|
+
import { disableCache, enableCache } from '~/cache/api';
|
|
4
|
+
import { onPollUpdated } from '~/pollRepository/events';
|
|
5
|
+
import { updateVote } from '../updateVote';
|
|
6
|
+
import { getPoll } from '../getPoll';
|
|
7
|
+
|
|
8
|
+
describe('updateVote', () => {
|
|
9
|
+
beforeAll(enableCache);
|
|
10
|
+
afterAll(disableCache);
|
|
11
|
+
|
|
12
|
+
// integration_test_id: 2abcbca5-f845-4e96-9405-23781013738e
|
|
13
|
+
it('should vote', async () => {
|
|
14
|
+
client.http.post = jest
|
|
15
|
+
.fn()
|
|
16
|
+
.mockResolvedValueOnce({ data: { polls: [{ ...poll11, isVoted: true }] } });
|
|
17
|
+
const callback = jest.fn();
|
|
18
|
+
onPollUpdated(callback);
|
|
19
|
+
|
|
20
|
+
const { data: poll } = await updateVote(poll11.pollId, [poll11.answers[0].id]);
|
|
21
|
+
const { data: cachedPoll } = getPoll.locally(poll.pollId)!;
|
|
22
|
+
await pause();
|
|
23
|
+
|
|
24
|
+
expect(poll.isVoted).toEqual(true);
|
|
25
|
+
expect(cachedPoll).toMatchObject(poll);
|
|
26
|
+
expect(callback).toHaveBeenCalledWith(poll);
|
|
27
|
+
});
|
|
28
|
+
|
|
29
|
+
// integration_test_id: b6ab2681-7f25-47a0-bc14-f4f542a3cf80
|
|
30
|
+
it('should fail to vote for in an invalid poll', async () => {
|
|
31
|
+
client.http.post = jest
|
|
32
|
+
.fn()
|
|
33
|
+
.mockRejectedValueOnce(
|
|
34
|
+
new ASCError('error message', Amity.ServerError.ITEM_NOT_FOUND, Amity.ErrorLevel.FATAL),
|
|
35
|
+
);
|
|
36
|
+
|
|
37
|
+
await expect(() =>
|
|
38
|
+
updateVote('non-existent-poll-id', ['non-existent-answer-id']),
|
|
39
|
+
).rejects.toThrow();
|
|
40
|
+
});
|
|
41
|
+
});
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { fireEvent } from '~/core/events';
|
|
2
|
+
import { getActiveClient } from '~/client/api';
|
|
3
|
+
|
|
4
|
+
import { ingestInCache } from '~/cache/api/ingestInCache';
|
|
5
|
+
|
|
6
|
+
/* begin_public_function
|
|
7
|
+
id: poll.updateVote
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* ```js
|
|
11
|
+
* import { updateVote } from '@amityco/ts-sdk'
|
|
12
|
+
* const updatedVote = await updateVote(pollId, [answerId1, answerId2])
|
|
13
|
+
* ```
|
|
14
|
+
*
|
|
15
|
+
* Votes for an {@link Amity.Poll}
|
|
16
|
+
*
|
|
17
|
+
* @param pollId The ID of the {@link Amity.Poll} to vote
|
|
18
|
+
* @param answerIds The IDs of the {@link Amity.Poll} answers to vote {@link Amity.Poll}
|
|
19
|
+
* @returns the updated {@link Amity.Poll} object
|
|
20
|
+
*
|
|
21
|
+
* @category Poll API
|
|
22
|
+
* @async
|
|
23
|
+
*/
|
|
24
|
+
export const updateVote = async (
|
|
25
|
+
pollId: Amity.Poll['pollId'],
|
|
26
|
+
answerIds: string[],
|
|
27
|
+
): Promise<Amity.Cached<Amity.Poll>> => {
|
|
28
|
+
const client = getActiveClient();
|
|
29
|
+
client.log('user/updateVote', pollId);
|
|
30
|
+
|
|
31
|
+
const { data } = await client.http.put<Amity.PollPayload>(
|
|
32
|
+
`/api/v3/polls/${encodeURIComponent(pollId)}/votes`,
|
|
33
|
+
{ pollId, answerIds },
|
|
34
|
+
);
|
|
35
|
+
|
|
36
|
+
const cachedAt = client.cache && Date.now();
|
|
37
|
+
if (client.cache) ingestInCache(data, { cachedAt });
|
|
38
|
+
|
|
39
|
+
const { polls } = data;
|
|
40
|
+
|
|
41
|
+
fireEvent('poll.updated', data);
|
|
42
|
+
|
|
43
|
+
return {
|
|
44
|
+
data: polls.find(poll => poll.pollId === pollId)!,
|
|
45
|
+
cachedAt,
|
|
46
|
+
};
|
|
47
|
+
};
|
|
48
|
+
/* end_public_function */
|