Skip to content

Commit 5243a7b

Browse files
authored
Merge pull request #391 from topcoder-platform/TCA-590_use-swr-for-data-fetching-in-learn
TCA-590 use swr for data fetching in learn -> TCA-586
2 parents 5dec81d + c7369ff commit 5243a7b

File tree

65 files changed

+412
-569
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

65 files changed

+412
-569
lines changed

src-ts/tools/learn/Learn.tsx

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,19 +7,21 @@ import {
77
RouteContextData,
88
} from '../../lib'
99

10+
import { LearnSwr } from './learn-lib'
11+
1012
export const toolTitle: string = ToolTitle.learn
1113

1214
const Learn: FC<{}> = () => {
1315

1416
const { getChildRoutes }: RouteContextData = useContext(routeContext)
1517

1618
return (
17-
<>
19+
<LearnSwr>
1820
<Outlet />
1921
<Routes>
2022
{getChildRoutes(toolTitle)}
2123
</Routes>
22-
</>
24+
</LearnSwr>
2325
)
2426
}
2527

src-ts/tools/learn/course-certificate/certificate-view/CertificateView.tsx

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,10 @@ import {
1515
import {
1616
AllCertificationsProviderData,
1717
CoursesProviderData,
18-
useAllCertifications,
19-
useCourses,
18+
useGetCertification,
19+
useGetCourses,
20+
useGetUserCompletedCertifications,
2021
UserCompletedCertificationsProviderData,
21-
useUserCompletedCertifications,
2222
} from '../../learn-lib'
2323
import { getCoursePath, getUserCertificateSsr } from '../../learn.routes'
2424

@@ -54,7 +54,7 @@ const CertificateView: FC<CertificateViewProps> = (props: CertificateViewProps)
5454
const {
5555
course,
5656
ready: courseReady,
57-
}: CoursesProviderData = useCourses(props.provider, props.certification)
57+
}: CoursesProviderData = useGetCourses(props.provider, props.certification)
5858

5959
function getCertTitle(user: string): string {
6060
return `${user} - ${course?.title} Certification`
@@ -72,7 +72,7 @@ const CertificateView: FC<CertificateViewProps> = (props: CertificateViewProps)
7272
const {
7373
certifications: [completedCertificate],
7474
ready: completedCertificateReady,
75-
}: UserCompletedCertificationsProviderData = useUserCompletedCertifications(
75+
}: UserCompletedCertificationsProviderData = useGetUserCompletedCertifications(
7676
props.profile.userId,
7777
props.provider,
7878
props.certification
@@ -82,9 +82,9 @@ const CertificateView: FC<CertificateViewProps> = (props: CertificateViewProps)
8282
const {
8383
certification: certificate,
8484
ready: certificateReady,
85-
}: AllCertificationsProviderData = useAllCertifications(
85+
}: AllCertificationsProviderData = useGetCertification(
8686
props.provider,
87-
course?.certificationId,
87+
course?.certificationId ?? '',
8888
{ enabled: !!course?.certificationId }
8989
)
9090

src-ts/tools/learn/course-completed/CourseCompletedPage.tsx

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -14,12 +14,12 @@ import {
1414
AllCertificationsProviderData,
1515
CoursesProviderData,
1616
CourseTitle,
17-
useAllCertifications,
18-
useCourses,
17+
useGetCertification,
18+
useGetCourses,
19+
useGetUserCertificationProgress,
1920
useLearnBreadcrumb,
2021
UserCertificationProgressProviderData,
21-
UserCertificationProgressStatus,
22-
useUserCertificationProgress
22+
UserCertificationProgressStatus
2323
} from '../learn-lib'
2424
import { getCertificatePath, getCoursePath, LEARN_PATHS, rootRoute } from '../learn.routes'
2525

@@ -38,12 +38,12 @@ const CourseCompletedPage: FC<{}> = () => {
3838
const {
3939
course: courseData,
4040
ready: courseDataReady,
41-
}: CoursesProviderData = useCourses(providerParam, certificationParam)
41+
}: CoursesProviderData = useGetCourses(providerParam, certificationParam)
4242

4343
const {
4444
certificationProgress: progress,
4545
ready: progressReady,
46-
}: UserCertificationProgressProviderData = useUserCertificationProgress(
46+
}: UserCertificationProgressProviderData = useGetUserCertificationProgress(
4747
profile?.userId,
4848
routeParams.provider,
4949
routeParams.certification
@@ -52,8 +52,8 @@ const CourseCompletedPage: FC<{}> = () => {
5252
const {
5353
certification,
5454
ready: certifReady,
55-
}: AllCertificationsProviderData = useAllCertifications(providerParam, progress?.certificationId, {
56-
enabled: progressReady && !!progress,
55+
}: AllCertificationsProviderData = useGetCertification(providerParam, progress?.certificationId ?? '', {
56+
enabled: progressReady && !!progress?.certificationId,
5757
})
5858

5959
/* tslint:disable:cyclomatic-complexity */

src-ts/tools/learn/course-details/CourseDetailsPage.tsx

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -15,13 +15,13 @@ import {
1515
CoursesProviderData,
1616
CourseTitle,
1717
ResourceProviderData,
18-
useAllCertifications,
19-
useCourses,
18+
useGetCertification,
19+
useGetCourses,
20+
useGetResourceProvider,
21+
useGetUserCertificationProgress,
2022
useLearnBreadcrumb,
2123
UserCertificationProgressProviderData,
22-
UserCertificationProgressStatus,
23-
useResourceProvider,
24-
useUserCertificationProgress
24+
UserCertificationProgressStatus
2525
} from '../learn-lib'
2626
import { getCoursePath } from '../learn.routes'
2727

@@ -36,17 +36,17 @@ const CourseDetailsPage: FC<{}> = () => {
3636

3737
const {
3838
provider: resourceProvider,
39-
}: ResourceProviderData = useResourceProvider(routeParams.provider)
39+
}: ResourceProviderData = useGetResourceProvider(routeParams.provider)
4040

4141
const {
4242
course,
4343
ready: courseReady,
44-
}: CoursesProviderData = useCourses(routeParams.provider ?? '', routeParams.certification)
44+
}: CoursesProviderData = useGetCourses(routeParams.provider ?? '', routeParams.certification)
4545

4646
const {
4747
certificationProgress: progress,
4848
ready: progressReady,
49-
}: UserCertificationProgressProviderData = useUserCertificationProgress(
49+
}: UserCertificationProgressProviderData = useGetUserCertificationProgress(
5050
profile?.userId,
5151
routeParams.provider,
5252
routeParams.certification,
@@ -55,8 +55,8 @@ const CourseDetailsPage: FC<{}> = () => {
5555
const {
5656
certification: certificate,
5757
ready: certificateReady,
58-
}: AllCertificationsProviderData = useAllCertifications(routeParams.provider, course?.certificationId, {
59-
enabled: courseReady,
58+
}: AllCertificationsProviderData = useGetCertification(routeParams.provider, course?.certificationId ?? '', {
59+
enabled: courseReady && !!course?.certificationId,
6060
})
6161

6262
// this looks better than finding workarounds for cyclomatic-complexity

src-ts/tools/learn/free-code-camp/FreeCodeCamp.tsx

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -24,16 +24,16 @@ import {
2424
LearnModule,
2525
LearnModuleProgress,
2626
LessonProviderData,
27-
useCourses,
27+
useGetCourses,
28+
useGetLesson,
29+
useGetUserCertificationProgress,
2830
useLearnBreadcrumb,
29-
useLessonProvider,
3031
userCertificationProgressCompleteCourseAsync,
3132
UserCertificationProgressProviderData,
3233
userCertificationProgressStartAsync,
3334
UserCertificationProgressStatus,
3435
userCertificationProgressUpdateAsync,
3536
UserCertificationUpdateProgressActions,
36-
useUserCertificationProgress,
3737
} from '../learn-lib'
3838
import { getCertificationCompletedPath, getCoursePath, getLessonPathFromModule } from '../learn.routes'
3939

@@ -63,7 +63,7 @@ const FreeCodeCamp: FC<{}> = () => {
6363
setCertificateProgress,
6464
ready: progressReady,
6565
refetch: refetchProgress,
66-
}: UserCertificationProgressProviderData = useUserCertificationProgress(
66+
}: UserCertificationProgressProviderData = useGetUserCertificationProgress(
6767
profile?.userId,
6868
routeParams.provider,
6969
certificationParam
@@ -72,9 +72,9 @@ const FreeCodeCamp: FC<{}> = () => {
7272
const {
7373
course: courseData,
7474
ready: courseDataReady,
75-
}: CoursesProviderData = useCourses(providerParam, certificationParam)
75+
}: CoursesProviderData = useGetCourses(providerParam, certificationParam)
7676

77-
const { lesson, ready: lessonReady }: LessonProviderData = useLessonProvider(
77+
const { lesson, ready: lessonReady }: LessonProviderData = useGetLesson(
7878
providerParam,
7979
certificationParam,
8080
moduleParam,

src-ts/tools/learn/learn-lib/all-certifications-provider/all-certifications-functions/all-certifications.store.ts

Lines changed: 0 additions & 16 deletions
This file was deleted.

src-ts/tools/learn/learn-lib/all-certifications-provider/all-certifications-functions/index.ts

Lines changed: 0 additions & 5 deletions
This file was deleted.

src-ts/tools/learn/learn-lib/all-certifications-provider/all-certifications.provider.tsx

Lines changed: 0 additions & 46 deletions
This file was deleted.

src-ts/tools/learn/learn-lib/courses-provider/courses-functions/course.store.ts

Lines changed: 0 additions & 12 deletions
This file was deleted.

src-ts/tools/learn/learn-lib/courses-provider/courses-functions/index.ts

Lines changed: 0 additions & 2 deletions
This file was deleted.

0 commit comments

Comments
 (0)