-
Notifications
You must be signed in to change notification settings - Fork 0
[Docs] 서비스 이용약관, 개인정보 처리방침 페이지 추가 #109
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Summary of ChangesHello @sukangpunch, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! 이 풀 리퀘스트는 서비스의 개인정보 처리방침과 이용약관을 담은 두 개의 새로운 문서 페이지를 추가합니다. 이 페이지들은 사용자에게 서비스의 법적 및 운영 관련 정보를 투명하게 제공하고 관련 규정을 준수하기 위해 필수적입니다. Highlights
🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console. Changelog
Activity
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here. You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension. Footnotes
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code Review
이 PR은 서비스 이용약관과 개인정보 처리방침 페이지를 추가하는 문서 변경사항을 담고 있습니다. 전반적으로 FSD 아키텍처에 따라 페이지가 잘 구성되었습니다. 다만, privacy.tsx 파일에서 JSX 문법 오류가 발견되어 수정이 필요합니다. 또한, 두 페이지에서 중복되는 레이아웃 코드를 별도의 컴포넌트로 추출하여 재사용성을 높이는 것을 제안합니다. 자세한 내용은 각 파일의 리뷰 코멘트를 참고해주세요.
| <p className="mb-4"> | ||
| 권리 행사는 서비스 내 설정 메뉴 또는 고객센터( | ||
|
|
||
| href="mailto:[email protected]" | ||
| className="text-blue-600 hover:underline" | ||
| > | ||
| [email protected] | ||
| </a> | ||
| )를 통해 가능합니다. | ||
| </p> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
JSX 문법 오류가 있습니다. <a> 태그가 열리지 않아 렌더링 시 에러가 발생합니다. href 속성 앞에 <a를 추가해야 합니다. 이 오류는 파일 내 여러 곳에서 반복되고 있으니 모두 수정이 필요합니다.
- 213-222행
- 228-239행
- 240-251행
- 252-263행
- 264-275행
아래는 171-180행에 대한 수정 제안입니다. 다른 부분도 유사하게 수정해주세요.
<p className="mb-4">
권리 행사는 서비스 내 설정 메뉴 또는 고객센터(<a
href="mailto:[email protected]"
className="text-blue-600 hover:underline"
>
[email protected]
</a>)를 통해 가능합니다.
</p>
| <header className="flex items-center px-8 py-4 justify-start h-[var(--header-height)] w-full bg-white z-[110]"> | ||
| <Link to="/" className="mr-3"> | ||
| <Logo className="h-6" /> | ||
| </Link> | ||
| </header> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
terms.tsx와 privacy.tsx 페이지에서 헤더와 메인 레이아웃 구조가 중복되고 있습니다. 코드 재사용성을 높이고 유지보수를 용이하게 하기 위해, 이 구조를 공통 레이아웃 컴포넌트로 추출하는 것을 권장합니다.
예를 들어, LegalPageLayout.tsx와 같은 컴포넌트를 widgets 레이어에 생성하여 사용할 수 있습니다.
스타일 가이드 참조:
- 규칙: 페이지 간 재사용 가능한 화면 단위는 Widget으로 구성할 수 있습니다. (리포지토리 스타일 가이드 185행)
이렇게 하면 TermsPage와 PrivacyPage 컴포넌트가 더 간결해지고, 향후 유사한 정적 페이지 추가 시 재사용할 수 있습니다.
// src/widgets/LegalPageLayout.tsx (예시)
import Footer from "@/widgets/Footer/Footer";
import Logo from "@/shared/assets/icons/logo-gr.svg?react";
import { Link } from "@tanstack/react-router";
function LegalPageHeader() {
return (
<header className="flex items-center px-8 py-4 justify-start h-[var(--header-height)] w-full bg-white z-[110]">
<Link to="/" className="mr-3">
<Logo className="h-6" />
</Link>
</header>
);
}
export function LegalPageLayout({ children }: { children: React.ReactNode }) {
return (
<>
<LegalPageHeader />
<main className="flex-grow flex flex-col items-center w-full">
<div className="w-full max-w-[800px] px-8 py-12">
{children}
</div>
<Footer />
</main>
</>
);
}// src/pages/terms.tsx (수정 후 예시)
import { LegalPageLayout } from "@/widgets/LegalPageLayout"; // 경로에 맞게 수정
import { createFileRoute } from "@tanstack/react-router";
export const Route = createFileRoute("/terms")({
component: TermsPage,
});
function TermsPage() {
return (
<LegalPageLayout>
<h1 className="text-2xl font-bold mb-6">서비스 이용약관</h1>
{/* ... 약관 내용 ... */}
</LegalPageLayout>
);
}References
- 페이지 간 재사용 가능한 화면 단위는 Widget으로 구성할 수 있습니다. (link)
🔍 작업 유형
📄 작업 내용
🔗 관련 이슈
✅ 체크리스트
🖼️ 🖥 구현 결과 (선택사항)
✔ 리뷰 요구사항
📋 참고 문서