Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[server] 게시글 북마크 on 기능 구현 #348

Merged
merged 18 commits into from
Aug 7, 2022
Merged

[server] 게시글 북마크 on 기능 구현 #348

merged 18 commits into from
Aug 7, 2022

Conversation

Semy-sudo
Copy link
Contributor

@Semy-sudo Semy-sudo commented Jul 27, 2022

👀 이슈

resolve #314

📌 개요

로그인된 사용자가 구독한 게시글을 저장합니다.

👩‍💻 작업 사항

구독후 bookmark 테이블에 articleId 리스트 저장합니다.

✅ 참고 사항

@Semy-sudo Semy-sudo added ✨ Feature 기능 개발 🖥 Server package: server labels Jul 27, 2022
@Semy-sudo Semy-sudo self-assigned this Jul 27, 2022
@@ -33,6 +33,8 @@ export class SubscribeControlelr {
})
@UseGuards(UserAuthGuard)
async create(@Req() req, @Param("boardId") boardId: number) {
console.log("req 객체", req);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

console.log는 지우고 올리는게 좋을 것 같습니다!

@ionc635
Copy link
Contributor

ionc635 commented Jul 29, 2022

지난 커밋이 따라 오는 부분과 커밋 prefix 확인 부탁드릴게요!

Collaboration Guide: CMI-OSS/common#1

Comment on lines 4 to 18
import { AdminRepository } from "src/admin/repository/admin.repository";
import { ArticleRepository } from "src/article/article.repository";
import { ArticleService } from "src/article/article.service";
import { ArticleImageRepository } from "src/articleImage/articleImage.repository";
import { ArticleImageService } from "src/articleImage/articleImage.service";
import { BoardRepository } from "src/board/board.repository";
import { BoardService } from "src/board/board.service";
import { BoardTreeRepository } from "src/boardTree/boardTree.repository";
import { BoardTreeService } from "src/boardTree/boardTree.service";
import { HitRepository } from "src/hit/hit.repository";
import { AwsService } from "src/image/aws.service";
import { ImageRepository } from "src/image/image.repository";
import { ImageService } from "src/image/image.service";
import { SubscribeRepository } from "src/subscribe/subscribe.repository";
import { SubscribeService } from "src/subscribe/subscribe.service";
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

북마크 모듈에서 필요한것만 import하는게 좋을것 같아요

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

4c4c5a5
수정했음다~~

@Semy-sudo Semy-sudo merged commit 55a79f7 into dev Aug 7, 2022
@Semy-sudo Semy-sudo deleted the server/i314 branch August 7, 2022 06:34
nohgijin added a commit that referenced this pull request Mar 16, 2023
* [server] 데이터베이스 스키마 Entity 구현 (#224)

* feat: image Entity 생성

* [server] Article Entity 생성 (#225)

* feat: Article Entity 생성

* refact: CommonEntity 수정

- synchronize: ture로 스키마 생성 시 오류 발생으로 dafault 내용 삭제
- default 내용 삭제해도 의도한 대로 현재 시간 삽입되는 것 확인

* refact: 추가 보완

* [server] Bookmark Entity 생성 (#227)

* feat: Bookmark Entity 생성

* refact: 추가 보완

* feat: Board_authority Entity 생성 (#229)

* feat: Certification Entity 생성 (#232)

* feat: Notice_history Entity 생성 (#233)

* feat: Report Entity 생성 (#236)

* feat: Hit Entity 생성 (#234)

* [server] Subscribe Entity 생성 (#235)

* feat: Subscribe Entity 생성

* refact: 추가 보완

* [mobile] 스타일 변수 관리 (#228)

* style: typography mixin, color 설정

* fix: 홈페이지 변경된 ui 반영
- 코로나 삭제

* setting: lint 수정
- 한글 컴포넌트 네이밍을 위해 jsx pascal case ignore로 설정

* setting: lint값 변경

* fix: types/react버전 업그레이드
- react quill에서의 타입 불일치
- zenoamaro/react-quill#792

* 🐛 Fix react-quill import error
zenoamaro/react-quill#336 (comment)

* ➕ Update types/react-dom

* fix: editor style bug in production (#247)

* [mobile] 홈 세부 기능 제작 (#230)

* style: typography mixin, color 설정

* fix: 홈페이지 변경된 ui 반영
- 코로나 삭제

* style: 식단 상황별 마크업
- 초기 세팅
- 식단 없을때 체크

* feat: 식당 가이드 스토리지로 관리

* feat: 식당 요약 상황별로 스토리지 설정

* style: red값 추가

* feat: 공지사항 인기/최신 라우팅에 넣어서 관리

* refactor: 홈-식단 카드 컴포넌트로 분리

* feat: 아이콘과 배경 map형식으로 제작

* feat: 시간/날씨별 아이콘 조회

* fix: lint

* chore: 빠진 유틸 추가

* fix: svg type

* [server] Entity 점검 및 보완 (#240)

* fix: entity 점검 및 보완

* fix: 코드 리뷰 반영

* [server] Pipe 전역 설정 (#245)

* feat: Pipe 전역 설정

* feat: Request DTO 내 class-validator 추가 적용

* fix: Jenkins error 해결

* fix: 코드 리뷰 반영

* [mobile] 지도 - 상세페이지 마크업  (#250)

* style: 캠퍼스맵 Link width 수정

* style: 지도 리스트 -> 장소 텍스트 변경

* style: 제보하기 button -> link로 변경

* style: 리스트 이름 변경

* style: map -> menu 추가(학교, 식사, 편리, 간식, 놀거리)

* style: map -> menu 추가(학교, 식사, 편리, 간식, 놀거리) 수정

* feat: 툴팁 닫기 버튼 추가

* feat: navgation 작업

* feat: 상태 저장

* feat: 라우팅 수정

* chore: svg 이미지 추가

* style: 이미지 리스트 마크업

* style: 상세페이지 마크업

* feat: 라우팅 작업

* style: icon import 작업

* chore: 이미지 데이터 mock에 추가

* fix: class 이름 변경

* style: typography mixin 사용

* chore: 이미지 props로 전달받는 방식으로 수정

* fix: jenkins 린트 에러 수정

* �공지사항 일부 페이지 마크업 (#256)

* markup: 공지사항페이지 틀 잡기

* feat: Link로 변경

* markup: 가이드페이지, 공지사항 리스트 페이지 마크업

* feat: 가이드 이미지 추가
- 코드리뷰 반영
- 공지사항 빈 경우 가이드 이미지 추가

* chore: lint 중복속성 삭제

* refactor: lint 설정 변경

* [mobile] 지도 - 이미지 페이지 작업 (#254)

* chore: 이미지 리스트 헤더 컴포넌트 작성

* style: 이미지 리스트 컴포넌트 작업

* [server] 이미지 업로드 API 리팩토링 (#259)

* refact: 이미지 업로드 API 리팩토링

* refact: 추가 보완

* refact: 코드 리뷰 반영

* refactor: position mixin 작성 (#253)

* [server] Cafeteria, CafeteriaMenu, Place 관련 모듈 (#255)

* feat: PageQuery 데코레이터 작성

* fix: default 페이징 값 추가

* chore: createdAt updatedAt 필요없는 옵션값 제거

* feat: typeorm-naming-strategies npm 모듈 추가

* chore: Admin,User 엔티티 nullable option 추가

* feat: 초기 데이터 입력을 위해 typeorm-seeding npm 모듈 추가

* feat: Cafeteria, Place Entity 추가

* feat: snake naming strategy 적용

* feat: admin entity beforeinsert로 비밀번호 해싱

* feat: Cafeteria 초기 데이터 값 추가

* feat: Cafeteria 초기 데이터 설정 코드 추가

* chore: eslint warning solve

* feat: add CafeteriaMenu entity

* feat: add Cafeteria entity

* feat: 작업사항 반영 목적 커밋

* [chore] fix eslint error in server package

* fix: Jenkins 에러 해결

Co-authored-by: 제스 <[email protected]>
Co-authored-by: steve <[email protected]>

* [mobile] 제보하기 ui 작성 (#257)

* chore: 이미지 리스트 헤더 컴포넌트 작성

* style: 이미지 리스트 컴포넌트 작업

* style: 제보하기 header 작업

* chore: 기본 세팅

* feat: onChage 상태 추가

* style: map header 및 제보하기 ui 수정

* style: 제출 버튼 이미지 추가

* [mobile] 오류 신고 UI 만들기 (#261)

* chore: 이미지 리스트 헤더 컴포넌트 작성

* style: 이미지 리스트 컴포넌트 작업

* style: 제보하기 header 작업

* chore: 기본 세팅

* feat: onChage 상태 추가

* style: map header 및 제보하기 ui 수정

* style: 제출 버튼 이미지 추가

* style: 오류 신고 페이지 작성

* [server] 날씨 조회 API 리팩토링 및 날씨 데이터 저장 방식 변경 (#263)

* refact: 날씨 API 리팩토링

- 데이터 저장 시 스크래핑 방식이 아닌 오픈 API 활용

* refact: 추가 보완

* fix: 추가 보완

* [server] 모든 origin CORS 허용 #272

* [server] 이미지 업로드 동기로 변경 (#273)

* [server] article_image 테이블 생성 (#276)

* feat: article_image 테이블 생성

* chore: entity명 명시하지 않는 것으로 통일

* [mobile] 캠퍼스맵 위치 가져오기 (#266)

* feat: 현재위치 가져오는 로직 구현 및 적용

* feat: 리팩토링

* refactor: 코드리뷰 반영

* [server] Article 생성, 삭제, 수정(이미지 제외), 사이트별 목록 조회, 상세 조회 API (#271)

* ✨ 특정 board 소속 article 상세 정보 리스트 조회 API 1차 구현

* ✨ hit module 추가

* ✨ article 메소드에 hit Count 추가

* ✨ bookmark module 및 article 당 bookmark count 쿼리 추가

* ✨ article 리스트 코드에 bookmark count 쿼리 추가

* ✨ 특정 article 상세 정보 조회 API

* ✨ article 생성 API

* ✨ article delete API

* ✨ article update API

* ✨ 중간 저장

* 🐛 Article - Board Lazy loading 오류 수정

* Merge branch 'dev' of https://github.com/CMI-OSS/cbnu-alrami into server/i128

* ✨ boardTree 없을 때 null로 response 반환하도록 수정

* ✨ article create에 url 중복체크 및 image 등록 과정 추가

* 🐛 request validator 설정 추가 & image update 버그 수정

* ✨ article delete API endpoint 수정

* 🐛 lint error fix

* 🔥 주석 및 console.log 삭제

* 🐛 parent board가 null일 경우 response 수정

* ♻️ 변경 전 article 변수 받아오는 코드 수정

* ✨ article 등록할 때 article_image 맵핑하도록 수정

* 🐛 circular reference 에러 해결 & articleImage create로 로직 변경

Co-authored-by: Eunji-gec <[email protected]>

* [server] CommonEntity 개선 (#284)

* ⚡️ CommonEntity 개선

* ♻️  CommonEntity UpdatableCommonEntity class 분리

* ✨ Set Entity Name

* [all] unused import 자동 제거 #285)

* [server] 오픈 API를 통한 공휴일 데이터 저장 Batch 구현  (#280)

* refact: deprecated 문법 수정

* feat: 오픈 API를 통한 공휴일 데이터 저장 Batch 구현

* refact: 오픈 API를 통한 공휴일 데이터 저장 Batch 리팩토링

* refact: 추가 리팩토링

* refact: 공휴일 데이터가 순차적으로 저장되도록 리팩토링

* chore: Entity 점검 및 initialize 로직 주석 처리 (#288)

* [server] 인증체크 로직 변경 (#289)

* 🔥 unsed import

* 📝 관리자 인증관련 swagger

* ♻️ Remove passport and add user middleware

* 🔥 Remove logs

* ✨ Add user-auth guard

* 🔥 주석 제거

* [server] 인기 공지사항 조회 API (#292)

* ✨ 조회수 순으로 상위 5개 공지사항 조회

* ✨ 조회수 없는 경우의 예외 로직 추가

* 📝 swagger description 추가

* 🐛 hit 테이블 조회 결과와 article 테이블 조회 결과 중복되는 경우 수정

Co-authored-by: Eunji-gec <[email protected]>

* [mobile] 마커에 해당되는 정보 툴팁 추가 (#268)

* feat: 현재위치 가져오는 로직 구현 및 적용

* feat: 리팩토링

* feat: 마커에 해당되는 정보 툴팁 추가

* refactor: 코드리뷰 반영

* style: 뒤로가기 추가

* refactor: 코드리뷰 반영

* fix: map 하단 info 위치 수정

* 🗃️ subscibe entity notice 필드 자료형 수정 (#294)

* [server] 이미지 업로드 시 데이터베이스 저장 로직 구현 (#283)

* refact: 이미지 업로드 시 데이터베이스 저장 로직 작성

* refact: DTO 생성 및 추가 리팩토링

* refact: Response 전달 형태 변경

* refact: 추가 보완

* [server] 보드 계층 조회 API response 수정 (#299)

* ✨ guard 이용, User 정보 fetch

* 🚑 subscribe 모듈 추가

* ✨ board 구독 여부, 알림 여부 확인

* ✨ boardTree 조회 API response에 구독 여부 & 알림 여부 추가

* 🐛 module 의존성 추가

* 🐛 userId를 받도록 메소드 수정

* 📝 swagger에 api header 추가

Co-authored-by: Eunji-gec <[email protected]>

* [server] 보드 구독 설정 & 해제 API 개발 (#303)

* ✨ subscribe controller 추가

* 📝 swagger 추가

* ✨ board 구독 모듈 생성

* ✨ board ID 존재하지 않을 때의 예외 메세지 수정

* ✨ 구독 API response 수정

* ✨ subscribe 해제 메소드 추가

* ✨ board 구독 해제 controller 추가

* 📝 swagger apiReponse 수정

* 🔥 불필요한 트랜잭션 처리 수정

* [server] article 생성 API guard 이용하도록 수정 (#310)

* ♻️ adminAuthGuard로 코드 수정

* 📝 swagger에 apiheader 추가

* ♻️ 불필요한 admin 조회 삭제

* [server] 세션 데코레이터 (#300)

* [server] 학사 일정 조회 API 에러 해결 (#312)

* fix: Schedule 에러 해결

* chore: GetSchedulesRequestDto swagger default 값 추가

* [server] 학생식당 메뉴 API (#290)

* id,date 별 학생식당 메뉴 api

* chore: 불필요 주석 삭제

* chore: 불필요 코드 삭제

* chore: root package 와 server package 구분

Co-authored-by: 송예인 <[email protected]>

* [mobile] 식단 마크업(헤더 제외) (#274)

* feat: add cafeteria mocks

* feat: add icon

* feat: add CafeteriaMenuCard molecules component

* feat: add Cafeteria page

* feat: add CafeteriaTime util function

* feat: add no menu Cafeteria page

* feat: add Flicking component

* bug: Flicking에서 메뉴가 overflow 시 가려지는 버그 수정

* feat: add FlickingMenu type

* fix: move cafeteriaList to mocks

* feat: add position mixin & remove unnecessary css

* [mobile] 일정 페이지 마크업 및 캘린더 상호작용 기능 구현 (#267)

* feat: Make calendar page

* chore: Resolve confilcts and errors

* refactor: Use dayjs module for calendar function

* chore: Apply flexible calendar height

* chore: Reduce calendar header height

* chore: Remove all margin in label

* refactor: Change hexadecimal color to scss variable

* chore: Reflect small feedbacks

* refactor: Reflect small feedbacks

* refactor: Move long hooks to separate file

* chore: Delete Calendar Arrow icons

* refactor: Change useEffect to useMemo

* refactor: Move component directories into Calendar page directory

* chore: Reflect code review

* chore: Reflect new design

* [mobile] 공지사항 페이지 (#302)

* markup: 공지사항페이지 틀 잡기

* feat: Link로 변경

* markup: 가이드페이지, 공지사항 리스트 페이지 마크업

* feat: 가이드 이미지 추가
- 코드리뷰 반영
- 공지사항 빈 경우 가이드 이미지 추가

* feat: fullModalTemplate 제작

* feat: react-query 붙이기

* feat: 날씨 api 연동

* feat: 일정 api 연동

* refactor: axios 분리

* refactor: type추가해서 리팩토링

* chore: redux provider 추가

* feat: 구독 공통 요소 제작
- 구독 첫페이지
- 구독 마지막페이지

* feat: 구독 중간요소 뼈대 잡기
- api 추가

* chore: package-lock 제거

* chore: merge 오류 해결

* chore: arrow props 추가

* [mobile] 홈 api 연동 (#308)

* feat: react-query 붙이기

* feat: 날씨 api 연동

* feat: 일정 api 연동

* refactor: axios 분리

* refactor: type추가해서 리팩토링

* chore: redux provider 추가

* chore: api type 추가
- 백엔드에서 res수정

* chore: package-lock 제거

* [mobile] 캠퍼스맵 디자인 1차 QA건  (#311)

* style: header height 높이 수정

* style: 지도상세페이지 아이콘 제거

* style: menuButton 스타일 수정

* style: 지도 상세페이지 스타일 수정

* [server] 공지사항 조회 관련 API 개발 (#317)

* ✨ 유저가 북마크한 공지사항 조회

* ✨ 북마크한 공지사항 조회 1차 완료

* ✨ moment를 이용한 date formatting 추가

* 🚚 article dto 정리

* 📝 swagger 추가

* ✨ 구독한 게시판의 최신 공지사항 조회 API 추가

* [admin] 이미지 업로드 UI (#265)

* feat: add imgUploadSlides component

* feat: add imgCard component

* feat: img upload ui in progress

* feat: img upload drag event

* feat: add changeCurrentImgIdx

* chore: reflect code review

* chore: reflect code review

* fix: solve "작성중" status

* chore: change style code because production

* [server] 인기 공지사항 조회 API 수정 (#320)

* ✨ 조회수 상위 5개 공지사항 조회 쿼리 수정

* ✨ article 조회 쿼리에 2주 조건 추가

* [mobile] 공지사항 구독 기능 (#327)

* feat: 구독 UI 제작 및 mock 연동

* chore: 오타 삭제

* chore: mockData 추가 및 타입 정의

* feat: 공지사항 구독 모달 템플릿 제작

* markup: 아이콘 스타일 수정

* [mobile] 공지사항 구독 api 연결 (#337)

* feat: api 연결

* refactor: 페이지 명 변경, api res 정제

* [mobile] fullPageModal Template 제작 (#339)

* [mobile] 일정 페이지 위로 가기 플로팅 버튼 구현 (#332)

* feat: Make floatting button

* chore: Hide user agent style

* [mobile] 식단 헤더 기능구현 및 공통화 (#335)

* refactor: refactoring calendarReducer

* refactor: refactoring calendarHeader

* refactor: refactoring calendarHeader

* chore: reflect code review

* [mobile] 공지사항 설정페이지 제작 (#341)

* refactor: plus 아이콘 통일

* refactor: 라우팅 주소 및 컴포넌트명 변경

* style: fullPageModal 스타일 수정

* feat: 공지사항 설정 페이지 제작

* refactor: width, height 아이콘에 추가

* [server] 게시판 알림 설정 / 해제 API (#345)

* ✨ 게시판 알림 설정 API 추가

* ✨ 게시판 알림 해제 API 추가

* [server] 학생식당 메뉴 추가 (#313)

* id,date 별 학생식당 메뉴 api

* chore: 불필요 주석 삭제

* chore: 불필요 코드 삭제

* chore: root package 와 server package 구분

* practice

* chore: 식당메뉴 추가

* chore: 식당메뉴 추가

* chore: swagger 문서 추가

Co-authored-by: 송예인 <[email protected]>

* [mobile] Map 디렉토리 리팩토링 (#343)

* chore: 디렉토리 수정

* chore: place 폴더 이동

* chore: route 경로 수정

* chore: 컴포넌트 url 수정

* chore: id 변경

* [mobile] 식사 베타 아이콘 툴팁 추가건 (#334)

* style: 툴팁 추가

* style: borderbox ui 추가

* style: padding 수정 및 border-radius 수정

* style: tooltip padding 수정

* [server] 사용하지 않는 이미지 삭제 Batch 로직 구현 (#307)

* feat: 사용하지 않는 이미지 삭제 Batch 로직 구현

* chore: 주석 해제

* ✨ article 생성 시, url 존재하는 경우만 중복체크하도록 처리 (#356)

* [mobile] 식당 스펙 제거에 따른 ui 변경 (#350)

* style: map buttonList 제거

* style: 설명란 추가

* fix: 의미없는 텍스트 제거

* chore: 사용하지 않는 더미 데이터 제거

* style: 스타일 수정

* [server] 수정 권한이 있는 게시판 조회 API (#358)

* 🔥 필요없는 주석제거

* ✨ 권한있는 게시판 목록 API

* [server] article 수정 API에 image 수정 로직 추가 (#363)

* ✨ article update 모듈이 세션 데코레이터 사용하도록 수정

* ✨ article 생성 API가 세션 데코레이터 사용하도록 수정

* ✨ url 빈 값 허용

* ✨ 공지사항 이미지 수정 로직 추가

* ✨ article image update 로직 수정

* ✨ article update할 때 맵핑된 article image 전체 삭제하는 경우 추가

* ♻️ 불필요한 조건 체크 삭제

* ♻️ article_image 삭제 시 imageId 이용하도록 수정

* [server] 유저가 구독 & 알림을 받는 게시판 목록 조회 API 개발 (#361)

* ✨ 구독&알림 설정 게시판 리스트 조회 컨트롤러 추가

* ✨ 구독 / 알림 설정한 게시판 목록 조회 API 개발

* [mobile] 설정 메인 및 대표식당 설정 페이지 마크업 (#328)

* feat: add icons

* feat: add Setting page

* feat: add settingLabel mock

* feat: add settingMenu props & style

* feat: add settingMenuList constants

* refactor: refactoring Setting page

* feat: add settingTemplate

* feat: add SettingMain page

* feat: add SettingMenu props

* feat: add SettingCafeteria page

* feat: add SettingHeader molecule

* feat: add RadioSelect molecule

* feat: add RadioSelect group

* chore: change markup

* chore: remove unused setting icon

* fix: style overriding

* chore: change component name

* chore: reflect code review

* refactor: refactoring FullPageModalTemplate

* refactor: add FullPageModalTemplate

* chore: reflect FullPageModalTemplate

* delete: delete Subscribe icon

* delete: delete Subscribe icon

* chore: reflect meeting review

* chore: reflect meeting review(constants)

* refactor: refactoring folder structure

* [mobile] 공지사항 미리보기 페이지 (#367)

* feat: 보드별 공지사항 리스트 제작

* style: fullPageModalTemplate 헤더 고정으로 수정

* feat: 미리보기 페이지 제작

* chore: 사용안하는 목데이터 제거

* refactor: 코드리뷰 반영

* chore: 도메인 변경

* [mobile] 일정 페이지에서 개인일정을 즐겨찾기로 대체하기 (#374)

* refactor: Change personal schedule to stared schedule

* refactor: Replace SVG + span to single png file

* chore: Change stared to favorites

* chore: Change favorites to bookmark

* markup: 선택자 변경

* refactor: Apply typography mixin (#378)

* [server] article 상세 정보 조회 API response에 image 추가 (#380)

* ✨ article 상세 정보 조회 DTO에 images 필드 추가

* ✨ response에 image 리스트 추가

* ✨ Add onDelete CASCADE for FK (#379)

* [server] article 상세 정보 조회 API response 필드 수정 (#384)

* ✨ response 수정 : updatedAt, createdAt 삭제 & date로 필드명 변경

* ✨ 이미지 없는 article 생성 허용

* ✨ article 관련 response에서 모든 date 필드의 포맷팅 로직 삭제

* [server] 유저 정보 저장 로직 및 FCM PUSH 알람 연결 (#355)

* feat: 유저 정보 저장 로직 구현

- device, fcmToken, uuid 데이터 저장

* feat: FCM PUSH 알람 연결

* refact: 추가 보완

* [server] 요청 크기 제한 늘리기 #385

* [mobile] redux-persist 연동 (#322)

* chore: redux-persist 설치

* chore: redux-persist 세팅 추가

* chore: 데이터 수정

* style: 링크 url 및 스타일 수정

* refactor: 코드리뷰 반영

* [mobile] 설정 문의하기  (#352)

* feat: add icons

* feat: add Setting page

* feat: add settingLabel mock

* feat: add settingMenu props & style

* feat: add settingMenuList constants

* refactor: refactoring Setting page

* feat: add settingTemplate

* feat: add SettingMain page

* feat: add SettingMenu props

* feat: add SettingCafeteria page

* feat: add SettingHeader molecule

* feat: add RadioSelect molecule

* feat: add RadioSelect group

* chore: change markup

* chore: remove unused setting icon

* fix: style overriding

* chore: change component name

* chore: reflect code review

* style: modalPageTemplate 작성 및 문의하기 마크업 작성

* chore: modal 디렉토리 네이밍 수정

* feat: 상태 추가

* fix: 버그 수정

* style: 문의하기 모달 구현

* fix: 젠킨스 오류 수정

* refactor: 사용하지 않는 파일 제거

* refactor: settingTemplate 중복 제거

Co-authored-by: 동동이 <[email protected]>

* feat: gtag 추가 (#386)

* fix: gtag 변경

* [server] 구독 & 알림 신청한 게시판 목록 조회 API response에 parent 필드 추가 (#371)

* ✨ dto 수정

* ✨ parent list response 추가

* ♻️ 반복문을 재귀호출로 변경

* [setting] eslint-config-cmi 사용 (#346)

* feat: 기존에 사용하던 lint, prettier 삭제

* style: eslint fix

* fix: 에러 해결

* fix: 에러 해결

* [server] 학교 건물 CRUD 구현 (#381)

* feat: PlaceImageEntity, SchoolEntity 생성

* feat: 학교 건물 CRUD 구현

* chore: Entity 점검

* chore: jenkins 에러 해결

* [mobile] atomic 디자인에 맞게 상태 로직 제거 필요 (#388)

* refactor: chipGroup 리팩토링

* refactor: placeDetail 구현

* refactor: route 위치 수정

* refactor: 사용하지 않는 파일 삭제

* feat: redux-persist 적용

* fix: persist 적용 안되는 부분 수정

* refactor: 코드리뷰 반영

* fix: 빌드 수정

* [server] 게시글 북마크 on 기능 구현 (#348)

* id,date 별 학생식당 메뉴 api

* chore: 불필요 주석 삭제

* chore: 불필요 코드 삭제

* chore: root package 와 server package 구분

* practice

* chore: 식당메뉴 추가

* chore: 식당메뉴 추가

* chore: swagger 문서 추가

* chore: 게시글 북마트 ON API 개발

* chore: 게시글 북마트 ON API 개발

* feature: 게시글 bookmark on api 개발

* chore: package.json 수정

* chore: ApiTags 문구 수정

* ♻️ Remove unused modules for bookmark module

Co-authored-by: 송예인 <[email protected]>
Co-authored-by: jess <[email protected]>

* [server] 서버 에러 로그 메시지 (#399)

* [server] fcm_token을 nullable로 변경 (#400)

* [server] parent_board_id ManyToOne으로 변경 (#401)

* [server] 불필요한 decorate 삭제 (#405)

* refactor: 불필요한 decorate 제거

* chore: 테스트 코드 삭제

* feat: admin-master, admin-council guard 생성 (#406)

* [server]� 학생식당, 캠퍼스맵 도메인 swagger 적용 (#407)

* refact: 학생식당 도메인 리팩토링 및 swagger 적용

* refact: 캠퍼스맵 도메인 swagger 적용

* [server] article 리스트 조회 관련 API에 페이지네이션 적용 (#402)

* ✨ 페이징 response & request 생성

* ✨ 오프셋, 리밋 getter 추가

* ✨ 게시판별 공지사항 조회 API에 페이징 적용

* ✨ 페이징 response 수정

페이지네이션 필요 정보와 실제 필요 데이터 분리

* ✨ page response에 마지막 페이지 플래그 추가

* ✨ default pageSize 15로 수정

* ✨ 인기 공지사항 디폴트 사이즈 15개로 변경

* ✨ 구독한 board 최신 게시글 조회 API에 페이징 적용\

* ♻️ sort 추가로 돌지 않도록 수정

push를 map으로 변경

* feat: 학사일정 추가 API 구현 (#393)

* [server] Module Inject 구조 리팩토링 (#408)

* ♻️ board 모듈 개선

BoardService export하도록 수정

* ♻️ subscribe module 개선

SubscribeService exports하도록 수정

* ♻️ boardTree module 개선

BoardTreeService export

* ♻️ article module 개선

* ♻️ fcm module 개선

* ♻️ place module 개선

* ♻️ article, bookmark module 개선

* [mobile] 공지사항 상세페이지 (#370)

* feat: 보드별 공지사항 리스트 제작

* style: fullPageModalTemplate 헤더 고정으로 수정

* feat: 미리보기 페이지 제작

* chore: 사용안하는 목데이터 제거

* feat: 공지사항 상세 페이지 전체적인 틀 잡기

* markup: 공지사항 상세페이지 푸터 shadow 추가

* feat: 공지사항 상세보기 api 연결

* feat: 공지사항 컨텐츠 실제 데이터 연동

* refactor: 코드리뷰 반영

* [mobile] 아이콘 정의방식 리팩토링 (#391)

* refactor: 설정메뉴 리팩토링
- 타입 정의 제거

* refactor: 중복된 파일 삭제

* refactor: 아이콘 정의 방식변경
- airplane 전까지 리팩토링

* refactor: 아이콘 리팩토링

* refactor: 라우팅 수정

* refactor: 코드리뷰 반영 및 라우팅 재정의

* refactor: 컴포넌트 export default A 형식으로 변경

* refactor: interface를 type으로 변경

* chore: icon props 변경

* chore: icon props 변경

* refactor: 추가 아이콘 변경

* [mobile] RN과 프론트 연결 (#403)

* feat: rn 연결

* feat: rn 로컬스토리지 로직 추가

* chore: add setData logic

Co-authored-by: 동동이 <[email protected]>

* [server] 인기 / 최신 / 북마크 공지사항 조회 API res 수정 (#424)

* ✨ 인기 공지사항 조회 API res 수정

* ✨ 최신 공지사항 조회 API res 수정

* ✨ 페이지네이션 변수 쿼리 스트링으로 변경

* [mobile] 일정 페이지 schedules API 연동 (#376)

* 임시

* feat: Apply schedules API

* fix: Apply year change to query function

* refactor: Restore previos schedule function

* chore: Remove Add schedule button

* fix: Resolve jenkins errors

* ✨ 로그인 유저가 북마크한 게시글인지 구분하는 플래그 res에 추가 (#434)

* [mobile] 홈 오늘의 일정 카드 스타일링 (#420)

* feat: Decorate schedule card in Home

* refactor: Apply code reviews

* refactor: Apply code reviews

* refactor: Apply code reviews

* fix: Delete duplicated style (#436)

* [mobile] 공지사항 기능보완 (#426)

* fix: fetchArticlesByBoard api res, req 수정

* feat: 구독중인 공지사항 api 붙이기

* chore: 공통/전공사이 카테고리 보여주는 형식 변경

* feat: 공지사항/게시판 미존재시 가이드 이미지 제공

* feat: 인기, 최신, 북마크 공지사항 api 연결

* feat: 공지사항 게시판에 공지가 없을 경우

* feat: link에 따라 active style 부여
- 기본 값 제공

* refactor: useQuery select option를 api단에서 처리

* refactor: useQuery select option를 api단에서 처리

* refactor: notice를 article로 변경

* feat: 홈 공지사항 컴포넌트로 변경
- api 연동

* chore: Link 추가

* chore: 필요없는 classname 제거

* feat: 공지사항 북마크 res 추가

* feat: 학생회 디테일 페이지 푸터 분기처리

* git: merge error

* [mobile] 홈 식단 카드 스타일 수정 (#413)

* feat: Decorate GuideRestaurant component

* feat: Decorate FinalGuideRestaurant component

* feat: Decorate cafeteria content component

* [mobile] 홈 날씨 카드 API 연동 (#428)

* feat: Show actual weather informations

* feat: Limit temperature decimals

* fix: Delete <g> tag in SVG due to safari icon issue

* [mobile] SVG height 속성 auto에서 100%로 바꾸기 (#439)

* fix: Correct home schedule style

* fix: Change SVG height prop value from auto to 100%

* [server] 게시글 북마크 OFF API (#410)

* feat: 게시글 북마크 OFF API

* chore: 파라미터값, 불필요한 로그 수정

* chore: 불필요한 코드 삭제

Co-authored-by: 송예인 <[email protected]>

* [mobile] 홈 일정 카드 API 연동 (#438)

* feat: Connect schedules API data

* fix: Add margin-top based on design guide

* chore: Remove unnecessary code

* [mobile] Setting 대표식당 로컬스토리지에 저장하기 (#425)

* feat: add setting constants

* feat: add get, set representativeCafeteria from localStorage

* refactor: settingConfig data

* chore: reflect code review

* [mobile] MenuList 컴포넌트 제작 및 persist 데이터 가져오기 (#422)

* feat: add MenuList molecule

* feat: get persist data from store

* chore: reflect code review

* [server] 게시물 중복확인 API (#454)

* [server] 게시물 content 사이즈 mediumtext로 사이즈 변경 (#455)

* ✨ 공지사항 상세 조회 API에 공지사항 증가 로직 추가 (#444)

* feat: 사용하지 않는 Place Image 삭제 배치 추가 (#418)

* [mobile] 학교 건물 조회 api 연결 (#440)

* fix: 현재 위치 로직 수정

* feat: 건물 목록 조회 api 연결

* feature: 학교건물 get api 연결

* feature: 학교건물 id 수정

* feat: 학교 건물 리스트 api 연결

* refactor: 캠퍼스맵 리스트 컴포넌트 분리

* refactor: 기타 리팩토링

* refactor: detail 스타일 제거

* refactor: 초기 위치 정보 매직넘버 상수화

* refactor: 초기 위치 상수화

* [server] 구독 / 알림 설정한 게시판 조회 API res에 boardId 추가 (#456)

* [mobile] 식단 api 연결 (#452)

* feat: add api connection

* feat: add cafeteria query hook

* chore: reflect code review

* chore: change calory to calorie

* [mobile] constructionInfo 컴포넌트 공통화 (#448)

* fix: 현재 위치 로직 수정

* feat: 건물 목록 조회 api 연결

* feature: 학교건물 get api 연결

* feature: 학교건물 id 수정

* feat: 학교 건물 리스트 api 연결

* refactor: 캠퍼스맵 리스트 컴포넌트 분리

* refactor: 기타 리팩토링

* refactor: detail 스타일 제거

* refactor: 초기 위치 정보 매직넘버 상수화

* refactor: 초기 위치 상수화

* refactor: constructionInfo 공통화 사용

* refactor: constructionInfo -> spot 컴포넌트로 변경

* [mobile] 구독페이지 리팩토링 및 api 연결 (#450)

* refactor: boardtree api 하나만 통하도록 리팩토링

* feat: breadcrumb 추가

* feat: boradTree 리팩토링

* feat: 구독->미리보기 페이지 제작

* feat: 구독/알림설정 버튼, api 추가

* feat: mutate 추가

* feat: link 이동 못하게 막기

* feat: link 이동 못하게 막기

* refactor: 구독알림 API 사용, boardTree api 추가

* feat: 설정 > 구독/알림 페이지 제작

* chore: console 제거

* chore: console 제거

* bugfix: boardId로 변경

* bugfix: boardId로 변경

* [server] Admin 관련 API 리팩토링 (#417)

* refact: Admin 관련 API 리팩토링

* chore: 코드 리뷰 반영

* [server] Schedule_bookmark on/off api 개발 (#449)

* feat: 게시글 북마크 OFF API

* feat: schedule 수정중

* feat: schedule 구독 on/off 기능 구현

* chore: ApiTags 문구 변경

* chore: ApiTags 문구변경, 불필요한 코드 삭제

Co-authored-by: 송예인 <[email protected]>

* [server] board-tree 전체 계층 조회 API 성능 개선 (#459)

* 📦 cache-manager 패키지 install

* ✨ appModule에 CacheModule 추가

* ✨ boardTree 전체 계층 조회 서비스 분리

* ✨ user subscribeList에서 boardId 필터링

* ♻️ subscribe info와 boardTree info 매칭 로직 수정 (1)

* ♻️ subscribe info와 boardTree info 매칭 로직 수정 (2)

* 🔥 주석 삭제

* ✨ boardTree 전체 계층 데이터에 캐시 적용

* 🔥 리팩토링 전 코드 전체 삭제

* 🔥 controller 이름 수정

* [server] 북마크 게시물 ON_DELETE CASCADE 설정 (#460)

* [server] UnusedImage 삭제 배치 로직 수정 (#461)

* fix: UnusedImage 삭제 배치 로직 수정

* chore: 배치 주기 수정

* chore: Admin API swagger 적용 (#462)

* chore: Change font color (#466)

* feat: 공지사항 북마크 api 붙이기 (#464)

* [mobile] 학교 상세페이지 api 연결 (#451)

* fix: 현재 위치 로직 수정

* feat: 건물 목록 조회 api 연결

* feature: 학교건물 get api 연결

* feature: 학교건물 id 수정

* feat: 학교 건물 리스트 api 연결

* refactor: 캠퍼스맵 리스트 컴포넌트 분리

* refactor: 기타 리팩토링

* refactor: detail 스타일 제거

* refactor: 초기 위치 정보 매직넘버 상수화

* refactor: 초기 위치 상수화

* refactor: constructionInfo 공통화 사용

* feat: api 연결

* refactor: 전화번호, 시간 제거

* refactor: 이미지 데이터 추가 및 스펙 제외 코드 제거

* fix: schoolData type 수정

* fix: 타입 수정

* style: 폰트 수정 및 간격 조정 (#471)

* [moblie] 식단 시간 정보 데이터 수정 및 평일, 주말 시간 구분 (#469)

* feat: add constants

* chore: reflect code review

* [mobile] 웹뷰가 아닐 경우 분기처리 (#472)

* feat: 웹뷰일경우 공지사항 상세 페이지 뒤로가기/북마크 제거

* style: prettier fix

* feat: 웹뷰,개발환경에서만 모든 routing 접근 가능하도록 설정

* style: prettier

* refactor: process 환경변수 이용하여 dev모드 판별

* fix: webview, dev모드 판별 제거

* [server] 식당 시간 enum 수정 (#483)

* 🐛 식단 시간 enum 수정

* 🐛 식당 시간 설명 수정

* [server] 북마크한 학사 일정 조회 API 구현 (#480)

* feat: 북마크한 학사 일정 조회 API 구현

* 👌 change naming

Co-authored-by: jess <[email protected]>

* [mobile] 모바일 홈 '기온별 옷차림' 모달 구현 (#473)

* feat: Markup suggestion modal

* feat: Make suggestion feature

* refactor: Use not-null-asserstion

* [server] 로그인에 권한가드 제거 #489

* [server] 권한있는 게시판 목록 조회 dto 변경 (#490)

* [mobile] 캠퍼스맵 디자인QA (#484)

* style: 스타일 수정

* style: margin 수정

* [server] article 수정일자 res 추가 (#493)

* ✨ article 상세 조회 res에 수정일자 추가

* ✨ board별 article list 조회 res에 수정일자 추가

* [mobile] 토스트메시지 (#491)

* feat: 토스트 컴포넌트 생성
- react-hot-toast 사용
- 공유하기시 토스트 보이게

* feat: 구독/알림 설정해지시 토스트메시지

* feat: 구독/알림 설정 실패시 토스트 메시지

* feat: webview일때 토스트메시지 생성

* feat: !webview일때 딥링크 보이게 수정

* markup: height 수정

* [mobile] 푸터 스타일 수정 (#498)

* [mobile] url 클립보드 복사 (#499)

* chore: 필요없는 스타일 제거

* feat: url 클립보드 복사

* 🐛 pagenation request isNaN 체크 추가 (#503)

* [server] pagination response 수정 (#505)

* ✨ 전체 페이지 수, 전체 아이템 수 필드 추가

* ✨ 페이징 결과 없을 때 빈 리스트 리턴하도록 exception 삭제

* [mobile] fcm token 로컬스토리지에 저장 (#488)

* feat: fcm token 로컬스토리지에 저장

* refactor: localstorage 로직 파일 수정

* refactor: uuid 상태 제거

* fix: uuid 로직 수정

* fix: useEffect 의존성 배열 삭제

* ✨ 현재 페이지 인덱스 res 추가 (#511)

* [mobile] 홈 대표식단 카드 전체 기능 구현 (#485)

* feat: Connect cafeteria API

* feat: Add empty-menu style

* feat: Make cafeteria selection feature

* feat: Make empty menu component and refactoring

* refactor: Apply code reviews

* refactor: Change data type of schedule query

* refactor: Apply code reviews

* refactor: Change naming of localStorage function

* [mobile] 학사일정 북마크 API 연동 (#500)

* feat: Connect fetch bookmarked schedules API

* feat: Connect bookmark off API

* feat: Connect remove bookmark API

* refactor: Use select option in useFetchScheduleCalendar

* refactor: Refactoring types related to Calendar

* refactor: Set empty data if response status is loading or error

* chore: Remove schedule mock data

* refactor: Remove scheduleCalendar.ts file

* refactor: Remove uuid parameter

* refactor: Change scroll variable to lowercase

* styles: Make prop destructuring short

* fix: Make Greeting card width 100% of parent element

* chore: Remove unnecessary file

* fix: Judge meal type(morning, lunch, dinner) based on time id not index of Array (#514)

* feat: Redirect User to calendar page when user touch schedule card (#516)

* [mobile] 홈 공지사항 카드, 식당 카드 및 일정 페이지 디자인 QA (#512)

* feat: Home and Calendar design QA

* feat: Match Calender design to design guide

* feat: Match design of Home cafeteria select menu to design guide

* fix: Fix calendar date style crashing

* feat: Make Home cafeteria selector to dimmed modal

* chore: Change name of non-selected-cafeteria type from "선택안함" to "표시 안함"

* chore: Change calendar floating button arrow transform degree

* chore: Use position mixin instead of using position property directly

* fix: Remove unnecessary styles

* feat: Show rain icon when weather type is Drizzle (#519)

* [server] 인기 공지사항, 북마크 공지사항 API res에 더미 페이징값 추가 (#524)

* ✨ 인기 공지사항 API res에 더미 페이징 객체 추가

* ✨ 북마크 공지사항 조회 API res에 더미 페이징 객체 추가

* feat: Apply new-designed Arrow icon (#522)

* [mobile] z-index 순서 수정 (#520)

* feat: Show rain icon when weather type is Drizzle

* fix: Sort value of z-index

* chore: Increase z-index of cafeteria-selector modal

* fix: Move Hamburger menu in Map page under the deeplink modal

* [mobile] webview <-> app user-agent 연결 (#526)

* feat: user-agent값 ios, android 분기 처리

feat: user-agent값 수정

feat: user-agent값 ios, android 분기 처리

feat: alert 제거

* refactor: webview 판단 로직 수정

* [mobile] 무한스크롤 (#508)

* refactor: api res 타입 수정

* refactor: req에 boardId 들어가도록 수정

* feat: 무한스크롤 제작

* feat: 무한스크롤 article에 붙이기

* feat: 홈 인기/최신 공지사항 변경된 것에 맞춰 수정

* feat : add creator page (#530)

* [mobile] 클립보드 api 사용을 위한 app channel과 연결 (#507)

* feat: app에 현재 url 넘겨주기

* refactor: mobile인지 pc 분기처리

* refactor: baseApp namespace 추가

* refactor: baseApp 조건 추가

* chore: school 도메인 swagger 동기화 (#538)

* [mobile] 설정 전체 디자인 QA (#532)

* feat : add setting main page QA

* feat : add setting cafeteria page QA

* feat : add setting contact QA

* feat : add setting creator QA

* [mobile] useQuery 리팩토링 (#536)

* refactor: core http 제작

* refactor: core react-query 제작
- article 에 적용

* refactor: article 도메인 리팩토링

* refactor: boardTree 도메인, 페이지 리팩토링

* refactor: fethc->get으로 함수명 변경

* refactor: bookmark도메인 변경

* refactor: subscribe 도메인 변경

* refactor: weather 도메인 변경

* refactor: schedule 도메인 변경

* refactor: cafeteria 도메인 변경

* refactor: school 도메인 변경

* refactor: 스쿨 타입 재정의

* fix: baseURL 상수로 처리

* [mobile] 식단 페이지 디자인 QA (#534)

* feat : add MenuList design QA

* feat : add CafeteriaMenuCard design QA

* feat : add no-menu design QA

* chore : restoring go-out style code

* chore : reflect dev branch code

* [mobile] 캠퍼스맵 디자인 QA(미흡부분 수정) (#535)

* style: map 메인 스타일 수정

* style: 캠퍼스맵 리스트 정보 스타일 수정

* style: map 상세페이지 style 수정

* feat: 충림이 공지사항 (#540)

* [mobile] 공지사항/홈/설정 디자인 QA (#541)

* markup: 설정>구독알림 디자인 수정

* markup: 설정>공지사항 디자인 수정

* fix: 공지사항 없을경우 이미지 보여주도록 수정

* fix: 공지사항 없을경우 이미지 보여주도록 수정

* markup: 구독페이지 디자인 수정

* fix: timeout 변경

* fix: 훅 모두다 호출되게 수정

* [mobile] 에러 바운더리 세팅, QA 및 테스트 (#539)

* feat: add ErrorBoundary class

* feat: add AsyncBoundary template

* feat: add ErrorFallback component

* feat: add LoadingSpinner component

* feat: add SuspenseFallback component

* refactor: add Cafeteria refactoring

* feat: add fallBackHeight prop

* feat: add errorfallback style

* feat: Modify api code

* chore: change fallback style

* chore : add changedArray function

* feat : add mobile test env setting

* feat : add AsyncBoundary test code

* feat : add ErrorBoundary design QA

* fix : resolve uninstalled react-query build error

* chore : reflect code review

* feat : add AsyncBoundary keys prop

* chore: reflect code review

* fix : solve calendar react hook order error

* chore : delete error test code

* [mobile] 모바일 웹 100vh 실제 화면 크기로 맞추기 (#545)

* feat : add 100vh scroll feature for mobile web

* feat : add 100vh scroll feature for mobile web

* chore : change vh code

* [mobile] env dev/prod 구분 (#548)

* feat: env dev/prod 구분

* refactor: routes 조건 수정

* refactor: deeplink 조건 수정

* refactor: 조건 수정

* chore: mode test

* feat: url로 staging 구별

* feat: url과 webview로 구별

* [mobile] 전역 scss 설정 (#549)

* feat: vite 전역 스타일 설정

* refactor: page 디렉토리 scss import 문 제거

* refactor: templates 디렉토리 scss import 문 제거

* refactor: molecules 디렉토리 scss import 문 제거

* refactor: atoms 디렉토리 scss import 문 제거

* [mobile] 공지사항 상세페이지 외부 링크 연결 (#552)

* fix: 공지사항 미리보기 안보이는 경우 분기 처리 수정

* feat: 공지사항 원본 링크 url 연결

* fix: 공지사항 미리보기 > 공지사항 클릭 시 홈으로 가는 버그 (#554)

* fix: baseApp is not defined 에러 수정 (#558)

* ✨ res에 url 필드 추가 (#561)

* [mobile] 공지사항 버그 (#563)

* fix: 충림이 공지사항 boardId 4로 설정

* markup: 캠퍼스맵 아이콘 축소

* markup: fullmodaltemplate height지정

* fix: 충림이 boardid 상수화

* fix: 설정에서 구독페이지 연결 분기처리

* feat: 설정 > 구독 공지사항 클릭 시 공지사항 미리보기 페이지

* fix: 설정>구독/알림 뒤로가기 시 url 처리

* 공지사항 상세 페이지 이미지 보이는 경우 추가 (#564)

* markup: 공지사항 이미지 있을 경우 처리

* fix: 구독페이지에서 충림이공지사항 안보이도록 수정

* fix: 최신/인기에서 충림이 공지사항 제거

* fix: breadcrumb parent없는 경우 공백으로 처리

* [mobile] 학생회 공지사항 (#574)

* feat: 공지사항 이미지 슬라이드 제작

* feat: 공지사항 이미지 슬라이드 이벤트 변경

* chore: 이벤트 변경

* chore: 목데이터 제거

* feat: 공지사항 리스트 시간 xx전 표시 (#575)

* [mobile] 비율 수정 (#577)

* [mobile] 로딩 분기처리 (#578)

* fix: 공지사항 로딩 안되었을때 분기처리

* markup: pinch-zoom 비활성화

* [mobile] meta태그 및 favicon 설정  (#579)

* chore: 아이콘 작업

* chore: headmeta 파일 생성

* refactor: 코드리뷰 반영

* fix: types react-helmet-async 추가

* chore: react-helmet-async -> react-helmet으로 패키지 변경

* [server] API 서버 리팩토링 (#584)

* ♻️ NestJS 초기 셋업

* ✨ article 기본 셋업 및 스웨거 설정

* ♻️ eslint 설정

* 🔥 안쓴느 서비스 제거

* 🔥 루트에 있는 프리티어 사용하도록

* ✨ Typeorm 모듈 설치 및 기본 설정

* ✨ typeorm database 설정

* ✨ Add SnakeNamingStrategy

* ✨ 게시물 엔티티 추가

* ✨ Admin 엔티티 추가

* ✨ board 엔티티 추가

* ✨ 관리자가 권한있는 보드 추가

* ✨ 게시물 생성 API

* ✨ 보드 조회 및 게시물 생성시에 해당 보드 넣기

* 🔧 strict null check enable

* ✨ 보드가 없는 경우 예외처리

* ✨ 게시물 중복 작성 방지

* ✨ 관리자 계정 생성 API

* ✨ 유효성 검증 파이프 추가

* ✨ 여러 아이디로 보드 조회

* ♻️ 관리하는 보드 도메인으로 분리

* ✨ 관리자 조회시 관리하는 테이블도 같이 조회

* ✨ 관리자 수정 서비스 및 컨트롤러 추가

* ✨ 게시물 작성 스웨거 작업

* ✨ 게시물 수정 API

* ✨ 게시판 생성 및 조회 API

* ✨ 게시물 조회 API

* ✨ 보드 트리 형태로 전체 조회

* ✨ 게시물 페이지네이션 조회 API

* ✨ 관리자 API 태그 추가

* ✨ 게시물 삭제 API

* 🔥 게시판 테스트 코드 제거

* ♻️ `ArticlePropery` 추가

* ♻️ 게시물 컨트롤러 스웨거 분리

* ✨ 게시판 스웨거 설정

* ✨ 관리자 게시판 관리 API 작업

* ✨ 관리 보드 업데이트시에 존재하는지 체크

* ✨ `ChildBoard` type 추가

* ✨ 학사 일정 API

* ❇️ aws 관련 config 정보 추가

* ✨ s3 이미지 업로드 aws service 추가

* ✨ 이미지 업로드 API

* ✨ 게시물에 이미지 업로드

* ✨ 게시물 이미지 수정

* ✨ 보드 부모 게시판 optional 추가

* ✨ server2 배포 및  실행 명령어 세팅

* ✨ `Place` 엔티티 추가

* ✨ 학교 엔티티 추가

* ✨ 학교 생성 API

* 🔥 학교 삭제 API

* ✨ 학생 식당 메뉴 추가

* ✨ 식당이름 enum화

* ✨ 메뉴 조회 API

* ✨ 사용자 생성 및 조회 미들웨어

* ✨ 유저 생성 조회 API

* ✨ 북마크 해제 API

* ✨ 게시물에 북마크 여부 표시

* ✨ 게시물 조회수 및 북마크 수 카운팅

* ✨ 게시판 구독 설정/해제 API

* ✨ 게시판 알림 설정/해제 API

* ✨ response article dto 수정

* ✨ 게시판 조회시 구독 및 알림 여부 필드 추가

* ✨ 구독한 게시판 목록 조회 API

* ✨ 북마크한 게시물 조회 API

* ♻️ mutation response 타입 교체

* ✨ 장소 기반 학교 건물 조회 API

* ✨ 구역으로 학교 조회 API

* ✨ 학생식당 일자별 메뉴 조회 API

* ✨ generate swagger api

* ✨ swagger gen 수정

* ✨ 임시용 커밋

* ✨ 서버 포트 설정 파일 활용

* webpack 관련 패키지 및 스크립트 제거 (#581)

* fix: 충돌 해결

* chore: env 파일 수정

* refactor: env 제거

* chore: mobile visualizer 추가

* [server2] 설정파일에 synchronize 추가 및 누락된 게시물 이미지 타입 추가 (#585)

* ✨ synchronize 설정에 추가

* ✨ 게시물에서 누락된 이미지 타입 추가

* 🔥 `images` craeteArticleDto에서 제거

* ✨ spec.json 제거하고 동적으로 api-json 불러오기

* [admin] 관리자 페이지 리팩토링(1) (#586)

* ⚡️ Update notice scripts

* ⚡️ Add createBoard, createArticle

* ⚡️ Update admin scraper page

* ✨ 게시물 작성 페이지

* ✨ board-tree generator

* ✏️ Fix type 취업지원본부

* ✨ Update

* update script

* ✨ 약학대학 의과대학 학생회 추가

* ✨ 스크래퍼 계정 환경변수 파일로 관리

* ⚡️ 학생 식당 스크립트 수정

* ✨ url 중복확인

* ✨ site_id boarTree id 참고해서 수정

* ✨ encodeURIComponent

* ✨ 학생식당, 공지사항 스크립트 수정

* ✨ 게시물 상세조회

* 🐛 기숙사 이름 수정

* 🐛 의미없는 메뉴 제거

* 🔥 잘못된 변경사항 제거

* 관리자페이지 공지사항 수정

* ✨ ArticlePage response type 추가

* ✨ 페이지네이션 구현

* ✨ 공지사항 수정

* ✨ Recoil 추가

* ✨ loginApi, articleApi 추가

* ✨ BoardRoute 수정

* ✨ articlePageOutput으로 수정

* ✅  skip cmi account test

* ✨ 관리자 설정 페이지 `PageLayout`으로 감싸기

* ✨ 관리자에게 보드 권한 추가하는 API

* ✨ 관리자 보드 권한 제거 API

* 🐛 누락된 useQueryParam 추가

* [Admin] 건물 생성 페이지 만들기 (#572)

* feat - add place navigation menu

* feat - add place routes

* feat - add Place DTO

* feat - add AddForm component

* feat - add PlaceAdd page & yup

* feat - add Place route

* feat - add imgUpload component

* feat - add api connection

* feat - form validation

* feat - add TextArea component

* feat - error handling

* [Feat] 학교 건물 리스트 불러오기, 업데이트, 삭제 기능 (#582)

* chore - move Pagination component

* feat - add PlaceList component

* feat - add PlaceList api

* feat - add PlaceList view

* feat - add Place detail page

* feat - add getPlace api

* feat - add delete, update apis

* chore - add key, some props, export type

* feat - add PlaceFormTemplate & add, update pages

* feat - add delete feature

* feat - add PlaceFormTemplate

* refactor - Place logic & view SRP

* refactor - PlaceFormView

* fix - remove export socket

Co-authored-by: gijin noh <[email protected]>
Co-authored-by: Bruney <[email protected]>

* [server] Weather API 리팩토링 (#587)

* add: weather API 구현

* add: generate weather API type

* add: createHourlyWeather 구현

* fix: change useUnionTypes: false and cafeteria name to
english enum

* [server] Board 테스트 코드 사용해서 seed 데이터 만들기 (#589)

* ✨ 게시물 북마크 수, 조회수 리팩토링

* ♻️ 이미지 서비스 리팩토링

* 🔥 BaseEntity key 제외

* ✨ 게시판 목 데이터 만들기 임시

* ✨ Board mock 데이터 만들기

* ⚡️ 게시판 테스트 코드 skip

* [server] FCM 모듈 리팩토링 (#588)

* add: rafactoring FCM Module

* chore: change package order

* [admin] 사용하지 않는 컴포넌트 제거 (#590)

* Update PULL_REQUEST_TEMPLATE.md

* Update feature.md

* ✨ 학교 씨드 데이터 추가 (#594)

* [server] 로그인 API 및 Admin Guard 구현 (#592)

* add: Implement login API

* add: Implement admin guard

* 🔥 Remove Partial

* add: Implement Super Guard and hasBoardAuthority function

* refactor: Admin guard and swagger

* add: apply admin, super guard

---------

Co-authored-by: jess <[email protected]>

* [mobile] 학생식당 페이지에 API 적용 (#599)

* ✨ 게시물 내용 DB 저장 사이즈 늘리기

* 🔥 axios 제거

* ✨ gen swagger

* ✨ 서버 에러 필터링

* ✨ apiServer url 상수화

* 🔥 띄어쓰기 제거

* ✨ 서버 URL 수정

* ✨ 학생식당 API swagger 적용

* 🐛 url 수정

* 🐛 `admin`으로 수정

* ✨ 쿼리키에 dateTime 추가

* [server2] 학사일정 북마크 API (#603)

* ✨ 종료일자 Optional 처리

* ✨ 학사일정 북마크 설정/해제 API

* ✨ 북마크 학사일정 조회

* ✨ 학사일정 API 반영

* [server] 학교 건물 상세조회 API 추가 (#604)

* [server2] 구독한 게시판중 공지사항 목록 API (#605)

* ✨ 구독한 게시판중 최근 게시물 조회 API

* ✨ 구독한 최신 공지사항 API

* ✨ gen local 실행

* [server] 학교 건물 조회 API area(구역) query로 받기 (#608)

* [server2] 공지사항 북마크 조회시 등록된 순으로 정렬 (#609)

* ✨ 북마크 컬럼 변경

* ✨ 스케줄 우선순위 nullable로 변경

* ✨ 북마크 생성일자로 내림차순 정렬

* ✨ api gen 실행

* [server2] 공지사항 페이지 조회시 페이지네이션 정보 포함 (#612)

* ✨게시물 페이지 조회에 페이지네이션 관련 데이터 추가

* ✨게시물 목록 스웨거 타입 재설정

* ✨ 북마크한 공지사항 페이지 API 개선

* ✨ generate swagger api

* [server] 인기 공지사항 API 리팩토링 (#614)

* ♻️ 인기 공지사항 controller 리팩토링

* ✨ 인기 공지사항 조회 쿼리 추가

* ♻️ 포맷팅 적용

* 🗃️ article entity에 조회수 컬럼 추가

* 🐛 dayjs timezone 이슈 수정

* ♻️ "YYYY-MM_DD" 타입으로 매개변수 리팩토링

* 🗃️ article 엔티티에 북마크 수 필드 추가

* ✨ 인기 공지사항 조회 쿼리 추가

* 🗃️ article_view 테이블에 ondelete constraint 전략 추가

* ✨ 조회수 카운트 로직 추가

* 🐛 async-await 에러 수정 & request에 paging 추가

* 📝 swagger generator 실행

* [server] 공휴일 배치 로직 리팩토링 #606

Co-authored-by: jess <[email protected]>

* [server] 일정 조회 API 개선 (#617)

* 📝 인기 공지사항 설명 수정

* 🐛 일정조회시 타겟의 startDateTIme 기준으로만 범위 설정

* ✨ isHoliday requried로 변경 and 기본값 false로 설정

* ✨ UUID 헤더에 기본값 설정

* 📝 generate swagger api

* [server] http 에러 필터링에 메시지랑 스택정보 추가 (#618)

* 📝 환경 파일에 env 필드 추가

* ✨ 개발환경 세팅 및 에러 필터링

* [server] 스케줄 시작시간 검사 로직 Between으로 변경 #620

* [server] 공지사항 bookmark 리팩토링 (#619)

* 🚚 article-bookmark 디렉토리 분리

* ✨ article bookmark module 추가

* ♻️ Article findById 분리

* 🔥 article service에서 bookmark 관련 코드 삭제

* 🐛 articleViewService module inject 에러 수정

* ✨ 북마크할 때 article의 bookmarkCount 증가 코드 추가

* ✨ 북마크 해제 시 article의 bookmark_count 감소 코드 추가

* 🐛 오타 수정 : unbookmark시 increaseBookmark -> decreaseBookmark

* feat: 홈>공지사항 리팩토링 (#623)

* [scraper] 스크래퍼 리팩토링 (#622)

* ✨ 게시물 내용 DB 저장 사이즈 늘리기

* 🔥 axios 제거

* ✨ gen swagger

* ✨ 서버 에러 필터링

* ✨ 신규 스크래퍼 셋업

* ✨ 스크래핑 함수 추가

* ✅ 스크래퍼에 eslint 재적용

* ✨ 학생 식당 스크래퍼

* ✨ 기숙사 식당 스크래핑

* ✨ 학사일정 스크래핑

* ✨ 누락된 Opitonal 체크 추가

* 🔥 의미없는 변경사항

* ✨ esmodule 방식으로 exprot

* ✨ esmodule import 방식으로 변경

* ✨ 공지사항 스크립트 목록 export

* ✨ esmodule import 방식으로 변경

* ✨ 공지사항 스크래퍼

* ✨ 북마크 수, 조회수 number로 타이핑 & 작성시에 입력 무시

* ✨ 조회수, 북마크수 기본값 설정

* ✨ 게시물 내용 긴 텍스트 타입으로 수정

* ✨ payload 허용 사이즈 늘리기

* ✨ 공지사항 등록시 작성자 포함

* ✨ 공지사항 등록 로직 개선

* 📝 common require 금지룰 적용

* ✨ 서버 에러 필터에 validation error log 추가

* 📝 농경제 스크립트 수정

* 📝 dayjs 모듈 임포트 추가

* ⚡️ env제거 및 configuation.ts 추가

* 📝 오타 수정

* 🔥 공지사항 스크래핑 테스트용 코드 제거

* [mobile] 공지사항>구독공지사항 관련 API를 swagger generated API로 리펙토링하기  (#625)

* markup: 말줄임표 추가

* feat: 공지사항 슬라이더

* feat: 구독중인 게시판 조회

* fix: footer 추가

* chore: 에러 제거

* [scraper] 스크래퍼 디렉터리 구조 변경 (#627)

* 🔥 사용하지 않는 디렉터리 제거

* ♻️ 스크래퍼 디렉터리 재구조화

* ✨ 페이지 이동시 referer 정보 추가

* [mobile] 공지사항 관련 API를 swagger generated API로 리펙토링하기 (#629)

* markup: ArticleItem 마크업

* markup: 헤더 고정 및 푸터 길이 고려

* feat: 인기,최신,북마크 공지사항 api 연결

* feat: 아티클아이템 데이터 넣기

* [mobile] 공지사항 디테일 관련 API를 swagger generated API로 리펙토링하기 (#634)

* feat: boardName 추가

* feat: article detail 페이지 추가

* refactor: 기존 article 삭제

* refactor: 기존 article 삭제

* feat: 공지사항 디테일 푸터 추가

* markup: footer 분기처리 마크업

* feat: 아티클 북마크 api 연결

* feat: 웹뷰 로직 추가

* markup: 좋아요 버튼

* fix: heart export 방식 변경

* fix: Icon to icon

* [mobile] 일정 페이지에서 사용하는 API를 swagger-generated API로 리펙토링하기 (#613)

* refactor: Use swagger-generated-api in useFullSchedulesQuery

* refactor: Use swagger-generated-API in schedule bookmark domain

* refactor: Delete unnecessary API types and functions

* chore: Correct query-key of todaysSchedules and etc.

* chore: Use alias when import module

* chore: Restore schedule response type

* chore: Delete unnecessary type declaration

* refactor: Use GetParams util type

* chore: Change prop type of scheduleControllerFindBookmarkSchedule function

* [mobile] 오늘의 날씨 API를 swagger-generated API로 리펙토링 (#628)

* refactor: Use swagger-generated-api in useFullSchedulesQuery

* refactor: Use swagger-generated-API in schedule bookmark domain

* refactor: Delete unnecessary API types and functions

* chore: Correct query-key of todaysSchedules and etc.

* chore: Use alias when import module

* chore: Restore schedule response type

* chore: Delete unnecessary type declaration

* refactor: Use GetParams util type

* chore: Change prop type of scheduleControllerFindBookmarkSchedule function

* refactor: Use swagger-generated-api in Weather query hook

* refactor: Edit prop type

* refactor: Apply code reviews

* fix: Fix build errors

* [mobile] cafeteria query hook 리팩토링 및 waterfall 현상 해결 (#632)

* feat : Add cafeteria menus, list constants

* refactor : refactoring MenuList with generic type

* refactor : refactoring query hooks, querykeys

* refactor : Change selectMenu type

* refactor : Add AsyncBoundary component in Home Restaurant Select

* chore : Remove cafeteria api type

* refactor : Separate component business logic & event handler

* fix - remove unnecessary cafeteria queries & api function

* [server] 관리자 계정 비밀번호 해시화 #637

* [server] 게시물 좋아요 API (#636)

* ✨ 공지사항 좋아요 모듈 생성

* ✨ 좋아요 기능 구현에 필요한 service 생성

* 🗃️ article entity에 좋아요 필드 추가

* ✨ 공지사항 좋아요 증감 function 추가

* ✨ 좋아요/취소 function에 좋아요 수 증감 쿼리 추가

* ✨ 좋아요, 좋아요 취소 controller 추가

* ✨ article module, articleLike module 업데이트

* 🐛 app module에 articleLike 추가 & articleLike count 쿼리 오류 수정

* ✨ 인기 공지사항 조회 쿼리에 좋아요 수 factor 추가

* ✨ 공지사항 상세 조회에 좋아요 여부 포함

* 📝 gen api

---------

Co-authored-by: jess <[email protected]>

* [admin] 관리자 페이지 API 리팩토링 (#639)

* ✨ 관리자 페이지 네비게이션에 스크래퍼 제거

* ✨ BASE_URL 설정

* ✨ 로그인 API 변경

* ✨ 게시물 목록 API 수정

* ✨ 게시물 조회 API 개선

* ✨ 게시물이 정상적으로 등록시 articleId 반환

* ✨ 보드트리에 충림이 게시판 추가

* ✨ 게시물 수정시에도 article id 반환

* ✨ 게시물 생성 및 수정 API 리팩토링

* ✨ 게시물 이미지 등록

* ✨ 관리 권한이 있는 게시판 조회 API

* 🚚  컨트롤러 이름 변경

* ✨배열로 반환

* ✨ 권한이 있는 게시판 불러오기

* ✨ 장소 목록 불러오기 API 연동

* ✨ 장소 상세 조회

* ♻️ 학교 건물 API 리팩토링

* ✨ 학교 건물 CUD API 개선

* ✨ 학교 건물 추가/수정 페이지

* ✨ 학교 정보에 설명과 연락처 필드 추가

* ✨ 페이지네이션 변경

* ✨ 관리자 본인 조회 API

* ✨ 이미지 순서 정렬

* ✨ 게시물 수정

* ✨ 조회수, 북마크 수 표시

* ✨ 게시물 수정 페이지

* [mobile] 캠퍼스맵에서 사용하는 API를 swagger-generated로 리팩토링 (#602)

* chore: dev-server2로 변경

* chore: 전체 place api 주소 변경

* refactor: api 수정에 따른 타입 수정

* refactor: school/id api 변경

* refactor: generated api로 수정

* refactor: area -> place/school로 수정

* refactor: useCoreQuery 사용 및 hooks/api에 추가

* refactor: 코드 리팩토링

* refactor: 필요없는 코드 제거

* refactor: white-space:pre-wrap 텍스트 추가

* [mobile] 좋아요 api 연동 (#640)

* feat: 좋아요 api 연동

* chore: 콘솔삭제

* [mobile] head meta 변경 (#641)

* [mobile] 좋아요 애니메이션 추가 (#643)

* feat: Show current temperature up to one decimal point (#645)

* [mobile] 구독페이지 리팩토링 (#648)

* feat: 구독페이지

* markup: 구독페이지 스타일 수정

* feat: 구독 알림 api 연결

* feat: 보드 게시판 미리보기 구독 알림 설정

* refactor: 필요없는 파일 삭제

* refactor: 도메인 명 변경

* refactor: querykey 점검, 필요없는 타입 정의 파일 삭제

* fix: req 제거

* [mobile] 구독알림설정페이지 (#650)

* chore: 딥링크 주석처리

* refactor: 구독알림 그룹 버튼 컴포넌트 제작

* feat: 접속 경로가 설정인지 공지사항인지 상태로 관리

* [mobile] article, board 없을 경우 분기처리 및 uuid 세팅 (#653)

* refactor: uuid parameter는 api단에서 처리되도록 수정

* refactor: 공지사항 없을 경우 이미지 추가

* refactor: 구독중인 공지사항 없을 경우 이미지 추가

* feat: 구독 알림 토스트메시지 추가

* refactor: toast message hook 로직으로 이동

* [mobile] meta 수정 (#656)

* fix: key 추가

* fix: headmeta data 변수로 관리

* feat: 폴리필 추가 및 아이콘 수정

* fix: inactive 옵션 추가 및 메타 html 에 추가

* [mobile] 메타태그 수정 (#658)

* fix: 메타태그 수정

* fix: 메타태그 수정

* fix: 이미지 마스코트로 수정

* fix: Ensure min-height of empty-favorites-schedule image (#659)

* [mobile] 캠퍼스맵 useQuery 리팩토링 (#662)

* refactor: areaQuery와 schoolsquery 합침

* refactor: queryKey 수정

* refactor: params 스프레드 연산 제거

* feat: add DefferedComponent (#665)

* [mobile] 공지사항 미리보기 이미지 모달 (#666)

* feat: 공지사항 디테일 페이지 이미지 추가

* markup: 닷닷닷 추가

* feat: 공지사항 이미지슬라이더 붙이기

* feat: 이미지확대모달 제작중

* feat: 이미지 확대 모달 완료

* [mobile] 공지사항 다운로드 (#668)

* feat: 공지사항 다운로드

* markup: dimmed스타일 수정

* chore: 필요없는 변수 제거

---------

Co-authored-by: nohgijin <[email protected]>

* [mobile] 아티클 데이터 없을 경우 분기처리 (#670)

* fix: 아티클 데이터 없을 경우 분기처리

* feat: token 없을 경우 뒤로가기 제거

---------

Co-authored-by: nohgijin <[email protected]>

* [mobile] uuid 모두 넣어주기

Co-authored-by: nohgijin <[email protected]>

* [admin] 관리자 페이지 게시판 관리 추가 (#676)

* 💄 상세 게시물 날짜 분리

* 💄 닉네임 표시 스타일 수정

* ✨ 관리자 관리 페이지 추가

* ✨ 관리자 수정/추가

* ✨ 게시판까지 같이 조회

* ✨ 관리할 게시판 JoinTable로 변경

* 🚚 디렉터리 이름 변경

* ✨ 게시물 삭제

* 🔥 사용하지 않는 코드 제거

* ✨ 권한 관리

* ✨ 게시판 관리 Route 추가

* ✨ 게시판 리스트 보여주기

* ✨ BreadCrumb 추가

* ✨ 게시물 및 게시판 관리 분리

* ✨ 게시판 관리 추가

* ✨ 게시판 수정

* ✨ `url` 추가

* 🔥 불필요한 폴더 제거

* 🔥 스크래퍼 관련 필요없는 파일 제거

* 🔥 불필요한 파일 제거

* ✨ 관리자 서버 연결 링크 변경

* [mobile] 버튼 텍스트 색 변경 (#675)

* bug: 버튼 텍스트 색 변경

* markup: fullmodal 줌 인 가능한 현상 막기

* fix: Fix style errors in home (#682)

* fix: Fix clothes recommendation not working in certain temperatures (#684)

* [server] 일정 조회 query 로직 수정 (#688)

* ✨ 학사 일정 조회 쿼리문 수정

* ✨ 스웨거 업데이트

* 🐛 school.area 필드 @column 설정에 enum 누락 (#689)

* [mobile] 홈 디자인 가이드 변경에 따른 스타일 변경 (#686)

* feat: Add CMILogo2 icon file

* feat: Add CMI icon and remove previos elements from home page

* refactor: Rename CMILogo icons

* [mobile] 충림이 공지사항 url 변경 (#687)

* bug: 충림이 공지사항 url 변경

* bug: 구독/비구독 후 최신 공지사항 refetch 안되는 문제 해결

* feat: query client 기본 option값 변경

* [mobile] 캠퍼스맵 이미지 클릭시 확대보기 모달 및 캠퍼스맵 geolocation api 제거 (#674)

* refactor: geolocation 로직 수정

* refactor: 불필요 코드 제거

* refactor: 더미 데이터 제거

* refactor: image 컴포넌트 연결

* fix: 새로고침 후 마커 표시안되는 버그 수정

* refactor: 이미지리스트 props images로 수정

* [server] 휴일 판단 API 제공 (#695)

* ✨ 타겟 일정이 휴일인지 구하기

* ✨ 휴일 판단 API 제공

* [Mobile] 식단 query string으로 상태관리하기 (#697)

* chore: rename function, add CalendarAction type

* feat: add get date, menu state from query string

* feat: add ShareButton component

* feat: add ShareButton in CafeteriaBody

* chore: add isCafeteriaExist style condition

* fix: exception handling when user remove persist state in localStorage

* feat: add replace navigate when date or menu change

* chore: use DefaultProps, children prop

* feat: shell script 추가 (#698)

* Create git-push.yml

* [mobile] 타입수정 (#700)

* Create git-push-production.yml

---------

Co-authored-by: Kim Jong Seo <[email protected]>
Co-authored-by: Bruney <[email protected]>
Co-authored-by: Jin <[email protected]>
Co-authored-by: 조현창 <[email protected]>
Co-authored-by: 제스 <[email protected]>
Co-authored-by: steve <[email protected]>
Co-authored-by: EunjiShin <[email protected]>
Co-authored-by: Eunji-gec <[email protected]>
Co-authored-by: Semy-sudo <[email protected]>
Co-authored-by: 송예인 <[email protected]>
Co-authored-by: HyunoChoi <[email protected]>
Co-authored-by: jess <[email protected]>
Co-authored-by: nohgijin <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
✨ Feature 기능 개발 🖥 Server package: server
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[server] 게시글 북마크 ON
3 participants