Skip to content

fix: 기능/CSS 에러 수정 및 개선#143

Merged
Yejiin21 merged 9 commits intodevelopfrom
fix/#142/file-upload-host-image
May 26, 2025
Merged

fix: 기능/CSS 에러 수정 및 개선#143
Yejiin21 merged 9 commits intodevelopfrom
fix/#142/file-upload-host-image

Conversation

@Yejiin21
Copy link
Copy Markdown
Contributor

@Yejiin21 Yejiin21 commented May 26, 2025

Summary by CodeRabbit

  • 신규 기능

    • 파일 업로드 컴포넌트에 기본 이미지를 사용할지 여부를 선택할 수 있는 옵션이 추가되었습니다.
  • 버그 수정

    • 북마크 페이지의 검색 아이콘 크기가 버튼에 맞게 일관되게 조정되었습니다.
    • 이벤트 카드에서 해시태그가 없을 때 빈 컨테이너가 표시되지 않도록 개선되었습니다.
    • 카운트다운 컴포넌트가 dDay 값이 'false'가 아닐 때만 표시되도록 변경되었습니다.
  • UI/스타일 개선

    • 대시보드 판매 금액이 로컬라이즈된 문자열로 표시되어 가독성이 향상되었습니다.
    • 티켓 매출 위젯의 금액 폰트 크기가 반응형으로 조정되었습니다.
    • 이벤트 카드의 높이 스타일이 유연하게 변경되었습니다.
    • 마이페이지에서 등록된 카드 영역이 더 이상 표시되지 않습니다.
    • 하단 바에서 현재 경로와 동일한 메뉴를 클릭 시 뒤로 가기가 동작하도록 개선되었습니다.
    • 티켓/호스트 레이아웃의 안내 문구가 페이지 유형에 따라 다르게 표시됩니다.
    • 호스트 마이페이지의 프로필 영역 상단 여백이 증가하였습니다.
  • 리팩터

    • TicketHostLayout 컴포넌트의 prop 명칭이 showText에서 ticketPage로 변경되었습니다.
    • 관련 페이지에서 해당 prop 적용 방식이 변경되었습니다.

@Yejiin21 Yejiin21 self-assigned this May 26, 2025
@Yejiin21 Yejiin21 added the 🛠️ BugFix 오류 해결 과정 기록 label May 26, 2025
@Yejiin21 Yejiin21 linked an issue May 26, 2025 that may be closed by this pull request
@coderabbitai
Copy link
Copy Markdown

coderabbitai bot commented May 26, 2025

Walkthrough

이번 변경에서는 여러 UI 컴포넌트와 훅에 옵션 및 스타일 관련 수정이 이루어졌습니다. 파일 업로드 및 이미지 업로드 훅에 기본 이미지 사용 여부를 제어하는 옵션이 추가되었고, 일부 컴포넌트의 props 명칭 및 조건부 렌더링 로직이 변경되었습니다. 또한, 스타일 및 네비게이션 동작에 대한 세부 조정이 포함되어 있습니다.

Changes

파일/경로 요약 변경 내용 요약
src/features/event/ui/FileUpload.tsx
src/shared/hooks/useImageUpload.ts
useDefaultImage 옵션 prop 및 파라미터 추가, 기본 이미지 사용 제어 로직 반영
src/pages/dashboard/ui/EventDetailPage.tsx
src/pages/event/ui/create-event/EventInfoPage.tsx
FileUpload 컴포넌트에 useDefaultImage={false} 명시적으로 전달
src/shared/ui/backgrounds/TicketHostLayout.tsx showTextticketPage로 prop 명칭 변경 및 조건부 안내 문구 수정, 기본값 변경
src/pages/menu/ui/MyTicketPage.tsx
src/pages/menu/ui/myHost/MyHostPage.tsx
TicketHostLayout에 전달하는 prop을 showText에서 ticketPage로 변경 및 레이아웃 마진 조정
src/pages/dashboard/ui/DashbaordPage.tsx
src/widgets/dashboard/ui/main/TicketRevenue.tsx
금액 표시 형식 로컬라이즈 및 폰트 크기 스타일 변경
src/pages/bookmark/ui/BookmarkPage.tsx 검색 아이콘 이미지에 고정 너비 클래스(w-5) 추가
src/pages/menu/ui/MyPage.tsx 카드 관련 import 및 렌더링 주석 처리, 코드 포맷팅 소폭 수정
src/shared/ui/EventCard.tsx 높이 스타일을 min/max로 변경, 해시태그/카운트다운 조건부 렌더링 추가
src/widgets/main/ui/BottomBar.tsx 하단바 아이템 클릭 시 현재 경로일 경우 뒤로가기, 아니면 해당 경로로 이동하는 로직으로 변경

Sequence Diagram(s)

sequenceDiagram
    participant Parent as 상위 컴포넌트
    participant FileUpload as FileUpload
    participant useImageUpload as useImageUpload Hook

    Parent->>FileUpload: useDefaultImage={false} 전달
    FileUpload->>useImageUpload: useDefaultImage 전달
    useImageUpload-->>FileUpload: (기본 이미지 사용 여부에 따라 previewUrl 설정)
Loading

Suggested labels

🪄 Refactoring

Suggested reviewers

  • hyeeuncho

Poem

🐇
새로운 옵션 살짝 추가,
이미지 업로드도 똑똑하게~
버튼도 스타일 예쁘게,
네비게이션은 더 부드럽게!
토끼는 깡충깡충 뛰며
코드의 변화를 기쁘게 노래해요.
🌸

✨ Finishing Touches
  • 📝 Generate Docstrings

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
🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Explain this complex logic.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai explain this code block.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read src/utils.ts and explain its main purpose.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Support

Need help? Create a ticket on our support page for assistance with any issues or questions.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai generate docstrings to generate docstrings for this PR.
  • @coderabbitai generate sequence diagram to generate a sequence diagram of the changes in this PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

@github-actions
Copy link
Copy Markdown

@Yejiin21 Yejiin21 removed the request for review from HSCHEOL May 26, 2025 05:43
Copy link
Copy Markdown

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 2

🧹 Nitpick comments (2)
src/shared/ui/EventCard.tsx (1)

72-83: hashtags 조건부 렌더링과 널 안전성 개선이 우수합니다.

hashtags && 조건과 (hashtags ?? []) 널 병합 연산자를 함께 사용하여 이중 안전장치를 구현했습니다. 하지만 논리적으로 중복됩니다.

다음과 같이 단순화할 수 있습니다:

-        {hashtags && (
-          <div className="flex flex-wrap w-full h-6 mt-2 overflow-hidden text-xs font-semibold text-gray-700 whitespace-nowrap">
-            {(hashtags ?? []).map((tag, index) => (
+        {hashtags?.length > 0 && (
+          <div className="flex flex-wrap w-full h-6 mt-2 overflow-hidden text-xs font-semibold text-gray-700 whitespace-nowrap">
+            {hashtags.map((tag, index) => (
src/features/event/ui/FileUpload.tsx (1)

9-9: 프로퍼티 문서화를 고려해 보세요.

새로 추가된 useDefaultImage 프로퍼티의 목적과 동작을 명확히 하기 위해 JSDoc 주석을 추가하는 것을 고려해 보세요.

interface FileUploadProps {
  value?: string;
  onChange?: (url: string) => void;
  setEventState?: React.Dispatch<React.SetStateAction<FunnelState['eventState']>>;
+  /** 기본 이미지 사용 여부를 제어합니다 */
  useDefaultImage?: boolean;
}
📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 1e09df9 and 640a0c8.

📒 Files selected for processing (13)
  • src/features/event/ui/FileUpload.tsx (1 hunks)
  • src/pages/bookmark/ui/BookmarkPage.tsx (1 hunks)
  • src/pages/dashboard/ui/DashbaordPage.tsx (2 hunks)
  • src/pages/dashboard/ui/EventDetailPage.tsx (1 hunks)
  • src/pages/event/ui/create-event/EventInfoPage.tsx (1 hunks)
  • src/pages/menu/ui/MyPage.tsx (6 hunks)
  • src/pages/menu/ui/MyTicketPage.tsx (1 hunks)
  • src/pages/menu/ui/myHost/MyHostPage.tsx (1 hunks)
  • src/shared/hooks/useImageUpload.ts (2 hunks)
  • src/shared/ui/EventCard.tsx (3 hunks)
  • src/shared/ui/backgrounds/TicketHostLayout.tsx (2 hunks)
  • src/widgets/dashboard/ui/main/TicketRevenue.tsx (1 hunks)
  • src/widgets/main/ui/BottomBar.tsx (1 hunks)
🧰 Additional context used
🧬 Code Graph Analysis (1)
src/pages/menu/ui/MyPage.tsx (1)
src/features/join/hooks/useUserHook.ts (1)
  • useUserInfo (5-10)
⏰ Context from checks skipped due to timeout of 90000ms (1)
  • GitHub Check: storybook
🔇 Additional comments (22)
src/pages/bookmark/ui/BookmarkPage.tsx (1)

18-18: 스타일링 일관성 개선이 적절합니다.

검색 아이콘에 w-5 클래스를 추가하여 버튼과 아이콘의 크기를 일치시킨 것은 좋은 개선입니다. UI 일관성을 향상시키는 변경사항입니다.

src/widgets/dashboard/ui/main/TicketRevenue.tsx (1)

13-13:

Details

❓ Verification inconclusive

반응형 텍스트 크기 개선이 좋습니다.

반응형 텍스트 크기로 변경한 것은 다양한 화면 크기에서의 사용자 경험을 개선하는 좋은 변경입니다. 다만 text-16 클래스가 커스텀 클래스인지 확인해 주세요.

다음 스크립트로 text-16 클래스가 정의되어 있는지 확인해 주세요:


🏁 Script executed:

#!/bin/bash
# text-16 클래스가 정의된 위치 찾기
rg -A 3 -B 3 "text-16"

Length of output: 5693


반응형 텍스트 크기 개선은 좋아 보이지만, 아직 text-16 클래스 정의 위치를 찾지 못했습니다. Tailwind 설정 파일에서 해당 클래스가 실제로 커스텀 정의되어 있는지 확인해 주세요.


🏁 Script executed:

#!/bin/bash
# Tailwind 설정에서 text-16 클래스 정의 여부 확인
rg -n "text-16" tailwind.config.js

Length of output: 34


text-16 클래스 정의 확인이 필요합니다.

현재 Tailwind 기본 유틸리티에 text-16은 포함되어 있지 않으므로, 아래 항목을 확인해 주세요:

  • tailwind.config.jstheme.extend.fontSizetext-16 정의 여부
  • 전역 CSS 파일(src/styles/global.css, index.css 등)에서 text-16 클래스 정의 여부
  • CSS 모듈 또는 별도 스타일 파일에서 text-16 정의 여부
src/pages/dashboard/ui/DashbaordPage.tsx (1)

28-28: 포맷된 가격 사용이 적절합니다.

formattedPrice를 사용하고 기존 fallback 로직을 유지한 것이 좋습니다. 사용자에게 더 읽기 쉬운 가격 형식을 제공합니다.

src/shared/hooks/useImageUpload.ts (3)

4-12: useDefaultImage 옵션 추가가 유연성을 향상시킵니다.

새로운 useDefaultImage 옵션을 통해 기본 이미지 사용 여부를 제어할 수 있게 된 것은 훅의 재사용성을 크게 향상시키는 좋은 개선입니다. 기본값을 true로 설정하여 기존 동작을 유지한 것도 적절합니다.


21-24: 조건부 기본 이미지 설정 로직이 적절합니다.

useDefaultImage 조건과 previewUrl !== DEFAULT_BASIC_PROFILE 조건을 함께 사용하여 불필요한 상태 업데이트를 방지한 것이 좋습니다. 기본 이미지가 설정될 때 onSuccess 콜백을 호출하는 것도 일관성 있는 동작입니다.


25-25:

Details

✅ Verification successful

dependency array에 previewUrl 추가 시 주의가 필요합니다.

dependency array에 previewUrl을 추가한 것이 무한 루프를 유발할 수 있는지 확인이 필요합니다. 현재 조건문에서 previewUrl !== DEFAULT_BASIC_PROFILE로 방지하고 있지만, 향후 로직 변경 시 주의해야 합니다.

다음 스크립트로 이 훅을 사용하는 컴포넌트들에서 무한 렌더링이 발생하지 않는지 확인해 주세요:


🏁 Script executed:

#!/bin/bash
# useImageUpload 훅 사용처 찾기
rg -A 10 -B 5 "useImageUpload"

Length of output: 5514


🏁 Script executed:

#!/bin/bash
# useImageUpload 훅의 useEffect 구현부 확인
rg -n "useEffect" -A10 -B10 src/shared/hooks/useImageUpload.ts

Length of output: 1098


useEffect 의 previewUrl 의존성으로 인한 무한 루프는 발생하지 않습니다
현재 로직에서

  • value가 있을 땐 한 번만 setPreviewUrl(value)를 호출하고
  • value가 없고 useDefaultImage가 켜져 있을 때도 초기에만 setPreviewUrl(DEFAULT_BASIC_PROFILE)를 호출한 뒤
    이후에는 previewUrl === DEFAULT_BASIC_PROFILE 조건으로 실행을 건너뛰어 무한 루프가 발생하지 않습니다.

향후 로직을 변경하실 때도 이 가드를 유지해 주세요.

src/shared/ui/EventCard.tsx (2)

41-41: 반응형 높이 제약 조건 개선이 잘 적용되었습니다.

고정 높이에서 min-hmax-h를 사용한 유연한 높이 제약으로 변경하여 콘텐츠 길이에 따른 적응성이 향상되었습니다.


50-54: dDay 조건부 렌더링 로직이 올바르게 개선되었습니다.

dDay !== 'false' 조건을 통해 불필요한 Countdown 컴포넌트 렌더링을 방지하는 것이 적절합니다.

src/shared/ui/backgrounds/TicketHostLayout.tsx (2)

8-11: prop 이름 변경과 기본값 수정이 적절합니다.

showText에서 ticketPage로의 이름 변경이 더 명확한 의미를 전달하며, 기본값을 true로 설정한 것도 합리적입니다.


38-48: 조건부 렌더링 로직이 명확하게 구성되었습니다.

ticketPage boolean 값에 따른 다른 텍스트 표시가 적절하게 구현되었습니다. div에서 p 태그로의 변경도 시맨틱하게 더 적합합니다.

src/pages/menu/ui/MyTicketPage.tsx (1)

49-49: TicketHostLayout 컴포넌트의 API 변경에 올바르게 대응했습니다.

showText={true}에서 ticketPage={true}로의 prop 변경이 정확하게 적용되어 기존 기능이 유지됩니다.

src/pages/menu/ui/myHost/MyHostPage.tsx (2)

19-19: 새로운 ticketPage prop 사용이 적절합니다.

ticketPage={false} 설정으로 호스트 페이지에 맞는 안내 텍스트가 표시되도록 구성되었습니다.


20-20: 마진 조정으로 레이아웃 간격이 개선되었습니다.

mt-24에서 mt-28로의 변경으로 상단 여백이 적절히 증가했습니다.

src/pages/event/ui/create-event/EventInfoPage.tsx (1)

10-10: 변경사항이 적절합니다.

FileUpload 컴포넌트에 useDefaultImage={false} prop을 추가하여 기본 이미지 미리보기를 명시적으로 비활성화하는 것은 좋은 개선입니다. 이를 통해 컴포넌트의 동작을 더 명확하게 제어할 수 있습니다.

src/pages/dashboard/ui/EventDetailPage.tsx (1)

69-69: 일관성 있는 개선사항입니다.

EventInfoPage와 동일하게 useDefaultImage={false} prop을 추가하여 이벤트 관련 페이지들에서 기본 이미지 동작을 일관성 있게 제어하는 것은 좋은 접근입니다.

src/pages/menu/ui/MyPage.tsx (5)

8-8: import 문 포맷팅 개선

import 문에서 공백을 추가하여 가독성을 향상시킨 것이 좋습니다.


12-12: 구조 분해 할당 포맷팅 개선

구조 분해 할당에서 공백을 추가하여 코드 가독성을 향상시킨 것이 좋습니다.


33-33: 함수 매개변수 포맷팅 개선

단일 매개변수에서 불필요한 괄호를 제거한 것은 더 깔끔한 코드 스타일입니다.


46-46: 콜백 함수 매개변수 포맷팅 개선

단일 매개변수에서 괄호를 제거한 것은 일관성 있는 코드 스타일입니다.


107-107: PaymentCard 컴포넌트 제거 확인 필요

PaymentCard 컴포넌트가 주석 처리되어 등록된 카드 섹션이 비활성화되었습니다. 이것이 의도적인 변경인지 확인이 필요합니다.

이 기능 제거가 의도적인 것인지, 아니면 임시적인 비활성화인지 확인해 주세요. 만약 완전히 제거할 예정이라면 주석 대신 코드를 삭제하는 것을 권장합니다.

src/features/event/ui/FileUpload.tsx (2)

12-12: 컴포넌트 파라미터 변경이 적절합니다.

새로운 useDefaultImage 프로퍼티가 올바르게 컴포넌트 파라미터에 추가되었습니다.


19-19:

Details

✅ Verification successful

훅에 프로퍼티가 올바르게 전달되었는지 확인하세요.

useDefaultImage 프로퍼티가 useImageUpload 훅에 올바르게 전달되었습니다. 훅이 undefined 값을 적절히 처리하는지 확인해 보세요.

다음 스크립트를 실행하여 useImageUpload 훅이 useDefaultImage 파라미터를 어떻게 처리하는지 확인해 보겠습니다:


🏁 Script executed:

#!/bin/bash
# useImageUpload 훅에서 useDefaultImage 파라미터 처리 방식 확인
ast-grep --pattern 'const useImageUpload = ($PARAMS) => {
  $$$
}'

Length of output: 4675


useDefaultImage 기본값(true)으로 안전하게 처리됩니다
useImageUpload 훅 시그니처에서 useDefaultImage = true 로 선언되어 있어, undefined가 전달되더라도 기본값이 적용됩니다.
따라서 FileUpload.tsx에서 useDefaultImage를 전달해 주시면 의도한 대로 동작합니다.


const DashboardPage = () => {
const { data } = useHostDashboard();
const formattedPrice = data?.totalPrice.toLocaleString();
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🛠️ Refactor suggestion

가격 포맷팅 개선에 null 체크 추가가 필요합니다.

숫자를 로케일 형식으로 포맷팅하는 것은 사용자 경험을 크게 개선하는 좋은 변경입니다. 하지만 data?.totalPrice가 undefined일 때 toLocaleString() 메서드 호출 시 에러가 발생할 수 있습니다.

다음과 같이 안전한 포맷팅을 제안합니다:

-  const formattedPrice = data?.totalPrice.toLocaleString();
+  const formattedPrice = data?.totalPrice?.toLocaleString();
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
const formattedPrice = data?.totalPrice.toLocaleString();
const formattedPrice = data?.totalPrice?.toLocaleString();
🤖 Prompt for AI Agents
In src/pages/dashboard/ui/DashbaordPage.tsx at line 11, the code calls
toLocaleString() on data?.totalPrice without checking if totalPrice is defined,
which can cause an error if totalPrice is undefined. To fix this, add a null or
undefined check before calling toLocaleString(), for example by using a
conditional expression or optional chaining combined with a fallback value,
ensuring that toLocaleString() is only called on a valid number.

Comment on lines +12 to +18
onClick={() => {
if (location.pathname === item.path) {
navigate(-1);
} else {
navigate(item.path);
}
}}
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🛠️ Refactor suggestion

네비게이션 로직 개선 제안

현재 탭을 다시 클릭했을 때 뒤로 가기 기능을 추가한 것은 좋은 아이디어입니다. 하지만 몇 가지 개선사항을 제안드립니다:

  1. 전역 location 객체 대신 React Router의 useLocation 훅 사용을 권장합니다.
  2. 히스토리가 없는 경우를 고려해야 합니다.

다음과 같이 개선할 수 있습니다:

-import { useNavigate } from 'react-router-dom';
+import { useNavigate, useLocation } from 'react-router-dom';
import { bottomBar } from '../../../shared/types/bottomBarType';

const BottomBar = () => {
  const navigate = useNavigate();
+  const location = useLocation();
  return (
    <div className="flex justify-between fixed bottom-0 w-full max-w-lg h-20 rounded-t-[10px] bg-white border-t border-t-gray4">
      {bottomBar.map((item, index) => (
        <div
          key={index}
          className="flex flex-col justify-center items-center w-24 h-20 cursor-pointer"
          onClick={() => {
            if (location.pathname === item.path) {
-              navigate(-1);
+              if (window.history.length > 1) {
+                navigate(-1);
+              }
            } else {
              navigate(item.path);
            }
          }}
🤖 Prompt for AI Agents
In src/widgets/main/ui/BottomBar.tsx around lines 12 to 18, replace the use of
the global location object with React Router's useLocation hook to get the
current path. Additionally, enhance the onClick handler to check if there is a
history entry to go back to before calling navigate(-1), preventing errors when
no history exists. This involves importing and using useLocation, storing the
current location, and conditionally navigating back or to the item's path based
on that and history availability.

Copy link
Copy Markdown
Contributor

@xaexunxang xaexunxang left a comment

Choose a reason for hiding this comment

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

새벽까지 고생하셨습니다요오

@Yejiin21 Yejiin21 merged commit dd233a7 into develop May 26, 2025
2 checks passed
@Yejiin21 Yejiin21 deleted the fix/#142/file-upload-host-image branch May 26, 2025 05:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

🛠️ BugFix 오류 해결 과정 기록

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[fix] 파일 업로드, 호스트 프로필 에러 수정

2 participants