@ceed/ads 1.29.1 → 1.30.1

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 (69) hide show
  1. package/dist/Overview.md +5 -5
  2. package/dist/components/DatePicker/DatePicker.d.ts +10 -0
  3. package/dist/components/DateRangePicker/DateRangePicker.d.ts +10 -0
  4. package/dist/components/data-display/Avatar.md +85 -74
  5. package/dist/components/data-display/Badge.md +23 -5
  6. package/dist/components/data-display/Chip.md +49 -35
  7. package/dist/components/data-display/DataTable.md +93 -0
  8. package/dist/components/data-display/InfoSign.md +15 -5
  9. package/dist/components/data-display/Markdown.md +22 -26
  10. package/dist/components/data-display/Table.md +63 -53
  11. package/dist/components/data-display/Tooltip.md +70 -58
  12. package/dist/components/data-display/Typography.md +28 -11
  13. package/dist/components/feedback/Alert.md +86 -74
  14. package/dist/components/feedback/CircularProgress.md +20 -5
  15. package/dist/components/feedback/Dialog.md +8 -12
  16. package/dist/components/feedback/Modal.md +12 -16
  17. package/dist/components/feedback/Skeleton.md +20 -5
  18. package/dist/components/inputs/Autocomplete.md +8 -10
  19. package/dist/components/inputs/Button.md +107 -87
  20. package/dist/components/inputs/ButtonGroup.md +20 -5
  21. package/dist/components/inputs/Calendar.md +25 -5
  22. package/dist/components/inputs/Checkbox.md +171 -450
  23. package/dist/components/inputs/CurrencyInput.md +25 -5
  24. package/dist/components/inputs/DatePicker.md +87 -5
  25. package/dist/components/inputs/DateRangePicker.md +91 -5
  26. package/dist/components/inputs/FilterMenu.md +85 -9
  27. package/dist/components/inputs/FilterableCheckboxGroup.md +23 -8
  28. package/dist/components/inputs/FormControl.md +34 -6
  29. package/dist/components/inputs/IconButton.md +21 -5
  30. package/dist/components/inputs/Input.md +254 -68
  31. package/dist/components/inputs/MonthPicker.md +28 -5
  32. package/dist/components/inputs/MonthRangePicker.md +26 -5
  33. package/dist/components/inputs/PercentageInput.md +28 -5
  34. package/dist/components/inputs/RadioButton.md +26 -5
  35. package/dist/components/inputs/RadioList.md +23 -6
  36. package/dist/components/inputs/RadioTileGroup.md +40 -8
  37. package/dist/components/inputs/Select.md +59 -5
  38. package/dist/components/inputs/Slider.md +26 -5
  39. package/dist/components/inputs/Switch.md +23 -5
  40. package/dist/components/inputs/Textarea.md +27 -5
  41. package/dist/components/inputs/Uploader/Uploader.md +24 -5
  42. package/dist/components/layout/Box.md +66 -58
  43. package/dist/components/layout/Container.md +9 -13
  44. package/dist/components/layout/Grid.md +91 -75
  45. package/dist/components/layout/Stack.md +85 -70
  46. package/dist/components/navigation/Breadcrumbs.md +23 -14
  47. package/dist/components/navigation/Dropdown.md +29 -20
  48. package/dist/components/navigation/IconMenuButton.md +24 -11
  49. package/dist/components/navigation/InsetDrawer.md +16 -5
  50. package/dist/components/navigation/Link.md +30 -14
  51. package/dist/components/navigation/Menu.md +33 -20
  52. package/dist/components/navigation/MenuButton.md +26 -12
  53. package/dist/components/navigation/NavigationGroup.md +7 -11
  54. package/dist/components/navigation/NavigationItem.md +8 -12
  55. package/dist/components/navigation/Navigator.md +5 -9
  56. package/dist/components/navigation/Pagination.md +21 -12
  57. package/dist/components/navigation/ProfileMenu.md +17 -5
  58. package/dist/components/navigation/Stepper.md +18 -5
  59. package/dist/components/navigation/Tabs.md +37 -14
  60. package/dist/components/surfaces/Accordions.md +12 -16
  61. package/dist/components/surfaces/Card.md +59 -47
  62. package/dist/components/surfaces/Divider.md +70 -61
  63. package/dist/components/surfaces/Sheet.md +18 -5
  64. package/dist/index.browser.js +2 -2
  65. package/dist/index.browser.js.map +3 -3
  66. package/dist/index.cjs +173 -6
  67. package/dist/index.js +173 -6
  68. package/framer/index.js +1 -1
  69. package/package.json +1 -1
@@ -2,7 +2,7 @@
2
2
 
3
3
  ## Introduction
4
4
 
5
- Chip 컴포넌트는 입력, 속성, 액션을 컴팩트하게 표현하는 UI 요소입니다. 태그, 필터, 연락처, 카테고리 등을 나타내는 주로 사용됩니다. 텍스트, 아이콘, 아바타와 함께 사용할 있으며, 클릭하거나 삭제할 있는 인터랙티브한 기능을 제공합니다.
5
+ The Chip component is a compact UI element used to represent inputs, attributes, and actions. It is commonly used for tags, filters, contacts, categories, and similar items. It can be used with text, icons, or avatars, and provides interactive behaviors such as clicking or deleting.
6
6
 
7
7
  ```tsx
8
8
  <Chip {...args} />
@@ -39,11 +39,9 @@ function MyComponent() {
39
39
  }
40
40
  ```
41
41
 
42
- ## Examples
42
+ ## Chip Basic Usage
43
43
 
44
- ### Basic Usage
45
-
46
- 기본적인 Chip 사용법입니다.
44
+ Basic Chip usage.
47
45
 
48
46
  ```tsx
49
47
  <div style={{
@@ -57,9 +55,9 @@ function MyComponent() {
57
55
  </div>
58
56
  ```
59
57
 
60
- ### Colors
58
+ ## Chip Colors
61
59
 
62
- 다양한 색상을 적용할 있습니다.
60
+ You can apply various colors.
63
61
 
64
62
  ```tsx
65
63
  <div style={{
@@ -75,9 +73,9 @@ function MyComponent() {
75
73
  </div>
76
74
  ```
77
75
 
78
- ### Variants
76
+ ## Chip Variants
79
77
 
80
- 다양한 스타일 변형을 제공합니다.
78
+ Provides a variety of style variants.
81
79
 
82
80
  ```tsx
83
81
  <div style={{
@@ -92,9 +90,9 @@ function MyComponent() {
92
90
  </div>
93
91
  ```
94
92
 
95
- ### Sizes
93
+ ## Chip Sizes
96
94
 
97
- 크기를 조절할 있습니다.
95
+ You can adjust the size.
98
96
 
99
97
  ```tsx
100
98
  <div style={{
@@ -109,9 +107,9 @@ function MyComponent() {
109
107
  </div>
110
108
  ```
111
109
 
112
- ### With Icons
110
+ ## Chip with Icons
113
111
 
114
- 아이콘과 함께 사용할 있습니다.
112
+ Can be used with icons.
115
113
 
116
114
  ```tsx
117
115
  <div style={{
@@ -127,9 +125,9 @@ function MyComponent() {
127
125
  </div>
128
126
  ```
129
127
 
130
- ### With Avatar
128
+ ## Chip with Avatar
131
129
 
132
- 아바타와 함께 사용하여 사용자를 나타낼 있습니다.
130
+ Can be used with an avatar to represent a user.
133
131
 
134
132
  ```tsx
135
133
  <div style={{
@@ -142,9 +140,9 @@ function MyComponent() {
142
140
  </div>
143
141
  ```
144
142
 
145
- ### Deletable
143
+ ## Deletable Chip
146
144
 
147
- 삭제 기능을 가진 Chip입니다. 클릭하면 목록에서 제거됩니다.
145
+ A Chip with delete functionality. Clicking it removes it from the list.
148
146
 
149
147
  ```tsx
150
148
  <div style={{
@@ -158,9 +156,9 @@ function MyComponent() {
158
156
  </div>
159
157
  ```
160
158
 
161
- ### Clickable
159
+ ## Clickable Chip
162
160
 
163
- 클릭 가능한 Chip으로 필터나 탭으로 사용할 있습니다.
161
+ A clickable Chip that can be used as a filter or tab.
164
162
 
165
163
  ```tsx
166
164
  <div style={{
@@ -178,9 +176,9 @@ function MyComponent() {
178
176
  </div>
179
177
  ```
180
178
 
181
- ### Clickable Actions
179
+ ## Chip Clickable Actions
182
180
 
183
- 클릭하여 다양한 액션을 수행할 있습니다.
181
+ Can trigger various actions when clicked.
184
182
 
185
183
  ```tsx
186
184
  <div style={{
@@ -198,9 +196,9 @@ function MyComponent() {
198
196
  </div>
199
197
  ```
200
198
 
201
- ### States
199
+ ## Chip States
202
200
 
203
- 다양한 상태를 표현할 수 있습니다.
201
+ Can represent various states.
204
202
 
205
203
  ```tsx
206
204
  <div style={{
@@ -239,9 +237,7 @@ function MyComponent() {
239
237
  </div>
240
238
  ```
241
239
 
242
- ## Common Use Cases
243
-
244
- ### Tags
240
+ ## Chip Tags
245
241
 
246
242
  ```tsx
247
243
  <div style={{ display: 'flex', gap: '0.5rem' }}>
@@ -251,7 +247,7 @@ function MyComponent() {
251
247
  </div>
252
248
  ```
253
249
 
254
- ### Status Indicators
250
+ ## Chip Status Indicators
255
251
 
256
252
  ```tsx
257
253
  <Chip color="success" startDecorator={<CheckIcon />}>
@@ -262,7 +258,7 @@ function MyComponent() {
262
258
  </Chip>
263
259
  ```
264
260
 
265
- ### Filter Controls
261
+ ## Chip Filter Controls
266
262
 
267
263
  ```tsx
268
264
  <Chip
@@ -274,7 +270,7 @@ function MyComponent() {
274
270
  </Chip>
275
271
  ```
276
272
 
277
- ### Contact Pills
273
+ ## Chip Contact Pills
278
274
 
279
275
  ```tsx
280
276
  <Chip
@@ -286,16 +282,34 @@ function MyComponent() {
286
282
  </Chip>
287
283
  ```
288
284
 
285
+ ## Props and Customization
286
+
287
+ ### Key Props
288
+
289
+ | Prop | Type | Default | Description |
290
+ | ---------------- | -------------------------------------------------------------- | ----------- | -------------------------------------- |
291
+ | `children` | `ReactNode` | - | Chip content (text, icons) |
292
+ | `variant` | `'solid' \| 'soft' \| 'outlined' \| 'plain'` | `'soft'` | Visual style |
293
+ | `size` | `'sm' \| 'md' \| 'lg'` | `'md'` | Chip size |
294
+ | `color` | `'primary' \| 'neutral' \| 'danger' \| 'success' \| 'warning'` | `'neutral'` | Color scheme |
295
+ | `disabled` | `boolean` | `false` | Disables the chip |
296
+ | `onClick` | `(event: MouseEvent) => void` | - | Click handler (makes chip interactive) |
297
+ | `startDecorator` | `ReactNode` | - | Content before the chip text |
298
+ | `endDecorator` | `ReactNode` | - | Content after the chip text |
299
+ | `sx` | `SxProps` | - | Custom styles using the MUI system |
300
+
301
+ > **Note**: Chip also accepts all Joy UI Chip props and Framer Motion props.
302
+
289
303
  ## Best Practices
290
304
 
291
- 1. **적절한 크기**: 콘텐츠에 맞는 적절한 크기를 선택하세요. 텍스트는 피하고 간결하게 표현하세요.
305
+ 1. **Use appropriate sizes**: Choose sizes that fit the content. Keep text concise.
292
306
 
293
- 2. **일관된 스타일**: 같은 맥락에서는 일관된 variant color 사용하세요.
307
+ 2. **Be consistent**: Use the same variant and color within the same context.
294
308
 
295
- 3. **명확한 액션**: clickable이나 deletable 기능을 사용할 때는 사용자에게 명확한 피드백을 제공하세요.
309
+ 3. **Clear actions**: When using clickable or deletable behavior, provide clear feedback to the user.
296
310
 
297
- 4. **접근성**: 키보드 탐색이 가능하도록 하고, 스크린 리더를 위한 적절한 레이블을 제공하세요.
311
+ 4. **Accessibility**: Support keyboard navigation and provide appropriate labels for screen readers.
298
312
 
299
- 5. **적절한 간격**: 여러 Chip을 나열할 때는 적절한 간격을 두어 가독성을 높이세요.
313
+ 5. **Appropriate spacing**: Use proper spacing when listing multiple Chips to improve readability.
300
314
 
301
- 6. **색상 의미**: 색상은 의미를 가지도록 사용하세요 (성공은 초록색, 경고는 주황색 등).
315
+ 6. **Semantic color usage**: Use colors with clear meaning, such as green for success and orange for warnings.
@@ -1726,6 +1726,99 @@ This is inspector: {selectedRowId}
1726
1726
  </Stack>
1727
1727
  ```
1728
1728
 
1729
+ ## Props and Customization
1730
+
1731
+ ### DataTableProps
1732
+
1733
+ | Prop | Type | Default | Description |
1734
+ | ------------------------------- | ------------------------------------------------------------------- | ----------------------- | ----------------------------------------------------- |
1735
+ | `rows` | `T[]` | (required) | Array of row data objects |
1736
+ | `columns` | `ColumnDef<T, ID>[]` | (required) | Column definitions array |
1737
+ | `getId` | `(row: T) => ID` | - | Custom row identifier function (defaults to `row.id`) |
1738
+ | `checkboxSelection` | `boolean` | `false` | Enables checkbox selection column |
1739
+ | `selectionModel` | `ID[]` | - | Controlled selection state |
1740
+ | `onSelectionModelChange` | `(model: ID[], isTotalSelected?: boolean) => void` | - | Callback when selection changes |
1741
+ | `isRowSelectable` | `(params: { row, id }) => boolean` | - | Determines if a row can be selected |
1742
+ | `disableSelectionOnClick` | `boolean` | `false` | Prevents selection when clicking a row |
1743
+ | `isTotalSelected` | `boolean` | `false` | Represents total selection state in server pagination |
1744
+ | `editMode` | `boolean` | `false` | Enables inline cell editing |
1745
+ | `pagination` | `boolean` | `false` | Enables pagination |
1746
+ | `paginationMode` | `'client' \| 'server'` | `'client'` | Client-side or server-side pagination |
1747
+ | `paginationModel` | `{ page: number; pageSize: number }` | - | Controlled pagination state |
1748
+ | `onPaginationModelChange` | `(model: { page, pageSize }) => void` | - | Callback when page or page size changes |
1749
+ | `rowCount` | `number` | - | Total row count (required for server pagination) |
1750
+ | `sortModel` | `SortModel<T>[]` | - | Controlled sort state |
1751
+ | `sortOrder` | `('asc' \| 'desc' \| null)[]` | `['asc', 'desc', null]` | Allowed sort directions cycle |
1752
+ | `onSortModelChange` | `(model: SortModel<T>[]) => void` | - | Callback when sort changes |
1753
+ | `pinnedColumns` | `{ left?: string[]; right?: string[] }` | - | Pin columns to left/right edges |
1754
+ | `columnGroupingModel` | `ColumnGroupingModel` | - | Column header grouping configuration |
1755
+ | `columnVisibilityModel` | `Record<string, boolean>` | - | Controlled column visibility (false = hidden) |
1756
+ | `onColumnVisibilityModelChange` | `(model: Record<string, boolean>) => void` | - | Callback when visibility changes |
1757
+ | `loading` | `boolean` | `false` | Shows loading overlay |
1758
+ | `hoverRow` | `boolean` | `false` | Highlights rows on hover |
1759
+ | `stickyHeader` | `boolean` | `false` | Fixes the header when scrolling |
1760
+ | `stripe` | `'even' \| 'odd'` | - | Applies striped row background |
1761
+ | `noWrap` | `boolean` | `false` | Prevents cell text wrapping |
1762
+ | `onRowClick` | `(params: { row, rowId }, event) => void` | - | Callback when a row is clicked |
1763
+ | `slots` | `{ checkbox?, toolbar?, footer?, loadingOverlay?, noRowsOverlay? }` | - | Custom component slots |
1764
+ | `slotProps` | `{ checkbox?, toolbar?, background?, noRowsOverlay? }` | - | Props passed to slot components |
1765
+ | `apiRef` | `React.RefObject<DataTableApi>` | - | Imperative API reference |
1766
+ | `initialState` | `{ sorting?, columns? }` | - | Initial state for uncontrolled sort/visibility |
1767
+
1768
+ ### ColumnDef Union Type
1769
+
1770
+ All column types extend `BaseColumnDef` with shared properties:
1771
+
1772
+ | Prop | Type | Default | Description |
1773
+ | ----------------- | --------------------------------------------------------------------------------------------------------------- | ---------- | ------------------------------------------------ |
1774
+ | `field` | `keyof T` | (required) | Row data field to display |
1775
+ | `headerName` | `string` | - | Column header text |
1776
+ | `type` | `'text' \| 'number' \| 'currency' \| 'date' \| 'select' \| 'autocomplete' \| 'longText' \| 'link' \| 'actions'` | `'text'` | Column type (determines edit UI) |
1777
+ | `width` | `string` | - | Column width (e.g., `'200px'`, `'30%'`) |
1778
+ | `minWidth` | `string` | - | Minimum column width |
1779
+ | `maxWidth` | `string` | - | Maximum column width |
1780
+ | `resizable` | `boolean` | `false` | Enables column resizing by dragging |
1781
+ | `sortable` | `boolean` | `true` | Enables sorting for this column |
1782
+ | `sortComparator` | `(params: { rowA, rowB }) => number` | - | Custom sort logic |
1783
+ | `sortOrder` | `('asc' \| 'desc' \| null)[]` | - | Column-specific sort direction cycle |
1784
+ | `required` | `boolean` | `false` | Shows required indicator (\*) in header |
1785
+ | `headerLineClamp` | `1 \| 2` | `1` | Max header text lines before truncation |
1786
+ | `description` | `string` | - | Tooltip text for the column header |
1787
+ | `cellClassName` | `string \| ((params: { row, value }) => string)` | - | Dynamic cell CSS class |
1788
+ | `headerClassName` | `string \| ((params) => string)` | - | Dynamic header CSS class |
1789
+ | `renderCell` | `(params: { row, value, rowIndex, colIndex, id }) => ReactNode` | - | Custom cell renderer |
1790
+ | `renderEditCell` | `(params) => ReactNode` | - | Custom edit cell renderer |
1791
+ | `isCellEditable` | `boolean \| ((params: { row, value, id }) => boolean)` | `true` | Whether a cell is editable |
1792
+ | `componentProps` | `object \| ((params: { row, id }) => object)` | - | Props passed to the column type's edit component |
1793
+ | `onCellEditStart` | `(params: { row, originalRow, value }) => void` | - | Callback when cell editing begins |
1794
+ | `onCellEditStop` | `(params: { row, originalRow, value }) => void` | - | Callback when cell editing ends |
1795
+
1796
+ ### ActionsColumnDef
1797
+
1798
+ For action columns, use `type: 'actions'` with `getActions`:
1799
+
1800
+ ```tsx
1801
+ {
1802
+ field: 'actions',
1803
+ type: 'actions',
1804
+ getActions: ({ row, id }) => [
1805
+ <Button key="edit" size="sm">Edit</Button>,
1806
+ <IconMenuButton key="more" items={[...]} />,
1807
+ ],
1808
+ }
1809
+ ```
1810
+
1811
+ ### DataTableApi
1812
+
1813
+ ```tsx
1814
+ interface DataTableApi {
1815
+ getRowIndexRelativeToVisibleRows(rowId: string): number;
1816
+ setCellFocus(rowId: string): void;
1817
+ }
1818
+ ```
1819
+
1820
+ > **Note**: DataTable also accepts all Joy UI Table props (e.g., `borderAxis`, `size`, `sx`).
1821
+
1729
1822
  ## Constraints and Considerations
1730
1823
 
1731
1824
  ### Required Conditions
@@ -45,9 +45,7 @@ The default InfoSign displays a question-mark icon that reveals a tooltip on hov
45
45
  />
46
46
  ```
47
47
 
48
- ## Common Use Cases
49
-
50
- ### Form Field Help
48
+ ## InfoSign Form Field Help
51
49
 
52
50
  ```tsx
53
51
  import { InfoSign } from '@ceed/ads';
@@ -69,7 +67,7 @@ function PasswordField() {
69
67
  }
70
68
  ```
71
69
 
72
- ### Table Column Header
70
+ ## InfoSign Table Column Header
73
71
 
74
72
  ```tsx
75
73
  import { InfoSign } from '@ceed/ads';
@@ -93,7 +91,7 @@ function TableHeader() {
93
91
  }
94
92
  ```
95
93
 
96
- ### Dashboard Metric Explanation
94
+ ## InfoSign Dashboard Metric Explanation
97
95
 
98
96
  ```tsx
99
97
  import { InfoSign, Typography, Stack } from '@ceed/ads';
@@ -114,6 +112,18 @@ function MetricCard() {
114
112
  }
115
113
  ```
116
114
 
115
+ ## Props and Customization
116
+
117
+ ### Key Props
118
+
119
+ | Prop | Type | Default | Description |
120
+ | ----------- | -------------------------------------------------------------- | ----------- | ------------------------------------- |
121
+ | `message` | `string` | (required) | Tooltip message text |
122
+ | `placement` | `TooltipPlacement` | `'top'` | Tooltip position relative to the icon |
123
+ | `color` | `'primary' \| 'neutral' \| 'danger' \| 'success' \| 'warning'` | `'neutral'` | Icon color |
124
+ | `size` | `'sm' \| 'md' \| 'lg'` | `'md'` | Icon size |
125
+ | `sx` | `SxProps` | - | Custom styles |
126
+
117
127
  ## Best Practices
118
128
 
119
129
  - **Keep messages concise.** Tooltip messages should be 1-2 sentences that quickly answer "what does this mean?" Avoid paragraphs of text.
@@ -43,9 +43,7 @@ function ArticleContent({ content }) {
43
43
  }
44
44
  ```
45
45
 
46
- ## Examples
47
-
48
- ### Playground
46
+ ## Playground
49
47
 
50
48
  Interactive example with basic markdown formatting.
51
49
 
@@ -55,7 +53,7 @@ Interactive example with basic markdown formatting.
55
53
  />
56
54
  ```
57
55
 
58
- ### Default Level
56
+ ## Default Level
59
57
 
60
58
  Control the base typography level for the content.
61
59
 
@@ -71,7 +69,7 @@ Control the base typography level for the content.
71
69
  </Stack>
72
70
  ```
73
71
 
74
- ### Text Alignment
72
+ ## Text Alignment
75
73
 
76
74
  Align text to left, center, or right.
77
75
 
@@ -82,7 +80,7 @@ Align text to left, center, or right.
82
80
  />
83
81
  ```
84
82
 
85
- ### Colors
83
+ ## Colors
86
84
 
87
85
  Apply different color themes to the markdown content.
88
86
 
@@ -96,7 +94,7 @@ Apply different color themes to the markdown content.
96
94
  </div>
97
95
  ```
98
96
 
99
- ### Text Color
97
+ ## Text Color
100
98
 
101
99
  Use specific text colors from the theme palette.
102
100
 
@@ -108,7 +106,7 @@ Use specific text colors from the theme palette.
108
106
  </Stack>
109
107
  ```
110
108
 
111
- ### Accent Color
109
+ ## Accent Color
112
110
 
113
111
  Highlight text with custom accent color using `||text||` syntax.
114
112
 
@@ -119,7 +117,7 @@ Highlight text with custom accent color using `||text||` syntax.
119
117
  </Stack>
120
118
  ```
121
119
 
122
- ### Bold Font Weight
120
+ ## Bold Font Weight
123
121
 
124
122
  Customize the weight of bold text.
125
123
 
@@ -139,7 +137,7 @@ Customize the weight of bold text.
139
137
  </Stack>
140
138
  ```
141
139
 
142
- ### Strikethrough
140
+ ## Strikethrough
143
141
 
144
142
  GFM strikethrough support using `~text~` syntax.
145
143
 
@@ -147,7 +145,7 @@ GFM strikethrough support using `~text~` syntax.
147
145
  <Markdown content="I am markdown with ~strikethrough~" />
148
146
  ```
149
147
 
150
- ### Tables
148
+ ## Tables
151
149
 
152
150
  Full GFM table support with alignment options.
153
151
 
@@ -157,7 +155,7 @@ Full GFM table support with alignment options.
157
155
  />
158
156
  ```
159
157
 
160
- ### Code Blocks
158
+ ## Code Blocks
161
159
 
162
160
  Inline code and fenced code blocks with syntax highlighting.
163
161
 
@@ -167,7 +165,7 @@ Inline code and fenced code blocks with syntax highlighting.
167
165
  />
168
166
  ````
169
167
 
170
- ### Task Lists
168
+ ## Task Lists
171
169
 
172
170
  Interactive task list checkboxes.
173
171
 
@@ -177,7 +175,7 @@ Interactive task list checkboxes.
177
175
  />
178
176
  ```
179
177
 
180
- ### Blockquotes
178
+ ## Blockquotes
181
179
 
182
180
  Styled blockquotes for quoted content.
183
181
 
@@ -187,7 +185,7 @@ Styled blockquotes for quoted content.
187
185
  />
188
186
  ```
189
187
 
190
- ### Lists
188
+ ## Lists
191
189
 
192
190
  Ordered and unordered lists with nesting support.
193
191
 
@@ -197,7 +195,7 @@ Ordered and unordered lists with nesting support.
197
195
  />
198
196
  ```
199
197
 
200
- ### GFM Complete
198
+ ## GFM Complete
201
199
 
202
200
  Full demonstration of all GFM features.
203
201
 
@@ -227,9 +225,7 @@ Full demonstration of all GFM features.
227
225
  - **Critical UI text**: Use Typography for button labels, form labels, etc.
228
226
  - **Structured data**: Use DataTable or custom components for tabular data
229
227
 
230
- ## Common Use Cases
231
-
232
- ### Article/Blog Content
228
+ ## Article/Blog Content
233
229
 
234
230
  ```tsx
235
231
  function ArticlePage({ article }) {
@@ -257,7 +253,7 @@ function ArticlePage({ article }) {
257
253
  }
258
254
  ```
259
255
 
260
- ### Comment with Formatting
256
+ ## Comment with Formatting
261
257
 
262
258
  ```tsx
263
259
  function Comment({ comment }) {
@@ -283,7 +279,7 @@ function Comment({ comment }) {
283
279
  }
284
280
  ```
285
281
 
286
- ### Release Notes
282
+ ## Release Notes
287
283
 
288
284
  ```tsx
289
285
  function ReleaseNotes({ version, notes }) {
@@ -321,7 +317,7 @@ const releaseNotes = `
321
317
  `;
322
318
  ```
323
319
 
324
- ### Help Documentation
320
+ ## Help Documentation
325
321
 
326
322
  ```tsx
327
323
  function HelpArticle({ title, content }) {
@@ -369,7 +365,7 @@ Contact us at [support@example.com](mailto:support@example.com).
369
365
  `;
370
366
  ```
371
367
 
372
- ### Task Description with Checklist
368
+ ## Task Description with Checklist
373
369
 
374
370
  ```tsx
375
371
  function TaskDetails({ task }) {
@@ -406,7 +402,7 @@ Make sure to follow the ||coding standards|| and add proper error handling.
406
402
  `;
407
403
  ```
408
404
 
409
- ### Notification Content
405
+ ## Notification Content
410
406
 
411
407
  ```tsx
412
408
  function NotificationDetail({ notification }) {
@@ -431,7 +427,7 @@ const notification = {
431
427
  };
432
428
  ```
433
429
 
434
- ### Email Preview
430
+ ## Email Preview
435
431
 
436
432
  ```tsx
437
433
  function EmailPreview({ subject, body }) {
@@ -453,7 +449,7 @@ function EmailPreview({ subject, body }) {
453
449
  }
454
450
  ```
455
451
 
456
- ### API Documentation
452
+ ## API Documentation
457
453
 
458
454
  ```tsx
459
455
  function APIDocumentation({ endpoint }) {