@nurihaus/web-design-system 3.7.0 → 3.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +15 -4
- package/dist/ai/components.md +658 -12
- package/dist/ai/motion.md +431 -0
- package/dist/ai/tokens.md +93 -4
- package/dist/avatar.js +5 -3
- package/dist/bottom-bar.js +261 -0
- package/dist/bottom-nav.js +10 -57
- package/dist/breadcrumb.js +7 -5
- package/dist/callout.js +5 -3
- package/dist/card.js +278 -0
- package/dist/check-box.js +7 -5
- package/dist/chip-group.js +6 -4
- package/dist/chunk-1176.js +24 -0
- package/dist/chunk-3274.js +71 -0
- package/dist/chunk-345.js +72 -0
- package/dist/chunk-3547.js +56 -0
- package/dist/chunk-6459.js +107 -0
- package/dist/{chunk-6364.js → chunk-7335.js} +2 -67
- package/dist/chunk-7653.js +4 -0
- package/dist/chunk-910.js +26 -13
- package/dist/chunk-9497.js +66 -0
- package/dist/collapsible-menu.js +6 -4
- package/dist/components/badge/badge-props.d.ts +4 -4
- package/dist/components/badge/badge.stories.d.ts +1 -1
- package/dist/components/bottom-bar/base-bottom-bar.d.ts +4 -0
- package/dist/components/bottom-bar/bottom-bar-props.d.ts +1 -0
- package/dist/components/bottom-bar/bottom-bar-type.d.ts +3 -0
- package/dist/components/bottom-bar/bottom-bar.d.ts +6 -0
- package/dist/components/bottom-bar/bottom-bar.stories.d.ts +282 -0
- package/dist/components/button/button-type.d.ts +3 -1
- package/dist/components/button/button.stories.d.ts +1 -0
- package/dist/components/card/base-card.d.ts +3 -0
- package/dist/components/card/card-props.d.ts +9 -0
- package/dist/components/card/card-type.d.ts +8 -0
- package/dist/components/card/card.d.ts +5 -0
- package/dist/components/card/card.stories.d.ts +24 -0
- package/dist/components/description-list/base-description-list.d.ts +4 -0
- package/dist/components/description-list/description-list-props.d.ts +1 -0
- package/dist/components/description-list/description-list-type.d.ts +13 -0
- package/dist/components/description-list/description-list.d.ts +5 -0
- package/dist/components/description-list/description-list.stories.d.ts +20 -0
- package/dist/components/empty-state/base-empty-state.d.ts +4 -0
- package/dist/components/empty-state/empty-state-props.d.ts +10 -0
- package/dist/components/empty-state/empty-state-type.d.ts +14 -0
- package/dist/components/empty-state/empty-state.d.ts +5 -0
- package/dist/components/empty-state/empty-state.stories.d.ts +300 -0
- package/dist/components/icon/icon-paths.d.ts +4 -0
- package/dist/components/icon/icon.stories.d.ts +1 -1
- package/dist/components/icon-button/base-icon-button.d.ts +3 -0
- package/dist/components/icon-button/icon-button-props.d.ts +12 -0
- package/dist/components/icon-button/icon-button-type.d.ts +16 -0
- package/dist/components/icon-button/icon-button.d.ts +5 -0
- package/dist/components/icon-button/icon-button.stories.d.ts +31 -0
- package/dist/components/list/base-list.d.ts +7 -0
- package/dist/components/list/list-group.d.ts +5 -0
- package/dist/components/list/list-group.stories.d.ts +14 -0
- package/dist/components/list/list-props.d.ts +2 -0
- package/dist/components/list/list-row.d.ts +5 -0
- package/dist/components/list/list-row.stories.d.ts +304 -0
- package/dist/components/list/list-type.d.ts +25 -0
- package/dist/components/media/base-media.d.ts +16 -0
- package/dist/components/media/media-props.d.ts +5 -0
- package/dist/components/media/media-thumbnail.d.ts +4 -0
- package/dist/components/media/media-thumbnail.stories.d.ts +34 -0
- package/dist/components/media/media-type.d.ts +43 -0
- package/dist/components/media/media-viewer.d.ts +4 -0
- package/dist/components/media/media-viewer.stories.d.ts +24 -0
- package/dist/components/message/base-message.d.ts +11 -0
- package/dist/components/message/message-event.d.ts +6 -0
- package/dist/components/message/message-props.d.ts +17 -0
- package/dist/components/message/message-thread.d.ts +6 -0
- package/dist/components/message/message-type.d.ts +21 -0
- package/dist/components/message/message.d.ts +5 -0
- package/dist/components/message/message.stories.d.ts +313 -0
- package/dist/components/message-composer/base-message-composer.d.ts +11 -0
- package/dist/components/message-composer/message-composer-props.d.ts +1 -0
- package/dist/components/message-composer/message-composer-type.d.ts +31 -0
- package/dist/components/message-composer/message-composer.d.ts +5 -0
- package/dist/components/message-composer/message-composer.stories.d.ts +46 -0
- package/dist/components/motion/motion-provider.d.ts +5 -0
- package/dist/components/motion/motion-type.d.ts +6 -0
- package/dist/components/motion/motion.d.ts +2 -0
- package/dist/components/motion/motion.stories.d.ts +23 -0
- package/dist/components/notice/base-notice.d.ts +4 -0
- package/dist/components/notice/notice-props.d.ts +16 -0
- package/dist/components/notice/notice-type.d.ts +21 -0
- package/dist/components/notice/notice.d.ts +5 -0
- package/dist/components/notice/notice.stories.d.ts +304 -0
- package/dist/components/radio/base-radio.d.ts +2 -1
- package/dist/components/radio/radio-props.d.ts +9 -1
- package/dist/components/radio/radio-type.d.ts +9 -0
- package/dist/components/radio/radio.stories.d.ts +10 -0
- package/dist/components/tag/base-tag.d.ts +8 -0
- package/dist/components/tag/tag-props.d.ts +1 -0
- package/dist/components/tag/tag-type.d.ts +20 -0
- package/dist/components/tag/tag.d.ts +4 -0
- package/dist/components/tag/tag.stories.d.ts +14 -0
- package/dist/components.css +1330 -171
- package/dist/cta-button.js +38 -21
- package/dist/data-table.js +5 -3
- package/dist/description-list.js +274 -0
- package/dist/drawer.js +7 -5
- package/dist/drop-down.js +8 -6
- package/dist/empty-state.js +300 -0
- package/dist/helpers/utils/fillLinkChild.d.ts +6 -0
- package/dist/icon-button.js +338 -0
- package/dist/icon-text-badge.js +11 -9
- package/dist/icon-text-option-badge.js +8 -6
- package/dist/icon.js +7 -4
- package/dist/index.d.ts +30 -2
- package/dist/index.js +2482 -223
- package/dist/list-group.js +253 -0
- package/dist/list-row.js +308 -0
- package/dist/loading.js +6 -4
- package/dist/media-thumbnail.js +412 -0
- package/dist/media-viewer.js +274 -0
- package/dist/message-composer.js +399 -0
- package/dist/message-event.js +216 -0
- package/dist/message-thread.js +216 -0
- package/dist/message.js +271 -0
- package/dist/modal-with-double-button.js +15 -11
- package/dist/modal.js +9 -7
- package/dist/motion.js +52 -0
- package/dist/notice.js +346 -0
- package/dist/option-badge.js +11 -9
- package/dist/pagination.js +8 -6
- package/dist/radio.js +114 -30
- package/dist/skeleton.js +4 -2
- package/dist/step-progress.js +4 -2
- package/dist/styles.css +1215 -130
- package/dist/switch.js +6 -4
- package/dist/tabs.js +5 -3
- package/dist/tag.js +311 -0
- package/dist/text-area.js +8 -6
- package/dist/text-field.js +8 -6
- package/dist/text.js +5 -3
- package/dist/toast.js +15 -11
- package/dist/tokens/generated/index.d.ts +1 -0
- package/dist/tokens/generated/motion.d.ts +153 -0
- package/dist/tokens.css +122 -2
- package/dist/tokens.js +156 -1
- package/dist/tooltip.js +6 -4
- package/package.json +67 -1
package/README.md
CHANGED
|
@@ -2,10 +2,18 @@
|
|
|
2
2
|
|
|
3
3
|
## 설치와 사용 (4.x)
|
|
4
4
|
|
|
5
|
-
`radix-ui`
|
|
5
|
+
`radix-ui` 와 `motion` 은 peerDependency 다. 함께 설치한다.
|
|
6
6
|
|
|
7
7
|
```bash
|
|
8
|
-
npm i @nurihaus/web-design-system radix-ui
|
|
8
|
+
npm i @nurihaus/web-design-system radix-ui motion
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
`motion` 은 React 18 이상에서만 동작한다. 앱 루트에 `MotionProvider` 를 한 번 둔다. 스프링으로 움직이는 컴포넌트가 이 아래에서 동작한다.
|
|
12
|
+
|
|
13
|
+
```tsx
|
|
14
|
+
import { MotionProvider } from '@nurihaus/web-design-system/motion';
|
|
15
|
+
|
|
16
|
+
<MotionProvider>{children}</MotionProvider>;
|
|
9
17
|
```
|
|
10
18
|
|
|
11
19
|
CSS 는 JS 에 들어 있지 않다. 앱에서 한 번 가져온다.
|
|
@@ -116,6 +124,8 @@ npm run tokens # figma.json → tokens/generated/{tokens.css, *.ts}
|
|
|
116
124
|
|
|
117
125
|
`tokens/generated/` 를 손으로 고치지 않는다. 배경은 `docs/decisions/0001-tokens-in-ds-and-separate-css.md`.
|
|
118
126
|
|
|
127
|
+
모션 토큰의 원본은 `tokens/motion.json`(값과 쓰임새)과 `tokens/motion-apply.json`(컴포넌트별 적용 매핑표)이다. 같은 `npm run tokens` 가 `tokens/generated/motion.{css,ts,md}` 를 만든다. 절차는 `docs/motion.md`, 배경은 `docs/decisions/0008-motion-system.md`.
|
|
128
|
+
|
|
119
129
|
새 서비스가 다른 의미 토큰 값(버튼 색 등)을 써야 하면 `tokens/figma.json` 에 `semantic_{이름}` 세트를 추가하고 `npm run tokens` 를 돌린다. `<html data-ds-theme="{이름}">` 로 고르는 테마가 생긴다. 자세한 규칙은 `docs/tokens.md`.
|
|
120
130
|
|
|
121
131
|
## 사용 로그
|
|
@@ -138,7 +148,7 @@ export default function App({ children }) {
|
|
|
138
148
|
<CTAButton text='리포트 받기' track='report/download' trackProps={{ format: 'csv' }} />
|
|
139
149
|
```
|
|
140
150
|
|
|
141
|
-
`track` 을 받는 컴포넌트는 CTAButton · DataTable(`click`), Modal · Drawer(`open` · `close`), Tabs · DropDown · ChipGroup · Radio · Checkbox · Switch · Pagination · TextField · TextArea(`change`), BottomNav · Breadcrumb · CollapsibleMenu(`navigate`), Toast · Tooltip(`show`) 다. `value` 에는 탭 id · 칩 id · 옵션 value 처럼 개발자가 정한 id 만 들어간다. TextField · TextArea 는 포커스가 빠질 때 값이 바뀌었으면 값 없이 `change` 를 한 번 보낸다. `LogProvider` 가 없거나 `track` 을 주지 않으면 아무것도 보내지 않는다.
|
|
151
|
+
`track` 을 받는 컴포넌트는 CTAButton · IconButton · DataTable · Tag · MessageComposer(`click`), Modal · Drawer · MediaViewer(`open` · `close`), MediaThumbnail(`open`), Tabs · DropDown · ChipGroup · Radio · Checkbox · Switch · Pagination · TextField · TextArea(`change`), BottomNav · Breadcrumb · CollapsibleMenu(`navigate`), ListRow(링크 `navigate` · 버튼 `click`), Toast · Tooltip(`show`) 다. `value` 에는 탭 id · 칩 id · 옵션 value 처럼 개발자가 정한 id 만 들어간다. TextField · TextArea 는 포커스가 빠질 때 값이 바뀌었으면 값 없이 `change` 를 한 번 보낸다. `LogProvider` 가 없거나 `track` 을 주지 않으면 아무것도 보내지 않는다.
|
|
142
152
|
|
|
143
153
|
컴포넌트 밖의 로그는 `useLog` 로 남긴다.
|
|
144
154
|
|
|
@@ -161,7 +171,8 @@ const ReportPage = () => {
|
|
|
161
171
|
| 파일 | 내용 | 원본 |
|
|
162
172
|
| --- | --- | --- |
|
|
163
173
|
| `dist/ai/components.md` | 공통 규칙, 공개 컴포넌트마다 import · 사용법 · 예시 · props 표, 아직 없는 컴포넌트 목록 | 공통 규칙은 `components/common.md`, props 표는 타입, 사용법은 각 폴더 `usage.md`, 없는 목록은 `components/not-yet.md` |
|
|
164
|
-
| `dist/ai/tokens.md` | CSS 변수 전체와 테마별 의미 토큰,
|
|
174
|
+
| `dist/ai/tokens.md` | CSS 변수 전체와 테마별 의미 토큰, 크기·레이어 토큰, 모션 변수 | `tokens/figma.json`, `styles/token/size.css`, `tokens/motion.json` |
|
|
175
|
+
| `dist/ai/motion.md` | 모션 토큰마다 뜻·붙는 곳·prop·reduced-motion 규칙, 컴포넌트별 적용 매핑표 | `tokens/motion.json`, `tokens/motion-apply.json` |
|
|
165
176
|
|
|
166
177
|
쓰는 쪽에서는 `node_modules/@nurihaus/web-design-system/dist/ai/` 경로로 읽는다. `usage.md` 섹션이 없거나 예시가 타입 검사에 실패하면 `npm run build` 가 멈춘다.
|
|
167
178
|
|