47 lines
1.4 KiB
Markdown
47 lines
1.4 KiB
Markdown
# KBX Figma Handoff Contract
|
|
|
|
이 디렉터리는 Figma 파일 자체가 아니라 **코드와 디자인이 공유해야 할 기계 판독 가능한 계약**입니다.
|
|
|
|
## Variables
|
|
|
|
`variables.contract.json`
|
|
|
|
- `KBX Primitive`
|
|
- `KBX Semantic`
|
|
- `KBX Component`
|
|
- Density modes: `compact`, `comfortable`, `touch`
|
|
|
|
Token 이름은 `packages/kbx-ui/src/tokens/source/kbx.tokens.json`이 Source of Truth입니다.
|
|
Figma에서 이름을 별도로 바꾸지 않습니다.
|
|
|
|
## Components
|
|
|
|
`components.contract.json`
|
|
|
|
명명 규칙:
|
|
|
|
```text
|
|
KBX/{Category}/{Component}
|
|
```
|
|
|
|
예:
|
|
|
|
```text
|
|
KBX/Primitive/KbxInput
|
|
KBX/Business/KbxLookup
|
|
KBX/Template/KbxTransactionPage
|
|
KBX/WMS/KbxWmsMobilePage
|
|
```
|
|
|
|
`designRequired=true`인 34개 Core Component는 Design System v1.0의 1차 필수 범위입니다.
|
|
State/Variant는 Component Catalog에 정의된 상태를 기준으로 합니다.
|
|
|
|
## 중요한 경계
|
|
|
|
- 이 JSON에 없는 상태를 Figma에서 임의로 추가하지 않는다.
|
|
- Figma node id를 코드의 영구 식별자로 사용하지 않는다.
|
|
- PrimeVue/AG Grid 내부 Variant를 그대로 KBX Component Variant로 노출하지 않는다.
|
|
- 디자인 변경이 Public UX Contract를 바꾸면 Component Version과 release impact를 같이 검토한다.
|
|
|
|
실제 Figma Library와 연결할 때는 이 계약을 기준으로 Variable/Component 이름을 맞춘 뒤, Node ID 등 도구 종속 정보만 별도 mapping으로 관리합니다.
|