docs: SW Dotum / Web Noto Sans KR font rule in AI guides and README

- Common AI_GUIDE (synced copies in ui / sw / org-chart / org-chart-react ai/): mixed-use rule 1 adds the font split
  (SW = Dotum, Web = Noto Sans KR, OrgChart keeps its own) and forbids copying one package's font into another area.
- SW AI_USAGE / DESIGN_RULES / VIEWER / COMPOSITION_PATTERNS / Example J: Dotum is the default (no "approval pending"),
  SW screens use SWTheme and SW tokens, no Web font copy, synthesized-bold width note; example override = Malgun Gothic.
- README: SW default Dotum, Web default Noto Sans KR.
This commit is contained in:
shkim4 committed 2026-10-20 16:59:26 +09:00
1 parent d818d0308e
commit 942f72ae12
11 files changed
+18 -17

No files matched your search

+3 -3
View File
@@ -1,8 +1,8 @@
// Example J — SW theme tokens (both modes). The only official way to change SW tokens: `style` (or the program's own
// class) on the OUTERMOST SW scope. Here one <SWTheme> wraps the viewer screen, so the header, its dropdowns, More,
// and every panel read the same value. Portals leave the DOM tree: wrap their content in <SWTheme> with the same style.
// The font below is a placeholder for a program decision: the SW default stays Noto Sans KR (a Dotum default is
// pending design approval), so only set it when the program has decided to.
// The font below is a placeholder for a program decision: the SW default is Dotum (2026-10-20) and needs no token,
// so only set it when the program has decided on another font. Never copy the Web UI font (Noto Sans KR) here.
import { useState, type CSSProperties } from "react"
import { createPortal } from "react-dom"
import {
@@ -12,7 +12,7 @@ import {
/** One theme object for the screen and for every portal. Token names only (`--hm-sw-*`), never `hm-sw-*` classes. */
export const appSWTheme = {
"--hm-sw-header-font-family": '"Noto Sans KR", "Malgun Gothic", "Apple SD Gothic Neo", sans-serif',
"--hm-sw-header-font-family": '"Malgun Gothic", "Apple SD Gothic Neo", sans-serif',
} as CSSProperties
export function ExampleJTheme({ onEvent }: { onEvent?: (name: string) => void }) {