@ceed/ads 1.13.4 → 1.15.0-next.2

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.
Files changed (70) hide show
  1. package/dist/Overview.md +11 -0
  2. package/dist/components/Menu/Menu.d.ts +2 -5
  3. package/dist/components/Stepper/Stepper.d.ts +6 -0
  4. package/dist/components/data-display/Avatar.md +428 -0
  5. package/dist/components/data-display/Badge.md +315 -0
  6. package/dist/components/data-display/Chip.md +301 -0
  7. package/dist/components/data-display/DataTable.md +452 -0
  8. package/dist/components/data-display/InfoSign.md +160 -0
  9. package/dist/components/data-display/Markdown.md +17 -0
  10. package/dist/components/data-display/Table.md +1330 -0
  11. package/dist/components/data-display/Tooltip.md +444 -0
  12. package/dist/components/data-display/Typography.md +271 -0
  13. package/dist/components/data-display/llms.txt +17 -0
  14. package/dist/components/feedback/Alert.md +663 -0
  15. package/dist/components/feedback/Dialog.md +33 -0
  16. package/dist/components/feedback/Modal.md +39 -0
  17. package/dist/components/feedback/llms.txt +11 -0
  18. package/dist/components/inputs/Autocomplete.md +103 -0
  19. package/dist/components/inputs/Button.md +334 -0
  20. package/dist/components/inputs/ButtonGroup.md +382 -0
  21. package/dist/components/inputs/Calendar.md +19 -0
  22. package/dist/components/inputs/Checkbox.md +649 -0
  23. package/dist/components/inputs/CurrencyInput.md +91 -0
  24. package/dist/components/inputs/DatePicker.md +67 -0
  25. package/dist/components/inputs/DateRangePicker.md +55 -0
  26. package/dist/components/inputs/FilterMenu.md +210 -0
  27. package/dist/components/inputs/IconButton.md +361 -0
  28. package/dist/components/inputs/Input.md +283 -0
  29. package/dist/components/inputs/MonthPicker.md +72 -0
  30. package/dist/components/inputs/MonthRangePicker.md +70 -0
  31. package/dist/components/inputs/PercentageInput.md +116 -0
  32. package/dist/components/inputs/RadioButton.md +350 -0
  33. package/dist/components/inputs/RadioTileGroup.md +418 -0
  34. package/dist/components/inputs/Select.md +56 -0
  35. package/dist/components/inputs/Switch.md +577 -0
  36. package/dist/components/inputs/Textarea.md +64 -0
  37. package/dist/components/inputs/Uploader/Uploader.md +238 -0
  38. package/dist/components/inputs/Uploader/llms.txt +9 -0
  39. package/dist/components/inputs/llms.txt +31 -0
  40. package/dist/components/layout/Box.md +997 -0
  41. package/dist/components/layout/Container.md +23 -0
  42. package/dist/components/layout/Grid.md +728 -0
  43. package/dist/components/layout/Stack.md +937 -0
  44. package/dist/components/layout/llms.txt +12 -0
  45. package/dist/components/llms.txt +14 -0
  46. package/dist/components/navigation/Breadcrumbs.md +51 -0
  47. package/dist/components/navigation/Dropdown.md +768 -0
  48. package/dist/components/navigation/IconMenuButton.md +35 -0
  49. package/dist/components/navigation/InsetDrawer.md +133 -0
  50. package/dist/components/navigation/Link.md +24 -0
  51. package/dist/components/navigation/Menu.md +957 -0
  52. package/dist/components/navigation/MenuButton.md +39 -0
  53. package/dist/components/navigation/NavigationGroup.md +17 -0
  54. package/dist/components/navigation/NavigationItem.md +17 -0
  55. package/dist/components/navigation/Navigator.md +17 -0
  56. package/dist/components/navigation/Pagination.md +17 -0
  57. package/dist/components/navigation/ProfileMenu.md +34 -0
  58. package/dist/components/navigation/Stepper.md +108 -0
  59. package/dist/components/navigation/Tabs.md +34 -0
  60. package/dist/components/navigation/llms.txt +22 -0
  61. package/dist/components/surfaces/Accordions.md +96 -0
  62. package/dist/components/surfaces/Card.md +786 -0
  63. package/dist/components/surfaces/Divider.md +762 -0
  64. package/dist/components/surfaces/Sheet.md +900 -0
  65. package/dist/components/surfaces/llms.txt +12 -0
  66. package/dist/index.cjs +22 -10
  67. package/dist/index.js +22 -10
  68. package/dist/llms.txt +75 -0
  69. package/framer/index.js +36 -36
  70. package/package.json +8 -4
@@ -0,0 +1,382 @@
1
+ # ButtonGroup
2
+
3
+ ## Introduction
4
+
5
+ ButtonGroup 컴포넌트는 관련된 버튼들을 그룹화하여 하나의 통합된 인터페이스로 표시합니다. 버튼들을 논리적으로 묶어서 시각적 일관성을 제공하고, 공간을 효율적으로 사용할 수 있게 해줍니다. 툴바, 액션 버튼 세트, 토글 그룹 등에 주로 사용됩니다.
6
+
7
+ ```tsx
8
+ <ButtonGroup {...args}>
9
+ <Button>첫번째</Button>
10
+ <Button>두번째</Button>
11
+ <Button>세번째</Button>
12
+ </ButtonGroup>
13
+ ```
14
+
15
+ | Field | Description | Default |
16
+ | ----------- | ----------- | ------------ |
17
+ | color | 버튼 그룹 색상 | "primary" |
18
+ | variant | 버튼 스타일 변형 | "solid" |
19
+ | size | 버튼 크기 | "md" |
20
+ | orientation | 방향 | "horizontal" |
21
+ | disabled | 비활성화 상태 | false |
22
+
23
+ ## Usage
24
+
25
+ ```tsx
26
+ import { ButtonGroup, Button } from '@ceed/ads';
27
+
28
+ function MyComponent() {
29
+ return (
30
+ <ButtonGroup>
31
+ <Button>첫번째</Button>
32
+ <Button>두번째</Button>
33
+ <Button>세번째</Button>
34
+ </ButtonGroup>
35
+ );
36
+ }
37
+ ```
38
+
39
+ ## Examples
40
+
41
+ ### Basic Usage
42
+
43
+ 기본적인 ButtonGroup 사용법입니다.
44
+
45
+ ```tsx
46
+ <div style={{
47
+ display: 'flex',
48
+ gap: '2rem',
49
+ flexDirection: 'column'
50
+ }}>
51
+ <ButtonGroup>
52
+ <Button>첫번째</Button>
53
+ <Button>두번째</Button>
54
+ <Button>세번째</Button>
55
+ </ButtonGroup>
56
+ </div>
57
+ ```
58
+
59
+ ### Colors
60
+
61
+ 다양한 색상을 적용할 수 있습니다.
62
+
63
+ ```tsx
64
+ <div style={{
65
+ display: 'flex',
66
+ gap: '1rem',
67
+ flexDirection: 'column'
68
+ }}>
69
+ <ButtonGroup color="primary">
70
+ <Button>Primary</Button>
71
+ <Button>Button</Button>
72
+ <Button>Group</Button>
73
+ </ButtonGroup>
74
+
75
+ <ButtonGroup color="neutral">
76
+ <Button>Neutral</Button>
77
+ <Button>Button</Button>
78
+ <Button>Group</Button>
79
+ </ButtonGroup>
80
+
81
+ <ButtonGroup color="danger">
82
+ <Button>Danger</Button>
83
+ <Button>Button</Button>
84
+ <Button>Group</Button>
85
+ </ButtonGroup>
86
+
87
+ <ButtonGroup color="success">
88
+ <Button>Success</Button>
89
+ <Button>Button</Button>
90
+ <Button>Group</Button>
91
+ </ButtonGroup>
92
+
93
+ <ButtonGroup color="warning">
94
+ <Button>Warning</Button>
95
+ <Button>Button</Button>
96
+ <Button>Group</Button>
97
+ </ButtonGroup>
98
+ </div>
99
+ ```
100
+
101
+ ### Variants
102
+
103
+ 다양한 스타일 변형을 제공합니다.
104
+
105
+ ```tsx
106
+ <div style={{
107
+ display: 'flex',
108
+ gap: '1rem',
109
+ flexDirection: 'column'
110
+ }}>
111
+ <ButtonGroup variant="solid">
112
+ <Button>Solid</Button>
113
+ <Button>Button</Button>
114
+ <Button>Group</Button>
115
+ </ButtonGroup>
116
+
117
+ <ButtonGroup variant="soft">
118
+ <Button>Soft</Button>
119
+ <Button>Button</Button>
120
+ <Button>Group</Button>
121
+ </ButtonGroup>
122
+
123
+ <ButtonGroup variant="outlined">
124
+ <Button>Outlined</Button>
125
+ <Button>Button</Button>
126
+ <Button>Group</Button>
127
+ </ButtonGroup>
128
+
129
+ <ButtonGroup variant="plain">
130
+ <Button>Plain</Button>
131
+ <Button>Button</Button>
132
+ <Button>Group</Button>
133
+ </ButtonGroup>
134
+ </div>
135
+ ```
136
+
137
+ ### Sizes
138
+
139
+ 크기를 조절할 수 있습니다.
140
+
141
+ ```tsx
142
+ <div style={{
143
+ display: 'flex',
144
+ gap: '1rem',
145
+ flexDirection: 'column',
146
+ alignItems: 'flex-start'
147
+ }}>
148
+ <ButtonGroup size="sm">
149
+ <Button>Small</Button>
150
+ <Button>Button</Button>
151
+ <Button>Group</Button>
152
+ </ButtonGroup>
153
+
154
+ <ButtonGroup size="md">
155
+ <Button>Medium</Button>
156
+ <Button>Button</Button>
157
+ <Button>Group</Button>
158
+ </ButtonGroup>
159
+
160
+ <ButtonGroup size="lg">
161
+ <Button>Large</Button>
162
+ <Button>Button</Button>
163
+ <Button>Group</Button>
164
+ </ButtonGroup>
165
+ </div>
166
+ ```
167
+
168
+ ### Orientations
169
+
170
+ 수평(horizontal) 또는 수직(vertical) 방향으로 배치할 수 있습니다.
171
+
172
+ ```tsx
173
+ <div style={{
174
+ display: 'flex',
175
+ gap: '2rem',
176
+ alignItems: 'flex-start'
177
+ }}>
178
+ <div>
179
+ <h4>Horizontal</h4>
180
+ <ButtonGroup orientation="horizontal">
181
+ <Button>첫번째</Button>
182
+ <Button>두번째</Button>
183
+ <Button>세번째</Button>
184
+ </ButtonGroup>
185
+ </div>
186
+
187
+ <div>
188
+ <h4>Vertical</h4>
189
+ <ButtonGroup orientation="vertical">
190
+ <Button>첫번째</Button>
191
+ <Button>두번째</Button>
192
+ <Button>세번째</Button>
193
+ </ButtonGroup>
194
+ </div>
195
+ </div>
196
+ ```
197
+
198
+ ### With Icons
199
+
200
+ 아이콘과 함께 사용할 수 있습니다.
201
+
202
+ ```tsx
203
+ <div style={{
204
+ display: 'flex',
205
+ gap: '2rem',
206
+ flexDirection: 'column'
207
+ }}>
208
+ <ButtonGroup>
209
+ <Button startDecorator={<Add />}>추가</Button>
210
+ <Button startDecorator={<Edit />}>편집</Button>
211
+ <Button startDecorator={<Delete />}>삭제</Button>
212
+ </ButtonGroup>
213
+
214
+ <ButtonGroup variant="outlined">
215
+ <Button startDecorator={<Save />} />
216
+ <Button startDecorator={<Share />} />
217
+ <Button startDecorator={<Edit />} />
218
+ </ButtonGroup>
219
+ </div>
220
+ ```
221
+
222
+ ### Action Groups
223
+
224
+ 실제 사용 사례별 액션 그룹들입니다.
225
+
226
+ ```tsx
227
+ <div style={{
228
+ display: 'flex',
229
+ gap: '2rem',
230
+ flexDirection: 'column'
231
+ }}>
232
+ <div>
233
+ <h4>File Actions</h4>
234
+ <ButtonGroup variant="outlined">
235
+ <Button onClick={() => alert('Save')}>저장</Button>
236
+ <Button onClick={() => alert('Save As')}>다른 이름으로 저장</Button>
237
+ <Button onClick={() => alert('Export')}>내보내기</Button>
238
+ </ButtonGroup>
239
+ </div>
240
+
241
+ <div>
242
+ <h4>Text Formatting</h4>
243
+ <ButtonGroup size="sm" variant="soft">
244
+ <Button>B</Button>
245
+ <Button>I</Button>
246
+ <Button>U</Button>
247
+ <Button>S</Button>
248
+ </ButtonGroup>
249
+ </div>
250
+
251
+ <div>
252
+ <h4>View Options</h4>
253
+ <ButtonGroup color="neutral" variant="outlined">
254
+ <Button>목록</Button>
255
+ <Button>격자</Button>
256
+ <Button>타일</Button>
257
+ </ButtonGroup>
258
+ </div>
259
+ </div>
260
+ ```
261
+
262
+ ### States
263
+
264
+ 다양한 상태를 표현할 수 있습니다.
265
+
266
+ ```tsx
267
+ <div style={{
268
+ display: 'flex',
269
+ gap: '2rem',
270
+ flexDirection: 'column'
271
+ }}>
272
+ <div>
273
+ <h4>Normal</h4>
274
+ <ButtonGroup>
275
+ <Button>첫번째</Button>
276
+ <Button>두번째</Button>
277
+ <Button>세번째</Button>
278
+ </ButtonGroup>
279
+ </div>
280
+
281
+ <div>
282
+ <h4>Disabled</h4>
283
+ <ButtonGroup disabled>
284
+ <Button>첫번째</Button>
285
+ <Button>두번째</Button>
286
+ <Button>세번째</Button>
287
+ </ButtonGroup>
288
+ </div>
289
+
290
+ <div>
291
+ <h4>Mixed States</h4>
292
+ <ButtonGroup>
293
+ <Button>활성</Button>
294
+ <Button disabled>비활성</Button>
295
+ <Button>활성</Button>
296
+ </ButtonGroup>
297
+ </div>
298
+ </div>
299
+ ```
300
+
301
+ ### Toggle Group
302
+
303
+ 선택 상태를 토글할 수 있는 버튼 그룹입니다.
304
+
305
+ ```tsx
306
+ <div>
307
+ <h4>Toggle Group (Alignment)</h4>
308
+ <ButtonGroup variant="outlined">
309
+ <Button variant={selected === 'left' ? 'solid' : 'outlined'} onClick={() => setSelected('left')}>
310
+ 왼쪽 정렬
311
+ </Button>
312
+ <Button variant={selected === 'center' ? 'solid' : 'outlined'} onClick={() => setSelected('center')}>
313
+ 가운데 정렬
314
+ </Button>
315
+ <Button variant={selected === 'right' ? 'solid' : 'outlined'} onClick={() => setSelected('right')}>
316
+ 오른쪽 정렬
317
+ </Button>
318
+ </ButtonGroup>
319
+ <p>선택된 정렬: {selected}</p>
320
+ </div>
321
+ ```
322
+
323
+ ## Common Use Cases
324
+
325
+ ### Toolbar Actions
326
+
327
+ ```tsx
328
+ <ButtonGroup variant="outlined">
329
+ <Button startDecorator={<SaveIcon />}>저장</Button>
330
+ <Button startDecorator={<UndoIcon />}>실행 취소</Button>
331
+ <Button startDecorator={<RedoIcon />}>다시 실행</Button>
332
+ </ButtonGroup>
333
+ ```
334
+
335
+ ### Text Formatting
336
+
337
+ ```tsx
338
+ <ButtonGroup size="sm" variant="soft">
339
+ <Button onClick={() => format('bold')}>B</Button>
340
+ <Button onClick={() => format('italic')}>I</Button>
341
+ <Button onClick={() => format('underline')}>U</Button>
342
+ </ButtonGroup>
343
+ ```
344
+
345
+ ### View Controls
346
+
347
+ ```tsx
348
+ <ButtonGroup color="neutral">
349
+ <Button onClick={() => setView('list')}>목록</Button>
350
+ <Button onClick={() => setView('grid')}>격자</Button>
351
+ <Button onClick={() => setView('card')}>카드</Button>
352
+ </ButtonGroup>
353
+ ```
354
+
355
+ ### Pagination
356
+
357
+ ```tsx
358
+ <ButtonGroup variant="outlined">
359
+ <Button disabled={page === 1} onClick={() => setPage(page - 1)}>
360
+ 이전
361
+ </Button>
362
+ <Button onClick={() => setPage(page + 1)}>
363
+ 다음
364
+ </Button>
365
+ </ButtonGroup>
366
+ ```
367
+
368
+ ## Best Practices
369
+
370
+ 1. **관련성**: 논리적으로 관련된 버튼들만 그룹화하세요.
371
+
372
+ 2. **일관성**: 그룹 내의 모든 버튼은 동일한 variant, size, color를 사용하는 것이 좋습니다.
373
+
374
+ 3. **적절한 개수**: 너무 많은 버튼을 한 그룹에 포함하지 마세요. 일반적으로 2-5개가 적당합니다.
375
+
376
+ 4. **명확한 레이블**: 각 버튼의 기능을 명확하게 알 수 있는 레이블을 사용하세요.
377
+
378
+ 5. **접근성**: 키보드 탐색이 가능하도록 하고, 스크린 리더를 위한 적절한 레이블을 제공하세요.
379
+
380
+ 6. **상태 관리**: 토글 그룹으로 사용할 때는 현재 선택된 상태를 시각적으로 명확히 표시하세요.
381
+
382
+ 7. **반응형 디자인**: 작은 화면에서는 vertical orientation을 고려하거나 적절한 줄바꿈을 제공하세요.
@@ -0,0 +1,19 @@
1
+ # Calendar
2
+
3
+ ## Introduction
4
+
5
+ > **참고**: 해당 컴포넌트를 직접적으로 사용하는 일은 거의 없습니다. 날짜 선택과 관련된 컴포넌트가 필요하면 DatePicker, DateRangePicker, MonthPicker 와 같은 컴포넌트를 확인해보세요.
6
+
7
+ ```tsx
8
+ <Calendar />
9
+ ```
10
+
11
+ | Field | Description | Default |
12
+ | ------ | ----------- | ------- |
13
+ | locale | — | — |
14
+
15
+ ## Usage
16
+
17
+ ```tsx
18
+ import { Calendar } from '@ceed/ads';
19
+ ```