# KBX Design System v1.0 ## OMS · WMS · ERP Component Contract & Design Tokens --- # 1. 설계 목표 KBX Design System의 목적은 예쁜 UI 라이브러리를 만드는 것이 아니다. 다음 문제를 구조적으로 제거하는 것이 목적이다. - 화면별 입력 높이가 다름 - 조회 버튼 위치가 다름 - Lookup 방법이 다름 - Enter 동작이 다름 - Excel 처리 방식이 다름 - Grid 설정이 화면마다 다름 - 오류 표현이 다름 - 저장 후 Feedback이 다름 - AI Action 방식이 다름 - 개발자마다 PrimeVue 사용 방식이 다름 최종 원칙: > Vertical Slice는 업무를 구현하고, KBX는 UX를 구현한다. --- # 2. 기술 계층 ```text Vue 3 / TypeScript │ ▼ KBX Screen Templates │ ▼ KBX Business Components │ ▼ KBX Primitives │ ├──────── PrimeVue │ └──────── AG Grid ``` Vertical Slice에서 PrimeVue 및 AG Grid를 직접 사용하는 것은 예외로 취급한다. --- # 3. 패키지 구조 권장: ```text src/ └─ shared/ └─ kbx/ ├─ tokens/ ├─ primitives/ ├─ business/ ├─ grid/ ├─ forms/ ├─ lookup/ ├─ excel/ ├─ feedback/ ├─ ai/ ├─ templates/ ├─ composables/ ├─ directives/ ├─ schemas/ └─ testing/ ``` 업무 모듈에서는: ```text modules/ ├─ oms/ ├─ wms/ └─ erp/ ``` 형태로 KBX를 소비한다. --- # 4. Component 계층 규칙 ## Level 1 — Primitive 업무 의미를 모른다. ```text KbxButton KbxInput KbxNumberInput KbxDatePicker KbxSelect KbxCheckbox KbxRadio KbxTextarea KbxDialog KbxDrawer KbxTabs KbxBadge KbxTooltip ``` --- ## Level 2 — Business Component 업무용 UX 규칙을 포함한다. ```text KbxLookup KbxSearchPanel KbxCommandBar KbxDataGrid KbxMoneyField KbxQuantityField KbxBarcodeField KbxStatus KbxAuditTrail KbxExcelImport KbxBulkActionBar KbxJobProgress KbxHelpPanel KbxAiPanel KbxProposalPanel ``` --- ## Level 3 — Screen Template 업무 화면 골격을 책임진다. ```text KbxListPage KbxMasterPage KbxTransactionPage KbxFastEntryPage KbxMasterDetailPage KbxQueuePage KbxReconcilePage KbxImportPage KbxWmsMobilePage ``` --- # 5. 핵심 금지 규칙 Vertical Slice에서 다음과 같은 구현을 반복하지 않는다. ```vue