Skip to content

[Release] develop -> main#195

Merged
Yunil-dev merged 1 commit intomainfrom
develop
May 6, 2026
Merged

[Release] develop -> main#195
Yunil-dev merged 1 commit intomainfrom
develop

Conversation

@Yunil-dev
Copy link
Copy Markdown
Contributor

@Yunil-dev Yunil-dev commented May 6, 2026

📝 관련 문서 레퍼런스

- [Issue] :
- [Slack] : 
- [Notion] : 

💻 주요 변경 사항은 무엇인가요?

-

📚 추가된 라이브러리

- [추가] : YES | NO

📱 결과 화면 (선택)


🙇 코드 리뷰 중점사항, 예상되는 문제점 (선택)

-

Summary by CodeRabbit

  • New Features
    • Added WOOJOOYON CLINIC with complete multilingual support (English, Japanese, Korean)
    • Introduced wellness programs: FACE, IMMUNE, and STRESS with detailed descriptions
    • New sections for hanok clinic, traditional medicine, and acupuncture services
    • Enhanced visual presentation for clinic information and program displays

@Yunil-dev Yunil-dev self-assigned this May 6, 2026
@vercel
Copy link
Copy Markdown

vercel Bot commented May 6, 2026

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

Project Deployment Actions Updated (UTC)
meditrip-web Ready Ready Preview, Comment May 6, 2026 7:56am

Request Review

@Yunil-dev Yunil-dev merged commit b3e99e8 into main May 6, 2026
4 of 5 checks passed
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented May 6, 2026

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 96fd03cb-7c2f-4511-81b2-37cad4c31ff1

📥 Commits

Reviewing files that changed from the base of the PR and between 3f3021e and d06878c.

⛔ Files ignored due to path filters (46)
  • public/images/company/woo-joo-yon/anti-gravity-room.jpg is excluded by !**/*.jpg
  • public/images/company/woo-joo-yon/consultation-scene.jpeg is excluded by !**/*.jpeg
  • public/images/company/woo-joo-yon/hanok-courtyard.jpg is excluded by !**/*.jpg
  • public/images/company/woo-joo-yon/hanok-stair-entry.jpg is excluded by !**/*.jpg
  • public/images/company/woo-joo-yon/herbal-window-view.jpg is excluded by !**/*.jpg
  • public/images/company/woo-joo-yon/lounge-city-view.jpg is excluded by !**/*.jpg
  • public/images/company/woo-joo-yon/meditation-room.jpeg is excluded by !**/*.jpeg
  • public/images/company/woo-joo-yon/pulse-diagnosis.jpeg is excluded by !**/*.jpeg
  • public/images/company/woo-joo-yon/reception-lounge.jpg is excluded by !**/*.jpg
  • public/images/company/woo-joo-yon/sound-bowl-detail.jpeg is excluded by !**/*.jpeg
  • public/images/company/woo-joo-yon/treatment-room-window.jpg is excluded by !**/*.jpg
  • public/images/company/woo-joo-yon/woo-joo-yon-raw-01.jpeg is excluded by !**/*.jpeg
  • public/images/company/woo-joo-yon/woo-joo-yon-raw-02.jpeg is excluded by !**/*.jpeg
  • public/images/company/woo-joo-yon/woo-joo-yon-raw-03.jpeg is excluded by !**/*.jpeg
  • public/images/company/woo-joo-yon/woo-joo-yon-raw-04.jpeg is excluded by !**/*.jpeg
  • public/images/company/woo-joo-yon/woo-joo-yon-raw-05.jpeg is excluded by !**/*.jpeg
  • public/images/company/woo-joo-yon/woo-joo-yon-raw-06.jpeg is excluded by !**/*.jpeg
  • public/images/company/woo-joo-yon/woo-joo-yon-raw-07.jpeg is excluded by !**/*.jpeg
  • public/images/company/woo-joo-yon/woo-joo-yon-raw-08.jpeg is excluded by !**/*.jpeg
  • public/images/company/woo-joo-yon/woo-joo-yon-raw-09.jpeg is excluded by !**/*.jpeg
  • public/images/company/woo-joo-yon/woo-joo-yon-raw-10.png is excluded by !**/*.png
  • public/images/company/woo-joo-yon/woo-joo-yon-raw-11.jpeg is excluded by !**/*.jpeg
  • public/images/company/woo-joo-yon/woo-joo-yon-raw-12.jpeg is excluded by !**/*.jpeg
  • public/images/company/woo-joo-yon/woo-joo-yon-raw-13.jpeg is excluded by !**/*.jpeg
  • public/images/company/woo-joo-yon/woo-joo-yon-raw-14.jpeg is excluded by !**/*.jpeg
  • public/images/company/woo-joo-yon/woo-joo-yon-raw-15.jpeg is excluded by !**/*.jpeg
  • public/images/company/woo-joo-yon/woo-joo-yon-raw-16.jpeg is excluded by !**/*.jpeg
  • public/images/company/woo-joo-yon/woo-joo-yon-raw-17.jpeg is excluded by !**/*.jpeg
  • public/images/company/woo-joo-yon/woo-joo-yon-raw-18.jpeg is excluded by !**/*.jpeg
  • public/images/company/woo-joo-yon/woo-joo-yon-raw-19.jpeg is excluded by !**/*.jpeg
  • public/images/company/woo-joo-yon/woo-joo-yon-raw-20.jpeg is excluded by !**/*.jpeg
  • public/images/company/woo-joo-yon/woo-joo-yon-raw-21.jpg is excluded by !**/*.jpg
  • public/images/company/woo-joo-yon/woo-joo-yon-raw-22.jpg is excluded by !**/*.jpg
  • public/images/company/woo-joo-yon/woo-joo-yon-raw-23.jpg is excluded by !**/*.jpg
  • public/images/company/woo-joo-yon/woo-joo-yon-raw-24.jpg is excluded by !**/*.jpg
  • public/images/company/woo-joo-yon/woo-joo-yon-raw-25.jpg is excluded by !**/*.jpg
  • public/images/company/woo-joo-yon/woo-joo-yon-raw-26.jpg is excluded by !**/*.jpg
  • public/images/company/woo-joo-yon/woo-joo-yon-raw-27.jpg is excluded by !**/*.jpg
  • public/images/company/woo-joo-yon/woo-joo-yon-raw-28.jpg is excluded by !**/*.jpg
  • public/images/company/woo-joo-yon/woo-joo-yon-raw-29.jpg is excluded by !**/*.jpg
  • public/images/company/woo-joo-yon/woo-joo-yon-raw-30.jpg is excluded by !**/*.jpg
  • public/images/company/woo-joo-yon/woo-joo-yon-raw-31.jpg is excluded by !**/*.jpg
  • public/images/company/woo-joo-yon/woo-joo-yon-raw-32.jpg is excluded by !**/*.jpg
  • public/images/company/woo-joo-yon/woo-joo-yon-raw-33.jpg is excluded by !**/*.jpg
  • public/images/company/woo-joo-yon/woo-joo-yon-raw-34.jpg is excluded by !**/*.jpg
  • public/images/company/woo-joo-yon/woo-joo-yon-raw-35.jpg is excluded by !**/*.jpg
📒 Files selected for processing (6)
  • messages/en/company-detail.json
  • messages/ja/company-detail.json
  • messages/ko/company-detail.json
  • src/components/company-detail/company-info/index.styles.ts
  • src/components/company-detail/company-info/index.tsx
  • src/utils/the-gate-spa-discount.ts

📝 Walkthrough

Walkthrough

This PR adds support for a new wellness clinic (WOOJOOYON) to the company detail system. Changes include localized content in three languages, CSS styles for story elements, extended component logic to conditionally render WooJooYon content, and utility functions to identify WooJooYon companies alongside existing TheGateSpa matching.

Changes

WooJooYon Clinic Integration

Layer / File(s) Summary
Company Identifier Utility
src/utils/the-gate-spa-discount.ts
New internal helper hasCompanyIdentifier centralizes company matching logic. isTheGateSpaCompany refactored to use this helper. New exported function isWooJooYonCompany added to identify WooJooYon clinic by name or code.
Localization Data
messages/en/company-detail.json, messages/ja/company-detail.json, messages/ko/company-detail.json
Added top-level wooJooYon key in all three language files with translated content: kicker, title, intro, programs (FACE, IMMUNE, STRESS), hanok clinic details, traditional medicine, acupuncture, features (consultation flow, atmosphere, recovery), and image alt texts.
Component Styling
src/components/company-detail/company-info/index.styles.ts
Added seven new CSS-in-JS style exports: storyTextStack, storyExternalLink, storyProgramList, storyProgramItem, storyProgramName, storyProgramImageGrid, storyProgramImage to support story layout and program display.
Component Logic & Rendering
src/components/company-detail/company-info/index.tsx
Added WooJooYon image paths, feature sets, and program image groupings. New WooJooYonStory component renders hero image, intro, programs with details, and feature sections. Extended CompanyInfo rendering to check isWooJooYon and conditionally render WooJooYonStory before TheGateSpaStory fallback. Added helper types and utilities (StoryProgramItem, isStoryProgramItem, getStoryProgramItems) for program data handling.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

Possibly related PRs

Poem

🐰 A rabbit hops through locales three,
Gathering words in harmony—
WooJooYon's tale now comes alive,
With wellness paths where healing thrives.
From styles to stories, all aligned,
A spa companion, thoughtfully designed! ✨

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch develop

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.

Copy link
Copy Markdown

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

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

Code Review

This pull request introduces a new "WooJooYon Clinic" story section to the company detail page, featuring localized content in English, Japanese, and Korean. The changes include new styled components and a refactoring of the existing "The Gate Spa" story into a reusable CompanyStory component. Additionally, utility functions were updated to support the identification of the new clinic. Feedback was provided regarding the risk of mapping program items to images by index, suggesting a key-based approach to ensure data integrity if the order in translation files changes.


<ol css={storyProgramList}>
{programItems.map((program, index) => {
const programImages = WOO_JOO_YON_PROGRAM_IMAGES[index] ?? [];
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

medium

programItems 배열과 WOO_JOO_YON_PROGRAM_IMAGES 배열을 index를 사용하여 매핑하는 방식은 잠재적인 위험을 가지고 있습니다. i18n JSON 파일에서 프로그램 순서가 변경되면 이미지와 프로그램 내용이 잘못 연결될 수 있습니다.

더 안정적인 방법은 각 프로그램에 고유한 key를 부여하고, 이 key를 기반으로 이미지를 매핑하는 것입니다.

예를 들어, messages/.../company-detail.json 파일의 itemskey를 추가합니다.

"items": [
  {
    "key": "face",
    "name": "1. FACE",
    ...
  },
  ...
]

그리고 WOO_JOO_YON_PROGRAM_IMAGES를 배열 대신 객체로 변경하여 key로 이미지를 찾도록 할 수 있습니다.

const WOO_JOO_YON_PROGRAM_IMAGES = {
  face: [
    { src: WOO_JOO_YON_IMAGES.consultation, altKey: 'consultation' },
    ...
  ],
  immune: [ ... ],
  stress: [ ... ],
};

// 사용시
const programImages = WOO_JOO_YON_PROGRAM_IMAGES[program.key] ?? [];

이렇게 변경하면 데이터 순서가 바뀌어도 항상 올바른 이미지를 보여줄 수 있어 유지보수성이 향상됩니다.

This was referenced May 7, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant