@ceed/ads 1.35.1 → 1.37.0-next.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 (124) hide show
  1. package/README.md +85 -95
  2. package/dist/components/Accordions/Accordions.d.ts +1 -0
  3. package/dist/components/Alert/Alert.d.ts +5 -5
  4. package/dist/components/Autocomplete/Autocomplete.d.ts +2 -2
  5. package/dist/components/Avatar/Avatar.d.ts +7 -17
  6. package/dist/components/Box/Box.d.ts +1 -0
  7. package/dist/components/Breadcrumbs/Breadcrumbs.d.ts +6 -5
  8. package/dist/components/Button/Button.d.ts +3 -2
  9. package/dist/components/Calendar/Calendar.d.ts +1 -0
  10. package/dist/components/Card/Card.d.ts +1 -0
  11. package/dist/components/Checkbox/Checkbox.d.ts +1 -0
  12. package/dist/components/Chip/Chip.d.ts +1 -0
  13. package/dist/components/Container/Container.d.ts +6 -1
  14. package/dist/components/DialogActions/DialogActions.d.ts +1 -0
  15. package/dist/components/DialogContent/DialogContent.d.ts +1 -0
  16. package/dist/components/DialogFrame/DialogFrame.d.ts +1 -1
  17. package/dist/components/DialogTitle/DialogTitle.d.ts +1 -0
  18. package/dist/components/Divider/Divider.d.ts +1 -0
  19. package/dist/components/Dropdown/Dropdown.d.ts +28 -1
  20. package/dist/components/FilterMenu/components/MonthRange.d.ts +11 -0
  21. package/dist/components/FilterMenu/types.d.ts +5 -1
  22. package/dist/components/FilterableCheckboxGroup/FilterableCheckboxGroup.d.ts +1 -1
  23. package/dist/components/FormControl/FormControl.d.ts +1 -0
  24. package/dist/components/FormHelperText/FormHelperText.d.ts +1 -0
  25. package/dist/components/FormLabel/FormLabel.d.ts +1 -0
  26. package/dist/components/Grid/Grid.d.ts +1 -0
  27. package/dist/components/IconButton/IconButton.d.ts +3 -2
  28. package/dist/components/IconMenuButton/IconMenuButton.d.ts +7 -6
  29. package/dist/components/InfoSign/InfoSign.d.ts +3 -2
  30. package/dist/components/Input/Input.d.ts +8 -22
  31. package/dist/components/InsetDrawer/InsetDrawer.d.ts +1 -0
  32. package/dist/components/Markdown/Markdown.d.ts +9 -24
  33. package/dist/components/Menu/Menu.d.ts +2 -1
  34. package/dist/components/MenuButton/MenuButton.d.ts +10 -8
  35. package/dist/components/Modal/Modal.d.ts +4 -2
  36. package/dist/components/NavigationGroup/NavigationGroup.d.ts +3 -2
  37. package/dist/components/NavigationItem/NavigationItem.d.ts +3 -2
  38. package/dist/components/Navigator/Navigator.d.ts +5 -4
  39. package/dist/components/Pagination/Pagination.d.ts +2 -2
  40. package/dist/components/ProfileMenu/ProfileMenu.d.ts +3 -3
  41. package/dist/components/Radio/Radio.d.ts +1 -0
  42. package/dist/components/RadioList/RadioList.d.ts +3 -2
  43. package/dist/components/Select/Select.d.ts +12 -10
  44. package/dist/components/Sheet/Sheet.d.ts +1 -0
  45. package/dist/components/Stack/Stack.d.ts +1 -0
  46. package/dist/components/Stepper/Stepper.d.ts +2 -1
  47. package/dist/components/Switch/Switch.d.ts +1 -0
  48. package/dist/components/Table/Table.d.ts +7 -5
  49. package/dist/components/Tabs/Tabs.d.ts +1 -0
  50. package/dist/components/Textarea/Textarea.d.ts +8 -20
  51. package/dist/components/ThemeProvider/ThemeProvider.d.ts +24 -2
  52. package/dist/components/Tooltip/Tooltip.d.ts +1 -0
  53. package/dist/components/Typography/Typography.d.ts +1 -0
  54. package/dist/components/Uploader/Uploader.d.ts +18 -17
  55. package/dist/components/data-display/Avatar.md +61 -73
  56. package/dist/components/data-display/Badge.md +198 -182
  57. package/dist/components/data-display/Chip.md +165 -143
  58. package/dist/components/data-display/DataTable.md +843 -338
  59. package/dist/components/data-display/InfoSign.md +1 -3
  60. package/dist/components/data-display/Markdown.md +93 -125
  61. package/dist/components/data-display/Table.md +1454 -1008
  62. package/dist/components/data-display/Tooltip.md +1 -1
  63. package/dist/components/data-display/Typography.md +101 -104
  64. package/dist/components/feedback/Alert.md +81 -87
  65. package/dist/components/feedback/CircularProgress.md +34 -38
  66. package/dist/components/feedback/Dialog.md +25 -17
  67. package/dist/components/feedback/Modal.md +297 -266
  68. package/dist/components/feedback/Skeleton.md +125 -89
  69. package/dist/components/index.d.ts +60 -1
  70. package/dist/components/inputs/Autocomplete.md +192 -96
  71. package/dist/components/inputs/Button.md +85 -85
  72. package/dist/components/inputs/ButtonGroup.md +197 -187
  73. package/dist/components/inputs/Calendar.md +25 -28
  74. package/dist/components/inputs/Checkbox.md +13 -31
  75. package/dist/components/inputs/CurrencyInput.md +6 -6
  76. package/dist/components/inputs/DatePicker.md +229 -110
  77. package/dist/components/inputs/DateRangePicker.md +248 -137
  78. package/dist/components/inputs/FilterMenu.md +138 -8
  79. package/dist/components/inputs/FilterableCheckboxGroup.md +116 -56
  80. package/dist/components/inputs/FormControl.md +76 -70
  81. package/dist/components/inputs/IconButton.md +231 -207
  82. package/dist/components/inputs/Input.md +133 -100
  83. package/dist/components/inputs/MonthPicker.md +186 -84
  84. package/dist/components/inputs/MonthRangePicker.md +73 -49
  85. package/dist/components/inputs/PercentageInput.md +17 -33
  86. package/dist/components/inputs/RadioButton.md +322 -258
  87. package/dist/components/inputs/RadioList.md +68 -52
  88. package/dist/components/inputs/RadioTileGroup.md +287 -170
  89. package/dist/components/inputs/SearchBar.md +82 -60
  90. package/dist/components/inputs/Select.md +108 -97
  91. package/dist/components/inputs/Slider.md +155 -104
  92. package/dist/components/inputs/Switch.md +194 -139
  93. package/dist/components/inputs/Textarea.md +17 -22
  94. package/dist/components/inputs/Uploader/Uploader.md +69 -40
  95. package/dist/components/layout/Box.md +841 -662
  96. package/dist/components/layout/Container.md +3 -11
  97. package/dist/components/layout/Grid.md +480 -394
  98. package/dist/components/layout/Stack.md +739 -566
  99. package/dist/components/navigation/Breadcrumbs.md +182 -116
  100. package/dist/components/navigation/Dropdown.md +732 -391
  101. package/dist/components/navigation/IconMenuButton.md +15 -7
  102. package/dist/components/navigation/InsetDrawer.md +550 -378
  103. package/dist/components/navigation/Link.md +104 -94
  104. package/dist/components/navigation/Menu.md +624 -503
  105. package/dist/components/navigation/MenuButton.md +19 -11
  106. package/dist/components/navigation/NavigationGroup.md +19 -50
  107. package/dist/components/navigation/NavigationItem.md +6 -6
  108. package/dist/components/navigation/Navigator.md +26 -28
  109. package/dist/components/navigation/Pagination.md +87 -76
  110. package/dist/components/navigation/ProfileMenu.md +67 -45
  111. package/dist/components/navigation/Stepper.md +2 -12
  112. package/dist/components/navigation/Tabs.md +210 -184
  113. package/dist/components/surfaces/Accordions.md +90 -173
  114. package/dist/components/surfaces/Card.md +1096 -711
  115. package/dist/components/surfaces/Divider.md +562 -412
  116. package/dist/components/surfaces/Sheet.md +700 -518
  117. package/dist/guides/ThemeProvider.md +65 -40
  118. package/dist/index.browser.js +5 -5
  119. package/dist/index.browser.js.map +4 -4
  120. package/dist/index.cjs +1906 -1690
  121. package/dist/index.d.ts +1 -1
  122. package/dist/index.js +1404 -1180
  123. package/framer/index.js +1 -1
  124. package/package.json +34 -36
@@ -170,39 +170,57 @@ Profile card without any action menu items. The dropdown displays only the user
170
170
 
171
171
  ## Sizes
172
172
 
173
- ProfileMenu supports `md` (default) and `sm` size variants for use in different layout densities.
173
+ ProfileMenu supports `sm` (default) and `md` size variants for use in different layout densities.
174
174
 
175
175
  ```tsx
176
176
  <Stack direction="row" gap="150px">
177
- <ProfileMenu {...args} size="md" profile={{
178
- name: 'John Gordon',
179
- chip: 'PDT',
180
- caption: 'j.gordon@haulla.com'
181
- }} menuItems={[{
182
- label: 'Menu Item1',
183
- onClick: fn()
184
- }, {
185
- label: 'Menu Item2',
186
- onClick: fn()
187
- }, {
188
- label: 'Menu Item3',
189
- onClick: fn()
190
- }]} />
191
- <ProfileMenu {...args} size="sm" profile={{
192
- name: 'John Gordon',
193
- chip: 'PDT',
194
- caption: 'j.gordon@haulla.com'
195
- }} menuItems={[{
196
- label: 'Menu Item1',
197
- onClick: fn()
198
- }, {
199
- label: 'Menu Item2',
200
- onClick: fn()
201
- }, {
202
- label: 'Menu Item3',
203
- onClick: fn()
204
- }]} />
205
- </Stack>
177
+ <ProfileMenu
178
+ {...args}
179
+ size="md"
180
+ profile={{
181
+ name: "John Gordon",
182
+ chip: "PDT",
183
+ caption: "j.gordon@haulla.com"
184
+ }}
185
+ menuItems={[
186
+ {
187
+ label: "Menu Item1",
188
+ onClick: fn()
189
+ },
190
+ {
191
+ label: "Menu Item2",
192
+ onClick: fn()
193
+ },
194
+ {
195
+ label: "Menu Item3",
196
+ onClick: fn()
197
+ }
198
+ ]}
199
+ />
200
+ <ProfileMenu
201
+ {...args}
202
+ size="sm"
203
+ profile={{
204
+ name: "John Gordon",
205
+ chip: "PDT",
206
+ caption: "j.gordon@haulla.com"
207
+ }}
208
+ menuItems={[
209
+ {
210
+ label: "Menu Item1",
211
+ onClick: fn()
212
+ },
213
+ {
214
+ label: "Menu Item2",
215
+ onClick: fn()
216
+ },
217
+ {
218
+ label: "Menu Item3",
219
+ onClick: fn()
220
+ }
221
+ ]}
222
+ />
223
+ </Stack>
206
224
  ```
207
225
 
208
226
  ## Avatar
@@ -241,17 +259,23 @@ ProfileMenu automatically generates initials from various name formats, includin
241
259
 
242
260
  ```tsx
243
261
  <>
244
- <ProfileMenu {...args} profile={{
245
- name: '홍길동',
246
- chip: 'PDT',
247
- caption: 'j.gordon@haulla.com'
248
- }} />
249
- <ProfileMenu {...args} profile={{
250
- name: '제갈공명',
251
- chip: 'PDT',
252
- caption: 'j.gordon@haulla.com'
253
- }} />
254
- </>
262
+ <ProfileMenu
263
+ {...args}
264
+ profile={{
265
+ name: "홍길동",
266
+ chip: "PDT",
267
+ caption: "j.gordon@haulla.com"
268
+ }}
269
+ />
270
+ <ProfileMenu
271
+ {...args}
272
+ profile={{
273
+ name: "제갈공명",
274
+ chip: "PDT",
275
+ caption: "j.gordon@haulla.com"
276
+ }}
277
+ />
278
+ </>
255
279
  ```
256
280
 
257
281
  ## Controlled vs Uncontrolled
@@ -381,7 +405,7 @@ function OrgProfileMenu({ user, organization }) {
381
405
  | `defaultOpen` | `boolean` | `false` | Initial open state (uncontrolled) |
382
406
  | `onOpenChange` | `(open: boolean) => void` | - | Callback when open state changes |
383
407
  | `getInitial` | `(name: string) => string` | First character | Custom function to extract initials from name |
384
- | `size` | `'sm' \| 'md'` | `'md'` | Component size |
408
+ | `size` | `'sm' \| 'md'` | `'sm'` | Component size |
385
409
 
386
410
  ## Best Practices
387
411
 
@@ -404,9 +428,7 @@ function OrgProfileMenu({ user, organization }) {
404
428
 
405
429
  ```tsx
406
430
  // ✅ Good: Clear user context
407
- <ProfileMenu
408
- profile={{ name: 'Jane Smith', caption: 'jane@company.com', chip: 'Admin' }}
409
- />
431
+ <ProfileMenu profile={{ name: 'Jane Smith', caption: 'jane@company.com', chip: 'Admin' }} />
410
432
  ```
411
433
 
412
434
  3. **Keep menu items concise**: Limit the number of menu items to 5-7 maximum. Move less common actions to a dedicated settings page.
@@ -144,10 +144,7 @@ function FormWizard() {
144
144
  <Box sx={{ mt: 3 }}>
145
145
  {/* Step content rendered here based on activeStep */}
146
146
  <Stack direction="row" gap={1} sx={{ mt: 2 }}>
147
- <Button
148
- disabled={activeStep <= 1}
149
- onClick={() => setActiveStep((prev) => prev - 1)}
150
- >
147
+ <Button disabled={activeStep <= 1} onClick={() => setActiveStep((prev) => prev - 1)}>
151
148
  Back
152
149
  </Button>
153
150
  <Button onClick={() => setActiveStep((prev) => prev + 1)}>
@@ -191,14 +188,7 @@ function CompactProgress({ currentStep, totalSteps }) {
191
188
  indicatorContent: i + 1,
192
189
  }));
193
190
 
194
- return (
195
- <Stepper
196
- steps={steps}
197
- activeStep={currentStep}
198
- orientation="horizontal"
199
- stepOrientation="vertical"
200
- />
201
- );
191
+ return <Stepper steps={steps} activeStep={currentStep} orientation="horizontal" stepOrientation="vertical" />;
202
192
  }
203
193
  ```
204
194
 
@@ -6,21 +6,21 @@ Tabs follow a composition pattern: the `Tabs` container manages state, `TabList`
6
6
 
7
7
  ```tsx
8
8
  <Tabs {...args} defaultValue={0}>
9
- <TabList>
10
- <Tab color={color} variant={variant}>
11
- First Tab
12
- </Tab>
13
- <Tab color={color} variant={variant}>
14
- Second Tab
15
- </Tab>
16
- <Tab color={color} variant={variant}>
17
- Third Tab
18
- </Tab>
19
- </TabList>
20
- <TabPanel value={0}>Content for the first tab panel.</TabPanel>
21
- <TabPanel value={1}>Content for the second tab panel.</TabPanel>
22
- <TabPanel value={2}>Content for the third tab panel.</TabPanel>
23
- </Tabs>
9
+ <TabList>
10
+ <Tab color={color} variant={variant}>
11
+ First Tab
12
+ </Tab>
13
+ <Tab color={color} variant={variant}>
14
+ Second Tab
15
+ </Tab>
16
+ <Tab color={color} variant={variant}>
17
+ Third Tab
18
+ </Tab>
19
+ </TabList>
20
+ <TabPanel value={0}>Content for the first tab panel.</TabPanel>
21
+ <TabPanel value={1}>Content for the second tab panel.</TabPanel>
22
+ <TabPanel value={2}>Content for the third tab panel.</TabPanel>
23
+ </Tabs>
24
24
  ```
25
25
 
26
26
  | Field | Description | Default |
@@ -56,21 +56,21 @@ Default horizontal tab navigation with tab panels.
56
56
 
57
57
  ```tsx
58
58
  <Tabs {...args}>
59
- <TabList>
60
- <Tab color={color} variant={variant}>
61
- Tab1
62
- </Tab>
63
- <Tab color={color} variant={variant}>
64
- Tab2
65
- </Tab>
66
- <Tab color={color} variant={variant}>
67
- Tab3
68
- </Tab>
69
- </TabList>
70
- <TabPanel value={0}>Tab list1</TabPanel>
71
- <TabPanel value={1}>Tab list2</TabPanel>
72
- <TabPanel value={2}>Tab list3</TabPanel>
73
- </Tabs>
59
+ <TabList>
60
+ <Tab color={color} variant={variant}>
61
+ Tab1
62
+ </Tab>
63
+ <Tab color={color} variant={variant}>
64
+ Tab2
65
+ </Tab>
66
+ <Tab color={color} variant={variant}>
67
+ Tab3
68
+ </Tab>
69
+ </TabList>
70
+ <TabPanel value={0}>Tab list1</TabPanel>
71
+ <TabPanel value={1}>Tab list2</TabPanel>
72
+ <TabPanel value={2}>Tab list3</TabPanel>
73
+ </Tabs>
74
74
  ```
75
75
 
76
76
  ## Tab Variants
@@ -78,40 +78,42 @@ Default horizontal tab navigation with tab panels.
78
78
  Tabs support `plain`, `outlined`, `soft`, and `solid` visual styles. Apply the variant to both TabList and individual Tab components for a consistent appearance.
79
79
 
80
80
  ```tsx
81
- <div style={{
82
- display: 'flex',
83
- flexDirection: 'column',
84
- gap: 24
85
- }}>
86
- <Tabs defaultValue={0}>
87
- <TabList variant="plain">
88
- <Tab variant="plain">Plain</Tab>
89
- <Tab variant="plain">Tabs</Tab>
90
- <Tab variant="plain">Example</Tab>
91
- </TabList>
92
- </Tabs>
93
- <Tabs defaultValue={0}>
94
- <TabList variant="outlined">
95
- <Tab variant="outlined">Outlined</Tab>
96
- <Tab variant="outlined">Tabs</Tab>
97
- <Tab variant="outlined">Example</Tab>
98
- </TabList>
99
- </Tabs>
100
- <Tabs defaultValue={0}>
101
- <TabList variant="soft">
102
- <Tab variant="soft">Soft</Tab>
103
- <Tab variant="soft">Tabs</Tab>
104
- <Tab variant="soft">Example</Tab>
105
- </TabList>
106
- </Tabs>
107
- <Tabs defaultValue={0}>
108
- <TabList variant="solid">
109
- <Tab variant="solid">Solid</Tab>
110
- <Tab variant="solid">Tabs</Tab>
111
- <Tab variant="solid">Example</Tab>
112
- </TabList>
113
- </Tabs>
114
- </div>
81
+ <div
82
+ style={{
83
+ display: "flex",
84
+ flexDirection: "column",
85
+ gap: 24
86
+ }}
87
+ >
88
+ <Tabs defaultValue={0}>
89
+ <TabList variant="plain">
90
+ <Tab variant="plain">Plain</Tab>
91
+ <Tab variant="plain">Tabs</Tab>
92
+ <Tab variant="plain">Example</Tab>
93
+ </TabList>
94
+ </Tabs>
95
+ <Tabs defaultValue={0}>
96
+ <TabList variant="outlined">
97
+ <Tab variant="outlined">Outlined</Tab>
98
+ <Tab variant="outlined">Tabs</Tab>
99
+ <Tab variant="outlined">Example</Tab>
100
+ </TabList>
101
+ </Tabs>
102
+ <Tabs defaultValue={0}>
103
+ <TabList variant="soft">
104
+ <Tab variant="soft">Soft</Tab>
105
+ <Tab variant="soft">Tabs</Tab>
106
+ <Tab variant="soft">Example</Tab>
107
+ </TabList>
108
+ </Tabs>
109
+ <Tabs defaultValue={0}>
110
+ <TabList variant="solid">
111
+ <Tab variant="solid">Solid</Tab>
112
+ <Tab variant="solid">Tabs</Tab>
113
+ <Tab variant="solid">Example</Tab>
114
+ </TabList>
115
+ </Tabs>
116
+ </div>
115
117
  ```
116
118
 
117
119
  ## Tab Sizes
@@ -119,33 +121,35 @@ Tabs support `plain`, `outlined`, `soft`, and `solid` visual styles. Apply the v
119
121
  Tabs come in `sm`, `md`, and `lg` sizes. Set the `size` prop on the Tabs container to affect all child components uniformly.
120
122
 
121
123
  ```tsx
122
- <div style={{
123
- display: 'flex',
124
- flexDirection: 'column',
125
- gap: 24
126
- }}>
127
- <Tabs defaultValue={0} size="sm">
128
- <TabList>
129
- <Tab>Small</Tab>
130
- <Tab>Size</Tab>
131
- <Tab>Tabs</Tab>
132
- </TabList>
133
- </Tabs>
134
- <Tabs defaultValue={0} size="md">
135
- <TabList>
136
- <Tab>Medium</Tab>
137
- <Tab>Size</Tab>
138
- <Tab>Tabs</Tab>
139
- </TabList>
140
- </Tabs>
141
- <Tabs defaultValue={0} size="lg">
142
- <TabList>
143
- <Tab>Large</Tab>
144
- <Tab>Size</Tab>
145
- <Tab>Tabs</Tab>
146
- </TabList>
147
- </Tabs>
148
- </div>
124
+ <div
125
+ style={{
126
+ display: "flex",
127
+ flexDirection: "column",
128
+ gap: 24
129
+ }}
130
+ >
131
+ <Tabs defaultValue={0} size="sm">
132
+ <TabList>
133
+ <Tab>Small</Tab>
134
+ <Tab>Size</Tab>
135
+ <Tab>Tabs</Tab>
136
+ </TabList>
137
+ </Tabs>
138
+ <Tabs defaultValue={0} size="md">
139
+ <TabList>
140
+ <Tab>Medium</Tab>
141
+ <Tab>Size</Tab>
142
+ <Tab>Tabs</Tab>
143
+ </TabList>
144
+ </Tabs>
145
+ <Tabs defaultValue={0} size="lg">
146
+ <TabList>
147
+ <Tab>Large</Tab>
148
+ <Tab>Size</Tab>
149
+ <Tab>Tabs</Tab>
150
+ </TabList>
151
+ </Tabs>
152
+ </div>
149
153
  ```
150
154
 
151
155
  ## Tab Colors
@@ -153,42 +157,44 @@ Tabs come in `sm`, `md`, and `lg` sizes. Set the `size` prop on the Tabs contain
153
157
  Apply semantic colors (`primary`, `neutral`, `success`, `warning`, `danger`) to individual tabs for color-coded navigation.
154
158
 
155
159
  ```tsx
156
- <div style={{
157
- display: 'flex',
158
- flexDirection: 'column',
159
- gap: 24
160
- }}>
161
- <Tabs defaultValue={0}>
162
- <TabList>
163
- <Tab color="primary">Primary</Tab>
164
- <Tab color="primary">Tabs</Tab>
165
- </TabList>
166
- </Tabs>
167
- <Tabs defaultValue={0}>
168
- <TabList>
169
- <Tab color="neutral">Neutral</Tab>
170
- <Tab color="neutral">Tabs</Tab>
171
- </TabList>
172
- </Tabs>
173
- <Tabs defaultValue={0}>
174
- <TabList>
175
- <Tab color="success">Success</Tab>
176
- <Tab color="success">Tabs</Tab>
177
- </TabList>
178
- </Tabs>
179
- <Tabs defaultValue={0}>
180
- <TabList>
181
- <Tab color="warning">Warning</Tab>
182
- <Tab color="warning">Tabs</Tab>
183
- </TabList>
184
- </Tabs>
185
- <Tabs defaultValue={0}>
186
- <TabList>
187
- <Tab color="danger">Danger</Tab>
188
- <Tab color="danger">Tabs</Tab>
189
- </TabList>
190
- </Tabs>
191
- </div>
160
+ <div
161
+ style={{
162
+ display: "flex",
163
+ flexDirection: "column",
164
+ gap: 24
165
+ }}
166
+ >
167
+ <Tabs defaultValue={0}>
168
+ <TabList>
169
+ <Tab color="primary">Primary</Tab>
170
+ <Tab color="primary">Tabs</Tab>
171
+ </TabList>
172
+ </Tabs>
173
+ <Tabs defaultValue={0}>
174
+ <TabList>
175
+ <Tab color="neutral">Neutral</Tab>
176
+ <Tab color="neutral">Tabs</Tab>
177
+ </TabList>
178
+ </Tabs>
179
+ <Tabs defaultValue={0}>
180
+ <TabList>
181
+ <Tab color="success">Success</Tab>
182
+ <Tab color="success">Tabs</Tab>
183
+ </TabList>
184
+ </Tabs>
185
+ <Tabs defaultValue={0}>
186
+ <TabList>
187
+ <Tab color="warning">Warning</Tab>
188
+ <Tab color="warning">Tabs</Tab>
189
+ </TabList>
190
+ </Tabs>
191
+ <Tabs defaultValue={0}>
192
+ <TabList>
193
+ <Tab color="danger">Danger</Tab>
194
+ <Tab color="danger">Tabs</Tab>
195
+ </TabList>
196
+ </Tabs>
197
+ </div>
192
198
  ```
193
199
 
194
200
  ## Tabs with Icon Decorators
@@ -197,21 +203,21 @@ Add icons or other elements before or after the tab label using `startDecorator`
197
203
 
198
204
  ```tsx
199
205
  <Tabs {...args}>
200
- <TabList>
201
- <Tab startDecorator={<Call />} color={color} variant={variant}>
202
- Tab1
203
- </Tab>
204
- <Tab endDecorator={<Sms />} color={color} variant={variant}>
205
- Tab2
206
- </Tab>
207
- <Tab startDecorator={<Email />} endDecorator={<MoreVert />} color={color} variant={variant}>
208
- Tab3
209
- </Tab>
210
- </TabList>
211
- <TabPanel value={0}>Tab list1</TabPanel>
212
- <TabPanel value={1}>Tab list2</TabPanel>
213
- <TabPanel value={2}>Tab list3</TabPanel>
214
- </Tabs>
206
+ <TabList>
207
+ <Tab startDecorator={<Call />} color={color} variant={variant}>
208
+ Tab1
209
+ </Tab>
210
+ <Tab endDecorator={<Sms />} color={color} variant={variant}>
211
+ Tab2
212
+ </Tab>
213
+ <Tab startDecorator={<Email />} endDecorator={<MoreVert />} color={color} variant={variant}>
214
+ Tab3
215
+ </Tab>
216
+ </TabList>
217
+ <TabPanel value={0}>Tab list1</TabPanel>
218
+ <TabPanel value={1}>Tab list2</TabPanel>
219
+ <TabPanel value={2}>Tab list3</TabPanel>
220
+ </Tabs>
215
221
  ```
216
222
 
217
223
  ## Vertical Tabs
@@ -219,18 +225,22 @@ Add icons or other elements before or after the tab label using `startDecorator`
219
225
  Set `orientation="vertical"` on the Tabs container for sidebar-style navigation layouts.
220
226
 
221
227
  ```tsx
222
- <Tabs defaultValue={0} orientation="vertical" sx={{
223
- minWidth: 300
224
- }}>
225
- <TabList>
226
- <Tab>Profile</Tab>
227
- <Tab>Settings</Tab>
228
- <Tab>Notifications</Tab>
229
- </TabList>
230
- <TabPanel value={0}>Profile content</TabPanel>
231
- <TabPanel value={1}>Settings content</TabPanel>
232
- <TabPanel value={2}>Notifications content</TabPanel>
233
- </Tabs>
228
+ <Tabs
229
+ defaultValue={0}
230
+ orientation="vertical"
231
+ sx={{
232
+ minWidth: 300
233
+ }}
234
+ >
235
+ <TabList>
236
+ <Tab>Profile</Tab>
237
+ <Tab>Settings</Tab>
238
+ <Tab>Notifications</Tab>
239
+ </TabList>
240
+ <TabPanel value={0}>Profile content</TabPanel>
241
+ <TabPanel value={1}>Settings content</TabPanel>
242
+ <TabPanel value={2}>Notifications content</TabPanel>
243
+ </Tabs>
234
244
  ```
235
245
 
236
246
  ## Disabled Tabs
@@ -239,15 +249,15 @@ Individual tabs can be disabled with the `disabled` prop while keeping other tab
239
249
 
240
250
  ```tsx
241
251
  <Tabs defaultValue={0}>
242
- <TabList>
243
- <Tab>Active Tab</Tab>
244
- <Tab disabled>Disabled Tab</Tab>
245
- <Tab>Another Tab</Tab>
246
- </TabList>
247
- <TabPanel value={0}>First panel content</TabPanel>
248
- <TabPanel value={1}>Second panel content (disabled)</TabPanel>
249
- <TabPanel value={2}>Third panel content</TabPanel>
250
- </Tabs>
252
+ <TabList>
253
+ <Tab>Active Tab</Tab>
254
+ <Tab disabled>Disabled Tab</Tab>
255
+ <Tab>Another Tab</Tab>
256
+ </TabList>
257
+ <TabPanel value={0}>First panel content</TabPanel>
258
+ <TabPanel value={1}>Second panel content (disabled)</TabPanel>
259
+ <TabPanel value={2}>Third panel content</TabPanel>
260
+ </Tabs>
251
261
  ```
252
262
 
253
263
  ## Controlled Tabs
@@ -256,20 +266,24 @@ Use the `value` and `onChange` props for programmatic control of the active tab.
256
266
 
257
267
  ```tsx
258
268
  <div>
259
- <Tabs value={value} onChange={(event, newValue) => setValue(newValue as number)}>
260
- <TabList>
261
- <Tab>First</Tab>
262
- <Tab>Second</Tab>
263
- <Tab>Third</Tab>
264
- </TabList>
265
- <TabPanel value={0}>First panel</TabPanel>
266
- <TabPanel value={1}>Second panel</TabPanel>
267
- <TabPanel value={2}>Third panel</TabPanel>
268
- </Tabs>
269
- <div style={{
270
- marginTop: 16
271
- }}>Current tab index: {value}</div>
272
- </div>
269
+ <Tabs value={value} onChange={(event, newValue) => setValue(newValue as number)}>
270
+ <TabList>
271
+ <Tab>First</Tab>
272
+ <Tab>Second</Tab>
273
+ <Tab>Third</Tab>
274
+ </TabList>
275
+ <TabPanel value={0}>First panel</TabPanel>
276
+ <TabPanel value={1}>Second panel</TabPanel>
277
+ <TabPanel value={2}>Third panel</TabPanel>
278
+ </Tabs>
279
+ <div
280
+ style={{
281
+ marginTop: 16
282
+ }}
283
+ >
284
+ Current tab index: {value}
285
+ </div>
286
+ </div>
273
287
  ```
274
288
 
275
289
  ## Tabs for Settings Page
@@ -283,9 +297,15 @@ function SettingsPage() {
283
297
  <Tab startDecorator={<SecurityIcon />}>Security</Tab>
284
298
  <Tab startDecorator={<NotificationsIcon />}>Notifications</Tab>
285
299
  </TabList>
286
- <TabPanel value={0}><ProfileSettings /></TabPanel>
287
- <TabPanel value={1}><SecuritySettings /></TabPanel>
288
- <TabPanel value={2}><NotificationSettings /></TabPanel>
300
+ <TabPanel value={0}>
301
+ <ProfileSettings />
302
+ </TabPanel>
303
+ <TabPanel value={1}>
304
+ <SecuritySettings />
305
+ </TabPanel>
306
+ <TabPanel value={2}>
307
+ <NotificationSettings />
308
+ </TabPanel>
289
309
  </Tabs>
290
310
  );
291
311
  }
@@ -304,9 +324,15 @@ function DashboardTabs() {
304
324
  <Tab value="week">This Week</Tab>
305
325
  <Tab value="month">This Month</Tab>
306
326
  </TabList>
307
- <TabPanel value="day"><DailyStats /></TabPanel>
308
- <TabPanel value="week"><WeeklyStats /></TabPanel>
309
- <TabPanel value="month"><MonthlyStats /></TabPanel>
327
+ <TabPanel value="day">
328
+ <DailyStats />
329
+ </TabPanel>
330
+ <TabPanel value="week">
331
+ <WeeklyStats />
332
+ </TabPanel>
333
+ <TabPanel value="month">
334
+ <MonthlyStats />
335
+ </TabPanel>
310
336
  </Tabs>
311
337
  );
312
338
  }
@@ -342,7 +368,7 @@ function SidebarTabs() {
342
368
  | `defaultValue` | `string \| number` | - | Initial active tab (uncontrolled) |
343
369
  | `onChange` | `(event, value) => void` | - | Callback when active tab changes |
344
370
  | `orientation` | `'horizontal' \| 'vertical'` | `'horizontal'` | Tab layout direction |
345
- | `size` | `'sm' \| 'md' \| 'lg'` | `'md'` | Tab size |
371
+ | `size` | `'sm' \| 'md' \| 'lg'` | `'sm'` | Tab size |
346
372
  | `variant` | `'solid' \| 'soft' \| 'outlined' \| 'plain'` | `'plain'` | Visual style |
347
373
  | `color` | `'primary' \| 'neutral' \| 'danger' \| 'success' \| 'warning'` | `'neutral'` | Color scheme |
348
374
  | `sx` | `SxProps` | - | Custom styles |