diff --git a/README.md b/README.md index a858ee5..7981a2e 100644 --- a/README.md +++ b/README.md @@ -28,29 +28,8 @@ ### ๐จ ITAM ์์คํ ๋์์ธ ๊ฐ์ด๋ (Design Guide) -1. **๋์์ธ ์ฒ ํ (Design Philosophy)** - * **Minimalist & Border-based**: ๋ถํ์ํ ๋ฐ์ค(Card) ์ฌ์ฉ์ ์ต์ํํ๊ณ , ์ ๋ณด์ ๊ตฌ๋ถ์ ๊ฐ๊ฒฐํ ๋ผ์ธ(Border/Divider)์ ํ์ฉํ์ฌ ์๊ฐ์ ํผ๋ก๋๋ฅผ ๋ฎ์ถฅ๋๋ค. - * **Professional Achromatic**: ๋ฌด์ฑ์(Black, White, Grey)์ ๊ธฐ๋ณธ์ผ๋ก ํ์ฌ ์ ๋๋ ์ ๋ฌด ํ๊ฒฝ์ ์ ๊ณตํฉ๋๋ค. - * **Green Accent**: ๋ธ๋ฃจ ๋์ ์ง์ ๊ทธ๋ฆฐ(`#1E5149`)์ ํฌ์ธํธ ์ปฌ๋ฌ๋ก ์ฌ์ฉํ์ฌ ์ฐจ๋ถํ ์ ๋ฌธ์ฑ์ ๊ฐ์กฐํฉ๋๋ค. +๋์์ธ ์ผ๊ด์ฑ ๋ฐ ์๊ฐ์ ์์น์ ๊ดํ ์์ธ ๋ด์ฉ์ ์๋ ๋ฌธ์๋ฅผ ์ฐธ์กฐํ์ญ์์ค. -2. **ํ์ดํฌ๊ทธ๋ํผ (Typography)** - * **Font Family**: `Pretendard` (์ ์ญ ์ ์ฉ) - * **Letter Spacing**: `-0.02em` (์ฝ -2%) ์ ์ฉ. ์๊ฐ์ ์ข๊ฒ ์ค์ ํ์ฌ ๋ฐ๋ ์๊ณ ์ธ๋ จ๋ ๊ฐ๋ ์ฑ์ ํ๋ณดํฉ๋๋ค. - * **Weights**: 400(Regular), 500(Medium), 600(SemiBold), 700(Bold). +๐ **[๋์์ธ ๊ฐ์ด๋ ๋ฐ๋ก๊ฐ๊ธฐ (design_rule.md)](./design_rule.md)** -3. **์ปฌ๋ฌ ํ๋ ํธ (Color Palette)** - * **Point Color**: `#1E5149` (Deep Green) - ๊ฐ์กฐ, ํ์ฑํ ์ํ, ์ฃผ์ ์ก์ ๋ฒํผ. - * **Text**: Main(`#111827` - Near Black), Muted(`#6B7280` - Grey). - * **Border/Divider**: `#E5E7EB` (Light Grey) - ์ ๋ณด ๊ตฌ๋ถ์ ์ํ ์์ ์ค์ . - * **Background**: `#FFFFFF` (White) / `#F9FAFB` (Off White). - -4. **๋ ์ด์์ ๋ฐ ์ปดํฌ๋ํธ ๊ท์น (Layout Rules)** - * **Box-less Design**: ๊ผญ ํ์ํ ์ ๋ณด ๋ฌถ์(๋ฐ์ดํฐ ๊ทธ๋ฃนํ ๋ฑ)์ด ์๋๋ฉด ๋ฐ์ค ํํ์ ํ ๋๋ฆฌ๋ ๋ฐฐ๊ฒฝ ์ฌ์ฉ์ ์ง์ํฉ๋๋ค. - * **Line-based Division**: ์น์ ๊ฐ์ ๊ตฌ๋ถ์ 1px ๋๊ป์ ์์ ์ค์ (Border)์ ํตํด ๋ช ํํ ํฉ๋๋ค. - * **Table**: ๋ฐฐ๊ฒฝ์์ด๋ ํ๋ คํ ํจ๊ณผ ์์ด ํ(Row) ๊ฐ์ ์์ ๊ตฌ๋ถ์ ๋ง ์ฌ์ฉํ์ฌ ๋ฐ์ดํฐ ๋ณธ์ฐ์ ์ง์คํ๊ฒ ํฉ๋๋ค. - * **Input/Button**: ์ ๋ ฅ ํ๋์ ๋ฒํผ์ ์ต์ํ์ ๋ณด๋์ ํฌ์ธํธ ์ปฌ๋ฌ๋ง ์ฌ์ฉํ์ฌ ์ ๊ฐํ๊ฒ ํํํฉ๋๋ค. - * **Modal (๋ชจ๋ฌ ๊ณตํต ๊ท์น)**: - * **Header**: ์ง์ ๊ทธ๋ฆฐ(`#1E5149`) ๋ฐฐ๊ฒฝ์ ํ์ดํธ ํ ์คํธ๋ฅผ ์ฌ์ฉํ๋ฉฐ, ์ฐ์ธก ์๋จ์ ๋ช ํํ 'X' ๋ซ๊ธฐ ๋ฒํผ์ ๋ฐฐ์นํฉ๋๋ค. - * **Interaction**: ์ฌ์ฉ์์ ์ค์ ๋ ฅ(์ค์๋ก ๋ฐ๊นฅ์ ํด๋ฆญํ์ฌ ์ ๋ ฅ ๋ด์ฉ์ด ๋ ์๊ฐ๋ ํ์)์ ๋ฐฉ์งํ๊ธฐ ์ํด **๋ชจ๋ฌ ๋ฐ๊นฅ ์์ญ(Overlay) ํด๋ฆญ ์ ๋ชจ๋ฌ์ด ๋ซํ์ง ์๋๋ก** ์ค์ ํฉ๋๋ค. ๋ซ๊ธฐ๋ ์ค์ง 'ESC' ํค ๋๋ ๋ช ์์ ์ธ 'X' ๋ฐ '๋ซ๊ธฐ' ๋ฒํผ์ ํตํด์๋ง ๊ฐ๋ฅํฉ๋๋ค. - * **Layout**: `detail.png` ๊ธฐ์ค์ 2์ด ๊ทธ๋ฆฌ๋ ์์คํ ์ ๊ถ์ฅํ๋ฉฐ, ํ๋จ ์ฐ์ธก์ ์ก์ ๋ฒํผ(๋ซ๊ธฐ, ์ ์ฅ ๋ฑ)์ ๋ฐฐ์นํฉ๋๋ค. diff --git a/design_rule.md b/design_rule.md new file mode 100644 index 0000000..b1b8c4e --- /dev/null +++ b/design_rule.md @@ -0,0 +1,32 @@ +# ๐จ ITAM ์์คํ ๋์์ธ ๊ฐ์ด๋ (Design Guide) + +๋ณธ ๋ฌธ์๋ ITAM(IT Asset Management System)์ ์๊ฐ์ ์ผ๊ด์ฑ๊ณผ ์ฌ์ฉ์ ๊ฒฝํ์ ์ ์งํ๊ธฐ ์ํ ํต์ฌ ๋์์ธ ์์น์ ์ ์ํฉ๋๋ค. + +--- + +### 1. ๋์์ธ ์ฒ ํ (Design Philosophy) +* **Minimalist & Border-based**: ๋ถํ์ํ ๋ฐ์ค(Card) ์ฌ์ฉ์ ์ต์ํํ๊ณ , ์ ๋ณด์ ๊ตฌ๋ถ์ ๊ฐ๊ฒฐํ ๋ผ์ธ(Border/Divider)์ ํ์ฉํ์ฌ ์๊ฐ์ ํผ๋ก๋๋ฅผ ๋ฎ์ถฅ๋๋ค. +* **Professional Achromatic**: ๋ฌด์ฑ์(Black, White, Grey)์ ๊ธฐ๋ณธ์ผ๋ก ํ์ฌ ์ ๋๋ ์ ๋ฌด ํ๊ฒฝ์ ์ ๊ณตํฉ๋๋ค. +* **Green Accent**: ๋ธ๋ฃจ ๋์ ์ง์ ๊ทธ๋ฆฐ(`#1E5149`)์ ํฌ์ธํธ ์ปฌ๋ฌ๋ก ์ฌ์ฉํ์ฌ ์ฐจ๋ถํ ์ ๋ฌธ์ฑ์ ๊ฐ์กฐํฉ๋๋ค. + +### 2. ํ์ดํฌ๊ทธ๋ํผ (Typography) +* **Font Family**: `Pretendard` (์ ์ญ ์ ์ฉ) +* **Letter Spacing**: `-0.02em` (์ฝ -2%) ์ ์ฉ. ์๊ฐ์ ์ข๊ฒ ์ค์ ํ์ฌ ๋ฐ๋ ์๊ณ ์ธ๋ จ๋ ๊ฐ๋ ์ฑ์ ํ๋ณดํฉ๋๋ค. +* **Weights**: 400(Regular), 500(Medium), 600(SemiBold), 700(Bold), 800(ExtraBold). + +### 3. ์ปฌ๋ฌ ํ๋ ํธ (Color Palette) +* **Point Color**: `#1E5149` (Deep Green) - ๊ฐ์กฐ, ํ์ฑํ ์ํ, ์ฃผ์ ์ก์ ๋ฒํผ. +* **Text**: Main(`#111827` - Near Black), Muted(`#6B7280` - Grey). +* **Border/Divider**: `#E5E7EB` (Light Grey) - ์ ๋ณด ๊ตฌ๋ถ์ ์ํ ์์ ์ค์ . +* **Background**: `#FFFFFF` (White) / `#F9FAFB` (Off White). + +### 4. ๋ ์ด์์ ๋ฐ ์ปดํฌ๋ํธ ๊ท์น (Layout Rules) +* **Box-less Design**: ๊ผญ ํ์ํ ์ ๋ณด ๋ฌถ์(๋ฐ์ดํฐ ๊ทธ๋ฃนํ ๋ฑ)์ด ์๋๋ฉด ๋ฐ์ค ํํ์ ํ ๋๋ฆฌ๋ ๋ฐฐ๊ฒฝ ์ฌ์ฉ์ ์ง์ํฉ๋๋ค. +* **Line-based Division**: ์น์ ๊ฐ์ ๊ตฌ๋ถ์ 1px ๋๊ป์ ์์ ์ค์ (Border)์ ํตํด ๋ช ํํ ํฉ๋๋ค. +* **Table**: ๋ฐฐ๊ฒฝ์์ด๋ ํ๋ คํ ํจ๊ณผ ์์ด ํ(Row) ๊ฐ์ ์์ ๊ตฌ๋ถ์ ๋ง ์ฌ์ฉํ์ฌ ๋ฐ์ดํฐ ๋ณธ์ฐ์ ์ง์คํ๊ฒ ํฉ๋๋ค. +* **Input/Button**: ์ ๋ ฅ ํ๋์ ๋ฒํผ์ ์ต์ํ์ ๋ณด๋์ ํฌ์ธํธ ์ปฌ๋ฌ๋ง ์ฌ์ฉํ์ฌ ์ ๊ฐํ๊ฒ ํํํฉ๋๋ค. + * **Standard Height**: ์ ๋ ฅ์ฐฝ ๋ฐ ์ ํ์ฐฝ์ ์ ์ญ ํ์ค์ธ `38px`๋ฅผ ์ ์งํฉ๋๋ค. +* **Modal (๋ชจ๋ฌ ๊ณตํต ๊ท์น)**: + * **Header**: ์ง์ ๊ทธ๋ฆฐ(`#1E5149`) ๋ฐฐ๊ฒฝ์ ํ์ดํธ ํ ์คํธ๋ฅผ ์ฌ์ฉํ๋ฉฐ, ์ฐ์ธก ์๋จ์ ๋ช ํํ 'X' ๋ซ๊ธฐ ๋ฒํผ์ ๋ฐฐ์นํฉ๋๋ค. + * **Interaction**: ์ฌ์ฉ์์ ์ค์ ๋ ฅ(์ค์๋ก ๋ฐ๊นฅ์ ํด๋ฆญํ์ฌ ์ ๋ ฅ ๋ด์ฉ์ด ๋ ์๊ฐ๋ ํ์)์ ๋ฐฉ์งํ๊ธฐ ์ํด **๋ชจ๋ฌ ๋ฐ๊นฅ ์์ญ(Overlay) ํด๋ฆญ ์ ๋ชจ๋ฌ์ด ๋ซํ์ง ์๋๋ก** ์ค์ ํฉ๋๋ค. ๋ซ๊ธฐ๋ ์ค์ง 'ESC' ํค ๋๋ ๋ช ์์ ์ธ 'X' ๋ฐ '๋ซ๊ธฐ' ๋ฒํผ์ ํตํด์๋ง ๊ฐ๋ฅํฉ๋๋ค. + * **Layout**: 2์ด ๊ทธ๋ฆฌ๋ ์์คํ ์ ๊ถ์ฅํ๋ฉฐ, ํ๋จ ์ฐ์ธก์ ์ก์ ๋ฒํผ(๋ซ๊ธฐ, ์ ์ฅ ๋ฑ)์ ๋ฐฐ์นํฉ๋๋ค. diff --git a/image 92.png b/img/image_92.png similarity index 100% rename from image 92.png rename to img/image_92.png diff --git a/src/components/Modal/HWModal.ts b/src/components/Modal/HWModal.ts index ec3ea31..7773548 100644 --- a/src/components/Modal/HWModal.ts +++ b/src/components/Modal/HWModal.ts @@ -22,39 +22,6 @@ class HwAssetModal extends BaseModal { protected renderFrameHTML(): string { return ` -
+