diff --git a/pages/edit/index.tsx b/pages/edit/index.tsx index c6a000d4..1d06f772 100644 --- a/pages/edit/index.tsx +++ b/pages/edit/index.tsx @@ -28,7 +28,6 @@ const EditPage = () => { enabled: !!id, }); const { data: formData } = query; - const { mutateAsync, isLoading: isSubmitting } = useMutation({ mutationFn: ({ id, formData }: { id: string; formData: FormType }) => updateMeeting(id, formData), onSuccess: () => { @@ -89,8 +88,8 @@ const EditPage = () => { detail: { desc: formData?.desc, processDesc: formData?.processDesc, - mStartDate: dayjs(formData?.mStartDate).format('YYYY.MM.DD'), - mEndDate: dayjs(formData?.mEndDate).format('YYYY.MM.DD'), + mStartDate: dayjs(formData?.getmStartDate).format('YYYY.MM.DD'), + mEndDate: dayjs(formData?.getmEndDate).format('YYYY.MM.DD'), leaderDesc: formData?.leaderDesc, isMentorNeeded: formData?.isMentorNeeded, joinableParts, diff --git a/src/api/API_LEGACY/meeting/hooks.ts b/src/api/API_LEGACY/meeting/hooks.ts index ffb83b38..f939e129 100644 --- a/src/api/API_LEGACY/meeting/hooks.ts +++ b/src/api/API_LEGACY/meeting/hooks.ts @@ -22,7 +22,6 @@ import { getMeetingPeopleList, PostApplicationRequest, MeetingPeopleResponse, - MeetingResponse, postApplication, deleteApplication, updateApplication, @@ -30,13 +29,14 @@ import { downloadMeetingMemberCSV, getGroupBrowsingCard, GroupBrowsingCardDetail, + GetMeetingResponse, } from '.'; interface UseQueryGetMeetingParams { params: { id: string; }; - useQueryOptions?: UseQueryOptions; + useQueryOptions?: UseQueryOptions; } /** @@ -85,10 +85,10 @@ export const useQueryMeetingListOfAll = () => { export const useQueryGetMeeting = ({ params, useQueryOptions, -}: UseQueryGetMeetingParams): UseQueryResult => { +}: UseQueryGetMeetingParams): UseQueryResult => { const { id } = params; - return useQuery({ + return useQuery({ queryKey: ['getMeeting', id], queryFn: () => { return getMeeting(id); diff --git a/src/api/API_LEGACY/meeting/index.ts b/src/api/API_LEGACY/meeting/index.ts index 1040c17e..1f5aa8b6 100644 --- a/src/api/API_LEGACY/meeting/index.ts +++ b/src/api/API_LEGACY/meeting/index.ts @@ -176,8 +176,10 @@ export const fetchMeetingListOfAll = async ({ ); }; -export const getMeeting = async (id: string): Promise => { - return (await api.get>(`/meeting/${id}`)).data.data; +export type GetMeetingResponse = + paths['/meeting/v2/{meetingId}']['get']['responses']['200']['content']['application/json;charset=UTF-8']; +export const getMeeting = async (id: string): Promise => { + return (await api.get(`/meeting/v2/${id}`)).data; }; /** diff --git a/src/api/API_LEGACY/user/index.ts b/src/api/API_LEGACY/user/index.ts index dcef6e41..771c66e6 100644 --- a/src/api/API_LEGACY/user/index.ts +++ b/src/api/API_LEGACY/user/index.ts @@ -1,6 +1,6 @@ import { GroupInfo } from '@components/feed/Modal/FeedFormPresentation'; -import { api, PromiseResponse } from '../..'; -import { MeetingResponse } from '../meeting'; +import { api } from '../..'; +import { GetMeetingResponse } from '../meeting'; import { paths } from '@/__generated__/schema2'; /** @@ -38,7 +38,7 @@ export interface ApplyResponse { id: number; content: string; status: ApplicationStatusType; - meeting: MeetingResponse; + meeting: GetMeetingResponse; user: UserResponse; } diff --git a/src/api/post/index.ts b/src/api/post/index.ts index 07f24bf9..cc032775 100644 --- a/src/api/post/index.ts +++ b/src/api/post/index.ts @@ -1,4 +1,4 @@ -import { MeetingResponse } from '@api/API_LEGACY/meeting'; +import { GetMeetingResponse } from '@api/API_LEGACY/meeting'; import { UserResponse } from '@api/API_LEGACY/user'; import { FormCreateType, FormEditType } from '@components/feed/Modal/feedSchema'; import { Data, api, apiV2 } from '..'; @@ -14,7 +14,7 @@ export interface PostResponse { likeCount: number; isLiked: boolean; user: Pick; - meeting: Pick; + meeting: Pick; } export const createPost = async (formData: FormCreateType) => { diff --git a/src/components/page/meetingDetail/Carousel/index.tsx b/src/components/page/meetingDetail/Carousel/index.tsx index 2d33129e..9e2a8000 100644 --- a/src/components/page/meetingDetail/Carousel/index.tsx +++ b/src/components/page/meetingDetail/Carousel/index.tsx @@ -2,10 +2,10 @@ import Slider from 'react-slick'; import { styled } from 'stitches.config'; import NextArrow from './NextArrow'; import 'slick-carousel/slick/slick.css'; -import { ImageURLType } from '@api/API_LEGACY/meeting'; +import { paths } from '@/__generated__/schema2'; interface CarouselProps { - imageList: ImageURLType[]; + imageList: paths['/meeting/v2/{meetingId}']['get']['responses']['200']['content']['application/json;charset=UTF-8']['imageURL']; } const Carousel = ({ imageList }: CarouselProps) => { diff --git a/src/components/page/meetingDetail/Information/InformationPanel.tsx b/src/components/page/meetingDetail/Information/InformationPanel.tsx index a3266739..941f00a9 100644 --- a/src/components/page/meetingDetail/Information/InformationPanel.tsx +++ b/src/components/page/meetingDetail/Information/InformationPanel.tsx @@ -7,10 +7,10 @@ import 'dayjs/locale/ko'; dayjs.locale('ko'); import { PART_NAME } from '@constants/option'; import { useCallback, useRef, useState } from 'react'; -import { MeetingResponse } from '@api/API_LEGACY/meeting'; +import { GetMeetingResponse } from '@api/API_LEGACY/meeting'; interface InformationPanelProps { - detailData: MeetingResponse; + detailData: GetMeetingResponse; } const InformationPanel = ({ detailData }: InformationPanelProps) => { @@ -25,8 +25,8 @@ const InformationPanel = ({ detailData }: InformationPanelProps) => { { id: 1, title: '활동 기간', - content: `${dayjs(detailData?.mStartDate ?? '').format('YYYY.MM.DD (ddd)')} ~ ${dayjs( - detailData?.mEndDate ?? '' + content: `${dayjs(detailData?.getmStartDate ?? '').format('YYYY.MM.DD (ddd)')} ~ ${dayjs( + detailData?.getmEndDate ?? '' ).format('YYYY.MM.DD (ddd)')}`, }, { @@ -41,7 +41,7 @@ const InformationPanel = ({ detailData }: InformationPanelProps) => { partList: detailData?.joinableParts?.map(key => PART_NAME[key]), //'이런 사람을 찾아요' Input이 사라지면서 해당 객체의 content는 삭제 됨 //렌더링은 되어야하므로 truthy값으로 문자열 'NULL'을 삽입 - content: detailData?.targetDesc ?? 'NULL', + content: 'NULL', }, { id: 4, diff --git a/src/components/page/meetingDetail/MeetingController/Modal/Content/RecruitmentStatusModalContent/RecruitmentStatusList.tsx b/src/components/page/meetingDetail/MeetingController/Modal/Content/RecruitmentStatusModalContent/RecruitmentStatusList.tsx index f7e3ed70..b4e75c3e 100644 --- a/src/components/page/meetingDetail/MeetingController/Modal/Content/RecruitmentStatusModalContent/RecruitmentStatusList.tsx +++ b/src/components/page/meetingDetail/MeetingController/Modal/Content/RecruitmentStatusModalContent/RecruitmentStatusList.tsx @@ -1,10 +1,10 @@ +import { paths } from '@/__generated__/schema2'; import ProfileDefaultIcon from '@assets/svg/profile_default.svg?rect'; import { APPROVAL_STATUS, EApprovalStatus } from '@constants/option'; -import { ApplyResponse } from '@api/API_LEGACY/user'; import { styled } from 'stitches.config'; interface RecruitmentStatusProps { - recruitmentStatusList: ApplyResponse[]; + recruitmentStatusList: paths['/meeting/v2/{meetingId}']['get']['responses']['200']['content']['application/json;charset=UTF-8']['appliedInfo']; } const RecruitmentStatusList = ({ recruitmentStatusList }: RecruitmentStatusProps) => { diff --git a/src/components/page/meetingDetail/MeetingController/Modal/Content/RecruitmentStatusModalContent/index.tsx b/src/components/page/meetingDetail/MeetingController/Modal/Content/RecruitmentStatusModalContent/index.tsx index 281d2a00..40f60726 100644 --- a/src/components/page/meetingDetail/MeetingController/Modal/Content/RecruitmentStatusModalContent/index.tsx +++ b/src/components/page/meetingDetail/MeetingController/Modal/Content/RecruitmentStatusModalContent/index.tsx @@ -1,13 +1,13 @@ import Link from 'next/link'; import { styled } from 'stitches.config'; -import { ApplyResponse } from '@api/API_LEGACY/user'; import RecruitmentStatusList from './RecruitmentStatusList'; import ArrowSmallRightIcon from '@assets/svg/arrow_small_right.svg'; import { ampli } from '@/ampli'; +import { paths } from '@/__generated__/schema2'; interface RecruitmentStatusModalContentProps { meetingId: number; - appliedInfo: ApplyResponse[]; + appliedInfo: paths['/meeting/v2/{meetingId}']['get']['responses']['200']['content']['application/json;charset=UTF-8']['appliedInfo']; isHost: boolean; isApplied: boolean; } diff --git a/src/components/page/meetingDetail/MeetingController/index.tsx b/src/components/page/meetingDetail/MeetingController/index.tsx index 6f40f475..31b4a0c0 100644 --- a/src/components/page/meetingDetail/MeetingController/index.tsx +++ b/src/components/page/meetingDetail/MeetingController/index.tsx @@ -13,7 +13,7 @@ import ProfileConfirmModal from './Modal/Confirm/ProfileConfirmModal'; import GuestConfirmModal from './Modal/Confirm/GuestConfirmModal'; import ApplicationModalContent from './Modal/Content/ApplicationModalContent'; import RecruitmentStatusModalContent from './Modal/Content/RecruitmentStatusModalContent'; -import { PostApplicationRequest, MeetingResponse } from '@api/API_LEGACY/meeting'; +import { PostApplicationRequest, GetMeetingResponse } from '@api/API_LEGACY/meeting'; import { playgroundURL } from '@constants/url'; import { ERecruitmentStatus, RECRUITMENT_STATUS } from '@constants/option'; import ProfileDefaultIcon from '@assets/svg/profile_default.svg?rect'; @@ -26,7 +26,7 @@ import ButtonLoader from '@components/loader/ButtonLoader'; import { useDialog } from '@sopt-makers/ui'; interface DetailHeaderProps { - detailData: MeetingResponse; + detailData: GetMeetingResponse; mutateMeetingDeletion: UseMutateFunction< { statusCode: number; diff --git a/src/components/page/meetingManagement/MeetingInformation.tsx b/src/components/page/meetingManagement/MeetingInformation.tsx index 8b7deecf..9fbacac8 100644 --- a/src/components/page/meetingManagement/MeetingInformation.tsx +++ b/src/components/page/meetingManagement/MeetingInformation.tsx @@ -1,12 +1,12 @@ import { useRouter } from 'next/router'; import { styled } from 'stitches.config'; import ArrowMediumRightGrayIcon from '@assets/svg/arrow_medium_right_gray.svg'; -import { MeetingResponse } from '@api/API_LEGACY/meeting'; +import { GetMeetingResponse } from '@api/API_LEGACY/meeting'; import { ERecruitmentStatus, RECRUITMENT_STATUS } from '@constants/option'; import Link from 'next/link'; interface MeetingInformationProps { - meetingData: MeetingResponse; + meetingData: GetMeetingResponse; } const MeetingInformation = ({ meetingData }: MeetingInformationProps) => {