Skip to content

Commit aaa7e02

Browse files
Merge pull request #326 from topcoder-platform/develop
Release v1.2.4 : MM Dashboard
2 parents 713e875 + 71f3963 commit aaa7e02

File tree

12 files changed

+228
-44
lines changed

12 files changed

+228
-44
lines changed

__tests__/__snapshots__/index.js.snap

+2
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,8 @@ Object {
1212
"challenge": Object {
1313
"dropCheckpoints": [Function],
1414
"dropResults": [Function],
15+
"fetchChallengeStatisticsDone": [Function],
16+
"fetchChallengeStatisticsInit": [Function],
1517
"fetchCheckpointsDone": [Function],
1618
"fetchCheckpointsInit": [Function],
1719
"getActiveChallengesCountDone": [Function],

__tests__/actions/profile.js

+4
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@ const linkedAccounts = [{
1818

1919
// Mock services
2020
const mockMembersService = {
21+
getPresignedUrl: jest.fn().mockReturnValue(Promise.resolve()),
22+
uploadFileToS3: jest.fn().mockReturnValue(Promise.resolve()),
2123
updateMemberPhoto: jest.fn().mockReturnValue(Promise.resolve('url-of-photo')),
2224
updateMemberProfile: jest.fn().mockReturnValue(Promise.resolve(profile)),
2325
addSkill: jest.fn().mockReturnValue(Promise.resolve({ skills: [skill] })),
@@ -45,6 +47,8 @@ test('Module exports', () => expect(actions).toMatchSnapshot());
4547
test('profile.uploadPhotoDone', async () => {
4648
const actionResult = await redux.resolveAction(actions.profile.uploadPhotoDone(handle, tokenV3));
4749
expect(actionResult).toMatchSnapshot();
50+
expect(mockMembersService.getPresignedUrl).toBeCalled();
51+
expect(mockMembersService.uploadFileToS3).toBeCalled();
4852
expect(mockMembersService.updateMemberPhoto).toBeCalled();
4953
});
5054

__tests__/reducers/__snapshots__/challenge.js.snap

+36
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ Object {
1515
"registering": false,
1616
"results": null,
1717
"resultsLoadedForChallengeId": "",
18+
"statisticsData": null,
1819
"submissionInformation": null,
1920
"unregistering": false,
2021
"updatingChallengeUuid": "",
@@ -40,6 +41,7 @@ Object {
4041
"registering": false,
4142
"results": null,
4243
"resultsLoadedForChallengeId": "",
44+
"statisticsData": null,
4345
"submissionInformation": null,
4446
"unregistering": false,
4547
"updatingChallengeUuid": "",
@@ -65,6 +67,7 @@ Object {
6567
"registering": false,
6668
"results": null,
6769
"resultsLoadedForChallengeId": "",
70+
"statisticsData": null,
6871
"submissionInformation": null,
6972
"unregistering": false,
7073
"updatingChallengeUuid": "",
@@ -87,6 +90,7 @@ Object {
8790
"registering": false,
8891
"results": null,
8992
"resultsLoadedForChallengeId": "",
93+
"statisticsData": null,
9094
"submissionInformation": null,
9195
"unregistering": false,
9296
"updatingChallengeUuid": "",
@@ -118,6 +122,7 @@ Object {
118122
"registering": false,
119123
"results": null,
120124
"resultsLoadedForChallengeId": "",
125+
"statisticsData": null,
121126
"submissionInformation": null,
122127
"unregistering": false,
123128
"updatingChallengeUuid": "",
@@ -151,6 +156,7 @@ Object {
151156
"registering": false,
152157
"results": null,
153158
"resultsLoadedForChallengeId": "",
159+
"statisticsData": null,
154160
"submissionInformation": null,
155161
"unregistering": false,
156162
"updatingChallengeUuid": "",
@@ -182,6 +188,7 @@ Object {
182188
"registering": false,
183189
"results": null,
184190
"resultsLoadedForChallengeId": "",
191+
"statisticsData": null,
185192
"submissionInformation": null,
186193
"unregistering": false,
187194
"updatingChallengeUuid": "",
@@ -211,6 +218,7 @@ Object {
211218
"registering": false,
212219
"results": null,
213220
"resultsLoadedForChallengeId": "",
221+
"statisticsData": null,
214222
"submissionInformation": null,
215223
"unregistering": false,
216224
"updatingChallengeUuid": "",
@@ -243,6 +251,7 @@ Object {
243251
"registering": false,
244252
"results": null,
245253
"resultsLoadedForChallengeId": "",
254+
"statisticsData": null,
246255
"submissionInformation": null,
247256
"unregistering": false,
248257
"updatingChallengeUuid": "",
@@ -276,6 +285,7 @@ Object {
276285
"registering": false,
277286
"results": null,
278287
"resultsLoadedForChallengeId": "",
288+
"statisticsData": null,
279289
"submissionInformation": null,
280290
"unregistering": false,
281291
"updatingChallengeUuid": "",
@@ -309,6 +319,7 @@ Object {
309319
"registering": false,
310320
"results": null,
311321
"resultsLoadedForChallengeId": "",
322+
"statisticsData": null,
312323
"submissionInformation": null,
313324
"unregistering": false,
314325
"updatingChallengeUuid": "",
@@ -342,6 +353,7 @@ Object {
342353
"registering": false,
343354
"results": null,
344355
"resultsLoadedForChallengeId": "",
356+
"statisticsData": null,
345357
"submissionInformation": null,
346358
"unregistering": false,
347359
"updatingChallengeUuid": "",
@@ -375,6 +387,7 @@ Object {
375387
"registering": false,
376388
"results": null,
377389
"resultsLoadedForChallengeId": "",
390+
"statisticsData": null,
378391
"submissionInformation": null,
379392
"unregistering": false,
380393
"updatingChallengeUuid": "",
@@ -406,6 +419,7 @@ Object {
406419
"registering": false,
407420
"results": null,
408421
"resultsLoadedForChallengeId": "",
422+
"statisticsData": null,
409423
"submissionInformation": null,
410424
"unregistering": false,
411425
"updatingChallengeUuid": "",
@@ -439,6 +453,7 @@ Object {
439453
"registering": false,
440454
"results": null,
441455
"resultsLoadedForChallengeId": "",
456+
"statisticsData": null,
442457
"submissionInformation": null,
443458
"unregistering": false,
444459
"updatingChallengeUuid": "",
@@ -470,6 +485,7 @@ Object {
470485
"registering": false,
471486
"results": null,
472487
"resultsLoadedForChallengeId": "",
488+
"statisticsData": null,
473489
"submissionInformation": null,
474490
"unregistering": false,
475491
"updatingChallengeUuid": "",
@@ -499,6 +515,7 @@ Object {
499515
"registering": false,
500516
"results": null,
501517
"resultsLoadedForChallengeId": "",
518+
"statisticsData": null,
502519
"submissionInformation": null,
503520
"unregistering": false,
504521
"updatingChallengeUuid": "",
@@ -531,6 +548,7 @@ Object {
531548
"registering": false,
532549
"results": null,
533550
"resultsLoadedForChallengeId": "",
551+
"statisticsData": null,
534552
"submissionInformation": null,
535553
"unregistering": false,
536554
"updatingChallengeUuid": "",
@@ -552,6 +570,7 @@ Object {
552570
"registering": false,
553571
"results": null,
554572
"resultsLoadedForChallengeId": "",
573+
"statisticsData": null,
555574
"submissionInformation": null,
556575
"unregistering": false,
557576
"updatingChallengeUuid": "",
@@ -577,6 +596,7 @@ Object {
577596
"registering": false,
578597
"results": null,
579598
"resultsLoadedForChallengeId": "",
599+
"statisticsData": null,
580600
"submissionInformation": null,
581601
"unregistering": false,
582602
"updatingChallengeUuid": "",
@@ -602,6 +622,7 @@ Object {
602622
"registering": false,
603623
"results": null,
604624
"resultsLoadedForChallengeId": "",
625+
"statisticsData": null,
605626
"submissionInformation": null,
606627
"unregistering": false,
607628
"updatingChallengeUuid": "",
@@ -624,6 +645,7 @@ Object {
624645
"registering": false,
625646
"results": null,
626647
"resultsLoadedForChallengeId": "",
648+
"statisticsData": null,
627649
"submissionInformation": null,
628650
"unregistering": false,
629651
"updatingChallengeUuid": "",
@@ -655,6 +677,7 @@ Object {
655677
"registering": false,
656678
"results": null,
657679
"resultsLoadedForChallengeId": "",
680+
"statisticsData": null,
658681
"submissionInformation": null,
659682
"unregistering": false,
660683
"updatingChallengeUuid": "",
@@ -688,6 +711,7 @@ Object {
688711
"registering": false,
689712
"results": null,
690713
"resultsLoadedForChallengeId": "",
714+
"statisticsData": null,
691715
"submissionInformation": null,
692716
"unregistering": false,
693717
"updatingChallengeUuid": "",
@@ -719,6 +743,7 @@ Object {
719743
"registering": false,
720744
"results": null,
721745
"resultsLoadedForChallengeId": "",
746+
"statisticsData": null,
722747
"submissionInformation": null,
723748
"unregistering": false,
724749
"updatingChallengeUuid": "",
@@ -748,6 +773,7 @@ Object {
748773
"registering": false,
749774
"results": null,
750775
"resultsLoadedForChallengeId": "",
776+
"statisticsData": null,
751777
"submissionInformation": null,
752778
"unregistering": false,
753779
"updatingChallengeUuid": "",
@@ -780,6 +806,7 @@ Object {
780806
"registering": false,
781807
"results": null,
782808
"resultsLoadedForChallengeId": "",
809+
"statisticsData": null,
783810
"submissionInformation": null,
784811
"unregistering": false,
785812
"updatingChallengeUuid": "",
@@ -801,6 +828,7 @@ Object {
801828
"registering": false,
802829
"results": null,
803830
"resultsLoadedForChallengeId": "",
831+
"statisticsData": null,
804832
"submissionInformation": null,
805833
"unregistering": false,
806834
"updatingChallengeUuid": "",
@@ -826,6 +854,7 @@ Object {
826854
"registering": false,
827855
"results": null,
828856
"resultsLoadedForChallengeId": "",
857+
"statisticsData": null,
829858
"submissionInformation": null,
830859
"unregistering": false,
831860
"updatingChallengeUuid": "",
@@ -851,6 +880,7 @@ Object {
851880
"registering": false,
852881
"results": null,
853882
"resultsLoadedForChallengeId": "",
883+
"statisticsData": null,
854884
"submissionInformation": null,
855885
"unregistering": false,
856886
"updatingChallengeUuid": "",
@@ -873,6 +903,7 @@ Object {
873903
"registering": false,
874904
"results": null,
875905
"resultsLoadedForChallengeId": "",
906+
"statisticsData": null,
876907
"submissionInformation": null,
877908
"unregistering": false,
878909
"updatingChallengeUuid": "",
@@ -904,6 +935,7 @@ Object {
904935
"registering": false,
905936
"results": null,
906937
"resultsLoadedForChallengeId": "",
938+
"statisticsData": null,
907939
"submissionInformation": null,
908940
"unregistering": false,
909941
"updatingChallengeUuid": "",
@@ -937,6 +969,7 @@ Object {
937969
"registering": false,
938970
"results": null,
939971
"resultsLoadedForChallengeId": "",
972+
"statisticsData": null,
940973
"submissionInformation": null,
941974
"unregistering": false,
942975
"updatingChallengeUuid": "",
@@ -968,6 +1001,7 @@ Object {
9681001
"registering": false,
9691002
"results": null,
9701003
"resultsLoadedForChallengeId": "",
1004+
"statisticsData": null,
9711005
"submissionInformation": null,
9721006
"unregistering": false,
9731007
"updatingChallengeUuid": "",
@@ -997,6 +1031,7 @@ Object {
9971031
"registering": false,
9981032
"results": null,
9991033
"resultsLoadedForChallengeId": "",
1034+
"statisticsData": null,
10001035
"submissionInformation": null,
10011036
"unregistering": false,
10021037
"updatingChallengeUuid": "",
@@ -1029,6 +1064,7 @@ Object {
10291064
"registering": false,
10301065
"results": null,
10311066
"resultsLoadedForChallengeId": "",
1067+
"statisticsData": null,
10321068
"submissionInformation": null,
10331069
"unregistering": false,
10341070
"updatingChallengeUuid": "",

docs/services.members.md

+34-6
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,9 @@ members via API V3.
2525
* [.addSkill(handle, skillTagId)](#module_services.members..MembersService+addSkill) ⇒ <code>Promise</code>
2626
* [.hideSkill(handle, skillTagId)](#module_services.members..MembersService+hideSkill) ⇒ <code>Promise</code>
2727
* [.updateMemberProfile(profile)](#module_services.members..MembersService+updateMemberProfile) ⇒ <code>Promise</code>
28-
* [.updateMemberPhoto(userHandle, file)](#module_services.members..MembersService+updateMemberPhoto) ⇒ <code>Promise</code>
28+
* [.getPresignedUrl(userHandle, file)](#module_services.members..MembersService+getPresignedUrl) ⇒ <code>Promise</code>
29+
* [.updateMemberPhoto(S3Response)](#module_services.members..MembersService+updateMemberPhoto) ⇒ <code>Promise</code>
30+
* [.uploadFileToS3(presignedUrlResponse)](#module_services.members..MembersService+uploadFileToS3) ⇒ <code>Promise</code>
2931
* [.verifyMemberNewEmail(handle, emailVerifyToken)](#module_services.members..MembersService+verifyMemberNewEmail) ⇒ <code>Promise</code>
3032

3133
<a name="module_services.members.getService"></a>
@@ -63,7 +65,9 @@ Service class.
6365
* [.addSkill(handle, skillTagId)](#module_services.members..MembersService+addSkill) ⇒ <code>Promise</code>
6466
* [.hideSkill(handle, skillTagId)](#module_services.members..MembersService+hideSkill) ⇒ <code>Promise</code>
6567
* [.updateMemberProfile(profile)](#module_services.members..MembersService+updateMemberProfile) ⇒ <code>Promise</code>
66-
* [.updateMemberPhoto(userHandle, file)](#module_services.members..MembersService+updateMemberPhoto) ⇒ <code>Promise</code>
68+
* [.getPresignedUrl(userHandle, file)](#module_services.members..MembersService+getPresignedUrl) ⇒ <code>Promise</code>
69+
* [.updateMemberPhoto(S3Response)](#module_services.members..MembersService+updateMemberPhoto) ⇒ <code>Promise</code>
70+
* [.uploadFileToS3(presignedUrlResponse)](#module_services.members..MembersService+uploadFileToS3) ⇒ <code>Promise</code>
6771
* [.verifyMemberNewEmail(handle, emailVerifyToken)](#module_services.members..MembersService+verifyMemberNewEmail) ⇒ <code>Promise</code>
6872

6973
<a name="new_module_services.members..MembersService_new"></a>
@@ -252,18 +256,42 @@ Updates member profile.
252256
| --- | --- | --- |
253257
| profile | <code>Object</code> | The profile to update. |
254258

255-
<a name="module_services.members..MembersService+updateMemberPhoto"></a>
259+
<a name="module_services.members..MembersService+getPresignedUrl"></a>
256260

257-
#### membersService.updateMemberPhoto(userHandle, file) ⇒ <code>Promise</code>
258-
Uploads and updates member photo.
261+
#### membersService.getPresignedUrl(userHandle, file) ⇒ <code>Promise</code>
262+
Gets presigned url for member photo file.
259263

260264
**Kind**: instance method of [<code>MembersService</code>](#module_services.members..MembersService)
261265
**Returns**: <code>Promise</code> - Resolves to the api response content
262266

263267
| Param | Type | Description |
264268
| --- | --- | --- |
265269
| userHandle | <code>String</code> | The user handle |
266-
| file | <code>File</code> | The file to be uploaded |
270+
| file | <code>File</code> | The file to get its presigned url |
271+
272+
<a name="module_services.members..MembersService+updateMemberPhoto"></a>
273+
274+
#### membersService.updateMemberPhoto(S3Response) ⇒ <code>Promise</code>
275+
Updates member photo.
276+
277+
**Kind**: instance method of [<code>MembersService</code>](#module_services.members..MembersService)
278+
**Returns**: <code>Promise</code> - Resolves to the api response content
279+
280+
| Param | Type | Description |
281+
| --- | --- | --- |
282+
| S3Response | <code>Object</code> | The response from uploadFileToS3() function. |
283+
284+
<a name="module_services.members..MembersService+uploadFileToS3"></a>
285+
286+
#### membersService.uploadFileToS3(presignedUrlResponse) ⇒ <code>Promise</code>
287+
Uploads file to S3.
288+
289+
**Kind**: instance method of [<code>MembersService</code>](#module_services.members..MembersService)
290+
**Returns**: <code>Promise</code> - Resolves to the api response content
291+
292+
| Param | Type | Description |
293+
| --- | --- | --- |
294+
| presignedUrlResponse | <code>Object</code> | The presigned url response from getPresignedUrl() function. |
267295

268296
<a name="module_services.members..MembersService+verifyMemberNewEmail"></a>
269297

package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@
3131
"lint:js": "./node_modules/.bin/eslint --ext .js,.jsx .",
3232
"test": "npm run lint && npm run jest"
3333
},
34-
"version": "1.2.3",
34+
"version": "1.2.4",
3535
"dependencies": {
3636
"auth0-js": "^6.8.4",
3737
"config": "^3.2.0",

0 commit comments

Comments
 (0)