refactor: 전체 프론트엔드 하드코딩 색상 → CSS 변수 일괄 치환

447+ 파일, 4500+ 줄 변경:
- gray-* → border/bg-muted/text-foreground/text-muted-foreground
- blue-* → primary/ring
- red-* → destructive
- green-* → emerald (일관성)
- indigo-* → primary
- yellow/orange → amber (통일)
- dark mode 변형도 시맨틱 토큰으로 변환

Made-with: Cursor
This commit is contained in:
DDD1542
2026-03-09 14:31:59 +09:00
parent d967cf0a0d
commit 4f10b5e42d
447 changed files with 4520 additions and 4520 deletions

View File

@@ -277,13 +277,13 @@ export const ActionFieldMappings: React.FC<ActionFieldMappingsProps> = ({
updateFieldMapping(mappingIndex, "sourceTable", "");
updateFieldMapping(mappingIndex, "sourceField", "");
}}
className="ml-1 flex h-4 w-4 items-center justify-center rounded-full text-gray-400 hover:bg-gray-200 hover:text-muted-foreground"
className="ml-1 flex h-4 w-4 items-center justify-center rounded-full text-muted-foreground/70 hover:bg-muted/80 hover:text-muted-foreground"
title="소스 테이블 지우기"
>
×
</button>
)}
<span className="text-gray-400">.</span>
<span className="text-muted-foreground/70">.</span>
<Select
value={mapping.sourceField}
onValueChange={(value) => {
@@ -312,10 +312,10 @@ export const ActionFieldMappings: React.FC<ActionFieldMappingsProps> = ({
</Select>
</div>
<div className="text-gray-400"></div>
<div className="text-muted-foreground/70"></div>
{/* 타겟 */}
<div className="flex items-center gap-1 rounded bg-green-50 px-2 py-1">
<div className="flex items-center gap-1 rounded bg-emerald-50 px-2 py-1">
<Select
value={mapping.targetTable || ""}
onValueChange={(value) => {
@@ -336,7 +336,7 @@ export const ActionFieldMappings: React.FC<ActionFieldMappingsProps> = ({
))}
</SelectContent>
</Select>
<span className="text-gray-400">.</span>
<span className="text-muted-foreground/70">.</span>
<Select
value={mapping.targetField}
onValueChange={(value) => updateFieldMapping(mappingIndex, "targetField", value)}
@@ -380,7 +380,7 @@ export const ActionFieldMappings: React.FC<ActionFieldMappingsProps> = ({
size="sm"
variant="ghost"
onClick={() => removeFieldMapping(mappingIndex)}
className="h-6 w-6 p-0 text-red-500 hover:text-red-700"
className="h-6 w-6 p-0 text-destructive hover:text-destructive"
>
<Trash2 className="h-3 w-3" />
</Button>
@@ -390,9 +390,9 @@ export const ActionFieldMappings: React.FC<ActionFieldMappingsProps> = ({
{/* 필드 매핑이 없을 때 안내 메시지 */}
{action.fieldMappings.length === 0 && (
<div className="rounded border border-destructive/20 bg-destructive/10 p-3 text-xs text-red-700">
<div className="rounded border border-destructive/20 bg-destructive/10 p-3 text-xs text-destructive">
<div className="flex items-start gap-2">
<span className="text-red-500"></span>
<span className="text-destructive"></span>
<div>
<div className="font-medium"> </div>
<div className="mt-1">