From 05119f52fa9a8c036ccad0783a5fb6aa9221de3e Mon Sep 17 00:00:00 2001 From: Wu Peirong Date: Tue, 25 Oct 2022 18:46:17 +0800 Subject: [PATCH] [resumes][fix] browse ui and sort order labels --- apps/portal/src/pages/resumes/[resumeId].tsx | 3 +-- apps/portal/src/pages/resumes/browse.tsx | 23 +++++++++++-------- .../portal/src/utils/resumes/resumeFilters.ts | 16 +++++++++---- 3 files changed, 26 insertions(+), 16 deletions(-) diff --git a/apps/portal/src/pages/resumes/[resumeId].tsx b/apps/portal/src/pages/resumes/[resumeId].tsx index 0d3ec979..beb8c793 100644 --- a/apps/portal/src/pages/resumes/[resumeId].tsx +++ b/apps/portal/src/pages/resumes/[resumeId].tsx @@ -31,7 +31,6 @@ import { INITIAL_FILTER_STATE, LOCATIONS, ROLES, - SORT_OPTIONS, } from '~/utils/resumes/resumeFilters'; import { trpc } from '~/utils/trpc'; @@ -118,7 +117,7 @@ export default function ResumeReviewPage() { currentPage: JSON.stringify(1), searchValue: JSON.stringify(''), shortcutSelected: JSON.stringify('all'), - sortOrder: JSON.stringify(SORT_OPTIONS.LATEST), + sortOrder: JSON.stringify('latest'), tabsValue: JSON.stringify(BROWSE_TABS_VALUES.ALL), userFilters: JSON.stringify({ ...INITIAL_FILTER_STATE, diff --git a/apps/portal/src/pages/resumes/browse.tsx b/apps/portal/src/pages/resumes/browse.tsx index c48fb6ed..86e06a78 100644 --- a/apps/portal/src/pages/resumes/browse.tsx +++ b/apps/portal/src/pages/resumes/browse.tsx @@ -38,7 +38,7 @@ import useDebounceValue from '~/utils/resumes/useDebounceValue'; import useSearchParams from '~/utils/resumes/useSearchParams'; import { trpc } from '~/utils/trpc'; -import type { FilterState } from '../../utils/resumes/resumeFilters'; +import type { FilterState, SortOrder } from '../../utils/resumes/resumeFilters'; const STALE_TIME = 5 * 60 * 1000; const DEBOUNCE_DELAY = 800; @@ -102,9 +102,9 @@ export default function ResumeHomePage() { 'tabsValue', BROWSE_TABS_VALUES.ALL, ); - const [sortOrder, setSortOrder, isSortOrderInit] = useSearchParams( + const [sortOrder, setSortOrder, isSortOrderInit] = useSearchParams( 'sortOrder', - SORT_OPTIONS.LATEST, + 'latest', ); const [searchValue, setSearchValue, isSearchValueInit] = useSearchParams( 'searchValue', @@ -491,7 +491,7 @@ export default function ResumeHomePage() { {filter.options.map((option) => (
+ className="[&>div>div:nth-child(1)>input]:text-primary-600 [&>div>div:nth-child(1)>input]:ring-primary-500 px-1 [&>div>div:nth-child(2)>label]:font-normal">
- - {Object.entries(SORT_OPTIONS).map(([key, value]) => ( + value === sortOrder) + ?.label + }> + {SORT_OPTIONS.map(({ label, value }) => ( setSortOrder(value)}> ))} diff --git a/apps/portal/src/utils/resumes/resumeFilters.ts b/apps/portal/src/utils/resumes/resumeFilters.ts index 1731647f..3799e533 100644 --- a/apps/portal/src/utils/resumes/resumeFilters.ts +++ b/apps/portal/src/utils/resumes/resumeFilters.ts @@ -54,11 +54,17 @@ export const BROWSE_TABS_VALUES = { STARRED: 'starred', }; -export const SORT_OPTIONS: Record = { - LATEST: 'latest', - POPULAR: 'popular', - TOPCOMMENTS: 'topComments', -}; +// Export const SORT_OPTIONS: Record = { +// LATEST: 'latest', +// POPULAR: 'popular', +// TOPCOMMENTS: 'topComments', +// }; + +export const SORT_OPTIONS: Array> = [ + { label: 'Latest', value: 'latest' }, + { label: 'Popular', value: 'popular' }, + { label: 'Top Comments', value: 'topComments' }, +]; export const ROLES: Array> = [ {