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

v1.2.0 배포 준비 #263

Merged
merged 157 commits into from
Apr 1, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
157 commits
Select commit Hold shift + click to select a range
f3f69f8
feat: 회원 탈퇴 api 초기 세팅
ootr47 Dec 28, 2023
6c3ff86
feat: 회원 탈퇴 아이콘 추가
ootr47 Dec 28, 2023
f9735a6
feat: 회원 탈퇴 기능 추가 및 다이얼로그 requestCode 추가
ootr47 Dec 28, 2023
70d671b
feat: 회원탈퇴 텍스트 색상 변경
ootr47 Dec 28, 2023
acb2a7e
feat: 문자열 리소스 추가
ootr47 Dec 28, 2023
1a9ee8e
refactor: 리포맷, private 추가
ootr47 Jan 2, 2024
9d9f08d
feat: Custom Slider View 추가
ootr47 Jan 5, 2024
92fdadf
feat : Dp, Px 추가, 슬라이더 특정 부분 색상 추가
ootr47 Jan 5, 2024
914dba9
feat: 크기 동적 변경, 뷰 컴포넌트 크기 조정
ootr47 Jan 5, 2024
26e21a9
refactor: 미사용 함수 제거
ootr47 Jan 5, 2024
fda03d7
feat: stroke, maxValue 속성 변경 함수 제공
ootr47 Jan 5, 2024
21e1d24
fix: 라디안 계산식 오류 수정
ootr47 Jan 5, 2024
faac70e
feat: 슬라이더 포인터 범위 지정 함수 제공
ootr47 Jan 5, 2024
f5536ca
feat: Sp 클래스 및 변환 함수 추가
ootr47 Jan 5, 2024
4f90163
refactor: 리포맷 및 함수 위치 변경
ootr47 Jan 5, 2024
b0d9960
refactor: 파일 이름 변경 util -> ConvertUtil
ootr47 Jan 5, 2024
f61c29e
feat: 슬라이더 뷰 크기 동적 설정 추가
ootr47 Jan 8, 2024
d0e5b35
feat: 버튼 관련 변수 제거
ootr47 Jan 8, 2024
de48b2c
feat: 하이라이트 슬라이더 기본 값 제거
ootr47 Jan 8, 2024
f241446
feat: active 슬라이더 구간 나타내는 ui 추가
ootr47 Jan 8, 2024
f2929fb
feat: 색상 추가 및 적용
ootr47 Jan 8, 2024
bd6ac37
fix: 하이라이트 부분이 활성화된 부분 위에 그려지는 현상 수정
ootr47 Jan 8, 2024
9366d38
refactor: 사용하지 않는 함수 제거
ootr47 Jan 8, 2024
23c2514
docs: 필요없는 주석 제거
ootr47 Jan 8, 2024
d0cf59f
refactor: 함수명 변경
ootr47 Jan 8, 2024
6ac679f
refactor: 파일명 변경, 사용하지 않는 함수 제거
ootr47 Jan 8, 2024
3604ffa
feat: 문자열 리소스 추가
ootr47 Jan 11, 2024
c8457b6
feat: 커스텀 뷰 테스트 액티비티 제거
ootr47 Jan 11, 2024
aa361a6
feat: 목표 가격 수정 다이얼로그 추가
ootr47 Jan 13, 2024
4d3b4f7
refactor: 다이얼로그 tag 변경
ootr47 Jan 13, 2024
751dd2b
fix: 슬라이더 컨트롤러 위치 안맞는 현상 수정
ootr47 Jan 13, 2024
50340d7
feat: 슬라이더 조작 중에는 부모 터치 이벤트 비활성화
ootr47 Jan 13, 2024
8f5ff55
feat: 가격 설정 화면 커스텀 슬라이더 뷰로 변경
ootr47 Jan 13, 2024
d7a63a8
feat: slider 모드에 따른 색상 변경 기능 추가
ootr47 Jan 13, 2024
d3ef3e0
feat: 슬라이더 rad 최대 최소 범위 지정
ootr47 Jan 13, 2024
5d3ccc7
fix: 컨트롤러 위치 오류 수정
ootr47 Jan 15, 2024
82e2c29
refactor: 문자열 리소스 수정
ootr47 Jan 15, 2024
52cc2f8
feat: slideValue 설정 위치 변경 및 오버플로우 방지 추가
ootr47 Jan 15, 2024
b7a5abe
feat: slider 높이 220dp로 변경
ootr47 Jan 15, 2024
b04cd23
feat: 회원 탈퇴 api 수정
ootr47 Jan 15, 2024
78a5406
feat: 회원 탈퇴 기능 다이얼로그 -> 액티비티로 수정
ootr47 Jan 15, 2024
892b48a
feat: 회원 탈퇴 성공 토스트 메세지 추가
ootr47 Jan 15, 2024
a29e5a8
refactor: 리포맷
ootr47 Jan 15, 2024
fe4b4c2
feat: 최대 목표 가격 10억으로 변경
ootr47 Jan 18, 2024
0ba3a35
feat: 슬라이더 최대 값 200으로 수정
ootr47 Jan 18, 2024
447bf9b
feat: step단위로 slider 변경
ootr47 Jan 18, 2024
7fe783f
feat: 슬라이더 커스텀 뷰 프로퍼티 타입 변경
ootr47 Jan 18, 2024
67fd545
feat: 근접한 step value 구하는 함수 로직 변경 및 stepsize 변경 public 함수 추가
ootr47 Jan 18, 2024
7310cde
feat: 목표 가격 설정 슬라이더 조작 버튼 추가
ootr47 Jan 22, 2024
327971d
refactor: 라디안 값 변경 시 컨트롤러 좌표 및 value 변경으로 수정
ootr47 Jan 22, 2024
e730e0d
refactor: 매니패스트 순서 변경
ootr47 Jan 22, 2024
b28d517
refactor: 불필요한 코드 제거
ootr47 Jan 22, 2024
b07460e
feat: 버튼 연속 입력 방지를 위한 ThrottleFirstClickListener 추가
ootr47 Jan 22, 2024
7f36052
refactor: 리포맷, 불필요한 import문 제거
ootr47 Jan 22, 2024
7af390b
fix: Color 속성 import 올바르게 수정
Taewan-P Jan 25, 2024
89b9548
feat: 탈퇴 화면 뒤로가기 레이아웃 수정
Taewan-P Jan 25, 2024
01046ec
feat: DeleteAccountActivity에서 시스템 네비게이션바 색상 설정
Taewan-P Jan 25, 2024
f87b900
refactor: when문 안으로 선언문 간결화
Taewan-P Jan 25, 2024
15c3e1d
refactor: 코드 단순화
ootr47 Jan 25, 2024
0257e81
feat: 슬라이더 조작 가능한 터치 영역 설정
ootr47 Jan 25, 2024
15a064a
feat: 슬라이더 바 터치 판별 첫 터치 시로 변경
ootr47 Jan 25, 2024
c55f8b1
refactor: 리포맷
ootr47 Jan 25, 2024
d760460
Merge pull request #239 from boostcampwm2023/feat/and/delete-account
Taewan-P Jan 25, 2024
c75b65c
refactor: 코드순서 변경, 접근 제어자 변경
ootr47 Jan 27, 2024
7ca8cb7
feat: 슬라이더 조작 터치가 아닐 경우 부모 뷰 터치 가능 하도록 변경
ootr47 Jan 27, 2024
cd92353
feat: 라이프사이클 오너 변경 및 onCreateView()로 뷰 초기화 코드 이동
ootr47 Jan 27, 2024
1960acb
feat: 쇼핑몰 바로가기 기능 네이버 추가
ootr47 Jan 27, 2024
0a56eeb
feat: 다이얼로그 버튼 비활성화 색 설정
ootr47 Jan 27, 2024
56893b9
feat: 가격 수정 요청 시 버튼 비활성화 추가
ootr47 Jan 27, 2024
0944b7b
fix: 접근성 라벨 아이디를 RoundSlider로 변경
Taewan-P Jan 27, 2024
a43a897
Merge branch 'dev/and' into feat/and/custom-slider
Taewan-P Jan 27, 2024
cc2d4f4
Merge pull request #240 from boostcampwm2023/feat/and/custom-slider
EunhoKang Jan 27, 2024
c58c0a1
fix: 11번가 쇼핑몰 이동 딥링크 변경
Taewan-P Jan 31, 2024
f953d5f
fix: 기본 VIEW 인텐트 처리할 브라우저가 존재하지 않을때 오류 수정
Taewan-P Jan 31, 2024
0e6221c
feat: 로딩 애니메이션 추가 (#245)
EunhoKang Jan 31, 2024
c518fae
feat: 쇼핑몰에 따른 로고 설정 추가, 네이버 로고 추가
ootr47 Jan 31, 2024
e742a93
fix: 네이버 로고 수정
Taewan-P Jan 31, 2024
350e639
Merge branch 'dev/and' into feat/and/go-to-naver-shop
Taewan-P Feb 5, 2024
23df5da
feat: 쇼핑몰 추가에 따른 api 및 코드 변경
ootr47 Feb 5, 2024
c13e5ab
Merge branch 'feat/and/go-to-naver-shop' of https://github.com/boostc…
ootr47 Feb 5, 2024
ac58979
refactor: 안드로이드 종속성 라이브러리 업데이트
Taewan-P Feb 5, 2024
6fee319
refactor: 차트 라이브러리 업데이트
Taewan-P Feb 5, 2024
7e2ced5
feat: 상품 검증 API 버전 변경
Taewan-P Feb 5, 2024
7670290
feat: 네이버 스마트스토어 딥링크 지원
Taewan-P Feb 5, 2024
9c169e8
feat: 네이버 스마트스토어 공유 링크 지원
Taewan-P Feb 5, 2024
5fca474
feat: 푸쉬알람 샵 정보 추가
EunhoKang Feb 5, 2024
848019d
feat: 데이터 이름 변경
EunhoKang Feb 5, 2024
190c616
feat: 푸시알림 on/off 요청 시 쇼핑몰 정보 추가
ootr47 Feb 5, 2024
f2d1a77
refactor: 변수 이름 변경
EunhoKang Feb 5, 2024
51c55b2
fix: DiffUtil 기준에 쇼핑몰 데이터 포함
EunhoKang Feb 5, 2024
951f95b
fix: 잘못된 초기화 체크 수정
ootr47 Feb 5, 2024
07ad7ae
refactor: 불필요한 로그 삭제
Taewan-P Feb 5, 2024
9b04600
fix: 사용되지 않는 import문 삭제
EunhoKang Feb 5, 2024
d8d80ae
Merge pull request #244 from boostcampwm2023/feat/and/go-to-naver-shop
Taewan-P Feb 5, 2024
ee2aa41
feat: 품절된 상품 상세 페이지에 가격 대신 품절 표시
EunhoKang Feb 6, 2024
b55a7ec
Merge pull request #247 from boostcampwm2023/feat/and/detail-soldout
ootr47 Feb 6, 2024
e01d26b
feat: 상품 최대 등록 개수 제한 추가
ootr47 Feb 6, 2024
369c42b
docs: 릴리즈 버전, 노트 갱신
ootr47 Feb 6, 2024
8397aed
docs: 릴리즈 노트 날짜 업데이트
ootr47 Feb 6, 2024
90f4b12
Merge branch 'dev/and' into feat/and/add-product-limit
Taewan-P Feb 7, 2024
42eadd1
docs: ui 소문자 대문자로 변경
ootr47 Feb 7, 2024
4a1f7b9
Merge pull request #250 from boostcampwm2023/feat/and/add-product-limit
Taewan-P Feb 7, 2024
1163c77
setup: Release 파일을 App Bundle 형식으로 변경
Taewan-P Feb 8, 2024
135b466
setup: 워크플로우 환경을 최신 MacOS로 변경
Taewan-P Feb 13, 2024
2e38c0c
Merge pull request #253 from boostcampwm2023/setup/release-app-bundle
EunhoKang Feb 14, 2024
7f8e454
feat: 비밀번호 재설정 화면 UI 구현
ootr47 Feb 25, 2024
25bae9d
feat: 인앱 업데이트 라이브러리 추가
Taewan-P Feb 26, 2024
94c359d
chore: 라이브러리 버전 업데이트
Taewan-P Feb 26, 2024
6f792d6
feat: 인앱 업데이트 프롬프트 구현
Taewan-P Feb 26, 2024
83240a2
fix: registerForActivityResult 사용 시 IllegalStateException 오류 수정
Taewan-P Feb 26, 2024
b027ea7
feat: 이메일 인증, 비밀번호 재설정 api 연동
ootr47 Feb 27, 2024
3da7dc5
fix: 이메일 검증 Request, Response @Serializable 추가
ootr47 Feb 28, 2024
148fa08
feat: api 추가에 따른 에러 상태 추가
ootr47 Feb 28, 2024
0dc3274
feat: 에러 상태 추가에 따른 UI 상태 추가 및 변경
ootr47 Feb 28, 2024
e6c235e
feat: 인증번호 만료 타이머 추가
ootr47 Feb 28, 2024
45d90e5
refactor: 잘못된 네이밍 변경, collect 함수화, 리포맷
ootr47 Feb 28, 2024
3d38635
fix: 비밀번호 변경 요청 잘못된 header 수정
ootr47 Feb 29, 2024
2a5d011
refactor: 리네임, 에러 상태 변경
ootr47 Feb 29, 2024
0570c67
feat: verifyToken 상태 추가
ootr47 Feb 29, 2024
60ac927
feat: throttle Click 바인딩 어댑터 추가
ootr47 Feb 29, 2024
43cb110
refactor: 리포맷
ootr47 Feb 29, 2024
3ac345e
refactor: bindingAdapter 파일 분리
ootr47 Mar 2, 2024
84004dc
fix: 잘못 수정한 drawable 복원
ootr47 Mar 2, 2024
6468711
refactor: 파일명 오타 수정
ootr47 Mar 2, 2024
ec630c2
feat: 인증번호 만료 시 버튼 텍스트 재전송으로 변경
ootr47 Mar 2, 2024
725a277
feat: 비밀번호 찾기 textButton으로 변경
ootr47 Mar 2, 2024
a616fa7
refactor: 불필요한 코드 제거, 문자열 추가
ootr47 Mar 2, 2024
9e0a81a
refactor: 인증 버튼 throttle click으로 변경, 람다식 -> 함수 참조 방식으로 변경
ootr47 Mar 2, 2024
d655077
feat: Flexible한 인앱 업데이트 지원
Taewan-P Mar 4, 2024
d388230
Merge pull request #256 from boostcampwm2023/feat/and/find-password
ootr47 Mar 4, 2024
062e00a
feat: 즉시 업데이트해야되는 버전과 급하지 않은 버전 업데이트 분리
Taewan-P Mar 4, 2024
b71eee1
feat: 업데이트가 강제 되었을때 앱을 사용하지 못하게끔 UI 수정
Taewan-P Mar 4, 2024
bd7064c
fix: 필수 업데이트 시 경고 문구 변경
Taewan-P Mar 5, 2024
6395070
refactor: 앱 업데이트 로직 간결하게 변경
Taewan-P Mar 5, 2024
f06f7e2
fix: 문법에 맞게 문자열 수정
Taewan-P Mar 5, 2024
4850289
Merge branch 'dev/and' into feat/and/inapp-update-api
Taewan-P Mar 5, 2024
cb3dd60
Merge pull request #257 from boostcampwm2023/feat/and/inapp-update-api
Taewan-P Mar 6, 2024
457561d
feat: 이메일 인증 여부 확인 및 저장 기능 구현
ootr47 Mar 7, 2024
7441cb0
feat: 이메일 인증 확인 ui 구현
ootr47 Mar 7, 2024
300ec05
Merge branch 'dev/and' of https://github.com/boostcampwm2023/and09-Pr…
ootr47 Mar 7, 2024
a3defa1
fix: 이메일 인증 확인 api 응답 수정
ootr47 Mar 8, 2024
93e8676
feat: 홈 화면 시작 시 이메일 인증 여부 확인
ootr47 Mar 8, 2024
41e0807
feat: 이메일 인증 or 비밀번호 찾기 구분에 따른 EmailVerificationFragment UI 및 기능 변경
ootr47 Mar 8, 2024
ae28d43
refactor: 불필요한 코드 제거
ootr47 Mar 8, 2024
7ba8f89
refactor: 사용되지 않는 코드 제거
ootr47 Mar 9, 2024
25d1a98
fix: 이메일이 길어질 시 잘리는 현상 말줄임 표시로 수정
ootr47 Mar 9, 2024
c185a1f
refactor: 불필요한 import문 제거
ootr47 Mar 9, 2024
971f112
fix: 인증 여부 버튼 위치 조정
ootr47 Mar 12, 2024
85e5514
feat: 인증 추가에 따른 회원가입 api 변경
ootr47 Mar 25, 2024
c4e79a4
feat: 회원가입 이메일 인증 추가 및 state 데이터 바인딩
ootr47 Mar 25, 2024
2090a8a
feat: 이메일 인증 확인 동작 변경
ootr47 Mar 31, 2024
87cb1c0
Merge pull request #261 from boostcampwm2023/feat/and/mypage-email-ve…
Taewan-P Apr 1, 2024
0cc9a5c
feat: 디펜던시 업데이트
Taewan-P Apr 1, 2024
51d858d
setup: 안드로이드 스튜디오에서 앱 인사이트 관련 파일 추가
Taewan-P Apr 1, 2024
78812b0
setup: IDE Copilot 챗 세션 관련 파일 제외
Taewan-P Apr 1, 2024
790bf2f
feat: 배포를 위한 버전 업데이트
Taewan-P Apr 1, 2024
34bba30
docs: 출시 노트 업데이트
Taewan-P Apr 1, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/firebase-deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ on:

jobs:
deploy:
runs-on: ubuntu-latest
runs-on: macos-14
steps:
- uses: actions/checkout@v4
with:
Expand Down Expand Up @@ -41,4 +41,4 @@ jobs:
serviceCredentialsFileContent: ${{ secrets.FIREBASE_APP_DISTRIBUTION }}
groups: tester
releaseNotesFile: android/release_notes.txt
file: android/app/build/outputs/apk/release/app-release.apk
file: android/app/build/outputs/bundle/release/app-release.aab
2 changes: 2 additions & 0 deletions android/.idea/.gitignore

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

45 changes: 45 additions & 0 deletions android/.idea/appInsightsSettings.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

26 changes: 14 additions & 12 deletions android/app/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,8 @@ android {
applicationId = "app.priceguard"
minSdk = 29
targetSdk = 34
versionCode = 8
versionName = "1.0.1"
versionCode = 10
versionName = "1.2.0"

testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
}
Expand Down Expand Up @@ -58,7 +58,7 @@ android {

dependencies {
// Firebase
implementation(platform("com.google.firebase:firebase-bom:32.6.0"))
implementation(platform("com.google.firebase:firebase-bom:32.8.0"))
implementation("com.google.firebase:firebase-analytics")
implementation("com.google.firebase:firebase-crashlytics")
implementation("com.google.firebase:firebase-perf")
Expand All @@ -67,11 +67,9 @@ dependencies {
// Android
implementation("androidx.core:core-ktx:1.12.0")
implementation("androidx.appcompat:appcompat:1.6.1")
implementation("com.google.android.material:material:1.10.0")
implementation("androidx.activity:activity-ktx:1.8.1")
implementation("com.google.android.material:material:1.11.0")
implementation("androidx.activity:activity-ktx:1.8.2")
implementation("androidx.constraintlayout:constraintlayout:2.1.4")
implementation("androidx.navigation:navigation-fragment-ktx:2.7.5")
implementation("androidx.navigation:navigation-ui-ktx:2.7.5")

// Retrofit, Serialization
implementation("com.squareup.retrofit2:retrofit:2.9.0")
Expand All @@ -82,7 +80,7 @@ dependencies {
implementation("androidx.datastore:datastore-preferences:1.0.0")

// Hilt
val hiltVersion = "2.48.1"
val hiltVersion = "2.49"
implementation("com.google.dagger:hilt-android:$hiltVersion")
kapt("com.google.dagger:hilt-android-compiler:$hiltVersion")

Expand All @@ -92,7 +90,7 @@ dependencies {
androidTestImplementation("androidx.test.espresso:espresso-core:3.5.1")

// Navigation
val navVersion = "2.7.5"
val navVersion = "2.7.7"
implementation("androidx.navigation:navigation-fragment-ktx:$navVersion")
implementation("androidx.navigation:navigation-ui-ktx:$navVersion")

Expand All @@ -107,11 +105,15 @@ dependencies {

// Worker
implementation("androidx.work:work-runtime-ktx:2.9.0")
implementation("androidx.hilt:hilt-work:1.1.0")
kapt("androidx.hilt:hilt-compiler:1.1.0")
implementation("androidx.hilt:hilt-work:1.2.0")
kapt("androidx.hilt:hilt-compiler:1.2.0")

// Material chart
implementation("app.priceguard:materialchart:0.2.1")
implementation("app.priceguard:materialchart:0.2.2")

// In app update
implementation("com.google.android.play:app-update:2.1.0")
implementation("com.google.android.play:app-update-ktx:2.1.0")
}

kapt {
Expand Down
14 changes: 9 additions & 5 deletions android/app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -21,10 +21,6 @@
<meta-data
android:name="com.google.firebase.messaging.default_notification_icon"
android:resource="@drawable/ic_priceguard_notification" />

<activity
android:name=".ui.additem.link.LinkHelperWebViewActivity"
android:exported="false" />
<activity
android:name=".ui.splash.SplashScreenActivity"
android:exported="true">
Expand Down Expand Up @@ -78,6 +74,15 @@
<activity
android:name="com.google.android.gms.oss.licenses.OssLicensesActivity"
android:theme="@style/Theme.PriceGuard.WithActionBar" />
<activity
android:name=".ui.additem.link.LinkHelperWebViewActivity"
android:exported="false" />
<activity
android:name=".ui.home.mypage.DeleteAccountActivity"
android:exported="false" />
<activity
android:name=".ui.login.findpassword.FindPasswordActivity"
android:exported="false" />

<service
android:name=".service.PriceGuardFirebaseMessagingService"
Expand All @@ -91,7 +96,6 @@
android:name="androidx.startup.InitializationProvider"
android:authorities="${applicationId}.androidx-startup"
tools:node="remove" />

</application>

</manifest>
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,9 @@ package app.priceguard.data.datastore

interface TokenDataSource {
suspend fun saveTokens(accessToken: String, refreshToken: String)
suspend fun saveEmailVerified(isVerified: Boolean)
suspend fun getAccessToken(): String?
suspend fun getRefreshToken(): String?
suspend fun getIsEmailVerified(): Boolean?
suspend fun clearTokens()
}
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ package app.priceguard.data.datastore

import androidx.datastore.core.DataStore
import androidx.datastore.preferences.core.Preferences
import androidx.datastore.preferences.core.booleanPreferencesKey
import androidx.datastore.preferences.core.edit
import androidx.datastore.preferences.core.stringPreferencesKey
import app.priceguard.di.TokensQualifier
Expand All @@ -15,6 +16,7 @@ class TokenDataSourceImpl @Inject constructor(

private val accessTokenKey = stringPreferencesKey("access_token")
private val refreshTokenKey = stringPreferencesKey("refresh_token")
private val isEmailVerifiedKey = booleanPreferencesKey("is_email_verified")

override suspend fun saveTokens(accessToken: String, refreshToken: String) {
dataStore.edit { preferences ->
Expand All @@ -23,6 +25,12 @@ class TokenDataSourceImpl @Inject constructor(
}
}

override suspend fun saveEmailVerified(isVerified: Boolean) {
dataStore.edit { preferences ->
preferences[isEmailVerifiedKey] = isVerified
}
}

override suspend fun getAccessToken(): String? {
return dataStore.data.map { preferences ->
preferences[accessTokenKey]
Expand All @@ -35,6 +43,12 @@ class TokenDataSourceImpl @Inject constructor(
}.first()
}

override suspend fun getIsEmailVerified(): Boolean? {
return dataStore.data.map { preferences ->
preferences[isEmailVerifiedKey]
}.first()
}

override suspend fun clearTokens() {
dataStore.edit { preferences ->
preferences.clear()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import kotlinx.serialization.Serializable

@Serializable
data class ProductAddRequest(
val shop: String,
val productCode: String,
val targetPrice: Int
)
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
package app.priceguard.data.dto.deleteaccount

import kotlinx.serialization.Serializable

@Serializable
data class DeleteAccountRequest(
val email: String,
val password: String
)
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
package app.priceguard.data.dto.deleteaccount

import kotlinx.serialization.Serializable

@Serializable
data class DeleteAccountResponse(
val statusCode: Int,
val message: String
)
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
package app.priceguard.data.dto.isverified

import kotlinx.serialization.Serializable

@Serializable
data class IsEmailVerifiedResponse(
val statusCode: Int,
val message: String,
val verified: Boolean? = null
)
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
package app.priceguard.data.dto.password

import kotlinx.serialization.Serializable

@Serializable
data class ResetPasswordRequest(
val password: String
)
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
package app.priceguard.data.dto.password

import kotlinx.serialization.Serializable

@Serializable
data class ResetPasswordResponse(
val statusCode: Int,
val message: String
)
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import kotlinx.serialization.Serializable

@Serializable
data class PricePatchRequest(
val shop: String,
val productCode: String,
val targetPrice: Int
)
Original file line number Diff line number Diff line change
Expand Up @@ -6,5 +6,6 @@ import kotlinx.serialization.Serializable
data class SignupRequest(
val email: String,
val userName: String,
val verificationCode: String,
val password: String
)
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
package app.priceguard.data.dto.verifyemail

import kotlinx.serialization.Serializable

@Serializable
data class RequestVerificationCodeRequest(
val email: String
)
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
package app.priceguard.data.dto.verifyemail

import kotlinx.serialization.Serializable

@Serializable
data class RequestVerificationCodeResponse(
val statusCode: Int,
val message: String
)
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
package app.priceguard.data.dto.verifyemail

import kotlinx.serialization.Serializable

@Serializable
data class VerifyEmailRequest(
val email: String,
val verificationCode: String
)
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
package app.priceguard.data.dto.verifyemail

import kotlinx.serialization.Serializable

@Serializable
data class VerifyEmailResponse(
val statusCode: Int,
val message: String,
val verifyToken: String? = null
)
Original file line number Diff line number Diff line change
@@ -1,14 +1,23 @@
package app.priceguard.data.network

import app.priceguard.data.dto.renew.RenewResponse
import app.priceguard.data.dto.verifyemail.VerifyEmailRequest
import app.priceguard.data.dto.verifyemail.VerifyEmailResponse
import retrofit2.Response
import retrofit2.http.Body
import retrofit2.http.GET
import retrofit2.http.Header
import retrofit2.http.POST

interface AuthAPI {

@GET("refreshJWT")
suspend fun renewTokens(
@Header("Authorization") authToken: String
): Response<RenewResponse>

@POST("verify/email")
suspend fun verifyEmail(
@Body verifyEmailRequest: VerifyEmailRequest
): Response<VerifyEmailResponse>
}
Loading
Loading