diff --git a/README.md b/README.md index 633edef7..61159f47 100644 --- a/README.md +++ b/README.md @@ -1,12 +1,31 @@ # DASH -## πŸ“’ μ„œλΉ„μŠ€ μ†Œκ°œ +## πŸ’ƒ μ„œλΉ„μŠ€ μ†Œκ°œ -### β€œλŒ„μŠ€ ν΄λž˜μŠ€μ™€ λŒ„μ„œμ— λŒ€ν•œ 정보λ₯Ό ν•œλˆˆμ— ν™•μΈν•˜κ³ , μ›ν•˜λŠ” 클래슀λ₯Ό κ°„νŽΈν•˜κ²Œ μ‹ μ²­ν•  수 μžˆλŠ” μ„œλΉ„μŠ€.” +![image](https://github.com/user-attachments/assets/25a0cb52-00f1-4ce9-8564-1070cb191231) -좀을 μ‚¬λž‘ν•˜λŠ” μ‚¬λžŒλ“€μ΄ λͺ¨μ—¬ μ„±μž₯ν•  수 μžˆλŠ” 곡간을 μ œκ³΅ν•˜κ³ , μˆ˜κ°•μƒκ³Ό λŒ„μ„œλ₯Ό μ—°κ²°ν•˜λŠ” 닀리가 λ˜μ–΄μ€€λ‹€. -
+### πŸ’ƒ β€œλ‹Ήμ‹ μ—κ²Œ 좀을 더 κ°€κΉŒμ΄, μ„Έμƒμ˜ λͺ¨λ“  λŒ„μ„œμ™€ 클래슀λ₯Ό λͺ¨μ€ μ„œλΉ„μŠ€" + + +> Da/shβ€™λŠ” μ„œλΉ„μŠ€μ˜ 핡심 ν‚€μ›Œλ“œμΈ Dance(μΆ€)와 Share(곡유)λ₯Ό κ²°ν•©ν•œ μ΄λ¦„μœΌλ‘œ, +> λŒ„μŠ€ ν΄λž˜μŠ€μ™€ κ°•μ‚¬λŒ„μ„œμ— λŒ€ν•œ 정보λ₯Ό 자유둭게 νƒμƒ‰ν•˜κ³  μ›ν•˜λŠ” 클래슀λ₯Ό κ°„νŽΈν•˜κ²Œ μ‹ μ²­ν•  수 μžˆλŠ” ν”Œλž«νΌμž…λ‹ˆλ‹€. +> 이 μ„œλΉ„μŠ€λŠ” μˆ˜κ°•μƒκ³Ό 강사λ₯Ό μ—°κ²°ν•˜λŠ” 닀리 역할을 함과 λ™μ‹œμ— μ„Έμƒμ˜ λͺ¨λ“  λŒ„μ„œλ“€μ΄ ν•¨κ»˜ μ†Œν†΅ν•˜κ³  μ„±μž₯ν•  수 μžˆλŠ” 곡간을 μ œκ³΅ν•©λ‹ˆλ‹€. + + +
+
+ +### πŸ’ƒμ„œλΉ„μŠ€ ν”Œλ‘œμš° + +![image](https://github.com/user-attachments/assets/2bb85425-a7ca-46c3-b4e7-addb522a2629) + +
+ +#### DASH의 웨비듀을 μ†Œκ°œν•©λ‹ˆλ‹€! + +![Image](https://github.com/user-attachments/assets/c475ac1a-1f4d-4ef8-94ab-fa29307849fe) +
@@ -14,10 +33,10 @@
-| ν”„λ‘œν•„μ‚¬μ§„ | ν”„λ‘œν•„μ‚¬μ§„ | ν”„λ‘œν•„μ‚¬μ§„ | ν”„λ‘œν•„μ‚¬μ§„ | ν”„λ‘œν•„μ‚¬μ§„ | +| ν”„λ‘œν•„μ‚¬μ§„ | ν”„λ‘œν•„μ‚¬μ§„ | ν”„λ‘œν•„μ‚¬μ§„ | ν”„λ‘œν•„μ‚¬μ§„ | ν”„λ‘œν•„μ‚¬μ§„ | | :-------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------: -|
κΉ€κ±΄νœ˜
|
κΉ€κ·œν™
|
박희선
|
ν•œμˆ˜μ •
|
μ΄μ§„ν˜
-| [@KIMGEONHWI](https://github.com/KIMGEONHWI) | [@rtttr1](https://github.com/rtttr1) | [@heesunee](https://github.com/heesunee) | [@hansoojeongsj](https://github.com/hansoojeongsj) | [@constantly-dev](https://github.com/constantly-dev) | +|
μ΄μ§„ν˜
|
κΉ€κ·œν™
|
박희선
|
ν•œμˆ˜μ •
|
κΉ€κ±΄νœ˜
+| [@constantly-dev](https://github.com/constantly-dev) | [@rtttr1](https://github.com/rtttr1) | [@heesunee](https://github.com/heesunee) | [@hansoojeongsj](https://github.com/hansoojeongsj) | [@KIMGEONHWI](https://github.com/KIMGEONHWI) |
@@ -119,7 +138,9 @@ ## πŸ“’ 넀이밍 μ»¨λ²€μ…˜ -### 1. κΈ°λ³Έ (Default) +
+ + ### 1. κΈ°λ³Έ (Default) 1. μ»΄ν¬λ„ŒνŠΈ / class `PascalCase` 2. 폴더λͺ… `carmelCase` @@ -220,8 +241,13 @@

+
+ + ## πŸ“’ μ½”λ”© (개발) μ»¨λ²€μ…˜ +
+ ### λ³€μˆ˜ - var κΈˆμ§€. @@ -296,6 +322,8 @@ const InfoText = () => { ``` - λΆˆν•„μš”ν•œ 반볡문 지양 : filter, array.include() λ“± - μ‘°κ±΄λΆ€λ‘œ 데이터λ₯Ό ν™•μΈν•˜κ±°λ‚˜ λ½‘μ•„μ•Όν•˜λŠ” λ‘œμ§μ„ μ‚¬μš©ν•  λ•Œμ—λŠ” `Map` μ΄λ‚˜ `Object`처럼 `key`값을 μ΄μš©ν•΄μ„œ μ›μ†Œλ₯Ό μ°ΎλŠ” μžλ£Œν˜•μ„ μ΄μš©ν•˜λŠ”κ²ƒμ„ κ³ λ €ν•΄λ³΄κ±°λ‚˜, 배열을 μˆœνšŒν•˜μ§€ μ•Šκ³  index둜 λ°”λ‘œ μ ‘κ·Όν•  수 μžˆλŠ” 방법이 μ—†λŠ”μ§€ κ³ λ €. + + ### Style β†’ X @@ -308,3 +336,5 @@ const InfoText = () => { - button νƒœκ·Έμ— **`type`**은 λͺ…μ‹œμ μœΌλ‘œ μž‘μ„± - 비ꡐ μ—°μ‚°μžλŠ” **`===`**와 **`!==`**λ§Œμ„ μ‚¬μš© - axios μ•ˆμ—μ„œ **`then/catch`** λŒ€μ‹  **`async/await`** 지ν–₯ + +
diff --git a/src/apis/auth/quries/index.ts b/src/apis/auth/quries/index.ts index f51bac53..54c48d93 100644 --- a/src/apis/auth/quries/index.ts +++ b/src/apis/auth/quries/index.ts @@ -15,15 +15,11 @@ export const useLoginMutation = () => { onSuccess: ({ data: { accessToken, refreshToken, isOnboarded } }) => { instance.defaults.headers.Authorization = `Bearer ${accessToken}`; if (!isOnboarded) { + clearStorage(); navigate(ROUTES_CONFIG.onboarding.path, { state: { accessToken, refreshToken } }); return; } - if (!isOnboarded) { - navigate(ROUTES_CONFIG.onboarding.path); - return; - } - navigate(ROUTES_CONFIG.home.path); setStorage(accessToken, refreshToken); }, diff --git a/src/components/ClassCard/index.css.ts b/src/components/ClassCard/index.css.ts index 2716d702..ad79af40 100644 --- a/src/components/ClassCard/index.css.ts +++ b/src/components/ClassCard/index.css.ts @@ -14,8 +14,26 @@ export const cardContainerStyle = style({ export const cardImageStyle = style({ width: '8.4rem', height: '8.4rem', + flexShrink: 0, borderRadius: 3.4, backgroundColor: vars.colors.gray04, }); + +export const cardContentStyle = style({ + flex: 1, + display: 'flex', + flexDirection: 'column', + gap: '0.8rem', + overflow: 'hidden', + + width: '100%', +}); + +export const lessonNameStyle = style({ + width: '100%', + whiteSpace: 'nowrap', + overflow: 'hidden', + textOverflow: 'ellipsis', +}); diff --git a/src/components/ClassCard/index.tsx b/src/components/ClassCard/index.tsx index 83ee40a8..2e0c2060 100644 --- a/src/components/ClassCard/index.tsx +++ b/src/components/ClassCard/index.tsx @@ -44,6 +44,8 @@ const ClassCard = ({ return 'λͺ¨μ§‘쀑'; case 'completed': return 'λͺ¨μ§‘μ™„λ£Œ'; + case 'ongoing': + return 'λͺ¨μ§‘μ™„λ£Œ'; default: return ''; } @@ -96,7 +98,7 @@ const ClassCard = ({ {`${lessonName} - + {lessonGenre && genreMapping[lessonGenre]} @@ -105,7 +107,7 @@ const ClassCard = ({ {lessonLevel && levelMapping[lessonLevel]} - + {lessonName} @@ -126,8 +128,14 @@ const ClassCard = ({ μž₯μ†Œ - {lessonLocation}  - {lessonDetailedAddress} + {lessonLocation || lessonDetailedAddress ? ( + <> + {lessonLocation}  + {lessonDetailedAddress} + + ) : ( + 'λ―Έμ •' + )} diff --git a/src/pages/home/components/BottomSection/index.tsx b/src/pages/home/components/BottomSection/index.tsx index a39c5e9d..b713eae6 100644 --- a/src/pages/home/components/BottomSection/index.tsx +++ b/src/pages/home/components/BottomSection/index.tsx @@ -31,28 +31,6 @@ const BottomSection = ({ isInstructor }: { isInstructor: boolean }) => { } }; - // 리슀트 μ•„μ΄ν…œ λ Œλ”λ§ - const renderListItem = (item: (typeof LIST_DATA)[number]) => { - const isDisabled = !!item.isInstructorRequired && !isInstructor; - const ArrowIcon = isDisabled ? IcArrowRightSmallGray0432 : IcArrowRightSmallGray0732; - - return ( - -
  • handleItemClick(item, isDisabled)}> -

    {item.label}

    - -
  • - {item.hasDivider && ( -
    - -
    - )} -
    - ); - }; - return (
      @@ -61,18 +39,11 @@ const BottomSection = ({ isInstructor }: { isInstructor: boolean }) => { (item.isInstructorRequired && !isInstructor) || (item.label === '강사 등둝' && isInstructor); const ArrowIcon = isDisabled ? IcArrowRightSmallGray0432 : IcArrowRightSmallGray0732; - const handleClick = () => { - if (isDisabled) return; - if (item.label === 'λ‘œκ·Έμ•„μ›ƒ') { - handleLogout(); - } else if (item.path) { - navigate(item.path); - } - }; - return ( -
    • +
    • handleItemClick(item, isDisabled)}>

      {item.label}

    • diff --git a/src/pages/home/components/LessonItem/index.css.ts b/src/pages/home/components/LessonItem/index.css.ts index f629c21f..cd521f0b 100644 --- a/src/pages/home/components/LessonItem/index.css.ts +++ b/src/pages/home/components/LessonItem/index.css.ts @@ -15,6 +15,8 @@ export const titleStyle = style({ whiteSpace: 'normal', overflow: 'hidden', + wordBreak: 'break-all', + }); export const teacherImageStyle = style({ diff --git a/src/pages/home/components/TopSection/index.tsx b/src/pages/home/components/TopSection/index.tsx index dc4c1c1a..4c2f147b 100644 --- a/src/pages/home/components/TopSection/index.tsx +++ b/src/pages/home/components/TopSection/index.tsx @@ -24,7 +24,6 @@ const TopSection = ({ userData, onClose, isInstructor }: TopSectionProps) => { const isMyLessonsZero = () => { if (userData.reservationCount > 0) return handleNavigate(ROUTES_CONFIG.mypageReservation.path); - return; }; @@ -84,7 +83,7 @@ const TopSection = ({ userData, onClose, isInstructor }: TopSectionProps) => { - + { - + {userData.favoriteCount} diff --git a/src/pages/instructorRegister/components/InstructorRegisterFunnel/CareerStep/InputSection/index.tsx b/src/pages/instructorRegister/components/InstructorRegisterFunnel/CareerStep/InputSection/index.tsx index 6dead38d..f95e63e6 100644 --- a/src/pages/instructorRegister/components/InstructorRegisterFunnel/CareerStep/InputSection/index.tsx +++ b/src/pages/instructorRegister/components/InstructorRegisterFunnel/CareerStep/InputSection/index.tsx @@ -85,7 +85,7 @@ const InputSection = ({ {inputItems.map(({ id, value }) => (
      { const updatedItems = inputItems.map((item) => diff --git a/src/pages/instructorRegister/components/InstructorRegisterFunnel/IntroductionStep/index.tsx b/src/pages/instructorRegister/components/InstructorRegisterFunnel/IntroductionStep/index.tsx index cd780e4c..178cddfe 100644 --- a/src/pages/instructorRegister/components/InstructorRegisterFunnel/IntroductionStep/index.tsx +++ b/src/pages/instructorRegister/components/InstructorRegisterFunnel/IntroductionStep/index.tsx @@ -30,7 +30,7 @@ const IntroductionStep = ({ detail, onInfoChange }: IntroductionStepProps) => { return ( <> - +