Skip to content

Commit

Permalink
v2.1.0 릴리즈 (#332)
Browse files Browse the repository at this point in the history
* feat: 안드로이드 프로젝트 생성

* chore: #7 프로젝트 세팅 (#8)

* chore: gradle 설정

* chore: #7 프로젝트 기초 세팅 추가 (#10)

* feat: 전역 예외 처리 핸들러 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* refactor: 불필요한 어노테이션 제거

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* chore: jacoco 기초 설정 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* chore: rest docs 기초 설정 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* chore: log 기초 설정 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* feat: 에러로그 발생 시 슬랙에 메세지를 전송하는 기능 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

---------

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* feat: 권한 설정

* feat: 기본 리소스 설정

* feat: 데이터 모듈 분리

* feat: 패키지 구조 설계

* feat: 공통 feature 관련 코드 작성

* rename: 패키지 이동

* feat: 유틸 코드 작성

* feat: 바인딩 어댑터 코드 작성

* feat: Bottom Navigation 레이아웃 작성

* feat: 프래그먼트 이동 로직 추가

* feat: #11 카테고리 엔티티 및 레포지토리 추가 (#19)

* feat: 카테고리 엔티티 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* fix: DB 설정 문제 해결

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* refactor: 필요 없는 클래스 제거

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* feat: Equals&HashCode 재정의 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* feat: 카테고리 레포지토리 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* refactor: 카테고리 연관관계 메서드 이름 변경

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* style: 컨벤션 적용

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* test: 유틸리티 어노테이션 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

---------

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* feat: #12 카테고리 api 추가 (#23)

* feat: 카테고리 서비스 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* feat: 카테고리 api 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* feat: 카테고리 조회 예외 처리 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* feat: 카테고리 api 예외 처리 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* docs: 카테고리 api 문서화

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* style: final 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* style: final 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

---------

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* feat: #13 지역 엔티티 및 레포지토리 추가 (#24)

* refactor: 외래키 제약조건 이름 수정

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* feat: 지역 엔티티 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* feat: 지역 레포지토리 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

---------

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* feat: #14 지역 api 추가 (#32)

* style: 예외 메시지 수정

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* feat: 지역 서비스 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* feat: 지역 api 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

---------

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* feat: #17 경매 상품 등록 페이지 그리고 MVVM 구조 설계 (#33)

* Feat: MVVM 구조 생성

* Feat: 레이아웃 작성

* refactor: 중복 함수 호출 삭제

* refactor: 런처 액티비티 수정

* refactor: 들여쓰기 추가

* refactor: string name 수정

* feat: #26 경매 엔티티 및 레포지토리(등록) 추가 (#37)

* feat: auditing 기능 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* feat: 가격 객체 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* feat: 경매 엔티티 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* feat: 경매 레포지토리 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* style: 불필요한 개행 제거

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

---------

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* feat: #20 경매 상품 등록 페이지 날짜, 시간 Picker 추가 (#38)

* feat: 클릭 시 날짜, 시간 선택창 띄우기 구현

* feat: 함수 분리 및 정리, 뷰가 선택한 시간을 반영하도록 수정

* refactor: 함수명 수정

* feat: #27 경매 api(등록) 추가 (#41)

* rename: 패키지명 변경

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* feat: 읽기 전용 트랜젝션 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* style: 숫자 가독성 개선

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* feat: 입찰 단위 객체 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* feat: 경매 등록 Service 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* feat: 경매 등록 api 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* style: 코드 가독성 개선

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

---------

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* feat: #28 경매 레포지토리(상세 조회) 테스트 추가 (#42)

* feat: equals & hashcode 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* test: 경매 단일 조회 테스트 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* test: import 와일드카드 제거

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

---------

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* feat: #30 경매 api(상세 조회) 추가 (#43)

* feat: 경매 상세 조회 서비스 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* feat: 경매 상세 조회 api 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* style: 불필요한 개행 제거

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

---------

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* feat: #29 경매 도메인 엔티티 삭제 비즈니스 로직 추가 (#45)

* refactor: 변수명 변경

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* feat: 경매 삭제 도메인 비즈니스 로직 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

---------

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* feat: #31 경매 api(삭제) 추가 (#46)

* feat: 경매 삭제 서비스 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* feat: 경매 삭제 api 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* test: 불필요한 개행 제거

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

---------

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* 경매 상품 상세 페이지 UI 추가 (#39)

* feat: 상단 앱 바 UI 추가

* feat: 경매 입찰 버튼 UI 추가

* feat: 상품 이미지 뷰페이저 추가

* feat: 상품 정보 UI 추가

* feat: 판매자 정보 UI 추가

* refactor: 등록된 상품의 임시 이미지 url 데이터의 위치를 뷰모델로 수정

* refactor: 함수 분리

* rename: Event를 AuctionDetailEvent로 이름 변경

* refactor: root element를 shape로 수정

* refactor: 상세 화면에서만 사용하는 색상을 colors.xml에서 제거

* refactor: 스트링 리소스 정리

* chore: #47 queryDsl 설정 추가 (#52)

* chore: queryDsl 의존성 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* feat: queryDsl 설정 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

---------

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* refactor: 이미지, 카테고리, 지역 필드 임시 추가 (#53)

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* feat: #22 경매 상품 목록 레이아웃 작성 (#54)

* feat: 경매 상품 목록 페이지 레이아웃 작성

* feat: 경매 상품 목록 필터 아이템 레이아웃 작성

* rename: 파일명 및 속성명 변경

* feat: 경매 상품 목록 경매 아이템 레이아웃 작성

* refactor: selector 에서 true 조건 먼저 확인하도록 수정 및 디폴트 조건 제거

* refactor: 조건문 코드 한 줄로 수정

* refactor: 상태값을 string resource로 분리

* refactor: 불필요한 로그 삭제

* chore: #60 gradle 설정 변경 (#61)

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* feat: #48 경매 api(목록) 추가 (#58)

* test: 필드 임시 추가로 인한 테스트 코드 수정

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* feat: 경매 목록 조회 레포지토리 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* feat: 경매 목록 조회 서비스 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* rename: 경매 상세 조회 dto 이름 변경

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* feat: 경매 상세 조회 api 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

---------

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* feat: #18 경매 상품 등록 페이지 이미지 URL 업로드와 서버 전송 준비, Picker 스타일 변경 (#55)

* design: 이미지 업로드 url 입력으로 변경

* feat: 뒤로가기 작성

* feat: 서버 통신에 쓰일 클래스 생성

* feat: 제출 기능 틀 설계

* style: 시간 선택창 디자인

* refactor: 양방향 데이터 바인딩 추가

* style: 가이드라인 추가

* feat: 인텐트 넘기는 함수 추가

* rename: 함수명 변경

* rename: 클래스 이름 변경

* feat: #59 경매 상품 선택 시 경매 상세를 보여주는 기능 구현 (#62)

* refactor: 프로퍼티명 변경

* feat: 경매 상품 선택 시 경매 상세를 보여주는 기능 구현

* refactor: #65 API 명세 변경 (#67)

* rename: request, response 패키지 변경

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* refactor: 경매 등록, 상세 조회 api 명세 변경

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* refactor: 경매 상태 및 가격 로직 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

---------

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* chore: #35 git submodule 적용 (#64)

Co-authored-by: swonny <[email protected]>
Co-authored-by: jj503 <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* chore: #68 테스트 환경 설정 추가 (#69)

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* feat: #63 경매 상품 목록에서 경매 등록 페이지로 이동하는 기능 구현 (#66)

* feat: 경매 상품 목록에서 경매 등록 페이지로 이동하는 기능 구현

* feat: 디폴트 필터 선택 적용

* rename: 패키지 이동

* chore: gradle 변경

* feat: retrofit service 및 DTO 작성

* feat: repository 작성

* chore: #35 build script 추가 (#71)

* ci: #35 jenkins pipeline script 추가 (#72)

* chore: build script 추가

* chore: jenkins pipeline script 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: jj503 <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

---------

Co-authored-by: swonny <[email protected]>
Co-authored-by: jj503 <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* feat: #76 경매 dummy 데이터 추가 (#77)

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* chore: dev설정에 console-log 추가 (#78)

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* !hotfix: 젠킨스 권한 설정 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* !hotfix: 젠킨스 권한 설정 변경

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* fix: #79 API 명세 수정 (#80)

* fix: 경매 목록에서 삭제된 경매글까지 보이는 현상 수정

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* refactor: api 명세에 따른 필드명 변경

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* style: 와일드카드 제거

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

---------

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* feat: 경매 상품 목록 조회 api 연동

* !hotfix: 경매 상세 api 변경

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* !hotfix: 경매 상세 api 변경

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* !hotfix: log 설정 변경

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* !hotfix: 경매 api 변경

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* test: #83 경매 상품 목록 조회 테스트 추가 (#85)

* feat: #50 경매 상세 페이지 UI 모델 작성 및 데이터바인딩 연결 (#84)

* feat: 경매 상세 조회 Dto 추가

* feat: 경매 상세 조회 Ui 모델 추가

* feat: 직거래 가능 지역 리사이클러뷰 어댑터 추가

* feat: 뷰모델과 xml 데이터 바인딩 로직 작성

* remove: Dto클래스 파일 삭제

* ci: #73 jenkins slack notification 설정 추가 (#89)

* feat: #82 경매 상품 등록 서버 연동 (#86)

* feat: 서버 연동

* feat: 서버 연동

* refactor: 토스트를 스낵바로 수정

* refactor: Submit 이벤트 삭제 및 처리

* test: #57 AuctionService 예외 케이스 테스트 추가 (#90)

* chore: Logback Appender 테스트 커버리지 검사 대상 제외

* test: 경매 서비스 예외 테스트 케이스 추가

* test: #91 Repository 테스트 작성 - 경매 상품 등록, 상세 정보 (#93)

* test: 경매 등록 테스트 코드 작성

* test: 경매 상품 상세 정보 테스트 코드 작성

* refactor: 상수 수정

* test: #92 경매 상품 목록 페이지 ViewModel 테스트 추가 (#95)

* feat: #87 경매 상세 페이지 서버 연동 작업 추가 (#96)

* feat: Dto와 UiModel 매핑 로직 작성

* feat: 뷰모델에 레포지토리 추가

* feat: 경매 상세 페이지 서버 연동 로직 추가

* ci: #75 sonarqube와 github actions 설정 (#94)

* ci: pr 분석 기능 추가

* ci: pr 분석 github actions yml 수정

* ci: pr 분석 github actions yml 수정

* ci: pr 분석 github actions yml 수정

* ci: pr 분석 github actions yml 수정

* ci: pr 분석 github actions yml 수정

* ci: pr 분석 github actions yml 수정

* ci: pr 분석 github actions yml 수정

* test: 경매 조회 테스트 시 테스트 시간 변경

* ci: pr 분석 github actions yml 수정

* ci: pr 분석 github actions yml 수정

* ci: pr 분석 github actions yml 수정

* ci: pr 분석 github actions yml 수정

* ci: pr 분석 github actions yml 수정

* ci: #75 sonarqube 관련 pr decorator yml 변경 (#102)

* ci: sonarqube 관련 pr decorator yml 변경

* ci: sonarqube 검증 제외 옵션 추가

* ci: sonarqube 검증 제외 옵션 추가

* feat: #105 사용자 엔티티 생성 (#112)

* feat: 사용자 엔티티 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* feat: 사용자 더미 데이터 추가

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

---------

Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>

* feat: #117 경매 데이터 캐싱 전략 적용 (#123)

* refactor: 레포지토리에 싱글톤 패턴 적용

* feat: 경매 데이터 캐싱 전략 적용

* refactor: 홈 뷰모델 테스트 수정

* feat: #124 CallAdapter 적용 (#125)

* feat: CallAdapter 구현

* feat: CallAdapter 적용

* test: #108 통합 테스트, 인수 테스트 격리 설정  (#110)

* test: 테스트 데이터베이스 격리 기능 추가

* test: 테스트 데이터베이스 격리 어노테이션 추가

* style: 메서드 개행 방식 통일

* feat: #111 지역 초기 데이터 저장 기능 추가 (#115)

* feat: 지역 API 요청 기능 추가

* feat: 대한민국 전국 지역 저장 기능 추가

* feat: 애플리케이션 실행 시 지역 초기화 기능 추가

* test: 가독성을 위한 개행 추가

* style: final 키워드 추가

* chore: 로컬 환경에서 지역 초기화 로직이 수행되지 않도록 설정 변경

* test: 불필요한 private 메서드 제거

* style: try-catch final 추가 및 변수명 통일

* style: for문 final 추가

* style: for문 final 추가

* feat: #113 입찰 엔티티 및 레포지토리 추가 (#119)

* feat: 입찰 엔티티 추가

* feat: 입찰 레포지토리 추가

* style: import 와일드카드 제거

* refactor: 변수명 및 테이블 컬럼 이름 수정

* chore: mysql 의존성 추가 (#132)

* feat: #101 경매 상품 등록 페이지 DatePicker month -1 버그 (#133)

* fix: 날짜 월이 안맞는 버그 수정

* refactor: 로그 삭제

* refactor: 주석 오타 수정

* feat: #126 경매 목록 무한 스크롤 구현 (#127)

* refactor: #130 BaseTimeEntity 생성, 수정 시간 분리 (#135)

* refactor: 생성 시간과 수정 시간에 대한 엔티티 분리

* refactor: 생성 시간에 대한 엔티티를 상속받도록 수정

* feat: #128 경매 등록 사진 업로드 레이아웃 작성 및 사진 삭제 기능 구현 (#138)

* feat: 경매 등록 이미지 레이아웃 작성

* feat: 경매 등록 이미지 삭제 기능 구현

* test: #99 경매 상세 ViewModel 테스트 코드 작성 (#129)

* feat: #118 채팅 기능 구현에 필요한 엔티티 생성 (#122)

* feat: 채팅 기능 구현에 필요한 엔티티 생성

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

* refactor: 채팅 가능 여부 체크 메서드 파라미터 추가

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

* feat: 채팅방 레포지토리 추가

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

* feat: 메시지 레포지토리 추가

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

* refactor: `@ToString` 메서드 옵션 추가

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

* style: 마지막 줄 개행 추가

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

* test: 불필요한 테스트 삭제

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

* refactor: column 옵션 추가

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

* refactor: Builder 추가

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

* test: 테스트 어노테이션 변경

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

* feat: 메시지 읽음 필드 추가

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

* refactor: 메시지 읽음 필드 삭제

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

* refactor: 수정 시간 미포함된 엔티티 상속으로 변경

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

* refactor: 중복 필드 삭제

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

* refactor: 불필요한 어노테이션 옵션 삭제

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

---------

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

* feat: #131 경매 입찰 요청 팝업창 UI 추가 (#141)

* feat: 스트링 리소스 추가

* feat: 입찰하기 버튼 클릭시 경매 입찰 팝업창을 띄우는 기능 추가

* feat: 경매 입찰 팝업창 UI 추가

* refactor: 경매 입찰 팝업창 가로 너비 동적 계산 로직 제거

* refactor: binding 객체 접근 제어자 수정

* rename: string 리소스 where절 수정

* feat: #116 지역 엔티티, 경매 엔티티 연동 (#137)

* feat: Auction 초기 데이터 제어 설정 추가

* feat: Auction과 AuctionRegion 연동

* feat: Auction과 AuctionRegion을 fetch join하는 기능 추가

* refactor: Auction과 AuctionRegion을 fetch join하는 기능 추가

* test: 경매 삭제 테스트 케이스 수정

* fix: 경매 등록 시 직거래 지역이 추가되지 않는 문제 수정

* feat: AuctionRegion의 테이블 명을 명시적으로 지정

* test: 경매 생성 시 존재하지 않는 지역을 선택한 경우의 테스트 케이스 추가

* style: @Table 위치 변경

* refactor: Auction에서 모든 AuctionRegions를 받아 연관 관계를 세팅하도록 변경

* remove: 불필요한 Response 삭제

* rename: 불필요한 복수형 이름 단수형으로 변경

* style: 개행 추가

* test: 통합 테스트 설정 변경

* feat: 세 번째 지역을 조회하는 기능 추가

* feat: 경매 등록 시 세 번째 지역이 아닌 경우에 대한 예외 처리 기능 추가

* feat: #142 경매 등록 시 갤러리에서 사진 선택하는 기능 구현 (#148)

* feat: #136 카테고리 선택 Activity UI, 구조 작성 (#153)

* feat: 레이아웃, 구조 틀 작성

* design: 배경색 흰색 추가

* feat: 카테고리 모델 추가

* feat: MVVM 구조 작성

* feat: ListAdapter, DiffUtil 적용하여 상태에 따른 Item 디자인 변경 구현

* feat: ListAdapter, DiffUtil 적용하여 상태에 따른 Item 디자인 변경 구현

* refactor: 카테고리 DiffUtil 분리

* feat: 서브 카테고리 UI 작성

* feat: mock 레포지토리 구현

* refactor: 카테고리 모델 구조 변경

* feat: mock 레포지토리 연결 및 메인-서브 카테고리 연결

* refactor: 로그 삭제

* refactor: strings 아이템들 순서 변경

* refactor: 뷰 홀더 바인딩 숨김

* refactor: 오버라이딩 안해도 되는 함수 삭제

* refactor: 함수 분리

* refactor: 서브 카테고리 variable로 변경

* refactor: selector item 순서 변경

* refactor: xmlns 속성 위치 변경

* refactor: event로 리스트 넘겨주도록 수정

* refactor: selector 이름 변경

* refactor: 메인 카테고리 LiveData로 변경

* feat : #140 경매 이미지 엔티티, 카테고리 엔티티, 경매 엔티티 연동 (#149)

* feat: 하위 카테고리 조회 기능 추가

* feat: 카테고리 엔티티와 경매 엔티티 연동 및 연동으로 인한 dto, 테스트 변경

* refactor: api 명세 변경으로 인한 dto와 테스트 변경

* feat: 경매 이미지 엔티티 추가

* feat: 로컬 이미지 저장 기능 추가

* feat: 경매 이미지 레포지토리 추가

* feat: 이미지 조회 기능 추가

* feat: 이미지 조회 api 추가

* feat: 경매 엔티티, 경매 이미지 엔티티 연동 및 연동으로 인한 dto, api, 테스트 변경

* feat: 경매 등록 시 이미지 업로드 기능 추가

* feat: 경매 등록 api 명세 변경에 의한 dto 및 로직 변경

* refactor: 경매 목록 조회 시 지정한 페이지 크기보다 하나 더 많은 목록을 조회하도록 변경

* feat: 경매 등록 시 경매 이미지 제약조건 추가

* feat: 경매 목록 조회 api 현재 페이지가 마지막 페이지인지 판단하는 기능 추가

* feat: 경매 등록 조회 api 응답 변경으로 인한 dto, 기능 추가

* test: mocking을 통해 불필요한 이미지 파일 저장 비활성화

* feat: No-Offset 조회 결과를 Slice로 변환하는 기능 추가

* refactor: 경매 목록 조회 시 List 대신 Slice를 반환하도록 변경

* remove: QuerydslSliceHelper 패키지 변경

* refactor: 경매 목록 조회 시 fetch join을 하도록 변경

* feat: MultipartFile 설정 추가

* refactor: 단일 이미지 파일 최대 용량과 요청 시 파일 전체 합계 용량 제한 값 변경

* refactor: Auction 단일 조회 메서드 이름 변경

* refactor: AuctionImage 변환 메서드 이름 수정 및 메서드 순서 변경

* refactor: 불필요한 @Table 삭제

* refactor: new 키워드를 통해 엔티티를 생성하지 않고 dto에 정의한 메서드를 호출해 생성하도록 변경

* refactor: 중복되는 코드를 별도의 메서드로 분리

* feat: #143 입찰 가격 입력 뷰 수정 및 비지니스 로직 뷰모델로 분리 (#154)

* feat: 가격 입력 뷰 작성

* feat: 뷰모델로 비지니스 로직 분리

* refactor: 경매 입찰 다이얼로그 함수 분리

* refactor: 스트링 리소스 네임스페이스 수정

* !hotfix: flyway mysql 의존성 추가 (#160)

* !hotfix: flyway 적용 (#163)

* !hotfix: 외래키 제약조건 설정 추가

* !hotfix: flyway V1 스크립트 작성

* !hotfix: auction DB 데이터타입 변경 (#165)

* !hotfix: 외래키 제약조건 설정 추가

* !hotfix: flyway V1 스크립트 작성

* !hotfix: 엔티티 옵션 변경

* ci: #166 운영 서버 빌드 스크립트 작성 (#167)

* feat: 운영 서버 profile 설정 추가

* rename: 개발 서버 스크립트명 변경

* ci: 운영 서버 스크립트 추가

* !hotfix: prod-pipeline.jenkinsfile 오타 수정 (#171)

* feat: #159 이미지 Uri를 MultipartBody로 변환 (#162)

* feat: 이미지 Uri를 MultipartBody로 변환

* feat: 이미지 uri에서 절대 경로를 가져오는 로직 구현

* feat: #176 경매 등록 api 변경 (#177)

* refactor: 경매 등록 api 변경

* style: 불필요한 주석 제거

* !hotfix: 개발 환경 jenkins pipeline script 수정 (#178)

* refactor: #173 카테고리 조회, 직거래 지역 조회 api 수정 (#174)

* refactor: 카테고리 조회 api 반환 타입 수정

* refactor: 직거래 지역 조회 api 반환 타입 수정

* feat: #120 입찰 api(등록) 추가 (#156)

* feat: 경매 아이디로 마지막 입찰 정보 조회 기능 추가

* feat: 입찰 등록 서비스 추가

* feat: 첫 입찰자의 입찰 규칙 기능 추가

* feat: 임시 argument resolver 추가

* feat: 입찰 등록 api 추가

* test: 입찰 서비스 테스트 추가

* feat: 요청에 대한 예외 처리 추가

* refactor: 특정 서비스 메서드를 도메인 메서드로 이동

* test: 필요 없는 코드 제거

* refactor: 요청 dto 검증 조건 추가

* refactor: 요청 dto 데이터 타입 변경

* refactor: 도메인 네이밍을 명확하게 수정

* refactor: 변수 분리

* refactor: 메서드 네이밍 변경

* refactor: 메서드 네이밍을 컨벤션에 맞도록 변경

* rename: 로그인 사용자에 해당하는 dto 클래스 네이밍 변경

* refactore: 메서드 접근 제어자 변경

* refactore: 완료한 todo 제거

* feat: 입찰 시 경매의 마지막 입찰액 업데이트 기능 추가

* refactor: toString에 대해 exclude 대신 of로 수정

* refactor: 모호한 메서드 네이밍 수정 및 위치 수정

* fix: 누락된 대괄호 추가

* refactor: auction 엔티티 수정

* test: 변수 네이밍을 명확하게 수정

* test: 부족한 테스트 추가

* refactor: 시간을 주입받도록 수정

* refactor: querydsl 형식을 jpql로 변환

* refactor: 입찰 생성 요청에 대한 검증 예외 메시지 추가

* test: 메서드명을 명확하게 수정

* feat: #175 경매 등록 시 갤러리에 있는 이미지를 서버로 전송하는 기능 구현 (#182)

* feat: 경매 등록 시 이미지 파일을 서버로 전송하는 기능 구현

* feat: 마지막 경매 아이템까지 로드한 경우 더 이상 로드하지 않는 코드 추가

* feat: #157 입찰 api(조회) 추가 (#183)

* feat: 경매 아이디로 마지막 입찰 정보 조회 기능 추가

* feat: 입찰 등록 서비스 추가

* feat: 임시 argument resolver 추가

* feat: 입찰 등록 api 추가

* refactor: 특정 서비스 메서드를 도메인 메서드로 이동

* feat: 입찰 조회 서비스 추가

* feat: 입찰 조회 컨트롤러 추가

* fix: cherry-pick 머지로 인한 오류 해결

* style: 개행 추가

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

* rename: 요청과 응답에 대한 패키지 분리

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

* refactor: 경매 존재 검증에 대한 사용 메서드 변경

* test: 특수한 값을 지역 변수로 추출

* test: 경매 존재 테스트 추가

* test: 값의 타입 수정

* !hotfix: 경매 이미지 설정 제거 (#184)

* feat: #151 채팅 전송 기능 추가 (#155)

* feat: 메시지 생성 서비스 추가

* style: 메소드 체이닝 정렬

* feat: 메시지 전송 api 추가

* refactor: 채팅방 id를 pathVariable로 받도록 수정

* style: 메소드 순서 재정렬

* feat: 채팅방, 사용자 글로벌 예외 핸들러 추가

* style: 와일드카드 제거

* style: 메소드 체이닝 개행 추가

* style: 개행 추가

* test: 채팅방, 수신자 또는 발신자가 없는 경우 예외 테스트 추가

* style: 필드 사이 개행 추가

* refactor: 테스트 내 private 메소드 삭제

* fix: 경매 엔티티 변경에 따른 코드 수정

* feat: #157 입찰 api(조회) 추가 (#183)

* feat: 경매 아이디로 마지막 입찰 정보 조회 기능 추가

* feat: 입찰 등록 서비스 추가

* feat: 임시 argument resolver 추가

* feat: 입찰 등록 api 추가

* refactor: 특정 서비스 메서드를 도메인 메서드로 이동

* feat: 입찰 조회 서비스 추가

* feat: 입찰 조회 컨트롤러 추가

* fix: cherry-pick 머지로 인한 오류 해결

* style: 개행 추가

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

* rename: 요청과 응답에 대한 패키지 분리

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

* refactor: 경매 존재 검증에 대한 사용 메서드 변경

* test: 특수한 값을 지역 변수로 추출

* test: 경매 존재 테스트 추가

* test: 값의 타입 수정

* !hotfix: 경매 이미지 설정 제거 (#184)

* fix: 충돌 해결

* fix: 충돌 해결

* fix: 충돌 해결

---------

Co-authored-by: 제이미 <[email protected]>
Co-authored-by: 지토 <[email protected]>

* feat: #161 지역 선택 페이지 UI 추가, 구조 설계 (#179)

* feat: 액티비티 추가

* feat: 페이지 레이아웃 작성

* feat: Mock Repository 작성

* feat: 첫번째 지역 리사이클러뷰 어댑터 생성

* feat: 뷰홀더 어댑터 액티비티 뷰모델 연결

* feat: 첫 지역 리사이클러뷰 구현

* feat: 두번째 지역 리사이클러뷰 구현

* feat: 세번째 지역 리사이클러뷰 구현

* feat: Chips 추가 구현

* refactor: Chips 부분 리팩터링

* refactor: 확장함수 선언

* refactor: 쓸데없는 괄호 삭제

* design: divider view 수정

* feat: 인텐트에 담아 종료하는 함수 틀 작성

* refactor: 변수명 변경

* refactor: ChipGroup을 RecyclerView로 리팩터링

* design: Decoration 추가

* feat: BindingAdapter를 활용한 onCloseClick 적용

* refactor: 필요없는 import 삭제

* refactor: 불필요한 함수 실행 삭제

* fix: 첫번째 지역 클릭 시 세번째 지역이 초기화되지 않는 버그 수정

* feat: #185 경매 엔티티에 판매자 필드 추가 (#187)

* feat: 경매 엔티티에 회원 엔티티 연관관계 추가

* feat: 경매 등록 시 판매자를 등록하는 로직 추가

* feat: 경매 조회 시 판매자 fetch join 기능 추가

* feat: 경매 등록 및 조회 api 판매자 연동

* feat: 경매 하위 카테고리 연관관계 세팅 기능 추가

* refactor: 하위 카테고리를 생성자로 초기화하지 않고 연관관계 세팅 메서드를 통해 초기화하도록 변경

* refactor: 판매자, 하위 카테고리 연관관계 세팅 로직 메서드 분리

* chore: 경매 엔티티 변경에 따른 flyway 스크립트 추가

* test: 경매 엔티티 관련 컴파일 에러 해결

* test: 테스트 어노테이션 변경

* feat: 특정 회원과 경매 판매자가 일치하는지 여부를 판단하는 기능 추가

* feat: 경매 삭제 시 판매자임을 검증하는 기능 추가

* !hotfix: 이미지 업로드 용량 설정 추가 (#190)

* refactor: #191 경매 엔티티에 카테고리 엔티티, 직거래 지역 엔티티 연관관계 세팅 방식 변경 (#192)

* refactor: 경매 엔티티에 카테고리 엔티티, 직거래 지역 엔티티 연관관계 세팅 방식 변경

* refactor: 정적 팩토리 메서드 이름 변경 및 초기화 대상 변경

* feat: #193 이미지를 압축하여 캐시에 저장하는 기능 구현 (#195)

* chore: 파이어베이스 analytics 추가

* design: 아이콘 변경

* feat: #180 카테고리 선택 페이지 서버 연동 (#188)

* feat: 레포지토리와 데이터소스 생성

* feat: 메인 카테고리 연결

* design: 텍스트 정렬 변경

* feat: 서브 카테고리 연결

* feat: 선택 완료 이벤트 연결

* refactor: 코드 리팩터링

* refactor: 필요없는 코드 삭제

* refactor: 함수 내부 리팩터링

* refactor: typealias 적용

* feat: #181 지역 선택 페이지 서버 연동 (#194)

* feat: Remote DataSource, Repository 구현

* feat: 변경된 Repository와 연결

* refactor: 캐싱 적용

* refactor: 함수 내부 리팩터링

* refactor: 함수 분리

* refactor: typealias 적용

* docs: #189 예외 핸들링, 테스트 케이스, 문서 추가 (#198)

* rename: 이미지 저장 실패 커스텀 예외 이름 변경

* feat: 경매 관련 예외 핸들러 추가

* test: AuctionController 예외 핸들링 테스트 추가

* refactor: GlobalExceptionHandler UserNotFoundException 종류에 따른 예외 핸들러 분리

* test: AuctionController api 명세 테스트 추가

* test: RegionController api 명세 테스트 추가

* test: 누락된 api 명세 테스트 추가

* test: 문서화 설정 변경

* docs: 경매, 직거래 지역 api 문서화

* feat: 이미지 조회 실패 예외 핸들러 추가

* test: 이미지 조회 실패 컨트롤러 단위 테스트 추가

* remove: 더 이상 사용하지 않는 이미지 조회 실패 커스텀 삭제

* feat: #186 입찰 시 판매자 검증 로직 추가 (#199)

* feat: 입찰 시 판매자 검증 로직 추가

* feat: 입찰액 값 객체 생성

* refactor: 중복된 코드 통합

* feat: 경매에 입찰자 수 필드 추가

입찰 시 마지막 입찰액과 함께 업데이트

* test: 와일드카드 제거

* feat: flyway 스크립트 추가

* feat: #144 채팅방 목록 조회 api 추가 (#197)

* rename: 채팅 api presentation 패키지의 request dto를 request 패키지로 이동 및 테스트 static import 추가

* feat: 채팅방 목록 조회 서비스 추가

* feat: 채팅방 조회 시 사용할 ArgumentResolver 추가

* feat: 채팅방 목록 조회 api 추가

* fix: merge로 인한 충돌 해결

* style: 불필요한 개행 제거

* refactor: 채팅방 목록 조회 시 최종 가격도 반환하도록 response dto에 필드 추가

* style: 120자 넘는 경우 개행 적용

* refactor: 파라미터에 final 키워드 추가

* refactor: 파라미터에 final 키워드 추가

* style: 클래스명과 메서드 사이에 개행 추가

* test: 도메인 테스트 시 영속성 부여

* style: 불필요한 패키지 명시 삭제

* rename: 참여하는 채팅방을 조회하는 데 사용하는 레포지토리 메서드와 서비스 메서드명 변경

* style: 개행 및 불필요한 패키지 경로 제거

* rename: 정적 팩토리 메서드 컨벤션에 맞지 않는 이름 변경

* test: 채팅 관련 서비스 테스트 시 테스트 격리 메서드 적용

* test: merge로 인한 오류 해결

* !hotfix: flyway로 인해 기존 데이터의 입찰자 수가 null이 되는 문제 해결 (#202)

* !hotfix: flyway 스크립트에서 기존 데이터 값을 업데이트하도록 수정

* !hotfix: flyway 업데이트 쿼리 where절 추가

* feat: #196 경매 입찰 기능 서버 연동 (#200)

* feat: 경매 입찰 서버 연동

* feat: 경매 입찰 응답 예외 클래스 설계 및 처리 로직 추가

* feat: 상세 경매 조회시 캐시 데이터 업데이트 하는 기능 추가

* refactor: 경매 입찰 최소 금액 계산 로직 AuctionDetailViewModel로 이동

* refactor: Toaster 추가 및 적용

* refactor: SubmitBidFailureResponse find 메소드 로직 수정

* refactor: AuctionResponse에서 AuctionPreviewResponse로 변환하는 메소드 추가

* rename: 입찰 성공 이벤트 클래스명 동사가 앞에 오도록 수정

* !hotfix: 두 가지 예외 통합 (#204)

* feat: Analytics Screen View 로그 이벤트 추가

* feat: #201 등록 페이지와 카테고리, 지역 선택 페이지 연결 (#203)

* feat: 카테고리 페이지 연결

* feat: 카테고리 페이지 연결

* feat: 지역 페이지 연결

* refactor: 코드 리팩터링

* design: 가격 0 디폴트값 수정

* refactor: 로그 삭제

* refactor: 함수 순서 변경

* refactor: 함수 순서 변경

* refactor: xml 닫는 태그 수정

* refactor: #205 경매 입찰 응답 메시지 수정 (#206)

* chore: 파이어베이스 crashlytics 추가

* fix: #208 상세 정보에서는 입찰자 수가 0으로 전달되는 문제 해결 (#209)

* fix: 상세 정보에서는 입찰자 수가 0으로 전달되는 문제 해결

* test: 개행 수정

* docs: #158 입찰 관련 테스트 추가 및 api 문서 (#213)

* test: 입찰 등록 및 조회에 대한 예외 테스트 추가

* docs: 입찰 등록 및 조회 api 문서화

* refactor: 컨트롤러 메서드 접근 제어자 수정

* feat: #145 채팅방 상세 정보 조회 api 추가 (#212)

* feat: 채팅방 상세 조회 서비스 추가

* feat: 채팅방 상세 조회 api 추가

* test: 테스트에서 객체 생성 시 필드가 무엇을 의미하는지 알 수 있도록 명시

* style: return문 앞에 개행 추가

* feat: 채팅방 접근 권한에 대한 커스텀 예외 추가

* refactor: 불필요한 static 키워드 제거 및 일부 메서드 객체지향적으로 수정

* refactor: 채팅 관련 컨트롤러의 메서드명을 명확하게 변경

* feat: 채팅 가능 여부를 응답하도록 추가

* feat: 채팅 패키지에 경매 정보를 나타내는 dto 추가

* fix: 잘못된 import로 인한 오류 해결

* feat: #227 카카오 소셜로그인 기능 구현 (#229)

* feat: kakao sdk 추가

* feat: 로그인 페이지 레이아웃 작성

* feat: 카카오 소셜로그인 코드 작성

* feat: #225 회원 가입, 로그인 기능 구현 (#231)

* rename: 초기 데이터 초기화 클래스 패키지 변경

* chore: jwt 의존성 추가

* chore: 스프링 부트 설정 처리 의존성 추가

* feat: jwt 관련 설정 추가

* test: 실패하는 경매 관련 테스트 수정

* feat: 토큰화 기능 추가

* feat: 토큰 분석 기능 추가

* feat: 소셜 로그인 지원 관리 기능 추가

* feat: 카카오 회원 정보 조회 기능 추가

* feat: 회원 엔티티 필드 추가

* feat: OauthId를 통해 회원을 조회하는 기능 추가

* feat: 소셜 로그인, acceeToken 갱신 기능 추가

* feat: 소셜 로그인, acceeToken 갱신 api 추가

* feat: 소셜 로그인, acceeToken 갱신 api 예외 핸들러 추가

* chore: 회원 엔티티 변경으로 인한 flyway 스크립트 추가

* refactor: 유효하지 않은 토큰 예외를 하나로 통일

* refactor: 회원 엔티티의 oauthId를 String으로 변경

* refactor: PrivateClaims의 타입을 Long으로 변경

* style: 정렬 변경, final 키워드 추가

* test: 불필요한 주석 제거

* test: 닉네임 검증 값 변경

* refactor: 회원 더미 데이터 닉네임 변경

* refactor: 토큰 발급시간 변수명 변경

* !hotfix: flyway script 오타 수정 (#243)

* feat: #230 카카오 소셜로그인 서버 연동 (#241)

* feat: 카카오 소셜로그인 Service api, data model 추가

* feat: AuthRepository, AuthDataSource 생성 및 뷰와 연결

* feat: 보안 SharedPreference에 서버로부터 전달받은 토큰 저장 및 가져오기

* flyway version 5 script 누락된 컬럼 변경 사항 추가 (#245)

* !hotfix: flyway script 누락된 컬럼 수정사항 추가

* feat: 회원 초기 더미 데이터 기능 추가

* test: 테스트 시 회원 oauthId 더미 데이터 변경

* test: 테스트 시 회원 oauthId 더미 데이터 변경

* feat: 회원 초기 더미 데이터 저장 로직 추가

* feat: #232 경매 상세 화면에서 쪽지방 생성 버튼 기능 추가 (#240)

* feat: AuctionDetailResponse에 chat 속성 추가

* feat: AuctionDetailBottomButtonStatus 추가

* feat: 하단 버튼에 뷰모델 핸들링 함수 연결

* feat: 쪽지 기능 관련 Dto 추가

* feat: 쪽지 기능 서비스 메소드 추가

* feat: ChatRemoteDataSource 추가

* feat: ChatRepository 및 구현체 추가

* refactor: 채팅방ID 얻어오는 api 수정

* refactor: AuctionDetailBottomButtonStatus enum 클래스로 수정

* rename: exitEvent에서 setExitEvent로 수정

* refactor: 경매 상세 하단 버튼 텍스트를 가져오는 formatter 함수 추가

* feat: #246 자동 로그인 기능 구현 (#248)

* feat: 스플래시 페이지 레이아웃 작성

* feat: 토큰 유효성 검사 기능 구현

* feat: 스플래시 액티비티에서 다음 액티비티로 이동하는 기능 구현

* feat: 로그인 액티비티에서 다음 액티비티로 넘어가는 기능 구현

* feat: 기본 스플래시 화면 투명하게 조정

* feat: 토큰 리프레시하는 api 추가

* feat: 헤더에 토큰 추가 및 토큰 갱신 인터셉터 구현

* feat: #233 api 인증 및 인가 기능 연동 (#249)

* feat: 인증 회원 정보 저장 기능 추가

* feat: 인증 인터셉터 기능 추가

* feat: 인증 ArgumentResolver 기능 추가

* rename: Oauth2 관련 설정 클래스 이름 변경

* feat: Oauth2 설정 추가

* fix: ArugmentResolver에서 Forbidden이 아닌 Unauthorized 예외가 발생하도록 변경

* rename: 예외 이름을 상황에 맞게 변경

* feat: api 요청 시 인증 및 인가 기능 추가

* chore: 인터셉터를 테스트 커버리지 검증 대상에서 제외

* fix: 경매 목록 조회 시 자신이 작성한 경매는 보이지 않도록 변경

* refactor: oauth2 관련 api의 경우 인터셉터가 적용되지 않도록 변경

* !hotfix: 노출된 api 키 제거

* test: 누락된 개행 추가

* rename: privateClaims 패키지 이동

* style: 개행 및 조건을 소괄호로 묶어서 표현

* fix: 경매 목록 조회 시 자신이 작성한 글도 조회가 가능하도록 변경

* feat: #226 경매 신고 등록 및 조회 api 추가 (#238)

* feat: 경매 신고 엔티티 추가

* feat: 경매 신고 레포지토리 추가

* feat: 경매 신고 등록 서비스 추가

* feat: 경매 신고 등록 api 추가

* feat: 경매 신고 중복 등록 검증 추가

* refactor: 메서드 호출 순서로 변경

* feat: 경매 신고 전체 조회 레포지토리 추가

* feat: 경매 신고 전체 조회 서비스 추가

* feat: 경매 신고 전체 조회 api 추가

* feat: 경매 신고 테이블 생성에 대한 flyway 스크립트 추가

* refator: toString 항목 추가

* rename: flyway 스크립트 네이밍 수정

* test: merge에 따른 테스트 코드 수정

* refactor: querydsl을 EntityGraph로 수정

* test: import 와일드카드 제거

* refactor: final 추가

* style: 개행 추가

* test: given-when-then 주석 수정

* refactor: 메서드명 수정

* refactor: transactional 어노테이션 추가

* rename: 동일 클래스가 존재해 헷갈리는 dto 네이밍 수정

* rename: dto 패키지 분리

* refactor: 머지에 따른 인증 관련 코드 수정

* feat: #252 토큰 유효성 검증 api 추가 (#255)

* feat: accessToken 검증 기능 추가

* feat: accessToken 검증 api 추가

* style: final 추가

* test: 변수 네이밍 변경

* refactor: 토큰 타입 상수 네이밍 변경

* refactor: try-catch 변수 네이밍 수정

* style: 메서드 순서 변경

* feat: #250 쪽지 목록 페이지 기능 구현 (#254)

* feat: 쪽지 프래그먼트 UI 작성

* feat: 쪽지 목록 아이템 UI 작성

* feat: 쪽지 목록 아이템 뷰홀더 작성

* feat: 쪽지 목록 리사이클러뷰 어댑터 작성

* feat: 쪽지 목록 페이지 서버 연동

* feat: 탭 이동으로 보여질 때 목록 다시 불러오도록 수정

* refactor: if문 중괄호 제거

* refactor: 클릭 리스너 이름 변경 및 id만 전달받도록 수정

* refactor: Iso8601 포맷을 LocalDateTime으로 변환하는데 사용하던 DateTimeFormatter 제거

* feat: #247 사용자 정보 조회 api 추가 (#256)

* feat: 사용자 정보 조회 서비스 추가

* refactor: 사용자 정보를 찾지 못했을 때 예외 통합

* feat: 사용자 정보 조회 api 추가

* refactor: 머지로 인한 수정 사항 반영

* refactor: resolver argument 수정 및 서비스 메서드 파라미터 수정

* test: 사용자 정보 조회 api 추가

* refactor: 파라미터에 final 추가

* test: 파일 끝 개행 추가

* test: 개행 수정

* test: 개행 수정

* refactor: #235 채팅방 목록 조회 api 명세 수정에 따른 변경 (#236)

* refactor: 채팅방 목록 조회 시 List를 그대로 반환하도록 변경

* remove: 사용하지 않는 클래스 제거

* feat: #228 채팅방 생성 api 추가 (#234)

* feat: 경매 아이디를 포함하는 채팅방 조회하는 레포지토리 메서드 추가

* feat: 낙찰자를 판단하는 메서드와 인자로 받은 사용자가 낙찰자인지 판단하는 메서드 추가

* feat: 채팅방 생성 서비스 추가

* feat: 채팅방 생성 컨트롤러 추가

* feat: 커스텀 예외 핸들러 추가

* feat: 서비스레이어에서 데이터 삽입 시 `@Transactional`의 readOnly 옵션을 false로 지정

* refactor: 낙찰자를 판단할 때 도메인에서 예외처리하지 않고 Optional로 반환하도록 변경

* refactor: if문 안에 여러개의 조건 메서드 분리

* refactor: db에 존재하는지 파악할 때 find 대신 exists 쓰도록 변경

* refactor: service에 있던 domain -> dto로 변환하는 메서드 대신 dto의 정적 팩토리 메서드를 사용하도록 변경

* test: 누락된 final 추가 및 double임을 표현할 수 있도록 소수 뒤에 d 추가

* test: id만 비교할 시 id를 통한 비교 대신 equals 사용하도록 수정

* feat: 채팅방 생성 요청시 채팅방이 이미 있는 경우 그 채팅방을 반환하도록 기능 추가

* test: 낙찰자를 찾을 수 없을 때 발생하는 예외 핸들링 테스트 추가

* refactor: 채팅방이 이미 존재하는 경우에 대한 불필요한 로직 및 예외 제거

* test: 누락된 테스트 추가

* refactor: 복잡하게 작성된 코드 간결하게 수정

* refactor: 메서드명 수정 및 불필요한 개행 삭제

* feat: querydsl을 사용해 채팅방 조회시 성능 개선 및 최신순 정렬 기능 추가

* feat: 사용자 조회와 동시에 예외처리하도록 변경

* fix: merge로 인한 충돌 해결

* refactor: 사용하지 않는 메서드 삭제

* feat: #253 마이페이지 추가 (#261)

* fix: 헤더로 보내는 토큰에 prefix 추가

* feat: 마이페이지 레이아웃 작성

* feat: 유저 정보 불러오는 api 연동

* feat: 로그아웃 api 연동

* refactor: 로그아웃 시 로그인 페이지로 이동하는 intent에 flag 추가하는 방식으로 수정

* refactor: string 리소스 name 수정

* 채팅방 신고 등록 및 조회 api 추가 (#262)

* feat: 채팅방 신고 엔티티 추가

* feat: 채팅방 신고 등록 레파지토리 추가

* style: 개행 추가

* feat: 채팅방 신고 등록 서비스 추가

* test: 채팅룸 신고 등록과 관련한 예외 테스트 추가

* feat: 채팅방 신고 권한 검증 로직 추가

* refactor: 메서드 네이밍을 명확하게 수정

* test: 잘못된 네이밍 수정

* style: 개행 추가

* feat: 채팅방 신고 등록 api 추가

* refactor: 신고 컨트롤러 클래스명 변경

* refactor: 경매 신고 조회 시 판매자 정보도 가져오도록 수정

* feat: 채팅방 신고 전체 목록 조회 서비스 추가

* feat: 채팅방 신고 전체 목록 조회 api 추가

* refactor: 메서드 명이 명확하도록 수정

* test: 채팅방 신고 전체 목록 조회 테스트 추가

* test: 경매 신과 관련 테스트 메서드명 명확하게 수정

* feat: 이미 신고한 채팅방을 신고하는 경우에 대한 검증 로직 추가

* feat: 채팅방 신고 엔티티 추가에 따른 flyway 스크립트 추가

* style: final 누락 추가

* style: 개행 추가

* feat: #242 신고 페이지 UI/구조 작성, 삭제 버튼 UI추가 (#267)

* feat: 신고 페이지 UI 작성

* refactor: BindingActivity 사용하는 것으로 수정

* feat: ViewModel 코드 작성

* feat: 경매 상세 페이지 신고버튼 영역 잡아두기

* refactor: 함수명 변경

* refactor: 충돌 해결

* refactor: #271 경매와 인증/인가 기능 연동 (#273)

* feat: #258 로그아웃 api 추가 (#269)

* feat: 블랙리스트 토큰 엔티티 기능 추가

* feat: 블랙리스트 토큰 등록 및 조회 레포지토리 기능 추가

* test: 테스트 이름 변경

* feat: 블랙리스트 토큰 등록 및 조회 기능 추가

* feat: 인터셉터에서 블랙리스트에 등록한 AccessToken인지 검증하는 기능 추가

* feat: 로그아웃 api 기능 추가

* chore: BlackListToken 엔티티 관련 flyway script 추가

* refactor: 메서드 이름을 명확하게 변경

* style: 개행 추가

* chore: flyway script 버전 변경

* test: 인터셉터 설정 추가

* test: 누락된 인터셉터 설정 추가

* feat: #263 경매 목록 새로고침 기능 추가 (#264)

* feat: #266 삭제된 경매 상세 조회 시 데이터를 삭제하고 경매 목록으로 돌아오는 기능 추가 (#268)

* feat: 삭제된 경매 상세 조회 시 데이터를 삭제하고 경매 목록으로 돌아오는 기능 추가

* refactor: 로컬에서 경매 데이터를 삭제하는 기능을 Repository 내부적으로 처리하도록 수정

* feat: #274 신고 기능 서버 연동 및 액티비티 연결 (#275)

* feat: 아이콘 추가

* feat: 레포지토리에 신고 API 추가

* feat: ViewModel 코드 작성

* feat: onClick 함수 연결

* feat: 경매 상세 페이지와 신고 페이지 연결

* feat: 액티비티 코드 작성

* feat: 통신에 필요한 기본 정보 세팅과 신고 접수, 예외 처리들 작성

* refactor: 빈 스트링 검사

* feat: 신고 접수 후 종료

* refactor: 값 중복 확인 삭제

* refactor: 코드 길이 줄이기

* fix: 잘못된 Service 코드 수정

* refactor: 상수 밖으로 빼기

* refactor: 예외 처리

---------

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

* feat: #257 쪽지방 페이지 기능 구현 (#270)

* feat: 쪽지방 페이지 UI 상단바 작성

* feat: 쪽지방 페이지 UI 하단 메시지 입력 부분 작성

* feat: 쪽지방 페이지 액티비티 추가

* feat: 쪽지방 페이지로 이동하는 로직을 다른 화면에 추가

* feat: 뷰모델 클릭 리스너 함수들을 데이터바인딩으로 연결

* feat: 메시지 UI 모델 추가

* feat: 메시지 로딩 함수 구현

* feat: 채팅 메시지 뷰타입 레이아웃 작성

* feat: 메시지 어댑터 작성

* feat: 쪽지방 생성 알림 어댑터 작성

* feat: 바인딩 어댑터 setTextOrEmpty 유틸 함수 추가

* feat: 메시지 전송 기능 추가

* refactor: 신고하기 아이콘 변경

* feat: 채팅 입력시 액티비티 따라 올라가는 기능 추가

* refactor: 빈 스트링 전송되지 않도록 수정

* refactor: MessageAdapter DiffUtil 수정

* refactor: 중복 리턴 수정

* refactor: loadMessageRoom으로 함수명 수정

* feat: #152 채팅 메시지 조회 API 추가 (#272)

* fix: 브랜치 최신화

* style: 메소드 체이닝 개행 추가

* style: 필드 사이 개행 추가

* fix: 브랜치 최신화

* feat: 특정 아이디 이후에 추가된 메시지 조회 기능 추가

* test: 실패하는 테스트 수정

* refactor: 엔티티 조회 로직 메서드 분리

* refactor: null 아이디 검사 분기문 메서드 분리

* style: 메서드 체이닝 개행 추가

* style: 불필요한 주석 제거

* fix: 브랜치 최신화

* style: 불필요한 주석 제거

* style: 메소드 체이닝 개행 추가

* style: 필드 사이 개행 추가

* feat: 특정 아이디 이후에 추가된 메시지 조회 기능 추가

* feat: 메시지 조회 기능 추가

* feat: 메시지 조회 API 추가

* style: 테스트 주석 추가

* test: 실패하는 테스트 수정

* test: 메시지 조회 시 잘못된 사용자에 대한 예외 테스트 추가

* refactor: 엔티티 조회 로직 메서드 분리

* refactor: null 아이디 검사 분기문 메서드 분리

* style: 메서드 체이닝 개행 추가

* fix: API 명세에 맞춰 API 수정

* feat: 채팅 가능한 시간이 초과한 경우 예외 처리 추가

* fix: 패키지 이동 반영 안되는 오류 수정

* !hotfix: 버그 리포팅을 위한 이슈 템플릿 추가

* !hotfix: 버그 리포팅용 이슈 템플릿의 설명을 조금 더 명확하게 변경

* !hotfix: 개발 도중 버그가 발생했을 때의 이슈 템플릿의 설명을 명확하게 변경

* feat: 특정 아이디 이후에 추가된 메시지 조회 기능 추가

* feat: 메시지 조회 API 추가

* style: 테스트 주석 추가

* test: 실패하는 테스트 수정

* test: 메시지 조회 시 잘못된 사용자에 대한 예외 테스트 추가

* refactor: 엔티티 조회 로직 메서드 분리

* refactor: null 아이디 검사 분기문 메서드 분리

* style: 불필요한 주석 제거

* feat: 특정 아이디 이후에 추가된 메시지 조회 기능 추가

* feat: 메시지 조회 API 추가

* style: 테스트 주석 추가

* test: 실패하는 테스트 수정

* test: 메시지 조회 시 잘못된 사용자에 대한 예외 테스트 추가

* refactor: 엔티티 조회 로직 메서드 분리

* refactor: null 아이디 검사 분기문 메서드 분리

* style: 메서드 체이닝 개행 추가

* style: 개행 추가

* refactor: 수신자가 메시지를 조회할 수 있도록 변경

* refactor: find 메서드 대신 repository 직접 조회하도록 변경

* refactor: 불변 리스트 반환하도록 수정

* 채팅방 신고 등록 및 조회 api 추가 (#262)

* feat: 채팅방 신고 엔티티 추가

* feat: 채팅방 신고 등록 레파지토리 추가

* style: 개행 추가

* feat: 채팅방 신고 등록 서비스 추가

* test: 채팅룸 신고 등록과 관련한 예외 테스트 추가

* feat: 채팅방 신고 권한 검증 로직 추가

* refactor: 메서드 네이밍을 명확하게 수정

* test: 잘못된 네이밍 수정

* style: 개행 추가

* feat: 채팅방 신고 등록 api 추가

* refactor: 신고 컨트롤러 클래스명 변경

* refactor: 경매 신고 조회 시 판매자 정보도 가져오도록 수정

* feat: 채팅방 신고 전체 목록 조회 서비스 추가

* feat: 채팅방 신고 전체 목록 조회 api 추가

* refactor: 메서드 명이 명확하도록 수정

* test: 채팅방 신고 전체 목록 조회 테스트 추가

* test: 경매 신과 관련 테스트 메서드명 명확하게 수정

* feat: 이미 신고한 채팅방을 신고하는 경우에 대한 검증 로직 추가

* feat: 채팅방 신고 엔티티 추가에 따른 flyway 스크립트 추가

* style: final 누락 추가

* style: 개행 추가

* feat: 특정 아이디 이후에 추가된 메시지 조회 기능 추가

* feat: 메시지 조회 API 추가

* style: 테스트 주석 추가

* test: 실패하는 테스트 수정

* test: 메시지 조회 시 잘못된 사용자에 대한 예외 테스트 추가

* refactor: 엔티티 조회 로직 메서드 분리

* refactor: null 아이디 검사 분기문 메서드 분리

* style: 메서드 체이닝 개행 추가

* feat: 특정 아이디 이후에 추가된 메시지 조회 기능 추가

* feat: 메시지 조회 API 추가

* style: 테스트 주석 추가

* test: 실패하는 테스트 수정

* test: 메시지 조회 시 잘못된 사용자에 대한 예외 테스트 추가

* refactor: 엔티티 조회 로직 메서드 분리

* feat: 특정 아이디 이후에 추가된 메시지 조회 기능 추가

* feat: 메시지 조회 API 추가

* style: 테스트 주석 추가

* test: 실패하는 테스트 수정

* test: 메시지 조회 시 잘못된 사용자에 대한 예외 테스트 추가

* refactor: 엔티티 조회 로직 메서드 분리

* refactor: null 아이디 검사 분기문 메서드 분리

* feat: 특정 아이디 이후에 추가된 메시지 조회 기능 추가

* feat: 메시지 조회 API 추가

* style: 테스트 주석 추가

* test: 실패하는 테스트 수정

* test: 메시지 조회 시 잘못된 사용자에 대한 예외 테스트 추가

* refactor: 엔티티 조회 로직 메서드 분리

* refactor: null 아이디 검사 분기문 메서드 분리

* style: 메서드 체이닝 개행 추가

* feat: 특정 아이디 이후에 추가된 메시지 조회 기능 추가

* feat: 메시지 조회 API 추가

* style: 테스트 주석 추가

* test: 실패하는 테스트 수정

* test: 메시지 조회 시 잘못된 사용자에 대한 예외 테스트 추가

* refactor: 엔티티 조회 로직 메서드 분리

* feat: 특정 아이디 이후에 추가된 메시지 조회 기능 추가

* feat: 메시지 조회 API 추가

* style: 테스트 주석 추가

* test: 실패하는 테스트 수정

* test: 메시지 조회 시 잘못된 사용자에 대한 예외 테스트 추가

* refactor: 엔티티 조회 로직 메서드 분리

* refactor: null 아이디 검사 분기문 메서드 분리

* refactor: lastMessageId 계산 로직 삭제

* style: 잘못된 개행 수정

* style: 잘못된 개행 수정

* feat: #258 로그아웃 api 추가 (#269)

* feat: 블랙리스트 토큰 엔티티 기능 추가

* feat: 블랙리스트 토큰 등록 및 조회 레포지토리 기능 추가

* test: 테스트 이름 변경

* feat: 블랙리스트 토큰 등록 및 조회 기능 추가

* feat: 인터셉터에서 블랙리스트에 등록한 AccessToken인지 검증하는 기능 추가

* feat: 로그아웃 api 기능 추가

* chore: BlackListToken 엔티티 관련 flyway script 추가

* refactor: 메서드 이름을 명확하게 변경

* style: 개행 추가

* chore: flyway script 버전 변경

* test: 인터셉터 설정 추가

* test: 누락된 인터셉터 설정 추가

* feat: 특정 아이디 이후에 추가된 메시지 조회 기능 추가

* feat: 메시지 조회 API 추가

* style: 테스트 주석 추가

* test: 실패하는 테스트 수정

* test: 메시지 조회 시 잘못된 사용자에 대한 예외 테스트 추가

* refactor: 엔티티 조회 로직 메서드 분리

* refactor: null 아이디 검사 분기문 메서드 분리

* style: 메서드 체이닝 개행 추가

* feat: 특정 아이디 이후에 추가된 메시지 조회 기능 추가

* feat: 메시지 조회 API 추가

* style: 테스트 주석 추가

* test: 실패하는 테스트 수정

* test: 메시지 조회 시 잘못된 사용자에 대한 예외 테스트 추가

* feat: 특정 아이디 이후에 추가된 메시지 조회 기능 추가

* feat: 메시지 조회 API 추가

* style: 테스트 주석 추가

* test: 실패하는 테스트 수정

* test: 메시지 조회 시 잘못된 사용자에 대한 예외 테스트 추가

* refactor: 엔티티 조회 로직 메서드 분리

* refactor: null 아이디 검사 분기문 메서드 분리

* feat: 특정 아이디 이후에 추가된 메시지 조회 기능 추가

* feat: 메시지 조회 API 추가

* style: 테스트 주석 추가

* test: 실패하는 테스트 수정

* test: 메시지 조회 시 잘못된 사용자에 대한 예외 테스트 추가

* refactor: 엔티티 조회 로직 메서드 분리

* refactor: null 아이디 검사 분기문 메서드 분리

* style: 메서드 체이닝 개행 추가

* feat: 특정 아이디 이후에 추가된 메시지 조회 기능 추가

* feat: 메시지 조회 API 추가

* style: 테스트 주석 추가

* test: 실패하는 테스트 수정

* test: 메시지 조회 시 잘못된 사용자에 대한 예외 테스트 추가

* refactor: 엔티티 조회 로직 메서드 분리

* feat: 특정 아이디 이후에 추가된 메시지 조회 기능 추가

* feat: 메시지 조회 API 추가

* style: 테스트 주석 추가

* test: 실패하는 테스트 수정

* test: 메시지 조회 시 잘못된 사용자에 대한 예외 테스트 추가

* refactor: 엔티티 조회 로직 메서드 분리

* refactor: null 아이디 검사 분기문 메서드 분리

* feat: 특정 아이디 이후에 추가된 메시지 조회 기능 추가

* feat: 메시지 조회 API 추가

* style: 테스트 주석 추가

* test: 실패하는 테스트 수정

* test: 메시지 조회 시 잘못된 사용자에 대한 예외 테스트 추가

* refactor: 엔티티 조회 로직 메서드 분리

* refactor: null 아이디 검사 분기문 메서드 분리

* style: 메서드 체이닝 개행 추가

* feat: 특정 아이디 이후에 추가된 메시지 조회 기능 추가

* feat: 메시지 조회 API 추가

* style: 테스트 주석 추가

* test: 실패하는 테스트 수정

* test: 메시지 조회 시 잘못된 사용자에 대한 예외 테스트 추가

* refactor: 엔티티 조회 로직 메서드 분리

* feat: 특정 아이디 이후에 추가된 메시지 조회 기능 추가

* feat: 메시지 조회 API 추가

* style: 테스트 주석 추가

* test: 실패하는 테스트 수정

* test: 메시지 조회 시 잘못된 사용자에 대한 예외 테스트 추가

* refactor: 엔티티 조회 로직 메서드 분리

* refactor: null 아이디 검사 분기문 메서드 분리

* test: lastMessageId null인 경우 빈 배열이 담겨서 전달되는지 확인하는 코드 추가

* test: 적절한 변수를 사용하도록 수정

* fix: API 명세에 맞춰 예외 처리 추가

* fix: API 명세에 맞춰 응답값 변경

* refactor: 메서드 분리

* refactor: 빌더 삭제

* refactor: 메서드 분리 제거

* refactor: 메서드명 수정

* refactor: 메시지 조회 시 chatRoom fetch join하도록 수정

* style: 잘못된 개행 수정

* refactor: 인증/인가 연동

* test: 불필요한 주석 제거

* style: 개행 변경

---------

Co-authored-by: 지토 <[email protected]>
Co-authored-by: 제이미 <[email protected]>

* feat: #278 자동로그인 기능 서버 연동 (#279)

* fix: 충돌 해결 시 발생한 문제 해결

* feat: 자동로그인 기능 서버 연동

* refactor: #259 채팅방 목록 조회시 마지막 메세지 함께 반환 및 마지막 메시지가 최근인 순으로 정렬하도록 수정 (#276)

* rename: 중복된 dto 이름 변경

* refactor: 채팅방 dto에 담을 정보 수정

* perf: 채팅방 조회 시 querydsl 사용 및 쿼리 성능 개선

* feat: 채팅방 목록 조회시 마지막 메시지도 함께 보내는 기능 추가

* feat: 주어진 채팅방 아이디에 해당하는 채팅방에 있는 마지막 메시지를 조회하는 레포지토리 메서드에 queryDsl 적용

* feat: 채팅방 목록 조회 시 마지막 메시지가 최근인 순으로 정렬되도록 기능 추가

* refactor: 길이가 긴 메서드의 가독성 증진을 위한 메서드 분리

* style: 개행 수정

* fix: 충돌 해결 및 개행 추가

* refactor: #260 경매 상세 조회 시 채팅방 아이디와 채팅 가능 유저 여부 함께 전송하도록 수정 (#265)

* feat: 경매 상세 조회 시 채팅방 아이디와 채팅 가능 유저 여부 함께 전송하는 기능 추가

* refactor: 사용자와 경매 조회 시 예외를 한 번에 처리하도록 수정

* test: 경매 상세 조회 시 경매 정보와 사용자 정보를 찾을 수 없는 경우에 대한 누락된 테스트 추가

* style: 개행 추가 및 불필요한 개행 제거

* refactor: 메서드 파라미터에 Optional 사용하지 않도록 변경

* fix: merge로 인한 충돌 해결

* refactor: 판매자 또는 낙찰자인자 판단할 때 현재시간을 주입받도록 수정

* style: 개행 추가

* rename: dto 이름 명확하게 수정

* style: 개행 수정

* !hotfix: 채팅방 생성 시 채팅방 아이디 바디로 넘기도록 수정 (#283)

* fix: 앱에서 나갔다가 돌아왔을 때 경매 목록 캐시가 남아있는 문제 해결

* feat: #282 회원 탈퇴 api 추가 (#284)

* feat: 회원 엔티티에 회원탈퇴 기능 추가

* feat: 회원탈퇴하지 않은 회원을 조회하는 기능 추가

* feat: 회원 탈퇴 기능 추가

* feat: 회원 탈퇴 api 추가

* feat: 회원 탈퇴 여부 확인 기능 추가

* feat: 회원 탈퇴 여부 확인 기능 추가

* chore: 회원 탈퇴 관련 flyway script 추가

* feat: 인증 & 인가 작업 시 탈퇴된 회원인지 검증하는 로직 추가

* feat: #285 개인정보처리방침 추가 (#288)

* feat: 개인정보처리방침 버튼 레이아웃 추가

* feat: 개인정보처리방침 노션 링크 웹페이지로 이동하는 기능 추가

* feat: #286 신고하기 및 쪽지방 정보 Dto 서버랑 안맞는 버그 수정 (#289)

* fix: 신고하기 레트로핏 메소드에 바디 어노테이션 추가

* fix: 쪽지방 정보 dto 추가

* refactor: 쪽지방에서 경매id로 신고하기 기능 추가

* !hotfix: flyway script 수정 (#291)

* docs: #277 신고 api 문서화 (#281)

* test: restdocs 적용

* docs: 신고 관련 문서화 추가

* ci: 머지로 인한 충돌 해결

* feat: #292 모니터링 설정 (#292)

* chore: 모니터링 의존성 추가

* feat: 모니터링 설정 추가

* refactor: 개인정보처리방침 url 코드에서 숨김

* docs: #280 경매 api 문서 최신화, 인증 & 인가 api 문서화 (#295)

* docs: 인증 & 인가 관련 api 문서화

* docs: 경매 관련 api 문서 최신화

* docs: #298 경매 상세 조회 api 응답 필드 추가 (#299)

* feat: 경매 상세 조회 시 자신이 등록한 경매인지 판단하는 로직 추가

* docs: 경매 상세 조회 api 문서 최신화

* chore: #301 운영 서버 관련 script 변경 (#302)

* chore: 운영 서버 script 수정

* chore: flyway version 5 script 수정

* feat: #297 경매 상세 페이지 경매 삭제 기능 추가 (#300)

* feat: 삭제 버튼과 뷰모델 연결

* feat: 나의 경매인지 확인하는 변수 추가

* feat: 나의 경매 여부에 따른 visibility 조정

* feat: 경매 삭제 레포지토리 함수 작성

* feat: 뷰모델과 레포지토리 함수 연결

* refactor: 함수명 변경

* refactor: 삭제 확인 다이얼로그에 negative String Id 추가

* refactor: 글자가 길어졌을 때 아이콘과 겹치지 않도록 수정

* refactor: 글자가 길어졌을 때 아이콘과 겹치지 않도록 수정

* refactor: 글자가 길어졌을 때 아이콘과 겹치지 않도록 수정

* refactor: 로딩 실패 예외처리

* refactor: remove에서 delete로 네이밍 변경

* refactor: remove에서 delete로 네이밍 변경

* refactor: remove에서 delete로 네이밍 변경

* feat: #304 마지막 메시지 위치로 리사이클러뷰 위치 이동되는 기능 및 메시지 입력 소프트 키보드 올라올 때 툴바 보이도록 수정 (#306)

* refactor: 소프트 키보드 올라올 때, 리사이클러뷰 스크롤 상태 유지된 상태로 액티비티 조정되도록 수정

* refactor: 메시지 목록 업데이트 될 때, 스크롤 상태 마지막 위치로 이동하는 콜백 추가

* refactor: 툴바 적용

* deploy: 시맨틱 버저닝 적용

* refactor: 사용하지 않는 기능 버튼 숨김 처리

* deploy: 시맨틱 버저닝 적용

* docs: #293 채팅 api 문서화 (#296)

* 채팅 api 문서화

* docs: 채팅 api 문서화 request-headers 추가 및 항목 순서 변경

* docs: merge로 인한 충돌 해결

* fix: 빌드 후 변경사항 적용

* refactor: #303 경매가 종료되지 않았다면 판매자이더라도 채팅 가능한 유저인지 정보에 false를 반환하도록 수정 (#305)

* deploy: 난독화 적용

* feat: #309 서버로부터 가져온 프로필 정보 화면에 띄워주는 기능 추가 (#312)

* refactor: #325 입찰 예외처리 리팩토링 (#326)

* refactor: 판매자 입찰 불가 에러 처리 추가

* refactor: 첫 입찰자의 시작금액을 시작금액이상으로 가능하게 수정

* refactor: 내 경매면 경매 하단 버튼 상세 문구 수정

* fix: #327 토큰 자동 갱신 시 응답 안 닫고 다음 요청을 보내던 버그 수정 (#328)

* fix: 입찰 금액 입력 최댓값 수정

* fix: 경매 등록 여러번 되는 문제 방지

* feat: 경매 등록 실패 시 스낵바 메시지 노출

* feat: 경매 입찰 시 일정 단위를 벗어날 경우 서버에서 받는 메시지를 출력하는 기능 추가

* design: 마감기한 텍스트 뷰 위치를 시작 가격 옆으로 조정

* design: 프로필 이미지 뷰에 디폴트 이미지 적용

* fix: 경매 상세 페이지가 한 번에 여러개 생성되지 않도록 수정

* design: 경매 상세 화면 판매자 프로필 외곽을 둥글게 수정

* feat: 활성화된 쪽지방이 없으면 쪽지방 프래그먼트에 보여줄 문구 추가

* fix: 경매 상세와 쪽지방이 무한히 중첩되는 버그 수정

* refactor: 버전 수정

---------

Co-authored-by: mendel <[email protected]>
Co-authored-by: swonny <[email protected]>
Co-authored-by: apptie <[email protected]>
Co-authored-by: kwonyj1022 <[email protected]>
Co-authored-by: Gloria <[email protected]>
Co-authored-by: Song Hyemin <[email protected]>
  • Loading branch information
7 people authored Aug 31, 2023
1 parent ba3f489 commit fcb9b09
Show file tree
Hide file tree
Showing 581 changed files with 33,771 additions and 0 deletions.
167 changes: 167 additions & 0 deletions .github/workflows/backend_pr_decorator.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,167 @@
name: PR 코드 분석

on:
pull_request:
types: [opened, reopened, synchronize]
branches: [ main, develop, develop-be ]

permissions: write-all

jobs:
build:
if: contains(github.event.pull_request.labels.*.name, 'backend')
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3
- name: settings java
uses: actions/setup-java@v3
with:
java-version: '17'
distribution: 'temurin'

- name: cache gradle
uses: actions/cache@v2
with:
path: |
~/.gradle/caches
~/.gradle/wrapper
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
restore-keys: |
${{ runner.os }}-gradle-
- name: chmod gradle
run: chmod +x backend/ddang/gradlew

- name: run jacocoTestCoverage
run: |
cd backend/ddang
./gradlew jacocoTestCoverage --info
- name: set author slack id
if: always()
id: author-slack
run: |
GIT_ID=${{ github.event.pull_request.user.login }}
if [ "$GIT_ID" == "apptie" ]; then
AUTHOR_NAME="${{ secrets.apptie_slack_display_name }}"
AUTHOR_ID="${{ secrets.apptie_slack_id }}"
elif [ "$GIT_ID" == "swonny" ]; then
AUTHOR_NAME="${{ secrets.swonny_slack_display_name }}"
AUTHOR_ID="${{ secrets.swonny_slack_id }}"
elif [ "$GIT_ID" == "jj503" ]; then
AUTHOR_NAME="${{ secrets.jj503_slack_display_name }}"
AUTHOR_ID="${{ secrets.jj503_slack_id }}"
elif [ "$GIT_ID" == "kwonyj1022" ]; then
AUTHOR_NAME="${{ secrets.kwonyj1022_slack_display_name }}"
AUTHOR_ID="${{ secrets.kwonyj1022_slack_id }}"
fi
echo "AUTHOR_NAME=${AUTHOR_NAME}" >> $GITHUB_OUTPUT
echo "AUTHOR_ID=${AUTHOR_ID}" >> $GITHUB_OUTPUT
- name: run an analysis of the ${{ github.REF }} branch ${{ github.BASE_REF }} base
uses: sonarsource/sonarqube-scan-action@master
env:
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
SONAR_HOST_URL: ${{ secrets.SONAR_URL }}
with:
args: >
-Dsonar.issuesReport.console.enable=true
-Dsonar.projectKey=develop-be-project
-Dsonar.java.binaries=backend/ddang/build/classes
-Dsonar.exclusions=**/*Dto*.java,**/*Application*.java,**/*Exception*.java,**/*Response*.java,**/*Request*.java,**/*Configuration*.java,**/*Appender*.java,**/*.html,**/generated/**,**/resources/**
-Dsonar.sourceEncoding=UTF-8
-Dsonar.java.coveragePlugin=jacoco
-Dsonar.coverage.jacoco.xmlReportPaths=backend/ddang/build/reports/jacoco/test/jacocoTestReport.xml
-Dsonar.issue.ignore.multicriteria=e1,e2
-Dsonar.issue.ignore.multicriteria.e1.ruleKey=java:S100
-Dsonar.issue.ignore.multicriteria.e1.resourceKey=**/*Test.java
-Dsonar.issue.ignore.multicriteria.e2.ruleKey=java:S1192
-Dsonar.issue.ignore.multicriteria.e2.resourceKey=**/*Test.java
- name: sonarqube quality check
id: sonar-quality
run: |
SONAR_PROJECT_KEY="develop-be-project"
SONAR_TOKEN="${{ secrets.SONAR_TOKEN }}"
RESULT=$(curl -s -u "admin:root" "${{ secrets.SONAR_URL }}/api/qualitygates/project_status?projectKey=${SONAR_PROJECT_KEY}&pullRequest=${{github.event.number}}")
STATUS=$(echo "$RESULT" | jq -r '.projectStatus.status')
ERROR_METRIC_KEYS=$(echo "$RESULT" | jq -r '.projectStatus.conditions[] | select(.status == "ERROR").metricKey')
echo "STATUS=${STATUS}" >> $GITHUB_OUTPUT
echo "ERROR_METRIC_KEYS=${ERROR_METRIC_KEYS}" >> $GITHUB_OUTPUT
- name: set variables
id: variables
run: |
SONAR_SCANNER_URL="${{ secrets.SONAR_URL }}/dashboard?id=sonarqube-test&pullRequest=${{github.event.number}}"
REVIEWERS_GIT_ID='${{ toJson(github.event.pull_request.requested_reviewers[*].login) }}'
reviewers=$(echo "$REVIEWERS_GIT_ID" | jq -r '.[]')
REVIEWERS_SLACK_ID=""
for reviewer in $reviewers; do
echo "Reviewer: $reviewer"
if [ "$reviewer" == "apptie" ]; then
REVIEWERS_SLACK_ID+="<@${{ secrets.apptie_slack_id }}> "
elif [ "$reviewer" == "swonny" ]; then
REVIEWERS_SLACK_ID+="<@${{ secrets.swonny_slack_id }}> "
elif [ "$reviewer" == "JJ503" ]; then
REVIEWERS_SLACK_ID+="<@${{ secrets.jj503_slack_id }}> "
elif [ "$reviewer" == "kwonyj1022" ]; then
REVIEWERS_SLACK_ID+="<@${{ secrets.kwonyj1022_slack_id }}> "
fi
done
echo "AUTHOR=${AUTHOR}" >> $GITHUB_OUTPUT
echo "SONAR_SCANNER_URL=${SONAR_SCANNER_URL}" >> $GITHUB_OUTPUT
echo "REVIEWERS=${REVIEWERS}" >> $GITHUB_OUTPUT
echo "REVIEWERS_SLACK_ID=${REVIEWERS_SLACK_ID}" >> $GITHUB_OUTPUT
- name: slack test
run: |
SLACK_MESSAGE='{"text":"PR 브랜치 분석","blocks":[{"type":"section","text":{"type":"mrkdwn","text":">*PR 브랜치 분석* \n>\n>*PR Author*\n>'
SLACK_MESSAGE+="${{ steps.author-slack.outputs.AUTHOR_NAME }}"
SLACK_MESSAGE+="\n>\n>*PR 링크*\n><"
SLACK_MESSAGE+="${{ github.event.pull_request.html_url }} "
SLACK_MESSAGE+="> \n>\n>분석 결과\n>"
SLACK_MESSAGE+=":white_check_mark:"
SLACK_MESSAGE+="\n>\n>*리뷰어*\n>"
SLACK_MESSAGE+="${{ steps.variables.outputs.REVIEWERS_SLACK_ID }}"
SLACK_MESSAGE+='"}}]}'
curl -X POST ${{ secrets.SLACK_WEBHOOK }} -d "${SLACK_MESSAGE}"
- name: slack failed test
if: failure()
run: |
SLACK_MESSAGE='{"text":"PR 브랜치 분석","blocks":[{"type":"section","text":{"type":"mrkdwn","text":">*PR 브랜치 분석* \n>\n>*PR Author*\n>'
SLACK_MESSAGE+="<@"
SLACK_MESSAGE+="${{ steps.author-slack.outputs.AUTHOR_ID }}"
SLACK_MESSAGE+=">"
SLACK_MESSAGE+="\n>\n>*PR 링크*\n><"
SLACK_MESSAGE+="${{ github.event.pull_request.html_url }} "
SLACK_MESSAGE+="> \n>\n>분석 결과\n>"
SLACK_MESSAGE+=":x:"
SLACK_MESSAGE+='"}}]}'
curl -X POST ${{ secrets.SLACK_WEBHOOK }} -d "${SLACK_MESSAGE}"
- name: slack cancelled test
if: cancelled()
run: |
SLACK_MESSAGE='{"text":"PR 브랜치 분석","blocks":[{"type":"section","text":{"type":"mrkdwn","text":">*PR 브랜치 분석* \n>\n>*PR Author*\n>'
SLACK_MESSAGE+="<@"
SLACK_MESSAGE+="${{ steps.author-slack.outputs.AUTHOR_ID }}"
SLACK_MESSAGE+=">"
SLACK_MESSAGE+="\n>\n>*PR 링크*\n><"
SLACK_MESSAGE+="${{ github.event.pull_request.html_url }} "
SLACK_MESSAGE+="> \n>\n>분석 결과\n>"
SLACK_MESSAGE+=":black_square_for_stop:"
SLACK_MESSAGE+='"}}]}'
curl -X POST ${{ secrets.SLACK_WEBHOOK }} -d "${SLACK_MESSAGE}"
4 changes: 4 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
[submodule "backend/ddang/3-ddang-submodule"]
path = backend/ddang/3-ddang-submodule
url = https://github.com/apptie/3-ddang-submodule
branch = main
34 changes: 34 additions & 0 deletions android/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
# Gradle files
.gradle/
build/

# Local configuration file (sdk path, etc)
local.properties

# Log/OS Files
*.log

# Android Studio generated files and folders
captures/
.externalNativeBuild/
.cxx/
*.apk
output.json

# IntelliJ
*.iml
.idea/
misc.xml
deploymentTargetDropDown.xml
render.experimental.xml

# Keystore files
*.jks
*.keystore
/3DDANG_KEY

# Google Services (e.g. APIs or Firebase)
google-services.json

# Android Profiling
*.hprof
1 change: 1 addition & 0 deletions android/app/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
/build
100 changes: 100 additions & 0 deletions android/app/build.gradle
Original file line number Diff line number Diff line change
@@ -0,0 +1,100 @@
plugins {
id 'com.android.application'
id 'org.jetbrains.kotlin.android'
id 'kotlin-kapt'
id 'kotlin-parcelize'
id 'com.google.gms.google-services'
id 'com.google.firebase.crashlytics'
}

Properties properties = new Properties()
properties.load(project.rootProject.file('local.properties').newDataInputStream())

android {
namespace 'com.ddangddangddang.android'
compileSdk 33

defaultConfig {
applicationId "com.ddangddangddang.android"
minSdk 28
targetSdk 33

versionCode 3
versionName "2.1.0"

testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"

manifestPlaceholders = [KEY_KAKAO: properties['key.kakao']]
buildConfigField 'String', 'KEY_KAKAO', properties['key.kakao.string']
buildConfigField "String", "PRIVACY_POLICY_URL", properties['url.privacyPolicy']
}

buildTypes {
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'),
'proguard-rules.pro',
'glide.pro',
'retrofit2.pro'
}
debug {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'),
'proguard-rules.pro',
'glide.pro',
'retrofit2.pro'
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_17
targetCompatibility JavaVersion.VERSION_17
}
kotlinOptions {
jvmTarget = '17'
}

buildFeatures {
buildConfig true
dataBinding true
}
}

dependencies {
implementation project(":data")
implementation 'androidx.core:core-ktx:1.10.1'
implementation 'androidx.appcompat:appcompat:1.6.1'
implementation 'com.google.android.material:material:1.9.0'
implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
implementation 'androidx.swiperefreshlayout:swiperefreshlayout:1.1.0'

// lifecycle
implementation 'androidx.activity:activity-ktx:1.7.2' // by viewModels()
implementation 'androidx.fragment:fragment-ktx:1.6.0' // by activityViewModels()
implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.6.1"
implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.6.1"

// 리사이클러뷰
implementation 'androidx.recyclerview:recyclerview:1.3.0'

// 이미지 처리
implementation 'com.github.bumptech.glide:glide:4.15.1'

// 테스트
testImplementation 'junit:junit:4.13.2'
androidTestImplementation 'androidx.test.ext:junit:1.1.5'

testImplementation 'io.mockk:mockk-android:1.13.5'

testImplementation 'org.jetbrains.kotlinx:kotlinx-coroutines-test'
testImplementation 'androidx.arch.core:core-testing:2.2.0'

androidTestImplementation 'androidx.test.espresso:espresso-core:3.5.1'

// 파이어베이스
implementation platform('com.google.firebase:firebase-bom:32.2.0')
implementation 'com.google.firebase:firebase-analytics-ktx'
implementation 'com.google.firebase:firebase-crashlytics-ktx'

// 카카오 로그인
implementation 'com.kakao.sdk:v2-user:2.11.1'
}
14 changes: 14 additions & 0 deletions android/app/glide.pro
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
-keep public class * implements com.bumptech.glide.module.GlideModule
-keep class * extends com.bumptech.glide.module.AppGlideModule {
<init>(...);
}
-keep public enum com.bumptech.glide.load.ImageHeaderParser$** {
**[] $VALUES;
public *;
}
-keep class com.bumptech.glide.load.data.ParcelFileDescriptorRewinder$InternalRewinder {
*** rewind();
}

# Uncomment for DexGuard only
#-keepresourcexmlelements manifest/application/meta-data@value=GlideModule
45 changes: 45 additions & 0 deletions android/app/proguard-rules.pro
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
# Add project specific ProGuard rules here.
# You can control the set of applied configuration files using the
# proguardFiles setting in build.gradle.
#
# For more details, see
# http://developer.android.com/guide/developing/tools/proguard.html

# If your project uses WebView with JS, uncomment the following
# and specify the fully qualified class name to the JavaScript interface
# class:
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
# public *;
#}

# Uncomment this to preserve the line number information for
# debugging stack traces.
#-keepattributes SourceFile,LineNumberTable

# If you keep the line number information, uncomment this to
# hide the original source file name.
#-renamesourcefileattribute SourceFile
-keep interface com.ddangddangddang.data.* { *; }
-keep class com.ddangddangddang.data.model.** { *; }
-keep class com.ddangddangddang.data.remote.** { *; }

-keep interface com.ddangddangddang.android.* { *; }
# Kakao SDK
-keep interface com.kakao.sdk.**.*Api
-keep class com.kakao.sdk.**.model.* { <fields>; }
-keep class * extends com.google.gson.TypeAdapter
# https://github.com/square/okhttp/pull/6792
-dontwarn org.bouncycastle.jsse.**
-dontwarn org.conscrypt.*
-dontwarn org.openjsse.**
# firebase-crashlytics
-keepattributes SourceFile,LineNumberTable # Keep file names and line numbers.
-keep public class * extends java.lang.Exception # Optional: Keep custom exceptions.
# firebase-analytics
-keep public class com.google.firebase.analytics.FirebaseAnalytics {
public *;
}
-keep public class com.google.android.gms.measurement.AppMeasurement {
public *;
}

Loading

0 comments on commit fcb9b09

Please sign in to comment.