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

release v1.1.0 #265

Merged
merged 239 commits into from
Sep 29, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
239 commits
Select commit Hold shift + click to select a range
2355b48
[design] 다크모드 일부 색 지정
wjdtkdgns777 May 27, 2024
166610e
[feat] 웨이팅 화면 기본 구조 작성
wjdtkdgns777 May 27, 2024
2dd05bf
[design] 웨이팅 화면 기본 ui 작성
wjdtkdgns777 May 27, 2024
1a46ca1
[feat] 웨이팅 화면 UI 작성
wjdtkdgns777 May 28, 2024
9c0b39e
[chore] 바텀탭에 웨이팅 추가
wjdtkdgns777 May 28, 2024
fd2d6e4
Merge remote-tracking branch 'origin/main' into feat/waiting-ui
wjdtkdgns777 May 28, 2024
a074c3e
[feat] 부스 상세화면 웨이팅 관련 다이얼로그 작성
wjdtkdgns777 May 28, 2024
5d6a5f7
[chore] style check success
wjdtkdgns777 Jun 1, 2024
18709f2
[chore] 리뷰 내역 반영
wjdtkdgns777 Jun 2, 2024
9364491
Merge pull request #207 from Project-Unifest/feat/waiting-ui
wjdtkdgns777 Jun 2, 2024
9469497
[style] 앱에서 사용하는 색상 변수화
easyhooon Jun 6, 2024
4ffc4e9
[refactor] Kotlin 2.0 migration
medi-jihun-lee Jul 5, 2024
9189205
[refactor] kotlinOption deprecated -> compilerOptions 으로 교체
medi-jihun-lee Jul 5, 2024
c1635a4
[refactor] 코드 리뷰 반영 - 1
medi-jihun-lee Jul 8, 2024
0bcbfcf
[style] 다크 모드 적용 - 1
easyhooon Jun 6, 2024
c4d62d6
[style] 라이트모드, 다크모드에서 사용되는 색상 정의
easyhooon Jul 11, 2024
48f28b5
[style] 다크 모드 적용 - 2
easyhooon Jul 14, 2024
c4dfbf8
[style] NaverMap 다크모드 활성화
easyhooon Jul 14, 2024
61e19e3
[chore] style check success
easyhooon Jul 14, 2024
c1c4fd0
Merge branch 'develop' into feat/darkmode
easyhooon Jul 14, 2024
2a126d0
Merge branch 'develop' into feat/darkmode
easyhooon Jul 14, 2024
0db731a
[style] 웨이팅 화면 다크 모드 적용
easyhooon Jul 14, 2024
be4ba9c
[style] 웨이팅 다이얼로그 다크모드 적용
easyhooon Jul 14, 2024
2a3c5bb
[chore] TODO 추가
easyhooon Jul 14, 2024
67bd83d
[refactor] 코드 리뷰 반영 - 2
easyhooon Jul 15, 2024
85e9d37
Merge remote-tracking branch 'origin/refactor/kotlin-2.0-migration' i…
easyhooon Jul 15, 2024
5e28035
[fix] coroutine 버전 downgrade
medi-jihun-lee Jul 17, 2024
ea23d20
[design] 다크 모드 추가 적용
wjdtkdgns777 Jul 26, 2024
3bcedaa
[chore] code style check success
wjdtkdgns777 Jul 26, 2024
a011060
[refactor] compose-calendar library version update
easyhooon Jul 30, 2024
ccb4a15
[chore] 필요 없는 플러그인 의존성 제거, 라이브러리 최신화
easyhooon Jul 30, 2024
aabac54
[fix] 바텀시트 content UnifestTheme 이 적용되지 않는 문제 해결
easyhooon Jul 30, 2024
0a6478b
[style] TextField cursor 색상 지정
easyhooon Jul 30, 2024
9c8da22
Merge pull request #208 from Project-Unifest/refactor/kotlin-2.0-migr…
easyhooon Jul 30, 2024
9817c60
[chore] Bottomsheet content UnifestTheme 으로 감싼거 원복
easyhooon Jul 30, 2024
fe0f25a
Merge pull request #209 from Project-Unifest/feat/darkmode
easyhooon Jul 30, 2024
16db8ae
Update Kotlin and KSP
renovate[bot] Jul 30, 2024
e3033ed
Update compose.extensions to v1.6.8
renovate[bot] Jul 30, 2024
f74fa6c
Update dependency com.github.skydoves:balloon-compose to v1.6.6
renovate[bot] Jul 30, 2024
a4ce4d5
[chore] 웨이팅 string 리소스 분리
wjdtkdgns777 Jun 25, 2024
8fdb10d
[design] 웨이팅화면 UI 변경사항 반영
wjdtkdgns777 Jul 31, 2024
4866bc2
Update dependency com.github.skydoves:compose-stable-marker to v1.0.5
renovate[bot] Jul 31, 2024
5a17e62
Update dependency com.github.skydoves:flexible-bottomsheet-material3 …
renovate[bot] Jul 31, 2024
6d797e2
Update dependency com.github.skydoves:landscapist-bom to v2.3.6
renovate[bot] Aug 1, 2024
eee212e
Update dependency com.google.android.gms:play-services-location to v2…
renovate[bot] Aug 1, 2024
75cff3e
Update dependency gradle to v8.9
renovate[bot] Aug 2, 2024
69415d8
Update dependency io.coil-kt:coil-compose to v2.7.0
renovate[bot] Aug 2, 2024
11eab15
Update dependency com.kizitonwose.calendar:compose to v2.6.0-beta04
renovate[bot] Aug 3, 2024
4db63f4
Update dependency com.github.skydoves:flexible-bottomsheet-material3 …
renovate[bot] Aug 4, 2024
7fadcfc
Update Kotlin and KSP
renovate[bot] Aug 6, 2024
0ad7526
Update hilt to v2.52
renovate[bot] Aug 7, 2024
ac39360
[design] 웨이팅 관련 다이얼로그 UI 추가
wjdtkdgns777 Aug 11, 2024
5501452
[feat] fcm 관련 의존성 추가
easyhooon Aug 11, 2024
557c08c
[feat] UnifestFirebaseMessagingService 클래스 추가
easyhooon Aug 11, 2024
f7b1bf2
[feat] 부스 웨이팅 기능 api 연결
wjdtkdgns777 Aug 12, 2024
b593728
[add] 아이콘 리소스 추가
wjdtkdgns777 Aug 12, 2024
37adbd8
[refactor] 웨이팅 다이얼로그 부스 상세화면에서 분리
wjdtkdgns777 Aug 13, 2024
f02f24b
[feat] 웨이팅 response 결과값을 웨이팅 확인 다이얼로그에 반영
wjdtkdgns777 Aug 13, 2024
23ccf88
[feat] 개인정보 처리 및 3자 처리방침 구현
wjdtkdgns777 Aug 13, 2024
9b83bbd
[feat] 웨이팅 지원 여부에 따라 웨이팅 버튼 활성화
wjdtkdgns777 Aug 15, 2024
bf32af0
[feat] 올바르지 않은 전화번호 입력시 토스트 메시지
wjdtkdgns777 Aug 15, 2024
d09e937
[feat] 잘못된 핀번호 입력후 검증 실패시 에러문구 출력
wjdtkdgns777 Aug 15, 2024
0b42617
[style] 다이얼로그 텍스트필드 글자색 대응
wjdtkdgns777 Aug 15, 2024
5ee0e4b
[chore] 다이얼로그에서 string 리소스 분리
wjdtkdgns777 Aug 15, 2024
67973d7
[chore] code style check success
wjdtkdgns777 Aug 15, 2024
58f8b31
[chore] 리뷰 내역 반영
wjdtkdgns777 Aug 15, 2024
ad08f63
[feat] 코드 리뷰 반영(에러 문구 애니메이션 추가)
wjdtkdgns777 Aug 15, 2024
0f38033
[refactor] ealry return 로직 변경
easyhooon Aug 15, 2024
4552981
[feat] 전화번호와 핀번호에 숫자만 입력가능하도록 제한
wjdtkdgns777 Aug 16, 2024
9d3afb4
[feat] 웨이팅 팀의 인원수 최대 100명으로 제한
wjdtkdgns777 Aug 16, 2024
35c4cda
[feat] 쓰로틀링 적용
wjdtkdgns777 Aug 16, 2024
add93a0
[refactor] checkPinValidation ealry return 추가
easyhooon Aug 17, 2024
f8cf578
Merge pull request #226 from Project-Unifest/feat/waiting-api-connection
wjdtkdgns777 Aug 17, 2024
06bef3b
Merge remote-tracking branch 'origin/develop' into feat/fcm
easyhooon Aug 17, 2024
49f6d02
[chore] LikedBoothViewModel 주석 처리된 함수 제거
easyhooon Aug 17, 2024
e453296
[add] 알림 권한 추가
easyhooon Aug 17, 2024
a340788
[add] 관심 부스 등록, 해제 API 연동
easyhooon Aug 17, 2024
dbfd1f9
[chore] 사용하지 않는 request data class 삭제
easyhooon Aug 17, 2024
682d73b
[refactor] BoothDetailScreen 내에 Component 분리
easyhooon Aug 17, 2024
43beceb
[refactor] PermissionDialog core:ui 모듈로 이동
easyhooon Aug 17, 2024
c49299a
[refactor] MapScreen 내에 Component 분리
easyhooon Aug 17, 2024
622f64c
[chore] 웨이팅화면 리소스 추가
wjdtkdgns777 Aug 17, 2024
55bb0a2
[feat] 웨이팅 탭 내 웨이팅 목록 api 연결
wjdtkdgns777 Aug 17, 2024
05fa2cd
[feat] 알림 권한 요청 및 FCM 토큰 저장 및 조회 로직 구현
easyhooon Aug 17, 2024
4ec7e92
[chore] 사용하지 않는 multi part 관련 Retrofit 모듈 제거
easyhooon Aug 17, 2024
adc84f6
[feat] 관심 부스 등록/해제 API 연동 테스트
easyhooon Aug 17, 2024
a67eafd
[fix] 확성기 관심 축제 등록/해제 API 네이밍 변경 및 위치 이동
easyhooon Aug 18, 2024
419e8e6
[feat] NotificationPermissionTextProvider 추가
easyhooon Aug 18, 2024
76a0316
[refactor] 알람 권한 요청 플로우 MapScreen 으로 이동
easyhooon Aug 18, 2024
5b19049
[chore] feature:booth 모듈내 Manifest 파일 제거, unused import 제거
easyhooon Aug 18, 2024
b8d6415
[refactor] 권한 관련 로직 기존 이벤트 처리 로직 적용
easyhooon Aug 18, 2024
22b3673
[style] Intro 모듈 system bar 다크모드 분기 적용
easyhooon Aug 18, 2024
9272b98
[feat] 관심 축제 등록/해제 API 연동
easyhooon Aug 18, 2024
34e9b1b
Update README.md
easyhooon Aug 20, 2024
176040a
Update dependency androidx.navigation:navigation-compose to v2.8.0-rc01
renovate[bot] Aug 21, 2024
8f38e7d
feat: core:navigation 모듈 추가
medi-jihun-lee Aug 22, 2024
3f5e63d
feat: feature 모듈 kotlinx-serialization 의존성 추가
medi-jihun-lee Aug 22, 2024
563ec61
refactor: type-safe navigation 적용
medi-jihun-lee Aug 22, 2024
0fa9a36
chore: booth 모듈 내 Manifest 제거
medi-jihun-lee Aug 22, 2024
07a6223
[chore] style check success
easyhooon Aug 22, 2024
cae832f
[chore] 주석 처리된 파라미터 제거
easyhooon Aug 22, 2024
42fb9ee
[chore] TODO 추가
easyhooon Aug 22, 2024
741ab4b
Merge pull request #228 from Project-Unifest/refactor/type-safe-navig…
easyhooon Aug 23, 2024
5bcd395
fix(deps): update dependency com.pinterest:ktlint to v0.51.0-final
renovate[bot] Aug 23, 2024
96abeef
[fix] 웨이팅 확인 다이얼로그 인원수 초기화 삭제
wjdtkdgns777 Aug 23, 2024
b00ff94
[design] 다이얼로그 취소버튼 다크모드 색 대응
wjdtkdgns777 Aug 23, 2024
1b55c44
[feature] 웨이팅 화면에서 취소 api연결
wjdtkdgns777 Aug 23, 2024
9ed1072
[fix] 내 웨이팅 리스트가 null 일 경우 처리
wjdtkdgns777 Aug 23, 2024
ed1a546
Merge remote-tracking branch 'origin/renovate/kotlin.ktlint.source' i…
wjdtkdgns777 Aug 23, 2024
cb2c472
[feature] 부스 상세화면 가기, 지도 화면 가기 네비게이션 연결
wjdtkdgns777 Aug 23, 2024
4c906cd
[chore] string 리소스 분리, 총 웨이팅 리스트수 구현
wjdtkdgns777 Aug 23, 2024
ce24a4b
[feat] 부스 웨이팅 관련 입력은 숫자 키패드만 허용
wjdtkdgns777 Aug 23, 2024
662cec4
[feat] 웨이팅 화면 pulltorefresh 구현
wjdtkdgns777 Aug 23, 2024
6bab86c
[fix] 관심 축제 등록 해제 API 연동 수정
easyhooon Aug 23, 2024
0fd4975
[chore] style check success
wjdtkdgns777 Aug 23, 2024
844b487
[style] ic_check svg 파일 교체
easyhooon Aug 23, 2024
df1cfe0
[feat] 관심 축제 API 성공/실패 토스트 메세지 추가
easyhooon Aug 23, 2024
9195ed4
[chore] style check success
easyhooon Aug 23, 2024
b2be8ea
[feat] 홈 화면 내에 관심 축제 추가 실패 처리 로직 변경
easyhooon Aug 23, 2024
a332da6
[refactor] 홈 화면 component 분리
easyhooon Aug 23, 2024
1fe0063
Merge remote-tracking branch 'origin/develop' into feat/fcm
easyhooon Aug 23, 2024
eb2425b
chore(deps): update android.gradle.plugin to v8.5.2
renovate[bot] Aug 23, 2024
bd7aa6e
[design] 웨이팅 번호가 1번일 경우 1번째 대신 "입장해주세요", 다크모드 색대응
wjdtkdgns777 Aug 24, 2024
8f9f61e
[feat] pull to refresh material3로 마이그레이션
wjdtkdgns777 Aug 24, 2024
d4893d1
[chore] code style check success
wjdtkdgns777 Aug 24, 2024
5517e35
Merge pull request #230 from Project-Unifest/feature/waiting-tab-conn…
wjdtkdgns777 Aug 24, 2024
4d1aaf7
Merge remote-tracking branch 'origin/develop' into feat/fcm
easyhooon Aug 24, 2024
fb54006
Merge pull request #232 from Project-Unifest/feat/fcm
easyhooon Aug 24, 2024
ccb5be3
chore(deps): update kotlin and ksp
renovate[bot] Aug 24, 2024
6f7312c
chore(deps): update dependency gradle to v8.10
renovate[bot] Aug 25, 2024
b6a923c
refactor: light, dark preview merge
medi-jihun-lee Aug 26, 2024
aa4a28c
refactor: BoothDetailScreen PreviewParameterProvider 적용
medi-jihun-lee Aug 26, 2024
088d39f
chore: detekt-config 파일 수정
medi-jihun-lee Aug 26, 2024
e644475
refactor: @PreviewParameterProvider 적용
medi-jihun-lee Aug 26, 2024
c4a9a97
Update README.md
easyhooon Aug 26, 2024
e481b15
Merge pull request #236 from Project-Unifest/refactor/preview
easyhooon Aug 26, 2024
29f6e34
fix(deps): update dependency com.android.tools:desugar_jdk_libs to v2…
renovate[bot] Aug 26, 2024
5edcdf5
fix(deps): update dependency com.google.firebase:firebase-bom to v33.2.0
renovate[bot] Aug 27, 2024
864db71
fix(deps): update dependency com.android.tools:desugar_jdk_libs to v2…
renovate[bot] Aug 28, 2024
d002710
fix(deps): update dependency org.jetbrains.kotlinx:kotlinx-serializat…
renovate[bot] Aug 29, 2024
55f8370
chore(deps): update android.gradle.plugin to v8.6.0
renovate[bot] Aug 30, 2024
5a02b61
fix(deps): update dependency com.github.skydoves:balloon-compose to v…
renovate[bot] Aug 31, 2024
fddc863
[fix] ArrowOrientationRules 적용
easyhooon Sep 1, 2024
e53b8c0
[fix] AGP version downgrade
easyhooon Sep 1, 2024
cb35496
[fix] TextField 길이 제한, singleLine 적용
easyhooon Sep 1, 2024
c78b77b
[fix] Tooltip 렌더링 지연 시간 추가
easyhooon Sep 1, 2024
231fd42
Merge pull request #249 from Project-Unifest/fix/issue
easyhooon Sep 1, 2024
3edddb4
fix(deps): update dependency com.github.skydoves:flexible-bottomsheet…
renovate[bot] Sep 1, 2024
b48bafe
chore: API 주석 추가
medi-jihun-lee Sep 6, 2024
a55ca7f
feat: 확성기 관련 API 변경 사항 반영
medi-jihun-lee Sep 6, 2024
84da928
[feat] stamp 모듈 추가
easyhooon Sep 8, 2024
1f8ea6a
[feat] 스탬프 화면 초안 작성
easyhooon Sep 9, 2024
1bd1753
[feat] zxing 라이브러리 의존성 추가
medi-jihun-lee Sep 10, 2024
cdd5d25
[feat] 글자 크기 시스템 폰트 크기 변경에 영향을 받지 않도록 설정
medi-jihun-lee Sep 11, 2024
225773c
[style] 스탬프 화면 UI 구성
medi-jihun-lee Sep 11, 2024
5c487fe
[style] 그라데이션 적용 값 수정
medi-jihun-lee Sep 11, 2024
0e45802
[feat] 스탬프 화면 화면 이동 로직 및 카메라 권한 선언
medi-jihun-lee Sep 11, 2024
eeaddb3
[style] QR 스캔 화면 UI 구성 및 사용할 클래스, 인터페이스 정의
medi-jihun-lee Sep 11, 2024
c309377
[feat] QR Scan 화면 진입시 카메라 권한 요청 플로우 추가
medi-jihun-lee Sep 11, 2024
16a558e
[chore] style check success
medi-jihun-lee Sep 11, 2024
268c806
[feat] QR 스캔 결과 콜백 처리 임시 구현
medi-jihun-lee Sep 11, 2024
4ea2088
[fix] 바텀시트 바깥 영역을 터치, 드래그 핸들을 내렸을 때, 바텀시트가 닫히는 문제를 해결
easyhooon Sep 11, 2024
3c2628c
[chore] UnifestHorizontalDiver 제거
easyhooon Sep 11, 2024
bc301c1
[style] 스탬프 부스 바텀시트 화면 UI 구성
easyhooon Sep 11, 2024
724947e
[feat] 스탬프 부스 바텀시트 화면 이동 로직 구현
easyhooon Sep 11, 2024
f263e64
Merge pull request #252 from Project-Unifest/feat/stamp
easyhooon Sep 11, 2024
6513c63
Merge remote-tracking branch 'origin/develop' into feat/fcm-notification
medi-jihun-lee Sep 12, 2024
b5f52d0
[feat] 권한 관련 로직 보완
medi-jihun-lee Sep 12, 2024
59aabe2
[feat] 권한 관련 로직 보완
medi-jihun-lee Sep 12, 2024
4080d12
[fix] 맵 화면 권한 관련 로직 보완
medi-jihun-lee Sep 12, 2024
a88c945
[chore] style check success, TODO 제거
medi-jihun-lee Sep 12, 2024
62299bf
[refactor] MapPreviewParameterProvider 추가
medi-jihun-lee Sep 12, 2024
7bad797
Merge pull request #253 from Project-Unifest/feat/fcm-notification
easyhooon Sep 12, 2024
cf1bdf7
Update android.gradle.plugin to v8.6.0
renovate[bot] Sep 12, 2024
bb6ff5b
Update Kotlin and KSP
renovate[bot] Sep 13, 2024
bc066ab
Update androidx.lifecycle to v2.8.5
renovate[bot] Sep 13, 2024
6356c1e
Update dependency androidx.activity:activity-compose to v1.9.2
renovate[bot] Sep 14, 2024
3ec644e
Update dependency androidx.navigation:navigation-compose to v2.8.0
renovate[bot] Sep 14, 2024
4a4d634
Update dependency com.android.tools:desugar_jdk_libs to v2.1.2
renovate[bot] Sep 15, 2024
7521862
[feat] 운영시간 추가
wjdtkdgns777 Sep 16, 2024
7220cd5
[feat] 부스 운영시간 관련 부분 api 추가
wjdtkdgns777 Sep 17, 2024
db4fbfb
[feat] 부스 상세화면 메뉴 남은수량 기능 구현
wjdtkdgns777 Sep 17, 2024
4c222f3
[feat] 웨이팅 부재 처리 관련 구현
wjdtkdgns777 Sep 17, 2024
ac26ba9
[feat] 메뉴 품절 서버 변경 사항 반영
wjdtkdgns777 Sep 17, 2024
02343b3
[feat] 운영시간 서버 변경사항 반영
wjdtkdgns777 Sep 17, 2024
9abd3d1
[feat] 웨이팅 최대 3회, 이미 웨이팅 건 경우 체크, 시간 파싱 서버 변경사항 반영
wjdtkdgns777 Sep 17, 2024
ae2c9e4
[feat] 카메라 위치 한경대로 변경
wjdtkdgns777 Sep 17, 2024
6a323d0
[chore] code style check
wjdtkdgns777 Sep 17, 2024
47e1285
[feat] 리뷰 내역 반영
wjdtkdgns777 Sep 18, 2024
3b7003f
[refactor] resources 각 모듈별로 분리
easyhooon Sep 18, 2024
25bfe5e
Merge pull request #260 from Project-Unifest/feat/QA
wjdtkdgns777 Sep 18, 2024
5f7285d
[feat] naver-map clustering 적용
easyhooon Sep 22, 2024
3ca2df5
[fix] png 파일 load 관련 이슈 해결
easyhooon Sep 22, 2024
43b014d
[chore] style check success
easyhooon Sep 22, 2024
8e14e28
[chore] Stamp 화면 일단 비활성화
easyhooon Sep 22, 2024
c54ba73
[fix] BottomSheet 내 아이템 핑크 색상으로 보이는 문제 해결
easyhooon Sep 22, 2024
67887af
[fix] 홈 화면 다크모드 휴먼에러 수정
easyhooon Sep 23, 2024
bc1fe21
[fix] 건국대 -> 한경대
easyhooon Sep 23, 2024
933dbcf
[fix] 웨이팅 화면 버튼 핑크빛 도는 문제 해결
easyhooon Sep 23, 2024
62caeb6
[fix] Intro 화면 스킵,
easyhooon Sep 23, 2024
928296f
[fix] 맵 화면 tooltip delay 500 -> 1000,
easyhooon Sep 23, 2024
29d835a
[chore] style check success
easyhooon Sep 23, 2024
eb29edc
[fix] 관심 축제 해제 API 호출이 안되는 문제 해결
easyhooon Sep 23, 2024
949163b
[feat] 홈 화면 색상 휴먼에러 수정
wjdtkdgns777 Sep 23, 2024
9db2479
Merge branch 'feat/clustering' of https://github.com/Project-Unifest/…
wjdtkdgns777 Sep 23, 2024
59b19a3
[feat] 앱 진입시 관심 축제에 한경대가 추가되도록 구현
easyhooon Sep 23, 2024
9e17a09
Merge remote-tracking branch 'origin/feat/clustering' into feat/clust…
easyhooon Sep 23, 2024
806e083
Merge pull request #262 from Project-Unifest/feat/clustering
easyhooon Sep 23, 2024
662cd45
[feat] Polygon 재활성화
easyhooon Sep 23, 2024
c43870e
[feat] FCM 주제 구독 관련 initializer 추가
easyhooon Sep 23, 2024
cdeb209
[fix] 하드 코딩된 festivalId 1 -> 2 로 변경
medi-jihun-lee Sep 25, 2024
16bb2a5
[feat] FCM 으로 받아온 data(boothId) 를 통한 부스 상세 화면으로 이동 로직 구성
medi-jihun-lee Sep 25, 2024
f73fcaa
[fix] 하드코딩된 festivalId 1 -> 2
easyhooon Sep 26, 2024
802a164
[fix] 웨이팅 다이얼로그 에러 문구가 짤리는 문제 해결
easyhooon Sep 26, 2024
dce2b62
[fix] 웨이팅 다이얼로그 동의 안내 문구 의도치 않게 개행되는 이슈 해결
easyhooon Sep 26, 2024
b225717
[style] festivalBottomSheet 뒤에 영역이 보이도록, dragHandle 을 잡고 내리면 닫히도록 롤백
easyhooon Sep 27, 2024
a146e90
[fix] 관심 축제 추가 버튼 주석처리, 운영시간 관련 처리
wjdtkdgns777 Sep 27, 2024
a9042fa
[chore] code style check
wjdtkdgns777 Sep 27, 2024
88fa08f
[chore] style check success
easyhooon Sep 27, 2024
1b685c8
[fix] 웨이팅 "입장해주세요"는 호출시에만 뜨도록 변경
wjdtkdgns777 Sep 27, 2024
d6fbf8b
[fix] 메뉴 관련 서버 응답값 변경 반영
wjdtkdgns777 Sep 27, 2024
1063b94
[fix] 메뉴 상태 null 처리
wjdtkdgns777 Sep 27, 2024
1865587
[fix] 노쇼나 호출시 아닌경우 "번째" 가 보이는 로직 추가
wjdtkdgns777 Sep 27, 2024
f7609cb
[chore] string 리소스 분리
wjdtkdgns777 Sep 27, 2024
f5e3967
Merge pull request #264 from Project-Unifest/fix/bug-fix-for-release
easyhooon Sep 27, 2024
f556be7
Merge pull request #263 from Project-Unifest/qa
wjdtkdgns777 Sep 27, 2024
10aefdd
[chore] app version update (1.0.7 -> 1.1.0)
easyhooon Sep 27, 2024
d8b5ab8
[fix] 난독화 관련 문제 해결
easyhooon Sep 28, 2024
cdf6df8
[fix] 메뉴 품절 문구 수정
wjdtkdgns777 Sep 28, 2024
ca4f074
[fix] 프로가드 비활성화(임시)
easyhooon Sep 28, 2024
930ef20
Merge pull request #266 from Project-Unifest/qa2
wjdtkdgns777 Sep 28, 2024
8e59e91
Merge remote-tracking branch 'origin/develop' into feat/fcm-booth
easyhooon Sep 28, 2024
c374cd9
[feat] 웨이팅 신청 API request fcmToken 추가
easyhooon Sep 29, 2024
663b5c3
[feat] 웨이팅 신청 성공시 fcm 토픽 등록
easyhooon Sep 29, 2024
5d4ee4e
[feat] 웨이팅 푸시 알림 클릭시 웨이팅 화면으로 이동하는 로직 추가
easyhooon Sep 29, 2024
dc3480f
[chore] style check success
easyhooon Sep 29, 2024
688bcf1
[chore] 난독화 재활성화
easyhooon Sep 29, 2024
2c507f6
[fix] kotlin 2.0 migration 이후 release 빌드시 발생되던, type a.a is defined m…
easyhooon Sep 29, 2024
b5b2ad6
Merge pull request #267 from Project-Unifest/feat/fcm-booth
easyhooon Sep 29, 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
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -62,3 +62,5 @@ secrets.properties
/app/release/*

/app/google-services.json

.kotlin/
5 changes: 3 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# unifest-android
[![Kotlin](https://img.shields.io/badge/Kotlin-1.9.23-blue.svg)](https://kotlinlang.org)
[![Kotlin](https://img.shields.io/badge/Kotlin-2.0.0-blue.svg)](https://kotlinlang.org)
[![Gradle](https://img.shields.io/badge/gradle-8.7-green.svg)](https://gradle.org/)
[![Android Studio](https://img.shields.io/badge/Android%20Studio-2023.2.1%20%28Iguana%29-green)](https://developer.android.com/studio)
[![minSdkVersion](https://img.shields.io/badge/minSdkVersion-26-red)](https://developer.android.com/distribute/best-practices/develop/target-sdk)
Expand All @@ -23,6 +23,7 @@
## Features

## Article
- [[Android] Type-Safe Compose Navigation 적용 - 중첩(Nested) 네비게이션 구조](https://velog.io/@mraz3068/Android-Type-Safe-Compose-Navigation-Applying-in-Nested-Navigation)
- [[Android] Github Action 를 이용하여 CD 를 적용 하는 방법](https://velog.io/@mraz3068/Apply-Android-Github-Action-CD)
- [[Android] Jetpack Compose 가로 세로 길이가 같은 반응형 다이얼로그 만들기](https://velog.io/@mraz3068/Creating-Responsive-Dialog-with-Equal-Width-and-Height-in-Jetpack-Compose)
- [[Android] Jetpack Compose 에서 Snackbar Duration 을 Custom 하는 방법](https://velog.io/@mraz3068/Android-Compose-Snackbar-Duration-Custom)
Expand All @@ -35,7 +36,7 @@

- IDE : Android Studio Iguana
- JDK : Java 17을 실행할 수 있는 JDK
- Kotlin Language : 1.9.23
- Kotlin Language : 2.0.0

### Language

Expand Down
10 changes: 9 additions & 1 deletion app/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -64,17 +64,25 @@ dependencies {
implementations(
projects.core.common,
projects.core.data,
projects.core.database,
projects.core.datastore,
projects.core.designsystem,
projects.core.model,
projects.core.navigation,
projects.core.network,
projects.core.datastore,
projects.core.ui,

projects.feature.booth,
projects.feature.festival,
projects.feature.home,
projects.feature.intro,
projects.feature.likedBooth,
projects.feature.main,
projects.feature.map,
projects.feature.menu,
projects.feature.navigator,
projects.feature.splash,
projects.feature.stamp,
projects.feature.waiting,

libs.androidx.activity.compose,
Expand Down
94 changes: 94 additions & 0 deletions app/proguard-rules.pro
Original file line number Diff line number Diff line change
Expand Up @@ -21,3 +21,97 @@
#-renamesourcefileattribute SourceFile

-keep class com.unifest.android.feature.map.model.** { *; }

-dontwarn com.unifest.android.core.common.ErrorHandlerActions
-dontwarn com.unifest.android.core.common.HandleExceptionKt
-dontwarn com.unifest.android.core.common.ObserveEventKt
-dontwarn com.unifest.android.core.common.PermissionDialogButtonType
-dontwarn com.unifest.android.core.common.UiText$DirectString
-dontwarn com.unifest.android.core.common.UiText
-dontwarn com.unifest.android.core.common.extension.ContextKt
-dontwarn com.unifest.android.core.common.utils.DateUtilsKt
-dontwarn com.unifest.android.core.common.utils.DpToPxKt
-dontwarn com.unifest.android.core.data.datasource.RemoteConfigDataSource
-dontwarn com.unifest.android.core.data.datasource.RemoteConfigDataSourceImpl
-dontwarn com.unifest.android.core.data.di.FirebaseModule_ProvideMessagingFactory
-dontwarn com.unifest.android.core.data.di.FirebaseModule_ProvideRemoteConfigFactory
-dontwarn com.unifest.android.core.data.repository.BoothRepository
-dontwarn com.unifest.android.core.data.repository.BoothRepositoryImpl
-dontwarn com.unifest.android.core.data.repository.FestivalRepository
-dontwarn com.unifest.android.core.data.repository.FestivalRepositoryImpl
-dontwarn com.unifest.android.core.data.repository.LikedBoothRepository
-dontwarn com.unifest.android.core.data.repository.LikedBoothRepositoryImpl
-dontwarn com.unifest.android.core.data.repository.LikedFestivalRepository
-dontwarn com.unifest.android.core.data.repository.LikedFestivalRepositoryImpl
-dontwarn com.unifest.android.core.data.repository.MessagingRepository
-dontwarn com.unifest.android.core.data.repository.MessagingRepositoryImpl
-dontwarn com.unifest.android.core.data.repository.OnboardingRepository
-dontwarn com.unifest.android.core.data.repository.OnboardingRepositoryImpl
-dontwarn com.unifest.android.core.data.repository.RemoteConfigRepository
-dontwarn com.unifest.android.core.data.repository.RemoteConfigRepositoryImpl
-dontwarn com.unifest.android.core.data.repository.WaitingRepository
-dontwarn com.unifest.android.core.data.repository.WaitingRepositoryImpl
-dontwarn com.unifest.android.core.database.LikedBoothDao
-dontwarn com.unifest.android.core.database.LikedFestivalDao
-dontwarn com.unifest.android.core.database.di.DaoModule_ProvideLikedBoothDaoFactory
-dontwarn com.unifest.android.core.database.di.DaoModule_ProvideLikedFestivalDaoFactory
-dontwarn com.unifest.android.core.database.di.DatabaseModule_ProvideLikedBoothDatabaseFactory
-dontwarn com.unifest.android.core.database.di.DatabaseModule_ProvideLikedFestivalDatabaseFactory
-dontwarn com.unifest.android.core.datastore.OnboardingDataSource
-dontwarn com.unifest.android.core.datastore.OnboardingDataSourceImpl
-dontwarn com.unifest.android.core.datastore.RecentLikedFestivalDataSource
-dontwarn com.unifest.android.core.datastore.RecentLikedFestivalDataSourceImpl
-dontwarn com.unifest.android.core.datastore.TokenDataSource
-dontwarn com.unifest.android.core.datastore.TokenDataSourceImpl
-dontwarn com.unifest.android.core.datastore.di.DataStoreModule_ProvideOnboardingDataStore$datastore_releaseFactory
-dontwarn com.unifest.android.core.datastore.di.DataStoreModule_ProvideRecentFestivalDataStore$datastore_releaseFactory
-dontwarn com.unifest.android.core.designsystem.component.ButtonKt
-dontwarn com.unifest.android.core.designsystem.component.DialogKt
-dontwarn com.unifest.android.core.designsystem.component.LoadingWheelKt
-dontwarn com.unifest.android.core.designsystem.component.NetworkImageKt
-dontwarn com.unifest.android.core.designsystem.component.ScaffoldKt
-dontwarn com.unifest.android.core.designsystem.component.SearchTextFieldKt
-dontwarn com.unifest.android.core.designsystem.component.SnackBarKt
-dontwarn com.unifest.android.core.designsystem.theme.ColorKt
-dontwarn com.unifest.android.core.designsystem.theme.FontKt
-dontwarn com.unifest.android.core.designsystem.theme.ThemeKt
-dontwarn com.unifest.android.core.navigation.MainTabRoute$Home
-dontwarn com.unifest.android.core.navigation.MainTabRoute$Map
-dontwarn com.unifest.android.core.navigation.MainTabRoute$Menu
-dontwarn com.unifest.android.core.navigation.MainTabRoute$Stamp
-dontwarn com.unifest.android.core.navigation.MainTabRoute$Waiting
-dontwarn com.unifest.android.core.navigation.MainTabRoute
-dontwarn com.unifest.android.core.navigation.Route
-dontwarn com.unifest.android.core.network.di.ApiModule_ProvideUnifestService$network_releaseFactory
-dontwarn com.unifest.android.core.network.di.NetworkModule_ProvideHttpLoggingInterceptor$network_releaseFactory
-dontwarn com.unifest.android.core.network.di.NetworkModule_ProvideUnifestApiRetrofit$network_releaseFactory
-dontwarn com.unifest.android.core.network.di.NetworkModule_ProvideUnifestOkHttpClient$network_releaseFactory
-dontwarn com.unifest.android.core.network.service.UnifestService
-dontwarn com.unifest.android.core.ui.component.CameraPermissionTextProvider
-dontwarn com.unifest.android.core.ui.component.LikedFestivalGridKt
-dontwarn com.unifest.android.core.ui.component.PermissionDialogKt
-dontwarn com.unifest.android.core.ui.component.PermissionTextProvider
-dontwarn com.unifest.android.feature.booth.navigation.BoothNavigationKt
-dontwarn com.unifest.android.feature.booth.viewmodel.BoothViewModel
-dontwarn com.unifest.android.feature.booth.viewmodel.BoothViewModel_HiltModules$KeyModule
-dontwarn com.unifest.android.feature.festival.viewmodel.FestivalViewModel
-dontwarn com.unifest.android.feature.festival.viewmodel.FestivalViewModel_HiltModules$KeyModule
-dontwarn com.unifest.android.feature.home.navigation.HomeNavigationKt
-dontwarn com.unifest.android.feature.home.viewmodel.HomeViewModel
-dontwarn com.unifest.android.feature.home.viewmodel.HomeViewModel_HiltModules$KeyModule
-dontwarn com.unifest.android.feature.liked_booth.navigation.LikedBoothNavigationKt
-dontwarn com.unifest.android.feature.liked_booth.viewmodel.LikedBoothViewModel
-dontwarn com.unifest.android.feature.liked_booth.viewmodel.LikedBoothViewModel_HiltModules$KeyModule
-dontwarn com.unifest.android.feature.map.navigation.MapNavigationKt
-dontwarn com.unifest.android.feature.map.viewmodel.MapViewModel
-dontwarn com.unifest.android.feature.map.viewmodel.MapViewModel_HiltModules$KeyModule
-dontwarn com.unifest.android.feature.menu.navigation.MenuNavigationKt
-dontwarn com.unifest.android.feature.menu.viewmodel.MenuViewModel
-dontwarn com.unifest.android.feature.menu.viewmodel.MenuViewModel_HiltModules$KeyModule
-dontwarn com.unifest.android.feature.navigator.IntroNavigator
-dontwarn com.unifest.android.feature.navigator.MainNavigator
-dontwarn com.unifest.android.feature.navigator.Navigator$DefaultImpls
-dontwarn com.unifest.android.feature.navigator.Navigator
-dontwarn com.unifest.android.feature.waiting.navigation.WaitingNavigationKt
-dontwarn com.unifest.android.feature.waiting.viewmodel.WaitingViewModel
-dontwarn com.unifest.android.feature.waiting.viewmodel.WaitingViewModel_HiltModules$KeyModule
18 changes: 18 additions & 0 deletions app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,12 @@
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
<uses-permission android:name="android.permission.CAMERA" />

<uses-feature
android:name="android.hardware.camera"
android:required="false" />

<application
android:name=".UnifestApplication"
Expand Down Expand Up @@ -33,12 +39,24 @@
android:name="com.unifest.android.initializer.FirebaseCrashlyticsInitializer"
android:value="androidx.startup" />

<meta-data
android:name="com.unifest.android.initializer.FirebaseMessagingInitializer"
android:value="androidx.startup" />

</provider>

<meta-data
android:name="com.naver.maps.map.CLIENT_ID"
android:value="${NAVER_MAP_CLIENT_ID}" />

<service
android:name=".service.UnifestFirebaseMessagingService"
android:exported="false">
<intent-filter>
<action android:name="com.google.firebase.MESSAGING_EVENT" />
</intent-filter>
</service>

</application>

</manifest>
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
package com.unifest.android.initializer

import android.content.Context
import androidx.startup.Initializer
import com.google.firebase.messaging.FirebaseMessaging
import timber.log.Timber

class FirebaseMessagingInitializer : Initializer<Unit> {
override fun create(context: Context) {
FirebaseMessaging.getInstance().subscribeToTopic("2")
.addOnCompleteListener { task ->
if (task.isSuccessful) {
Timber.d("Subscribed to topic successfully")
} else {
Timber.e("Failed to subscribe to topic")
}
}
}

override fun dependencies(): List<Class<out Initializer<*>>> {
return emptyList()
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
package com.unifest.android.service

import android.app.NotificationChannel
import android.app.NotificationManager
import android.app.PendingIntent
import android.content.Context
import android.content.Intent
import android.os.Build
import androidx.core.app.NotificationCompat
import com.google.firebase.messaging.FirebaseMessagingService
import com.google.firebase.messaging.RemoteMessage
import com.unifest.android.core.designsystem.R as designR
import com.unifest.android.feature.main.MainActivity
import timber.log.Timber

class UnifestFirebaseMessagingService : FirebaseMessagingService() {
override fun onMessageReceived(remoteMessage: RemoteMessage) {
super.onMessageReceived(remoteMessage)
if (remoteMessage.notification != null) {
sendNotification(remoteMessage)
}
}

private fun sendNotification(remoteMessage: RemoteMessage) {
val requestCode = System.currentTimeMillis().toInt()

val intent = Intent(this, MainActivity::class.java).apply {
addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP).also {
if (remoteMessage.data["boothId"] != null) {
if (remoteMessage.data["waitingId"] != null) {
Timber.tag("UnifestFirebaseMessagingService").d("waitingId: ${remoteMessage.data["waitingId"]}")
putExtra("navigate_to_waiting", true)
putExtra("waitingId", remoteMessage.data["waitingId"])
} else {
Timber.tag("UnifestFirebaseMessagingService").d("boothId: ${remoteMessage.data["boothId"]}")
putExtra("navigate_to_booth", true)
putExtra("boothId", remoteMessage.data["boothId"])
}
}
}
}

val pendingIntentFlags = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) {
PendingIntent.FLAG_UPDATE_CURRENT or PendingIntent.FLAG_IMMUTABLE
} else {
PendingIntent.FLAG_UPDATE_CURRENT
}
val pendingIntent = PendingIntent.getActivity(this, requestCode, intent, pendingIntentFlags)

val channelId = CHANNEL_ID

val notificationBuilder = NotificationCompat.Builder(this, channelId)
.setSmallIcon(designR.mipmap.ic_launcher)
.setContentTitle(remoteMessage.notification?.title.toString())
.setContentText(remoteMessage.notification?.body.toString())
.setAutoCancel(true)
.setContentIntent(pendingIntent)

val notificationManager = getSystemService(Context.NOTIFICATION_SERVICE) as NotificationManager

val channel = NotificationChannel(channelId, CHANNEL_NAME, NotificationManager.IMPORTANCE_HIGH)
notificationManager.createNotificationChannel(channel)

notificationManager.notify(requestCode, notificationBuilder.build())
}

override fun onNewToken(token: String) {
Timber.d("Refreshed token: $token")
}

companion object {
private const val CHANNEL_ID = "unifest"
private const val CHANNEL_NAME = "unifest_notification"
}
}
6 changes: 4 additions & 2 deletions build-logic/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,9 @@ repositories {
}

java {
sourceCompatibility = JavaVersion.VERSION_17
targetCompatibility = JavaVersion.VERSION_17
toolchain {
languageVersion.set(JavaLanguageVersion.of(17))
}
}

kotlin {
Expand All @@ -46,6 +47,7 @@ dependencies {
compileOnly(libs.gradle.android)
compileOnly(libs.gradle.kotlin)
compileOnly(libs.gradle.androidx.room)
compileOnly(libs.compose.compiler.extension)

compileOnly(files(libs.javaClass.superclass.protectionDomain.codeSource.location))
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ import org.gradle.kotlin.dsl.configure

internal class AndroidApplicationComposeConventionPlugin : BuildLogicConventionPlugin(
{
applyPlugins(Plugins.AndroidApplication)
applyPlugins(Plugins.ANDROID_APPLICATION, Plugins.COMPOSE_COMPILER)

extensions.configure<ApplicationExtension> {
configureCompose(this)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ import org.gradle.kotlin.dsl.configure

internal class AndroidApplicationConventionPlugin : BuildLogicConventionPlugin(
{
applyPlugins(Plugins.AndroidApplication, Plugins.KotlinAndroid)
applyPlugins(Plugins.ANDROID_APPLICATION, Plugins.KOTLIN_ANDROID)

extensions.configure<ApplicationExtension> {
configureAndroid(this)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ internal class AndroidFeatureConventionPlugin : BuildLogicConventionPlugin(
implementation(project(path = ":core:designsystem"))
implementation(project(path = ":core:model"))
implementation(project(path = ":core:ui"))
implementation(project(path = ":core:navigation"))

implementation(libs.androidx.navigation.compose)
implementation(libs.androidx.hilt.navigation.compose)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,14 @@ import org.gradle.kotlin.dsl.dependencies

internal class AndroidFirebaseConventionPlugin : BuildLogicConventionPlugin(
{
applyPlugins(Plugins.GoogleServices, Plugins.FirebaseCrashlytics)
applyPlugins(Plugins.GOOGLE_SERVICES, Plugins.FIREBASE_CRASHLYTICS)

dependencies {
implementation(platform(libs.firebase.bom))
implementation(libs.firebase.analytics)
implementation(libs.firebase.crashlytics)
implementation(libs.firebase.config)
implementation(libs.firebase.messaging)
}
},
)
2 changes: 1 addition & 1 deletion build-logic/src/main/kotlin/AndroidHiltConventionPlugin.kt
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ import org.gradle.kotlin.dsl.dependencies

internal class AndroidHiltConventionPlugin : BuildLogicConventionPlugin(
{
applyPlugins(Plugins.hilt, Plugins.Ksp)
applyPlugins(Plugins.HILT, Plugins.KSP)

dependencies {
implementation(libs.hilt.android)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ import org.gradle.kotlin.dsl.configure

internal class AndroidLibraryComposeConventionPlugin : BuildLogicConventionPlugin(
{
applyPlugins(Plugins.AndroidLibrary)
applyPlugins(Plugins.ANDROID_LIBRARY, Plugins.COMPOSE_COMPILER)

extensions.configure<LibraryExtension> {
configureCompose(this)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ import com.unifest.android.libs
import org.gradle.kotlin.dsl.configure

internal class AndroidLibraryConventionPlugin : BuildLogicConventionPlugin({
applyPlugins(Plugins.AndroidLibrary, Plugins.KotlinAndroid)
applyPlugins(Plugins.ANDROID_LIBRARY, Plugins.KOTLIN_ANDROID)

extensions.configure<LibraryExtension> {
configureAndroid(this)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ import org.gradle.kotlin.dsl.dependencies

internal class AndroidRetrofitConventionPlugin : BuildLogicConventionPlugin(
{
applyPlugins(Plugins.KotlinxSerialization)
applyPlugins(Plugins.KOTLINX_SERIALIZATION)

dependencies {
implementation(libs.retrofit)
Expand Down
2 changes: 1 addition & 1 deletion build-logic/src/main/kotlin/AndroidRoomConventionPlugin.kt
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ import org.gradle.kotlin.dsl.dependencies

class AndroidRoomConventionPlugin : BuildLogicConventionPlugin(
{
applyPlugins(Plugins.AndroidxRoom, Plugins.KotlinxSerialization, Plugins.Ksp)
applyPlugins(Plugins.ANDROIDX_ROOM, Plugins.KOTLINX_SERIALIZATION, Plugins.KSP)

extensions.configure<RoomExtension> {
// The schemas directory contains a schema file for each version of the Room database.
Expand Down
Loading
Loading