배경
화면별 분기문이 늘어나면서 번역 키와 색상 토큰이 서로 다른 방식으로 관리되고 있었습니다.
구조화 전략
언어는 `locale -> dictionary`, 테마는 `variant -> palette` 매핑으로 분리해 조건문 확산을 방지했습니다.
운영 관점의 이점
UI 컴포넌트는 의미 토큰만 읽게 하여 테마/언어 확장이 로직 변경으로 이어지지 않도록 했습니다.
- 신규 언어 추가 시 번역 사전만 확장
- 신규 테마 추가 시 palette 객체만 추가
- 화면 컴포넌트는 semantic token 소비에 집중
다음 단계
Home/Settings/공통 UI에 남아 있는 inline color를 semantic palette로 전수 치환해 확장 비용을 더 낮출 예정입니다.