-
Notifications
You must be signed in to change notification settings - Fork 0
레이아웃 수정 (#issue 289) #290
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
레이아웃 수정 (#issue 289) #290
Conversation
|
""" Walkthrough여러 styled component의 패딩, 마진, 색상, 폰트 크기 등 스타일이 수정되었으며, 일부 컴포넌트에 새로운 boolean prop이 추가되었습니다. 선택 상태 전달을 위한 prop 네이밍이 일관적으로 변경되었고, 일부 레이아웃 구조와 텍스트 라벨이 조정되었습니다. 로직 변경 없이 스타일 및 UI 표현만 변경되었습니다. Changes
Sequence Diagram(s)sequenceDiagram
participant User
participant PositionComponent
participant PositionButton
User->>PositionComponent: 렌더링 요청
PositionComponent->>PositionButton: fontSize 등 prop 전달하여 렌더링
PositionButton-->>User: 스타일 적용된 버튼 표시
Assessment against linked issues
Suggested reviewers
Poem
Tip ⚡️ Faster reviews with caching
Enjoy the performance boost—your workflow just got faster. ✨ Finishing Touches
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
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.
Actionable comments posted: 0
🧹 Nitpick comments (1)
src/components/common/skillTagBox/SkillTagBox.tsx (1)
32-46: 스킬 태그 필터링 로직 개선ID가 0인 스킬 태그를 필터링하는 로직이 추가되어 불필요한 태그가 표시되지 않도록 개선되었습니다.
불필요한 조건부 표현식 간소화가 가능합니다:
- $select={ - (isMain && searchFiltersSkillTag?.includes(skillTagData.id)) || - (isCreate && selectedTag?.includes(skillTagData.id)) - ? true - : false - } + $select={ + !!(isMain && searchFiltersSkillTag?.includes(skillTagData.id)) || + !!(isCreate && selectedTag?.includes(skillTagData.id)) + }🧰 Tools
🪛 Biome (1.9.4)
[error] 39-43: Unnecessary use of boolean literals in conditional expression.
Simplify your code by directly assigning the result without using a ternary operator.
If your goal is negation, you may use the logical NOT (!) or double NOT (!!) operator for clearer and concise code.
Check for more details about NOT operator.
Unsafe fix: Remove the conditional expression with(lint/complexity/noUselessTernary)
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
⛔ Files ignored due to path filters (1)
-
src/assets/banner.svgis excluded by!**/*.svg
📒 Files selected for processing (21)
-
src/components/common/header/Header.styled.ts(1 hunks) -
src/components/common/layout/Layout.styled.ts(0 hunks) -
src/components/common/positionButton/PositionButton.styled.ts(1 hunks) -
src/components/common/positionButton/PositionButton.tsx(1 hunks) -
src/components/common/skillTagBox/SkillTagBox.tsx(1 hunks) -
src/components/customerService/inquiry/Inquiry.styled.ts(2 hunks) -
src/components/mypage/ContentTab.tsx(1 hunks) -
src/components/projectFormComponents/inputComponent/InputComponent.styled.ts(1 hunks) -
src/components/projectFormComponents/inputComponent/InputComponent.tsx(1 hunks) -
src/components/projectFormComponents/projectInformationInput/ProjectInformationInput.tsx(1 hunks) -
src/components/projectFormComponents/projectInformationInput/fieldCategoryComponent/FieldCategoryComponent.styled.ts(2 hunks) -
src/components/projectFormComponents/projectInformationInput/fieldCategoryComponent/FieldCategoryComponent.tsx(1 hunks) -
src/components/projectFormComponents/projectInformationInput/positionComponent/PositionComponent.styled.ts(1 hunks) -
src/components/projectFormComponents/projectInformationInput/positionComponent/PositionComponent.tsx(1 hunks) -
src/pages/createProject/CreateProject.styled.ts(2 hunks) -
src/pages/home/Home.styled.ts(1 hunks) -
src/pages/manage/myProjectList/MyProjectList.styled.ts(1 hunks) -
src/pages/manage/myProjectList/MyProjectList.tsx(1 hunks) -
src/pages/modifyProject/ModifyProject.styled.ts(2 hunks) -
src/pages/mypage/MyPage.styled.ts(1 hunks) -
src/pages/mypage/MyPage.tsx(1 hunks)
💤 Files with no reviewable changes (1)
- src/components/common/layout/Layout.styled.ts
🧰 Additional context used
🧬 Code Graph Analysis (3)
src/pages/manage/myProjectList/MyProjectList.tsx (2)
src/components/manageProjects/applicantInfo/ApplicantInfo.styled.ts (1)
Title(24-33)src/components/home/projectCardLists/cardList/CardList.tsx (1)
CardList(13-64)
src/components/common/positionButton/PositionButton.tsx (1)
src/components/common/positionButton/PositionButton.styled.ts (1)
PositionButton(5-41)
src/components/common/skillTagBox/SkillTagBox.tsx (2)
src/models/tags.ts (1)
SkillTag(3-8)src/components/common/skillTagBox/skillTag/SkillTag.tsx (1)
SkillTag(10-22)
🪛 Biome (1.9.4)
src/components/common/skillTagBox/SkillTagBox.tsx
[error] 39-43: Unnecessary use of boolean literals in conditional expression.
Simplify your code by directly assigning the result without using a ternary operator.
If your goal is negation, you may use the logical NOT (!) or double NOT (!!) operator for clearer and concise code.
Check for more details about NOT operator.
Unsafe fix: Remove the conditional expression with
(lint/complexity/noUselessTernary)
⏰ Context from checks skipped due to timeout of 90000ms (1)
- GitHub Check: Run Chromatic
🔇 Additional comments (35)
src/components/mypage/ContentTab.tsx (1)
6-6:✅ Verification successful
상대 경로 조정 확인
MovedInquiredLink컴포넌트의 경로가../customerService/MoveInquiredLink로 올바르게 이동되었는지 확인해주세요.아래 스크립트를 사용해 파일이 존재하는지 검증할 수 있습니다:
🏁 Script executed:
#!/bin/bash # Verify that MoveInquiredLink component exists at the new path test -f src/components/customerService/MoveInquiredLink.tsx && echo "파일 존재함" || echo "파일이 존재하지 않음"Length of output: 84
확인 완료: 상대 경로가 올바르게 설정되었습니다.
src/components/customerService/MoveInquiredLink.tsx파일이 존재함을 확인했습니다. 추가 작업이 필요 없습니다.src/components/customerService/inquiry/Inquiry.styled.ts (2)
25-25: 레이아웃 구성 개선고정 너비(49rem)에서 상대적 너비(65%)로 변경하여 다양한 화면 크기에 더 잘 대응할 수 있게 되었습니다. 반응형 디자인을 위한 좋은 접근 방식입니다.
181-181: 버튼 스타일 개선고정 너비를 제거하고 비대칭 패딩(0.5rem 1.5rem)을 적용하여 버튼이 내용에 맞게 크기가 조정됩니다. 이는 반응형 디자인과 국제화에 더 적합한 스타일링입니다.
src/components/projectFormComponents/projectInformationInput/positionComponent/PositionComponent.styled.ts (1)
9-9: 요소 간 간격 조정카테고리 요소 간 간격을 5px에서 10px로 증가시켜 시각적 구분이 더 명확해졌습니다. UI 가독성이 향상되었습니다.
src/pages/mypage/MyPage.tsx (1)
22-22: 메뉴 라벨 간소화"참여한 프로젝트"에서 "참여 프로젝트"로 라벨이 간소화되었습니다. 의미는 유지하면서 더 간결해졌습니다.
src/pages/home/Home.styled.ts (1)
9-9: 레이아웃 일관성 확보를 위한 패딩 추가데스크톱 및 태블릿 뷰에 120px의 수평 패딩을 추가하셨네요. 이 변경은 다른 컴포넌트의 패딩 조정과 함께 전체 애플리케이션의 일관된 레이아웃을 제공합니다.
src/components/common/header/Header.styled.ts (1)
10-10: 헤더 패딩 조정 적절히 진행됨기존 패딩을
10px 60px로 변경하고 태블릿용 미디어 쿼리를 제거하셨군요. 이는Home.styled.ts및 다른 컴포넌트의 패딩 조정과 일관된 변화로 보입니다. 전반적인 UI의 일관성을 높이는 좋은 변경입니다.src/components/projectFormComponents/projectInformationInput/positionComponent/PositionComponent.tsx (1)
42-42: 포지션 버튼 글꼴 크기 속성 추가
fontSize={true}속성을 추가하여 포지션 버튼의 글꼴 크기를 조정하셨네요. 이는 UI 일관성과 가독성을 향상시키는 좋은 변경입니다.src/components/projectFormComponents/projectInformationInput/ProjectInformationInput.tsx (1)
42-44: 안내 메시지 개선으로 사용성 향상새싹 멤버 환영에 대한 안내 메시지를 "새싹 멤버를 환영한다면 체크를 눌러주세요!!"로 변경하셨습니다. 기존 메시지보다 사용자에게 명확한 행동 지침을 제공하여 UX가 개선되었습니다.
src/pages/mypage/MyPage.styled.ts (1)
7-11: 반응형 디자인을 위한 패딩 추가가 적절하게 구현되었습니다.Container 컴포넌트에 수평 패딩(60px)을 추가하고 태블릿 화면에서는 더 작은 패딩(10px)으로 조정하여 반응형 레이아웃을 구현한 점이 좋습니다. 이러한 변경은 앱 전체의 일관된 수평 간격 패턴과 잘 맞습니다.
src/components/projectFormComponents/projectInformationInput/fieldCategoryComponent/FieldCategoryComponent.tsx (2)
37-37: 스타일드 컴포넌트 프롭 네이밍 컨벤션이 올바르게 적용되었습니다.
isSelected에서$isSelected로 변경함으로써 트랜지언트 프롭 패턴을 적용하셨네요. 이는 스타일드 컴포넌트의 모범 사례를 따르는 변경으로, DOM에 불필요한 속성이 전달되는 것을 방지합니다.
40-40: 접근성 향상 및 일관된 프롭 네이밍 적용이 잘 되었습니다.
S.NameSpan컴포넌트에type='button'속성을 추가하고$isSelected트랜지언트 프롭으로 변경한 것은 두 가지 개선점을 가집니다:
- 버튼의 의미적 명확성을 높여 접근성 향상
- 스타일드 컴포넌트 프롭 네이밍의 일관성 유지
이러한 변경은 코드 품질과 접근성 모두를 개선합니다.
src/pages/manage/myProjectList/MyProjectList.tsx (1)
11-16: 레이아웃 구조 개선이 잘 이루어졌습니다.컴포넌트 구조를 개선하여
Title과CardList를S.ManageProjectsWrapper로 감싸고,Title에 명시적인 size 속성을 부여한 것은 레이아웃 구성과 스타일 일관성 측면에서 좋은 변경입니다. 이러한 구조 변경은 시각적 조직화를 개선하면서도 기능적인 변화 없이 UI 표현만 개선하고 있습니다.src/components/projectFormComponents/inputComponent/InputComponent.styled.ts (1)
74-86: 마크다운 에디터용 조건부 스타일링이 잘 구현되었습니다.FormError 컴포넌트에
$markDownboolean 프롭을 추가하여 마크다운 에디터 관련 오류 메시지의 위치를 조정할 수 있게 한 것은 좋은 접근입니다. 트랜지언트 프롭에$접두사를 사용한 것도 스타일드 컴포넌트 모범 사례를 따르고 있어 좋습니다.다만, 주의할 점은 오류 메시지 위치를
-1.5rem으로 조정하는 것이 다른 UI 요소와 겹치지 않는지 확인해야 합니다.src/components/projectFormComponents/inputComponent/InputComponent.tsx (1)
45-49: 마크다운 에디터용 오류 메시지 스타일 적용 추가마크다운 에디터의 오류 메시지에 대한 스타일 조정을 위해
$markDownprop을 추가한 것은 좋은 접근 방식입니다. 이를 통해 마크다운 에디터와 일반 입력 필드의 오류 메시지 스타일을 구분할 수 있습니다.src/components/common/positionButton/PositionButton.tsx (3)
8-8: 폰트 크기 조정 기능 추가새로운
fontSizeprop을 통해 버튼 텍스트 크기를 조정할 수 있도록 한 것은 컴포넌트의 재사용성을 높이는 좋은 방법입니다.
16-17: 기본값 설정 확인
fontSizeprop의 기본값을false로 설정한 것은 적절합니다. 기존 사용 중인 곳에서는 동작에 변화가 없을 것입니다.
23-24: 트랜지언트 prop 전달 방식스타일드 컴포넌트에
$fontSize트랜지언트 prop으로 전달하는 방식은 React props가 DOM에 전달되는 것을 방지하는 올바른 방식입니다.src/pages/manage/myProjectList/MyProjectList.styled.ts (2)
3-7: 컨테이너 스타일 개선컨테이너를 flex 레이아웃으로 변경하여 내용을 중앙 정렬하는 방식은 레이아웃 구조를 명확히 하고 있습니다. 이는 반응형 디자인에 더 효과적인 접근 방식입니다.
9-18: 새로운 래퍼 컴포넌트 추가
ManageProjectsWrapper컴포넌트를 도입하여 컨테이너와 내용 사이에 래퍼 레이어를 추가한 것은 레이아웃 제어를 더 세밀하게 할 수 있게 해줍니다.margin: 0 30px를 사용하면 좌우 여백이 일정하게 유지되어 디자인 일관성이 향상됩니다.src/pages/modifyProject/ModifyProject.styled.ts (2)
3-8: 컨테이너 너비 조정
width: 100%와max-width: 80%를 설정하여 컨테이너 너비를 조정한 것은 반응형 디자인에 적합합니다. 이를 통해 다양한 화면 크기에서 일관된 레이아웃을 유지할 수 있습니다.
55-71: 제출 버튼 스타일 개선제출 버튼의 디자인을 개선한 변경사항은 다음과 같은 이점이 있습니다:
- Flexbox를 사용한 중앙 정렬로 내용 배치가 더 정확해집니다
- 테마 색상 사용으로 디자인 시스템과의 일관성이 향상됩니다
- 호버 상태의 부드러운 전환 효과로 사용자 경험이 개선됩니다
- 더 큰 border-radius로 현대적인 디자인 트렌드를 반영합니다
전체적으로 이 변경사항은 UI의 시각적 일관성과 사용자 경험을 향상시킵니다.
src/components/common/positionButton/PositionButton.styled.ts (6)
1-1: styled-components의 css helper를 추가한 것은 좋은 변경입니다.styled-components의 css 헬퍼를 임포트하여 조건부 스타일링을 더 모듈화하고 가독성을 개선했습니다. 이는 styled-components의 권장 방식입니다.
8-8: $fontSize prop 추가는 적절합니다.트랜지언트 프롭(transient prop) 패턴을 사용하여 $fontSize를 추가한 것은 좋은 접근법입니다. '$' 접두사를 사용하면 DOM에 불필요한 속성이 전달되는 것을 방지합니다.
10-12: 기본 스타일 설정이 개선되었습니다.배경색과 테두리 스타일을 조건부 로직에서 분리하여 기본 스타일로 설정한 것은 코드 가독성과 유지보수성을 향상시킵니다.
16-22: 선택 상태 스타일링 개선css 헬퍼를 사용하여 $isSelected 조건부 스타일을 모듈화한 것은 좋은 변경입니다. 이렇게 하면 코드가 더 구조화되고 가독성이 향상됩니다.
24-28: font-size 조건부 적용 로직이 추가되었습니다.$fontSize prop에 따라 폰트 크기를 조건부로 적용하는 로직을 추가한 것은 컴포넌트의 재사용성을 높입니다.
33-40: 호버 효과 스타일링 개선호버 효과를 css 헬퍼를 사용하여 모듈화한 것은 일관된 스타일링 접근 방식을 유지하는 좋은 변경입니다.
src/pages/createProject/CreateProject.styled.ts (3)
4-5: 컨테이너 너비 조정이 적절합니다.Container의 width를 100%로 설정하고 max-width를 80%로 제한한 것은 좋은 반응형 디자인 접근법입니다. 다양한 화면 크기에서 레이아웃이 일관되게 유지될 수 있습니다.
55-64: 제출 버튼 스타일 개선SubmitButton 스타일링이 크게 개선되었습니다:
- flexbox를 사용하여 내용 중앙 정렬
- 고정된 폰트 크기 설정
- 네이비 배경색 및 테두리 적용
- 여백 조정으로 클릭 영역 최적화
이러한 변경은 버튼의 시각적 일관성과 사용자 경험을 향상시킵니다.
66-69: 호버 효과가 개선되었습니다.호버 상태에서 배경색과 텍스트 색상을 변경하고 부드러운 전환 효과를 추가한 것은 사용자 상호작용을 개선합니다. transition 효과는 부드러운 상태 변화를 제공하여 UX를 향상시킵니다.
src/components/projectFormComponents/projectInformationInput/fieldCategoryComponent/FieldCategoryComponent.styled.ts (4)
1-1: styled-components의 css helper를 추가한 것은 좋은 변경입니다.css 헬퍼를 임포트하여 조건부 스타일링을 더 모듈화하고 가독성을 개선했습니다.
16-22: 트랜지언트 프롭 패턴 적용 및 기본 스타일 개선
isSelected를$isSelected로 변경하여 트랜지언트 프롭 패턴을 적용한 것은 styled-components 모범 사례를 따르는 좋은 변경입니다. 또한, 배경색과 테두리 스타일을 명확하게 설정한 것도 스타일링 로직을 향상시킵니다.
25-31: 선택 상태 스타일링 개선css 헬퍼를 사용하여 $isSelected 조건부 스타일을 모듈화한 것은 코드 구조와 가독성을 개선합니다. 이전 접근 방식보다 더 선언적이고 유지보수하기 쉽습니다.
39-42: NameSpan이 button 요소로 변경되었습니다.NameSpan을 span에서 button으로 변경한 것은 시맨틱 HTML 관점에서 적절한 변경입니다. 이는 접근성을 향상시키고 사용자 상호작용에 더 적합합니다. 또한 font-size를 명시적으로 설정하고 선택 상태에 따라 색상을 조건부로 적용하는 것은 일관된 스타일링 접근 방식입니다.
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.
이런 방법은 생각 못했네요
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.
Actionable comments posted: 0
🧹 Nitpick comments (1)
src/components/home/projectCardLists/ProjectCardLists.styled.ts (1)
48-60: 미디어 쿼리 로직 개선 제안미디어 쿼리에서는 여전히 불리언 체크(
$flex ? '' : ...)를 사용하고 있습니다. 메인 로직과 일관성을 위해 이 부분도 switch 문과 같은 명시적인 방식으로 변경하는 것이 좋겠습니다.다음과 같이 수정을 제안합니다:
@media ${({ theme }) => theme.mediaQuery.tablet} { - grid-template-columns: ${({ $flex }) => - $flex ? '' : 'repeat(auto-fit, minmax(40%, 1fr))'}; + grid-template-columns: ${({ $flex }) => + $flex === 'grid' ? 'repeat(auto-fit, minmax(40%, 1fr))' : ''}; gap: 2rem; } @media ${({ theme }) => theme.mediaQuery.mobile} { width: 100%; - grid-template-columns: ${({ $flex }) => - $flex ? '' : 'repeat(auto-fit, minmax(50%, 1fr))'}; + grid-template-columns: ${({ $flex }) => + $flex === 'grid' ? 'repeat(auto-fit, minmax(50%, 1fr))' : ''}; gap: 1rem; }
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (2)
src/components/home/projectCardLists/ProjectCardLists.styled.ts(2 hunks)src/components/home/projectCardLists/ProjectCardLists.tsx(2 hunks)
🧰 Additional context used
🧬 Code Graph Analysis (2)
src/components/home/projectCardLists/ProjectCardLists.styled.ts (1)
src/components/home/projectCardLists/ProjectCardLists.tsx (1)
Display(12-12)
src/components/home/projectCardLists/ProjectCardLists.tsx (2)
src/hooks/useProjectCardListData.ts (1)
useProjectCardListData(4-20)src/hooks/useSaveSearchFiltering.ts (1)
useSaveSearchFiltering(4-10)
⏰ Context from checks skipped due to timeout of 90000ms (1)
- GitHub Check: accessibility-test
🔇 Additional comments (8)
src/components/home/projectCardLists/ProjectCardLists.styled.ts (3)
1-2: 스타일드 컴포넌트 임포트가 개선되었습니다.
css헬퍼 함수를 임포트하여 조건부 스타일링을 더 깔끔하게 구현할 수 있게 되었습니다. 또한 명시적인 타입 임포트로 타입 안정성이 향상되었습니다.
23-23: 타입 안정성이 개선되었습니다.불리언 타입에서
'flex' | 'grid'유니언 타입으로 변경함으로써 더 명확한 의도 전달과 타입 안정성을 확보했습니다.
26-41: 조건부 스타일링 로직이 명확해졌습니다.이전 인라인 조건식 대신 switch 문을 사용하여 각 디스플레이 모드별 스타일을 명확하게 구분했습니다.
css헬퍼를 활용한 구조화된 스타일링이 코드 가독성을 크게 향상시켰습니다.src/components/home/projectCardLists/ProjectCardLists.tsx (5)
12-13: 타입 정의가 명확해졌습니다.
Display타입을 명시적으로 정의하고 export 함으로써 컴포넌트 간 일관된 타입 사용이 가능해졌습니다. 유니언 타입을 사용한 접근은 레이아웃 모드를 명확히 표현합니다.
17-17: 상태 변수 타입이 개선되었습니다.불리언 타입의
isFlex대신Display타입의display상태를 사용함으로써 값의 의미가 더 명확해졌습니다.'grid'를 초기값으로 설정한 것도 적절합니다.
23-29: useEffect 로직이 더 명확해졌습니다.문자열 리터럴을 사용하여 레이아웃 모드를 설정하는 방식으로 변경되어 코드의 의도가 명확해졌습니다. 이전 불리언 값보다
'grid'와'flex'값이 더 직관적입니다.
41-41: 스타일 컴포넌트에 전달되는 prop이 개선되었습니다.상태 변수 명과 타입 변경에 맞게 컴포넌트 prop 전달이 업데이트되었습니다. 이로써 컴포넌트와 스타일 간의 일관성이 유지되었습니다.
1-62: 전반적인 리팩토링이 잘 이루어졌습니다.불리언 타입에서 명시적인 유니언 타입으로의 변경은 코드의 가독성과 유지보수성을 향상시켰습니다. 이러한 변경은 컴포넌트의 동작 방식을 이해하기 쉽게 만들고, 향후 확장성을 고려했을 때도 적절한 접근 방식입니다.
다만, 이슈 #289에 대한 구체적인 내용이 없어 정확한 요구사항 충족 여부를 판단하기는 어렵습니다. 레이아웃 수정이라는 측면에서 이 변경이 사용자 경험 개선에 어떤 영향을 미쳤는지 PR 설명에 추가되면 더 좋을 것 같습니다.
구현내용
레이아웃 수정
연관이슈
close #289
Summary by CodeRabbit
New Features
Bug Fixes
Style
Documentation
Refactor