Skip to content

Commit

Permalink
Develop (#82)
Browse files Browse the repository at this point in the history
* feat: 카카오맵 API 연동

* Revert 6 feat/#1/design system (#7)

* Feat/#1/design system (#6)

* [Feat] 일부 라우팅 경로 설정 및 카카오맵 라이브러리 설치 (#3)

* chore: 지도 페이지에 필요한 카카오맵 라이브러리 설치

* feat: 라우팅 경로 설정

* feat: 메인 페이지, 지도 페이지 디렉토리 생성

* feat: 디자인 시스템 적용 및 글로벌 스타일 적용

* style: StyledFonts 글자 크기 변경

* Revert "Feat/#1/design system (#6)"

This reverts commit bb0cde2.

* Feat/#1/design system (#9)

* feat: 디자인 시스템 적용 및 글로벌 스타일 적용

* style: StyledFonts 글자 크기 변경

* chore: 절대 경로 설정

* chore: zoom 설정

* [CHORE] 디자인 시스템 세팅 (#10)

* chore: color 값 세팅

* chore: GlobalStyle 적용

* chore: GlobalStyle 내부 css 요소 import 경로 수정

* Feat/#11/header (#12)

* feat: 카카오맵 API 연동

* feat: 헤더 유저 아이콘 다운로드

* feat: 헤더를 위한 레이아웃 생성

* feat: 헤더 생성

* chore: 불필요한 import 제거

* chore: Header 컴포넌트 경로 변경

* chore: 헤더 관련 데이터 constatns directory에 별도 저장

* Feat/#18/programCard (#19)

* design(ProgramCardItem): ProgramCardItem 컴포넌트 퍼블리싱

* design(ProgramCard): ProgramCard 컴포넌트 퍼블리싱

* feat(ProgramCardItem): 프로그램 정보를 카드로 보여주는 기능 구현

* feat(ProgramCard): 프로그램 정보 목록을 하나씩 넘겨주는 기능 구현

* remove: 불필요한 이미지 삭제

* remove: 불필요한 console.log 삭제

* Feat/#15/login (#16)

* feat: 카카오맵 API 연동

* feat: 소셜 로그인 관련 이미지 다운로드

* feat: 라우팅 경로에 로그인 페이지, 카카오 Redirect 페이지 추가

* chore: 크롬 자동 번역기능 block

* feat: 카카오 인증 후 이동되는 Redirect 컴포넌트 생성

* feat: 로그인 페이지 구현

* chore: 불필요한 콘솔 로그 출력 제거

* chore: .env 파일 업로드 방지

* feat: 환경 변수를 사용해서 API_KEY를 가져오는 것으로 변경

* Chore/#20/axios setting (#21)

* feat: 카카오맵 API 연동

* feat: 서버와 통신을 위한 axios 라이브러리 설치

* feat: axios 기본 URL 설정

* Feat/#3/map (#13)

* feat: 카카오맵 API 연동

* feat: 카카오맵 인증키 생성

* feat: 지도 페이지에 필요한 이미지 다운로드

* feat: 지도 페이지 생성

* feat: 커스텀 마커 생성

* feat: 마커 클릭시 나타나는 카드 생성

* feat: 서치바 컴포넌트 생성

* feat: 카드 바깥 클릭시 카드가 닫히도록 hook 생성

* style: resolution.css import

* chore: SearchBar 컴포넌트 경로 이동

* style: 헤더 생성에 따른 서치바 위치 이동

* Feat/#14/main (#22)

* feat: 카카오맵 API 연동

* feat: 메인 페이지에 필요한 이미지 다운로드

* feat: Navigation 컴포넌트에 필요한 데이터 분리

* feat: 메인 페이지 최상단 배너너

* feat: 페이지 네비게이션 카드

* feat: 지금 핫한 프로그램

* feat: 중간 페이지 소개 부분

* feat: 최신 업로드 프로그램 (미완성)

* feat: 화면 네비게이션 카드에 필요한 컴포넌트 생성

* feat: 핫한 프로그램 소개에 필요한 컴포넌트 생성

* feat: 메인 페이지 생성

* style: Header의 z-index 높게 설정

* style: ProgramCard 컴포넌트 사이 간격 space-between으로 변경경

* feat: react-query 설치

* feat: react-query 사용을 위한 세팅

* feat: 메인 페이지 API 호출 함수 분리

* chore: Header 컴포넌트에 key 추가하여 오류 제거

* feat: Hot 프로그램 데이터 API 연결

* chore: 기존 ProgramCard 컴포넌트 명칭 중복을 피하기 위해 HotProgramCard로 컴포넌트명 변경

* feat: 최신 업로드 프로그램 부분 생성

* feat: API 로딩시에 노출되는 Loading 컴포넌트 생성

* feat: 메인 페이지에 최신 업로드된 프로그램 부분 추가

* feat: 지도 페이지 default zoom level 변경

* chore: 닫기 버튼 icons 폴더로 이동

* chore: 닫기 버튼 이미지 경로 이동에 따른 불러오기 경로 수정

* style: 지도화면 scroll 제거

* chore: 카카오 API KEY를 위한 환경 변수 설정

* style: Login 박스 마진 변경

* style: 메인 페이지 zoom 제거

* style: 카카오맵에 zoom 속성 적용

* style: 핫한 프로그램 카드에 그라데이션 추가

* Feature/#17/detail (#24)

* chore: 폰트 추가 및 설정

* feat: 공통으로 사용되는 inner 스타일 컴포넌트 구현

* feat: MainButton 컴포넌트 구현

* feat: ProgramHead 컴포넌트 구현

* fix(Header): 위쪽 간격 생기는 문제 해결

* feat: 버튼 및 여행 프로그램 관련 타입

* fix: 공통 inner 내용 수정

* feat: ProgramBody 컴포넌트 구현

* feat: RecommendProgram 컴포넌트 구현

* feat: RoundedButton 컴포넌트 구현

* feat: HoneyTipButton 컴포넌트 구현

* chore: react-query 설치

* feat: DetailProgram 컴포넌트 생성 및 api 연결

* fix: RecommendProgram 데이터 넘겨주는 방식 변경

* fix: console 에러 해결을 위한 key값 처리

* fix: api에 cacheTime, staleTime 추가

* fix(PostCardItem): 아이템 클릭 시 상세 페이지로 이동하도록 수정

* fix: 신청 링크 이동 기능 추가

* fix: 주석 처리 취소

* fix: `cursor: pointer` 적용을 잘못하여 수정

* fix: 빼먹은 `cursor: pointer` 적용

* chore: 중복된 QueryClient 제거

* Feat/#25/board (#27)

* feat: Header를 통해 이동시 필터가 미리 선택되어 있을 수 있도록 데이터 전달

* feat: 페이지네이션을 위한 페이지바 생성

* feat: 자료실/지원후기 페이지 필터 생성

* feat: 자료실/지원후기 페이지 상단 소개부분 생성

* feat: 게시글 리스트 컴포넌트 생성

* feat: Posting 컴포넌트의 props 타입 별도로 분리

* feat: 자료실/지원후기 페이지에 사용될 Board 컴포넌트 생성 (API 연결 전)

* feat: 지원 후기 페이지 라우팅 경로에 추가

* feat: 화살표 아이콘 클릭 시 페이지 한 칸씩 이동

* Feature/#5/search (#23)

* chore: zoom 설정 반영

* feat: RoundedButton 컴포넌트 구현

* design: 공통 스타일 요소 inner 설정

* feat: 지도에서 보기 버튼 구현

* design: 공통 스타일 요소 inner width 수정

* design: TravelProgramItem (여행 프로그램 카드) 컴포넌트 퍼블리싱

* design: TravelProgramList (여행 프로그램 카드 리스트) 퍼블리싱

* rename: RoundedButton 컴포넌트 폴더 위치 변경

* feat: MainButton 컴포넌트 구현

* design: SearchResult (검색 결과) 컴포넌트 퍼블리싱

* feat: 검색 필터 관련 상수 및 타입 설정

* fix: MainButton 컴포넌트 props 내용 수정

* feat: FilterButton 컴포넌트 구현

* feat: FilterButton props 구조 수정

* feat: FilterBar 컴포넌트 구현

* feat: Search 컴포넌트 구현

* fix: RoundedButton 컴포넌트 width, height 직접 입력으로 수정

* fix: RoundedButton 컴포넌트 텍스트 스타일 따로 작성하도록 수정

* feat: 버튼 디자인 관련 타입 설정

* fix: MainButton 컴포넌트 디자인 관련 속성 수정

* fix(TravelProgramList) : map 함수 key값 추가

* rename(FilterButton): FilterButton 컴포넌트 파일 위치 및 파일명 변경

* feat: Filter Bar 구성 요소 컴포넌트 구현

* fix(FilterButton): FillterBox 컴포넌트 내부 구성 수정

* feat(FilterBar): 필터 요소마다 FilterButtonList 호출하도록 수정

* rename: Search constants 파일 위치 변경

* fix(FilterBar): 필터 아이템이 absolute로 보이도록 수정

* fix(FilterButtonItem): 세부 카테고리 내용 없으면 안 보이도록 수정

* fix(FilterButtonList): 외부 영역 클릭 시 닫히도록 수정

* chore(react-calendar): react-calendar 설치

* chore: moment 설치

* feat: CustomCalendar 컴포넌트 (날짜 필터링) 구현

* feat: FilterButtonList 컴포넌트에 CustomCalendar 적용

* design: CustomCalendar 배경색 및 폰트 스타일 수정

* feat: Search 컴포넌트에 SearchBar 적용

* fix: MainButton 컴포넌트 onClick 기능 추가

* feat: FilterBar 컴포넌트 API 연결 준비

* feat: SearchResult 컴포넌트 API 연결 준비

* fix: RoundedButton 컴포넌트 onClick 기능 추가

* feat: ProgramSearchBar 컴포넌트 따로 분리

* chore(StyledFonts): hover color 요소 추가

* fix: 필터 세부 항목 hover color 적용

* fix: 필터 세부 사항 선택 시 드롭다운 닫히도록 수정

* style: 메인 페이지 내의 PageNav 라우팅 주소 수정

* fix(SearchBar): enter 버튼 눌러도 검색되도록 수정

* fix: 메인 화면 SearchBar에서 검색 후 검색 페이지로 이동

* fix(App): Searh 컴포넌트 라우팅 주소 수정

* fix: main에서 NavCard 클릭으로 넘어올 경우 여행프로그램 필터 적용

* fix: 메인에서 NavCard 클릭 시 보이는 문구 수정

* style: 메인 페이지 내의 PageNav 라우팅 주소 수정

* fix: 메인에서 검색해서 넘어오는 경우 보이는 문구 수정

* fix: search 페이지 라우팅 주소 재변경

* fix: Search 페이지 진입 시 데이터 가져올 조건 세팅

* fix: Search 페이지 내의 검색바 onSubmit 메소드 수정

* fix: Search 페이지 내의 필터 확인 버튼 onClick 메소드 수정

* fix: 검색 후 path값이 변경되도록 수정

* fix: 검색 결과 보여주는 텍스트 수정

* fix: MapButton 플로팅 버튼으로 수정

* fix: 날짜 선택 시 날짜 문자열 변환 형식 변경

* style: 불필요한 import 삭제

* fix: 새로고침해도 선택한 날짜 유지하도록 수정

* Feat/#30/my posting (#31)

* feat: 내가 쓴 글 페이지 라우팅 경로에 추가

* feat: 헤더에 사용자 관련 페이지 드롭다운 추가

* feat: 드롭다운 생성에 따른 헤더 데이터 추가

* feat: 컴포넌트 재사용을 위한 PostingList 컴포넌트 구조 조정

* feat: 내가 쓴 글 펭지 구현

* chore: 포스팅 컴포넌트 click시 navigate 경로 변경

* chore: MyPosting 페이지 user 디렉토리 내부로 이동

* feat: 포스팅 목록 컴포넌트 필터 기능 추가가

* Feat/#28/posting detail (#29)

* feat: 상세 페이지 라우팅 추가

* feat: 상세 페이지 컴포넌트 생성

* feat: 첨부파일 다운로드 함수

* feat: 좋아요 버튼 (API 연결 전)

* feat: 첨부파일 컴포넌트

* feat: 글 상세 페이지 구현

* feat: 글 상세 페이지 관련 타입 추가 (추후 변경 예정)

* chore: 추후에 해야 할 일 주석으로 표시

* Feat/#40/mileage (#41)

* feat: 라우팅 경로에 마일리지 조회 페이지 추가

* feat: 마일리지 페이지 상단 소개 부분 구현

* feat: 내 마일리지 렌더링 컴포넌트 구현

* feat: 마일리지 사용 내역 목록 컴포넌트 구현

* feat: 마일리지 사용 내역 아이템 구현

* feat: 마일리지 관련 팁 소개 컴포넌트 구현

* feat: 마일리지 관련 팁 데이터 생성

* feat: 마일리지 내역, 마일리지 팁 관련 타입 생성

* feat: 마일리지 조회 페이지 구현

* chore: 구간 나누기 주석 추가

* fix: CustomCalendar 에러 해결

* Feat/#37/writing (#38)

* feat: 내용 입력을 위한 react-quill 라이브러리 설치

* feat: 글쓰기 페이지 라우팅 경로에 추가

* feat: 드롭다운 컴포넌트 생성

* chore: 드롭다운을 위한 데이터 별도 분리

* chore: 글 목록 페이지에서 글쓰기 버튼 클릭시 글쓰기 페이지로 이동

* feat: quill-image-resize 모듈 사용을 위한 declaration

* feat: 첨부파일 업로드를 위한 컴포넌트

* feat: 태그 입력을 위한 컴포넌트 생성

* feat: quill 에디터에서 사진 입력시 동작하는 handler

* feat: 글쓰기 페이지 구현

* style: 드롭다운 컴포넌트의 position 속성을 지정할 수 있도록 변경

* chore: 포스팅 상세 타입 명칭 변경

* chore: 핸들러 props 명칭 변경

* chore: 사용하지 않는 변수 주석처리

* Feat/#32/signup (#33)

* feat: 체크박스 아이콘 다운로드

* feat: 회원가입 페이지 라우팅 경로에 추가

* feat: 중복 검사 버튼 생성 (API 연결 전)

* feat: 회원가입 입력란 관련 데이터 생성

* feat: 파일 입력받는 컴포넌트 생성

* feat: Text 입력받는 컴포넌트 생성

* feat: 회원가입 버튼 생성

* feat: 기업 회원 가입 부분 생성

* feat: 일반 회원 가입 부분 생성

* feat: 회원가입 관련 타입 생성

* feat: 회원가입 페이지 생성

* feat: 중복 검사, 필수 입력 확인 함수 구현

* feat: 회원가입 승인 조건 변경

* feat: 입력 형식 제한 추가 (글자 수, 비밀번호 확인)

* chore: 주석 추가 및 태그 이름 변경

* chore: 회원가입 컴포넌트 주석 추가

* chore: 회원가입 관련 데이터에 주석 추가

* fix: 기업 회원가입 비밀번호 재확인 함수 인자 변경

* chore: 불필요한 선언 임시 제거

* Feature/#26/register program (#36)

* feat: UploadImage 컴포넌트 구현

* feat: DetailInfoField 컴포넌트 구현

* feat: RoundedInput 컴포넌트 구현

* fix DetailInfoField props 추가

* fix: RoundedInput 컴포넌트 width 100%로 수정

* fix: RoundedButton 호버 css props 추가 적용

* design: UploadImage padding 값 수정

* feat: 공고 등록 페이지 내 버튼 목록 컴포넌트 구현

* fix: data 및 handler 상위 컴포넌트로 이동

* style: DetailInfoField props 명 변경

* fix: DetailInfoField props 타입 수정

* fix: UploadImage에 이미지 업로드하면 보이도록 수정

* remove: RoundedInput 컴포넌트 파일 위치 변경

* feat: 프로그램 등록 관련 타입 추가

* feat: input field 내 공통으로 쓰일 title 컴포넌트 구현

* feat: 공고 등록 초기 내용 상수 추가

* feat: 공고 등록 중 이미지 업로드 컴포넌트 구현

* feat: 공고 등록 중 문의처 입력 컴포넌트 구현

* feat: 지역명 리스트 상수 추가

* feat: 지역명 필드 드롭다운 구현

* feat: 드롭다운 입력 컴포넌트 구현

* feat: 지역명 dropdown input field 컴포넌트 구현

* feat: 기간 선택 input field 구현

* remove: `DetailInfoField` -> `DetailInfo` 파일명 수정

* feat: DefaultInputField(일반 입력창) 컴포넌트 구현

* fix: CustomCalendar 재사용 가능하도록 props 수정

* rename: `CustomCalendar` -> `CustomRangeCalendar`

* feat: 공고 등록 필드 관련 상수 및 타입 추가

* design: 필드 제목 margin 속성 수정

* feat: 단일 날짜 선택 달력 추가

* fix: 공고 등록 컴포넌트 정보 상수화

* feat: RequiredInfo(필수 입력 정보) 컴포넌트 구현

* design: 지역 선택 시 글자 색 변경되도록 수정

* feat: RegisterProgram 컴포넌트 구현

* feat: RegisterProgram 라우팅 연결

* fix: 공고 등록 조건에 충족되지 않을 때 제일 위로 스크롤되도록 수정

* style: 공고 등록 페이지 TODO 주석 추가

* fix: 필수 입력 내용으로 카테고리 필드 추가

* style: API 적용을 위한 변수명 변경

* feat: 공고 등록 API 연결 (아직 에러 발생 중)

* style: TODO 주석 추가

* style: 불필요한 코드 주석 처리

* Fix/#45/image source (#46)

* feat: vercel 배포시 url 직접 접근되도록 설정

* fix: 이미지 import 방식 변경

* Feat/#42/api jaeguk (#48)

* feat: 좋아요 버튼 이벤트 버블링 방지

* feat: 지도 마커 정보 API 연결

* feat: 마커 정보 데이터 불러오는 Axios 함수 추가

* feat: 검색어 입력 후 버튼 클릭시 검색 페이지로 이동

* feat: 마커 상세 카드 클릭시 상세 페이지로 이동

* style: 마커 상세 카드 닫기 버튼 z-index 조절

* feat: 소셜 로그인 컴포넌트 따로 분리

* feat: 로그인 버튼 하단에 회원가입, 아이디 찾기, 비밀번호 찾기 버튼 추가

* chore: 파일 경로 이동

* chore: 파일 import 경로 수정

* feat: 로그인 로직 구현 (추후 테스트 필요)

* feat: 후기 페이지 제목 글꼴 변경

* chore: 불필요한 import 제거

* feat: 검색바 입력 후 페이지 이동 함수 분리

* feat: 분리된 함수 사용해서 검색 후 페이지 이동

* chore: 포스팅 상세 타입 명칭 변경

* chore: handleClickSearchProgram인자로 navigate 받도록 변경

* chore: 함수 인자로 navigate 넘겨주도록 변경

* chore: props 명칭 변경에 따른 수정

* style: 메인 페이지 width 1440px로 고정

* style: 메인 배너 이미지 변경

* feat: 로그인 성공시 Axios 기본 헤더에 토큰 추가

* fix: react-quill css파일 별도 분리

* fix: 소셜 로그인 아이콘 import 방식 변경

* chore: 사용하지 않는 변수 제거

* chore: 현재 사용하지 않는 변수 주석처리

* Feat/#42/api login (#49)

* fix: 후기 페이지 서버에서 주어지는 데이터에 맞게 props 변경

* feat: recoil, recoil-persist 패키지 다운로드

* feat: 후기 페이지 API 연결

* feat: 후기 페이지 API 연결

* feat: axios interceptor를 사용해서 API 요청 전 토큰 재발급

* feat: 리코일 사용을 위해 설정

* feat: 헤더에 로그인 버튼 추가

* feat: 로그인을 위한 함수 구현

* feat: 로그인 성공시 사용자의 정보를 recoil에 저장

* feat: 후기 페이지 API 연결

* Feature/#50/about (#51)

* feat: 갈래 소개 라우팅

* feat: 갈래와 함께하는 사람들 페이지 구현

* feat: 갈래와 함께하는 사람들 페이지 내 문자열 상수화

* feat: 갈래 소개 페이지 상수 추가

* feat: 갈래 소개페이지 구현

* Feature/#34/profile (#53)

* fix: 네비바 중 회원정보 라우팅 연결

* feat: 회원 정보 한글 매칭을 위한 객체 상수 추가

* feat: Profile 컴포넌트 구현

* rename: 파일명 오타 수정

* feat: 마이페이지 내 Title 공통으로 사용되어 컴포넌트 따로 분리

* rename: `MyTitle` -> `UserTitle`로 컴포넌트 명칭 변경

* refactor: Profile 컴포넌트 내부에서 AuthBadge 컴포넌트 분리

* feat: 전역 상태에 저장된 사용자 정보 가져와서 보여주는 기능 구현

* Feature/#43/api minha (#54)

* feat: 검색 API를 사용할 수 있는 데이터 형식으로 변환시켜주는 코드 작성

* feat: 검색 API 연결

* fix: 메인페이지 Nav 라우팅 수정

* fix: 검색바 placeholder 수정

* fix: 검색 페이지에서 달력 기간 선택 시 꺼지는 시간 수정

* fix: 서버 url 변경

* fix: 공고 등록 페이지 path 수정

* feat: 임시 저장 공고글 여부 확인하는 로직 구현 및 API 연결

* feat: 검색버튼 누를 때 마다 새로 GET 해오도록 구현

* feat: 지도보기 버튼 라우팅

* fix: 프로그램 아이디 변경해도 GET 안 해오는 버그 수정

* feat: 공고 임시 등록, 임시 등록 여부 확인, 등록 API 연결

* fix: 경고 메시지 안 뜨는 버그, 상세 입력 내용을 받아오지 못하는 버그 수정

* rename: 타입명 수정

* feat: 공고 등록 완료 시 해당 페이지로 이동 기능 구현 및 해시태그 전송 방법 수정

* style: 용어 통일

* Feature/#39/dash board (#55)

* feat: 대시보드 페이지 중 관리자 정보 보여주는 AdminProfile 컴포넌트 구현

* feat: 대시 보드 공고 필터 박스 FilterButton 구현

* chore: SUIT 폰트 SemiBold 추가

* chore: StyledFonts 중 B2Bold font-weight 수정

* feat: 공고 테이블 구현

* feat: 공고 테이블 내부에 사용되는 Pagination 구현

* fix: AdminProfile 컴포넌트 내에서 styledfont 사용하도록 수정

* feat: 대시보드 페이지 내에서 사용할 필터 목록 상수 추가

* feat: 공고 목록 전체적인 레이아웃 구현

* feat: 대시목록 페이지 구현 및 라우팅 연결

* fix: 공고가 없으면 삭제 필드가 보이지 않도록 수정

* feat: 기관 사용자 정보 보여주는 기능 구현

* fix: 필터 및 페이지 데이터 관리 위치 수정

* feat: 공고 목록 가져오기 및 삭제 API 연결

* Feat/#42/api jaeguk (#56)

* feat: 회원가입 페이지 API 연결

* feat: 회원가입시 중복 검사 기능 API 연결

* feat: 글쓰기 POST API 연결 (파일은 추후 연결)

* feat: 글 상세보기 페이지 API 연결 (일부 기능 추가 예정)

* feat: 게시판 등록 API 분리

* feat: 자료실 페이지 API 연결

* fix: 메인 페이지에서 filters API를 사용해서 데이터 요청

* feat: 지금 가장 인기있는 프로그램 클릭시 상세 페이지로 이동

* feat: 본인이 작성한 글에 대해서 수정/삭제 버튼이 나오도록 구현

* feat: 수정 삭제 버튼 (삭제 API 구현 전)

* feat: 수정 페이지 API 연결

* style: 포스팅 페이지 quill로 받은 데이터 꾸며주는 css

* fix: 파일이 있을 때만 x버튼이 나타나도록

* feat: 게시물 상세 데이터 불러오기 경로 수정

* feat: 게시물 업로드 API 연결

* feat: 서버에서 이전 글 ,다음 글 id 받아오기

* fix: 게시물 상세 타입에 이전, 다음 글에 대한 id 추가

* feat: 내가 쓴 글 페이지 API 연결

* fix: 서버에서 불러오는 데이터 key에 맞춰서 props 명칭 변경

* feat: 좋아요 버튼 API 연결

* fix: 좋아요를 누른 글에 대해서는 좋아요가 미리 눌러져 있을 수 있도록록

* fix: 헤더에서 내 포인트 페이지로 이동할 수 있도록 구현

* feat: 상세 페이지 하단 좋아요 많이 받은 게시물 조회 API 연결

* feat: 포인트가 부족한 경우 다시 라우팅

* fix: 포인트가 부족할 경우 라우팅

* feat: 자료실 수정하기 페이지 구현

* feat: 마일리지 적립/사용 내역 조회 API 연결

* style: 이 게시판의 다른 글 Item 스타일링 일부 수정

* feat: 게시물 페이지 아이콘 추가

* style: reset css를 min reset css로 변경

* style: reset css를 min reset css로 변경

* style: 게시물 상세 페이지 스타일링 변경

* fix: 지도 페이지 filters API를 이용해서 Marker 정보 불러오도록 변경

* style: reset css 내용 변경

* feat: 게시물 수정하기 API 연결

* chore: 불필요한 import 제거

* chore: 사용하지 않는 변수 선언 제거

* chore: 사용하지 않는 Props 제거

* feat: 꿀팁 페이지 제작 (#58)

* Feat/#42/api jaeguk (#59)

* chore: totalPages 키 이름 변경

* chore: console 로그 출력 제거

* feat: 게시물이 비어있을 때 보여주는 컴포넌트 생성

* feat: 게시물이 비어있을 시 Empty 컴포넌트 출력

* style: 게시물 Item 하단에 border 추가

* feat: 게시물 상세 페이지 입장시 scroll 상단으로 이동

* feat: 메인 페이지 NavCard에 핀 아이콘 추가

* chore: 수정, 삭제 버튼 컴포넌트 파일 위치 이동동

* feat: 관리자가 아니라면 관리자 페이지에 들어가지 못하도록

* fix: 로그인시 사용자의 role 저장

* fix: 관리자가 아니라면 관리자 페이지에 들어가지 못하도록 레이아웃 생성

* fix: 내 마일리지 페이지 필터 기본값 변경

* feat: 내 포인트 페이지 캐릭터 이미지 추가

* feat: 게시물 삭제 API 연결

* feat: 헤더에 프로그램, 관리자 드롭다운 추가

* chore: 경고 문구 변경

* feat: 자세히보기 버튼 클릭시 갈래 소개 페이지로 이동

* fix: 임시로 로고 이미지 추가

* chore:  내 마일리지 페이지 드롭다운 명칭 변경

* style: 임시 로고 스타일링 변경

* chore: 마일리지 페이지 /user 안으로 편입

* fix: 로그인시 추가적인 사용자 정보 저장

* fix: 포인트가 부족한 상황 캐치 조건 다시 구현

* fix: 유저 정보 변경에 따른 헤더 초기화 변경

* Feature/#52/detail program (#60)

* fix: ProgramCardItem 컴포넌트 수정
* LikeButton 컴포넌트 적용
* 이미지가 없는 프로그램의 경우 기본 이미지 삽입

* fest: 반투명 좋아요 버튼 컴포넌트 구현 및 적용

* feat: DefaultProgram 컴포넌트 구현 및 적용

* feat: 이미지 없을 경우 기본 이미지 삽입 구현 및 배경색 수정

* feat: 유사 지원 사업 추천 API 연결

* feat: 여행지 추천 UI 구현 및 API 연결

* feat: 숙소 추천 구현, 작성자인 경우 삭제 수정 버튼 보이도록 구현

* fix: vercel 에러 해결

* fix: key 에러 수정

* style: 오타 수정

* fix: 프로그램 기본 이미지 2가지 버전으로 만들어 상황에 맞게 적용하도록 수정

* feat: 프로그램 수정 기능 구현

* fix: 공고 수정 중 이미지 파일 버그 수정

* fix: 대시보드 정보 보여줄 때 생기는 버그 수정

* rename: AuthBade 파일 위치 이동

* feat: 관리자 회원정보 구현

* fix: vercel 에러 수정

* feat: 꿀팁 버튼 클릭 시 꿀팁 페이지로 이동

* feat: 문의 링크 추가

* feat: 파비콘 및 웹사이트 타이틀 설정

* Feature/#35/wish list (#61)

* feat: WishList(갈래말래) 라우팅 연결

* feat: 찜 목록 필터 관련 상수 추가

* style: 찜 목록 페이지 내 필터 바 구현

* feat: 찜목록 필터 관련 타입 추가

* feat: 마이페이지 내에서 공통으로 쓰이는 타이틀 컴포넌트 구현

* feat: 찜 목록 페이지 구현

* fix: LikeButton 이벤트 버블링 막는 코드 추가

* fix: ProgramCardItem에 LikeButton 컴포넌트 적용

* design: 디자인 요소 일부 수정

* style: 임시 API 추가한 이유 주석으로 추가

* feat: 찜 목록 GET 해와서 보여주는 기능 구현

* fix: ProgramCardItem 컴포넌트 수정
* LikeButton 컴포넌트 적용
* 이미지가 없는 프로그램의 경우 기본 이미지 삽입

* fest: 반투명 좋아요 버튼 컴포넌트 구현 및 적용

* feat: DefaultProgram 컴포넌트 구현 및 적용

* feat: 이미지 없을 경우 기본 이미지 삽입 구현 및 배경색 수정

* feat: 유사 지원 사업 추천 API 연결

* feat: 여행지 추천 UI 구현 및 API 연결

* feat: 숙소 추천 구현, 작성자인 경우 삭제 수정 버튼 보이도록 구현

* fix: vercel 에러 해결

* fix: key 에러 수정

* style: 오타 수정

* fix: 프로그램 기본 이미지 2가지 버전으로 만들어 상황에 맞게 적용하도록 수정

* feat: 프로그램 수정 기능 구현

* fix: 공고 수정 중 이미지 파일 버그 수정

* fix: 대시보드 정보 보여줄 때 생기는 버그 수정

* rename: AuthBade 파일 위치 이동

* feat: 관리자 회원정보 구현

* fix: vercel 에러 수정

* feat: 반투명 좋아요 버튼에 좋아요 로직 넣기

* Feat/#42/api jaeguk (#64)

* fix: 로고 이미지 변경

* feat: 게시물 페이지 검색기능 추가

* chore: 메인 페이지 NavCard 워딩 변경

* feat: 새로고침시 기존 로그인된 사용자면 refresh 요청

* feat: 좋아요 버튼 API 요청 성공 확인 후 isLike 값 변경

* fix: 지도 데이터 요청 최신순으로 변경

* chore: 불필요한 console.log 제거

* feat: 지도 페이지에서 좋아요 클릭시 데이터 다시 불러오도록 요청

* Fix/#62/minha (#63)

* fix: 검색 페이지 내 지도에서 보기 버튼 가운데 정렬 수정

* fix: 버튼 내 이상한 배경색 제거

* fix: 갈래 페이지 내 폰트 미적용 부분 수정

* fix: 공고 관리 api 버그 수정

* fix: 로그인 input 내 폰트 미적용 수정

* fix: react-icons 통일

* fix: 좋아요 버튼 내 오타 수정

* fix: 찜 목록 안가져오는 에러 수정

---------

Co-authored-by: 재국 <[email protected]>

* Feat/#42/api jaeguk (#66)

* fix: 로고 이미지 변경

* feat: 게시물 페이지 검색기능 추가

* chore: 메인 페이지 NavCard 워딩 변경

* feat: 새로고침시 기존 로그인된 사용자면 refresh 요청

* feat: 좋아요 버튼 API 요청 성공 확인 후 isLike 값 변경

* fix: 지도 데이터 요청 최신순으로 변경

* chore: 불필요한 console.log 제거

* feat: 지도 페이지에서 좋아요 클릭시 데이터 다시 불러오도록 요청

* feat: 내 글 상세 페이지 라우팅 추가

* fix: API 요청 전 refresh하는 조건 변경

* chore: 좋아요 버튼 오타 제거거

* feat: 내 글 상세 페이지와, 글 상세 페이지를 하나의 컴포넌트를 사용해서 해결

* fix: 게시물 다른 글 API 요청 캐싱 조건 변경

* feat: 이전 글 또는 다음 글이 없으면 버튼이 안 보이게

* fix: 내 글 상세 페이지에서는 이 게시판의 다른 글 섹션 보이지 않게

* chore: 중복된 import 제거

* fix: 게시물 페이지 없는 속성 참조하는 버그 수정 (#68)

* fix: interceptor refresh 조건 변경

* fix: quill 에디터에서 이미지 처리가 어려워 임시 제거

* Hotfix/#71/jaeguk (#72)

* fix: refresh토큰 만료시간 6시간으로 조정

* feat: 마일리지 관련 팁 데이터 변경

* fix: 회원가입 완료시 confirm이 아닌 alert로 알림

* fix: 내 글 목록에서 글쓰기 버튼시 Not Found로 가는 버그 해결

* style: MapCard 컴포넌트 스타일링 변경

* feat: 기업회원 회원가입 추가

* feat: 사업자 등록번호 key registNum으로 통일

* chore: 불필요한 import 제거

* feat: 헤더 NavBar 클릭 시 대표 페이지로 이동

* Hotfix/#71/jaeguk (#77)

* fix: refresh토큰 만료시간 6시간으로 조정

* feat: 마일리지 관련 팁 데이터 변경

* fix: 회원가입 완료시 confirm이 아닌 alert로 알림

* fix: 내 글 목록에서 글쓰기 버튼시 Not Found로 가는 버그 해결

* style: MapCard 컴포넌트 스타일링 변경

* feat: 기업회원 회원가입 추가

* feat: 사업자 등록번호 key registNum으로 통일

* chore: 불필요한 import 제거

* feat: 헤더 NavBar 클릭 시 대표 페이지로 이동

* chore: D-day 표시에 D- 빠진 것 추가

* chore: confrim 메시지 출력 후 취소시 뒤로가기

* style: 게시물 목록 컴포넌트 width 고정

* style: 게시물 Item 레이아웃 조정

* style: 게시물 Item 등록날짜 태그 width 변경

* fix: 게시물 상세 페이지에서 데이터 로드되지 않으면 레이아웃 보이지 않게

* Hotfix/#71/jaeguk (#79)

* fix: refresh토큰 만료시간 6시간으로 조정

* feat: 마일리지 관련 팁 데이터 변경

* fix: 회원가입 완료시 confirm이 아닌 alert로 알림

* fix: 내 글 목록에서 글쓰기 버튼시 Not Found로 가는 버그 해결

* style: MapCard 컴포넌트 스타일링 변경

* feat: 기업회원 회원가입 추가

* feat: 사업자 등록번호 key registNum으로 통일

* chore: 불필요한 import 제거

* feat: 헤더 NavBar 클릭 시 대표 페이지로 이동

* chore: D-day 표시에 D- 빠진 것 추가

* chore: confrim 메시지 출력 후 취소시 뒤로가기

* style: 게시물 목록 컴포넌트 width 고정

* style: 게시물 Item 레이아웃 조정

* style: 게시물 Item 등록날짜 태그 width 변경

* fix: 게시물 상세 페이지에서 데이터 로드되지 않으면 레이아웃 보이지 않게

* fix: 관리자는 좋아요 버튼 비활성화

* fix: 401에러 반환시 처리하는 로직 변경

* fix: 좋아요 버튼 클릭시 관리자인지 확인

* fix: 관리자 좋아요 버튼 비활성화

* Hotfix/#71/jaeguk (#81)

* fix: refresh토큰 만료시간 6시간으로 조정

* feat: 마일리지 관련 팁 데이터 변경

* fix: 회원가입 완료시 confirm이 아닌 alert로 알림

* fix: 내 글 목록에서 글쓰기 버튼시 Not Found로 가는 버그 해결

* style: MapCard 컴포넌트 스타일링 변경

* feat: 기업회원 회원가입 추가

* feat: 사업자 등록번호 key registNum으로 통일

* chore: 불필요한 import 제거

* feat: 헤더 NavBar 클릭 시 대표 페이지로 이동

* chore: D-day 표시에 D- 빠진 것 추가

* chore: confrim 메시지 출력 후 취소시 뒤로가기

* style: 게시물 목록 컴포넌트 width 고정

* style: 게시물 Item 레이아웃 조정

* style: 게시물 Item 등록날짜 태그 width 변경

* fix: 게시물 상세 페이지에서 데이터 로드되지 않으면 레이아웃 보이지 않게

* fix: 관리자는 좋아요 버튼 비활성화

* fix: 401에러 반환시 처리하는 로직 변경

* fix: 좋아요 버튼 클릭시 관리자인지 확인

* fix: 관리자 좋아요 버튼 비활성화

* fix: 페이지바 끝페이지 이동 버튼 활성화

* feat: 지도에 검색 기능 추가

---------

Co-authored-by: aaminha <[email protected]>
  • Loading branch information
jk6722 and AAminha authored Nov 23, 2023
1 parent 45dfb61 commit 88da7e3
Show file tree
Hide file tree
Showing 5 changed files with 39 additions and 16 deletions.
3 changes: 2 additions & 1 deletion src/apis/map/index.ts
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
import Axios from '..';

export const fetchMapMarker = () => () =>
export const fetchMapMarker = (searchFilter: string) => () =>
Axios.get('/programs/filters', {
params: {
orderCriteria: '최신순',
location: searchFilter,
size: 100,
},
});
14 changes: 12 additions & 2 deletions src/components/PageBar/PageBar.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,12 @@ const PageBar: React.FC<Props> = ({ page, setPage, maxPage }) => {
<>
{maxPage > 0 && (
<Container>
<HiOutlineChevronDoubleLeft className="icon" />
<HiOutlineChevronDoubleLeft
className="icon"
onClick={() => {
setPage(1);
}}
/>
<HiOutlineChevronLeft
className="icon"
onClick={() => movePage('prev')}
Expand All @@ -73,7 +78,12 @@ const PageBar: React.FC<Props> = ({ page, setPage, maxPage }) => {
className="icon"
onClick={() => movePage('next')}
/>
<HiOutlineChevronDoubleRight className="icon" />
<HiOutlineChevronDoubleRight
className="icon"
onClick={() => {
setPage(maxPage);
}}
/>
</Container>
)}
</>
Expand Down
11 changes: 11 additions & 0 deletions src/functions/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,3 +9,14 @@ export const handleClickSearchProgram = (
navigate(`/search?keyword=${searchInput}`);
setSearchInput('');
};

export const handleClickSearchMap = (
searchInput: string,
setSearchInput: React.Dispatch<React.SetStateAction<string>>,
setSearhFilter: React.Dispatch<React.SetStateAction<string>>,
) => {
// 검색 후 페이지 이동
console.log(searchInput);
setSearhFilter(searchInput);
setSearchInput('');
};
2 changes: 1 addition & 1 deletion src/pages/board/Board.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -108,7 +108,7 @@ const Container = styled.div`
width: 1400px;
margin: 0 auto 128px;
body:not(&) {
background-color: white;
}
Expand Down
25 changes: 13 additions & 12 deletions src/pages/map/Map.tsx
Original file line number Diff line number Diff line change
@@ -1,15 +1,14 @@
import { Map, MarkerClusterer } from 'react-kakao-maps-sdk';
import CustomMarker from './components/CustomMarker';
import { useEffect, useRef, useState } from 'react';
import { useCallback, useEffect, useRef, useState } from 'react';
import MapCard from './components/MapCard';
import styled from 'styled-components';
import SearchBar from '@/components/SearchBar/SearchBar';
import useOnClickOutside from '@/hooks/useOnClickOutside';
import { useQuery } from 'react-query';
import { fetchMapMarker } from '@/apis/map';
import Loading from '@/components/Loading/Loading';
import { handleClickSearchProgram } from '@/functions';
import { useNavigate } from 'react-router-dom';
import { handleClickSearchMap } from '@/functions';

interface markerDataType {
id: number;
Expand All @@ -24,20 +23,24 @@ interface markerDataType {
const MapPage = () => {
const [selected, setSelected] = useState<number>(-1);
const [isModalOpen, setIsModalOpen] = useState<boolean>(false);
const [searchInput, setSearchInput] = useState('');
const [searchInput, setSearchInput] = useState<string>('');
const [searchFilter, setSearchFilter] = useState<string>('');

const { isLoading, data, refetch } = useQuery(
['marker', selected],
fetchMapMarker(),
['marker', selected, searchFilter],
fetchMapMarker(searchFilter),
{
cacheTime: 500005,
staleTime: 500000,
},
);
const navigate = useNavigate();

const cardRef = useRef(null);

const handleClickSearch = useCallback(() => {
handleClickSearchMap(searchInput, setSearchInput, setSearchFilter);
}, [searchInput, searchFilter]);

useOnClickOutside(cardRef, () => {
setIsModalOpen(false);
setSelected(-1);
Expand Down Expand Up @@ -74,16 +77,14 @@ const MapPage = () => {
searchInput={searchInput}
setSearchInput={setSearchInput}
placeHolder="관심있는 여행지가 있으신가요?"
handleSubmit={() =>
handleClickSearchProgram(searchInput, setSearchInput, navigate)
}
handleSubmit={handleClickSearch}
/>
</SearchBarWrapper>

<Map
center={{ lat: 37.566566, lng: 126.979192 }}
center={{ lat: 36.58775, lng: 127.968238 }}
style={{ width: '100%', height: '133.3333vh', zoom: '1.33333' }}
level={11}
level={12}
>
<MarkerClusterer>
{markerData?.map(({ latitude: lat, longitude: lng, id }, idx) => (
Expand Down

0 comments on commit 88da7e3

Please sign in to comment.