diff --git a/README.md b/README.md index 99d1b90..301cc8f 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,10 @@ ## 개발 기간 -**2024.06.17 - 2024.08.01 (총 7주)** +| | (총 11주) | +| --- | --- | +| 코스 내 프로젝트 진행 | **2024.06.17 - 2024.08.01** | +| 추가 기능 개발 진행 | **2024.08.05 - 2024.08.30** | ## 상세 보기 @@ -21,20 +24,22 @@ - 배포 Preview & Production : Vercel - 실시간 소통 : Discord, Slack, Kakao talk chat, Zep, Jitsi ... +## 아키텍처 다이어그램 + +![Architecture-케밋 아키텍처](https://github.com/user-attachments/assets/071be105-50c2-4875-b9ab-8fae2d5424e2) + ## 핵심 기능 (개발중) -- 회원가입/로그인 및 소셜 로그인(Kakao, Google +) -- 로그인 세션에 따른 라우트 접근 -- 글, 댓글 CRUD (Create, Read, Update, Delete) -- 회원 정보 RU (Read, Update) -- 스터디 찜 +- [x] 회원가입/로그인 및 소셜 로그인(Kakao, Google +) +- [x] 로그인 세션에 따른 라우트 접근 +- [x] 글, 댓글 CRUD (Create, Read, Update, Delete) +- [x] 회원 정보 RU (Read, Update) +- [ ] 스터디 찜, 지원 -## 부가 기능 (개발 미정🔺) +## 부가 기능 (개발중) -- 댓글, 답글 추가시 사용자 알림 -- 스터디 리더와 참여자들 간 실시간 채팅 -- 이미지 저장 시 이미지 압축, CDN으로 관리 -- 스터디룸 대시보드 페이지 +- [ ] 댓글, 답글 추가시 사용자 알림 +- [x] 이미지 저장 시 이미지 압축 및 CDN으로 사용 ## 기획 diff --git a/src/app/(auth)/find/password/page.tsx b/src/app/(auth)/find/password/page.tsx index a2a2150..9dfef84 100644 --- a/src/app/(auth)/find/password/page.tsx +++ b/src/app/(auth)/find/password/page.tsx @@ -22,6 +22,7 @@ export default function FindPassword() { if (!userEmail) { handleAlert("error", "비밀번호를 변경할 유저의 이메일이 없습니다."); + return; } diff --git a/src/app/(route)/my/profile/_components/EditProfileImage/ProfileImagePreviewModal.tsx b/src/app/(route)/my/profile/_components/EditProfileImage/ProfileImagePreviewModal.tsx index 378f314..f6019f1 100644 --- a/src/app/(route)/my/profile/_components/EditProfileImage/ProfileImagePreviewModal.tsx +++ b/src/app/(route)/my/profile/_components/EditProfileImage/ProfileImagePreviewModal.tsx @@ -1,7 +1,7 @@ import Button from "@/common/Atoms/Form/Button"; import SectionTitle from "@/common/Atoms/Text/SectionTitle"; import ImageInputWithButton from "@/common/Molecules/Form/ImageInputWithButton"; -import { ChangeEventHandler } from "react"; +import { ChangeEventHandler, useEffect, useState } from "react"; type PropsToPreviewModal = { imageUrl: string; @@ -10,6 +10,16 @@ type PropsToPreviewModal = { }; export default function ProfileImagePreviewModal(props: PropsToPreviewModal) { const { imageUrl, getImage, onSave } = props; + const [disabled, setDisadled] = useState(true); + + useEffect(() => { + const handleTime = setTimeout(() => { + setDisadled(false); + }, 1000); + + return () => clearTimeout(handleTime); + }, []); + return (
프로필 미리보기 @@ -32,7 +42,7 @@ export default function ProfileImagePreviewModal(props: PropsToPreviewModal) { > 다시 선택 -
diff --git a/src/app/_components/AlertList.tsx b/src/app/_components/AlertList.tsx index 66888f9..e746eb2 100644 --- a/src/app/_components/AlertList.tsx +++ b/src/app/_components/AlertList.tsx @@ -1,8 +1,5 @@ -"use client"; - import Link from "next/link"; import { TUserAlert } from "@/common/Layout/ProfileMenu/ResponsiveMenu"; -import { Dispatch, SetStateAction } from "react"; type AlertListProps = { list: TUserAlert; @@ -11,10 +8,10 @@ type AlertListProps = { export default function AlertList({ list }: AlertListProps) { return ( <> -