-
Notifications
You must be signed in to change notification settings - Fork 5
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
[Feature] - 프로필 이미지 수정 기능 및 여행기 등록 시 여행 장소마다 국가 코드 주도록 구현 #535
Changes from 15 commits
004644c
cef7429
7912136
0aa2cfc
dde854e
932e318
aa16247
2eb4464
537c3e8
98076f6
fbc78f4
9321263
3f702c4
ae9be47
01b6786
c7561fd
b889315
cac5077
7e6ca5e
f318d32
c810327
0ec73d3
3f18f98
211c7d6
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -85,13 +85,11 @@ export const MainPageTraveloguesList = styled.ul` | |
gap: ${({ theme }) => theme.spacing.m}; | ||
`; | ||
|
||
export const OptionContainer = styled.div` | ||
export const OptionContainer = styled.button` | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe 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 commentThe reason will be displayed to describe this comment to others. Learn more. 드래그가 가능하다는 것을 표현하기 위해 cursor css가 들어간거라서 There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. click 메서드이기에 이 부분은 button 이 맞다고 생각했어요! 이름이 Container라 전체 option들에 대한 컨테이너라고 착각할 수 있을 거 같은데 이 부분은 한 옵션을 감싸는 wrapper라고 받아들이는 것이 좋습니다! 그래서 클릭하는 옵션이기에 당연히 button이 맞다고 생각하였습니다 There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 오호 감사합니다 ㅎㅎ |
||
display: flex; | ||
justify-content: space-between; | ||
|
||
width: 100%; | ||
|
||
cursor: pointer; | ||
`; | ||
|
||
export const LastElement = styled.div` | ||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -2,79 +2,111 @@ import { css } from "@emotion/react"; | |
import styled from "@emotion/styled"; | ||
|
||
import theme from "@styles/theme"; | ||
import { PRIMITIVE_COLORS } from "@styles/tokens"; | ||
|
||
export const Layout = styled.div` | ||
display: flex; | ||
flex-direction: column; | ||
align-items: center; | ||
width: 100%; | ||
gap: ${(props) => props.theme.spacing.xl}; | ||
|
||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 고생한게 느껴지는 CSS.. 👍👍👍 |
||
width: 100%; | ||
padding: ${(props) => props.theme.spacing.l}; | ||
`; | ||
|
||
export const TabContentContainer = styled.div` | ||
display: flex; | ||
flex-direction: column; | ||
width: 100%; | ||
gap: ${(props) => props.theme.spacing.m}; | ||
`; | ||
|
||
export const ColorButtonStyle = css` | ||
display: flex; | ||
justify-content: flex-start; | ||
align-items: center; | ||
width: 100%; | ||
height: 6.8rem; | ||
padding: ${theme.spacing.m}; | ||
border-radius: 10px; | ||
|
||
background-color: ${PRIMITIVE_COLORS.blue[50]}; | ||
gap: ${theme.spacing.m}; | ||
`; | ||
|
||
export const ListStyle = css` | ||
export const listStyle = css` | ||
li { | ||
${theme.typography.mobile.body}; | ||
font-weight: 700; | ||
${theme.typography.mobile.bodyBold}; | ||
} | ||
`; | ||
|
||
export const FormWrapper = styled.form` | ||
export const ProfileContainer = styled.div` | ||
display: flex; | ||
flex-direction: column; | ||
align-items: center; | ||
width: 100%; | ||
gap: ${({ theme }) => theme.spacing.m}; | ||
|
||
width: 100%; | ||
`; | ||
|
||
export const ButtonWrapper = styled.div` | ||
export const ProfileEditButtonContainer = styled.div` | ||
display: flex; | ||
gap: ${({ theme }) => theme.spacing.xs}; | ||
`; | ||
|
||
export const EditButtonContainer = styled.div` | ||
display: flex; | ||
justify-content: flex-end; | ||
|
||
width: 100%; | ||
`; | ||
|
||
export const Button = styled.button` | ||
export const EditButton = styled.button` | ||
padding: ${({ theme }) => theme.spacing.s} ${({ theme }) => theme.spacing.m}; | ||
border: solid 1px ${({ theme }) => theme.colors.border}; | ||
${({ theme }) => theme.typography.mobile.detail}; | ||
border-radius: 10px; | ||
`; | ||
|
||
export const NicknameWrapper = styled.div` | ||
export const ProfileImageContainer = styled.div` | ||
display: flex; | ||
position: relative; | ||
`; | ||
|
||
export const ProfileImageWrapper = styled.div<{ $isProfileImageLoading: boolean }>` | ||
display: ${({ $isProfileImageLoading }) => ($isProfileImageLoading ? "none" : "block")}; | ||
`; | ||
|
||
export const ProfileImageLoadingWrapper = styled.div` | ||
display: flex; | ||
justify-content: center; | ||
align-items: center; | ||
|
||
width: 12.9rem; | ||
height: 12.9rem; | ||
`; | ||
|
||
export const ProfileImageHiddenInput = styled.input` | ||
display: none; | ||
`; | ||
|
||
export const NicknameWrapper = styled.div` | ||
display: flex; | ||
justify-content: center; | ||
align-items: flex-start; | ||
|
||
width: 100%; | ||
height: 3rem; | ||
height: 6.5rem; | ||
`; | ||
|
||
export const InputContainer = styled.div` | ||
export const NickNameEditContainer = styled.div` | ||
display: flex; | ||
flex-direction: column; | ||
gap: ${({ theme }) => theme.spacing.s}; | ||
|
||
width: 100%; | ||
height: 6.5rem; | ||
`; | ||
|
||
export const Button = styled.button` | ||
width: 100%; | ||
`; | ||
|
||
export const profileImageEditButtonStyle = css` | ||
justify-content: flex-end; | ||
align-items: flex-end; | ||
position: absolute; | ||
|
||
width: 100%; | ||
height: 100%; | ||
border-radius: 50%; | ||
`; | ||
|
||
export const inputStyle = css` | ||
|
@@ -103,8 +135,10 @@ export const inputStyle = css` | |
} | ||
`; | ||
|
||
export const NicknameStyle = css` | ||
margin-bottom: calc(1.2rem + 2px); | ||
export const nicknameStyle = css` | ||
padding: 1.2rem 1.6rem; | ||
`; | ||
|
||
font-weight: 700; | ||
export const deleteTextColor = css` | ||
color: ${theme.colors.text.required}; | ||
`; |
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.
Pick<TravelTransformPlace, "placeName" | "position" | "countryCode">
해당 타입에 대해 중복된 부분이 꽤나 발견되는거 같은데 대한 타입을 따로 분리하면 어떨까 싶긴 하네요~!(countryCode 뿐만 아니라 다른 타입이 추가된다면 또 다 추가해야하니까 번거로워질 수 있을거 같아요)
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.
좋은 피드백입니다! 해당 부분 PlaceInfo라는 타입으로 만들어 사용해줬습니다 고마워요