-
Notifications
You must be signed in to change notification settings - Fork 0
[QA] 연락처 주기 설정 바텀시트 날짜 형식 수정 #61
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
Conversation
- 기존에 '매주'로 고정되어 있던 주기 설정 바텀 시트의 텍스트를 `selectedInterval` 값에 따라 '매주', '2주마다', '매달'로 동적으로 변경되도록 수정했습니다. - `DateExtension.getCycleText()`를 사용하여 선택된 주기에 맞는 텍스트를 가져오도록 구현했습니다. - 주기 텍스트에서 요일 부분에만 다른 스타일이 적용되도록 로직을 개선했습니다.
- 재사용 가능한 `NearBottomSheet` 컴포posable을 구현했습니다.
- 기존 `FriendProfileEditor` 화면에서만 사용하던 `ReminderIntervalBottomSheet`를 삭제했습니다. - 여러 화면에서 재사용 가능하도록 `CycleSettingBottomSheet`라는 이름의 공용 컴포넌트를 새로 만들었습니다. - 새로운 BottomSheet는 상태 관리를 개선하고, 선택된 주기에 따라 미리보기 UI가 동적으로 변경되도록 수정했습니다. - `FriendProfileEditorScreen`에서 기존 BottomSheet를 새로운 `CycleSettingBottomSheet`로 교체 적용했습니다.
- `CycleSettingBottomSheet` 컴포넌트에서 "다음 연락 주기:" 접두사와 날짜 사이에 공백을 추가하여 가독성을 개선했습니다.
`@Preview` 어노테이션을 사용하여 `NearBottomSheet` 컴포저블의 미리보기를 추가했습니다.
- NearBottomSheet 핸들러의 모서리 둥글기 값을 100.dp에서 2.5.dp로 수정했습니다.
Summary of ChangesHello @stopstone, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! 이 PR은 연락처 주기 설정 바텀시트에서 선택된 주기에 따라 날짜가 올바르게 업데이트되지 않던 버그를 해결합니다. 또한, Highlights
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here. You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension. Footnotes
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code Review
안녕하세요. 연락처 주기 설정 바텀시트 리팩토링 및 기능 개선 PR 잘 보았습니다. 공통 NearBottomSheet 컴포넌트를 추출하여 코드 재사용성을 높이고, 바텀시트에서 설정한 주기에 따라 날짜가 올바르게 표시되도록 수정한 점이 인상적입니다. 전반적으로 코드 품질을 향상시키는 좋은 변경이라고 생각합니다. 몇 가지 추가 개선을 위해 아래와 같이 리뷰 코멘트를 남깁니다. 중복 파일 제거, 컴포넌트 API 개선, 그리고 사소한 문자열 처리 오류에 대한 내용입니다. 확인 부탁드립니다.
| @@ -0,0 +1,210 @@ | |||
| package com.alarmy.near.presentation.feature.friendprofileedittor.component | |||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| stringResource(R.string.friend_contact_cycle_next_cycle_prefix) + " " + | ||
| ( | ||
| selectedInterval?.let { DateExtension.getNextCycleDate(it) } | ||
| ?: DateExtension.getNextWeekSameDay() | ||
| ), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
R.string.friend_contact_cycle_next_cycle_prefix 리소스 문자열("다음 주기 : ") 끝에 공백이 포함되어 있습니다. 코드에서 + " "를 사용하여 공백을 추가로 연결하고 있어, 결과적으로 "다음 주기 : "와 같이 두 개의 공백이 생기게 됩니다. 불필요한 공백을 제거하기 위해 코드에서 + " " 부분을 삭제하는 것이 좋겠습니다.
| stringResource(R.string.friend_contact_cycle_next_cycle_prefix) + " " + | |
| ( | |
| selectedInterval?.let { DateExtension.getNextCycleDate(it) } | |
| ?: DateExtension.getNextWeekSameDay() | |
| ), | |
| stringResource(R.string.friend_contact_cycle_next_cycle_prefix) + | |
| ( | |
| selectedInterval?.let { DateExtension.getNextCycleDate(it) } | |
| ?: DateExtension.getNextWeekSameDay() | |
| ), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
리소스 마지막 공백을 받아오지 못하고 있어 공백을 추가하였습니다
제가 알기론 Android의 XML 리소스 파서는 기본적으로 trailing whitespace(끝 공백)를 제거하여 공백을 별도로 추가했습니다
| isVisible: Boolean, | ||
| onDismiss: () -> Unit, | ||
| modifier: Modifier = Modifier, | ||
| content: @Composable () -> Unit, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
content 파라미터의 타입을 @Composable () -> Unit 대신 @Composable ColumnScope.() -> Unit으로 변경하는 것을 고려해보세요. ModalBottomSheet의 컨텐츠는 이미 ColumnScope 내에서 실행되므로, 이 스코프를 호출자에게 전달하면 Modifier.weight()와 같은 ColumnScope 한정 수정자를 사용할 수 있어 컴포넌트의 유연성과 재사용성이 향상됩니다.
| content: @Composable () -> Unit, | |
| content: @Composable ColumnScope.() -> Unit, |
- `friendcontactcycle`과 `friendprofileedittor` 피처에서 각각 사용하던 `CycleSettingBottomSheet`를 `ui/component/bottomsheet` 패키지로 이동하여 공용 컴포넌트로 만들었습니다. - 중복 코드를 제거하고 재사용성을 높였습니다.
rhkrwngud445
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
잘 작업주셨네요!👍 바로 머지해도 될 것 같습니다!
작업 내용
확인 방법
NearBottomSheet
friendcontactcycle/CycleSettingBottomSheet
friendprofileeditor/CycleSettingBottomSheet
참고 사항
friendprofileedittor의
프로필 수정의 연락 주기에 표시되는
매주, 2주는 요일
매달 6개월은 13일 같은 일자로 표기해야하는지 코멘트 받은 후 수정하면 좋을 것 같습니다!
관련 이슈