From 090a37eacdcabf80f2aac924f09e8c3fdc8fb5f0 Mon Sep 17 00:00:00 2001 From: Eunseo Sim <55528304+simeunseo@users.noreply.github.com> Date: Fri, 13 Dec 2024 00:29:05 +0900 Subject: [PATCH 01/24] =?UTF-8?q?feat:=20=EC=B0=B8=EC=97=AC=ED=95=9C=20?= =?UTF-8?q?=ED=94=84=EB=A1=9C=EC=A0=9D=ED=8A=B8,=20=EB=AA=A8=EC=9E=84?= =?UTF-8?q?=EC=9D=B4=20=EC=97=86=EB=8A=94=20=EA=B2=BD=EC=9A=B0=20=ED=95=B4?= =?UTF-8?q?=EB=8B=B9=20=ED=95=AD=EB=AA=A9=20=EC=A0=84=EB=B6=80=20=EB=B9=84?= =?UTF-8?q?=EB=85=B8=EC=B6=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../members/detail/GroupSection/index.tsx | 18 ++++++++---------- .../members/detail/ProjectSection/index.tsx | 16 +++++++--------- 2 files changed, 15 insertions(+), 19 deletions(-) diff --git a/src/components/members/detail/GroupSection/index.tsx b/src/components/members/detail/GroupSection/index.tsx index 14ee030dd..3e591b419 100644 --- a/src/components/members/detail/GroupSection/index.tsx +++ b/src/components/members/detail/GroupSection/index.tsx @@ -1,5 +1,6 @@ import styled from '@emotion/styled'; import { colors } from '@sopt-makers/colors'; +import { fonts } from '@sopt-makers/fonts'; import axios from 'axios'; import Link from 'next/link'; @@ -13,7 +14,6 @@ import { playgroundLink } from '@/constants/links'; import useEnterScreen from '@/hooks/useEnterScreen'; import { MOBILE_MEDIA_QUERY } from '@/styles/mediaQuery'; import { safeParseInt } from '@/utils'; -import { fonts } from '@sopt-makers/fonts'; interface GroupSectionProps { profile: ProfileDetail; @@ -40,9 +40,9 @@ const GroupSection = ({ profile, meId, memberId }: GroupSectionProps) => { } return ( - + <> {meetingList.length > 0 ? ( - <> + {profile.name}님이 참여한 {meetingList.length}개의 모임이에요! @@ -56,11 +56,11 @@ const GroupSection = ({ profile, meId, memberId }: GroupSectionProps) => { ))} - + ) : ( <> - {String(meId) === memberId ? ( - <> + {String(meId) === memberId && ( + 아직 참여한 모임이 없어요 @@ -72,13 +72,11 @@ const GroupSection = ({ profile, meId, memberId }: GroupSectionProps) => { - - ) : ( - 아직 {profile.name}님이 참여한 모임이 없어요 + )} )} - + ); }; diff --git a/src/components/members/detail/ProjectSection/index.tsx b/src/components/members/detail/ProjectSection/index.tsx index e3c94cd36..2dcbbd55b 100644 --- a/src/components/members/detail/ProjectSection/index.tsx +++ b/src/components/members/detail/ProjectSection/index.tsx @@ -21,9 +21,9 @@ const ProjectSection = ({ profile, memberId, meId }: ProjectActivitySectionProps const { logClickEvent } = useEventLogger(); return ( - + <> {profile.projects.length > 0 ? ( - <> + {profile.name}님이 참여한 {profile.projects.length}개의 프로젝트예요! @@ -32,11 +32,11 @@ const ProjectSection = ({ profile, memberId, meId }: ProjectActivitySectionProps ))} - + ) : ( <> - {String(meId) === memberId ? ( - <> + {String(meId) === memberId && ( + 아직 등록한 프로젝트가 없어요 @@ -51,13 +51,11 @@ const ProjectSection = ({ profile, memberId, meId }: ProjectActivitySectionProps - - ) : ( - 아직 {profile.name}님이 참여한 프로젝트가 없어요 + )} )} - + ); }; From fd7233618b59b1f5c307e67fbf5987438ac05f06 Mon Sep 17 00:00:00 2001 From: Eunseo Sim <55528304+simeunseo@users.noreply.github.com> Date: Fri, 13 Dec 2024 00:50:38 +0900 Subject: [PATCH 02/24] =?UTF-8?q?feat:=20=EB=B3=B8=EC=9D=B8=20=ED=94=84?= =?UTF-8?q?=EB=A1=9C=ED=95=84=EC=97=90=20=EC=BB=A4=ED=94=BC=EC=B1=97=20?= =?UTF-8?q?=EC=98=A4=ED=94=88=20=EB=B2=84=ED=8A=BC=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../detail/ActivitySection/MemberDetail.tsx | 2 +- .../members/detail/MessageSection/index.tsx | 106 +++++++++++------- 2 files changed, 69 insertions(+), 39 deletions(-) diff --git a/src/components/members/detail/ActivitySection/MemberDetail.tsx b/src/components/members/detail/ActivitySection/MemberDetail.tsx index 514593ecb..bc02fffa5 100644 --- a/src/components/members/detail/ActivitySection/MemberDetail.tsx +++ b/src/components/members/detail/ActivitySection/MemberDetail.tsx @@ -61,7 +61,7 @@ const MemberDetail: FC = ({ memberId }) => { - {!profile.isMine && } + - - - {name}님과 나누고 싶은 이야기가 있나요? - - 궁금한 점에 대해 편하게 소통해보세요! - - - - {isCoffeeChatActivate && ( - - 커피챗 보러가기 - - )} - - 쪽지 보내기 - - - - {isOpenMessageModal && ( - - logSubmitEvent('sendMessage', { - category: options?.category?.toString() ?? '', - receiverId: +memberId, - referral: 'memberDetail', - }) - } - /> - )} - - ); + const handleClickCoffeeChatOpenButton = () => { + router.push(playgroundLink.coffeechatUpload()); + }; + + const Mine = () => { + return ( + <> + {!profile.isCoffeeChatActivate && ( + + + SOPT 회원들과 나누고 싶은 이야기가 있나요? + + 어떤 내용이라도 좋아요. 편하게 오픈해 보세요! + + + + + 커피챗 오픈하러 가기 + + + + )} + + ); + }; + + const Others = () => { + return ( + <> + + + {name}님과 나누고 싶은 이야기가 있나요? + + 궁금한 점에 대해 편하게 소통해보세요! + + + + {isCoffeeChatActivate && ( + + 커피챗 보러가기 + + )} + + 쪽지 보내기 + + + + {isOpenMessageModal && ( + + logSubmitEvent('sendMessage', { + category: options?.category?.toString() ?? '', + receiverId: +memberId, + referral: 'memberDetail', + }) + } + /> + )} + + ); + }; + + return profile.isMine ? : ; } const StyledMemberDetailSection = styled(MemberDetailSection)` From 03d39033f10eb43c4ce960fd99040b3d891cee0b Mon Sep 17 00:00:00 2001 From: Eunseo Sim <55528304+simeunseo@users.noreply.github.com> Date: Sat, 14 Dec 2024 00:27:31 +0900 Subject: [PATCH 03/24] =?UTF-8?q?chore:=20makers-ui=20=EB=B2=84=EC=A0=84?= =?UTF-8?q?=20=EC=97=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 2 +- yarn.lock | 701 +++------------------------------------------------ 2 files changed, 31 insertions(+), 672 deletions(-) diff --git a/package.json b/package.json index 8321b5dc4..5437716f3 100644 --- a/package.json +++ b/package.json @@ -45,7 +45,7 @@ "@sopt-makers/colors": "^3.0.2", "@sopt-makers/fonts": "^1.0.0", "@sopt-makers/icons": "^1.0.5", - "@sopt-makers/ui": "^2.7.6", + "@sopt-makers/ui": "^2.8.1", "@tanstack/react-query": "^5.4.3", "@toss/emotion-utils": "^1.1.10", "@toss/error-boundary": "^1.4.6", diff --git a/yarn.lock b/yarn.lock index a9c0dd7cf..fc85d3e8a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2904,13 +2904,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/aix-ppc64@npm:0.23.0": - version: 0.23.0 - resolution: "@esbuild/aix-ppc64@npm:0.23.0" - conditions: os=aix & cpu=ppc64 - languageName: node - linkType: hard - "@esbuild/android-arm64@npm:0.17.19": version: 0.17.19 resolution: "@esbuild/android-arm64@npm:0.17.19" @@ -2925,13 +2918,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/android-arm64@npm:0.23.0": - version: 0.23.0 - resolution: "@esbuild/android-arm64@npm:0.23.0" - conditions: os=android & cpu=arm64 - languageName: node - linkType: hard - "@esbuild/android-arm@npm:0.17.19": version: 0.17.19 resolution: "@esbuild/android-arm@npm:0.17.19" @@ -2946,13 +2932,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/android-arm@npm:0.23.0": - version: 0.23.0 - resolution: "@esbuild/android-arm@npm:0.23.0" - conditions: os=android & cpu=arm - languageName: node - linkType: hard - "@esbuild/android-x64@npm:0.17.19": version: 0.17.19 resolution: "@esbuild/android-x64@npm:0.17.19" @@ -2967,13 +2946,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/android-x64@npm:0.23.0": - version: 0.23.0 - resolution: "@esbuild/android-x64@npm:0.23.0" - conditions: os=android & cpu=x64 - languageName: node - linkType: hard - "@esbuild/darwin-arm64@npm:0.17.19": version: 0.17.19 resolution: "@esbuild/darwin-arm64@npm:0.17.19" @@ -2988,13 +2960,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/darwin-arm64@npm:0.23.0": - version: 0.23.0 - resolution: "@esbuild/darwin-arm64@npm:0.23.0" - conditions: os=darwin & cpu=arm64 - languageName: node - linkType: hard - "@esbuild/darwin-x64@npm:0.17.19": version: 0.17.19 resolution: "@esbuild/darwin-x64@npm:0.17.19" @@ -3009,13 +2974,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/darwin-x64@npm:0.23.0": - version: 0.23.0 - resolution: "@esbuild/darwin-x64@npm:0.23.0" - conditions: os=darwin & cpu=x64 - languageName: node - linkType: hard - "@esbuild/freebsd-arm64@npm:0.17.19": version: 0.17.19 resolution: "@esbuild/freebsd-arm64@npm:0.17.19" @@ -3030,13 +2988,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/freebsd-arm64@npm:0.23.0": - version: 0.23.0 - resolution: "@esbuild/freebsd-arm64@npm:0.23.0" - conditions: os=freebsd & cpu=arm64 - languageName: node - linkType: hard - "@esbuild/freebsd-x64@npm:0.17.19": version: 0.17.19 resolution: "@esbuild/freebsd-x64@npm:0.17.19" @@ -3051,13 +3002,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/freebsd-x64@npm:0.23.0": - version: 0.23.0 - resolution: "@esbuild/freebsd-x64@npm:0.23.0" - conditions: os=freebsd & cpu=x64 - languageName: node - linkType: hard - "@esbuild/linux-arm64@npm:0.17.19": version: 0.17.19 resolution: "@esbuild/linux-arm64@npm:0.17.19" @@ -3072,13 +3016,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-arm64@npm:0.23.0": - version: 0.23.0 - resolution: "@esbuild/linux-arm64@npm:0.23.0" - conditions: os=linux & cpu=arm64 - languageName: node - linkType: hard - "@esbuild/linux-arm@npm:0.17.19": version: 0.17.19 resolution: "@esbuild/linux-arm@npm:0.17.19" @@ -3093,13 +3030,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-arm@npm:0.23.0": - version: 0.23.0 - resolution: "@esbuild/linux-arm@npm:0.23.0" - conditions: os=linux & cpu=arm - languageName: node - linkType: hard - "@esbuild/linux-ia32@npm:0.17.19": version: 0.17.19 resolution: "@esbuild/linux-ia32@npm:0.17.19" @@ -3114,13 +3044,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-ia32@npm:0.23.0": - version: 0.23.0 - resolution: "@esbuild/linux-ia32@npm:0.23.0" - conditions: os=linux & cpu=ia32 - languageName: node - linkType: hard - "@esbuild/linux-loong64@npm:0.17.19": version: 0.17.19 resolution: "@esbuild/linux-loong64@npm:0.17.19" @@ -3135,13 +3058,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-loong64@npm:0.23.0": - version: 0.23.0 - resolution: "@esbuild/linux-loong64@npm:0.23.0" - conditions: os=linux & cpu=loong64 - languageName: node - linkType: hard - "@esbuild/linux-mips64el@npm:0.17.19": version: 0.17.19 resolution: "@esbuild/linux-mips64el@npm:0.17.19" @@ -3156,13 +3072,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-mips64el@npm:0.23.0": - version: 0.23.0 - resolution: "@esbuild/linux-mips64el@npm:0.23.0" - conditions: os=linux & cpu=mips64el - languageName: node - linkType: hard - "@esbuild/linux-ppc64@npm:0.17.19": version: 0.17.19 resolution: "@esbuild/linux-ppc64@npm:0.17.19" @@ -3177,13 +3086,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-ppc64@npm:0.23.0": - version: 0.23.0 - resolution: "@esbuild/linux-ppc64@npm:0.23.0" - conditions: os=linux & cpu=ppc64 - languageName: node - linkType: hard - "@esbuild/linux-riscv64@npm:0.17.19": version: 0.17.19 resolution: "@esbuild/linux-riscv64@npm:0.17.19" @@ -3198,13 +3100,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-riscv64@npm:0.23.0": - version: 0.23.0 - resolution: "@esbuild/linux-riscv64@npm:0.23.0" - conditions: os=linux & cpu=riscv64 - languageName: node - linkType: hard - "@esbuild/linux-s390x@npm:0.17.19": version: 0.17.19 resolution: "@esbuild/linux-s390x@npm:0.17.19" @@ -3219,13 +3114,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-s390x@npm:0.23.0": - version: 0.23.0 - resolution: "@esbuild/linux-s390x@npm:0.23.0" - conditions: os=linux & cpu=s390x - languageName: node - linkType: hard - "@esbuild/linux-x64@npm:0.17.19": version: 0.17.19 resolution: "@esbuild/linux-x64@npm:0.17.19" @@ -3240,13 +3128,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-x64@npm:0.23.0": - version: 0.23.0 - resolution: "@esbuild/linux-x64@npm:0.23.0" - conditions: os=linux & cpu=x64 - languageName: node - linkType: hard - "@esbuild/netbsd-x64@npm:0.17.19": version: 0.17.19 resolution: "@esbuild/netbsd-x64@npm:0.17.19" @@ -3261,20 +3142,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/netbsd-x64@npm:0.23.0": - version: 0.23.0 - resolution: "@esbuild/netbsd-x64@npm:0.23.0" - conditions: os=netbsd & cpu=x64 - languageName: node - linkType: hard - -"@esbuild/openbsd-arm64@npm:0.23.0": - version: 0.23.0 - resolution: "@esbuild/openbsd-arm64@npm:0.23.0" - conditions: os=openbsd & cpu=arm64 - languageName: node - linkType: hard - "@esbuild/openbsd-x64@npm:0.17.19": version: 0.17.19 resolution: "@esbuild/openbsd-x64@npm:0.17.19" @@ -3289,13 +3156,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/openbsd-x64@npm:0.23.0": - version: 0.23.0 - resolution: "@esbuild/openbsd-x64@npm:0.23.0" - conditions: os=openbsd & cpu=x64 - languageName: node - linkType: hard - "@esbuild/sunos-x64@npm:0.17.19": version: 0.17.19 resolution: "@esbuild/sunos-x64@npm:0.17.19" @@ -3310,13 +3170,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/sunos-x64@npm:0.23.0": - version: 0.23.0 - resolution: "@esbuild/sunos-x64@npm:0.23.0" - conditions: os=sunos & cpu=x64 - languageName: node - linkType: hard - "@esbuild/win32-arm64@npm:0.17.19": version: 0.17.19 resolution: "@esbuild/win32-arm64@npm:0.17.19" @@ -3331,13 +3184,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/win32-arm64@npm:0.23.0": - version: 0.23.0 - resolution: "@esbuild/win32-arm64@npm:0.23.0" - conditions: os=win32 & cpu=arm64 - languageName: node - linkType: hard - "@esbuild/win32-ia32@npm:0.17.19": version: 0.17.19 resolution: "@esbuild/win32-ia32@npm:0.17.19" @@ -3352,13 +3198,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/win32-ia32@npm:0.23.0": - version: 0.23.0 - resolution: "@esbuild/win32-ia32@npm:0.23.0" - conditions: os=win32 & cpu=ia32 - languageName: node - linkType: hard - "@esbuild/win32-x64@npm:0.17.19": version: 0.17.19 resolution: "@esbuild/win32-x64@npm:0.17.19" @@ -3373,13 +3212,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/win32-x64@npm:0.23.0": - version: 0.23.0 - resolution: "@esbuild/win32-x64@npm:0.23.0" - conditions: os=win32 & cpu=x64 - languageName: node - linkType: hard - "@eslint-community/eslint-utils@npm:^4.2.0": version: 4.4.0 resolution: "@eslint-community/eslint-utils@npm:4.4.0" @@ -6059,118 +5891,6 @@ __metadata: languageName: node linkType: hard -"@rollup/rollup-android-arm-eabi@npm:4.20.0": - version: 4.20.0 - resolution: "@rollup/rollup-android-arm-eabi@npm:4.20.0" - conditions: os=android & cpu=arm - languageName: node - linkType: hard - -"@rollup/rollup-android-arm64@npm:4.20.0": - version: 4.20.0 - resolution: "@rollup/rollup-android-arm64@npm:4.20.0" - conditions: os=android & cpu=arm64 - languageName: node - linkType: hard - -"@rollup/rollup-darwin-arm64@npm:4.20.0": - version: 4.20.0 - resolution: "@rollup/rollup-darwin-arm64@npm:4.20.0" - conditions: os=darwin & cpu=arm64 - languageName: node - linkType: hard - -"@rollup/rollup-darwin-x64@npm:4.20.0": - version: 4.20.0 - resolution: "@rollup/rollup-darwin-x64@npm:4.20.0" - conditions: os=darwin & cpu=x64 - languageName: node - linkType: hard - -"@rollup/rollup-linux-arm-gnueabihf@npm:4.20.0": - version: 4.20.0 - resolution: "@rollup/rollup-linux-arm-gnueabihf@npm:4.20.0" - conditions: os=linux & cpu=arm & libc=glibc - languageName: node - linkType: hard - -"@rollup/rollup-linux-arm-musleabihf@npm:4.20.0": - version: 4.20.0 - resolution: "@rollup/rollup-linux-arm-musleabihf@npm:4.20.0" - conditions: os=linux & cpu=arm & libc=musl - languageName: node - linkType: hard - -"@rollup/rollup-linux-arm64-gnu@npm:4.20.0": - version: 4.20.0 - resolution: "@rollup/rollup-linux-arm64-gnu@npm:4.20.0" - conditions: os=linux & cpu=arm64 & libc=glibc - languageName: node - linkType: hard - -"@rollup/rollup-linux-arm64-musl@npm:4.20.0": - version: 4.20.0 - resolution: "@rollup/rollup-linux-arm64-musl@npm:4.20.0" - conditions: os=linux & cpu=arm64 & libc=musl - languageName: node - linkType: hard - -"@rollup/rollup-linux-powerpc64le-gnu@npm:4.20.0": - version: 4.20.0 - resolution: "@rollup/rollup-linux-powerpc64le-gnu@npm:4.20.0" - conditions: os=linux & cpu=ppc64 & libc=glibc - languageName: node - linkType: hard - -"@rollup/rollup-linux-riscv64-gnu@npm:4.20.0": - version: 4.20.0 - resolution: "@rollup/rollup-linux-riscv64-gnu@npm:4.20.0" - conditions: os=linux & cpu=riscv64 & libc=glibc - languageName: node - linkType: hard - -"@rollup/rollup-linux-s390x-gnu@npm:4.20.0": - version: 4.20.0 - resolution: "@rollup/rollup-linux-s390x-gnu@npm:4.20.0" - conditions: os=linux & cpu=s390x & libc=glibc - languageName: node - linkType: hard - -"@rollup/rollup-linux-x64-gnu@npm:4.20.0": - version: 4.20.0 - resolution: "@rollup/rollup-linux-x64-gnu@npm:4.20.0" - conditions: os=linux & cpu=x64 & libc=glibc - languageName: node - linkType: hard - -"@rollup/rollup-linux-x64-musl@npm:4.20.0": - version: 4.20.0 - resolution: "@rollup/rollup-linux-x64-musl@npm:4.20.0" - conditions: os=linux & cpu=x64 & libc=musl - languageName: node - linkType: hard - -"@rollup/rollup-win32-arm64-msvc@npm:4.20.0": - version: 4.20.0 - resolution: "@rollup/rollup-win32-arm64-msvc@npm:4.20.0" - conditions: os=win32 & cpu=arm64 - languageName: node - linkType: hard - -"@rollup/rollup-win32-ia32-msvc@npm:4.20.0": - version: 4.20.0 - resolution: "@rollup/rollup-win32-ia32-msvc@npm:4.20.0" - conditions: os=win32 & cpu=ia32 - languageName: node - linkType: hard - -"@rollup/rollup-win32-x64-msvc@npm:4.20.0": - version: 4.20.0 - resolution: "@rollup/rollup-win32-x64-msvc@npm:4.20.0" - conditions: os=win32 & cpu=x64 - languageName: node - linkType: hard - "@rushstack/eslint-patch@npm:^1.1.3": version: 1.3.2 resolution: "@rushstack/eslint-patch@npm:1.3.2" @@ -6224,6 +5944,13 @@ __metadata: languageName: node linkType: hard +"@sopt-makers/colors@npm:^3.0.3": + version: 3.0.3 + resolution: "@sopt-makers/colors@npm:3.0.3" + checksum: f6c56d187cb0652800204aa08b4a0f18c2b8217af0c5587584524158fb1d30fa3d0f7f304021f8c70a7cc460076eccc2c6dce1890bec22d2eedb659361a4ee17 + languageName: node + linkType: hard + "@sopt-makers/fonts@npm:^1.0.0": version: 1.0.0 resolution: "@sopt-makers/fonts@npm:1.0.0" @@ -6231,10 +5958,10 @@ __metadata: languageName: node linkType: hard -"@sopt-makers/fonts@npm:^2.0.1": - version: 2.0.1 - resolution: "@sopt-makers/fonts@npm:2.0.1" - checksum: eb734be0cef629e408bb5e34aba88921be2b2a7df73fe8e3d24b96846a0486e41b8962c0657fe5649f76ea11b5a1872337aa83462f8bb49daa796ccd693b0d14 +"@sopt-makers/fonts@npm:^2.0.2": + version: 2.0.2 + resolution: "@sopt-makers/fonts@npm:2.0.2" + checksum: 757c308181498c624e952da4398cb88fd69c8600da4d4c65303290b3ebd7a64f2c6a1f9e4abfed513dc77097ee867499d49baeee3e4f017c9a771e65f2998877 languageName: node linkType: hard @@ -6247,12 +5974,12 @@ __metadata: languageName: node linkType: hard -"@sopt-makers/icons@npm:^1.0.6": - version: 1.0.6 - resolution: "@sopt-makers/icons@npm:1.0.6" +"@sopt-makers/icons@npm:^1.0.7": + version: 1.0.7 + resolution: "@sopt-makers/icons@npm:1.0.7" peerDependencies: react: ^18.2.0 - checksum: 372f5853f04a847c48e437200d8fb2a8f58da025785e6078e7c66bfb1ea943fc69072b9c1e5503f2778c1d5935509c2319c6fe8593b35c513c3e0daa380f659b + checksum: ffdc98414e47ab1711c47dd4d08aa8e8f95dd872361edd23cd986634694df5a89dd51d0136ece27c29e8561a3fa0027721f4286c674af1e75aa49fa4a9c73d01 languageName: node linkType: hard @@ -6272,22 +5999,21 @@ __metadata: languageName: unknown linkType: soft -"@sopt-makers/ui@npm:^2.7.6": - version: 2.7.6 - resolution: "@sopt-makers/ui@npm:2.7.6" +"@sopt-makers/ui@npm:^2.8.1": + version: 2.8.1 + resolution: "@sopt-makers/ui@npm:2.8.1" dependencies: "@radix-ui/react-dialog": ^1.0.5 "@radix-ui/react-switch": ^1.0.3 - "@sopt-makers/colors": ^3.0.2 - "@sopt-makers/fonts": ^2.0.1 - "@sopt-makers/icons": ^1.0.6 + "@sopt-makers/colors": ^3.0.3 + "@sopt-makers/fonts": ^2.0.2 + "@sopt-makers/icons": ^1.0.7 "@vanilla-extract/css": ^1.14.0 - "@vanilla-extract/sprinkles": 1.6.1 - tsup: ^8.0.2 + "@vanilla-extract/sprinkles": ^1.6.1 peerDependencies: react: ^18.2.0 react-dom: ^18.2.0 - checksum: e9ffee288f06f44c35a62bcfa661ba48c0fb8a27e23fc5be4df986c144dfabb55ebb7c4ef487b2f87f689e6834bcee468632ad5a042497a0aff718730203e8e0 + checksum: 8e92f3db85470ac36f1cd0aca6b3a15fc3add8a5ce2eef074a8d7166f8f7ab8d868c733b2ade61dffb41f2aae091a6b340bdcf99a651fb669ecbdff398006cd9 languageName: node linkType: hard @@ -7978,13 +7704,6 @@ __metadata: languageName: node linkType: hard -"@types/estree@npm:1.0.5": - version: 1.0.5 - resolution: "@types/estree@npm:1.0.5" - checksum: dd8b5bed28e6213b7acd0fb665a84e693554d850b0df423ac8076cc3ad5823a6bc26b0251d080bdc545af83179ede51dd3f6fa78cad2c46ed1f29624ddf3e41a - languageName: node - linkType: hard - "@types/estree@npm:^0.0.51": version: 0.0.51 resolution: "@types/estree@npm:0.0.51" @@ -8664,12 +8383,12 @@ __metadata: languageName: node linkType: hard -"@vanilla-extract/sprinkles@npm:1.6.1": - version: 1.6.1 - resolution: "@vanilla-extract/sprinkles@npm:1.6.1" +"@vanilla-extract/sprinkles@npm:^1.6.1": + version: 1.6.3 + resolution: "@vanilla-extract/sprinkles@npm:1.6.3" peerDependencies: "@vanilla-extract/css": ^1.0.0 - checksum: 13c53a94b19f9226c2684b0da06b98022d2faaf504cb5a4a8e5a0abae499aaa7855c17aa6d88534800d9427696b3248f4fc1a5332bde336c445d837017569f3b + checksum: 7eb4fe0f1a6048bf5ffb5ffab964c2d127ff95244da79dca2e448af380b591c7af3b4f63ab243584baa8a42c7694d8fe9eeb366587a2da381a481fe1a9e02af8 languageName: node linkType: hard @@ -10032,17 +9751,6 @@ __metadata: languageName: node linkType: hard -"bundle-require@npm:^5.0.0": - version: 5.0.0 - resolution: "bundle-require@npm:5.0.0" - dependencies: - load-tsconfig: ^0.2.3 - peerDependencies: - esbuild: ">=0.18" - checksum: c5b31e2782546c21649cfc6e4bbdbaa0a41764e0d73b31c95f0a40efe961f83bc5cdc92308ad26aee735cf82b438cf945cc96dfefa16c5d8fc61a7cca67fa3fb - languageName: node - linkType: hard - "busboy@npm:1.6.0": version: 1.6.0 resolution: "busboy@npm:1.6.0" @@ -10088,7 +9796,7 @@ __metadata: languageName: node linkType: hard -"cac@npm:^6.7.12, cac@npm:^6.7.14": +"cac@npm:^6.7.12": version: 6.7.14 resolution: "cac@npm:6.7.14" checksum: 45a2496a9443abbe7f52a49b22fbe51b1905eff46e03fd5e6c98e3f85077be3f8949685a1849b1a9cd2bc3e5567dfebcf64f01ce01847baf918f1b37c839791a @@ -10252,25 +9960,6 @@ __metadata: languageName: node linkType: hard -"chokidar@npm:^3.6.0": - version: 3.6.0 - resolution: "chokidar@npm:3.6.0" - dependencies: - anymatch: ~3.1.2 - braces: ~3.0.2 - fsevents: ~2.3.2 - glob-parent: ~5.1.2 - is-binary-path: ~2.1.0 - is-glob: ~4.0.1 - normalize-path: ~3.0.0 - readdirp: ~3.6.0 - dependenciesMeta: - fsevents: - optional: true - checksum: d2f29f499705dcd4f6f3bbed79a9ce2388cf530460122eed3b9c48efeab7a4e28739c6551fd15bec9245c6b9eeca7a32baa64694d64d9b6faeb74ddb8c4a413d - languageName: node - linkType: hard - "chownr@npm:^1.1.1": version: 1.1.4 resolution: "chownr@npm:1.1.4" @@ -10681,13 +10370,6 @@ __metadata: languageName: node linkType: hard -"consola@npm:^3.2.3": - version: 3.2.3 - resolution: "consola@npm:3.2.3" - checksum: 32ec70e177dd2385c42e38078958cc7397be91db21af90c6f9faa0b16168b49b1c61d689338604bbb2d64370b9347a35f42a9197663a913d3a405bb0ce728499 - languageName: node - linkType: hard - "console-browserify@npm:^1.2.0": version: 1.2.0 resolution: "console-browserify@npm:1.2.0" @@ -11149,18 +10831,6 @@ __metadata: languageName: node linkType: hard -"debug@npm:^4.3.5": - version: 4.3.6 - resolution: "debug@npm:4.3.6" - dependencies: - ms: 2.1.2 - peerDependenciesMeta: - supports-color: - optional: true - checksum: 1630b748dea3c581295e02137a9f5cbe2c1d85fea35c1e6597a65ca2b16a6fce68cec61b299d480787ef310ba927dc8c92d3061faba0ad06c6a724672f66be7f - languageName: node - linkType: hard - "decamelize-keys@npm:^1.1.0": version: 1.1.1 resolution: "decamelize-keys@npm:1.1.1" @@ -12123,89 +11793,6 @@ __metadata: languageName: node linkType: hard -"esbuild@npm:^0.23.0": - version: 0.23.0 - resolution: "esbuild@npm:0.23.0" - dependencies: - "@esbuild/aix-ppc64": 0.23.0 - "@esbuild/android-arm": 0.23.0 - "@esbuild/android-arm64": 0.23.0 - "@esbuild/android-x64": 0.23.0 - "@esbuild/darwin-arm64": 0.23.0 - "@esbuild/darwin-x64": 0.23.0 - "@esbuild/freebsd-arm64": 0.23.0 - "@esbuild/freebsd-x64": 0.23.0 - "@esbuild/linux-arm": 0.23.0 - "@esbuild/linux-arm64": 0.23.0 - "@esbuild/linux-ia32": 0.23.0 - "@esbuild/linux-loong64": 0.23.0 - "@esbuild/linux-mips64el": 0.23.0 - "@esbuild/linux-ppc64": 0.23.0 - "@esbuild/linux-riscv64": 0.23.0 - "@esbuild/linux-s390x": 0.23.0 - "@esbuild/linux-x64": 0.23.0 - "@esbuild/netbsd-x64": 0.23.0 - "@esbuild/openbsd-arm64": 0.23.0 - "@esbuild/openbsd-x64": 0.23.0 - "@esbuild/sunos-x64": 0.23.0 - "@esbuild/win32-arm64": 0.23.0 - "@esbuild/win32-ia32": 0.23.0 - "@esbuild/win32-x64": 0.23.0 - dependenciesMeta: - "@esbuild/aix-ppc64": - optional: true - "@esbuild/android-arm": - optional: true - "@esbuild/android-arm64": - optional: true - "@esbuild/android-x64": - optional: true - "@esbuild/darwin-arm64": - optional: true - "@esbuild/darwin-x64": - optional: true - "@esbuild/freebsd-arm64": - optional: true - "@esbuild/freebsd-x64": - optional: true - "@esbuild/linux-arm": - optional: true - "@esbuild/linux-arm64": - optional: true - "@esbuild/linux-ia32": - optional: true - "@esbuild/linux-loong64": - optional: true - "@esbuild/linux-mips64el": - optional: true - "@esbuild/linux-ppc64": - optional: true - "@esbuild/linux-riscv64": - optional: true - "@esbuild/linux-s390x": - optional: true - "@esbuild/linux-x64": - optional: true - "@esbuild/netbsd-x64": - optional: true - "@esbuild/openbsd-arm64": - optional: true - "@esbuild/openbsd-x64": - optional: true - "@esbuild/sunos-x64": - optional: true - "@esbuild/win32-arm64": - optional: true - "@esbuild/win32-ia32": - optional: true - "@esbuild/win32-x64": - optional: true - bin: - esbuild: bin/esbuild - checksum: 22138538225d5ce79f84fc0d3d3e31b57a91ef50ef00f2d6a9c8a4be4ed28d4b1d0ed14239e54341d1b9a7079f25e69761d0266f3c255da94e647b079b790421 - languageName: node - linkType: hard - "escalade@npm:^3.1.1": version: 3.1.1 resolution: "escalade@npm:3.1.1" @@ -13460,22 +13047,6 @@ __metadata: languageName: node linkType: hard -"glob@npm:^10.3.10": - version: 10.4.5 - resolution: "glob@npm:10.4.5" - dependencies: - foreground-child: ^3.1.0 - jackspeak: ^3.1.2 - minimatch: ^9.0.4 - minipass: ^7.1.2 - package-json-from-dist: ^1.0.0 - path-scurry: ^1.11.1 - bin: - glob: dist/esm/bin.mjs - checksum: 0bc725de5e4862f9f387fd0f2b274baf16850dcd2714502ccf471ee401803997983e2c05590cb65f9675a3c6f2a58e7a53f9e365704108c6ad3cbf1d60934c4a - languageName: node - linkType: hard - "glob@npm:^7.0.0, glob@npm:^7.1.3, glob@npm:^7.1.4": version: 7.2.3 resolution: "glob@npm:7.2.3" @@ -14735,19 +14306,6 @@ __metadata: languageName: node linkType: hard -"jackspeak@npm:^3.1.2": - version: 3.4.3 - resolution: "jackspeak@npm:3.4.3" - dependencies: - "@isaacs/cliui": ^8.0.2 - "@pkgjs/parseargs": ^0.11.0 - dependenciesMeta: - "@pkgjs/parseargs": - optional: true - checksum: be31027fc72e7cc726206b9f560395604b82e0fddb46c4cbf9f97d049bcef607491a5afc0699612eaa4213ca5be8fd3e1e7cd187b3040988b65c9489838a7c00 - languageName: node - linkType: hard - "jake@npm:^10.8.5": version: 10.8.7 resolution: "jake@npm:10.8.7" @@ -15368,7 +14926,7 @@ __metadata: languageName: node linkType: hard -"joycon@npm:^3.0.1, joycon@npm:^3.1.1": +"joycon@npm:^3.0.1": version: 3.1.1 resolution: "joycon@npm:3.1.1" checksum: 8003c9c3fc79c5c7602b1c7e9f7a2df2e9916f046b0dbad862aa589be78c15734d11beb9fe846f5e06138df22cb2ad29961b6a986ba81c4920ce2b15a7f11067 @@ -15718,13 +15276,6 @@ __metadata: languageName: node linkType: hard -"lilconfig@npm:^3.1.1": - version: 3.1.2 - resolution: "lilconfig@npm:3.1.2" - checksum: 4e8b83ddd1d0ad722600994e6ba5d858ddca14f0587aa6b9c8185e17548149b5e13d4d583d811e9e9323157fa8c6a527e827739794c7502b59243c58e210b8c3 - languageName: node - linkType: hard - "lines-and-columns@npm:^1.1.6": version: 1.2.4 resolution: "lines-and-columns@npm:1.2.4" @@ -15890,13 +15441,6 @@ __metadata: languageName: node linkType: hard -"lru-cache@npm:^10.2.0": - version: 10.4.3 - resolution: "lru-cache@npm:10.4.3" - checksum: 6476138d2125387a6d20f100608c2583d415a4f64a0fecf30c9e2dda976614f09cad4baa0842447bd37dd459a7bd27f57d9d8f8ce558805abd487c583f3d774a - languageName: node - linkType: hard - "lru-cache@npm:^5.1.1": version: 5.1.1 resolution: "lru-cache@npm:5.1.1" @@ -16578,15 +16122,6 @@ __metadata: languageName: node linkType: hard -"minimatch@npm:^9.0.4": - version: 9.0.5 - resolution: "minimatch@npm:9.0.5" - dependencies: - brace-expansion: ^2.0.1 - checksum: 2c035575eda1e50623c731ec6c14f65a85296268f749b9337005210bb2b34e2705f8ef1a358b188f69892286ab99dc42c8fb98a57bde55c8d81b3023c19cea28 - languageName: node - linkType: hard - "minimist-options@npm:4.1.0": version: 4.1.0 resolution: "minimist-options@npm:4.1.0" @@ -16679,13 +16214,6 @@ __metadata: languageName: node linkType: hard -"minipass@npm:^5.0.0 || ^6.0.2 || ^7.0.0, minipass@npm:^7.1.2": - version: 7.1.2 - resolution: "minipass@npm:7.1.2" - checksum: 2bfd325b95c555f2b4d2814d49325691c7bee937d753814861b0b49d5edcda55cbbf22b6b6a60bb91eddac8668771f03c5ff647dcd9d0f798e9548b9cdc46ee3 - languageName: node - linkType: hard - "minizlib@npm:^2.1.1, minizlib@npm:^2.1.2": version: 2.1.2 resolution: "minizlib@npm:2.1.2" @@ -17491,13 +17019,6 @@ __metadata: languageName: node linkType: hard -"package-json-from-dist@npm:^1.0.0": - version: 1.0.0 - resolution: "package-json-from-dist@npm:1.0.0" - checksum: ac706ec856a5a03f5261e4e48fa974f24feb044d51f84f8332e2af0af04fbdbdd5bbbfb9cbbe354190409bc8307c83a9e38c6672c3c8855f709afb0006a009ea - languageName: node - linkType: hard - "pako@npm:~0.2.0": version: 0.2.9 resolution: "pako@npm:0.2.9" @@ -17631,16 +17152,6 @@ __metadata: languageName: node linkType: hard -"path-scurry@npm:^1.11.1": - version: 1.11.1 - resolution: "path-scurry@npm:1.11.1" - dependencies: - lru-cache: ^10.2.0 - minipass: ^5.0.0 || ^6.0.2 || ^7.0.0 - checksum: 890d5abcd593a7912dcce7cf7c6bf7a0b5648e3dee6caf0712c126ca0a65c7f3d7b9d769072a4d1baf370f61ce493ab5b038d59988688e0c5f3f646ee3c69023 - languageName: node - linkType: hard - "path-scurry@npm:^1.7.0": version: 1.9.2 resolution: "path-scurry@npm:1.9.2" @@ -17717,13 +17228,6 @@ __metadata: languageName: node linkType: hard -"picocolors@npm:^1.0.1": - version: 1.0.1 - resolution: "picocolors@npm:1.0.1" - checksum: fa68166d1f56009fc02a34cdfd112b0dd3cf1ef57667ac57281f714065558c01828cdf4f18600ad6851cbe0093952ed0660b1e0156bddf2184b6aaf5817553a5 - languageName: node - linkType: hard - "picomatch@npm:^2.0.4, picomatch@npm:^2.2.1, picomatch@npm:^2.2.3, picomatch@npm:^2.3.0, picomatch@npm:^2.3.1": version: 2.3.1 resolution: "picomatch@npm:2.3.1" @@ -17820,29 +17324,6 @@ __metadata: languageName: node linkType: hard -"postcss-load-config@npm:^6.0.1": - version: 6.0.1 - resolution: "postcss-load-config@npm:6.0.1" - dependencies: - lilconfig: ^3.1.1 - peerDependencies: - jiti: ">=1.21.0" - postcss: ">=8.0.9" - tsx: ^4.8.1 - yaml: ^2.4.2 - peerDependenciesMeta: - jiti: - optional: true - postcss: - optional: true - tsx: - optional: true - yaml: - optional: true - checksum: 701061264cce7646e53e4cecd14aa95432a9bd508f30520a31dfa4c86fe9252d5d8d0204fdbfbddc1559c9b8791556e9c4b92c56070f5fca0a6c60e5ee9ad0fd - languageName: node - linkType: hard - "postcss-loader@npm:^7.0.2": version: 7.3.3 resolution: "postcss-loader@npm:7.3.3" @@ -19246,69 +18727,6 @@ __metadata: languageName: node linkType: hard -"rollup@npm:^4.19.0": - version: 4.20.0 - resolution: "rollup@npm:4.20.0" - dependencies: - "@rollup/rollup-android-arm-eabi": 4.20.0 - "@rollup/rollup-android-arm64": 4.20.0 - "@rollup/rollup-darwin-arm64": 4.20.0 - "@rollup/rollup-darwin-x64": 4.20.0 - "@rollup/rollup-linux-arm-gnueabihf": 4.20.0 - "@rollup/rollup-linux-arm-musleabihf": 4.20.0 - "@rollup/rollup-linux-arm64-gnu": 4.20.0 - "@rollup/rollup-linux-arm64-musl": 4.20.0 - "@rollup/rollup-linux-powerpc64le-gnu": 4.20.0 - "@rollup/rollup-linux-riscv64-gnu": 4.20.0 - "@rollup/rollup-linux-s390x-gnu": 4.20.0 - "@rollup/rollup-linux-x64-gnu": 4.20.0 - "@rollup/rollup-linux-x64-musl": 4.20.0 - "@rollup/rollup-win32-arm64-msvc": 4.20.0 - "@rollup/rollup-win32-ia32-msvc": 4.20.0 - "@rollup/rollup-win32-x64-msvc": 4.20.0 - "@types/estree": 1.0.5 - fsevents: ~2.3.2 - dependenciesMeta: - "@rollup/rollup-android-arm-eabi": - optional: true - "@rollup/rollup-android-arm64": - optional: true - "@rollup/rollup-darwin-arm64": - optional: true - "@rollup/rollup-darwin-x64": - optional: true - "@rollup/rollup-linux-arm-gnueabihf": - optional: true - "@rollup/rollup-linux-arm-musleabihf": - optional: true - "@rollup/rollup-linux-arm64-gnu": - optional: true - "@rollup/rollup-linux-arm64-musl": - optional: true - "@rollup/rollup-linux-powerpc64le-gnu": - optional: true - "@rollup/rollup-linux-riscv64-gnu": - optional: true - "@rollup/rollup-linux-s390x-gnu": - optional: true - "@rollup/rollup-linux-x64-gnu": - optional: true - "@rollup/rollup-linux-x64-musl": - optional: true - "@rollup/rollup-win32-arm64-msvc": - optional: true - "@rollup/rollup-win32-ia32-msvc": - optional: true - "@rollup/rollup-win32-x64-msvc": - optional: true - fsevents: - optional: true - bin: - rollup: dist/bin/rollup - checksum: 92c6c68a93d7726345df2627fd5b0a88d1481fbe76e6c8ad84a8eae6835c03fc36ed4cb3271350b5290397b26eb97a97297496ca972289b2299a24e81649bca0 - languageName: node - linkType: hard - "run-applescript@npm:^5.0.0": version: 5.0.0 resolution: "run-applescript@npm:5.0.0" @@ -19812,7 +19230,7 @@ __metadata: "@sopt-makers/colors": ^3.0.2 "@sopt-makers/fonts": ^1.0.0 "@sopt-makers/icons": ^1.0.5 - "@sopt-makers/ui": ^2.7.6 + "@sopt-makers/ui": ^2.8.1 "@storybook/addon-actions": ^7.0.23 "@storybook/addon-docs": ^7.0.23 "@storybook/addon-essentials": ^7.0.23 @@ -20522,24 +19940,6 @@ __metadata: languageName: node linkType: hard -"sucrase@npm:^3.35.0": - version: 3.35.0 - resolution: "sucrase@npm:3.35.0" - dependencies: - "@jridgewell/gen-mapping": ^0.3.2 - commander: ^4.0.0 - glob: ^10.3.10 - lines-and-columns: ^1.1.6 - mz: ^2.7.0 - pirates: ^4.0.1 - ts-interface-checker: ^0.1.9 - bin: - sucrase: bin/sucrase - sucrase-node: bin/sucrase-node - checksum: 9fc5792a9ab8a14dcf9c47dcb704431d35c1cdff1d17d55d382a31c2e8e3063870ad32ce120a80915498486246d612e30cda44f1624d9d9a10423e1a43487ad1 - languageName: node - linkType: hard - "supports-color@npm:^5.3.0": version: 5.5.0 resolution: "supports-color@npm:5.5.0" @@ -21146,47 +20546,6 @@ __metadata: languageName: node linkType: hard -"tsup@npm:^8.0.2": - version: 8.2.4 - resolution: "tsup@npm:8.2.4" - dependencies: - bundle-require: ^5.0.0 - cac: ^6.7.14 - chokidar: ^3.6.0 - consola: ^3.2.3 - debug: ^4.3.5 - esbuild: ^0.23.0 - execa: ^5.1.1 - globby: ^11.1.0 - joycon: ^3.1.1 - picocolors: ^1.0.1 - postcss-load-config: ^6.0.1 - resolve-from: ^5.0.0 - rollup: ^4.19.0 - source-map: 0.8.0-beta.0 - sucrase: ^3.35.0 - tree-kill: ^1.2.2 - peerDependencies: - "@microsoft/api-extractor": ^7.36.0 - "@swc/core": ^1 - postcss: ^8.4.12 - typescript: ">=4.5.0" - peerDependenciesMeta: - "@microsoft/api-extractor": - optional: true - "@swc/core": - optional: true - postcss: - optional: true - typescript: - optional: true - bin: - tsup: dist/cli-default.js - tsup-node: dist/cli-node.js - checksum: 5c5fb733716dad9d3a6c15a4db0d9b0bd5f7fdc37d8961a24ac8da16fb280f2358869c21a8cf14e8f2e965795e234aaba1197cf621c45293941706b736c20d1a - languageName: node - linkType: hard - "tsutils@npm:^3.21.0": version: 3.21.0 resolution: "tsutils@npm:3.21.0" From 34265b95f833a29a39bf3dcbfd83f589f201d602 Mon Sep 17 00:00:00 2001 From: Eunseo Sim <55528304+simeunseo@users.noreply.github.com> Date: Sat, 14 Dec 2024 00:31:23 +0900 Subject: [PATCH 04/24] =?UTF-8?q?feat:=20=EA=B0=9C=EC=84=A0=EB=90=9C=20Sel?= =?UTF-8?q?ect=EC=97=90=20=EB=A7=9E=EC=B6=94=EC=96=B4=20=EB=A0=88=EC=9D=B4?= =?UTF-8?q?=EC=95=84=EC=9B=83=20=EB=B3=80=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../members/main/MemberList/index.tsx | 103 +++++++++--------- 1 file changed, 51 insertions(+), 52 deletions(-) diff --git a/src/components/members/main/MemberList/index.tsx b/src/components/members/main/MemberList/index.tsx index e349b27ad..2c5e66153 100644 --- a/src/components/members/main/MemberList/index.tsx +++ b/src/components/members/main/MemberList/index.tsx @@ -317,57 +317,6 @@ const MemberList: FC = ({ banner }) => { {banner} - - {profiles?.map((profiles, index) => ( - - {profiles.map((profile) => { - const sorted = profile.activities.sort((a, b) => b.generation - a.generation); - const badges = sorted.map((activity) => ({ - content: `${activity.generation}기 ${activity.part}`, - isActive: activity.generation === LATEST_GENERATION, - })); - - const belongs = profile.careers.find((career) => career.isCurrent)?.companyName ?? profile.university; - - return ( - handleClickCard(profile)} - > - { - e.preventDefault(); - logClickEvent('messageBadge'); - setMessageModalState({ - show: true, - data: { - targetId: `${profile.id}`, - name: profile.name, - profileUrl: profile.profileImage, - }, - }); - }} - /> - - - - - ); - })} - - ))} - - - {isEmpty && }
= ({ banner }) => { )} + {isEmpty && } + + {profiles?.map((profiles, index) => ( + + {profiles.map((profile) => { + const sorted = profile.activities.sort((a, b) => b.generation - a.generation); + const badges = sorted.map((activity) => ({ + content: `${activity.generation}기 ${activity.part}`, + isActive: activity.generation === LATEST_GENERATION, + })); + + const belongs = profile.careers.find((career) => career.isCurrent)?.companyName ?? profile.university; + + return ( + handleClickCard(profile)} + > + { + e.preventDefault(); + logClickEvent('messageBadge'); + setMessageModalState({ + show: true, + data: { + targetId: `${profile.id}`, + name: profile.name, + profileUrl: profile.profileImage, + }, + }); + }} + /> + + + + + ); + })} + + ))} + @@ -525,7 +524,7 @@ const StyledMain = styled.main` const StyledRightWrapper = styled.div` display: flex; flex: 1; - flex-direction: column-reverse; + flex-direction: column; width: 100%; `; From 7f18120c10156bfd8d277ee68d2ade2b0a54f4bb Mon Sep 17 00:00:00 2001 From: Eunseo Sim <55528304+simeunseo@users.noreply.github.com> Date: Sat, 14 Dec 2024 01:17:56 +0900 Subject: [PATCH 05/24] =?UTF-8?q?feat:=20=EB=A9=A4=EB=B2=84=20=EC=A0=95?= =?UTF-8?q?=EB=A0=AC=20Select=EB=A5=BC=20mds=EB=A1=9C=20=EA=B5=90=EC=B2=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 현재 Select의 오픈 상태에 따른 스타일링을 반영할 수 없어, mds 수정 사항 요청 상태 --- .../MemberList/filters/MemberListOrder.tsx | 53 +++++++++++++++++++ .../members/main/MemberList/index.tsx | 23 +++----- 2 files changed, 60 insertions(+), 16 deletions(-) create mode 100644 src/components/members/main/MemberList/filters/MemberListOrder.tsx diff --git a/src/components/members/main/MemberList/filters/MemberListOrder.tsx b/src/components/members/main/MemberList/filters/MemberListOrder.tsx new file mode 100644 index 000000000..23a659a37 --- /dev/null +++ b/src/components/members/main/MemberList/filters/MemberListOrder.tsx @@ -0,0 +1,53 @@ +import styled from '@emotion/styled'; +import { colors } from '@sopt-makers/colors'; +import { IconSwitchVertical } from '@sopt-makers/icons'; +import { SelectV2 } from '@sopt-makers/ui'; + +import { Option } from '@/components/members/main/MemberList/filters/constants'; + +interface MemberListOrderProps { + className?: string; + value?: Option; + options: Option[]; + onChange?: (value: string) => void; +} + +export function MemberListOrder({ className, value, options, onChange }: MemberListOrderProps) { + return ( + + + + {value?.label} + + + + + {options.map((option) => ( + + ))} + + + ); +} + +const TriggerContentWrapper = styled.div` + display: flex; + gap: 12px; + align-items: center; + padding: 11px 16px; + width: 100%; +`; + +const TriggerContent = styled.div` + color: ${colors.gray300}; + + & > svg { + display: none; + } +`; + +const StyledIconSwitchVertical = styled(IconSwitchVertical)` + width: 20px; + height: 20px; + color: ${colors.gray300}; +`; diff --git a/src/components/members/main/MemberList/index.tsx b/src/components/members/main/MemberList/index.tsx index 2c5e66153..3de333876 100644 --- a/src/components/members/main/MemberList/index.tsx +++ b/src/components/members/main/MemberList/index.tsx @@ -32,6 +32,7 @@ import { } from '@/components/members/main/MemberList/filters/constants'; import MemberListFilter from '@/components/members/main/MemberList/filters/MemberListFilter'; import MemberListFilterSheet from '@/components/members/main/MemberList/filters/MemberListFilterSheet'; +import { MemberListOrder } from '@/components/members/main/MemberList/filters/MemberListOrder'; import { LATEST_GENERATION } from '@/constants/generation'; import { playgroundLink } from '@/constants/links'; import useIntersectionObserver from '@/hooks/useIntersectionObserver'; @@ -66,7 +67,7 @@ const MemberList: FC = ({ banner }) => { const [employed, setEmployed] = useState
)}
From 77c5763b771a40974430076c44d8412224805a73 Mon Sep 17 00:00:00 2001 From: Eunseo Sim <55528304+simeunseo@users.noreply.github.com> Date: Sat, 14 Dec 2024 02:09:17 +0900 Subject: [PATCH 06/24] =?UTF-8?q?feat:=20ProfileSection=20mds=20=EB=B0=98?= =?UTF-8?q?=EC=98=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 2 +- src/components/coffeechat/detail/index.tsx | 2 +- .../detail/ActivitySection/MemberDetail.tsx | 2 +- .../detail/DetailinfoSection/index.tsx | 18 +- .../members/detail/ProfileSection/index.tsx | 266 +++++++++++------- .../members/main/MemberList/index.tsx | 1 - yarn.lock | 11 +- 7 files changed, 171 insertions(+), 131 deletions(-) diff --git a/package.json b/package.json index 5437716f3..8d4e3d144 100644 --- a/package.json +++ b/package.json @@ -44,7 +44,7 @@ "@radix-ui/react-tooltip": "^1.0.5", "@sopt-makers/colors": "^3.0.2", "@sopt-makers/fonts": "^1.0.0", - "@sopt-makers/icons": "^1.0.5", + "@sopt-makers/icons": "^1.0.7", "@sopt-makers/ui": "^2.8.1", "@tanstack/react-query": "^5.4.3", "@toss/emotion-utils": "^1.1.10", diff --git a/src/components/coffeechat/detail/index.tsx b/src/components/coffeechat/detail/index.tsx index 9a61b5ca6..b78194011 100644 --- a/src/components/coffeechat/detail/index.tsx +++ b/src/components/coffeechat/detail/index.tsx @@ -79,7 +79,7 @@ export default function CoffeechatDetail({ memberId }: CoffeechatDetailProp) { isMine={profile.isMine} isCoffeechatTap /> - + SOPT 활동 정보 diff --git a/src/components/members/detail/ActivitySection/MemberDetail.tsx b/src/components/members/detail/ActivitySection/MemberDetail.tsx index bc02fffa5..69f36d72f 100644 --- a/src/components/members/detail/ActivitySection/MemberDetail.tsx +++ b/src/components/members/detail/ActivitySection/MemberDetail.tsx @@ -119,7 +119,7 @@ const Container = styled.div` display: flex; flex-direction: column; align-items: center; - padding: 123px 0; + padding: 120px 0; @media ${MOBILE_MEDIA_QUERY} { padding: 16px 20px; padding-bottom: 100px; diff --git a/src/components/members/detail/DetailinfoSection/index.tsx b/src/components/members/detail/DetailinfoSection/index.tsx index e7f6d2dad..00f3dee1f 100644 --- a/src/components/members/detail/DetailinfoSection/index.tsx +++ b/src/components/members/detail/DetailinfoSection/index.tsx @@ -1,37 +1,21 @@ import styled from '@emotion/styled'; import { colors } from '@sopt-makers/colors'; -import dayjs from 'dayjs'; import { ProfileDetail } from '@/api/endpoint_LEGACY/members/type'; import Text from '@/components/common/Text'; import MemberDetailSection from '@/components/members/detail/ActivitySection/MemberDetailSection'; import InfoItem from '@/components/members/detail/InfoItem'; -import { DEFAULT_DATE } from '@/components/members/upload/constants'; import { MOBILE_MEDIA_QUERY } from '@/styles/mediaQuery'; interface DetailInfoSectionProps { profile: ProfileDetail; - isCoffeechat?: boolean; } -const convertBirthdayFormat = (birthday?: string) => { - // FIXME: 서버쪽에 YYYY-MM-DD 형태로 무조건 업로드시 전송해줘야 하는 이슈가 있어서, - // 생년월일을 보내지 않았을 경우에 DEFAULT_DATE를 전송하도록 임시처리 해 두었습니다. 이를 클라에서 보여주기 위해 대응합니다. - if (birthday) { - const isDefaultDay = dayjs(birthday).isSame(dayjs(DEFAULT_DATE)); - return isDefaultDay ? '' : dayjs(birthday).format('YYYY-MM-DD'); - } - return ''; -}; - -const DetailInfoSection = ({ profile, isCoffeechat = false }: DetailInfoSectionProps) => { +const DetailInfoSection = ({ profile }: DetailInfoSectionProps) => { const hasProfileInfo = profile.birthday || profile.university || profile.major || profile.address; return hasProfileInfo ? ( - {!isCoffeechat && profile.birthday && ( - - )} {profile.university && {profile.university}} {profile.major && {profile.major}} {profile.address && ( diff --git a/src/components/members/detail/ProfileSection/index.tsx b/src/components/members/detail/ProfileSection/index.tsx index 6994f3edc..3f4c119f0 100644 --- a/src/components/members/detail/ProfileSection/index.tsx +++ b/src/components/members/detail/ProfileSection/index.tsx @@ -1,15 +1,14 @@ import styled from '@emotion/styled'; import { colors } from '@sopt-makers/colors'; import { fonts } from '@sopt-makers/fonts'; -import { IconAlertTriangle, IconUser, IconUserX } from '@sopt-makers/icons'; +import { IconAlertTriangle, IconBirthdaySecondary, IconMail, IconPhone, IconUser, IconUserX } from '@sopt-makers/icons'; import { Flex } from '@toss/emotion-utils'; +import dayjs from 'dayjs'; import { uniq } from 'lodash-es'; import Link from 'next/link'; import { useRouter } from 'next/router'; import { playgroundLink } from 'playground-common/export'; -import CallIcon from 'public/icons/icon-call.svg'; import EditIcon from 'public/icons/icon-edit.svg'; -import MailIcon from 'public/icons/icon-mail.svg'; import { ProfileDetail } from '@/api/endpoint_LEGACY/members/type'; import ResizedImage from '@/components/common/ResizedImage'; @@ -18,6 +17,7 @@ import useEventLogger from '@/components/eventLogger/hooks/useEventLogger'; import FeedDropdown from '@/components/feed/common/FeedDropdown'; import { useBlockMember } from '@/components/members/hooks/useBlockMember'; import { useReportMember } from '@/components/members/hooks/useReportMember'; +import { DEFAULT_DATE } from '@/components/members/upload/constants'; import IconCoffee from '@/public/icons/icon-coffee.svg'; import IconMore from '@/public/icons/icon-dots-vertical.svg'; import { MOBILE_MEDIA_QUERY } from '@/styles/mediaQuery'; @@ -28,6 +28,47 @@ interface ProfileSectionProps { memberId: string; } +const convertBirthdayFormat = (birthday?: string) => { + // FIXME: 서버쪽에 YYYY-MM-DD 형태로 무조건 업로드시 전송해줘야 하는 이슈가 있어서, + // 생년월일을 보내지 않았을 경우에 DEFAULT_DATE를 전송하도록 임시처리 해 두었습니다. 이를 클라에서 보여주기 위해 대응합니다. + if (birthday) { + const isDefaultDay = dayjs(birthday).isSame(dayjs(DEFAULT_DATE)); + return isDefaultDay ? '' : dayjs(birthday).format('YYYY-MM-DD'); + } + return ''; +}; + +const ContactSection = ({ profile }: { profile: ProfileDetail }) => { + return ( + + + {profile.birthday && ( + + +
{convertBirthdayFormat(profile.birthday)}
+
+ )} + {profile.phone && ( + + + +
{profile.phone.replace(/(\d{3})(\d{4})(\d{4})/, '$1-$2-$3')}
+
+ + )} +
+ {profile.email && ( + + + +
{profile.email}
+
+ + )} +
+ ); +}; + const ProfileSection = ({ profile, memberId }: ProfileSectionProps) => { const router = useRouter(); const { logClickEvent } = useEventLogger(); @@ -36,101 +77,102 @@ const ProfileSection = ({ profile, memberId }: ProfileSectionProps) => { const { handleBlockMember } = useBlockMember(); return ( - - - {profile.profileImage ? ( - - ) : ( - - - + + +
+ + {profile.profileImage ? ( + + ) : ( + + + + + + + + + )} + {profile.isCoffeeChatActivate && ( + + + + )} + + + +
{profile.name}
+
{uniq(profile.soptActivities.map(({ part }) => part)).join('/')}
+
+
{profile.introduction}
+ + - - - - - )} - {profile.isCoffeeChatActivate && ( - - - +
+
+ {profile.isMine ? ( + { + router.push(playgroundLink.memberEdit()); + logClickEvent('editProfile'); + }} + > + + + ) : ( + + }> + { + handleReportMember(safeParseInt(memberId) ?? undefined); + }} + > + + + 신고 + + + { + handleBlockMember(safeParseInt(memberId) ?? undefined); + }} + > + + 차단 + + + + )} -
- - -
{profile.name}
-
{uniq(profile.soptActivities.map(({ part }) => part)).join('/')}
-
-
{profile.introduction}
- - {profile.phone && ( - -
- -
{profile.phone}
-
- - )} - {profile.email && ( - -
- -
{profile.email}
-
- - )} -
-
- - {profile.isMine ? ( - { - router.push(playgroundLink.memberEdit()); - logClickEvent('editProfile'); - }} - > - - - ) : ( - - }> - { - handleReportMember(safeParseInt(memberId) ?? undefined); - }} - > - - - 신고 - - - { - handleBlockMember(safeParseInt(memberId) ?? undefined); - }} - > - - 차단 - - - - - )} -
+ + + + + ); }; export default ProfileSection; -const ProfileContainer = styled.div` +const DefaultWrapper = styled.div` display: flex; - position: relative; - gap: 33px; - align-items: center; + justify-content: space-between; width: 100%; - letter-spacing: -0.01em; - font-weight: 500; + + & > div:first-child { + display: flex; + position: relative; + gap: 33px; + align-items: center; + width: 100%; + letter-spacing: -0.01em; + font-weight: 500; + } +`; +const ProfileSectionWrapper = styled.div` + display: flex; + flex-direction: column; @media ${MOBILE_MEDIA_QUERY} { gap: 20px; align-items: flex-start; @@ -168,12 +210,10 @@ const ProfileImage = styled(ResizedImage)` const ProfileContents = styled.div` display: flex; flex-direction: column; - justify-content: space-between; width: 100%; height: 128px; .intro { - margin-top: 16px; color: #c0c5c9; ${fonts.BODY_16_M} @@ -185,7 +225,6 @@ const ProfileContents = styled.div` } @media ${MOBILE_MEDIA_QUERY} { - width: 171px; height: auto; } `; @@ -248,8 +287,10 @@ const NameWrapper = styled.div` } `; -const ContactWrapper = styled.div<{ shouldDivide: boolean }>` +const ContactWrapper = styled.div` display: flex; + gap: 12px; + margin-top: 16px; line-height: 100%; color: #808388; font-size: 14px; @@ -265,10 +306,6 @@ const ContactWrapper = styled.div<{ shouldDivide: boolean }>` } .phone { - box-sizing: border-box; - margin-right: 13px; - border-right: ${({ shouldDivide }) => (shouldDivide ? '1.5px solid #3c3d40' : 'none')}; - padding-right: 17px; @media ${MOBILE_MEDIA_QUERY} { margin: 0; border: 0; @@ -288,8 +325,8 @@ const ContactWrapper = styled.div<{ shouldDivide: boolean }>` @media ${MOBILE_MEDIA_QUERY} { flex-direction: column; - gap: 4px; - margin-top: 16px; + gap: 6px; + margin-top: 0; } `; @@ -329,7 +366,7 @@ const MoreIconContainer = styled.div` text-align: right; @media ${MOBILE_MEDIA_QUERY} { - width: 100%; + align-self: baseline; height: auto; } `; @@ -344,3 +381,32 @@ const StyledIconMore = styled(IconMore)` padding-top: 4px; } `; + +const StyledIconPhone = styled(IconPhone)` + width: 20px; + height: 20px; + color: ${colors.gray300}; +`; + +const StyledIconMail = styled(IconMail)` + width: 20px; + height: 20px; + color: ${colors.gray300}; +`; + +const StyledIconBirth = styled(IconBirthdaySecondary)` + width: 20px; + height: 20px; + color: ${colors.gray300}; +`; + +const ContactTopWrapper = styled.div` + display: flex; + gap: 12px; +`; + +const ContactItem = styled.div` + display: flex; + gap: 4px; + align-items: center; +`; diff --git a/src/components/members/main/MemberList/index.tsx b/src/components/members/main/MemberList/index.tsx index 3de333876..1f45d3c5d 100644 --- a/src/components/members/main/MemberList/index.tsx +++ b/src/components/members/main/MemberList/index.tsx @@ -13,7 +13,6 @@ import EmptyView from '@/components/common/EmptyView'; import Responsive from '@/components/common/Responsive'; import Text from '@/components/common/Text'; import useEventLogger from '@/components/eventLogger/hooks/useEventLogger'; -import OrderBySelect from '@/components/members/common/select/OrderBySelect'; import MessageModal, { MessageCategory } from '@/components/members/detail/MessageSection/MessageModal'; import { DESKTOP_ONE_MEDIA_QUERY, DESKTOP_TWO_MEDIA_QUERY } from '@/components/members/main/contants'; import { useMemberProfileQuery } from '@/components/members/main/hooks/useMemberProfileQuery'; diff --git a/yarn.lock b/yarn.lock index fc85d3e8a..638c6c512 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5965,15 +5965,6 @@ __metadata: languageName: node linkType: hard -"@sopt-makers/icons@npm:^1.0.5": - version: 1.0.5 - resolution: "@sopt-makers/icons@npm:1.0.5" - peerDependencies: - react: ^18.2.0 - checksum: 6dbaa9748508adb4fa21042789c0a2c3a3c1c586e45355b76280cba0e30d2da0414c288605fa841b76b71dec993a2d2fcec5b26aaf2fd4d0c8be8cd2c99f01db - languageName: node - linkType: hard - "@sopt-makers/icons@npm:^1.0.7": version: 1.0.7 resolution: "@sopt-makers/icons@npm:1.0.7" @@ -19229,7 +19220,7 @@ __metadata: "@radix-ui/react-tooltip": ^1.0.5 "@sopt-makers/colors": ^3.0.2 "@sopt-makers/fonts": ^1.0.0 - "@sopt-makers/icons": ^1.0.5 + "@sopt-makers/icons": ^1.0.7 "@sopt-makers/ui": ^2.8.1 "@storybook/addon-actions": ^7.0.23 "@storybook/addon-docs": ^7.0.23 From 1a3bec6467a4f123b3b1af9050f49579c1eb3473 Mon Sep 17 00:00:00 2001 From: Eunseo Sim <55528304+simeunseo@users.noreply.github.com> Date: Sat, 14 Dec 2024 02:36:36 +0900 Subject: [PATCH 07/24] =?UTF-8?q?feat:=20=ED=99=9C=EB=8F=99=20=ED=8C=80=20?= =?UTF-8?q?mds=20Tag=EB=A1=9C=20=EB=B3=80=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../members/detail/ActivityBadge.tsx | 29 +++++++++++++----- .../detail/DetailinfoSection/index.tsx | 30 +++++++++---------- .../members/detail/InterestSection/index.tsx | 12 ++------ src/components/members/detail/PartItem.tsx | 13 ++++++-- .../members/detail/ProfileSection/index.tsx | 3 -- 5 files changed, 50 insertions(+), 37 deletions(-) diff --git a/src/components/members/detail/ActivityBadge.tsx b/src/components/members/detail/ActivityBadge.tsx index 4050a5bff..642b4ff8c 100644 --- a/src/components/members/detail/ActivityBadge.tsx +++ b/src/components/members/detail/ActivityBadge.tsx @@ -11,21 +11,20 @@ interface ActivityBadgeProps { } const ActivityBadge: FC = ({ category, name }) => { - return {`${category} ${name}`}; + return ( + + {category} + {name} + + ); }; const Container = styled.div` display: flex; align-items: center; - transition: background-color 0.2s; - border-radius: 13px; + border-radius: 28px; background-color: ${colors.gray700}; padding: 6px 14px; - line-height: 100%; - letter-spacing: -0.01em; - color: ${colors.gray10}; - - ${textStyles.SUIT_14_M} &:hover { background-color: ${colors.gray600}; @@ -38,4 +37,18 @@ const Container = styled.div` } `; +const Category = styled.div` + display: flex; + align-items: center; + + ::after { + display: inline-block; + margin: 0 10px; + background-color: ${colors.gray400}; + width: 1px; + height: 14px; + content: ''; + } +`; + export default ActivityBadge; diff --git a/src/components/members/detail/DetailinfoSection/index.tsx b/src/components/members/detail/DetailinfoSection/index.tsx index 00f3dee1f..e6f8182e5 100644 --- a/src/components/members/detail/DetailinfoSection/index.tsx +++ b/src/components/members/detail/DetailinfoSection/index.tsx @@ -5,7 +5,6 @@ import { ProfileDetail } from '@/api/endpoint_LEGACY/members/type'; import Text from '@/components/common/Text'; import MemberDetailSection from '@/components/members/detail/ActivitySection/MemberDetailSection'; import InfoItem from '@/components/members/detail/InfoItem'; -import { MOBILE_MEDIA_QUERY } from '@/styles/mediaQuery'; interface DetailInfoSectionProps { profile: ProfileDetail; @@ -22,9 +21,9 @@ const DetailInfoSection = ({ profile }: DetailInfoSectionProps) => { {profile.address.split(',').map((address) => ( - - {address} - + + {address} + ))} @@ -38,18 +37,19 @@ export default DetailInfoSection; const StyledAddressBadgeWrapper = styled.div` display: flex; flex-wrap: wrap; - gap: 8px; align-items: center; - - @media ${MOBILE_MEDIA_QUERY} { - gap: 10px; - } `; -const AddressBadge = styled.div` - border-radius: 13px; - background-color: ${colors.gray700}; - padding: 6px 14px; - line-height: 16px; - color: ${colors.gray10}; +const AddressItem = styled.div` + display: flex; + align-items: center; + + &:not(:last-child)::after { + display: inline-block; + margin: 0 10px; + background-color: ${colors.gray600}; + width: 1px; + height: 16px; + content: ''; + } `; diff --git a/src/components/members/detail/InterestSection/index.tsx b/src/components/members/detail/InterestSection/index.tsx index e5ca3e0d7..1f45941a7 100644 --- a/src/components/members/detail/InterestSection/index.tsx +++ b/src/components/members/detail/InterestSection/index.tsx @@ -59,13 +59,7 @@ interface InterestSectionProps { balanceGame: BalanceGame; selfIntroduction?: string; } -const InterestSection: FC = ({ - mbti, - sojuCapacity, - balanceGame, - interest, - selfIntroduction, -}) => { +const InterestSection: FC = ({ mbti, sojuCapacity, balanceGame, interest, selfIntroduction }) => { const balanceGameResults = getBalanceGameResults(balanceGame); const isBalanceGameAvailable = balanceGame && Object.values(balanceGame).some((value) => value !== null); @@ -165,7 +159,7 @@ const BalanceGameWrapper = styled.div` @media ${MOBILE_MEDIA_QUERY} { margin-top: 12px; - max-width: 236px; + max-width: 265px; } `; @@ -176,5 +170,5 @@ const BalanceGameItem = styled.div` line-height: 16px; color: ${colors.gray10}; - ${textStyles.SUIT_14_M}; + ${textStyles.SUIT_16_SB}; `; diff --git a/src/components/members/detail/PartItem.tsx b/src/components/members/detail/PartItem.tsx index 16a5502bd..850907882 100644 --- a/src/components/members/detail/PartItem.tsx +++ b/src/components/members/detail/PartItem.tsx @@ -1,5 +1,6 @@ import styled from '@emotion/styled'; import { colors } from '@sopt-makers/colors'; +import { Tag } from '@sopt-makers/ui'; import Link from 'next/link'; import { FC } from 'react'; @@ -27,7 +28,12 @@ const PartItem: FC = ({ generation, part, teams, activities }) => {generation}기 - {partLabel} {teams?.map((team) => `| ${team}`)} + {partLabel}{' '} + {teams?.map((team) => ( + + {team} + + ))} {activities.map((activity, idx) => ( @@ -95,7 +101,10 @@ const Generation = styled.div` `; const BelongArea = styled.div` + display: flex; grid-area: belongs; + gap: 8px; + align-items: center; color: ${colors.gray100}; ${textStyles.SUIT_18_M} @@ -114,7 +123,7 @@ const Badges = styled.div` grid-area: activities; gap: 8px; align-self: start; - margin-top: 2px; + margin-top: 12px; @media ${MOBILE_MEDIA_QUERY} { margin-top: 12px; diff --git a/src/components/members/detail/ProfileSection/index.tsx b/src/components/members/detail/ProfileSection/index.tsx index 3f4c119f0..fdb7d7e71 100644 --- a/src/components/members/detail/ProfileSection/index.tsx +++ b/src/components/members/detail/ProfileSection/index.tsx @@ -231,9 +231,6 @@ const ProfileContents = styled.div` const EditButton = styled.div` display: flex; - position: absolute; - top: 22px; - right: 0; align-items: center; justify-content: center; border-radius: 50%; From e2d23afb831b9774ebef0485d0ce3b9bd86e89af Mon Sep 17 00:00:00 2001 From: Eunseo Sim <55528304+simeunseo@users.noreply.github.com> Date: Sat, 14 Dec 2024 03:04:30 +0900 Subject: [PATCH 08/24] =?UTF-8?q?feat:=20soptActivitySection=20=EB=AA=A8?= =?UTF-8?q?=EB=B0=94=EC=9D=BC=20=EB=A0=88=EC=9D=B4=EC=95=84=EC=9B=83=20?= =?UTF-8?q?=EB=B3=80=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../detail/ActivitySection/MemberDetailSection.ts | 3 +++ src/components/members/detail/PartItem.tsx | 13 +++---------- .../members/detail/SoptActivitySection/index.tsx | 2 +- 3 files changed, 7 insertions(+), 11 deletions(-) diff --git a/src/components/members/detail/ActivitySection/MemberDetailSection.ts b/src/components/members/detail/ActivitySection/MemberDetailSection.ts index ff6b4beee..31e0790b7 100644 --- a/src/components/members/detail/ActivitySection/MemberDetailSection.ts +++ b/src/components/members/detail/ActivitySection/MemberDetailSection.ts @@ -6,11 +6,14 @@ import { MOBILE_MEDIA_QUERY } from '@/styles/mediaQuery'; export const MemberDetailSection = styled.section` display: flex; flex-direction: column; + gap: 32px; border-radius: 20px; background: ${colors.gray900}; padding: 40px; width: 100%; + @media ${MOBILE_MEDIA_QUERY} { + gap: 20px; border-radius: 18px; padding: 30px 20px; } diff --git a/src/components/members/detail/PartItem.tsx b/src/components/members/detail/PartItem.tsx index 850907882..c472c232a 100644 --- a/src/components/members/detail/PartItem.tsx +++ b/src/components/members/detail/PartItem.tsx @@ -56,10 +56,9 @@ const Container = styled.div` @media ${MOBILE_MEDIA_QUERY} { grid: - [row1-start] 'thumbnail generation' 1fr [row1-end] - [row2-start] 'thumbnail belongs' 1fr [row2-end] - [row2-start] 'activities activities' auto [row2-end] - / auto 1fr; + [row1-start] 'thumbnail generation belongs' 1fr [row1-end] + [row2-start] 'activities activities activities' 1fr [row2-end] + / auto auto 1fr; } `; @@ -93,9 +92,6 @@ const Generation = styled.div` ${textStyles.SUIT_18_B} @media ${MOBILE_MEDIA_QUERY} { - align-self: end; - margin-bottom: 2px; - ${textStyles.SUIT_16_B} } `; @@ -110,9 +106,6 @@ const BelongArea = styled.div` ${textStyles.SUIT_18_M} @media ${MOBILE_MEDIA_QUERY} { - align-self: start; - margin-top: 2px; - ${textStyles.SUIT_16_M} } `; diff --git a/src/components/members/detail/SoptActivitySection/index.tsx b/src/components/members/detail/SoptActivitySection/index.tsx index 07e997387..6d0bf8134 100644 --- a/src/components/members/detail/SoptActivitySection/index.tsx +++ b/src/components/members/detail/SoptActivitySection/index.tsx @@ -12,7 +12,7 @@ interface SoptActivitySectionProps { export default function SoptActivitySection({ soptActivities }: SoptActivitySectionProps) { return ( - + {soptActivities.map(({ generation, part, projects, team }, idx) => ( Date: Sat, 14 Dec 2024 03:13:21 +0900 Subject: [PATCH 09/24] =?UTF-8?q?feat:=20=EB=B3=B8=EC=9D=B8=20=ED=94=84?= =?UTF-8?q?=EB=A1=9C=ED=95=84=EC=9D=B4=EB=A9=B4=EC=84=9C=20=ED=99=9C?= =?UTF-8?q?=EB=8F=99=20=EB=82=B4=EC=97=AD=EC=97=90=20=EB=93=B1=EB=A1=9D?= =?UTF-8?q?=EB=90=9C=20=ED=94=84=EB=A1=9C=EC=A0=9D=ED=8A=B8=EA=B0=80=20?= =?UTF-8?q?=EC=97=86=EC=9D=84=20=EA=B2=BD=EC=9A=B0=20=ED=94=84=EB=A1=9C?= =?UTF-8?q?=EC=A0=9D=ED=8A=B8=20=EB=93=B1=EB=A1=9D=20=ED=8E=98=EC=9D=B4?= =?UTF-8?q?=EC=A7=80=EB=A1=9C=20=EC=9D=B4=EB=8F=99=ED=95=98=EB=8A=94=20?= =?UTF-8?q?=EB=B2=84=ED=8A=BC=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../members/detail/ActivityBadge.tsx | 8 ++-- .../detail/ActivitySection/MemberDetail.tsx | 2 +- src/components/members/detail/PartItem.tsx | 38 ++++++++++++++++++- .../detail/SoptActivitySection/index.tsx | 4 +- 4 files changed, 45 insertions(+), 7 deletions(-) diff --git a/src/components/members/detail/ActivityBadge.tsx b/src/components/members/detail/ActivityBadge.tsx index 642b4ff8c..cb74eba94 100644 --- a/src/components/members/detail/ActivityBadge.tsx +++ b/src/components/members/detail/ActivityBadge.tsx @@ -2,8 +2,8 @@ import styled from '@emotion/styled'; import { colors } from '@sopt-makers/colors'; import { FC } from 'react'; +import Text from '@/components/common/Text'; import { MOBILE_MEDIA_QUERY } from '@/styles/mediaQuery'; -import { textStyles } from '@/styles/typography'; interface ActivityBadgeProps { category?: string; @@ -13,8 +13,8 @@ interface ActivityBadgeProps { const ActivityBadge: FC = ({ category, name }) => { return ( - {category} - {name} + {category} + {name} ); }; @@ -37,7 +37,7 @@ const Container = styled.div` } `; -const Category = styled.div` +const Category = styled(Text)` display: flex; align-items: center; diff --git a/src/components/members/detail/ActivitySection/MemberDetail.tsx b/src/components/members/detail/ActivitySection/MemberDetail.tsx index 69f36d72f..09f853cce 100644 --- a/src/components/members/detail/ActivitySection/MemberDetail.tsx +++ b/src/components/members/detail/ActivitySection/MemberDetail.tsx @@ -63,7 +63,7 @@ const MemberDetail: FC = ({ memberId }) => { - + = ({ generation, part, teams, activities }) => { +const PartItem: FC = ({ generation, part, teams, activities, isMine }) => { const partLabel = `${part} ${NORMAL_PARTS.includes(part) ? '파트' : ''}`; const soptLogoSrc = Number(generation) < 12 ? '/icons/logo/time=1-11.svg' : `/icons/logo/time=${generation}.svg`; @@ -41,6 +45,14 @@ const PartItem: FC = ({ generation, part, teams, activities }) => ))} + {isMine && activities.length === 0 && ( + + + + 프로젝트 추가하기 + + + )}
); @@ -123,4 +135,28 @@ const Badges = styled.div` } `; +const AddProject = styled(Text)` + display: flex; + gap: 6px; + align-items: center; + border-radius: 28px; + background-color: ${colors.gray700}; + padding: 6px 14px; + + &:hover { + background-color: ${colors.gray600}; + } + + @media ${MOBILE_MEDIA_QUERY} { + margin: 0; + width: fit-content; + white-space: nowrap; + } +`; + +const StyledIconPlus = styled(IconPlus)` + width: 14px; + height: 14px; +`; + export default PartItem; diff --git a/src/components/members/detail/SoptActivitySection/index.tsx b/src/components/members/detail/SoptActivitySection/index.tsx index 6d0bf8134..77ee5e0af 100644 --- a/src/components/members/detail/SoptActivitySection/index.tsx +++ b/src/components/members/detail/SoptActivitySection/index.tsx @@ -8,9 +8,10 @@ import { Category } from '@/components/projects/types'; interface SoptActivitySectionProps { soptActivities: SoptActivity[]; + isMine?: boolean; } -export default function SoptActivitySection({ soptActivities }: SoptActivitySectionProps) { +export default function SoptActivitySection({ soptActivities, isMine }: SoptActivitySectionProps) { return ( {soptActivities.map(({ generation, part, projects, team }, idx) => ( @@ -24,6 +25,7 @@ export default function SoptActivitySection({ soptActivities }: SoptActivitySect href: playgroundLink.projectDetail(project.id), }))} teams={team !== null ? [team] : []} + isMine={isMine} /> ))} From ed217c758e971969a26bb1558cf67351ed9c9094 Mon Sep 17 00:00:00 2001 From: Eunseo Sim <55528304+simeunseo@users.noreply.github.com> Date: Tue, 17 Dec 2024 00:04:40 +0900 Subject: [PATCH 10/24] =?UTF-8?q?refactor:=20activity=20=ED=95=84=EB=93=9C?= =?UTF-8?q?=20=EB=82=B4=EB=B6=80=20=EA=B0=92=EC=97=90=20=EB=8C=80=ED=95=9C?= =?UTF-8?q?=20=EA=B0=80=EB=93=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/members/main/MemberList/index.tsx | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/components/members/main/MemberList/index.tsx b/src/components/members/main/MemberList/index.tsx index 1f45d3c5d..5cfa21c1f 100644 --- a/src/components/members/main/MemberList/index.tsx +++ b/src/components/members/main/MemberList/index.tsx @@ -416,10 +416,12 @@ const MemberList: FC = ({ banner }) => { {profiles.map((profile) => { const sorted = profile.activities.sort((a, b) => b.generation - a.generation); - const badges = sorted.map((activity) => ({ - content: `${activity.generation}기 ${activity.part}`, - isActive: activity.generation === LATEST_GENERATION, - })); + const badges = sorted + .filter((activity) => activity.generation && activity.part) + .map((activity) => ({ + content: `${activity.generation}기 ${activity.part}`, + isActive: activity.generation === LATEST_GENERATION, + })); const belongs = profile.careers.find((career) => career.isCurrent)?.companyName ?? profile.university; From 926a5cbd3ce2068fd610fb0c6f25e8c0018b5d02 Mon Sep 17 00:00:00 2001 From: Eunseo Sim <55528304+simeunseo@users.noreply.github.com> Date: Fri, 20 Dec 2024 00:29:46 +0900 Subject: [PATCH 11/24] =?UTF-8?q?feat:=20=EB=A9=A4=EB=B2=84=20=EC=88=9C?= =?UTF-8?q?=EC=84=9C=20=EC=A0=95=EB=A0=AC=20Select=20mds=20=EC=88=98?= =?UTF-8?q?=EC=A0=95=EC=82=AC=ED=95=AD=20=EB=B0=98=EC=98=81=ED=95=98?= =?UTF-8?q?=EC=97=AC=20=EA=B5=90=EC=B2=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 4 +-- .../MemberList/filters/MemberListOrder.tsx | 29 ++++++------------- yarn.lock | 22 +++++++------- 3 files changed, 22 insertions(+), 33 deletions(-) diff --git a/package.json b/package.json index 8d4e3d144..a66f5cc9c 100644 --- a/package.json +++ b/package.json @@ -44,8 +44,8 @@ "@radix-ui/react-tooltip": "^1.0.5", "@sopt-makers/colors": "^3.0.2", "@sopt-makers/fonts": "^1.0.0", - "@sopt-makers/icons": "^1.0.7", - "@sopt-makers/ui": "^2.8.1", + "@sopt-makers/icons": "^1.1.0", + "@sopt-makers/ui": "^2.8.3", "@tanstack/react-query": "^5.4.3", "@toss/emotion-utils": "^1.1.10", "@toss/error-boundary": "^1.4.6", diff --git a/src/components/members/main/MemberList/filters/MemberListOrder.tsx b/src/components/members/main/MemberList/filters/MemberListOrder.tsx index 23a659a37..21ebcee15 100644 --- a/src/components/members/main/MemberList/filters/MemberListOrder.tsx +++ b/src/components/members/main/MemberList/filters/MemberListOrder.tsx @@ -16,10 +16,7 @@ export function MemberListOrder({ className, value, options, o return ( - - {value?.label} - - + } /> {options.map((option) => ( @@ -30,24 +27,16 @@ export function MemberListOrder({ className, value, options, o ); } -const TriggerContentWrapper = styled.div` - display: flex; - gap: 12px; - align-items: center; - padding: 11px 16px; - width: 100%; -`; - -const TriggerContent = styled.div` - color: ${colors.gray300}; - - & > svg { - display: none; - } -`; - const StyledIconSwitchVertical = styled(IconSwitchVertical)` width: 20px; height: 20px; color: ${colors.gray300}; `; + +const StyledTriggerContent = styled(SelectV2.TriggerContent)` + background-color: transparent; + + & > p { + color: ${colors.gray300}; + } +`; diff --git a/yarn.lock b/yarn.lock index 638c6c512..aecc1beef 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5965,12 +5965,12 @@ __metadata: languageName: node linkType: hard -"@sopt-makers/icons@npm:^1.0.7": - version: 1.0.7 - resolution: "@sopt-makers/icons@npm:1.0.7" +"@sopt-makers/icons@npm:^1.1.0": + version: 1.1.0 + resolution: "@sopt-makers/icons@npm:1.1.0" peerDependencies: react: ^18.2.0 - checksum: ffdc98414e47ab1711c47dd4d08aa8e8f95dd872361edd23cd986634694df5a89dd51d0136ece27c29e8561a3fa0027721f4286c674af1e75aa49fa4a9c73d01 + checksum: fc525b038f2c5258b6c083e05d80fb75e93b773eac8455cba5e196890515eba51d646483f81447291fa614b4beb26359fac0b788565dc077fb0aa62d42aa908d languageName: node linkType: hard @@ -5990,21 +5990,21 @@ __metadata: languageName: unknown linkType: soft -"@sopt-makers/ui@npm:^2.8.1": - version: 2.8.1 - resolution: "@sopt-makers/ui@npm:2.8.1" +"@sopt-makers/ui@npm:^2.8.3": + version: 2.8.3 + resolution: "@sopt-makers/ui@npm:2.8.3" dependencies: "@radix-ui/react-dialog": ^1.0.5 "@radix-ui/react-switch": ^1.0.3 "@sopt-makers/colors": ^3.0.3 "@sopt-makers/fonts": ^2.0.2 - "@sopt-makers/icons": ^1.0.7 + "@sopt-makers/icons": ^1.1.0 "@vanilla-extract/css": ^1.14.0 "@vanilla-extract/sprinkles": ^1.6.1 peerDependencies: react: ^18.2.0 react-dom: ^18.2.0 - checksum: 8e92f3db85470ac36f1cd0aca6b3a15fc3add8a5ce2eef074a8d7166f8f7ab8d868c733b2ade61dffb41f2aae091a6b340bdcf99a651fb669ecbdff398006cd9 + checksum: 6fa59bba37cbf9c27fda7be807ac683283cda4b84a6a8f2ff092e9603f90ee7fde79c0d2be29a7cf99a83a92667e7c02f8a413ee371c6a5f5878de93c17c877b languageName: node linkType: hard @@ -19220,8 +19220,8 @@ __metadata: "@radix-ui/react-tooltip": ^1.0.5 "@sopt-makers/colors": ^3.0.2 "@sopt-makers/fonts": ^1.0.0 - "@sopt-makers/icons": ^1.0.7 - "@sopt-makers/ui": ^2.8.1 + "@sopt-makers/icons": ^1.1.0 + "@sopt-makers/ui": ^2.8.3 "@storybook/addon-actions": ^7.0.23 "@storybook/addon-docs": ^7.0.23 "@storybook/addon-essentials": ^7.0.23 From 56f4eab81c5ad22811c20e77893199f08e9fa2e5 Mon Sep 17 00:00:00 2001 From: Eunseo Sim <55528304+simeunseo@users.noreply.github.com> Date: Fri, 20 Dec 2024 00:33:34 +0900 Subject: [PATCH 12/24] =?UTF-8?q?fix:=20=ED=94=84=EB=A1=9C=ED=95=84=20?= =?UTF-8?q?=EA=B8=B0=EB=B3=B8=EC=A0=95=EB=B3=B4=20gap=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../members/detail/ProfileSection/index.tsx | 22 ++++++++++--------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/src/components/members/detail/ProfileSection/index.tsx b/src/components/members/detail/ProfileSection/index.tsx index fdb7d7e71..7a7948b91 100644 --- a/src/components/members/detail/ProfileSection/index.tsx +++ b/src/components/members/detail/ProfileSection/index.tsx @@ -33,7 +33,7 @@ const convertBirthdayFormat = (birthday?: string) => { // 생년월일을 보내지 않았을 경우에 DEFAULT_DATE를 전송하도록 임시처리 해 두었습니다. 이를 클라에서 보여주기 위해 대응합니다. if (birthday) { const isDefaultDay = dayjs(birthday).isSame(dayjs(DEFAULT_DATE)); - return isDefaultDay ? '' : dayjs(birthday).format('YYYY-MM-DD'); + return isDefaultDay ? '' : dayjs(birthday).format('YYYY.MM.DD'); } return ''; }; @@ -57,14 +57,16 @@ const ContactSection = ({ profile }: { profile: ProfileDetail }) => { )} - {profile.email && ( - - - -
{profile.email}
-
- - )} +
+ {profile.email && ( + + + +
{profile.email}
+
+ + )} +
); }; @@ -294,7 +296,7 @@ const ContactWrapper = styled.div` & > div { display: flex; - gap: 4px; + gap: 12px; align-items: center; @media ${MOBILE_MEDIA_QUERY} { From b9dd49a9f042994aba7b2aaae16d2e5ea9b5243b Mon Sep 17 00:00:00 2001 From: Eunseo Sim <55528304+simeunseo@users.noreply.github.com> Date: Fri, 20 Dec 2024 01:32:05 +0900 Subject: [PATCH 13/24] =?UTF-8?q?feat:=20BottomSheetSelect=20=EC=88=98?= =?UTF-8?q?=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../BottomSheetSelect/index.tsx | 24 +++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) diff --git a/src/components/coffeechat/upload/CoffeechatForm/BottomSheetSelect/index.tsx b/src/components/coffeechat/upload/CoffeechatForm/BottomSheetSelect/index.tsx index 5bc99965b..dcc997878 100644 --- a/src/components/coffeechat/upload/CoffeechatForm/BottomSheetSelect/index.tsx +++ b/src/components/coffeechat/upload/CoffeechatForm/BottomSheetSelect/index.tsx @@ -14,11 +14,13 @@ interface Option { interface BottomSheetSelectProps { options: Option[]; - value: string | string[] | null | undefined; + defaultOption?: Option; + value: string | null | undefined; placeholder: string; onChange: (value: string) => void; } -const BottomSheetSelect = ({ options, value, placeholder, onChange }: BottomSheetSelectProps) => { + +const BottomSheetSelect = ({ options, defaultOption, value, placeholder, onChange }: BottomSheetSelectProps) => { const [open, setOpen] = useState(false); const [selectedValue, setSelectedValue] = useState(value); const [temporaryValue, setTemporaryValue] = useState(value); @@ -32,7 +34,7 @@ const BottomSheetSelect = ({ options, value, placeholder, onChange }: BottomShee const handleConfirm = () => { setSelectedValue(temporaryValue); - if (temporaryValue !== '') onChange(temporaryValue as string); + onChange(temporaryValue as string); handleClose(); }; @@ -49,10 +51,14 @@ const BottomSheetSelect = ({ options, value, placeholder, onChange }: BottomShee }; }, [open]); + const getSelectedLabel = (value: string) => { + return options.find((option) => option.value === value)?.label; + }; + return ( - {selectedValue !== null ?

{selectedValue}

:

{placeholder}

} + {selectedValue ?

{getSelectedLabel(selectedValue)}

:

{placeholder}

} + {defaultOption && ( + handleOptionSelect(defaultOption.value)}> + {defaultOption.label} + {temporaryValue === defaultOption.value && } + + )} {options.map((option) => ( handleOptionSelect(option.value)}> {option.label} @@ -93,6 +105,7 @@ const Container = styled.div` const InputField = styled.div` display: flex; + gap: 12px; align-items: center; justify-content: space-between; border-radius: 10px; @@ -100,6 +113,8 @@ const InputField = styled.div` cursor: pointer; padding: 11px 16px; ${fonts.BODY_16_M}; + + width: max-content; `; const Overlay = styled.div` @@ -115,6 +130,7 @@ const Overlay = styled.div` const BottomSheet = styled.section` position: fixed; bottom: 0; + left: 20px; z-index: ${zIndex.헤더}; margin-bottom: 12px; border-radius: 16px; From 58376b2cb5b89e22963232f78c699dcf8271453c Mon Sep 17 00:00:00 2001 From: Eunseo Sim <55528304+simeunseo@users.noreply.github.com> Date: Fri, 20 Dec 2024 01:32:21 +0900 Subject: [PATCH 14/24] =?UTF-8?q?feat:=20=EB=A9=A4=EB=B2=84=ED=83=AD=20?= =?UTF-8?q?=EB=AA=A8=EB=B0=94=EC=9D=BC=20Select=EB=A5=BC=20BottomSheetSele?= =?UTF-8?q?ct=EB=A1=9C=20=EA=B5=90=EC=B2=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../members/main/MemberList/index.tsx | 63 +++++-------------- 1 file changed, 17 insertions(+), 46 deletions(-) diff --git a/src/components/members/main/MemberList/index.tsx b/src/components/members/main/MemberList/index.tsx index 5cfa21c1f..acfbb2597 100644 --- a/src/components/members/main/MemberList/index.tsx +++ b/src/components/members/main/MemberList/index.tsx @@ -9,6 +9,7 @@ import { useRouter } from 'next/router'; import React, { ChangeEvent, FC, ReactNode, useEffect, useMemo, useState } from 'react'; import { Profile } from '@/api/endpoint_LEGACY/members/type'; +import BottomSheetSelect from '@/components/coffeechat/upload/CoffeechatForm/BottomSheetSelect'; import EmptyView from '@/components/common/EmptyView'; import Responsive from '@/components/common/Responsive'; import Text from '@/components/common/Text'; @@ -212,70 +213,40 @@ const MemberList: FC = ({ banner }) => { onReset={handleSearchReset} /> - ( - - {placeholder} - - - )} + onChange={handleSelectGeneration} /> - ( - - {placeholder} - - - )} + value={part?.value} + placeholder='파트' + onChange={handleSelectPart} /> - ( - - {placeholder} - - - )} + onChange={handleSelectTeam} /> - ( - - {placeholder} - - - )} /> - ( - - {placeholder} - - - )} /> {memberProfileData && ( From 59c9b00eb0152d00152577c7f6792f20053824a1 Mon Sep 17 00:00:00 2001 From: Eunseo Sim <55528304+simeunseo@users.noreply.github.com> Date: Fri, 20 Dec 2024 01:45:05 +0900 Subject: [PATCH 15/24] =?UTF-8?q?feat:=20BottomSheetSelect=EC=97=90?= =?UTF-8?q?=EC=84=9C=20icon=20prop=EA=B3=BC=20=EC=8A=A4=ED=83=80=EC=9D=BC?= =?UTF-8?q?=20=EC=BB=A4=EC=8A=A4=ED=85=80=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../BottomSheetSelect/index.tsx | 35 ++++++++++++------- 1 file changed, 23 insertions(+), 12 deletions(-) diff --git a/src/components/coffeechat/upload/CoffeechatForm/BottomSheetSelect/index.tsx b/src/components/coffeechat/upload/CoffeechatForm/BottomSheetSelect/index.tsx index dcc997878..b8068e7c9 100644 --- a/src/components/coffeechat/upload/CoffeechatForm/BottomSheetSelect/index.tsx +++ b/src/components/coffeechat/upload/CoffeechatForm/BottomSheetSelect/index.tsx @@ -3,7 +3,7 @@ import { colors } from '@sopt-makers/colors'; import { fonts } from '@sopt-makers/fonts'; import { IconCheck, IconChevronDown } from '@sopt-makers/icons'; import { Button } from '@sopt-makers/ui'; -import { useEffect, useState } from 'react'; +import { ReactNode, useEffect, useState } from 'react'; import { zIndex } from '@/styles/zIndex'; @@ -18,9 +18,19 @@ interface BottomSheetSelectProps { value: string | null | undefined; placeholder: string; onChange: (value: string) => void; + icon?: ReactNode; + className?: string; } -const BottomSheetSelect = ({ options, defaultOption, value, placeholder, onChange }: BottomSheetSelectProps) => { +const BottomSheetSelect = ({ + options, + defaultOption, + value, + placeholder, + onChange, + icon, + className, +}: BottomSheetSelectProps) => { const [open, setOpen] = useState(false); const [selectedValue, setSelectedValue] = useState(value); const [temporaryValue, setTemporaryValue] = useState(value); @@ -57,16 +67,18 @@ const BottomSheetSelect = ({ options, defaultOption, value, placeholder, onChang return ( - + {selectedValue ?

{getSelectedLabel(selectedValue)}

:

{placeholder}

} - + {icon || ( + + )}
{open && ( @@ -100,7 +112,6 @@ export default BottomSheetSelect; const Container = styled.div` position: relative; - width: 100%; `; const InputField = styled.div` From f904e75ae4b5b67fe559cb0c6ee9731c4922866a Mon Sep 17 00:00:00 2001 From: Eunseo Sim <55528304+simeunseo@users.noreply.github.com> Date: Fri, 20 Dec 2024 01:45:24 +0900 Subject: [PATCH 16/24] =?UTF-8?q?feat:=20=EB=A9=A4=EB=B2=84=20=ED=83=AD?= =?UTF-8?q?=EC=97=90=EC=84=9C=20=EB=AA=A8=EB=B0=94=EC=9D=BC=20=EC=A0=95?= =?UTF-8?q?=EB=A0=AC=20Select=EB=A5=BC=20BottomSheetSelect=EB=A1=9C=20?= =?UTF-8?q?=EA=B5=90=EC=B2=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../members/main/MemberList/index.tsx | 49 +++---------------- 1 file changed, 6 insertions(+), 43 deletions(-) diff --git a/src/components/members/main/MemberList/index.tsx b/src/components/members/main/MemberList/index.tsx index acfbb2597..e70c84fd2 100644 --- a/src/components/members/main/MemberList/index.tsx +++ b/src/components/members/main/MemberList/index.tsx @@ -260,19 +260,12 @@ const MemberList: FC = ({ banner }) => { `} > {`전체 ${memberProfileData.pages[0].totalMembersCount}명`} - ( - - - {placeholder} - - - - )} + icon={} /> )} @@ -613,35 +606,6 @@ const StyledMobileFilterWrapper = styled.div` display: none; /* Chrome, Safari, Opera */ } `; -const StyledMobileFilter = styled(MemberListFilterSheet)` - flex: none; -`; - -const MobileFilterTrigger = styled.button<{ selected?: boolean }>` - display: flex; - gap: 12px; - align-items: center; - justify-content: center; - border: 1px solid transparent; - border-radius: 10px; - background: ${colors.gray800}; - padding: 11px 16px; - width: max-content; - min-width: fit-content; - height: 48px; - color: ${colors.gray300}; - ${({ selected }) => - selected && - css` - color: ${colors.white}; - `} -`; - -const StyledChevronDown = styled(IconChevronDown)` - width: 20px; - height: 20px; - color: ${colors.white}; -`; const StyledSwitchVertical = styled(IconSwitchVertical)` width: 20px; @@ -649,8 +613,7 @@ const StyledSwitchVertical = styled(IconSwitchVertical)` color: ${colors.gray300}; `; -const OrderFilter = styled.div` - display: flex; - gap: 12px; - align-items: center; +const StyledBottomSheetSelect = styled(BottomSheetSelect)` + background-color: transparent; + color: ${colors.gray300}; `; From 8e534e770cb0e5fd06e6c4dd9d6fccee8d7b0070 Mon Sep 17 00:00:00 2001 From: Eunseo Sim <55528304+simeunseo@users.noreply.github.com> Date: Fri, 20 Dec 2024 01:55:28 +0900 Subject: [PATCH 17/24] =?UTF-8?q?fix:=20coffeechatform=EC=9D=98=20career?= =?UTF-8?q?=20=ED=95=AD=EB=AA=A9=EC=97=90=20=EB=8C=80=ED=95=B4=20string[]?= =?UTF-8?q?=20=ED=83=80=EC=9E=85=20=EB=B9=84=ED=97=88=EC=9A=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/coffeechat/upload/CoffeechatForm/types.ts | 2 +- src/components/members/main/MemberList/index.tsx | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/src/components/coffeechat/upload/CoffeechatForm/types.ts b/src/components/coffeechat/upload/CoffeechatForm/types.ts index a2f76ac5e..8f0189fed 100644 --- a/src/components/coffeechat/upload/CoffeechatForm/types.ts +++ b/src/components/coffeechat/upload/CoffeechatForm/types.ts @@ -1,6 +1,6 @@ export interface CoffeechatFormContent { memberInfo: { - career: string[] | string | null | undefined; + career: string | null | undefined; introduction: string | null | undefined; }; coffeeChatInfo: { diff --git a/src/components/members/main/MemberList/index.tsx b/src/components/members/main/MemberList/index.tsx index e70c84fd2..301e39f70 100644 --- a/src/components/members/main/MemberList/index.tsx +++ b/src/components/members/main/MemberList/index.tsx @@ -1,7 +1,7 @@ import { css } from '@emotion/react'; import styled from '@emotion/styled'; import { colors } from '@sopt-makers/colors'; -import { IconChevronDown, IconSwitchVertical } from '@sopt-makers/icons'; +import { IconSwitchVertical } from '@sopt-makers/icons'; import { SearchField } from '@sopt-makers/ui'; import { debounce, uniq } from 'lodash-es'; import Link from 'next/link'; @@ -31,7 +31,6 @@ import { TEAM_OPTIONS, } from '@/components/members/main/MemberList/filters/constants'; import MemberListFilter from '@/components/members/main/MemberList/filters/MemberListFilter'; -import MemberListFilterSheet from '@/components/members/main/MemberList/filters/MemberListFilterSheet'; import { MemberListOrder } from '@/components/members/main/MemberList/filters/MemberListOrder'; import { LATEST_GENERATION } from '@/constants/generation'; import { playgroundLink } from '@/constants/links'; From 509cb8896ee0bc33e3d6e596ddc5cd2fd1d7a418 Mon Sep 17 00:00:00 2001 From: Eunseo Sim <55528304+simeunseo@users.noreply.github.com> Date: Sun, 29 Dec 2024 02:41:24 +0900 Subject: [PATCH 18/24] =?UTF-8?q?feat:=20=EC=AA=BD=EC=A7=80=20=EB=B3=B4?= =?UTF-8?q?=EB=82=B4=EA=B8=B0=EC=97=90=20=EC=BB=A4=ED=94=BC=EC=B1=97=20?= =?UTF-8?q?=EB=B1=83=EC=A7=80=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../members/detail/MessageSection/MessageModal.tsx | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/components/members/detail/MessageSection/MessageModal.tsx b/src/components/members/detail/MessageSection/MessageModal.tsx index f57a85dfe..7ce8eacc7 100644 --- a/src/components/members/detail/MessageSection/MessageModal.tsx +++ b/src/components/members/detail/MessageSection/MessageModal.tsx @@ -2,6 +2,7 @@ import styled from '@emotion/styled'; import { yupResolver } from '@hookform/resolvers/yup'; import { colors } from '@sopt-makers/colors'; import { IconUser } from '@sopt-makers/icons'; +import { Button } from '@sopt-makers/ui'; import { FC, useState } from 'react'; import { useForm } from 'react-hook-form'; import * as yup from 'yup'; @@ -17,9 +18,9 @@ import TextArea from '@/components/common/TextArea'; import Modal, { ModalProps } from '@/components/members/detail/MessageSection/Modal'; import { MB_BIG_MEDIA_QUERY, MOBILE_MEDIA_QUERY } from '@/styles/mediaQuery'; import { zIndex } from '@/styles/zIndex'; -import { Button } from '@sopt-makers/ui'; export enum MessageCategory { + COFFEE_CHAT = '커피챗', NETWORK = '친목', APPJAM_TEAM_BUILDING = '앱잼 팀 빌딩', PROJECT_SUGGESTION = '프로젝트 제안', @@ -30,6 +31,10 @@ interface Category { value: MessageCategory; } const CATEGORY: Category[] = [ + { + icon: '/icons/icon-coffeechat.svg', + value: MessageCategory.COFFEE_CHAT, + }, { icon: '/icons/icon-network.svg', value: MessageCategory.NETWORK, @@ -247,7 +252,6 @@ const StyledCategory = styled.section` align-items: center; justify-content: center; margin-top: 40px; - max-width: 224px; `; const StyledCategoryItem = styled.div<{ isSelected: boolean }>` From 291e5a027cfd4911280988be13dd351995e6518f Mon Sep 17 00:00:00 2001 From: Eunseo Sim <55528304+simeunseo@users.noreply.github.com> Date: Sun, 29 Dec 2024 03:04:12 +0900 Subject: [PATCH 19/24] =?UTF-8?q?fix:=20=EB=A9=A4=EB=B2=84=20=EC=83=81?= =?UTF-8?q?=EC=84=B8=20activity=20section=EC=97=90=EC=84=9C=20=ED=94=84?= =?UTF-8?q?=EB=A1=9C=EC=A0=9D=ED=8A=B8=EA=B0=80=20=EC=97=86=EC=9D=84=20?= =?UTF-8?q?=EA=B2=BD=EC=9A=B0=20=EB=82=B4=EC=9A=A9=EC=9D=84=20=EC=84=B8?= =?UTF-8?q?=EB=A1=9C=20=EA=B0=80=EC=9A=B4=EB=8D=B0=20=EC=A0=95=EB=A0=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/members/detail/PartItem.tsx | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/src/components/members/detail/PartItem.tsx b/src/components/members/detail/PartItem.tsx index 3a7a92756..c9d211727 100644 --- a/src/components/members/detail/PartItem.tsx +++ b/src/components/members/detail/PartItem.tsx @@ -25,8 +25,9 @@ const PartItem: FC = ({ generation, part, teams, activities, isMi const partLabel = `${part} ${NORMAL_PARTS.includes(part) ? '파트' : ''}`; const soptLogoSrc = Number(generation) < 12 ? '/icons/logo/time=1-11.svg' : `/icons/logo/time=${generation}.svg`; + const hasActivities = !(activities.length === 0 && !isMine); return ( - + {`${generation}기 @@ -58,12 +59,13 @@ const PartItem: FC = ({ generation, part, teams, activities, isMi ); }; -const Container = styled.div` +const Container = styled.div<{ hasActivities: boolean }>` display: grid; - grid: - [row1-start] 'thumbnail generation belongs' 1fr [row1-end] - [row2-start] 'thumbnail activities activities' 1fr [row2-end] - / auto auto 1fr; + grid-template: ${({ hasActivities }) => + hasActivities + ? `[row1-start] 'thumbnail generation belongs' 1fr [row1-end] + [row2-start] 'thumbnail activities activities' 1fr [row2-end] / auto auto 1fr` + : `[row1-start] 'thumbnail generation belongs' 1fr [row1-end] / auto auto 1fr`}; align-items: center; @media ${MOBILE_MEDIA_QUERY} { From 268b036496d8766a0d9617e9a3a9e89c27dbd8eb Mon Sep 17 00:00:00 2001 From: Eunseo Sim <55528304+simeunseo@users.noreply.github.com> Date: Sun, 29 Dec 2024 03:16:41 +0900 Subject: [PATCH 20/24] =?UTF-8?q?fix:=20=EB=A9=A4=EB=B2=84=20=EC=83=81?= =?UTF-8?q?=EC=84=B8=20activity=20section=20=EB=82=B4=20=EA=B0=84=EA=B2=A9?= =?UTF-8?q?=20=EC=A1=B0=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ActivitySection/MemberDetailSection.ts | 2 +- src/components/members/detail/PartItem.tsx | 53 ++++++++++--------- 2 files changed, 28 insertions(+), 27 deletions(-) diff --git a/src/components/members/detail/ActivitySection/MemberDetailSection.ts b/src/components/members/detail/ActivitySection/MemberDetailSection.ts index 31e0790b7..b625299ad 100644 --- a/src/components/members/detail/ActivitySection/MemberDetailSection.ts +++ b/src/components/members/detail/ActivitySection/MemberDetailSection.ts @@ -13,7 +13,7 @@ export const MemberDetailSection = styled.section` width: 100%; @media ${MOBILE_MEDIA_QUERY} { - gap: 20px; + gap: 25px; border-radius: 18px; padding: 30px 20px; } diff --git a/src/components/members/detail/PartItem.tsx b/src/components/members/detail/PartItem.tsx index c9d211727..01651662a 100644 --- a/src/components/members/detail/PartItem.tsx +++ b/src/components/members/detail/PartItem.tsx @@ -40,39 +40,40 @@ const PartItem: FC = ({ generation, part, teams, activities, isMi ))} - - {activities.map((activity, idx) => ( - - - - ))} - {isMine && activities.length === 0 && ( - - - - 프로젝트 추가하기 - - - )} - + {hasActivities && ( + + {activities.map((activity, idx) => ( + + + + ))} + {isMine && activities.length === 0 && ( + + + + 프로젝트 추가하기 + + + )} + + )} ); }; const Container = styled.div<{ hasActivities: boolean }>` display: grid; - grid-template: ${({ hasActivities }) => - hasActivities - ? `[row1-start] 'thumbnail generation belongs' 1fr [row1-end] - [row2-start] 'thumbnail activities activities' 1fr [row2-end] / auto auto 1fr` - : `[row1-start] 'thumbnail generation belongs' 1fr [row1-end] / auto auto 1fr`}; + grid-template-areas: + 'thumbnail generation belongs' + ${({ hasActivities }) => hasActivities && "'thumbnail activities activities'"}; + grid-template-columns: auto auto 1fr; align-items: center; @media ${MOBILE_MEDIA_QUERY} { - grid: - [row1-start] 'thumbnail generation belongs' 1fr [row1-end] - [row2-start] 'activities activities activities' 1fr [row2-end] - / auto auto 1fr; + grid-template-areas: + 'thumbnail generation belongs' + ${({ hasActivities }) => hasActivities && "'activities activities activities'"}; + grid-template-columns: auto auto 1fr; } `; @@ -130,10 +131,10 @@ const Badges = styled.div` grid-area: activities; gap: 8px; align-self: start; - margin-top: 12px; + margin-top: 16px; @media ${MOBILE_MEDIA_QUERY} { - margin-top: 12px; + margin-top: 10px; } `; From 9592e6b6fa659411abe831756a06593169c0cb97 Mon Sep 17 00:00:00 2001 From: Eunseo Sim <55528304+simeunseo@users.noreply.github.com> Date: Sun, 29 Dec 2024 03:20:55 +0900 Subject: [PATCH 21/24] =?UTF-8?q?fix:=20=EB=A9=A4=EB=B2=84=20=EC=83=81?= =?UTF-8?q?=EC=84=B8=20career=20section=20=EC=BB=A4=EB=A6=AC=EC=96=B4-?= =?UTF-8?q?=EC=8A=A4=ED=82=AC=20=EC=82=AC=EC=9D=B4=20=EB=A7=88=EC=A7=84=20?= =?UTF-8?q?=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../members/detail/ActivitySection/MemberDetailSection.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/members/detail/ActivitySection/MemberDetailSection.ts b/src/components/members/detail/ActivitySection/MemberDetailSection.ts index b625299ad..972d995ce 100644 --- a/src/components/members/detail/ActivitySection/MemberDetailSection.ts +++ b/src/components/members/detail/ActivitySection/MemberDetailSection.ts @@ -13,7 +13,7 @@ export const MemberDetailSection = styled.section` width: 100%; @media ${MOBILE_MEDIA_QUERY} { - gap: 25px; + gap: 30px; border-radius: 18px; padding: 30px 20px; } From 37d79c09789ea317014cef892230b58740150091 Mon Sep 17 00:00:00 2001 From: Eunseo Sim <55528304+simeunseo@users.noreply.github.com> Date: Sun, 29 Dec 2024 03:22:38 +0900 Subject: [PATCH 22/24] =?UTF-8?q?fix:=20=EB=A9=A4=EB=B2=84=20=EC=83=81?= =?UTF-8?q?=EC=84=B8=20=ED=8E=98=EC=9D=B4=EC=A7=80=20=ED=95=98=EB=8B=A8=20?= =?UTF-8?q?=EB=A7=88=EC=A7=84=EA=B0=92=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/members/detail/ActivitySection/MemberDetail.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/members/detail/ActivitySection/MemberDetail.tsx b/src/components/members/detail/ActivitySection/MemberDetail.tsx index 09f853cce..6b71e3743 100644 --- a/src/components/members/detail/ActivitySection/MemberDetail.tsx +++ b/src/components/members/detail/ActivitySection/MemberDetail.tsx @@ -119,7 +119,7 @@ const Container = styled.div` display: flex; flex-direction: column; align-items: center; - padding: 120px 0; + padding: 120px 0 200px; @media ${MOBILE_MEDIA_QUERY} { padding: 16px 20px; padding-bottom: 100px; From 891f3521c99a08a5c2c96f4a73e5fd5520f3ce63 Mon Sep 17 00:00:00 2001 From: Eunseo Sim <55528304+simeunseo@users.noreply.github.com> Date: Sun, 29 Dec 2024 03:50:29 +0900 Subject: [PATCH 23/24] =?UTF-8?q?fix:=20=EB=A9=A4=EB=B2=84=20=EC=83=81?= =?UTF-8?q?=EC=84=B8=20=EC=97=B0=EB=9D=BD=EC=B2=98=20=EC=A0=95=EB=B3=B4=20?= =?UTF-8?q?=EB=A7=88=EC=A7=84=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../members/detail/ProfileSection/index.tsx | 32 ++++++++++--------- 1 file changed, 17 insertions(+), 15 deletions(-) diff --git a/src/components/members/detail/ProfileSection/index.tsx b/src/components/members/detail/ProfileSection/index.tsx index 7a7948b91..156da06d2 100644 --- a/src/components/members/detail/ProfileSection/index.tsx +++ b/src/components/members/detail/ProfileSection/index.tsx @@ -41,22 +41,24 @@ const convertBirthdayFormat = (birthday?: string) => { const ContactSection = ({ profile }: { profile: ProfileDetail }) => { return ( - - {profile.birthday && ( - - -
{convertBirthdayFormat(profile.birthday)}
-
- )} - {profile.phone && ( - - - -
{profile.phone.replace(/(\d{3})(\d{4})(\d{4})/, '$1-$2-$3')}
+ {(profile.birthday || profile.phone) && ( + + {profile.birthday && ( + + +
{convertBirthdayFormat(profile.birthday)}
- - )} -
+ )} + {profile.phone && ( + + + +
{profile.phone.replace(/(\d{3})(\d{4})(\d{4})/, '$1-$2-$3')}
+
+ + )} +
+ )}
{profile.email && ( From fda6a9864568746d70752c7375fadf4974378752 Mon Sep 17 00:00:00 2001 From: Eunseo Sim <55528304+simeunseo@users.noreply.github.com> Date: Sun, 5 Jan 2025 03:21:51 +0900 Subject: [PATCH 24/24] =?UTF-8?q?feat:=20BottomSheetSelect=20width=20?= =?UTF-8?q?=EC=A0=95=EC=9D=98=20=EB=B0=A9=EC=8B=9D=20=EB=B3=80=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../upload/CoffeechatForm/BottomSheetSelect/index.tsx | 2 +- src/components/members/main/MemberList/index.tsx | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/components/coffeechat/upload/CoffeechatForm/BottomSheetSelect/index.tsx b/src/components/coffeechat/upload/CoffeechatForm/BottomSheetSelect/index.tsx index b8068e7c9..5521d98c3 100644 --- a/src/components/coffeechat/upload/CoffeechatForm/BottomSheetSelect/index.tsx +++ b/src/components/coffeechat/upload/CoffeechatForm/BottomSheetSelect/index.tsx @@ -125,7 +125,7 @@ const InputField = styled.div` padding: 11px 16px; ${fonts.BODY_16_M}; - width: max-content; + width: 100%; `; const Overlay = styled.div` diff --git a/src/components/members/main/MemberList/index.tsx b/src/components/members/main/MemberList/index.tsx index 301e39f70..5b63b7c7a 100644 --- a/src/components/members/main/MemberList/index.tsx +++ b/src/components/members/main/MemberList/index.tsx @@ -604,6 +604,10 @@ const StyledMobileFilterWrapper = styled.div` ::-webkit-scrollbar { display: none; /* Chrome, Safari, Opera */ } + + & > div { + flex-shrink: 0; + } `; const StyledSwitchVertical = styled(IconSwitchVertical)`