Skip to content

fix: 가게 등록, 전체 css 수정#86

Merged
dew102938 merged 8 commits into
developfrom
fix/store-info
Feb 12, 2026
Merged

fix: 가게 등록, 전체 css 수정#86
dew102938 merged 8 commits into
developfrom
fix/store-info

Conversation

@dew102938

@dew102938 dew102938 commented Feb 12, 2026

Copy link
Copy Markdown
Contributor

💡 개요

  • 가게 등록, 전체 css 수정

🔢 관련 이슈 링크

💻 작업내용

  • 주소 서울만 가능함을 알리는 텍스트, alert 추가
  • 주소 유효성 검사 순서 수정
  • 영업 시간 유효성 검사 제한 제거
  • 일부 css 수정

📌 변경사항PR

  • FEAT: 새로운 기능 추가
  • FIX: 버그/오류 수정
  • CHORE: 코드/내부 파일/설정 수정
  • DOCS: 문서 수정(README 등)
  • REFACTOR: 코드 리팩토링 (기능 변경 없음)
  • TEST: 테스트 코드 추가/수정
  • STYLE: 스타일 변경(포맷, 세미콜론 등)

🤔 추가 논의하고 싶은 내용

✅ 체크리스트

  • 브랜치는 잘 맞게 올렸는지
  • 관련 이슈를 맞게 연결했는지
  • 로컬에서 정상 동작을 확있했는지
  • 충돌이 없다(또는 브랜치에서 충돌 해결 후 PR 업데이트 완료)

Summary by CodeRabbit

릴리스 노트

버그 수정

  • 매장 등록 시 지역 오류 처리 강화(서울 지역 안내 표시 및 구분된 오류 알림)
  • 설정 페이지 저장 버튼 클래스 오타 수정

UI/UX 개선

  • 주소 입력 레이블에 "현재 서울 지역만 등록 가능합니다" 안내 추가
  • 프리미엄 구독 버튼에 클릭으로 이동하는 동작 추가
  • 레이아웃 여백 축소 및 일부 헤더/내비게이션 항목 간소화
  • 주소/시간 관련 오류 표시 UI 소소한 개선

@vercel

vercel Bot commented Feb 12, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
eatsfine Ready Ready Preview, Comment Feb 12, 2026 8:45am

@coderabbitai

coderabbitai Bot commented Feb 12, 2026

Copy link
Copy Markdown
📝 Walkthrough

Walkthrough

서울 지역 등록 제한을 명시하고 관련 폼 검증/에러 처리를 추가·조정하며, 레이아웃과 네비게이션 일부 UI/클래스 오타를 수정한 변경입니다.

Changes

Cohort / File(s) Summary
Store Registration (폼 및 유효성)
src/components/store-registration/StepStoreInfo.tsx, src/components/store-registration/StoreInfo.schema.ts
주소 해석 후 trigger("address") 호출로 주소 관련 검증 트리거 추가, address setValue 호출에서 즉시 검증 옵션 제거, openTime/closeTime 간 비교 검증(refine) 제거. 주소 라벨에 "(현재 서울 지역만 등록 가능합니다)" 안내문 추가 및 에러 UI 일부 조정.
Registration error handling
src/pages/myPage/StoreRegistrationPage.tsx
API 오류 처리에서 error: any 사용 및 REGION404 코드 검사 추가 — REGION404일 때 사용자에게 "현재 서울 지역만 등록 가능합니다." alert 표시.
Layout & Header
src/layouts/PublicLayout.tsx, src/components/main/Header.tsx, src/pages/ownerPage.tsx
PublicLayout main vertical padding py-8 → py-4로 축소, Header에서 데스크톱 내비게이션 항목("소개"//) 제거, ownerPage 상단 제목/아이콘 블록 제거 및 관련 레이아웃 간소화.
Navigation & 기타 UI 수정
src/pages/myPage/storePage.tsx, src/pages/myPage/settingPage.tsx
storePage에 useNavigate 추가하여 프리미엄 버튼 클릭 시 /mypage/subscription으로 이동하도록 변경(클래스에 cursor-pointer 추가). settingPage의 Save 버튼 클래스명 오타 crounded-lgrounded-lg 수정.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 분

Possibly related PRs

Suggested labels

fix

Suggested reviewers

  • yooseolhee
  • jjjsun

Poem

서울의 주소 하나로 길이 정해지네 📍
검증 깨어나고 알림이 울리면
작은 라벨이 소식을 전하고
버튼은 길을 안내하네 → ✨
배포의 순간, 커밋에 박수 👏


검토 포인트 (짧게, 근거·대안 포함)

  • StepStoreInfo의 trigger("address") 호출 위치/빈도 확인
    • 근거: 중복 트리거로 사용자 경험/성능 영향 가능.
    • 대안: 주소 관련 상태가 변경되는 지점에서만 단일 호출으로 통제하거나 debounce 적용. 예:
      // debounce 예시
      const debouncedTrigger = useRef(debounce(() => trigger("address"), 300)).current;
      // 주소 변경 후
      debouncedTrigger();
  • StoreInfo.schema에서 open/close 시간 검증 제거 영향 점검
    • 근거: 시간 논리 검증이 클라이언트에서 없어지면 잘못된 시간 입력을 서버에서만 잡을 수 있음.
    • 대안: 검증을 유지하되 메시지/로직을 개선하거나, 서버와 동일한 규칙을 유지하도록 zod refine를 다시 적용.
  • StoreRegistrationPage의 에러 타입 처리 명확화
    • 근거: any 사용은 예측 가능한 타입 핸들링을 방해함.
    • 대안(예시):
      import { AxiosError } from "axios";
      try {
        // ...
      } catch (e) {
        const err = e as AxiosError<{ code?: string }>;
        if (err.response?.data?.code === REGION404) {
          alert("현재 서울 지역만 등록 가능합니다.");
        } else {
          alert(getErrorMessage(e));
        }
      }
  • ownerPage에서 페이지 제목(헤더) 제거 시 접근성/SEO 확인
    • 근거: 시맨틱한 페이지 제목(<h1>) 제거는 스크린리더/SEO에 영향.
    • 대안: 시각적 요소를 제거하되 시맨틱한 제목은 visually-hidden으로 유지.
🚥 Pre-merge checks | ✅ 1 | ❌ 2
❌ Failed checks (1 warning, 1 inconclusive)
Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
Title check ❓ Inconclusive 제목이 CSS 수정과 가게 등록에 대해 언급하고 있으나, 실제 변경사항은 주소 검증 로직 개선, 지역 제한 안내, 레이아웃 패딩 조정, 버튼 네비게이션 추가 등 여러 기능적 변경을 포함하고 있어 주요 변경사항을 완전히 대표하지 못함. "fix: 서울 지역 등록 제한 안내 및 주소 검증 개선" 또는 "fix: 가게 등록 지역 제한 기능 추가 및 UI 개선" 등으로 수정하여 주요 기능 변경을 명확히 표현하세요.
✅ Passed checks (1 passed)
Check name Status Explanation
Description check ✅ Passed PR 설명이 템플릿 구조를 잘 따르고 있으며, 개요, 관련 이슈, 작업내용, 변경사항 체크박스, 체크리스트가 모두 작성되어 있습니다.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch fix/store-info

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@dew102938 dew102938 changed the title Fix fix: 가게 등록, 전체 css 수정 Feb 12, 2026

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Fix all issues with AI agents
In `@src/components/store-registration/StepStoreInfo.tsx`:
- Around line 239-247: The Label component rendering the address field currently
mixes conflicting display classes ("flex" and "block") in its className; remove
the redundant "block" so the element uses the intended flex layout (update the
className on the Label element in StepStoreInfo.tsx to drop "block" and keep
"flex flex-wrap items-baseline ...").
🧹 Nitpick comments (1)
src/pages/myPage/StoreRegistrationPage.tsx (1)

132-139: error가 non-object일 때 런타임 에러 가능성이 있어요.

catch (error: any) 에서 error.response?.data에 접근하는데, 만약 errornull이나 primitive 타입이면 error.response에서 TypeError가 발생할 수 있어요. 실제로는 거의 발생하지 않지만, 방어적으로 작성하면 더 안전합니다.

♻️ 더 안전한 에러 핸들링 제안
-      } catch (error: any) {
+      } catch (error: unknown) {
         console.error("가게 등록 실패:", error);
-        const errorResponse = error.response?.data as ApiError;
-        if (errorResponse?.code === "REGION404") {
+        const errorResponse = (
+          error != null &&
+          typeof error === "object" &&
+          "response" in error
+            ? (error as any).response?.data
+            : undefined
+        ) as ApiError | undefined;
+        if (errorResponse?.code === "REGION404") {
           alert("현재 서울 지역만 등록 가능합니다.");
         } else {
           alert(getErrorMessage(error));
         }

또는 axios를 사용 중이시라면 axios.isAxiosError(error) 가드를 활용하는 것도 좋아요:

import axios from "axios";
// ...
} catch (error: unknown) {
  console.error("가게 등록 실패:", error);
  if (axios.isAxiosError(error) && error.response?.data?.code === "REGION404") {
    alert("현재 서울 지역만 등록 가능합니다.");
  } else {
    alert(getErrorMessage(error));
  }
}

Comment thread src/components/store-registration/StepStoreInfo.tsx

@jjjsun jjjsun left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

확인했습니다!!

@dew102938 dew102938 merged commit 7b70746 into develop Feb 12, 2026
3 checks passed
@jjjsun jjjsun deleted the fix/store-info branch February 12, 2026 12:41
@jjjsun jjjsun added 🐞 BugFix 버그/오류 수정 🎨 Design UI/UX labels Apr 1, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

🐞 BugFix 버그/오류 수정 🎨 Design UI/UX

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[fix] 가게 등록, 전체 css 수정

2 participants