"use client"; import { type LucideIcon, Info, Link2, Wallet } from "lucide-react"; import { useShallow } from "zustand/react/shallow"; import { KisAuthForm } from "@/features/settings/components/KisAuthForm"; import { KisProfileForm } from "@/features/settings/components/KisProfileForm"; import { useKisRuntimeStore } from "@/features/settings/store/use-kis-runtime-store"; import { cn } from "@/lib/utils"; /** * @description 설정 페이지 컨테이너입니다. KIS 연결 상태와 인증 폼을 카드 UI로 제공합니다. * @see app/(main)/settings/page.tsx 로그인 확인 후 이 컴포넌트를 렌더링합니다. * @see features/settings/components/KisAuthForm.tsx 실제 인증 입력/검증/해제를 담당합니다. */ export function SettingsContainer() { // 상태 정의: 연결 상태 표시용 전역 인증 상태를 구독합니다. const { verifiedCredentials, isKisVerified, isKisProfileVerified, verifiedAccountNo, } = useKisRuntimeStore( useShallow((state) => ({ verifiedCredentials: state.verifiedCredentials, isKisVerified: state.isKisVerified, isKisProfileVerified: state.isKisProfileVerified, verifiedAccountNo: state.verifiedAccountNo, })), ); return (
{/* ========== SETTINGS OVERVIEW ========== */}

한국투자증권 연결 센터

앱키 연결과 계좌 확인을 한 화면에서 처리합니다. 아래 순서대로 진행하면 바로 대시보드/트레이드 화면에 반영됩니다.

진행 순서: 1) 앱키 연결 확인 {"->"} 2) 계좌 인증 {"->"} 3) 거래 화면 사용

{/* ========== FORM GRID ========== */}
); } /** * @description 계좌번호 마스킹 문자열을 반환합니다. * @param value 계좌번호(8-2) * @returns 마스킹 계좌번호 * @see features/settings/components/SettingsContainer.tsx 프로필 상태 라벨 표시 */ function maskAccountNo(value: string | null) { if (!value) return "-"; const digits = value.replace(/\D/g, ""); if (digits.length !== 10) return "********"; return "********-**"; } type StatusTileTone = "success" | "idle" | "notice"; /** * @description 설정 페이지 상단 요약 상태 타일입니다. * @see features/settings/components/SettingsContainer.tsx 상태 요약 렌더링 */ function StatusTile({ icon: Icon, title, value, tone, }: { icon: LucideIcon; title: string; value: string; tone: StatusTileTone; }) { return (

{title}

{value}

); }