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

QA 회원가입 변경사항 적용 #120

Merged
merged 175 commits into from
Feb 10, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
175 commits
Select commit Hold shift + click to select a range
75e4086
feat: TOP-59 heart -> like 이름 변경
kwangddang Jun 11, 2023
f1add81
feat: TOP-59 LikeFragment xml 파일 작성
kwangddang Jun 12, 2023
02ef667
feat: TOP-59 item_like xml 작성
kwangddang Jun 12, 2023
700f0bd
feat: TOP-59 item_category.xml 작성
kwangddang Jun 12, 2023
e375245
feat: TOP-59 item_like.xml에 new 표시 추가
kwangddang Jun 12, 2023
c86cedf
feat: TOP-59 RecyclerView를 위해 LikeAdapter 정의
kwangddang Jun 12, 2023
37584f3
feat: TOP-59 RecyclerView new를 표시하기 위해 payload 적용
kwangddang Jun 12, 2023
e65e954
feat: TOP-59 deleteLike 구현
kwangddang Jun 12, 2023
2ac8693
feat: TOP-59 Category와 LikeModel을 한번에 받을 수 있도록 HashMap 정의 후 로직 구현
kwangddang Jun 12, 2023
6b1d35d
feat: TOP-59 delete할 때 Category 순서가 유지되도록 LinkedHashMap으로 변경
kwangddang Jun 12, 2023
ec05d18
feat: TOP-59 LikeDetailFragment 임시 디자인
kwangddang Jun 13, 2023
d562424
feat: TOP-59 Like -> LikeDetail 데이터 전달 구현
kwangddang Jun 13, 2023
7784418
feat: TOP-59 BottomSheet 최대 높이, 최소 높이, 투명 설정
kwangddang Jun 14, 2023
b6878e1
feat: TOP-59 X 버튼 dismiss 구현
kwangddang Jun 14, 2023
d81ef58
feat: TOP-59 groupchip, image 로딩 구현
kwangddang Jun 14, 2023
75e827b
feat: TOP-59 LikeDetailFragment Button 추가
kwangddang Jun 14, 2023
a4b1248
feat: TOP-59 dialog resize
kwangddang Jun 14, 2023
2ec9fc7
feat: TOP-59 BottomSheet shadow제거, radius 적용
kwangddang Jun 14, 2023
2193780
feat: TOP-59 좋아요 없을 때 화면 구현
kwangddang Jun 14, 2023
8882510
feat: TOP-59 BottomSheet에서 '다음에' 버튼 클릭 리스너 구현
kwangddang Jun 14, 2023
1e8f20c
feat: TOP-59 ReportDialog 구현
kwangddang Jun 18, 2023
ba0e37b
feat: TOP-59 AlertDialog core-ui로 변경
kwangddang Jun 18, 2023
b745281
feat: TOP-59 Block, Report Dialog 로직 작성
kwangddang Jun 18, 2023
f239ae5
feat: TOP-59 차단하기 애니메이션 적용
kwangddang Jun 18, 2023
11bd78c
refactor: TOP-59 코드 정렬
kwangddang Jun 18, 2023
60f2e0f
refactor: TOP-59 next -> nextChance로 네이밍 변경
kwangddang Jun 18, 2023
619ab63
refactor: TOP-59 AlertDialog 모두 core-ui에 정의된 메소드를 통해 생성하도록 변경
kwangddang Jun 18, 2023
ba4ac79
refactor: TOP-59 LikeDetailFragment 정적 팩토리 메소드 패턴으로 변경
kwangddang Jun 28, 2023
8072b3e
refactor: TOP-59 dismiss() 모두 viewModel에서 sideEffect를 방출하도록 변경
kwangddang Jun 29, 2023
4394366
refactor: TOP-59 finishBottomSheet() -> blockUser() 로 네이밍 변경
kwangddang Jun 29, 2023
5fcb4d0
refactor: TOP-59 의미 없는 타입 선언 제거
kwangddang Jun 29, 2023
a64ea28
refactor: TOP-59 ViewHolder 팩토리 메소드 패턴으로 변경
kwangddang Jun 29, 2023
c3f0e21
refactor: TOP-59 viewModelStateHandle 사용
kwangddang Jul 3, 2023
fe401e3
Merge branch 'develop' into feature/TOP-59_like_ui
kwangddang Jul 3, 2023
6101ec0
refactor: TOP-59 ktLint check
kwangddang Jul 3, 2023
ea4c374
fix:TOP-67 회원가입 이후 Splash Icon이 보였다가 메인화면으로 이동되는 문제 수정
cwj-c Sep 13, 2023
c8bd55d
fox:TOP-67 Topic Select Idx값 계신이 잘못되어 있는 문제 수정
cwj-c Sep 13, 2023
36d895f
design:TOP-69 PhoneAuth Custom Toast에 이미지 대신 Lottie 애니메이션 적용
cwj-c Sep 13, 2023
0430984
feat:TOP-78 유저 좋아요 API 적용
cwj-c Sep 14, 2023
5f91dae
feat:TOP-72 ShakingCard 구현
cwj-c Sep 17, 2023
176752e
feat:TOP-72 ToHotState에 shakingCard 속성 추가
cwj-c Sep 17, 2023
b8c18fe
feat:TOP-72 ToHot View계층에 ShakingCard 적용
cwj-c Sep 17, 2023
840a412
refactor:TOP-72 ShakingCard의 ShakingValue를 매개변수로 이동시켜 외부에서 변경 가능하도록 수정
cwj-c Sep 17, 2023
235472d
fix:TOP-69 회원가입 성공 lottie 파일이 잘못된 모듈에 위치했던 문제 수정
cwj-c Sep 18, 2023
2fc0e7d
Fix:TOP-83 android_ci에 secrets key를 불러오는 과정에서 '$'가 누락된 문제 수정
cwj-c Sep 18, 2023
07ce692
Fix:TOP-83 android_cd에 secrets key를 불러오는 과정에서 '$'가 누락된 문제 수정
cwj-c Sep 18, 2023
ba3b426
Fix:TOP-83 문제 수정 테스트를 위해 CD발동 조건에 83번 브랜치 추가
cwj-c Sep 18, 2023
f2458d7
fix:TOP-83 cd 발동 조건 복원
cwj-c Sep 18, 2023
c57c747
Merge pull request #107 from THT-Team/fix/TOP-83_patch_location_fail
cwj-c Sep 18, 2023
a814693
fix: TOP-85 위치 다이얼로그 앱 죽는 현상 수정
kwangddang Sep 18, 2023
ec2a94b
Merge pull request #103 from THT-Team/feature/TOP-72_tohot_card_time_…
cwj-c Sep 29, 2023
855353a
refactor: TOP-85 ci/cd 수정
kwangddang Sep 29, 2023
1c8c30a
Merge pull request #108 from THT-Team/fix/TOP-85_location_dialog
kwangddang Sep 29, 2023
e2f1b20
Merge pull request #104 from THT-Team/design/TOP-69_phone_auth_design
cwj-c Sep 30, 2023
ec00a33
remove:TOP-67 remove debug log
cwj-c Oct 2, 2023
486c4f1
Merge pull request #101 from THT-Team/fix/TOP-67_signup_after_splash_…
cwj-c Oct 2, 2023
511fa99
feat:TOP-89 싫어요 API 적용
cwj-c Nov 26, 2023
ccb0d47
feat:TOP-66 ThtAccessTokenDao의 fetchThtToken 메소드가 Token값만이 아닌 Expired…
cwj-c Nov 26, 2023
48eeed3
feat:TOP-65 CheckThtAccessTokenExpiredUseCase 구현
cwj-c Nov 26, 2023
e7b0a85
feat:TOP-65 CheckAndRefreshThtAccessTokenUseCase 구현
cwj-c Nov 26, 2023
2c5a14a
feat:TOP-65 Splash에서 CheckAndRefreshThtAccessTokenUseCase 호출
cwj-c Nov 26, 2023
e80bab6
[TOP-66] TokenRefreshauthenticator 로직 수정
cwj-c Nov 26, 2023
c81a6c7
feat:TOP-66 checkAndRefreshThtAccessTokenUseCase 기본 retryCount를 0으로 변…
cwj-c Nov 26, 2023
9374391
feat:TOP-66 ThtResponseMapper의 toUnwrap() 메소드 수정
cwj-c Nov 26, 2023
3b07373
feat:TOP-66 TokenRefreshAuthenticator retry count 1로 변경
cwj-c Nov 26, 2023
261346f
feat:TOP-66 ToHotViewModel에서 TokenException이 발생한 경우 로그아웃 유도 표시
cwj-c Nov 26, 2023
da9318a
feat:TOP-87 core:navigation 모듈 추가
cwj-c Nov 26, 2023
5b35358
feat:TOP-87 모듈간 이동을 core:navigation 모듈을 통해 진행하도록 변경
cwj-c Nov 26, 2023
36415a6
fix:TOP-88 유효하지 않은 Emoji코드를 파싱 시도하면 앱이 Crash나는 문제 수정
cwj-c Nov 26, 2023
07265e3
chore:TOP-66 lint check
cwj-c Nov 26, 2023
e1609e1
chore:TOP-88 lint check
cwj-c Nov 26, 2023
76ba6a7
Merge pull request #109 from THT-Team/feature/TOP-78_tohot_heart_disl…
cwj-c Dec 2, 2023
b818624
Merge pull request #112 from THT-Team/fix/TOP-88_invaild_emoji_code
cwj-c Dec 2, 2023
1deb3d3
Merge pull request #111 from THT-Team/feature/TOP-87_navigation_module
cwj-c Dec 2, 2023
33222dc
Merge branch 'develop' into feature/TOP-66_access_token_refresh
cwj-c Dec 2, 2023
c05e2da
chore:TOP-66 lint check
cwj-c Dec 2, 2023
5626118
Merge pull request #110 from THT-Team/feature/TOP-66_access_token_ref…
cwj-c Dec 2, 2023
6759c20
feat:TOP-90 RefreshThtAccessToken API 연동
cwj-c Dec 2, 2023
c205a22
feat:TOP-90 네이밍, 역할이 헷갈리는 Token관련 UseCase들 책임 분리
cwj-c Dec 2, 2023
0e02104
feat:TOp-90 Splash, PhoneVerify에 Navigation이 잘못 지정되어있는 문제 수정
cwj-c Dec 2, 2023
fb71958
feat:TOP-90 ToHotFragment에 Logout기능 구현
cwj-c Dec 2, 2023
5c51c21
chore:TOP-90 lint check
cwj-c Dec 2, 2023
049bda4
Merge pull request #113 from THT-Team/feature/TOP-90_refresh_token
cwj-c Dec 28, 2023
bbd5ae5
Merge branch 'develop' into feature/TOP-59_like_ui
cwj-c Jan 12, 2024
4a03da9
Merge pull request #82 from THT-Team/feature/TOP-59_like_ui
cwj-c Jan 12, 2024
3fd425b
fix:TOP-88 이모지 코드가 U+로 시작하는 경우 처리
cwj-c Jan 12, 2024
8057793
Merge pull request #114 from THT-Team/fix/TOP-88_invaild_emoji_code
cwj-c Jan 12, 2024
bb8d5dd
feat:TOP-90 ThtHeaderInterceptor 구현
cwj-c Jan 12, 2024
cde965f
chore:TOP-90 lint check
cwj-c Jan 13, 2024
d567cfe
Merge pull request #115 from THT-Team/feature/TOP-90_refresh_token
cwj-c Jan 13, 2024
532f96d
feat:TOP-91 LogoutUseCase 구현
cwj-c Jan 21, 2024
67f7012
feat:TOP-91 회원탈퇴 UseCase 구현
cwj-c Jan 21, 2024
8d111a7
feat:TOP-91 ThtText의 기본 폰트를 pretendard로 고정
cwj-c Jan 21, 2024
d4e03ea
feat:TOP-91 MyPage 구현
cwj-c Jan 21, 2024
8692ee0
rename:TOP-91 MyFragment의 네이밍을 MyPageFragment로 변경
cwj-c Jan 21, 2024
507e49e
feat:TOP-91 ThtToolbar 구현, 적용
cwj-c Jan 21, 2024
112b141
feat:TOP-91 ThtToolbar에 뒤로가기 버튼 적용
cwj-c Jan 21, 2024
f4ce730
feat:TOP-91 SettingScreen 토대 구현
cwj-c Jan 21, 2024
d710c3f
feat:TOP-91 SettingRowItem 컴포저블 구현
cwj-c Jan 21, 2024
89d9ab4
feat:TOP-91 SettingScreen에 계정관리 SettingItem 추가
cwj-c Jan 21, 2024
c05c7bd
feat:TOP-91 SettingRowItem click ripple 효과 잘못된 부분 수정
cwj-c Jan 21, 2024
aa793c5
feat:TOP-91 SettingScreen Preview 작성
cwj-c Jan 21, 2024
9dd271e
feat:TOP-91 feature:setting 모듈에 hilt 의존성 추가
cwj-c Jan 21, 2024
2418a9a
feat:TOP-91 LogoutUseCase, UserDisActiveUseCase DI코드 작성
cwj-c Jan 21, 2024
3311e55
feat:TOP-91 로그아웃, 회원탈퇴 기능 구현
cwj-c Jan 21, 2024
a4eddc1
feat:TOP-91 UserDisActive Api에 path 적용
cwj-c Jan 21, 2024
014a8c2
Merge pull request #116 from THT-Team/feature/TOP-91_logout_disactive
cwj-c Jan 21, 2024
45a619a
feat:TOP-91 회원탈퇴 Api에 AccessToken 적용
cwj-c Jan 21, 2024
0062c8c
chore:TOP-91 lint check
cwj-c Jan 21, 2024
10cd897
Merge pull request #117 from THT-Team/feature/TOP-91_logout_disactive
cwj-c Jan 21, 2024
b6e9bf8
refactor:TOP-93 TermsDao를 TermsService로 변경
cwj-c Jan 21, 2024
c968c88
feat:TOP-93 json 데이터를 토대로 Setting화면 구현
cwj-c Jan 21, 2024
03d06ed
feat:TOP-93 계정 관리 하면에 FetchAccountManageItemsUseCase적용
cwj-c Jan 21, 2024
c3fd487
feat:TOP-93 SettingEvent 처리 코드 구현
cwj-c Jan 21, 2024
7008c7d
fix:TOP-93 ThtCircularProgress align 조절
cwj-c Jan 21, 2024
0bcd447
chore:TOP-93 lint check
cwj-c Jan 21, 2024
a96e1d8
feat:TOP-93 Sns, Phone, Email 중 보여져야 할 Item들만 보여지도록 설정
cwj-c Jan 21, 2024
ff975e1
feat:TOP-93 디버그 로그 수정
cwj-c Jan 21, 2024
bd39f3c
feat:TOP-93 SettingScreen의 Scroll에 Toolbar가 포함되지 않도록 변경
cwj-c Jan 21, 2024
3f4d292
feat:TOP-93 SettingScreen에 title 매개변수 추가
cwj-c Jan 21, 2024
8c4673d
feat:TOP-93 setting_account_manager_items 파일 수정
cwj-c Jan 21, 2024
cca3d45
feat:TOP-93 Falling Image Banner 컴포저블 구현
cwj-c Jan 21, 2024
15525b1
chore:TOP-93 lint check
cwj-c Jan 21, 2024
45cc730
chore:TOP-93 lint check
cwj-c Jan 21, 2024
7e4e914
Merge pull request #118 from THT-Team/feature/TOP-93_setting_list
cwj-c Jan 27, 2024
a2cdff2
fix:TOP-84 StringUtil에 이모지 코드 파싱 관련 주석 추가
cwj-c Dec 9, 2023
606686b
fix:TOP-84 앱 이름 변경
cwj-c Dec 9, 2023
5025698
fix:TOP-84 login_issue 문구 변경
cwj-c Dec 9, 2023
384137a
fix:TOP-84 Prelogin -> PreLogin 오타 수정
cwj-c Dec 9, 2023
6e4ebe4
feat:TOP-84 PreLoginActivity를 Compose로 변경
cwj-c Dec 9, 2023
799a75f
feat:TOP-84 PhoneAuth 화면을 Compose로 변경
cwj-c Dec 28, 2023
f8c1de0
feat:TOP-84 imePadding속성을 줘서 windowInset을 조절해서 키보드 애니메이션 구현
cwj-c Dec 28, 2023
74fcc27
feat:TOP-84 Compose Toolbar 생성, 적용
cwj-c Dec 28, 2023
ed21f0d
chore:TOP-84 lint check
cwj-c Dec 28, 2023
94481b4
fix:TOP-84 rebase conflict 해결
cwj-c Jan 27, 2024
a5dc6ef
fix:TOP-84 rebase conflict 해결
cwj-c Jan 27, 2024
1adbd90
fix: TOP-84 sign up custom toast 사이즈 조절
cwj-c Jan 27, 2024
dcbd851
design:TOP-84 회원가입 Custom Toast를 인증번호 전송 완료시가 아닌 인증번호 인증 완료시 표시되도록 변경
cwj-c Jan 27, 2024
7fe22e5
chore:TOP-84 lint check
cwj-c Jan 27, 2024
27bd521
design:TOP-84 인증번호 입력 화면 유효시간 Text위치 변경
cwj-c Jan 27, 2024
3cfca30
design:TOP-84 인증번호 입력 화면 Text FontWeight SemiBold적용
cwj-c Jan 27, 2024
5a25cc6
design:TOP-84 인증번호 입력 칸이 focus 를 잡았을 때, 앞 칸이 비어 있다면 앞 칸으로 이동
cwj-c Jan 27, 2024
d6fcd23
feat:TOP-84 인증번호 입력 화면에서 키보드 자동으로 올라오게 설정
cwj-c Jan 27, 2024
89a6441
feat:TOP-84 인증번호 검증을 디버그 모드일때는 무조건 통과하도록 설정
cwj-c Jan 27, 2024
2d0110b
design:TOP-84 텍스트가 포함된 drawable 이미지를 사용하는 버튼들에서 text를 drawable에서 제거하고…
cwj-c Jan 27, 2024
932f8b2
design:TOP-84 인증번호 입력 화면 상단 간격 76으로 조절
cwj-c Jan 27, 2024
7154ae3
design:TOP-84 이메일 입력 화면진입시 자동으로 키보드 표시(입력된 값이 있으면 x)
cwj-c Jan 27, 2024
082e64b
chore:TOP-84 디버그 로그 제거
cwj-c Jan 27, 2024
eeb755f
design:TOP-84 이메일 입력 화면 placeholder, 안내문구 string resource 변경
cwj-c Jan 27, 2024
7f971e2
fix:TOP-84 pretendardFontStyle를 rememberPretendardFontStyle로 변경
cwj-c Jan 27, 2024
ef39c43
refactor:TOP-84 ThtTextField 컴포저블 정의, PhoneAuthScreen에 적용
cwj-c Jan 27, 2024
49fb3fb
refactor:TOP-84 TextField의 clear버튼도 ThtTextField로 이동
cwj-c Jan 27, 2024
1e25eee
feat:TOP-84 ThtTextField가 placeholder가 표시중일 때도 focus가 있다면 cursor를 노출하…
cwj-c Feb 9, 2024
75e8912
feat:TOP-84 ThtTextFieldLayout 컴포즈블을 생성, PhoneAuthScreen에 적용
cwj-c Feb 9, 2024
33f4f07
feat:TOP-84 EmailActivity를 컴포즈로 전환
cwj-c Feb 9, 2024
083ebf0
chore:TOP-84 이용약관 내용 변경
cwj-c Feb 10, 2024
cb7ca1c
chore:TOP-84 tht -> 폴링으로 변경
cwj-c Feb 10, 2024
211506d
design:TOP-84 이용약관 화면 가로 간격 조절
cwj-c Feb 10, 2024
f169be1
design:TOP-84 이용약관 item 좌우 간격 조절
cwj-c Feb 10, 2024
355a0bc
feat:TOP-84 이용약관 데이터가 변경될 시 발생 가능한 버그 수정
cwj-c Feb 10, 2024
633a995
design:TOP-84 selector_btn_right_arrow 통합 이미지가 아닌 개별 이미지를 결합하도록 변경
cwj-c Feb 10, 2024
09dbcff
design:TOP-84 includeFontPadding 속성을 false로 변경해서 fontPadding을 제거
cwj-c Feb 10, 2024
7efcc06
feat:TOP-84 이전에 입력한 이메일 정보를 표시하지 않는 문제 수정
cwj-c Feb 10, 2024
936ec81
feat:TOP-84 SignupRootActivity의 navGraph의 startDestination인 NicknameF…
cwj-c Feb 10, 2024
7fedbb6
feat:TOP-84 NicknameFragment를 Compose로 변경
cwj-c Feb 10, 2024
767adda
chore:TOP-84 tht -> 폴링으로 string resource 변경
cwj-c Feb 10, 2024
27d359e
design:TOP-84 signup root의 navigation backbutton 디자인 변경
cwj-c Feb 10, 2024
ad0b45c
feat:TOP-84 selectableItemBackground 누락된 button들에 추가
cwj-c Feb 10, 2024
299d142
feat:TOP-84 최대 입력 가능한 닉네임 길이 표시
cwj-c Feb 10, 2024
4bb012b
design:TOP-84 font size 조절
cwj-c Feb 10, 2024
6157a45
feat:TOP-84 phon이 유효하지 않으면 Screen을 띄우지 않으니 keyboard up 동작도 수행하지 않도록 i…
cwj-c Feb 10, 2024
a584773
feat:TOP-84 자기소개 Fragment를 Compose로 변경
cwj-c Feb 10, 2024
00b336b
chore:TOP-84 lint check
cwj-c Feb 10, 2024
d365793
chore:TOP-84 오타 수정
cwj-c Feb 10, 2024
775f146
Merge pull request #119 from THT-Team/fix/TOP-84_signup_design_qa
cwj-c Feb 10, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
24 changes: 12 additions & 12 deletions .github/workflows/android_cd.yml
Original file line number Diff line number Diff line change
Expand Up @@ -42,10 +42,10 @@ jobs:
echo -e KAKAO_NATIVE_APP_KEY=\"$KAKAO_NATIVE_APP_KEY\" >> ./local.properties
echo -e NAVER_CLIENT_ID=\"$NAVER_CLIENT_ID\" >> ./local.properties
echo -e NAVER_CLIENT_SECRET=\"$NAVER_CLIENT_SECRET\" >> ./local.properties
echo -e REGION_CODE_SERVICE_KEY=\"REGION_CODE_SERVICE_KEY\" >> ./local.properties
echo -e APP_EMAIL_ID=\"APP_EMAIL_ID\" >> ./local.properties
echo -e APP_EMAIL_PASSWORD=\"APP_EMAIL_PASSWORD\" >> ./local.properties
echo -e CEO_EMAIL=\"CEO_EMAIL\" >> ./local.properties
echo -e REGION_CODE_SERVICE_KEY=\"$REGION_CODE_SERVICE_KEY\" >> ./local.properties
echo -e APP_EMAIL_ID=\"$APP_EMAIL_ID\" >> ./local.properties
echo -e APP_EMAIL_PASSWORD=\"$APP_EMAIL_PASSWORD\" >> ./local.properties
echo -e CEO_EMAIL=\"$CEO_EMAIL\" >> ./local.properties
cat ./local.properties
env:
KAKAO_NATIVE_APP_KEY: ${{ secrets.KAKAO_NATIVE_APP_KEY }}
Expand Down Expand Up @@ -85,10 +85,10 @@ jobs:
echo -e KAKAO_NATIVE_APP_KEY=\"$KAKAO_NATIVE_APP_KEY\" >> ./local.properties
echo -e NAVER_CLIENT_ID=\"$NAVER_CLIENT_ID\" >> ./local.properties
echo -e NAVER_CLIENT_SECRET=\"$NAVER_CLIENT_SECRET\" >> ./local.properties
echo -e REGION_CODE_SERVICE_KEY=\"REGION_CODE_SERVICE_KEY\" >> ./local.properties
echo -e APP_EMAIL_ID=\"APP_EMAIL_ID\" >> ./local.properties
echo -e APP_EMAIL_PASSWORD=\"APP_EMAIL_PASSWORD\" >> ./local.properties
echo -e CEO_EMAIL=\"CEO_EMAIL\" >> ./local.properties
echo -e REGION_CODE_SERVICE_KEY=\"$REGION_CODE_SERVICE_KEY\" >> ./local.properties
echo -e APP_EMAIL_ID=\"$APP_EMAIL_ID\" >> ./local.properties
echo -e APP_EMAIL_PASSWORD=\"$APP_EMAIL_PASSWORD\" >> ./local.properties
echo -e CEO_EMAIL=\"$CEO_EMAIL\" >> ./local.properties
cat ./local.properties
env:
KAKAO_NATIVE_APP_KEY: ${{ secrets.KAKAO_NATIVE_APP_KEY }}
Expand Down Expand Up @@ -135,10 +135,10 @@ jobs:
echo -e KAKAO_NATIVE_APP_KEY=\"$KAKAO_NATIVE_APP_KEY\" >> ./local.properties
echo -e NAVER_CLIENT_ID=\"$NAVER_CLIENT_ID\" >> ./local.properties
echo -e NAVER_CLIENT_SECRET=\"$NAVER_CLIENT_SECRET\" >> ./local.properties
echo -e REGION_CODE_SERVICE_KEY=\"REGION_CODE_SERVICE_KEY\" >> ./local.properties
echo -e APP_EMAIL_ID=\"APP_EMAIL_ID\" >> ./local.properties
echo -e APP_EMAIL_PASSWORD=\"APP_EMAIL_PASSWORD\" >> ./local.properties
echo -e CEO_EMAIL=\"CEO_EMAIL\" >> ./local.properties
echo -e REGION_CODE_SERVICE_KEY=\"$REGION_CODE_SERVICE_KEY\" >> ./local.properties
echo -e APP_EMAIL_ID=\"$APP_EMAIL_ID\" >> ./local.properties
echo -e APP_EMAIL_PASSWORD=\"$APP_EMAIL_PASSWORD\" >> ./local.properties
echo -e CEO_EMAIL=\"$CEO_EMAIL\" >> ./local.properties
cat ./local.properties
env:
KAKAO_NATIVE_APP_KEY: ${{ secrets.KAKAO_NATIVE_APP_KEY }}
Expand Down
24 changes: 12 additions & 12 deletions .github/workflows/android_ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -41,10 +41,10 @@ jobs:
echo -e KAKAO_NATIVE_APP_KEY=\"$KAKAO_NATIVE_APP_KEY\" >> ./local.properties
echo -e NAVER_CLIENT_ID=\"$NAVER_CLIENT_ID\" >> ./local.properties
echo -e NAVER_CLIENT_SECRET=\"$NAVER_CLIENT_SECRET\" >> ./local.properties
echo -e REGION_CODE_SERVICE_KEY=\"REGION_CODE_SERVICE_KEY\" >> ./local.properties
echo -e APP_EMAIL_ID=\"APP_EMAIL_ID\" >> ./local.properties
echo -e APP_EMAIL_PASSWORD=\"APP_EMAIL_PASSWORD\" >> ./local.properties
echo -e CEO_EMAIL=\"CEO_EMAIL\" >> ./local.properties
echo -e REGION_CODE_SERVICE_KEY=\"$REGION_CODE_SERVICE_KEY\" >> ./local.properties
echo -e APP_EMAIL_ID=\"$APP_EMAIL_ID\" >> ./local.properties
echo -e APP_EMAIL_PASSWORD=\"$APP_EMAIL_PASSWORD\" >> ./local.properties
echo -e CEO_EMAIL=\"$CEO_EMAIL\" >> ./local.properties
cat ./local.properties
env:
KAKAO_NATIVE_APP_KEY: ${{ secrets.KAKAO_NATIVE_APP_KEY }}
Expand Down Expand Up @@ -84,10 +84,10 @@ jobs:
echo -e KAKAO_NATIVE_APP_KEY=\"$KAKAO_NATIVE_APP_KEY\" >> ./local.properties
echo -e NAVER_CLIENT_ID=\"$NAVER_CLIENT_ID\" >> ./local.properties
echo -e NAVER_CLIENT_SECRET=\"$NAVER_CLIENT_SECRET\" >> ./local.properties
echo -e REGION_CODE_SERVICE_KEY=\"REGION_CODE_SERVICE_KEY\" >> ./local.properties
echo -e APP_EMAIL_ID=\"APP_EMAIL_ID\" >> ./local.properties
echo -e APP_EMAIL_PASSWORD=\"APP_EMAIL_PASSWORD\" >> ./local.properties
echo -e CEO_EMAIL=\"CEO_EMAIL\" >> ./local.properties
echo -e REGION_CODE_SERVICE_KEY=\"$REGION_CODE_SERVICE_KEY\" >> ./local.properties
echo -e APP_EMAIL_ID=\"$APP_EMAIL_ID\" >> ./local.properties
echo -e APP_EMAIL_PASSWORD=\"$APP_EMAIL_PASSWORD\" >> ./local.properties
echo -e CEO_EMAIL=\"$CEO_EMAIL\" >> ./local.properties
cat ./local.properties
env:
KAKAO_NATIVE_APP_KEY: ${{ secrets.KAKAO_NATIVE_APP_KEY }}
Expand Down Expand Up @@ -134,10 +134,10 @@ jobs:
echo -e KAKAO_NATIVE_APP_KEY=\"$KAKAO_NATIVE_APP_KEY\" >> ./local.properties
echo -e NAVER_CLIENT_ID=\"$NAVER_CLIENT_ID\" >> ./local.properties
echo -e NAVER_CLIENT_SECRET=\"$NAVER_CLIENT_SECRET\" >> ./local.properties
echo -e REGION_CODE_SERVICE_KEY=\"REGION_CODE_SERVICE_KEY\" >> ./local.properties
echo -e APP_EMAIL_ID=\"APP_EMAIL_ID\" >> ./local.properties
echo -e APP_EMAIL_PASSWORD=\"APP_EMAIL_PASSWORD\" >> ./local.properties
echo -e CEO_EMAIL=\"CEO_EMAIL\" >> ./local.properties
echo -e REGION_CODE_SERVICE_KEY=\"$REGION_CODE_SERVICE_KEY\" >> ./local.properties
echo -e APP_EMAIL_ID=\"$APP_EMAIL_ID\" >> ./local.properties
echo -e APP_EMAIL_PASSWORD=\"$APP_EMAIL_PASSWORD\" >> ./local.properties
echo -e CEO_EMAIL=\"$CEO_EMAIL\" >> ./local.properties
cat ./local.properties
env:
KAKAO_NATIVE_APP_KEY: ${{ secrets.KAKAO_NATIVE_APP_KEY }}
Expand Down
3 changes: 2 additions & 1 deletion app/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -53,12 +53,13 @@ android {
}

dependencies {
implementation(project(":core:navigation"))
implementation(project(":core:ui"))
implementation(project(":domain"))
implementation(project(":data"))

implementation(project(":feature:chat"))
implementation(project(":feature:heart"))
implementation(project(":feature:like"))
implementation(project(":feature:setting"))
implementation(project(":feature:signin"))
implementation(project(":feature:tohot"))
Expand Down
22 changes: 15 additions & 7 deletions app/src/main/java/com/tht/tht/HomeActivity.kt
Original file line number Diff line number Diff line change
Expand Up @@ -12,14 +12,16 @@ import androidx.lifecycle.repeatOnLifecycle
import com.tht.tht.databinding.ActivityHomeBinding
import dagger.hilt.android.AndroidEntryPoint
import kotlinx.coroutines.launch
import tht.core.navigation.ToHotNavigation
import tht.core.ui.base.BaseActivity
import tht.core.ui.base.FragmentNavigator
import tht.core.ui.delegate.viewBinding
import tht.core.ui.extension.hideSoftInput
import tht.feature.chat.ChatFragment
import tht.feature.heart.HeartFragment
import tht.feature.setting.MyFragment
import tht.feature.like.like.LikeFragment
import tht.feature.setting.MyPageFragment
import tht.feature.tohot.tohot.fragment.ToHotFragment
import javax.inject.Inject

@SuppressLint("CommitTransaction")
@AndroidEntryPoint
Expand All @@ -28,6 +30,9 @@ class HomeActivity : BaseActivity<HomeViewModel, ActivityHomeBinding>(), Fragmen
override val vm by viewModels<HomeViewModel>()
override val binding by viewBinding(ActivityHomeBinding::inflate)

@Inject
lateinit var toHotNavigation: ToHotNavigation

override fun initViews() {
initNavigationBar()
}
Expand All @@ -42,19 +47,22 @@ class HomeActivity : BaseActivity<HomeViewModel, ActivityHomeBinding>(), Fragmen
binding.bnvHome.setOnItemSelectedListener { item ->
when (item.itemId) {
R.id.menu_tohot -> {
showFragment(ToHotFragment.TAG)
toHotNavigation.navigateToHot(
supportFragmentManager,
R.id.fragment_container
)
true
}
R.id.menu_heart -> {
showFragment(HeartFragment.TAG)
showFragment(LikeFragment.TAG)
true
}
R.id.menu_chat -> {
showFragment(ChatFragment.TAG)
true
}
R.id.menu_my -> {
showFragment(MyFragment.TAG)
showFragment(MyPageFragment.TAG)
true
}
else -> false
Expand Down Expand Up @@ -115,9 +123,9 @@ class HomeActivity : BaseActivity<HomeViewModel, ActivityHomeBinding>(), Fragmen
private fun getFragmentByTag(tag: String): Fragment? {
return when (tag) {
ToHotFragment.TAG -> ToHotFragment.newInstance()
HeartFragment.TAG -> HeartFragment.newInstance()
LikeFragment.TAG -> LikeFragment.newInstance()
ChatFragment.TAG -> ChatFragment.newInstance()
MyFragment.TAG -> MyFragment.newInstance()
MyPageFragment.TAG -> MyPageFragment.newInstance()
else -> null
}
}
Expand Down
49 changes: 26 additions & 23 deletions app/src/main/java/com/tht/tht/SplashActivity.kt
Original file line number Diff line number Diff line change
Expand Up @@ -3,17 +3,18 @@ package com.tht.tht
import android.animation.Animator
import android.annotation.SuppressLint
import android.os.Bundle
import android.util.Log
import androidx.activity.result.contract.ActivityResultContracts
import androidx.activity.viewModels
import androidx.appcompat.app.AppCompatActivity
import androidx.core.splashscreen.SplashScreen.Companion.installSplashScreen
import androidx.core.view.isVisible
import androidx.lifecycle.lifecycleScope
import com.tht.tht.databinding.ActivitySplashBinding
import dagger.hilt.android.AndroidEntryPoint
import kotlinx.coroutines.launch
import tht.core.navigation.HomeNavigation
import tht.core.navigation.SignupNavigation
import tht.core.ui.delegate.viewBinding
import tht.feature.signin.prelogin.PreloginActivity
import javax.inject.Inject

@SuppressLint("CustomSplashScreen")
@AndroidEntryPoint
Expand All @@ -22,6 +23,12 @@ class SplashActivity : AppCompatActivity() {
private val viewModel: SplashViewModel by viewModels()
private val binding: ActivitySplashBinding by viewBinding(ActivitySplashBinding::inflate)

@Inject
lateinit var signupNavigation: SignupNavigation

@Inject
lateinit var homeNavigation: HomeNavigation

override fun onCreate(savedInstanceState: Bundle?) {
installSplashScreen()
super.onCreate(savedInstanceState)
Expand All @@ -46,28 +53,24 @@ class SplashActivity : AppCompatActivity() {
}

private fun observeViewModel() {
val signupResult = registerForActivityResult(ActivityResultContracts.StartActivityForResult()) {
Log.d("TAG", "signupResult => $it")
when (it.resultCode) {
RESULT_OK -> viewModel.signupSuccessEvent()
else -> viewModel.signupCancelEvent()
}
}

lifecycleScope.launch {
viewModel.sideEffect.collect {
when (it) {
is SplashSideEffect.Signup -> {
signupResult.launch(PreloginActivity.getIntent(this@SplashActivity))
}

is SplashSideEffect.Home -> {
startActivity(HomeActivity.newIntent(this@SplashActivity))
finish()
}
launch {
viewModel.loading.collect {
binding.progress.isVisible = it
}
}
launch {
viewModel.sideEffect.collect {
when (it) {
is SplashSideEffect.Signup -> {
signupNavigation.navigatePreLogin(this@SplashActivity)
finish()
}

is SplashSideEffect.Cancel -> {
finish()
is SplashSideEffect.Home -> {
homeNavigation.navigateHome(this@SplashActivity)
finish()
}
}
}
}
Expand Down
33 changes: 18 additions & 15 deletions app/src/main/java/com/tht/tht/SplashViewModel.kt
Original file line number Diff line number Diff line change
Expand Up @@ -2,50 +2,53 @@ package com.tht.tht

import androidx.lifecycle.ViewModel
import androidx.lifecycle.viewModelScope
import com.tht.tht.domain.token.token.FetchThtTokenUseCase
import com.tht.tht.domain.token.token.CheckAndRefreshThtAccessTokenUseCase
import dagger.hilt.android.lifecycle.HiltViewModel
import kotlinx.coroutines.delay
import kotlinx.coroutines.flow.MutableSharedFlow
import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.asSharedFlow
import kotlinx.coroutines.flow.asStateFlow
import kotlinx.coroutines.launch
import javax.inject.Inject

@HiltViewModel
class SplashViewModel @Inject constructor(
private val fetchThtTokenUseCase: FetchThtTokenUseCase
private val checkAndRefreshThtAccessTokenUseCase: CheckAndRefreshThtAccessTokenUseCase
) : ViewModel() {

private val _sideEffect = MutableSharedFlow<SplashSideEffect>()
val sideEffect = _sideEffect.asSharedFlow()

fun splashFinishEvent() {
checkAutoLogin()
}
private val _loading = MutableStateFlow(false)
val loading = _loading.asStateFlow()

fun signupSuccessEvent() {
fun splashFinishEvent() {
checkAutoLogin()
}

private fun checkAutoLogin() {
viewModelScope.launch {
fetchThtTokenUseCase()
launch {
delay(500)
_loading.value = true
}
checkAndRefreshThtAccessTokenUseCase()
.onSuccess {
_sideEffect.emit(SplashSideEffect.Home)
when (it) {
true -> _sideEffect.emit(SplashSideEffect.Home)
else -> _sideEffect.emit(SplashSideEffect.Signup)
}
}.onFailure {
it.printStackTrace()
_sideEffect.emit(SplashSideEffect.Signup)
}
}
}

fun signupCancelEvent() {
viewModelScope.launch {
_sideEffect.emit(SplashSideEffect.Cancel)
_loading.value = false
}
}
}

sealed class SplashSideEffect {
object Signup : SplashSideEffect()
object Home : SplashSideEffect()
object Cancel : SplashSideEffect()
}
6 changes: 3 additions & 3 deletions app/src/main/java/com/tht/tht/ThtFcmService.kt
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ package com.tht.tht

import android.util.Log
import com.google.firebase.messaging.FirebaseMessagingService
import com.tht.tht.domain.login.usecase.RefreshFcmTokenLoginUseCase
import com.tht.tht.domain.token.token.RefreshFcmTokenUseCase
import dagger.hilt.android.AndroidEntryPoint
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.SupervisorJob
Expand All @@ -14,7 +14,7 @@ import javax.inject.Inject
class ThtFcmService : FirebaseMessagingService() {

@Inject
lateinit var refreshFcmTokenLoginUseCase: RefreshFcmTokenLoginUseCase
lateinit var refreshFcmTokenUseCase: RefreshFcmTokenUseCase

private val job = SupervisorJob()
private val serviceScope = CoroutineScope(job)
Expand All @@ -23,7 +23,7 @@ class ThtFcmService : FirebaseMessagingService() {
super.onNewToken(token)
Log.d("TAG", "onNewToken => $token")
serviceScope.launch {
refreshFcmTokenLoginUseCase(token)
refreshFcmTokenUseCase(token)
.onFailure {
it.printStackTrace()
}
Expand Down
13 changes: 13 additions & 0 deletions app/src/main/java/com/tht/tht/navigation/HomeNavigationImpl.kt
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
package com.tht.tht.navigation

import android.content.Context
import com.tht.tht.HomeActivity
import tht.core.navigation.HomeNavigation
import javax.inject.Inject

class HomeNavigationImpl @Inject constructor() : HomeNavigation {

override fun navigateHome(context: Context) {
context.startActivity(HomeActivity.newIntent(context))
}
}
25 changes: 25 additions & 0 deletions app/src/main/java/com/tht/tht/navigation/NavigationModule.kt
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
package com.tht.tht.navigation

import dagger.Binds
import dagger.Module
import dagger.hilt.InstallIn
import dagger.hilt.components.SingletonComponent
import tht.core.navigation.HomeNavigation
import tht.core.navigation.SignupNavigation
import tht.core.navigation.ToHotNavigation
import tht.feature.signin.navigation.SignupNavigationImpl
import tht.feature.tohot.navigation.ToHotNavigationImpl

@Module
@InstallIn(SingletonComponent::class)
abstract class NavigationModule {

@Binds
abstract fun bindHomeNavigation(impl: HomeNavigationImpl): HomeNavigation

@Binds
abstract fun bindSignupNavigation(impl: SignupNavigationImpl): SignupNavigation

@Binds
abstract fun bindToHotNavigation(impl: ToHotNavigationImpl): ToHotNavigation
}
Loading
Loading