feat(WEB): 입력 컴포넌트 공통화 및 UI 개선

- 숫자/통화/전화번호/사업자번호 등 특수 입력 컴포넌트 추가
- MobileCard 컴포넌트 통합 (ListMobileCard 제거)
- IntegratedListTemplateV2 페이지네이션 버그 수정 (NaN 이슈)
- IntegratedDetailTemplate 타이틀 중복 수정
- 문서 시스템 컴포넌트 추가
- 헤더 벨 아이콘 포커스 스타일 개선

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
유병철
2026-01-21 20:56:17 +09:00
parent cfa72fe19b
commit 835c06ce94
190 changed files with 8575 additions and 2354 deletions

View File

@@ -7,6 +7,7 @@ import { Button } from '@/components/ui/button';
import { Input } from '@/components/ui/input';
import { Label } from '@/components/ui/label';
import { Badge } from '@/components/ui/badge';
import { AccountNumberInput } from '@/components/ui/account-number-input';
import { Card, CardContent, CardHeader, CardTitle } from '@/components/ui/card';
import {
Select,
@@ -282,10 +283,10 @@ export function AccountDetail({ account, mode: initialMode }: AccountDetailProps
<div className="space-y-2">
<Label htmlFor="accountNumber"></Label>
<Input
<AccountNumberInput
id="accountNumber"
value={formData.accountNumber}
onChange={(e) => handleChange('accountNumber', e.target.value)}
onChange={(value) => handleChange('accountNumber', value)}
placeholder="1234-1234-1234-1234"
disabled={isEditMode} // 수정 시 계좌번호는 변경 불가
/>

View File

@@ -31,9 +31,9 @@ export const accountConfig: DetailConfig<Account> = {
{
key: 'accountNumber',
label: '계좌번호',
type: 'text',
type: 'accountNumber',
required: true,
placeholder: '1234-1234-1234-1234',
placeholder: '0000-0000-0000-0000',
// 수정 모드에서 비활성화 (계좌번호 변경 불가)
disabled: (mode) => mode === 'edit',
},

View File

@@ -39,7 +39,7 @@ import {
type RowClickHandlers,
type ListParams,
} from '@/components/templates/UniversalListPage';
import { ListMobileCard, InfoField } from '@/components/organisms/ListMobileCard';
import { ListMobileCard, InfoField } from '@/components/organisms/MobileCard';
import type { Account } from './types';
import {
BANK_LABELS,