From 70e9a61be6ed25e021b37a8b899b3f439b276e79 Mon Sep 17 00:00:00 2001 From: Hentry Martin Date: Mon, 25 Aug 2025 15:13:43 +0200 Subject: [PATCH 1/4] fix: use requires upload from backend --- src/apps/review/src/lib/models/ScorecardQuestion.model.ts | 1 + .../ViewScorecardPage/ScorecardSections/ScorecardSections.tsx | 3 +-- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/apps/review/src/lib/models/ScorecardQuestion.model.ts b/src/apps/review/src/lib/models/ScorecardQuestion.model.ts index da9098c17..1cc2556a0 100644 --- a/src/apps/review/src/lib/models/ScorecardQuestion.model.ts +++ b/src/apps/review/src/lib/models/ScorecardQuestion.model.ts @@ -9,4 +9,5 @@ export interface ScorecardQuestion { weight: number scaleMin: number scaleMax: number + requiresUpload: boolean } diff --git a/src/apps/review/src/pages/scorecards/ViewScorecardPage/ScorecardSections/ScorecardSections.tsx b/src/apps/review/src/pages/scorecards/ViewScorecardPage/ScorecardSections/ScorecardSections.tsx index 5ee1af219..5cc2eb78f 100644 --- a/src/apps/review/src/pages/scorecards/ViewScorecardPage/ScorecardSections/ScorecardSections.tsx +++ b/src/apps/review/src/pages/scorecards/ViewScorecardPage/ScorecardSections/ScorecardSections.tsx @@ -49,8 +49,7 @@ const ScorecardSections: FC = (props: ScorecardSectionsP
Document Upload:
- {/* This will be added once upload functionality works */} -
NA
+
{question.requiresUpload ? 'Yes' : 'No'}
From ce557883884b738cc6316672ada4c46abcb1df04 Mon Sep 17 00:00:00 2001 From: Hentry Martin Date: Mon, 25 Aug 2025 15:15:38 +0200 Subject: [PATCH 2/4] fix: lint --- .../ViewScorecardPage/ScorecardSections/ScorecardSections.tsx | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/apps/review/src/pages/scorecards/ViewScorecardPage/ScorecardSections/ScorecardSections.tsx b/src/apps/review/src/pages/scorecards/ViewScorecardPage/ScorecardSections/ScorecardSections.tsx index 5cc2eb78f..74595fe40 100644 --- a/src/apps/review/src/pages/scorecards/ViewScorecardPage/ScorecardSections/ScorecardSections.tsx +++ b/src/apps/review/src/pages/scorecards/ViewScorecardPage/ScorecardSections/ScorecardSections.tsx @@ -49,7 +49,9 @@ const ScorecardSections: FC = (props: ScorecardSectionsP
Document Upload:
-
{question.requiresUpload ? 'Yes' : 'No'}
+
+ {question.requiresUpload ? 'Yes' : 'No'} +
From f86982133324dde2c36b03fdfb6d28051d676de7 Mon Sep 17 00:00:00 2001 From: Hentry Martin Date: Mon, 25 Aug 2025 15:24:33 +0200 Subject: [PATCH 3/4] fix: some more qa feedbacks --- src/apps/review/src/lib/hooks/useFetchScorecard.ts | 8 +++++++- .../scorecards/EditScorecardPage/EditScorecardPage.tsx | 2 +- .../scorecards/ViewScorecardPage/ViewScorecardPage.tsx | 4 ++-- 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/src/apps/review/src/lib/hooks/useFetchScorecard.ts b/src/apps/review/src/lib/hooks/useFetchScorecard.ts index 188a251fb..4add40610 100644 --- a/src/apps/review/src/lib/hooks/useFetchScorecard.ts +++ b/src/apps/review/src/lib/hooks/useFetchScorecard.ts @@ -14,7 +14,7 @@ interface ScorecardResponse { isValidating: boolean } -export function useFetchScorecard(id: string | undefined): ScorecardResponse { +export function useFetchScorecard(id: string | undefined, shouldRetry: boolean): ScorecardResponse { const fetcher = (url: string): Promise => xhrGetAsync(url) @@ -23,6 +23,12 @@ export function useFetchScorecard(id: string | undefined): ScorecardResponse { id ? `${baseUrl}/scorecards/${id}` : null, fetcher, { + ...(shouldRetry + ? {} + : { + errorRetryCount: 0, + shouldRetryOnError: false, + }), onError: err => { toast.error(err.message) }, diff --git a/src/apps/review/src/pages/scorecards/EditScorecardPage/EditScorecardPage.tsx b/src/apps/review/src/pages/scorecards/EditScorecardPage/EditScorecardPage.tsx index d81b199d9..12a834e31 100644 --- a/src/apps/review/src/pages/scorecards/EditScorecardPage/EditScorecardPage.tsx +++ b/src/apps/review/src/pages/scorecards/EditScorecardPage/EditScorecardPage.tsx @@ -23,7 +23,7 @@ const EditScorecardPage: FC = () => { const [isSaving, setSaving] = useState(false) const params = useParams() const isEditMode = !!params.scorecardId - const scorecardQuery = useFetchScorecard(params.scorecardId) + const scorecardQuery = useFetchScorecard(params.scorecardId, false) const title = useMemo(() => ( `${isEditMode ? 'Edit' : 'Create'} Scorecard` ), [isEditMode]) diff --git a/src/apps/review/src/pages/scorecards/ViewScorecardPage/ViewScorecardPage.tsx b/src/apps/review/src/pages/scorecards/ViewScorecardPage/ViewScorecardPage.tsx index bd6c3bd2b..d5c03188e 100644 --- a/src/apps/review/src/pages/scorecards/ViewScorecardPage/ViewScorecardPage.tsx +++ b/src/apps/review/src/pages/scorecards/ViewScorecardPage/ViewScorecardPage.tsx @@ -24,13 +24,13 @@ const ViewScorecardPage: FC = () => { [], ) - const scorecardQuery = useFetchScorecard(scorecardId) + const scorecardQuery = useFetchScorecard(scorecardId, true) return ( Date: Mon, 25 Aug 2025 16:14:34 +0200 Subject: [PATCH 4/4] fix: type --- src/apps/review/src/mock-datas/MockScorecard.ts | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/apps/review/src/mock-datas/MockScorecard.ts b/src/apps/review/src/mock-datas/MockScorecard.ts index 4e644124e..17448e8dc 100644 --- a/src/apps/review/src/mock-datas/MockScorecard.ts +++ b/src/apps/review/src/mock-datas/MockScorecard.ts @@ -33,6 +33,7 @@ export const MockScorecard: ScorecardInfo = { 'Was the pricing adequate for the contest?', guidelines: mockGuidelines, id: '4', + requiresUpload: true, scaleMax: 9, scaleMin: 1, type: 'YES_NO', @@ -43,6 +44,7 @@ export const MockScorecard: ScorecardInfo = { 'Was the timeline adequate for the contest?', guidelines: mockGuidelines, id: '5', + requiresUpload: true, scaleMax: 9, scaleMin: 1, type: 'YES_NO', @@ -52,6 +54,7 @@ export const MockScorecard: ScorecardInfo = { description: 'Were the specifications clear?', guidelines: mockGuidelines, id: '6', + requiresUpload: true, scaleMax: 9, scaleMin: 1, type: 'SCALE', @@ -61,6 +64,7 @@ export const MockScorecard: ScorecardInfo = { description: 'Here comes another question', guidelines: mockGuidelines, id: '7', + requiresUpload: true, scaleMax: 9, scaleMin: 1, type: 'SCALE', @@ -79,6 +83,7 @@ export const MockScorecard: ScorecardInfo = { 'Have all major specification requirements been met?', guidelines: mockGuidelines, id: '9', + requiresUpload: true, scaleMax: 9, scaleMin: 1, type: 'SCALE', @@ -89,6 +94,7 @@ export const MockScorecard: ScorecardInfo = { 'Have all minor specification requirements been met?', guidelines: mockGuidelines, id: '10', + requiresUpload: true, scaleMax: 9, scaleMin: 1, type: 'SCALE', @@ -115,6 +121,7 @@ export const MockScorecard: ScorecardInfo = { 'This is the first question of this section', guidelines: mockGuidelines, id: '13', + requiresUpload: true, scaleMax: 9, scaleMin: 1, type: 'SCALE', @@ -125,6 +132,7 @@ export const MockScorecard: ScorecardInfo = { 'This is the second question of this section', guidelines: mockGuidelines, id: '14', + requiresUpload: true, scaleMax: 9, scaleMin: 1, type: 'SCALE', @@ -143,6 +151,7 @@ export const MockScorecard: ScorecardInfo = { 'Does the code have proper code coverage?', guidelines: mockGuidelines, id: '16', + requiresUpload: true, scaleMax: 9, scaleMin: 1, type: 'SCALE', @@ -154,6 +163,7 @@ export const MockScorecard: ScorecardInfo = { 'Do all test cases provided, pass, given any test data or setup for the current application?', guidelines: mockGuidelines, id: '17', + requiresUpload: true, scaleMax: 9, scaleMin: 1, type: 'SCALE',