Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* [Server] 개발환경 세팅 (#4) * build: open-list-server init * chore: @nestjs/config class-validator class-transformer 설치 * chore: 루트 레벨에서 설치한 패키지 삭제 * chore: NestJs 개발 환경 세팅 * chore: @nestjs/config class-validator class-transformer 설치 * Server/feature/#13 (#25) * chore: postgresql, nestjs docker 세팅 * chore: @nestjs/typeorm, typeorm, pg 설치 * chore: Typeorm 세팅 및 TestModel 테이블 생성 * 테스트용 유저 API 구현 (#30) * chore: common resource 추가 * chore: users resource 추가 * feature: base entity 구현 * feature: usersEntity 구현 * feature: 모듈에 usersModel 추가 * style: entity,dto의 users -> user로 변경 * feature: CreateUserDto 구현 * feature: userEntity 이메일 필드 추가 * feature: createUserDto 이메일 필드 추가 * feature: user patch->put으로 변경 * feature: updateUserDto 구현 * feature : create user 구현 * feature: 모든 유저의 정보를 가져오는 API 구현 * feature: 특정 유저의 정보를 가져오는 API 구현 * feature: user 정보 수정 API 구현 * feature: user 삭제 API 구현 * feature: ValidationPipe 적용 * refactor: usersService 리팩토링 * [Server] 유닛 테스트 환경 세팅 (#32) * chore: test 경로 설정 * feature: TestCommonModule 구현 * feature: users.service.spec.ts 의존성 주입 * feature: users.controller.spec.ts 의존성 주입 * [Server] Users resource 이름 변경 (#34) * style: usersController 네이밍에 컨벤션 맞게 변경 * style: usersService 컨벤션에 따른 네이밍 변경 * style: UsersModel -> UserModel 컨벤션에 따른 네이밍 변경 * feature: usersService 테스트 코드 작성 (#39) * [Server] Folder entity 생성 및 crud 구현 (#42) * feat: folders crud 구현 * chore: TestModel 삭제 및 관련된 종속성 제거 * feat: folders.controller.spec.ts 삭제, folders.service.spec.ts 구현 * feature: docker파일 수정 (#57) * feat: private checklist entity 생성 및 crud 구현 (#61) * chore: 개발용 postgres 포트변경 5432->5433, .env도 port 5433으로 변경필요 * feat: checklists res 생성 * feat: checklist, private-checklist, shared-checklisst 엔티티 생성, user모델과 folder모델과의 의존관계 주입 * feat: author->editor로 수정, 공유체크리스트와 사용자의 relation을 many to many로 업데이트 * feat: 개인, 공유 체크리스트에 대해 생성과 업데이트 시 dto 생성 * fix: class 이름 오타 수정 * refactor: rest api 방식에 따라 함수명 변경 * feat: CheckListModel에서 진행률 컬럼 삭제 * feat: folder와 user간의 manyToOne relation적용 * feat: private-checklist crud 작성 * feat: folder service 커버리지 100 달성 * test: private-checklist test code 작성, 커버리지 92퍼센트 * feat: checklist 폴더 분리 & dto 빈문자열 검증 추가 (#66) * refactor: checklists를 private, shared폴더로 분리. * refactor: private-checklists를 folders 하위로 이동 * fix: 빈문자열 검증 추가 * [Server] Winston으로 로그 관리 (#70) * chore: nest-winston winston winston-daily-rotate-file 설치 * feat: winston logger 설정 파일 구현 * feat: winston logger middleware 구현 * feat: 요청 logger middleware 구현 * feat: 로그에 요청 처리 시간 추가되도록 개선 * chore: PR 템플릿 수정 * chore: PR 템플릿 수정 * feat: jwt access, refresh token 기반 인가 구현 * chore: auth resource 추가 * chore: jwt 모듈 추가 * feature: signToken 구현 * feature: 토큰 검증, 토큰 재발급 기능 구현 * feature: 로그인 기능 구현 * feature: 로그인 관련 서비스 구현 * feature: login 컨트롤러 구현 * style: loginDto -> loginUserDto로 변경 * feature: access 토큰 재발급 컨트롤러 구현 * refactor: access토큰 재발급 형식 변경 * feature: 유저 register 기능 구현 * feature: auth.service.ts 테스트 코드 작성 * fix: 이메일 중복시 에러 메시지 수정 --------- Co-authored-by: Minseong Park <[email protected]> * [Server] shared-checklist 소켓 구현 (#78) * [Server] apple oauth api 구현 (#86) * chore: @nestjs/axios 설치 * chore: axios 설치 * chore: axios 설치 * feat: dto수정, userId 컬럼추가, providerId 수정, fullName 컬럼 추가 * feat: entity에 따라 dto 항목 수정 * feat: apple oauth 로그인 서비스 함수 추가 client secret 만들고, axios post로 user 정보 가지고옴. * feat: apple oauth 로그인 엔드포인트 추가 * feat: apple 유저에대해 create, update 함수 구현 * feat: publicKey 발급받는 로직추가 * [Server] access 토큰 재발급시 유저 정보 없는 버그 수정 (#83) * [Server] privateChecklist의 내용 저장 api 구현 (#88) * [Server] apple oauth 로그인 로직 수정 (#118) * feat: env 사용방식 변경 + idToken 검증로직 추가 * chore: jwk를 pem으로 변환하기 위한 jose 라이브러리 설치 * chore: jose 라이브러리 제거 @panva/jose 설치 * feat: request body로 들어오는 auth-user.dto.ts 수정 * feat: 애플 유저 등록 로직 수정 * docs: jsdoc return type 수정 * feat: apple login 로직 수정(appleToken, clientSecret 로직 삭제) * feat: refreshAccessToken 함수에서 refreshToken도 함께 반환해주도록 로직 수정 * [Server] Clova Studio api 구현 (#126) * feat: checklist-ai 리소스 생성 * feat: create-checklist-items.dto.ts 요청 dto 생성 * feat: 문자열 및 각종 옵션 상수화 * feat: user-role const 파일 삭제 => 함수화 * feat: /checklist-ai POST 요청 api 생성 대,중,소 카테고리를 body로 받아오면 clova studio에서 체크리스트 항목 10개를 반환한다. * feat: AccessTokenGuard 구현 및 적용 (#129) * feat: access token guard 구현 * feat: access token guard 전역 적용 * style: access-token.guard.ts 주석 추가 * feat: userId decorator 구현 * feat: folders controller에 userId 데코레이터 추가 * feat: 폴더 서비스에 user 데코레이터 추가 * feat: 개인 체크리스트 컨트롤러에 유저 데코레이터 추가 * feat: private-checklists service에 user 데코레이터 추가 * fix: 테스트 코드 수정 * Server/feature/#128 (#139) * feat: json 구조로 카테고리 데이터 정의 * feat: categories 의존성 주입 * feat: endpoint만들고, 실제 존재하는 id인지 검증하는 dto 생성 * fix: 오타수정 forder->folder * feat: param에 dto 적용하지 못해 삭제 * feat: 카테고리 json 데이터 변수명 변경, 대문자로 * feat: 대,중,소 카테고리 반환 api 구현 * test: categories.service.spec.ts 테스트 코드 작성 * test: categories.service.spec.ts 테스트 코드 수정 커버리지 100 * feat: 공유 체크리스트 API 및 소켓 작업 구현 (#140) * feat: shared checklist item entity 구현 * style: SharedChecklistItemModel 오타 수정 * feat: shared checklist id uuid로 변경 * feat: create shared checklist 디티오 수정 * feat: shared-checklists 생성 구현 * refactor: shared-checklists 저장하는 함수 분리 * feat: shared-checklists 1개, 전부 가져오는 기능 추가 * feat: 유저 초대 기능 추가 * feat: 공유 체크리스트 삭제 기능 구현 * style: shared-checklists service 주석 추가 * feature: 공유 체크리스트 소켓에 데이터 누적 기능 추가 * feat: shared-checklists 소켓 통신 시 데이터 데베에 저장 구현 * feat: 소켓 연결시 방의 데이터 히스토리를 전송하는 기능 추가 * style: 소켓 주석 추가 * 🔐feat: 개발용 임시로 액세스,리프레시 토큰들 만료기한 일주일로 설정 (#142) * feat: 공유 체크리스트 아이템 권한 문제 및 uuid 문제 해결 (#146) * fix: 공유 체크리스트 아이템 권한 없으면 접근 못하게 수정 * fix: 체크리스트 추가시 사용자가 있는지 검사 * fix: 공유 체크리스트 생성시 uuid가 아니면 서버가 죽는 현상 수정 * style: 불필요한 코드 제거 * feat: 소켓 다중 서버 지원 (#159) * chore: docker-compose.yaml에 레디스 추가 * chore: redis 모듈 추가 * feature: nest 다중 포트 서버 구성 * feature: redis.module.ts 구현 및 적용 * feature: 소켓에 레디스 삽입 * feature: 소켓 pub/sub 구현 * feat: 소켓 레디스에 총 접속자수 증감 기능 추가 * feat: 소켓 히스토리 기능 레디스 적용 * refactor: shared-checklists.gateway.ts 리팩토링 * feat: 소켓 editing 이벤트 추가 (#164) * fix: 레디스 연결 수정 (#168) --------- Co-authored-by: Minseong Park <[email protected]>
- Loading branch information