Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 9 additions & 9 deletions src/components/filtering/study-filter.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ export interface StudyFilterValues {
type: string[];
targetRoles: string[];
method: string[];
inProgress: boolean;
recruiting: boolean;
}

interface StudyFilterProps {
Expand Down Expand Up @@ -155,9 +155,9 @@ export default function StudyFilter({ values, onChange }: StudyFilterProps) {
[values, onChange],
);

const handleInProgressChange = useCallback(
const handleRecruitingChange = useCallback(
(pressed: boolean) => {
onChange({ ...values, inProgress: pressed });
onChange({ ...values, recruiting: pressed });
},
[values, onChange],
);
Expand All @@ -167,15 +167,15 @@ export default function StudyFilter({ values, onChange }: StudyFilterProps) {
type: [],
targetRoles: [],
method: [],
inProgress: false,
recruiting: false,
});
}, [onChange]);

const hasAnyFilter =
values.type.length > 0 ||
values.targetRoles.length > 0 ||
values.method.length > 0 ||
values.inProgress;
values.recruiting;

return (
<div className="flex items-center gap-100">
Expand Down Expand Up @@ -203,11 +203,11 @@ export default function StudyFilter({ values, onChange }: StudyFilterProps) {
<ToggleButton
size="md"
variant="round"
color="gray"
pressed={values.inProgress}
onPressedChange={handleInProgressChange}
color="primary"
pressed={values.recruiting}
onPressedChange={handleRecruitingChange}
>
진행 중만 보기
모집 중만 보기
</ToggleButton>

{hasAnyFilter && (
Expand Down
8 changes: 4 additions & 4 deletions src/components/pages/group-study-list-page.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -37,9 +37,9 @@ export default function GroupStudyListPage() {
const targetRoles =
searchParams.get('targetRoles')?.split(',').filter(Boolean) ?? [];
const method = searchParams.get('method')?.split(',').filter(Boolean) ?? [];
const inProgress = searchParams.get('inProgress') === 'true';
const recruiting = searchParams.get('recruiting') === 'true';

return { type, targetRoles, method, inProgress };
return { type, targetRoles, method, recruiting };
}, [searchParams]);

const currentPage = Number(searchParams.get('page')) || 1;
Expand All @@ -61,7 +61,7 @@ export default function GroupStudyListPage() {
filterValues.method.length > 0
? (filterValues.method as GetGroupStudiesMethodEnum[])
: undefined,
inProgress: filterValues.inProgress || undefined,
recruiting: filterValues.recruiting || undefined,
});

const allStudies = useMemo(() => data?.content ?? [], [data?.content]);
Expand Down Expand Up @@ -100,7 +100,7 @@ export default function GroupStudyListPage() {
? values.targetRoles.join(',')
: undefined,
method: values.method.length > 0 ? values.method.join(',') : undefined,
inProgress: values.inProgress ? 'true' : undefined,
recruiting: values.recruiting ? 'true' : undefined,
});
},
[updateSearchParams],
Expand Down
8 changes: 4 additions & 4 deletions src/components/pages/premium-study-list-page.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -37,9 +37,9 @@ export default function PremiumStudyListPage() {
const targetRoles =
searchParams.get('targetRoles')?.split(',').filter(Boolean) ?? [];
const method = searchParams.get('method')?.split(',').filter(Boolean) ?? [];
const inProgress = searchParams.get('inProgress') === 'true';
const recruiting = searchParams.get('recruiting') === 'true';

return { type, targetRoles, method, inProgress };
return { type, targetRoles, method, recruiting };
}, [searchParams]);

const currentPage = Number(searchParams.get('page')) || 1;
Expand All @@ -61,7 +61,7 @@ export default function PremiumStudyListPage() {
filterValues.method.length > 0
? (filterValues.method as GetGroupStudiesMethodEnum[])
: undefined,
inProgress: filterValues.inProgress || undefined,
recruiting: filterValues.recruiting || undefined,
});

const allStudies = useMemo(() => data?.content ?? [], [data?.content]);
Expand Down Expand Up @@ -100,7 +100,7 @@ export default function PremiumStudyListPage() {
? values.targetRoles.join(',')
: undefined,
method: values.method.length > 0 ? values.method.join(',') : undefined,
inProgress: values.inProgress ? 'true' : undefined,
recruiting: values.recruiting ? 'true' : undefined,
});
},
[updateSearchParams],
Expand Down
4 changes: 2 additions & 2 deletions src/components/ui/toggle/button.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,8 @@ export const toggleButtonVariants = cva(
variants: {
color: {
primary: [
'data-[state=on]:bg-fill-brand-default-default',
'data-[state=on]:text-text-inverse',
'data-[state=on]:bg-fill-brand-subtle-default',
'data-[state=on]:text-text-brand',
'data-[state=on]:border-border-brand',
],
gray: [
Expand Down
8 changes: 4 additions & 4 deletions src/hooks/queries/study-query.ts
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ interface GetStudiesParams {
type?: GetGroupStudiesTypeEnum[];
targetRoles?: GetGroupStudiesTargetRolesEnum[];
method?: GetGroupStudiesMethodEnum[];
inProgress?: boolean;
recruiting?: boolean;
}

export const useGetStudies = ({
Expand All @@ -27,7 +27,7 @@ export const useGetStudies = ({
type,
targetRoles,
method,
inProgress,
recruiting,
}: GetStudiesParams) => {
return useQuery({
queryKey: [
Expand All @@ -38,7 +38,7 @@ export const useGetStudies = ({
type,
targetRoles,
method,
inProgress,
recruiting,
],
queryFn: async () => {
const { data } = await groupStudyManagementApi.getGroupStudies(
Expand All @@ -48,7 +48,7 @@ export const useGetStudies = ({
type,
targetRoles,
method,
inProgress,
recruiting,
);

return data.content;
Expand Down
Loading