Skip to content

Conversation

@hyejj19
Copy link
Collaborator

@hyejj19 hyejj19 commented Jan 13, 2026

PR 제목 (Title)

  • 위스키 상세 페이지 리팩토링 및 재사용 컴포넌트 추출

변경 사항 (Changes)

  • 이 PR에서 수행된 주요 변경 사항을 나열해주세요.
  • 체크리스트
    • ImageUpload, TagSelector, DetailPageHeader 공통 컴포넌트 추출
    • WhiskyDetail 페이지 레이아웃을 grid에서 flex 기반으로 변경
    • 사이드바에 "위스키 추가" 메뉴 항목 추가
    • CLAUDE.md 프로젝트 코딩 가이드라인 문서 생성

변경 이유 (Reason for Changes)

  • 위스키 상세 페이지의 코드 복잡성을 줄이고 유지보수성 향상
  • 향후 리뷰 등록 기능에서 ImageUpload, TagSelector 재사용 예정
  • 레이아웃 구조를 직관적으로 개선하여 가독성 향상

테스트 방법 (Test Procedure)

  • 위스키 목록 페이지에서 위스키 상세 페이지로 이동 확인
  • 사이드바 "위스키 추가" 메뉴를 통해 신규 등록 페이지 접근 확인
  • 이미지 업로드 및 태그 선택 기능 동작 확인

참고 사항 (Additional Information)

  • API 연동 전 Mock 데이터로 동작
  • PR 템플릿 파일 추가됨 (.github/PULL_REQUEST_TEMPLATE.md)

Copilot AI review requested due to automatic review settings January 13, 2026 15:48
hyejj19 and others added 4 commits January 14, 2026 00:48
- WhiskyDetail: form with React Hook Form + Zod validation
- TastingTagList: badge-based tag management with inline editing
- Add mock data for whisky (regions, categories, sample data)
- Update env scripts for SOPS with new path (application.vite)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Replace inline editing with edit modal dialog
- Add delete confirmation modal before removing tag
- Add Pencil icon to indicate editable tags

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
… new whisky registration

- Add ImageUpload component with drag-and-drop support for presigned URL upload
- Add TagSelector component with chip-based UI for selecting/adding tasting tags
- Add whisky registration page (/whisky/new) using same component in new mode
- Add mock data for whisky ID 7094 (100 파이퍼스) and Scotland region
- Move tasting tag section to full-width card at bottom of form
- Add @radix-ui/react-popover dependency

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Extract ImageUpload, TagSelector, and DetailPageHeader into common components for reuse
- Simplify WhiskyDetail layout from grid to flex-based stacking
- Add "위스키 추가" menu item under whisky management navigation
- Improve code organization and maintainability

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
@hyejj19 hyejj19 force-pushed the whiskey-tasting-tag-ui branch from 4490e75 to f7126b0 Compare January 13, 2026 15:49
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR refactors the whisky management interface by extracting reusable UI components and implementing a complete whisky creation/editing form with mock data support.

Changes:

  • Extracted three common components (ImageUpload, TagSelector, DetailPageHeader) for reuse across the application
  • Implemented a full-featured whisky detail/creation page with form validation using React Hook Form and Zod
  • Added a new "위스키 추가" menu item and corresponding route for whisky creation
  • Migrated environment variable handling from shx/cp to sops encryption

Reviewed changes

Copilot reviewed 13 out of 14 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
src/routes/index.tsx Added new route for whisky creation at /whisky/new
src/pages/whisky/WhiskyDetail.tsx Implemented complete whisky form with validation, image upload, and tag selection
src/pages/tasting-tags/TastingTagList.tsx Built tasting tag management with search, edit, and delete functionality
src/data/mock/whisky.mock.ts Added mock data structures for whisky details, regions, and categories
src/config/menu.config.ts Added "위스키 추가" menu item to whisky management section
src/components/ui/popover.tsx Added Radix UI Popover component
src/components/common/TagSelector.tsx Created reusable tag selection component with search and custom tag input
src/components/common/ImageUpload.tsx Created drag-and-drop image upload component with preview
src/components/common/DetailPageHeader.tsx Created reusable detail page header with back button and actions
package.json Updated environment scripts to use sops encryption and added @radix-ui/react-popover dependency
git.environment-variables Updated submodule commit reference
CLAUDE.md Added project coding guidelines and documentation standards
Files not reviewed (1)
  • pnpm-lock.yaml: Language not supported

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@hyejj19 hyejj19 self-assigned this Jan 13, 2026
hyejj19 and others added 3 commits January 14, 2026 00:53
Initialize isLoading to false and set to true when async operation starts

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Use shadcn/ui AlertDialog for better UX consistency and styling control

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Document the new sops dependency requirement and environment setup process

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@hyejj19 hyejj19 merged commit 60b4976 into main Jan 13, 2026
2 checks passed
@hyejj19 hyejj19 deleted the whiskey-tasting-tag-ui branch January 13, 2026 15:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants